NetBSD Problem Report #47648

From reinoud@heethoofdje.13thmonkey.org  Thu Mar 14 14:54:48 2013
Return-Path: <reinoud@heethoofdje.13thmonkey.org>
Received: from mail.netbsd.org (mail.netbsd.org [149.20.53.66])
	by www.NetBSD.org (Postfix) with ESMTP id 5010163EA15
	for <gnats-bugs@gnats.NetBSD.org>; Thu, 14 Mar 2013 14:54:48 +0000 (UTC)
Message-Id: <20130314145240.1CB9E28192EB@heethoofdje.13thmonkey.org>
Date: Thu, 14 Mar 2013 15:52:40 +0100 (CET)
From: reinoud@NetBSD.org
Reply-To: reinoud@NetBSD.org
To: gnats-bugs@gnats.NetBSD.org
Subject: NetBSD 6.1_RC1 ACPI interupt routing problem + other ACPI lossage
X-Send-Pr-Version: 3.95

>Number:         47648
>Category:       kern
>Synopsis:       NetBSD 6.1_RC1 ACPI interupt routing problem + other ACPI lossage
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    chs
>State:          closed
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Mar 14 14:55:00 +0000 2013
>Closed-Date:    Mon Apr 08 00:00:49 +0000 2013
>Last-Modified:  Mon Apr 08 00:00:49 +0000 2013
>Originator:     Reinoud Zandijk
>Release:        NetBSD 6.1_RC1
>Organization:
NetBSD

>Environment:


System: NetBSD heethoofdje.13thmonkey.org 6.1_RC1 NetBSD 6.1_RC1 (GENERIC) #7: Wed Mar 13 12:44:31 CET 2013 reinoud@heethoofdje.13thmonkey.org:/usr/sources/cvs.netbsd.org/src-6/sys/arch/i386/compile/GENERIC i386
Architecture: i386
Machine: i386
>Description:
Updating a P4 machine from NetBSD 6.0_BETA2 to NetBSD 6.1_RC1 fails due to
various ACPI lossage. It results in a machine having hundreds of thousands of
interrupts/second that are not handled properly and in broken devices, most
notably auixp(9).

Booting the same kernel in non-ACPI mode makes the problems disappear and
auixp(9) is working properly again.

> vmstat -i
interrupt                                     total     rate
TLB shootdown                                  5026       19
cpu0 timer                                    26343      101
ioapic0 pin 9                              75401688   291126
ioapic0 pin 1                                  1251        4
ioapic0 pin 19                                 6121       23
ioapic0 pin 14                                    5        0
ioapic0 pin 15                                 6996       27
ioapic0 pin 17                                 4692       18
Total                                      75452122   291320

As can be seen in the dmesg, this pin is assigned to 
acpi0: X/RSDT: OemId <A M I ,OEMXSDT ,06000529>, AslId <MSFT,00000097>
acpi0: SCI interrupting at int 9

I've attached the dmesg for ACPI and non-ACPI booting to this PR.

---- ACPI ----
NetBSD 6.1_RC1 (GENERIC) #7: Wed Mar 13 12:44:31 CET 2013
	reinoud@heethoofdje.13thmonkey.org:/usr/sources/cvs.netbsd.org/src-6/sys/arch/i386/compile/GENERIC
total memory = 1918 MB
avail memory = 1875 MB
timecounter: Timecounters tick every 10.000 msec
timecounter: Timecounter "i8254" frequency 1193182 Hz quality 100
To Be Filled By O.E.M. To Be Filled By O.E.M. (To Be Filled By O.E.M.)
mainbus0 (root)
cpu0 at mainbus0 apid 0: Intel(R) Pentium(R) 4 CPU 3.20GHz, id 0xf33
cpu1 at mainbus0 apid 1Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
    2006, 2007, 2008, 2009, 2010, 2011, 2012
    The NetBSD Foundation, Inc.  All rights reserved.
Copyright (c) 1982, 1986, 1989, 1991, 1993
    The Regents of the University of California.  All rights reserved.

NetBSD 6.1_RC1 (GENERIC) #7: Wed Mar 13 12:44:31 CET 2013
	reinoud@heethoofdje.13thmonkey.org:/usr/sources/cvs.netbsd.org/src-6/sys/arch/i386/compile/GENERIC
total memory = 1918 MB
avail memory = 1873 MB
timecounter: Timecounters tick every 10.000 msec
userconf: configure system autoconfiguration:
uc> disable auixp*
[359] auixp* disabled
uc> quit
Continuing...
timecounter: Timecounter "i8254" frequency 1193182 Hz quality 100
To Be Filled By O.E.M. To Be Filled By O.E.M. (To Be Filled By O.E.M.)
mainbus0 (root)
cpu0 at mainbus0 apid 0: Intel(R) Pentium(R) 4 CPU 3.20GHz, id 0xf33
cpu1 at mainbus0 apid 1: Intel(R) Pentium(R) 4 CPU 3.20GHz, id 0xf33
ioapic0 at mainbus0 apid 2: pa 0xfec00000, version 11, 24 pins
acpi0 at mainbus0: Intel ACPICA 20110623
acpi0: X/RSDT: OemId <A M I ,OEMXSDT ,06000529>, AslId <MSFT,00000097>
ioapic0 reenabling
acpi0: SCI interrupting at int 9
timecounter: Timecounter "ACPI-Fast" frequency 3579545 Hz quality 1000
attimer1 at acpi0 (TMR, PNP0100): io 0x40-0x43 irq 0
pcppi1 at acpi0 (SPKR, PNP0800): io 0x61
midi0 at pcppi1: PC speaker
sysbeep0 at pcppi1
npx1 at acpi0 (COPR, PNP0C04): io 0xf0-0xff irq 13
npx1: reported by CPUID; using exception 16
LPTE (PNP0401) [ECP printer port] at acpi0 not configured
SIOR (PNP0C02) [Motherboard Register Resources] at acpi0 not configured
RMSC (PNP0C02) [Motherboard Register Resources] at acpi0 not configured
OMSC (PNP0C02) [Motherboard Register Resources] at acpi0 not configured
UAR1 (PNP0501) [16550A-compatible COM port] at acpi0 not configured
pckbc1 at acpi0 (PS2K, PNP0303) (kbd port): io 0x60,0x64 irq 1
RMEM (PNP0C01) [System Board] at acpi0 not configured
acpibut0 at acpi0 (PWRB, PNP0C0C-170): ACPI Power Button
apm0 at acpi0: Power Management spec V1.2
acpi0: [MADT] LAPIC          : CPU ID 1, LAPIC ID 0, FLAGS 0x01
acpi0: [MADT] LAPIC          : CPU ID 2, LAPIC ID 1, FLAGS 0x01
acpi0: [MADT] I/O APIC       : ID 2, GSI 0, ADDR 0xFEC00000
acpi0: [MADT] INTR OVERRIDE  : BUS 0, IRQ 0, GSI 2, FLAGS 0x00
acpi0: [MADT] INTR OVERRIDE  : BUS 0, IRQ 9, GSI 21, FLAGS 0x0F
acpi0: [FADT] FACS           : 0x0000000077F50000
acpi0: [FADT] DSDT           : 0x0000000077F40360
acpi0: [FADT] INT_MODEL      : 0x0000000000000001
acpi0: [FADT] PM_PROFILE     : 0x0000000000000000
acpi0: [FADT] SCI_INT        : 0x0000000000000009
acpi0: [FADT] SMI_CMD        : 0x00000000000000B0
acpi0: [FADT] ACPI_ENABLE    : 0x00000000000000E1
acpi0: [FADT] ACPI_DISABLE   : 0x000000000000001E
acpi0: [FADT] S4BIOS_REQ     : 0x0000000000000000
acpi0: [FADT] PSTATE_CNT     : 0x00000000000000E2
acpi0: [FADT] PM1a_EVT_BLK   : 0x0000000000000800
acpi0: [FADT] PM1b_EVT_BLK   : 0x0000000000000000
acpi0: [FADT] PM1a_CNT_BLK   : 0x0000000000000F40
acpi0: [FADT] PM1b_CNT_BLK   : 0x0000000000000000
acpi0: [FADT] PM2_CNT_BLK    : 0x0000000000000850
acpi0: [FADT] PM_TMR_BLK     : 0x0000000000000808
acpi0: [FADT] GPE0_BLK       : 0x0000000000000820
acpi0: [FADT] GPE1_BLK       : 0x0000000000000000
acpi0: [FADT] PM1_EVT_LEN    : 0x0000000000000004
acpi0: [FADT] PM1_CNT_LEN    : 0x0000000000000002
acpi0: [FADT] PM2_CNT_LEN    : 0x0000000000000001
acpi0: [FADT] PM_TMR_LEN     : 0x0000000000000004
acpi0: [FADT] GPE0_BLK_LEN   : 0x0000000000000008
acpi0: [FADT] GPE1_BLK_LEN   : 0x0000000000000000
acpi0: [FADT] GPE1_BASE      : 0x0000000000000000
acpi0: [FADT] CST_CNT        : 0x0000000000000000
acpi0: [FADT] P_LVL2_LAT     : 0x0000000000000065
acpi0: [FADT] P_LVL3_LAT     : 0x00000000000003E9
acpi0: [FADT] FLUSH_SIZE     : 0x0000000000000400
acpi0: [FADT] FLUSH_STRIDE   : 0x0000000000000010
acpi0: [FADT] DUTY_OFFSET    : 0x0000000000000000
acpi0: [FADT] DUTY_WIDTH     : 0x0000000000000008
acpi0: [FADT] DAY_ALRM       : 0x000000000000000D
acpi0: [FADT] MON_ALRM       : 0x0000000000000000
acpi0: [FADT] CENTURY        : 0x0000000000000032
acpi0: [FADT] IAPC_BOOT_ARCH : 0x0000000000000003
acpi0: [FADT] RESET_VALUE    : 0x0000000000000006
acpi0: [FADT] WBINVD         : 0x0000000000000001
acpi0: [FADT] WBINVD_FLUSH   : 0x0000000000000000
acpi0: [FADT] PROC_C1        : 0x0000000000000004
acpi0: [FADT] P_LVL2_UP      : 0x0000000000000000
acpi0: [FADT] PWR_BUTTON     : 0x0000000000000000
acpi0: [FADT] SLP_BUTTON     : 0x0000000000000020
acpi0: [FADT] FIX_RTC        : 0x0000000000000000
acpi0: [FADT] RTC_S4         : 0x0000000000000080
acpi0: [FADT] TMR_VAL_EXT    : 0x0000000000000100
acpi0: [FADT] DCK_CAP        : 0x0000000000000000
acpi0: [FADT] RESET_REG_SUP  : 0x0000000000000000
acpi0: [FADT] SEALED_CASE    : 0x0000000000000000
acpi0: [FADT] HEADLESS       : 0x0000000000001000
acpi0: [FADT] CPU_SW_SLP     : 0x0000000000000000
acpi0: [FADT] PCI_EXP_WAK    : 0x0000000000000000
acpi0: [FADT] PLATFORM_CLK   : 0x0000000000000000
acpi0: [FADT] S4_RTC_STS     : 0x0000000000000000
acpi0: [FADT] REMOTE_POWER   : 0x0000000000000000
acpi0: [FADT] APIC_CLUSTER   : 0x0000000000000000
acpi0: [FADT] APIC_PHYSICAL  : 0x0000000000000000
acpi0: [\   ] HID -          UID -    STA 0xFFFFFFFF ADR -
acpi0: [CPU1] HID -          UID -    STA 0xFFFFFFFF ADR -
acpi0: [CPU2] HID -          UID -    STA 0xFFFFFFFF ADR -
acpi0: [_SB ] HID -          UID -    STA 0xFFFFFFFF ADR -
acpi0: [PCI0] HID PNP0A03    UID 0    STA 0xFFFFFFFF ADR 0x0000000000000000
acpi0: [P0P1] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000010000
acpi0: [SBSM] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000140000
acpi0: [SBRG] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000140003
acpi0: [PIC ] HID PNP0000    UID -    STA 0xFFFFFFFF ADR -
acpi0: [DMAD] HID PNP0200    UID -    STA 0xFFFFFFFF ADR -
acpi0: [TMR ] HID PNP0100    UID -    STA 0xFFFFFFFF ADR -
acpi0: [RTC0] HID PNP0B00    UID -    STA 0xFFFFFFFF ADR -
acpi0: [SPKR] HID PNP0800    UID -    STA 0xFFFFFFFF ADR -
acpi0: [COPR] HID PNP0C04    UID -    STA 0xFFFFFFFF ADR -
acpi0: [FDC ] HID PNP0700    UID -    STA 0x00000000 ADR -
acpi0: [LPTE] HID PNP0401    UID -    STA 0x0000000F ADR -
acpi0: [SIOR] HID PNP0C02    UID 46   STA 0xFFFFFFFF ADR -
acpi0: [RMSC] HID PNP0C02    UID 16   STA 0xFFFFFFFF ADR -
acpi0: [OMSC] HID PNP0C02    UID 0    STA 0xFFFFFFFF ADR -
acpi0: [UAR1] HID PNP0501    UID 1    STA 0x0000000F ADR -
acpi0: [PS2M] HID PNP0F03    UID -    STA 0x00000000 ADR -
acpi0: [PS2K] HID PNP0303    UID -    STA 0x0000000F ADR -
acpi0: [IDEC] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000140001
acpi0: [PRID] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000000
acpi0: [P_D0] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000000
acpi0: [P_D1] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000001
acpi0: [SECD] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000001
acpi0: [S_D0] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000000
acpi0: [S_D1] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000001
acpi0: [AC97] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000140005
acpi0: [MC97] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000140006
acpi0: [USB1] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000130000
acpi0: [USB2] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000130001
acpi0: [EUSB] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000130002
acpi0: [P0P2] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000140004
acpi0: [SLAN] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000080000
acpi0: [P2P3] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000000C0000
acpi0: [RMEM] HID PNP0C01    UID 1    STA 0xFFFFFFFF ADR -
acpi0: [PWRB] HID PNP0C0C    UID 170  STA 0x0000000B ADR -
acpi0: [LNKA] HID PNP0C0F    UID 1    STA 0x0000000B ADR -
acpi0: [LNKB] HID PNP0C0F    UID 2    STA 0x0000000B ADR -
acpi0: [LNKC] HID PNP0C0F    UID 3    STA 0x0000000B ADR -
acpi0: [LNKD] HID PNP0C0F    UID 4    STA 0x0000000B ADR -
acpi0: [_TZ ] HID -          UID -    STA 0xFFFFFFFF ADR -

\     [06] []
    CPU1  [12] []
    CPU2  [12] []
    _SB   [06] []
        PCI0  [06] [] (PCI) @ 0x00:0x00:0x00:0x00 [R] [B] -> 0x00:0x00
            P0P1  [06] [] (PCI) @ 0x00:0x00:0x01:0x00 [B] -> 0x00:0x01
            SBSM  [06] [] (PCI) @ 0x00:0x00:0x14:0x00
            SBRG  [06] [] (PCI) @ 0x00:0x00:0x14:0x03
                PIC   [06] []
                DMAD  [06] []
                TMR   [06] [] <attimer1>
                RTC0  [06] []
                SPKR  [06] [] <pcppi1>
                COPR  [06] [] <npx1>
                FDC   [06] []
                LPTE  [06] []
                SIOR  [06] []
                RMSC  [06] []
                OMSC  [06] []
                UAR1  [06] []
                PS2M  [06] []
                PS2K  [06] [] <pckbc1>
            IDEC  [06] [] (PCI) @ 0x00:0x00:0x14:0x01
                PRID  [06] []
                    P_D0  [06] []
                    P_D1  [06] []
                SECD  [06] []
                    S_D0  [06] []
                    S_D1  [06] []
            AC97  [06] [] (PCI) @ 0x00:0x00:0x14:0x05
            MC97  [06] [] (PCI) @ 0x00:0x00:0x14:0x06
            USB1  [06] [] (PCI) @ 0x00:0x00:0x13:0x00
            USB2  [06] [] (PCI) @ 0x00:0x00:0x13:0x01
            EUSB  [06] [] (PCI) @ 0x00:0x00:0x13:0x02
            P0P2  [06] [] (PCI) @ 0x00:0x00:0x14:0x04 [B] -> 0x00:0x02
                SLAN  [06] [] (PCI) @ 0x00:0x02:0x08:0x00
                P2P3  [06] [] (PCI) @ 0x00:0x02:0x0C:0x00
        RMEM  [06] []
        PWRB  [06] [] <acpibut0>
        LNKA  [06] []
        LNKB  [06] []
        LNKC  [06] []
        LNKD  [06] []
    _TZ   [06] []
attimer1: attached to pcppi1
pckbd0 at pckbc1 (kbd slot)
pckbc1: using irq 1 for kbd slot
wskbd0 at pckbd0: console keyboard
pci0 at mainbus0 bus 0: configuration mode 1
pci0: i/o space, memory space enabled, rd/line, rd/mult, wr/inv ok
pchb0 at pci0 dev 0 function 0: vendor 0x1002 product 0x5833 (rev. 0x02)
agp at pchb0 not configured
ppb0 at pci0 dev 1 function 0: vendor 0x1002 product 0x5838 (rev. 0x00)
pci1 at ppb0 bus 1
pci1: i/o space, memory space enabled
vga1 at pci1 dev 5 function 0: vendor 0x1002 product 0x5834 (rev. 0x00)
wsdisplay0 at vga1 kbdmux 1: console (80x25, vt100 emulation), using wskbd0
wsmux1: connecting to wsdisplay0
radeondrm0 at vga1: ATI Radeon RS300 9100 IGP
radeondrm0: Initialized radeon 1.29.0 20080613
ohci0 at pci0 dev 19 function 0: vendor 0x1002 product 0x4347 (rev. 0x01)
ohci0: interrupting at ioapic0 pin 19
ohci0: OHCI version 1.0, legacy support
usb0 at ohci0: USB revision 1.0
ohci1 at pci0 dev 19 function 1: vendor 0x1002 product 0x4348 (rev. 0x01)
ohci1: interrupting at ioapic0 pin 19
ohci1: OHCI version 1.0, legacy support
usb1 at ohci1: USB revision 1.0
ehci0 at pci0 dev 19 function 2: vendor 0x1002 product 0x4345 (rev. 0x01)
ehci0: interrupting at ioapic0 pin 19
ehci0: dropped intr workaround enabled
ehci0: EHCI version 1.0
ehci0: companion controllers, 3 ports each: ohci0 ohci1
usb2 at ehci0: USB revision 2.0
piixpm0 at pci0 dev 20 function 0: vendor 0x1002 product 0x4353 (rev. 0x18)
piixpm0: interrupting at SMI, polling
iic0 at piixpm0: I2C bus
ixpide0 at pci0 dev 20 function 1: ATI Technologies IXP IDE Controller (rev. 0x00)
ixpide0: bus-master DMA support present
ixpide0: primary channel configured to compatibility mode
ixpide0: primary channel interrupting at ioapic0 pin 14
atabus0 at ixpide0 channel 0
ixpide0: secondary channel configured to compatibility mode
ixpide0: secondary channel interrupting at ioapic0 pin 15
atabus1 at ixpide0 channel 1
pcib0 at pci0 dev 20 function 3: vendor 0x1002 product 0x434c (rev. 0x00)
ppb1 at pci0 dev 20 function 4: vendor 0x1002 product 0x4342 (rev. 0x00)
pci2 at ppb1 bus 2
pci2: i/o space, memory space enabled
ex0 at pci2 dev 8 function 0: 3Com 3c920B-EMB-WNM Integrated Fast Ethernet (rev. 0x40)
ex0: interrupting at ioapic0 pin 18
ex0: MAC address 00:11:2f:52:44:7c
rlphy0 at ex0 phy 1: RTL8201L 10/100 media interface, rev. 1
rlphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
fwohci0 at pci2 dev 10 function 0: vendor 0x1106 product 0x3044 (rev. 0x80)
fwohci0: interrupting at ioapic0 pin 18
fwohci0: OHCI version 1.10 (ROM=1)
fwohci0: No. of Isochronous channels is 4.
fwohci0: EUI64 00:e0:18:00:00:8c:83:d8
fwohci0: Phy 1394a available S400, 2 ports.
fwohci0: Link S400, max_rec 2048 bytes.
ieee1394if0 at fwohci0: IEEE1394 bus
fwip0 at ieee1394if0: IP over IEEE1394
fwohci0: Initiate bus reset
cbb0 at pci2 dev 12 function 0: vendor 0x1524 product 0x1411 (rev. 0x02)
vendor 0x1524 product 0x0510 (flash memory) at pci2 dev 12 function 1 not configured
re0 at pci2 dev 14 function 0: RealTek 8169/8110 Gigabit Ethernet (rev. 0x10)
re0: interrupting at ioapic0 pin 17
re0: Ethernet address 00:e0:4c:1f:12:ec
re0: using 256 tx descriptors
rgephy0 at re0 phy 7: RTL8169S/8110S/8211 1000BASE-T media interface, rev. 3
rgephy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT, 1000baseT-FDX, auto
cbb0: cacheline 0x10 lattimer 0x40
cbb0: bhlc 0x824010
cbb0: interrupting at ioapic0 pin 16
cardslot0 at cbb0
cardbus0 at cardslot0: bus 3
pcmcia0 at cardslot0
vendor 0x1002 product 0x4341 (audio multimedia) at pci0 dev 20 function 5 not configured
isa0 at pcib0
lpt0 at isa0 port 0x378-0x37b irq 7
com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo
acpicpu0 at cpu0: ACPI CPU
acpicpu0: C1: HLT, lat   0 us, pow     0 mW
acpicpu1 at cpu1: ACPI CPU
fwohci0: BUS reset
fwohci0: node_id=0xc800ffc0, gen=1, CYCLEMASTER mode
ieee1394if0: 1 nodes, maxhop <= 0 cable IRM irm(0) (me)
ieee1394if0: bus manager 0
timecounter: Timecounter "clockinterrupt" frequency 100 Hz quality 0
timecounter: Timecounter "TSC" frequency 3192621200 Hz quality 3000
atapibus0 at atabus0: 2 targets
cd0 at atapibus0 drive 0: <ASUS    CRW-5232A4, , 1.00> cdrom removable
cd0: 32-bit data port
cd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 2 (Ultra/33)
cd0(ixpide0:0:0): using PIO mode 4, Ultra-DMA mode 2 (Ultra/33) (using DMA)
uhub0 at usb0: vendor 0x1002 OHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 3 ports with 3 removable, self powered
uhub1 at usb1: vendor 0x1002 OHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub1: 3 ports with 3 removable, self powered
uhub2 at usb2: vendor 0x1002 EHCI root hub, class 9/0, rev 2.00/1.00, addr 1
uhub2: 6 ports with 6 removable, self powered
umass0 at uhub2 port 6 configuration 1 interface 0
umass0: HLDS Inc BD-Rewriter, rev 2.00/1.69, addr 2
umass0: using ATAPI over Bulk-Only
atapibus1 at umass0: 2 targets
cd1 at atapibus1 drive 0: <HL-DT-ST, BD-RE  BE08LU20, 1.00> cdrom removable
wd0 at atabus1 drive 0
wd0: <WDC WD5000AACS-00ZUB0>
wd0: drive supports 16-sector PIO transfers, LBA48 addressing
wd0: 465 GB, 969021 cyl, 16 head, 63 sec, 512 bytes/sect x 976773168 sectors
wd0: 32-bit data port
wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133)
wd0(ixpide0:1:0): using PIO mode 4, Ultra-DMA mode 6 (Ultra/133) (using DMA)
Kernelized RAIDframe activated
boot device: wd0
root on wd0a dumps on wd0b
root file system type: ffs
tap0: Ethernet address f2:0b:a4:4c:bb:0a
wsdisplay0: screen 1 added (80x25, vt100 emulation)
wsdisplay0: screen 2 added (80x25, vt100 emulation)
wsdisplay0: screen 3 added (80x25, vt100 emulation)
wsdisplay0: screen 4 added (80x25, vt100 emulation)
(mouse won't autoattach:)
usl_detachtimeout
usl_detachtimeout: not detaching
uhidev0 at uhub1 port 2 configuration 1 interface 0
uhidev0: Unique ICs Unique ICs mouse, rev 1.00/0.01, addr 2, iclass 3/1
ums0 at uhidev0: 5 buttons and Z dir
wsmouse0 at ums0 mux 0

---- non ACPI ----
Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
    2006, 2007, 2008, 2009, 2010, 2011, 2012
    The NetBSD Foundation, Inc.  All rights reserved.
Copyright (c) 1982, 1986, 1989, 1991, 1993
    The Regents of the University of California.  All rights reserved.

NetBSD 6.1_RC1 (GENERIC) #7: Wed Mar 13 12:44:31 CET 2013
	reinoud@heethoofdje.13thmonkey.org:/usr/sources/cvs.netbsd.org/src-6/sys/arch/i386/compile/GENERIC
total memory = 1918 MB
avail memory = 1873 MB
timecounter: Timecounters tick every 10.000 msec
timecounter: Timecounter "i8254" frequency 1193182 Hz quality 100
To Be Filled By O.E.M. To Be Filled By O.E.M. (To Be Filled By O.E.M.)
mainbus0 (root)
cpu0 at mainbus0: Intel(R) Pentium(R) 4 CPU 3.20GHz, id 0xf33
pci0 at mainbus0 bus 0: configuration mode 1
pci0: i/o space, memory space enabled, rd/line, rd/mult, wr/inv ok
pchb0 at pci0 dev 0 function 0: vendor 0x1002 product 0x5833 (rev. 0x02)
agp at pchb0 not configured
ppb0 at pci0 dev 1 function 0: vendor 0x1002 product 0x5838 (rev. 0x00)
pci1 at ppb0 bus 1
pci1: i/o space, memory space enabled
vga1 at pci1 dev 5 function 0: vendor 0x1002 product 0x5834 (rev. 0x00)
wsdisplay0 at vga1 kbdmux 1: console (80x25, vt100 emulation)
wsmux1: connecting to wsdisplay0
radeondrm0 at vga1: ATI Radeon RS300 9100 IGP
radeondrm0: Initialized radeon 1.29.0 20080613
ohci0 at pci0 dev 19 function 0: vendor 0x1002 product 0x4347 (rev. 0x01)
ohci0: interrupting at irq 10
ohci0: OHCI version 1.0, legacy support
usb0 at ohci0: USB revision 1.0
ohci1 at pci0 dev 19 function 1: vendor 0x1002 product 0x4348 (rev. 0x01)
ohci1: interrupting at irq 10
ohci1: OHCI version 1.0, legacy support
usb1 at ohci1: USB revision 1.0
ehci0 at pci0 dev 19 function 2: vendor 0x1002 product 0x4345 (rev. 0x01)
ehci0: interrupting at irq 10
ehci0: dropped intr workaround enabled
ehci0: BIOS refuses to give up ownership, using force
ehci0: EHCI version 1.0
ehci0: companion controllers, 3 ports each: ohci0 ohci1
usb2 at ehci0: USB revision 2.0
piixpm0 at pci0 dev 20 function 0: vendor 0x1002 product 0x4353 (rev. 0x18)
piixpm0: interrupting at SMI, polling
iic0 at piixpm0: I2C bus
ixpide0 at pci0 dev 20 function 1: ATI Technologies IXP IDE Controller (rev. 0x00)
ixpide0: bus-master DMA support present
ixpide0: primary channel configured to compatibility mode
ixpide0: primary channel interrupting at irq 14
atabus0 at ixpide0 channel 0
ixpide0: secondary channel configured to compatibility mode
ixpide0: secondary channel interrupting at irq 15
atabus1 at ixpide0 channel 1
pcib0 at pci0 dev 20 function 3: vendor 0x1002 product 0x434c (rev. 0x00)
ppb1 at pci0 dev 20 function 4: vendor 0x1002 product 0x4342 (rev. 0x00)
pci2 at ppb1 bus 2
pci2: i/o space, memory space enabled
ex0 at pci2 dev 8 function 0: 3Com 3c920B-EMB-WNM Integrated Fast Ethernet (rev. 0x40)
ex0: interrupting at irq 3
ex0: MAC address 00:11:2f:52:44:7c
rlphy0 at ex0 phy 1: RTL8201L 10/100 media interface, rev. 1
rlphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
fwohci0 at pci2 dev 10 function 0: vendor 0x1106 product 0x3044 (rev. 0x80)
fwohci0: interrupting at irq 3
fwohci0: OHCI version 1.10 (ROM=1)
fwohci0: No. of Isochronous channels is 4.
fwohci0: EUI64 00:e0:18:00:00:8c:83:d8
fwohci0: Phy 1394a available S400, 2 ports.
fwohci0: Link S400, max_rec 2048 bytes.
ieee1394if0 at fwohci0: IEEE1394 bus
fwip0 at ieee1394if0: IP over IEEE1394
fwohci0: Initiate bus reset
cbb0 at pci2 dev 12 function 0: vendor 0x1524 product 0x1411 (rev. 0x02)
vendor 0x1524 product 0x0510 (flash memory) at pci2 dev 12 function 1 not configured
re0 at pci2 dev 14 function 0: RealTek 8169/8110 Gigabit Ethernet (rev. 0x10)
re0: interrupting at irq 5
re0: Ethernet address 00:e0:4c:1f:12:ec
re0: using 256 tx descriptors
rgephy0 at re0 phy 7: RTL8169S/8110S/8211 1000BASE-T media interface, rev. 3
rgephy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT, 1000baseT-FDX, auto
cbb0: cacheline 0x10 lattimer 0x40
cbb0: bhlc 0x824010
pci_intr_map: no mapping for pin A (line=ff)
cbb0: couldn't map interrupt
cardslot0 at cbb0
cardbus0 at cardslot0: bus 3
pcmcia0 at cardslot0
auixp0 at pci0 dev 20 function 5: vendor 0x1002 product 0x4341 (rev. 0x00)
auixp0: interrupting at irq 5
auixp0: soft resetting aclink
isa0 at pcib0
lpt0 at isa0 port 0x378-0x37b irq 7
com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo
pckbc0 at isa0 port 0x60-0x64
pckbd0 at pckbc0 (kbd slot)
pckbc0: using irq 1 for kbd slot
wskbd0 at pckbd0: console keyboard, using wsdisplay0
attimer0 at isa0 port 0x40-0x43
pcppi0 at isa0 port 0x61
midi0 at pcppi0: PC speaker
sysbeep0 at pcppi0
npx0 at isa0 port 0xf0-0xff
npx0: reported by CPUID; using exception 16
attimer0: attached to pcppi0
fwohci0: BUS reset
fwohci0: node_id=0xc800ffc0, gen=1, CYCLEMASTER mode
ieee1394if0: 1 nodes, maxhop <= 0 cable IRM irm(0) (me)
ieee1394if0: bus manager 0
timecounter: Timecounter "clockinterrupt" frequency 100 Hz quality 0
timecounter: Timecounter "TSC" frequency 3192688720 Hz quality 3000
auixp0: ac97: Analog Devices AD1888 codec; headphone, 20 bit DAC, no 3D stereo
auixp0: ac97: ext id 0x3c7<AMAP,LDAC,SDAC,CDAC,SPDIF,DRA,VRA>
auixp0: codec spdif support detected but disabled for now
audio0 at auixp0: full duplex, playback, capture, mmap, independent
atapibus0 at atabus0: 2 targets
cd0 at atapibus0 drive 0: <ASUS    CRW-5232A4, , 1.00> cdrom removable
cd0: 32-bit data port
uhub0 at usb0: vendor 0x1002 OHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 3 ports with 3 removable, self powered
uhub1 at usb1: vendor 0x1002 OHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub1: 3 ports with 3 removable, self powered
uhub2 at usb2: vendor 0x1002 EHCI root hub, class 9/0, rev 2.00/1.00, addr 1
uhub2: 6 ports with 6 removable, self powered
cd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 2 (Ultra/33)
cd0(ixpide0:0:0): using PIO mode 4, Ultra-DMA mode 2 (Ultra/33) (using DMA)
umass0 at uhub2 port 6 configuration 1 interface 0
umass0: HLDS Inc BD-Rewriter, rev 2.00/1.69, addr 2
umass0: using ATAPI over Bulk-Only
atapibus1 at umass0: 2 targets
cd1 at atapibus1 drive 0: <HL-DT-ST, BD-RE  BE08LU20, 1.00> cdrom removable
wd0 at atabus1 drive 0
wd0: <WDC WD5000AACS-00ZUB0>
wd0: drive supports 16-sector PIO transfers, LBA48 addressing
wd0: 465 GB, 969021 cyl, 16 head, 63 sec, 512 bytes/sect x 976773168 sectors
wd0: 32-bit data port
wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133)
wd0(ixpide0:1:0): using PIO mode 4, Ultra-DMA mode 6 (Ultra/133) (using DMA)
Kernelized RAIDframe activated
boot device: wd0
root on wd0a dumps on wd0b
root file system type: ffs
tap0: Ethernet address f2:0b:a4:37:5f:02
wsdisplay0: screen 1 added (80x25, vt100 emulation)
wsdisplay0: screen 2 added (80x25, vt100 emulation)
wsdisplay0: screen 3 added (80x25, vt100 emulation)
wsdisplay0: screen 4 added (80x25, vt100 emulation)
(mouse won't autoattach)
uhidev0 at uhub1 port 2 configuration 1 interface 0
uhidev0: Unique ICs Unique ICs mouse, rev 1.00/0.01, addr 2, iclass 3/1
ums0 at uhidev0: 5 buttons and Z dir
wsmouse0 at ums0 mux 0

>How-To-Repeat:
Boot a standard i386 kernel from nyftp.netbsd.org on this machine.

>Fix:
Unknown, for now, boot with ACPI disabled.


>Release-Note:

>Audit-Trail:
From: Chuck Silvers <chuq@chuq.com>
To: gnats-bugs@NetBSD.org
Cc: kern-bug-people@netbsd.org, gnats-admin@netbsd.org,
	netbsd-bugs@netbsd.org
Subject: Re: kern/47648: NetBSD 6.1_RC1 ACPI interupt routing problem + other
 ACPI lossage
Date: Fri, 15 Mar 2013 08:52:11 -0700

 On Thu, Mar 14, 2013 at 02:55:00PM +0000, reinoud@NetBSD.org wrote:
 > Updating a P4 machine from NetBSD 6.0_BETA2 to NetBSD 6.1_RC1 fails due to
 > various ACPI lossage. It results in a machine having hundreds of thousands of
 > interrupts/second that are not handled properly and in broken devices, most
 > notably auixp(9).

 what is the specific problem with auixp?  what other devices have trouble
 and what's the specific problem with those?

 does this patch make any difference?
 http://mail-index.netbsd.org/port-amd64/2013/02/19/msg001860.html

 I made several changes to the ACPI code in the 6.x branch, in these files:

 sys/arch/x86/acpi/acpi_machdep.c
 sys/arch/x86/include/acpi_machdep.h
 sys/arch/x86/x86/mpacpi.c
 sys/dev/acpi/acpi.c

 if you revert all of those files to the netbsd-6-0-RELEASE tag,
 does that make the problem go away?  if so, could you turn on
 MPVERBOSE and INTRDEBUG and send the output from that with ACPI enabled?
 (with the current netbsd-6 versions of those files, not the older versions)

 also, could you provide the output of "acpidump -dt"?

 -Chuck

From: Reinoud Zandijk <reinoud@NetBSD.org>
To: gnats-bugs@NetBSD.org
Cc: kern-bug-people@netbsd.org, gnats-admin@netbsd.org,
	netbsd-bugs@netbsd.org, reinoud@NetBSD.org
Subject: Re: kern/47648: NetBSD 6.1_RC1 ACPI interupt routing problem + other
 ACPI lossage
Date: Sun, 17 Mar 2013 21:40:14 +0100

 --d6Gm4EdcadzBjdND
 Content-Type: text/plain; charset=us-ascii
 Content-Disposition: inline

 Hi Chuck,

 On Fri, Mar 15, 2013 at 03:55:03PM +0000, Chuck Silvers wrote:
 >  what is the specific problem with auixp?  what other devices have trouble
 >  and what's the specific problem with those?

 The one device that really got screwed up was auixp; it couldn't communicate
 with its codec anymore.

 >  does this patch make any difference?
 >  http://mail-index.netbsd.org/port-amd64/2013/02/19/msg001860.html

 This patch solves it. The interrupt storm is gone and auixp(9) is working again!

 >  if you revert all of those files to the netbsd-6-0-RELEASE tag,
 >  does that make the problem go away?  if so, could you turn on
 >  MPVERBOSE and INTRDEBUG and send the output from that with ACPI enabled?
 >  (with the current netbsd-6 versions of those files, not the older versions)
 ...
 >  also, could you provide the output of "acpidump -dt"?
 It works without reverting these files. I've attachd the dmesg and the
 acpidump nevertheless.

 With regards,
 Reinoud


 --d6Gm4EdcadzBjdND
 Content-Type: text/plain; charset=us-ascii
 Content-Disposition: attachment; filename="dmesg.heethoofdje"

 Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
     2006, 2007, 2008, 2009, 2010, 2011, 2012
     The NetBSD Foundation, Inc.  All rights reserved.
 Copyright (c) 1982, 1986, 1989, 1991, 1993
     The Regents of the University of California.  All rights reserved.

 NetBSD 6.1_RC1 (GENERIC) #8: Sun Mar 17 21:30:35 CET 2013
 	reinoud@heethoofdje.13thmonkey.org:/usr/sources/cvs.netbsd.org/src-6-debug/sys/arch/i386/compile/GENERIC
 total memory = 1918 MB
 avail memory = 1873 MB
 timecounter: Timecounters tick every 10.000 msec
 timecounter: Timecounter "i8254" frequency 1193182 Hz quality 100
 To Be Filled By O.E.M. To Be Filled By O.E.M. (To Be Filled By O.E.M.)
 mainbus0 (root)
 mainbus0: scanning 0x9fc00 to 0x9fff0 for MP signature
 mainbus0: scanning 0x9f800 to 0x9fbf0 for MP signature
 mainbus0: scanning 0xf0000 to 0xffff0 for MP signature
 cpu0 at mainbus0: Intel(R) Pentium(R) 4 CPU 3.20GHz, id 0xf33
 cpu0: idle lwp at 0xc2f3dd20, idle sp at 0xda9b9d28
 pci0 at mainbus0 bus 0: configuration mode 1
 pci0: i/o space, memory space enabled, rd/line, rd/mult, wr/inv ok
 pchb0 at pci0 dev 0 function 0: vendor 0x1002 product 0x5833 (rev. 0x02)
 agp at pchb0 not configured
 ppb0 at pci0 dev 1 function 0: vendor 0x1002 product 0x5838 (rev. 0x00)
 pci1 at ppb0 bus 1
 pci1: i/o space, memory space enabled
 genfb0 at pci1 dev 5 function 0: vendor 0x1002 product 0x5834 (rev. 0x00)
 genfb0: framebuffer at 0xc0000000, size 1280x1024, depth 8, stride 1280
 wsdisplay0 at genfb0 kbdmux 1: console (default, vt100 emulation)
 wsmux1: connecting to wsdisplay0
 radeondrm0 at genfb0: ATI Radeon RS300 9100 IGP
 radeondrm0: Initialized radeon 1.29.0 20080613
 ohci0 at pci0 dev 19 function 0: vendor 0x1002 product 0x4347 (rev. 0x01)
 allocated pic pic0 type level pin 10 level 6 to cpu0 slot 10 idt entry 42
 ohci0: interrupting at irq 10
 ohci0: OHCI version 1.0, legacy support
 usb0 at ohci0: USB revision 1.0
 ohci1 at pci0 dev 19 function 1: vendor 0x1002 product 0x4348 (rev. 0x01)
 allocated pic pic0 type level pin 10 level 6 to cpu0 slot 10 idt entry 42
 ohci1: interrupting at irq 10
 ohci1: OHCI version 1.0, legacy support
 usb1 at ohci1: USB revision 1.0
 ehci0 at pci0 dev 19 function 2: vendor 0x1002 product 0x4345 (rev. 0x01)
 allocated pic pic0 type level pin 10 level 6 to cpu0 slot 10 idt entry 42
 ehci0: interrupting at irq 10
 ehci0: dropped intr workaround enabled
 ehci0: BIOS refuses to give up ownership, using force
 ehci0: EHCI version 1.0
 ehci0: companion controllers, 3 ports each: ohci0 ohci1
 usb2 at ehci0: USB revision 2.0
 piixpm0 at pci0 dev 20 function 0: vendor 0x1002 product 0x4353 (rev. 0x18)
 piixpm0: interrupting at SMI, polling
 iic0 at piixpm0: I2C bus
 ixpide0 at pci0 dev 20 function 1: ATI Technologies IXP IDE Controller (rev. 0x00)
 ixpide0: bus-master DMA support present
 ixpide0: primary channel configured to compatibility mode
 allocated pic pic0 type edge pin 14 level 6 to cpu0 slot 14 idt entry 46
 ixpide0: primary channel interrupting at irq 14
 atabus0 at ixpide0 channel 0
 ixpide0: secondary channel configured to compatibility mode
 allocated pic pic0 type edge pin 15 level 6 to cpu0 slot 15 idt entry 47
 ixpide0: secondary channel interrupting at irq 15
 atabus1 at ixpide0 channel 1
 pcib0 at pci0 dev 20 function 3: vendor 0x1002 product 0x434c (rev. 0x00)
 ppb1 at pci0 dev 20 function 4: vendor 0x1002 product 0x4342 (rev. 0x00)
 pci2 at ppb1 bus 2
 pci2: i/o space, memory space enabled
 ex0 at pci2 dev 8 function 0: 3Com 3c920B-EMB-WNM Integrated Fast Ethernet (rev. 0x40)
 allocated pic pic0 type level pin 3 level 6 to cpu0 slot 3 idt entry 35
 ex0: interrupting at irq 3
 ex0: MAC address 00:11:2f:52:44:7c
 rlphy0 at ex0 phy 1: RTL8201L 10/100 media interface, rev. 1
 rlphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
 fwohci0 at pci2 dev 10 function 0: vendor 0x1106 product 0x3044 (rev. 0x80)
 allocated pic pic0 type level pin 3 level 6 to cpu0 slot 3 idt entry 35
 fwohci0: interrupting at irq 3
 fwohci0: OHCI version 1.10 (ROM=1)
 fwohci0: No. of Isochronous channels is 4.
 fwohci0: EUI64 00:e0:18:00:00:8c:83:d8
 fwohci0: Phy 1394a available S400, 2 ports.
 fwohci0: Link S400, max_rec 2048 bytes.
 ieee1394if0 at fwohci0: IEEE1394 bus
 fwip0 at ieee1394if0: IP over IEEE1394
 fwohci0: Initiate bus reset
 cbb0 at pci2 dev 12 function 0: vendor 0x1524 product 0x1411 (rev. 0x02)
 vendor 0x1524 product 0x0510 (flash memory) at pci2 dev 12 function 1 not configured
 re0 at pci2 dev 14 function 0: RealTek 8169/8110 Gigabit Ethernet (rev. 0x10)
 allocated pic pic0 type level pin 5 level 6 to cpu0 slot 5 idt entry 37
 re0: interrupting at irq 5
 re0: Ethernet address 00:e0:4c:1f:12:ec
 re0: using 256 tx descriptors
 rgephy0 at re0 phy 7: RTL8169S/8110S/8211 1000BASE-T media interface, rev. 3
 rgephy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT, 1000baseT-FDX, auto
 cbb0: cacheline 0x10 lattimer 0x40
 cbb0: bhlc 0x824010
 pci_intr_map: no mapping for pin A (line=ff)
 cbb0: couldn't map interrupt
 cardslot0 at cbb0
 cardbus0 at cardslot0: bus 3
 pcmcia0 at cardslot0
 auixp0 at pci0 dev 20 function 5: vendor 0x1002 product 0x4341 (rev. 0x00)
 allocated pic pic0 type level pin 5 level 7 to cpu0 slot 5 idt entry 37
 auixp0: interrupting at irq 5
 auixp0: soft resetting aclink
 isa0 at pcib0
 lpt0 at isa0 port 0x378-0x37b irq 7
 allocated pic pic0 type edge pin 7 level 6 to cpu0 slot 7 idt entry 39
 com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo
 allocated pic pic0 type edge pin 4 level 8 to cpu0 slot 4 idt entry 36
 pckbc0 at isa0 port 0x60-0x64
 pckbd0 at pckbc0 (kbd slot)
 allocated pic pic0 type edge pin 1 level 6 to cpu0 slot 1 idt entry 33
 pckbc0: using irq 1 for kbd slot
 wskbd0 at pckbd0: console keyboard, using wsdisplay0
 attimer0 at isa0 port 0x40-0x43
 pcppi0 at isa0 port 0x61
 midi0 at pcppi0: PC speaker
 sysbeep0 at pcppi0
 npx0 at isa0 port 0xf0-0xff
 npx0: reported by CPUID; using exception 16
 attimer0: attached to pcppi0
 fwohci0: BUS reset
 fwohci0: node_id=0xc800ffc0, gen=1, CYCLEMASTER mode
 ieee1394if0: 1 nodes, maxhop <= 0 cable IRM irm(0) (me)
 ieee1394if0: bus manager 0
 timecounter: Timecounter "clockinterrupt" frequency 100 Hz quality 0
 allocated pic pic0 type level pin 0 level 7 to cpu0 slot 0 idt entry 32
 timecounter: Timecounter "TSC" frequency 3192634080 Hz quality 3000
 auixp0: ac97: Analog Devices AD1888 codec; headphone, 20 bit DAC, no 3D stereo
 auixp0: ac97: ext id 0x3c7<AMAP,LDAC,SDAC,CDAC,SPDIF,DRA,VRA>
 auixp0: codec spdif support detected but disabled for now
 audio0 at auixp0: full duplex, playback, capture, mmap, independent
 atapibus0 at atabus0: 2 targets
 uhub0 at usb0: vendor 0x1002 OHCI root hub, class 9/0, rev 1.00/1.00, addr 1
 uhub0: 3 ports with 3 removable, self powered
 uhub1 at usb1: vendor 0x1002 OHCI root hub, class 9/0, rev 1.00/1.00, addr 1
 uhub1: 3 ports with 3 removable, self powered
 uhub2 at usb2: vendor 0x1002 EHCI root hub, class 9/0, rev 2.00/1.00, addr 1
 uhub2: 6 ports with 6 removable, self powered
 cd0 at atapibus0 drive 0: <ASUS    CRW-5232A4, , 1.00> cdrom removable
 cd0: 32-bit data port
 cd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 2 (Ultra/33)
 cd0(ixpide0:0:0): using PIO mode 4, Ultra-DMA mode 2 (Ultra/33) (using DMA)
 umass0 at uhub2 port 2 configuration 1 interface 0
 umass0: Sony Sony Digital Book Reader, rev 2.00/2.26, addr 2
 umass0: using SCSI over Bulk-Only
 scsibus0 at umass0: 2 targets, 3 luns per target
 sd0 at scsibus0 target 0 lun 0: <Sony, PRS-T2, 2044> disk removable
 sd0: drive offline
 sd0: unable to open device, error = 19
 sd1 at scsibus0 target 0 lun 1: <Sony, PRS-T2  SD, 2044> disk removable
 sd1: drive offline
 sd1: unable to open device, error = 19
 sd2 at scsibus0 target 0 lun 2: <Sony, PRS-T2  Setup, 2044> disk removable
 sd2: drive offline
 sd2: unable to open device, error = 19
 wd0 at atabus1 drive 0
 wd0: <WDC WD5000AACS-00ZUB0>
 wd0: drive supports 16-sector PIO transfers, LBA48 addressing
 wd0: 465 GB, 969021 cyl, 16 head, 63 sec, 512 bytes/sect x 976773168 sectors
 wd0: 32-bit data port
 wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133)
 wd0(ixpide0:1:0): using PIO mode 4, Ultra-DMA mode 6 (Ultra/133) (using DMA)
 Kernelized RAIDframe activated
 boot device: wd0
 root on wd0a dumps on wd0b
 root file system type: ffs
 uhidev0 at uhub1 port 2 configuration 1 interface 0
 uhidev0: Unique ICs Unique ICs mouse, rev 1.00/0.01, addr 2, iclass 3/1
 ums0 at uhidev0: 5 buttons and Z dir
 wsmouse0 at ums0 mux 0
 tap0: Ethernet address f2:0b:a4:12:c9:02
 cprng sysctl: WARNING pseudorandom rekeying.
 wsdisplay0: screen 1 added (default, vt100 emulation)
 wsdisplay0: screen 2 added (default, vt100 emulation)
 wsdisplay0: screen 3 added (default, vt100 emulation)
 wsdisplay0: screen 4 added (default, vt100 emulation)

 --d6Gm4EdcadzBjdND
 Content-Type: text/plain; charset=us-ascii
 Content-Disposition: attachment; filename="acpidump-dt.heethoofdje"

 /*
   RSD PTR: OEM=ACPIAM, ACPI_Rev=2.0x (2)
 	XSDT=0x77f40100, length=33, cksum=115
  */
 /*
   XSDT: Length=60, Revision=1, Checksum=121,
 	OEMID=A M I, OEM Table ID=OEMXSDT, OEM Revision=0x6000529,
 	Creator ID=MSFT, Creator Revision=0x97
 	Entries={ 0x77f40200, 0x77f40300, 0x77f50040 }
  */
 /*
   FACP: Length=129, Revision=1, Checksum=197,
 	OEMID=A M I, OEM Table ID=OEMFACP, OEM Revision=0x6000529,
 	Creator ID=MSFT, Creator Revision=0x97
  	FACS=0x77f50000, DSDT=0x77f40360
 	INT_MODEL=APIC
 	Preferred_PM_Profile=Unspecified (0)
 	SCI_INT=9
 	SMI_CMD=0xb0, ACPI_ENABLE=0xe1, ACPI_DISABLE=0x1e, S4BIOS_REQ=0x0
 	PSTATE_CNT=0xe2
 	PM1a_EVT_BLK=0x800-0x803
 	PM1a_CNT_BLK=0xf40-0xf41
 	PM2_CNT_BLK=0x850-0x850
 	PM_TMR_BLK=0x808-0x80b
 	GPE0_BLK=0x820-0x827
 	P_LVL2_LAT=101 us, P_LVL3_LAT=1001 us
 	FLUSH_SIZE=1024, FLUSH_STRIDE=16
 	DUTY_OFFSET=0, DUTY_WIDTH=8
 	DAY_ALRM=13, MON_ALRM=0, CENTURY=50
 	IAPC_BOOT_ARCH={LEGACY_DEVICES,8042}
 	Flags={WBINVD,C1_SUPPORTED,SLEEP_BUTTON,S4_RTC_WAKE,32BIT_TIMER,HEADLESS}
 	X_FACS=0x77f50000, X_DSDT=0x77f40360
 	X_PM1a_EVT_BLK=0x800:0[32] (IO)
 	X_PM1a_CNT_BLK=0xf40:0[16] (IO)
 	X_PM_TMR_BLK=0x808:0[32] (IO)
 	X_GPE0_BLK=0x820:0[32] (IO)
 	X_GPE1_BLK=0x830:0[32] (IO)
  */
 /*
   FACS:	Length=64, HwSig=0x00000000, Firm_Wake_Vec=0x00000000
 	Global_Lock=
 	Flags=
 	Version=1
  */
 /*
   DSDT: Length=11128, Revision=1, Checksum=78,
 	OEMID=A0032, OEM Table ID=A0032000, OEM Revision=0x0,
 	Creator ID=INTL, Creator Revision=0x20030522
  */
 /*
   APIC: Length=92, Revision=1, Checksum=35,
 	OEMID=A M I, OEM Table ID=OEMAPIC, OEM Revision=0x6000529,
 	Creator ID=MSFT, Creator Revision=0x97
 	Local APIC ADDR=0xfee00000
 	Flags={PC-AT}

 	Type=Local APIC
 	ACPI CPU=1
 	Flags={ENABLED}
 	APIC ID=0

 	Type=Local APIC
 	ACPI CPU=2
 	Flags={ENABLED}
 	APIC ID=1

 	Type=IO APIC
 	APIC ID=2
 	INT BASE=0
 	ADDR=0x00000000fec00000

 	Type=INT Override
 	BUS=0
 	IRQ=0
 	INTR=2
 	Flags={Polarity=conforming, Trigger=conforming}

 	Type=INT Override
 	BUS=0
 	IRQ=9
 	INTR=21
 	Flags={Polarity=active-lo, Trigger=level}
  */
 /*
   OEMB: Length=67, Revision=1, Checksum=112,
 	OEMID=A M I, OEM Table ID=OEMBIOS, OEM Revision=0x6000529,
 	Creator ID=MSFT, Creator Revision=0x97

 	Data={
 		 4f 45 4d 42 43 00 00 00    01 70 41 20 4d 20 49 20
 		 4f 45 4d 42 49 4f 53 20    29 05 00 06 4d 53 46 54
 		 97 00 00 00 0d 00 04 00    00 00 78 00 00 f8 ff 00
 		 00 00 00 00 00 00 00 00    00 00 78 00 00 00 88 83
 		 50 f5 77
 	}
  */
 /*
  * Intel ACPI Component Architecture
  * AML Disassembler version 20110623-32 [23 Jun 2011]
  * Copyright (c) 2000 - 2011 Intel Corporation
  * 
  * Disassembly of /tmp/acpidump.00321a, Sun Mar 17 18:58:00 2013
  *
  * Original Table Header:
  *     Signature        "DSDT"
  *     Length           0x00002B78 (11128)
  *     Revision         0x01 **** 32-bit table (V1), no 64-bit math support
  *     Checksum         0x4E
  *     OEM ID           "A0032"
  *     OEM Table ID     "A0032000"
  *     OEM Revision     0x00000000 (0)
  *     Compiler ID      "INTL"
  *     Compiler Version 0x20030522 (537068834)
  */

 DefinitionBlock ("/tmp/acpidump.aml", "DSDT", 1, "A0032", "A0032000", 0x00000000)
 {
     OperationRegion (BIOS, SystemMemory, 0x77F50064, 0xFF)
     Field (BIOS, ByteAcc, NoLock, Preserve)
     {
         SS1,    1, 
         SS2,    1, 
         SS3,    1, 
         SS4,    1, 
                 Offset (0x01), 
         IOST,   16, 
         TOPM,   32, 
         ROMS,   32, 
         MG1B,   32, 
         MG1L,   32, 
         MG2B,   32, 
         MG2L,   32, 
         ACPR,   32
     }

     Name (PMBS, 0x0800)
     Name (PMLN, 0x80)
     Name (GPBS, 0x00)
     Name (GPLN, 0x00)
     Name (SMBS, 0x0A00)
     Name (SMBL, 0x00)
     Name (SPIO, 0x2E)
     Name (APCB, 0xFEC00000)
     Name (APCL, 0x1000)
     Name (IO1B, 0x0280)
     Name (IO1L, 0x10)
     Method (RRIO, 4, NotSerialized)
     {
         Store ("RRIO", Debug)
     }

     Method (RDMA, 3, NotSerialized)
     {
         Store ("rDMA", Debug)
     }

     Name (PICM, 0x00)
     Method (_PIC, 1, NotSerialized)
     {
         If (Arg0)
         {
             Store (0x00, \_SB.PCI0.SBRG.EINT)
             Store (0x00, \_SB.PCI0.SBRG.FINT)
         }
         Else
         {
         }

         Store (Arg0, PICM)
     }

     Name (OSVR, Ones)
     Method (OSFL, 0, NotSerialized)
     {
         If (LNotEqual (OSVR, Ones))
         {
             Return (OSVR)
         }

         Store (0xAC, DBG8)
         Store (0x01, OSVR)
         If (MCTH (\_OS, "Microsoft Windows NT"))
         {
             Store (0x00, OSVR)
         }

         Return (OSVR)
     }

     Method (MCTH, 2, NotSerialized)
     {
         If (LLess (SizeOf (Arg0), SizeOf (Arg1)))
         {
             Return (Zero)
         }

         Add (SizeOf (Arg0), 0x01, Local0)
         Name (BUF0, Buffer (Local0) {})
         Name (BUF1, Buffer (Local0) {})
         Store (Arg0, BUF0)
         Store (Arg1, BUF1)
         While (Local0)
         {
             Decrement (Local0)
             If (LNotEqual (DerefOf (Index (BUF0, Local0)), DerefOf (Index (
                 BUF1, Local0))))
             {
                 Return (Zero)
             }
         }

         Return (One)
     }

     Method (GPRW, 2, NotSerialized)
     {
         Name (PRWP, Package (0x02)
         {
             0x00, 
             0x00
         })
         Store (Arg0, Index (PRWP, 0x00))
         Store (Arg1, Index (PRWP, 0x01))
         Store (0x00, Local0)
         Or (Local0, ShiftLeft (SS1, 0x01), Local0)
         Or (Local0, ShiftLeft (SS2, 0x02), Local0)
         Or (Local0, ShiftLeft (SS3, 0x03), Local0)
         Or (Local0, ShiftLeft (SS4, 0x04), Local0)
         If (And (ShiftLeft (0x01, Arg1), Local0)) {}
         Else
         {
             ShiftRight (Local0, 0x01, Local0)
             If (LOr (LEqual (OSFL (), 0x01), LEqual (OSFL (), 0x02)))
             {
                 FindSetLeftBit (Local0, Index (PRWP, 0x01))
             }
             Else
             {
                 FindSetRightBit (Local0, Index (PRWP, 0x01))
             }
         }

         Return (PRWP)
     }

     Name (WAKP, Package (0x02)
     {
         0x00, 
         0x00
     })
     OperationRegion (DLY0, SystemIO, 0xE1, 0x01)
     Field (DLY0, ByteAcc, NoLock, Preserve)
     {
         DELY,   8
     }

     OperationRegion (DEB0, SystemIO, 0x1080, 0x02)
     Field (DEB0, WordAcc, NoLock, Preserve)
     {
         DBG8,   16
     }

     Scope (\_PR)
     {
         Processor (CPU1, 0x01, 0x00000000, 0x00) {}
         Processor (CPU2, 0x02, 0x00000000, 0x00) {}
     }

     Scope (\_SB)
     {
         Name (PR00, Package (0x03)
         {
             Package (0x04)
             {
                 0x0014FFFF, 
                 0x00, 
                 LNKA, 
                 0x00
             }, 

             Package (0x04)
             {
                 0x0014FFFF, 
                 0x01, 
                 LNKB, 
                 0x00
             }, 

             Package (0x04)
             {
                 0x0013FFFF, 
                 0x00, 
                 LNKD, 
                 0x00
             }
         })
         Name (AR00, Package (0x03)
         {
             Package (0x04)
             {
                 0x0014FFFF, 
                 0x00, 
                 0x00, 
                 0x10
             }, 

             Package (0x04)
             {
                 0x0014FFFF, 
                 0x01, 
                 0x00, 
                 0x11
             }, 

             Package (0x04)
             {
                 0x0013FFFF, 
                 0x00, 
                 0x00, 
                 0x13
             }
         })
         Name (PR01, Package (0x02)
         {
             Package (0x04)
             {
                 0x0005FFFF, 
                 0x00, 
                 LNKA, 
                 0x00
             }, 

             Package (0x04)
             {
                 0x0005FFFF, 
                 0x01, 
                 LNKB, 
                 0x00
             }
         })
         Name (AR01, Package (0x02)
         {
             Package (0x04)
             {
                 0x0005FFFF, 
                 0x00, 
                 0x00, 
                 0x10
             }, 

             Package (0x04)
             {
                 0x0005FFFF, 
                 0x01, 
                 0x00, 
                 0x11
             }
         })
         Name (PR02, Package (0x0F)
         {
             Package (0x04)
             {
                 0x0008FFFF, 
                 0x00, 
                 LNKC, 
                 0x00
             }, 

             Package (0x04)
             {
                 0x0008FFFF, 
                 0x01, 
                 LNKD, 
                 0x00
             }, 

             Package (0x04)
             {
                 0x0008FFFF, 
                 0x02, 
                 LNKA, 
                 0x00
             }, 

             Package (0x04)
             {
                 0x0008FFFF, 
                 0x03, 
                 LNKB, 
                 0x00
             }, 

             Package (0x04)
             {
                 0x0009FFFF, 
                 0x00, 
                 LNKA, 
                 0x00
             }, 

             Package (0x04)
             {
                 0x0009FFFF, 
                 0x01, 
                 LNKB, 
                 0x00
             }, 

             Package (0x04)
             {
                 0x0009FFFF, 
                 0x02, 
                 LNKC, 
                 0x00
             }, 

             Package (0x04)
             {
                 0x0009FFFF, 
                 0x03, 
                 LNKD, 
                 0x00
             }, 

             Package (0x04)
             {
                 0x000AFFFF, 
                 0x00, 
                 LNKC, 
                 0x00
             }, 

             Package (0x04)
             {
                 0x000CFFFF, 
                 0x00, 
                 LNKA, 
                 0x00
             }, 

             Package (0x04)
             {
                 0x000CFFFF, 
                 0x01, 
                 LNKD, 
                 0x00
             }, 

             Package (0x04)
             {
                 0x000EFFFF, 
                 0x00, 
                 LNKB, 
                 0x00
             }, 

             Package (0x04)
             {
                 0x000EFFFF, 
                 0x01, 
                 LNKA, 
                 0x00
             }, 

             Package (0x04)
             {
                 0x000EFFFF, 
                 0x02, 
                 LNKD, 
                 0x00
             }, 

             Package (0x04)
             {
                 0x000EFFFF, 
                 0x03, 
                 LNKC, 
                 0x00
             }
         })
         Name (AR02, Package (0x0F)
         {
             Package (0x04)
             {
                 0x0008FFFF, 
                 0x00, 
                 0x00, 
                 0x12
             }, 

             Package (0x04)
             {
                 0x0008FFFF, 
                 0x01, 
                 0x00, 
                 0x13
             }, 

             Package (0x04)
             {
                 0x0008FFFF, 
                 0x02, 
                 0x00, 
                 0x10
             }, 

             Package (0x04)
             {
                 0x0008FFFF, 
                 0x03, 
                 0x00, 
                 0x11
             }, 

             Package (0x04)
             {
                 0x0009FFFF, 
                 0x00, 
                 0x00, 
                 0x10
             }, 

             Package (0x04)
             {
                 0x0009FFFF, 
                 0x01, 
                 0x00, 
                 0x11
             }, 

             Package (0x04)
             {
                 0x0009FFFF, 
                 0x02, 
                 0x00, 
                 0x12
             }, 

             Package (0x04)
             {
                 0x0009FFFF, 
                 0x03, 
                 0x00, 
                 0x13
             }, 

             Package (0x04)
             {
                 0x000AFFFF, 
                 0x00, 
                 0x00, 
                 0x12
             }, 

             Package (0x04)
             {
                 0x000CFFFF, 
                 0x00, 
                 0x00, 
                 0x10
             }, 

             Package (0x04)
             {
                 0x000CFFFF, 
                 0x01, 
                 0x00, 
                 0x13
             }, 

             Package (0x04)
             {
                 0x000EFFFF, 
                 0x00, 
                 0x00, 
                 0x11
             }, 

             Package (0x04)
             {
                 0x000EFFFF, 
                 0x01, 
                 0x00, 
                 0x10
             }, 

             Package (0x04)
             {
                 0x000EFFFF, 
                 0x02, 
                 0x00, 
                 0x11
             }, 

             Package (0x04)
             {
                 0x000EFFFF, 
                 0x03, 
                 0x00, 
                 0x12
             }
         })
         Name (PRSA, ResourceTemplate ()
         {
             IRQ (Level, ActiveLow, Shared, )
                 {3,4,5,7,10,11,12,14,15}
         })
         Alias (PRSA, PRSB)
         Alias (PRSA, PRSC)
         Alias (PRSA, PRSD)
         Device (PCI0)
         {
             Name (_HID, EisaId ("PNP0A03"))
             Name (_ADR, 0x00)
             Name (_BBN, 0x00)
             Name (_UID, 0x00)
             Method (_PRT, 0, NotSerialized)
             {
                 If (PICM)
                 {
                     Return (AR00)
                 }

                 Return (PR00)
             }

             Device (P0P1)
             {
                 Name (_ADR, 0x00010000)
                 Method (_PRT, 0, NotSerialized)
                 {
                     If (PICM)
                     {
                         Return (AR01)
                     }

                     Return (PR01)
                 }
             }

             Device (SBSM)
             {
                 Name (_ADR, 0x00140000)
                 OperationRegion (SBIO, PCI_Config, 0x80, 0x30)
                 Field (SBIO, AnyAcc, NoLock, Preserve)
                 {
                     SBGP,   8, 
                     SBP0,   1, 
                     SBP1,   1, 
                     SBP2,   1, 
                     SBP3,   1, 
                             Offset (0x28), 
                     SEC0,   1, 
                     SEC1,   1, 
                     SEC2,   1, 
                     SEC3,   1, 
                     SEC4,   1, 
                     SEC5,   1, 
                             Offset (0x29), 
                     SEO0,   1, 
                     SEO1,   1, 
                     SEO2,   1, 
                     SEO3,   1, 
                     SEO4,   1, 
                     SEO5,   1, 
                             Offset (0x2A), 
                     SEI0,   1, 
                     SEI1,   1, 
                     SEI2,   1, 
                     SEI3,   1, 
                     SEI4,   1, 
                     SEI5,   1
                 }
             }

             Device (SBRG)
             {
                 Name (_ADR, 0x00140003)
                 OperationRegion (SBLP, PCI_Config, 0x44, 0x04)
                 Field (SBLP, DWordAcc, NoLock, Preserve)
                 {
                     LPCD,   32
                 }

                 OperationRegion (PINT, SystemIO, 0x0C00, 0x02)
                 Field (PINT, ByteAcc, NoLock, Preserve)
                 {
                     IIDX,   8, 
                     IDAT,   8
                 }

                 IndexField (IIDX, IDAT, ByteAcc, NoLock, Preserve)
                 {
                     AINT,   8, 
                     BINT,   8, 
                     CINT,   8, 
                     DINT,   8, 
                     EINT,   8, 
                     FINT,   8
                 }

                 OperationRegion (CMOS, SystemIO, 0x72, 0x02)
                 Field (CMOS, ByteAcc, NoLock, Preserve)
                 {
                     CIDX,   8, 
                     CDAT,   8
                 }

                 IndexField (CIDX, CDAT, ByteAcc, NoLock, Preserve)
                 {
                             Offset (0x90), 
                     WAKT,   8, 
                     SLPT,   4, 
                     KBFG,   1, 
                     MSFG,   1
                 }

                 OperationRegion (PMBL, SystemIO, 0x0CD6, 0x02)
                 Field (PMBL, ByteAcc, NoLock, Preserve)
                 {
                     PIDX,   8, 
                     PDAT,   8
                 }

                 IndexField (PIDX, PDAT, ByteAcc, NoLock, Preserve)
                 {
                             Offset (0x0D), 
                         ,   6, 
                     PLED,   2, 
                             Offset (0x14), 
                     TP0P,   16, 
                     TP1P,   16, 
                     TP2P,   16, 
                     TP3P,   16, 
                         ,   4, 
                     TP3E,   1, 
                     TP2E,   1, 
                     TP1E,   1, 
                     TP0E,   1, 
                         ,   4, 
                     TP3S,   1, 
                     TP2S,   1, 
                     TP1S,   1, 
                     TP0S,   1, 
                             Offset (0x22), 
                     PMCB,   16, 
                             Offset (0x36), 
                     GE0T,   1, 
                     GE1T,   1, 
                     GE2T,   1, 
                     GE3T,   1, 
                     GE4T,   1, 
                     GE5T,   1, 
                     GE6T,   1, 
                     GE7T,   1, 
                             Offset (0x39), 
                     GE0S,   1, 
                     GE1S,   1, 
                     GE2S,   1, 
                     GE3S,   1, 
                     GE4S,   1, 
                     GE5S,   1, 
                     GE6S,   1, 
                     GE7S,   1, 
                             Offset (0x50), 
                     C4EN,   1, 
                             Offset (0x60), 
                     SLED,   1
                 }

                 Method (_INI, 0, NotSerialized)
                 {
                     C4C3 ()
                 }

                 Method (C4C3, 0, NotSerialized)
                 {
                 }

                 Scope (\_SB)
                 {
                     OperationRegion (GPMC, SystemIO, 0x0C52, 0x01)
                     Field (GPMC, ByteAcc, NoLock, Preserve)
                     {
                         GPM0,   1, 
                         GPM1,   1, 
                         GPM2,   1, 
                         GPM3,   1, 
                         GPM4,   1, 
                         GPM5,   1, 
                         GPM6,   1, 
                         GPM7,   1
                     }
                 }

                 Device (PIC)
                 {
                     Name (_HID, EisaId ("PNP0000"))
                     Name (_CRS, ResourceTemplate ()
                     {
                         IO (Decode16,
                             0x0020,             // Range Minimum
                             0x0020,             // Range Maximum
                             0x00,               // Alignment
                             0x02,               // Length
                             )
                         IO (Decode16,
                             0x00A0,             // Range Minimum
                             0x00A0,             // Range Maximum
                             0x00,               // Alignment
                             0x02,               // Length
                             )
                         IRQNoFlags ()
                             {2}
                     })
                 }

                 Device (DMAD)
                 {
                     Name (_HID, EisaId ("PNP0200"))
                     Name (_CRS, ResourceTemplate ()
                     {
                         DMA (Compatibility, BusMaster, Transfer8, )
                             {4}
                         IO (Decode16,
                             0x0000,             // Range Minimum
                             0x0000,             // Range Maximum
                             0x00,               // Alignment
                             0x10,               // Length
                             )
                         IO (Decode16,
                             0x0081,             // Range Minimum
                             0x0081,             // Range Maximum
                             0x00,               // Alignment
                             0x03,               // Length
                             )
                         IO (Decode16,
                             0x0087,             // Range Minimum
                             0x0087,             // Range Maximum
                             0x00,               // Alignment
                             0x01,               // Length
                             )
                         IO (Decode16,
                             0x0089,             // Range Minimum
                             0x0089,             // Range Maximum
                             0x00,               // Alignment
                             0x03,               // Length
                             )
                         IO (Decode16,
                             0x008F,             // Range Minimum
                             0x008F,             // Range Maximum
                             0x00,               // Alignment
                             0x01,               // Length
                             )
                         IO (Decode16,
                             0x00C0,             // Range Minimum
                             0x00C0,             // Range Maximum
                             0x00,               // Alignment
                             0x20,               // Length
                             )
                     })
                 }

                 Device (TMR)
                 {
                     Name (_HID, EisaId ("PNP0100"))
                     Name (_CRS, ResourceTemplate ()
                     {
                         IO (Decode16,
                             0x0040,             // Range Minimum
                             0x0040,             // Range Maximum
                             0x00,               // Alignment
                             0x04,               // Length
                             )
                         IRQNoFlags ()
                             {0}
                     })
                 }

                 Device (RTC0)
                 {
                     Name (_HID, EisaId ("PNP0B00"))
                     Name (_CRS, ResourceTemplate ()
                     {
                         IO (Decode16,
                             0x0070,             // Range Minimum
                             0x0070,             // Range Maximum
                             0x00,               // Alignment
                             0x02,               // Length
                             )
                         IRQNoFlags ()
                             {8}
                     })
                 }

                 Device (SPKR)
                 {
                     Name (_HID, EisaId ("PNP0800"))
                     Name (_CRS, ResourceTemplate ()
                     {
                         IO (Decode16,
                             0x0061,             // Range Minimum
                             0x0061,             // Range Maximum
                             0x00,               // Alignment
                             0x01,               // Length
                             )
                     })
                 }

                 Device (COPR)
                 {
                     Name (_HID, EisaId ("PNP0C04"))
                     Name (_CRS, ResourceTemplate ()
                     {
                         IO (Decode16,
                             0x00F0,             // Range Minimum
                             0x00F0,             // Range Maximum
                             0x00,               // Alignment
                             0x10,               // Length
                             )
                         IRQNoFlags ()
                             {13}
                     })
                 }

                 Device (FDC)
                 {
                     Name (_HID, EisaId ("PNP0700"))
                     Name (_FDE, Package (0x05)
                     {
                         0x01, 
                         0x00, 
                         0x02, 
                         0x02, 
                         0x02
                     })
                     Method (_STA, 0, NotSerialized)
                     {
                         Return (DSTA (0x03))
                     }

                     Method (_DIS, 0, NotSerialized)
                     {
                         DCNT (0x03, 0x00)
                     }

                     Method (_CRS, 0, NotSerialized)
                     {
                         DCRS (0x03)
                         Store (IRQM, IRQE)
                         Store (DMAM, DMAE)
                         Store (IO11, IO21)
                         Store (IO12, IO22)
                         Store (0x06, LEN2)
                         Add (IO21, 0x07, IO31)
                         Store (IO31, IO32)
                         Store (0x01, LEN3)
                         Return (CRS2)
                     }

                     Method (_SRS, 1, NotSerialized)
                     {
                         DSRS (Arg0, 0x03)
                     }

                     Name (_PRS, ResourceTemplate ()
                     {
                         StartDependentFn (0x00, 0x00)
                         {
                             IRQNoFlags ()
                                 {6}
                             DMA (Compatibility, NotBusMaster, Transfer8, )
                                 {2}
                             IO (Decode16,
                                 0x03F0,             // Range Minimum
                                 0x03F0,             // Range Maximum
                                 0x01,               // Alignment
                                 0x06,               // Length
                                 )
                             IO (Decode16,
                                 0x03F7,             // Range Minimum
                                 0x03F7,             // Range Maximum
                                 0x01,               // Alignment
                                 0x01,               // Length
                                 )
                         }
                         StartDependentFnNoPri ()
                         {
                             IRQNoFlags ()
                                 {3,4,5,6,7,10,11,12}
                             DMA (Compatibility, NotBusMaster, Transfer8, )
                                 {1,2,3}
                             IO (Decode16,
                                 0x03F0,             // Range Minimum
                                 0x03F0,             // Range Maximum
                                 0x01,               // Alignment
                                 0x06,               // Length
                                 )
                             IO (Decode16,
                                 0x03F7,             // Range Minimum
                                 0x03F7,             // Range Maximum
                                 0x01,               // Alignment
                                 0x01,               // Length
                                 )
                         }
                         StartDependentFnNoPri ()
                         {
                             IRQNoFlags ()
                                 {3,4,5,6,7,10,11,12}
                             DMA (Compatibility, NotBusMaster, Transfer8, )
                                 {1,2,3}
                             IO (Decode16,
                                 0x0370,             // Range Minimum
                                 0x0370,             // Range Maximum
                                 0x01,               // Alignment
                                 0x06,               // Length
                                 )
                             IO (Decode16,
                                 0x0377,             // Range Minimum
                                 0x0377,             // Range Maximum
                                 0x01,               // Alignment
                                 0x01,               // Length
                                 )
                         }
                         EndDependentFn ()
                     })
                 }

                 Device (LPTE)
                 {
                     Method (_HID, 0, NotSerialized)
                     {
                         If (LPTM (0x02))
                         {
                             Return (0x0104D041)
                         }
                         Else
                         {
                             Return (0x0004D041)
                         }
                     }

                     Method (_STA, 0, NotSerialized)
                     {
                         Return (DSTA (0x02))
                     }

                     Method (_DIS, 0, NotSerialized)
                     {
                         DCNT (0x02, 0x00)
                     }

                     Method (_CRS, 0, NotSerialized)
                     {
                         DCRS (0x02)
                         If (LPTM (0x02))
                         {
                             Store (IRQM, IRQE)
                             Store (DMAM, DMAE)
                             Store (IO11, IO21)
                             Store (IO12, IO22)
                             Store (LEN1, LEN2)
                             Add (IO21, 0x0400, IO31)
                             Store (IO31, IO32)
                             Store (LEN2, LEN3)
                             Return (CRS2)
                         }
                         Else
                         {
                             Return (CRS1)
                         }
                     }

                     Method (_SRS, 1, NotSerialized)
                     {
                         DSRS (Arg0, 0x02)
                     }

                     Method (_PRS, 0, NotSerialized)
                     {
                         If (LPTM (0x02))
                         {
                             Return (EPPR)
                         }
                         Else
                         {
                             Return (LPPR)
                         }
                     }

                     Name (LPPR, ResourceTemplate ()
                     {
                         StartDependentFnNoPri ()
                         {
                             IRQNoFlags ()
                                 {3,4,5,6,7,10,11,12}
                             DMA (Compatibility, NotBusMaster, Transfer8, )
                                 {}
                             IO (Decode16,
                                 0x0378,             // Range Minimum
                                 0x0378,             // Range Maximum
                                 0x01,               // Alignment
                                 0x08,               // Length
                                 )
                         }
                         StartDependentFnNoPri ()
                         {
                             IRQNoFlags ()
                                 {3,4,5,6,7,10,11,12}
                             DMA (Compatibility, NotBusMaster, Transfer8, )
                                 {}
                             IO (Decode16,
                                 0x0278,             // Range Minimum
                                 0x0278,             // Range Maximum
                                 0x01,               // Alignment
                                 0x08,               // Length
                                 )
                         }
                         StartDependentFnNoPri ()
                         {
                             IRQNoFlags ()
                                 {3,4,5,6,7,10,11,12}
                             DMA (Compatibility, NotBusMaster, Transfer8, )
                                 {}
                             IO (Decode16,
                                 0x03BC,             // Range Minimum
                                 0x03BC,             // Range Maximum
                                 0x01,               // Alignment
                                 0x04,               // Length
                                 )
                         }
                         StartDependentFnNoPri ()
                         {
                             IRQNoFlags ()
                                 {}
                             DMA (Compatibility, NotBusMaster, Transfer8, )
                                 {}
                             IO (Decode16,
                                 0x0378,             // Range Minimum
                                 0x0378,             // Range Maximum
                                 0x01,               // Alignment
                                 0x08,               // Length
                                 )
                         }
                         StartDependentFnNoPri ()
                         {
                             IRQNoFlags ()
                                 {}
                             DMA (Compatibility, NotBusMaster, Transfer8, )
                                 {}
                             IO (Decode16,
                                 0x0278,             // Range Minimum
                                 0x0278,             // Range Maximum
                                 0x01,               // Alignment
                                 0x08,               // Length
                                 )
                         }
                         StartDependentFnNoPri ()
                         {
                             IRQNoFlags ()
                                 {}
                             DMA (Compatibility, NotBusMaster, Transfer8, )
                                 {}
                             IO (Decode16,
                                 0x03BC,             // Range Minimum
                                 0x03BC,             // Range Maximum
                                 0x01,               // Alignment
                                 0x04,               // Length
                                 )
                         }
                         EndDependentFn ()
                     })
                     Name (EPPR, ResourceTemplate ()
                     {
                         IRQNoFlags ()
                             {3,4,5,6,7,10,11,12}
                         StartDependentFnNoPri ()
                         {
                             DMA (Compatibility, NotBusMaster, Transfer8, )
                                 {1,2,3}
                             IO (Decode16,
                                 0x0378,             // Range Minimum
                                 0x0378,             // Range Maximum
                                 0x01,               // Alignment
                                 0x08,               // Length
                                 )
                             IO (Decode16,
                                 0x0778,             // Range Minimum
                                 0x0778,             // Range Maximum
                                 0x01,               // Alignment
                                 0x08,               // Length
                                 )
                         }
                         StartDependentFnNoPri ()
                         {
                             DMA (Compatibility, NotBusMaster, Transfer8, )
                                 {1,2,3}
                             IO (Decode16,
                                 0x0278,             // Range Minimum
                                 0x0278,             // Range Maximum
                                 0x01,               // Alignment
                                 0x08,               // Length
                                 )
                             IO (Decode16,
                                 0x0678,             // Range Minimum
                                 0x0678,             // Range Maximum
                                 0x01,               // Alignment
                                 0x08,               // Length
                                 )
                         }
                         StartDependentFnNoPri ()
                         {
                             DMA (Compatibility, NotBusMaster, Transfer8, )
                                 {1,2,3}
                             IO (Decode16,
                                 0x03BC,             // Range Minimum
                                 0x03BC,             // Range Maximum
                                 0x01,               // Alignment
                                 0x04,               // Length
                                 )
                             IO (Decode16,
                                 0x07BC,             // Range Minimum
                                 0x07BC,             // Range Maximum
                                 0x01,               // Alignment
                                 0x04,               // Length
                                 )
                         }
                         StartDependentFnNoPri ()
                         {
                             DMA (Compatibility, NotBusMaster, Transfer8, )
                                 {}
                             IO (Decode16,
                                 0x0378,             // Range Minimum
                                 0x0378,             // Range Maximum
                                 0x01,               // Alignment
                                 0x08,               // Length
                                 )
                             IO (Decode16,
                                 0x0778,             // Range Minimum
                                 0x0778,             // Range Maximum
                                 0x01,               // Alignment
                                 0x08,               // Length
                                 )
                         }
                         StartDependentFnNoPri ()
                         {
                             DMA (Compatibility, NotBusMaster, Transfer8, )
                                 {}
                             IO (Decode16,
                                 0x0278,             // Range Minimum
                                 0x0278,             // Range Maximum
                                 0x01,               // Alignment
                                 0x08,               // Length
                                 )
                             IO (Decode16,
                                 0x0678,             // Range Minimum
                                 0x0678,             // Range Maximum
                                 0x01,               // Alignment
                                 0x08,               // Length
                                 )
                         }
                         StartDependentFnNoPri ()
                         {
                             DMA (Compatibility, NotBusMaster, Transfer8, )
                                 {}
                             IO (Decode16,
                                 0x03BC,             // Range Minimum
                                 0x03BC,             // Range Maximum
                                 0x01,               // Alignment
                                 0x04,               // Length
                                 )
                             IO (Decode16,
                                 0x07BC,             // Range Minimum
                                 0x07BC,             // Range Maximum
                                 0x01,               // Alignment
                                 0x04,               // Length
                                 )
                         }
                         EndDependentFn ()
                     })
                 }

                 Device (SIOR)
                 {
                     Name (_HID, EisaId ("PNP0C02"))
                     Method (_UID, 0, NotSerialized)
                     {
                         Return (SPIO)
                     }

                     Name (CRS, ResourceTemplate ()
                     {
                         IO (Decode16,
                             0x0000,             // Range Minimum
                             0x0000,             // Range Maximum
                             0x00,               // Alignment
                             0x00,               // Length
                             _Y00)
                         IO (Decode16,
                             0x0000,             // Range Minimum
                             0x0000,             // Range Maximum
                             0x00,               // Alignment
                             0x00,               // Length
                             _Y01)
                         IO (Decode16,
                             0x0260,             // Range Minimum
                             0x0260,             // Range Maximum
                             0x01,               // Alignment
                             0x08,               // Length
                             )
                         IO (Decode16,
                             0x0310,             // Range Minimum
                             0x0310,             // Range Maximum
                             0x01,               // Alignment
                             0x02,               // Length
                             )
                     })
                     Method (_CRS, 0, NotSerialized)
                     {
                         If (LAnd (LNotEqual (SPIO, 0x03F0), LGreater (SPIO, 0xF0)))
                         {
                             CreateWordField (CRS, \_SB.PCI0.SBRG.SIOR._Y00._MIN, GP10)
                             CreateWordField (CRS, \_SB.PCI0.SBRG.SIOR._Y00._MAX, GP11)
                             CreateByteField (CRS, \_SB.PCI0.SBRG.SIOR._Y00._LEN, GPL1)
                             Store (SPIO, GP10)
                             Store (SPIO, GP11)
                             Store (0x02, GPL1)
                         }

                         If (IO1B)
                         {
                             CreateWordField (CRS, \_SB.PCI0.SBRG.SIOR._Y01._MIN, GP20)
                             CreateWordField (CRS, \_SB.PCI0.SBRG.SIOR._Y01._MAX, GP21)
                             CreateByteField (CRS, \_SB.PCI0.SBRG.SIOR._Y01._LEN, GPL2)
                             Store (IO1B, GP20)
                             Store (IO1B, GP21)
                             Store (IO1L, GPL2)
                         }

                         Return (CRS)
                     }
                 }

                 Name (DCAT, Package (0x15)
                 {
                     0x01, 
                     0x02, 
                     0x03, 
                     0x00, 
                     0xFF, 
                     0x08, 
                     0xFF, 
                     0xFF, 
                     0x09, 
                     0xFF, 
                     0x05, 
                     0x04, 
                     0xFF, 
                     0xFF, 
                     0xFF, 
                     0xFF, 
                     0x07, 
                     0xFF, 
                     0xFF, 
                     0xFF, 
                     0xFF
                 })
                 Name (IKEY, Package (0x02)
                 {
                     Package (0x04)
                     {
                         0x87, 
                         0x01, 
                         0x55, 
                         0x55
                     }, 

                     Package (0x04)
                     {
                         0x87, 
                         0x01, 
                         0x55, 
                         0xAA
                     }
                 })
                 Name (UR1F, 0x01)
                 Method (ENFG, 1, NotSerialized)
                 {
                     Store (0x87, INDX)
                     Store (0x01, INDX)
                     Store (0x55, INDX)
                     If (LEqual (SPIO, 0x2E))
                     {
                         Store (0x55, INDX)
                     }
                     Else
                     {
                         Store (0xAA, INDX)
                     }

                     Store (Arg0, LDN)
                 }

                 Method (EXFG, 0, NotSerialized)
                 {
                     Store (0x02, INDX)
                     Store (0x02, DATA)
                 }

                 Method (LPTM, 1, NotSerialized)
                 {
                     ENFG (CGLD (Arg0))
                     And (OPT0, 0x02, Local0)
                     EXFG ()
                     Return (Local0)
                 }

                 Method (UHID, 1, NotSerialized)
                 {
                     If (LEqual (Arg0, 0x01))
                     {
                         ENFG (CGLD (Arg0))
                         And (OPT0, 0x70, Local0)
                         EXFG ()
                         If (Local0)
                         {
                             Return (0x1005D041)
                         }
                     }

                     Return (0x0105D041)
                 }

                 Method (SIOS, 1, NotSerialized)
                 {
                     Store ("SIOS", Debug)
                     Store (0x00, GP10)
                     If (LLess (Arg0, 0x05))
                     {
                         ENFG (0x04)
                         Store (0x01, ACTR)
                         EXFG ()
                         ENFG (0x07)
                         And (OPF9, 0xFE, OPF9)
                         And (OPC0, 0xFE, OPC0)
                         And (OP29, 0xEF, OP29)
                         EXFG ()
                     }
                     Else
                     {
                         ENFG (0x07)
                         Or (OPF9, 0x01, OPF9)
                         EXFG ()
                     }
                 }

                 Method (SIOW, 1, NotSerialized)
                 {
                     Store (0x01, GP10)
                     Store ("SIOW", Debug)
                     ENFG (0x04)
                     Store (0x00, OPT0)
                     Store (0xFF, OPT1)
                     EXFG ()
                     ENFG (0x07)
                     Or (OPC0, 0x01, OPC0)
                     EXFG ()
                     ENFG (0x05)
                     Or (ACTR, 0x01, ACTR)
                     EXFG ()
                     ENFG (0x06)
                     Or (ACTR, 0x01, ACTR)
                     EXFG ()
                 }

                 Method (SIOH, 0, NotSerialized)
                 {
                 }

                 OperationRegion (IOID, SystemIO, SPIO, 0x02)
                 Field (IOID, ByteAcc, NoLock, Preserve)
                 {
                     INDX,   8, 
                     DATA,   8
                 }

                 IndexField (INDX, DATA, ByteAcc, NoLock, Preserve)
                 {
                             Offset (0x07), 
                     LDN,    8, 
                             Offset (0x29), 
                     OP29,   8, 
                             Offset (0x30), 
                     ACTR,   8, 
                             Offset (0x60), 
                     IOAH,   8, 
                     IOAL,   8, 
                     IOH2,   8, 
                     IOL2,   8, 
                             Offset (0x70), 
                     INTR,   8, 
                             Offset (0x74), 
                     DMCH,   8, 
                             Offset (0xC0), 
                     OPC0,   8, 
                     OPC1,   8, 
                     OPC2,   8, 
                     OPC3,   8, 
                             Offset (0xF0), 
                     OPT0,   8, 
                     OPT1,   8, 
                     OPT2,   8, 
                     OPT3,   8, 
                     OPT4,   8, 
                             Offset (0xF8), 
                     OPF8,   8, 
                     OPF9,   8, 
                     OPFA,   8, 
                     OPFB,   8
                 }

                 Method (CGLD, 1, NotSerialized)
                 {
                     Return (DerefOf (Index (DCAT, Arg0)))
                 }

                 Method (DSTA, 1, NotSerialized)
                 {
                     ENFG (CGLD (Arg0))
                     Store (ACTR, Local0)
                     EXFG ()
                     If (LEqual (Local0, 0xFF))
                     {
                         Return (0x00)
                     }

                     And (Local0, 0x01, Local0)
                     Or (IOST, ShiftLeft (Local0, Arg0), IOST)
                     If (Local0)
                     {
                         Return (0x0F)
                     }
                     Else
                     {
                         If (And (ShiftLeft (0x01, Arg0), IOST))
                         {
                             Return (0x0D)
                         }
                         Else
                         {
                             Return (0x00)
                         }
                     }
                 }

                 Method (DCNT, 2, NotSerialized)
                 {
                     ENFG (CGLD (Arg0))
                     ShiftLeft (IOAH, 0x08, Local1)
                     Or (IOAL, Local1, Local1)
                     RRIO (Arg0, Arg1, Local1, 0x08)
                     If (LAnd (LLess (DMCH, 0x04), LNotEqual (And (DMCH, 0x03, 
                         Local1), 0x00)))
                     {
                         RDMA (Arg0, Arg1, Increment (Local1))
                     }

                     Store (Arg1, ACTR)
                     EXFG ()
                 }

                 Name (CRS1, ResourceTemplate ()
                 {
                     IRQNoFlags (_Y02)
                         {}
                     DMA (Compatibility, NotBusMaster, Transfer8, _Y03)
                         {}
                     IO (Decode16,
                         0x0000,             // Range Minimum
                         0x0000,             // Range Maximum
                         0x01,               // Alignment
                         0x00,               // Length
                         _Y04)
                 })
                 CreateWordField (CRS1, \_SB.PCI0.SBRG._Y02._INT, IRQM)
                 CreateByteField (CRS1, \_SB.PCI0.SBRG._Y03._DMA, DMAM)
                 CreateWordField (CRS1, \_SB.PCI0.SBRG._Y04._MIN, IO11)
                 CreateWordField (CRS1, \_SB.PCI0.SBRG._Y04._MAX, IO12)
                 CreateByteField (CRS1, \_SB.PCI0.SBRG._Y04._LEN, LEN1)
                 Name (CRS2, ResourceTemplate ()
                 {
                     IRQNoFlags (_Y05)
                         {6}
                     DMA (Compatibility, NotBusMaster, Transfer8, _Y06)
                         {2}
                     IO (Decode16,
                         0x0000,             // Range Minimum
                         0x0000,             // Range Maximum
                         0x01,               // Alignment
                         0x00,               // Length
                         _Y07)
                     IO (Decode16,
                         0x0000,             // Range Minimum
                         0x0000,             // Range Maximum
                         0x01,               // Alignment
                         0x00,               // Length
                         _Y08)
                 })
                 CreateWordField (CRS2, \_SB.PCI0.SBRG._Y05._INT, IRQE)
                 CreateByteField (CRS2, \_SB.PCI0.SBRG._Y06._DMA, DMAE)
                 CreateWordField (CRS2, \_SB.PCI0.SBRG._Y07._MIN, IO21)
                 CreateWordField (CRS2, \_SB.PCI0.SBRG._Y07._MAX, IO22)
                 CreateByteField (CRS2, \_SB.PCI0.SBRG._Y07._LEN, LEN2)
                 CreateWordField (CRS2, \_SB.PCI0.SBRG._Y08._MIN, IO31)
                 CreateWordField (CRS2, \_SB.PCI0.SBRG._Y08._MAX, IO32)
                 CreateByteField (CRS2, \_SB.PCI0.SBRG._Y08._LEN, LEN3)
                 Method (DCRS, 1, NotSerialized)
                 {
                     ENFG (CGLD (Arg0))
                     ShiftLeft (IOAH, 0x08, IO11)
                     Or (IOAL, IO11, IO11)
                     Store (IO11, IO12)
                     Subtract (FindSetRightBit (IO11), 0x01, Local0)
                     ShiftLeft (0x01, Local0, LEN1)
                     If (INTR)
                     {
                         ShiftLeft (0x01, INTR, IRQM)
                     }
                     Else
                     {
                         Store (0x00, IRQM)
                     }

                     And (DMCH, 0x03, Local1)
                     If (Or (LGreater (DMCH, 0x03), LEqual (DMCH, 0xFF)))
                     {
                         Store (0x00, DMAM)
                     }
                     Else
                     {
                         ShiftLeft (0x01, Local1, DMAM)
                     }

                     EXFG ()
                     Return (CRS1)
                 }

                 Name (IOSC, Package (0x1E)
                 {
                     0x0F40, 
                     0x0E80, 
                     0x07BC, 
                     0x0778, 
                     0x0678, 
                     0x0604, 
                     0x0530, 
                     0x03F8, 
                     0x03F0, 
                     0x03E8, 
                     0x03BC, 
                     0x0388, 
                     0x0378, 
                     0x0370, 
                     0x0338, 
                     0x0330, 
                     0x0320, 
                     0x0310, 
                     0x0300, 
                     0x02F8, 
                     0x02E8, 
                     0x0280, 
                     0x0278, 
                     0x0260, 
                     0x0240, 
                     0x0238, 
                     0x0230, 
                     0x0228, 
                     0x0220, 
                     0x0200
                 })
                 Name (REGV, Package (0x1E)
                 {
                     0x02000000, 
                     0x01000000, 
                     0x20, 
                     0x02, 
                     0x08, 
                     0x00800000, 
                     0x00400000, 
                     0x40, 
                     0x04000000, 
                     0x2000, 
                     0x10, 
                     0x80000000, 
                     0x01, 
                     0x08000000, 
                     0x1000, 
                     0x00200000, 
                     0x00100000, 
                     0x00080000, 
                     0x00040000, 
                     0x80, 
                     0x0800, 
                     0x00020000, 
                     0x04, 
                     0x00010000, 
                     0x8000, 
                     0x0400, 
                     0x4000, 
                     0x0200, 
                     0x0100, 
                     0x10000000
                 })
                 Method (DSRS, 2, NotSerialized)
                 {
                     CreateWordField (Arg0, 0x01, IRQM)
                     CreateByteField (Arg0, 0x04, DMAM)
                     CreateWordField (Arg0, 0x08, IO11)
                     ENFG (CGLD (Arg1))
                     Store (Match (IOSC, MLE, IO11, MTR, 0x00, 0x00), Local0)
                     Or (\_SB.PCI0.SBRG.LPCD, DerefOf (Index (REGV, Local0)), \_SB.PCI0.SBRG.LPCD)
                     And (IO11, 0xFF, IOAL)
                     ShiftRight (IO11, 0x08, IOAH)
                     If (IRQM)
                     {
                         FindSetRightBit (IRQM, Local0)
                         Subtract (Local0, 0x01, INTR)
                     }
                     Else
                     {
                         Store (0x00, INTR)
                     }

                     If (DMAM)
                     {
                         FindSetRightBit (DMAM, Local0)
                         Subtract (Local0, 0x01, DMCH)
                     }
                     Else
                     {
                         Store (0x04, DMCH)
                     }

                     EXFG ()
                     DCNT (Arg1, 0x01)
                 }

                 OperationRegion (GPIO, SystemIO, IO1B, 0x04)
                 Field (GPIO, ByteAcc, NoLock, Preserve)
                 {
                     GP10,   1, 
                     GP11,   1, 
                     GP12,   1, 
                     GP13,   1, 
                     GO14,   1, 
                     GO15,   1, 
                     GO16,   1, 
                     GO17,   1, 
                     GP20,   1, 
                     GP21,   1, 
                     GP22,   1, 
                     GP23,   1, 
                     GO24,   1, 
                     GO25,   1, 
                     GO26,   1, 
                     GO27,   1, 
                     GP30,   1, 
                     GP31,   1, 
                     GP32,   1, 
                     GP33,   1, 
                     GO34,   1, 
                     GO35,   1, 
                     GO36,   1, 
                     GO37,   1, 
                     GP40,   1, 
                     GP41,   1, 
                     GP42,   1, 
                     GP43,   1, 
                     GO44,   1, 
                     GO45,   1, 
                     GO46,   1, 
                     GO47,   1
                 }

                 Device (RMSC)
                 {
                     Name (_HID, EisaId ("PNP0C02"))
                     Name (_UID, 0x10)
                     Name (CRS, ResourceTemplate ()
                     {
                         IO (Decode16,
                             0x0010,             // Range Minimum
                             0x0010,             // Range Maximum
                             0x00,               // Alignment
                             0x10,               // Length
                             )
                         IO (Decode16,
                             0x0022,             // Range Minimum
                             0x0022,             // Range Maximum
                             0x00,               // Alignment
                             0x1E,               // Length
                             )
                         IO (Decode16,
                             0x0044,             // Range Minimum
                             0x0044,             // Range Maximum
                             0x00,               // Alignment
                             0x1C,               // Length
                             )
                         IO (Decode16,
                             0x0072,             // Range Minimum
                             0x0072,             // Range Maximum
                             0x00,               // Alignment
                             0x0E,               // Length
                             )
                         IO (Decode16,
                             0x0080,             // Range Minimum
                             0x0080,             // Range Maximum
                             0x00,               // Alignment
                             0x01,               // Length
                             )
                         IO (Decode16,
                             0x0084,             // Range Minimum
                             0x0084,             // Range Maximum
                             0x00,               // Alignment
                             0x03,               // Length
                             )
                         IO (Decode16,
                             0x0088,             // Range Minimum
                             0x0088,             // Range Maximum
                             0x00,               // Alignment
                             0x01,               // Length
                             )
                         IO (Decode16,
                             0x008C,             // Range Minimum
                             0x008C,             // Range Maximum
                             0x00,               // Alignment
                             0x03,               // Length
                             )
                         IO (Decode16,
                             0x0090,             // Range Minimum
                             0x0090,             // Range Maximum
                             0x00,               // Alignment
                             0x10,               // Length
                             )
                         IO (Decode16,
                             0x00A2,             // Range Minimum
                             0x00A2,             // Range Maximum
                             0x00,               // Alignment
                             0x1E,               // Length
                             )
                         IO (Decode16,
                             0x00E0,             // Range Minimum
                             0x00E0,             // Range Maximum
                             0x00,               // Alignment
                             0x10,               // Length
                             )
                         IO (Decode16,
                             0x040B,             // Range Minimum
                             0x040B,             // Range Maximum
                             0x00,               // Alignment
                             0x01,               // Length
                             )
                         IO (Decode16,
                             0x04D0,             // Range Minimum
                             0x04D0,             // Range Maximum
                             0x00,               // Alignment
                             0x02,               // Length
                             )
                         IO (Decode16,
                             0x04D6,             // Range Minimum
                             0x04D6,             // Range Maximum
                             0x00,               // Alignment
                             0x01,               // Length
                             )
                         IO (Decode16,
                             0x0F40,             // Range Minimum
                             0x0F40,             // Range Maximum
                             0x00,               // Alignment
                             0x02,               // Length
                             )
                         IO (Decode16,
                             0x0C00,             // Range Minimum
                             0x0C00,             // Range Maximum
                             0x00,               // Alignment
                             0x02,               // Length
                             )
                         IO (Decode16,
                             0x0C14,             // Range Minimum
                             0x0C14,             // Range Maximum
                             0x00,               // Alignment
                             0x01,               // Length
                             )
                         IO (Decode16,
                             0x0C50,             // Range Minimum
                             0x0C50,             // Range Maximum
                             0x00,               // Alignment
                             0x03,               // Length
                             )
                         IO (Decode16,
                             0x0C6C,             // Range Minimum
                             0x0C6C,             // Range Maximum
                             0x00,               // Alignment
                             0x01,               // Length
                             )
                         IO (Decode16,
                             0x0C6F,             // Range Minimum
                             0x0C6F,             // Range Maximum
                             0x00,               // Alignment
                             0x01,               // Length
                             )
                         IO (Decode16,
                             0x0CD6,             // Range Minimum
                             0x0CD6,             // Range Maximum
                             0x00,               // Alignment
                             0x02,               // Length
                             )
                         IO (Decode16,
                             0x0000,             // Range Minimum
                             0x0000,             // Range Maximum
                             0x00,               // Alignment
                             0x00,               // Length
                             _Y0A)
                         IO (Decode16,
                             0x0000,             // Range Minimum
                             0x0000,             // Range Maximum
                             0x00,               // Alignment
                             0x00,               // Length
                             )
                         IO (Decode16,
                             0x0000,             // Range Minimum
                             0x0000,             // Range Maximum
                             0x00,               // Alignment
                             0x00,               // Length
                             _Y0B)
                         Memory32Fixed (ReadOnly,
                             0xFFB00000,         // Address Base
                             0x00500000,         // Address Length
                             )
                         DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
                             0x00000000,         // Granularity
                             0x00000000,         // Range Minimum
                             0x00000000,         // Range Maximum
                             0x00000000,         // Translation Offset
                             0x00000000,         // Length
                             ,, _Y09, AddressRangeMemory, TypeStatic)
                     })
                     CreateDWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y09._MIN, MIN7)
                     CreateDWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y09._MAX, MAX7)
                     CreateDWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y09._LEN, LEN7)
                     Method (_CRS, 0, NotSerialized)
                     {
                         CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y0A._MIN, GP00)
                         CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y0A._MAX, GP01)
                         CreateByteField (CRS, \_SB.PCI0.SBRG.RMSC._Y0A._LEN, GP0L)
                         Store (PMBS, GP00)
                         Store (PMBS, GP01)
                         Store (PMLN, GP0L)
                         If (GPBS)
                         {
                             CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y0B._MIN, GP20)
                             CreateWordField (CRS, \_SB.PCI0.SBRG.RMSC._Y0B._MAX, GP21)
                             CreateByteField (CRS, \_SB.PCI0.SBRG.RMSC._Y0B._LEN, GP2L)
                             Store (GPBS, GP20)
                             Store (GPBS, GP21)
                             Store (GPLN, GP2L)
                         }

                         Store (\_SB.PCI0.BAR1, MIN7)
                         Store (0x1000, LEN7)
                         Add (BAR1, 0x0FFF, MAX7)
                         Return (CRS)
                     }
                 }

                 Device (OMSC)
                 {
                     Name (_HID, EisaId ("PNP0C02"))
                     Name (_UID, 0x00)
                     Name (CRS, ResourceTemplate ()
                     {
                         Memory32Fixed (ReadOnly,
                             0x00000000,         // Address Base
                             0x00000000,         // Address Length
                             _Y0C)
                         Memory32Fixed (ReadOnly,
                             0x00000000,         // Address Base
                             0x00000000,         // Address Length
                             _Y0D)
                     })
                     Method (_CRS, 0, NotSerialized)
                     {
                         If (APCB)
                         {
                             CreateDWordField (CRS, \_SB.PCI0.SBRG.OMSC._Y0C._LEN, ML01)
                             CreateDWordField (CRS, \_SB.PCI0.SBRG.OMSC._Y0C._BAS, MB01)
                             CreateDWordField (CRS, \_SB.PCI0.SBRG.OMSC._Y0D._LEN, ML02)
                             CreateDWordField (CRS, \_SB.PCI0.SBRG.OMSC._Y0D._BAS, MB02)
                             Store (APCB, MB01)
                             Store (APCL, ML01)
                             Store (0xFEE00000, MB02)
                             Store (0x1000, ML02)
                         }

                         Return (CRS)
                     }
                 }

                 Device (\_SB.RMEM)
                 {
                     Name (_HID, EisaId ("PNP0C01"))
                     Name (_UID, 0x01)
                     Name (CRS, ResourceTemplate ()
                     {
                         Memory32Fixed (ReadWrite,
                             0x00000000,         // Address Base
                             0x000A0000,         // Address Length
                             )
                         Memory32Fixed (ReadOnly,
                             0x00000000,         // Address Base
                             0x00000000,         // Address Length
                             _Y0E)
                         Memory32Fixed (ReadOnly,
                             0x000E0000,         // Address Base
                             0x00020000,         // Address Length
                             _Y0F)
                         Memory32Fixed (ReadWrite,
                             0x00100000,         // Address Base
                             0x00000000,         // Address Length
                             _Y10)
                         Memory32Fixed (ReadOnly,
                             0x00000000,         // Address Base
                             0x00000000,         // Address Length
                             _Y11)
                     })
                     Method (_CRS, 0, NotSerialized)
                     {
                         CreateDWordField (CRS, \_SB.RMEM._Y0E._BAS, BAS1)
                         CreateDWordField (CRS, \_SB.RMEM._Y0E._LEN, LEN1)
                         CreateDWordField (CRS, \_SB.RMEM._Y0F._BAS, BAS2)
                         CreateDWordField (CRS, \_SB.RMEM._Y0F._LEN, LEN2)
                         CreateDWordField (CRS, \_SB.RMEM._Y10._LEN, LEN3)
                         CreateDWordField (CRS, \_SB.RMEM._Y11._BAS, BAS4)
                         CreateDWordField (CRS, \_SB.RMEM._Y11._LEN, LEN4)
                         If (OSFL ()) {}
                         Else
                         {
                             If (MG1B)
                             {
                                 If (LGreater (MG1B, 0x000C0000))
                                 {
                                     Store (0x000C0000, BAS1)
                                     Subtract (MG1B, BAS1, LEN1)
                                 }
                             }
                             Else
                             {
                                 Store (0x000C0000, BAS1)
                                 Store (0x00020000, LEN1)
                             }

                             If (Add (MG1B, MG1L, Local0))
                             {
                                 Store (Local0, BAS2)
                                 Subtract (0x00100000, BAS2, LEN2)
                             }
                         }

                         Subtract (MG2B, 0x00100000, LEN3)
                         Add (MG2B, MG2L, BAS4)
                         Subtract (0x00, BAS4, LEN4)
                         Return (CRS)
                     }
                 }

                 Device (UAR1)
                 {
                     Name (_UID, 0x01)
                     Name (_HID, EisaId ("PNP0501"))
                     Method (_STA, 0, NotSerialized)
                     {
                         Return (DSTA (0x00))
                     }

                     Method (_DIS, 0, NotSerialized)
                     {
                         DCNT (0x00, 0x00)
                     }

                     Method (_CRS, 0, NotSerialized)
                     {
                         Return (DCRS (0x00))
                     }

                     Method (_SRS, 1, NotSerialized)
                     {
                         DSRS (Arg0, 0x00)
                     }

                     Method (_PRS, 0, NotSerialized)
                     {
                         Return (CMPR)
                     }

                     Name (CMPR, ResourceTemplate ()
                     {
                         IRQNoFlags ()
                             {3,4,5,6,7,10,11,12}
                         StartDependentFnNoPri ()
                         {
                             DMA (Compatibility, NotBusMaster, Transfer8, )
                                 {}
                             IO (Decode16,
                                 0x03F8,             // Range Minimum
                                 0x03F8,             // Range Maximum
                                 0x01,               // Alignment
                                 0x08,               // Length
                                 )
                         }
                         StartDependentFnNoPri ()
                         {
                             DMA (Compatibility, NotBusMaster, Transfer8, )
                                 {}
                             IO (Decode16,
                                 0x02F8,             // Range Minimum
                                 0x02F8,             // Range Maximum
                                 0x01,               // Alignment
                                 0x08,               // Length
                                 )
                         }
                         StartDependentFnNoPri ()
                         {
                             DMA (Compatibility, NotBusMaster, Transfer8, )
                                 {}
                             IO (Decode16,
                                 0x03E8,             // Range Minimum
                                 0x03E8,             // Range Maximum
                                 0x01,               // Alignment
                                 0x08,               // Length
                                 )
                         }
                         StartDependentFnNoPri ()
                         {
                             DMA (Compatibility, NotBusMaster, Transfer8, )
                                 {}
                             IO (Decode16,
                                 0x02E8,             // Range Minimum
                                 0x02E8,             // Range Maximum
                                 0x01,               // Alignment
                                 0x08,               // Length
                                 )
                         }
                         EndDependentFn ()
                     })
                 }

                 Method (UAR1._PRW, 0, NotSerialized)
                 {
                     Return (GPRW (0x06, 0x03))
                 }

                 Device (PS2M)
                 {
                     Name (_HID, EisaId ("PNP0F03"))
                     Name (_CID, EisaId ("PNP0F13"))
                     Method (_STA, 0, NotSerialized)
                     {
                         ShiftLeft (0x01, 0x0C, Local0)
                         If (And (IOST, Local0))
                         {
                             Return (0x0F)
                         }

                         Return (0x00)
                     }

                     Name (CRS1, ResourceTemplate ()
                     {
                         IRQNoFlags ()
                             {12}
                     })
                     Name (CRS2, ResourceTemplate ()
                     {
                         IO (Decode16,
                             0x0060,             // Range Minimum
                             0x0060,             // Range Maximum
                             0x00,               // Alignment
                             0x01,               // Length
                             )
                         IO (Decode16,
                             0x0064,             // Range Minimum
                             0x0064,             // Range Maximum
                             0x00,               // Alignment
                             0x01,               // Length
                             )
                         IRQNoFlags ()
                             {12}
                     })
                     Method (_CRS, 0, NotSerialized)
                     {
                         ShiftLeft (0x01, 0x0A, Local0)
                         If (And (IOST, Local0))
                         {
                             Return (CRS1)
                         }
                         Else
                         {
                             Return (CRS2)
                         }
                     }
                 }

                 Method (PS2M._PRW, 0, NotSerialized)
                 {
                     Return (GPRW (0x01, 0x04))
                 }

                 Device (PS2K)
                 {
                     Name (_HID, EisaId ("PNP0303"))
                     Name (_CID, EisaId ("PNP030B"))
                     Method (_STA, 0, NotSerialized)
                     {
                         ShiftLeft (0x01, 0x0A, Local0)
                         If (And (IOST, Local0))
                         {
                             Return (0x0F)
                         }

                         Return (0x00)
                     }

                     Name (_CRS, ResourceTemplate ()
                     {
                         IO (Decode16,
                             0x0060,             // Range Minimum
                             0x0060,             // Range Maximum
                             0x00,               // Alignment
                             0x01,               // Length
                             )
                         IO (Decode16,
                             0x0064,             // Range Minimum
                             0x0064,             // Range Maximum
                             0x00,               // Alignment
                             0x01,               // Length
                             )
                         IRQNoFlags ()
                             {1}
                     })
                 }

                 Method (PS2K._PRW, 0, NotSerialized)
                 {
                     Return (GPRW (0x03, 0x04))
                 }
             }

             Device (IDEC)
             {
                 Name (_ADR, 0x00140001)
                 Name (UDMT, Package (0x08)
                 {
                     0x78, 
                     0x5A, 
                     0x3C, 
                     0x2D, 
                     0x1E, 
                     0x14, 
                     0x00, 
                     0x00
                 })
                 Name (PIOT, Package (0x06)
                 {
                     0x0258, 
                     0x0186, 
                     0x010E, 
                     0xB4, 
                     0x78, 
                     0x00
                 })
                 Name (PITR, Package (0x06)
                 {
                     0x5D, 
                     0x47, 
                     0x34, 
                     0x22, 
                     0x20, 
                     0x5D
                 })
                 Name (MDMT, Package (0x04)
                 {
                     0x01E0, 
                     0x96, 
                     0x78, 
                     0x00
                 })
                 Name (MDTR, Package (0x04)
                 {
                     0x77, 
                     0x21, 
                     0x20, 
                     0xFF
                 })
                 OperationRegion (IDE, PCI_Config, 0x40, 0x20)
                 Field (IDE, AnyAcc, NoLock, Preserve)
                 {
                     PPIT,   16, 
                     SPIT,   16, 
                     PMDT,   16, 
                     SMDT,   16, 
                     PPIC,   8, 
                     SPIC,   8, 
                     PPIM,   8, 
                     SPIM,   8, 
                             Offset (0x14), 
                     PUDC,   2, 
                     SUDC,   2, 
                             Offset (0x16), 
                     PUDM,   8, 
                     SUDM,   8
                 }

                 Method (GETT, 1, NotSerialized)
                 {
                     Store (And (Arg0, 0x0F), Local0)
                     Store (ShiftRight (Arg0, 0x04), Local1)
                     Return (Multiply (0x1E, Add (Add (Local0, 0x01), Add (Local1, 
                         0x01))))
                 }

                 Method (GTM, 1, NotSerialized)
                 {
                     CreateByteField (Arg0, 0x00, PIT1)
                     CreateByteField (Arg0, 0x01, PIT0)
                     CreateByteField (Arg0, 0x02, MDT1)
                     CreateByteField (Arg0, 0x03, MDT0)
                     CreateByteField (Arg0, 0x04, PICX)
                     CreateByteField (Arg0, 0x05, UDCX)
                     CreateByteField (Arg0, 0x06, UDMX)
                     Name (BUF, Buffer (0x14)
                     {
                         /* 0000 */    0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
                         /* 0008 */    0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 
                         /* 0010 */    0x00, 0x00, 0x00, 0x00
                     })
                     CreateDWordField (BUF, 0x00, PIO0)
                     CreateDWordField (BUF, 0x04, DMA0)
                     CreateDWordField (BUF, 0x08, PIO1)
                     CreateDWordField (BUF, 0x0C, DMA1)
                     CreateDWordField (BUF, 0x10, FLAG)
                     If (And (PICX, 0x01))
                     {
                         Return (BUF)
                     }

                     Store (GETT (PIT0), PIO0)
                     Store (GETT (PIT1), PIO1)
                     If (And (UDCX, 0x01))
                     {
                         Or (FLAG, 0x01, FLAG)
                         Store (DerefOf (Index (^UDMT, And (UDMX, 0x0F))), DMA0)
                     }
                     Else
                     {
                         Store (GETT (MDT0), DMA0)
                     }

                     If (And (UDCX, 0x02))
                     {
                         Or (FLAG, 0x04, FLAG)
                         Store (DerefOf (Index (^UDMT, ShiftRight (UDMX, 0x04))), DMA1)
                     }
                     Else
                     {
                         Store (GETT (MDT1), DMA1)
                     }

                     Or (FLAG, 0x1A, FLAG)
                     Return (BUF)
                 }

                 Method (STM, 3, NotSerialized)
                 {
                     CreateDWordField (Arg0, 0x00, PIO0)
                     CreateDWordField (Arg0, 0x04, DMA0)
                     CreateDWordField (Arg0, 0x08, PIO1)
                     CreateDWordField (Arg0, 0x0C, DMA1)
                     CreateDWordField (Arg0, 0x10, FLAG)
                     Name (BUF, Buffer (0x07)
                     {
                         0x00, 0x00, 0x20, 0x20, 0x00, 0x00, 0x00
                     })
                     CreateByteField (BUF, 0x00, PIT1)
                     CreateByteField (BUF, 0x01, PIT0)
                     CreateByteField (BUF, 0x02, MDT1)
                     CreateByteField (BUF, 0x03, MDT0)
                     CreateByteField (BUF, 0x04, PIMX)
                     CreateByteField (BUF, 0x05, UDCX)
                     CreateByteField (BUF, 0x06, UDMX)
                     Store (Match (^PIOT, MLE, PIO0, MTR, 0x00, 0x00), Local0)
                     Divide (Local0, 0x05, Local0)
                     Store (Match (^PIOT, MLE, PIO1, MTR, 0x00, 0x00), Local1)
                     Divide (Local1, 0x05, Local1)
                     Store (Or (ShiftLeft (Local1, 0x04), Local0), PIMX)
                     Store (DerefOf (Index (^PITR, Local0)), PIT0)
                     Store (DerefOf (Index (^PITR, Local1)), PIT1)
                     If (And (FLAG, 0x01))
                     {
                         Store (Match (^UDMT, MLE, DMA0, MTR, 0x00, 0x00), Local0)
                         Divide (Local0, 0x06, Local0)
                         Or (UDMX, Local0, UDMX)
                         Or (UDCX, 0x01, UDCX)
                     }
                     Else
                     {
                         If (LNotEqual (DMA0, 0xFFFFFFFF))
                         {
                             Store (Match (^MDMT, MLE, DMA0, MTR, 0x00, 0x00), Local0)
                             Store (DerefOf (Index (^MDTR, Local0)), MDT0)
                         }
                     }

                     If (And (FLAG, 0x04))
                     {
                         Store (Match (^UDMT, MLE, DMA1, MTR, 0x00, 0x00), Local0)
                         Divide (Local0, 0x06, Local0)
                         Or (UDMX, ShiftLeft (Local0, 0x04), UDMX)
                         Or (UDCX, 0x02, UDCX)
                     }
                     Else
                     {
                         If (LNotEqual (DMA1, 0xFFFFFFFF))
                         {
                             Store (Match (^MDMT, MLE, DMA1, MTR, 0x00, 0x00), Local0)
                             Store (DerefOf (Index (^MDTR, Local0)), MDT1)
                         }
                     }

                     Return (BUF)
                 }

                 Method (GTF, 2, NotSerialized)
                 {
                     CreateByteField (Arg1, 0x00, MDT1)
                     CreateByteField (Arg1, 0x01, MDT0)
                     CreateByteField (Arg1, 0x02, PIMX)
                     CreateByteField (Arg1, 0x03, UDCX)
                     CreateByteField (Arg1, 0x04, UDMX)
                     If (LEqual (Arg0, 0xA0))
                     {
                         Store (And (PIMX, 0x0F), Local0)
                         Store (MDT0, Local1)
                         And (UDCX, 0x01, Local2)
                         Store (And (UDMX, 0x0F), Local3)
                     }
                     Else
                     {
                         Store (ShiftRight (PIMX, 0x04), Local0)
                         Store (MDT1, Local1)
                         And (UDCX, 0x02, Local2)
                         Store (ShiftRight (UDMX, 0x04), Local3)
                     }

                     Name (BUF, Buffer (0x0E)
                     {
                         /* 0000 */    0x03, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xEF, 0x03, 
                         /* 0008 */    0x00, 0x00, 0x00, 0x00, 0xFF, 0xEF
                     })
                     CreateByteField (BUF, 0x01, PMOD)
                     CreateByteField (BUF, 0x08, DMOD)
                     CreateByteField (BUF, 0x05, CMDA)
                     CreateByteField (BUF, 0x0C, CMDB)
                     Store (Arg0, CMDA)
                     Store (Arg0, CMDB)
                     Or (Local0, 0x08, PMOD)
                     If (Local2)
                     {
                         Or (Local3, 0x40, DMOD)
                     }
                     Else
                     {
                         Store (Match (^MDMT, MLE, GETT (Local1), MTR, 0x00, 0x00), Local4)
                         If (LLess (Local4, 0x03))
                         {
                             Or (0x20, Local4, DMOD)
                         }
                     }

                     Return (BUF)
                 }

                 Device (PRID)
                 {
                     Name (_ADR, 0x00)
                     Method (_GTM, 0, NotSerialized)
                     {
                         Name (BUF, Buffer (0x07)
                         {
                             0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00
                         })
                         CreateWordField (BUF, 0x00, VPIT)
                         CreateWordField (BUF, 0x02, VMDT)
                         CreateByteField (BUF, 0x04, VPIC)
                         CreateByteField (BUF, 0x05, VUDC)
                         CreateByteField (BUF, 0x06, VUDM)
                         Store (^^PPIT, VPIT)
                         Store (^^PMDT, VMDT)
                         Store (^^PPIC, VPIC)
                         Store (^^PUDC, VUDC)
                         Store (^^PUDM, VUDM)
                         Return (GTM (BUF))
                     }

                     Method (_STM, 3, NotSerialized)
                     {
                         CreateDWordField (Arg0, 0x10, FLAG)
                         If (And (FLAG, 0x01))
                         {
                             And (^^PUDC, 0x02, ^^PUDC)
                         }

                         If (And (FLAG, 0x04))
                         {
                             And (^^PUDC, 0x01, ^^PUDC)
                         }

                         Name (BUF, Buffer (0x07)
                         {
                             0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
                         })
                         CreateWordField (BUF, 0x00, VPIT)
                         CreateWordField (BUF, 0x02, VMDT)
                         CreateByteField (BUF, 0x04, VPIM)
                         CreateByteField (BUF, 0x05, VUDC)
                         CreateByteField (BUF, 0x06, VUDM)
                         Store (STM (Arg0, Arg1, Arg2), BUF)
                         Store (VPIT, ^^PPIT)
                         Store (VMDT, ^^PMDT)
                         Store (VPIM, ^^PPIM)
                         Store (VUDC, ^^PUDC)
                         Store (VUDM, ^^PUDM)
                     }

                     Device (P_D0)
                     {
                         Name (_ADR, 0x00)
                         Method (_GTF, 0, NotSerialized)
                         {
                             Name (BUF, Buffer (0x05)
                             {
                                 0x00, 0x00, 0x00, 0x00, 0x00
                             })
                             CreateWordField (BUF, 0x00, VMDT)
                             CreateByteField (BUF, 0x02, VPIM)
                             CreateByteField (BUF, 0x03, VUDC)
                             CreateByteField (BUF, 0x04, VUDM)
                             Store (^^^PMDT, VMDT)
                             Store (^^^PPIM, VPIM)
                             Store (^^^PUDC, VUDC)
                             Store (^^^PUDM, VUDM)
                             Return (GTF (0xA0, BUF))
                         }
                     }

                     Device (P_D1)
                     {
                         Name (_ADR, 0x01)
                         Method (_GTF, 0, NotSerialized)
                         {
                             Name (BUF, Buffer (0x05)
                             {
                                 0x00, 0x00, 0x00, 0x00, 0x00
                             })
                             CreateWordField (BUF, 0x00, VMDT)
                             CreateByteField (BUF, 0x02, VPIM)
                             CreateByteField (BUF, 0x03, VUDC)
                             CreateByteField (BUF, 0x04, VUDM)
                             Store (^^^PMDT, VMDT)
                             Store (^^^PPIM, VPIM)
                             Store (^^^PUDC, VUDC)
                             Store (^^^PUDM, VUDM)
                             Return (GTF (0xB0, BUF))
                         }
                     }
                 }

                 Device (SECD)
                 {
                     Name (_ADR, 0x01)
                     Method (_GTM, 0, NotSerialized)
                     {
                         Name (BUF, Buffer (0x07)
                         {
                             0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00
                         })
                         CreateWordField (BUF, 0x00, VPIT)
                         CreateWordField (BUF, 0x02, VMDT)
                         CreateByteField (BUF, 0x04, VPIC)
                         CreateByteField (BUF, 0x05, VUDC)
                         CreateByteField (BUF, 0x06, VUDM)
                         Store (^^SPIT, VPIT)
                         Store (^^SMDT, VMDT)
                         Store (^^SPIC, VPIC)
                         Store (^^SUDC, VUDC)
                         Store (^^SUDM, VUDM)
                         Return (GTM (BUF))
                     }

                     Method (_STM, 3, NotSerialized)
                     {
                         CreateDWordField (Arg0, 0x10, DFLG)
                         If (And (DFLG, 0x01))
                         {
                             Store (0x01, \_SB.PCI0.SBRG.TP2E)
                         }

                         CreateDWordField (Arg0, 0x10, FLAG)
                         If (And (FLAG, 0x01))
                         {
                             And (^^SUDC, 0x02, ^^SUDC)
                         }

                         If (And (FLAG, 0x04))
                         {
                             And (^^SUDC, 0x01, ^^SUDC)
                         }

                         Name (BUF, Buffer (0x07)
                         {
                             0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
                         })
                         CreateWordField (BUF, 0x00, VPIT)
                         CreateWordField (BUF, 0x02, VMDT)
                         CreateByteField (BUF, 0x04, VPIM)
                         CreateByteField (BUF, 0x05, VUDC)
                         CreateByteField (BUF, 0x06, VUDM)
                         Store (STM (Arg0, Arg1, Arg2), BUF)
                         Store (VPIT, ^^SPIT)
                         Store (VMDT, ^^SMDT)
                         Store (VPIM, ^^SPIM)
                         Store (VUDC, ^^SUDC)
                         Store (VUDM, ^^SUDM)
                     }

                     Device (S_D0)
                     {
                         Name (_ADR, 0x00)
                         Method (_GTF, 0, NotSerialized)
                         {
                             Name (BUF, Buffer (0x05)
                             {
                                 0x00, 0x00, 0x00, 0x00, 0x00
                             })
                             CreateWordField (BUF, 0x00, VMDT)
                             CreateByteField (BUF, 0x02, VPIM)
                             CreateByteField (BUF, 0x03, VUDC)
                             CreateByteField (BUF, 0x04, VUDM)
                             Store (^^^SMDT, VMDT)
                             Store (^^^SPIM, VPIM)
                             Store (^^^SUDC, VUDC)
                             Store (^^^SUDM, VUDM)
                             Return (GTF (0xA0, BUF))
                         }
                     }

                     Device (S_D1)
                     {
                         Name (_ADR, 0x01)
                         Method (_GTF, 0, NotSerialized)
                         {
                             Name (BUF, Buffer (0x05)
                             {
                                 0x00, 0x00, 0x00, 0x00, 0x00
                             })
                             CreateWordField (BUF, 0x00, VMDT)
                             CreateByteField (BUF, 0x02, VPIM)
                             CreateByteField (BUF, 0x03, VUDC)
                             CreateByteField (BUF, 0x04, VUDM)
                             Store (^^^SMDT, VMDT)
                             Store (^^^SPIM, VPIM)
                             Store (^^^SUDC, VUDC)
                             Store (^^^SUDM, VUDM)
                             Return (GTF (0xB0, BUF))
                         }
                     }
                 }
             }

             Device (AC97)
             {
                 Name (_ADR, 0x00140005)
             }

             Device (MC97)
             {
                 Name (_ADR, 0x00140006)
                 Method (_PRW, 0, NotSerialized)
                 {
                     Return (GPRW (0x0C, 0x03))
                 }
             }

             Device (USB1)
             {
                 Name (_ADR, 0x00130000)
                 Method (_PRW, 0, NotSerialized)
                 {
                     Return (GPRW (0x0B, 0x04))
                 }
             }

             Device (USB2)
             {
                 Name (_ADR, 0x00130001)
                 Method (_PRW, 0, NotSerialized)
                 {
                     Return (GPRW (0x0B, 0x04))
                 }
             }

             Device (EUSB)
             {
                 Name (_ADR, 0x00130002)
             }

             Device (P0P2)
             {
                 Name (_ADR, 0x00140004)
                 Method (_PRW, 0, NotSerialized)
                 {
                     Return (GPRW (0x04, 0x03))
                 }

                 Method (_PRT, 0, NotSerialized)
                 {
                     If (PICM)
                     {
                         Return (AR02)
                     }

                     Return (PR02)
                 }

                 Device (SLAN)
                 {
                     Name (_ADR, 0x00080000)
                     Method (_PRW, 0, NotSerialized)
                     {
                         Return (GPRW (0x17, 0x03))
                     }
                 }

                 Device (P2P3)
                 {
                     Name (_ADR, 0x000C0000)
                 }
             }
         }

         Scope (\_GPE)
         {
             Method (_L06, 0, NotSerialized)
             {
                 \_SB.PCI0.SBRG.SIOH ()
             }

             Method (_L01, 0, NotSerialized)
             {
                 \_SB.PCI0.SBRG.SIOH ()
             }

             Method (_L03, 0, NotSerialized)
             {
                 \_SB.PCI0.SBRG.SIOH ()
             }

             Method (_L0C, 0, NotSerialized)
             {
                 Notify (\_SB.PCI0.MC97, 0x02)
             }

             Method (_L0B, 0, NotSerialized)
             {
                 Notify (\_SB.PCI0.USB1, 0x02)
                 Notify (\_SB.PCI0.USB2, 0x02)
             }

             Method (_L04, 0, NotSerialized)
             {
                 Notify (\_SB.PCI0.P0P2, 0x02)
                 Notify (\_SB.PWRB, 0x02)
             }

             Method (_L17, 0, NotSerialized)
             {
                 Notify (\_SB.PCI0.P0P2.SLAN, 0x02)
             }
         }

         Device (PWRB)
         {
             Name (_HID, EisaId ("PNP0C0C"))
             Name (_UID, 0xAA)
             Name (_STA, 0x0B)
         }
     }

     Scope (\_SB)
     {
         OperationRegion (PIRQ, SystemIO, 0x0C00, 0x02)
         Field (PIRQ, ByteAcc, NoLock, Preserve)
         {
             PIDX,   8, 
             PDAT,   8
         }

         IndexField (PIDX, PDAT, ByteAcc, NoLock, Preserve)
         {
             PIRA,   8, 
             PIRB,   8, 
             PIRC,   8, 
             PIRD,   8, 
             PIRS,   8
         }

         Name (BUFA, ResourceTemplate ()
         {
             IRQ (Level, ActiveLow, Shared, _Y12)
                 {15}
         })
         Name (IPRA, ResourceTemplate ()
         {
             IRQ (Level, ActiveLow, Shared, )
                 {5,10,11}
         })
         Name (IPRB, ResourceTemplate ()
         {
             IRQ (Level, ActiveLow, Shared, )
                 {5,10,11}
         })
         Name (IPRC, ResourceTemplate ()
         {
             IRQ (Level, ActiveLow, Shared, )
                 {5,10,11}
         })
         Name (IPRD, ResourceTemplate ()
         {
             IRQ (Level, ActiveLow, Shared, )
                 {5,10,11}
         })
         Device (LNKA)
         {
             Name (_HID, EisaId ("PNP0C0F"))
             Name (_UID, 0x01)
             Method (_STA, 0, NotSerialized)
             {
                 If (PIRA)
                 {
                     Return (0x0B)
                 }
                 Else
                 {
                     Return (0x09)
                 }
             }

             Method (_PRS, 0, NotSerialized)
             {
                 Return (PRSA)
             }

             Method (_DIS, 0, NotSerialized)
             {
                 Store (0x00, PIRA)
             }

             Method (_CRS, 0, NotSerialized)
             {
                 CreateWordField (BUFA, \_SB._Y12._INT, IRQX)
                 ShiftLeft (0x01, PIRA, IRQX)
                 Return (BUFA)
             }

             Method (_SRS, 1, NotSerialized)
             {
                 CreateWordField (Arg0, 0x01, IRA)
                 FindSetRightBit (IRA, Local0)
                 Decrement (Local0)
                 Store (Local0, PIRA)
             }
         }

         Device (LNKB)
         {
             Name (_HID, EisaId ("PNP0C0F"))
             Name (_UID, 0x02)
             Method (_STA, 0, NotSerialized)
             {
                 If (PIRB)
                 {
                     Return (0x0B)
                 }
                 Else
                 {
                     Return (0x09)
                 }
             }

             Method (_PRS, 0, NotSerialized)
             {
                 Return (PRSB)
             }

             Method (_DIS, 0, NotSerialized)
             {
                 Store (0x00, PIRB)
             }

             Method (_CRS, 0, NotSerialized)
             {
                 CreateWordField (BUFA, \_SB._Y12._INT, IRQX)
                 ShiftLeft (0x01, PIRB, IRQX)
                 Return (BUFA)
             }

             Method (_SRS, 1, NotSerialized)
             {
                 CreateWordField (Arg0, 0x01, IRA)
                 FindSetRightBit (IRA, Local0)
                 Decrement (Local0)
                 Store (Local0, PIRB)
             }
         }

         Device (LNKC)
         {
             Name (_HID, EisaId ("PNP0C0F"))
             Name (_UID, 0x03)
             Method (_STA, 0, NotSerialized)
             {
                 If (PIRC)
                 {
                     Return (0x0B)
                 }
                 Else
                 {
                     Return (0x09)
                 }
             }

             Method (_PRS, 0, NotSerialized)
             {
                 Return (PRSC)
             }

             Method (_DIS, 0, NotSerialized)
             {
                 Store (0x00, PIRC)
             }

             Method (_CRS, 0, NotSerialized)
             {
                 CreateWordField (BUFA, \_SB._Y12._INT, IRQX)
                 ShiftLeft (0x01, PIRC, IRQX)
                 Return (BUFA)
             }

             Method (_SRS, 1, NotSerialized)
             {
                 CreateWordField (Arg0, 0x01, IRA)
                 FindSetRightBit (IRA, Local0)
                 Decrement (Local0)
                 Store (Local0, PIRC)
             }
         }

         Device (LNKD)
         {
             Name (_HID, EisaId ("PNP0C0F"))
             Name (_UID, 0x04)
             Method (_STA, 0, NotSerialized)
             {
                 If (PIRD)
                 {
                     Return (0x0B)
                 }
                 Else
                 {
                     Return (0x09)
                 }
             }

             Method (_PRS, 0, NotSerialized)
             {
                 Return (PRSD)
             }

             Method (_DIS, 0, NotSerialized)
             {
                 Store (0x00, PIRD)
             }

             Method (_CRS, 0, NotSerialized)
             {
                 CreateWordField (BUFA, \_SB._Y12._INT, IRQX)
                 ShiftLeft (0x01, PIRD, IRQX)
                 Return (BUFA)
             }

             Method (_SRS, 1, NotSerialized)
             {
                 CreateWordField (Arg0, 0x01, IRA)
                 FindSetRightBit (IRA, Local0)
                 Decrement (Local0)
                 Store (Local0, PIRD)
             }
         }
     }

     Scope (\_SB)
     {
         Scope (PCI0)
         {
             OperationRegion (BBAR, PCI_Config, 0x14, 0x04)
             Field (BBAR, DWordAcc, NoLock, Preserve)
             {
                 BAR1,   32
             }

             Name (CRS, ResourceTemplate ()
             {
                 WordBusNumber (ResourceProducer, MinFixed, MaxFixed, PosDecode,
                     0x0000,             // Granularity
                     0x0000,             // Range Minimum
                     0x00FF,             // Range Maximum
                     0x0000,             // Translation Offset
                     0x0100,             // Length
                     ,, )
                 IO (Decode16,
                     0x0CF8,             // Range Minimum
                     0x0CF8,             // Range Maximum
                     0x01,               // Alignment
                     0x08,               // Length
                     )
                 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
                     0x0000,             // Granularity
                     0x0000,             // Range Minimum
                     0x0CF7,             // Range Maximum
                     0x0000,             // Translation Offset
                     0x0CF8,             // Length
                     ,, , TypeStatic)
                 WordIO (ResourceProducer, MinFixed, MaxFixed, PosDecode, EntireRange,
                     0x0000,             // Granularity
                     0x0D00,             // Range Minimum
                     0xFFFF,             // Range Maximum
                     0x0000,             // Translation Offset
                     0xF300,             // Length
                     ,, , TypeStatic)
                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
                     0x00000000,         // Granularity
                     0x000A0000,         // Range Minimum
                     0x000BFFFF,         // Range Maximum
                     0x00000000,         // Translation Offset
                     0x00020000,         // Length
                     ,, , AddressRangeMemory, TypeStatic)
                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
                     0x00000000,         // Granularity
                     0x00000000,         // Range Minimum
                     0x00000000,         // Range Maximum
                     0x00000000,         // Translation Offset
                     0x00000000,         // Length
                     ,, _Y13, AddressRangeMemory, TypeStatic)
                 DWordMemory (ResourceProducer, PosDecode, MinFixed, MaxFixed, Cacheable, ReadWrite,
                     0x00000000,         // Granularity
                     0x00000000,         // Range Minimum
                     0x00000000,         // Range Maximum
                     0x00000000,         // Translation Offset
                     0x00000000,         // Length
                     ,, _Y14, AddressRangeMemory, TypeStatic)
             })
             CreateDWordField (CRS, \_SB.PCI0._Y13._MIN, MIN5)
             CreateDWordField (CRS, \_SB.PCI0._Y13._MAX, MAX5)
             CreateDWordField (CRS, \_SB.PCI0._Y13._LEN, LEN5)
             CreateDWordField (CRS, \_SB.PCI0._Y14._MIN, MIN6)
             CreateDWordField (CRS, \_SB.PCI0._Y14._MAX, MAX6)
             CreateDWordField (CRS, \_SB.PCI0._Y14._LEN, LEN6)
             Method (_CRS, 0, NotSerialized)
             {
                 Store (MG1B, MIN5)
                 Store (MG1L, LEN5)
                 Store (MG1L, Local0)
                 If (Local0)
                 {
                     Add (MIN5, Decrement (Local0), MAX5)
                 }

                 Store (MG2B, MIN6)
                 Store (MG2L, LEN6)
                 Store (MG2L, Local0)
                 Add (MIN6, Decrement (Local0), MAX6)
                 Return (CRS)
             }
         }
     }

     Method (_PTS, 1, NotSerialized)
     {
         Store (Arg0, DBG8)
         And (Arg0, 0x0F, \_SB.PCI0.SBRG.SLPT)
         Store (0x0804, \_SB.PCI0.SBRG.PMCB)
         Or (\_SB.PCI0.SBRG.LPCD, 0x02000000, \_SB.PCI0.SBRG.LPCD)
         Store (0x0F40, \_SB.PCI0.SBRG.TP0P)
         Store (0x01, \_SB.PCI0.SBRG.TP0S)
         Store (0x01, \_SB.PCI0.SBRG.TP0E)
         PTS (Arg0)
         Store (0x00, Index (WAKP, 0x00))
         Store (0x00, Index (WAKP, 0x01))
     }

     Method (_WAK, 1, NotSerialized)
     {
         ShiftLeft (Arg0, 0x04, DBG8)
         WAK (Arg0)
         If (LEqual (\_SB.PCI0.SBRG.WAKT, 0x03)) {}
         Else
         {
             Notify (\_SB.PWRB, 0x02)
         }

         If (DerefOf (Index (WAKP, 0x00)))
         {
             Store (0x00, Index (WAKP, 0x01))
         }
         Else
         {
             Store (Arg0, Index (WAKP, 0x01))
         }

         Return (WAKP)
     }

     Name (\_S0, Package (0x04)
     {
         0x00, 
         0x00, 
         0x00, 
         0x00
     })
     Name (\_S1, Package (0x04)
     {
         0x01, 
         0x00, 
         0x00, 
         0x00
     })
     Name (\_S3, Package (0x04)
     {
         0x03, 
         0x00, 
         0x00, 
         0x00
     })
     Name (\_S4, Package (0x04)
     {
         0x04, 
         0x00, 
         0x00, 
         0x00
     })
     Name (\_S5, Package (0x04)
     {
         0x05, 
         0x00, 
         0x00, 
         0x00
     })
     Method (PTS, 1, NotSerialized)
     {
         If (Arg0)
         {
             \_SB.PCI0.SBRG.SIOS (Arg0)
         }
     }

     Method (WAK, 1, NotSerialized)
     {
         \_SB.PCI0.SBRG.SIOW (Arg0)
     }
 }


 --d6Gm4EdcadzBjdND--

From: Reinoud Zandijk <reinoud@NetBSD.org>
To: gnats-bugs@NetBSD.org
Cc: kern-bug-people@netbsd.org, gnats-admin@netbsd.org,
	netbsd-bugs@netbsd.org, reinoud@NetBSD.org
Subject: Re: kern/47648: NetBSD 6.1_RC1 ACPI interupt routing problem + other
 ACPI lossage
Date: Sun, 17 Mar 2013 21:43:27 +0100

 As a side note, with the patch my mouse autoattaches correctly now! So there
 was also some USB lossage. It might got undetected since i only use its USB for
 charging my ebook reader and for the mouse.

From: Reinoud Zandijk <reinoud@NetBSD.org>
To: gnats-bugs@NetBSD.org
Cc: kern-bug-people@netbsd.org, gnats-admin@netbsd.org,
	netbsd-bugs@netbsd.org, reinoud@NetBSD.org
Subject: Re: kern/47648: NetBSD 6.1_RC1 ACPI interupt routing problem + other
 ACPI lossage
Date: Sun, 17 Mar 2013 22:03:08 +0100

 --gKMricLos+KVdGMg
 Content-Type: text/plain; charset=us-ascii
 Content-Disposition: inline

 On Sun, Mar 17, 2013 at 08:45:03PM +0000, Reinoud Zandijk wrote:
 >  >  does this patch make any difference?
 >  >  http://mail-index.netbsd.org/port-amd64/2013/02/19/msg001860.html
 >  
 >  This patch solves it. The interrupt storm is gone and auixp(9) is working again!

 Sorry for the noise, it auto-picked the wrong boot so my dmesg is invalid and
 the machine hangs now after printing cpu1 stuff after the ieee1394if0
 messages.

 Running without the patch gives the attached dmesg.


 --gKMricLos+KVdGMg
 Content-Type: text/plain; charset=us-ascii
 Content-Disposition: attachment; filename="dmesg.heethoofdje"

 Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
     2006, 2007, 2008, 2009, 2010, 2011, 2012
     The NetBSD Foundation, Inc.  All rights reserved.
 Copyright (c) 1982, 1986, 1989, 1991, 1993
     The Regents of the University of California.  All rights reserved.

 NetBSD 6.1_RC1 (GENERIC) #10: Sun Mar 17 21:57:17 CET 2013
 	reinoud@heethoofdje.13thmonkey.org:/usr/sources/cvs.netbsd.org/src-6-debug/sys/arch/i386/compile/GENERIC
 total memory = 1918 MB
 avail memory = 1873 MB
 timecounter: Timecounters tick every 10.000 msec
 userconf: configure system autoconfiguration:
 uc> disable auixp
 [359] auixp* disabled
 uc> quit
 Continuing...
 timecounter: Timecounter "i8254" frequency 1193182 Hz quality 100
 To Be Filled By O.E.M. To Be Filled By O.E.M. (To Be Filled By O.E.M.)
 mainbus0 (root)
 mainbus0: scanning 0x9fc00 to 0x9fff0 for MP signature
 mainbus0: scanning 0x9f800 to 0x9fbf0 for MP signature
 mainbus0: scanning 0xf0000 to 0xffff0 for MP signature
 cpu0 at mainbus0 apid 0cpu0: prelint0 0x700<vector=0x0,delmode=0x7,dest=0x0> 0x0<target=0x0>
 cpu0: prelint1 0x400<vector=0x0,delmode=0x4,dest=0x0> 0x0<target=0x0>
 cpu0: timer0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu0: pcint0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu0: lint0 0x700<vector=0x0,delmode=0x7,dest=0x0> 0x0<target=0x0>
 cpu0: lint1 0x400<vector=0x0,delmode=0x4,dest=0x0> 0x0<target=0x0>
 cpu0: err0 0x1000f<vector=0xf,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 : Intel(R) Pentium(R) 4 CPU 3.20GHz, id 0xf33
 cpu0: idle lwp at 0xc2f3cd20, idle sp at 0xda829d28
 cpu1 at mainbus0 apid 1: Intel(R) Pentium(R) 4 CPU 3.20GHz, id 0xf33
 cpu1: idle lwp at 0xc340c540, idle sp at 0xda6c1d28
 ioapic0 at mainbus0 apid 2: pa 0xfec00000, virtual wire mode, version 11, 24 pins
 acpi0 at mainbus0: Intel ACPICA 20110623
 acpi0: X/RSDT: OemId <A M I ,OEMXSDT ,06000529>, AslId <MSFT,00000097>
 ioapic0: int9 0x19060<vector=0x60,delmode=0x0,pending,level,masked,dest=0x0> 0x0<target=0x0>
 allocated pic ioapic0 type level pin 9 level 6 to cpu0 slot 0 idt entry 96
 mpacpi: found root PCI bus 0
 mpacpi: found subordinate bus 0
 mpacpi: found subordinate bus 0
 mpacpi: 3 PCI busses
 mpacpi: ISA interrupt override 0 -> 2 (0/0)
 mpacpi: ISA interrupt override 9 -> 21 (3/3)
 mpacpi: configuring PCI bus 0 int routing
 mpacpi: configuring PCI bus 1 int routing
 mpacpi: configuring PCI bus 2 int routing
 ioapic0 reenabling
 ioapic0: int0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 ioapic0: int1 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 ioapic0: int2 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 ioapic0: int3 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 ioapic0: int4 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 ioapic0: int5 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 ioapic0: int6 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 ioapic0: int7 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 ioapic0: int8 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 ioapic0: int9 0xb060<vector=0x60,delmode=0x0,pending,actlo,level,dest=0x0> 0x0<target=0x0>
 ioapic0: int10 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 ioapic0: int11 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 ioapic0: int12 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 ioapic0: int13 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 ioapic0: int14 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 ioapic0: int15 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 ioapic0: int16 0x1a000<vector=0x0,delmode=0x0,actlo,level,masked,dest=0x0> 0x0<target=0x0>
 ioapic0: int17 0x1a000<vector=0x0,delmode=0x0,actlo,level,masked,dest=0x0> 0x0<target=0x0>
 ioapic0: int18 0x1a000<vector=0x0,delmode=0x0,actlo,level,masked,dest=0x0> 0x0<target=0x0>
 ioapic0: int19 0x1a000<vector=0x0,delmode=0x0,actlo,level,masked,dest=0x0> 0x0<target=0x0>
 ioapic0: int20 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 ioapic0: int21 0x1a000<vector=0x0,delmode=0x0,actlo,level,masked,dest=0x0> 0x0<target=0x0>
 ioapic0: int22 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 ioapic0: int23 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 ioapic0: pin 2 attached to isa0 irq 0 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 1 attached to isa0 irq 1 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 3 attached to isa0 irq 3 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 4 attached to isa0 irq 4 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 5 attached to isa0 irq 5 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 6 attached to isa0 irq 6 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 7 attached to isa0 irq 7 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 8 attached to isa0 irq 8 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 21 attached to isa0 irq 9 (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 10 attached to isa0 irq 10 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 11 attached to isa0 irq 11 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 12 attached to isa0 irq 12 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 13 attached to isa0 irq 13 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 14 attached to isa0 irq 14 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 15 attached to isa0 irq 15 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 16 attached to pci0 device 20 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 17 attached to pci0 device 20 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci0 device 19 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci1 device 5 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 17 attached to pci1 device 5 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci2 device 8 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci2 device 8 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci2 device 8 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 17 attached to pci2 device 8 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci2 device 9 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 17 attached to pci2 device 9 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci2 device 9 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci2 device 9 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci2 device 10 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci2 device 12 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci2 device 12 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 17 attached to pci2 device 14 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci2 device 14 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 17 attached to pci2 device 14 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci2 device 14 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 acpi0: SCI interrupting at int 9
 timecounter: Timecounter "ACPI-Safe" frequency 3579545 Hz quality 900
 attimer1 at acpi0 (TMR, PNP0100): io 0x40-0x43 irq 0
 pcppi1 at acpi0 (SPKR, PNP0800): io 0x61
 midi0 at pcppi1: PC speaker
 sysbeep0 at pcppi1
 npx1 at acpi0 (COPR, PNP0C04): io 0xf0-0xff irq 13
 npx1: reported by CPUID; using exception 16
 LPTE (PNP0401) [ECP printer port] at acpi0 not configured
 SIOR (PNP0C02) [Motherboard Register Resources] at acpi0 not configured
 RMSC (PNP0C02) [Motherboard Register Resources] at acpi0 not configured
 OMSC (PNP0C02) [Motherboard Register Resources] at acpi0 not configured
 UAR1 (PNP0501) [16550A-compatible COM port] at acpi0 not configured
 pckbc1 at acpi0 (PS2K, PNP0303) (kbd port): io 0x60,0x64 irq 1
 RMEM (PNP0C01) [System Board] at acpi0 not configured
 acpibut0 at acpi0 (PWRB, PNP0C0C-170): ACPI Power Button
 apm0 at acpi0: Power Management spec V1.2
 acpi0: [MADT] LAPIC          : CPU ID 1, LAPIC ID 0, FLAGS 0x01
 acpi0: [MADT] LAPIC          : CPU ID 2, LAPIC ID 1, FLAGS 0x01
 acpi0: [MADT] I/O APIC       : ID 2, GSI 0, ADDR 0xFEC00000
 acpi0: [MADT] INTR OVERRIDE  : BUS 0, IRQ 0, GSI 2, FLAGS 0x00
 acpi0: [MADT] INTR OVERRIDE  : BUS 0, IRQ 9, GSI 21, FLAGS 0x0F
 acpi0: [FADT] FACS           : 0x0000000077F50000
 acpi0: [FADT] DSDT           : 0x0000000077F40360
 acpi0: [FADT] INT_MODEL      : 0x0000000000000001
 acpi0: [FADT] PM_PROFILE     : 0x0000000000000000
 acpi0: [FADT] SCI_INT        : 0x0000000000000009
 acpi0: [FADT] SMI_CMD        : 0x00000000000000B0
 acpi0: [FADT] ACPI_ENABLE    : 0x00000000000000E1
 acpi0: [FADT] ACPI_DISABLE   : 0x000000000000001E
 acpi0: [FADT] S4BIOS_REQ     : 0x0000000000000000
 acpi0: [FADT] PSTATE_CNT     : 0x00000000000000E2
 acpi0: [FADT] PM1a_EVT_BLK   : 0x0000000000000800
 acpi0: [FADT] PM1b_EVT_BLK   : 0x0000000000000000
 acpi0: [FADT] PM1a_CNT_BLK   : 0x0000000000000F40
 acpi0: [FADT] PM1b_CNT_BLK   : 0x0000000000000000
 acpi0: [FADT] PM2_CNT_BLK    : 0x0000000000000850
 acpi0: [FADT] PM_TMR_BLK     : 0x0000000000000808
 acpi0: [FADT] GPE0_BLK       : 0x0000000000000820
 acpi0: [FADT] GPE1_BLK       : 0x0000000000000000
 acpi0: [FADT] PM1_EVT_LEN    : 0x0000000000000004
 acpi0: [FADT] PM1_CNT_LEN    : 0x0000000000000002
 acpi0: [FADT] PM2_CNT_LEN    : 0x0000000000000001
 acpi0: [FADT] PM_TMR_LEN     : 0x0000000000000004
 acpi0: [FADT] GPE0_BLK_LEN   : 0x0000000000000008
 acpi0: [FADT] GPE1_BLK_LEN   : 0x0000000000000000
 acpi0: [FADT] GPE1_BASE      : 0x0000000000000000
 acpi0: [FADT] CST_CNT        : 0x0000000000000000
 acpi0: [FADT] P_LVL2_LAT     : 0x0000000000000065
 acpi0: [FADT] P_LVL3_LAT     : 0x00000000000003E9
 acpi0: [FADT] FLUSH_SIZE     : 0x0000000000000400
 acpi0: [FADT] FLUSH_STRIDE   : 0x0000000000000010
 acpi0: [FADT] DUTY_OFFSET    : 0x0000000000000000
 acpi0: [FADT] DUTY_WIDTH     : 0x0000000000000008
 acpi0: [FADT] DAY_ALRM       : 0x000000000000000D
 acpi0: [FADT] MON_ALRM       : 0x0000000000000000
 acpi0: [FADT] CENTURY        : 0x0000000000000032
 acpi0: [FADT] IAPC_BOOT_ARCH : 0x0000000000000003
 acpi0: [FADT] RESET_VALUE    : 0x0000000000000006
 acpi0: [FADT] WBINVD         : 0x0000000000000001
 acpi0: [FADT] WBINVD_FLUSH   : 0x0000000000000000
 acpi0: [FADT] PROC_C1        : 0x0000000000000004
 acpi0: [FADT] P_LVL2_UP      : 0x0000000000000000
 acpi0: [FADT] PWR_BUTTON     : 0x0000000000000000
 acpi0: [FADT] SLP_BUTTON     : 0x0000000000000020
 acpi0: [FADT] FIX_RTC        : 0x0000000000000000
 acpi0: [FADT] RTC_S4         : 0x0000000000000080
 acpi0: [FADT] TMR_VAL_EXT    : 0x0000000000000100
 acpi0: [FADT] DCK_CAP        : 0x0000000000000000
 acpi0: [FADT] RESET_REG_SUP  : 0x0000000000000000
 acpi0: [FADT] SEALED_CASE    : 0x0000000000000000
 acpi0: [FADT] HEADLESS       : 0x0000000000001000
 acpi0: [FADT] CPU_SW_SLP     : 0x0000000000000000
 acpi0: [FADT] PCI_EXP_WAK    : 0x0000000000000000
 acpi0: [FADT] PLATFORM_CLK   : 0x0000000000000000
 acpi0: [FADT] S4_RTC_STS     : 0x0000000000000000
 acpi0: [FADT] REMOTE_POWER   : 0x0000000000000000
 acpi0: [FADT] APIC_CLUSTER   : 0x0000000000000000
 acpi0: [FADT] APIC_PHYSICAL  : 0x0000000000000000
 acpi0: [\   ] HID -          UID -    STA 0xFFFFFFFF ADR -
 acpi0: [CPU1] HID -          UID -    STA 0xFFFFFFFF ADR -
 acpi0: [CPU2] HID -          UID -    STA 0xFFFFFFFF ADR -
 acpi0: [_SB ] HID -          UID -    STA 0xFFFFFFFF ADR -
 acpi0: [PCI0] HID PNP0A03    UID 0    STA 0xFFFFFFFF ADR 0x0000000000000000
 acpi0: [P0P1] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000010000
 acpi0: [SBSM] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000140000
 acpi0: [SBRG] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000140003
 acpi0: [PIC ] HID PNP0000    UID -    STA 0xFFFFFFFF ADR -
 acpi0: [DMAD] HID PNP0200    UID -    STA 0xFFFFFFFF ADR -
 acpi0: [TMR ] HID PNP0100    UID -    STA 0xFFFFFFFF ADR -
 acpi0: [RTC0] HID PNP0B00    UID -    STA 0xFFFFFFFF ADR -
 acpi0: [SPKR] HID PNP0800    UID -    STA 0xFFFFFFFF ADR -
 acpi0: [COPR] HID PNP0C04    UID -    STA 0xFFFFFFFF ADR -
 acpi0: [FDC ] HID PNP0700    UID -    STA 0x00000000 ADR -
 acpi0: [LPTE] HID PNP0401    UID -    STA 0x0000000F ADR -
 acpi0: [SIOR] HID PNP0C02    UID 46   STA 0xFFFFFFFF ADR -
 acpi0: [RMSC] HID PNP0C02    UID 16   STA 0xFFFFFFFF ADR -
 acpi0: [OMSC] HID PNP0C02    UID 0    STA 0xFFFFFFFF ADR -
 acpi0: [UAR1] HID PNP0501    UID 1    STA 0x0000000F ADR -
 acpi0: [PS2M] HID PNP0F03    UID -    STA 0x00000000 ADR -
 acpi0: [PS2K] HID PNP0303    UID -    STA 0x0000000F ADR -
 acpi0: [IDEC] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000140001
 acpi0: [PRID] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000000
 acpi0: [P_D0] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000000
 acpi0: [P_D1] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000001
 acpi0: [SECD] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000001
 acpi0: [S_D0] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000000
 acpi0: [S_D1] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000001
 acpi0: [AC97] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000140005
 acpi0: [MC97] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000140006
 acpi0: [USB1] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000130000
 acpi0: [USB2] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000130001
 acpi0: [EUSB] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000130002
 acpi0: [P0P2] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000140004
 acpi0: [SLAN] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000080000
 acpi0: [P2P3] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000000C0000
 acpi0: [RMEM] HID PNP0C01    UID 1    STA 0xFFFFFFFF ADR -
 acpi0: [PWRB] HID PNP0C0C    UID 170  STA 0x0000000B ADR -
 acpi0: [LNKA] HID PNP0C0F    UID 1    STA 0x0000000B ADR -
 acpi0: [LNKB] HID PNP0C0F    UID 2    STA 0x0000000B ADR -
 acpi0: [LNKC] HID PNP0C0F    UID 3    STA 0x0000000B ADR -
 acpi0: [LNKD] HID PNP0C0F    UID 4    STA 0x0000000B ADR -
 acpi0: [_TZ ] HID -          UID -    STA 0xFFFFFFFF ADR -

 \     [06] []
     CPU1  [12] []
     CPU2  [12] []
     _SB   [06] []
         PCI0  [06] [] (PCI) @ 0x00:0x00:0x00:0x00 [R] [B] -> 0x00:0x00
             P0P1  [06] [] (PCI) @ 0x00:0x00:0x01:0x00 [B] -> 0x00:0x01
             SBSM  [06] [] (PCI) @ 0x00:0x00:0x14:0x00
             SBRG  [06] [] (PCI) @ 0x00:0x00:0x14:0x03
                 PIC   [06] []
                 DMAD  [06] []
                 TMR   [06] [] <attimer1>
                 RTC0  [06] []
                 SPKR  [06] [] <pcppi1>
                 COPR  [06] [] <npx1>
                 FDC   [06] []
                 LPTE  [06] []
                 SIOR  [06] []
                 RMSC  [06] []
                 OMSC  [06] []
                 UAR1  [06] []
                 PS2M  [06] []
                 PS2K  [06] [] <pckbc1>
             IDEC  [06] [] (PCI) @ 0x00:0x00:0x14:0x01
                 PRID  [06] []
                     P_D0  [06] []
                     P_D1  [06] []
                 SECD  [06] []
                     S_D0  [06] []
                     S_D1  [06] []
             AC97  [06] [] (PCI) @ 0x00:0x00:0x14:0x05
             MC97  [06] [] (PCI) @ 0x00:0x00:0x14:0x06
             USB1  [06] [] (PCI) @ 0x00:0x00:0x13:0x00
             USB2  [06] [] (PCI) @ 0x00:0x00:0x13:0x01
             EUSB  [06] [] (PCI) @ 0x00:0x00:0x13:0x02
             P0P2  [06] [] (PCI) @ 0x00:0x00:0x14:0x04 [B] -> 0x00:0x02
                 SLAN  [06] [] (PCI) @ 0x00:0x02:0x08:0x00
                 P2P3  [06] [] (PCI) @ 0x00:0x02:0x0C:0x00
         RMEM  [06] []
         PWRB  [06] [] <acpibut0>
         LNKA  [06] []
         LNKB  [06] []
         LNKC  [06] []
         LNKD  [06] []
     _TZ   [06] []
 attimer1: attached to pcppi1
 pckbd0 at pckbc1 (kbd slot)
 ioapic0: int1 0x61<vector=0x61,delmode=0x0,dest=0x0> 0x0<target=0x0>
 allocated pic ioapic0 type edge pin 1 level 6 to cpu0 slot 1 idt entry 97
 pckbc1: using irq 1 for kbd slot
 wskbd0 at pckbd0: console keyboard
 pci0 at mainbus0 bus 0: configuration mode 1
 mainbus0: added to list as bus 0
 pci0: i/o space, memory space enabled, rd/line, rd/mult, wr/inv ok
 pchb0 at pci0 dev 0 function 0: vendor 0x1002 product 0x5833 (rev. 0x02)
 agp at pchb0 not configured
 ppb0 at pci0 dev 1 function 0: vendor 0x1002 product 0x5838 (rev. 0x00)
 pci1 at ppb0 bus 1
 ppb0: added to list as bus 1
 pci1: i/o space, memory space enabled
 vga1 at pci1 dev 5 function 0: vendor 0x1002 product 0x5834 (rev. 0x00)
 wsdisplay0 at vga1 kbdmux 1: console (80x25, vt100 emulation), using wskbd0
 wsmux1: connecting to wsdisplay0
 radeondrm0 at vga1: ATI Radeon RS300 9100 IGP
 radeondrm0: Initialized radeon 1.29.0 20080613
 ohci0 at pci0 dev 19 function 0: vendor 0x1002 product 0x4347 (rev. 0x01)
 ioapic0: int19 0xa062<vector=0x62,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 allocated pic ioapic0 type level pin 19 level 6 to cpu0 slot 2 idt entry 98
 ohci0: interrupting at ioapic0 pin 19
 ohci0: OHCI version 1.0, legacy support
 ohci0: SMM does not respond, resetting
 usb0 at ohci0: USB revision 1.0
 ohci1 at pci0 dev 19 function 1: vendor 0x1002 product 0x4348 (rev. 0x01)
 ioapic0: int19 0xa062<vector=0x62,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 allocated pic ioapic0 type level pin 19 level 6 to cpu0 slot 2 idt entry 98
 ohci1: interrupting at ioapic0 pin 19
 ohci1: OHCI version 1.0, legacy support
 usb1 at ohci1: USB revision 1.0
 ehci0 at pci0 dev 19 function 2: vendor 0x1002 product 0x4345 (rev. 0x01)
 ioapic0: int19 0xa062<vector=0x62,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 allocated pic ioapic0 type level pin 19 level 6 to cpu0 slot 2 idt entry 98
 ehci0: interrupting at ioapic0 pin 19
 ehci0: dropped intr workaround enabled
 ehci0: EHCI version 1.0
 ehci0: companion controllers, 3 ports each: ohci0 ohci1
 usb2 at ehci0: USB revision 2.0
 piixpm0 at pci0 dev 20 function 0: vendor 0x1002 product 0x4353 (rev. 0x18)
 piixpm0: interrupting at SMI, polling
 iic0 at piixpm0: I2C bus
 ixpide0 at pci0 dev 20 function 1: ATI Technologies IXP IDE Controller (rev. 0x00)
 ixpide0: bus-master DMA support present
 ixpide0: primary channel configured to compatibility mode
 ioapic0: int14 0x63<vector=0x63,delmode=0x0,dest=0x0> 0x0<target=0x0>
 allocated pic ioapic0 type edge pin 14 level 6 to cpu0 slot 3 idt entry 99
 ixpide0: primary channel interrupting at ioapic0 pin 14
 atabus0 at ixpide0 channel 0
 ixpide0: secondary channel configured to compatibility mode
 ioapic0: int15 0x64<vector=0x64,delmode=0x0,dest=0x0> 0x0<target=0x0>
 allocated pic ioapic0 type edge pin 15 level 6 to cpu0 slot 4 idt entry 100
 ixpide0: secondary channel interrupting at ioapic0 pin 15
 atabus1 at ixpide0 channel 1
 pcib0 at pci0 dev 20 function 3: vendor 0x1002 product 0x434c (rev. 0x00)
 ppb1 at pci0 dev 20 function 4: vendor 0x1002 product 0x4342 (rev. 0x00)
 pci2 at ppb1 bus 2
 ppb1: added to list as bus 2
 pci2: i/o space, memory space enabled
 ex0 at pci2 dev 8 function 0: 3Com 3c920B-EMB-WNM Integrated Fast Ethernet (rev. 0x40)
 ioapic0: int18 0xa065<vector=0x65,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 allocated pic ioapic0 type level pin 18 level 6 to cpu0 slot 5 idt entry 101
 ex0: interrupting at ioapic0 pin 18
 ex0: MAC address 00:11:2f:52:44:7c
 rlphy0 at ex0 phy 1: RTL8201L 10/100 media interface, rev. 1
 rlphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
 fwohci0 at pci2 dev 10 function 0: vendor 0x1106 product 0x3044 (rev. 0x80)
 ioapic0: int18 0xa065<vector=0x65,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 allocated pic ioapic0 type level pin 18 level 6 to cpu0 slot 5 idt entry 101
 fwohci0: interrupting at ioapic0 pin 18
 fwohci0: OHCI version 1.10 (ROM=1)
 fwohci0: No. of Isochronous channels is 4.
 fwohci0: EUI64 00:e0:18:00:00:8c:83:d8
 fwohci0: Phy 1394a available S400, 2 ports.
 fwohci0: Link S400, max_rec 2048 bytes.
 ieee1394if0 at fwohci0: IEEE1394 bus
 fwip0 at ieee1394if0: IP over IEEE1394
 fwohci0: Initiate bus reset
 cbb0 at pci2 dev 12 function 0: vendor 0x1524 product 0x1411 (rev. 0x02)
 vendor 0x1524 product 0x0510 (flash memory) at pci2 dev 12 function 1 not configured
 re0 at pci2 dev 14 function 0: RealTek 8169/8110 Gigabit Ethernet (rev. 0x10)
 ioapic0: int17 0xa066<vector=0x66,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 allocated pic ioapic0 type level pin 17 level 6 to cpu0 slot 6 idt entry 102
 re0: interrupting at ioapic0 pin 17
 re0: Ethernet address 00:e0:4c:1f:12:ec
 re0: using 256 tx descriptors
 rgephy0 at re0 phy 7: RTL8169S/8110S/8211 1000BASE-T media interface, rev. 3
 rgephy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT, 1000baseT-FDX, auto
 cbb0: cacheline 0x10 lattimer 0x40
 cbb0: bhlc 0x824010
 ioapic0: int16 0xa067<vector=0x67,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 allocated pic ioapic0 type level pin 16 level 6 to cpu0 slot 7 idt entry 103
 cbb0: interrupting at ioapic0 pin 16
 cardslot0 at cbb0
 cardbus0 at cardslot0: bus 3
 pcmcia0 at cardslot0
 vendor 0x1002 product 0x4341 (audio multimedia) at pci0 dev 20 function 5 not configured
 isa0 at pcib0
 lpt0 at isa0 port 0x378-0x37b irq 7
 ioapic0: int7 0x68<vector=0x68,delmode=0x0,dest=0x0> 0x0<target=0x0>
 allocated pic ioapic0 type edge pin 7 level 6 to cpu0 slot 8 idt entry 104
 com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo
 ioapic0: int4 0x81<vector=0x81,delmode=0x0,dest=0x0> 0x0<target=0x0>
 allocated pic ioapic0 type edge pin 4 level 8 to cpu0 slot 9 idt entry 129
 acpicpu0 at cpu0: ACPI CPU
 acpicpu0: C1: HLT, lat   0 us, pow     0 mW
 acpicpu1 at cpu1: ACPI CPU
 fwohci0: BUS reset
 fwohci0: node_id=0xc800ffc0, gen=1, CYCLEMASTER mode
 ieee1394if0: 1 nodes, maxhop <= 0 cable IRM irm(0) (me)
 ieee1394if0: bus manager 0
 timecounter: Timecounter "clockinterrupt" frequency 100 Hz quality 0
 cpu1: prelint0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu1: prelint1 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu1: timer0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu1: pcint0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu1: lint0 0x10700<vector=0x0,delmode=0x7,masked,dest=0x0> 0x0<target=0x0>
 cpu1: lint1 0x10400<vector=0x0,delmode=0x4,masked,dest=0x0> 0x0<target=0x0>
 cpu1: err0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 timecounter: Timecounter "TSC" frequency 3192627200 Hz quality 3000
 atapibus0 at atabus0: 2 targets
 cd0 at atapibus0 drive 0: <ASUS    CRW-5232A4, , 1.00> cdrom removable
 cd0: 32-bit data port
 cd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 2 (Ultra/33)
 cd0(ixpide0:0:0): using PIO mode 4, Ultra-DMA mode 2 (Ultra/33) (using DMA)
 uhub0 at usb0: vendor 0x1002 OHCI root hub, class 9/0, rev 1.00/1.00, addr 1
 uhub0: 3 ports with 3 removable, self powered
 uhub1 at usb1: vendor 0x1002 OHCI root hub, class 9/0, rev 1.00/1.00, addr 1
 uhub1: 3 ports with 3 removable, self powered
 uhub2 at usb2: vendor 0x1002 EHCI root hub, class 9/0, rev 2.00/1.00, addr 1
 uhub2: 6 ports with 6 removable, self powered
 umass0 at uhub2 port 2 configuration 1 interface 0
 umass0: Sony Sony Digital Book Reader, rev 2.00/2.26, addr 2
 umass0: using SCSI over Bulk-Only
 scsibus0 at umass0: 2 targets, 3 luns per target
 sd0 at scsibus0 target 0 lun 0: <Sony, PRS-T2, 2044> disk removable
 sd0: drive offline
 sd0: unable to open device, error = 19
 sd1 at scsibus0 target 0 lun 1: <Sony, PRS-T2  SD, 2044> disk removable
 sd1: drive offline
 sd1: unable to open device, error = 19
 sd2 at scsibus0 target 0 lun 2: <Sony, PRS-T2  Setup, 2044> disk removable
 sd2: drive offline
 sd2: unable to open device, error = 19
 wd0 at atabus1 drive 0
 wd0: <WDC WD5000AACS-00ZUB0>
 wd0: drive supports 16-sector PIO transfers, LBA48 addressing
 wd0: 465 GB, 969021 cyl, 16 head, 63 sec, 512 bytes/sect x 976773168 sectors
 wd0: 32-bit data port
 wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133)
 wd0(ixpide0:1:0): using PIO mode 4, Ultra-DMA mode 6 (Ultra/133) (using DMA)
 Kernelized RAIDframe activated
 boot device: wd0
 root on wd0a dumps on wd0b
 root file system type: ffs
 uhidev0 at uhub1 port 2 configuration 1 interface 0
 uhidev0: Unique ICs Unique ICs mouse, rev 1.00/0.01, addr 2, iclass 3/1
 ums0 at uhidev0: 5 buttons and Z dir
 wsmouse0 at ums0 mux 0
 tap0: Ethernet address f2:0b:a4:8d:c2:05
 cprng sysctl: WARNING pseudorandom rekeying.
 wsdisplay0: screen 1 added (80x25, vt100 emulation)
 wsdisplay0: screen 2 added (80x25, vt100 emulation)
 wsdisplay0: screen 3 added (80x25, vt100 emulation)
 wsdisplay0: screen 4 added (80x25, vt100 emulation)

 --gKMricLos+KVdGMg--

From: Reinoud Zandijk <reinoud@NetBSD.org>
To: gnats-bugs@NetBSD.org
Cc: kern-bug-people@netbsd.org, gnats-admin@netbsd.org,
	netbsd-bugs@netbsd.org
Subject: Re: kern/47648: NetBSD 6.1_RC1 ACPI interupt routing problem + other
 ACPI lossage
Date: Tue, 19 Mar 2013 11:53:32 +0100

 Hi Chuck,

 small addendum, although the machine works fine now with your patch, my mouse
 is not autodetecting correctly with ACPI but autodecting fine without. Any
 idea what could cause this? Is this related?

 With regards,
 Reinoud

From: David Laight <david@l8s.co.uk>
To: Reinoud Zandijk <reinoud@NetBSD.org>
Cc: gnats-bugs@NetBSD.org, kern-bug-people@netbsd.org,
	gnats-admin@netbsd.org, netbsd-bugs@netbsd.org
Subject: Re: kern/47648: NetBSD 6.1_RC1 ACPI interupt routing problem + other ACPI lossage
Date: Tue, 19 Mar 2013 18:14:08 +0000

 On Tue, Mar 19, 2013 at 11:53:32AM +0100, Reinoud Zandijk wrote:
 > Hi Chuck,
 > 
 > small addendum, although the machine works fine now with your patch, my mouse
 > is not autodetecting correctly with ACPI but autodecting fine without. Any
 > idea what could cause this? Is this related?

 PS/2 mouse or USB mouse.

 I think some bios tables omit the PS/2 mouse info :-(
 Like the board I've got - andertised as PS/2 keyboard+mouse (using
 a splitter) but none of the OS find the mouse.
 Since the USB one works (after a few repluggings) and the PS/2
 keyboard is more important, I haven't looked further.

 	David

 -- 
 David Laight: david@l8s.co.uk

From: Chuck Silvers <chuq@chuq.com>
To: Reinoud Zandijk <reinoud@NetBSD.org>
Cc: gnats-bugs@NetBSD.org, kern-bug-people@netbsd.org,
	gnats-admin@netbsd.org, netbsd-bugs@netbsd.org
Subject: Re: kern/47648: NetBSD 6.1_RC1 ACPI interupt routing problem + other
 ACPI lossage
Date: Wed, 20 Mar 2013 07:53:39 -0700

 On Tue, Mar 19, 2013 at 11:53:32AM +0100, Reinoud Zandijk wrote:
 > small addendum, although the machine works fine now with your patch, my mouse
 > is not autodetecting correctly with ACPI but autodecting fine without. Any
 > idea what could cause this? Is this related?

 did the mouse work with ACPI with a 6.0 kernel?
 (or the 6.0_BETA2 that you mentioned that you upgraded from?)

 from the dmesgs that you sent, it looks like you've got a USB mouse.
 the autoconf messages for that device are identical with and without ACPI though,
 so how is this autodetection failure showing up for you?

 if it worked with ACPI before and it doesn't work with ACPI now,
 then something in my various ACPI-related patches is no doubt to blame,
 since I'm not aware of any other changes that could affect this
 between 6.0 and 6.1_RC1.  you could also try to confirm this back
 reverting the files that I mentioned earlier to their netbsd-6-0-RELEASE
 revision and see if that makes the mouse work again.  please do that test
 so that we can be sure that we're looking in the right place.

 -Chuck

From: Reinoud Zandijk <reinoud@NetBSD.org>
To: Reinoud Zandijk <reinoud@NetBSD.org>, gnats-bugs@NetBSD.org,
	kern-bug-people@netbsd.org, gnats-admin@netbsd.org,
	netbsd-bugs@netbsd.org
Cc: 
Subject: Re: kern/47648: NetBSD 6.1_RC1 ACPI interupt routing problem + other
 ACPI lossage
Date: Wed, 20 Mar 2013 13:35:45 +0100

 On Tue, Mar 19, 2013 at 06:14:08PM +0000, David Laight wrote:
 > On Tue, Mar 19, 2013 at 11:53:32AM +0100, Reinoud Zandijk wrote:
 > > small addendum, although the machine works fine now with your patch, my mouse
 > > is not autodetecting correctly with ACPI but autodecting fine without. Any
 > > idea what could cause this? Is this related?
 > 
 > PS/2 mouse or USB mouse.

 Well it is an USB mouse; i tried a converter to PS/2 but it only lights up for
 a sec on boot and is then dormant so i don't think the mouse understands PS/2.

 Could it be that somehow this mouse problem is connected to the ACPI lossage?
 esp. since it seems to autoconnect fine when i boot without ACPI, or is that
 just luck due to different timing?

 Cheers,
 Reinoud

Responsible-Changed-From-To: kern-bug-people->chs
Responsible-Changed-By: chs@NetBSD.org
Responsible-Changed-When: Sun, 24 Mar 2013 00:44:59 +0000
Responsible-Changed-Why:
my fault


From: "Chuck Silvers" <chs@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/47648 CVS commit: src/sys/arch/x86
Date: Mon, 25 Mar 2013 01:30:38 +0000

 Module Name:	src
 Committed By:	chs
 Date:		Mon Mar 25 01:30:37 UTC 2013

 Modified Files:
 	src/sys/arch/x86/acpi: acpi_machdep.c
 	src/sys/arch/x86/x86: mpacpi.c

 Log Message:
 redo the ACPI interrupt handler setup again, this time handling
 MADT overrides that change the pin as well as the polarity.
 fixes PR 47648.


 To generate a diff of this commit:
 cvs rdiff -u -r1.4 -r1.5 src/sys/arch/x86/acpi/acpi_machdep.c
 cvs rdiff -u -r1.96 -r1.97 src/sys/arch/x86/x86/mpacpi.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: Lars Heidieker <lars@heidieker.de>
To: gnats-bugs@NetBSD.org
Cc: Chuck Silvers <chs@netbsd.org>, gnats-admin@netbsd.org, 
 netbsd-bugs@netbsd.org, reinoud@NetBSD.org
Subject: Re: PR/47648 CVS commit: src/sys/arch/x86
Date: Thu, 28 Mar 2013 22:29:12 +0100

 This is a multi-part message in MIME format.
 --------------050508070702040007040902
 Content-Type: text/plain; charset=ISO-8859-1
 Content-Transfer-Encoding: 8bit

 On 2013-03-25 02:35, Chuck Silvers wrote:
 > The following reply was made to PR kern/47648; it has been noted by GNATS.
 > 
 > From: "Chuck Silvers" <chs@netbsd.org>
 > To: gnats-bugs@gnats.NetBSD.org
 > Cc: 
 > Subject: PR/47648 CVS commit: src/sys/arch/x86
 > Date: Mon, 25 Mar 2013 01:30:38 +0000
 > 
 >  Module Name:	src
 >  Committed By:	chs
 >  Date:		Mon Mar 25 01:30:37 UTC 2013
 >  
 >  Modified Files:
 >  	src/sys/arch/x86/acpi: acpi_machdep.c
 >  	src/sys/arch/x86/x86: mpacpi.c
 >  
 >  Log Message:
 >  redo the ACPI interrupt handler setup again, this time handling
 >  MADT overrides that change the pin as well as the polarity.
 >  fixes PR 47648.
 >  
 >  
 >  To generate a diff of this commit:
 >  cvs rdiff -u -r1.4 -r1.5 src/sys/arch/x86/acpi/acpi_machdep.c
 >  cvs rdiff -u -r1.96 -r1.97 src/sys/arch/x86/x86/mpacpi.c
 >  
 >  Please note that diffs are not public domain; they are subject to the
 >  copyright notices on the relevant files.
 >  
 > 

 Since these changes I see an interrupt storm in int 9 for !DIAGNOSTICS
 and !DEBUG or DIAGNOSTICS & DEBUG kernels.
 It goes away if I put the ioapic_reenable back into mpacpi_find_interrupts.

 I think the problem has been there before as well but the
 ioapic_reenable fixes it.

 I've attached two dmesg print (same config but one with DIAGNOSTICS
 enabled and the other one with DIAGNOISTICS & DEBUG)

 In case of no interrupt storm
 ioapic0: int9 0x8060<vector=0x60,delmode=0x0,level,dest=0x0> 0x0<target=0x0>

 In case of interrupt storm
 ioapic0: int9
 0xb060<vector=0x60,delmode=0x0,pending,actlo,level,dest=0x0> 0x0<target=0x0>

 Lars


 -- 
 ------------------------------------

 Mystische Erklärungen:
 Die mystischen Erklärungen gelten für tief;
 die Wahrheit ist, dass sie noch nicht einmal oberflächlich sind.

    -- Friedrich Nietzsche
    [ Die Fröhliche Wissenschaft Buch 3, 126 ]

 --------------050508070702040007040902
 Content-Type: text/plain; charset=UTF-8;
  name="test.dmesg"
 Content-Transfer-Encoding: 7bit
 Content-Disposition: attachment;
  filename="test.dmesg"

 Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
     2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013
     The NetBSD Foundation, Inc.  All rights reserved.
 Copyright (c) 1982, 1986, 1989, 1991, 1993
     The Regents of the University of California.  All rights reserved.

 NetBSD 6.99.18 (TEST) #0: Thu Mar 28 21:28:13 CET 2013
 	root@apollo.paradoxon.local:/usr/devel/work/sys/arch/amd64/compile/TEST
 total memory = 8183 MB
 avail memory = 7939 MB
 timecounter: Timecounters tick every 10.000 msec
 timecounter: Timecounter "i8254" frequency 1193182 Hz quality 100
 SMBIOS rev. 2.4 @ 0xf0100 (39 entries)
 Gigabyte Technology Co., Ltd. P55A-UD3 ( )
 mainbus0 (root)
 mainbus0: scanning 0x9dc00 to 0x9dff0 for MP signature
 mainbus0: scanning 0x9d800 to 0x9dbf0 for MP signature
 mainbus0: scanning 0xf0000 to 0xffff0 for MP signature
 mainbus0: MP floating pointer found in bios at 0xf5780
 mainbus0: MP config table at 0xf0d00, 420 bytes long
 cpu0 at mainbus0 apid 0cpu0: 8 page colors
 cpu0: prelint0 0x700<vector=0x0,delmode=0x7,dest=0x0> 0x0<target=0x0>
 cpu0: prelint1 0x400<vector=0x0,delmode=0x4,dest=0x0> 0x0<target=0x0>
 cpu0: timer0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu0: pcint0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu0: lint0 0x700<vector=0x0,delmode=0x7,dest=0x0> 0x0<target=0x0>
 cpu0: lint1 0x400<vector=0x0,delmode=0x4,dest=0x0> 0x0<target=0x0>
 cpu0: err0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu0: calibrating local timer
 cpu0: apic clock running at 133 MHz
 timecounter: Timecounter "lapic" frequency 133298574 Hz quality -100
 : Intel(R) Core(TM) i5 CPU         750  @ 2.67GHz, id 0x106e5
 cpu0: PAT enabled
 cpu0: idle lwp at 0xfffffe821f704840, idle sp at 0xfffffe810e934c50
 cpu1 at mainbus0 apid 2cpu1: 2 page colors
 x86_ipi_init: ESR 00000040
 : Intel(R) Core(TM) i5 CPU         750  @ 2.67GHz, id 0x106e5
 cpu1: PAT enabled
 cpu1: idle lwp at 0xfffffe821eadc080, idle sp at 0xfffffe810e974c50
 cpu2 at mainbus0 apid 4cpu2: 2 page colors
 : Intel(R) Core(TM) i5 CPU         750  @ 2.67GHz, id 0x106e5
 cpu2: PAT enabled
 cpu2: idle lwp at 0xfffffe810e9880c0, idle sp at 0xfffffe810e9a0c50
 cpu3 at mainbus0 apid 6cpu3: 2 page colors
 : Intel(R) Core(TM) i5 CPU         750  @ 2.67GHz, id 0x106e5
 cpu3: PAT enabled
 cpu3: idle lwp at 0xfffffe810e9ba100, idle sp at 0xfffffe810e9cfc50
 ioapic0 at mainbus0 apid 2: pa 0xfec00000, virtual wire mode, version 20, 24 pins
 ioapic0: misconfigured as apic 0
 ioapic0: remapped to apic 2
 acpi0 at mainbus0: Intel ACPICA 20110623
 acpi0: X/RSDT: OemId <GBT   ,GBTUACPI,42302e31>, AslId <GBTU,01010101>
 ioapic0: int9 0x8060<vector=0x60,delmode=0x0,level,dest=0x0> 0x0<target=0x0>
 mpacpi: found root PCI bus 0
 mpacpi: found subordinate bus 0
 mpacpi: found subordinate bus 0
 mpacpi: found subordinate bus 0
 mpacpi: 4 PCI busses
 mpacpi: ISA interrupt override 0 -> 2 (0/0)
 mpacpi: ISA interrupt override 9 -> 9 (1/3)
 mpacpi: configuring PCI bus 0 int routing
 mpacpi: configuring PCI bus 2 int routing
 mpacpi: configuring PCI bus 3 int routing
 mpacpi: configuring PCI bus 4 int routing
 ioapic0: pin 2 attached to isa0 irq 0 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 1 attached to isa0 irq 1 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 3 attached to isa0 irq 3 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 4 attached to isa0 irq 4 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 5 attached to isa0 irq 5 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 6 attached to isa0 irq 6 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 7 attached to isa0 irq 7 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 8 attached to isa0 irq 8 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 9 attached to isa0 irq 9 (type 0x0<type=0x0> flags 0xd<pol=0x1=Act Hi,trig=0x3=Level>)
 ioapic0: pin 10 attached to isa0 irq 10 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 11 attached to isa0 irq 11 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 12 attached to isa0 irq 12 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 13 attached to isa0 irq 13 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 14 attached to isa0 irq 14 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 15 attached to isa0 irq 15 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 local apic: pin 1 attached to NMI (type 0x1<type=0x1=NMI> flags 0x0<pol=0x0,trig=0x0>)
 local apic: pin 1 attached to NMI (type 0x1<type=0x1=NMI> flags 0x0<pol=0x0,trig=0x0>)
 local apic: pin 1 attached to NMI (type 0x1<type=0x1=NMI> flags 0x0<pol=0x0,trig=0x0>)
 local apic: pin 1 attached to NMI (type 0x1<type=0x1=NMI> flags 0x0<pol=0x0,trig=0x0>)
 local apic: pin 1 attached to NMI (type 0x1<type=0x1=NMI> flags 0x0<pol=0x0,trig=0x0>)
 local apic: pin 1 attached to NMI (type 0x1<type=0x1=NMI> flags 0x0<pol=0x0,trig=0x0>)
 local apic: pin 1 attached to NMI (type 0x1<type=0x1=NMI> flags 0x0<pol=0x0,trig=0x0>)
 local apic: pin 1 attached to NMI (type 0x1<type=0x1=NMI> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 16 attached to pci0 device 22 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 17 attached to pci0 device 22 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci0 device 22 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci0 device 22 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci0 device 0 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 17 attached to pci0 device 0 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci0 device 0 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci0 device 0 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 22 attached to pci0 device 27 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci0 device 1 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 17 attached to pci0 device 1 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci0 device 1 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci0 device 1 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci0 device 3 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 17 attached to pci0 device 3 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci0 device 3 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci0 device 3 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci0 device 5 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 17 attached to pci0 device 5 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci0 device 5 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci0 device 5 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci0 device 6 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 17 attached to pci0 device 6 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci0 device 6 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci0 device 6 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci0 device 7 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 17 attached to pci0 device 7 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci0 device 7 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci0 device 7 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci0 device 28 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 17 attached to pci0 device 28 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci0 device 28 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci0 device 28 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 23 attached to pci0 device 29 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci0 device 29 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci0 device 29 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci0 device 29 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci0 device 31 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci0 device 31 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci0 device 26 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 21 attached to pci0 device 26 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci0 device 26 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci2 device 0 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 17 attached to pci2 device 0 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci2 device 0 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci2 device 0 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 17 attached to pci3 device 0 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci3 device 0 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci3 device 0 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci3 device 0 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci4 device 2 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci4 device 2 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci4 device 2 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 20 attached to pci4 device 2 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci4 device 3 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci4 device 3 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 20 attached to pci4 device 3 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci4 device 3 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci4 device 4 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 20 attached to pci4 device 4 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci4 device 4 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci4 device 4 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci4 device 5 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci4 device 5 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci4 device 5 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci4 device 5 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 acpi0: SCI interrupting at int 9
 acpi0: fixed power button present
 timecounter: Timecounter "ACPI-Fast" frequency 3579545 Hz quality 1000
 acpi0: ACPI-Fast 24-bit timer
 hpet0 at acpi0: high precision event timer (mem 0xfed00000-0xfed00400)
 timecounter: Timecounter "hpet0" frequency 14318180 Hz quality 2000
 acpibut0 at acpi0 (PWRB, PNP0C0C): ACPI Power Button
 SYSR (PNP0C02) [Motherboard Register Resources] at acpi0 not configured
 attimer1 at acpi0 (TMR, PNP0100): io 0x40-0x43
 pcppi1 at acpi0 (SPKR, PNP0800): io 0x61
 sysbeep0 at pcppi1
 UAR1 (PNP0501) [16550A-compatible COM port] at acpi0 not configured
 LPT1 (PNP0400) [Standard LPT printer port] at acpi0 not configured
 PMIO (PNP0C02) [Motherboard Register Resources] at acpi0 not configured
 EXPL (PNP0C02) [Motherboard Register Resources] at acpi0 not configured
 MEM (PNP0C01) [System Board] at acpi0 not configured
 FWH (INT0800) [Intel Firmware Hub Device] at acpi0 not configured
 acpi0: [MADT] LAPIC          : CPU ID 0, LAPIC ID 0, FLAGS 0x01
 acpi0: [MADT] LAPIC          : CPU ID 1, LAPIC ID 2, FLAGS 0x01
 acpi0: [MADT] LAPIC          : CPU ID 2, LAPIC ID 4, FLAGS 0x01
 acpi0: [MADT] LAPIC          : CPU ID 3, LAPIC ID 6, FLAGS 0x01
 acpi0: [MADT] LAPIC          : CPU ID 4, LAPIC ID 4, FLAGS 0x00
 acpi0: [MADT] LAPIC          : CPU ID 5, LAPIC ID 5, FLAGS 0x00
 acpi0: [MADT] LAPIC          : CPU ID 6, LAPIC ID 6, FLAGS 0x00
 acpi0: [MADT] LAPIC          : CPU ID 7, LAPIC ID 7, FLAGS 0x00
 acpi0: [MADT] I/O APIC       : ID 2, GSI 0, ADDR 0xFEC00000
 acpi0: [MADT] INTR OVERRIDE  : BUS 0, IRQ 0, GSI 2, FLAGS 0x00
 acpi0: [MADT] INTR OVERRIDE  : BUS 0, IRQ 9, GSI 9, FLAGS 0x0D
 acpi0: [MADT] LAPIC NMI      : CPU ID 0, LINT 1, FLAGS 0x00
 acpi0: [MADT] LAPIC NMI      : CPU ID 1, LINT 1, FLAGS 0x00
 acpi0: [MADT] LAPIC NMI      : CPU ID 2, LINT 1, FLAGS 0x00
 acpi0: [MADT] LAPIC NMI      : CPU ID 3, LINT 1, FLAGS 0x00
 acpi0: [MADT] LAPIC NMI      : CPU ID 4, LINT 1, FLAGS 0x00
 acpi0: [MADT] LAPIC NMI      : CPU ID 5, LINT 1, FLAGS 0x00
 acpi0: [MADT] LAPIC NMI      : CPU ID 6, LINT 1, FLAGS 0x00
 acpi0: [MADT] LAPIC NMI      : CPU ID 7, LINT 1, FLAGS 0x00
 acpi0: [FADT] FACS           : 0x00000000DF7D0000
 acpi0: [FADT] DSDT           : 0x00000000DF7D1180
 acpi0: [FADT] INT_MODEL      : 0x0000000000000001
 acpi0: [FADT] PM_PROFILE     : 0x0000000000000001
 acpi0: [FADT] SCI_INT        : 0x0000000000000009
 acpi0: [FADT] SMI_CMD        : 0x00000000000000B2
 acpi0: [FADT] ACPI_ENABLE    : 0x00000000000000A1
 acpi0: [FADT] ACPI_DISABLE   : 0x00000000000000A0
 acpi0: [FADT] S4BIOS_REQ     : 0x0000000000000000
 acpi0: [FADT] PSTATE_CNT     : 0x0000000000000034
 acpi0: [FADT] PM1a_EVT_BLK   : 0x0000000000000400
 acpi0: [FADT] PM1b_EVT_BLK   : 0x0000000000000000
 acpi0: [FADT] PM1a_CNT_BLK   : 0x0000000000000404
 acpi0: [FADT] PM1b_CNT_BLK   : 0x0000000000000000
 acpi0: [FADT] PM2_CNT_BLK    : 0x0000000000000450
 acpi0: [FADT] PM_TMR_BLK     : 0x0000000000000408
 acpi0: [FADT] GPE0_BLK       : 0x0000000000000420
 acpi0: [FADT] GPE1_BLK       : 0x0000000000000000
 acpi0: [FADT] PM1_EVT_LEN    : 0x0000000000000004
 acpi0: [FADT] PM1_CNT_LEN    : 0x0000000000000002
 acpi0: [FADT] PM2_CNT_LEN    : 0x0000000000000001
 acpi0: [FADT] PM_TMR_LEN     : 0x0000000000000004
 acpi0: [FADT] GPE0_BLK_LEN   : 0x0000000000000010
 acpi0: [FADT] GPE1_BLK_LEN   : 0x0000000000000000
 acpi0: [FADT] GPE1_BASE      : 0x0000000000000000
 acpi0: [FADT] CST_CNT        : 0x0000000000000000
 acpi0: [FADT] P_LVL2_LAT     : 0x0000000000000065
 acpi0: [FADT] P_LVL3_LAT     : 0x00000000000003E9
 acpi0: [FADT] FLUSH_SIZE     : 0x0000000000000000
 acpi0: [FADT] FLUSH_STRIDE   : 0x0000000000000000
 acpi0: [FADT] DUTY_OFFSET    : 0x0000000000000001
 acpi0: [FADT] DUTY_WIDTH     : 0x0000000000000003
 acpi0: [FADT] DAY_ALRM       : 0x000000000000000D
 acpi0: [FADT] MON_ALRM       : 0x0000000000000000
 acpi0: [FADT] CENTURY        : 0x0000000000000000
 acpi0: [FADT] IAPC_BOOT_ARCH : 0x0000000000000010
 acpi0: [FADT] RESET_VALUE    : 0x0000000000000000
 acpi0: [FADT] WBINVD         : 0x0000000000000001
 acpi0: [FADT] WBINVD_FLUSH   : 0x0000000000000000
 acpi0: [FADT] PROC_C1        : 0x0000000000000004
 acpi0: [FADT] P_LVL2_UP      : 0x0000000000000000
 acpi0: [FADT] PWR_BUTTON     : 0x0000000000000000
 acpi0: [FADT] SLP_BUTTON     : 0x0000000000000020
 acpi0: [FADT] FIX_RTC        : 0x0000000000000000
 acpi0: [FADT] RTC_S4         : 0x0000000000000080
 acpi0: [FADT] TMR_VAL_EXT    : 0x0000000000000000
 acpi0: [FADT] DCK_CAP        : 0x0000000000000000
 acpi0: [FADT] RESET_REG_SUP  : 0x0000000000000400
 acpi0: [FADT] SEALED_CASE    : 0x0000000000000000
 acpi0: [FADT] HEADLESS       : 0x0000000000000000
 acpi0: [FADT] CPU_SW_SLP     : 0x0000000000000000
 acpi0: [FADT] PCI_EXP_WAK    : 0x0000000000000000
 acpi0: [FADT] PLATFORM_CLK   : 0x0000000000000000
 acpi0: [FADT] S4_RTC_STS     : 0x0000000000000000
 acpi0: [FADT] REMOTE_POWER   : 0x0000000000000000
 acpi0: [FADT] APIC_CLUSTER   : 0x0000000000000000
 acpi0: [FADT] APIC_PHYSICAL  : 0x0000000000000000
 acpi0: [\   ] HID -          UID -    STA 0xFFFFFFFF ADR -
 acpi0: [CPU0] HID -          UID -    STA 0xFFFFFFFF ADR -
 acpi0: [CPU1] HID -          UID -    STA 0xFFFFFFFF ADR -
 acpi0: [CPU2] HID -          UID -    STA 0xFFFFFFFF ADR -
 acpi0: [CPU3] HID -          UID -    STA 0xFFFFFFFF ADR -
 acpi0: [CPU4] HID -          UID -    STA 0xFFFFFFFF ADR -
 acpi0: [CPU5] HID -          UID -    STA 0xFFFFFFFF ADR -
 acpi0: [CPU6] HID -          UID -    STA 0xFFFFFFFF ADR -
 acpi0: [CPU7] HID -          UID -    STA 0xFFFFFFFF ADR -
 acpi0: [_SB ] HID -          UID -    STA 0xFFFFFFFF ADR -
 acpi0: [PWRB] HID PNP0C0C    UID -    STA 0x0000000B ADR -
 acpi0: [PCI0] HID PNP0A03    UID 1    STA 0x0000000F ADR 0x0000000000000000
 acpi0: [PEX0] HID -          UID -    STA 0x0000000F ADR 0x00000000001C0000
 acpi0: [PEX1] HID -          UID -    STA 0x0000000F ADR 0x00000000001C0001
 acpi0: [PEX2] HID -          UID -    STA 0x0000000F ADR 0x00000000001C0002
 acpi0: [PEX3] HID -          UID -    STA 0x0000000F ADR 0x00000000001C0003
 acpi0: [PEX4] HID -          UID -    STA 0x0000000F ADR 0x00000000001C0004
 acpi0: [PEX5] HID -          UID -    STA 0x0000000F ADR 0x00000000001C0005
 acpi0: [PEX6] HID -          UID -    STA 0x0000000F ADR 0x00000000001C0006
 acpi0: [PEX7] HID -          UID -    STA 0x0000000F ADR 0x00000000001C0007
 acpi0: [HUB0] HID -          UID -    STA 0x0000000F ADR 0x00000000001E0000
 acpi0: [PX40] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000001F0000
 acpi0: [SYSR] HID PNP0C02    UID 1    STA 0xFFFFFFFF ADR -
 acpi0: [PIC ] HID PNP0000    UID -    STA 0xFFFFFFFF ADR -
 acpi0: [DMA1] HID PNP0200    UID -    STA 0xFFFFFFFF ADR -
 acpi0: [TMR ] HID PNP0100    UID -    STA 0xFFFFFFFF ADR -
 acpi0: [HPET] HID PNP0103    UID -    STA 0x0000000F ADR -
 acpi0: [RTC ] HID PNP0B00    UID -    STA 0xFFFFFFFF ADR -
 acpi0: [SPKR] HID PNP0800    UID -    STA 0xFFFFFFFF ADR -
 acpi0: [COPR] HID PNP0C04    UID -    STA 0xFFFFFFFF ADR -
 acpi0: [FDC0] HID PNP0700    UID -    STA 0x00000000 ADR -
 acpi0: [UAR1] HID PNP0501    UID 1    STA 0x0000000F ADR -
 acpi0: [LPT1] HID PNP0400    UID -    STA 0x0000000F ADR -
 acpi0: [ECP1] HID PNP0401    UID -    STA 0x00000000 ADR -
 acpi0: [PS2M] HID PNP0F13    UID -    STA 0x00000000 ADR -
 acpi0: [PS2K] HID PNP0303    UID -    STA 0x00000000 ADR -
 acpi0: [PSMR] HID PNP0C02    UID 3    STA 0x00000000 ADR -
 acpi0: [PMIO] HID PNP0C02    UID 2    STA 0xFFFFFFFF ADR -
 acpi0: [USB0] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000001D0000
 acpi0: [USB1] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000001D0001
 acpi0: [USB2] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000001D0002
 acpi0: [USB3] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000001D0003
 acpi0: [USB4] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000001A0000
 acpi0: [USB5] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000001A0001
 acpi0: [USB6] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000001A0002
 acpi0: [USBE] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000001D0007
 acpi0: [USE2] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000001A0007
 acpi0: [IDE1] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000001F0002
 acpi0: [PRIM] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000000
 acpi0: [DRV0] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000000
 acpi0: [DRV1] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000001
 acpi0: [SECD] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000001
 acpi0: [DRV0] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000000
 acpi0: [DRV1] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000001
 acpi0: [IDE2] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000001F0005
 acpi0: [PRIM] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000000
 acpi0: [DRV0] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000000
 acpi0: [DRV1] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000001
 acpi0: [SECD] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000001
 acpi0: [DRV0] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000000
 acpi0: [DRV1] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000001
 acpi0: [PX43] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000001F0003
 acpi0: [AZAL] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000001B0000
 acpi0: [LNKA] HID PNP0C0F    UID 1    STA 0x0000000B ADR -
 acpi0: [LNKB] HID PNP0C0F    UID 2    STA 0x0000000B ADR -
 acpi0: [LNKC] HID PNP0C0F    UID 3    STA 0x0000000B ADR -
 acpi0: [LNKD] HID PNP0C0F    UID 4    STA 0x0000000B ADR -
 acpi0: [LNKE] HID PNP0C0F    UID 5    STA 0x00000009 ADR -
 acpi0: [LNKF] HID PNP0C0F    UID 6    STA 0x0000000B ADR -
 acpi0: [LNK0] HID PNP0C0F    UID 7    STA 0x0000000B ADR -
 acpi0: [LNK1] HID PNP0C0F    UID 8    STA 0x0000000B ADR -
 acpi0: [EXPL] HID PNP0C02    UID 4    STA 0xFFFFFFFF ADR -
 acpi0: [MEM ] HID PNP0C01    UID -    STA 0xFFFFFFFF ADR -
 acpi0: [FWH ] HID INT0800    UID -    STA 0xFFFFFFFF ADR -
 acpi0: [_TZ ] HID -          UID -    STA 0xFFFFFFFF ADR -

 \     [06] []
     CPU0  [12] []
     CPU1  [12] []
     CPU2  [12] []
     CPU3  [12] []
     CPU4  [12] []
     CPU5  [12] []
     CPU6  [12] []
     CPU7  [12] []
     _SB   [06] []
         PWRB  [06] [] <acpibut0>
         PCI0  [06] [] (PCI) @ 0x00:0x00:0x00:0x00 [R] [B] -> 0x00:0x00
             PEX0  [06] [] (PCI) @ 0x00:0x00:0x1C:0x00 [B] -> 0x00:0x02
             PEX1  [06] [] (PCI) @ 0x00:0x00:0x1C:0x01 [B] -> 0x00:0x03
             PEX2  [06] [] (PCI) @ 0x00:0x00:0x1C:0x02
             PEX3  [06] [] (PCI) @ 0x00:0x00:0x1C:0x03
             PEX4  [06] [] (PCI) @ 0x00:0x00:0x1C:0x04
             PEX5  [06] [] (PCI) @ 0x00:0x00:0x1C:0x05
             PEX6  [06] [] (PCI) @ 0x00:0x00:0x1C:0x06
             PEX7  [06] [] (PCI) @ 0x00:0x00:0x1C:0x07
             HUB0  [06] [] (PCI) @ 0x00:0x00:0x1E:0x00 [B] -> 0x00:0x04
             PX40  [06] [] (PCI) @ 0x00:0x00:0x1F:0x00
                 SYSR  [06] []
                 PIC   [06] []
                 DMA1  [06] []
                 TMR   [06] [] <attimer1>
                 HPET  [06] []
                 RTC   [06] []
                 SPKR  [06] [] <pcppi1>
                 COPR  [06] []
                 FDC0  [06] []
                 UAR1  [06] []
                 LPT1  [06] []
                 ECP1  [06] []
                 PS2M  [06] []
                 PS2K  [06] []
                 PSMR  [06] []
                 PMIO  [06] []
             USB0  [06] [] (PCI) @ 0x00:0x00:0x1D:0x00
             USB1  [06] [] (PCI) @ 0x00:0x00:0x1D:0x01
             USB2  [06] [] (PCI) @ 0x00:0x00:0x1D:0x02
             USB3  [06] [] (PCI) @ 0x00:0x00:0x1D:0x03
             USB4  [06] [] (PCI) @ 0x00:0x00:0x1A:0x00
             USB5  [06] [] (PCI) @ 0x00:0x00:0x1A:0x01
             USB6  [06] [] (PCI) @ 0x00:0x00:0x1A:0x02
             USBE  [06] [] (PCI) @ 0x00:0x00:0x1D:0x07
             USE2  [06] [] (PCI) @ 0x00:0x00:0x1A:0x07
             IDE1  [06] [] (PCI) @ 0x00:0x00:0x1F:0x02
                 PRIM  [06] []
                     DRV0  [06] []
                     DRV1  [06] []
                 SECD  [06] []
                     DRV0  [06] []
                     DRV1  [06] []
             IDE2  [06] [] (PCI) @ 0x00:0x00:0x1F:0x05
                 PRIM  [06] []
                     DRV0  [06] []
                     DRV1  [06] []
                 SECD  [06] []
                     DRV0  [06] []
                     DRV1  [06] []
             PX43  [06] [] (PCI) @ 0x00:0x00:0x1F:0x03
             AZAL  [06] [] (PCI) @ 0x00:0x00:0x1B:0x00
             LNKA  [06] []
             LNKB  [06] []
             LNKC  [06] []
             LNKD  [06] []
             LNKE  [06] []
             LNKF  [06] []
             LNK0  [06] []
             LNK1  [06] []
             EXPL  [06] []
         MEM   [06] []
         FWH   [06] []
     _TZ   [06] []
 attimer1: attached to pcppi1
 pci0 at mainbus0 bus 0: configuration mode 1
 mainbus0: added to list as bus 0
 pci0: i/o space, memory space enabled, rd/line, rd/mult, wr/inv ok
 pchb0 at pci0 dev 0 function 0: vendor 0x8086 product 0xd131 (rev. 0x11)
 ppb0 at pci0 dev 3 function 0: vendor 0x8086 product 0xd138 (rev. 0x11)
 ppb0: PCI Express 2.0 <Root Port of PCI-E Root Complex> x16 @ 5.0Gb/s
 ppb0: link is x16 @ 2.5Gb/s
 pci1 at ppb0 bus 1
 ppb0: added to list as bus 1
 pci1: i/o space, memory space enabled, rd/line, wr/inv ok
 vga0 at pci1 dev 0 function 0: vendor 0x1002 product 0x954f (rev. 0x00)
 wsdisplay0 at vga0 kbdmux 1: console (80x25, vt100 emulation)
 wsmux1: connecting to wsdisplay0
 radeondrm0 at vga0pci_mem_find: void region
 : ATI Radeon HD 4350
 radeondrm0: Initialized radeon 1.29.0 20080613
 hdaudio0 at pci1 dev 0 function 1: HD Audio Controller
 ioapic0: int17 0xa070<vector=0x70,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 hdaudio0: interrupting at ioapic0 pin 17
 hdafg0 at hdaudio0 vendor 0x1002 product 0xAA01 nid 0x01: ATI R6xx HDMI
 hdafg0: HDMI00 2ch: Digital Out [Jack]
     nid=03 [pin: Digital Out (Jack)]
            nid=02 [audio output] [source: dac]
 hdafg0: 2ch/0ch 32000Hz 44100Hz 48000Hz PCM16 AC3
 vendor 0x8086 product 0xd155 (miscellaneous system, revision 0x11) at pci0 dev 8 function 0 not configured
 vendor 0x8086 product 0xd156 (miscellaneous system, revision 0x11) at pci0 dev 8 function 1 not configured
 vendor 0x8086 product 0xd157 (miscellaneous system, revision 0x11) at pci0 dev 8 function 2 not configured
 vendor 0x8086 product 0xd158 (miscellaneous system, revision 0x11) at pci0 dev 8 function 3 not configured
 vendor 0x8086 product 0xd150 (miscellaneous system, revision 0x11) at pci0 dev 16 function 0 not configured
 vendor 0x8086 product 0xd151 (miscellaneous system, revision 0x11) at pci0 dev 16 function 1 not configured
 uhci0 at pci0 dev 26 function 0: vendor 0x8086 product 0x3b3b (rev. 0x06)
 ioapic0: int16 0xa071<vector=0x71,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 uhci0: interrupting at ioapic0 pin 16
 usb0 at uhci0: USB revision 1.0
 usb0: WARNING: power management not supported
 uhci1 at pci0 dev 26 function 1: vendor 0x8086 product 0x3b3e (rev. 0x06)
 ioapic0: int21 0xa072<vector=0x72,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 uhci1: interrupting at ioapic0 pin 21
 usb1 at uhci1: USB revision 1.0
 usb1: WARNING: power management not supported
 uhci2 at pci0 dev 26 function 2: vendor 0x8086 product 0x3b3f (rev. 0x06)
 ioapic0: int18 0xa073<vector=0x73,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 uhci2: interrupting at ioapic0 pin 18
 usb2 at uhci2: USB revision 1.0
 usb2: WARNING: power management not supported
 ehci0 at pci0 dev 26 function 7: vendor 0x8086 product 0x3b3c (rev. 0x06)
 ioapic0: int18 0xa073<vector=0x73,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 ehci0: interrupting at ioapic0 pin 18
 ehci0: BIOS has given up ownership
 ehci0: EHCI version 1.0
 ehci0: companion controllers, 2 ports each: uhci0 uhci1 uhci2
 usb3 at ehci0: USB revision 2.0
 usb3: WARNING: power management not supported
 hdaudio1 at pci0 dev 27 function 0: HD Audio Controller
 ioapic0: int22 0xa074<vector=0x74,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 hdaudio1: interrupting at ioapic0 pin 22
 hdafg1 at hdaudio1 vendor 0x10EC product 0x0888 nid 0x01: Realtek ALC888
 hdafg1: DAC00 8ch: Speaker [Jack]
     nid=14 [pin: Speaker (Green Jack)]
            nid=0C [audio mixer] [source: dac, record]
                   nid=02 [audio output] [source: dac]
                   nid=0B [audio mixer] [source: record]
     nid=16 [pin: Speaker (Orange Jack)]
            nid=0D [audio mixer] [source: dac, record]
                   nid=03 [audio output] [source: dac]
                   nid=0B [audio mixer] [source: record]
     nid=15 [pin: Speaker (Black Jack)]
            nid=0E [audio mixer] [source: dac, record]
                   nid=04 [audio output] [source: dac]
                   nid=0B [audio mixer] [source: record]
     nid=17 [pin: Speaker (Grey Jack)]
            nid=0F [audio mixer] [source: dac, record]
                   nid=05 [audio output] [source: dac]
                   nid=0B [audio mixer] [source: record]
 hdafg1: DAC01 2ch: HP Out [Jack]
     nid=1B [pin: HP Out (Green Jack)]
            nid=26 [audio mixer] [source: dac, record]
                   nid=25 [audio output] [source: dac]
                   nid=0B [audio mixer] [source: record]
 hdafg1: DIG02 2ch: SPDIF Out [Jack]
     nid=1E [pin: SPDIF Out (Orange Jack)]
            nid=06 [audio output] [source: dac]
 hdafg1: ADC03 2ch: Line In [Jack], Mic In [Jack]
     nid=18 [pin: Mic In (Pink Jack)]
     nid=1A [pin: Line In (Blue Jack)]
 hdafg1: ADC04 2ch: Mic In [Jack]
     nid=19 [pin: Mic In (Pink Jack)]
 hdafg1: DIG-In05 2ch: SPDIF In [Jack]
     nid=1F [pin: SPDIF In (Yellow Jack)]
 hdafg1: 8ch/2ch 44100Hz 48000Hz 96000Hz 192000Hz PCM16 PCM20 PCM24 AC3
 audio0 at hdafg1: full duplex, playback, capture, independent
 ppb1 at pci0 dev 28 function 0: vendor 0x8086 product 0x3b42 (rev. 0x06)
 ppb1: PCI Express 2.0 <Root Port of PCI-E Root Complex> x1 @ 2.5Gb/s
 pci2 at ppb1 bus 2
 ppb1: added to list as bus 2
 pci2: i/o space, memory space enabled, rd/line, wr/inv ok
 ppb2 at pci0 dev 28 function 1: vendor 0x8086 product 0x3b44 (rev. 0x06)
 ppb2: PCI Express 2.0 <Root Port of PCI-E Root Complex> x1 @ 2.5Gb/s
 pci3 at ppb2 bus 3
 ppb2: added to list as bus 3
 pci3: i/o space, memory space enabled, rd/line, wr/inv ok
 re0 at pci3 dev 0 function 0pci_mem_find: void region
 : RealTek 8168/8111 PCIe Gigabit Ethernet (rev. 0x03)
 ioapic0: int17 0xb070<vector=0x70,delmode=0x0,pending,actlo,level,dest=0x0> 0x0<target=0x0>
 re0: interrupting at ioapic0 pin 17
 re0: Ethernet address 6c:f0:49:e2:00:de
 re0: using 256 tx descriptors
 rgephy0 at re0 phy 7: RTL8169S/8110S/8211 1000BASE-T media interface, rev. 2
 rgephy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT, 1000baseT-FDX, auto
 uhci3 at pci0 dev 29 function 0: vendor 0x8086 product 0x3b36 (rev. 0x06)
 ioapic0: int23 0xa075<vector=0x75,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 uhci3: interrupting at ioapic0 pin 23
 usb4 at uhci3: USB revision 1.0
 usb4: WARNING: power management not supported
 uhci4 at pci0 dev 29 function 1: vendor 0x8086 product 0x3b37 (rev. 0x06)
 ioapic0: int19 0xa076<vector=0x76,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 uhci4: interrupting at ioapic0 pin 19
 usb5 at uhci4: USB revision 1.0
 usb5: WARNING: power management not supported
 uhci5 at pci0 dev 29 function 2: vendor 0x8086 product 0x3b38 (rev. 0x06)
 ioapic0: int18 0xb073<vector=0x73,delmode=0x0,pending,actlo,level,dest=0x0> 0x0<target=0x0>
 uhci5: interrupting at ioapic0 pin 18
 usb6 at uhci5: USB revision 1.0
 usb6: WARNING: power management not supported
 uhci6 at pci0 dev 29 function 3: vendor 0x8086 product 0x3b39 (rev. 0x06)
 ioapic0: int16 0xa071<vector=0x71,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 uhci6: interrupting at ioapic0 pin 16
 usb7 at uhci6: USB revision 1.0
 usb7: WARNING: power management not supported
 ehci1 at pci0 dev 29 function 7: vendor 0x8086 product 0x3b34 (rev. 0x06)
 ioapic0: int23 0xa075<vector=0x75,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 ehci1: interrupting at ioapic0 pin 23
 ehci1: BIOS has given up ownership
 ehci1: EHCI version 1.0
 ehci1: companion controllers, 2 ports each: uhci3 uhci4 uhci5 uhci6
 usb8 at ehci1: USB revision 2.0
 usb8: WARNING: power management not supported
 ppb3 at pci0 dev 30 function 0: vendor 0x8086 product 0x244e (rev. 0xa6)
 pci4 at ppb3 bus 4
 ppb3: added to list as bus 4
 pci4: i/o space, memory space enabled
 ichlpcib0 at pci0 dev 31 function 0: vendor 0x8086 product 0x3b02 (rev. 0x06)
 timecounter: Timecounter "ichlpcib0" frequency 3579545 Hz quality 1000
 ichlpcib0: 24-bit timer
 ichlpcib0: TCO (watchdog) timer configured.
 ahcisata0 at pci0 dev 31 function 2: vendor 0x8086 product 0x3b22 (rev. 0x06)
 ioapic0: int19 0xa076<vector=0x76,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 ahcisata0: interrupting at ioapic0 pin 19
 ahcisata0: 64-bit DMA
 ahcisata0: AHCI revision 1.30, 6 ports, 32 slots, CAP 0xef22ff45<EMS,PSC,SSC,PMD,SPM,ISS=0x2=Gen2,SCLO,SAL,SALP,SSS,SSNTF,SNCQ,S64A>
 atabus0 at ahcisata0 channel 0
 atabus1 at ahcisata0 channel 1
 atabus2 at ahcisata0 channel 2
 atabus3 at ahcisata0 channel 3
 atabus4 at ahcisata0 channel 4
 atabus5 at ahcisata0 channel 5
 ichsmb0 at pci0 dev 31 function 3: vendor 0x8086 product 0x3b30 (rev. 0x06)
 ioapic0: int18 0xb073<vector=0x73,delmode=0x0,pending,actlo,level,dest=0x0> 0x0<target=0x0>
 ichsmb0: interrupting at ioapic0 pin 18
 iic0 at ichsmb0: I2C bus
 isa0 at ichlpcib0
 pckbc0 at isa0 port 0x60-0x64
 pckbdprobe: reset error 5
 acpicpu0 at cpu0: ACPI CPU
 acpicpu0: C1: FFH, lat   1 us, pow  1000 mW
 acpicpu0: C2: FFH, lat  64 us, pow   500 mW
 acpicpu0: C3: FFH, lat  96 us, pow   350 mW
 acpicpu0: P0: FFH, lat  10 us, pow 95000 mW, 2661 MHz, turbo boost
 acpicpu0: P1: FFH, lat  10 us, pow 95000 mW, 2660 MHz
 acpicpu0: P2: FFH, lat  10 us, pow 78000 mW, 2527 MHz
 acpicpu0: P3: FFH, lat  10 us, pow 70000 mW, 2394 MHz
 acpicpu0: P4: FFH, lat  10 us, pow 57000 mW, 2261 MHz
 acpicpu0: P5: FFH, lat  10 us, pow 51000 mW, 2128 MHz
 acpicpu0: P6: FFH, lat  10 us, pow 41000 mW, 1995 MHz
 acpicpu0: P7: FFH, lat  10 us, pow 36000 mW, 1862 MHz
 acpicpu0: P8: FFH, lat  10 us, pow 28000 mW, 1729 MHz
 acpicpu0: P9: FFH, lat  10 us, pow 25000 mW, 1596 MHz
 acpicpu0: P10: FFH, lat  10 us, pow 19000 mW, 1463 MHz
 acpicpu0: P11: FFH, lat  10 us, pow 17000 mW, 1330 MHz
 acpicpu0: P12: FFH, lat  10 us, pow 13000 mW, 1197 MHz
 acpicpu0: T0: FFH, lat   1 us, pow   760 mW, 100 %
 acpicpu0: T1: FFH, lat   1 us, pow   665 mW,  88 %
 acpicpu0: T2: FFH, lat   1 us, pow   570 mW,  75 %
 acpicpu0: T3: FFH, lat   1 us, pow   475 mW,  63 %
 acpicpu0: T4: FFH, lat   1 us, pow   380 mW,  50 %
 acpicpu0: T5: FFH, lat   1 us, pow   285 mW,  38 %
 acpicpu0: T6: FFH, lat   1 us, pow   190 mW,  25 %
 acpicpu0: T7: FFH, lat   1 us, pow    95 mW,  13 %
 acpicpu0: id 0, lapic id 0, cap 0x0bfd, flags 0x002aea97
 acpicpu0: P-state coordination: 4 CPUs, domain 0, type HW_ALL
 acpicpu0: T-state coordination: 1 CPUs, domain 0, type SW_ANY
 acpicpu1 at cpu1: ACPI CPU
 acpicpu1: id 1, lapic id 2, cap 0x0bfd, flags 0x002aea97
 acpicpu1: P-state coordination: 4 CPUs, domain 0, type HW_ALL
 acpicpu1: T-state coordination: 1 CPUs, domain 2, type SW_ANY
 acpicpu2 at cpu2: ACPI CPU
 acpicpu2: id 2, lapic id 4, cap 0x0bfd, flags 0x002aea97
 acpicpu2: P-state coordination: 4 CPUs, domain 0, type HW_ALL
 acpicpu2: T-state coordination: 1 CPUs, domain 4, type SW_ANY
 acpicpu3 at cpu3: ACPI CPU
 acpicpu3: id 3, lapic id 6, cap 0x0bfd, flags 0x002aea97
 acpicpu3: P-state coordination: 4 CPUs, domain 0, type HW_ALL
 acpicpu3: T-state coordination: 1 CPUs, domain 6, type SW_ANY
 Initializing SSP: 9bee6a79dc128a70 c2190be64adacbdf fc4f25b217fa18da 3d63c15d295a577a 232a62880f0f5745 e605ac3ededbcbfd 656cefbc4fd3761c 4a91b86d2b5288b0 
 timecounter: Timecounter "clockinterrupt" frequency 100 Hz quality 0
 cpu1: prelint0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu1: prelint1 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu1: timer0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu1: pcint0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu1: lint0 0x10700<vector=0x0,delmode=0x7,masked,dest=0x0> 0x0<target=0x0>
 cpu1: lint1 0x400<vector=0x0,delmode=0x4,dest=0x0> 0x0<target=0x0>
 cpu1: err0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu1: TSC skew=4 drift=2
 cpu2: prelint0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu2: prelint1 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu2: timer0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu2: pcint0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu2: lint0 0x10700<vector=0x0,delmode=0x7,masked,dest=0x0> 0x0<target=0x0>
 cpu2: lint1 0x400<vector=0x0,delmode=0x4,dest=0x0> 0x0<target=0x0>
 cpu2: err0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu2: TSC skew=6 drift=-10
 cpu3: prelint0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu3: prelint1 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu3: timer0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu3: pcint0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu3: lint0 0x10700<vector=0x0,delmode=0x7,masked,dest=0x0> 0x0<target=0x0>
 cpu3: lint1 0x400<vector=0x0,delmode=0x4,dest=0x0> 0x0<target=0x0>
 cpu3: err0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu3: TSC skew=-6 drift=10
 cpu1: running
 cpu2: running
 cpu3: running
 timecounter: Timecounter "TSC" frequency 2664892560 Hz quality 3000
 uhub0 at usb0: vendor 0x8086 UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
 uhub0: 2 ports with 2 removable, self powered
 uhub1 at usb1: vendor 0x8086 UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
 uhub1: 2 ports with 2 removable, self powered
 uhub2 at usb2: vendor 0x8086 UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
 uhub2: 2 ports with 2 removable, self powered
 uhub3 at usb3: vendor 0x8086 EHCI root hub, class 9/0, rev 2.00/1.00, addr 1
 uhub3: 6 ports with 6 removable, self powered
 uhub4 at usb4: vendor 0x8086 UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
 uhub4: 2 ports with 2 removable, self powered
 uhub5 at usb5: vendor 0x8086 UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
 uhub5: 2 ports with 2 removable, self powered
 uhub6 at usb6: vendor 0x8086 UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
 uhub6: 2 ports with 2 removable, self powered
 uhub7 at usb7: vendor 0x8086 UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
 uhub7: 2 ports with 2 removable, self powered
 ahcisata0 port 0: device present, speed: 3.0Gb/s
 ahcisata0 port 1: device present, speed: 3.0Gb/s
 ahcisata0 port 2: device present, speed: 3.0Gb/s
 acpicpu3: ACPI CPUs started
 uhub8 at usb8: vendor 0x8086 EHCI root hub, class 9/0, rev 2.00/1.00, addr 1
 uhub8: 8 ports with 8 removable, self powered
 ehci0: handing over low speed device on port 1 to uhci0
 uhub3: port 1, device disappeared after reset
 ehci0: handing over low speed device on port 2 to uhci0
 uhub3: port 2, device disappeared after reset
 wd0 at atabus0 drive 0
 wd0: <WDC WD1000DHTZ-04N21V0>
 wd0: drive supports 16-sector PIO transfers, LBA48 addressing
 wd0: 931 GB, 1938021 cyl, 16 head, 63 sec, 512 bytes/sect x 1953525168 sectors
 wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133)
 wd0(ahcisata0:0:0): using PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133) (using DMA)
 wd1 at atabus1 drive 0
 wd1: <WDC WD5000AAKS-22V1A0>
 wd1: drive supports 16-sector PIO transfers, LBA48 addressing
 wd1: 465 GB, 969021 cyl, 16 head, 63 sec, 512 bytes/sect x 976773168 sectors
 wd1: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133)
 wd1(ahcisata0:1:0): using PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133) (using DMA)
 wd2 at atabus2 drive 0
 wd2: <ST3500418AS>
 wd2: drive supports 16-sector PIO transfers, LBA48 addressing
 wd2: 465 GB, 969021 cyl, 16 head, 63 sec, 512 bytes/sect x 976773168 sectors
 wd2: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133)
 wd2(ahcisata0:2:0): using PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133) (using DMA)
 pad: requested 1 units
 pad0: outputs: 44100Hz, 16-bit, stereo
 audio1 at pad0: half duplex, playback, capture
 boot device: wd0
 root on wd0a dumps on wd0b
 root file system type: ffs
 uhidev0 at uhub0 port 1 configuration 1 interface 0
 uhidev0: Logitech Logitech USB Keyboard, rev 1.10/28.00, addr 2, iclass 3/1
 ukbd0 at uhidev0: 8 modifier keys, 6 key codes
 wskbd0 at ukbd0: console keyboard, using wsdisplay0
 wsdisplay0: screen 1 added (80x25, vt100 emulation)
 wsdisplay0: screen 2 added (80x25, vt100 emulation)
 wsdisplay0: screen 3 added (80x25, vt100 emulation)
 wsdisplay0: screen 4 added (80x25, vt100 emulation)
 uhidev1 at uhub0 port 2 configuration 1 interface 0
 uhidev1: Logitech USB Optical Mouse, rev 2.00/27.20, addr 3, iclass 3/1
 ums0 at uhidev1: 8 buttons, W and Z dirs
 wsmouse0 at ums0 mux 0

 --------------050508070702040007040902
 Content-Type: text/plain; charset=UTF-8;
  name="debug.dmesg"
 Content-Transfer-Encoding: 7bit
 Content-Disposition: attachment;
  filename="debug.dmesg"

 Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
     2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013
     The NetBSD Foundation, Inc.  All rights reserved.
 Copyright (c) 1982, 1986, 1989, 1991, 1993
     The Regents of the University of California.  All rights reserved.

 NetBSD 6.99.18 (DEBUG) #1: Thu Mar 28 21:24:41 CET 2013
 	root@apollo.paradoxon.local:/usr/devel/work/sys/arch/amd64/compile/DEBUG
 total memory = 8183 MB
 avail memory = 7938 MB
 timecounter: Timecounters tick every 10.000 msec
 cprng kernel: WARNING insufficient entropy at creation.
 timecounter: Timecounter "i8254" frequency 1193182 Hz quality 100
 SMBIOS rev. 2.4 @ 0xf0100 (39 entries)
 Gigabyte Technology Co., Ltd. P55A-UD3 ( )
 mainbus0 (root)
 mainbus0: scanning 0x9dc00 to 0x9dff0 for MP signature
 mainbus0: scanning 0x9d800 to 0x9dbf0 for MP signature
 mainbus0: scanning 0xf0000 to 0xffff0 for MP signature
 mainbus0: MP floating pointer found in bios at 0xf5780
 mainbus0: MP config table at 0xf0d00, 420 bytes long
 cpu0 at mainbus0 apid 0cpu0: 8 page colors
 cpu0: prelint0 0x700<vector=0x0,delmode=0x7,dest=0x0> 0x0<target=0x0>
 cpu0: prelint1 0x400<vector=0x0,delmode=0x4,dest=0x0> 0x0<target=0x0>
 cpu0: timer0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu0: pcint0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu0: lint0 0x700<vector=0x0,delmode=0x7,dest=0x0> 0x0<target=0x0>
 cpu0: lint1 0x400<vector=0x0,delmode=0x4,dest=0x0> 0x0<target=0x0>
 cpu0: err0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu0: calibrating local timer
 cpu0: apic clock running at 133 MHz
 timecounter: Timecounter "lapic" frequency 133299446 Hz quality -100
 : Intel(R) Core(TM) i5 CPU         750  @ 2.67GHz, id 0x106e5
 cpu0: PAT enabled
 cpu0: idle lwp at 0xfffffe821f702840, idle sp at 0xfffffe810e933c50
 cpu1 at mainbus0 apid 2cpu1: 2 page colors
 x86_ipi_init: ESR 00000040
 : Intel(R) Core(TM) i5 CPU         750  @ 2.67GHz, id 0x106e5
 cpu1: PAT enabled
 cpu1: idle lwp at 0xfffffe821eae3080, idle sp at 0xfffffe810e973c50
 cpu2 at mainbus0 apid 4cpu2: 2 page colors
 : Intel(R) Core(TM) i5 CPU         750  @ 2.67GHz, id 0x106e5
 cpu2: PAT enabled
 cpu2: idle lwp at 0xfffffe810e9690c0, idle sp at 0xfffffe810e9a3c50
 cpu3 at mainbus0 apid 6cpu3: 2 page colors
 : Intel(R) Core(TM) i5 CPU         750  @ 2.67GHz, id 0x106e5
 cpu3: PAT enabled
 cpu3: idle lwp at 0xfffffe810e9c2100, idle sp at 0xfffffe810e9c7c50
 ioapic0 at mainbus0 apid 2: pa 0xfec00000, virtual wire mode, version 20, 24 pins
 ioapic0: misconfigured as apic 0
 ioapic0: remapped to apic 2
 acpi0 at mainbus0: Intel ACPICA 20110623
 acpi0: X/RSDT: OemId <GBT   ,GBTUACPI,42302e31>, AslId <GBTU,01010101>
 ioapic0: int9 0xb060<vector=0x60,delmode=0x0,pending,actlo,level,dest=0x0> 0x0<target=0x0>
 mpacpi: found root PCI bus 0
 mpacpi: found subordinate bus 0
 mpacpi: found subordinate bus 0
 mpacpi: found subordinate bus 0
 mpacpi: 4 PCI busses
 mpacpi: ISA interrupt override 0 -> 2 (0/0)
 mpacpi: ISA interrupt override 9 -> 9 (1/3)
 mpacpi: configuring PCI bus 0 int routing
 mpacpi: configuring PCI bus 2 int routing
 mpacpi: configuring PCI bus 3 int routing
 mpacpi: configuring PCI bus 4 int routing
 ioapic0: pin 2 attached to isa0 irq 0 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 1 attached to isa0 irq 1 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 3 attached to isa0 irq 3 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 4 attached to isa0 irq 4 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 5 attached to isa0 irq 5 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 6 attached to isa0 irq 6 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 7 attached to isa0 irq 7 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 8 attached to isa0 irq 8 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 9 attached to isa0 irq 9 (type 0x0<type=0x0> flags 0xd<pol=0x1=Act Hi,trig=0x3=Level>)
 ioapic0: pin 10 attached to isa0 irq 10 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 11 attached to isa0 irq 11 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 12 attached to isa0 irq 12 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 13 attached to isa0 irq 13 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 14 attached to isa0 irq 14 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 15 attached to isa0 irq 15 (type 0x0<type=0x0> flags 0x0<pol=0x0,trig=0x0>)
 local apic: pin 1 attached to NMI (type 0x1<type=0x1=NMI> flags 0x0<pol=0x0,trig=0x0>)
 local apic: pin 1 attached to NMI (type 0x1<type=0x1=NMI> flags 0x0<pol=0x0,trig=0x0>)
 local apic: pin 1 attached to NMI (type 0x1<type=0x1=NMI> flags 0x0<pol=0x0,trig=0x0>)
 local apic: pin 1 attached to NMI (type 0x1<type=0x1=NMI> flags 0x0<pol=0x0,trig=0x0>)
 local apic: pin 1 attached to NMI (type 0x1<type=0x1=NMI> flags 0x0<pol=0x0,trig=0x0>)
 local apic: pin 1 attached to NMI (type 0x1<type=0x1=NMI> flags 0x0<pol=0x0,trig=0x0>)
 local apic: pin 1 attached to NMI (type 0x1<type=0x1=NMI> flags 0x0<pol=0x0,trig=0x0>)
 local apic: pin 1 attached to NMI (type 0x1<type=0x1=NMI> flags 0x0<pol=0x0,trig=0x0>)
 ioapic0: pin 16 attached to pci0 device 22 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 17 attached to pci0 device 22 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci0 device 22 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci0 device 22 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci0 device 0 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 17 attached to pci0 device 0 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci0 device 0 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci0 device 0 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 22 attached to pci0 device 27 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci0 device 1 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 17 attached to pci0 device 1 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci0 device 1 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci0 device 1 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci0 device 3 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 17 attached to pci0 device 3 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci0 device 3 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci0 device 3 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci0 device 5 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 17 attached to pci0 device 5 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci0 device 5 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci0 device 5 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci0 device 6 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 17 attached to pci0 device 6 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci0 device 6 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci0 device 6 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci0 device 7 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 17 attached to pci0 device 7 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci0 device 7 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci0 device 7 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci0 device 28 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 17 attached to pci0 device 28 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci0 device 28 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci0 device 28 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 23 attached to pci0 device 29 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci0 device 29 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci0 device 29 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci0 device 29 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci0 device 31 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci0 device 31 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci0 device 26 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 21 attached to pci0 device 26 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci0 device 26 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci2 device 0 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 17 attached to pci2 device 0 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci2 device 0 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci2 device 0 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 17 attached to pci3 device 0 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci3 device 0 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci3 device 0 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci3 device 0 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci4 device 2 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci4 device 2 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci4 device 2 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 20 attached to pci4 device 2 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci4 device 3 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci4 device 3 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 20 attached to pci4 device 3 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci4 device 3 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 16 attached to pci4 device 4 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 20 attached to pci4 device 4 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci4 device 4 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 18 attached to pci4 device 4 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci4 device 5 INT_A (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci4 device 5 INT_B (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci4 device 5 INT_C (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 ioapic0: pin 19 attached to pci4 device 5 INT_D (type 0x0<type=0x0> flags 0xf<pol=0x3=Act Lo,trig=0x3=Level>)
 acpi0: SCI interrupting at int 9
 acpi0: fixed power button present
 timecounter: Timecounter "ACPI-Fast" frequency 3579545 Hz quality 1000
 acpi0: ACPI-Fast 24-bit timer
 hpet0 at acpi0: high precision event timer (mem 0xfed00000-0xfed00400)
 timecounter: Timecounter "hpet0" frequency 14318180 Hz quality 2000
 acpibut0 at acpi0 (PWRB, PNP0C0C): ACPI Power Button
 SYSR (PNP0C02) [Motherboard Register Resources] at acpi0 not configured
 attimer1 at acpi0 (TMR, PNP0100): io 0x40-0x43
 pcppi1 at acpi0 (SPKR, PNP0800): io 0x61
 sysbeep0 at pcppi1
 UAR1 (PNP0501) [16550A-compatible COM port] at acpi0 not configured
 LPT1 (PNP0400) [Standard LPT printer port] at acpi0 not configured
 PMIO (PNP0C02) [Motherboard Register Resources] at acpi0 not configured
 EXPL (PNP0C02) [Motherboard Register Resources] at acpi0 not configured
 MEM (PNP0C01) [System Board] at acpi0 not configured
 FWH (INT0800) [Intel Firmware Hub Device] at acpi0 not configured
 acpi0: [MADT] LAPIC          : CPU ID 0, LAPIC ID 0, FLAGS 0x01
 acpi0: [MADT] LAPIC          : CPU ID 1, LAPIC ID 2, FLAGS 0x01
 acpi0: [MADT] LAPIC          : CPU ID 2, LAPIC ID 4, FLAGS 0x01
 acpi0: [MADT] LAPIC          : CPU ID 3, LAPIC ID 6, FLAGS 0x01
 acpi0: [MADT] LAPIC          : CPU ID 4, LAPIC ID 4, FLAGS 0x00
 acpi0: [MADT] LAPIC          : CPU ID 5, LAPIC ID 5, FLAGS 0x00
 acpi0: [MADT] LAPIC          : CPU ID 6, LAPIC ID 6, FLAGS 0x00
 acpi0: [MADT] LAPIC          : CPU ID 7, LAPIC ID 7, FLAGS 0x00
 acpi0: [MADT] I/O APIC       : ID 2, GSI 0, ADDR 0xFEC00000
 acpi0: [MADT] INTR OVERRIDE  : BUS 0, IRQ 0, GSI 2, FLAGS 0x00
 acpi0: [MADT] INTR OVERRIDE  : BUS 0, IRQ 9, GSI 9, FLAGS 0x0D
 acpi0: [MADT] LAPIC NMI      : CPU ID 0, LINT 1, FLAGS 0x00
 acpi0: [MADT] LAPIC NMI      : CPU ID 1, LINT 1, FLAGS 0x00
 acpi0: [MADT] LAPIC NMI      : CPU ID 2, LINT 1, FLAGS 0x00
 acpi0: [MADT] LAPIC NMI      : CPU ID 3, LINT 1, FLAGS 0x00
 acpi0: [MADT] LAPIC NMI      : CPU ID 4, LINT 1, FLAGS 0x00
 acpi0: [MADT] LAPIC NMI      : CPU ID 5, LINT 1, FLAGS 0x00
 acpi0: [MADT] LAPIC NMI      : CPU ID 6, LINT 1, FLAGS 0x00
 acpi0: [MADT] LAPIC NMI      : CPU ID 7, LINT 1, FLAGS 0x00
 acpi0: [FADT] FACS           : 0x00000000DF7D0000
 acpi0: [FADT] DSDT           : 0x00000000DF7D1180
 acpi0: [FADT] INT_MODEL      : 0x0000000000000001
 acpi0: [FADT] PM_PROFILE     : 0x0000000000000001
 acpi0: [FADT] SCI_INT        : 0x0000000000000009
 acpi0: [FADT] SMI_CMD        : 0x00000000000000B2
 acpi0: [FADT] ACPI_ENABLE    : 0x00000000000000A1
 acpi0: [FADT] ACPI_DISABLE   : 0x00000000000000A0
 acpi0: [FADT] S4BIOS_REQ     : 0x0000000000000000
 acpi0: [FADT] PSTATE_CNT     : 0x0000000000000034
 acpi0: [FADT] PM1a_EVT_BLK   : 0x0000000000000400
 acpi0: [FADT] PM1b_EVT_BLK   : 0x0000000000000000
 acpi0: [FADT] PM1a_CNT_BLK   : 0x0000000000000404
 acpi0: [FADT] PM1b_CNT_BLK   : 0x0000000000000000
 acpi0: [FADT] PM2_CNT_BLK    : 0x0000000000000450
 acpi0: [FADT] PM_TMR_BLK     : 0x0000000000000408
 acpi0: [FADT] GPE0_BLK       : 0x0000000000000420
 acpi0: [FADT] GPE1_BLK       : 0x0000000000000000
 acpi0: [FADT] PM1_EVT_LEN    : 0x0000000000000004
 acpi0: [FADT] PM1_CNT_LEN    : 0x0000000000000002
 acpi0: [FADT] PM2_CNT_LEN    : 0x0000000000000001
 acpi0: [FADT] PM_TMR_LEN     : 0x0000000000000004
 acpi0: [FADT] GPE0_BLK_LEN   : 0x0000000000000010
 acpi0: [FADT] GPE1_BLK_LEN   : 0x0000000000000000
 acpi0: [FADT] GPE1_BASE      : 0x0000000000000000
 acpi0: [FADT] CST_CNT        : 0x0000000000000000
 acpi0: [FADT] P_LVL2_LAT     : 0x0000000000000065
 acpi0: [FADT] P_LVL3_LAT     : 0x00000000000003E9
 acpi0: [FADT] FLUSH_SIZE     : 0x0000000000000000
 acpi0: [FADT] FLUSH_STRIDE   : 0x0000000000000000
 acpi0: [FADT] DUTY_OFFSET    : 0x0000000000000001
 acpi0: [FADT] DUTY_WIDTH     : 0x0000000000000003
 acpi0: [FADT] DAY_ALRM       : 0x000000000000000D
 acpi0: [FADT] MON_ALRM       : 0x0000000000000000
 acpi0: [FADT] CENTURY        : 0x0000000000000000
 acpi0: [FADT] IAPC_BOOT_ARCH : 0x0000000000000010
 acpi0: [FADT] RESET_VALUE    : 0x0000000000000000
 acpi0: [FADT] WBINVD         : 0x0000000000000001
 acpi0: [FADT] WBINVD_FLUSH   : 0x0000000000000000
 acpi0: [FADT] PROC_C1        : 0x0000000000000004
 acpi0: [FADT] P_LVL2_UP      : 0x0000000000000000
 acpi0: [FADT] PWR_BUTTON     : 0x0000000000000000
 acpi0: [FADT] SLP_BUTTON     : 0x0000000000000020
 acpi0: [FADT] FIX_RTC        : 0x0000000000000000
 acpi0: [FADT] RTC_S4         : 0x0000000000000080
 acpi0: [FADT] TMR_VAL_EXT    : 0x0000000000000000
 acpi0: [FADT] DCK_CAP        : 0x0000000000000000
 acpi0: [FADT] RESET_REG_SUP  : 0x0000000000000400
 acpi0: [FADT] SEALED_CASE    : 0x0000000000000000
 acpi0: [FADT] HEADLESS       : 0x0000000000000000
 acpi0: [FADT] CPU_SW_SLP     : 0x0000000000000000
 acpi0: [FADT] PCI_EXP_WAK    : 0x0000000000000000
 acpi0: [FADT] PLATFORM_CLK   : 0x0000000000000000
 acpi0: [FADT] S4_RTC_STS     : 0x0000000000000000
 acpi0: [FADT] REMOTE_POWER   : 0x0000000000000000
 acpi0: [FADT] APIC_CLUSTER   : 0x0000000000000000
 acpi0: [FADT] APIC_PHYSICAL  : 0x0000000000000000
 acpi0: [\   ] HID -          UID -    STA 0xFFFFFFFF ADR -
 acpi0: [CPU0] HID -          UID -    STA 0xFFFFFFFF ADR -
 acpi0: [CPU1] HID -          UID -    STA 0xFFFFFFFF ADR -
 acpi0: [CPU2] HID -          UID -    STA 0xFFFFFFFF ADR -
 acpi0: [CPU3] HID -          UID -    STA 0xFFFFFFFF ADR -
 acpi0: [CPU4] HID -          UID -    STA 0xFFFFFFFF ADR -
 acpi0: [CPU5] HID -          UID -    STA 0xFFFFFFFF ADR -
 acpi0: [CPU6] HID -          UID -    STA 0xFFFFFFFF ADR -
 acpi0: [CPU7] HID -          UID -    STA 0xFFFFFFFF ADR -
 acpi0: [_SB ] HID -          UID -    STA 0xFFFFFFFF ADR -
 acpi0: [PWRB] HID PNP0C0C    UID -    STA 0x0000000B ADR -
 acpi0: [PCI0] HID PNP0A03    UID 1    STA 0x0000000F ADR 0x0000000000000000
 acpi0: [PEX0] HID -          UID -    STA 0x0000000F ADR 0x00000000001C0000
 acpi0: [PEX1] HID -          UID -    STA 0x0000000F ADR 0x00000000001C0001
 acpi0: [PEX2] HID -          UID -    STA 0x0000000F ADR 0x00000000001C0002
 acpi0: [PEX3] HID -          UID -    STA 0x0000000F ADR 0x00000000001C0003
 acpi0: [PEX4] HID -          UID -    STA 0x0000000F ADR 0x00000000001C0004
 acpi0: [PEX5] HID -          UID -    STA 0x0000000F ADR 0x00000000001C0005
 acpi0: [PEX6] HID -          UID -    STA 0x0000000F ADR 0x00000000001C0006
 acpi0: [PEX7] HID -          UID -    STA 0x0000000F ADR 0x00000000001C0007
 acpi0: [HUB0] HID -          UID -    STA 0x0000000F ADR 0x00000000001E0000
 acpi0: [PX40] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000001F0000
 acpi0: [SYSR] HID PNP0C02    UID 1    STA 0xFFFFFFFF ADR -
 acpi0: [PIC ] HID PNP0000    UID -    STA 0xFFFFFFFF ADR -
 acpi0: [DMA1] HID PNP0200    UID -    STA 0xFFFFFFFF ADR -
 acpi0: [TMR ] HID PNP0100    UID -    STA 0xFFFFFFFF ADR -
 acpi0: [HPET] HID PNP0103    UID -    STA 0x0000000F ADR -
 acpi0: [RTC ] HID PNP0B00    UID -    STA 0xFFFFFFFF ADR -
 acpi0: [SPKR] HID PNP0800    UID -    STA 0xFFFFFFFF ADR -
 acpi0: [COPR] HID PNP0C04    UID -    STA 0xFFFFFFFF ADR -
 acpi0: [FDC0] HID PNP0700    UID -    STA 0x00000000 ADR -
 acpi0: [UAR1] HID PNP0501    UID 1    STA 0x0000000F ADR -
 acpi0: [LPT1] HID PNP0400    UID -    STA 0x0000000F ADR -
 acpi0: [ECP1] HID PNP0401    UID -    STA 0x00000000 ADR -
 acpi0: [PS2M] HID PNP0F13    UID -    STA 0x00000000 ADR -
 acpi0: [PS2K] HID PNP0303    UID -    STA 0x00000000 ADR -
 acpi0: [PSMR] HID PNP0C02    UID 3    STA 0x00000000 ADR -
 acpi0: [PMIO] HID PNP0C02    UID 2    STA 0xFFFFFFFF ADR -
 acpi0: [USB0] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000001D0000
 acpi0: [USB1] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000001D0001
 acpi0: [USB2] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000001D0002
 acpi0: [USB3] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000001D0003
 acpi0: [USB4] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000001A0000
 acpi0: [USB5] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000001A0001
 acpi0: [USB6] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000001A0002
 acpi0: [USBE] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000001D0007
 acpi0: [USE2] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000001A0007
 acpi0: [IDE1] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000001F0002
 acpi0: [PRIM] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000000
 acpi0: [DRV0] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000000
 acpi0: [DRV1] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000001
 acpi0: [SECD] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000001
 acpi0: [DRV0] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000000
 acpi0: [DRV1] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000001
 acpi0: [IDE2] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000001F0005
 acpi0: [PRIM] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000000
 acpi0: [DRV0] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000000
 acpi0: [DRV1] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000001
 acpi0: [SECD] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000001
 acpi0: [DRV0] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000000
 acpi0: [DRV1] HID -          UID -    STA 0xFFFFFFFF ADR 0x0000000000000001
 acpi0: [PX43] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000001F0003
 acpi0: [AZAL] HID -          UID -    STA 0xFFFFFFFF ADR 0x00000000001B0000
 acpi0: [LNKA] HID PNP0C0F    UID 1    STA 0x0000000B ADR -
 acpi0: [LNKB] HID PNP0C0F    UID 2    STA 0x0000000B ADR -
 acpi0: [LNKC] HID PNP0C0F    UID 3    STA 0x0000000B ADR -
 acpi0: [LNKD] HID PNP0C0F    UID 4    STA 0x0000000B ADR -
 acpi0: [LNKE] HID PNP0C0F    UID 5    STA 0x00000009 ADR -
 acpi0: [LNKF] HID PNP0C0F    UID 6    STA 0x0000000B ADR -
 acpi0: [LNK0] HID PNP0C0F    UID 7    STA 0x0000000B ADR -
 acpi0: [LNK1] HID PNP0C0F    UID 8    STA 0x0000000B ADR -
 acpi0: [EXPL] HID PNP0C02    UID 4    STA 0xFFFFFFFF ADR -
 acpi0: [MEM ] HID PNP0C01    UID -    STA 0xFFFFFFFF ADR -
 acpi0: [FWH ] HID INT0800    UID -    STA 0xFFFFFFFF ADR -
 acpi0: [_TZ ] HID -          UID -    STA 0xFFFFFFFF ADR -

 \     [06] []
     CPU0  [12] []
     CPU1  [12] []
     CPU2  [12] []
     CPU3  [12] []
     CPU4  [12] []
     CPU5  [12] []
     CPU6  [12] []
     CPU7  [12] []
     _SB   [06] []
         PWRB  [06] [] <acpibut0>
         PCI0  [06] [] (PCI) @ 0x00:0x00:0x00:0x00 [R] [B] -> 0x00:0x00
             PEX0  [06] [] (PCI) @ 0x00:0x00:0x1C:0x00 [B] -> 0x00:0x02
             PEX1  [06] [] (PCI) @ 0x00:0x00:0x1C:0x01 [B] -> 0x00:0x03
             PEX2  [06] [] (PCI) @ 0x00:0x00:0x1C:0x02
             PEX3  [06] [] (PCI) @ 0x00:0x00:0x1C:0x03
             PEX4  [06] [] (PCI) @ 0x00:0x00:0x1C:0x04
             PEX5  [06] [] (PCI) @ 0x00:0x00:0x1C:0x05
             PEX6  [06] [] (PCI) @ 0x00:0x00:0x1C:0x06
             PEX7  [06] [] (PCI) @ 0x00:0x00:0x1C:0x07
             HUB0  [06] [] (PCI) @ 0x00:0x00:0x1E:0x00 [B] -> 0x00:0x04
             PX40  [06] [] (PCI) @ 0x00:0x00:0x1F:0x00
                 SYSR  [06] []
                 PIC   [06] []
                 DMA1  [06] []
                 TMR   [06] [] <attimer1>
                 HPET  [06] []
                 RTC   [06] []
                 SPKR  [06] [] <pcppi1>
                 COPR  [06] []
                 FDC0  [06] []
                 UAR1  [06] []
                 LPT1  [06] []
                 ECP1  [06] []
                 PS2M  [06] []
                 PS2K  [06] []
                 PSMR  [06] []
                 PMIO  [06] []
             USB0  [06] [] (PCI) @ 0x00:0x00:0x1D:0x00
             USB1  [06] [] (PCI) @ 0x00:0x00:0x1D:0x01
             USB2  [06] [] (PCI) @ 0x00:0x00:0x1D:0x02
             USB3  [06] [] (PCI) @ 0x00:0x00:0x1D:0x03
             USB4  [06] [] (PCI) @ 0x00:0x00:0x1A:0x00
             USB5  [06] [] (PCI) @ 0x00:0x00:0x1A:0x01
             USB6  [06] [] (PCI) @ 0x00:0x00:0x1A:0x02
             USBE  [06] [] (PCI) @ 0x00:0x00:0x1D:0x07
             USE2  [06] [] (PCI) @ 0x00:0x00:0x1A:0x07
             IDE1  [06] [] (PCI) @ 0x00:0x00:0x1F:0x02
                 PRIM  [06] []
                     DRV0  [06] []
                     DRV1  [06] []
                 SECD  [06] []
                     DRV0  [06] []
                     DRV1  [06] []
             IDE2  [06] [] (PCI) @ 0x00:0x00:0x1F:0x05
                 PRIM  [06] []
                     DRV0  [06] []
                     DRV1  [06] []
                 SECD  [06] []
                     DRV0  [06] []
                     DRV1  [06] []
             PX43  [06] [] (PCI) @ 0x00:0x00:0x1F:0x03
             AZAL  [06] [] (PCI) @ 0x00:0x00:0x1B:0x00
             LNKA  [06] []
             LNKB  [06] []
             LNKC  [06] []
             LNKD  [06] []
             LNKE  [06] []
             LNKF  [06] []
             LNK0  [06] []
             LNK1  [06] []
             EXPL  [06] []
         MEM   [06] []
         FWH   [06] []
     _TZ   [06] []
 attimer1: attached to pcppi1
 pci0 at mainbus0 bus 0: configuration mode 1
 mainbus0: added to list as bus 0
 pci0: i/o space, memory space enabled, rd/line, rd/mult, wr/inv ok
 pchb0 at pci0 dev 0 function 0WARNING: module error: vfs load failed for `pciverbose', error 45
 WARNING: module error: vfs load failed for `pciverbose', error 45
 : vendor 0x8086 product 0xd131 (rev. 0x11)
 ppb0 at pci0 dev 3 function 0WARNING: module error: vfs load failed for `pciverbose', error 45
 WARNING: module error: vfs load failed for `pciverbose', error 45
 : vendor 0x8086 product 0xd138 (rev. 0x11)
 ppb0: PCI Express 2.0 <Root Port of PCI-E Root Complex> x16 @ 5.0Gb/s
 ppb0: link is x16 @ 2.5Gb/s
 pci1 at ppb0 bus 1
 ppb0: added to list as bus 1
 pci1: i/o space, memory space enabled, rd/line, wr/inv ok
 vga0 at pci1 dev 0 function 0WARNING: module error: vfs load failed for `pciverbose', error 45
 WARNING: module error: vfs load failed for `pciverbose', error 45
 : vendor 0x1002 product 0x954f (rev. 0x00)
 wsdisplay0 at vga0 kbdmux 1: console (80x25, vt100 emulation)
 wsmux1: connecting to wsdisplay0
 radeondrm0 at vga0pci_mem_find: void region
 : ATI Radeon HD 4350
 radeondrm0: Initialized radeon 1.29.0 20080613
 hdaudio0 at pci1 dev 0 function 1: HD Audio Controller
 ioapic0: int17 0xa070<vector=0x70,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 hdaudio0: interrupting at ioapic0 pin 17
 hdafg0 at hdaudio0 vendor 0x1002 product 0xAA01 nid 0x01: ATI R6xx HDMI
 hdafg0: HDMI00 2ch: Digital Out [Jack]
     nid=03 [pin: Digital Out (Jack)]
            nid=02 [audio output] [source: dac]
 hdafg0: 2ch/0ch 32000Hz 44100Hz 48000Hz PCM16 AC3
 WARNING: module error: vfs load failed for `pciverbose', error 45
 WARNING: module error: vfs load failed for `pciverbose', error 45
 vendor 0x8086 product 0xd155 (miscellaneous system, revision 0x11) at pci0 dev 8 function 0 not configured
 WARNING: module error: vfs load failed for `pciverbose', error 45
 WARNING: module error: vfs load failed for `pciverbose', error 45
 vendor 0x8086 product 0xd156 (miscellaneous system, revision 0x11) at pci0 dev 8 function 1 not configured
 WARNING: module error: vfs load failed for `pciverbose', error 45
 WARNING: module error: vfs load failed for `pciverbose', error 45
 vendor 0x8086 product 0xd157 (miscellaneous system, revision 0x11) at pci0 dev 8 function 2 not configured
 WARNING: module error: vfs load failed for `pciverbose', error 45
 WARNING: module error: vfs load failed for `pciverbose', error 45
 vendor 0x8086 product 0xd158 (miscellaneous system, revision 0x11) at pci0 dev 8 function 3 not configured
 WARNING: module error: vfs load failed for `pciverbose', error 45
 WARNING: module error: vfs load failed for `pciverbose', error 45
 vendor 0x8086 product 0xd150 (miscellaneous system, revision 0x11) at pci0 dev 16 function 0 not configured
 WARNING: module error: vfs load failed for `pciverbose', error 45
 WARNING: module error: vfs load failed for `pciverbose', error 45
 vendor 0x8086 product 0xd151 (miscellaneous system, revision 0x11) at pci0 dev 16 function 1 not configured
 uhci0 at pci0 dev 26 function 0WARNING: module error: vfs load failed for `pciverbose', error 45
 WARNING: module error: vfs load failed for `pciverbose', error 45
 : vendor 0x8086 product 0x3b3b (rev. 0x06)
 ioapic0: int16 0xa071<vector=0x71,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 uhci0: interrupting at ioapic0 pin 16
 WARNING: module error: vfs load failed for `pciverbose', error 45
 usb0 at uhci0: USB revision 1.0
 usb0: WARNING: power management not supported
 uhci1 at pci0 dev 26 function 1WARNING: module error: vfs load failed for `pciverbose', error 45
 WARNING: module error: vfs load failed for `pciverbose', error 45
 : vendor 0x8086 product 0x3b3e (rev. 0x06)
 ioapic0: int21 0xa072<vector=0x72,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 uhci1: interrupting at ioapic0 pin 21
 WARNING: module error: vfs load failed for `pciverbose', error 45
 usb1 at uhci1: USB revision 1.0
 usb1: WARNING: power management not supported
 uhci2 at pci0 dev 26 function 2WARNING: module error: vfs load failed for `pciverbose', error 45
 WARNING: module error: vfs load failed for `pciverbose', error 45
 : vendor 0x8086 product 0x3b3f (rev. 0x06)
 ioapic0: int18 0xa073<vector=0x73,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 uhci2: interrupting at ioapic0 pin 18
 WARNING: module error: vfs load failed for `pciverbose', error 45
 usb2 at uhci2: USB revision 1.0
 usb2: WARNING: power management not supported
 ehci0 at pci0 dev 26 function 7WARNING: module error: vfs load failed for `pciverbose', error 45
 WARNING: module error: vfs load failed for `pciverbose', error 45
 : vendor 0x8086 product 0x3b3c (rev. 0x06)
 ioapic0: int18 0xa073<vector=0x73,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 ehci0: interrupting at ioapic0 pin 18
 WARNING: module error: vfs load failed for `pciverbose', error 45
 ehci0: BIOS has given up ownership
 ehci0: EHCI version 1.0
 ehci0: companion controllers, 2 ports each: uhci0 uhci1 uhci2
 usb3 at ehci0: USB revision 2.0
 usb3: WARNING: power management not supported
 hdaudio1 at pci0 dev 27 function 0: HD Audio Controller
 ioapic0: int22 0xa074<vector=0x74,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 hdaudio1: interrupting at ioapic0 pin 22
 hdafg1 at hdaudio1 vendor 0x10EC product 0x0888 nid 0x01: Realtek ALC888
 hdafg1: DAC00 8ch: Speaker [Jack]
     nid=14 [pin: Speaker (Green Jack)]
            nid=0C [audio mixer] [source: dac, record]
                   nid=02 [audio output] [source: dac]
                   nid=0B [audio mixer] [source: record]
     nid=16 [pin: Speaker (Orange Jack)]
            nid=0D [audio mixer] [source: dac, record]
                   nid=03 [audio output] [source: dac]
                   nid=0B [audio mixer] [source: record]
     nid=15 [pin: Speaker (Black Jack)]
            nid=0E [audio mixer] [source: dac, record]
                   nid=04 [audio output] [source: dac]
                   nid=0B [audio mixer] [source: record]
     nid=17 [pin: Speaker (Grey Jack)]
            nid=0F [audio mixer] [source: dac, record]
                   nid=05 [audio output] [source: dac]
                   nid=0B [audio mixer] [source: record]
 hdafg1: DAC01 2ch: HP Out [Jack]
     nid=1B [pin: HP Out (Green Jack)]
            nid=26 [audio mixer] [source: dac, record]
                   nid=25 [audio output] [source: dac]
                   nid=0B [audio mixer] [source: record]
 hdafg1: DIG02 2ch: SPDIF Out [Jack]
     nid=1E [pin: SPDIF Out (Orange Jack)]
            nid=06 [audio output] [source: dac]
 hdafg1: ADC03 2ch: Line In [Jack], Mic In [Jack]
     nid=18 [pin: Mic In (Pink Jack)]
     nid=1A [pin: Line In (Blue Jack)]
 hdafg1: ADC04 2ch: Mic In [Jack]
     nid=19 [pin: Mic In (Pink Jack)]
 hdafg1: DIG-In05 2ch: SPDIF In [Jack]
     nid=1F [pin: SPDIF In (Yellow Jack)]
 hdafg1: 8ch/2ch 44100Hz 48000Hz 96000Hz 192000Hz PCM16 PCM20 PCM24 AC3
 audio0 at hdafg1: full duplex, playback, capture, independent
 ppb1 at pci0 dev 28 function 0WARNING: module error: vfs load failed for `pciverbose', error 45
 WARNING: module error: vfs load failed for `pciverbose', error 45
 : vendor 0x8086 product 0x3b42 (rev. 0x06)
 ppb1: PCI Express 2.0 <Root Port of PCI-E Root Complex> x1 @ 2.5Gb/s
 pci2 at ppb1 bus 2
 ppb1: added to list as bus 2
 pci2: i/o space, memory space enabled, rd/line, wr/inv ok
 ppb2 at pci0 dev 28 function 1WARNING: module error: vfs load failed for `pciverbose', error 45
 WARNING: module error: vfs load failed for `pciverbose', error 45
 : vendor 0x8086 product 0x3b44 (rev. 0x06)
 ppb2: PCI Express 2.0 <Root Port of PCI-E Root Complex> x1 @ 2.5Gb/s
 pci3 at ppb2 bus 3
 ppb2: added to list as bus 3
 pci3: i/o space, memory space enabled, rd/line, wr/inv ok
 re0 at pci3 dev 0 function 0pci_mem_find: void region
 : RealTek 8168/8111 PCIe Gigabit Ethernet (rev. 0x03)
 ioapic0: int17 0xb070<vector=0x70,delmode=0x0,pending,actlo,level,dest=0x0> 0x0<target=0x0>
 re0: interrupting at ioapic0 pin 17
 re0: Ethernet address 6c:f0:49:e2:00:de
 re0: using 256 tx descriptors
 rgephy0 at re0 phy 7: RTL8169S/8110S/8211 1000BASE-T media interface, rev. 2
 rgephy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, 1000baseT, 1000baseT-FDX, auto
 uhci3 at pci0 dev 29 function 0WARNING: module error: vfs load failed for `pciverbose', error 45
 WARNING: module error: vfs load failed for `pciverbose', error 45
 : vendor 0x8086 product 0x3b36 (rev. 0x06)
 ioapic0: int23 0xa075<vector=0x75,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 uhci3: interrupting at ioapic0 pin 23
 WARNING: module error: vfs load failed for `pciverbose', error 45
 usb4 at uhci3: USB revision 1.0
 usb4: WARNING: power management not supported
 uhci4 at pci0 dev 29 function 1WARNING: module error: vfs load failed for `pciverbose', error 45
 WARNING: module error: vfs load failed for `pciverbose', error 45
 : vendor 0x8086 product 0x3b37 (rev. 0x06)
 ioapic0: int19 0xa076<vector=0x76,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 uhci4: interrupting at ioapic0 pin 19
 WARNING: module error: vfs load failed for `pciverbose', error 45
 usb5 at uhci4: USB revision 1.0
 usb5: WARNING: power management not supported
 uhci5 at pci0 dev 29 function 2WARNING: module error: vfs load failed for `pciverbose', error 45
 WARNING: module error: vfs load failed for `pciverbose', error 45
 : vendor 0x8086 product 0x3b38 (rev. 0x06)
 ioapic0: int18 0xb073<vector=0x73,delmode=0x0,pending,actlo,level,dest=0x0> 0x0<target=0x0>
 uhci5: interrupting at ioapic0 pin 18
 WARNING: module error: vfs load failed for `pciverbose', error 45
 usb6 at uhci5: USB revision 1.0
 usb6: WARNING: power management not supported
 uhci6 at pci0 dev 29 function 3WARNING: module error: vfs load failed for `pciverbose', error 45
 WARNING: module error: vfs load failed for `pciverbose', error 45
 : vendor 0x8086 product 0x3b39 (rev. 0x06)
 ioapic0: int16 0xa071<vector=0x71,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 uhci6: interrupting at ioapic0 pin 16
 WARNING: module error: vfs load failed for `pciverbose', error 45
 usb7 at uhci6: USB revision 1.0
 usb7: WARNING: power management not supported
 ehci1 at pci0 dev 29 function 7WARNING: module error: vfs load failed for `pciverbose', error 45
 WARNING: module error: vfs load failed for `pciverbose', error 45
 : vendor 0x8086 product 0x3b34 (rev. 0x06)
 ioapic0: int23 0xa075<vector=0x75,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 ehci1: interrupting at ioapic0 pin 23
 WARNING: module error: vfs load failed for `pciverbose', error 45
 ehci1: BIOS has given up ownership
 ehci1: EHCI version 1.0
 ehci1: companion controllers, 2 ports each: uhci3 uhci4 uhci5 uhci6
 usb8 at ehci1: USB revision 2.0
 usb8: WARNING: power management not supported
 ppb3 at pci0 dev 30 function 0WARNING: module error: vfs load failed for `pciverbose', error 45
 WARNING: module error: vfs load failed for `pciverbose', error 45
 : vendor 0x8086 product 0x244e (rev. 0xa6)
 pci4 at ppb3 bus 4
 ppb3: added to list as bus 4
 pci4: i/o space, memory space enabled
 ichlpcib0 at pci0 dev 31 function 0WARNING: module error: vfs load failed for `pciverbose', error 45
 WARNING: module error: vfs load failed for `pciverbose', error 45
 : vendor 0x8086 product 0x3b02 (rev. 0x06)
 timecounter: Timecounter "ichlpcib0" frequency 3579545 Hz quality 1000
 ichlpcib0: 24-bit timer
 ichlpcib0: TCO (watchdog) timer configured.
 ahcisata0 at pci0 dev 31 function 2WARNING: module error: vfs load failed for `pciverbose', error 45
 WARNING: module error: vfs load failed for `pciverbose', error 45
 : vendor 0x8086 product 0x3b22 (rev. 0x06)
 ioapic0: int19 0xa076<vector=0x76,delmode=0x0,actlo,level,dest=0x0> 0x0<target=0x0>
 ahcisata0: interrupting at ioapic0 pin 19
 ahcisata0: 64-bit DMA
 ahcisata0: AHCI revision 1.30, 6 ports, 32 slots, CAP 0xef22ff45<EMS,PSC,SSC,PMD,SPM,ISS=0x2=Gen2,SCLO,SAL,SALP,SSS,SSNTF,SNCQ,S64A>
 atabus0 at ahcisata0 channel 0
 atabus1 at ahcisata0 channel 1
 atabus2 at ahcisata0 channel 2
 atabus3 at ahcisata0 channel 3
 atabus4 at ahcisata0 channel 4
 atabus5 at ahcisata0 channel 5
 ichsmb0 at pci0 dev 31 function 3WARNING: module error: vfs load failed for `pciverbose', error 45
 WARNING: module error: vfs load failed for `pciverbose', error 45
 : vendor 0x8086 product 0x3b30 (rev. 0x06)
 ioapic0: int18 0xf073<vector=0x73,delmode=0x0,pending,actlo,irrpending,level,dest=0x0> 0x0<target=0x0>
 ichsmb0: interrupting at ioapic0 pin 18
 iic0 at ichsmb0: I2C bus
 isa0 at ichlpcib0
 pckbc0 at isa0 port 0x60-0x64
 pckbdprobe: reset error 5
 acpicpu0 at cpu0: ACPI CPU
 acpicpu0: C1: FFH, lat   1 us, pow  1000 mW
 acpicpu0: C2: FFH, lat  64 us, pow   500 mW
 acpicpu0: C3: FFH, lat  96 us, pow   350 mW
 acpicpu0: P0: FFH, lat  10 us, pow 95000 mW, 2661 MHz, turbo boost
 acpicpu0: P1: FFH, lat  10 us, pow 95000 mW, 2660 MHz
 acpicpu0: P2: FFH, lat  10 us, pow 78000 mW, 2527 MHz
 acpicpu0: P3: FFH, lat  10 us, pow 70000 mW, 2394 MHz
 acpicpu0: P4: FFH, lat  10 us, pow 57000 mW, 2261 MHz
 acpicpu0: P5: FFH, lat  10 us, pow 51000 mW, 2128 MHz
 acpicpu0: P6: FFH, lat  10 us, pow 41000 mW, 1995 MHz
 acpicpu0: P7: FFH, lat  10 us, pow 36000 mW, 1862 MHz
 acpicpu0: P8: FFH, lat  10 us, pow 28000 mW, 1729 MHz
 acpicpu0: P9: FFH, lat  10 us, pow 25000 mW, 1596 MHz
 acpicpu0: P10: FFH, lat  10 us, pow 19000 mW, 1463 MHz
 acpicpu0: P11: FFH, lat  10 us, pow 17000 mW, 1330 MHz
 acpicpu0: P12: FFH, lat  10 us, pow 13000 mW, 1197 MHz
 acpicpu0: T0: FFH, lat   1 us, pow   760 mW, 100 %
 acpicpu0: T1: FFH, lat   1 us, pow   665 mW,  88 %
 acpicpu0: T2: FFH, lat   1 us, pow   570 mW,  75 %
 acpicpu0: T3: FFH, lat   1 us, pow   475 mW,  63 %
 acpicpu0: T4: FFH, lat   1 us, pow   380 mW,  50 %
 acpicpu0: T5: FFH, lat   1 us, pow   285 mW,  38 %
 acpicpu0: T6: FFH, lat   1 us, pow   190 mW,  25 %
 acpicpu0: T7: FFH, lat   1 us, pow    95 mW,  13 %
 acpicpu0: id 0, lapic id 0, cap 0x0bfd, flags 0x002aea97
 acpicpu0: P-state coordination: 4 CPUs, domain 0, type HW_ALL
 acpicpu0: T-state coordination: 1 CPUs, domain 0, type SW_ANY
 acpicpu1 at cpu1: ACPI CPU
 acpicpu1: id 1, lapic id 2, cap 0x0bfd, flags 0x002aea97
 acpicpu1: P-state coordination: 4 CPUs, domain 0, type HW_ALL
 acpicpu1: T-state coordination: 1 CPUs, domain 2, type SW_ANY
 acpicpu2 at cpu2: ACPI CPU
 acpicpu2: id 2, lapic id 4, cap 0x0bfd, flags 0x002aea97
 acpicpu2: P-state coordination: 4 CPUs, domain 0, type HW_ALL
 acpicpu2: T-state coordination: 1 CPUs, domain 4, type SW_ANY
 acpicpu3 at cpu3: ACPI CPU
 acpicpu3: id 3, lapic id 6, cap 0x0bfd, flags 0x002aea97
 acpicpu3: P-state coordination: 4 CPUs, domain 0, type HW_ALL
 acpicpu3: T-state coordination: 1 CPUs, domain 6, type SW_ANY
 Initializing SSP: a89b142166914644 7c0fb658a6cec6ec 547c406591205868 5c13706f6d079bb6 f22b9c396857e25a 514e3610baeb9f52 d58b374278a33846 65d9f8b191b0a432 
 timecounter: Timecounter "clockinterrupt" frequency 100 Hz quality 0
 cpu1: prelint0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu1: prelint1 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu1: timer0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu1: pcint0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu1: lint0 0x10700<vector=0x0,delmode=0x7,masked,dest=0x0> 0x0<target=0x0>
 cpu1: lint1 0x400<vector=0x0,delmode=0x4,dest=0x0> 0x0<target=0x0>
 cpu1: err0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu1: TSC skew=-11 drift=3
 cpu2: prelint0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu2: prelint1 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu2: timer0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu2: pcint0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu2: lint0 0x10700<vector=0x0,delmode=0x7,masked,dest=0x0> 0x0<target=0x0>
 cpu2: lint1 0x400<vector=0x0,delmode=0x4,dest=0x0> 0x0<target=0x0>
 cpu2: err0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu2: TSC skew=0 drift=3
 cpu3: prelint0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu3: prelint1 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu3: timer0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu3: pcint0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu3: lint0 0x10700<vector=0x0,delmode=0x7,masked,dest=0x0> 0x0<target=0x0>
 cpu3: lint1 0x400<vector=0x0,delmode=0x4,dest=0x0> 0x0<target=0x0>
 cpu3: err0 0x10000<vector=0x0,delmode=0x0,masked,dest=0x0> 0x0<target=0x0>
 cpu3: TSC skew=2 drift=3
 cpu1: running
 cpu2: running
 cpu3: running
 timecounter: Timecounter "TSC" frequency 2664877690 Hz quality 3000
 uhub0 at usb0: vendor 0x8086 UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
 uhub0: 2 ports with 2 removable, self powered
 uhub1 at usb1: vendor 0x8086 UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
 uhub1: 2 ports with 2 removable, self powered
 uhub2 at usb2: vendor 0x8086 UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
 uhub2: 2 ports with 2 removable, self powered
 uhub3 at usb3: vendor 0x8086 EHCI root hub, class 9/0, rev 2.00/1.00, addr 1
 uhub3: 6 ports with 6 removable, self powered
 uhub4 at usb4: vendor 0x8086 UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
 uhub4: 2 ports with 2 removable, self powered
 uhub5 at usb5: vendor 0x8086 UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
 uhub5: 2 ports with 2 removable, self powered
 uhub6 at usb7: vendor 0x8086 UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
 uhub6: 2 ports with 2 removable, self powered
 uhub7 at usb6: vendor 0x8086 UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
 uhub7: 2 ports with 2 removable, self powered
 ahcisata0 port 0: device present, speed: 3.0Gb/s
 ahcisata0 port 1: device present, speed: 3.0Gb/s
 ahcisata0 port 2: device present, speed: 3.0Gb/s
 acpicpu3: ACPI CPUs started
 uhub8 at usb8: vendor 0x8086 EHCI root hub, class 9/0, rev 2.00/1.00, addr 1
 uhub8: 8 ports with 8 removable, self powered
 ehci0: handing over low speed device on port 1 to uhci0
 uhub3: port 1, device disappeared after reset
 ehci0: handing over low speed device on port 2 to uhci0
 uhub3: port 2, device disappeared after reset
 wd0 at atabus0 drive 0
 wd0: <WDC WD1000DHTZ-04N21V0>
 wd0: drive supports 16-sector PIO transfers, LBA48 addressing
 wd0: 931 GB, 1938021 cyl, 16 head, 63 sec, 512 bytes/sect x 1953525168 sectors
 wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133)
 wd0(ahcisata0:0:0): using PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133) (using DMA)
 wd1 at atabus1 drive 0
 wd1: <WDC WD5000AAKS-22V1A0>
 wd1: drive supports 16-sector PIO transfers, LBA48 addressing
 wd1: 465 GB, 969021 cyl, 16 head, 63 sec, 512 bytes/sect x 976773168 sectors
 wd1: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133)
 wd1(ahcisata0:1:0): using PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133) (using DMA)
 wd2 at atabus2 drive 0
 wd2: <ST3500418AS>
 wd2: drive supports 16-sector PIO transfers, LBA48 addressing
 wd2: 465 GB, 969021 cyl, 16 head, 63 sec, 512 bytes/sect x 976773168 sectors
 wd2: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133)
 wd2(ahcisata0:2:0): using PIO mode 4, DMA mode 2, Ultra-DMA mode 6 (Ultra/133) (using DMA)
 pad: requested 1 units
 pad0: outputs: 44100Hz, 16-bit, stereo
 audio1 at pad0: half duplex, playback, capture
 cprng sysctl: WARNING insufficient entropy at creation.
 boot device: wd0
 root on wd0a dumps on wd0b
 dump_misc_init: max_paddr = 0x220000000
 mountroot: trying ffs...
 root file system type: ffs
 init: copying out path `/sbin/init' 11
 WARNING: module error: vfs load failed for `com', error 2
 WARNING: module error: vfs load failed for `com', error 2
 WARNING: module error: vfs load failed for `com', error 2
 WARNING: module error: vfs load failed for `com', error 2
 WARNING: module error: vfs load failed for `if_re', error 2
 uhidev0 at uhub0 port 1 configuration 1 interface 0
 uhidev0: Logitech Logitech USB Keyboard, rev 1.10/28.00, addr 2, iclass 3/1
 ukbd0 at uhidev0: 8 modifier keys, 6 key codes
 wskbd0 at ukbd0: console keyboard, using wsdisplay0
 wsdisplay0: screen 1 added (80x25, vt100 emulation)
 wsdisplay0: screen 2 added (80x25, vt100 emulation)
 wsdisplay0: screen 3 added (80x25, vt100 emulation)
 wsdisplay0: screen 4 added (80x25, vt100 emulation)
 uhidev1 at uhub0 port 2 configuration 1 interface 0
 uhidev1: Logitech USB Optical Mouse, rev 2.00/27.20, addr 3, iclass 3/1
 ums0 at uhidev1: 8 buttons, W and Z dirs
 wsmouse0 at ums0 mux 0

 --------------050508070702040007040902
 Content-Type: application/octet-stream;
  name="acpidump"
 Content-Transfer-Encoding: base64
 Content-Disposition: attachment;
  filename="acpidump"

 LyoKICBSU0QgUFRSOiBPRU09R0JULCBBQ1BJX1Jldj0xLjB4ICgwKQoJUlNEVD0weGRmN2Qx
 MDQwLCBja3N1bT0yNDgKICovCi8qCiAgUlNEVDogTGVuZ3RoPTY0LCBSZXZpc2lvbj0xLCBD
 aGVja3N1bT0zNywKCU9FTUlEPUdCVCwgT0VNIFRhYmxlIElEPUdCVFVBQ1BJLCBPRU0gUmV2
 aXNpb249MHg0MjMwMmUzMSwKCUNyZWF0b3IgSUQ9R0JUVSwgQ3JlYXRvciBSZXZpc2lvbj0w
 eDEwMTAxMDEKCUVudHJpZXM9eyAweGRmN2QxMGMwLCAweGRmN2Q1NWMwLCAweGRmN2Q1NjQw
 LCAweGRmN2Q1NjgwLCAweGRmN2Q1YmUwLCAweGRmN2Q1NGMwLCAweGRmN2Q2NjQwIH0KICov
 Ci8qCiAgRkFDUDogTGVuZ3RoPTExNiwgUmV2aXNpb249MSwgQ2hlY2tzdW09MTU3LAoJT0VN
 SUQ9R0JULCBPRU0gVGFibGUgSUQ9R0JUVUFDUEksIE9FTSBSZXZpc2lvbj0weDQyMzAyZTMx
 LAoJQ3JlYXRvciBJRD1HQlRVLCBDcmVhdG9yIFJldmlzaW9uPTB4MTAxMDEwMQogCUZBQ1M9
 MHhkZjdkMDAwMCwgRFNEVD0weGRmN2QxMTgwCglJTlRfTU9ERUw9QVBJQwoJUHJlZmVycmVk
 X1BNX1Byb2ZpbGU9RGVza3RvcCAoMSkKCVNDSV9JTlQ9OQoJU01JX0NNRD0weGIyLCBBQ1BJ
 X0VOQUJMRT0weGExLCBBQ1BJX0RJU0FCTEU9MHhhMCwgUzRCSU9TX1JFUT0weDAKCVBTVEFU
 RV9DTlQ9MHgzNAoJUE0xYV9FVlRfQkxLPTB4NDAwLTB4NDAzCglQTTFhX0NOVF9CTEs9MHg0
 MDQtMHg0MDUKCVBNMl9DTlRfQkxLPTB4NDUwLTB4NDUwCglQTV9UTVJfQkxLPTB4NDA4LTB4
 NDBiCglHUEUwX0JMSz0weDQyMC0weDQyZgoJUF9MVkwyX0xBVD0xMDEgdXMsIFBfTFZMM19M
 QVQ9MTAwMSB1cwoJRkxVU0hfU0laRT0wLCBGTFVTSF9TVFJJREU9MAoJRFVUWV9PRkZTRVQ9
 MSwgRFVUWV9XSURUSD0zCglEQVlfQUxSTT0xMywgTU9OX0FMUk09MCwgQ0VOVFVSWT0wCglJ
 QVBDX0JPT1RfQVJDSD17Tk9fQVNQTX0KCUZsYWdzPXtXQklOVkQsQzFfU1VQUE9SVEVELFNM
 RUVQX0JVVFRPTixTNF9SVENfV0FLRSxSRVNFVF9SRUdJU1RFUn0KCVJFU0VUX1JFRz0weDAw
 MDAwMDAwOjBbMF0gKE1lbW9yeSksIFJFU0VUX1ZBTFVFPTAKICovCi8qCiAgRkFDUzoJTGVu
 Z3RoPTY0LCBId1NpZz0weDAwMDAwMDAwLCBGaXJtX1dha2VfVmVjPTB4MDAwMDAwMDAKCUds
 b2JhbF9Mb2NrPQoJRmxhZ3M9CglWZXJzaW9uPTAKICovCi8qCiAgRFNEVDogTGVuZ3RoPTE3
 MDkyLCBSZXZpc2lvbj0xLCBDaGVja3N1bT0xNDYsCglPRU1JRD1HQlQsIE9FTSBUYWJsZSBJ
 RD1HQlRVQUNQSSwgT0VNIFJldmlzaW9uPTB4MTAwMCwKCUNyZWF0b3IgSUQ9TVNGVCwgQ3Jl
 YXRvciBSZXZpc2lvbj0weDEwMDAwMGMKICovCi8qCiAgSFBFVDogTGVuZ3RoPTU2LCBSZXZp
 c2lvbj0xLCBDaGVja3N1bT0yMzIsCglPRU1JRD1HQlQsIE9FTSBUYWJsZSBJRD1HQlRVQUNQ
 SSwgT0VNIFJldmlzaW9uPTB4NDIzMDJlMzEsCglDcmVhdG9yIElEPUdCVFUsIENyZWF0b3Ig
 UmV2aXNpb249MHg5OAoJSFBFVCBOdW1iZXI9MAoJQUREUj0weGZlZDAwMDAwOjBbMF0gKE1l
 bW9yeSkJSFcgUmV2PTB4MQoJQ29tcGFyYXRvcnM9MgoJQ291bnRlciBTaXplPTEKCUxlZ2Fj
 eSBJUlEgcm91dGluZyBjYXBhYmxlPXtUUlVFfQoJUENJIFZlbmRvciBJRD0weDgwODYKCU1p
 bmltYWwgVGljaz0xNgogKi8KLyoKICBNQ0ZHOiBMZW5ndGg9NjAsIFJldmlzaW9uPTEsIENo
 ZWNrc3VtPTIyNCwKCU9FTUlEPUdCVCwgT0VNIFRhYmxlIElEPUdCVFVBQ1BJLCBPRU0gUmV2
 aXNpb249MHg0MjMwMmUzMSwKCUNyZWF0b3IgSUQ9R0JUVSwgQ3JlYXRvciBSZXZpc2lvbj0w
 eDEwMTAxMDEKCglCYXNlIEFkZHJlc3M9MHgwMDAwMDAwMGY0MDAwMDAwCglTZWdtZW50IEdy
 b3VwPTB4MDAwMAoJU3RhcnQgQnVzPTAKCUVuZCBCdXM9NjMKICovCi8qCiAgRVVEUzogTGVu
 Z3RoPTEzNzYsIFJldmlzaW9uPTEsIENoZWNrc3VtPTkyLAoJT0VNSUQ9R0JULCBPRU0gVGFi
 bGUgSUQ9LCBPRU0gUmV2aXNpb249MHgwLAoJQ3JlYXRvciBJRD0sIENyZWF0b3IgUmV2aXNp
 b249MHgwCgoJRGF0YT17CgkJIDQ1IDU1IDQ0IDUzIDYwIDA1IDAwIDAwICAgIDAxIDVjIDQ3
 IDQyIDU0IDIwIDIwIDIwCgkJIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwICAgIDAwIDAwIDAw
 IDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIGIyIDAwIDAwIDAwICAgIDAzIDAwIDAw
 IDAwIGVjIDU2IDdkIGRmCgkJIDAxIDAwIDAwIDAwIGNhIDViIDdkIGRmICAgIDAwIDAwIDAw
 IDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwICAgIDAwIDAwIDAw
 IDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwICAgIDAwIDAwIDAw
 IDAwIDAwIDAwIDAwIDAwCgkJIDAxIDAwIDAwIDAwIDkwIDViIDdkIGRmICAgIGVlIGZmIDAw
 IDAwIDQ1IDU1IDUwIDU0CgkJIDhjIDAxIDAwIDAwIDQzIDUwIDQ0IDQ0ICAgIGU1IDA2IDAx
 IDAwIDg1IDAwIDI4IDAwCgkJIDAyIDAwIDAwIDAwIDEyIDAwIDAyIDAwICAgIDkwIDA0IDAw
 IDAwIDcyIDAwIDAwIDAwCgkJIDczIDAwIDAwIDAwIGJiIDAwIDAwIDAwICAgIDBjIDAwIDAw
 IDAwIDE2IDAwIDAwIDAwCgkJIDAyIDAwIDAwIDAwIDAyIDAwIDAwIDAwICAgIGZmIDAwIDAw
 IDAwIDI4IDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDI4IDAwIDAwIDAwICAgIDkxIDAwIDAw
 IDAwIDcwIDAwIDAwIDAwCgkJIDcxIDAwIDAwIDAwIDQzIDAwIDAwIDAwICAgIDAwIDAwIDAw
 IDAwIDAyIDAwIDAwIDAwCgkJIDAxIDAwIDAwIDAwIDAxIDAwIDAwIDAwICAgIDAzIDAwIDAw
 IDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwICAgIDRkIDQ2IDQ0
 IDQ0IDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAwIDAwIDY0IDAwICAgIDAyIDAwIDkw
 IDA0IDAwIDAwIDcyIDAwCgkJIDAwIDAwIDczIDAwIDAwIDAwIGI1IDAwICAgIDAwIDAwIDAw
 IDAwIDAwIDAwIDA3IDAwCgkJIDAwIDAwIDAxIDAwIDAwIDAwIDAxIDAwICAgIDAwIDAwIGZm
 IDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwICAgIDAwIDAwIDkx
 IDA4IDAwIDAwIDcyIDAwCgkJIDAwIDAwIDczIDAwIDAwIDAwIGJjIDAwICAgIDAwIDAwIDAw
 IDAwIDAwIDAwIDAxIDAwCgkJIDAwIDAwIDAxIDAwIDAwIDAwIDAxIDAwICAgIDAwIDAwIDAy
 IDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwICAgIDAwIDAwIDQ2
 IDQ0IDQ0IDQ0IDAwIDAwCgkJIDAwIDAwIDg1IDAwIDAxIDAwIDAzIDAwICAgIDkwIDA0IDAw
 IDAwIDcwIDAwIDAwIDAwCgkJIDcxIDAwIDAwIDAwIDYzIDAwIDAwIDAwICAgIDY0IDAwIDAw
 IDAwIGJjIDAyIDAwIDAwCgkJIDAxIDAwIDAwIDAwIDAxIDAwIDAwIDAwICAgIGZmIDA3IDAw
 IDAwIDhjIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDg1IDAwIDAwIDAwICAgIDkxIDA0IDAw
 IDAwIDcwIDAwIDAwIDAwCgkJIDcxIDAwIDAwIDAwIDY0IDAwIDAwIDAwICAgIDAwIDAwIDAw
 IDAwIDAxIDAwIDAwIDAwCgkJIDAxIDAwIDAwIDAwIDAxIDAwIDAwIDAwICAgIDA4IDAwIDAw
 IDAwIDAxIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwICAgIDkxIDA4IDAw
 IDAwIDcyIDAwIDAwIDAwCgkJIDczIDAwIDAwIDAwIGJjIDAwIDAwIDAwICAgIDAwIDAwIDAw
 IDAwIDAxIDAwIDAwIDAwCgkJIDAxIDAwIDAwIDAwIDAxIDAwIDAwIDAwICAgIDAyIDAwIDAw
 IDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwICAgIDQ1IDU1IDUw
 IDU0IDhjIDAxIDAwIDAwCgkJIDQzIDUwIDQ0IDQ0IGU1IDA2IDAxIDAwICAgIDg1IDAwIDI4
 IDAwIDAyIDAwIDAwIDAwCgkJIDEyIDAwIDAyIDAwIDkwIDA0IDAwIDAwICAgIDcyIDAwIDAw
 IDAwIDczIDAwIDAwIDAwCgkJIGJiIDAwIDAwIDAwIDBjIDAwIDAwIDAwICAgIDE2IDAwIDAw
 IDAwIDAyIDAwIDAwIDAwCgkJIDAyIDAwIDAwIDAwIGZmIDAwIDAwIDAwICAgIDI4IDAwIDAw
 IDAwIDAwIDAwIDAwIDAwCgkJIDI4IDAwIDAwIDAwIDkxIDAwIDAwIDAwICAgIDcwIDAwIDAw
 IDAwIDcxIDAwIDAwIDAwCgkJIDQzIDAwIDAwIDAwIDAwIDAwIDAwIDAwICAgIDAyIDAwIDAw
 IDAwIDAxIDAwIDAwIDAwCgkJIDAxIDAwIDAwIDAwIDAzIDAwIDAwIDAwICAgIDAwIDAwIDAw
 IDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDRkIDQ2IDQ0IDQ0ICAgIDAwIDAwIDAw
 IDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDY0IDAwIDAyIDAwIDkwIDA0ICAgIDAwIDAwIDcy
 IDAwIDAwIDAwIDczIDAwCgkJIDAwIDAwIGI1IDAwIDAwIDAwIDAwIDAwICAgIDAwIDAwIDA3
 IDAwIDAwIDAwIDAxIDAwCgkJIDAwIDAwIDAxIDAwIDAwIDAwIGZmIDAwICAgIDAwIDAwIDAw
 IDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAwIDAwIDkxIDA4ICAgIDAwIDAwIDcy
 IDAwIDAwIDAwIDczIDAwCgkJIDAwIDAwIGJjIDAwIDAwIDAwIDAwIDAwICAgIDAwIDAwIDAx
 IDAwIDAwIDAwIDAxIDAwCgkJIDAwIDAwIDAxIDAwIDAwIDAwIDAyIDAwICAgIDAwIDAwIDAw
 IDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAwIDAwIDQ2IDQ0ICAgIDQ0IDQ0IDAw
 IDAwIDAwIDAwIDg1IDAwCgkJIDAxIDAwIDAzIDAwIDkwIDA0IDAwIDAwICAgIDcwIDAwIDAw
 IDAwIDcxIDAwIDAwIDAwCgkJIDYzIDAwIDAwIDAwIDY0IDAwIDAwIDAwICAgIGJjIDAyIDAw
 IDAwIDAxIDAwIDAwIDAwCgkJIDAxIDAwIDAwIDAwIGZmIDA3IDAwIDAwICAgIDk2IDAwIDAw
 IDAwIDAwIDAwIDAwIDAwCgkJIDg1IDAwIDAwIDAwIDkxIDA0IDAwIDAwICAgIDcwIDAwIDAw
 IDAwIDcxIDAwIDAwIDAwCgkJIDY0IDAwIDAwIDAwIDAwIDAwIDAwIDAwICAgIDAxIDAwIDAw
 IDAwIDAxIDAwIDAwIDAwCgkJIDAxIDAwIDAwIDAwIDA4IDAwIDAwIDAwICAgIDAxIDAwIDAw
 IDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDkxIDA4IDAwIDAwICAgIDcyIDAwIDAw
 IDAwIDczIDAwIDAwIDAwCgkJIGJjIDAwIDAwIDAwIDAwIDAwIDAwIDAwICAgIDAxIDAwIDAw
 IDAwIDAxIDAwIDAwIDAwCgkJIDAxIDAwIDAwIDAwIDAyIDAwIDAwIDAwICAgIDAwIDAwIDAw
 IDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDQ1IDU1IDUwIDU0ICAgIDhjIDAxIDAw
 IDAwIDQzIDUwIDQ0IDQ0CgkJIGU1IDA2IDAxIDAwIDg1IDAwIDI4IDAwICAgIDAyIDAwIDAw
 IDAwIDEyIDAwIDAyIDAwCgkJIDkwIDA0IDAwIDAwIDcyIDAwIDAwIDAwICAgIDczIDAwIDAw
 IDAwIGJiIDAwIDAwIDAwCgkJIDBjIDAwIDAwIDAwIDE2IDAwIDAwIDAwICAgIDAyIDAwIDAw
 IDAwIDAyIDAwIDAwIDAwCgkJIGZmIDAwIDAwIDAwIDI2IDAwIDAwIDAwICAgIDAwIDAwIDAw
 IDAwIDI2IDAwIDAwIDAwCgkJIDkxIDAwIDAwIDAwIDcwIDAwIDAwIDAwICAgIDcxIDAwIDAw
 IDAwIDQzIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAyIDAwIDAwIDAwICAgIDAxIDAwIDAw
 IDAwIDAxIDAwIDAwIDAwCgkJIDAzIDAwIDAwIDAwIDAyIDAwIDAwIDAwICAgIDAwIDAwIDAw
 IDAwIDAwIDAwIDAwIDAwCgkJIDRkIDQ2IDQ0IDQ0IDAwIDAwIDAwIDAwICAgIDAwIDAwIDAw
 IDAwIDAwIDAwIDY0IDAwCgkJIDAyIDAwIDkwIDA0IDAwIDAwIDcyIDAwICAgIDAwIDAwIDcz
 IDAwIDAwIDAwIGI1IDAwCgkJIDAwIDAwIDAwIDAwIDAwIDAwIDA3IDAwICAgIDAwIDAwIDAx
 IDAwIDAwIDAwIDAxIDAwCgkJIDAwIDAwIGZmIDAwIDAwIDAwIDAyIDAwICAgIDAwIDAwIDAw
 IDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDkxIDA4IDAwIDAwIDcyIDAwICAgIDAwIDAwIDcz
 IDAwIDAwIDAwIGJjIDAwCgkJIDAwIDAwIDAwIDAwIDAwIDAwIDAxIDAwICAgIDAwIDAwIDAx
 IDAwIDAwIDAwIDAxIDAwCgkJIDAwIDAwIDAyIDAwIDAwIDAwIDAwIDAwICAgIDAwIDAwIDAw
 IDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDQ2IDQ0IDQ0IDQ0IDAwIDAwICAgIDAwIDAwIDg1
 IDAwIDAxIDAwIDAzIDAwCgkJIDkwIDA0IDAwIDAwIDcwIDAwIDAwIDAwICAgIDcxIDAwIDAw
 IDAwIDYzIDAwIDAwIDAwCgkJIDY0IDAwIDAwIDAwIGJjIDAyIDAwIDAwICAgIDAxIDAwIDAw
 IDAwIDAxIDAwIDAwIDAwCgkJIGZmIDA3IDAwIDAwIGM4IDAwIDAwIDAwICAgIDAwIDAwIDAw
 IDAwIDg1IDAwIDAwIDAwCgkJIDkxIDA0IDAwIDAwIDcwIDAwIDAwIDAwICAgIDcxIDAwIDAw
 IDAwIDY0IDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAxIDAwIDAwIDAwICAgIDAxIDAwIDAw
 IDAwIDAxIDAwIDAwIDAwCgkJIDA4IDAwIDAwIDAwIDAxIDAwIDAwIDAwICAgIDAwIDAwIDAw
 IDAwIDAwIDAwIDAwIDAwCgkJIDkxIDA4IDAwIDAwIDcyIDAwIDAwIDAwICAgIDczIDAwIDAw
 IDAwIGJjIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAxIDAwIDAwIDAwICAgIDAxIDAwIDAw
 IDAwIDAxIDAwIDAwIDAwCgkJIDAyIDAwIDAwIDAwIDAwIDAwIDAwIDAwICAgIDAwIDAwIDAw
 IDAwIDAwIDAwIGVlIGZmCgkJIDQyIDUxIDQyIDUzIDAwIDAwIDAwIDAwICAgIDAxIDAwIDkw
 IDA0IDAwIDAwIDcwIDAwCgkJIDAwIDAwIDcxIDAwIDAwIDAwIDM0IDAwICAgIDAwIDAwIDAw
 IDAwIDAwIDAwIDAyIDAwCgkJIDAwIDAwIDAxIDAwIDAwIDAwIDAxIDAwICAgIDAwIDAwIGVm
 IGZmIGZmIGZmIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwICAgIGVlIGZmIDQ1
 IDQ1IDQxIDU0IDAwIDAwCgkJIDAwIDAwIDEwIDAwIDAwIDAwIDZjIDAwICAgIDAwIDAwIDAw
 IDAwIDAwIDAwIDAwIDAwCgl9CiAqLwovKgogIFRBTUc6IExlbmd0aD0yNjEwLCBSZXZpc2lv
 bj0xLCBDaGVja3N1bT0xNiAoSW5jb3JyZWN0KSwKCU9FTUlEPUdCVCwgT0VNIFRhYmxlIElE
 PUdCVCAgIEIwLCBPRU0gUmV2aXNpb249MHg1NDU1MzEyZSwKCUNyZWF0b3IgSUQ9QkcBASwg
 Q3JlYXRvciBSZXZpc2lvbj0weDUzNDUwMTAxCgoJRGF0YT17CgkJIDU0IDQxIDRkIDQ3IDMy
 IDBhIDAwIDAwICAgIDAxIDEwIDQ3IDQyIDU0IDIwIDIwIDIwCgkJIDQ3IDQyIDU0IDIwIDIw
 IDIwIDQyIDMwICAgIDJlIDMxIDU1IDU0IDQyIDQ3IDAxIDAxCgkJIDAxIDAxIDQ1IDUzIDQ0
 IDU0IDEwIDIxICAgIDdmIDAyIDAwIDAyIDBmIDAwIDJjIDAxCgkJIDBmIDAwIDA0IDAwIDAw
 IDAxIDAxIDA3ICAgIDAwIDAwIDNkIDgxIDk1IDAyIDk2IDAyCgkJIDIwIDAwIDEwIDAwIDI2
 IDAwIGQwIDAzICAgIDA0IDAwIDAwIDAwIDAwIDAwIDAxIDAxCgkJIDAwIDAwIDNiIDA0IDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDgwIDgwIDAxIDAwIDAwIDA0CgkJIDAxIDAwIDAwIDAwIDAw
 IDBlIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAxIDAwIDAwIDAwIDAx
 IDAzIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAxIDAwIDAwIDAwIDA0
 IDBiIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAxIDAwIDAwIDAwIDBi
 IDExIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAyIDAwIDAwIDAwIDAw
 IGIwIDA0IDY0ICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IGMwIDEyIGM4ICAgIDAwIDAwIDAwIDAxIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDQ1IDU4IDQ1
 IDUzIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDBmIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAzIDAwIDAwIDAwIDljIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDA2IDAwCgkJIDAwIDAwIDA2IDAwIDAw
 IDAwIDA3IDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAxIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDVlIDAxCgkJIDAwIDAwIDcwIGE1IDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAxIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAzIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDVlIDAxCgkJIDAwIDAwIDQwIDhjIDAx
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAyIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDA3IDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDJjIDAxCgkJIDAwIDAwIDkwIDY1IDAy
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAzIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDBmIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDJjIDAxCgkJIDAwIDAwIGYwIDYzIDAz
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDA0IDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDFmIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDJjIDAxCgkJIDAwIDAwIGYwIDYzIDAz
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDA1IDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDNmIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIGM4IDAwCgkJIDAwIDAwIGYwIDYzIDAz
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDBiIDAwIDAw
 IDAwIGZmIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDI0IDQ1IDVh
 IDU2IDRmIDRjICAgIDU0IDI0IDQwIDA1IDAxIDQ1IDAwIDAwCgkJIDAwIDAwIDBhIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDQ0IDUyIDQx
 IDRkIDIwIDU2ICAgIDZmIDZjIDc0IDYxIDY3IDY1IDIwIDIwCgkJIDIwIDIwIDIwIDIwIDIw
 IDIwIDIwIDIwICAgIDIwIDIwIDIwIDIwIDIwIDIwIDIwIDIwCgkJIDAwIDAwIDAzIDAxIDA0
 IDAwIGYwIDQ5ICAgIDAyIDAwIDMwIDY5IDAyIDAwIDYwIDAyCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDA1IDAwICAgIDAwIDAwIGEwIDg2IDAxIDAwIGQwIGZiCgkJIDAxIDAwIDEwIDI3IDAw
 IDAwIGUwIDIyICAgIDAyIDAwIGEwIDg2IDAxIDAwIGYwIDQ5CgkJIDAyIDAwIGQwIDA3IDAw
 IDAwIGYwIDQ5ICAgIDAyIDAwIGEwIDg2IDAxIDAwIDYwIDYxCgkJIDAyIDAwIGQwIDA3IDAw
 IDAwIDQwIDkwICAgIDAyIDAwIGEwIDg2IDAxIDAwIDEwIDk4CgkJIDAyIDAwIGQwIDA3IDAw
 IDAwIDAwIGVlICAgIDAyIDAwIGEwIDg2IDAxIDAwIGQwIGY1CgkJIDAyIDAwIGQwIDA3IDAw
 IDAwIGEwIGY3ICAgIDAzIDAwIDQ0IDUyIDQxIDRkIDIwIDU0CgkJIDY1IDcyIDZkIDY5IDZl
 IDYxIDc0IDY5ICAgIDZmIDZlIDIwIDIwIDIwIDIwIDIwIDIwCgkJIDIwIDIwIDIwIDIwIDIw
 IDIwIDIwIDIwICAgIDAwIDAwIDA0IDAxIDA0IDAwIGY4IDI0CgkJIDAxIDAwIGY4IDI0IDAx
 IDAwIDZhIDAxICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAzIDAwCgkJIDAwIDAwIGEwIDg2IDAx
 IDAwIGM4IGFmICAgIDAwIDAwIGQwIDA3IDAwIDAwIDI4IDFkCgkJIDAxIDAwIGEwIDg2IDAx
 IDAwIGY4IDI0ICAgIDAxIDAwIDg4IDEzIDAwIDAwIGY4IDI0CgkJIDAxIDAwIGEwIDg2IDAx
 IDAwIGIwIDMwICAgIDAxIDAwIGM0IDA5IDAwIDAwIDJjIGMzCgkJIDAxIDAwIDQzIDY4IDJk
 IDQxIDIwIDQ0ICAgIDYxIDc0IDYxIDIwIDU2IDUyIDY1IDY2CgkJIDJlIDIwIDIwIDIwIDIw
 IDIwIDIwIDIwICAgIDIwIDIwIDIwIDIwIDIwIDIwIDIwIDIwCgkJIDAwIDAwIDE3IDAxIDA0
 IDAwIGY4IDI0ICAgIDAxIDAwIGY4IDI0IDAxIDAwIDYwIDAxCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAzIDAwICAgIDAwIDAwIGEwIDg2IDAxIDAwIDAwIGZhCgkJIDAwIDAwIGU4IDAzIDAw
 IDAwIDEwIDIxICAgIDAxIDAwIGEwIDg2IDAxIDAwIGY4IDI0CgkJIDAxIDAwIGU4IDAzIDAw
 IDAwIGY4IDI0ICAgIDAxIDAwIGEwIDg2IDAxIDAwIDY4IDNjCgkJIDAxIDAwIDg4IDEzIDAw
 IDAwIGQ4IDRkICAgIDAyIDAwIDQzIDY4IDJkIDQyIDIwIDQ0CgkJIDYxIDc0IDYxIDIwIDU2
 IDUyIDY1IDY2ICAgIDJlIDIwIDIwIDIwIDIwIDIwIDIwIDIwCgkJIDIwIDIwIDIwIDIwIDIw
 IDIwIDIwIDIwICAgIDAwIDAwIDE4IDAxIDA0IDAwIGY4IDI0CgkJIDAxIDAwIGY4IDI0IDAx
 IDAwIDYwIDAzICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAzIDAwCgkJIDAwIDAwIGEwIDg2IDAx
 IDAwIDAwIGZhICAgIDAwIDAwIGU4IDAzIDAwIDAwIDEwIDIxCgkJIDAxIDAwIGEwIDg2IDAx
 IDAwIGY4IDI0ICAgIDAxIDAwIGU4IDAzIDAwIDAwIGY4IDI0CgkJIDAxIDAwIGEwIDg2IDAx
 IDAwIDY4IDNjICAgIDAxIDAwIDg4IDEzIDAwIDAwIGQ4IDRkCgkJIDAyIDAwIDQzIDY4IDJk
 IDQxIDIwIDQxICAgIDY0IDY0IDcyIDY1IDczIDczIDIwIDU2CgkJIDUyIDY1IDY2IDJlIDIw
 IDIwIDIwIDIwICAgIDIwIDIwIDIwIDIwIDIwIDIwIDIwIDIwCgkJIDAwIDAwIDFiIDAxIDA0
 IDAwIGY4IDI0ICAgIDAxIDAwIGY4IDI0IDAxIDAwIDZhIDAyCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAzIDAwICAgIDAwIDAwIGEwIDg2IDAxIDAwIDAwIGZhCgkJIDAwIDAwIGU4IDAzIDAw
 IDAwIDEwIDIxICAgIDAxIDAwIGEwIDg2IDAxIDAwIGY4IDI0CgkJIDAxIDAwIGU4IDAzIDAw
 IDAwIGY4IDI0ICAgIDAxIDAwIGEwIDg2IDAxIDAwIDY4IDNjCgkJIDAxIDAwIDg4IDEzIDAw
 IDAwIGQ4IDRkICAgIDAyIDAwIDQzIDY4IDJkIDQyIDIwIDQxCgkJIDY0IDY0IDcyIDY1IDcz
 IDczIDIwIDU2ICAgIDUyIDY1IDY2IDJlIDIwIDIwIDIwIDIwCgkJIDIwIDIwIDIwIDIwIDIw
 IDIwIDIwIDIwICAgIDAwIDAwIDFjIDAxIDA0IDAwIGY4IDI0CgkJIDAxIDAwIGY4IDI0IDAx
 IDAwIDZhIDAzICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAzIDAwCgkJIDAwIDAwIGEwIDg2IDAx
 IDAwIDAwIGZhICAgIDAwIDAwIGU4IDAzIDAwIDAwIDEwIDIxCgkJIDAxIDAwIGEwIDg2IDAx
 IDAwIGY4IDI0ICAgIDAxIDAwIGU4IDAzIDAwIDAwIGY4IDI0CgkJIDAxIDAwIGEwIDg2IDAx
 IDAwIDY4IDNjICAgIDAxIDAwIDg4IDEzIDAwIDAwIGQ4IDRkCgkJIDAyIDAwIDUxIDUwIDQ5
 IDJmIDU2IDc0ICAgIDc0IDIwIDU2IDZmIDZjIDc0IDYxIDY3CgkJIDY1IDIwIDIwIDIwIDIw
 IDIwIDIwIDIwICAgIDIwIDIwIDIwIDIwIDIwIDIwIDIwIDIwCgkJIDAwIDAwIDBiIDAwIDA0
 IDAwIGIwIGFkICAgIDAxIDAwIGIwIGFkIDAxIDAwIDYyIDAzCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAzIDAwICAgIDAwIDAwIGEwIDg2IDAxIDAwIDI4IDlhCgkJIDAxIDAwIGQwIDA3IDAw
 IDAwIDI4IDlhICAgIDAxIDAwIGEwIDg2IDAxIDAwIGIwIGFkCgkJIDAxIDAwIGQwIDA3IDAw
 IDAwIGIwIGFkICAgIDAxIDAwIGEwIDg2IDAxIDAwIDA4IGM5CgkJIDAxIDAwIGQwIDA3IDAw
 IDAwIDU4IDA5ICAgIDAzIDAwIDQzIDUwIDU1IDIwIDU2IDYzCgkJIDZmIDcyIDY1IDIwIDIw
 IDIwIDIwIDIwICAgIDIwIDIwIDIwIDIwIDIwIDIwIDIwIDIwCgkJIDIwIDIwIDIwIDIwIDIw
 IDIwIDIwIDIwICAgIDAwIDAwIDBlIDAwIDBiIDAwIDhiIGM4CgkJIDAxIDAwIDhiIGM4IDAx
 IDAwIDljIDAyICAgIDY2IDAxIDAwIDAwIDAwIDAwIDExIDAwCgkJIDAwIDAwIGEwIDg2IDAx
 IDAwIDUwIGMzICAgIDAwIDAwIDcxIDAyIDAwIDAwIDhmIDZlCgkJIDAyIDAwIGEwIDg2IDAx
 IDAwIDAwIDcxICAgIDAyIDAwIGQwIDA3IDAwIDAwIDAwIDcxCgkJIDAyIDAwIGEwIDg2IDAx
 IDAwIDdkIDcxICAgIDAyIDAwIDcxIDAyIDAwIDAwIGQwIDc4CgkJIDAyIDAwIGEwIDg2IDAx
 IDAwIDRkIDc5ICAgIDAyIDAwIDcxIDAyIDAwIDAwIGEwIDgwCgkJIDAyIDAwIGEwIDg2IDAx
 IDAwIDFkIDgxICAgIDAyIDAwIDcxIDAyIDAwIDAwIDcwIDg4CgkJIDAyIDAwIGEwIDg2IDAx
 IDAwIGVkIDg4ICAgIDAyIDAwIDcxIDAyIDAwIDAwIDQwIDkwCgkJIDAyIDAwIGEwIDg2IDAx
 IDAwIGJkIDkwICAgIDAyIDAwIDcxIDAyIDAwIDAwIDEwIDk4CgkJIDAyIDAwIGEwIDg2IDAx
 IDAwIDhkIDk4ICAgIDAyIDAwIDcxIDAyIDAwIDAwIGUwIDlmCgkJIDAyIDAwIGEwIDg2IDAx
 IDAwIDVkIGEwICAgIDAyIDAwIDcxIDAyIDAwIDAwIGIwIGE3CgkJIDAyIDAwIGEwIDg2IDAx
 IDAwIDJkIGE4ICAgIDAyIDAwIDcxIDAyIDAwIDAwIDgwIGFmCgkJIDAyIDAwIGEwIDg2IDAx
 IDAwIGZkIGFmICAgIDAyIDAwIDcxIDAyIDAwIDAwIDUwIGI3CgkJIDAyIDAwIGEwIDg2IDAx
 IDAwIGNkIGI3ICAgIDAyIDAwIDcxIDAyIDAwIDAwIDIwIGJmCgkJIDAyIDAwIGEwIDg2IDAx
 IDAwIDlkIGJmICAgIDAyIDAwIDcxIDAyIDAwIDAwIGYwIGM2CgkJIDAyIDAwIGEwIDg2IDAx
 IDAwIDZkIGM3ICAgIDAyIDAwIDcxIDAyIDAwIDAwIGMwIGNlCgkJIDAyIDAwIGEwIDg2IDAx
 IDAwIDNkIGNmICAgIDAyIDAwIDcxIDAyIDAwIDAwIDkwIGQ2CgkJIDAyIDAwIGEwIDg2IDAx
 IDAwIDBkIGQ3ICAgIDAyIDAwIDcxIDAyIDAwIDAwIDYwIGRlCgkJIDAyIDAwIGEwIDg2IDAx
 IDAwIGRkIGRlICAgIDAyIDAwIDcxIDAyIDAwIDAwIDMwIGU2CgkJIDAyIDAwIDUwIDQzIDQ4
 IDIwIDQzIDZmICAgIDcyIDY1IDIwIDIwIDIwIDIwIDIwIDIwCgkJIDIwIDIwIDIwIDIwIDIw
 IDIwIDIwIDIwICAgIDIwIDIwIDIwIDIwIDIwIDIwIDIwIDIwCgkJIDAwIDAwIDExIDAyIDA3
 IDAwIDI4IDlhICAgIDAxIDAwIDI4IDlhIDAxIDAwIDYyIDAxCgkJIDY2IDAxIDAwIDAwIDAw
 IDAwIDAzIDAwICAgIDAwIDAwIGEwIDg2IDAxIDAwIDE4IDczCgkJIDAxIDAwIDEwIDI3IDAw
 IDAwIDE4IDczICAgIDAxIDAwIGEwIDg2IDAxIDAwIDI4IDlhCgkJIDAxIDAwIDEwIDI3IDAw
 IDAwIDI4IDlhICAgIDAxIDAwIGEwIDg2IDAxIDAwIDgwIGI1CgkJIDAxIDAwIGQwIDA3IDAw
 IDAwIDQwIDBkICAgIDAzIDAwIDQzIDUwIDU1IDIwIDUwIDRjCgkJIDRjIDIwIDIwIDIwIDIw
 IDIwIDIwIDIwICAgIDIwIDIwIDIwIDIwIDIwIDIwIDIwIDIwCgkJIDIwIDIwIDIwIDIwIDIw
 IDIwIDIwIDAwICAgIDAwIDAwIDEyIDAyIDA3IDAwIDIwIGJmCgkJIDAyIDAwIDIwIGJmIDAy
 IDAwIDYyIDAyICAgIDY2IDAxIDAwIDAwIDAwIDAwIDA0IDAwCgkJIDAwIDAwIGEwIDg2IDAx
 IDAwIDAwIDcxICAgIDAyIDAwIDEwIDI3IDAwIDAwIDEwIDk4CgkJIDAyIDAwIGEwIDg2IDAx
 IDAwIDIwIGJmICAgIDAyIDAwIGQwIDA3IDAwIDAwIDIwIGJmCgkJIDAyIDAwIGEwIDg2IDAx
 IDAwIDkwIGQ2ICAgIDAyIDAwIGQwIDA3IDAwIDAwIDgwIDJjCgkJIDAzIDAwIGEwIDg2IDAx
 IDAwIDUwIDM0ICAgIDAzIDAwIGQwIDA3IDAwIDAwIDMwIGUwCgkJIDAzIDAwIDI0IDQ4IDQ1
 IDQxIDRjIDU0ICAgIDQ4IDI0IGEwIDAyIDAxIDc0IDAwIDAwCgkJIDAwIDAwIDBjIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDQzIDYxIDcz
 IDY1IDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDA4IDAxIDAw
 IDAwIDAxIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAxIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDQzIDUwIDU1IDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAxIDAyIDAwIDAwIGU4IDAzCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDcwIDA0ICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDQ0IDUyIDQx
 IDRkIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAxIDA0IDAw
 IDAwIGU4IDAzICAgIDAwIDAwIDAwIDAwIDAwIDAwIDMwIDA2CgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDJiIDMzIDJlIDMzIDU2IDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAxIDA4IDAwIDAwIGU4IDAzCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDQwIDBkICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDJiIDM1IDU2
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAxIDIwIDAw
 IDAwIGU4IDAzICAgIDAwIDAwIDAwIDAwIDAwIDAwIGJkIDEzCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDJiIDMxIDMyIDU2IDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAxIDEwIDAwIDAwIGU4IDAzCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDRkIDMwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDUzIDc5IDcz
 IDc0IDY1IDZkICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAyIDIwIDAw
 IDAwIDAxIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDFiIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDQzIDUwIDU1IDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAyIDQwIDAwIDAwIDAxIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDE4IDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDQzIDUwIDU1
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDA0IDgwIDAw
 IDAwIDAxIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDUwIDZmIDc3IDY1IDcyIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDA0IDAwIDAxIDAwIDAxIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDUzIDc5IDcz
 IDc0IDY1IDZkICAgIDIwIDMxIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDA0IDAwIDAy
 IDAwIDAxIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDQwIDA1CgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDUzIDc5IDczIDc0IDY1IDZkCgkJIDIwIDMyIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDA0IDAwIDA0IDAwIDAxIDAwCgkJIDAwIDAwIDAwIDAwIDAw
 IDAwIDAwIDAwICAgIDAwIDAwIDAwIDAwIDAwIDAwIDAwIDAwCgkJIDAwIDAwCgl9CiAqLwov
 KgogIEFQSUM6IExlbmd0aD0xODgsIFJldmlzaW9uPTEsIENoZWNrc3VtPTE4NCwKCU9FTUlE
 PUdCVCwgT0VNIFRhYmxlIElEPUdCVFVBQ1BJLCBPRU0gUmV2aXNpb249MHg0MjMwMmUzMSwK
 CUNyZWF0b3IgSUQ9R0JUVSwgQ3JlYXRvciBSZXZpc2lvbj0weDEwMTAxMDEKCUxvY2FsIEFQ
 SUMgQUREUj0weGZlZTAwMDAwCglGbGFncz17UEMtQVR9CgoJVHlwZT1Mb2NhbCBBUElDCglB
 Q1BJIENQVT0wCglGbGFncz17RU5BQkxFRH0KCUFQSUMgSUQ9MAoKCVR5cGU9TG9jYWwgQVBJ
 QwoJQUNQSSBDUFU9MQoJRmxhZ3M9e0VOQUJMRUR9CglBUElDIElEPTIKCglUeXBlPUxvY2Fs
 IEFQSUMKCUFDUEkgQ1BVPTIKCUZsYWdzPXtFTkFCTEVEfQoJQVBJQyBJRD00CgoJVHlwZT1M
 b2NhbCBBUElDCglBQ1BJIENQVT0zCglGbGFncz17RU5BQkxFRH0KCUFQSUMgSUQ9NgoKCVR5
 cGU9TG9jYWwgQVBJQwoJQUNQSSBDUFU9NAoJRmxhZ3M9e0RJU0FCTEVEfQoJQVBJQyBJRD00
 CgoJVHlwZT1Mb2NhbCBBUElDCglBQ1BJIENQVT01CglGbGFncz17RElTQUJMRUR9CglBUElD
 IElEPTUKCglUeXBlPUxvY2FsIEFQSUMKCUFDUEkgQ1BVPTYKCUZsYWdzPXtESVNBQkxFRH0K
 CUFQSUMgSUQ9NgoKCVR5cGU9TG9jYWwgQVBJQwoJQUNQSSBDUFU9NwoJRmxhZ3M9e0RJU0FC
 TEVEfQoJQVBJQyBJRD03CgoJVHlwZT1JTyBBUElDCglBUElDIElEPTIKCUlOVCBCQVNFPTAK
 CUFERFI9MHgwMDAwMDAwMGZlYzAwMDAwCgoJVHlwZT1JTlQgT3ZlcnJpZGUKCUJVUz0wCglJ
 UlE9MAoJSU5UUj0yCglGbGFncz17UG9sYXJpdHk9Y29uZm9ybWluZywgVHJpZ2dlcj1jb25m
 b3JtaW5nfQoKCVR5cGU9SU5UIE92ZXJyaWRlCglCVVM9MAoJSVJRPTkKCUlOVFI9OQoJRmxh
 Z3M9e1BvbGFyaXR5PWFjdGl2ZS1oaSwgVHJpZ2dlcj1sZXZlbH0KCglUeXBlPUxvY2FsIEFQ
 SUMgTk1JCglBQ1BJIENQVT0wCglMSU5UIFBpbj0xCglGbGFncz17UG9sYXJpdHk9Y29uZm9y
 bWluZywgVHJpZ2dlcj1jb25mb3JtaW5nfQoKCVR5cGU9TG9jYWwgQVBJQyBOTUkKCUFDUEkg
 Q1BVPTEKCUxJTlQgUGluPTEKCUZsYWdzPXtQb2xhcml0eT1jb25mb3JtaW5nLCBUcmlnZ2Vy
 PWNvbmZvcm1pbmd9CgoJVHlwZT1Mb2NhbCBBUElDIE5NSQoJQUNQSSBDUFU9MgoJTElOVCBQ
 aW49MQoJRmxhZ3M9e1BvbGFyaXR5PWNvbmZvcm1pbmcsIFRyaWdnZXI9Y29uZm9ybWluZ30K
 CglUeXBlPUxvY2FsIEFQSUMgTk1JCglBQ1BJIENQVT0zCglMSU5UIFBpbj0xCglGbGFncz17
 UG9sYXJpdHk9Y29uZm9ybWluZywgVHJpZ2dlcj1jb25mb3JtaW5nfQoKCVR5cGU9TG9jYWwg
 QVBJQyBOTUkKCUFDUEkgQ1BVPTQKCUxJTlQgUGluPTEKCUZsYWdzPXtQb2xhcml0eT1jb25m
 b3JtaW5nLCBUcmlnZ2VyPWNvbmZvcm1pbmd9CgoJVHlwZT1Mb2NhbCBBUElDIE5NSQoJQUNQ
 SSBDUFU9NQoJTElOVCBQaW49MQoJRmxhZ3M9e1BvbGFyaXR5PWNvbmZvcm1pbmcsIFRyaWdn
 ZXI9Y29uZm9ybWluZ30KCglUeXBlPUxvY2FsIEFQSUMgTk1JCglBQ1BJIENQVT02CglMSU5U
 IFBpbj0xCglGbGFncz17UG9sYXJpdHk9Y29uZm9ybWluZywgVHJpZ2dlcj1jb25mb3JtaW5n
 fQoKCVR5cGU9TG9jYWwgQVBJQyBOTUkKCUFDUEkgQ1BVPTcKCUxJTlQgUGluPTEKCUZsYWdz
 PXtQb2xhcml0eT1jb25mb3JtaW5nLCBUcmlnZ2VyPWNvbmZvcm1pbmd9CiAqLwovKgogIFNT
 RFQ6IExlbmd0aD03MjIwLCBSZXZpc2lvbj0xLCBDaGVja3N1bT0xMiwKCU9FTUlEPUlOVEVM
 LCBPRU0gVGFibGUgSUQ9UFBNIFJDTSwgT0VNIFJldmlzaW9uPTB4ODAwMDAwMDEsCglDcmVh
 dG9yIElEPUlOVEwsIENyZWF0b3IgUmV2aXNpb249MHgyMDA2MTEwOQoKCURhdGE9ewoJCSA1
 MyA1MyA0NCA1NCAzNCAxYyAwMCAwMCAgICAwMSAwYyA0OSA0ZSA1NCA0NSA0YyAwMAoJCSA1
 MCA1MCA0ZCAyMCA1MiA0MyA0ZCAyMCAgICAwMSAwMCAwMCA4MCA0OSA0ZSA1NCA0YwoJCSAw
 OSAxMSAwNiAyMCAxMCA0MyA3MCA1YyAgICAyZSA1ZiA1MCA1MiA1ZiA0MyA1MCA1NQoJCSAz
 MCAwOCA1NCA1OSA1MCA0NSAwYyAwMCAgICAwMCAwMCAwMCAwOCA1MCA1MyA0NSA0ZQoJCSAw
 YyAwMSAwMCAwMCAwMCAwOCA0MyA1MyAgICA0NSA0ZSAwYyAwMSAwMCAwMCAwMCAwOAoJCSA0
 ZCA1NyA0ZiA1MyAwYyAwMSAwMCAwMCAgICAwMCAwOCA1NCA1MyA0NSA0ZSAwYyAwMQoJCSAw
 MCAwMCAwMCAxNCA0OSAwNyA1ZiA1MCAgICA0NCA0MyAwMSA4YSA2OCAwYSAwOCA0MwoJCSA0
 MSA1MCA0MSA3MCA0MyA0MSA1MCA0MSAgICA1NCA1OSA1MCA0NSA4YSA2OCAwYSAwMAoJCSA1
 MiA0NSA1NiA1MyA4YSA2OCAwYSAwNCAgICA1MyA0OSA1YSA0NSA3MCA4NyA2OCA2MAoJCSA3
 MCA3NCA2MCAwYSAwOCAwMCA2MSA1YiAgICAxMyA2OCAwYSA0MCA3NyA2MSAwYSAwOAoJCSAw
 MCA1NCA0NSA0ZCA1MCAwOCA1MyA1NCAgICA1MyAzMCAxMSAwNyAwYSAwNCAwMCAwMAoJCSAw
 MCAwMCA3MyA1MyA1NCA1MyAzMCA1NCAgICA0NSA0ZCA1MCA2MiA1ZiA0ZiA1MyA0MwoJCSAx
 MSAxMyAwYSAxMCAxNiBhNiA3NyA0MCAgICAwYyAyOSBiZSA0NyA5ZSBiZCBkOCA3MAoJCSA1
 OCA3MSAzOSA1MyA1MiA0NSA1NiA1MyAgICA1MyA0OSA1YSA0NSA2MiAxNCA0ZSAwZgoJCSA1
 ZiA0ZiA1MyA0MyAwNCA4YSA2YiAwYSAgICAwNCA0MyA0MSA1MCA0MSA3MCA0MyA0MQoJCSA1
 MCA0MSA1NCA1OSA1MCA0NSA4YSA2YiAgICAwYSAwMCA1MyA1NCA1MyAzMCA4YSA2YgoJCSAw
 YSAwNCA0MyA0MSA1MCAzMCA4YSA2OCAgICAwYSAwMCA0OSA0OSA0NCAzMCA4YSA2OAoJCSAw
 YSAwNCA0OSA0OSA0NCAzMSA4YSA2OCAgICAwYSAwOCA0OSA0OSA0NCAzMiA4YSA2OAoJCSAw
 YSAwYyA0OSA0OSA0NCAzMyAwOCA1NSAgICA0OSA0NCAzMCAxMSAxMyAwYSAxMCAxNgoJCSBh
 NiA3NyA0MCAwYyAyOSBiZSA0NyA5ZSAgICBiZCBkOCA3MCA1OCA3MSAzOSA1MyA4YQoJCSA2
 OCAwYSAwMCA0NSA0OSA0NCAzMCA4YSAgICA2OCAwYSAwNCA0NSA0OSA0NCAzMSA4YQoJCSA2
 OCAwYSAwOCA0NSA0OSA0NCAzMiA4YSAgICA2OCAwYSAwYyA0NSA0OSA0NCAzMyBhMAoJCSA0
 NyAwMyA5MiA5MCA5MCA5MyA0OSA0OSAgICA0NCAzMCA0NSA0OSA0NCAzMCA5MyA0OQoJCSA0
 OSA0NCAzMSA0NSA0OSA0NCAzMSA5MCAgICA5MyA0OSA0OSA0NCAzMiA0NSA0OSA0NAoJCSAz
 MiA5MyA0OSA0OSA0NCAzMyA0NSA0OSAgICA0NCAzMyA3MCAwYSAwNiA4OCA1MyA1NAoJCSA1
 MyAzMCAwYSAwMCAwMCBhNCA2YiBhMCAgICA0NCAwMSA5MiA5MyA2OSAwYSAwMSA3MAoJCSAw
 YSAwYSA4OCA1MyA1NCA1MyAzMCAwYSAgICAwMCAwMCBhNCA2YiBhMCA0OCAwMSA3YgoJCSA1
 MyA1NCA1MyAzMCAwYSAwMSAwMCA3YiAgICA0MyA0MSA1MCAzMCAwYiBmZiAwYiA0MwoJCSA0
 MSA1MCAzMCBhNCA2YiA3YiA0MyA0MSAgICA1MCAzMCAwYiBmZiAwYiA0MyA0MSA1MAoJCSAz
 MCA3MCA0MyA0MSA1MCAzMCA1NCA1OSAgICA1MCA0NSBhNCA2YiAxNCA0MiAxYyA1ZgoJCSA1
 MCA1MyA1MyAwMCBhMCA0OCAxYiA1MCAgICA1MyA0NSA0ZSBhNCAxMiA0MCAxYiAwZAoJCSAx
 MiAyMCAwNiAwYyA2NSAwYSAwMCAwMCAgICAwYyAxOCA3MyAwMSAwMCAwYyAwYSAwMAoJCSAw
 MCAwMCAwYyAwYSAwMCAwMCAwMCAwYyAgICAxNSAwMCAwMCAwMCAwYyAxNSAwMCAwMAoJCSAw
 MCAxMiAyMCAwNiAwYyA2NCAwYSAwMCAgICAwMCAwYyAxOCA3MyAwMSAwMCAwYyAwYQoJCSAw
 MCAwMCAwMCAwYyAwYSAwMCAwMCAwMCAgICAwYyAxNCAwMCAwMCAwMCAwYyAxNCAwMAoJCSAw
 MCAwMCAxMiAyMCAwNiAwYyBkZiAwOSAgICAwMCAwMCAwYyBiMCAzMCAwMSAwMCAwYwoJCSAw
 YSAwMCAwMCAwMCAwYyAwYSAwMCAwMCAgICAwMCAwYyAxMyAwMCAwMCAwMCAwYyAxMwoJCSAw
 MCAwMCAwMCAxMiAyMCAwNiAwYyA1YSAgICAwOSAwMCAwMCAwYyA3MCAxMSAwMSAwMAoJCSAw
 YyAwYSAwMCAwMCAwMCAwYyAwYSAwMCAgICAwMCAwMCAwYyAxMiAwMCAwMCAwMCAwYwoJCSAx
 MiAwMCAwMCAwMCAxMiAyMCAwNiAwYyAgICBkNSAwOCAwMCAwMCAwYyBhOCBkZSAwMAoJCSAw
 MCAwYyAwYSAwMCAwMCAwMCAwYyAwYSAgICAwMCAwMCAwMCAwYyAxMSAwMCAwMCAwMAoJCSAw
 YyAxMSAwMCAwMCAwMCAxMiAyMCAwNiAgICAwYyA1MCAwOCAwMCAwMCAwYyAzOCBjNwoJCSAw
 MCAwMCAwYyAwYSAwMCAwMCAwMCAwYyAgICAwYSAwMCAwMCAwMCAwYyAxMCAwMCAwMAoJCSAw
 MCAwYyAxMCAwMCAwMCAwMCAxMiAyMCAgICAwNiAwYyBjYiAwNyAwMCAwMCAwYyAyOAoJCSBh
 MCAwMCAwMCAwYyAwYSAwMCAwMCAwMCAgICAwYyAwYSAwMCAwMCAwMCAwYyAwZiAwMAoJCSAw
 MCAwMCAwYyAwZiAwMCAwMCAwMCAxMiAgICAyMCAwNiAwYyA0NiAwNyAwMCAwMCAwYwoJCSBh
 MCA4YyAwMCAwMCAwYyAwYSAwMCAwMCAgICAwMCAwYyAwYSAwMCAwMCAwMCAwYyAwZQoJCSAw
 MCAwMCAwMCAwYyAwZSAwMCAwMCAwMCAgICAxMiAyMCAwNiAwYyBjMSAwNiAwMCAwMAoJCSAw
 YyA2MCA2ZCAwMCAwMCAwYyAwYSAwMCAgICAwMCAwMCAwYyAwYSAwMCAwMCAwMCAwYwoJCSAw
 ZCAwMCAwMCAwMCAwYyAwZCAwMCAwMCAgICAwMCAxMiAyMCAwNiAwYyAzYyAwNiAwMAoJCSAw
 MCAwYyBhOCA2MSAwMCAwMCAwYyAwYSAgICAwMCAwMCAwMCAwYyAwYSAwMCAwMCAwMAoJCSAw
 YyAwYyAwMCAwMCAwMCAwYyAwYyAwMCAgICAwMCAwMCAxMiAyMCAwNiAwYyBiNyAwNQoJCSAw
 MCAwMCAwYyAzOCA0YSAwMCAwMCAwYyAgICAwYSAwMCAwMCAwMCAwYyAwYSAwMCAwMAoJCSAw
 MCAwYyAwYiAwMCAwMCAwMCAwYyAwYiAgICAwMCAwMCAwMCAxMiAyMCAwNiAwYyAzMgoJCSAw
 NSAwMCAwMCAwYyA2OCA0MiAwMCAwMCAgICAwYyAwYSAwMCAwMCAwMCAwYyAwYSAwMAoJCSAw
 MCAwMCAwYyAwYSAwMCAwMCAwMCAwYyAgICAwYSAwMCAwMCAwMCAxMiAyMCAwNiAwYwoJCSBh
 ZCAwNCAwMCAwMCAwYyBjOCAzMiAwMCAgICAwMCAwYyAwYSAwMCAwMCAwMCAwYyAwYQoJCSAw
 MCAwMCAwMCAwYyAwOSAwMCAwMCAwMCAgICAwYyAwOSAwMCAwMCAwMCBhNCAwMCAxNAoJCSAz
 NSA1ZiA1MCA0MyA1NCAwMCBhNCAxMiAgICA0ZCAwMiAwMiAxMSAxNCAwYSAxMSA4MgoJCSAw
 YyAwMCA3ZiA0MCAwMCAwMCA5OSAwMSAgICAwMCAwMCAwMCAwMCAwMCAwMCA3OSAwMAoJCSAx
 MSAxNCAwYSAxMSA4MiAwYyAwMCA3ZiAgICAxMCAwMCAwMCA5OCAwMSAwMCAwMCAwMAoJCSAw
 MCAwMCAwMCA3OSAwMCAxNCAwOCA1ZiAgICA1MCA1MCA0MyAwMCBhNCAwMCAxNCA0MgoJCSAw
 MyA1ZiA1MCA1MyA0NCAwMCBhMCA0OCAgICAwMiA3YiA1NCA1OSA1MCA0NSAwYyAyMAoJCSAw
 OCAwMCAwMCAwMCBhNCAxMiA0OSAwMSAgICAwMSAxMiAxNSAwNSAwYSAwNSAwYSAwMAoJCSAw
 YyAwMCAwMCAwMCAwMCAwYyBmZSAwMCAgICAwMCAwMCAwYyAwNCAwMCAwMCAwMCBhNAoJCSAw
 MCAxNCA0NCAxYSA1ZiA0MyA1MyA1NCAgICAwMCBhMCA0YSAwYSA1YiAxMiA1YyA1ZgoJCSA0
 ZiA1MyA0OSA2MCBhMCA0ZSAwNCA5MCAgICA1YyA1ZiA0ZiA1MyA0OSAwZCA1NyA2OQoJCSA2
 ZSA2NCA2ZiA3NyA3MyAyMCAzMiAzMCAgICAzMCAzMSAyZSAzMSAwMCA5MCA5MiA1YwoJCSA1
 ZiA0ZiA1MyA0OSAwZCA1NyA2OSA2ZSAgICA2NCA2ZiA3NyA3MyAyMCAzMiAzMCAzMAoJCSAz
 NiAwMCA5MiA1YyA1ZiA0ZiA1MyA0OSAgICAwZCA1NyA2OSA2ZSA2NCA2ZiA3NyA3MwoJCSAy
 MCAzMiAzMCAzMCAzMSAyZSAzMSAyMCAgICA1MyA1MCAzMSAwMCA3MCAwYSAwMCA0MwoJCSA1
 MyA0NSA0ZSBhMCA0MCAwNSA5MCA1YyAgICA1ZiA0ZiA1MyA0OSAwZCA1NyA2OSA2ZQoJCSA2
 NCA2ZiA3NyA3MyAyMCAzMiAzMCAzMCAgICAzMSAwMCA5MCA5MiA1YyA1ZiA0ZiA1MwoJCSA0
 OSAwZCA1NyA2OSA2ZSA2NCA2ZiA3NyAgICA3MyAyMCAzMiAzMCAzMCAzMSAyMCA1MwoJCSA1
 MCAzMiAwMCA5MiA1YyA1ZiA0ZiA1MyAgICA0OSAwZCA1NyA2OSA2ZSA2NCA2ZiA3NwoJCSA3
 MyAyMCAzMiAzMCAzMCAzMSAyZSAzMSAgICAyMCA1MyA1MCAzMSAwMCA3MCAwYSAwMAoJCSA0
 MyA1MyA0NSA0ZSBhMCA0MSAwZiA0MyAgICA1MyA0NSA0ZSBhMCA0ZCAwNyA5MCA0ZAoJCSA1
 NyA0ZiA1MyA3YiA1NCA1OSA1MCA0NSAgICAwYiAwMCAwMiAwMCBhNCAxMiA0YiAwNgoJCSAw
 NCAwYSAwMyAxMiAyMSAwNCAxMSAxNCAgICAwYSAxMSA4MiAwYyAwMCA3ZiAwMSAwMgoJCSAw
 MSAwMCAwMCAwMCAwMCAwMCAwMCAwMCAgICAwMCA3OSAwMCAwYSAwMSAwYiAwMSAwMAoJCSAw
 YyBlOCAwMyAwMCAwMCAxMiAyMSAwNCAgICAxMSAxNCAwYSAxMSA4MiAwYyAwMCA3ZgoJCSAw
 MSAwMiAwMSAxMCAwMCAwMCAwMCAwMCAgICAwMCAwMCAwMCA3OSAwMCAwYSAwMiAwYgoJCSA0
 MCAwMCAwYyBmNCAwMSAwMCAwMCAxMiAgICAyMSAwNCAxMSAxNCAwYSAxMSA4MiAwYwoJCSAw
 MCA3ZiAwMSAwMiAwMSAyMCAwMCAwMCAgICAwMCAwMCAwMCAwMCAwMCA3OSAwMCAwYQoJCSAw
 MyAwYiA2MCAwMCAwYyA1ZSAwMSAwMCAgICAwMCBhNCAxMiA0YiAwNiAwNCAwYSAwMwoJCSAx
 MiAyMSAwNCAxMSAxNCAwYSAxMSA4MiAgICAwYyAwMCA3ZiAwMCAwMCAwMCAwMCAwMAoJCSAw
 MCAwMCAwMCAwMCAwMCAwMCA3OSAwMCAgICAwYSAwMSAwYiAwMSAwMCAwYyBlOCAwMwoJCSAw
 MCAwMCAxMiAyMSAwNCAxMSAxNCAwYSAgICAxMSA4MiAwYyAwMCAwMSAwOCAwMCAwMAoJCSAx
 NCAwNCAwMCAwMCAwMCAwMCAwMCAwMCAgICA3OSAwMCAwYSAwMiAwYiA0MCAwMCAwYwoJCSBm
 NCAwMSAwMCAwMCAxMiAyMSAwNCAxMSAgICAxNCAwYSAxMSA4MiAwYyAwMCAwMSAwOAoJCSAw
 MCAwMCAxNSAwNCAwMCAwMCAwMCAwMCAgICAwMCAwMCA3OSAwMCAwYSAwMyAwYiA2MAoJCSAw
 MCAwYyA1ZSAwMSAwMCAwMCAxNCAwOCAgICA1ZiA1NCA1MCA0MyAwMCBhNCAwMCAxNAoJCSAz
 NSA1ZiA1MCA1NCA0MyAwMCBhNCAxMiAgICA0ZCAwMiAwMiAxMSAxNCAwYSAxMSA4MgoJCSAw
 YyAwMCA3ZiAwMCAwMCAwMCAwMCAwMCAgICAwMCAwMCAwMCAwMCAwMCAwMCA3OSAwMAoJCSAx
 MSAxNCAwYSAxMSA4MiAwYyAwMCA3ZiAgICAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMAoJCSAw
 MCAwMCAwMCA3OSAwMCAxNCA0ZiAwZiAgICA1ZiA1NCA1MyA1MyAwMCBhMCA0NSAwZgoJCSA5
 MCA1NCA1MyA0NSA0ZSA3YiA1NCA1OSAgICA1MCA0NSAwYiAwNCAwMCAwMCBhNCAxMgoJCSA0
 MyAwZSAwOCAxMiAxYiAwNSAwYyA2NCAgICAwMCAwMCAwMCAwYyBmOCAwMiAwMCAwMAoJCSAw
 YyAwMCAwMCAwMCAwMCAwYyAwMCAwMCAgICAwMCAwMCAwYyAwMCAwMCAwMCAwMCAxMgoJCSAx
 YiAwNSAwYyA1OCAwMCAwMCAwMCAwYyAgICA5OSAwMiAwMCAwMCAwYyAwMCAwMCAwMAoJCSAw
 MCAwYyAxZSAwMCAwMCAwMCAwYyAwMCAgICAwMCAwMCAwMCAxMiAxYiAwNSAwYyA0YgoJCSAw
 MCAwMCAwMCAwYyAzYSAwMiAwMCAwMCAgICAwYyAwMCAwMCAwMCAwMCAwYyAxYyAwMAoJCSAw
 MCAwMCAwYyAwMCAwMCAwMCAwMCAxMiAgICAxYiAwNSAwYyAzZiAwMCAwMCAwMCAwYwoJCSBk
 YiAwMSAwMCAwMCAwYyAwMCAwMCAwMCAgICAwMCAwYyAxYSAwMCAwMCAwMCAwYyAwMAoJCSAw
 MCAwMCAwMCAxMiAxYiAwNSAwYyAzMiAgICAwMCAwMCAwMCAwYyA3YyAwMSAwMCAwMAoJCSAw
 YyAwMCAwMCAwMCAwMCAwYyAxOCAwMCAgICAwMCAwMCAwYyAwMCAwMCAwMCAwMCAxMgoJCSAx
 YiAwNSAwYyAyNiAwMCAwMCAwMCAwYyAgICAxZCAwMSAwMCAwMCAwYyAwMCAwMCAwMAoJCSAw
 MCAwYyAxNiAwMCAwMCAwMCAwYyAwMCAgICAwMCAwMCAwMCAxMiAxYiAwNSAwYyAxOQoJCSAw
 MCAwMCAwMCAwYyBiZSAwMCAwMCAwMCAgICAwYyAwMCAwMCAwMCAwMCAwYyAxNCAwMAoJCSAw
 MCAwMCAwYyAwMCAwMCAwMCAwMCAxMiAgICAxYiAwNSAwYyAwZCAwMCAwMCAwMCAwYwoJCSA1
 ZiAwMCAwMCAwMCAwYyAwMCAwMCAwMCAgICAwMCAwYyAxMiAwMCAwMCAwMCAwYyAwMAoJCSAw
 MCAwMCAwMCBhNCAwMCAxNCA0MiAwMyAgICA1ZiA1NCA1MyA0NCAwMCBhMCA0OCAwMgoJCSA3
 YiA1NCA1OSA1MCA0NSAwYyA4MCAwMCAgICAwMCAwMCAwMCBhNCAxMiA0OSAwMSAwMQoJCSAx
 MiAxNSAwNSAwYSAwNSAwYSAwMCAwYyAgICAwMCAwMCAwMCAwMCAwYyBmZCAwMCAwMAoJCSAw
 MCAwYyAwMSAwMCAwMCAwMCBhNCAwMCAgICAxMCA0MyA3MCA1YyAyZSA1ZiA1MCA1MgoJCSA1
 ZiA0MyA1MCA1NSAzMSAwOCA1NCA1OSAgICA1MCA0NSAwYyAwMCAwMCAwMCAwMCAwOAoJCSA1
 MCA1MyA0NSA0ZSAwYyAwMSAwMCAwMCAgICAwMCAwOCA0MyA1MyA0NSA0ZSAwYyAwMQoJCSAw
 MCAwMCAwMCAwOCA0ZCA1NyA0ZiA1MyAgICAwYyAwMSAwMCAwMCAwMCAwOCA1NCA1MwoJCSA0
 NSA0ZSAwYyAwMSAwMCAwMCAwMCAxNCAgICA0OSAwNyA1ZiA1MCA0NCA0MyAwMSA4YQoJCSA2
 OCAwYSAwOCA0MyA0MSA1MCA0MSA3MCAgICA0MyA0MSA1MCA0MSA1NCA1OSA1MCA0NQoJCSA4
 YSA2OCAwYSAwMCA1MiA0NSA1NiA1MyAgICA4YSA2OCAwYSAwNCA1MyA0OSA1YSA0NQoJCSA3
 MCA4NyA2OCA2MCA3MCA3NCA2MCAwYSAgICAwOCAwMCA2MSA1YiAxMyA2OCAwYSA0MAoJCSA3
 NyA2MSAwYSAwOCAwMCA1NCA0NSA0ZCAgICA1MCAwOCA1MyA1NCA1MyAzMCAxMSAwNwoJCSAw
 YSAwNCAwMCAwMCAwMCAwMCA3MyA1MyAgICA1NCA1MyAzMCA1NCA0NSA0ZCA1MCA2MgoJCSA1
 ZiA0ZiA1MyA0MyAxMSAxMyAwYSAxMCAgICAxNiBhNiA3NyA0MCAwYyAyOSBiZSA0NwoJCSA5
 ZSBiZCBkOCA3MCA1OCA3MSAzOSA1MyAgICA1MiA0NSA1NiA1MyA1MyA0OSA1YSA0NQoJCSA2
 MiAxNCA0ZSAwZiA1ZiA0ZiA1MyA0MyAgICAwNCA4YSA2YiAwYSAwNCA0MyA0MSA1MAoJCSA0
 MSA3MCA0MyA0MSA1MCA0MSA1NCA1OSAgICA1MCA0NSA4YSA2YiAwYSAwMCA1MyA1NAoJCSA1
 MyAzMCA4YSA2YiAwYSAwNCA0MyA0MSAgICA1MCAzMCA4YSA2OCAwYSAwMCA0OSA0OQoJCSA0
 NCAzMCA4YSA2OCAwYSAwNCA0OSA0OSAgICA0NCAzMSA4YSA2OCAwYSAwOCA0OSA0OQoJCSA0
 NCAzMiA4YSA2OCAwYSAwYyA0OSA0OSAgICA0NCAzMyAwOCA1NSA0OSA0NCAzMCAxMQoJCSAx
 MyAwYSAxMCAxNiBhNiA3NyA0MCAwYyAgICAyOSBiZSA0NyA5ZSBiZCBkOCA3MCA1OAoJCSA3
 MSAzOSA1MyA4YSA2OCAwYSAwMCA0NSAgICA0OSA0NCAzMCA4YSA2OCAwYSAwNCA0NQoJCSA0
 OSA0NCAzMSA4YSA2OCAwYSAwOCA0NSAgICA0OSA0NCAzMiA4YSA2OCAwYSAwYyA0NQoJCSA0
 OSA0NCAzMyBhMCA0NyAwMyA5MiA5MCAgICA5MCA5MyA0OSA0OSA0NCAzMCA0NSA0OQoJCSA0
 NCAzMCA5MyA0OSA0OSA0NCAzMSA0NSAgICA0OSA0NCAzMSA5MCA5MyA0OSA0OSA0NAoJCSAz
 MiA0NSA0OSA0NCAzMiA5MyA0OSA0OSAgICA0NCAzMyA0NSA0OSA0NCAzMyA3MCAwYQoJCSAw
 NiA4OCA1MyA1NCA1MyAzMCAwYSAwMCAgICAwMCBhNCA2YiBhMCA0NCAwMSA5MiA5MwoJCSA2
 OSAwYSAwMSA3MCAwYSAwYSA4OCA1MyAgICA1NCA1MyAzMCAwYSAwMCAwMCBhNCA2YgoJCSBh
 MCA0OCAwMSA3YiA1MyA1NCA1MyAzMCAgICAwYSAwMSAwMCA3YiA0MyA0MSA1MCAzMAoJCSAw
 YiBmZiAwYiA0MyA0MSA1MCAzMCBhNCAgICA2YiA3YiA0MyA0MSA1MCAzMCAwYiBmZgoJCSAw
 YiA0MyA0MSA1MCAzMCA3MCA0MyA0MSAgICA1MCAzMCA1NCA1OSA1MCA0NSBhNCA2YgoJCSAx
 NCA0MiAxYyA1ZiA1MCA1MyA1MyAwMCAgICBhMCA0OCAxYiA1MCA1MyA0NSA0ZSBhNAoJCSAx
 MiA0MCAxYiAwZCAxMiAyMCAwNiAwYyAgICA2NSAwYSAwMCAwMCAwYyAxOCA3MyAwMQoJCSAw
 MCAwYyAwYSAwMCAwMCAwMCAwYyAwYSAgICAwMCAwMCAwMCAwYyAxNSAwMCAwMCAwMAoJCSAw
 YyAxNSAwMCAwMCAwMCAxMiAyMCAwNiAgICAwYyA2NCAwYSAwMCAwMCAwYyAxOCA3MwoJCSAw
 MSAwMCAwYyAwYSAwMCAwMCAwMCAwYyAgICAwYSAwMCAwMCAwMCAwYyAxNCAwMCAwMAoJCSAw
 MCAwYyAxNCAwMCAwMCAwMCAxMiAyMCAgICAwNiAwYyBkZiAwOSAwMCAwMCAwYyBiMAoJCSAz
 MCAwMSAwMCAwYyAwYSAwMCAwMCAwMCAgICAwYyAwYSAwMCAwMCAwMCAwYyAxMyAwMAoJCSAw
 MCAwMCAwYyAxMyAwMCAwMCAwMCAxMiAgICAyMCAwNiAwYyA1YSAwOSAwMCAwMCAwYwoJCSA3
 MCAxMSAwMSAwMCAwYyAwYSAwMCAwMCAgICAwMCAwYyAwYSAwMCAwMCAwMCAwYyAxMgoJCSAw
 MCAwMCAwMCAwYyAxMiAwMCAwMCAwMCAgICAxMiAyMCAwNiAwYyBkNSAwOCAwMCAwMAoJCSAw
 YyBhOCBkZSAwMCAwMCAwYyAwYSAwMCAgICAwMCAwMCAwYyAwYSAwMCAwMCAwMCAwYwoJCSAx
 MSAwMCAwMCAwMCAwYyAxMSAwMCAwMCAgICAwMCAxMiAyMCAwNiAwYyA1MCAwOCAwMAoJCSAw
 MCAwYyAzOCBjNyAwMCAwMCAwYyAwYSAgICAwMCAwMCAwMCAwYyAwYSAwMCAwMCAwMAoJCSAw
 YyAxMCAwMCAwMCAwMCAwYyAxMCAwMCAgICAwMCAwMCAxMiAyMCAwNiAwYyBjYiAwNwoJCSAw
 MCAwMCAwYyAyOCBhMCAwMCAwMCAwYyAgICAwYSAwMCAwMCAwMCAwYyAwYSAwMCAwMAoJCSAw
 MCAwYyAwZiAwMCAwMCAwMCAwYyAwZiAgICAwMCAwMCAwMCAxMiAyMCAwNiAwYyA0NgoJCSAw
 NyAwMCAwMCAwYyBhMCA4YyAwMCAwMCAgICAwYyAwYSAwMCAwMCAwMCAwYyAwYSAwMAoJCSAw
 MCAwMCAwYyAwZSAwMCAwMCAwMCAwYyAgICAwZSAwMCAwMCAwMCAxMiAyMCAwNiAwYwoJCSBj
 MSAwNiAwMCAwMCAwYyA2MCA2ZCAwMCAgICAwMCAwYyAwYSAwMCAwMCAwMCAwYyAwYQoJCSAw
 MCAwMCAwMCAwYyAwZCAwMCAwMCAwMCAgICAwYyAwZCAwMCAwMCAwMCAxMiAyMCAwNgoJCSAw
 YyAzYyAwNiAwMCAwMCAwYyBhOCA2MSAgICAwMCAwMCAwYyAwYSAwMCAwMCAwMCAwYwoJCSAw
 YSAwMCAwMCAwMCAwYyAwYyAwMCAwMCAgICAwMCAwYyAwYyAwMCAwMCAwMCAxMiAyMAoJCSAw
 NiAwYyBiNyAwNSAwMCAwMCAwYyAzOCAgICA0YSAwMCAwMCAwYyAwYSAwMCAwMCAwMAoJCSAw
 YyAwYSAwMCAwMCAwMCAwYyAwYiAwMCAgICAwMCAwMCAwYyAwYiAwMCAwMCAwMCAxMgoJCSAy
 MCAwNiAwYyAzMiAwNSAwMCAwMCAwYyAgICA2OCA0MiAwMCAwMCAwYyAwYSAwMCAwMAoJCSAw
 MCAwYyAwYSAwMCAwMCAwMCAwYyAwYSAgICAwMCAwMCAwMCAwYyAwYSAwMCAwMCAwMAoJCSAx
 MiAyMCAwNiAwYyBhZCAwNCAwMCAwMCAgICAwYyBjOCAzMiAwMCAwMCAwYyAwYSAwMAoJCSAw
 MCAwMCAwYyAwYSAwMCAwMCAwMCAwYyAgICAwOSAwMCAwMCAwMCAwYyAwOSAwMCAwMAoJCSAw
 MCBhNCAwMCAxNCAzNSA1ZiA1MCA0MyAgICA1NCAwMCBhNCAxMiA0ZCAwMiAwMiAxMQoJCSAx
 NCAwYSAxMSA4MiAwYyAwMCA3ZiA0MCAgICAwMCAwMCA5OSAwMSAwMCAwMCAwMCAwMAoJCSAw
 MCAwMCA3OSAwMCAxMSAxNCAwYSAxMSAgICA4MiAwYyAwMCA3ZiAxMCAwMCAwMCA5OAoJCSAw
 MSAwMCAwMCAwMCAwMCAwMCAwMCA3OSAgICAwMCAxNCAwOCA1ZiA1MCA1MCA0MyAwMAoJCSBh
 NCAwMCAxNCA0MiAwMyA1ZiA1MCA1MyAgICA0NCAwMCBhMCA0OCAwMiA3YiA1NCA1OQoJCSA1
 MCA0NSAwYyAyMCAwOCAwMCAwMCAwMCAgICBhNCAxMiA0OSAwMSAwMSAxMiAxNSAwNQoJCSAw
 YSAwNSAwYSAwMCAwYyAwMCAwMCAwMCAgICAwMCAwYyBmZSAwMCAwMCAwMCAwYyAwNAoJCSAw
 MCAwMCAwMCBhNCAwMCAxNCA0NCAxYSAgICA1ZiA0MyA1MyA1NCAwMCBhMCA0YSAwYQoJCSA1
 YiAxMiA1YyA1ZiA0ZiA1MyA0OSA2MCAgICBhMCA0ZSAwNCA5MCA1YyA1ZiA0ZiA1MwoJCSA0
 OSAwZCA1NyA2OSA2ZSA2NCA2ZiA3NyAgICA3MyAyMCAzMiAzMCAzMCAzMSAyZSAzMQoJCSAw
 MCA5MCA5MiA1YyA1ZiA0ZiA1MyA0OSAgICAwZCA1NyA2OSA2ZSA2NCA2ZiA3NyA3MwoJCSAy
 MCAzMiAzMCAzMCAzNiAwMCA5MiA1YyAgICA1ZiA0ZiA1MyA0OSAwZCA1NyA2OSA2ZQoJCSA2
 NCA2ZiA3NyA3MyAyMCAzMiAzMCAzMCAgICAzMSAyZSAzMSAyMCA1MyA1MCAzMSAwMAoJCSA3
 MCAwYSAwMCA0MyA1MyA0NSA0ZSBhMCAgICA0MCAwNSA5MCA1YyA1ZiA0ZiA1MyA0OQoJCSAw
 ZCA1NyA2OSA2ZSA2NCA2ZiA3NyA3MyAgICAyMCAzMiAzMCAzMCAzMSAwMCA5MCA5MgoJCSA1
 YyA1ZiA0ZiA1MyA0OSAwZCA1NyA2OSAgICA2ZSA2NCA2ZiA3NyA3MyAyMCAzMiAzMAoJCSAz
 MCAzMSAyMCA1MyA1MCAzMiAwMCA5MiAgICA1YyA1ZiA0ZiA1MyA0OSAwZCA1NyA2OQoJCSA2
 ZSA2NCA2ZiA3NyA3MyAyMCAzMiAzMCAgICAzMCAzMSAyZSAzMSAyMCA1MyA1MCAzMQoJCSAw
 MCA3MCAwYSAwMCA0MyA1MyA0NSA0ZSAgICBhMCA0MSAwZiA0MyA1MyA0NSA0ZSBhMAoJCSA0
 ZCAwNyA5MCA0ZCA1NyA0ZiA1MyA3YiAgICA1NCA1OSA1MCA0NSAwYiAwMCAwMiAwMAoJCSBh
 NCAxMiA0YiAwNiAwNCAwYSAwMyAxMiAgICAyMSAwNCAxMSAxNCAwYSAxMSA4MiAwYwoJCSAw
 MCA3ZiAwMSAwMiAwMSAwMCAwMCAwMCAgICAwMCAwMCAwMCAwMCAwMCA3OSAwMCAwYQoJCSAw
 MSAwYiAwMSAwMCAwYyBlOCAwMyAwMCAgICAwMCAxMiAyMSAwNCAxMSAxNCAwYSAxMQoJCSA4
 MiAwYyAwMCA3ZiAwMSAwMiAwMSAxMCAgICAwMCAwMCAwMCAwMCAwMCAwMCAwMCA3OQoJCSAw
 MCAwYSAwMiAwYiA0MCAwMCAwYyBmNCAgICAwMSAwMCAwMCAxMiAyMSAwNCAxMSAxNAoJCSAw
 YSAxMSA4MiAwYyAwMCA3ZiAwMSAwMiAgICAwMSAyMCAwMCAwMCAwMCAwMCAwMCAwMAoJCSAw
 MCA3OSAwMCAwYSAwMyAwYiA2MCAwMCAgICAwYyA1ZSAwMSAwMCAwMCBhNCAxMiA0YgoJCSAw
 NiAwNCAwYSAwMyAxMiAyMSAwNCAxMSAgICAxNCAwYSAxMSA4MiAwYyAwMCA3ZiAwMAoJCSAw
 MCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAgICAwMCAwMCA3OSAwMCAwYSAwMSAwYiAwMQoJCSAw
 MCAwYyBlOCAwMyAwMCAwMCAxMiAyMSAgICAwNCAxMSAxNCAwYSAxMSA4MiAwYyAwMAoJCSAw
 MSAwOCAwMCAwMCAxNCAwNCAwMCAwMCAgICAwMCAwMCAwMCAwMCA3OSAwMCAwYSAwMgoJCSAw
 YiA0MCAwMCAwYyBmNCAwMSAwMCAwMCAgICAxMiAyMSAwNCAxMSAxNCAwYSAxMSA4MgoJCSAw
 YyAwMCAwMSAwOCAwMCAwMCAxNSAwNCAgICAwMCAwMCAwMCAwMCAwMCAwMCA3OSAwMAoJCSAw
 YSAwMyAwYiA2MCAwMCAwYyA1ZSAwMSAgICAwMCAwMCAxNCAwOCA1ZiA1NCA1MCA0MwoJCSAw
 MCBhNCAwMCAxNCAzNSA1ZiA1MCA1NCAgICA0MyAwMCBhNCAxMiA0ZCAwMiAwMiAxMQoJCSAx
 NCAwYSAxMSA4MiAwYyAwMCA3ZiAwMCAgICAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMAoJCSAw
 MCAwMCA3OSAwMCAxMSAxNCAwYSAxMSAgICA4MiAwYyAwMCA3ZiAwMCAwMCAwMCAwMAoJCSAw
 MCAwMCAwMCAwMCAwMCAwMCAwMCA3OSAgICAwMCAxNCA0ZiAwZiA1ZiA1NCA1MyA1MwoJCSAw
 MCBhMCA0NSAwZiA5MCA1NCA1MyA0NSAgICA0ZSA3YiA1NCA1OSA1MCA0NSAwYiAwNAoJCSAw
 MCAwMCBhNCAxMiA0MyAwZSAwOCAxMiAgICAxYiAwNSAwYyA2NCAwMCAwMCAwMCAwYwoJCSBm
 OCAwMiAwMCAwMCAwYyAwMCAwMCAwMCAgICAwMCAwYyAwMCAwMCAwMCAwMCAwYyAwMAoJCSAw
 MCAwMCAwMCAxMiAxYiAwNSAwYyA1OCAgICAwMCAwMCAwMCAwYyA5OSAwMiAwMCAwMAoJCSAw
 YyAwMCAwMCAwMCAwMCAwYyAxZSAwMCAgICAwMCAwMCAwYyAwMCAwMCAwMCAwMCAxMgoJCSAx
 YiAwNSAwYyA0YiAwMCAwMCAwMCAwYyAgICAzYSAwMiAwMCAwMCAwYyAwMCAwMCAwMAoJCSAw
 MCAwYyAxYyAwMCAwMCAwMCAwYyAwMCAgICAwMCAwMCAwMCAxMiAxYiAwNSAwYyAzZgoJCSAw
 MCAwMCAwMCAwYyBkYiAwMSAwMCAwMCAgICAwYyAwMCAwMCAwMCAwMCAwYyAxYSAwMAoJCSAw
 MCAwMCAwYyAwMCAwMCAwMCAwMCAxMiAgICAxYiAwNSAwYyAzMiAwMCAwMCAwMCAwYwoJCSA3
 YyAwMSAwMCAwMCAwYyAwMCAwMCAwMCAgICAwMCAwYyAxOCAwMCAwMCAwMCAwYyAwMAoJCSAw
 MCAwMCAwMCAxMiAxYiAwNSAwYyAyNiAgICAwMCAwMCAwMCAwYyAxZCAwMSAwMCAwMAoJCSAw
 YyAwMCAwMCAwMCAwMCAwYyAxNiAwMCAgICAwMCAwMCAwYyAwMCAwMCAwMCAwMCAxMgoJCSAx
 YiAwNSAwYyAxOSAwMCAwMCAwMCAwYyAgICBiZSAwMCAwMCAwMCAwYyAwMCAwMCAwMAoJCSAw
 MCAwYyAxNCAwMCAwMCAwMCAwYyAwMCAgICAwMCAwMCAwMCAxMiAxYiAwNSAwYyAwZAoJCSAw
 MCAwMCAwMCAwYyA1ZiAwMCAwMCAwMCAgICAwYyAwMCAwMCAwMCAwMCAwYyAxMiAwMAoJCSAw
 MCAwMCAwYyAwMCAwMCAwMCAwMCBhNCAgICAwMCAxNCA0MiAwMyA1ZiA1NCA1MyA0NAoJCSAw
 MCBhMCA0OCAwMiA3YiA1NCA1OSA1MCAgICA0NSAwYyA4MCAwMCAwMCAwMCAwMCBhNAoJCSAx
 MiA0OSAwMSAwMSAxMiAxNSAwNSAwYSAgICAwNSAwYSAwMCAwYyAwMiAwMCAwMCAwMAoJCSAw
 YyBmZCAwMCAwMCAwMCAwYyAwMSAwMCAgICAwMCAwMCBhNCAwMCAxMCA0MyA3MCA1YwoJCSAy
 ZSA1ZiA1MCA1MiA1ZiA0MyA1MCA1NSAgICAzMiAwOCA1NCA1OSA1MCA0NSAwYyAwMAoJCSAw
 MCAwMCAwMCAwOCA1MCA1MyA0NSA0ZSAgICAwYyAwMSAwMCAwMCAwMCAwOCA0MyA1MwoJCSA0
 NSA0ZSAwYyAwMSAwMCAwMCAwMCAwOCAgICA0ZCA1NyA0ZiA1MyAwYyAwMSAwMCAwMAoJCSAw
 MCAwOCA1NCA1MyA0NSA0ZSAwYyAwMSAgICAwMCAwMCAwMCAxNCA0OSAwNyA1ZiA1MAoJCSA0
 NCA0MyAwMSA4YSA2OCAwYSAwOCA0MyAgICA0MSA1MCA0MSA3MCA0MyA0MSA1MCA0MQoJCSA1
 NCA1OSA1MCA0NSA4YSA2OCAwYSAwMCAgICA1MiA0NSA1NiA1MyA4YSA2OCAwYSAwNAoJCSA1
 MyA0OSA1YSA0NSA3MCA4NyA2OCA2MCAgICA3MCA3NCA2MCAwYSAwOCAwMCA2MSA1YgoJCSAx
 MyA2OCAwYSA0MCA3NyA2MSAwYSAwOCAgICAwMCA1NCA0NSA0ZCA1MCAwOCA1MyA1NAoJCSA1
 MyAzMCAxMSAwNyAwYSAwNCAwMCAwMCAgICAwMCAwMCA3MyA1MyA1NCA1MyAzMCA1NAoJCSA0
 NSA0ZCA1MCA2MiA1ZiA0ZiA1MyA0MyAgICAxMSAxMyAwYSAxMCAxNiBhNiA3NyA0MAoJCSAw
 YyAyOSBiZSA0NyA5ZSBiZCBkOCA3MCAgICA1OCA3MSAzOSA1MyA1MiA0NSA1NiA1MwoJCSA1
 MyA0OSA1YSA0NSA2MiAxNCA0ZSAwZiAgICA1ZiA0ZiA1MyA0MyAwNCA4YSA2YiAwYQoJCSAw
 NCA0MyA0MSA1MCA0MSA3MCA0MyA0MSAgICA1MCA0MSA1NCA1OSA1MCA0NSA4YSA2YgoJCSAw
 YSAwMCA1MyA1NCA1MyAzMCA4YSA2YiAgICAwYSAwNCA0MyA0MSA1MCAzMCA4YSA2OAoJCSAw
 YSAwMCA0OSA0OSA0NCAzMCA4YSA2OCAgICAwYSAwNCA0OSA0OSA0NCAzMSA4YSA2OAoJCSAw
 YSAwOCA0OSA0OSA0NCAzMiA4YSA2OCAgICAwYSAwYyA0OSA0OSA0NCAzMyAwOCA1NQoJCSA0
 OSA0NCAzMCAxMSAxMyAwYSAxMCAxNiAgICBhNiA3NyA0MCAwYyAyOSBiZSA0NyA5ZQoJCSBi
 ZCBkOCA3MCA1OCA3MSAzOSA1MyA4YSAgICA2OCAwYSAwMCA0NSA0OSA0NCAzMCA4YQoJCSA2
 OCAwYSAwNCA0NSA0OSA0NCAzMSA4YSAgICA2OCAwYSAwOCA0NSA0OSA0NCAzMiA4YQoJCSA2
 OCAwYSAwYyA0NSA0OSA0NCAzMyBhMCAgICA0NyAwMyA5MiA5MCA5MCA5MyA0OSA0OQoJCSA0
 NCAzMCA0NSA0OSA0NCAzMCA5MyA0OSAgICA0OSA0NCAzMSA0NSA0OSA0NCAzMSA5MAoJCSA5
 MyA0OSA0OSA0NCAzMiA0NSA0OSA0NCAgICAzMiA5MyA0OSA0OSA0NCAzMyA0NSA0OQoJCSA0
 NCAzMyA3MCAwYSAwNiA4OCA1MyA1NCAgICA1MyAzMCAwYSAwMCAwMCBhNCA2YiBhMAoJCSA0
 NCAwMSA5MiA5MyA2OSAwYSAwMSA3MCAgICAwYSAwYSA4OCA1MyA1NCA1MyAzMCAwYQoJCSAw
 MCAwMCBhNCA2YiBhMCA0OCAwMSA3YiAgICA1MyA1NCA1MyAzMCAwYSAwMSAwMCA3YgoJCSA0
 MyA0MSA1MCAzMCAwYiBmZiAwYiA0MyAgICA0MSA1MCAzMCBhNCA2YiA3YiA0MyA0MQoJCSA1
 MCAzMCAwYiBmZiAwYiA0MyA0MSA1MCAgICAzMCA3MCA0MyA0MSA1MCAzMCA1NCA1OQoJCSA1
 MCA0NSBhNCA2YiAxNCA0MiAxYyA1ZiAgICA1MCA1MyA1MyAwMCBhMCA0OCAxYiA1MAoJCSA1
 MyA0NSA0ZSBhNCAxMiA0MCAxYiAwZCAgICAxMiAyMCAwNiAwYyA2NSAwYSAwMCAwMAoJCSAw
 YyAxOCA3MyAwMSAwMCAwYyAwYSAwMCAgICAwMCAwMCAwYyAwYSAwMCAwMCAwMCAwYwoJCSAx
 NSAwMCAwMCAwMCAwYyAxNSAwMCAwMCAgICAwMCAxMiAyMCAwNiAwYyA2NCAwYSAwMAoJCSAw
 MCAwYyAxOCA3MyAwMSAwMCAwYyAwYSAgICAwMCAwMCAwMCAwYyAwYSAwMCAwMCAwMAoJCSAw
 YyAxNCAwMCAwMCAwMCAwYyAxNCAwMCAgICAwMCAwMCAxMiAyMCAwNiAwYyBkZiAwOQoJCSAw
 MCAwMCAwYyBiMCAzMCAwMSAwMCAwYyAgICAwYSAwMCAwMCAwMCAwYyAwYSAwMCAwMAoJCSAw
 MCAwYyAxMyAwMCAwMCAwMCAwYyAxMyAgICAwMCAwMCAwMCAxMiAyMCAwNiAwYyA1YQoJCSAw
 OSAwMCAwMCAwYyA3MCAxMSAwMSAwMCAgICAwYyAwYSAwMCAwMCAwMCAwYyAwYSAwMAoJCSAw
 MCAwMCAwYyAxMiAwMCAwMCAwMCAwYyAgICAxMiAwMCAwMCAwMCAxMiAyMCAwNiAwYwoJCSBk
 NSAwOCAwMCAwMCAwYyBhOCBkZSAwMCAgICAwMCAwYyAwYSAwMCAwMCAwMCAwYyAwYQoJCSAw
 MCAwMCAwMCAwYyAxMSAwMCAwMCAwMCAgICAwYyAxMSAwMCAwMCAwMCAxMiAyMCAwNgoJCSAw
 YyA1MCAwOCAwMCAwMCAwYyAzOCBjNyAgICAwMCAwMCAwYyAwYSAwMCAwMCAwMCAwYwoJCSAw
 YSAwMCAwMCAwMCAwYyAxMCAwMCAwMCAgICAwMCAwYyAxMCAwMCAwMCAwMCAxMiAyMAoJCSAw
 NiAwYyBjYiAwNyAwMCAwMCAwYyAyOCAgICBhMCAwMCAwMCAwYyAwYSAwMCAwMCAwMAoJCSAw
 YyAwYSAwMCAwMCAwMCAwYyAwZiAwMCAgICAwMCAwMCAwYyAwZiAwMCAwMCAwMCAxMgoJCSAy
 MCAwNiAwYyA0NiAwNyAwMCAwMCAwYyAgICBhMCA4YyAwMCAwMCAwYyAwYSAwMCAwMAoJCSAw
 MCAwYyAwYSAwMCAwMCAwMCAwYyAwZSAgICAwMCAwMCAwMCAwYyAwZSAwMCAwMCAwMAoJCSAx
 MiAyMCAwNiAwYyBjMSAwNiAwMCAwMCAgICAwYyA2MCA2ZCAwMCAwMCAwYyAwYSAwMAoJCSAw
 MCAwMCAwYyAwYSAwMCAwMCAwMCAwYyAgICAwZCAwMCAwMCAwMCAwYyAwZCAwMCAwMAoJCSAw
 MCAxMiAyMCAwNiAwYyAzYyAwNiAwMCAgICAwMCAwYyBhOCA2MSAwMCAwMCAwYyAwYQoJCSAw
 MCAwMCAwMCAwYyAwYSAwMCAwMCAwMCAgICAwYyAwYyAwMCAwMCAwMCAwYyAwYyAwMAoJCSAw
 MCAwMCAxMiAyMCAwNiAwYyBiNyAwNSAgICAwMCAwMCAwYyAzOCA0YSAwMCAwMCAwYwoJCSAw
 YSAwMCAwMCAwMCAwYyAwYSAwMCAwMCAgICAwMCAwYyAwYiAwMCAwMCAwMCAwYyAwYgoJCSAw
 MCAwMCAwMCAxMiAyMCAwNiAwYyAzMiAgICAwNSAwMCAwMCAwYyA2OCA0MiAwMCAwMAoJCSAw
 YyAwYSAwMCAwMCAwMCAwYyAwYSAwMCAgICAwMCAwMCAwYyAwYSAwMCAwMCAwMCAwYwoJCSAw
 YSAwMCAwMCAwMCAxMiAyMCAwNiAwYyAgICBhZCAwNCAwMCAwMCAwYyBjOCAzMiAwMAoJCSAw
 MCAwYyAwYSAwMCAwMCAwMCAwYyAwYSAgICAwMCAwMCAwMCAwYyAwOSAwMCAwMCAwMAoJCSAw
 YyAwOSAwMCAwMCAwMCBhNCAwMCAxNCAgICAzNSA1ZiA1MCA0MyA1NCAwMCBhNCAxMgoJCSA0
 ZCAwMiAwMiAxMSAxNCAwYSAxMSA4MiAgICAwYyAwMCA3ZiA0MCAwMCAwMCA5OSAwMQoJCSAw
 MCAwMCAwMCAwMCAwMCAwMCA3OSAwMCAgICAxMSAxNCAwYSAxMSA4MiAwYyAwMCA3ZgoJCSAx
 MCAwMCAwMCA5OCAwMSAwMCAwMCAwMCAgICAwMCAwMCAwMCA3OSAwMCAxNCAwOCA1ZgoJCSA1
 MCA1MCA0MyAwMCBhNCAwMCAxNCA0MiAgICAwMyA1ZiA1MCA1MyA0NCAwMCBhMCA0OAoJCSAw
 MiA3YiA1NCA1OSA1MCA0NSAwYyAyMCAgICAwOCAwMCAwMCAwMCBhNCAxMiA0OSAwMQoJCSAw
 MSAxMiAxNSAwNSAwYSAwNSAwYSAwMCAgICAwYyAwMCAwMCAwMCAwMCAwYyBmZSAwMAoJCSAw
 MCAwMCAwYyAwNCAwMCAwMCAwMCBhNCAgICAwMCAxNCA0NCAxYSA1ZiA0MyA1MyA1NAoJCSAw
 MCBhMCA0YSAwYSA1YiAxMiA1YyA1ZiAgICA0ZiA1MyA0OSA2MCBhMCA0ZSAwNCA5MAoJCSA1
 YyA1ZiA0ZiA1MyA0OSAwZCA1NyA2OSAgICA2ZSA2NCA2ZiA3NyA3MyAyMCAzMiAzMAoJCSAz
 MCAzMSAyZSAzMSAwMCA5MCA5MiA1YyAgICA1ZiA0ZiA1MyA0OSAwZCA1NyA2OSA2ZQoJCSA2
 NCA2ZiA3NyA3MyAyMCAzMiAzMCAzMCAgICAzNiAwMCA5MiA1YyA1ZiA0ZiA1MyA0OQoJCSAw
 ZCA1NyA2OSA2ZSA2NCA2ZiA3NyA3MyAgICAyMCAzMiAzMCAzMCAzMSAyZSAzMSAyMAoJCSA1
 MyA1MCAzMSAwMCA3MCAwYSAwMCA0MyAgICA1MyA0NSA0ZSBhMCA0MCAwNSA5MCA1YwoJCSA1
 ZiA0ZiA1MyA0OSAwZCA1NyA2OSA2ZSAgICA2NCA2ZiA3NyA3MyAyMCAzMiAzMCAzMAoJCSAz
 MSAwMCA5MCA5MiA1YyA1ZiA0ZiA1MyAgICA0OSAwZCA1NyA2OSA2ZSA2NCA2ZiA3NwoJCSA3
 MyAyMCAzMiAzMCAzMCAzMSAyMCA1MyAgICA1MCAzMiAwMCA5MiA1YyA1ZiA0ZiA1MwoJCSA0
 OSAwZCA1NyA2OSA2ZSA2NCA2ZiA3NyAgICA3MyAyMCAzMiAzMCAzMCAzMSAyZSAzMQoJCSAy
 MCA1MyA1MCAzMSAwMCA3MCAwYSAwMCAgICA0MyA1MyA0NSA0ZSBhMCA0MSAwZiA0MwoJCSA1
 MyA0NSA0ZSBhMCA0ZCAwNyA5MCA0ZCAgICA1NyA0ZiA1MyA3YiA1NCA1OSA1MCA0NQoJCSAw
 YiAwMCAwMiAwMCBhNCAxMiA0YiAwNiAgICAwNCAwYSAwMyAxMiAyMSAwNCAxMSAxNAoJCSAw
 YSAxMSA4MiAwYyAwMCA3ZiAwMSAwMiAgICAwMSAwMCAwMCAwMCAwMCAwMCAwMCAwMAoJCSAw
 MCA3OSAwMCAwYSAwMSAwYiAwMSAwMCAgICAwYyBlOCAwMyAwMCAwMCAxMiAyMSAwNAoJCSAx
 MSAxNCAwYSAxMSA4MiAwYyAwMCA3ZiAgICAwMSAwMiAwMSAxMCAwMCAwMCAwMCAwMAoJCSAw
 MCAwMCAwMCA3OSAwMCAwYSAwMiAwYiAgICA0MCAwMCAwYyBmNCAwMSAwMCAwMCAxMgoJCSAy
 MSAwNCAxMSAxNCAwYSAxMSA4MiAwYyAgICAwMCA3ZiAwMSAwMiAwMSAyMCAwMCAwMAoJCSAw
 MCAwMCAwMCAwMCAwMCA3OSAwMCAwYSAgICAwMyAwYiA2MCAwMCAwYyA1ZSAwMSAwMAoJCSAw
 MCBhNCAxMiA0YiAwNiAwNCAwYSAwMyAgICAxMiAyMSAwNCAxMSAxNCAwYSAxMSA4MgoJCSAw
 YyAwMCA3ZiAwMCAwMCAwMCAwMCAwMCAgICAwMCAwMCAwMCAwMCAwMCAwMCA3OSAwMAoJCSAw
 YSAwMSAwYiAwMSAwMCAwYyBlOCAwMyAgICAwMCAwMCAxMiAyMSAwNCAxMSAxNCAwYQoJCSAx
 MSA4MiAwYyAwMCAwMSAwOCAwMCAwMCAgICAxNCAwNCAwMCAwMCAwMCAwMCAwMCAwMAoJCSA3
 OSAwMCAwYSAwMiAwYiA0MCAwMCAwYyAgICBmNCAwMSAwMCAwMCAxMiAyMSAwNCAxMQoJCSAx
 NCAwYSAxMSA4MiAwYyAwMCAwMSAwOCAgICAwMCAwMCAxNSAwNCAwMCAwMCAwMCAwMAoJCSAw
 MCAwMCA3OSAwMCAwYSAwMyAwYiA2MCAgICAwMCAwYyA1ZSAwMSAwMCAwMCAxNCAwOAoJCSA1
 ZiA1NCA1MCA0MyAwMCBhNCAwMCAxNCAgICAzNSA1ZiA1MCA1NCA0MyAwMCBhNCAxMgoJCSA0
 ZCAwMiAwMiAxMSAxNCAwYSAxMSA4MiAgICAwYyAwMCA3ZiAwMCAwMCAwMCAwMCAwMAoJCSAw
 MCAwMCAwMCAwMCAwMCAwMCA3OSAwMCAgICAxMSAxNCAwYSAxMSA4MiAwYyAwMCA3ZgoJCSAw
 MCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAgICAwMCAwMCAwMCA3OSAwMCAxNCA0ZiAwZgoJCSA1
 ZiA1NCA1MyA1MyAwMCBhMCA0NSAwZiAgICA5MCA1NCA1MyA0NSA0ZSA3YiA1NCA1OQoJCSA1
 MCA0NSAwYiAwNCAwMCAwMCBhNCAxMiAgICA0MyAwZSAwOCAxMiAxYiAwNSAwYyA2NAoJCSAw
 MCAwMCAwMCAwYyBmOCAwMiAwMCAwMCAgICAwYyAwMCAwMCAwMCAwMCAwYyAwMCAwMAoJCSAw
 MCAwMCAwYyAwMCAwMCAwMCAwMCAxMiAgICAxYiAwNSAwYyA1OCAwMCAwMCAwMCAwYwoJCSA5
 OSAwMiAwMCAwMCAwYyAwMCAwMCAwMCAgICAwMCAwYyAxZSAwMCAwMCAwMCAwYyAwMAoJCSAw
 MCAwMCAwMCAxMiAxYiAwNSAwYyA0YiAgICAwMCAwMCAwMCAwYyAzYSAwMiAwMCAwMAoJCSAw
 YyAwMCAwMCAwMCAwMCAwYyAxYyAwMCAgICAwMCAwMCAwYyAwMCAwMCAwMCAwMCAxMgoJCSAx
 YiAwNSAwYyAzZiAwMCAwMCAwMCAwYyAgICBkYiAwMSAwMCAwMCAwYyAwMCAwMCAwMAoJCSAw
 MCAwYyAxYSAwMCAwMCAwMCAwYyAwMCAgICAwMCAwMCAwMCAxMiAxYiAwNSAwYyAzMgoJCSAw
 MCAwMCAwMCAwYyA3YyAwMSAwMCAwMCAgICAwYyAwMCAwMCAwMCAwMCAwYyAxOCAwMAoJCSAw
 MCAwMCAwYyAwMCAwMCAwMCAwMCAxMiAgICAxYiAwNSAwYyAyNiAwMCAwMCAwMCAwYwoJCSAx
 ZCAwMSAwMCAwMCAwYyAwMCAwMCAwMCAgICAwMCAwYyAxNiAwMCAwMCAwMCAwYyAwMAoJCSAw
 MCAwMCAwMCAxMiAxYiAwNSAwYyAxOSAgICAwMCAwMCAwMCAwYyBiZSAwMCAwMCAwMAoJCSAw
 YyAwMCAwMCAwMCAwMCAwYyAxNCAwMCAgICAwMCAwMCAwYyAwMCAwMCAwMCAwMCAxMgoJCSAx
 YiAwNSAwYyAwZCAwMCAwMCAwMCAwYyAgICA1ZiAwMCAwMCAwMCAwYyAwMCAwMCAwMAoJCSAw
 MCAwYyAxMiAwMCAwMCAwMCAwYyAwMCAgICAwMCAwMCAwMCBhNCAwMCAxNCA0MiAwMwoJCSA1
 ZiA1NCA1MyA0NCAwMCBhMCA0OCAwMiAgICA3YiA1NCA1OSA1MCA0NSAwYyA4MCAwMAoJCSAw
 MCAwMCAwMCBhNCAxMiA0OSAwMSAwMSAgICAxMiAxNSAwNSAwYSAwNSAwYSAwMCAwYwoJCSAw
 NCAwMCAwMCAwMCAwYyBmZCAwMCAwMCAgICAwMCAwYyAwMSAwMCAwMCAwMCBhNCAwMAoJCSAx
 MCA0MyA3MCA1YyAyZSA1ZiA1MCA1MiAgICA1ZiA0MyA1MCA1NSAzMyAwOCA1NCA1OQoJCSA1
 MCA0NSAwYyAwMCAwMCAwMCAwMCAwOCAgICA1MCA1MyA0NSA0ZSAwYyAwMSAwMCAwMAoJCSAw
 MCAwOCA0MyA1MyA0NSA0ZSAwYyAwMSAgICAwMCAwMCAwMCAwOCA0ZCA1NyA0ZiA1MwoJCSAw
 YyAwMSAwMCAwMCAwMCAwOCA1NCA1MyAgICA0NSA0ZSAwYyAwMSAwMCAwMCAwMCAxNAoJCSA0
 OSAwNyA1ZiA1MCA0NCA0MyAwMSA4YSAgICA2OCAwYSAwOCA0MyA0MSA1MCA0MSA3MAoJCSA0
 MyA0MSA1MCA0MSA1NCA1OSA1MCA0NSAgICA4YSA2OCAwYSAwMCA1MiA0NSA1NiA1MwoJCSA4
 YSA2OCAwYSAwNCA1MyA0OSA1YSA0NSAgICA3MCA4NyA2OCA2MCA3MCA3NCA2MCAwYQoJCSAw
 OCAwMCA2MSA1YiAxMyA2OCAwYSA0MCAgICA3NyA2MSAwYSAwOCAwMCA1NCA0NSA0ZAoJCSA1
 MCAwOCA1MyA1NCA1MyAzMCAxMSAwNyAgICAwYSAwNCAwMCAwMCAwMCAwMCA3MyA1MwoJCSA1
 NCA1MyAzMCA1NCA0NSA0ZCA1MCA2MiAgICA1ZiA0ZiA1MyA0MyAxMSAxMyAwYSAxMAoJCSAx
 NiBhNiA3NyA0MCAwYyAyOSBiZSA0NyAgICA5ZSBiZCBkOCA3MCA1OCA3MSAzOSA1MwoJCSA1
 MiA0NSA1NiA1MyA1MyA0OSA1YSA0NSAgICA2MiAxNCA0ZSAwZiA1ZiA0ZiA1MyA0MwoJCSAw
 NCA4YSA2YiAwYSAwNCA0MyA0MSA1MCAgICA0MSA3MCA0MyA0MSA1MCA0MSA1NCA1OQoJCSA1
 MCA0NSA4YSA2YiAwYSAwMCA1MyA1NCAgICA1MyAzMCA4YSA2YiAwYSAwNCA0MyA0MQoJCSA1
 MCAzMCA4YSA2OCAwYSAwMCA0OSA0OSAgICA0NCAzMCA4YSA2OCAwYSAwNCA0OSA0OQoJCSA0
 NCAzMSA4YSA2OCAwYSAwOCA0OSA0OSAgICA0NCAzMiA4YSA2OCAwYSAwYyA0OSA0OQoJCSA0
 NCAzMyAwOCA1NSA0OSA0NCAzMCAxMSAgICAxMyAwYSAxMCAxNiBhNiA3NyA0MCAwYwoJCSAy
 OSBiZSA0NyA5ZSBiZCBkOCA3MCA1OCAgICA3MSAzOSA1MyA4YSA2OCAwYSAwMCA0NQoJCSA0
 OSA0NCAzMCA4YSA2OCAwYSAwNCA0NSAgICA0OSA0NCAzMSA4YSA2OCAwYSAwOCA0NQoJCSA0
 OSA0NCAzMiA4YSA2OCAwYSAwYyA0NSAgICA0OSA0NCAzMyBhMCA0NyAwMyA5MiA5MAoJCSA5
 MCA5MyA0OSA0OSA0NCAzMCA0NSA0OSAgICA0NCAzMCA5MyA0OSA0OSA0NCAzMSA0NQoJCSA0
 OSA0NCAzMSA5MCA5MyA0OSA0OSA0NCAgICAzMiA0NSA0OSA0NCAzMiA5MyA0OSA0OQoJCSA0
 NCAzMyA0NSA0OSA0NCAzMyA3MCAwYSAgICAwNiA4OCA1MyA1NCA1MyAzMCAwYSAwMAoJCSAw
 MCBhNCA2YiBhMCA0NCAwMSA5MiA5MyAgICA2OSAwYSAwMSA3MCAwYSAwYSA4OCA1MwoJCSA1
 NCA1MyAzMCAwYSAwMCAwMCBhNCA2YiAgICBhMCA0OCAwMSA3YiA1MyA1NCA1MyAzMAoJCSAw
 YSAwMSAwMCA3YiA0MyA0MSA1MCAzMCAgICAwYiBmZiAwYiA0MyA0MSA1MCAzMCBhNAoJCSA2
 YiA3YiA0MyA0MSA1MCAzMCAwYiBmZiAgICAwYiA0MyA0MSA1MCAzMCA3MCA0MyA0MQoJCSA1
 MCAzMCA1NCA1OSA1MCA0NSBhNCA2YiAgICAxNCA0MiAxYyA1ZiA1MCA1MyA1MyAwMAoJCSBh
 MCA0OCAxYiA1MCA1MyA0NSA0ZSBhNCAgICAxMiA0MCAxYiAwZCAxMiAyMCAwNiAwYwoJCSA2
 NSAwYSAwMCAwMCAwYyAxOCA3MyAwMSAgICAwMCAwYyAwYSAwMCAwMCAwMCAwYyAwYQoJCSAw
 MCAwMCAwMCAwYyAxNSAwMCAwMCAwMCAgICAwYyAxNSAwMCAwMCAwMCAxMiAyMCAwNgoJCSAw
 YyA2NCAwYSAwMCAwMCAwYyAxOCA3MyAgICAwMSAwMCAwYyAwYSAwMCAwMCAwMCAwYwoJCSAw
 YSAwMCAwMCAwMCAwYyAxNCAwMCAwMCAgICAwMCAwYyAxNCAwMCAwMCAwMCAxMiAyMAoJCSAw
 NiAwYyBkZiAwOSAwMCAwMCAwYyBiMCAgICAzMCAwMSAwMCAwYyAwYSAwMCAwMCAwMAoJCSAw
 YyAwYSAwMCAwMCAwMCAwYyAxMyAwMCAgICAwMCAwMCAwYyAxMyAwMCAwMCAwMCAxMgoJCSAy
 MCAwNiAwYyA1YSAwOSAwMCAwMCAwYyAgICA3MCAxMSAwMSAwMCAwYyAwYSAwMCAwMAoJCSAw
 MCAwYyAwYSAwMCAwMCAwMCAwYyAxMiAgICAwMCAwMCAwMCAwYyAxMiAwMCAwMCAwMAoJCSAx
 MiAyMCAwNiAwYyBkNSAwOCAwMCAwMCAgICAwYyBhOCBkZSAwMCAwMCAwYyAwYSAwMAoJCSAw
 MCAwMCAwYyAwYSAwMCAwMCAwMCAwYyAgICAxMSAwMCAwMCAwMCAwYyAxMSAwMCAwMAoJCSAw
 MCAxMiAyMCAwNiAwYyA1MCAwOCAwMCAgICAwMCAwYyAzOCBjNyAwMCAwMCAwYyAwYQoJCSAw
 MCAwMCAwMCAwYyAwYSAwMCAwMCAwMCAgICAwYyAxMCAwMCAwMCAwMCAwYyAxMCAwMAoJCSAw
 MCAwMCAxMiAyMCAwNiAwYyBjYiAwNyAgICAwMCAwMCAwYyAyOCBhMCAwMCAwMCAwYwoJCSAw
 YSAwMCAwMCAwMCAwYyAwYSAwMCAwMCAgICAwMCAwYyAwZiAwMCAwMCAwMCAwYyAwZgoJCSAw
 MCAwMCAwMCAxMiAyMCAwNiAwYyA0NiAgICAwNyAwMCAwMCAwYyBhMCA4YyAwMCAwMAoJCSAw
 YyAwYSAwMCAwMCAwMCAwYyAwYSAwMCAgICAwMCAwMCAwYyAwZSAwMCAwMCAwMCAwYwoJCSAw
 ZSAwMCAwMCAwMCAxMiAyMCAwNiAwYyAgICBjMSAwNiAwMCAwMCAwYyA2MCA2ZCAwMAoJCSAw
 MCAwYyAwYSAwMCAwMCAwMCAwYyAwYSAgICAwMCAwMCAwMCAwYyAwZCAwMCAwMCAwMAoJCSAw
 YyAwZCAwMCAwMCAwMCAxMiAyMCAwNiAgICAwYyAzYyAwNiAwMCAwMCAwYyBhOCA2MQoJCSAw
 MCAwMCAwYyAwYSAwMCAwMCAwMCAwYyAgICAwYSAwMCAwMCAwMCAwYyAwYyAwMCAwMAoJCSAw
 MCAwYyAwYyAwMCAwMCAwMCAxMiAyMCAgICAwNiAwYyBiNyAwNSAwMCAwMCAwYyAzOAoJCSA0
 YSAwMCAwMCAwYyAwYSAwMCAwMCAwMCAgICAwYyAwYSAwMCAwMCAwMCAwYyAwYiAwMAoJCSAw
 MCAwMCAwYyAwYiAwMCAwMCAwMCAxMiAgICAyMCAwNiAwYyAzMiAwNSAwMCAwMCAwYwoJCSA2
 OCA0MiAwMCAwMCAwYyAwYSAwMCAwMCAgICAwMCAwYyAwYSAwMCAwMCAwMCAwYyAwYQoJCSAw
 MCAwMCAwMCAwYyAwYSAwMCAwMCAwMCAgICAxMiAyMCAwNiAwYyBhZCAwNCAwMCAwMAoJCSAw
 YyBjOCAzMiAwMCAwMCAwYyAwYSAwMCAgICAwMCAwMCAwYyAwYSAwMCAwMCAwMCAwYwoJCSAw
 OSAwMCAwMCAwMCAwYyAwOSAwMCAwMCAgICAwMCBhNCAwMCAxNCAzNSA1ZiA1MCA0MwoJCSA1
 NCAwMCBhNCAxMiA0ZCAwMiAwMiAxMSAgICAxNCAwYSAxMSA4MiAwYyAwMCA3ZiA0MAoJCSAw
 MCAwMCA5OSAwMSAwMCAwMCAwMCAwMCAgICAwMCAwMCA3OSAwMCAxMSAxNCAwYSAxMQoJCSA4
 MiAwYyAwMCA3ZiAxMCAwMCAwMCA5OCAgICAwMSAwMCAwMCAwMCAwMCAwMCAwMCA3OQoJCSAw
 MCAxNCAwOCA1ZiA1MCA1MCA0MyAwMCAgICBhNCAwMCAxNCA0MiAwMyA1ZiA1MCA1MwoJCSA0
 NCAwMCBhMCA0OCAwMiA3YiA1NCA1OSAgICA1MCA0NSAwYyAyMCAwOCAwMCAwMCAwMAoJCSBh
 NCAxMiA0OSAwMSAwMSAxMiAxNSAwNSAgICAwYSAwNSAwYSAwMCAwYyAwMCAwMCAwMAoJCSAw
 MCAwYyBmZSAwMCAwMCAwMCAwYyAwNCAgICAwMCAwMCAwMCBhNCAwMCAxNCA0NCAxYQoJCSA1
 ZiA0MyA1MyA1NCAwMCBhMCA0YSAwYSAgICA1YiAxMiA1YyA1ZiA0ZiA1MyA0OSA2MAoJCSBh
 MCA0ZSAwNCA5MCA1YyA1ZiA0ZiA1MyAgICA0OSAwZCA1NyA2OSA2ZSA2NCA2ZiA3NwoJCSA3
 MyAyMCAzMiAzMCAzMCAzMSAyZSAzMSAgICAwMCA5MCA5MiA1YyA1ZiA0ZiA1MyA0OQoJCSAw
 ZCA1NyA2OSA2ZSA2NCA2ZiA3NyA3MyAgICAyMCAzMiAzMCAzMCAzNiAwMCA5MiA1YwoJCSA1
 ZiA0ZiA1MyA0OSAwZCA1NyA2OSA2ZSAgICA2NCA2ZiA3NyA3MyAyMCAzMiAzMCAzMAoJCSAz
 MSAyZSAzMSAyMCA1MyA1MCAzMSAwMCAgICA3MCAwYSAwMCA0MyA1MyA0NSA0ZSBhMAoJCSA0
 MCAwNSA5MCA1YyA1ZiA0ZiA1MyA0OSAgICAwZCA1NyA2OSA2ZSA2NCA2ZiA3NyA3MwoJCSAy
 MCAzMiAzMCAzMCAzMSAwMCA5MCA5MiAgICA1YyA1ZiA0ZiA1MyA0OSAwZCA1NyA2OQoJCSA2
 ZSA2NCA2ZiA3NyA3MyAyMCAzMiAzMCAgICAzMCAzMSAyMCA1MyA1MCAzMiAwMCA5MgoJCSA1
 YyA1ZiA0ZiA1MyA0OSAwZCA1NyA2OSAgICA2ZSA2NCA2ZiA3NyA3MyAyMCAzMiAzMAoJCSAz
 MCAzMSAyZSAzMSAyMCA1MyA1MCAzMSAgICAwMCA3MCAwYSAwMCA0MyA1MyA0NSA0ZQoJCSBh
 MCA0MSAwZiA0MyA1MyA0NSA0ZSBhMCAgICA0ZCAwNyA5MCA0ZCA1NyA0ZiA1MyA3YgoJCSA1
 NCA1OSA1MCA0NSAwYiAwMCAwMiAwMCAgICBhNCAxMiA0YiAwNiAwNCAwYSAwMyAxMgoJCSAy
 MSAwNCAxMSAxNCAwYSAxMSA4MiAwYyAgICAwMCA3ZiAwMSAwMiAwMSAwMCAwMCAwMAoJCSAw
 MCAwMCAwMCAwMCAwMCA3OSAwMCAwYSAgICAwMSAwYiAwMSAwMCAwYyBlOCAwMyAwMAoJCSAw
 MCAxMiAyMSAwNCAxMSAxNCAwYSAxMSAgICA4MiAwYyAwMCA3ZiAwMSAwMiAwMSAxMAoJCSAw
 MCAwMCAwMCAwMCAwMCAwMCAwMCA3OSAgICAwMCAwYSAwMiAwYiA0MCAwMCAwYyBmNAoJCSAw
 MSAwMCAwMCAxMiAyMSAwNCAxMSAxNCAgICAwYSAxMSA4MiAwYyAwMCA3ZiAwMSAwMgoJCSAw
 MSAyMCAwMCAwMCAwMCAwMCAwMCAwMCAgICAwMCA3OSAwMCAwYSAwMyAwYiA2MCAwMAoJCSAw
 YyA1ZSAwMSAwMCAwMCBhNCAxMiA0YiAgICAwNiAwNCAwYSAwMyAxMiAyMSAwNCAxMQoJCSAx
 NCAwYSAxMSA4MiAwYyAwMCA3ZiAwMCAgICAwMCAwMCAwMCAwMCAwMCAwMCAwMCAwMAoJCSAw
 MCAwMCA3OSAwMCAwYSAwMSAwYiAwMSAgICAwMCAwYyBlOCAwMyAwMCAwMCAxMiAyMQoJCSAw
 NCAxMSAxNCAwYSAxMSA4MiAwYyAwMCAgICAwMSAwOCAwMCAwMCAxNCAwNCAwMCAwMAoJCSAw
 MCAwMCAwMCAwMCA3OSAwMCAwYSAwMiAgICAwYiA0MCAwMCAwYyBmNCAwMSAwMCAwMAoJCSAx
 MiAyMSAwNCAxMSAxNCAwYSAxMSA4MiAgICAwYyAwMCAwMSAwOCAwMCAwMCAxNSAwNAoJCSAw
 MCAwMCAwMCAwMCAwMCAwMCA3OSAwMCAgICAwYSAwMyAwYiA2MCAwMCAwYyA1ZSAwMQoJCSAw
 MCAwMCAxNCAwOCA1ZiA1NCA1MCA0MyAgICAwMCBhNCAwMCAxNCAzNSA1ZiA1MCA1NAoJCSA0
 MyAwMCBhNCAxMiA0ZCAwMiAwMiAxMSAgICAxNCAwYSAxMSA4MiAwYyAwMCA3ZiAwMAoJCSAw
 MCAwMCAwMCAwMCAwMCAwMCAwMCAwMCAgICAwMCAwMCA3OSAwMCAxMSAxNCAwYSAxMQoJCSA4
 MiAwYyAwMCA3ZiAwMCAwMCAwMCAwMCAgICAwMCAwMCAwMCAwMCAwMCAwMCAwMCA3OQoJCSAw
 MCAxNCA0ZiAwZiA1ZiA1NCA1MyA1MyAgICAwMCBhMCA0NSAwZiA5MCA1NCA1MyA0NQoJCSA0
 ZSA3YiA1NCA1OSA1MCA0NSAwYiAwNCAgICAwMCAwMCBhNCAxMiA0MyAwZSAwOCAxMgoJCSAx
 YiAwNSAwYyA2NCAwMCAwMCAwMCAwYyAgICBmOCAwMiAwMCAwMCAwYyAwMCAwMCAwMAoJCSAw
 MCAwYyAwMCAwMCAwMCAwMCAwYyAwMCAgICAwMCAwMCAwMCAxMiAxYiAwNSAwYyA1OAoJCSAw
 MCAwMCAwMCAwYyA5OSAwMiAwMCAwMCAgICAwYyAwMCAwMCAwMCAwMCAwYyAxZSAwMAoJCSAw
 MCAwMCAwYyAwMCAwMCAwMCAwMCAxMiAgICAxYiAwNSAwYyA0YiAwMCAwMCAwMCAwYwoJCSAz
 YSAwMiAwMCAwMCAwYyAwMCAwMCAwMCAgICAwMCAwYyAxYyAwMCAwMCAwMCAwYyAwMAoJCSAw
 MCAwMCAwMCAxMiAxYiAwNSAwYyAzZiAgICAwMCAwMCAwMCAwYyBkYiAwMSAwMCAwMAoJCSAw
 YyAwMCAwMCAwMCAwMCAwYyAxYSAwMCAgICAwMCAwMCAwYyAwMCAwMCAwMCAwMCAxMgoJCSAx
 YiAwNSAwYyAzMiAwMCAwMCAwMCAwYyAgICA3YyAwMSAwMCAwMCAwYyAwMCAwMCAwMAoJCSAw
 MCAwYyAxOCAwMCAwMCAwMCAwYyAwMCAgICAwMCAwMCAwMCAxMiAxYiAwNSAwYyAyNgoJCSAw
 MCAwMCAwMCAwYyAxZCAwMSAwMCAwMCAgICAwYyAwMCAwMCAwMCAwMCAwYyAxNiAwMAoJCSAw
 MCAwMCAwYyAwMCAwMCAwMCAwMCAxMiAgICAxYiAwNSAwYyAxOSAwMCAwMCAwMCAwYwoJCSBi
 ZSAwMCAwMCAwMCAwYyAwMCAwMCAwMCAgICAwMCAwYyAxNCAwMCAwMCAwMCAwYyAwMAoJCSAw
 MCAwMCAwMCAxMiAxYiAwNSAwYyAwZCAgICAwMCAwMCAwMCAwYyA1ZiAwMCAwMCAwMAoJCSAw
 YyAwMCAwMCAwMCAwMCAwYyAxMiAwMCAgICAwMCAwMCAwYyAwMCAwMCAwMCAwMCBhNAoJCSAw
 MCAxNCA0MiAwMyA1ZiA1NCA1MyA0NCAgICAwMCBhMCA0OCAwMiA3YiA1NCA1OSA1MAoJCSA0
 NSAwYyA4MCAwMCAwMCAwMCAwMCBhNCAgICAxMiA0OSAwMSAwMSAxMiAxNSAwNSAwYQoJCSAw
 NSAwYSAwMCAwYyAwNiAwMCAwMCAwMCAgICAwYyBmZCAwMCAwMCAwMCAwYyAwMSAwMAoJCSAw
 MCAwMCBhNCAwMAoJfQogKi8KLyoKICogSW50ZWwgQUNQSSBDb21wb25lbnQgQXJjaGl0ZWN0
 dXJlCiAqIEFNTCBEaXNhc3NlbWJsZXIgdmVyc2lvbiAyMDExMDYyMy02NCBbTWFyIDIxIDIw
 MTNdCiAqIENvcHlyaWdodCAoYykgMjAwMCAtIDIwMTEgSW50ZWwgQ29ycG9yYXRpb24KICog
 CiAqIERpc2Fzc2VtYmx5IG9mIC90bXAvYWNwaWR1bXAuMDAwNDBhLCBUaHUgTWFyIDI4IDIx
 OjMyOjI1IDIwMTMKICoKICogT3JpZ2luYWwgVGFibGUgSGVhZGVyOgogKiAgICAgU2lnbmF0
 dXJlICAgICAgICAiRFNEVCIKICogICAgIExlbmd0aCAgICAgICAgICAgMHgwMDAwNUVENCAo
 MjQyNzYpCiAqICAgICBSZXZpc2lvbiAgICAgICAgIDB4MDEgKioqKiAzMi1iaXQgdGFibGUg
 KFYxKSwgbm8gNjQtYml0IG1hdGggc3VwcG9ydAogKiAgICAgQ2hlY2tzdW0gICAgICAgICAw
 eDg0CiAqICAgICBPRU0gSUQgICAgICAgICAgICJHQlQgICAiCiAqICAgICBPRU0gVGFibGUg
 SUQgICAgICJHQlRVQUNQSSIKICogICAgIE9FTSBSZXZpc2lvbiAgICAgMHgwMDAwMTAwMCAo
 NDA5NikKICogICAgIENvbXBpbGVyIElEICAgICAgIk1TRlQiCiAqICAgICBDb21waWxlciBW
 ZXJzaW9uIDB4MDEwMDAwMEMgKDE2Nzc3MjI4KQogKi8KCkRlZmluaXRpb25CbG9jayAoIi90
 bXAvYWNwaWR1bXAuYW1sIiwgIkRTRFQiLCAxLCAiR0JUICAgIiwgIkdCVFVBQ1BJIiwgMHgw
 MDAwMTAwMCkKewogICAgU2NvcGUgKFxfUFIpCiAgICB7CiAgICAgICAgUHJvY2Vzc29yIChc
 X1BSLkNQVTAsIDB4MDAsIDB4MDAwMDA0MTAsIDB4MDYpIHt9CiAgICAgICAgUHJvY2Vzc29y
 IChcX1BSLkNQVTEsIDB4MDEsIDB4MDAwMDA0MTAsIDB4MDYpIHt9CiAgICAgICAgUHJvY2Vz
 c29yIChcX1BSLkNQVTIsIDB4MDIsIDB4MDAwMDA0MTAsIDB4MDYpIHt9CiAgICAgICAgUHJv
 Y2Vzc29yIChcX1BSLkNQVTMsIDB4MDMsIDB4MDAwMDA0MTAsIDB4MDYpIHt9CiAgICAgICAg
 UHJvY2Vzc29yIChcX1BSLkNQVTQsIDB4MDQsIDB4MDAwMDA0MTAsIDB4MDYpIHt9CiAgICAg
 ICAgUHJvY2Vzc29yIChcX1BSLkNQVTUsIDB4MDUsIDB4MDAwMDA0MTAsIDB4MDYpIHt9CiAg
 ICAgICAgUHJvY2Vzc29yIChcX1BSLkNQVTYsIDB4MDYsIDB4MDAwMDA0MTAsIDB4MDYpIHt9
 CiAgICAgICAgUHJvY2Vzc29yIChcX1BSLkNQVTcsIDB4MDcsIDB4MDAwMDA0MTAsIDB4MDYp
 IHt9CiAgICB9CgogICAgTmFtZSAoXF9TMCwgUGFja2FnZSAoMHgwNCkKICAgIHsKICAgICAg
 ICAweDAwLCAKICAgICAgICAweDAwLCAKICAgICAgICAweDAwLCAKICAgICAgICAweDAwCiAg
 ICB9KQogICAgTmFtZSAoXFNTMSwgUGFja2FnZSAoMHgwNCkKICAgIHsKICAgICAgICAweDAx
 LCAKICAgICAgICAweDAwLCAKICAgICAgICAweDAwLCAKICAgICAgICAweDAwCiAgICB9KQog
 ICAgTmFtZSAoXF9TMywgUGFja2FnZSAoMHgwNCkKICAgIHsKICAgICAgICAweDA1LCAKICAg
 ICAgICAweDAwLCAKICAgICAgICAweDAwLCAKICAgICAgICAweDAwCiAgICB9KQogICAgTmFt
 ZSAoXF9TNCwgUGFja2FnZSAoMHgwNCkKICAgIHsKICAgICAgICAweDA2LCAKICAgICAgICAw
 eDAwLCAKICAgICAgICAweDAwLCAKICAgICAgICAweDAwCiAgICB9KQogICAgTmFtZSAoXF9T
 NSwgUGFja2FnZSAoMHgwNCkKICAgIHsKICAgICAgICAweDA3LCAKICAgICAgICAweDAwLCAK
 ICAgICAgICAweDAwLCAKICAgICAgICAweDAwCiAgICB9KQogICAgTmFtZSAoRkxBRywgMHgw
 MCkKICAgIE5hbWUgKFNUQVQsIDB4MDApCiAgICBPcGVyYXRpb25SZWdpb24gKFNNT0QsIFN5
 c3RlbU1lbW9yeSwgMHgwMDBGRjg0MCwgMHgwMSkKICAgIEZpZWxkIChTTU9ELCBCeXRlQWNj
 LCBOb0xvY2ssIFByZXNlcnZlKQogICAgewogICAgICAgICAgICAsICAgNywgCiAgICAgICAg
 U1VTRiwgICAxCiAgICB9CgogICAgT3BlcmF0aW9uUmVnaW9uIChMQk9DLCBTeXN0ZW1NZW1v
 cnksIDB4MDAwRkY4MjAsIDB4MDIpCiAgICBGaWVsZCAoTEJPQywgQnl0ZUFjYywgTm9Mb2Nr
 LCBQcmVzZXJ2ZSkKICAgIHsKICAgICAgICBVQk1DLCAgIDEsIAogICAgICAgICAgICAgICAg
 T2Zmc2V0ICgweDAyKQogICAgfQoKICAgIE9wZXJhdGlvblJlZ2lvbiAoXERFQkcsIFN5c3Rl
 bUlPLCAweDgwLCAweDAxKQogICAgRmllbGQgKFxERUJHLCBCeXRlQWNjLCBOb0xvY2ssIFBy
 ZXNlcnZlKQogICAgewogICAgICAgIERCRzEsICAgOAogICAgfQoKICAgIE9wZXJhdGlvblJl
 Z2lvbiAoUkNSQiwgU3lzdGVtTWVtb3J5LCAweEZFRDFDMDAwLCAweDQwMDApCiAgICBGaWVs
 ZCAoUkNSQiwgRFdvcmRBY2MsIExvY2ssIFByZXNlcnZlKQogICAgewogICAgICAgICAgICAg
 ICAgT2Zmc2V0ICgweDM0MDQpLCAKICAgICAgICAgICAgLCAgIDcsIAogICAgICAgIEhQVEYs
 ICAgMQogICAgfQoKICAgIE9wZXJhdGlvblJlZ2lvbiAoRUxLTSwgU3lzdGVtTWVtb3J5LCAw
 eDAwMEZGRkVBLCAweDAxKQogICAgRmllbGQgKEVMS00sIEJ5dGVBY2MsIE5vTG9jaywgUHJl
 c2VydmUpCiAgICB7CiAgICAgICAgICAgICwgICAxLCAKICAgICAgICAgICAgLCAgIDEsIAog
 ICAgICAgIEVMU08sICAgMSwgCiAgICAgICAgICAgICwgICAxLCAKICAgICAgICAgICAgLCAg
 IDEsIAogICAgICAgICAgICAsICAgMSwgCiAgICAgICAgICAgICwgICAxCiAgICB9CgogICAg
 T3BlcmF0aW9uUmVnaW9uIChFWFRNLCBTeXN0ZW1NZW1vcnksIDB4MDAwRkY4MzAsIDB4MTAp
 CiAgICBGaWVsZCAoRVhUTSwgV29yZEFjYywgTm9Mb2NrLCBQcmVzZXJ2ZSkKICAgIHsKICAg
 ICAgICBST00xLCAgIDE2LCAKICAgICAgICBSTVMxLCAgIDE2LCAKICAgICAgICBST00yLCAg
 IDE2LCAKICAgICAgICBSTVMyLCAgIDE2LCAKICAgICAgICBST00zLCAgIDE2LCAKICAgICAg
 ICBSTVMzLCAgIDE2LCAKICAgICAgICBBTUVNLCAgIDMyCiAgICB9CgogICAgT3BlcmF0aW9u
 UmVnaW9uIChcU01JQywgU3lzdGVtSU8sIDB4QjIsIDB4MDEpCiAgICBGaWVsZCAoXFNNSUMs
 IEJ5dGVBY2MsIE5vTG9jaywgUHJlc2VydmUpCiAgICB7CiAgICAgICAgU0NQLCAgICA4CiAg
 ICB9CgogICAgT3BlcmF0aW9uUmVnaW9uIChcR1AyQywgU3lzdGVtSU8sIDB4MDQyQywgMHgw
 MikKICAgIEZpZWxkIChcR1AyQywgQnl0ZUFjYywgTm9Mb2NrLCBQcmVzZXJ2ZSkKICAgIHsK
 ICAgICAgICBHMkMxLCAgIDgsIAogICAgICAgIEcyQzIsICAgOAogICAgfQoKICAgIE9wZXJh
 dGlvblJlZ2lvbiAoQVBNUCwgU3lzdGVtSU8sIDB4QjIsIDB4MDIpCiAgICBGaWVsZCAoQVBN
 UCwgQnl0ZUFjYywgTm9Mb2NrLCBQcmVzZXJ2ZSkKICAgIHsKICAgICAgICBBUE1DLCAgIDgs
 IAogICAgICAgIEFQTUQsICAgOAogICAgfQoKICAgIE9wZXJhdGlvblJlZ2lvbiAoXEFHUFMs
 IFN5c3RlbUlPLCAweDA0MzgsIDB4MDQpCiAgICBGaWVsZCAoXEFHUFMsIEJ5dGVBY2MsIE5v
 TG9jaywgUHJlc2VydmUpCiAgICB7CiAgICAgICAgR1BTRSwgICAxNiwgCiAgICAgICAgR1BT
 UywgICAxNgogICAgfQoKICAgIE9wZXJhdGlvblJlZ2lvbiAoXEdQQ04sIFN5c3RlbUlPLCAw
 eDA0NDIsIDB4MDEpCiAgICBGaWVsZCAoXEdQQ04sIEJ5dGVBY2MsIE5vTG9jaywgUHJlc2Vy
 dmUpCiAgICB7CiAgICAgICAgICAgICwgICAxLCAKICAgICAgICBTV0dDLCAgIDEsIAogICAg
 ICAgICAgICAgICAgT2Zmc2V0ICgweDAxKQogICAgfQoKICAgIE5hbWUgKE9TRlgsIDB4MDEp
 CiAgICBOYW1lIChMSU5YLCAweDAwKQogICAgTmFtZSAoQU1BQywgMHgwMCkKICAgIE5hbWUg
 KE9TRkwsIDB4MDEpCiAgICBNZXRob2QgKFNUUkMsIDIsIE5vdFNlcmlhbGl6ZWQpCiAgICB7
 CiAgICAgICAgSWYgKExOb3RFcXVhbCAoU2l6ZU9mIChBcmcwKSwgU2l6ZU9mIChBcmcxKSkp
 CiAgICAgICAgewogICAgICAgICAgICBSZXR1cm4gKDB4MDApCiAgICAgICAgfQoKICAgICAg
 ICBBZGQgKFNpemVPZiAoQXJnMCksIDB4MDEsIExvY2FsMCkKICAgICAgICBOYW1lIChCVUYw
 LCBCdWZmZXIgKExvY2FsMCkge30pCiAgICAgICAgTmFtZSAoQlVGMSwgQnVmZmVyIChMb2Nh
 bDApIHt9KQogICAgICAgIFN0b3JlIChBcmcwLCBCVUYwKQogICAgICAgIFN0b3JlIChBcmcx
 LCBCVUYxKQogICAgICAgIFdoaWxlIChMb2NhbDApCiAgICAgICAgewogICAgICAgICAgICBE
 ZWNyZW1lbnQgKExvY2FsMCkKICAgICAgICAgICAgSWYgKExOb3RFcXVhbCAoRGVyZWZPZiAo
 SW5kZXggKEJVRjAsIExvY2FsMCkpLCBEZXJlZk9mIChJbmRleCAoCiAgICAgICAgICAgICAg
 ICBCVUYxLCBMb2NhbDApKSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIFJldHVy
 biAoWmVybykKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgUmV0dXJuIChPbmUp
 CiAgICB9CgogICAgT3BlcmF0aW9uUmVnaW9uIChJTkZPLCBTeXN0ZW1NZW1vcnksIDB4MDAw
 RkY4NDAsIDB4MDEpCiAgICBGaWVsZCAoSU5GTywgQnl0ZUFjYywgTm9Mb2NrLCBQcmVzZXJ2
 ZSkKICAgIHsKICAgICAgICBLQkRJLCAgIDEsIAogICAgICAgIFJUQ1csICAgMSwgCiAgICAg
 ICAgUFMyRiwgICAxLCAKICAgICAgICBJUkZMLCAgIDIsIAogICAgICAgIERJU0UsICAgMSwg
 CiAgICAgICAgU1NIVSwgICAxCiAgICB9CgogICAgU2NvcGUgKFwpCiAgICB7CiAgICAgICAg
 TmFtZSAoUElDRiwgMHgwMCkKICAgICAgICBNZXRob2QgKF9QSUMsIDEsIE5vdFNlcmlhbGl6
 ZWQpCiAgICAgICAgewogICAgICAgICAgICBTdG9yZSAoQXJnMCwgUElDRikKICAgICAgICB9
 CiAgICB9CgogICAgTWV0aG9kIChcX1BUUywgMSwgTm90U2VyaWFsaXplZCkKICAgIHsKICAg
 ICAgICBPciAoQXJnMCwgMHhGMCwgTG9jYWwwKQogICAgICAgIFN0b3JlIChMb2NhbDAsIERC
 RzEpCiAgICAgICAgT1NUUCAoKQogICAgICAgIElmIChMRXF1YWwgKEFyZzAsIDB4MDEpKSB7
 fQogICAgICAgIElmIChMRXF1YWwgKEFyZzAsIDB4MDMpKSB7fQogICAgICAgIElmIChMRXF1
 YWwgKEFyZzAsIDB4MDUpKQogICAgICAgIHsKICAgICAgICAgICAgU3RvcmUgKDB4OTksIFNN
 SVApCiAgICAgICAgfQoKICAgICAgICBJZiAoTEVxdWFsIChBcmcwLCAweDA0KSkKICAgICAg
 ICB7CiAgICAgICAgICAgIElmIChMTm90IChQSUNGKSkKICAgICAgICAgICAgewogICAgICAg
 ICAgICAgICAgU2xlZXAgKDB4NjQpCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cgog
 ICAgTWV0aG9kIChcX1dBSywgMSwgTm90U2VyaWFsaXplZCkKICAgIHsKICAgICAgICBTdG9y
 ZSAoMHhGRiwgREJHMSkKICAgICAgICBJZiAoTEVxdWFsIChBcmcwLCAweDA0KSkKICAgICAg
 ICB7CiAgICAgICAgICAgIElmIChMRXF1YWwgKE9TRkwsIDB4MDEpKQogICAgICAgICAgICB7
 CiAgICAgICAgICAgICAgICBTdG9yZSAoMHg1NiwgU01JUCkKICAgICAgICAgICAgfQoKICAg
 ICAgICAgICAgSWYgKExFcXVhbCAoT1NGTCwgMHgwMikpCiAgICAgICAgICAgIHsKICAgICAg
 ICAgICAgICAgIFN0b3JlICgweDU3LCBTTUlQKQogICAgICAgICAgICB9CgogICAgICAgICAg
 ICBJZiAoTEVxdWFsIChPU0ZMLCAweDAwKSkKICAgICAgICAgICAgewogICAgICAgICAgICAg
 ICAgU3RvcmUgKDB4NTgsIExvY2FsMCkKICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKE9T
 RlgsIDB4MDMpKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIFN0b3Jl
 ICgweDU5LCBMb2NhbDApCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgU3Rv
 cmUgKExvY2FsMCwgU01JUCkKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgSWYg
 KExFcXVhbCAoQXJnMCwgMHgwMSkpIHt9CiAgICAgICAgSWYgKE9TRkwpCiAgICAgICAgewog
 ICAgICAgICAgICBOb3RpZnkgKFxfU0IuUFdSQiwgMHgwMikKICAgICAgICB9CiAgICAgICAg
 RWxzZQogICAgICAgIHsKICAgICAgICAgICAgSWYgKExFcXVhbCAoUlRDVywgMHgwMCkpCiAg
 ICAgICAgICAgIHsKICAgICAgICAgICAgICAgIE5vdGlmeSAoXF9TQi5QV1JCLCAweDAyKQog
 ICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBOb3RpZnkgKFxfU0IuUENJMC5VU0Iw
 LCAweDAwKQogICAgICAgIE5vdGlmeSAoXF9TQi5QQ0kwLlVTQjEsIDB4MDApCiAgICAgICAg
 Tm90aWZ5IChcX1NCLlBDSTAuVVNCMiwgMHgwMCkKICAgICAgICBOb3RpZnkgKFxfU0IuUENJ
 MC5VU0IzLCAweDAwKQogICAgICAgIE5vdGlmeSAoXF9TQi5QQ0kwLlVTQjQsIDB4MDApCiAg
 ICAgICAgTm90aWZ5IChcX1NCLlBDSTAuVVNCNSwgMHgwMCkKICAgICAgICBOb3RpZnkgKFxf
 U0IuUENJMC5VU0I2LCAweDAwKQogICAgfQoKICAgIFNjb3BlIChcX1NJKQogICAgewogICAg
 ICAgIE1ldGhvZCAoX01TRywgMSwgTm90U2VyaWFsaXplZCkKICAgICAgICB7CiAgICAgICAg
 ICAgIFN0b3JlIChMb2NhbDAsIExvY2FsMCkKICAgICAgICB9CgogICAgICAgIE1ldGhvZCAo
 X1NTVCwgMSwgTm90U2VyaWFsaXplZCkKICAgICAgICB7CiAgICAgICAgICAgIFN0b3JlIChM
 b2NhbDAsIExvY2FsMCkKICAgICAgICB9CiAgICB9CgogICAgU2NvcGUgKFxfR1BFKQogICAg
 ewogICAgICAgIE1ldGhvZCAoX0wwOCwgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICB7CiAg
 ICAgICAgICAgIE5vdGlmeSAoXF9TQi5QQ0kwLlBYNDAuVUFSMSwgMHgwMikKICAgICAgICB9
 CgogICAgICAgIE1ldGhvZCAoX0wwMywgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICB7CiAg
 ICAgICAgICAgIE5vdGlmeSAoXF9TQi5QQ0kwLlVTQjAsIDB4MDIpCiAgICAgICAgICAgIE5v
 dGlmeSAoXF9TQi5QV1JCLCAweDAyKQogICAgICAgIH0KCiAgICAgICAgTWV0aG9kIChfTDA0
 LCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgIHsKICAgICAgICAgICAgTm90aWZ5IChcX1NC
 LlBDSTAuVVNCMSwgMHgwMikKICAgICAgICAgICAgTm90aWZ5IChcX1NCLlBXUkIsIDB4MDIp
 CiAgICAgICAgfQoKICAgICAgICBNZXRob2QgKF9MMEMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAg
 ICAgICAgewogICAgICAgICAgICBOb3RpZnkgKFxfU0IuUENJMC5VU0IyLCAweDAyKQogICAg
 ICAgICAgICBOb3RpZnkgKFxfU0IuUFdSQiwgMHgwMikKICAgICAgICB9CgogICAgICAgIE1l
 dGhvZCAoX0wwRSwgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICB7CiAgICAgICAgICAgIE5v
 dGlmeSAoXF9TQi5QQ0kwLlVTQjMsIDB4MDIpCiAgICAgICAgICAgIE5vdGlmeSAoXF9TQi5Q
 V1JCLCAweDAyKQogICAgICAgIH0KCiAgICAgICAgTWV0aG9kIChfTDA1LCAwLCBOb3RTZXJp
 YWxpemVkKQogICAgICAgIHsKICAgICAgICAgICAgTm90aWZ5IChcX1NCLlBDSTAuVVNCNCwg
 MHgwMikKICAgICAgICAgICAgTm90aWZ5IChcX1NCLlBXUkIsIDB4MDIpCiAgICAgICAgfQoK
 ICAgICAgICBNZXRob2QgKF9MMjAsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgewogICAg
 ICAgICAgICBOb3RpZnkgKFxfU0IuUENJMC5VU0I1LCAweDAyKQogICAgICAgICAgICBOb3Rp
 ZnkgKFxfU0IuUFdSQiwgMHgwMikKICAgICAgICB9CgogICAgICAgIE1ldGhvZCAoX0wyNSwg
 MCwgTm90U2VyaWFsaXplZCkKICAgICAgICB7CiAgICAgICAgICAgIE5vdGlmeSAoXF9TQi5Q
 Q0kwLlVTQjYsIDB4MDIpCiAgICAgICAgICAgIE5vdGlmeSAoXF9TQi5QV1JCLCAweDAyKQog
 ICAgICAgIH0KCiAgICAgICAgTWV0aG9kIChfTDBELCAwLCBOb3RTZXJpYWxpemVkKQogICAg
 ICAgIHsKICAgICAgICAgICAgTm90aWZ5IChcX1NCLlBDSTAuVVNCRSwgMHgwMikKICAgICAg
 ICAgICAgTm90aWZ5IChcX1NCLlBDSTAuVVNFMiwgMHgwMikKICAgICAgICAgICAgTm90aWZ5
 IChcX1NCLlBXUkIsIDB4MDIpCiAgICAgICAgICAgIE5vdGlmeSAoXF9TQi5QQ0kwLkFaQUws
 IDB4MDIpCiAgICAgICAgfQoKICAgICAgICBNZXRob2QgKF9MMEIsIDAsIE5vdFNlcmlhbGl6
 ZWQpCiAgICAgICAgewogICAgICAgICAgICBOb3RpZnkgKFxfU0IuUENJMC5IVUIwLCAweDAy
 KQogICAgICAgIH0KCiAgICAgICAgTWV0aG9kIChfTDA5LCAwLCBOb3RTZXJpYWxpemVkKQog
 ICAgICAgIHsKICAgICAgICAgICAgTm90aWZ5IChcX1NCLlBDSTAuUEVYMCwgMHgwMikKICAg
 ICAgICAgICAgTm90aWZ5IChcX1NCLlBDSTAuUEVYMSwgMHgwMikKICAgICAgICAgICAgTm90
 aWZ5IChcX1NCLlBDSTAuUEVYMiwgMHgwMikKICAgICAgICAgICAgTm90aWZ5IChcX1NCLlBD
 STAuUEVYMywgMHgwMikKICAgICAgICAgICAgTm90aWZ5IChcX1NCLlBDSTAuUEVYNCwgMHgw
 MikKICAgICAgICAgICAgTm90aWZ5IChcX1NCLlBDSTAuUEVYNSwgMHgwMikKICAgICAgICAg
 ICAgTm90aWZ5IChcX1NCLlBDSTAuUEVYNiwgMHgwMikKICAgICAgICAgICAgTm90aWZ5IChc
 X1NCLlBDSTAuUEVYNywgMHgwMikKICAgICAgICB9CiAgICB9CgogICAgU2NvcGUgKFxfU0Ip
 CiAgICB7CiAgICAgICAgRGV2aWNlIChQV1JCKQogICAgICAgIHsKICAgICAgICAgICAgTmFt
 ZSAoX0hJRCwgRWlzYUlkICgiUE5QMEMwQyIpKQogICAgICAgICAgICBNZXRob2QgKF9TVEEs
 IDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIFJldHVy
 biAoMHgwQikKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgRGV2aWNlIChQQ0kw
 KQogICAgICAgIHsKICAgICAgICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMEEwMyIp
 KQogICAgICAgICAgICBOYW1lIChfQURSLCAweDAwKQogICAgICAgICAgICBOYW1lIChfVUlE
 LCAweDAxKQogICAgICAgICAgICBOYW1lIChfQkJOLCAweDAwKQogICAgICAgICAgICBNZXRo
 b2QgKF9TM0QsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgIElmIChMRXF1YWwgKE9TRkwsIDB4MDIpKQogICAgICAgICAgICAgICAgewogICAgICAg
 ICAgICAgICAgICAgIFJldHVybiAoMHgwMikKICAgICAgICAgICAgICAgIH0KICAgICAgICAg
 ICAgICAgIEVsc2UKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBSZXR1
 cm4gKDB4MDMpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgICAg
 IE1ldGhvZCAoX1NUQSwgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgewogICAgICAg
 ICAgICAgICAgUmV0dXJuICgweDBGKQogICAgICAgICAgICB9CgogICAgICAgICAgICBNZXRo
 b2QgKF9DUlMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgIE5hbWUgKEJVRjAsIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgICAgIHsK
 ICAgICAgICAgICAgICAgICAgICBXb3JkQnVzTnVtYmVyIChSZXNvdXJjZUNvbnN1bWVyLCBN
 aW5Ob3RGaXhlZCwgTWF4Tm90Rml4ZWQsIFBvc0RlY29kZSwKICAgICAgICAgICAgICAgICAg
 ICAgICAgMHgwMDAwLCAgICAgICAgICAgICAvLyBHcmFudWxhcml0eQogICAgICAgICAgICAg
 ICAgICAgICAgICAweDAwMDAsICAgICAgICAgICAgIC8vIFJhbmdlIE1pbmltdW0KICAgICAg
 ICAgICAgICAgICAgICAgICAgMHgwMDNGLCAgICAgICAgICAgICAvLyBSYW5nZSBNYXhpbXVt
 CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMCwgICAgICAgICAgICAgLy8gVHJhbnNs
 YXRpb24gT2Zmc2V0CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDA0MCwgICAgICAgICAg
 ICAgLy8gTGVuZ3RoCiAgICAgICAgICAgICAgICAgICAgICAgICwsICkKICAgICAgICAgICAg
 ICAgICAgICBJTyAoRGVjb2RlMTYsCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MENGOCwg
 ICAgICAgICAgICAgLy8gUmFuZ2UgTWluaW11bQogICAgICAgICAgICAgICAgICAgICAgICAw
 eDBDRjgsICAgICAgICAgICAgIC8vIFJhbmdlIE1heGltdW0KICAgICAgICAgICAgICAgICAg
 ICAgICAgMHgwMSwgICAgICAgICAgICAgICAvLyBBbGlnbm1lbnQKICAgICAgICAgICAgICAg
 ICAgICAgICAgMHgwOCwgICAgICAgICAgICAgICAvLyBMZW5ndGgKICAgICAgICAgICAgICAg
 ICAgICAgICAgKQogICAgICAgICAgICAgICAgICAgIFdvcmRJTyAoUmVzb3VyY2VQcm9kdWNl
 ciwgTWluRml4ZWQsIE1heEZpeGVkLCBQb3NEZWNvZGUsIEVudGlyZVJhbmdlLAogICAgICAg
 ICAgICAgICAgICAgICAgICAweDAwMDAsICAgICAgICAgICAgIC8vIEdyYW51bGFyaXR5CiAg
 ICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMCwgICAgICAgICAgICAgLy8gUmFuZ2UgTWlu
 aW11bQogICAgICAgICAgICAgICAgICAgICAgICAweDBDRjcsICAgICAgICAgICAgIC8vIFJh
 bmdlIE1heGltdW0KICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwLCAgICAgICAgICAg
 ICAvLyBUcmFuc2xhdGlvbiBPZmZzZXQKICAgICAgICAgICAgICAgICAgICAgICAgMHgwQ0Y4
 LCAgICAgICAgICAgICAvLyBMZW5ndGgKICAgICAgICAgICAgICAgICAgICAgICAgLCwgLCBU
 eXBlU3RhdGljKQogICAgICAgICAgICAgICAgICAgIFdvcmRJTyAoUmVzb3VyY2VQcm9kdWNl
 ciwgTWluRml4ZWQsIE1heEZpeGVkLCBQb3NEZWNvZGUsIEVudGlyZVJhbmdlLAogICAgICAg
 ICAgICAgICAgICAgICAgICAweDAwMDAsICAgICAgICAgICAgIC8vIEdyYW51bGFyaXR5CiAg
 ICAgICAgICAgICAgICAgICAgICAgIDB4MEQwMCwgICAgICAgICAgICAgLy8gUmFuZ2UgTWlu
 aW11bQogICAgICAgICAgICAgICAgICAgICAgICAweEZGRkYsICAgICAgICAgICAgIC8vIFJh
 bmdlIE1heGltdW0KICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwLCAgICAgICAgICAg
 ICAvLyBUcmFuc2xhdGlvbiBPZmZzZXQKICAgICAgICAgICAgICAgICAgICAgICAgMHhGMzAw
 LCAgICAgICAgICAgICAvLyBMZW5ndGgKICAgICAgICAgICAgICAgICAgICAgICAgLCwgLCBU
 eXBlU3RhdGljKQogICAgICAgICAgICAgICAgICAgIERXb3JkTWVtb3J5IChSZXNvdXJjZVBy
 b2R1Y2VyLCBQb3NEZWNvZGUsIE1pbkZpeGVkLCBNYXhGaXhlZCwgQ2FjaGVhYmxlLCBSZWFk
 V3JpdGUsCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAsICAgICAgICAgLy8g
 R3JhbnVsYXJpdHkKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDBBMDAwMCwgICAgICAg
 ICAvLyBSYW5nZSBNaW5pbXVtCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwQkZGRkYs
 ICAgICAgICAgLy8gUmFuZ2UgTWF4aW11bQogICAgICAgICAgICAgICAgICAgICAgICAweDAw
 MDAwMDAwLCAgICAgICAgIC8vIFRyYW5zbGF0aW9uIE9mZnNldAogICAgICAgICAgICAgICAg
 ICAgICAgICAweDAwMDIwMDAwLCAgICAgICAgIC8vIExlbmd0aAogICAgICAgICAgICAgICAg
 ICAgICAgICAsLCAsIEFkZHJlc3NSYW5nZU1lbW9yeSwgVHlwZVN0YXRpYykKICAgICAgICAg
 ICAgICAgICAgICBEV29yZE1lbW9yeSAoUmVzb3VyY2VQcm9kdWNlciwgUG9zRGVjb2RlLCBN
 aW5GaXhlZCwgTWF4Rml4ZWQsIENhY2hlYWJsZSwgUmVhZFdyaXRlLAogICAgICAgICAgICAg
 ICAgICAgICAgICAweDAwMDAwMDAwLCAgICAgICAgIC8vIEdyYW51bGFyaXR5CiAgICAgICAg
 ICAgICAgICAgICAgICAgIDB4MDAwQzAwMDAsICAgICAgICAgLy8gUmFuZ2UgTWluaW11bQog
 ICAgICAgICAgICAgICAgICAgICAgICAweDAwMERGRkZGLCAgICAgICAgIC8vIFJhbmdlIE1h
 eGltdW0KICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwgICAgICAgICAvLyBU
 cmFuc2xhdGlvbiBPZmZzZXQKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAyMDAwMCwg
 ICAgICAgICAvLyBMZW5ndGgKICAgICAgICAgICAgICAgICAgICAgICAgLCwgLCBBZGRyZXNz
 UmFuZ2VNZW1vcnksIFR5cGVTdGF0aWMpCiAgICAgICAgICAgICAgICAgICAgRFdvcmRNZW1v
 cnkgKFJlc291cmNlUHJvZHVjZXIsIFBvc0RlY29kZSwgTWluRml4ZWQsIE1heEZpeGVkLCBD
 YWNoZWFibGUsIFJlYWRXcml0ZSwKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAw
 MCwgICAgICAgICAvLyBHcmFudWxhcml0eQogICAgICAgICAgICAgICAgICAgICAgICAweDAw
 MTAwMDAwLCAgICAgICAgIC8vIFJhbmdlIE1pbmltdW0KICAgICAgICAgICAgICAgICAgICAg
 ICAgMHhGRUJGRkZGRiwgICAgICAgICAvLyBSYW5nZSBNYXhpbXVtCiAgICAgICAgICAgICAg
 ICAgICAgICAgIDB4MDAwMDAwMDAsICAgICAgICAgLy8gVHJhbnNsYXRpb24gT2Zmc2V0CiAg
 ICAgICAgICAgICAgICAgICAgICAgIDB4RkZGMDAwMDAsICAgICAgICAgLy8gTGVuZ3RoCiAg
 ICAgICAgICAgICAgICAgICAgICAgICwsIF9ZMDAsIEFkZHJlc3NSYW5nZU1lbW9yeSwgVHlw
 ZVN0YXRpYykKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICBDcmVhdGVEV29y
 ZEZpZWxkIChCVUYwLCBcX1NCLlBDSTAuX0NSUy5fWTAwLl9NSU4sIFRDTU0pCiAgICAgICAg
 ICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChCVUYwLCBcX1NCLlBDSTAuX0NSUy5fWTAwLl9M
 RU4sIFRPTU0pCiAgICAgICAgICAgICAgICBBZGQgKEFNRU0sIDB4MDAwMTAwMDAsIFRDTU0p
 CiAgICAgICAgICAgICAgICBBZGQgKFRDTU0sIDB4MDAwMTAwMDAsIFRDTU0pCiAgICAgICAg
 ICAgICAgICBTdWJ0cmFjdCAoMHhGRUMwMDAwMCwgVENNTSwgVE9NTSkKICAgICAgICAgICAg
 ICAgIFJldHVybiAoQlVGMCkKICAgICAgICAgICAgfQoKICAgICAgICAgICAgTmFtZSAoUElD
 TSwgUGFja2FnZSAoMHgzMCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgUGFja2Fn
 ZSAoMHgwNCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAweDAwMTZG
 RkZGLCAKICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAgICAgICBc
 X1NCLlBDSTAuTE5LQSwgCiAgICAgICAgICAgICAgICAgICAgMHgwMAogICAgICAgICAgICAg
 ICAgfSwgCgogICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAg
 IHsKICAgICAgICAgICAgICAgICAgICAweDAwMTZGRkZGLCAKICAgICAgICAgICAgICAgICAg
 ICAweDAxLCAKICAgICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuTE5LQiwgCiAgICAgICAg
 ICAgICAgICAgICAgMHgwMAogICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAg
 UGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAw
 eDAwMTZGRkZGLCAKICAgICAgICAgICAgICAgICAgICAweDAyLCAKICAgICAgICAgICAgICAg
 ICAgICBcX1NCLlBDSTAuTE5LQywgCiAgICAgICAgICAgICAgICAgICAgMHgwMAogICAgICAg
 ICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAg
 ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAweDAwMTZGRkZGLCAKICAgICAgICAgICAg
 ICAgICAgICAweDAzLCAKICAgICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuTE5LRCwgCiAg
 ICAgICAgICAgICAgICAgICAgMHgwMAogICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAg
 ICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg
 ICAgICAweDAwMUJGRkZGLCAKICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAg
 ICAgICAgICAgICBcX1NCLlBDSTAuTE5LMCwgCiAgICAgICAgICAgICAgICAgICAgMHgwMAog
 ICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAg
 ICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAweDAwMDFGRkZGLCAKICAgICAg
 ICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuTE5L
 QSwgCiAgICAgICAgICAgICAgICAgICAgMHgwMAogICAgICAgICAgICAgICAgfSwgCgogICAg
 ICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAg
 ICAgICAgICAgICAweDAwMDFGRkZGLCAKICAgICAgICAgICAgICAgICAgICAweDAxLCAKICAg
 ICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuTE5LQiwgCiAgICAgICAgICAgICAgICAgICAg
 MHgwMAogICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgUGFja2FnZSAoMHgw
 NCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAweDAwMDFGRkZGLCAK
 ICAgICAgICAgICAgICAgICAgICAweDAyLCAKICAgICAgICAgICAgICAgICAgICBcX1NCLlBD
 STAuTE5LQywgCiAgICAgICAgICAgICAgICAgICAgMHgwMAogICAgICAgICAgICAgICAgfSwg
 CgogICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgIHsKICAg
 ICAgICAgICAgICAgICAgICAweDAwMDFGRkZGLCAKICAgICAgICAgICAgICAgICAgICAweDAz
 LCAKICAgICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuTE5LRCwgCiAgICAgICAgICAgICAg
 ICAgICAgMHgwMAogICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgUGFja2Fn
 ZSAoMHgwNCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAweEZGRkYs
 IAogICAgICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgICAgIFxfU0Iu
 UENJMC5MTktBLCAKICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgICAgICB9
 LCAKCiAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgewog
 ICAgICAgICAgICAgICAgICAgIDB4RkZGRiwgCiAgICAgICAgICAgICAgICAgICAgMHgwMSwg
 CiAgICAgICAgICAgICAgICAgICAgXF9TQi5QQ0kwLkxOS0IsIAogICAgICAgICAgICAgICAg
 ICAgIDB4MDAKICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgIFBhY2thZ2Ug
 KDB4MDQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgMHhGRkZGLCAK
 ICAgICAgICAgICAgICAgICAgICAweDAyLCAKICAgICAgICAgICAgICAgICAgICBcX1NCLlBD
 STAuTE5LQywgCiAgICAgICAgICAgICAgICAgICAgMHgwMAogICAgICAgICAgICAgICAgfSwg
 CgogICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgIHsKICAg
 ICAgICAgICAgICAgICAgICAweEZGRkYsIAogICAgICAgICAgICAgICAgICAgIDB4MDMsIAog
 ICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MTktELCAKICAgICAgICAgICAgICAgICAg
 ICAweDAwCiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICBQYWNrYWdlICgw
 eDA0KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIDB4MDAwM0ZGRkYs
 IAogICAgICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgICAgIFxfU0Iu
 UENJMC5MTktBLCAKICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgICAgICB9
 LCAKCiAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgewog
 ICAgICAgICAgICAgICAgICAgIDB4MDAwM0ZGRkYsIAogICAgICAgICAgICAgICAgICAgIDB4
 MDEsIAogICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MTktCLCAKICAgICAgICAgICAg
 ICAgICAgICAweDAwCiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICBQYWNr
 YWdlICgweDA0KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIDB4MDAw
 M0ZGRkYsIAogICAgICAgICAgICAgICAgICAgIDB4MDIsIAogICAgICAgICAgICAgICAgICAg
 IFxfU0IuUENJMC5MTktDLCAKICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAg
 ICAgICB9LCAKCiAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAg
 ICAgewogICAgICAgICAgICAgICAgICAgIDB4MDAwM0ZGRkYsIAogICAgICAgICAgICAgICAg
 ICAgIDB4MDMsIAogICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MTktELCAKICAgICAg
 ICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAg
 ICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAg
 IDB4MDAwNUZGRkYsIAogICAgICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAg
 ICAgICAgIFxfU0IuUENJMC5MTktBLCAKICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAg
 ICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAg
 ICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIDB4MDAwNUZGRkYsIAogICAgICAgICAg
 ICAgICAgICAgIDB4MDEsIAogICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MTktCLCAK
 ICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAg
 ICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAg
 ICAgICAgIDB4MDAwNUZGRkYsIAogICAgICAgICAgICAgICAgICAgIDB4MDIsIAogICAgICAg
 ICAgICAgICAgICAgIFxfU0IuUENJMC5MTktDLCAKICAgICAgICAgICAgICAgICAgICAweDAw
 CiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQog
 ICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIDB4MDAwNUZGRkYsIAogICAg
 ICAgICAgICAgICAgICAgIDB4MDMsIAogICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5M
 TktELCAKICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgICAgICB9LCAKCiAg
 ICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgewogICAgICAg
 ICAgICAgICAgICAgIDB4MDAwNkZGRkYsIAogICAgICAgICAgICAgICAgICAgIDB4MDAsIAog
 ICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MTktBLCAKICAgICAgICAgICAgICAgICAg
 ICAweDAwCiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICBQYWNrYWdlICgw
 eDA0KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIDB4MDAwNkZGRkYs
 IAogICAgICAgICAgICAgICAgICAgIDB4MDEsIAogICAgICAgICAgICAgICAgICAgIFxfU0Iu
 UENJMC5MTktCLCAKICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgICAgICB9
 LCAKCiAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgewog
 ICAgICAgICAgICAgICAgICAgIDB4MDAwNkZGRkYsIAogICAgICAgICAgICAgICAgICAgIDB4
 MDIsIAogICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MTktDLCAKICAgICAgICAgICAg
 ICAgICAgICAweDAwCiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICBQYWNr
 YWdlICgweDA0KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIDB4MDAw
 NkZGRkYsIAogICAgICAgICAgICAgICAgICAgIDB4MDMsIAogICAgICAgICAgICAgICAgICAg
 IFxfU0IuUENJMC5MTktELCAKICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAg
 ICAgICB9LCAKCiAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAg
 ICAgewogICAgICAgICAgICAgICAgICAgIDB4MDAwN0ZGRkYsIAogICAgICAgICAgICAgICAg
 ICAgIDB4MDAsIAogICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MTktBLCAKICAgICAg
 ICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAg
 ICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAg
 IDB4MDAwN0ZGRkYsIAogICAgICAgICAgICAgICAgICAgIDB4MDEsIAogICAgICAgICAgICAg
 ICAgICAgIFxfU0IuUENJMC5MTktCLCAKICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAg
 ICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAg
 ICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIDB4MDAwN0ZGRkYsIAogICAgICAgICAg
 ICAgICAgICAgIDB4MDIsIAogICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MTktDLCAK
 ICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAg
 ICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAg
 ICAgICAgIDB4MDAwN0ZGRkYsIAogICAgICAgICAgICAgICAgICAgIDB4MDMsIAogICAgICAg
 ICAgICAgICAgICAgIFxfU0IuUENJMC5MTktELCAKICAgICAgICAgICAgICAgICAgICAweDAw
 CiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQog
 ICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIDB4MDAxQ0ZGRkYsIAogICAg
 ICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5M
 TktBLCAKICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgICAgICB9LCAKCiAg
 ICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgewogICAgICAg
 ICAgICAgICAgICAgIDB4MDAxQ0ZGRkYsIAogICAgICAgICAgICAgICAgICAgIDB4MDEsIAog
 ICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MTktCLCAKICAgICAgICAgICAgICAgICAg
 ICAweDAwCiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICBQYWNrYWdlICgw
 eDA0KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIDB4MDAxQ0ZGRkYs
 IAogICAgICAgICAgICAgICAgICAgIDB4MDIsIAogICAgICAgICAgICAgICAgICAgIFxfU0Iu
 UENJMC5MTktDLCAKICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgICAgICB9
 LCAKCiAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgewog
 ICAgICAgICAgICAgICAgICAgIDB4MDAxQ0ZGRkYsIAogICAgICAgICAgICAgICAgICAgIDB4
 MDMsIAogICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MTktELCAKICAgICAgICAgICAg
 ICAgICAgICAweDAwCiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICBQYWNr
 YWdlICgweDA0KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIDB4MDAx
 Q0ZGRkYsIAogICAgICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgICAg
 IFxfU0IuUENJMC5MTktBLCAKICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAg
 ICAgICB9LCAKCiAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAg
 ICAgewogICAgICAgICAgICAgICAgICAgIDB4MDAxQ0ZGRkYsIAogICAgICAgICAgICAgICAg
 ICAgIDB4MDEsIAogICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MTktCLCAKICAgICAg
 ICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAg
 ICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAg
 IDB4MDAxQ0ZGRkYsIAogICAgICAgICAgICAgICAgICAgIDB4MDIsIAogICAgICAgICAgICAg
 ICAgICAgIFxfU0IuUENJMC5MTktDLCAKICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAg
 ICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAg
 ICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIDB4MDAxQ0ZGRkYsIAogICAgICAgICAg
 ICAgICAgICAgIDB4MDMsIAogICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MTktELCAK
 ICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAg
 ICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAg
 ICAgICAgIDB4MDAxREZGRkYsIAogICAgICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAg
 ICAgICAgICAgICAgIFxfU0IuUENJMC5MTksxLCAKICAgICAgICAgICAgICAgICAgICAweDAw
 CiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQog
 ICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIDB4MDAxREZGRkYsIAogICAg
 ICAgICAgICAgICAgICAgIDB4MDEsIAogICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5M
 TktELCAKICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgICAgICB9LCAKCiAg
 ICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgewogICAgICAg
 ICAgICAgICAgICAgIDB4MDAxREZGRkYsIAogICAgICAgICAgICAgICAgICAgIDB4MDIsIAog
 ICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MTktDLCAKICAgICAgICAgICAgICAgICAg
 ICAweDAwCiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICBQYWNrYWdlICgw
 eDA0KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIDB4MDAxREZGRkYs
 IAogICAgICAgICAgICAgICAgICAgIDB4MDMsIAogICAgICAgICAgICAgICAgICAgIFxfU0Iu
 UENJMC5MTktBLCAKICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgICAgICB9
 LCAKCiAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgewog
 ICAgICAgICAgICAgICAgICAgIDB4MDAxRkZGRkYsIAogICAgICAgICAgICAgICAgICAgIDB4
 MDEsIAogICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MTktELCAKICAgICAgICAgICAg
 ICAgICAgICAweDAwCiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICBQYWNr
 YWdlICgweDA0KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIDB4MDAx
 RkZGRkYsIAogICAgICAgICAgICAgICAgICAgIDB4MDEsIAogICAgICAgICAgICAgICAgICAg
 IFxfU0IuUENJMC5MTktELCAKICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAg
 ICAgICB9LCAKCiAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAg
 ICAgewogICAgICAgICAgICAgICAgICAgIDB4MDAxRkZGRkYsIAogICAgICAgICAgICAgICAg
 ICAgIDB4MDIsIAogICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MTktDLCAKICAgICAg
 ICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAg
 ICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAg
 IDB4MDAxQUZGRkYsIAogICAgICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAg
 ICAgICAgIFxfU0IuUENJMC5MTktBLCAKICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAg
 ICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAg
 ICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIDB4MDAxQUZGRkYsIAogICAgICAgICAg
 ICAgICAgICAgIDB4MDEsIAogICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MTktGLCAK
 ICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAg
 ICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAg
 ICAgICAgIDB4MDAxQUZGRkYsIAogICAgICAgICAgICAgICAgICAgIDB4MDIsIAogICAgICAg
 ICAgICAgICAgICAgIFxfU0IuUENJMC5MTktDLCAKICAgICAgICAgICAgICAgICAgICAweDAw
 CiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQog
 ICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIDB4MDAxQUZGRkYsIAogICAg
 ICAgICAgICAgICAgICAgIDB4MDIsIAogICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5M
 TktDLCAKICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgICAgICB9CiAgICAg
 ICAgICAgIH0pCiAgICAgICAgICAgIE5hbWUgKEFQSUMsIFBhY2thZ2UgKDB4MzApCiAgICAg
 ICAgICAgIHsKICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAg
 ICB7CiAgICAgICAgICAgICAgICAgICAgMHgwMDE2RkZGRiwgCiAgICAgICAgICAgICAgICAg
 ICAgMHgwMCwgCiAgICAgICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAg
 ICAgMHgxMAogICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgUGFja2FnZSAo
 MHgwNCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAweDAwMTZGRkZG
 LCAKICAgICAgICAgICAgICAgICAgICAweDAxLCAKICAgICAgICAgICAgICAgICAgICAweDAw
 LCAKICAgICAgICAgICAgICAgICAgICAweDExCiAgICAgICAgICAgICAgICB9LCAKCiAgICAg
 ICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgewogICAgICAgICAg
 ICAgICAgICAgIDB4MDAxNkZGRkYsIAogICAgICAgICAgICAgICAgICAgIDB4MDIsIAogICAg
 ICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgICAgIDB4MTIKICAgICAg
 ICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAg
 ICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgMHgwMDE2RkZGRiwgCiAgICAgICAgICAg
 ICAgICAgICAgMHgwMywgCiAgICAgICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAg
 ICAgICAgICAgMHgxMwogICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgUGFj
 a2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAweEZG
 RkYsIAogICAgICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgICAgIDB4
 MDAsIAogICAgICAgICAgICAgICAgICAgIDB4MTAKICAgICAgICAgICAgICAgIH0sIAoKICAg
 ICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAg
 ICAgICAgICAgICAgMHhGRkZGLCAKICAgICAgICAgICAgICAgICAgICAweDAxLCAKICAgICAg
 ICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAgICAgICAweDExCiAgICAgICAg
 ICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAg
 ICAgICAgewogICAgICAgICAgICAgICAgICAgIDB4RkZGRiwgCiAgICAgICAgICAgICAgICAg
 ICAgMHgwMiwgCiAgICAgICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAg
 ICAgMHgxMgogICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgUGFja2FnZSAo
 MHgwNCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAweEZGRkYsIAog
 ICAgICAgICAgICAgICAgICAgIDB4MDMsIAogICAgICAgICAgICAgICAgICAgIDB4MDAsIAog
 ICAgICAgICAgICAgICAgICAgIDB4MTMKICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAg
 ICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg
 ICAgICAgMHgwMDFCRkZGRiwgCiAgICAgICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAg
 ICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAgICAgMHgxNgogICAgICAgICAg
 ICAgICAgfSwgCgogICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAg
 ICAgIHsKICAgICAgICAgICAgICAgICAgICAweDAwMDFGRkZGLCAKICAgICAgICAgICAgICAg
 ICAgICAweDAwLCAKICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAg
 ICAgICAweDEwCiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICBQYWNrYWdl
 ICgweDA0KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIDB4MDAwMUZG
 RkYsIAogICAgICAgICAgICAgICAgICAgIDB4MDEsIAogICAgICAgICAgICAgICAgICAgIDB4
 MDAsIAogICAgICAgICAgICAgICAgICAgIDB4MTEKICAgICAgICAgICAgICAgIH0sIAoKICAg
 ICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAg
 ICAgICAgICAgICAgMHgwMDAxRkZGRiwgCiAgICAgICAgICAgICAgICAgICAgMHgwMiwgCiAg
 ICAgICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAgICAgMHgxMgogICAg
 ICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAg
 ICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAweDAwMDFGRkZGLCAKICAgICAgICAg
 ICAgICAgICAgICAweDAzLCAKICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAg
 ICAgICAgICAgICAweDEzCiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICBQ
 YWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIDB4
 MDAwM0ZGRkYsIAogICAgICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAg
 ICAgIDB4MDAsIAogICAgICAgICAgICAgICAgICAgIDB4MTAKICAgICAgICAgICAgICAgIH0s
 IAoKICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICB7CiAg
 ICAgICAgICAgICAgICAgICAgMHgwMDAzRkZGRiwgCiAgICAgICAgICAgICAgICAgICAgMHgw
 MSwgCiAgICAgICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAgICAgMHgx
 MQogICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkK
 ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAweDAwMDNGRkZGLCAKICAg
 ICAgICAgICAgICAgICAgICAweDAyLCAKICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAg
 ICAgICAgICAgICAgICAgICAweDEyCiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAg
 ICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAg
 ICAgIDB4MDAwM0ZGRkYsIAogICAgICAgICAgICAgICAgICAgIDB4MDMsIAogICAgICAgICAg
 ICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgICAgIDB4MTMKICAgICAgICAgICAg
 ICAgIH0sIAoKICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAg
 ICB7CiAgICAgICAgICAgICAgICAgICAgMHgwMDA1RkZGRiwgCiAgICAgICAgICAgICAgICAg
 ICAgMHgwMCwgCiAgICAgICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAg
 ICAgMHgxMAogICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgUGFja2FnZSAo
 MHgwNCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAweDAwMDVGRkZG
 LCAKICAgICAgICAgICAgICAgICAgICAweDAxLCAKICAgICAgICAgICAgICAgICAgICAweDAw
 LCAKICAgICAgICAgICAgICAgICAgICAweDExCiAgICAgICAgICAgICAgICB9LCAKCiAgICAg
 ICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgewogICAgICAgICAg
 ICAgICAgICAgIDB4MDAwNUZGRkYsIAogICAgICAgICAgICAgICAgICAgIDB4MDIsIAogICAg
 ICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgICAgIDB4MTIKICAgICAg
 ICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAg
 ICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgMHgwMDA1RkZGRiwgCiAgICAgICAgICAg
 ICAgICAgICAgMHgwMywgCiAgICAgICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAg
 ICAgICAgICAgMHgxMwogICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgUGFj
 a2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAweDAw
 MDZGRkZGLCAKICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAgICAg
 ICAweDAwLCAKICAgICAgICAgICAgICAgICAgICAweDEwCiAgICAgICAgICAgICAgICB9LCAK
 CiAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgewogICAg
 ICAgICAgICAgICAgICAgIDB4MDAwNkZGRkYsIAogICAgICAgICAgICAgICAgICAgIDB4MDEs
 IAogICAgICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgICAgIDB4MTEK
 ICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAg
 ICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgMHgwMDA2RkZGRiwgCiAgICAg
 ICAgICAgICAgICAgICAgMHgwMiwgCiAgICAgICAgICAgICAgICAgICAgMHgwMCwgCiAgICAg
 ICAgICAgICAgICAgICAgMHgxMgogICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAg
 ICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAg
 ICAweDAwMDZGRkZGLCAKICAgICAgICAgICAgICAgICAgICAweDAzLCAKICAgICAgICAgICAg
 ICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAgICAgICAweDEzCiAgICAgICAgICAgICAg
 ICB9LCAKCiAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAg
 ewogICAgICAgICAgICAgICAgICAgIDB4MDAwN0ZGRkYsIAogICAgICAgICAgICAgICAgICAg
 IDB4MDAsIAogICAgICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgICAg
 IDB4MTAKICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4
 MDQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgMHgwMDA3RkZGRiwg
 CiAgICAgICAgICAgICAgICAgICAgMHgwMSwgCiAgICAgICAgICAgICAgICAgICAgMHgwMCwg
 CiAgICAgICAgICAgICAgICAgICAgMHgxMQogICAgICAgICAgICAgICAgfSwgCgogICAgICAg
 ICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgICAgICAweDAwMDdGRkZGLCAKICAgICAgICAgICAgICAgICAgICAweDAyLCAKICAgICAg
 ICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAgICAgICAweDEyCiAgICAgICAg
 ICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAg
 ICAgICAgewogICAgICAgICAgICAgICAgICAgIDB4MDAwN0ZGRkYsIAogICAgICAgICAgICAg
 ICAgICAgIDB4MDMsIAogICAgICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAg
 ICAgICAgIDB4MTMKICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgIFBhY2th
 Z2UgKDB4MDQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgMHgwMDFD
 RkZGRiwgCiAgICAgICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAgICAg
 MHgwMCwgCiAgICAgICAgICAgICAgICAgICAgMHgxMAogICAgICAgICAgICAgICAgfSwgCgog
 ICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgIHsKICAgICAg
 ICAgICAgICAgICAgICAweDAwMUNGRkZGLCAKICAgICAgICAgICAgICAgICAgICAweDAxLCAK
 ICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAgICAgICAweDExCiAg
 ICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAg
 ICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIDB4MDAxQ0ZGRkYsIAogICAgICAg
 ICAgICAgICAgICAgIDB4MDIsIAogICAgICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAg
 ICAgICAgICAgICAgIDB4MTIKICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAg
 IFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAg
 MHgwMDFDRkZGRiwgCiAgICAgICAgICAgICAgICAgICAgMHgwMywgCiAgICAgICAgICAgICAg
 ICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAgICAgMHgxMwogICAgICAgICAgICAgICAg
 fSwgCgogICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgIHsK
 ICAgICAgICAgICAgICAgICAgICAweDAwMUNGRkZGLCAKICAgICAgICAgICAgICAgICAgICAw
 eDAwLCAKICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAgICAgICAw
 eDEwCiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0
 KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIDB4MDAxQ0ZGRkYsIAog
 ICAgICAgICAgICAgICAgICAgIDB4MDEsIAogICAgICAgICAgICAgICAgICAgIDB4MDAsIAog
 ICAgICAgICAgICAgICAgICAgIDB4MTEKICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAg
 ICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg
 ICAgICAgMHgwMDFDRkZGRiwgCiAgICAgICAgICAgICAgICAgICAgMHgwMiwgCiAgICAgICAg
 ICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAgICAgMHgxMgogICAgICAgICAg
 ICAgICAgfSwgCgogICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAg
 ICAgIHsKICAgICAgICAgICAgICAgICAgICAweDAwMUNGRkZGLCAKICAgICAgICAgICAgICAg
 ICAgICAweDAzLCAKICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAg
 ICAgICAweDEzCiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICBQYWNrYWdl
 ICgweDA0KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIDB4MDAxREZG
 RkYsIAogICAgICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgICAgIDB4
 MDAsIAogICAgICAgICAgICAgICAgICAgIDB4MTcKICAgICAgICAgICAgICAgIH0sIAoKICAg
 ICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAg
 ICAgICAgICAgICAgMHgwMDFERkZGRiwgCiAgICAgICAgICAgICAgICAgICAgMHgwMSwgCiAg
 ICAgICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAgICAgMHgxMwogICAg
 ICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAg
 ICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAweDAwMURGRkZGLCAKICAgICAgICAg
 ICAgICAgICAgICAweDAyLCAKICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAg
 ICAgICAgICAgICAweDEyCiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICBQ
 YWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIDB4
 MDAxREZGRkYsIAogICAgICAgICAgICAgICAgICAgIDB4MDMsIAogICAgICAgICAgICAgICAg
 ICAgIDB4MDAsIAogICAgICAgICAgICAgICAgICAgIDB4MTAKICAgICAgICAgICAgICAgIH0s
 IAoKICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICB7CiAg
 ICAgICAgICAgICAgICAgICAgMHgwMDFGRkZGRiwgCiAgICAgICAgICAgICAgICAgICAgMHgw
 MSwgCiAgICAgICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAgICAgMHgx
 MwogICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkK
 ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAweDAwMUZGRkZGLCAKICAg
 ICAgICAgICAgICAgICAgICAweDAxLCAKICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAg
 ICAgICAgICAgICAgICAgICAweDEzCiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAg
 ICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAg
 ICAgIDB4MDAxRkZGRkYsIAogICAgICAgICAgICAgICAgICAgIDB4MDIsIAogICAgICAgICAg
 ICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgICAgIDB4MTIKICAgICAgICAgICAg
 ICAgIH0sIAoKICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAg
 ICB7CiAgICAgICAgICAgICAgICAgICAgMHgwMDFBRkZGRiwgCiAgICAgICAgICAgICAgICAg
 ICAgMHgwMCwgCiAgICAgICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAg
 ICAgMHgxMAogICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgUGFja2FnZSAo
 MHgwNCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAweDAwMUFGRkZG
 LCAKICAgICAgICAgICAgICAgICAgICAweDAxLCAKICAgICAgICAgICAgICAgICAgICAweDAw
 LCAKICAgICAgICAgICAgICAgICAgICAweDE1CiAgICAgICAgICAgICAgICB9LCAKCiAgICAg
 ICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgewogICAgICAgICAg
 ICAgICAgICAgIDB4MDAxQUZGRkYsIAogICAgICAgICAgICAgICAgICAgIDB4MDIsIAogICAg
 ICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgICAgIDB4MTIKICAgICAg
 ICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAg
 ICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgMHgwMDFBRkZGRiwgCiAgICAgICAgICAg
 ICAgICAgICAgMHgwMiwgCiAgICAgICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAg
 ICAgICAgICAgMHgxMgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KQogICAgICAg
 ICAgICBNZXRob2QgKF9QUlQsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgIHsKICAg
 ICAgICAgICAgICAgIElmIChMTm90IChQSUNGKSkKICAgICAgICAgICAgICAgIHsKICAgICAg
 ICAgICAgICAgICAgICBSZXR1cm4gKFBJQ00pCiAgICAgICAgICAgICAgICB9CiAgICAgICAg
 ICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgUmV0
 dXJuIChBUElDKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAg
 ICBEZXZpY2UgKFBFWDApCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIE5hbWUgKF9B
 RFIsIDB4MDAxQzAwMDApCiAgICAgICAgICAgICAgICBNZXRob2QgKF9TVEEsIDAsIE5vdFNl
 cmlhbGl6ZWQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgUmV0dXJu
 ICgweDBGKQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIE1ldGhvZCAoX1BS
 VywgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg
 ICAgICBSZXR1cm4gKFBhY2thZ2UgKDB4MDIpCiAgICAgICAgICAgICAgICAgICAgewogICAg
 ICAgICAgICAgICAgICAgICAgICAweDA5LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgw
 NQogICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAg
 ICAgICAgTmFtZSAoUElDMCwgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgIHsKICAg
 ICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsK
 ICAgICAgICAgICAgICAgICAgICAgICAgMHhGRkZGLCAKICAgICAgICAgICAgICAgICAgICAg
 ICAgMHgwMCwgCiAgICAgICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MTktBLCAKICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgwMAogICAgICAgICAgICAgICAgICAgIH0sIAoKICAg
 ICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsK
 ICAgICAgICAgICAgICAgICAgICAgICAgMHhGRkZGLCAKICAgICAgICAgICAgICAgICAgICAg
 ICAgMHgwMSwgCiAgICAgICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MTktCLCAKICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgwMAogICAgICAgICAgICAgICAgICAgIH0sIAoKICAg
 ICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsK
 ICAgICAgICAgICAgICAgICAgICAgICAgMHhGRkZGLCAKICAgICAgICAgICAgICAgICAgICAg
 ICAgMHgwMiwgCiAgICAgICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MTktDLCAKICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgwMAogICAgICAgICAgICAgICAgICAgIH0sIAoKICAg
 ICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsK
 ICAgICAgICAgICAgICAgICAgICAgICAgMHhGRkZGLCAKICAgICAgICAgICAgICAgICAgICAg
 ICAgMHgwMywgCiAgICAgICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MTktELCAKICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgwMAogICAgICAgICAgICAgICAgICAgIH0KICAgICAg
 ICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICBOYW1lIChBUEkwLCBQYWNrYWdlICgweDA0
 KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQp
 CiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAweEZGRkYs
 IAogICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAgICAgICAg
 ICAgMHgwMCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MTAKICAgICAgICAgICAgICAg
 ICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAg
 ICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4RkZGRiwgCiAgICAgICAg
 ICAgICAgICAgICAgICAgIDB4MDEsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAK
 ICAgICAgICAgICAgICAgICAgICAgICAgMHgxMQogICAgICAgICAgICAgICAgICAgIH0sIAoK
 ICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAg
 IHsKICAgICAgICAgICAgICAgICAgICAgICAgMHhGRkZGLCAKICAgICAgICAgICAgICAgICAg
 ICAgICAgMHgwMiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAg
 ICAgICAgICAgICAgICAweDEyCiAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAg
 ICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAg
 ICAgICAgICAgICAgICAgICAweEZGRkYsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAz
 LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAgICAg
 ICAgIDB4MTMKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9KQogICAg
 ICAgICAgICAgICAgTWV0aG9kIChfUFJULCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAg
 ICAgICAgewogICAgICAgICAgICAgICAgICAgIElmIChMTm90IChQSUNGKSkKICAgICAgICAg
 ICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoUElDMCkKICAg
 ICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgRWxzZQogICAgICAgICAg
 ICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChBUEkwKQogICAg
 ICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAg
 ICAgICAgICAgRGV2aWNlIChQRVgxKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBO
 YW1lIChfQURSLCAweDAwMUMwMDAxKQogICAgICAgICAgICAgICAgTWV0aG9kIChfU1RBLCAw
 LCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAg
 IFJldHVybiAoMHgwRikKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBNZXRo
 b2QgKF9QUlcsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAg
 ICAgICAgICAgICAgUmV0dXJuIChQYWNrYWdlICgweDAyKQogICAgICAgICAgICAgICAgICAg
 IHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgwOSwgCiAgICAgICAgICAgICAgICAgICAg
 ICAgIDB4MDUKICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgfQoKICAg
 ICAgICAgICAgICAgIE5hbWUgKFBJQzEsIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAg
 ICB7CiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAg
 ICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4RkZGRiwgCiAgICAgICAgICAgICAg
 ICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuTE5L
 QiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAKICAgICAgICAgICAgICAgICAgICB9
 LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAg
 ICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4RkZGRiwgCiAgICAgICAgICAgICAg
 ICAgICAgICAgIDB4MDEsIAogICAgICAgICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuTE5L
 QywgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAKICAgICAgICAgICAgICAgICAgICB9
 LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAg
 ICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4RkZGRiwgCiAgICAgICAgICAgICAg
 ICAgICAgICAgIDB4MDIsIAogICAgICAgICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuTE5L
 RCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAKICAgICAgICAgICAgICAgICAgICB9
 LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAg
 ICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4RkZGRiwgCiAgICAgICAgICAgICAg
 ICAgICAgICAgIDB4MDMsIAogICAgICAgICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuTE5L
 QSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAKICAgICAgICAgICAgICAgICAgICB9
 CiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgTmFtZSAoQVBJMSwgUGFja2Fn
 ZSAoMHgwNCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBQYWNrYWdl
 ICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAg
 MHhGRkZGLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAg
 ICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgICAgICAgICAweDExCiAgICAgICAg
 ICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAg
 ICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAweEZGRkYsIAog
 ICAgICAgICAgICAgICAgICAgICAgICAweDAxLCAKICAgICAgICAgICAgICAgICAgICAgICAg
 MHgwMCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MTIKICAgICAgICAgICAgICAgICAg
 ICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAg
 ICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4RkZGRiwgCiAgICAgICAgICAg
 ICAgICAgICAgICAgIDB4MDIsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgxMwogICAgICAgICAgICAgICAgICAgIH0sIAoKICAg
 ICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsK
 ICAgICAgICAgICAgICAgICAgICAgICAgMHhGRkZGLCAKICAgICAgICAgICAgICAgICAgICAg
 ICAgMHgwMywgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAg
 ICAgICAgICAgICAweDEwCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAg
 fSkKICAgICAgICAgICAgICAgIE1ldGhvZCAoX1BSVCwgMCwgTm90U2VyaWFsaXplZCkKICAg
 ICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBJZiAoTE5vdCAoUElDRikpCiAg
 ICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKFBJ
 QzEpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIEVsc2UKICAg
 ICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoQVBJ
 MSkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAg
 IH0KCiAgICAgICAgICAgIERldmljZSAoUEVYMikKICAgICAgICAgICAgewogICAgICAgICAg
 ICAgICAgTmFtZSAoX0FEUiwgMHgwMDFDMDAwMikKICAgICAgICAgICAgICAgIE1ldGhvZCAo
 X1NUQSwgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgICAgICBSZXR1cm4gKDB4MEYpCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAg
 ICAgTWV0aG9kIChfUFJXLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgewog
 ICAgICAgICAgICAgICAgICAgIFJldHVybiAoUGFja2FnZSAoMHgwMikKICAgICAgICAgICAg
 ICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDksIAogICAgICAgICAgICAg
 ICAgICAgICAgICAweDA1CiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAg
 IH0KCiAgICAgICAgICAgICAgICBOYW1lIChQSUMyLCBQYWNrYWdlICgweDA0KQogICAgICAg
 ICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAg
 ICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAweEZGRkYsIAogICAgICAg
 ICAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAgICAgICAgICAgXF9TQi5Q
 Q0kwLkxOS0MsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgICAg
 ICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAg
 ICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAweEZGRkYsIAogICAgICAg
 ICAgICAgICAgICAgICAgICAweDAxLCAKICAgICAgICAgICAgICAgICAgICAgICAgXF9TQi5Q
 Q0kwLkxOS0QsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgICAg
 ICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAg
 ICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAweEZGRkYsIAogICAgICAg
 ICAgICAgICAgICAgICAgICAweDAyLCAKICAgICAgICAgICAgICAgICAgICAgICAgXF9TQi5Q
 Q0kwLkxOS0EsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgICAg
 ICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAg
 ICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAweEZGRkYsIAogICAgICAg
 ICAgICAgICAgICAgICAgICAweDAzLCAKICAgICAgICAgICAgICAgICAgICAgICAgXF9TQi5Q
 Q0kwLkxOS0IsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgICAg
 ICAgICAgfQogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIE5hbWUgKEFQSTIs
 IFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAg
 UGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAg
 ICAgICAgIDB4RkZGRiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAg
 ICAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgxMgog
 ICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgw
 eDA0KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHhG
 RkZGLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMSwgCiAgICAgICAgICAgICAgICAg
 ICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgICAgICAgICAweDEzCiAgICAgICAgICAg
 ICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAg
 ICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAweEZGRkYsIAogICAg
 ICAgICAgICAgICAgICAgICAgICAweDAyLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgw
 MCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MTAKICAgICAgICAgICAgICAgICAgICB9
 LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAg
 ICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4RkZGRiwgCiAgICAgICAgICAgICAg
 ICAgICAgICAgIDB4MDMsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAgICAg
 ICAgICAgICAgICAgICAgICAgMHgxMQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAg
 ICAgICAgIH0pCiAgICAgICAgICAgICAgICBNZXRob2QgKF9QUlQsIDAsIE5vdFNlcmlhbGl6
 ZWQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgSWYgKExOb3QgKFBJ
 Q0YpKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgUmV0
 dXJuIChQSUMyKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBF
 bHNlCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBSZXR1
 cm4gKEFQSTIpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAg
 ICAgICAgICB9CgogICAgICAgICAgICBEZXZpY2UgKFBFWDMpCiAgICAgICAgICAgIHsKICAg
 ICAgICAgICAgICAgIE5hbWUgKF9BRFIsIDB4MDAxQzAwMDMpCiAgICAgICAgICAgICAgICBN
 ZXRob2QgKF9TVEEsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICB7CiAgICAg
 ICAgICAgICAgICAgICAgUmV0dXJuICgweDBGKQogICAgICAgICAgICAgICAgfQoKICAgICAg
 ICAgICAgICAgIE1ldGhvZCAoX1BSVywgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAg
 ICAgIHsKICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKFBhY2thZ2UgKDB4MDIpCiAgICAg
 ICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAweDA5LCAKICAgICAg
 ICAgICAgICAgICAgICAgICAgMHgwNQogICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAg
 ICAgICAgICB9CgogICAgICAgICAgICAgICAgTmFtZSAoUElDMywgUGFja2FnZSAoMHgwNCkK
 ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQog
 ICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHhGRkZGLCAK
 ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAgICAgICAg
 IFxfU0IuUENJMC5MTktELCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMAogICAgICAg
 ICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQog
 ICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHhGRkZGLCAK
 ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMSwgCiAgICAgICAgICAgICAgICAgICAgICAg
 IFxfU0IuUENJMC5MTktBLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMAogICAgICAg
 ICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQog
 ICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHhGRkZGLCAK
 ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMiwgCiAgICAgICAgICAgICAgICAgICAgICAg
 IFxfU0IuUENJMC5MTktCLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMAogICAgICAg
 ICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQog
 ICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHhGRkZGLCAK
 ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMywgCiAgICAgICAgICAgICAgICAgICAgICAg
 IFxfU0IuUENJMC5MTktDLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMAogICAgICAg
 ICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICBOYW1l
 IChBUEkzLCBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAg
 ICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAg
 ICAgICAgICAgICAgICAweEZGRkYsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAK
 ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAgICAgICAg
 IDB4MTMKICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFj
 a2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAg
 ICAgIDB4RkZGRiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEsIAogICAgICAgICAg
 ICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgxMAogICAg
 ICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0
 KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHhGRkZG
 LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMiwgCiAgICAgICAgICAgICAgICAgICAg
 ICAgIDB4MDAsIAogICAgICAgICAgICAgICAgICAgICAgICAweDExCiAgICAgICAgICAgICAg
 ICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAg
 ICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAweEZGRkYsIAogICAgICAg
 ICAgICAgICAgICAgICAgICAweDAzLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMCwg
 CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MTIKICAgICAgICAgICAgICAgICAgICB9CiAg
 ICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgTWV0aG9kIChfUFJULCAwLCBOb3RT
 ZXJpYWxpemVkKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIElmIChM
 Tm90IChQSUNGKSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAg
 ICAgIFJldHVybiAoUElDMykKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAg
 ICAgICAgRWxzZQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAg
 ICAgUmV0dXJuIChBUEkzKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAg
 IH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgRGV2aWNlIChQRVg0KQogICAgICAgICAg
 ICB7CiAgICAgICAgICAgICAgICBOYW1lIChfQURSLCAweDAwMUMwMDA0KQogICAgICAgICAg
 ICAgICAgTWV0aG9kIChfU1RBLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAg
 ewogICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwRikKICAgICAgICAgICAgICAgIH0K
 CiAgICAgICAgICAgICAgICBNZXRob2QgKF9QUlcsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAg
 ICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChQYWNrYWdlICgweDAy
 KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgwOSwg
 CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDUKICAgICAgICAgICAgICAgICAgICB9KQog
 ICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIE5hbWUgKFBJQzQsIFBhY2thZ2Ug
 KDB4MDQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAo
 MHgwNCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4
 RkZGRiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAg
 ICAgICAgICBcX1NCLlBDSTAuTE5LQSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAK
 ICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAo
 MHgwNCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4
 RkZGRiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEsIAogICAgICAgICAgICAgICAg
 ICAgICAgICBcX1NCLlBDSTAuTE5LQiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAK
 ICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAo
 MHgwNCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4
 RkZGRiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDIsIAogICAgICAgICAgICAgICAg
 ICAgICAgICBcX1NCLlBDSTAuTE5LQywgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAK
 ICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAo
 MHgwNCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4
 RkZGRiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDMsIAogICAgICAgICAgICAgICAg
 ICAgICAgICBcX1NCLlBDSTAuTE5LRCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAK
 ICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAg
 ICAgTmFtZSAoQVBJNCwgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgIHsKICAgICAg
 ICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsKICAg
 ICAgICAgICAgICAgICAgICAgICAgMHhGRkZGLCAKICAgICAgICAgICAgICAgICAgICAgICAg
 MHgwMCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAg
 ICAgICAgICAweDEwCiAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAg
 ICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAg
 ICAgICAgICAgICAweEZGRkYsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAxLCAKICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MTEKICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2Fn
 ZSAoMHgwNCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAg
 IDB4RkZGRiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDIsIAogICAgICAgICAgICAg
 ICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgxMgogICAgICAg
 ICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQog
 ICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHhGRkZGLCAK
 ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMywgCiAgICAgICAgICAgICAgICAgICAgICAg
 IDB4MDAsIAogICAgICAgICAgICAgICAgICAgICAgICAweDEzCiAgICAgICAgICAgICAgICAg
 ICAgfQogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIE1ldGhvZCAoX1BSVCwg
 MCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAg
 ICBJZiAoTE5vdCAoUElDRikpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAg
 ICAgICAgICAgICBSZXR1cm4gKFBJQzQpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAg
 ICAgICAgICAgICAgIEVsc2UKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg
 ICAgICAgICAgIFJldHVybiAoQVBJNCkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAg
 ICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIERldmljZSAoUEVYNSkKICAg
 ICAgICAgICAgewogICAgICAgICAgICAgICAgTmFtZSAoX0FEUiwgMHgwMDFDMDAwNSkKICAg
 ICAgICAgICAgICAgIE1ldGhvZCAoX1NUQSwgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAg
 ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MEYpCiAgICAgICAgICAg
 ICAgICB9CgogICAgICAgICAgICAgICAgTWV0aG9kIChfUFJXLCAwLCBOb3RTZXJpYWxpemVk
 KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIFJldHVybiAoUGFja2Fn
 ZSAoMHgwMikKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAg
 IDB4MDksIAogICAgICAgICAgICAgICAgICAgICAgICAweDA1CiAgICAgICAgICAgICAgICAg
 ICAgfSkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBOYW1lIChQSUM1LCBQ
 YWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIFBh
 Y2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAg
 ICAgICAweEZGRkYsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAg
 ICAgICAgICAgICAgICAgXF9TQi5QQ0kwLkxOS0IsIAogICAgICAgICAgICAgICAgICAgICAg
 ICAweDAwCiAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgIFBh
 Y2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAg
 ICAgICAweEZGRkYsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAxLCAKICAgICAgICAg
 ICAgICAgICAgICAgICAgXF9TQi5QQ0kwLkxOS0MsIAogICAgICAgICAgICAgICAgICAgICAg
 ICAweDAwCiAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgIFBh
 Y2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAg
 ICAgICAweEZGRkYsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAyLCAKICAgICAgICAg
 ICAgICAgICAgICAgICAgXF9TQi5QQ0kwLkxOS0QsIAogICAgICAgICAgICAgICAgICAgICAg
 ICAweDAwCiAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgIFBh
 Y2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAg
 ICAgICAweEZGRkYsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAzLCAKICAgICAgICAg
 ICAgICAgICAgICAgICAgXF9TQi5QQ0kwLkxOS0EsIAogICAgICAgICAgICAgICAgICAgICAg
 ICAweDAwCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSkKICAgICAg
 ICAgICAgICAgIE5hbWUgKEFQSTUsIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICB7
 CiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgICAg
 ICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4RkZGRiwgCiAgICAgICAgICAgICAgICAg
 ICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAg
 ICAgICAgICAgICAgICAgMHgxMQogICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAg
 ICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAg
 ICAgICAgICAgICAgICAgICAgMHhGRkZGLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgw
 MSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgICAg
 ICAgICAweDEyCiAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAg
 IFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAg
 ICAgICAgICAweEZGRkYsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAyLCAKICAgICAg
 ICAgICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MTMK
 ICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAo
 MHgwNCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4
 RkZGRiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDMsIAogICAgICAgICAgICAgICAg
 ICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgxMAogICAgICAgICAg
 ICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICBNZXRob2Qg
 KF9QUlQsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAg
 ICAgICAgICAgSWYgKExOb3QgKFBJQ0YpKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAg
 ICAgICAgICAgICAgICAgICAgUmV0dXJuIChQSUM1KQogICAgICAgICAgICAgICAgICAgIH0K
 ICAgICAgICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICAgICAgewogICAgICAg
 ICAgICAgICAgICAgICAgICBSZXR1cm4gKEFQSTUpCiAgICAgICAgICAgICAgICAgICAgfQog
 ICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICBEZXZpY2UgKFBF
 WDYpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIE5hbWUgKF9BRFIsIDB4MDAxQzAw
 MDYpCiAgICAgICAgICAgICAgICBNZXRob2QgKF9TVEEsIDAsIE5vdFNlcmlhbGl6ZWQpCiAg
 ICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDBGKQogICAg
 ICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIE1ldGhvZCAoX1BSVywgMCwgTm90U2Vy
 aWFsaXplZCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBSZXR1cm4g
 KFBhY2thZ2UgKDB4MDIpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAg
 ICAgICAgICAweDA5LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwNQogICAgICAgICAg
 ICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgTmFtZSAo
 UElDNiwgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg
 ICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgICAgICAgICAgMHhGRkZGLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMCwgCiAg
 ICAgICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MTktDLCAKICAgICAgICAgICAgICAg
 ICAgICAgICAgMHgwMAogICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAg
 ICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgICAgICAgICAgMHhGRkZGLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMSwgCiAg
 ICAgICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MTktELCAKICAgICAgICAgICAgICAg
 ICAgICAgICAgMHgwMAogICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAg
 ICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgICAgICAgICAgMHhGRkZGLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMiwgCiAg
 ICAgICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MTktBLCAKICAgICAgICAgICAgICAg
 ICAgICAgICAgMHgwMAogICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAg
 ICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgICAgICAgICAgMHhGRkZGLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMywgCiAg
 ICAgICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MTktCLCAKICAgICAgICAgICAgICAg
 ICAgICAgICAgMHgwMAogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0p
 CiAgICAgICAgICAgICAgICBOYW1lIChBUEk2LCBQYWNrYWdlICgweDA0KQogICAgICAgICAg
 ICAgICAgewogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAg
 ICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAweEZGRkYsIAogICAgICAgICAg
 ICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMCwgCiAg
 ICAgICAgICAgICAgICAgICAgICAgIDB4MTIKICAgICAgICAgICAgICAgICAgICB9LCAKCiAg
 ICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgICAgICB7
 CiAgICAgICAgICAgICAgICAgICAgICAgIDB4RkZGRiwgCiAgICAgICAgICAgICAgICAgICAg
 ICAgIDB4MDEsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAg
 ICAgICAgICAgICAgMHgxMwogICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAg
 ICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAg
 ICAgICAgICAgICAgICAgMHhGRkZGLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMiwg
 CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgICAgICAg
 ICAweDEwCiAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgIFBh
 Y2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAg
 ICAgICAweEZGRkYsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAzLCAKICAgICAgICAg
 ICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MTEKICAg
 ICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAg
 TWV0aG9kIChfUFJULCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgewogICAg
 ICAgICAgICAgICAgICAgIElmIChMTm90IChQSUNGKSkKICAgICAgICAgICAgICAgICAgICB7
 CiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoUElDNikKICAgICAgICAgICAgICAg
 ICAgICB9CiAgICAgICAgICAgICAgICAgICAgRWxzZQogICAgICAgICAgICAgICAgICAgIHsK
 ICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChBUEk2KQogICAgICAgICAgICAgICAg
 ICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgRGV2
 aWNlIChQRVg3KQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBOYW1lIChfQURSLCAw
 eDAwMUMwMDA3KQogICAgICAgICAgICAgICAgTWV0aG9kIChfU1RBLCAwLCBOb3RTZXJpYWxp
 emVkKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgw
 RikKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBNZXRob2QgKF9QUlcsIDAs
 IE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAg
 UmV0dXJuIChQYWNrYWdlICgweDAyKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAg
 ICAgICAgICAgICAgICAgMHgwOSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDUKICAg
 ICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAg
 IE5hbWUgKFBJQzcsIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAg
 ICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAg
 ICAgICAgICAgICAgICAgICAgIDB4RkZGRiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MDAsIAogICAgICAgICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuTE5LRCwgCiAgICAgICAg
 ICAgICAgICAgICAgICAgIDB4MDAKICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAg
 ICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAg
 ICAgICAgICAgICAgICAgICAgIDB4RkZGRiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MDEsIAogICAgICAgICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuTE5LQSwgCiAgICAgICAg
 ICAgICAgICAgICAgICAgIDB4MDAKICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAg
 ICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAg
 ICAgICAgICAgICAgICAgICAgIDB4RkZGRiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MDIsIAogICAgICAgICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuTE5LQiwgCiAgICAgICAg
 ICAgICAgICAgICAgICAgIDB4MDAKICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAg
 ICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAg
 ICAgICAgICAgICAgICAgICAgIDB4RkZGRiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MDMsIAogICAgICAgICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuTE5LQywgCiAgICAgICAg
 ICAgICAgICAgICAgICAgIDB4MDAKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAg
 ICAgICB9KQogICAgICAgICAgICAgICAgTmFtZSAoQVBJNywgUGFja2FnZSAoMHgwNCkKICAg
 ICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAg
 ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHhGRkZGLCAKICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MDAsIAogICAgICAgICAgICAgICAgICAgICAgICAweDEzCiAgICAgICAgICAgICAgICAgICAg
 fSwgCgogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAg
 ICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAweEZGRkYsIAogICAgICAgICAgICAg
 ICAgICAgICAgICAweDAxLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMCwgCiAgICAg
 ICAgICAgICAgICAgICAgICAgIDB4MTAKICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAg
 ICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgICAgICB7CiAg
 ICAgICAgICAgICAgICAgICAgICAgIDB4RkZGRiwgCiAgICAgICAgICAgICAgICAgICAgICAg
 IDB4MDIsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAg
 ICAgICAgICAgMHgxMQogICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAg
 ICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgICAgICAgICAgMHhGRkZGLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMywgCiAg
 ICAgICAgICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgICAgICAgICAw
 eDEyCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSkKICAgICAgICAg
 ICAgICAgIE1ldGhvZCAoX1BSVCwgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAg
 IHsKICAgICAgICAgICAgICAgICAgICBJZiAoTE5vdCAoUElDRikpCiAgICAgICAgICAgICAg
 ICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKFBJQzcpCiAgICAgICAg
 ICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIEVsc2UKICAgICAgICAgICAgICAg
 ICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoQVBJNykKICAgICAgICAg
 ICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAg
 ICAgIERldmljZSAoSFVCMCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgTmFtZSAo
 X0FEUiwgMHgwMDFFMDAwMCkKICAgICAgICAgICAgICAgIE1ldGhvZCAoX1NUQSwgMCwgTm90
 U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBSZXR1
 cm4gKDB4MEYpCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgTmFtZSAoUElD
 TSwgUGFja2FnZSAoMHgxMCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAg
 ICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg
 ICAgICAgICAgMHgwMDAyRkZGRiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsIAog
 ICAgICAgICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuTE5LRCwgCiAgICAgICAgICAgICAg
 ICAgICAgICAgIDB4MDAKICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAg
 ICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAg
 ICAgICAgICAgICAgIDB4MDAwMkZGRkYsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAx
 LCAKICAgICAgICAgICAgICAgICAgICAgICAgXF9TQi5QQ0kwLkxOS0MsIAogICAgICAgICAg
 ICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAg
 ICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAg
 ICAgICAgICAgICAgICAgICAweDAwMDJGRkZGLCAKICAgICAgICAgICAgICAgICAgICAgICAg
 MHgwMiwgCiAgICAgICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MTktBLCAKICAgICAg
 ICAgICAgICAgICAgICAgICAgMHgwMAogICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAg
 ICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsKICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgwMDAyRkZGRiwgCiAgICAgICAgICAgICAgICAgICAg
 ICAgIDB4MDMsIAogICAgICAgICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuTE5LRSwgCiAg
 ICAgICAgICAgICAgICAgICAgICAgIDB4MDAKICAgICAgICAgICAgICAgICAgICB9LCAKCiAg
 ICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgICAgICB7
 CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwM0ZGRkYsIAogICAgICAgICAgICAgICAg
 ICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAgICAgICAgICAgXF9TQi5QQ0kwLkxOS0Ms
 IAogICAgICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAgICAgICAgICAgfSwg
 CgogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICAg
 ICAgewogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDNGRkZGLCAKICAgICAgICAgICAg
 ICAgICAgICAgICAgMHgwMSwgCiAgICAgICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5M
 TktBLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMAogICAgICAgICAgICAgICAgICAg
 IH0sIAoKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAg
 ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAzRkZGRiwgCiAgICAgICAg
 ICAgICAgICAgICAgICAgIDB4MDIsIAogICAgICAgICAgICAgICAgICAgICAgICBcX1NCLlBD
 STAuTE5LRSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAKICAgICAgICAgICAgICAg
 ICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAg
 ICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwM0ZGRkYsIAogICAg
 ICAgICAgICAgICAgICAgICAgICAweDAzLCAKICAgICAgICAgICAgICAgICAgICAgICAgXF9T
 Qi5QQ0kwLkxOS0QsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwCiAgICAgICAgICAg
 ICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAg
 ICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDRGRkZGLCAK
 ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAgICAgICAg
 IFxfU0IuUENJMC5MTktBLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMAogICAgICAg
 ICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQog
 ICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDA0RkZG
 RiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEsIAogICAgICAgICAgICAgICAgICAg
 ICAgICBcX1NCLlBDSTAuTE5LRSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAKICAg
 ICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgw
 NCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAw
 NEZGRkYsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAyLCAKICAgICAgICAgICAgICAg
 ICAgICAgICAgXF9TQi5QQ0kwLkxOS0QsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAw
 CiAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgIFBhY2thZ2Ug
 KDB4MDQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAw
 eDAwMDRGRkZGLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMywgCiAgICAgICAgICAg
 ICAgICAgICAgICAgIFxfU0IuUENJMC5MTktDLCAKICAgICAgICAgICAgICAgICAgICAgICAg
 MHgwMAogICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICBQYWNr
 YWdlICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAg
 ICAgMHgwMDA1RkZGRiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAg
 ICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuTE5LRCwgCiAgICAgICAgICAgICAgICAgICAg
 ICAgIDB4MDAKICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAg
 UGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAg
 ICAgICAgIDB4MDAwNUZGRkYsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAxLCAKICAg
 ICAgICAgICAgICAgICAgICAgICAgXF9TQi5QQ0kwLkxOS0QsIAogICAgICAgICAgICAgICAg
 ICAgICAgICAweDAwCiAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAg
 ICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAg
 ICAgICAgICAgICAweDAwMDVGRkZGLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMiwg
 CiAgICAgICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MTktELCAKICAgICAgICAgICAg
 ICAgICAgICAgICAgMHgwMAogICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAg
 ICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAg
 ICAgICAgICAgICAgICAgMHgwMDA1RkZGRiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MDMsIAogICAgICAgICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuTE5LRCwgCiAgICAgICAg
 ICAgICAgICAgICAgICAgIDB4MDAKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAg
 ICAgICB9KQogICAgICAgICAgICAgICAgTmFtZSAoQVBJQywgUGFja2FnZSAoMHgxMCkKICAg
 ICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAg
 ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAyRkZGRiwg
 CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgICAgICAg
 ICAweDAwLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgxMwogICAgICAgICAgICAgICAg
 ICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAg
 ICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAyRkZGRiwgCiAgICAg
 ICAgICAgICAgICAgICAgICAgIDB4MDEsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAw
 LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgxMgogICAgICAgICAgICAgICAgICAgIH0s
 IAoKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAg
 ICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAyRkZGRiwgCiAgICAgICAgICAg
 ICAgICAgICAgICAgIDB4MDIsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgxMAogICAgICAgICAgICAgICAgICAgIH0sIAoKICAg
 ICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsK
 ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAyRkZGRiwgCiAgICAgICAgICAgICAgICAg
 ICAgICAgIDB4MDMsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAg
 ICAgICAgICAgICAgICAgMHgxNAogICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAg
 ICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAg
 ICAgICAgICAgICAgICAgICAgMHgwMDAzRkZGRiwgCiAgICAgICAgICAgICAgICAgICAgICAg
 IDB4MDAsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAg
 ICAgICAgICAgMHgxMgogICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAg
 ICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgICAgICAgICAgMHgwMDAzRkZGRiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEs
 IAogICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAgICAgICAg
 ICAgMHgxMAogICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICBQ
 YWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAg
 ICAgICAgMHgwMDAzRkZGRiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDIsIAogICAg
 ICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgx
 NAogICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICBQYWNrYWdl
 ICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAg
 MHgwMDAzRkZGRiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDMsIAogICAgICAgICAg
 ICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgxMwogICAg
 ICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0
 KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDA0
 RkZGRiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAg
 ICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgxMAogICAgICAgICAg
 ICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAg
 ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDA0RkZGRiwg
 CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEsIAogICAgICAgICAgICAgICAgICAgICAg
 ICAweDAwLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgxNAogICAgICAgICAgICAgICAg
 ICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAg
 ICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDA0RkZGRiwgCiAgICAg
 ICAgICAgICAgICAgICAgICAgIDB4MDIsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAw
 LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgxMwogICAgICAgICAgICAgICAgICAgIH0s
 IAoKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAg
 ICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDA0RkZGRiwgCiAgICAgICAgICAg
 ICAgICAgICAgICAgIDB4MDMsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgxMgogICAgICAgICAgICAgICAgICAgIH0sIAoKICAg
 ICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsK
 ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDA1RkZGRiwgCiAgICAgICAgICAgICAgICAg
 ICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAg
 ICAgICAgICAgICAgICAgMHgxMwogICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAg
 ICAgICAgICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAg
 ICAgICAgICAgICAgICAgICAgMHgwMDA1RkZGRiwgCiAgICAgICAgICAgICAgICAgICAgICAg
 IDB4MDEsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAg
 ICAgICAgICAgMHgxMwogICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAg
 ICAgICBQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgICAgICAgICAgMHgwMDA1RkZGRiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDIs
 IAogICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAgICAgICAg
 ICAgMHgxMwogICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICBQ
 YWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAg
 ICAgICAgMHgwMDA1RkZGRiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDMsIAogICAg
 ICAgICAgICAgICAgICAgICAgICAweDAwLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgx
 MwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAg
 ICAgICBNZXRob2QgKF9QUlQsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICB7
 CiAgICAgICAgICAgICAgICAgICAgSWYgKExOb3QgKFBJQ0YpKQogICAgICAgICAgICAgICAg
 ICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChQSUNNKQogICAgICAgICAg
 ICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICAg
 ICAgewogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKEFQSUMpCiAgICAgICAgICAg
 ICAgICAgICAgfQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIE1ldGhvZCAo
 X1BSVywgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgICAgICBSZXR1cm4gKFBhY2thZ2UgKDB4MDIpCiAgICAgICAgICAgICAgICAgICAgewog
 ICAgICAgICAgICAgICAgICAgICAgICAweDBCLCAKICAgICAgICAgICAgICAgICAgICAgICAg
 MHgwNQogICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICB9CiAgICAgICAg
 ICAgIH0KCiAgICAgICAgICAgIERldmljZSAoUFg0MCkKICAgICAgICAgICAgewogICAgICAg
 ICAgICAgICAgTmFtZSAoX0FEUiwgMHgwMDFGMDAwMCkKICAgICAgICAgICAgICAgIE9wZXJh
 dGlvblJlZ2lvbiAoUFJFViwgUENJX0NvbmZpZywgMHgwOCwgMHgwMSkKICAgICAgICAgICAg
 ICAgIFNjb3BlIChcKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIEZp
 ZWxkIChcX1NCLlBDSTAuUFg0MC5QUkVWLCBCeXRlQWNjLCBOb0xvY2ssIFByZXNlcnZlKQog
 ICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgUkVWMCwgICA4
 CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAg
 ICAgIE9wZXJhdGlvblJlZ2lvbiAoUElSUSwgUENJX0NvbmZpZywgMHg2MCwgMHgwNCkKICAg
 ICAgICAgICAgICAgIFNjb3BlIChcKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAg
 ICAgICAgIEZpZWxkIChcX1NCLlBDSTAuUFg0MC5QSVJRLCBCeXRlQWNjLCBOb0xvY2ssIFBy
 ZXNlcnZlKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAg
 UElSQSwgICA4LCAKICAgICAgICAgICAgICAgICAgICAgICAgUElSQiwgICA4LCAKICAgICAg
 ICAgICAgICAgICAgICAgICAgUElSQywgICA4LCAKICAgICAgICAgICAgICAgICAgICAgICAg
 UElSRCwgICA4CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQoKICAg
 ICAgICAgICAgICAgIE9wZXJhdGlvblJlZ2lvbiAoUElSMiwgUENJX0NvbmZpZywgMHg2OCwg
 MHgwNCkKICAgICAgICAgICAgICAgIFNjb3BlIChcKQogICAgICAgICAgICAgICAgewogICAg
 ICAgICAgICAgICAgICAgIEZpZWxkIChcX1NCLlBDSTAuUFg0MC5QSVIyLCBCeXRlQWNjLCBO
 b0xvY2ssIFByZXNlcnZlKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg
 ICAgICAgICAgUElSRSwgICA4LCAKICAgICAgICAgICAgICAgICAgICAgICAgUElSRiwgICA4
 LCAKICAgICAgICAgICAgICAgICAgICAgICAgUElSRywgICA4LCAKICAgICAgICAgICAgICAg
 ICAgICAgICAgUElSSCwgICA4CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAg
 ICAgfQoKICAgICAgICAgICAgICAgIE9wZXJhdGlvblJlZ2lvbiAoTFBJTywgUENJX0NvbmZp
 ZywgMHg4MCwgMHgwRSkKICAgICAgICAgICAgICAgIFNjb3BlIChcKQogICAgICAgICAgICAg
 ICAgewogICAgICAgICAgICAgICAgICAgIEZpZWxkIChcX1NCLlBDSTAuUFg0MC5MUElPLCBC
 eXRlQWNjLCBOb0xvY2ssIFByZXNlcnZlKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAg
 ICAgICAgICAgICAgICAgICAgVUFJTywgICA4LCAKICAgICAgICAgICAgICAgICAgICAgICAg
 UFJJTywgICA4LCAKICAgICAgICAgICAgICAgICAgICAgICAgTFBFMSwgICA4LCAKICAgICAg
 ICAgICAgICAgICAgICAgICAgTFBFMiwgICA4LCAKICAgICAgICAgICAgICAgICAgICAgICAg
 R04xTCwgICA4LCAKICAgICAgICAgICAgICAgICAgICAgICAgR04xSCwgICA4LCAKICAgICAg
 ICAgICAgICAgICAgICAgICAgR04yTCwgICA4LCAKICAgICAgICAgICAgICAgICAgICAgICAg
 R04ySCwgICA4CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICBN
 ZXRob2QgKERJU0QsIDEsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICAgICAgewog
 ICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChBcmcwLCAweDAwKSkKICAgICAg
 ICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgQW5kIChM
 UEUxLCAweEZFLCBMUEUxKQogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAg
 ICAgICAgICAgICAgICBJZiAoTEVxdWFsIChBcmcwLCAweDAxKSkKICAgICAgICAgICAgICAg
 ICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgQW5kIChMUEUxLCAweEZE
 LCBMUEUxKQogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAg
 ICAgICBJZiAoTEVxdWFsIChBcmcwLCAweDAyKSkKICAgICAgICAgICAgICAgICAgICAgICAg
 ewogICAgICAgICAgICAgICAgICAgICAgICAgICAgQW5kIChMUEUxLCAweEZCLCBMUEUxKQog
 ICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICBJZiAo
 TEVxdWFsIChBcmcwLCAweDAzKSkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgQW5kIChMUEUxLCAweEY3LCBMUEUxKQogICAgICAgICAg
 ICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChB
 cmcwLCAweDA0KSkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgQW5kIChMUEUyLCAweEZDLCBMUEUyKQogICAgICAgICAgICAgICAgICAg
 ICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChBcmcwLCAweDA1
 KSkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgQW5kIChMUEUxLCAweERGLCBMUEUxKQogICAgICAgICAgICAgICAgICAgICAgICB9Cgog
 ICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChBcmcwLCAweDA2KSkKICAgICAg
 ICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgQW5kIChH
 TjJMLCAweEZFLCBHTjJMKQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAg
 ICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICBNZXRob2QgKENLSU8sIDIsIE5vdFNl
 cmlhbGl6ZWQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAg
 ICBJZiAoTEVxdWFsIChBcmcxLCAweDAwKSkKICAgICAgICAgICAgICAgICAgICAgICAgewog
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgT3IgKExQRTEsIDB4MDEsIExQRTEpCiAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICBBbmQgKFVBSU8sIDB4RjAsIExvY2FsMCkKICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKEFyZzAsIDB4MDNGOCkpCiAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgT3IgKExvY2FsMCwgMHgwMCwgVUFJTykKICAgICAgICAgICAgICAgICAgICAgICAgICAg
 IH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChBcmcwLCAweDAy
 RjgpKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgIE9yIChMb2NhbDAsIDB4MDEsIFVBSU8pCiAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAo
 QXJnMCwgMHgwMkU4KSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICBPciAoTG9jYWwwLCAweDA1LCBVQUlPKQogICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIElm
 IChMRXF1YWwgKEFyZzAsIDB4MDNFOCkpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7
 CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT3IgKExvY2FsMCwgMHgwNywgVUFJ
 TykKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAg
 ICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoQXJnMSwgMHgwMSkp
 CiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAg
 IE9yIChMUEUxLCAweDAyLCBMUEUxKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQW5k
 IChVQUlPLCAweDBGLCBMb2NhbDApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAo
 TEVxdWFsIChBcmcwLCAweDAzRjgpKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgewog
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9yIChMb2NhbDAsIDB4MDAsIFVBSU8p
 CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgSWYgKExFcXVhbCAoQXJnMCwgMHgwMkY4KSkKICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPciAoTG9jYWwwLCAw
 eDEwLCBVQUlPKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKEFyZzAsIDB4MDJFOCkpCiAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT3Ig
 KExvY2FsMCwgMHg1MCwgVUFJTykKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChBcmcwLCAweDAzRTgpKQog
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgIE9yIChMb2NhbDAsIDB4NzAsIFVBSU8pCiAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAg
 ICAgIElmIChMRXF1YWwgKEFyZzEsIDB4MDIpKQogICAgICAgICAgICAgICAgICAgICAgICB7
 CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBPciAoTFBFMSwgMHgwNCwgTFBFMSkKICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgIEFuZCAoUFJJTywgMHhGQywgTG9jYWwwKQogICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoQXJnMCwgMHgwMzc4KSkKICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICBPciAoTG9jYWwwLCAweDAwLCBQUklPKQogICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKEFyZzAsIDB4
 MDI3OCkpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgT3IgKExvY2FsMCwgMHgwMSwgUFJJTykKICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFs
 IChBcmcwLCAweDAzQkMpKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgIE9yIChMb2NhbDAsIDB4MDIsIFBSSU8pCiAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAg
 ICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKEFyZzEsIDB4MDMpKQogICAgICAg
 ICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBPciAoTFBF
 MSwgMHgwOCwgTFBFMSkKICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAg
 ICAgICAgICAgICAgSWYgKExFcXVhbCAoQXJnMSwgMHgwNCkpCiAgICAgICAgICAgICAgICAg
 ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKEFyZzAs
 IDB4MDIwMSkpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgT3IgKExQRTIsIDB4MDEsIExQRTIpCiAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVh
 bCAoQXJnMCwgMHgwMjA5KSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICBPciAoTFBFMiwgMHgwMiwgTFBFMikKICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAg
 ICAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoQXJnMSwgMHgwNikpCiAgICAgICAg
 ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMTm90
 RXF1YWwgKEFyZzAsIDB4RkZGRikpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQW5kIChBcmcwLCAweEZGLCBMb2NhbDAp
 CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT3IgKExvY2FsMCwgMHgwMSwgR04y
 TCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTaGlmdFJpZ2h0IChBcmcwLCAw
 eDA4LCBHTjJIKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgRWxzZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChaZXJvLCBHTjJIKQogICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChaZXJvLCBHTjJMKQogICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAg
 ICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIFNjb3Bl
 IChcKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoU0xE
 TSwgMiwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAg
 ICAgICAgICAgfQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIFNjb3BlIChc
 KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIE9wZXJhdGlvblJlZ2lv
 biAoXFNDUFAsIFN5c3RlbUlPLCAweEIyLCAweDAxKQogICAgICAgICAgICAgICAgICAgIEZp
 ZWxkIChcU0NQUCwgQnl0ZUFjYywgTm9Mb2NrLCBQcmVzZXJ2ZSkKICAgICAgICAgICAgICAg
 ICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFNNSVAsICAgOAogICAgICAgICAgICAg
 ICAgICAgIH0KICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBNZXRob2QgKFxf
 U0IuUENJMC5fSU5JLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgewogICAg
 ICAgICAgICAgICAgICAgIElmIChTVFJDIChcX09TLCAiTWljcm9zb2Z0IFdpbmRvd3MiKSkK
 ICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgw
 eDU2LCBTTUlQKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBF
 bHNlCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBJZiAo
 U1RSQyAoXF9PUywgIk1pY3Jvc29mdCBXaW5kb3dzIE5UIikpCiAgICAgICAgICAgICAgICAg
 ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChDb25kUmVmT2YgKFxf
 T1NJLCBMb2NhbDApKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAwLCBMb2NhbDIpCiAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgSWYgKFxfT1NJICgiV2luZG93cyAyMDAxIikpCiAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICBTdG9yZSAoMHgwMCwgT1NGTCkKICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgU3RvcmUgKDB4NTksIExvY2FsMSkKICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgU3RvcmUgKDB4MDMsIE9TRlgpCiAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgIFN0b3JlICgweDAxLCBMb2NhbDIpCiAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAo
 XF9PU0kgKCJXaW5kb3dzIDIwMDYiKSkge30KICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICBJZiAoXF9PU0kgKCJXaW5kb3dzIDIwMDkiKSkge30KICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICBJZiAoTE5vdEVxdWFsIChMb2NhbDIsIDB4MDApKQogICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgU3RvcmUgKExvY2FsMSwgU01JUCkKICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4NTgsIFNNSVApCiAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDAsIE9TRkwpCiAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAg
 ICAgICAgICAgICAgRWxzZQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICBJZiAoQ29uZFJlZk9mIChcX09TSSwgTG9jYWwwKSkKICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICBJZiAoXF9PU0kgKCJMaW51eCIpKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDEsIExJ
 TlgpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICBJZiAoXF9PU0kgKCJEYXJ3aW4iKSkKICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 IFN0b3JlICgweDAxLCBBTUFDKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0K
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICBTdG9yZSAoMHg1NywgU01JUCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0
 b3JlICgweDAyLCBPU0ZMKQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAg
 ICAgICAgICAgfQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIFNjb3BlIChc
 KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoT1NUUCwg
 MCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg
 ICAgICAgICAgIElmIChMRXF1YWwgKE9TRkwsIDB4MDEpKQogICAgICAgICAgICAgICAgICAg
 ICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHg1NiwgU01JUCkK
 ICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgSWYg
 KExFcXVhbCAoT1NGTCwgMHgwMikpCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDU3LCBTTUlQKQogICAgICAgICAgICAg
 ICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChPU0ZM
 LCAweDAwKSkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgU3RvcmUgKDB4NTgsIExvY2FsMSkKICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgIElmIChMR3JlYXRlckVxdWFsIChPU0ZYLCAweDAzKSkKICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHg1
 OSwgTG9jYWwxKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgIFN0b3JlIChMb2NhbDEsIFNNSVApCiAgICAgICAgICAgICAgICAg
 ICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CgogICAg
 ICAgICAgICAgICAgRGV2aWNlIChTWVNSKQogICAgICAgICAgICAgICAgewogICAgICAgICAg
 ICAgICAgICAgIE5hbWUgKF9ISUQsIEVpc2FJZCAoIlBOUDBDMDIiKSkKICAgICAgICAgICAg
 ICAgICAgICBOYW1lIChfVUlELCAweDAxKQogICAgICAgICAgICAgICAgICAgIE5hbWUgKF9D
 UlMsIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAg
 ICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwKICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgIDB4MDAxMCwgICAgICAgICAgICAgLy8gUmFuZ2UgTWluaW11bQogICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgMHgwMDEwLCAgICAgICAgICAgICAvLyBSYW5nZSBNYXhpbXVtCiAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAweDAxLCAgICAgICAgICAgICAgIC8vIEFsaWdu
 bWVudAogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgxMCwgICAgICAgICAgICAgICAv
 LyBMZW5ndGgKICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAg
 ICAgICAgICAgSU8gKERlY29kZTE2LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgw
 MDIyLCAgICAgICAgICAgICAvLyBSYW5nZSBNaW5pbXVtCiAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAweDAwMjIsICAgICAgICAgICAgIC8vIFJhbmdlIE1heGltdW0KICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgIDB4MDEsICAgICAgICAgICAgICAgLy8gQWxpZ25tZW50CiAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAweDFFLCAgICAgICAgICAgICAgIC8vIExlbmd0
 aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgICAgICAg
 ICBJTyAoRGVjb2RlMTYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwNDQsICAg
 ICAgICAgICAgIC8vIFJhbmdlIE1pbmltdW0KICAgICAgICAgICAgICAgICAgICAgICAgICAg
 IDB4MDA0NCwgICAgICAgICAgICAgLy8gUmFuZ2UgTWF4aW11bQogICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgMHgwMSwgICAgICAgICAgICAgICAvLyBBbGlnbm1lbnQKICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgIDB4MUMsICAgICAgICAgICAgICAgLy8gTGVuZ3RoCiAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChE
 ZWNvZGUxNiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDA2MiwgICAgICAgICAg
 ICAgLy8gUmFuZ2UgTWluaW11bQogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDYy
 LCAgICAgICAgICAgICAvLyBSYW5nZSBNYXhpbXVtCiAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAweDAxLCAgICAgICAgICAgICAgIC8vIEFsaWdubWVudAogICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgMHgwMiwgICAgICAgICAgICAgICAvLyBMZW5ndGgKICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2
 LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDY1LCAgICAgICAgICAgICAvLyBS
 YW5nZSBNaW5pbXVtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwNjUsICAgICAg
 ICAgICAgIC8vIFJhbmdlIE1heGltdW0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MDEsICAgICAgICAgICAgICAgLy8gQWxpZ25tZW50CiAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAweDBCLCAgICAgICAgICAgICAgIC8vIExlbmd0aAogICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgKQogICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsCiAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAweDAwNzQsICAgICAgICAgICAgIC8vIFJhbmdlIE1p
 bmltdW0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDA3NCwgICAgICAgICAgICAg
 Ly8gUmFuZ2UgTWF4aW11bQogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMSwgICAg
 ICAgICAgICAgICAvLyBBbGlnbm1lbnQKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MEMsICAgICAgICAgICAgICAgLy8gTGVuZ3RoCiAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICApCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwKICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgIDB4MDA5MSwgICAgICAgICAgICAgLy8gUmFuZ2UgTWluaW11bQog
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDkxLCAgICAgICAgICAgICAvLyBSYW5n
 ZSBNYXhpbXVtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAxLCAgICAgICAgICAg
 ICAgIC8vIEFsaWdubWVudAogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMywgICAg
 ICAgICAgICAgICAvLyBMZW5ndGgKICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKICAg
 ICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LAogICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgMHgwMEEyLCAgICAgICAgICAgICAvLyBSYW5nZSBNaW5pbXVtCiAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAweDAwQTIsICAgICAgICAgICAgIC8vIFJhbmdlIE1heGlt
 dW0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEsICAgICAgICAgICAgICAgLy8g
 QWxpZ25tZW50CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDFFLCAgICAgICAgICAg
 ICAgIC8vIExlbmd0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAg
 ICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAweDAwRTAsICAgICAgICAgICAgIC8vIFJhbmdlIE1pbmltdW0KICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgIDB4MDBFMCwgICAgICAgICAgICAgLy8gUmFuZ2UgTWF4aW11bQogICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMSwgICAgICAgICAgICAgICAvLyBBbGlnbm1l
 bnQKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MTAsICAgICAgICAgICAgICAgLy8g
 TGVuZ3RoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICAg
 ICAgICAgIElPIChEZWNvZGUxNiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDRE
 MCwgICAgICAgICAgICAgLy8gUmFuZ2UgTWluaW11bQogICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgMHgwNEQwLCAgICAgICAgICAgICAvLyBSYW5nZSBNYXhpbXVtCiAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAweDAxLCAgICAgICAgICAgICAgIC8vIEFsaWdubWVudAogICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMiwgICAgICAgICAgICAgICAvLyBMZW5ndGgK
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICAgICAgICAg
 SU8gKERlY29kZTE2LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMjkwLCAgICAg
 ICAgICAgICAvLyBSYW5nZSBNaW5pbXVtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAw
 eDAyOTAsICAgICAgICAgICAgIC8vIFJhbmdlIE1heGltdW0KICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgIDB4MDEsICAgICAgICAgICAgICAgLy8gQWxpZ25tZW50CiAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAweDEwLCAgICAgICAgICAgICAgIC8vIExlbmd0aAogICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVj
 b2RlMTYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDA4MDAsICAgICAgICAgICAg
 IC8vIFJhbmdlIE1pbmltdW0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDgwMCwg
 ICAgICAgICAgICAgLy8gUmFuZ2UgTWF4aW11bQogICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgMHgwMSwgICAgICAgICAgICAgICAvLyBBbGlnbm1lbnQKICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgIDB4ODAsICAgICAgICAgICAgICAgLy8gTGVuZ3RoCiAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwK
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDI5MCwgICAgICAgICAgICAgLy8gUmFu
 Z2UgTWluaW11bQogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMjkwLCAgICAgICAg
 ICAgICAvLyBSYW5nZSBNYXhpbXVtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAx
 LCAgICAgICAgICAgICAgIC8vIEFsaWdubWVudAogICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgMHgwNSwgICAgICAgICAgICAgICAvLyBMZW5ndGgKICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICkKICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LAogICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgwODgwLCAgICAgICAgICAgICAvLyBSYW5nZSBNaW5p
 bXVtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDA4ODAsICAgICAgICAgICAgIC8v
 IFJhbmdlIE1heGltdW0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEsICAgICAg
 ICAgICAgICAgLy8gQWxpZ25tZW50CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDEw
 LCAgICAgICAgICAgICAgIC8vIExlbmd0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
 KQogICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAg
 ICAgICAgRGV2aWNlIChQSUMpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAg
 ICAgTmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMDAwMCIpKQogICAgICAgICAgICAgICAgICAg
 IE5hbWUgKF9DUlMsIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgICAgICAgICB7
 CiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwKICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgIDB4MDAyMCwgICAgICAgICAgICAgLy8gUmFuZ2UgTWluaW11bQogICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDIwLCAgICAgICAgICAgICAvLyBSYW5nZSBN
 YXhpbXVtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAxLCAgICAgICAgICAgICAg
 IC8vIEFsaWdubWVudAogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMiwgICAgICAg
 ICAgICAgICAvLyBMZW5ndGgKICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKICAgICAg
 ICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LAogICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgMHgwMEEwLCAgICAgICAgICAgICAvLyBSYW5nZSBNaW5pbXVtCiAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAweDAwQTAsICAgICAgICAgICAgIC8vIFJhbmdlIE1heGltdW0K
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEsICAgICAgICAgICAgICAgLy8gQWxp
 Z25tZW50CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAyLCAgICAgICAgICAgICAg
 IC8vIExlbmd0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAg
 ICAgICAgICAgICBJUlFOb0ZsYWdzICgpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7
 Mn0KICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgfQoKICAgICAgICAg
 ICAgICAgIERldmljZSAoRE1BMSkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg
 ICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJQTlAwMjAwIikpCiAgICAgICAgICAgICAgICAg
 ICAgTmFtZSAoX0NSUywgUmVzb3VyY2VUZW1wbGF0ZSAoKQogICAgICAgICAgICAgICAgICAg
 IHsKICAgICAgICAgICAgICAgICAgICAgICAgRE1BIChDb21wYXRpYmlsaXR5LCBCdXNNYXN0
 ZXIsIFRyYW5zZmVyOCwgKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgezR9CiAgICAg
 ICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwKICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgIDB4MDAwMCwgICAgICAgICAgICAgLy8gUmFuZ2UgTWluaW11bQogICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgMHgwMDAwLCAgICAgICAgICAgICAvLyBSYW5nZSBNYXhpbXVt
 CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAxLCAgICAgICAgICAgICAgIC8vIEFs
 aWdubWVudAogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgxMCwgICAgICAgICAgICAg
 ICAvLyBMZW5ndGgKICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKICAgICAgICAgICAg
 ICAgICAgICAgICAgSU8gKERlY29kZTE2LAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
 MHgwMDgwLCAgICAgICAgICAgICAvLyBSYW5nZSBNaW5pbXVtCiAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAweDAwODAsICAgICAgICAgICAgIC8vIFJhbmdlIE1heGltdW0KICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgIDB4MDEsICAgICAgICAgICAgICAgLy8gQWxpZ25tZW50
 CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDExLCAgICAgICAgICAgICAgIC8vIExl
 bmd0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgICAg
 ICAgICBJTyAoRGVjb2RlMTYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwOTQs
 ICAgICAgICAgICAgIC8vIFJhbmdlIE1pbmltdW0KICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgIDB4MDA5NCwgICAgICAgICAgICAgLy8gUmFuZ2UgTWF4aW11bQogICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgMHgwMSwgICAgICAgICAgICAgICAvLyBBbGlnbm1lbnQKICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgIDB4MEMsICAgICAgICAgICAgICAgLy8gTGVuZ3RoCiAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICAgICAgICAgIElP
 IChEZWNvZGUxNiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDBDMCwgICAgICAg
 ICAgICAgLy8gUmFuZ2UgTWluaW11bQogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgw
 MEMwLCAgICAgICAgICAgICAvLyBSYW5nZSBNYXhpbXVtCiAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAweDAxLCAgICAgICAgICAgICAgIC8vIEFsaWdubWVudAogICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgMHgyMCwgICAgICAgICAgICAgICAvLyBMZW5ndGgKICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAg
 ICAgICAgfQoKICAgICAgICAgICAgICAgIERldmljZSAoVE1SKQogICAgICAgICAgICAgICAg
 ewogICAgICAgICAgICAgICAgICAgIE5hbWUgKF9ISUQsIEVpc2FJZCAoIlBOUDAxMDAiKSkK
 ICAgICAgICAgICAgICAgICAgICBOYW1lIChBVFQ1LCBSZXNvdXJjZVRlbXBsYXRlICgpCiAg
 ICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2Rl
 MTYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwNDAsICAgICAgICAgICAgIC8v
 IFJhbmdlIE1pbmltdW0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDA0MCwgICAg
 ICAgICAgICAgLy8gUmFuZ2UgTWF4aW11bQogICAgICAgICAgICAgICAgICAgICAgICAgICAg
 MHgwMCwgICAgICAgICAgICAgICAvLyBBbGlnbm1lbnQKICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgIDB4MDQsICAgICAgICAgICAgICAgLy8gTGVuZ3RoCiAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICApCiAgICAgICAgICAgICAgICAgICAgICAgIElSUU5vRmxhZ3MgKCkKICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgIHswfQogICAgICAgICAgICAgICAgICAgIH0pCiAg
 ICAgICAgICAgICAgICAgICAgTmFtZSAoQVRUNiwgUmVzb3VyY2VUZW1wbGF0ZSAoKQogICAg
 ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2
 LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDQwLCAgICAgICAgICAgICAvLyBS
 YW5nZSBNaW5pbXVtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwNDAsICAgICAg
 ICAgICAgIC8vIFJhbmdlIE1heGltdW0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MDAsICAgICAgICAgICAgICAgLy8gQWxpZ25tZW50CiAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAweDA0LCAgICAgICAgICAgICAgIC8vIExlbmd0aAogICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgKQogICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICAgICAg
 TWV0aG9kIChfQ1JTLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgICAgIHsK
 ICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExHcmVhdGVyRXF1YWwgKE9TRlgsIDB4MDMp
 KQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICBJZiAoSFBURikKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKEFUVDYpCiAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0
 dXJuIChBVFQ1KQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAg
 ICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UKICAgICAgICAgICAg
 ICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChBVFQ1
 KQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQogICAg
 ICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIERldmljZSAoSFBFVCkKICAgICAgICAg
 ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJQTlAw
 MTAzIikpCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoQVRUMywgUmVzb3VyY2VUZW1wbGF0
 ZSAoKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgSVJR
 Tm9GbGFncyAoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgezB9CiAgICAgICAgICAg
 ICAgICAgICAgICAgIElSUU5vRmxhZ3MgKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAg
 IHs4fQogICAgICAgICAgICAgICAgICAgICAgICBNZW1vcnkzMkZpeGVkIChSZWFkV3JpdGUs
 CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweEZFRDAwMDAwLCAgICAgICAgIC8vIEFk
 ZHJlc3MgQmFzZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDQwMCwgICAg
 ICAgICAvLyBBZGRyZXNzIExlbmd0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgKQog
 ICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoQVRUNCwg
 UmVzb3VyY2VUZW1wbGF0ZSAoKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgICAgICB9KQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1NUQSwgMCwgTm90U2Vy
 aWFsaXplZCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAg
 IElmIChMR3JlYXRlckVxdWFsIChPU0ZYLCAweDAzKSkKICAgICAgICAgICAgICAgICAgICAg
 ICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEhQVEYpCiAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0
 dXJuICgweDBGKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgRWxzZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwMCkKICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAg
 ICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwMCkKICAgICAgICAgICAgICAgICAgICAg
 ICAgfQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgTWV0aG9k
 IChfQ1JTLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAg
 ICAgICAgICAgICAgICAgICAgSWYgKExHcmVhdGVyRXF1YWwgKE9TRlgsIDB4MDMpKQogICAg
 ICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAo
 SFBURikKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICBSZXR1cm4gKEFUVDMpCiAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChB
 VFQ0KQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAg
 ICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UKICAgICAgICAgICAgICAgICAg
 ICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChBVFQ0KQogICAg
 ICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAg
 ICAgICAgfQoKICAgICAgICAgICAgICAgIERldmljZSAoUlRDKQogICAgICAgICAgICAgICAg
 ewogICAgICAgICAgICAgICAgICAgIE5hbWUgKF9ISUQsIEVpc2FJZCAoIlBOUDBCMDAiKSkK
 ICAgICAgICAgICAgICAgICAgICBOYW1lIChBVFQwLCBSZXNvdXJjZVRlbXBsYXRlICgpCiAg
 ICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2Rl
 MTYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwNzAsICAgICAgICAgICAgIC8v
 IFJhbmdlIE1pbmltdW0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDA3MCwgICAg
 ICAgICAgICAgLy8gUmFuZ2UgTWF4aW11bQogICAgICAgICAgICAgICAgICAgICAgICAgICAg
 MHgwMCwgICAgICAgICAgICAgICAvLyBBbGlnbm1lbnQKICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgIDB4MDQsICAgICAgICAgICAgICAgLy8gTGVuZ3RoCiAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICApCiAgICAgICAgICAgICAgICAgICAgICAgIElSUU5vRmxhZ3MgKCkKICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgIHs4fQogICAgICAgICAgICAgICAgICAgIH0pCiAg
 ICAgICAgICAgICAgICAgICAgTmFtZSAoQVRUMSwgUmVzb3VyY2VUZW1wbGF0ZSAoKQogICAg
 ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2
 LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDcwLCAgICAgICAgICAgICAvLyBS
 YW5nZSBNaW5pbXVtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwNzAsICAgICAg
 ICAgICAgIC8vIFJhbmdlIE1heGltdW0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MDAsICAgICAgICAgICAgICAgLy8gQWxpZ25tZW50CiAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAweDA0LCAgICAgICAgICAgICAgIC8vIExlbmd0aAogICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgKQogICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICAgICAg
 TmFtZSAoQVRUMiwgUmVzb3VyY2VUZW1wbGF0ZSAoKQogICAgICAgICAgICAgICAgICAgIHsK
 ICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LAogICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgMHgwMDcwLCAgICAgICAgICAgICAvLyBSYW5nZSBNaW5pbXVtCiAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAweDAwNzAsICAgICAgICAgICAgIC8vIFJhbmdlIE1h
 eGltdW0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsICAgICAgICAgICAgICAg
 Ly8gQWxpZ25tZW50CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAyLCAgICAgICAg
 ICAgICAgIC8vIExlbmd0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgKQogICAgICAg
 ICAgICAgICAgICAgICAgICBJUlFOb0ZsYWdzICgpCiAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICB7OH0KICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgICAgIE5h
 bWUgKEFUVDMsIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgICAgICAgICB7CiAg
 ICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwKICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgIDB4MDA3MCwgICAgICAgICAgICAgLy8gUmFuZ2UgTWluaW11bQogICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgwMDcwLCAgICAgICAgICAgICAvLyBSYW5nZSBNYXhp
 bXVtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAgICAgICAgICAgICAgIC8v
 IEFsaWdubWVudAogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMiwgICAgICAgICAg
 ICAgICAvLyBMZW5ndGgKICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKICAgICAgICAg
 ICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0NSUywgMCwgTm90
 U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAg
 ICAgIElmIChMR3JlYXRlckVxdWFsIChPU0ZYLCAweDAzKSkKICAgICAgICAgICAgICAgICAg
 ICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEhQVEYpCiAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 UmV0dXJuIChBVFQxKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgRWxzZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgewog
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoQVRUMCkKICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAg
 ICAgICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKEFNQUMsIDB4MDEpKQogICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 IFJldHVybiAoQVRUMikKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKEFUVDApCiAgICAgICAgICAgICAgICAgICAg
 ICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CgogICAgICAg
 ICAgICAgICAgRGV2aWNlIChTUEtSKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAg
 ICAgICAgIE5hbWUgKF9ISUQsIEVpc2FJZCAoIlBOUDA4MDAiKSkKICAgICAgICAgICAgICAg
 ICAgICBOYW1lIChfQ1JTLCBSZXNvdXJjZVRlbXBsYXRlICgpCiAgICAgICAgICAgICAgICAg
 ICAgewogICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsCiAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAweDAwNjEsICAgICAgICAgICAgIC8vIFJhbmdlIE1pbmltdW0K
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDA2MSwgICAgICAgICAgICAgLy8gUmFu
 Z2UgTWF4aW11bQogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMSwgICAgICAgICAg
 ICAgICAvLyBBbGlnbm1lbnQKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEsICAg
 ICAgICAgICAgICAgLy8gTGVuZ3RoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICApCiAg
 ICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAg
 ICBEZXZpY2UgKENPUFIpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAg
 TmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMEMwNCIpKQogICAgICAgICAgICAgICAgICAgIE5h
 bWUgKF9DUlMsIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgICAgICAgICB7CiAg
 ICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwKICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgIDB4MDBGMCwgICAgICAgICAgICAgLy8gUmFuZ2UgTWluaW11bQogICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgwMEYwLCAgICAgICAgICAgICAvLyBSYW5nZSBNYXhp
 bXVtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAxLCAgICAgICAgICAgICAgIC8v
 IEFsaWdubWVudAogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgxMCwgICAgICAgICAg
 ICAgICAvLyBMZW5ndGgKICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKICAgICAgICAg
 ICAgICAgICAgICAgICAgSVJRTm9GbGFncyAoKQogICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgezEzfQogICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICB9CgogICAg
 ICAgICAgICAgICAgU2NvcGUgKFwpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg
 ICAgICAgT3BlcmF0aW9uUmVnaW9uIChXSU4xLCBTeXN0ZW1JTywgMHgyRSwgMHgwMikKICAg
 ICAgICAgICAgICAgICAgICBGaWVsZCAoV0lOMSwgQnl0ZUFjYywgTm9Mb2NrLCBQcmVzZXJ2
 ZSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIElORFAs
 ICAgOCwgCiAgICAgICAgICAgICAgICAgICAgICAgIERBVFAsICAgOAogICAgICAgICAgICAg
 ICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgT3BlcmF0aW9uUmVnaW9uIChHUElPLCBT
 eXN0ZW1JTywgMHgwODAwLCAweDA1KQogICAgICAgICAgICAgICAgICAgIEZpZWxkIChHUElP
 LCBCeXRlQWNjLCBOb0xvY2ssIFByZXNlcnZlKQogICAgICAgICAgICAgICAgICAgIHsKICAg
 ICAgICAgICAgICAgICAgICAgICAgR08wMSwgICA4LCAKICAgICAgICAgICAgICAgICAgICAg
 ICAgR08wMiwgICA4LCAKICAgICAgICAgICAgICAgICAgICAgICAgR08wMywgICA4LCAKICAg
 ICAgICAgICAgICAgICAgICAgICAgR08wNCwgICA4LCAKICAgICAgICAgICAgICAgICAgICAg
 ICAgR08wNSwgICA4CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAg
 ICBJbmRleEZpZWxkIChJTkRQLCBEQVRQLCBCeXRlQWNjLCBOb0xvY2ssIFByZXNlcnZlKQog
 ICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBP
 ZmZzZXQgKDB4MDIpLCAKICAgICAgICAgICAgICAgICAgICAgICAgQ0ZHLCAgICA4LCAKICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4MDcpLCAKICAgICAgICAg
 ICAgICAgICAgICAgICAgTEROLCAgICA4LCAKICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICBPZmZzZXQgKDB4MjApLCAKICAgICAgICAgICAgICAgICAgICAgICAgSURISSwgICA4
 LCAKICAgICAgICAgICAgICAgICAgICAgICAgSURMTywgICA4LCAKICAgICAgICAgICAgICAg
 ICAgICAgICAgUE9XQywgICA4LCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBP
 ZmZzZXQgKDB4MzApLCAKICAgICAgICAgICAgICAgICAgICAgICAgQUNUUiwgICA4LCAKICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4NjApLCAKICAgICAgICAg
 ICAgICAgICAgICAgICAgSU9BSCwgICA4LCAKICAgICAgICAgICAgICAgICAgICAgICAgSU9B
 TCwgICA4LCAKICAgICAgICAgICAgICAgICAgICAgICAgSU8ySCwgICA4LCAKICAgICAgICAg
 ICAgICAgICAgICAgICAgSU8yTCwgICA4LCAKICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICBPZmZzZXQgKDB4NzApLCAKICAgICAgICAgICAgICAgICAgICAgICAgSU5UUiwgICA4
 LCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4NzIpLCAKICAg
 ICAgICAgICAgICAgICAgICAgICAgSU5UMSwgICA4LCAKICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICBPZmZzZXQgKDB4NzQpLCAKICAgICAgICAgICAgICAgICAgICAgICAgRE1D
 SCwgICA4LCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4QzAp
 LCAKICAgICAgICAgICAgICAgICAgICAgICAgR1A0MCwgICA4LCAKICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4RjApLCAKICAgICAgICAgICAgICAgICAgICAg
 ICAgT1BUMSwgICA4LCAKICAgICAgICAgICAgICAgICAgICAgICAgT1BUMiwgICA4LCAKICAg
 ICAgICAgICAgICAgICAgICAgICAgT1BUMywgICA4LCAKICAgICAgICAgICAgICAgICAgICAg
 ICAgT1BUNCwgICA4CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAg
 ICBNZXRob2QgKEVORkcsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICAgICAg
 ewogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHg4NywgSU5EUCkKICAgICAgICAg
 ICAgICAgICAgICAgICAgU3RvcmUgKDB4MDEsIElORFApCiAgICAgICAgICAgICAgICAgICAg
 ICAgIFN0b3JlICgweDU1LCBJTkRQKQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAo
 MHg1NSwgSU5EUCkKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAg
 IE1ldGhvZCAoRVhGRywgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgICAgICB7
 CiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAyLCBDRkcpCiAgICAgICAgICAg
 ICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICBNZXRob2QgKEdTUkcsIDEsIE5vdFNl
 cmlhbGl6ZWQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAg
 ICBTdG9yZSAoQXJnMCwgSU5EUCkKICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChE
 QVRQKQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgTWV0aG9k
 IChTU1JHLCAyLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAg
 ICAgICAgICAgICAgICAgICAgU3RvcmUgKEFyZzAsIElORFApCiAgICAgICAgICAgICAgICAg
 ICAgICAgIFN0b3JlIChBcmcxLCBEQVRQKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAg
 ICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBEZXZpY2UgKEZEQzApCiAgICAgICAgICAg
 ICAgICB7CiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMDcw
 MCIpKQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1NUQSwgMCwgTm90U2VyaWFsaXpl
 ZCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIEVORkcg
 KCkKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFplcm8sIExETikKICAgICAgICAg
 ICAgICAgICAgICAgICAgSWYgKEFDVFIpCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgIEVYRkcgKCkKICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgIFJldHVybiAoMHgwRikKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAg
 ICAgICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgIElmIChMT3IgKElPQUgsIElPQUwpKQogICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVY
 RkcgKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MEQpCiAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICBFbHNlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgRVhGRyAoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 IFJldHVybiAoMHgwMCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAg
 ICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAg
 ICAgICAgTWV0aG9kIChfRElTLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAg
 ICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgRU5GRyAoKQogICAgICAgICAgICAgICAg
 ICAgICAgICBTdG9yZSAoMHgwMCwgTEROKQogICAgICAgICAgICAgICAgICAgICAgICBTdG9y
 ZSAoWmVybywgQUNUUikKICAgICAgICAgICAgICAgICAgICAgICAgU0xETSAoRE1DSCwgMHgw
 NCkKICAgICAgICAgICAgICAgICAgICAgICAgRVhGRyAoKQogICAgICAgICAgICAgICAgICAg
 ICAgICBESVNEICgweDAzKQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAg
 ICAgICAgTWV0aG9kIChfQ1JTLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAg
 ICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgTmFtZSAoQlVGMCwgUmVzb3VyY2VUZW1w
 bGF0ZSAoKQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICBJTyAoRGVjb2RlMTYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 MHgwM0YwLCAgICAgICAgICAgICAvLyBSYW5nZSBNaW5pbXVtCiAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgMHgwM0YwLCAgICAgICAgICAgICAvLyBSYW5nZSBNYXhpbXVtCiAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMSwgICAgICAgICAgICAgICAvLyBB
 bGlnbm1lbnQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDA2LCAgICAgICAg
 ICAgICAgIC8vIExlbmd0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9ZMDEp
 CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsCiAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgwM0Y3LCAgICAgICAgICAgICAvLyBSYW5nZSBNaW5p
 bXVtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwM0Y3LCAgICAgICAgICAg
 ICAvLyBSYW5nZSBNYXhpbXVtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgw
 MSwgICAgICAgICAgICAgICAvLyBBbGlnbm1lbnQKICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAweDAxLCAgICAgICAgICAgICAgIC8vIExlbmd0aAogICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIElSUU5vRmxh
 Z3MgKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7Nn0KICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgIERNQSAoQ29tcGF0aWJpbGl0eSwgTm90QnVzTWFzdGVyLCBUcmFu
 c2ZlcjgsICkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7Mn0KICAgICAgICAg
 ICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlQnl0ZUZp
 ZWxkIChCVUYwLCBcX1NCLlBDSTAuUFg0MC5GREMwLl9DUlMuX1kwMS5fTUlOLCBJT0xPKQog
 ICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVCeXRlRmllbGQgKEJVRjAsIDB4MDMsIElP
 SEkpCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZUJ5dGVGaWVsZCAoQlVGMCwgXF9T
 Qi5QQ0kwLlBYNDAuRkRDMC5fQ1JTLl9ZMDEuX01BWCwgSU9STCkKICAgICAgICAgICAgICAg
 ICAgICAgICAgQ3JlYXRlQnl0ZUZpZWxkIChCVUYwLCAweDA1LCBJT1JIKQogICAgICAgICAg
 ICAgICAgICAgICAgICBFTkZHICgpCiAgICAgICAgICAgICAgICAgICAgICAgIEVYRkcgKCkK
 ICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChCVUYwKQogICAgICAgICAgICAgICAg
 ICAgIH0KCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX1BSUywgUmVzb3VyY2VUZW1wbGF0
 ZSAoKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgU3Rh
 cnREZXBlbmRlbnRGbk5vUHJpICgpCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwKICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAweDAzRjAsICAgICAgICAgICAgIC8vIFJhbmdlIE1pbmltdW0KICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAzRjAsICAgICAgICAgICAgIC8vIFJh
 bmdlIE1heGltdW0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAxLCAgICAg
 ICAgICAgICAgIC8vIEFsaWdubWVudAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 IDB4MDYsICAgICAgICAgICAgICAgLy8gTGVuZ3RoCiAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LAog
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDNGNywgICAgICAgICAgICAgLy8g
 UmFuZ2UgTWluaW11bQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDNGNywg
 ICAgICAgICAgICAgLy8gUmFuZ2UgTWF4aW11bQogICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgIDB4MDEsICAgICAgICAgICAgICAgLy8gQWxpZ25tZW50CiAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgMHgwMSwgICAgICAgICAgICAgICAvLyBMZW5ndGgKICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICBJUlFOb0ZsYWdzICgpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgezZ9CiAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICBETUEgKENvbXBhdGliaWxpdHksIE5vdEJ1c01h
 c3RlciwgVHJhbnNmZXI4LCApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgezJ9
 CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgRW5k
 RGVwZW5kZW50Rm4gKCkKICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAg
 ICAgIE1ldGhvZCAoX1NSUywgMSwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgICAg
 ICB7CiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZUJ5dGVGaWVsZCAoQXJnMCwgMHgw
 MiwgSU9MTykKICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlQnl0ZUZpZWxkIChBcmcw
 LCAweDAzLCBJT0hJKQogICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQg
 KEFyZzAsIDB4MDIsIElPQUQpCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRG
 aWVsZCAoQXJnMCwgMHgxOSwgSVJRVykKICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRl
 Qnl0ZUZpZWxkIChBcmcwLCAweDFDLCBETUFWKQogICAgICAgICAgICAgICAgICAgICAgICBF
 TkZHICgpCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChaZXJvLCBMRE4pCiAgICAg
 ICAgICAgICAgICAgICAgICAgIFN0b3JlIChPbmUsIEFDVFIpCiAgICAgICAgICAgICAgICAg
 ICAgICAgIFNMRE0gKERNQ0gsIERNQ0gpCiAgICAgICAgICAgICAgICAgICAgICAgIENLSU8g
 KElPQUQsIDB4MDMpCiAgICAgICAgICAgICAgICAgICAgICAgIEVYRkcgKCkKICAgICAgICAg
 ICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgRGV2aWNl
 IChVQVIxKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIE5hbWUgKF9I
 SUQsIEVpc2FJZCAoIlBOUDA1MDEiKSkKICAgICAgICAgICAgICAgICAgICBOYW1lIChfVUlE
 LCAweDAxKQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1NUQSwgMCwgTm90U2VyaWFs
 aXplZCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIEVO
 RkcgKCkKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDEsIExETikKICAgICAg
 ICAgICAgICAgICAgICAgICAgSWYgKEFDVFIpCiAgICAgICAgICAgICAgICAgICAgICAgIHsK
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVYRkcgKCkKICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgIFJldHVybiAoMHgwRikKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAg
 ICAgICAgICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMT3IgKElPQUgsIElPQUwpKQogICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 IEVYRkcgKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MEQp
 CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICBFbHNlCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgRVhGRyAoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgIFJldHVybiAoMHgwMCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAg
 ICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgRVhGRyAoKQog
 ICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfRElT
 LCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgICAgICAgICAgRU5GRyAoKQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgw
 MSwgTEROKQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoWmVybywgQUNUUikKICAg
 ICAgICAgICAgICAgICAgICAgICAgRVhGRyAoKQogICAgICAgICAgICAgICAgICAgICAgICBE
 SVNEICgweDAwKQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAg
 TWV0aG9kIChfQ1JTLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgICAgIHsK
 ICAgICAgICAgICAgICAgICAgICAgICAgTmFtZSAoQlVGMSwgUmVzb3VyY2VUZW1wbGF0ZSAo
 KQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICBJTyAoRGVjb2RlMTYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAw
 LCAgICAgICAgICAgICAvLyBSYW5nZSBNaW5pbXVtCiAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgMHgwMDAwLCAgICAgICAgICAgICAvLyBSYW5nZSBNYXhpbXVtCiAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMSwgICAgICAgICAgICAgICAvLyBBbGlnbm1l
 bnQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDA4LCAgICAgICAgICAgICAg
 IC8vIExlbmd0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9ZMDIpCiAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICBJUlFOb0ZsYWdzIChfWTAzKQogICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgIHt9CiAgICAgICAgICAgICAgICAgICAgICAgIH0pCiAgICAg
 ICAgICAgICAgICAgICAgICAgIENyZWF0ZUJ5dGVGaWVsZCAoQlVGMSwgXF9TQi5QQ0kwLlBY
 NDAuVUFSMS5fQ1JTLl9ZMDIuX01JTiwgSU9MTykKICAgICAgICAgICAgICAgICAgICAgICAg
 Q3JlYXRlQnl0ZUZpZWxkIChCVUYxLCAweDAzLCBJT0hJKQogICAgICAgICAgICAgICAgICAg
 ICAgICBDcmVhdGVCeXRlRmllbGQgKEJVRjEsIFxfU0IuUENJMC5QWDQwLlVBUjEuX0NSUy5f
 WTAyLl9NQVgsIElPUkwpCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZUJ5dGVGaWVs
 ZCAoQlVGMSwgMHgwNSwgSU9SSCkKICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlV29y
 ZEZpZWxkIChCVUYxLCBcX1NCLlBDSTAuUFg0MC5VQVIxLl9DUlMuX1kwMy5fSU5ULCBJUlFX
 KQogICAgICAgICAgICAgICAgICAgICAgICBFTkZHICgpCiAgICAgICAgICAgICAgICAgICAg
 ICAgIFN0b3JlICgweDAxLCBMRE4pCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChJ
 T0FMLCBJT0xPKQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoSU9BTCwgSU9STCkK
 ICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKElPQUgsIElPSEkpCiAgICAgICAgICAg
 ICAgICAgICAgICAgIFN0b3JlIChJT0FILCBJT1JIKQogICAgICAgICAgICAgICAgICAgICAg
 ICBTdG9yZSAoT25lLCBMb2NhbDApCiAgICAgICAgICAgICAgICAgICAgICAgIFNoaWZ0TGVm
 dCAoTG9jYWwwLCBJTlRSLCBJUlFXKQogICAgICAgICAgICAgICAgICAgICAgICBFWEZHICgp
 CiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoQlVGMSkKICAgICAgICAgICAgICAg
 ICAgICB9CgogICAgICAgICAgICAgICAgICAgIE5hbWUgKF9QUlMsIFJlc291cmNlVGVtcGxh
 dGUgKCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFN0
 YXJ0RGVwZW5kZW50Rm5Ob1ByaSAoKQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsCiAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgMHgwM0Y4LCAgICAgICAgICAgICAvLyBSYW5nZSBNaW5pbXVtCiAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwM0Y4LCAgICAgICAgICAgICAvLyBS
 YW5nZSBNYXhpbXVtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMSwgICAg
 ICAgICAgICAgICAvLyBBbGlnbm1lbnQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAweDA4LCAgICAgICAgICAgICAgIC8vIExlbmd0aAogICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIElSUU5vRmxhZ3MgKCkK
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7Myw0LDUsNyw5LDEwLDExLDEyfQog
 ICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIFN0YXJ0
 RGVwZW5kZW50Rm5Ob1ByaSAoKQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsCiAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgMHgwMkY4LCAgICAgICAgICAgICAvLyBSYW5nZSBNaW5pbXVtCiAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMkY4LCAgICAgICAgICAgICAvLyBSYW5n
 ZSBNYXhpbXVtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMSwgICAgICAg
 ICAgICAgICAvLyBBbGlnbm1lbnQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAw
 eDA4LCAgICAgICAgICAgICAgIC8vIExlbmd0aAogICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIElSUU5vRmxhZ3MgKCkKICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7Myw0LDUsNyw5LDEwLDExLDEyfQogICAg
 ICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIFN0YXJ0RGVw
 ZW5kZW50Rm5Ob1ByaSAoKQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsCiAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgMHgwM0U4LCAgICAgICAgICAgICAvLyBSYW5nZSBNaW5pbXVtCiAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgMHgwM0U4LCAgICAgICAgICAgICAvLyBSYW5nZSBN
 YXhpbXVtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMSwgICAgICAgICAg
 ICAgICAvLyBBbGlnbm1lbnQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDA4
 LCAgICAgICAgICAgICAgIC8vIExlbmd0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIElSUU5vRmxhZ3MgKCkKICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICB7Myw0LDUsNyw5LDEwLDExLDEyfQogICAgICAg
 ICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIFN0YXJ0RGVwZW5k
 ZW50Rm5Ob1ByaSAoKQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsCiAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgMHgwMkU4LCAgICAgICAgICAgICAvLyBSYW5nZSBNaW5pbXVtCiAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgwMkU4LCAgICAgICAgICAgICAvLyBSYW5nZSBNYXhp
 bXVtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMSwgICAgICAgICAgICAg
 ICAvLyBBbGlnbm1lbnQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDA4LCAg
 ICAgICAgICAgICAgIC8vIExlbmd0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIElSUU5vRmxhZ3MgKCkKICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICB7Myw0LDUsNyw5LDEwLDExLDEyfQogICAgICAgICAg
 ICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIEVuZERlcGVuZGVudEZu
 ICgpCiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgICAgICBNZXRob2Qg
 KF9TUlMsIDEsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAg
 ICAgICAgICAgICAgICAgICBDcmVhdGVCeXRlRmllbGQgKEFyZzAsIDB4MDIsIElPTE8pCiAg
 ICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZUJ5dGVGaWVsZCAoQXJnMCwgMHgwMywgSU9I
 SSkKICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChBcmcwLCAweDAy
 LCBJT0FEKQogICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKEFyZzAs
 IDB4MDksIElSUVcpCiAgICAgICAgICAgICAgICAgICAgICAgIEVORkcgKCkKICAgICAgICAg
 ICAgICAgICAgICAgICAgU3RvcmUgKDB4MDEsIExETikKICAgICAgICAgICAgICAgICAgICAg
 ICAgU3RvcmUgKE9uZSwgQUNUUikKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKElP
 TE8sIElPQUwpCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChJT0hJLCBJT0FIKQog
 ICAgICAgICAgICAgICAgICAgICAgICBGaW5kU2V0UmlnaHRCaXQgKElSUVcsIExvY2FsMCkK
 ICAgICAgICAgICAgICAgICAgICAgICAgU3VidHJhY3QgKExvY2FsMCwgMHgwMSwgSU5UUikK
 ICAgICAgICAgICAgICAgICAgICAgICAgRVhGRyAoKQogICAgICAgICAgICAgICAgICAgICAg
 ICBDS0lPIChJT0FELCAweDAwKQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAg
 ICAgICAgICAgTWV0aG9kIChfUFJXLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAg
 ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgSWYgKFNVU0YpCiAgICAgICAgICAg
 ICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoUGFj
 a2FnZSAoMHgwMikKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAweDA4LCAKICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAweDAzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAg
 ICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UKICAgICAgICAgICAg
 ICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChQYWNr
 YWdlICgweDAyKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgIDB4MDgsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgIDB4MDEKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAg
 ICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAg
 IE1ldGhvZCAoX1BTVywgMSwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgICAgICB7
 CiAgICAgICAgICAgICAgICAgICAgICAgIElmIChBcmcwKQogICAgICAgICAgICAgICAgICAg
 ICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBPciAoRzJDMiwgMHgwMSwgRzJD
 MikKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBF
 bHNlCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgIEFuZCAoRzJDMiwgMHhGRSwgRzJDMikKICAgICAgICAgICAgICAgICAgICAgICAgfQog
 ICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAg
 ICBEZXZpY2UgKExQVDEpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAg
 TmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMDQwMCIpKQogICAgICAgICAgICAgICAgICAgIE1l
 dGhvZCAoX1NUQSwgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgICAgICB7CiAg
 ICAgICAgICAgICAgICAgICAgICAgIEVORkcgKCkKICAgICAgICAgICAgICAgICAgICAgICAg
 U3RvcmUgKDB4MDMsIExETikKICAgICAgICAgICAgICAgICAgICAgICAgQW5kIChPUFQxLCAw
 eDAyLCBMb2NhbDApCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMTm90RXF1YWwgKExv
 Y2FsMCwgMHgwMikpCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgIElmIChBQ1RSKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgewog
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVYRkcgKCkKICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MEYpCiAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExP
 ciAoSU9BSCwgSU9BTCkpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFWEZHICgpCiAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwRCkKICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQog
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgRVhGRyAoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICBSZXR1cm4gKDB4MDApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQog
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9
 CiAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UKICAgICAgICAgICAgICAgICAgICAgICAg
 ewogICAgICAgICAgICAgICAgICAgICAgICAgICAgRVhGRyAoKQogICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgUmV0dXJuICgweDAwKQogICAgICAgICAgICAgICAgICAgICAgICB9CiAg
 ICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9ESVMs
 IDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAg
 ICAgICAgICAgICBFTkZHICgpCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAz
 LCBMRE4pCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChaZXJvLCBBQ1RSKQogICAg
 ICAgICAgICAgICAgICAgICAgICBFWEZHICgpCiAgICAgICAgICAgICAgICAgICAgICAgIERJ
 U0QgKDB4MDIpCiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICBN
 ZXRob2QgKF9DUlMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICAgICAgewog
 ICAgICAgICAgICAgICAgICAgICAgICBOYW1lIChCVUY1LCBSZXNvdXJjZVRlbXBsYXRlICgp
 CiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAg
 IElPIChEZWNvZGUxNiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAs
 ICAgICAgICAgICAgIC8vIFJhbmdlIE1pbmltdW0KICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAweDAwMDAsICAgICAgICAgICAgIC8vIFJhbmdlIE1heGltdW0KICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAweDAxLCAgICAgICAgICAgICAgIC8vIEFsaWdubWVu
 dAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDgsICAgICAgICAgICAgICAg
 Ly8gTGVuZ3RoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX1kwNCkKICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgIElSUU5vRmxhZ3MgKF9ZMDUpCiAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAge30KICAgICAgICAgICAgICAgICAgICAgICAgfSkKICAgICAg
 ICAgICAgICAgICAgICAgICAgQ3JlYXRlQnl0ZUZpZWxkIChCVUY1LCBcX1NCLlBDSTAuUFg0
 MC5MUFQxLl9DUlMuX1kwNC5fTUlOLCBJT0xPKQogICAgICAgICAgICAgICAgICAgICAgICBD
 cmVhdGVCeXRlRmllbGQgKEJVRjUsIDB4MDMsIElPSEkpCiAgICAgICAgICAgICAgICAgICAg
 ICAgIENyZWF0ZUJ5dGVGaWVsZCAoQlVGNSwgXF9TQi5QQ0kwLlBYNDAuTFBUMS5fQ1JTLl9Z
 MDQuX01BWCwgSU9STCkKICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlQnl0ZUZpZWxk
 IChCVUY1LCAweDA1LCBJT1JIKQogICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVCeXRl
 RmllbGQgKEJVRjUsIFxfU0IuUENJMC5QWDQwLkxQVDEuX0NSUy5fWTA0Ll9MRU4sIElPTEUp
 CiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoQlVGNSwgXF9TQi5Q
 Q0kwLlBYNDAuTFBUMS5fQ1JTLl9ZMDUuX0lOVCwgSVJRVykKICAgICAgICAgICAgICAgICAg
 ICAgICAgRU5GRyAoKQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMywgTERO
 KQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoSU9BTCwgSU9MTykKICAgICAgICAg
 ICAgICAgICAgICAgICAgU3RvcmUgKElPTE8sIElPUkwpCiAgICAgICAgICAgICAgICAgICAg
 ICAgIFN0b3JlIChJT0FILCBJT0hJKQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAo
 SU9ISSwgSU9SSCkKICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoSU9MTywg
 MHhCQykpCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgIFN0b3JlICgweDA0LCBJT0xFKQogICAgICAgICAgICAgICAgICAgICAgICB9CiAg
 ICAgICAgICAgICAgICAgICAgICAgIEVsc2UKICAgICAgICAgICAgICAgICAgICAgICAgewog
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDgsIElPTEUpCiAgICAgICAg
 ICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChPbmUs
 IExvY2FsMCkKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKElOVFIsIExvY2FsNSkK
 ICAgICAgICAgICAgICAgICAgICAgICAgU2hpZnRMZWZ0IChMb2NhbDAsIExvY2FsNSwgSVJR
 VykKICAgICAgICAgICAgICAgICAgICAgICAgRVhGRyAoKQogICAgICAgICAgICAgICAgICAg
 ICAgICBSZXR1cm4gKEJVRjUpCiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAg
 ICAgICAgICBOYW1lIChfUFJTLCBSZXNvdXJjZVRlbXBsYXRlICgpCiAgICAgICAgICAgICAg
 ICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBTdGFydERlcGVuZGVudEZuTm9Qcmkg
 KCkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgSU8gKERlY29kZTE2LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDM3
 OCwgICAgICAgICAgICAgLy8gUmFuZ2UgTWluaW11bQogICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgIDB4MDM3OCwgICAgICAgICAgICAgLy8gUmFuZ2UgTWF4aW11bQogICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEsICAgICAgICAgICAgICAgLy8gQWxpZ25t
 ZW50CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwOCwgICAgICAgICAgICAg
 ICAvLyBMZW5ndGgKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApCiAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICBJUlFOb0ZsYWdzICgpCiAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgezMsNCw1LDcsOSwxMCwxMSwxMn0KICAgICAgICAgICAgICAgICAgICAg
 ICAgfQogICAgICAgICAgICAgICAgICAgICAgICBTdGFydERlcGVuZGVudEZuTm9QcmkgKCkK
 ICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAg
 SU8gKERlY29kZTE2LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDI3OCwg
 ICAgICAgICAgICAgLy8gUmFuZ2UgTWluaW11bQogICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgIDB4MDI3OCwgICAgICAgICAgICAgLy8gUmFuZ2UgTWF4aW11bQogICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgIDB4MDEsICAgICAgICAgICAgICAgLy8gQWxpZ25tZW50
 CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwOCwgICAgICAgICAgICAgICAv
 LyBMZW5ndGgKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICBJUlFOb0ZsYWdzICgpCiAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgezMsNCw1LDcsOSwxMCwxMSwxMn0KICAgICAgICAgICAgICAgICAgICAgICAg
 fQogICAgICAgICAgICAgICAgICAgICAgICBTdGFydERlcGVuZGVudEZuTm9QcmkgKCkKICAg
 ICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgSU8g
 KERlY29kZTE2LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDNCQywgICAg
 ICAgICAgICAgLy8gUmFuZ2UgTWluaW11bQogICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgIDB4MDNCQywgICAgICAgICAgICAgLy8gUmFuZ2UgTWF4aW11bQogICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgIDB4MDEsICAgICAgICAgICAgICAgLy8gQWxpZ25tZW50CiAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwNCwgICAgICAgICAgICAgICAvLyBM
 ZW5ndGgKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICBJUlFOb0ZsYWdzICgpCiAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgezMsNCw1LDcsOSwxMCwxMSwxMn0KICAgICAgICAgICAgICAgICAgICAgICAgfQog
 ICAgICAgICAgICAgICAgICAgICAgICBFbmREZXBlbmRlbnRGbiAoKQogICAgICAgICAgICAg
 ICAgICAgIH0pCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfU1JTLCAxLCBOb3RTZXJp
 YWxpemVkKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAg
 Q3JlYXRlQnl0ZUZpZWxkIChBcmcwLCAweDAyLCBJT0xPKQogICAgICAgICAgICAgICAgICAg
 ICAgICBDcmVhdGVCeXRlRmllbGQgKEFyZzAsIDB4MDMsIElPSEkpCiAgICAgICAgICAgICAg
 ICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoQXJnMCwgMHgwMiwgSU9BRCkKICAgICAgICAg
 ICAgICAgICAgICAgICAgQ3JlYXRlQnl0ZUZpZWxkIChBcmcwLCAweDA0LCBJT1JMKQogICAg
 ICAgICAgICAgICAgICAgICAgICBDcmVhdGVCeXRlRmllbGQgKEFyZzAsIDB4MDUsIElPUkgp
 CiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoQXJnMCwgMHgwOSwg
 SVJRVykKICAgICAgICAgICAgICAgICAgICAgICAgRU5GRyAoKQogICAgICAgICAgICAgICAg
 ICAgICAgICBTdG9yZSAoMHgwMywgTEROKQogICAgICAgICAgICAgICAgICAgICAgICBTdG9y
 ZSAoT25lLCBBQ1RSKQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoSU9MTywgSU9B
 TCkKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKElPSEksIElPQUgpCiAgICAgICAg
 ICAgICAgICAgICAgICAgIEZpbmRTZXRMZWZ0Qml0IChJUlFXLCBMb2NhbDApCiAgICAgICAg
 ICAgICAgICAgICAgICAgIFN1YnRyYWN0IChMb2NhbDAsIDB4MDEsIExvY2FsMCkKICAgICAg
 ICAgICAgICAgICAgICAgICAgU3RvcmUgKExvY2FsMCwgSU5UUikKICAgICAgICAgICAgICAg
 ICAgICAgICAgRVhGRyAoKQogICAgICAgICAgICAgICAgICAgICAgICBDS0lPIChJT0FELCAw
 eDAyKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KCiAgICAgICAg
 ICAgICAgICBEZXZpY2UgKEVDUDEpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg
 ICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMDQwMSIpKQogICAgICAgICAgICAgICAg
 ICAgIE1ldGhvZCAoX1NUQSwgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgICAg
 ICB7CiAgICAgICAgICAgICAgICAgICAgICAgIEVORkcgKCkKICAgICAgICAgICAgICAgICAg
 ICAgICAgU3RvcmUgKDB4MDMsIExETikKICAgICAgICAgICAgICAgICAgICAgICAgQW5kIChP
 UFQxLCAweDAyLCBMb2NhbDApCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwg
 KExvY2FsMCwgMHgwMikpCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgIElmIChBQ1RSKQogICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVYRkcgKCkKICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MEYpCiAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYg
 KExPciAoSU9BSCwgSU9BTCkpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewog
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFWEZHICgpCiAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwRCkKICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxz
 ZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgRVhGRyAoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICBSZXR1cm4gKDB4MDApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 fQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAg
 ICB9CiAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UKICAgICAgICAgICAgICAgICAgICAg
 ICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgRVhGRyAoKQogICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgUmV0dXJuICgweDAwKQogICAgICAgICAgICAgICAgICAgICAgICB9
 CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9E
 SVMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAg
 ICAgICAgICAgICAgICBFTkZHICgpCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgw
 eDAzLCBMRE4pCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChaZXJvLCBBQ1RSKQog
 ICAgICAgICAgICAgICAgICAgICAgICBTTERNIChETUNILCAweDA0KQogICAgICAgICAgICAg
 ICAgICAgICAgICBFWEZHICgpCiAgICAgICAgICAgICAgICAgICAgICAgIERJU0QgKDB4MDIp
 CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9D
 UlMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAg
 ICAgICAgICAgICAgICBOYW1lIChCVUY2LCBSZXNvdXJjZVRlbXBsYXRlICgpCiAgICAgICAg
 ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNv
 ZGUxNiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAsICAgICAgICAg
 ICAgIC8vIFJhbmdlIE1pbmltdW0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAw
 eDAwMDAsICAgICAgICAgICAgIC8vIFJhbmdlIE1heGltdW0KICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAweDAxLCAgICAgICAgICAgICAgIC8vIEFsaWdubWVudAogICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDQsICAgICAgICAgICAgICAgLy8gTGVuZ3Ro
 CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgX1kwNikKICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgIElPIChEZWNvZGUxNiwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAweDAwMDAsICAgICAgICAgICAgIC8vIFJhbmdlIE1pbmltdW0KICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAweDAwMDAsICAgICAgICAgICAgIC8vIFJhbmdlIE1heGlt
 dW0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAxLCAgICAgICAgICAgICAg
 IC8vIEFsaWdubWVudAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDQsICAg
 ICAgICAgICAgICAgLy8gTGVuZ3RoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 X1kwNykKICAgICAgICAgICAgICAgICAgICAgICAgICAgIElSUU5vRmxhZ3MgKF9ZMDgpCiAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge30KICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgIERNQSAoQ29tcGF0aWJpbGl0eSwgTm90QnVzTWFzdGVyLCBUcmFuc2ZlcjgsIF9Z
 MDkpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge30KICAgICAgICAgICAgICAg
 ICAgICAgICAgfSkKICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlQnl0ZUZpZWxkIChC
 VUY2LCBcX1NCLlBDSTAuUFg0MC5FQ1AxLl9DUlMuX1kwNi5fTUlOLCBJT0xPKQogICAgICAg
 ICAgICAgICAgICAgICAgICBDcmVhdGVCeXRlRmllbGQgKEJVRjYsIDB4MDMsIElPSEkpCiAg
 ICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZUJ5dGVGaWVsZCAoQlVGNiwgXF9TQi5QQ0kw
 LlBYNDAuRUNQMS5fQ1JTLl9ZMDYuX01BWCwgSU9STCkKICAgICAgICAgICAgICAgICAgICAg
 ICAgQ3JlYXRlQnl0ZUZpZWxkIChCVUY2LCAweDA1LCBJT1JIKQogICAgICAgICAgICAgICAg
 ICAgICAgICBDcmVhdGVCeXRlRmllbGQgKEJVRjYsIFxfU0IuUENJMC5QWDQwLkVDUDEuX0NS
 Uy5fWTA2Ll9MRU4sIElPTEUpCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZUJ5dGVG
 aWVsZCAoQlVGNiwgXF9TQi5QQ0kwLlBYNDAuRUNQMS5fQ1JTLl9ZMDcuX01JTiwgSU9FTCkK
 ICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlQnl0ZUZpZWxkIChCVUY2LCAweDBCLCBJ
 T0VIKQogICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVCeXRlRmllbGQgKEJVRjYsIFxf
 U0IuUENJMC5QWDQwLkVDUDEuX0NSUy5fWTA3Ll9NQVgsIElPTUwpCiAgICAgICAgICAgICAg
 ICAgICAgICAgIENyZWF0ZUJ5dGVGaWVsZCAoQlVGNiwgMHgwRCwgSU9NSCkKICAgICAgICAg
 ICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChCVUY2LCBcX1NCLlBDSTAuUFg0MC5F
 Q1AxLl9DUlMuX1kwOC5fSU5ULCBJUlFXKQogICAgICAgICAgICAgICAgICAgICAgICBDcmVh
 dGVCeXRlRmllbGQgKEJVRjYsIFxfU0IuUENJMC5QWDQwLkVDUDEuX0NSUy5fWTA5Ll9ETUEs
 IERNQUMpCiAgICAgICAgICAgICAgICAgICAgICAgIEVORkcgKCkKICAgICAgICAgICAgICAg
 ICAgICAgICAgU3RvcmUgKDB4MDMsIExETikKICAgICAgICAgICAgICAgICAgICAgICAgU3Rv
 cmUgKElPQUwsIExvY2FsMikKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKExvY2Fs
 MiwgSU9MTykKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKElPQUgsIExvY2FsMykK
 ICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKExvY2FsMywgSU9ISSkKICAgICAgICAg
 ICAgICAgICAgICAgICAgT3IgKExvY2FsMywgMHgwNCwgTG9jYWwzKQogICAgICAgICAgICAg
 ICAgICAgICAgICBTdG9yZSAoTG9jYWwzLCBJT0VIKQogICAgICAgICAgICAgICAgICAgICAg
 ICBTdG9yZSAoTG9jYWwzLCBJT01IKQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAo
 SU9MTywgSU9STCkKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKElPTE8sIElPRUwp
 CiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChJT0xPLCBJT01MKQogICAgICAgICAg
 ICAgICAgICAgICAgICBTdG9yZSAoSU9ISSwgSU9SSCkKICAgICAgICAgICAgICAgICAgICAg
 ICAgSWYgKExFcXVhbCAoSU9MTywgMHhCQykpCiAgICAgICAgICAgICAgICAgICAgICAgIHsK
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDA0LCBJT0xFKQogICAgICAg
 ICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UKICAgICAg
 ICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUg
 KDB4MDgsIElPTEUpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAg
 ICAgICAgICAgIFN0b3JlIChPbmUsIExvY2FsMCkKICAgICAgICAgICAgICAgICAgICAgICAg
 U3RvcmUgKElOVFIsIExvY2FsNSkKICAgICAgICAgICAgICAgICAgICAgICAgU2hpZnRMZWZ0
 IChMb2NhbDAsIExvY2FsNSwgSVJRVykKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUg
 KE9uZSwgTG9jYWwwKQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoRE1DSCwgTG9j
 YWw1KQogICAgICAgICAgICAgICAgICAgICAgICBTaGlmdExlZnQgKExvY2FsMCwgTG9jYWw1
 LCBETUFDKQogICAgICAgICAgICAgICAgICAgICAgICBFWEZHICgpCiAgICAgICAgICAgICAg
 ICAgICAgICAgIFJldHVybiAoQlVGNikKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAg
 ICAgICAgICAgICAgIE5hbWUgKF9QUlMsIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAg
 ICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFN0YXJ0RGVwZW5kZW50Rm5O
 b1ByaSAoKQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICBJTyAoRGVjb2RlMTYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 MHgwMzc4LCAgICAgICAgICAgICAvLyBSYW5nZSBNaW5pbXVtCiAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgMHgwMzc4LCAgICAgICAgICAgICAvLyBSYW5nZSBNYXhpbXVtCiAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMCwgICAgICAgICAgICAgICAvLyBB
 bGlnbm1lbnQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDA4LCAgICAgICAg
 ICAgICAgIC8vIExlbmd0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwKICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAweDA3NzgsICAgICAgICAgICAgIC8vIFJhbmdlIE1pbmltdW0K
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDA3NzgsICAgICAgICAgICAgIC8v
 IFJhbmdlIE1heGltdW0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAg
 ICAgICAgICAgICAgIC8vIEFsaWdubWVudAogICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgIDB4MDQsICAgICAgICAgICAgICAgLy8gTGVuZ3RoCiAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSVJRTm9GbGFncyAo
 KQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHszLDQsNSw3LDksMTAsMTEsMTJ9
 CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBETUEgKENvbXBhdGliaWxpdHksIE5vdEJ1
 c01hc3RlciwgVHJhbnNmZXI4LCApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ezAsMSwzfQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAg
 ICAgIFN0YXJ0RGVwZW5kZW50Rm5Ob1ByaSAoKQogICAgICAgICAgICAgICAgICAgICAgICB7
 CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsCiAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgwMjc4LCAgICAgICAgICAgICAvLyBSYW5nZSBNaW5p
 bXVtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMjc4LCAgICAgICAgICAg
 ICAvLyBSYW5nZSBNYXhpbXVtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgw
 MCwgICAgICAgICAgICAgICAvLyBBbGlnbm1lbnQKICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAweDA4LCAgICAgICAgICAgICAgIC8vIExlbmd0aAogICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNv
 ZGUxNiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDA2NzgsICAgICAgICAg
 ICAgIC8vIFJhbmdlIE1pbmltdW0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAw
 eDA2NzgsICAgICAgICAgICAgIC8vIFJhbmdlIE1heGltdW0KICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAweDAwLCAgICAgICAgICAgICAgIC8vIEFsaWdubWVudAogICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDQsICAgICAgICAgICAgICAgLy8gTGVuZ3Ro
 CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgSVJRTm9GbGFncyAoKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 IHszLDQsNSw3LDksMTAsMTEsMTJ9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBETUEg
 KENvbXBhdGliaWxpdHksIE5vdEJ1c01hc3RlciwgVHJhbnNmZXI4LCApCiAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgezAsMSwzfQogICAgICAgICAgICAgICAgICAgICAgICB9
 CiAgICAgICAgICAgICAgICAgICAgICAgIFN0YXJ0RGVwZW5kZW50Rm5Ob1ByaSAoKQogICAg
 ICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTyAo
 RGVjb2RlMTYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwM0JDLCAgICAg
 ICAgICAgICAvLyBSYW5nZSBNaW5pbXVtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgMHgwM0JDLCAgICAgICAgICAgICAvLyBSYW5nZSBNYXhpbXVtCiAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgMHgwMCwgICAgICAgICAgICAgICAvLyBBbGlnbm1lbnQKICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDA0LCAgICAgICAgICAgICAgIC8vIExl
 bmd0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgIElPIChEZWNvZGUxNiwKICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAweDA3QkMsICAgICAgICAgICAgIC8vIFJhbmdlIE1pbmltdW0KICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAweDA3QkMsICAgICAgICAgICAgIC8vIFJhbmdlIE1heGlt
 dW0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAgICAgICAgICAgICAg
 IC8vIEFsaWdubWVudAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDQsICAg
 ICAgICAgICAgICAgLy8gTGVuZ3RoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 KQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSVJRTm9GbGFncyAoKQogICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgIHszLDQsNSw3LDksMTAsMTEsMTJ9CiAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICBETUEgKENvbXBhdGliaWxpdHksIE5vdEJ1c01hc3RlciwgVHJh
 bnNmZXI4LCApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgezAsMSwzfQogICAg
 ICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIEVuZERlcGVu
 ZGVudEZuICgpCiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgICAgICBN
 ZXRob2QgKF9TUlMsIDEsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICAgICAgewog
 ICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVCeXRlRmllbGQgKEFyZzAsIDB4MDIsIElP
 TE8pCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZUJ5dGVGaWVsZCAoQXJnMCwgMHgw
 MywgSU9ISSkKICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChBcmcw
 LCAweDAyLCBJT0FEKQogICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQg
 KEFyZzAsIDB4MTEsIElSUVcpCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZUJ5dGVG
 aWVsZCAoQXJnMCwgMHgxNCwgRE1BQykKICAgICAgICAgICAgICAgICAgICAgICAgRU5GRyAo
 KQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMywgTEROKQogICAgICAgICAg
 ICAgICAgICAgICAgICBTdG9yZSAoT25lLCBBQ1RSKQogICAgICAgICAgICAgICAgICAgICAg
 ICBTdG9yZSAoSU9MTywgSU9BTCkKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKElP
 SEksIElPQUgpCiAgICAgICAgICAgICAgICAgICAgICAgIEZpbmRTZXRMZWZ0Qml0IChJUlFX
 LCBMb2NhbDApCiAgICAgICAgICAgICAgICAgICAgICAgIFN1YnRyYWN0IChMb2NhbDAsIDB4
 MDEsIExvY2FsMCkKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKExvY2FsMCwgSU5U
 UikKICAgICAgICAgICAgICAgICAgICAgICAgRmluZFNldExlZnRCaXQgKERNQUMsIExvY2Fs
 MSkKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKERNQ0gsIExvY2FsMCkKICAgICAg
 ICAgICAgICAgICAgICAgICAgU3VidHJhY3QgKExvY2FsMSwgMHgwMSwgRE1DSCkKICAgICAg
 ICAgICAgICAgICAgICAgICAgU0xETSAoTG9jYWwwLCBETUNIKQogICAgICAgICAgICAgICAg
 ICAgICAgICBFWEZHICgpCiAgICAgICAgICAgICAgICAgICAgICAgIENLSU8gKElPQUQsIDB4
 MDIpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQoKICAgICAgICAg
 ICAgICAgIE9wZXJhdGlvblJlZ2lvbiAoS0JDVCwgU3lzdGVtSU8sIDB4NjAsIDB4MDUpCiAg
 ICAgICAgICAgICAgICBGaWVsZCAoS0JDVCwgQnl0ZUFjYywgTm9Mb2NrLCBQcmVzZXJ2ZSkK
 ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBQMDYwLCAgIDgsIAogICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgT2Zmc2V0ICgweDA0KSwgCiAgICAgICAgICAgICAg
 ICAgICAgUDA2NCwgICA4CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgRGV2
 aWNlIChQUzJNKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIE5hbWUg
 KF9ISUQsIEVpc2FJZCAoIlBOUDBGMTMiKSkKICAgICAgICAgICAgICAgICAgICBNZXRob2Qg
 KF9TVEEsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAg
 ICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChQUzJGLCAweDAwKSkKICAgICAgICAgICAg
 ICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDBG
 KQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIEVs
 c2UKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgUmV0dXJuICgweDAwKQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAg
 ICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9DUlMsIDAsIE5vdFNl
 cmlhbGl6ZWQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAg
 ICBOYW1lIChCVUYxLCBSZXNvdXJjZVRlbXBsYXRlICgpCiAgICAgICAgICAgICAgICAgICAg
 ICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIElSUU5vRmxhZ3MgKCkKICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICB7MTJ9CiAgICAgICAgICAgICAgICAgICAgICAg
 IH0pCiAgICAgICAgICAgICAgICAgICAgICAgIE5hbWUgKEJVRjIsIFJlc291cmNlVGVtcGxh
 dGUgKCkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgSU8gKERlY29kZTE2LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MDA2MCwgICAgICAgICAgICAgLy8gUmFuZ2UgTWluaW11bQogICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgIDB4MDA2MCwgICAgICAgICAgICAgLy8gUmFuZ2UgTWF4aW11bQogICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEsICAgICAgICAgICAgICAgLy8gQWxp
 Z25tZW50CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMSwgICAgICAgICAg
 ICAgICAvLyBMZW5ndGgKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApCiAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsCiAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgMHgwMDY0LCAgICAgICAgICAgICAvLyBSYW5nZSBNaW5pbXVtCiAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDY0LCAgICAgICAgICAgICAvLyBS
 YW5nZSBNYXhpbXVtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMSwgICAg
 ICAgICAgICAgICAvLyBBbGlnbm1lbnQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAweDAxLCAgICAgICAgICAgICAgIC8vIExlbmd0aAogICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIElSUU5vRmxhZ3MgKCkK
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7MTJ9CiAgICAgICAgICAgICAgICAg
 ICAgICAgIH0pCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKEtCREksIDB4
 MDEpKQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICBJZiAoTEVxdWFsIChPU0ZMLCAweDAyKSkKICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKEJVRjEpCiAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgSWYgKExFcXVhbCAoT1NGTCwgMHgwMSkpCiAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChCVUYxKQogICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAg
 RWxzZQogICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgIFJldHVybiAoQlVGMikKICAgICAgICAgICAgICAgICAgICAgICAgICAg
 IH0KICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBF
 bHNlCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgIFJldHVybiAoQlVGMSkKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAg
 ICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBEZXZpY2Ug
 KFBTMkspCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0hJ
 RCwgRWlzYUlkICgiUE5QMDMwMyIpKQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1NU
 QSwgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAg
 ICAgICAgICAgICAgIElmIChMRXF1YWwgKEtCREksIDB4MDEpKQogICAgICAgICAgICAgICAg
 ICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MDApCiAg
 ICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQog
 ICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBS
 ZXR1cm4gKDB4MEYpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAg
 ICAgICB9CgogICAgICAgICAgICAgICAgICAgIE5hbWUgKF9DUlMsIFJlc291cmNlVGVtcGxh
 dGUgKCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIElP
 IChEZWNvZGUxNiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDA2MCwgICAgICAg
 ICAgICAgLy8gUmFuZ2UgTWluaW11bQogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgw
 MDYwLCAgICAgICAgICAgICAvLyBSYW5nZSBNYXhpbXVtCiAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAweDAxLCAgICAgICAgICAgICAgIC8vIEFsaWdubWVudAogICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgMHgwMSwgICAgICAgICAgICAgICAvLyBMZW5ndGgKICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29k
 ZTE2LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDY0LCAgICAgICAgICAgICAv
 LyBSYW5nZSBNaW5pbXVtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwNjQsICAg
 ICAgICAgICAgIC8vIFJhbmdlIE1heGltdW0KICAgICAgICAgICAgICAgICAgICAgICAgICAg
 IDB4MDEsICAgICAgICAgICAgICAgLy8gQWxpZ25tZW50CiAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAweDAxLCAgICAgICAgICAgICAgIC8vIExlbmd0aAogICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgICAgICAgICBJUlFOb0ZsYWdzICgpCiAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICB7MX0KICAgICAgICAgICAgICAgICAgICB9KQog
 ICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIERldmljZSAoUFNNUikKICAgICAg
 ICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJQ
 TlAwQzAyIikpCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX1VJRCwgMHgwMykKICAgICAg
 ICAgICAgICAgICAgICBNZXRob2QgKF9TVEEsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAg
 ICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChLQkRJ
 LCAweDAwKSkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgUmV0dXJuICgweDAwKQogICAgICAgICAgICAgICAgICAgICAgICB9CgogICAg
 ICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChQUzJGLCAweDAwKSkKICAgICAgICAg
 ICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVh
 bCAoT1NGTCwgMHgwMikpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDBGKQogICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwg
 KE9TRkwsIDB4MDEpKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwRikKICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MDAp
 CiAgICAgICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIFJl
 dHVybiAoMHgwMCkKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAg
 IE5hbWUgKF9DUlMsIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgICAgICAgICB7
 CiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwKICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgIDB4MDA2MCwgICAgICAgICAgICAgLy8gUmFuZ2UgTWluaW11bQogICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDYwLCAgICAgICAgICAgICAvLyBSYW5nZSBN
 YXhpbXVtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAxLCAgICAgICAgICAgICAg
 IC8vIEFsaWdubWVudAogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMSwgICAgICAg
 ICAgICAgICAvLyBMZW5ndGgKICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKICAgICAg
 ICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LAogICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgMHgwMDY0LCAgICAgICAgICAgICAvLyBSYW5nZSBNaW5pbXVtCiAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAweDAwNjQsICAgICAgICAgICAgIC8vIFJhbmdlIE1heGltdW0K
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEsICAgICAgICAgICAgICAgLy8gQWxp
 Z25tZW50CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAxLCAgICAgICAgICAgICAg
 IC8vIExlbmd0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAg
 ICAgICAgIH0pCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgRGV2aWNlIChQ
 TUlPKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIE5hbWUgKF9ISUQs
 IEVpc2FJZCAoIlBOUDBDMDIiKSkKICAgICAgICAgICAgICAgICAgICBOYW1lIChfVUlELCAw
 eDAyKQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0NSUywgMCwgTm90U2VyaWFsaXpl
 ZCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIE5hbWUg
 KEJVRjAsIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgICAgICAgICAgICAgewog
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LAogICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgIDB4MDQwMCwgICAgICAgICAgICAgLy8gUmFuZ2UgTWluaW11
 bQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDQwMCwgICAgICAgICAgICAg
 Ly8gUmFuZ2UgTWF4aW11bQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEs
 ICAgICAgICAgICAgICAgLy8gQWxpZ25tZW50CiAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgMHg4MCwgICAgICAgICAgICAgICAvLyBMZW5ndGgKICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2Rl
 MTYsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwNTgwLCAgICAgICAgICAg
 ICAvLyBSYW5nZSBNaW5pbXVtCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgw
 NTgwLCAgICAgICAgICAgICAvLyBSYW5nZSBNYXhpbXVtCiAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgMHgwMSwgICAgICAgICAgICAgICAvLyBBbGlnbm1lbnQKICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAweDgwLCAgICAgICAgICAgICAgIC8vIExlbmd0aAog
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICAgICAg
 ICAgfSkKICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChCVUYwKQogICAgICAgICAg
 ICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAg
 ICAgRGV2aWNlIChVU0IwKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBOYW1lIChf
 QURSLCAweDAwMUQwMDAwKQogICAgICAgICAgICAgICAgTWV0aG9kIChfUzNELCAwLCBOb3RT
 ZXJpYWxpemVkKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIElmIChM
 RXF1YWwgKE9TRkwsIDB4MDIpKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgICAgICAgICAgUmV0dXJuICgweDAyKQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAg
 ICAgICAgICAgICAgICAgUmV0dXJuICgweDAzKQogICAgICAgICAgICAgICAgfQoKICAgICAg
 ICAgICAgICAgIE5hbWUgKF9QUlcsIFBhY2thZ2UgKDB4MDIpCiAgICAgICAgICAgICAgICB7
 CiAgICAgICAgICAgICAgICAgICAgMHgwMywgCiAgICAgICAgICAgICAgICAgICAgMHgwMwog
 ICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfQoKICAgICAgICAgICAgRGV2aWNlIChV
 U0IxKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBOYW1lIChfQURSLCAweDAwMUQw
 MDAxKQogICAgICAgICAgICAgICAgTWV0aG9kIChfUzNELCAwLCBOb3RTZXJpYWxpemVkKQog
 ICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKE9TRkws
 IDB4MDIpKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAg
 UmV0dXJuICgweDAyKQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAg
 ICAgUmV0dXJuICgweDAzKQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIE5h
 bWUgKF9QUlcsIFBhY2thZ2UgKDB4MDIpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAg
 ICAgICAgICAgMHgwNCwgCiAgICAgICAgICAgICAgICAgICAgMHgwMwogICAgICAgICAgICAg
 ICAgfSkKICAgICAgICAgICAgfQoKICAgICAgICAgICAgRGV2aWNlIChVU0IyKQogICAgICAg
 ICAgICB7CiAgICAgICAgICAgICAgICBOYW1lIChfQURSLCAweDAwMUQwMDAyKQogICAgICAg
 ICAgICAgICAgTWV0aG9kIChfUzNELCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAg
 ICAgewogICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKE9TRkwsIDB4MDIpKQogICAg
 ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDAy
 KQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgw
 eDAzKQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIE5hbWUgKF9QUlcsIFBh
 Y2thZ2UgKDB4MDIpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgMHgw
 QywgCiAgICAgICAgICAgICAgICAgICAgMHgwMwogICAgICAgICAgICAgICAgfSkKICAgICAg
 ICAgICAgfQoKICAgICAgICAgICAgRGV2aWNlIChVU0IzKQogICAgICAgICAgICB7CiAgICAg
 ICAgICAgICAgICBOYW1lIChfQURSLCAweDAwMUQwMDAzKQogICAgICAgICAgICAgICAgTWV0
 aG9kIChfUzNELCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgewogICAgICAg
 ICAgICAgICAgICAgIElmIChMRXF1YWwgKE9TRkwsIDB4MDIpKQogICAgICAgICAgICAgICAg
 ICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDAyKQogICAgICAgICAg
 ICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDAzKQogICAgICAg
 ICAgICAgICAgfQoKICAgICAgICAgICAgICAgIE5hbWUgKF9QUlcsIFBhY2thZ2UgKDB4MDIp
 CiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgMHgwRSwgCiAgICAgICAg
 ICAgICAgICAgICAgMHgwMwogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfQoKICAg
 ICAgICAgICAgRGV2aWNlIChVU0I0KQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBO
 YW1lIChfQURSLCAweDAwMUEwMDAwKQogICAgICAgICAgICAgICAgTWV0aG9kIChfUzNELCAw
 LCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAg
 IElmIChMRXF1YWwgKE9TRkwsIDB4MDIpKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAg
 ICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDAyKQogICAgICAgICAgICAgICAgICAgIH0K
 CiAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDAzKQogICAgICAgICAgICAgICAgfQoK
 ICAgICAgICAgICAgICAgIE5hbWUgKF9QUlcsIFBhY2thZ2UgKDB4MDIpCiAgICAgICAgICAg
 ICAgICB7CiAgICAgICAgICAgICAgICAgICAgMHgwNSwgCiAgICAgICAgICAgICAgICAgICAg
 MHgwMwogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfQoKICAgICAgICAgICAgRGV2
 aWNlIChVU0I1KQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBOYW1lIChfQURSLCAw
 eDAwMUEwMDAxKQogICAgICAgICAgICAgICAgTWV0aG9kIChfUzNELCAwLCBOb3RTZXJpYWxp
 emVkKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwg
 KE9TRkwsIDB4MDIpKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAg
 ICAgICAgUmV0dXJuICgweDAyKQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAg
 ICAgICAgICAgUmV0dXJuICgweDAzKQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAg
 ICAgIE5hbWUgKF9QUlcsIFBhY2thZ2UgKDB4MDIpCiAgICAgICAgICAgICAgICB7CiAgICAg
 ICAgICAgICAgICAgICAgMHgyMCwgCiAgICAgICAgICAgICAgICAgICAgMHgwMwogICAgICAg
 ICAgICAgICAgfSkKICAgICAgICAgICAgfQoKICAgICAgICAgICAgRGV2aWNlIChVU0I2KQog
 ICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBOYW1lIChfQURSLCAweDAwMUEwMDAyKQog
 ICAgICAgICAgICAgICAgTWV0aG9kIChfUzNELCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAg
 ICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKE9TRkwsIDB4MDIp
 KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJu
 ICgweDAyKQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgUmV0
 dXJuICgweDAzKQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIE5hbWUgKF9Q
 UlcsIFBhY2thZ2UgKDB4MDIpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAg
 ICAgMHgyNSwgCiAgICAgICAgICAgICAgICAgICAgMHgwMwogICAgICAgICAgICAgICAgfSkK
 ICAgICAgICAgICAgfQoKICAgICAgICAgICAgRGV2aWNlIChVU0JFKQogICAgICAgICAgICB7
 CiAgICAgICAgICAgICAgICBOYW1lIChfQURSLCAweDAwMUQwMDA3KQogICAgICAgICAgICAg
 ICAgTWV0aG9kIChfUzNELCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgewog
 ICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKE9TRkwsIDB4MDIpKQogICAgICAgICAg
 ICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDAyKQogICAg
 ICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDAzKQog
 ICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIE5hbWUgKF9QUlcsIFBhY2thZ2Ug
 KDB4MDIpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgMHgwRCwgCiAg
 ICAgICAgICAgICAgICAgICAgMHgwMwogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAg
 fQoKICAgICAgICAgICAgRGV2aWNlIChVU0UyKQogICAgICAgICAgICB7CiAgICAgICAgICAg
 ICAgICBOYW1lIChfQURSLCAweDAwMUEwMDA3KQogICAgICAgICAgICAgICAgTWV0aG9kIChf
 UzNELCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAg
 ICAgICAgIElmIChMRXF1YWwgKE9TRkwsIDB4MDIpKQogICAgICAgICAgICAgICAgICAgIHsK
 ICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDAyKQogICAgICAgICAgICAgICAg
 ICAgIH0KCiAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDAzKQogICAgICAgICAgICAg
 ICAgfQoKICAgICAgICAgICAgICAgIE5hbWUgKF9QUlcsIFBhY2thZ2UgKDB4MDIpCiAgICAg
 ICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgMHgwRCwgCiAgICAgICAgICAgICAg
 ICAgICAgMHgwMwogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfQoKICAgICAgICAg
 ICAgRGV2aWNlIChJREUxKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBOYW1lIChf
 QURSLCAweDAwMUYwMDAyKQogICAgICAgICAgICAgICAgT3BlcmF0aW9uUmVnaW9uIChQQ0ks
 IFBDSV9Db25maWcsIDB4NDAsIDB4MjApCiAgICAgICAgICAgICAgICBGaWVsZCAoUENJLCBE
 V29yZEFjYywgTm9Mb2NrLCBQcmVzZXJ2ZSkKICAgICAgICAgICAgICAgIHsKICAgICAgICAg
 ICAgICAgICAgICBJVE0wLCAgIDE2LCAKICAgICAgICAgICAgICAgICAgICBJVE0xLCAgIDE2
 LCAKICAgICAgICAgICAgICAgICAgICBTSVQwLCAgIDQsIAogICAgICAgICAgICAgICAgICAg
 IFNJVDEsICAgNCwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4MDgp
 LCAKICAgICAgICAgICAgICAgICAgICBVREMwLCAgIDIsIAogICAgICAgICAgICAgICAgICAg
 IFVEQzEsICAgMiwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4MEEp
 LCAKICAgICAgICAgICAgICAgICAgICBVRFQwLCAgIDgsIAogICAgICAgICAgICAgICAgICAg
 IFVEVDEsICAgOCwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4MTQp
 LCAKICAgICAgICAgICAgICAgICAgICBJQ0YwLCAgIDIsIAogICAgICAgICAgICAgICAgICAg
 IElDRjEsICAgMiwgCiAgICAgICAgICAgICAgICAgICAgICAgICwgICA2LCAKICAgICAgICAg
 ICAgICAgICAgICBXUFBFLCAgIDEsIAogICAgICAgICAgICAgICAgICAgICAgICAsICAgMSwg
 CiAgICAgICAgICAgICAgICAgICAgRkFTMCwgICAyLCAKICAgICAgICAgICAgICAgICAgICBG
 QVMxLCAgIDIKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBEZXZpY2UgKFBS
 SU0pCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0FEUiwg
 MHgwMCkKICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9HVE0sIDAsIE5vdFNlcmlhbGl6
 ZWQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBTdG9y
 ZSAoR1RNIChJVE0wLCBTSVQwLCBVREMwLCBVRFQwLCBJQ0YwLCBGQVMwKSwgTG9jYWwwKQog
 ICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKExvY2FsMCkKICAgICAgICAgICAgICAg
 ICAgICB9CgogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1NUTSwgMywgTm90U2VyaWFs
 aXplZCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFN0
 b3JlIChTVE0gKEFyZzAsIEFyZzEsIEFyZzIpLCBMb2NhbDApCiAgICAgICAgICAgICAgICAg
 ICAgICAgIENyZWF0ZURXb3JkRmllbGQgKExvY2FsMCwgMHgwMCwgSVRNKQogICAgICAgICAg
 ICAgICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChMb2NhbDAsIDB4MDQsIFNJVCkKICAg
 ICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoTG9jYWwwLCAweDA4LCBV
 REMpCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKExvY2FsMCwg
 MHgwQywgVURUKQogICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChM
 b2NhbDAsIDB4MTAsIElDRikKICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRG
 aWVsZCAoTG9jYWwwLCAweDE0LCBGQVMpCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Jl
 IChVREMsIFVEQzApCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChVRFQsIFVEVDAp
 CiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChJQ0YsIElDRjApCiAgICAgICAgICAg
 ICAgICAgICAgICAgIFN0b3JlIChGQVMsIEZBUzApCiAgICAgICAgICAgICAgICAgICAgfQoK
 ICAgICAgICAgICAgICAgICAgICBEZXZpY2UgKERSVjApCiAgICAgICAgICAgICAgICAgICAg
 ewogICAgICAgICAgICAgICAgICAgICAgICBOYW1lIChfQURSLCAweDAwKQogICAgICAgICAg
 ICAgICAgICAgICAgICBOYW1lIChIMTVGLCBaZXJvKQogICAgICAgICAgICAgICAgICAgICAg
 ICBNZXRob2QgKF9HVEYsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICAgICAg
 ICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChHVEYwIChJVE0wLCBT
 SVQwLCBVREMwLCBVRFQwLCBJQ0YwLCBIMTVGLCBGQVMwKSwgTG9jYWwwKQogICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgUmV0dXJuIChMb2NhbDApCiAgICAgICAgICAgICAgICAgICAg
 ICAgIH0KICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIERldmlj
 ZSAoRFJWMSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAg
 IE5hbWUgKF9BRFIsIDB4MDEpCiAgICAgICAgICAgICAgICAgICAgICAgIE5hbWUgKEgxNUYs
 IFplcm8pCiAgICAgICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0dURiwgMCwgTm90U2Vy
 aWFsaXplZCkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgU3RvcmUgKEdURjEgKElUTTAsIFNJVDAsIFVEQzAsIFVEVDAsIElDRjAsIEgx
 NUYsIEZBUzApLCBMb2NhbDApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4g
 KExvY2FsMCkKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAg
 IH0KICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBEZXZpY2UgKFNFQ0QpCiAg
 ICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0FEUiwgMHgwMSkK
 ICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9HVE0sIDAsIE5vdFNlcmlhbGl6ZWQpCiAg
 ICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoR1RN
 IChJVE0xLCBTSVQxLCBVREMxLCBVRFQxLCBJQ0YxLCBGQVMxKSwgTG9jYWwwKQogICAgICAg
 ICAgICAgICAgICAgICAgICBSZXR1cm4gKExvY2FsMCkKICAgICAgICAgICAgICAgICAgICB9
 CgogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1NUTSwgMywgTm90U2VyaWFsaXplZCkK
 ICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChT
 VE0gKEFyZzAsIEFyZzEsIEFyZzIpLCBMb2NhbDApCiAgICAgICAgICAgICAgICAgICAgICAg
 IENyZWF0ZURXb3JkRmllbGQgKExvY2FsMCwgMHgwMCwgSVRNKQogICAgICAgICAgICAgICAg
 ICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChMb2NhbDAsIDB4MDQsIFNJVCkKICAgICAgICAg
 ICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoTG9jYWwwLCAweDA4LCBVREMpCiAg
 ICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKExvY2FsMCwgMHgwQywg
 VURUKQogICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChMb2NhbDAs
 IDB4MTAsIElDRikKICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAo
 TG9jYWwwLCAweDE0LCBGQVMpCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChVREMs
 IFVEQzEpCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChVRFQsIFVEVDEpCiAgICAg
 ICAgICAgICAgICAgICAgICAgIFN0b3JlIChJQ0YsIElDRjEpCiAgICAgICAgICAgICAgICAg
 ICAgICAgIFN0b3JlIChGQVMsIEZBUzEpCiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAg
 ICAgICAgICAgICAgICBEZXZpY2UgKERSVjApCiAgICAgICAgICAgICAgICAgICAgewogICAg
 ICAgICAgICAgICAgICAgICAgICBOYW1lIChfQURSLCAweDAwKQogICAgICAgICAgICAgICAg
 ICAgICAgICBOYW1lIChIMTVGLCBaZXJvKQogICAgICAgICAgICAgICAgICAgICAgICBNZXRo
 b2QgKF9HVEYsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICAgICAgICAgIHsK
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChHVEYwIChJVE0xLCBTSVQxLCBV
 REMxLCBVRFQxLCBJQ0YxLCBIMTVGLCBGQVMxKSwgTG9jYWwwKQogICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgUmV0dXJuIChMb2NhbDApCiAgICAgICAgICAgICAgICAgICAgICAgIH0K
 ICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIERldmljZSAoRFJW
 MSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIE5hbWUg
 KF9BRFIsIDB4MDEpCiAgICAgICAgICAgICAgICAgICAgICAgIE5hbWUgKEgxNUYsIFplcm8p
 CiAgICAgICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0dURiwgMCwgTm90U2VyaWFsaXpl
 ZCkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgU3RvcmUgKEdURjEgKElUTTEsIFNJVDEsIFVEQzEsIFVEVDEsIElDRjEsIEgxNUYsIEZB
 UzEpLCBMb2NhbDApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKExvY2Fs
 MCkKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAg
 ICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgRGV2aWNlIChJREUy
 KQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBOYW1lIChfQURSLCAweDAwMUYwMDA1
 KQogICAgICAgICAgICAgICAgT3BlcmF0aW9uUmVnaW9uIChQQ0ksIFBDSV9Db25maWcsIDB4
 NDAsIDB4MjApCiAgICAgICAgICAgICAgICBGaWVsZCAoUENJLCBEV29yZEFjYywgTm9Mb2Nr
 LCBQcmVzZXJ2ZSkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBJVE0w
 LCAgIDE2LCAKICAgICAgICAgICAgICAgICAgICBJVE0xLCAgIDE2LCAKICAgICAgICAgICAg
 ICAgICAgICBTSVQwLCAgIDQsIAogICAgICAgICAgICAgICAgICAgIFNJVDEsICAgNCwgCiAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4MDgpLCAKICAgICAgICAgICAg
 ICAgICAgICBVREMwLCAgIDEsIAogICAgICAgICAgICAgICAgICAgICAgICAsICAgMSwgCiAg
 ICAgICAgICAgICAgICAgICAgVURDMSwgICAxLCAKICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgIE9mZnNldCAoMHgwQSksIAogICAgICAgICAgICAgICAgICAgIFVEVDAsICAgOCwgCiAg
 ICAgICAgICAgICAgICAgICAgVURUMSwgICA4LCAKICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgIE9mZnNldCAoMHgxNCksIAogICAgICAgICAgICAgICAgICAgIElDRjAsICAgMiwgCiAg
 ICAgICAgICAgICAgICAgICAgSUNGMSwgICAyLCAKICAgICAgICAgICAgICAgICAgICAgICAg
 LCAgIDYsIAogICAgICAgICAgICAgICAgICAgIFdQUEUsICAgMSwgCiAgICAgICAgICAgICAg
 ICAgICAgICAgICwgICAxLCAKICAgICAgICAgICAgICAgICAgICBGQVMwLCAgIDIsIAogICAg
 ICAgICAgICAgICAgICAgIEZBUzEsICAgMgogICAgICAgICAgICAgICAgfQoKICAgICAgICAg
 ICAgICAgIERldmljZSAoUFJJTSkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg
 ICAgICBOYW1lIChfQURSLCAweDAwKQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0dU
 TSwgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAg
 ICAgICAgICAgICAgIFN0b3JlIChHVE0gKElUTTAsIFNJVDAsIFVEQzAsIFVEVDAsIElDRjAs
 IEZBUzApLCBMb2NhbDApCiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoTG9jYWww
 KQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChf
 U1RNLCAzLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAg
 ICAgICAgICAgICAgICAgU3RvcmUgKFNUTSAoQXJnMCwgQXJnMSwgQXJnMiksIExvY2FsMCkK
 ICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoTG9jYWwwLCAweDAw
 LCBJVE0pCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKExvY2Fs
 MCwgMHgwNCwgU0lUKQogICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxk
 IChMb2NhbDAsIDB4MDgsIFVEQykKICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlRFdv
 cmRGaWVsZCAoTG9jYWwwLCAweDBDLCBVRFQpCiAgICAgICAgICAgICAgICAgICAgICAgIENy
 ZWF0ZURXb3JkRmllbGQgKExvY2FsMCwgMHgxMCwgSUNGKQogICAgICAgICAgICAgICAgICAg
 ICAgICBDcmVhdGVEV29yZEZpZWxkIChMb2NhbDAsIDB4MTQsIEZBUykKICAgICAgICAgICAg
 ICAgICAgICAgICAgU3RvcmUgKFVEQywgVURDMCkKICAgICAgICAgICAgICAgICAgICAgICAg
 U3RvcmUgKFVEVCwgVURUMCkKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKElDRiwg
 SUNGMCkKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEZBUywgRkFTMCkKICAgICAg
 ICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIERldmljZSAoRFJWMCkKICAg
 ICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIE5hbWUgKF9BRFIs
 IDB4MDApCiAgICAgICAgICAgICAgICAgICAgICAgIE5hbWUgKEgxNUYsIFplcm8pCiAgICAg
 ICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0dURiwgMCwgTm90U2VyaWFsaXplZCkKICAg
 ICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3Rv
 cmUgKEdURjAgKElUTTAsIFNJVDAsIFVEQzAsIFVEVDAsIElDRjAsIEgxNUYsIEZBUzApLCBM
 b2NhbDApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKExvY2FsMCkKICAg
 ICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAg
 ICAgICAgICAgICAgRGV2aWNlIChEUlYxKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAg
 ICAgICAgICAgICAgICAgICAgTmFtZSAoX0FEUiwgMHgwMSkKICAgICAgICAgICAgICAgICAg
 ICAgICAgTmFtZSAoSDE1RiwgWmVybykKICAgICAgICAgICAgICAgICAgICAgICAgTWV0aG9k
 IChfR1RGLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgICAgICAgICB7CiAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoR1RGMSAoSVRNMCwgU0lUMCwgVURD
 MCwgVURUMCwgSUNGMCwgSDE1RiwgRkFTMCksIExvY2FsMCkKICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgIFJldHVybiAoTG9jYWwwKQogICAgICAgICAgICAgICAgICAgICAgICB9CiAg
 ICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAg
 IERldmljZSAoU0VDRCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBO
 YW1lIChfQURSLCAweDAxKQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0dUTSwgMCwg
 Tm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAg
 ICAgICAgIFN0b3JlIChHVE0gKElUTTEsIFNJVDEsIFVEQzEsIFVEVDEsIElDRjEsIEZBUzEp
 LCBMb2NhbDApCiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoTG9jYWwwKQogICAg
 ICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfU1RNLCAz
 LCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg
 ICAgICAgICAgU3RvcmUgKFNUTSAoQXJnMCwgQXJnMSwgQXJnMiksIExvY2FsMCkKICAgICAg
 ICAgICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoTG9jYWwwLCAweDAwLCBJVE0p
 CiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKExvY2FsMCwgMHgw
 NCwgU0lUKQogICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChMb2Nh
 bDAsIDB4MDgsIFVEQykKICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVs
 ZCAoTG9jYWwwLCAweDBDLCBVRFQpCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZURX
 b3JkRmllbGQgKExvY2FsMCwgMHgxMCwgSUNGKQogICAgICAgICAgICAgICAgICAgICAgICBD
 cmVhdGVEV29yZEZpZWxkIChMb2NhbDAsIDB4MTQsIEZBUykKICAgICAgICAgICAgICAgICAg
 ICAgICAgU3RvcmUgKFVEQywgVURDMSkKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUg
 KFVEVCwgVURUMSkKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKElDRiwgSUNGMSkK
 ICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEZBUywgRkFTMSkKICAgICAgICAgICAg
 ICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIERldmljZSAoRFJWMCkKICAgICAgICAg
 ICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIE5hbWUgKF9BRFIsIDB4MDAp
 CiAgICAgICAgICAgICAgICAgICAgICAgIE5hbWUgKEgxNUYsIFplcm8pCiAgICAgICAgICAg
 ICAgICAgICAgICAgIE1ldGhvZCAoX0dURiwgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAg
 ICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEdU
 RjAgKElUTTEsIFNJVDEsIFVEQzEsIFVEVDEsIElDRjEsIEgxNUYsIEZBUzEpLCBMb2NhbDAp
 CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKExvY2FsMCkKICAgICAgICAg
 ICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAg
 ICAgICAgRGV2aWNlIChEUlYxKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgICAgICAgICAgTmFtZSAoX0FEUiwgMHgwMSkKICAgICAgICAgICAgICAgICAgICAgICAg
 TmFtZSAoSDE1RiwgWmVybykKICAgICAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfR1RG
 LCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICBTdG9yZSAoR1RGMSAoSVRNMSwgU0lUMSwgVURDMSwgVURU
 MSwgSUNGMSwgSDE1RiwgRkFTMSksIExvY2FsMCkKICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgIFJldHVybiAoTG9jYWwwKQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAg
 ICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAg
 ICAgICBNZXRob2QgKEdUTSwgNiwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgewogICAg
 ICAgICAgICAgICAgU3RvcmUgKEJ1ZmZlciAoMHgxNCkge30sIExvY2FsMCkKICAgICAgICAg
 ICAgICAgIENyZWF0ZURXb3JkRmllbGQgKExvY2FsMCwgMHgwMCwgUElPMCkKICAgICAgICAg
 ICAgICAgIENyZWF0ZURXb3JkRmllbGQgKExvY2FsMCwgMHgwNCwgRE1BMCkKICAgICAgICAg
 ICAgICAgIENyZWF0ZURXb3JkRmllbGQgKExvY2FsMCwgMHgwOCwgUElPMSkKICAgICAgICAg
 ICAgICAgIENyZWF0ZURXb3JkRmllbGQgKExvY2FsMCwgMHgwQywgRE1BMSkKICAgICAgICAg
 ICAgICAgIENyZWF0ZURXb3JkRmllbGQgKExvY2FsMCwgMHgxMCwgRkxBRykKICAgICAgICAg
 ICAgICAgIFN0b3JlICgweDEwLCBGTEFHKQogICAgICAgICAgICAgICAgSWYgKExPciAoQW5k
 IChBcmcwLCAweDA4KSwgTE5vdCAoQW5kIChBcmcwLCAweDAxCiAgICAgICAgICAgICAgICAg
 ICAgKSkpKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIFN0b3JlICgw
 eDAzODQsIFBJTzApCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBFbHNlCiAg
 ICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgQWRkIChTaGlmdFJpZ2h0IChB
 bmQgKEFyZzAsIDB4MDMwMCksIDB4MDgpLCBTaGlmdFJpZ2h0IChBbmQgKAogICAgICAgICAg
 ICAgICAgICAgICAgICBBcmcwLCAweDMwMDApLCAweDBDKSwgTG9jYWwxKQogICAgICAgICAg
 ICAgICAgICAgIE11bHRpcGx5IChTdWJ0cmFjdCAoMHgwOSwgTG9jYWwxKSwgMHgxRSwgUElP
 MCkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBJZiAoTE9yIChMQW5kIChB
 cmcwLCAweDQwMDApLCBMQW5kIChBcmcyLCAweDAxKSkpCiAgICAgICAgICAgICAgICB7CiAg
 ICAgICAgICAgICAgICAgICAgSWYgKExPciAoQW5kIChBcmcwLCAweDgwKSwgTE5vdCAoQW5k
 IChBcmcwLCAweDEwCiAgICAgICAgICAgICAgICAgICAgICAgICkpKSkKICAgICAgICAgICAg
 ICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAzODQsIFBJTzEp
 CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIEVsc2UKICAgICAg
 ICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIEFkZCAoQW5kIChBcmcx
 LCAweDAzKSwgU2hpZnRSaWdodCAoQW5kIChBcmcxLCAweDBDKSwgCiAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAweDAyKSwgTG9jYWwxKQogICAgICAgICAgICAgICAgICAgICAgICBN
 dWx0aXBseSAoU3VidHJhY3QgKDB4MDksIExvY2FsMSksIDB4MUUsIFBJTzEpCiAgICAgICAg
 ICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgRWxzZQog
 ICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIFN0b3JlIChQSU8wLCBQSU8x
 KQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIElmIChBbmQgKEFyZzIsIDB4
 MDEpKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIFN1YnRyYWN0ICgw
 eDA0LCBBbmQgKEFyZzMsIDB4MDMpLCBMb2NhbDEpCiAgICAgICAgICAgICAgICAgICAgSWYg
 KEFuZCAoQXJnNSwgMHgwMSkpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAg
 ICAgICAgICAgICBTdG9yZSAoMHgxNCwgRE1BMCkKICAgICAgICAgICAgICAgICAgICB9CiAg
 ICAgICAgICAgICAgICAgICAgRWxzZQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAg
 ICAgICAgICAgICAgICAgSWYgKEFuZCAoQXJnNCwgMHgwMSkpCiAgICAgICAgICAgICAgICAg
 ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIE11bHRpcGx5IChMb2NhbDEs
 IDB4MEYsIERNQTApCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAg
 ICAgICAgICAgRWxzZQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICBNdWx0aXBseSAoTG9jYWwxLCAweDFFLCBETUEwKQogICAgICAgICAg
 ICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAg
 fQogICAgICAgICAgICAgICAgRWxzZQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAg
 ICAgICAgIFN0b3JlIChQSU8wLCBETUEwKQogICAgICAgICAgICAgICAgfQoKICAgICAgICAg
 ICAgICAgIElmIChMT3IgKExBbmQgKEFyZzAsIDB4NDAwMCksIExBbmQgKEFyZzIsIDB4MDEp
 KSkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChBcmcy
 LCAweDAyKSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAg
 IFN1YnRyYWN0ICgweDA0LCBTaGlmdFJpZ2h0IChBbmQgKEFyZzMsIDB4MzApLCAweDA0KSwg
 TG9jYWwxKQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChBcmc1LCAweDAyKSkK
 ICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAg
 U3RvcmUgKDB4MTQsIERNQTEpCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAg
 ICAgICAgICAgICAgICAgRWxzZQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChBcmc0LCAweDAyKSkKICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBNdWx0
 aXBseSAoTG9jYWwxLCAweDBGLCBETUExKQogICAgICAgICAgICAgICAgICAgICAgICAgICAg
 fQogICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQogICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE11bHRpcGx5IChM
 b2NhbDEsIDB4MUUsIERNQTEpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAg
 ICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAg
 ICAgICAgICAgRWxzZQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAg
 ICAgICAgU3RvcmUgKFBJTzEsIERNQTEpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAg
 ICAgICAgICAgfQogICAgICAgICAgICAgICAgRWxzZQogICAgICAgICAgICAgICAgewogICAg
 ICAgICAgICAgICAgICAgIFN0b3JlIChETUEwLCBETUExKQogICAgICAgICAgICAgICAgfQoK
 ICAgICAgICAgICAgICAgIFN0b3JlIChaZXJvLCBGTEFHKQogICAgICAgICAgICAgICAgSWYg
 KEFuZCAoQXJnMCwgMHgwMSkpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAg
 ICAgT3IgKEZMQUcsIDB4MTAsIEZMQUcpCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAg
 ICAgICAgSWYgKEFuZCAoQXJnMiwgMHgwMSkpCiAgICAgICAgICAgICAgICB7CiAgICAgICAg
 ICAgICAgICAgICAgT3IgKEZMQUcsIDB4MDEsIEZMQUcpCiAgICAgICAgICAgICAgICB9Cgog
 ICAgICAgICAgICAgICAgSWYgKEFuZCAoQXJnMCwgMHgwMikpCiAgICAgICAgICAgICAgICB7
 CiAgICAgICAgICAgICAgICAgICAgT3IgKEZMQUcsIDB4MDIsIEZMQUcpCiAgICAgICAgICAg
 ICAgICB9CgogICAgICAgICAgICAgICAgSWYgKEFuZCAoQXJnMiwgMHgwMikpCiAgICAgICAg
 ICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgT3IgKEZMQUcsIDB4MDQsIEZMQUcpCiAg
 ICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgSWYgKEFuZCAoQXJnMCwgMHgyMCkp
 CiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgT3IgKEZMQUcsIDB4MDgs
 IEZMQUcpCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgUmV0dXJuIChMb2Nh
 bDApCiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIE1ldGhvZCAoU1RNLCAzLCBOb3RTZXJp
 YWxpemVkKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBTdG9yZSAoQnVmZmVyICgw
 eDE4KSB7fSwgTG9jYWw3KQogICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoTG9j
 YWw3LCAweDAwLCBJVE0pCiAgICAgICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChMb2Nh
 bDcsIDB4MDQsIFNJVCkKICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKExvY2Fs
 NywgMHgwOCwgVURDKQogICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoTG9jYWw3
 LCAweDBDLCBVRFQpCiAgICAgICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChMb2NhbDcs
 IDB4MTAsIElDRikKICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKExvY2FsNywg
 MHgxNCwgRkFTKQogICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQXJnMCwgMHgw
 MCwgUElPMCkKICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKEFyZzAsIDB4MDQs
 IERNQTApCiAgICAgICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChBcmcwLCAweDA4LCBQ
 SU8xKQogICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQXJnMCwgMHgwQywgRE1B
 MSkKICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKEFyZzAsIDB4MTAsIEZMQUcp
 CiAgICAgICAgICAgICAgICBTdG9yZSAoRkxBRywgTG9jYWw0KQogICAgICAgICAgICAgICAg
 U3RvcmUgKDB4ODAwMCwgTG9jYWwwKQogICAgICAgICAgICAgICAgSWYgKEFuZCAoTG9jYWw0
 LCAweDAyKSkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBPciAoTG9j
 YWwwLCAweDA3LCBMb2NhbDApCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAg
 SWYgKEFuZCAoTG9jYWw0LCAweDA4KSkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgICAgICBPciAoTG9jYWwwLCAweDQwMDAsIExvY2FsMCkKICAgICAgICAgICAgICAgICAg
 ICBPciAoTG9jYWwwLCAweDcwLCBMb2NhbDApCiAgICAgICAgICAgICAgICB9CgogICAgICAg
 ICAgICAgICAgSWYgKExBbmQgKExMZXNzIChETUEwLCBQSU8wKSwgTE5vdCAoQW5kIChMb2Nh
 bDQsIDB4MDEpKSkpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgT3Ig
 KExvY2FsMCwgMHgwOCwgTG9jYWwwKQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAg
 ICAgIElmIChMQW5kIChMTGVzcyAoRE1BMSwgUElPMSksIExOb3QgKEFuZCAoTG9jYWw0LCAw
 eDA0KSkpKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIE9yIChMb2Nh
 bDAsIDB4ODAsIExvY2FsMCkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBJ
 ZiAoUElPMCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBJZiAoTExl
 c3MgKFBJTzAsIDB4MDM4NCkpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAg
 ICAgICAgICAgICBPciAoTG9jYWwwLCAweDAxLCBMb2NhbDApCiAgICAgICAgICAgICAgICAg
 ICAgfQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIElmIChQSU8xKQogICAg
 ICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIElmIChMTGVzcyAoUElPMSwgMHgw
 Mzg0KSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIE9y
 IChMb2NhbDAsIDB4MTAsIExvY2FsMCkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAg
 ICAgICAgICB9CgogICAgICAgICAgICAgICAgSWYgKEFuZCAoTG9jYWw0LCAweDAxKSkKICAg
 ICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBTdG9yZSAoUElPMCwgTG9jYWwx
 KQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgRWxzZQogICAgICAgICAgICAg
 ICAgewogICAgICAgICAgICAgICAgICAgIFN0b3JlIChETUEwLCBMb2NhbDEpCiAgICAgICAg
 ICAgICAgICB9CgogICAgICAgICAgICAgICAgSWYgKExvY2FsMSkKICAgICAgICAgICAgICAg
 IHsKICAgICAgICAgICAgICAgICAgICBJZiAoTExlc3NFcXVhbCAoTG9jYWwxLCAweDc4KSkK
 ICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIE9yIChMb2Nh
 bDAsIDB4MjMwMCwgTG9jYWwwKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAg
 ICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAg
 ICAgICBJZiAoTExlc3NFcXVhbCAoTG9jYWwxLCAweEI0KSkKICAgICAgICAgICAgICAgICAg
 ICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgT3IgKExvY2FsMCwgMHgyMTAw
 LCBMb2NhbDApCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAg
 ICAgICAgRWxzZQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICBJZiAoTExlc3NFcXVhbCAoTG9jYWwxLCAweEYwKSkKICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPciAo
 TG9jYWwwLCAweDEwMDAsIExvY2FsMCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0K
 ICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAg
 ICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBTdG9yZSAoTG9jYWwwLCBJVE0pCiAgICAg
 ICAgICAgICAgICBTdG9yZSAoWmVybywgTG9jYWwwKQogICAgICAgICAgICAgICAgSWYgKEFu
 ZCAoTG9jYWw0LCAweDA0KSkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAg
 ICBTdG9yZSAoUElPMSwgTG9jYWwxKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAg
 ICAgRWxzZQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIFN0b3JlIChE
 TUExLCBMb2NhbDEpCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgSWYgKExv
 Y2FsMSkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBJZiAoTExlc3NF
 cXVhbCAoTG9jYWwxLCAweDc4KSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAg
 ICAgICAgICAgICAgIFN0b3JlICgweDBCLCBMb2NhbDApCiAgICAgICAgICAgICAgICAgICAg
 fQogICAgICAgICAgICAgICAgICAgIEVsc2UKICAgICAgICAgICAgICAgICAgICB7CiAgICAg
 ICAgICAgICAgICAgICAgICAgIElmIChMTGVzc0VxdWFsIChMb2NhbDEsIDB4QjQpKQogICAg
 ICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9y
 ZSAoMHgwOSwgTG9jYWwwKQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAg
 ICAgICAgICAgICAgIEVsc2UKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgSWYgKExMZXNzRXF1YWwgKExvY2FsMSwgMHhGMCkpCiAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgU3RvcmUgKDB4MDQsIExvY2FsMCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0K
 ICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAg
 ICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBTdG9yZSAoTG9jYWwwLCBTSVQpCiAgICAg
 ICAgICAgICAgICBTdG9yZSAoMHgwMCwgTG9jYWwwKQogICAgICAgICAgICAgICAgSWYgKEFu
 ZCAoTG9jYWw0LCAweDAxKSkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAg
 ICBPciAoTG9jYWwwLCAweDAxLCBMb2NhbDApCiAgICAgICAgICAgICAgICB9CgogICAgICAg
 ICAgICAgICAgSWYgKEFuZCAoTG9jYWw0LCAweDA0KSkKICAgICAgICAgICAgICAgIHsKICAg
 ICAgICAgICAgICAgICAgICBPciAoTG9jYWwwLCAweDAyLCBMb2NhbDApCiAgICAgICAgICAg
 ICAgICB9CgogICAgICAgICAgICAgICAgU3RvcmUgKExvY2FsMCwgVURDKQogICAgICAgICAg
 ICAgICAgU3RvcmUgKDB4MDAsIExvY2FsMCkKICAgICAgICAgICAgICAgIElmIChBbmQgKExv
 Y2FsNCwgMHgwMSkpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgSWYg
 KExFcXVhbCAoRE1BMCwgMHgxNCkpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAg
 ICAgICAgICAgICAgICBTdG9yZSAoMHgwMSwgTG9jYWwwKQogICAgICAgICAgICAgICAgICAg
 IH0KICAgICAgICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICAgICAgewogICAg
 ICAgICAgICAgICAgICAgICAgICBJZiAoTExlc3MgKERNQTAsIDB4M0MpKQogICAgICAgICAg
 ICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBEaXZpZGUgKERN
 QTAsIDB4MEYsICwgTG9jYWwxKQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAg
 ICAgICAgICAgICAgICAgIEVsc2UKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgRGl2aWRlIChETUEwLCAweDFFLCAsIExvY2FsMSkKICAg
 ICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgU3VidHJh
 Y3QgKDB4MDQsIExvY2FsMSwgTG9jYWwwKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAg
 ICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBJZiAoQW5kIChMb2NhbDQsIDB4MDQpKQog
 ICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKERNQTEs
 IDB4MTQpKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAg
 U3RvcmUgKDB4MDEsIExvY2FsMSkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAg
 ICAgICAgICAgRWxzZQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAg
 ICAgICAgSWYgKExMZXNzIChETUExLCAweDNDKSkKICAgICAgICAgICAgICAgICAgICAgICAg
 ewogICAgICAgICAgICAgICAgICAgICAgICAgICAgRGl2aWRlIChETUExLCAweDBGLCAsIExv
 Y2FsMSkKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAg
 ICBFbHNlCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgIERpdmlkZSAoRE1BMSwgMHgxRSwgLCBMb2NhbDEpCiAgICAgICAgICAgICAgICAg
 ICAgICAgIH0KCiAgICAgICAgICAgICAgICAgICAgICAgIFN1YnRyYWN0ICgweDA0LCBMb2Nh
 bDEsIExvY2FsMSkKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAg
 IFNoaWZ0TGVmdCAoTG9jYWwxLCAweDA0LCBMb2NhbDEpCiAgICAgICAgICAgICAgICAgICAg
 T3IgKExvY2FsMCwgTG9jYWwxLCBMb2NhbDApCiAgICAgICAgICAgICAgICB9CgogICAgICAg
 ICAgICAgICAgU3RvcmUgKExvY2FsMCwgVURUKQogICAgICAgICAgICAgICAgU3RvcmUgKDB4
 MDAsIExvY2FsMCkKICAgICAgICAgICAgICAgIElmIChETUEwKQogICAgICAgICAgICAgICAg
 ewogICAgICAgICAgICAgICAgICAgIElmIChMR3JlYXRlciAoRE1BMCwgMHgxNCkpCiAgICAg
 ICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTExlc3MgKERN
 QTAsIDB4M0MpKQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICBPciAoTG9jYWwwLCAweDAxLCBMb2NhbDApCiAgICAgICAgICAgICAgICAg
 ICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CgogICAg
 ICAgICAgICAgICAgSWYgKERNQTEpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg
 ICAgICAgSWYgKExHcmVhdGVyIChETUExLCAweDE0KSkKICAgICAgICAgICAgICAgICAgICB7
 CiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMTGVzcyAoRE1BMSwgMHgzQykpCiAgICAg
 ICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9yIChM
 b2NhbDAsIDB4MDIsIExvY2FsMCkKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAg
 ICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBTdG9y
 ZSAoTG9jYWwwLCBJQ0YpCiAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMCwgTG9jYWwwKQog
 ICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoRE1BMCwgMHgxNCkpCiAgICAgICAgICAgICAg
 ICB7CiAgICAgICAgICAgICAgICAgICAgT3IgKExvY2FsMCwgMHgwMSwgTG9jYWwwKQogICAg
 ICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKERNQTEsIDB4MTQp
 KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIE9yIChMb2NhbDAsIDB4
 MDIsIExvY2FsMCkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBTdG9yZSAo
 TG9jYWwwLCBGQVMpCiAgICAgICAgICAgICAgICBSZXR1cm4gKExvY2FsNykKICAgICAgICAg
 ICAgfQoKICAgICAgICAgICAgTWV0aG9kIChIMTVQLCAxLCBOb3RTZXJpYWxpemVkKQogICAg
 ICAgICAgICB7CiAgICAgICAgICAgICAgICBOYW1lIChCVUZGLCBCdWZmZXIgKDB4MDgpCiAg
 ICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgLyogMDAwMCAqLyAgICAweDAw
 LCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwCiAgICAgICAgICAg
 ICAgICB9KQogICAgICAgICAgICAgICAgU3RvcmUgKEFyZzAsIExvY2FsMCkKICAgICAgICAg
 ICAgICAgIFN0b3JlIChCVUZGLCBMb2NhbDEpCiAgICAgICAgICAgICAgICBDb25jYXRlbmF0
 ZSAoTG9jYWwwLCBMb2NhbDEsIExvY2FsNykKICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRG
 aWVsZCAoTG9jYWw3LCAweDAyLCBDWUwpCiAgICAgICAgICAgICAgICBDcmVhdGVXb3JkRmll
 bGQgKExvY2FsNywgMHgwNiwgSEVBRCkKICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVs
 ZCAoTG9jYWw3LCAweDBDLCBTUFQpCiAgICAgICAgICAgICAgICBJZiAoTEFuZCAoTEdyZWF0
 ZXJFcXVhbCAoSEVBRCwgMHgxMCksIExHcmVhdGVyRXF1YWwgKENZTCwgMHgyMDAwKSkpCiAg
 ICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChTUFQpCiAgICAg
 ICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICB7CiAg
 ICAgICAgICAgICAgICAgICAgUmV0dXJuIChaZXJvKQogICAgICAgICAgICAgICAgfQogICAg
 ICAgICAgICB9CgogICAgICAgICAgICBNZXRob2QgKEdURjAsIDcsIE5vdFNlcmlhbGl6ZWQp
 CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIFN0b3JlIChCdWZmZXIgKDB4MDcpCiAg
 ICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAweDAzLCAweDAw
 LCAweDAwLCAweDAwLCAweDAwLCAweEEwLCAweEVGCiAgICAgICAgICAgICAgICAgICAgfSwg
 TG9jYWw3KQogICAgICAgICAgICAgICAgQ3JlYXRlQnl0ZUZpZWxkIChMb2NhbDcsIDB4MDEs
 IE1PREUpCiAgICAgICAgICAgICAgICBJZiAoQW5kIChBcmcyLCAweDAxKSkKICAgICAgICAg
 ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBBbmQgKEFyZzMsIDB4MDMsIExvY2FsMCkK
 ICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChBcmc2LCAweDAxKSkKICAgICAgICAgICAg
 ICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIEFkZCAoTG9jYWwwLCAweDA0LCBM
 b2NhbDApCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIEVsc2UK
 ICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIElmIChBbmQg
 KEFyZzQsIDB4MDEpKQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICBBZGQgKExvY2FsMCwgMHgwMiwgTG9jYWwwKQogICAgICAgICAgICAg
 ICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAg
 ICBPciAoTG9jYWwwLCAweDQwLCBNT0RFKQogICAgICAgICAgICAgICAgfQogICAgICAgICAg
 ICAgICAgRWxzZQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIEFkZCAo
 U2hpZnRSaWdodCAoQW5kIChBcmcwLCAweDAzMDApLCAweDA4KSwgU2hpZnRSaWdodCAoQW5k
 ICgKICAgICAgICAgICAgICAgICAgICAgICAgQXJnMCwgMHgzMDAwKSwgMHgwQyksIExvY2Fs
 MCkKICAgICAgICAgICAgICAgICAgICBJZiAoTEdyZWF0ZXJFcXVhbCAoTG9jYWwwLCAweDA1
 KSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Jl
 ICgweDIyLCBNT0RFKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAg
 ICBFbHNlCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBJ
 ZiAoTEdyZWF0ZXJFcXVhbCAoTG9jYWwwLCAweDAzKSkKICAgICAgICAgICAgICAgICAgICAg
 ICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MjEsIE1PREUpCiAg
 ICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQog
 ICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBT
 dG9yZSAoMHgyMCwgTU9ERSkKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAg
 ICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBDb25jYXRl
 bmF0ZSAoTG9jYWw3LCBMb2NhbDcsIExvY2FsNikKICAgICAgICAgICAgICAgIElmIChMT3Ig
 KEFuZCAoQXJnMCwgMHgwOCksIExOb3QgKEFuZCAoQXJnMCwgMHgwMQogICAgICAgICAgICAg
 ICAgICAgICkpKSkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBJZiAo
 QW5kIChBcmcwLCAweDAyKSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg
 ICAgICAgICAgIFN0b3JlICgweDAwLCBNT0RFKQogICAgICAgICAgICAgICAgICAgIH0KICAg
 ICAgICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAg
 ICAgICAgICAgICAgICBTdG9yZSAoMHgwMSwgTU9ERSkKICAgICAgICAgICAgICAgICAgICB9
 CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAgICAg
 ICB7CiAgICAgICAgICAgICAgICAgICAgQWRkIChTaGlmdFJpZ2h0IChBbmQgKEFyZzAsIDB4
 MDMwMCksIDB4MDgpLCBTaGlmdFJpZ2h0IChBbmQgKAogICAgICAgICAgICAgICAgICAgICAg
 ICBBcmcwLCAweDMwMDApLCAweDBDKSwgTG9jYWwwKQogICAgICAgICAgICAgICAgICAgIElm
 IChMR3JlYXRlckVxdWFsIChMb2NhbDAsIDB4MDUpKQogICAgICAgICAgICAgICAgICAgIHsK
 ICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MEMsIE1PREUpCiAgICAgICAgICAg
 ICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIEVsc2UKICAgICAgICAgICAgICAgICAg
 ICB7CiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMR3JlYXRlckVxdWFsIChMb2NhbDAs
 IDB4MDMpKQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICBTdG9yZSAoMHgwQiwgTU9ERSkKICAgICAgICAgICAgICAgICAgICAgICAgfQog
 ICAgICAgICAgICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICAgICAgICAgIHsK
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDBBLCBNT0RFKQogICAgICAg
 ICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAg
 ICAgfQoKICAgICAgICAgICAgICAgIENvbmNhdGVuYXRlIChMb2NhbDYsIExvY2FsNywgTG9j
 YWw1KQogICAgICAgICAgICAgICAgSWYgKEFyZzUpCiAgICAgICAgICAgICAgICB7CiAgICAg
 ICAgICAgICAgICAgICAgU3RvcmUgKEJ1ZmZlciAoMHgwNykKICAgICAgICAgICAgICAgICAg
 ICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMCwgMHgwMCwgMHgwMCwg
 MHgwMCwgMHgwMCwgMHhBRSwgMHg5MQogICAgICAgICAgICAgICAgICAgICAgICB9LCBMb2Nh
 bDQpCiAgICAgICAgICAgICAgICAgICAgQ3JlYXRlQnl0ZUZpZWxkIChMb2NhbDQsIDB4MDEs
 IFNQVCkKICAgICAgICAgICAgICAgICAgICBTdG9yZSAoQXJnNSwgU1BUKQogICAgICAgICAg
 ICAgICAgICAgIENvbmNhdGVuYXRlIChMb2NhbDUsIExvY2FsNCwgTG9jYWw2KQogICAgICAg
 ICAgICAgICAgICAgIFJldHVybiAoTG9jYWw2KQogICAgICAgICAgICAgICAgfQogICAgICAg
 ICAgICAgICAgRWxzZQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIFJl
 dHVybiAoTG9jYWw1KQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAg
 ICAgICBNZXRob2QgKEdURjEsIDcsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgIHsKICAg
 ICAgICAgICAgICAgIFN0b3JlIChCdWZmZXIgKDB4MDcpCiAgICAgICAgICAgICAgICAgICAg
 ewogICAgICAgICAgICAgICAgICAgICAgICAweDAzLCAweDAwLCAweDAwLCAweDAwLCAweDAw
 LCAweEIwLCAweEVGCiAgICAgICAgICAgICAgICAgICAgfSwgTG9jYWw3KQogICAgICAgICAg
 ICAgICAgQ3JlYXRlQnl0ZUZpZWxkIChMb2NhbDcsIDB4MDEsIE1PREUpCiAgICAgICAgICAg
 ICAgICBJZiAoQW5kIChBcmcyLCAweDAyKSkKICAgICAgICAgICAgICAgIHsKICAgICAgICAg
 ICAgICAgICAgICBTaGlmdFJpZ2h0IChBbmQgKEFyZzMsIDB4MzApLCAweDA0LCBMb2NhbDAp
 CiAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoQXJnNiwgMHgwMikpCiAgICAgICAgICAg
 ICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBBZGQgKExvY2FsMCwgMHgwNCwg
 TG9jYWwwKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBFbHNl
 CiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBJZiAoQW5k
 IChBcmc0LCAweDAyKSkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgQWRkIChMb2NhbDAsIDB4MDIsIExvY2FsMCkKICAgICAgICAgICAg
 ICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAg
 ICAgT3IgKExvY2FsMCwgMHg0MCwgTU9ERSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAg
 ICAgICAgIEVsc2UKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBBZGQg
 KFNoaWZ0UmlnaHQgKEFuZCAoQXJnMSwgMHgwMyksIDB4MDIpLCBBbmQgKEFyZzEsIAogICAg
 ICAgICAgICAgICAgICAgICAgICAweDBDKSwgTG9jYWwwKQogICAgICAgICAgICAgICAgICAg
 IElmIChMR3JlYXRlckVxdWFsIChMb2NhbDAsIDB4MDUpKQogICAgICAgICAgICAgICAgICAg
 IHsKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MjIsIE1PREUpCiAgICAgICAg
 ICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIEVsc2UKICAgICAgICAgICAgICAg
 ICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMR3JlYXRlckVxdWFsIChMb2Nh
 bDAsIDB4MDMpKQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICBTdG9yZSAoMHgyMSwgTU9ERSkKICAgICAgICAgICAgICAgICAgICAgICAg
 fQogICAgICAgICAgICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICAgICAgICAg
 IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDIwLCBNT0RFKQogICAg
 ICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAg
 ICAgICAgfQoKICAgICAgICAgICAgICAgIENvbmNhdGVuYXRlIChMb2NhbDcsIExvY2FsNywg
 TG9jYWw2KQogICAgICAgICAgICAgICAgSWYgKExPciAoQW5kIChBcmcwLCAweDgwKSwgTE5v
 dCAoQW5kIChBcmcwLCAweDEwCiAgICAgICAgICAgICAgICAgICAgKSkpKQogICAgICAgICAg
 ICAgICAgewogICAgICAgICAgICAgICAgICAgIElmIChBbmQgKEFyZzAsIDB4MjApKQogICAg
 ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDAs
 IE1PREUpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIEVsc2UK
 ICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgw
 eDAxLCBNT0RFKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAg
 ICAgICAgICAgICAgIEVsc2UKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAg
 ICBBZGQgKFNoaWZ0UmlnaHQgKEFuZCAoQXJnMSwgMHgwMyksIDB4MDIpLCBBbmQgKEFyZzEs
 IAogICAgICAgICAgICAgICAgICAgICAgICAweDBDKSwgTG9jYWwwKQogICAgICAgICAgICAg
 ICAgICAgIElmIChMR3JlYXRlckVxdWFsIChMb2NhbDAsIDB4MDUpKQogICAgICAgICAgICAg
 ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MEMsIE1PREUpCiAg
 ICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIEVsc2UKICAgICAgICAg
 ICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMR3JlYXRlckVxdWFs
 IChMb2NhbDAsIDB4MDMpKQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwQiwgTU9ERSkKICAgICAgICAgICAgICAgICAg
 ICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICAg
 ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDBBLCBNT0RF
 KQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQogICAg
 ICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIENvbmNhdGVuYXRlIChMb2NhbDYsIExv
 Y2FsNywgTG9jYWw1KQogICAgICAgICAgICAgICAgSWYgKEFyZzUpCiAgICAgICAgICAgICAg
 ICB7CiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEJ1ZmZlciAoMHgwNykKICAgICAgICAg
 ICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMCwgMHgw
 MCwgMHgwMCwgMHgwMCwgMHgwMCwgMHhCRSwgMHg5MQogICAgICAgICAgICAgICAgICAgICAg
 ICB9LCBMb2NhbDQpCiAgICAgICAgICAgICAgICAgICAgQ3JlYXRlQnl0ZUZpZWxkIChMb2Nh
 bDQsIDB4MDEsIFNQVCkKICAgICAgICAgICAgICAgICAgICBTdG9yZSAoQXJnNSwgU1BUKQog
 ICAgICAgICAgICAgICAgICAgIENvbmNhdGVuYXRlIChMb2NhbDUsIExvY2FsNCwgTG9jYWw2
 KQogICAgICAgICAgICAgICAgICAgIFJldHVybiAoTG9jYWw2KQogICAgICAgICAgICAgICAg
 fQogICAgICAgICAgICAgICAgRWxzZQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAg
 ICAgICAgIFJldHVybiAoTG9jYWw1KQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9
 CgogICAgICAgICAgICBEZXZpY2UgKFBYNDMpCiAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgIE5hbWUgKF9BRFIsIDB4MDAxRjAwMDMpCiAgICAgICAgICAgICAgICBPcGVyYXRpb25S
 ZWdpb24gKFBCQVMsIFBDSV9Db25maWcsIDB4MjAsIDB4MDIpCiAgICAgICAgICAgICAgICBG
 aWVsZCAoUEJBUywgQnl0ZUFjYywgTm9Mb2NrLCBQcmVzZXJ2ZSkKICAgICAgICAgICAgICAg
 IHsKICAgICAgICAgICAgICAgICAgICBCQVMwLCAgIDE2CiAgICAgICAgICAgICAgICB9Cgog
 ICAgICAgICAgICAgICAgTWV0aG9kIChTTUJCLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAg
 ICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIEFuZCAoQkFTMCwgMHhGRkZFLCBMb2Nh
 bDApCiAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChMb2NhbDApCiAgICAgICAgICAgICAg
 ICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIERldmljZSAoQVpBTCkKICAgICAgICAg
 ICAgewogICAgICAgICAgICAgICAgTmFtZSAoX0FEUiwgMHgwMDFCMDAwMCkKICAgICAgICAg
 ICAgICAgIE1ldGhvZCAoX1BSVywgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAg
 IHsKICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKFBhY2thZ2UgKDB4MDIpCiAgICAgICAg
 ICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAweDBELCAKICAgICAgICAg
 ICAgICAgICAgICAgICAgMHgwNQogICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAg
 ICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIE5hbWUgKEJVRkEsIFJlc291cmNl
 VGVtcGxhdGUgKCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgSVJRIChMZXZlbCwg
 QWN0aXZlTG93LCBTaGFyZWQsICkKICAgICAgICAgICAgICAgICAgICB7Myw0LDUsNiw3LDks
 MTAsMTEsMTIsMTQsMTV9CiAgICAgICAgICAgIH0pCiAgICAgICAgICAgIE5hbWUgKEJVRkIs
 IFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgSVJR
 IChMZXZlbCwgQWN0aXZlTG93LCBTaGFyZWQsIF9ZMEEpCiAgICAgICAgICAgICAgICAgICAg
 e30KICAgICAgICAgICAgfSkKICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChCVUZCLCBc
 X1NCLlBDSTAuX1kwQS5fSU5ULCBJUlFWKQogICAgICAgICAgICBEZXZpY2UgKExOS0EpCiAg
 ICAgICAgICAgIHsKICAgICAgICAgICAgICAgIE5hbWUgKF9ISUQsIEVpc2FJZCAoIlBOUDBD
 MEYiKSkKICAgICAgICAgICAgICAgIE5hbWUgKF9VSUQsIDB4MDEpCiAgICAgICAgICAgICAg
 ICBNZXRob2QgKF9TVEEsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICB7CiAg
 ICAgICAgICAgICAgICAgICAgQW5kIChQSVJBLCAweDgwLCBMb2NhbDApCiAgICAgICAgICAg
 ICAgICAgICAgSWYgKExFcXVhbCAoTG9jYWwwLCAweDgwKSkKICAgICAgICAgICAgICAgICAg
 ICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwOSkKICAgICAgICAgICAg
 ICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgRWxzZQogICAgICAgICAgICAgICAgICAg
 IHsKICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDBCKQogICAgICAgICAgICAg
 ICAgICAgIH0KICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBNZXRob2QgKF9Q
 UlMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg
 ICAgICAgUmV0dXJuIChCVUZBKQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAg
 IE1ldGhvZCAoX0RJUywgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgIHsKICAg
 ICAgICAgICAgICAgICAgICBPciAoUElSQSwgMHg4MCwgUElSQSkKICAgICAgICAgICAgICAg
 IH0KCiAgICAgICAgICAgICAgICBNZXRob2QgKF9DUlMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAg
 ICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgQW5kIChQSVJBLCAweDBGLCBM
 b2NhbDApCiAgICAgICAgICAgICAgICAgICAgU2hpZnRMZWZ0ICgweDAxLCBMb2NhbDAsIElS
 UVYpCiAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChCVUZCKQogICAgICAgICAgICAgICAg
 fQoKICAgICAgICAgICAgICAgIE1ldGhvZCAoX1NSUywgMSwgTm90U2VyaWFsaXplZCkKICAg
 ICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKEFy
 ZzAsIDB4MDEsIElSUTEpCiAgICAgICAgICAgICAgICAgICAgRmluZFNldFJpZ2h0Qml0IChJ
 UlExLCBMb2NhbDApCiAgICAgICAgICAgICAgICAgICAgRGVjcmVtZW50IChMb2NhbDApCiAg
 ICAgICAgICAgICAgICAgICAgU3RvcmUgKExvY2FsMCwgUElSQSkKICAgICAgICAgICAgICAg
 IH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgRGV2aWNlIChMTktCKQogICAgICAgICAg
 ICB7CiAgICAgICAgICAgICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJQTlAwQzBGIikpCiAg
 ICAgICAgICAgICAgICBOYW1lIChfVUlELCAweDAyKQogICAgICAgICAgICAgICAgTWV0aG9k
 IChfU1RBLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgewogICAgICAgICAg
 ICAgICAgICAgIEFuZCAoUElSQiwgMHg4MCwgTG9jYWwwKQogICAgICAgICAgICAgICAgICAg
 IElmIChMRXF1YWwgKExvY2FsMCwgMHg4MCkpCiAgICAgICAgICAgICAgICAgICAgewogICAg
 ICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MDkpCiAgICAgICAgICAgICAgICAgICAg
 fQogICAgICAgICAgICAgICAgICAgIEVsc2UKICAgICAgICAgICAgICAgICAgICB7CiAgICAg
 ICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwQikKICAgICAgICAgICAgICAgICAgICB9
 CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgTWV0aG9kIChfUFJTLCAwLCBO
 b3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIFJl
 dHVybiAoQlVGQSkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBNZXRob2Qg
 KF9ESVMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAg
 ICAgICAgICAgT3IgKFBJUkIsIDB4ODAsIFBJUkIpCiAgICAgICAgICAgICAgICB9CgogICAg
 ICAgICAgICAgICAgTWV0aG9kIChfQ1JTLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAg
 ICAgICAgewogICAgICAgICAgICAgICAgICAgIEFuZCAoUElSQiwgMHgwRiwgTG9jYWwwKQog
 ICAgICAgICAgICAgICAgICAgIFNoaWZ0TGVmdCAoMHgwMSwgTG9jYWwwLCBJUlFWKQogICAg
 ICAgICAgICAgICAgICAgIFJldHVybiAoQlVGQikKICAgICAgICAgICAgICAgIH0KCiAgICAg
 ICAgICAgICAgICBNZXRob2QgKF9TUlMsIDEsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAg
 ICAgICB7CiAgICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChBcmcwLCAweDAx
 LCBJUlExKQogICAgICAgICAgICAgICAgICAgIEZpbmRTZXRSaWdodEJpdCAoSVJRMSwgTG9j
 YWwwKQogICAgICAgICAgICAgICAgICAgIERlY3JlbWVudCAoTG9jYWwwKQogICAgICAgICAg
 ICAgICAgICAgIFN0b3JlIChMb2NhbDAsIFBJUkIpCiAgICAgICAgICAgICAgICB9CiAgICAg
 ICAgICAgIH0KCiAgICAgICAgICAgIERldmljZSAoTE5LQykKICAgICAgICAgICAgewogICAg
 ICAgICAgICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMEMwRiIpKQogICAgICAgICAg
 ICAgICAgTmFtZSAoX1VJRCwgMHgwMykKICAgICAgICAgICAgICAgIE1ldGhvZCAoX1NUQSwg
 MCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAg
 ICBBbmQgKFBJUkMsIDB4ODAsIExvY2FsMCkKICAgICAgICAgICAgICAgICAgICBJZiAoTEVx
 dWFsIChMb2NhbDAsIDB4ODApKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgICAgICAgICAgUmV0dXJuICgweDA5KQogICAgICAgICAgICAgICAgICAgIH0KICAgICAg
 ICAgICAgICAgICAgICBFbHNlCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAg
 ICAgICAgICAgICBSZXR1cm4gKDB4MEIpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAg
 ICAgICAgICAgfQoKICAgICAgICAgICAgICAgIE1ldGhvZCAoX1BSUywgMCwgTm90U2VyaWFs
 aXplZCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKEJV
 RkEpCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgTWV0aG9kIChfRElTLCAw
 LCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAg
 IE9yIChQSVJDLCAweDgwLCBQSVJDKQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAg
 ICAgIE1ldGhvZCAoX0NSUywgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgIHsK
 ICAgICAgICAgICAgICAgICAgICBBbmQgKFBJUkMsIDB4MEYsIExvY2FsMCkKICAgICAgICAg
 ICAgICAgICAgICBTaGlmdExlZnQgKDB4MDEsIExvY2FsMCwgSVJRVikKICAgICAgICAgICAg
 ICAgICAgICBSZXR1cm4gKEJVRkIpCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAg
 ICAgTWV0aG9kIChfU1JTLCAxLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgewog
 ICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoQXJnMCwgMHgwMSwgSVJRMSkK
 ICAgICAgICAgICAgICAgICAgICBGaW5kU2V0UmlnaHRCaXQgKElSUTEsIExvY2FsMCkKICAg
 ICAgICAgICAgICAgICAgICBEZWNyZW1lbnQgKExvY2FsMCkKICAgICAgICAgICAgICAgICAg
 ICBTdG9yZSAoTG9jYWwwLCBQSVJDKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9
 CgogICAgICAgICAgICBEZXZpY2UgKExOS0QpCiAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgIE5hbWUgKF9ISUQsIEVpc2FJZCAoIlBOUDBDMEYiKSkKICAgICAgICAgICAgICAgIE5h
 bWUgKF9VSUQsIDB4MDQpCiAgICAgICAgICAgICAgICBNZXRob2QgKF9TVEEsIDAsIE5vdFNl
 cmlhbGl6ZWQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgQW5kIChQ
 SVJELCAweDgwLCBMb2NhbDApCiAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoTG9j
 YWwwLCAweDgwKSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAg
 ICAgIFJldHVybiAoMHgwOSkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAg
 ICAgICAgRWxzZQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAg
 ICAgUmV0dXJuICgweDBCKQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAg
 IH0KCiAgICAgICAgICAgICAgICBNZXRob2QgKF9QUlMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAg
 ICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChCVUZBKQogICAg
 ICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIE1ldGhvZCAoX0RJUywgMCwgTm90U2Vy
 aWFsaXplZCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBPciAoUElS
 RCwgMHg4MCwgUElSRCkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBNZXRo
 b2QgKF9DUlMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAg
 ICAgICAgICAgICAgQW5kIChQSVJELCAweDBGLCBMb2NhbDApCiAgICAgICAgICAgICAgICAg
 ICAgU2hpZnRMZWZ0ICgweDAxLCBMb2NhbDAsIElSUVYpCiAgICAgICAgICAgICAgICAgICAg
 UmV0dXJuIChCVUZCKQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIE1ldGhv
 ZCAoX1NSUywgMSwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAg
 ICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKEFyZzAsIDB4MDEsIElSUTEpCiAgICAgICAg
 ICAgICAgICAgICAgRmluZFNldFJpZ2h0Qml0IChJUlExLCBMb2NhbDApCiAgICAgICAgICAg
 ICAgICAgICAgRGVjcmVtZW50IChMb2NhbDApCiAgICAgICAgICAgICAgICAgICAgU3RvcmUg
 KExvY2FsMCwgUElSRCkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAg
 ICAgICAgRGV2aWNlIChMTktFKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBOYW1l
 IChfSElELCBFaXNhSWQgKCJQTlAwQzBGIikpCiAgICAgICAgICAgICAgICBOYW1lIChfVUlE
 LCAweDA1KQogICAgICAgICAgICAgICAgTWV0aG9kIChfU1RBLCAwLCBOb3RTZXJpYWxpemVk
 KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIEFuZCAoUElSRSwgMHg4
 MCwgTG9jYWwwKQogICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKExvY2FsMCwgMHg4
 MCkpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBSZXR1
 cm4gKDB4MDkpCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIEVs
 c2UKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVy
 biAoMHgwQikKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CgogICAg
 ICAgICAgICAgICAgTWV0aG9kIChfUFJTLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAg
 ICAgICAgewogICAgICAgICAgICAgICAgICAgIFJldHVybiAoQlVGQSkKICAgICAgICAgICAg
 ICAgIH0KCiAgICAgICAgICAgICAgICBNZXRob2QgKF9ESVMsIDAsIE5vdFNlcmlhbGl6ZWQp
 CiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgT3IgKFBJUkUsIDB4ODAs
 IFBJUkUpCiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgTWV0aG9kIChfQ1JT
 LCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAg
 ICAgIEFuZCAoUElSRSwgMHgwRiwgTG9jYWwwKQogICAgICAgICAgICAgICAgICAgIFNoaWZ0
 TGVmdCAoMHgwMSwgTG9jYWwwLCBJUlFWKQogICAgICAgICAgICAgICAgICAgIFJldHVybiAo
 QlVGQikKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBNZXRob2QgKF9TUlMs
 IDEsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAg
 ICAgQ3JlYXRlV29yZEZpZWxkIChBcmcwLCAweDAxLCBJUlExKQogICAgICAgICAgICAgICAg
 ICAgIEZpbmRTZXRSaWdodEJpdCAoSVJRMSwgTG9jYWwwKQogICAgICAgICAgICAgICAgICAg
 IERlY3JlbWVudCAoTG9jYWwwKQogICAgICAgICAgICAgICAgICAgIFN0b3JlIChMb2NhbDAs
 IFBJUkUpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIERl
 dmljZSAoTE5LRikKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgTmFtZSAoX0hJRCwg
 RWlzYUlkICgiUE5QMEMwRiIpKQogICAgICAgICAgICAgICAgTmFtZSAoX1VJRCwgMHgwNikK
 ICAgICAgICAgICAgICAgIE1ldGhvZCAoX1NUQSwgMCwgTm90U2VyaWFsaXplZCkKICAgICAg
 ICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBBbmQgKFBJUkYsIDB4ODAsIExvY2Fs
 MCkKICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChMb2NhbDAsIDB4ODApKQogICAg
 ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDA5
 KQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBFbHNlCiAgICAg
 ICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MEIp
 CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAg
 ICAgIE1ldGhvZCAoX1BSUywgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgIHsK
 ICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKEJVRkEpCiAgICAgICAgICAgICAgICB9Cgog
 ICAgICAgICAgICAgICAgTWV0aG9kIChfRElTLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAg
 ICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIE9yIChQSVJGLCAweDgwLCBQSVJGKQog
 ICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIE1ldGhvZCAoX0NSUywgMCwgTm90
 U2VyaWFsaXplZCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBBbmQg
 KFBJUkYsIDB4MEYsIExvY2FsMCkKICAgICAgICAgICAgICAgICAgICBTaGlmdExlZnQgKDB4
 MDEsIExvY2FsMCwgSVJRVikKICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKEJVRkIpCiAg
 ICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgTWV0aG9kIChfU1JTLCAxLCBOb3RT
 ZXJpYWxpemVkKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIENyZWF0
 ZVdvcmRGaWVsZCAoQXJnMCwgMHgwMSwgSVJRMSkKICAgICAgICAgICAgICAgICAgICBGaW5k
 U2V0UmlnaHRCaXQgKElSUTEsIExvY2FsMCkKICAgICAgICAgICAgICAgICAgICBEZWNyZW1l
 bnQgKExvY2FsMCkKICAgICAgICAgICAgICAgICAgICBTdG9yZSAoTG9jYWwwLCBQSVJGKQog
 ICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICBEZXZpY2UgKExO
 SzApCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIE5hbWUgKF9ISUQsIEVpc2FJZCAo
 IlBOUDBDMEYiKSkKICAgICAgICAgICAgICAgIE5hbWUgKF9VSUQsIDB4MDcpCiAgICAgICAg
 ICAgICAgICBNZXRob2QgKF9TVEEsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAg
 ICB7CiAgICAgICAgICAgICAgICAgICAgQW5kIChQSVJHLCAweDgwLCBMb2NhbDApCiAgICAg
 ICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoTG9jYWwwLCAweDgwKSkKICAgICAgICAgICAg
 ICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwOSkKICAgICAg
 ICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgRWxzZQogICAgICAgICAgICAg
 ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDBCKQogICAgICAg
 ICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBNZXRo
 b2QgKF9QUlMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAg
 ICAgICAgICAgICAgUmV0dXJuIChCVUZBKQogICAgICAgICAgICAgICAgfQoKICAgICAgICAg
 ICAgICAgIE1ldGhvZCAoX0RJUywgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAgICAg
 IHsKICAgICAgICAgICAgICAgICAgICBPciAoUElSRywgMHg4MCwgUElSRykKICAgICAgICAg
 ICAgICAgIH0KCiAgICAgICAgICAgICAgICBNZXRob2QgKF9DUlMsIDAsIE5vdFNlcmlhbGl6
 ZWQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgQW5kIChQSVJHLCAw
 eDBGLCBMb2NhbDApCiAgICAgICAgICAgICAgICAgICAgU2hpZnRMZWZ0ICgweDAxLCBMb2Nh
 bDAsIElSUVYpCiAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChCVUZCKQogICAgICAgICAg
 ICAgICAgfQoKICAgICAgICAgICAgICAgIE1ldGhvZCAoX1NSUywgMSwgTm90U2VyaWFsaXpl
 ZCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBDcmVhdGVXb3JkRmll
 bGQgKEFyZzAsIDB4MDEsIElSUTEpCiAgICAgICAgICAgICAgICAgICAgRmluZFNldFJpZ2h0
 Qml0IChJUlExLCBMb2NhbDApCiAgICAgICAgICAgICAgICAgICAgRGVjcmVtZW50IChMb2Nh
 bDApCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKExvY2FsMCwgUElSRykKICAgICAgICAg
 ICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgRGV2aWNlIChMTksxKQogICAg
 ICAgICAgICB7CiAgICAgICAgICAgICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJQTlAwQzBG
 IikpCiAgICAgICAgICAgICAgICBOYW1lIChfVUlELCAweDA4KQogICAgICAgICAgICAgICAg
 TWV0aG9kIChfU1RBLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgewogICAg
 ICAgICAgICAgICAgICAgIEFuZCAoUElSSCwgMHg4MCwgTG9jYWwwKQogICAgICAgICAgICAg
 ICAgICAgIElmIChMRXF1YWwgKExvY2FsMCwgMHg4MCkpCiAgICAgICAgICAgICAgICAgICAg
 ewogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MDkpCiAgICAgICAgICAgICAg
 ICAgICAgfQogICAgICAgICAgICAgICAgICAgIEVsc2UKICAgICAgICAgICAgICAgICAgICB7
 CiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwQikKICAgICAgICAgICAgICAg
 ICAgICB9CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgTWV0aG9kIChfUFJT
 LCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAg
 ICAgIFJldHVybiAoQlVGQSkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBN
 ZXRob2QgKF9ESVMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgICAgICB7CiAgICAg
 ICAgICAgICAgICAgICAgT3IgKFBJUkgsIDB4ODAsIFBJUkgpCiAgICAgICAgICAgICAgICB9
 CgogICAgICAgICAgICAgICAgTWV0aG9kIChfQ1JTLCAwLCBOb3RTZXJpYWxpemVkKQogICAg
 ICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIEFuZCAoUElSSCwgMHgwRiwgTG9j
 YWwwKQogICAgICAgICAgICAgICAgICAgIFNoaWZ0TGVmdCAoMHgwMSwgTG9jYWwwLCBJUlFW
 KQogICAgICAgICAgICAgICAgICAgIFJldHVybiAoQlVGQikKICAgICAgICAgICAgICAgIH0K
 CiAgICAgICAgICAgICAgICBNZXRob2QgKF9TUlMsIDEsIE5vdFNlcmlhbGl6ZWQpCiAgICAg
 ICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChBcmcw
 LCAweDAxLCBJUlExKQogICAgICAgICAgICAgICAgICAgIEZpbmRTZXRSaWdodEJpdCAoSVJR
 MSwgTG9jYWwwKQogICAgICAgICAgICAgICAgICAgIERlY3JlbWVudCAoTG9jYWwwKQogICAg
 ICAgICAgICAgICAgICAgIFN0b3JlIChMb2NhbDAsIFBJUkgpCiAgICAgICAgICAgICAgICB9
 CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIE1ldGhvZCAoX1BSVywgMCwgTm90U2VyaWFs
 aXplZCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgUmV0dXJuIChQYWNrYWdlICgw
 eDAyKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIDB4MEIsIAogICAg
 ICAgICAgICAgICAgICAgIDB4MDUKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0K
 ICAgICAgICB9CgogICAgICAgIERldmljZSAoTUVNKQogICAgICAgIHsKICAgICAgICAgICAg
 TmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMEMwMSIpKQogICAgICAgICAgICBNZXRob2QgKF9D
 UlMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIE5h
 bWUgKEJVRjAsIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgICAgIHsKICAgICAg
 ICAgICAgICAgICAgICBNZW1vcnkzMkZpeGVkIChSZWFkV3JpdGUsCiAgICAgICAgICAgICAg
 ICAgICAgICAgIDB4MDAwRjAwMDAsICAgICAgICAgLy8gQWRkcmVzcyBCYXNlCiAgICAgICAg
 ICAgICAgICAgICAgICAgIDB4MDAwMDQwMDAsICAgICAgICAgLy8gQWRkcmVzcyBMZW5ndGgK
 ICAgICAgICAgICAgICAgICAgICAgICAgX1kwQykKICAgICAgICAgICAgICAgICAgICBNZW1v
 cnkzMkZpeGVkIChSZWFkV3JpdGUsCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwRjQw
 MDAsICAgICAgICAgLy8gQWRkcmVzcyBCYXNlCiAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MDAwMDQwMDAsICAgICAgICAgLy8gQWRkcmVzcyBMZW5ndGgKICAgICAgICAgICAgICAgICAg
 ICAgICAgX1kwRCkKICAgICAgICAgICAgICAgICAgICBNZW1vcnkzMkZpeGVkIChSZWFkV3Jp
 dGUsCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwRjgwMDAsICAgICAgICAgLy8gQWRk
 cmVzcyBCYXNlCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDQwMDAsICAgICAgICAg
 Ly8gQWRkcmVzcyBMZW5ndGgKICAgICAgICAgICAgICAgICAgICAgICAgX1kwRSkKICAgICAg
 ICAgICAgICAgICAgICBNZW1vcnkzMkZpeGVkIChSZWFkV3JpdGUsCiAgICAgICAgICAgICAg
 ICAgICAgICAgIDB4MDAwRkMwMDAsICAgICAgICAgLy8gQWRkcmVzcyBCYXNlCiAgICAgICAg
 ICAgICAgICAgICAgICAgIDB4MDAwMDQwMDAsICAgICAgICAgLy8gQWRkcmVzcyBMZW5ndGgK
 ICAgICAgICAgICAgICAgICAgICAgICAgX1kwRikKICAgICAgICAgICAgICAgICAgICBNZW1v
 cnkzMkZpeGVkIChSZWFkV3JpdGUsCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAw
 MDAsICAgICAgICAgLy8gQWRkcmVzcyBCYXNlCiAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MDAwMTAwMDAsICAgICAgICAgLy8gQWRkcmVzcyBMZW5ndGgKICAgICAgICAgICAgICAgICAg
 ICAgICAgX1kwQikKICAgICAgICAgICAgICAgICAgICBNZW1vcnkzMkZpeGVkIChSZWFkV3Jp
 dGUsCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAsICAgICAgICAgLy8gQWRk
 cmVzcyBCYXNlCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwQTAwMDAsICAgICAgICAg
 Ly8gQWRkcmVzcyBMZW5ndGgKICAgICAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAg
 ICAgICAgICAgIE1lbW9yeTMyRml4ZWQgKFJlYWRXcml0ZSwKICAgICAgICAgICAgICAgICAg
 ICAgICAgMHgwMDEwMDAwMCwgICAgICAgICAvLyBBZGRyZXNzIEJhc2UKICAgICAgICAgICAg
 ICAgICAgICAgICAgMHgwMDAwMDAwMCwgICAgICAgICAvLyBBZGRyZXNzIExlbmd0aAogICAg
 ICAgICAgICAgICAgICAgICAgICBfWTExKQogICAgICAgICAgICAgICAgICAgIE1lbW9yeTMy
 Rml4ZWQgKFJlYWRXcml0ZSwKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwg
 ICAgICAgICAvLyBBZGRyZXNzIEJhc2UKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAw
 MDAwMCwgICAgICAgICAvLyBBZGRyZXNzIExlbmd0aAogICAgICAgICAgICAgICAgICAgICAg
 ICBfWTEyKQogICAgICAgICAgICAgICAgICAgIE1lbW9yeTMyRml4ZWQgKFJlYWRXcml0ZSwK
 ICAgICAgICAgICAgICAgICAgICAgICAgMHhGRUMwMDAwMCwgICAgICAgICAvLyBBZGRyZXNz
 IEJhc2UKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMTAwMCwgICAgICAgICAvLyBB
 ZGRyZXNzIExlbmd0aAogICAgICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAg
 ICAgICAgTWVtb3J5MzJGaXhlZCAoUmVhZFdyaXRlLAogICAgICAgICAgICAgICAgICAgICAg
 ICAweEZFRDEwMDAwLCAgICAgICAgIC8vIEFkZHJlc3MgQmFzZQogICAgICAgICAgICAgICAg
 ICAgICAgICAweDAwMDBFMDAwLCAgICAgICAgIC8vIEFkZHJlc3MgTGVuZ3RoCiAgICAgICAg
 ICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgICAgICBNZW1vcnkzMkZpeGVkIChS
 ZWFkV3JpdGUsCiAgICAgICAgICAgICAgICAgICAgICAgIDB4RkVEMjAwMDAsICAgICAgICAg
 Ly8gQWRkcmVzcyBCYXNlCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwNzAwMDAsICAg
 ICAgICAgLy8gQWRkcmVzcyBMZW5ndGgKICAgICAgICAgICAgICAgICAgICAgICAgKQogICAg
 ICAgICAgICAgICAgICAgIE1lbW9yeTMyRml4ZWQgKFJlYWRXcml0ZSwKICAgICAgICAgICAg
 ICAgICAgICAgICAgMHhGRUUwMDAwMCwgICAgICAgICAvLyBBZGRyZXNzIEJhc2UKICAgICAg
 ICAgICAgICAgICAgICAgICAgMHgwMDAwMTAwMCwgICAgICAgICAvLyBBZGRyZXNzIExlbmd0
 aAogICAgICAgICAgICAgICAgICAgICAgICApCiAgICAgICAgICAgICAgICAgICAgTWVtb3J5
 MzJGaXhlZCAoUmVhZFdyaXRlLAogICAgICAgICAgICAgICAgICAgICAgICAweEZGQjAwMDAw
 LCAgICAgICAgIC8vIEFkZHJlc3MgQmFzZQogICAgICAgICAgICAgICAgICAgICAgICAweDAw
 MDgwMDAwLCAgICAgICAgIC8vIEFkZHJlc3MgTGVuZ3RoCiAgICAgICAgICAgICAgICAgICAg
 ICAgICkKICAgICAgICAgICAgICAgICAgICBNZW1vcnkzMkZpeGVkIChSZWFkV3JpdGUsCiAg
 ICAgICAgICAgICAgICAgICAgICAgIDB4RkZGMDAwMDAsICAgICAgICAgLy8gQWRkcmVzcyBC
 YXNlCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAxMDAwMDAsICAgICAgICAgLy8gQWRk
 cmVzcyBMZW5ndGgKICAgICAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAg
 ICAgIE1lbW9yeTMyRml4ZWQgKFJlYWRXcml0ZSwKICAgICAgICAgICAgICAgICAgICAgICAg
 MHgwMDBFMDAwMCwgICAgICAgICAvLyBBZGRyZXNzIEJhc2UKICAgICAgICAgICAgICAgICAg
 ICAgICAgMHgwMDAxMDAwMCwgICAgICAgICAvLyBBZGRyZXNzIExlbmd0aAogICAgICAgICAg
 ICAgICAgICAgICAgICBfWTEwKQogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAg
 IENyZWF0ZURXb3JkRmllbGQgKEJVRjAsIFxfU0IuTUVNLl9DUlMuX1kwQi5fQkFTLCBBQ01N
 KQogICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQlVGMCwgXF9TQi5NRU0uX0NS
 Uy5fWTBDLl9CQVMsIFJNQTEpCiAgICAgICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChC
 VUYwLCBcX1NCLk1FTS5fQ1JTLl9ZMEMuX0xFTiwgUlNTMSkKICAgICAgICAgICAgICAgIENy
 ZWF0ZURXb3JkRmllbGQgKEJVRjAsIFxfU0IuTUVNLl9DUlMuX1kwRC5fQkFTLCBSTUEyKQog
 ICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQlVGMCwgXF9TQi5NRU0uX0NSUy5f
 WTBELl9MRU4sIFJTUzIpCiAgICAgICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChCVUYw
 LCBcX1NCLk1FTS5fQ1JTLl9ZMEUuX0JBUywgUk1BMykKICAgICAgICAgICAgICAgIENyZWF0
 ZURXb3JkRmllbGQgKEJVRjAsIFxfU0IuTUVNLl9DUlMuX1kwRS5fTEVOLCBSU1MzKQogICAg
 ICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQlVGMCwgXF9TQi5NRU0uX0NSUy5fWTBG
 Ll9CQVMsIFJNQTQpCiAgICAgICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChCVUYwLCBc
 X1NCLk1FTS5fQ1JTLl9ZMEYuX0xFTiwgUlNTNCkKICAgICAgICAgICAgICAgIENyZWF0ZURX
 b3JkRmllbGQgKEJVRjAsIFxfU0IuTUVNLl9DUlMuX1kxMC5fQkFTLCBFUk1BKQogICAgICAg
 ICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQlVGMCwgXF9TQi5NRU0uX0NSUy5fWTEwLl9M
 RU4sIEVSTVMpCiAgICAgICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChCVUYwLCBcX1NC
 Lk1FTS5fQ1JTLl9ZMTEuX0xFTiwgRVhUTSkKICAgICAgICAgICAgICAgIENyZWF0ZURXb3Jk
 RmllbGQgKEJVRjAsIFxfU0IuTUVNLl9DUlMuX1kxMi5fQkFTLCBVU01BKQogICAgICAgICAg
 ICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQlVGMCwgXF9TQi5NRU0uX0NSUy5fWTEyLl9MRU4s
 IFVTTVMpCiAgICAgICAgICAgICAgICBBZGQgKEFNRU0sIDB4MDAwMTAwMDAsIFVTTUEpCiAg
 ICAgICAgICAgICAgICBBZGQgKFVTTVMsIDB4MDAwMjAwMDAsIFVTTVMpCiAgICAgICAgICAg
 ICAgICBTdWJ0cmFjdCAoQU1FTSwgMHgwMDEwMDAwMCwgRVhUTSkKICAgICAgICAgICAgICAg
 IElmIChMTm90RXF1YWwgKFJPTTEsIFplcm8pKQogICAgICAgICAgICAgICAgewogICAgICAg
 ICAgICAgICAgICAgIFN0b3JlIChSTUExLCBSTUEyKQogICAgICAgICAgICAgICAgICAgIFNo
 aWZ0TGVmdCAoUk9NMSwgMHgwOCwgTG9jYWwwKQogICAgICAgICAgICAgICAgICAgIFN0b3Jl
 IChMb2NhbDAsIFJNQTEpCiAgICAgICAgICAgICAgICAgICAgU2hpZnRMZWZ0IChSTVMxLCAw
 eDA4LCBMb2NhbDApCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKExvY2FsMCwgUlNTMSkK
 ICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHg4MDAwLCBSU1MyKQogICAgICAgICAgICAg
 ICAgfQoKICAgICAgICAgICAgICAgIElmIChMTm90RXF1YWwgKFJPTTIsIFplcm8pKQogICAg
 ICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIFN0b3JlIChSTUEyLCBSTUEzKQog
 ICAgICAgICAgICAgICAgICAgIFNoaWZ0TGVmdCAoUk9NMiwgMHgwOCwgTG9jYWwwKQogICAg
 ICAgICAgICAgICAgICAgIFN0b3JlIChMb2NhbDAsIFJNQTIpCiAgICAgICAgICAgICAgICAg
 ICAgU2hpZnRMZWZ0IChSTVMyLCAweDA4LCBMb2NhbDApCiAgICAgICAgICAgICAgICAgICAg
 U3RvcmUgKExvY2FsMCwgUlNTMikKICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHhDMDAw
 LCBSU1MzKQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIElmIChMTm90RXF1
 YWwgKFJPTTMsIFplcm8pKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAg
 IFN0b3JlIChSTUEzLCBSTUE0KQogICAgICAgICAgICAgICAgICAgIFNoaWZ0TGVmdCAoUk9N
 MywgMHgwOCwgTG9jYWwwKQogICAgICAgICAgICAgICAgICAgIFN0b3JlIChMb2NhbDAsIFJN
 QTMpCiAgICAgICAgICAgICAgICAgICAgU2hpZnRMZWZ0IChSTVMzLCAweDA4LCBMb2NhbDAp
 CiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKExvY2FsMCwgUlNTMykKICAgICAgICAgICAg
 ICAgICAgICBTdG9yZSAoMHgwMDAxMDAwMCwgUlNTNCkKICAgICAgICAgICAgICAgIH0KCiAg
 ICAgICAgICAgICAgICBTdG9yZSAoRVJNQSwgTG9jYWwxKQogICAgICAgICAgICAgICAgSWYg
 KExHcmVhdGVyIChSTUExLCAweDAwMEQwMDAwKSkKICAgICAgICAgICAgICAgIHsKICAgICAg
 ICAgICAgICAgICAgICBJZiAoTExlc3MgKFJNQTEsIDB4MDAwRjAwMDApKQogICAgICAgICAg
 ICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgQWRkIChSTUExLCBSU1MxLCBM
 b2NhbDApCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMR3JlYXRlciAoTG9jYWwwLCAw
 eDAwMEUwMDAwKSkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgSWYgKExHcmVhdGVyIChMb2NhbDAsIExvY2FsMSkpCiAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3Rv
 cmUgKExvY2FsMCwgTG9jYWwxKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAg
 ICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAg
 ICAgICAgfQoKICAgICAgICAgICAgICAgIElmIChMR3JlYXRlciAoUk1BMiwgMHgwMDBEMDAw
 MCkpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgSWYgKExMZXNzIChS
 TUEyLCAweDAwMEYwMDAwKSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg
 ICAgICAgICAgIEFkZCAoUk1BMiwgUlNTMiwgTG9jYWwwKQogICAgICAgICAgICAgICAgICAg
 ICAgICBJZiAoTEdyZWF0ZXIgKExvY2FsMCwgMHgwMDBFMDAwMCkpCiAgICAgICAgICAgICAg
 ICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMR3JlYXRlciAo
 TG9jYWwwLCBMb2NhbDEpKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChMb2NhbDAsIExvY2FsMSkKICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfQogICAg
 ICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBJ
 ZiAoTEdyZWF0ZXIgKFJNQTMsIDB4MDAwRDAwMDApKQogICAgICAgICAgICAgICAgewogICAg
 ICAgICAgICAgICAgICAgIElmIChMTGVzcyAoUk1BMywgMHgwMDBGMDAwMCkpCiAgICAgICAg
 ICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBBZGQgKFJNQTMsIFJTUzMs
 IExvY2FsMCkKICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExHcmVhdGVyIChMb2NhbDAs
 IDB4MDAwRTAwMDApKQogICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICBJZiAoTEdyZWF0ZXIgKExvY2FsMCwgTG9jYWwxKSkKICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBT
 dG9yZSAoTG9jYWwwLCBMb2NhbDEpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAg
 ICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAg
 ICAgICAgICB9CgogICAgICAgICAgICAgICAgSWYgKExHcmVhdGVyIChMb2NhbDEsIEVSTUEp
 KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIFN1YnRyYWN0IChMb2Nh
 bDEsIEVSTUEsIExvY2FsMCkKICAgICAgICAgICAgICAgICAgICBJZiAoTExlc3NFcXVhbCAo
 TG9jYWwwLCAweDAwMDEwMDAwKSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAg
 ICAgICAgICAgICAgIFN0b3JlIChMb2NhbDEsIEVSTUEpCiAgICAgICAgICAgICAgICAgICAg
 ICAgIFN1YnRyYWN0ICgweDAwMDEwMDAwLCBMb2NhbDAsIEVSTVMpCiAgICAgICAgICAgICAg
 ICAgICAgfQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIFN0b3JlIChBTUVN
 LCBBQ01NKQogICAgICAgICAgICAgICAgUmV0dXJuIChCVUYwKQogICAgICAgICAgICB9CiAg
 ICAgICAgfQoKICAgICAgICBEZXZpY2UgKEZXSCkKICAgICAgICB7CiAgICAgICAgICAgIE5h
 bWUgKF9ISUQsIEVpc2FJZCAoIklOVDA4MDAiKSkKICAgICAgICAgICAgTWV0aG9kIChfQ1JT
 LCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBOYW1l
 IChGV0gwLCBSZXNvdXJjZVRlbXBsYXRlICgpCiAgICAgICAgICAgICAgICB7CiAgICAgICAg
 ICAgICAgICAgICAgTWVtb3J5MzJGaXhlZCAoUmVhZFdyaXRlLAogICAgICAgICAgICAgICAg
 ICAgICAgICAweEZGQjgwMDAwLCAgICAgICAgIC8vIEFkZHJlc3MgQmFzZQogICAgICAgICAg
 ICAgICAgICAgICAgICAweDAwMDgwMDAwLCAgICAgICAgIC8vIEFkZHJlc3MgTGVuZ3RoCiAg
 ICAgICAgICAgICAgICAgICAgICAgICkKICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAg
 ICAgICBSZXR1cm4gKEZXSDApCiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIERl
 dmljZSAoXF9TQi5QQ0kwLkVYUEwpCiAgICAgICAgewogICAgICAgICAgICBOYW1lIChfSElE
 LCBFaXNhSWQgKCJQTlAwQzAyIikpCiAgICAgICAgICAgIE5hbWUgKF9VSUQsIDB4MDQpCiAg
 ICAgICAgICAgIE1ldGhvZCAoX0NSUywgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICAgICAg
 ewogICAgICAgICAgICAgICAgTmFtZSAoQlVGMCwgUmVzb3VyY2VUZW1wbGF0ZSAoKQogICAg
 ICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIE1lbW9yeTMyRml4ZWQgKFJlYWRX
 cml0ZSwKICAgICAgICAgICAgICAgICAgICAgICAgMHhGNDAwMDAwMCwgICAgICAgICAvLyBB
 ZGRyZXNzIEJhc2UKICAgICAgICAgICAgICAgICAgICAgICAgMHgwNDAwMDAwMCwgICAgICAg
 ICAvLyBBZGRyZXNzIExlbmd0aAogICAgICAgICAgICAgICAgICAgICAgICApCiAgICAgICAg
 ICAgICAgICB9KQogICAgICAgICAgICAgICAgUmV0dXJuIChCVUYwKQogICAgICAgICAgICB9
 CiAgICAgICAgfQogICAgfQoKICAgIFNjb3BlIChcX1BSLkNQVTApCiAgICB7CiAgICAgICAg
 TmFtZSAoVFlQRSwgMHgwMDAwMDAwMCkKICAgICAgICBOYW1lIChQU0VOLCAweDAwMDAwMDAx
 KQogICAgICAgIE5hbWUgKENTRU4sIDB4MDAwMDAwMDEpCiAgICAgICAgTmFtZSAoTVdPUywg
 MHgwMDAwMDAwMSkKICAgICAgICBOYW1lIChUU0VOLCAweDAwMDAwMDAxKQogICAgICAgIE1l
 dGhvZCAoX1BEQywgMSwgTm90U2VyaWFsaXplZCkKICAgICAgICB7CiAgICAgICAgICAgIENy
 ZWF0ZURXb3JkRmllbGQgKEFyZzAsIDB4MDgsIENBUEEpCiAgICAgICAgICAgIFN0b3JlIChD
 QVBBLCBUWVBFKQogICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChBcmcwLCAweDAwLCBS
 RVZTKQogICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChBcmcwLCAweDA0LCBTSVpFKQog
 ICAgICAgICAgICBTdG9yZSAoU2l6ZU9mIChBcmcwKSwgTG9jYWwwKQogICAgICAgICAgICBT
 dG9yZSAoU3VidHJhY3QgKExvY2FsMCwgMHgwOCksIExvY2FsMSkKICAgICAgICAgICAgQ3Jl
 YXRlRmllbGQgKEFyZzAsIDB4NDAsIE11bHRpcGx5IChMb2NhbDEsIDB4MDgpLCBURU1QKQog
 ICAgICAgICAgICBOYW1lIChTVFMwLCBCdWZmZXIgKDB4MDQpCiAgICAgICAgICAgIHsKICAg
 ICAgICAgICAgICAgIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAKICAgICAgICAgICAgfSkKICAg
 ICAgICAgICAgQ29uY2F0ZW5hdGUgKFNUUzAsIFRFTVAsIExvY2FsMikKICAgICAgICAgICAg
 X09TQyAoQnVmZmVyICgweDEwKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAg
 ICAgIC8qIDAwMDAgKi8gICAgMHgxNiwgMHhBNiwgMHg3NywgMHg0MCwgMHgwQywgMHgyOSwg
 MHhCRSwgMHg0NywgCiAgICAgICAgICAgICAgICAgICAgLyogMDAwOCAqLyAgICAweDlFLCAw
 eEJELCAweEQ4LCAweDcwLCAweDU4LCAweDcxLCAweDM5LCAweDUzCiAgICAgICAgICAgICAg
 ICB9LCBSRVZTLCBTSVpFLCBMb2NhbDIpCiAgICAgICAgfQoKICAgICAgICBNZXRob2QgKF9P
 U0MsIDQsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgewogICAgICAgICAgICBDcmVhdGVEV29y
 ZEZpZWxkIChBcmczLCAweDA0LCBDQVBBKQogICAgICAgICAgICBTdG9yZSAoQ0FQQSwgVFlQ
 RSkKICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQXJnMywgMHgwMCwgU1RTMCkKICAg
 ICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQXJnMywgMHgwNCwgQ0FQMCkKICAgICAgICAg
 ICAgQ3JlYXRlRFdvcmRGaWVsZCAoQXJnMCwgMHgwMCwgSUlEMCkKICAgICAgICAgICAgQ3Jl
 YXRlRFdvcmRGaWVsZCAoQXJnMCwgMHgwNCwgSUlEMSkKICAgICAgICAgICAgQ3JlYXRlRFdv
 cmRGaWVsZCAoQXJnMCwgMHgwOCwgSUlEMikKICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVs
 ZCAoQXJnMCwgMHgwQywgSUlEMykKICAgICAgICAgICAgTmFtZSAoVUlEMCwgQnVmZmVyICgw
 eDEwKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAvKiAwMDAwICovICAgIDB4MTYs
 IDB4QTYsIDB4NzcsIDB4NDAsIDB4MEMsIDB4MjksIDB4QkUsIDB4NDcsIAogICAgICAgICAg
 ICAgICAgLyogMDAwOCAqLyAgICAweDlFLCAweEJELCAweEQ4LCAweDcwLCAweDU4LCAweDcx
 LCAweDM5LCAweDUzCiAgICAgICAgICAgIH0pCiAgICAgICAgICAgIENyZWF0ZURXb3JkRmll
 bGQgKEFyZzAsIDB4MDAsIEVJRDApCiAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKEFy
 ZzAsIDB4MDQsIEVJRDEpCiAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKEFyZzAsIDB4
 MDgsIEVJRDIpCiAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKEFyZzAsIDB4MEMsIEVJ
 RDMpCiAgICAgICAgICAgIElmIChMTm90IChMQW5kIChMQW5kIChMRXF1YWwgKElJRDAsIEVJ
 RDApLCBMRXF1YWwgKElJRDEsIEVJRDEpKSwgCiAgICAgICAgICAgICAgICBMQW5kIChMRXF1
 YWwgKElJRDIsIEVJRDIpLCBMRXF1YWwgKElJRDMsIEVJRDMpKSkpKQogICAgICAgICAgICB7
 CiAgICAgICAgICAgICAgICBTdG9yZSAoMHgwNiwgSW5kZXggKFNUUzAsIDB4MDApKQogICAg
 ICAgICAgICAgICAgUmV0dXJuIChBcmczKQogICAgICAgICAgICB9CgogICAgICAgICAgICBJ
 ZiAoTE5vdEVxdWFsIChBcmcxLCAweDAxKSkKICAgICAgICAgICAgewogICAgICAgICAgICAg
 ICAgU3RvcmUgKDB4MEEsIEluZGV4IChTVFMwLCAweDAwKSkKICAgICAgICAgICAgICAgIFJl
 dHVybiAoQXJnMykKICAgICAgICAgICAgfQoKICAgICAgICAgICAgSWYgKEFuZCAoU1RTMCwg
 MHgwMSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIEFuZCAoQ0FQMCwgMHgwQkZG
 LCBDQVAwKQogICAgICAgICAgICAgICAgUmV0dXJuIChBcmczKQogICAgICAgICAgICB9Cgog
 ICAgICAgICAgICBBbmQgKENBUDAsIDB4MEJGRiwgQ0FQMCkKICAgICAgICAgICAgU3RvcmUg
 KENBUDAsIFRZUEUpCiAgICAgICAgICAgIFJldHVybiAoQXJnMykKICAgICAgICB9CgogICAg
 ICAgIE1ldGhvZCAoX1BTUywgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICB7CiAgICAgICAg
 ICAgIElmIChQU0VOKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBSZXR1cm4gKFBh
 Y2thZ2UgKDB4MEQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgUGFj
 a2FnZSAoMHgwNikKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAg
 ICAgIDB4MDAwMDBBNjUsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDE3MzE4LCAK
 ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwQSwgCiAgICAgICAgICAgICAgICAg
 ICAgICAgIDB4MDAwMDAwMEEsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDE1
 LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAxNQogICAgICAgICAgICAgICAg
 ICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA2KQogICAgICAgICAg
 ICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMEE2NCwgCiAgICAg
 ICAgICAgICAgICAgICAgICAgIDB4MDAwMTczMTgsIAogICAgICAgICAgICAgICAgICAgICAg
 ICAweDAwMDAwMDBBLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwQSwgCiAg
 ICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMTQsIAogICAgICAgICAgICAgICAgICAg
 ICAgICAweDAwMDAwMDE0CiAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAg
 ICAgICAgIFBhY2thZ2UgKDB4MDYpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAg
 ICAgICAgICAgICAgICAweDAwMDAwOURGLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgw
 MDAxMzBCMCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMEEsIAogICAgICAg
 ICAgICAgICAgICAgICAgICAweDAwMDAwMDBBLCAKICAgICAgICAgICAgICAgICAgICAgICAg
 MHgwMDAwMDAxMywgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMTMKICAgICAg
 ICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNikK
 ICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDA5
 NUEsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDExMTcwLCAKICAgICAgICAgICAg
 ICAgICAgICAgICAgMHgwMDAwMDAwQSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAw
 MDAwMEEsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDEyLCAKICAgICAgICAg
 ICAgICAgICAgICAgICAgMHgwMDAwMDAxMgogICAgICAgICAgICAgICAgICAgIH0sIAoKICAg
 ICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA2KQogICAgICAgICAgICAgICAgICAgIHsK
 ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDhENSwgCiAgICAgICAgICAgICAgICAg
 ICAgICAgIDB4MDAwMERFQTgsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDBB
 LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwQSwgCiAgICAgICAgICAgICAg
 ICAgICAgICAgIDB4MDAwMDAwMTEsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAw
 MDExCiAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgIFBhY2th
 Z2UgKDB4MDYpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAg
 ICAweDAwMDAwODUwLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwQzczOCwgCiAg
 ICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMEEsIAogICAgICAgICAgICAgICAgICAg
 ICAgICAweDAwMDAwMDBBLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAxMCwg
 CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMTAKICAgICAgICAgICAgICAgICAg
 ICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNikKICAgICAgICAgICAg
 ICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDA3Q0IsIAogICAgICAg
 ICAgICAgICAgICAgICAgICAweDAwMDBBMDI4LCAKICAgICAgICAgICAgICAgICAgICAgICAg
 MHgwMDAwMDAwQSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMEEsIAogICAg
 ICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDBGLCAKICAgICAgICAgICAgICAgICAgICAg
 ICAgMHgwMDAwMDAwRgogICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAg
 ICAgICBQYWNrYWdlICgweDA2KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgICAgICAgICAgMHgwMDAwMDc0NiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAw
 MDhDQTAsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDBBLCAKICAgICAgICAg
 ICAgICAgICAgICAgICAgMHgwMDAwMDAwQSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MDAwMDAwMEUsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDBFCiAgICAgICAg
 ICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDYpCiAg
 ICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwNkMx
 LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwNkQ2MCwgCiAgICAgICAgICAgICAg
 ICAgICAgICAgIDB4MDAwMDAwMEEsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAw
 MDBBLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwRCwgCiAgICAgICAgICAg
 ICAgICAgICAgICAgIDB4MDAwMDAwMEQKICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAg
 ICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNikKICAgICAgICAgICAgICAgICAgICB7CiAg
 ICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDA2M0MsIAogICAgICAgICAgICAgICAgICAg
 ICAgICAweDAwMDA2MUE4LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwQSwg
 CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMEEsIAogICAgICAgICAgICAgICAg
 ICAgICAgICAweDAwMDAwMDBDLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAw
 QwogICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICBQYWNrYWdl
 ICgweDA2KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAg
 MHgwMDAwMDVCNywgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDRBMzgsIAogICAg
 ICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDBBLCAKICAgICAgICAgICAgICAgICAgICAg
 ICAgMHgwMDAwMDAwQSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMEIsIAog
 ICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDBCCiAgICAgICAgICAgICAgICAgICAg
 fSwgCgogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDYpCiAgICAgICAgICAgICAg
 ICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwNTMyLCAKICAgICAgICAg
 ICAgICAgICAgICAgICAgMHgwMDAwNDI2OCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MDAwMDAwMEEsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDBBLCAKICAgICAg
 ICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwQSwgCiAgICAgICAgICAgICAgICAgICAgICAg
 IDB4MDAwMDAwMEEKICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAg
 ICAgUGFja2FnZSAoMHgwNikKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg
 ICAgICAgICAgIDB4MDAwMDA0QUQsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAz
 MkM4LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwQSwgCiAgICAgICAgICAg
 ICAgICAgICAgICAgIDB4MDAwMDAwMEEsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAw
 MDAwMDA5LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwOQogICAgICAgICAg
 ICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0KCiAgICAgICAg
 ICAgIFJldHVybiAoWmVybykKICAgICAgICB9CgogICAgICAgIE1ldGhvZCAoX1BDVCwgMCwg
 Tm90U2VyaWFsaXplZCkKICAgICAgICB7CiAgICAgICAgICAgIFJldHVybiAoUGFja2FnZSAo
 MHgwMikKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgUmVzb3VyY2VUZW1wbGF0ZSAo
 KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIFJlZ2lzdGVyIChGRml4
 ZWRIVywgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4NDAsICAgICAgICAgICAgICAgLy8g
 Qml0IFdpZHRoCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsICAgICAgICAgICAgICAg
 Ly8gQml0IE9mZnNldAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAwMDAwMDAx
 OTksIC8vIEFkZHJlc3MKICAgICAgICAgICAgICAgICAgICAgICAgLCkKICAgICAgICAgICAg
 ICAgIH0sIAoKICAgICAgICAgICAgICAgIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAg
 ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBSZWdpc3RlciAoRkZpeGVkSFcsIAogICAg
 ICAgICAgICAgICAgICAgICAgICAweDEwLCAgICAgICAgICAgICAgIC8vIEJpdCBXaWR0aAog
 ICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAgICAgICAgICAgICAgIC8vIEJpdCBPZmZz
 ZXQKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMDAwMDAwMTk4LCAvLyBBZGRy
 ZXNzCiAgICAgICAgICAgICAgICAgICAgICAgICwpCiAgICAgICAgICAgICAgICB9CiAgICAg
 ICAgICAgIH0pCiAgICAgICAgfQoKICAgICAgICBNZXRob2QgKF9QUEMsIDAsIE5vdFNlcmlh
 bGl6ZWQpCiAgICAgICAgewogICAgICAgICAgICBSZXR1cm4gKFplcm8pCiAgICAgICAgfQoK
 ICAgICAgICBNZXRob2QgKF9QU0QsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgewogICAg
 ICAgICAgICBJZiAoQW5kIChUWVBFLCAweDAwMDAwODIwKSkKICAgICAgICAgICAgewogICAg
 ICAgICAgICAgICAgUmV0dXJuIChQYWNrYWdlICgweDAxKQogICAgICAgICAgICAgICAgewog
 ICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDUpCiAgICAgICAgICAgICAgICAgICAg
 ewogICAgICAgICAgICAgICAgICAgICAgICAweDA1LCAKICAgICAgICAgICAgICAgICAgICAg
 ICAgMHgwMCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAsIAogICAgICAg
 ICAgICAgICAgICAgICAgICAweDAwMDAwMEZFLCAKICAgICAgICAgICAgICAgICAgICAgICAg
 MHgwMDAwMDAwNAogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0pCiAg
 ICAgICAgICAgIH0KCiAgICAgICAgICAgIFJldHVybiAoWmVybykKICAgICAgICB9CgogICAg
 ICAgIE1ldGhvZCAoX0NTVCwgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICB7CiAgICAgICAg
 ICAgIElmIChDb25kUmVmT2YgKFxfT1NJLCBMb2NhbDApKQogICAgICAgICAgICB7CiAgICAg
 ICAgICAgICAgICBJZiAoTEFuZCAoXF9PU0kgKCJXaW5kb3dzIDIwMDEuMSIpLCBMQW5kIChM
 Tm90IChcX09TSSAoIldpbmRvd3MgMjAwNiIpKSwgTE5vdCAoXF9PU0kgKAogICAgICAgICAg
 ICAgICAgICAgICJXaW5kb3dzIDIwMDEuMSBTUDEiKSkpKSkKICAgICAgICAgICAgICAgIHsK
 ICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMCwgQ1NFTikKICAgICAgICAgICAgICAg
 IH0KCiAgICAgICAgICAgICAgICBJZiAoTEFuZCAoXF9PU0kgKCJXaW5kb3dzIDIwMDEiKSwg
 TEFuZCAoTE5vdCAoXF9PU0kgKCJXaW5kb3dzIDIwMDEgU1AyIikpLCBMTm90IChcX09TSSAo
 CiAgICAgICAgICAgICAgICAgICAgIldpbmRvd3MgMjAwMS4xIFNQMSIpKSkpKQogICAgICAg
 ICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAwLCBDU0VOKQogICAg
 ICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICBJZiAoQ1NFTikKICAg
 ICAgICAgICAgewogICAgICAgICAgICAgICAgSWYgKExBbmQgKE1XT1MsIEFuZCAoVFlQRSwg
 MHgwMjAwKSkpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgUmV0dXJu
 IChQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg
 ICAgICAgICAgMHgwMywgCiAgICAgICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQp
 CiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAg
 IFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZWdpc3RlciAoRkZpeGVkSFcsIAogICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAxLCAgICAgICAgICAgICAgIC8v
 IEJpdCBXaWR0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAyLCAg
 ICAgICAgICAgICAgIC8vIEJpdCBPZmZzZXQKICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgMHgwMDAwMDAwMDAwMDAwMDAwLCAvLyBBZGRyZXNzCiAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgIDB4MDEsICAgICAgICAgICAgICAgLy8gQWNjZXNzIFNp
 emUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMSwg
 CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwMDEsIAogICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgMHgwMDAwMDNFOAogICAgICAgICAgICAgICAgICAgICAgICB9LCAKCiAg
 ICAgICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICAg
 ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlc291cmNlVGVtcGxhdGUg
 KCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICBSZWdpc3RlciAoRkZpeGVkSFcsIAogICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAweDAxLCAgICAgICAgICAgICAgIC8vIEJpdCBXaWR0aAogICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAyLCAgICAgICAgICAgICAgIC8vIEJp
 dCBPZmZzZXQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAw
 MDAwMDAwMDEwLCAvLyBBZGRyZXNzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgIDB4MDEsICAgICAgICAgICAgICAgLy8gQWNjZXNzIFNpemUKICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwg
 CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMiwgCiAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAweDAwNDAsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAw
 MDFGNAogICAgICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAg
 ICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZWdpc3Rl
 ciAoRkZpeGVkSFcsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAx
 LCAgICAgICAgICAgICAgIC8vIEJpdCBXaWR0aAogICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAweDAyLCAgICAgICAgICAgICAgIC8vIEJpdCBPZmZzZXQKICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMDAwMDAwMDIwLCAvLyBBZGRy
 ZXNzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEsICAgICAgICAg
 ICAgICAgLy8gQWNjZXNzIFNpemUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgMHgwMywgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwNjAs
 IAogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDE1RQogICAgICAgICAgICAg
 ICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIH0K
 CiAgICAgICAgICAgICAgICBSZXR1cm4gKFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAg
 ICB7CiAgICAgICAgICAgICAgICAgICAgMHgwMywgCiAgICAgICAgICAgICAgICAgICAgUGFj
 a2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAg
 ICAgIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgUmVnaXN0ZXIgKEZGaXhlZEhXLCAKICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAgICAgICAgICAgICAgIC8vIEJpdCBXaWR0
 aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsICAgICAgICAgICAgICAg
 Ly8gQml0IE9mZnNldAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAw
 MDAwMDAwMDAwMCwgLy8gQWRkcmVzcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICwpCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICAg
 ICAgMHgwMSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMSwgCiAgICAgICAgICAg
 ICAgICAgICAgICAgIDB4MDAwMDAzRTgKICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAg
 ICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgICAgICB7CiAg
 ICAgICAgICAgICAgICAgICAgICAgIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAg
 ICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVnaXN0ZXIgKFN5
 c3RlbUlPLCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDA4LCAgICAgICAg
 ICAgICAgIC8vIEJpdCBXaWR0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MDAsICAgICAgICAgICAgICAgLy8gQml0IE9mZnNldAogICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgIDB4MDAwMDAwMDAwMDAwMDQxNCwgLy8gQWRkcmVzcwogICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICwpCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIAoKICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgwMiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MDA0MCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAxRjQKICAgICAgICAgICAg
 ICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAg
 ICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFJlc291cmNlVGVtcGxh
 dGUgKCkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgUmVnaXN0ZXIgKFN5c3RlbUlPLCAKICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAweDA4LCAgICAgICAgICAgICAgIC8vIEJpdCBXaWR0aAogICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgIDB4MDAsICAgICAgICAgICAgICAgLy8gQml0IE9mZnNldAogICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAwMDAwMDQxNSwgLy8gQWRk
 cmVzcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICwpCiAgICAgICAgICAgICAg
 ICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMywgCiAgICAgICAg
 ICAgICAgICAgICAgICAgIDB4MDA2MCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAw
 MDAxNUUKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9KQogICAgICAg
 ICAgICB9CiAgICAgICAgfQoKICAgICAgICBNZXRob2QgKF9UUEMsIDAsIE5vdFNlcmlhbGl6
 ZWQpCiAgICAgICAgewogICAgICAgICAgICBSZXR1cm4gKFplcm8pCiAgICAgICAgfQoKICAg
 ICAgICBNZXRob2QgKF9QVEMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgewogICAgICAg
 ICAgICBSZXR1cm4gKFBhY2thZ2UgKDB4MDIpCiAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgICAgICBSZWdpc3RlciAoRkZpeGVkSFcsIAogICAgICAgICAgICAgICAgICAgICAgICAw
 eDAwLCAgICAgICAgICAgICAgIC8vIEJpdCBXaWR0aAogICAgICAgICAgICAgICAgICAgICAg
 ICAweDAwLCAgICAgICAgICAgICAgIC8vIEJpdCBPZmZzZXQKICAgICAgICAgICAgICAgICAg
 ICAgICAgMHgwMDAwMDAwMDAwMDAwMDAwLCAvLyBBZGRyZXNzCiAgICAgICAgICAgICAgICAg
 ICAgICAgICwpCiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICBSZXNvdXJj
 ZVRlbXBsYXRlICgpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgUmVn
 aXN0ZXIgKEZGaXhlZEhXLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMCwgICAgICAg
 ICAgICAgICAvLyBCaXQgV2lkdGgKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMCwgICAg
 ICAgICAgICAgICAvLyBCaXQgT2Zmc2V0CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAw
 MDAwMDAwMDAwMDAwMCwgLy8gQWRkcmVzcwogICAgICAgICAgICAgICAgICAgICAgICAsKQog
 ICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KQogICAgICAgIH0KCiAgICAgICAgTWV0
 aG9kIChfVFNTLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgIHsKICAgICAgICAgICAgSWYg
 KExBbmQgKFRTRU4sIEFuZCAoVFlQRSwgMHgwMDA0KSkpCiAgICAgICAgICAgIHsKICAgICAg
 ICAgICAgICAgIFJldHVybiAoUGFja2FnZSAoMHgwOCkKICAgICAgICAgICAgICAgIHsKICAg
 ICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA1KQogICAgICAgICAgICAgICAgICAgIHsK
 ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDA2NCwgCiAgICAgICAgICAgICAgICAg
 ICAgICAgIDB4MDAwMDAyRjgsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAw
 LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwgCiAgICAgICAgICAgICAg
 ICAgICAgICAgIDB4MDAwMDAwMDAKICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAg
 ICAgICAgICAgICAgUGFja2FnZSAoMHgwNSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAg
 ICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwNTgsIAogICAgICAgICAgICAgICAgICAgICAg
 ICAweDAwMDAwMjk5LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwgCiAg
 ICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMUUsIAogICAgICAgICAgICAgICAgICAg
 ICAgICAweDAwMDAwMDAwCiAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAg
 ICAgICAgIFBhY2thZ2UgKDB4MDUpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAg
 ICAgICAgICAgICAgICAweDAwMDAwMDRCLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgw
 MDAwMDIzQSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAsIAogICAgICAg
 ICAgICAgICAgICAgICAgICAweDAwMDAwMDFDLCAKICAgICAgICAgICAgICAgICAgICAgICAg
 MHgwMDAwMDAwMAogICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAg
 ICBQYWNrYWdlICgweDA1KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg
 ICAgICAgICAgMHgwMDAwMDAzRiwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAx
 REIsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAwLCAKICAgICAgICAgICAg
 ICAgICAgICAgICAgMHgwMDAwMDAxQSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAw
 MDAwMDAKICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFj
 a2FnZSAoMHgwNSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAg
 ICAgIDB4MDAwMDAwMzIsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMTdDLCAK
 ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwgCiAgICAgICAgICAgICAgICAg
 ICAgICAgIDB4MDAwMDAwMTgsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAw
 CiAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgIFBhY2thZ2Ug
 KDB4MDUpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAw
 eDAwMDAwMDI2LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDExRCwgCiAgICAg
 ICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAsIAogICAgICAgICAgICAgICAgICAgICAg
 ICAweDAwMDAwMDE2LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMAogICAg
 ICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA1
 KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAw
 MDAxOSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwQkUsIAogICAgICAgICAg
 ICAgICAgICAgICAgICAweDAwMDAwMDAwLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgw
 MDAwMDAxNCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAKICAgICAgICAg
 ICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNSkKICAg
 ICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMEQs
 IAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDVGLCAKICAgICAgICAgICAgICAg
 ICAgICAgICAgMHgwMDAwMDAwMCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAw
 MTIsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAwCiAgICAgICAgICAgICAg
 ICAgICAgfQogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfQoKICAgICAgICAgICAg
 UmV0dXJuIChaZXJvKQogICAgICAgIH0KCiAgICAgICAgTWV0aG9kIChfVFNELCAwLCBOb3RT
 ZXJpYWxpemVkKQogICAgICAgIHsKICAgICAgICAgICAgSWYgKEFuZCAoVFlQRSwgMHgwMDAw
 MDA4MCkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIFJldHVybiAoUGFja2FnZSAo
 MHgwMSkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgw
 eDA1KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgw
 NSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAgICAgICAgICAg
 ICAgICAweDAwMDAwMDAwLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDBGRCwg
 CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDEKICAgICAgICAgICAgICAgICAg
 ICB9CiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9CgogICAgICAgICAgICBSZXR1
 cm4gKFplcm8pCiAgICAgICAgfQogICAgfQoKICAgIFNjb3BlIChcX1BSLkNQVTEpCiAgICB7
 CiAgICAgICAgTmFtZSAoVFlQRSwgMHgwMDAwMDAwMCkKICAgICAgICBOYW1lIChQU0VOLCAw
 eDAwMDAwMDAxKQogICAgICAgIE5hbWUgKENTRU4sIDB4MDAwMDAwMDEpCiAgICAgICAgTmFt
 ZSAoTVdPUywgMHgwMDAwMDAwMSkKICAgICAgICBOYW1lIChUU0VOLCAweDAwMDAwMDAxKQog
 ICAgICAgIE1ldGhvZCAoX1BEQywgMSwgTm90U2VyaWFsaXplZCkKICAgICAgICB7CiAgICAg
 ICAgICAgIENyZWF0ZURXb3JkRmllbGQgKEFyZzAsIDB4MDgsIENBUEEpCiAgICAgICAgICAg
 IFN0b3JlIChDQVBBLCBUWVBFKQogICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChBcmcw
 LCAweDAwLCBSRVZTKQogICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChBcmcwLCAweDA0
 LCBTSVpFKQogICAgICAgICAgICBTdG9yZSAoU2l6ZU9mIChBcmcwKSwgTG9jYWwwKQogICAg
 ICAgICAgICBTdG9yZSAoU3VidHJhY3QgKExvY2FsMCwgMHgwOCksIExvY2FsMSkKICAgICAg
 ICAgICAgQ3JlYXRlRmllbGQgKEFyZzAsIDB4NDAsIE11bHRpcGx5IChMb2NhbDEsIDB4MDgp
 LCBURU1QKQogICAgICAgICAgICBOYW1lIChTVFMwLCBCdWZmZXIgKDB4MDQpCiAgICAgICAg
 ICAgIHsKICAgICAgICAgICAgICAgIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAKICAgICAgICAg
 ICAgfSkKICAgICAgICAgICAgQ29uY2F0ZW5hdGUgKFNUUzAsIFRFTVAsIExvY2FsMikKICAg
 ICAgICAgICAgX09TQyAoQnVmZmVyICgweDEwKQogICAgICAgICAgICAgICAgewogICAgICAg
 ICAgICAgICAgICAgIC8qIDAwMDAgKi8gICAgMHgxNiwgMHhBNiwgMHg3NywgMHg0MCwgMHgw
 QywgMHgyOSwgMHhCRSwgMHg0NywgCiAgICAgICAgICAgICAgICAgICAgLyogMDAwOCAqLyAg
 ICAweDlFLCAweEJELCAweEQ4LCAweDcwLCAweDU4LCAweDcxLCAweDM5LCAweDUzCiAgICAg
 ICAgICAgICAgICB9LCBSRVZTLCBTSVpFLCBMb2NhbDIpCiAgICAgICAgfQoKICAgICAgICBN
 ZXRob2QgKF9PU0MsIDQsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgewogICAgICAgICAgICBD
 cmVhdGVEV29yZEZpZWxkIChBcmczLCAweDA0LCBDQVBBKQogICAgICAgICAgICBTdG9yZSAo
 Q0FQQSwgVFlQRSkKICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQXJnMywgMHgwMCwg
 U1RTMCkKICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQXJnMywgMHgwNCwgQ0FQMCkK
 ICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQXJnMCwgMHgwMCwgSUlEMCkKICAgICAg
 ICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQXJnMCwgMHgwNCwgSUlEMSkKICAgICAgICAgICAg
 Q3JlYXRlRFdvcmRGaWVsZCAoQXJnMCwgMHgwOCwgSUlEMikKICAgICAgICAgICAgQ3JlYXRl
 RFdvcmRGaWVsZCAoQXJnMCwgMHgwQywgSUlEMykKICAgICAgICAgICAgTmFtZSAoVUlEMCwg
 QnVmZmVyICgweDEwKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAvKiAwMDAwICov
 ICAgIDB4MTYsIDB4QTYsIDB4NzcsIDB4NDAsIDB4MEMsIDB4MjksIDB4QkUsIDB4NDcsIAog
 ICAgICAgICAgICAgICAgLyogMDAwOCAqLyAgICAweDlFLCAweEJELCAweEQ4LCAweDcwLCAw
 eDU4LCAweDcxLCAweDM5LCAweDUzCiAgICAgICAgICAgIH0pCiAgICAgICAgICAgIENyZWF0
 ZURXb3JkRmllbGQgKEFyZzAsIDB4MDAsIEVJRDApCiAgICAgICAgICAgIENyZWF0ZURXb3Jk
 RmllbGQgKEFyZzAsIDB4MDQsIEVJRDEpCiAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQg
 KEFyZzAsIDB4MDgsIEVJRDIpCiAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKEFyZzAs
 IDB4MEMsIEVJRDMpCiAgICAgICAgICAgIElmIChMTm90IChMQW5kIChMQW5kIChMRXF1YWwg
 KElJRDAsIEVJRDApLCBMRXF1YWwgKElJRDEsIEVJRDEpKSwgCiAgICAgICAgICAgICAgICBM
 QW5kIChMRXF1YWwgKElJRDIsIEVJRDIpLCBMRXF1YWwgKElJRDMsIEVJRDMpKSkpKQogICAg
 ICAgICAgICB7CiAgICAgICAgICAgICAgICBTdG9yZSAoMHgwNiwgSW5kZXggKFNUUzAsIDB4
 MDApKQogICAgICAgICAgICAgICAgUmV0dXJuIChBcmczKQogICAgICAgICAgICB9CgogICAg
 ICAgICAgICBJZiAoTE5vdEVxdWFsIChBcmcxLCAweDAxKSkKICAgICAgICAgICAgewogICAg
 ICAgICAgICAgICAgU3RvcmUgKDB4MEEsIEluZGV4IChTVFMwLCAweDAwKSkKICAgICAgICAg
 ICAgICAgIFJldHVybiAoQXJnMykKICAgICAgICAgICAgfQoKICAgICAgICAgICAgSWYgKEFu
 ZCAoU1RTMCwgMHgwMSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIEFuZCAoQ0FQ
 MCwgMHgwQkZGLCBDQVAwKQogICAgICAgICAgICAgICAgUmV0dXJuIChBcmczKQogICAgICAg
 ICAgICB9CgogICAgICAgICAgICBBbmQgKENBUDAsIDB4MEJGRiwgQ0FQMCkKICAgICAgICAg
 ICAgU3RvcmUgKENBUDAsIFRZUEUpCiAgICAgICAgICAgIFJldHVybiAoQXJnMykKICAgICAg
 ICB9CgogICAgICAgIE1ldGhvZCAoX1BTUywgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICB7
 CiAgICAgICAgICAgIElmIChQU0VOKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBS
 ZXR1cm4gKFBhY2thZ2UgKDB4MEQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg
 ICAgICAgUGFja2FnZSAoMHgwNikKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAg
 ICAgICAgICAgICAgIDB4MDAwMDBBNjUsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAw
 MDE3MzE4LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwQSwgCiAgICAgICAg
 ICAgICAgICAgICAgICAgIDB4MDAwMDAwMEEsIAogICAgICAgICAgICAgICAgICAgICAgICAw
 eDAwMDAwMDE1LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAxNQogICAgICAg
 ICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA2KQog
 ICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMEE2
 NCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMTczMTgsIAogICAgICAgICAgICAg
 ICAgICAgICAgICAweDAwMDAwMDBBLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAw
 MDAwQSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMTQsIAogICAgICAgICAg
 ICAgICAgICAgICAgICAweDAwMDAwMDE0CiAgICAgICAgICAgICAgICAgICAgfSwgCgogICAg
 ICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDYpCiAgICAgICAgICAgICAgICAgICAgewog
 ICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwOURGLCAKICAgICAgICAgICAgICAgICAg
 ICAgICAgMHgwMDAxMzBCMCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMEEs
 IAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDBBLCAKICAgICAgICAgICAgICAg
 ICAgICAgICAgMHgwMDAwMDAxMywgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAw
 MTMKICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2Fn
 ZSAoMHgwNikKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAg
 IDB4MDAwMDA5NUEsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDExMTcwLCAKICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwQSwgCiAgICAgICAgICAgICAgICAgICAg
 ICAgIDB4MDAwMDAwMEEsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDEyLCAK
 ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAxMgogICAgICAgICAgICAgICAgICAg
 IH0sIAoKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA2KQogICAgICAgICAgICAg
 ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDhENSwgCiAgICAgICAg
 ICAgICAgICAgICAgICAgIDB4MDAwMERFQTgsIAogICAgICAgICAgICAgICAgICAgICAgICAw
 eDAwMDAwMDBBLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwQSwgCiAgICAg
 ICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMTEsIAogICAgICAgICAgICAgICAgICAgICAg
 ICAweDAwMDAwMDExCiAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAg
 ICAgIFBhY2thZ2UgKDB4MDYpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAg
 ICAgICAgICAgICAweDAwMDAwODUwLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAw
 QzczOCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMEEsIAogICAgICAgICAg
 ICAgICAgICAgICAgICAweDAwMDAwMDBBLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgw
 MDAwMDAxMCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMTAKICAgICAgICAg
 ICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNikKICAg
 ICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDA3Q0Is
 IAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDBBMDI4LCAKICAgICAgICAgICAgICAg
 ICAgICAgICAgMHgwMDAwMDAwQSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAw
 MEEsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDBGLCAKICAgICAgICAgICAg
 ICAgICAgICAgICAgMHgwMDAwMDAwRgogICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAg
 ICAgICAgICAgICAgICBQYWNrYWdlICgweDA2KQogICAgICAgICAgICAgICAgICAgIHsKICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDc0NiwgCiAgICAgICAgICAgICAgICAgICAg
 ICAgIDB4MDAwMDhDQTAsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDBBLCAK
 ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwQSwgCiAgICAgICAgICAgICAgICAg
 ICAgICAgIDB4MDAwMDAwMEUsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDBF
 CiAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgIFBhY2thZ2Ug
 KDB4MDYpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAw
 eDAwMDAwNkMxLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwNkQ2MCwgCiAgICAg
 ICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMEEsIAogICAgICAgICAgICAgICAgICAgICAg
 ICAweDAwMDAwMDBBLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwRCwgCiAg
 ICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMEQKICAgICAgICAgICAgICAgICAgICB9
 LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNikKICAgICAgICAgICAgICAg
 ICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDA2M0MsIAogICAgICAgICAg
 ICAgICAgICAgICAgICAweDAwMDA2MUE4LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgw
 MDAwMDAwQSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMEEsIAogICAgICAg
 ICAgICAgICAgICAgICAgICAweDAwMDAwMDBDLCAKICAgICAgICAgICAgICAgICAgICAgICAg
 MHgwMDAwMDAwQwogICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAg
 ICBQYWNrYWdlICgweDA2KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg
 ICAgICAgICAgMHgwMDAwMDVCNywgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDRB
 MzgsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDBBLCAKICAgICAgICAgICAg
 ICAgICAgICAgICAgMHgwMDAwMDAwQSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAw
 MDAwMEIsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDBCCiAgICAgICAgICAg
 ICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDYpCiAgICAg
 ICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwNTMyLCAK
 ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwNDI2OCwgCiAgICAgICAgICAgICAgICAg
 ICAgICAgIDB4MDAwMDAwMEEsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDBB
 LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwQSwgCiAgICAgICAgICAgICAg
 ICAgICAgICAgIDB4MDAwMDAwMEEKICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAg
 ICAgICAgICAgICAgUGFja2FnZSAoMHgwNikKICAgICAgICAgICAgICAgICAgICB7CiAgICAg
 ICAgICAgICAgICAgICAgICAgIDB4MDAwMDA0QUQsIAogICAgICAgICAgICAgICAgICAgICAg
 ICAweDAwMDAzMkM4LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwQSwgCiAg
 ICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMEEsIAogICAgICAgICAgICAgICAgICAg
 ICAgICAweDAwMDAwMDA5LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwOQog
 ICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0K
 CiAgICAgICAgICAgIFJldHVybiAoWmVybykKICAgICAgICB9CgogICAgICAgIE1ldGhvZCAo
 X1BDVCwgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICB7CiAgICAgICAgICAgIFJldHVybiAo
 UGFja2FnZSAoMHgwMikKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgUmVzb3VyY2VU
 ZW1wbGF0ZSAoKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIFJlZ2lz
 dGVyIChGRml4ZWRIVywgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4NDAsICAgICAgICAg
 ICAgICAgLy8gQml0IFdpZHRoCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsICAgICAg
 ICAgICAgICAgLy8gQml0IE9mZnNldAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAw
 MDAwMDAwMDAxOTksIC8vIEFkZHJlc3MKICAgICAgICAgICAgICAgICAgICAgICAgLCkKICAg
 ICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgIFJlc291cmNlVGVtcGxhdGUgKCkK
 ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBSZWdpc3RlciAoRkZpeGVk
 SFcsIAogICAgICAgICAgICAgICAgICAgICAgICAweDEwLCAgICAgICAgICAgICAgIC8vIEJp
 dCBXaWR0aAogICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAgICAgICAgICAgICAgIC8v
 IEJpdCBPZmZzZXQKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMDAwMDAwMTk4
 LCAvLyBBZGRyZXNzCiAgICAgICAgICAgICAgICAgICAgICAgICwpCiAgICAgICAgICAgICAg
 ICB9CiAgICAgICAgICAgIH0pCiAgICAgICAgfQoKICAgICAgICBNZXRob2QgKF9QUEMsIDAs
 IE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgewogICAgICAgICAgICBSZXR1cm4gKFplcm8pCiAg
 ICAgICAgfQoKICAgICAgICBNZXRob2QgKF9QU0QsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAg
 ICAgewogICAgICAgICAgICBJZiAoQW5kIChUWVBFLCAweDAwMDAwODIwKSkKICAgICAgICAg
 ICAgewogICAgICAgICAgICAgICAgUmV0dXJuIChQYWNrYWdlICgweDAxKQogICAgICAgICAg
 ICAgICAgewogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDUpCiAgICAgICAgICAg
 ICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAweDA1LCAKICAgICAgICAgICAg
 ICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAs
 IAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMEZFLCAKICAgICAgICAgICAgICAg
 ICAgICAgICAgMHgwMDAwMDAwNAogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAg
 ICAgIH0pCiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIFJldHVybiAoWmVybykKICAgICAg
 ICB9CgogICAgICAgIE1ldGhvZCAoX0NTVCwgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICB7
 CiAgICAgICAgICAgIElmIChDb25kUmVmT2YgKFxfT1NJLCBMb2NhbDApKQogICAgICAgICAg
 ICB7CiAgICAgICAgICAgICAgICBJZiAoTEFuZCAoXF9PU0kgKCJXaW5kb3dzIDIwMDEuMSIp
 LCBMQW5kIChMTm90IChcX09TSSAoIldpbmRvd3MgMjAwNiIpKSwgTE5vdCAoXF9PU0kgKAog
 ICAgICAgICAgICAgICAgICAgICJXaW5kb3dzIDIwMDEuMSBTUDEiKSkpKSkKICAgICAgICAg
 ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMCwgQ1NFTikKICAgICAg
 ICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBJZiAoTEFuZCAoXF9PU0kgKCJXaW5kb3dz
 IDIwMDEiKSwgTEFuZCAoTE5vdCAoXF9PU0kgKCJXaW5kb3dzIDIwMDEgU1AyIikpLCBMTm90
 IChcX09TSSAoCiAgICAgICAgICAgICAgICAgICAgIldpbmRvd3MgMjAwMS4xIFNQMSIpKSkp
 KQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAwLCBD
 U0VOKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICBJZiAo
 Q1NFTikKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgSWYgKExBbmQgKE1XT1MsIEFu
 ZCAoVFlQRSwgMHgwMjAwKSkpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAg
 ICAgUmV0dXJuIChQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAg
 ICAgICAgICAgICAgICAgICAgMHgwMywgCiAgICAgICAgICAgICAgICAgICAgICAgIFBhY2th
 Z2UgKDB4MDQpCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZWdpc3RlciAoRkZpeGVk
 SFcsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAxLCAgICAgICAg
 ICAgICAgIC8vIEJpdCBXaWR0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAweDAyLCAgICAgICAgICAgICAgIC8vIEJpdCBPZmZzZXQKICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMDAwMDAwMDAwLCAvLyBBZGRyZXNzCiAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEsICAgICAgICAgICAgICAgLy8g
 QWNjZXNzIFNpemUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKQogICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgMHgwMSwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwMDEsIAogICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDNFOAogICAgICAgICAgICAgICAgICAgICAg
 ICB9LCAKCiAgICAgICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAg
 ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlc291cmNl
 VGVtcGxhdGUgKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICBSZWdpc3RlciAoRkZpeGVkSFcsIAogICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAweDAxLCAgICAgICAgICAgICAgIC8vIEJpdCBXaWR0
 aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAyLCAgICAgICAgICAg
 ICAgIC8vIEJpdCBPZmZzZXQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 MHgwMDAwMDAwMDAwMDAwMDEwLCAvLyBBZGRyZXNzCiAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgIDB4MDEsICAgICAgICAgICAgICAgLy8gQWNjZXNzIFNpemUKICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMiwgCiAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAweDAwNDAsIAogICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgMHgwMDAwMDFGNAogICAgICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAg
 ICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICAgICAgICAgIHsK
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICBSZWdpc3RlciAoRkZpeGVkSFcsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAweDAxLCAgICAgICAgICAgICAgIC8vIEJpdCBXaWR0aAogICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAweDAyLCAgICAgICAgICAgICAgIC8vIEJpdCBPZmZzZXQK
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMDAwMDAwMDIw
 LCAvLyBBZGRyZXNzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEs
 ICAgICAgICAgICAgICAgLy8gQWNjZXNzIFNpemUKICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgwMywgCiAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAweDAwNjAsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDE1RQogICAg
 ICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAg
 ICAgICAgIH0KCiAgICAgICAgICAgICAgICBSZXR1cm4gKFBhY2thZ2UgKDB4MDQpCiAgICAg
 ICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgMHgwMywgCiAgICAgICAgICAgICAg
 ICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAg
 ICAgICAgICAgICAgIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgICAgICAgICAg
 ICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVnaXN0ZXIgKEZGaXhlZEhXLCAK
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAgICAgICAgICAgICAgIC8v
 IEJpdCBXaWR0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsICAgICAg
 ICAgICAgICAgLy8gQml0IE9mZnNldAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 IDB4MDAwMDAwMDAwMDAwMDAwMCwgLy8gQWRkcmVzcwogICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICwpCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAg
 ICAgICAgICAgICAgMHgwMSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMSwgCiAg
 ICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAzRTgKICAgICAgICAgICAgICAgICAgICB9
 LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAg
 ICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFJlc291cmNlVGVtcGxhdGUgKCkKICAg
 ICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVn
 aXN0ZXIgKFN5c3RlbUlPLCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDA4
 LCAgICAgICAgICAgICAgIC8vIEJpdCBXaWR0aAogICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgIDB4MDAsICAgICAgICAgICAgICAgLy8gQml0IE9mZnNldAogICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAwMDAwMDQxNCwgLy8gQWRkcmVzcwogICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICwpCiAgICAgICAgICAgICAgICAgICAgICAg
 IH0sIAoKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMiwgCiAgICAgICAgICAgICAgICAg
 ICAgICAgIDB4MDA0MCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAxRjQKICAg
 ICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgw
 NCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFJlc291
 cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgUmVnaXN0ZXIgKFN5c3RlbUlPLCAKICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAweDA4LCAgICAgICAgICAgICAgIC8vIEJpdCBXaWR0aAogICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsICAgICAgICAgICAgICAgLy8gQml0IE9m
 ZnNldAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAwMDAwMDQx
 NSwgLy8gQWRkcmVzcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICwpCiAgICAg
 ICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMywg
 CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDA2MCwgCiAgICAgICAgICAgICAgICAgICAg
 ICAgIDB4MDAwMDAxNUUKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9
 KQogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBNZXRob2QgKF9UUEMsIDAsIE5v
 dFNlcmlhbGl6ZWQpCiAgICAgICAgewogICAgICAgICAgICBSZXR1cm4gKFplcm8pCiAgICAg
 ICAgfQoKICAgICAgICBNZXRob2QgKF9QVEMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAg
 ewogICAgICAgICAgICBSZXR1cm4gKFBhY2thZ2UgKDB4MDIpCiAgICAgICAgICAgIHsKICAg
 ICAgICAgICAgICAgIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgICAgIHsKICAg
 ICAgICAgICAgICAgICAgICBSZWdpc3RlciAoRkZpeGVkSFcsIAogICAgICAgICAgICAgICAg
 ICAgICAgICAweDAwLCAgICAgICAgICAgICAgIC8vIEJpdCBXaWR0aAogICAgICAgICAgICAg
 ICAgICAgICAgICAweDAwLCAgICAgICAgICAgICAgIC8vIEJpdCBPZmZzZXQKICAgICAgICAg
 ICAgICAgICAgICAgICAgMHgwMDAwMDAwMDAwMDAwMDAwLCAvLyBBZGRyZXNzCiAgICAgICAg
 ICAgICAgICAgICAgICAgICwpCiAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAg
 ICBSZXNvdXJjZVRlbXBsYXRlICgpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg
 ICAgICAgUmVnaXN0ZXIgKEZGaXhlZEhXLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgw
 MCwgICAgICAgICAgICAgICAvLyBCaXQgV2lkdGgKICAgICAgICAgICAgICAgICAgICAgICAg
 MHgwMCwgICAgICAgICAgICAgICAvLyBCaXQgT2Zmc2V0CiAgICAgICAgICAgICAgICAgICAg
 ICAgIDB4MDAwMDAwMDAwMDAwMDAwMCwgLy8gQWRkcmVzcwogICAgICAgICAgICAgICAgICAg
 ICAgICAsKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KQogICAgICAgIH0KCiAg
 ICAgICAgTWV0aG9kIChfVFNTLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgIHsKICAgICAg
 ICAgICAgSWYgKExBbmQgKFRTRU4sIEFuZCAoVFlQRSwgMHgwMDA0KSkpCiAgICAgICAgICAg
 IHsKICAgICAgICAgICAgICAgIFJldHVybiAoUGFja2FnZSAoMHgwOCkKICAgICAgICAgICAg
 ICAgIHsKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA1KQogICAgICAgICAgICAg
 ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDA2NCwgCiAgICAgICAg
 ICAgICAgICAgICAgICAgIDB4MDAwMDAyRjgsIAogICAgICAgICAgICAgICAgICAgICAgICAw
 eDAwMDAwMDAwLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwgCiAgICAg
 ICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAKICAgICAgICAgICAgICAgICAgICB9LCAK
 CiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNSkKICAgICAgICAgICAgICAgICAg
 ICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwNTgsIAogICAgICAgICAgICAg
 ICAgICAgICAgICAweDAwMDAwMjk5LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAw
 MDAwMCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMUUsIAogICAgICAgICAg
 ICAgICAgICAgICAgICAweDAwMDAwMDAwCiAgICAgICAgICAgICAgICAgICAgfSwgCgogICAg
 ICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDUpCiAgICAgICAgICAgICAgICAgICAgewog
 ICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDRCLCAKICAgICAgICAgICAgICAgICAg
 ICAgICAgMHgwMDAwMDIzQSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAs
 IAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDFDLCAKICAgICAgICAgICAgICAg
 ICAgICAgICAgMHgwMDAwMDAwMAogICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAg
 ICAgICAgICAgICBQYWNrYWdlICgweDA1KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAg
 ICAgICAgICAgICAgICAgICAgMHgwMDAwMDAzRiwgCiAgICAgICAgICAgICAgICAgICAgICAg
 IDB4MDAwMDAxREIsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAwLCAKICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAxQSwgCiAgICAgICAgICAgICAgICAgICAg
 ICAgIDB4MDAwMDAwMDAKICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAg
 ICAgICAgUGFja2FnZSAoMHgwNSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAg
 ICAgICAgICAgICAgIDB4MDAwMDAwMzIsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAw
 MDAwMTdDLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwgCiAgICAgICAg
 ICAgICAgICAgICAgICAgIDB4MDAwMDAwMTgsIAogICAgICAgICAgICAgICAgICAgICAgICAw
 eDAwMDAwMDAwCiAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAg
 IFBhY2thZ2UgKDB4MDUpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAg
 ICAgICAgICAweDAwMDAwMDI2LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDEx
 RCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAsIAogICAgICAgICAgICAg
 ICAgICAgICAgICAweDAwMDAwMDE2LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAw
 MDAwMAogICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICBQYWNr
 YWdlICgweDA1KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAg
 ICAgMHgwMDAwMDAxOSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwQkUsIAog
 ICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAwLCAKICAgICAgICAgICAgICAgICAg
 ICAgICAgMHgwMDAwMDAxNCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAK
 ICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAo
 MHgwNSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MDAwMDAwMEQsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDVGLCAKICAgICAg
 ICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwgCiAgICAgICAgICAgICAgICAgICAgICAg
 IDB4MDAwMDAwMTIsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAwCiAgICAg
 ICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfQoKICAg
 ICAgICAgICAgUmV0dXJuIChaZXJvKQogICAgICAgIH0KCiAgICAgICAgTWV0aG9kIChfVFNE
 LCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgIHsKICAgICAgICAgICAgSWYgKEFuZCAoVFlQ
 RSwgMHgwMDAwMDA4MCkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIFJldHVybiAo
 UGFja2FnZSAoMHgwMSkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBQ
 YWNrYWdlICgweDA1KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAg
 ICAgICAgMHgwNSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsIAogICAgICAgICAg
 ICAgICAgICAgICAgICAweDAwMDAwMDAyLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgw
 MDAwMDBGRCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDEKICAgICAgICAg
 ICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9CgogICAgICAg
 ICAgICBSZXR1cm4gKFplcm8pCiAgICAgICAgfQogICAgfQoKICAgIFNjb3BlIChcX1BSLkNQ
 VTIpCiAgICB7CiAgICAgICAgTmFtZSAoVFlQRSwgMHgwMDAwMDAwMCkKICAgICAgICBOYW1l
 IChQU0VOLCAweDAwMDAwMDAxKQogICAgICAgIE5hbWUgKENTRU4sIDB4MDAwMDAwMDEpCiAg
 ICAgICAgTmFtZSAoTVdPUywgMHgwMDAwMDAwMSkKICAgICAgICBOYW1lIChUU0VOLCAweDAw
 MDAwMDAxKQogICAgICAgIE1ldGhvZCAoX1BEQywgMSwgTm90U2VyaWFsaXplZCkKICAgICAg
 ICB7CiAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKEFyZzAsIDB4MDgsIENBUEEpCiAg
 ICAgICAgICAgIFN0b3JlIChDQVBBLCBUWVBFKQogICAgICAgICAgICBDcmVhdGVEV29yZEZp
 ZWxkIChBcmcwLCAweDAwLCBSRVZTKQogICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChB
 cmcwLCAweDA0LCBTSVpFKQogICAgICAgICAgICBTdG9yZSAoU2l6ZU9mIChBcmcwKSwgTG9j
 YWwwKQogICAgICAgICAgICBTdG9yZSAoU3VidHJhY3QgKExvY2FsMCwgMHgwOCksIExvY2Fs
 MSkKICAgICAgICAgICAgQ3JlYXRlRmllbGQgKEFyZzAsIDB4NDAsIE11bHRpcGx5IChMb2Nh
 bDEsIDB4MDgpLCBURU1QKQogICAgICAgICAgICBOYW1lIChTVFMwLCBCdWZmZXIgKDB4MDQp
 CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAK
 ICAgICAgICAgICAgfSkKICAgICAgICAgICAgQ29uY2F0ZW5hdGUgKFNUUzAsIFRFTVAsIExv
 Y2FsMikKICAgICAgICAgICAgX09TQyAoQnVmZmVyICgweDEwKQogICAgICAgICAgICAgICAg
 ewogICAgICAgICAgICAgICAgICAgIC8qIDAwMDAgKi8gICAgMHgxNiwgMHhBNiwgMHg3Nywg
 MHg0MCwgMHgwQywgMHgyOSwgMHhCRSwgMHg0NywgCiAgICAgICAgICAgICAgICAgICAgLyog
 MDAwOCAqLyAgICAweDlFLCAweEJELCAweEQ4LCAweDcwLCAweDU4LCAweDcxLCAweDM5LCAw
 eDUzCiAgICAgICAgICAgICAgICB9LCBSRVZTLCBTSVpFLCBMb2NhbDIpCiAgICAgICAgfQoK
 ICAgICAgICBNZXRob2QgKF9PU0MsIDQsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgewogICAg
 ICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChBcmczLCAweDA0LCBDQVBBKQogICAgICAgICAg
 ICBTdG9yZSAoQ0FQQSwgVFlQRSkKICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQXJn
 MywgMHgwMCwgU1RTMCkKICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQXJnMywgMHgw
 NCwgQ0FQMCkKICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQXJnMCwgMHgwMCwgSUlE
 MCkKICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQXJnMCwgMHgwNCwgSUlEMSkKICAg
 ICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQXJnMCwgMHgwOCwgSUlEMikKICAgICAgICAg
 ICAgQ3JlYXRlRFdvcmRGaWVsZCAoQXJnMCwgMHgwQywgSUlEMykKICAgICAgICAgICAgTmFt
 ZSAoVUlEMCwgQnVmZmVyICgweDEwKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAv
 KiAwMDAwICovICAgIDB4MTYsIDB4QTYsIDB4NzcsIDB4NDAsIDB4MEMsIDB4MjksIDB4QkUs
 IDB4NDcsIAogICAgICAgICAgICAgICAgLyogMDAwOCAqLyAgICAweDlFLCAweEJELCAweEQ4
 LCAweDcwLCAweDU4LCAweDcxLCAweDM5LCAweDUzCiAgICAgICAgICAgIH0pCiAgICAgICAg
 ICAgIENyZWF0ZURXb3JkRmllbGQgKEFyZzAsIDB4MDAsIEVJRDApCiAgICAgICAgICAgIENy
 ZWF0ZURXb3JkRmllbGQgKEFyZzAsIDB4MDQsIEVJRDEpCiAgICAgICAgICAgIENyZWF0ZURX
 b3JkRmllbGQgKEFyZzAsIDB4MDgsIEVJRDIpCiAgICAgICAgICAgIENyZWF0ZURXb3JkRmll
 bGQgKEFyZzAsIDB4MEMsIEVJRDMpCiAgICAgICAgICAgIElmIChMTm90IChMQW5kIChMQW5k
 IChMRXF1YWwgKElJRDAsIEVJRDApLCBMRXF1YWwgKElJRDEsIEVJRDEpKSwgCiAgICAgICAg
 ICAgICAgICBMQW5kIChMRXF1YWwgKElJRDIsIEVJRDIpLCBMRXF1YWwgKElJRDMsIEVJRDMp
 KSkpKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBTdG9yZSAoMHgwNiwgSW5kZXgg
 KFNUUzAsIDB4MDApKQogICAgICAgICAgICAgICAgUmV0dXJuIChBcmczKQogICAgICAgICAg
 ICB9CgogICAgICAgICAgICBJZiAoTE5vdEVxdWFsIChBcmcxLCAweDAxKSkKICAgICAgICAg
 ICAgewogICAgICAgICAgICAgICAgU3RvcmUgKDB4MEEsIEluZGV4IChTVFMwLCAweDAwKSkK
 ICAgICAgICAgICAgICAgIFJldHVybiAoQXJnMykKICAgICAgICAgICAgfQoKICAgICAgICAg
 ICAgSWYgKEFuZCAoU1RTMCwgMHgwMSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg
 IEFuZCAoQ0FQMCwgMHgwQkZGLCBDQVAwKQogICAgICAgICAgICAgICAgUmV0dXJuIChBcmcz
 KQogICAgICAgICAgICB9CgogICAgICAgICAgICBBbmQgKENBUDAsIDB4MEJGRiwgQ0FQMCkK
 ICAgICAgICAgICAgU3RvcmUgKENBUDAsIFRZUEUpCiAgICAgICAgICAgIFJldHVybiAoQXJn
 MykKICAgICAgICB9CgogICAgICAgIE1ldGhvZCAoX1BTUywgMCwgTm90U2VyaWFsaXplZCkK
 ICAgICAgICB7CiAgICAgICAgICAgIElmIChQU0VOKQogICAgICAgICAgICB7CiAgICAgICAg
 ICAgICAgICBSZXR1cm4gKFBhY2thZ2UgKDB4MEQpCiAgICAgICAgICAgICAgICB7CiAgICAg
 ICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNikKICAgICAgICAgICAgICAgICAgICB7CiAg
 ICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDBBNjUsIAogICAgICAgICAgICAgICAgICAg
 ICAgICAweDAwMDE3MzE4LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwQSwg
 CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMEEsIAogICAgICAgICAgICAgICAg
 ICAgICAgICAweDAwMDAwMDE1LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAx
 NQogICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICBQYWNrYWdl
 ICgweDA2KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAg
 MHgwMDAwMEE2NCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMTczMTgsIAogICAg
 ICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDBBLCAKICAgICAgICAgICAgICAgICAgICAg
 ICAgMHgwMDAwMDAwQSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMTQsIAog
 ICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDE0CiAgICAgICAgICAgICAgICAgICAg
 fSwgCgogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDYpCiAgICAgICAgICAgICAg
 ICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwOURGLCAKICAgICAgICAg
 ICAgICAgICAgICAgICAgMHgwMDAxMzBCMCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MDAwMDAwMEEsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDBBLCAKICAgICAg
 ICAgICAgICAgICAgICAgICAgMHgwMDAwMDAxMywgCiAgICAgICAgICAgICAgICAgICAgICAg
 IDB4MDAwMDAwMTMKICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAg
 ICAgUGFja2FnZSAoMHgwNikKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAg
 ICAgICAgICAgIDB4MDAwMDA5NUEsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDEx
 MTcwLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwQSwgCiAgICAgICAgICAg
 ICAgICAgICAgICAgIDB4MDAwMDAwMEEsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAw
 MDAwMDEyLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAxMgogICAgICAgICAg
 ICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA2KQogICAg
 ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDhENSwg
 CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMERFQTgsIAogICAgICAgICAgICAgICAg
 ICAgICAgICAweDAwMDAwMDBBLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAw
 QSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMTEsIAogICAgICAgICAgICAg
 ICAgICAgICAgICAweDAwMDAwMDExCiAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAg
 ICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDYpCiAgICAgICAgICAgICAgICAgICAgewogICAg
 ICAgICAgICAgICAgICAgICAgICAweDAwMDAwODUwLCAKICAgICAgICAgICAgICAgICAgICAg
 ICAgMHgwMDAwQzczOCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMEEsIAog
 ICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDBBLCAKICAgICAgICAgICAgICAgICAg
 ICAgICAgMHgwMDAwMDAxMCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMTAK
 ICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAo
 MHgwNikKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MDAwMDA3Q0IsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDBBMDI4LCAKICAgICAg
 ICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwQSwgCiAgICAgICAgICAgICAgICAgICAgICAg
 IDB4MDAwMDAwMEEsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDBGLCAKICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwRgogICAgICAgICAgICAgICAgICAgIH0s
 IAoKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA2KQogICAgICAgICAgICAgICAg
 ICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDc0NiwgCiAgICAgICAgICAg
 ICAgICAgICAgICAgIDB4MDAwMDhDQTAsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAw
 MDAwMDBBLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwQSwgCiAgICAgICAg
 ICAgICAgICAgICAgICAgIDB4MDAwMDAwMEUsIAogICAgICAgICAgICAgICAgICAgICAgICAw
 eDAwMDAwMDBFCiAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAg
 IFBhY2thZ2UgKDB4MDYpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAg
 ICAgICAgICAweDAwMDAwNkMxLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwNkQ2
 MCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMEEsIAogICAgICAgICAgICAg
 ICAgICAgICAgICAweDAwMDAwMDBBLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAw
 MDAwRCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMEQKICAgICAgICAgICAg
 ICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNikKICAgICAg
 ICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDA2M0MsIAog
 ICAgICAgICAgICAgICAgICAgICAgICAweDAwMDA2MUE4LCAKICAgICAgICAgICAgICAgICAg
 ICAgICAgMHgwMDAwMDAwQSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMEEs
 IAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDBDLCAKICAgICAgICAgICAgICAg
 ICAgICAgICAgMHgwMDAwMDAwQwogICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAg
 ICAgICAgICAgICBQYWNrYWdlICgweDA2KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAg
 ICAgICAgICAgICAgICAgICAgMHgwMDAwMDVCNywgCiAgICAgICAgICAgICAgICAgICAgICAg
 IDB4MDAwMDRBMzgsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDBBLCAKICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwQSwgCiAgICAgICAgICAgICAgICAgICAg
 ICAgIDB4MDAwMDAwMEIsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDBCCiAg
 ICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4
 MDYpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAweDAw
 MDAwNTMyLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwNDI2OCwgCiAgICAgICAg
 ICAgICAgICAgICAgICAgIDB4MDAwMDAwMEEsIAogICAgICAgICAgICAgICAgICAgICAgICAw
 eDAwMDAwMDBBLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwQSwgCiAgICAg
 ICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMEEKICAgICAgICAgICAgICAgICAgICB9LCAK
 CiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNikKICAgICAgICAgICAgICAgICAg
 ICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDA0QUQsIAogICAgICAgICAgICAg
 ICAgICAgICAgICAweDAwMDAzMkM4LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAw
 MDAwQSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMEEsIAogICAgICAgICAg
 ICAgICAgICAgICAgICAweDAwMDAwMDA5LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgw
 MDAwMDAwOQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0pCiAgICAg
 ICAgICAgIH0KCiAgICAgICAgICAgIFJldHVybiAoWmVybykKICAgICAgICB9CgogICAgICAg
 IE1ldGhvZCAoX1BDVCwgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICB7CiAgICAgICAgICAg
 IFJldHVybiAoUGFja2FnZSAoMHgwMikKICAgICAgICAgICAgewogICAgICAgICAgICAgICAg
 UmVzb3VyY2VUZW1wbGF0ZSAoKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAg
 ICAgIFJlZ2lzdGVyIChGRml4ZWRIVywgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4NDAs
 ICAgICAgICAgICAgICAgLy8gQml0IFdpZHRoCiAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MDAsICAgICAgICAgICAgICAgLy8gQml0IE9mZnNldAogICAgICAgICAgICAgICAgICAgICAg
 ICAweDAwMDAwMDAwMDAwMDAxOTksIC8vIEFkZHJlc3MKICAgICAgICAgICAgICAgICAgICAg
 ICAgLCkKICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgIFJlc291cmNlVGVt
 cGxhdGUgKCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBSZWdpc3Rl
 ciAoRkZpeGVkSFcsIAogICAgICAgICAgICAgICAgICAgICAgICAweDEwLCAgICAgICAgICAg
 ICAgIC8vIEJpdCBXaWR0aAogICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAgICAgICAg
 ICAgICAgIC8vIEJpdCBPZmZzZXQKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAw
 MDAwMDAwMTk4LCAvLyBBZGRyZXNzCiAgICAgICAgICAgICAgICAgICAgICAgICwpCiAgICAg
 ICAgICAgICAgICB9CiAgICAgICAgICAgIH0pCiAgICAgICAgfQoKICAgICAgICBNZXRob2Qg
 KF9QUEMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgewogICAgICAgICAgICBSZXR1cm4g
 KFplcm8pCiAgICAgICAgfQoKICAgICAgICBNZXRob2QgKF9QU0QsIDAsIE5vdFNlcmlhbGl6
 ZWQpCiAgICAgICAgewogICAgICAgICAgICBJZiAoQW5kIChUWVBFLCAweDAwMDAwODIwKSkK
 ICAgICAgICAgICAgewogICAgICAgICAgICAgICAgUmV0dXJuIChQYWNrYWdlICgweDAxKQog
 ICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDUpCiAg
 ICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAweDA1LCAKICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MDAwMDAwMDAsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMEZFLCAKICAgICAg
 ICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwNAogICAgICAgICAgICAgICAgICAgIH0KICAg
 ICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIFJldHVybiAoWmVy
 bykKICAgICAgICB9CgogICAgICAgIE1ldGhvZCAoX0NTVCwgMCwgTm90U2VyaWFsaXplZCkK
 ICAgICAgICB7CiAgICAgICAgICAgIElmIChDb25kUmVmT2YgKFxfT1NJLCBMb2NhbDApKQog
 ICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBJZiAoTEFuZCAoXF9PU0kgKCJXaW5kb3dz
 IDIwMDEuMSIpLCBMQW5kIChMTm90IChcX09TSSAoIldpbmRvd3MgMjAwNiIpKSwgTE5vdCAo
 XF9PU0kgKAogICAgICAgICAgICAgICAgICAgICJXaW5kb3dzIDIwMDEuMSBTUDEiKSkpKSkK
 ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMCwgQ1NF
 TikKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBJZiAoTEFuZCAoXF9PU0kg
 KCJXaW5kb3dzIDIwMDEiKSwgTEFuZCAoTE5vdCAoXF9PU0kgKCJXaW5kb3dzIDIwMDEgU1Ay
 IikpLCBMTm90IChcX09TSSAoCiAgICAgICAgICAgICAgICAgICAgIldpbmRvd3MgMjAwMS4x
 IFNQMSIpKSkpKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIFN0b3Jl
 ICgweDAwLCBDU0VOKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAg
 ICAgICBJZiAoQ1NFTikKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgSWYgKExBbmQg
 KE1XT1MsIEFuZCAoVFlQRSwgMHgwMjAwKSkpCiAgICAgICAgICAgICAgICB7CiAgICAgICAg
 ICAgICAgICAgICAgUmV0dXJuIChQYWNrYWdlICgweDA0KQogICAgICAgICAgICAgICAgICAg
 IHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMywgCiAgICAgICAgICAgICAgICAgICAg
 ICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZWdpc3Rl
 ciAoRkZpeGVkSFcsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAx
 LCAgICAgICAgICAgICAgIC8vIEJpdCBXaWR0aAogICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAweDAyLCAgICAgICAgICAgICAgIC8vIEJpdCBPZmZzZXQKICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMDAwMDAwMDAwLCAvLyBBZGRy
 ZXNzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEsICAgICAgICAg
 ICAgICAgLy8gQWNjZXNzIFNpemUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgMHgwMSwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwMDEs
 IAogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDNFOAogICAgICAgICAgICAg
 ICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQp
 CiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAg
 IFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZWdpc3RlciAoRkZpeGVkSFcsIAogICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAxLCAgICAgICAgICAgICAgIC8v
 IEJpdCBXaWR0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAyLCAg
 ICAgICAgICAgICAgIC8vIEJpdCBPZmZzZXQKICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgMHgwMDAwMDAwMDAwMDAwMDEwLCAvLyBBZGRyZXNzCiAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgIDB4MDEsICAgICAgICAgICAgICAgLy8gQWNjZXNzIFNp
 emUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMiwg
 CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwNDAsIAogICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgMHgwMDAwMDFGNAogICAgICAgICAgICAgICAgICAgICAgICB9LCAKCiAg
 ICAgICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICAg
 ICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlc291cmNlVGVtcGxhdGUg
 KCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICBSZWdpc3RlciAoRkZpeGVkSFcsIAogICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAweDAxLCAgICAgICAgICAgICAgIC8vIEJpdCBXaWR0aAogICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAyLCAgICAgICAgICAgICAgIC8vIEJp
 dCBPZmZzZXQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAw
 MDAwMDAwMDIwLCAvLyBBZGRyZXNzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgIDB4MDEsICAgICAgICAgICAgICAgLy8gQWNjZXNzIFNpemUKICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwg
 CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMywgCiAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAweDAwNjAsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAw
 MDE1RQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfSkK
 ICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBSZXR1cm4gKFBhY2thZ2UgKDB4
 MDQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgMHgwMywgCiAgICAg
 ICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgICAgICB7CiAg
 ICAgICAgICAgICAgICAgICAgICAgIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAg
 ICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVnaXN0ZXIgKEZG
 aXhlZEhXLCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAgICAgICAg
 ICAgICAgIC8vIEJpdCBXaWR0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MDAsICAgICAgICAgICAgICAgLy8gQml0IE9mZnNldAogICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgIDB4MDAwMDAwMDAwMDAwMDAwMCwgLy8gQWRkcmVzcwogICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICwpCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIAoKICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgwMSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MDAwMSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAzRTgKICAgICAgICAgICAg
 ICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAg
 ICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFJlc291cmNlVGVtcGxh
 dGUgKCkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgUmVnaXN0ZXIgKFN5c3RlbUlPLCAKICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAweDA4LCAgICAgICAgICAgICAgIC8vIEJpdCBXaWR0aAogICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgIDB4MDAsICAgICAgICAgICAgICAgLy8gQml0IE9mZnNldAogICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAwMDAwMDQxNCwgLy8gQWRk
 cmVzcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICwpCiAgICAgICAgICAgICAg
 ICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMiwgCiAgICAgICAg
 ICAgICAgICAgICAgICAgIDB4MDA0MCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAw
 MDAxRjQKICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFj
 a2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAg
 ICAgIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgUmVnaXN0ZXIgKFN5c3RlbUlPLCAKICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAweDA4LCAgICAgICAgICAgICAgIC8vIEJpdCBXaWR0
 aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsICAgICAgICAgICAgICAg
 Ly8gQml0IE9mZnNldAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAw
 MDAwMDAwMDQxNSwgLy8gQWRkcmVzcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICwpCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICAg
 ICAgMHgwMywgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDA2MCwgCiAgICAgICAgICAg
 ICAgICAgICAgICAgIDB4MDAwMDAxNUUKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAg
 ICAgICAgICB9KQogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBNZXRob2QgKF9U
 UEMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgewogICAgICAgICAgICBSZXR1cm4gKFpl
 cm8pCiAgICAgICAgfQoKICAgICAgICBNZXRob2QgKF9QVEMsIDAsIE5vdFNlcmlhbGl6ZWQp
 CiAgICAgICAgewogICAgICAgICAgICBSZXR1cm4gKFBhY2thZ2UgKDB4MDIpCiAgICAgICAg
 ICAgIHsKICAgICAgICAgICAgICAgIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAg
 ICAgIHsKICAgICAgICAgICAgICAgICAgICBSZWdpc3RlciAoRkZpeGVkSFcsIAogICAgICAg
 ICAgICAgICAgICAgICAgICAweDAwLCAgICAgICAgICAgICAgIC8vIEJpdCBXaWR0aAogICAg
 ICAgICAgICAgICAgICAgICAgICAweDAwLCAgICAgICAgICAgICAgIC8vIEJpdCBPZmZzZXQK
 ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMDAwMDAwMDAwLCAvLyBBZGRyZXNz
 CiAgICAgICAgICAgICAgICAgICAgICAgICwpCiAgICAgICAgICAgICAgICB9LCAKCiAgICAg
 ICAgICAgICAgICBSZXNvdXJjZVRlbXBsYXRlICgpCiAgICAgICAgICAgICAgICB7CiAgICAg
 ICAgICAgICAgICAgICAgUmVnaXN0ZXIgKEZGaXhlZEhXLCAKICAgICAgICAgICAgICAgICAg
 ICAgICAgMHgwMCwgICAgICAgICAgICAgICAvLyBCaXQgV2lkdGgKICAgICAgICAgICAgICAg
 ICAgICAgICAgMHgwMCwgICAgICAgICAgICAgICAvLyBCaXQgT2Zmc2V0CiAgICAgICAgICAg
 ICAgICAgICAgICAgIDB4MDAwMDAwMDAwMDAwMDAwMCwgLy8gQWRkcmVzcwogICAgICAgICAg
 ICAgICAgICAgICAgICAsKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KQogICAg
 ICAgIH0KCiAgICAgICAgTWV0aG9kIChfVFNTLCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAg
 IHsKICAgICAgICAgICAgSWYgKExBbmQgKFRTRU4sIEFuZCAoVFlQRSwgMHgwMDA0KSkpCiAg
 ICAgICAgICAgIHsKICAgICAgICAgICAgICAgIFJldHVybiAoUGFja2FnZSAoMHgwOCkKICAg
 ICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA1KQogICAg
 ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDA2NCwg
 CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAyRjgsIAogICAgICAgICAgICAgICAg
 ICAgICAgICAweDAwMDAwMDAwLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAw
 MCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAKICAgICAgICAgICAgICAg
 ICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNSkKICAgICAgICAg
 ICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwNTgsIAogICAg
 ICAgICAgICAgICAgICAgICAgICAweDAwMDAwMjk5LCAKICAgICAgICAgICAgICAgICAgICAg
 ICAgMHgwMDAwMDAwMCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMUUsIAog
 ICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAwCiAgICAgICAgICAgICAgICAgICAg
 fSwgCgogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDUpCiAgICAgICAgICAgICAg
 ICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDRCLCAKICAgICAgICAg
 ICAgICAgICAgICAgICAgMHgwMDAwMDIzQSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MDAwMDAwMDAsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDFDLCAKICAgICAg
 ICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMAogICAgICAgICAgICAgICAgICAgIH0sIAoK
 ICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA1KQogICAgICAgICAgICAgICAgICAg
 IHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAzRiwgCiAgICAgICAgICAgICAg
 ICAgICAgICAgIDB4MDAwMDAxREIsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAw
 MDAwLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAxQSwgCiAgICAgICAgICAg
 ICAgICAgICAgICAgIDB4MDAwMDAwMDAKICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAg
 ICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNSkKICAgICAgICAgICAgICAgICAgICB7CiAg
 ICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMzIsIAogICAgICAgICAgICAgICAgICAg
 ICAgICAweDAwMDAwMTdDLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwg
 CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMTgsIAogICAgICAgICAgICAgICAg
 ICAgICAgICAweDAwMDAwMDAwCiAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAg
 ICAgICAgICAgIFBhY2thZ2UgKDB4MDUpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAg
 ICAgICAgICAgICAgICAgICAweDAwMDAwMDI2LCAKICAgICAgICAgICAgICAgICAgICAgICAg
 MHgwMDAwMDExRCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAsIAogICAg
 ICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDE2LCAKICAgICAgICAgICAgICAgICAgICAg
 ICAgMHgwMDAwMDAwMAogICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAg
 ICAgICBQYWNrYWdlICgweDA1KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgICAgICAgICAgMHgwMDAwMDAxOSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAw
 MDAwQkUsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAwLCAKICAgICAgICAg
 ICAgICAgICAgICAgICAgMHgwMDAwMDAxNCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MDAwMDAwMDAKICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAg
 UGFja2FnZSAoMHgwNSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAg
 ICAgICAgIDB4MDAwMDAwMEQsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDVG
 LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwgCiAgICAgICAgICAgICAg
 ICAgICAgICAgIDB4MDAwMDAwMTIsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAw
 MDAwCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSkKICAgICAgICAg
 ICAgfQoKICAgICAgICAgICAgUmV0dXJuIChaZXJvKQogICAgICAgIH0KCiAgICAgICAgTWV0
 aG9kIChfVFNELCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgIHsKICAgICAgICAgICAgSWYg
 KEFuZCAoVFlQRSwgMHgwMDAwMDA4MCkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg
 IFJldHVybiAoUGFja2FnZSAoMHgwMSkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgICAgICBQYWNrYWdlICgweDA1KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAg
 ICAgICAgICAgICAgICAgMHgwNSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsIAog
 ICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDA0LCAKICAgICAgICAgICAgICAgICAg
 ICAgICAgMHgwMDAwMDBGRCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDEK
 ICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9
 CgogICAgICAgICAgICBSZXR1cm4gKFplcm8pCiAgICAgICAgfQogICAgfQoKICAgIFNjb3Bl
 IChcX1BSLkNQVTMpCiAgICB7CiAgICAgICAgTmFtZSAoVFlQRSwgMHgwMDAwMDAwMCkKICAg
 ICAgICBOYW1lIChQU0VOLCAweDAwMDAwMDAxKQogICAgICAgIE5hbWUgKENTRU4sIDB4MDAw
 MDAwMDEpCiAgICAgICAgTmFtZSAoTVdPUywgMHgwMDAwMDAwMSkKICAgICAgICBOYW1lIChU
 U0VOLCAweDAwMDAwMDAxKQogICAgICAgIE1ldGhvZCAoX1BEQywgMSwgTm90U2VyaWFsaXpl
 ZCkKICAgICAgICB7CiAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKEFyZzAsIDB4MDgs
 IENBUEEpCiAgICAgICAgICAgIFN0b3JlIChDQVBBLCBUWVBFKQogICAgICAgICAgICBDcmVh
 dGVEV29yZEZpZWxkIChBcmcwLCAweDAwLCBSRVZTKQogICAgICAgICAgICBDcmVhdGVEV29y
 ZEZpZWxkIChBcmcwLCAweDA0LCBTSVpFKQogICAgICAgICAgICBTdG9yZSAoU2l6ZU9mIChB
 cmcwKSwgTG9jYWwwKQogICAgICAgICAgICBTdG9yZSAoU3VidHJhY3QgKExvY2FsMCwgMHgw
 OCksIExvY2FsMSkKICAgICAgICAgICAgQ3JlYXRlRmllbGQgKEFyZzAsIDB4NDAsIE11bHRp
 cGx5IChMb2NhbDEsIDB4MDgpLCBURU1QKQogICAgICAgICAgICBOYW1lIChTVFMwLCBCdWZm
 ZXIgKDB4MDQpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIDB4MDAsIDB4MDAsIDB4
 MDAsIDB4MDAKICAgICAgICAgICAgfSkKICAgICAgICAgICAgQ29uY2F0ZW5hdGUgKFNUUzAs
 IFRFTVAsIExvY2FsMikKICAgICAgICAgICAgX09TQyAoQnVmZmVyICgweDEwKQogICAgICAg
 ICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIC8qIDAwMDAgKi8gICAgMHgxNiwgMHhB
 NiwgMHg3NywgMHg0MCwgMHgwQywgMHgyOSwgMHhCRSwgMHg0NywgCiAgICAgICAgICAgICAg
 ICAgICAgLyogMDAwOCAqLyAgICAweDlFLCAweEJELCAweEQ4LCAweDcwLCAweDU4LCAweDcx
 LCAweDM5LCAweDUzCiAgICAgICAgICAgICAgICB9LCBSRVZTLCBTSVpFLCBMb2NhbDIpCiAg
 ICAgICAgfQoKICAgICAgICBNZXRob2QgKF9PU0MsIDQsIE5vdFNlcmlhbGl6ZWQpCiAgICAg
 ICAgewogICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChBcmczLCAweDA0LCBDQVBBKQog
 ICAgICAgICAgICBTdG9yZSAoQ0FQQSwgVFlQRSkKICAgICAgICAgICAgQ3JlYXRlRFdvcmRG
 aWVsZCAoQXJnMywgMHgwMCwgU1RTMCkKICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAo
 QXJnMywgMHgwNCwgQ0FQMCkKICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQXJnMCwg
 MHgwMCwgSUlEMCkKICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQXJnMCwgMHgwNCwg
 SUlEMSkKICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQXJnMCwgMHgwOCwgSUlEMikK
 ICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQXJnMCwgMHgwQywgSUlEMykKICAgICAg
 ICAgICAgTmFtZSAoVUlEMCwgQnVmZmVyICgweDEwKQogICAgICAgICAgICB7CiAgICAgICAg
 ICAgICAgICAvKiAwMDAwICovICAgIDB4MTYsIDB4QTYsIDB4NzcsIDB4NDAsIDB4MEMsIDB4
 MjksIDB4QkUsIDB4NDcsIAogICAgICAgICAgICAgICAgLyogMDAwOCAqLyAgICAweDlFLCAw
 eEJELCAweEQ4LCAweDcwLCAweDU4LCAweDcxLCAweDM5LCAweDUzCiAgICAgICAgICAgIH0p
 CiAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKEFyZzAsIDB4MDAsIEVJRDApCiAgICAg
 ICAgICAgIENyZWF0ZURXb3JkRmllbGQgKEFyZzAsIDB4MDQsIEVJRDEpCiAgICAgICAgICAg
 IENyZWF0ZURXb3JkRmllbGQgKEFyZzAsIDB4MDgsIEVJRDIpCiAgICAgICAgICAgIENyZWF0
 ZURXb3JkRmllbGQgKEFyZzAsIDB4MEMsIEVJRDMpCiAgICAgICAgICAgIElmIChMTm90IChM
 QW5kIChMQW5kIChMRXF1YWwgKElJRDAsIEVJRDApLCBMRXF1YWwgKElJRDEsIEVJRDEpKSwg
 CiAgICAgICAgICAgICAgICBMQW5kIChMRXF1YWwgKElJRDIsIEVJRDIpLCBMRXF1YWwgKElJ
 RDMsIEVJRDMpKSkpKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBTdG9yZSAoMHgw
 NiwgSW5kZXggKFNUUzAsIDB4MDApKQogICAgICAgICAgICAgICAgUmV0dXJuIChBcmczKQog
 ICAgICAgICAgICB9CgogICAgICAgICAgICBJZiAoTE5vdEVxdWFsIChBcmcxLCAweDAxKSkK
 ICAgICAgICAgICAgewogICAgICAgICAgICAgICAgU3RvcmUgKDB4MEEsIEluZGV4IChTVFMw
 LCAweDAwKSkKICAgICAgICAgICAgICAgIFJldHVybiAoQXJnMykKICAgICAgICAgICAgfQoK
 ICAgICAgICAgICAgSWYgKEFuZCAoU1RTMCwgMHgwMSkpCiAgICAgICAgICAgIHsKICAgICAg
 ICAgICAgICAgIEFuZCAoQ0FQMCwgMHgwQkZGLCBDQVAwKQogICAgICAgICAgICAgICAgUmV0
 dXJuIChBcmczKQogICAgICAgICAgICB9CgogICAgICAgICAgICBBbmQgKENBUDAsIDB4MEJG
 RiwgQ0FQMCkKICAgICAgICAgICAgU3RvcmUgKENBUDAsIFRZUEUpCiAgICAgICAgICAgIFJl
 dHVybiAoQXJnMykKICAgICAgICB9CgogICAgICAgIE1ldGhvZCAoX1BTUywgMCwgTm90U2Vy
 aWFsaXplZCkKICAgICAgICB7CiAgICAgICAgICAgIElmIChQU0VOKQogICAgICAgICAgICB7
 CiAgICAgICAgICAgICAgICBSZXR1cm4gKFBhY2thZ2UgKDB4MEQpCiAgICAgICAgICAgICAg
 ICB7CiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNikKICAgICAgICAgICAgICAg
 ICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDBBNjUsIAogICAgICAgICAg
 ICAgICAgICAgICAgICAweDAwMDE3MzE4LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgw
 MDAwMDAwQSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMEEsIAogICAgICAg
 ICAgICAgICAgICAgICAgICAweDAwMDAwMDE1LCAKICAgICAgICAgICAgICAgICAgICAgICAg
 MHgwMDAwMDAxNQogICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAg
 ICBQYWNrYWdlICgweDA2KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAg
 ICAgICAgICAgMHgwMDAwMEE2NCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMTcz
 MTgsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDBBLCAKICAgICAgICAgICAg
 ICAgICAgICAgICAgMHgwMDAwMDAwQSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAw
 MDAwMTQsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDE0CiAgICAgICAgICAg
 ICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDYpCiAgICAg
 ICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwOURGLCAK
 ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAxMzBCMCwgCiAgICAgICAgICAgICAgICAg
 ICAgICAgIDB4MDAwMDAwMEEsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDBB
 LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAxMywgCiAgICAgICAgICAgICAg
 ICAgICAgICAgIDB4MDAwMDAwMTMKICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAg
 ICAgICAgICAgICAgUGFja2FnZSAoMHgwNikKICAgICAgICAgICAgICAgICAgICB7CiAgICAg
 ICAgICAgICAgICAgICAgICAgIDB4MDAwMDA5NUEsIAogICAgICAgICAgICAgICAgICAgICAg
 ICAweDAwMDExMTcwLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwQSwgCiAg
 ICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMEEsIAogICAgICAgICAgICAgICAgICAg
 ICAgICAweDAwMDAwMDEyLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAxMgog
 ICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgw
 eDA2KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgw
 MDAwMDhENSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMERFQTgsIAogICAgICAg
 ICAgICAgICAgICAgICAgICAweDAwMDAwMDBBLCAKICAgICAgICAgICAgICAgICAgICAgICAg
 MHgwMDAwMDAwQSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMTEsIAogICAg
 ICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDExCiAgICAgICAgICAgICAgICAgICAgfSwg
 CgogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDYpCiAgICAgICAgICAgICAgICAg
 ICAgewogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwODUwLCAKICAgICAgICAgICAg
 ICAgICAgICAgICAgMHgwMDAwQzczOCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAw
 MDAwMEEsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDBBLCAKICAgICAgICAg
 ICAgICAgICAgICAgICAgMHgwMDAwMDAxMCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MDAwMDAwMTAKICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAg
 UGFja2FnZSAoMHgwNikKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAg
 ICAgICAgIDB4MDAwMDA3Q0IsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDBBMDI4
 LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwQSwgCiAgICAgICAgICAgICAg
 ICAgICAgICAgIDB4MDAwMDAwMEEsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAw
 MDBGLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwRgogICAgICAgICAgICAg
 ICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA2KQogICAgICAg
 ICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDc0NiwgCiAg
 ICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDhDQTAsIAogICAgICAgICAgICAgICAgICAg
 ICAgICAweDAwMDAwMDBBLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwQSwg
 CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMEUsIAogICAgICAgICAgICAgICAg
 ICAgICAgICAweDAwMDAwMDBFCiAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAg
 ICAgICAgICAgIFBhY2thZ2UgKDB4MDYpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAg
 ICAgICAgICAgICAgICAgICAweDAwMDAwNkMxLCAKICAgICAgICAgICAgICAgICAgICAgICAg
 MHgwMDAwNkQ2MCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMEEsIAogICAg
 ICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDBBLCAKICAgICAgICAgICAgICAgICAgICAg
 ICAgMHgwMDAwMDAwRCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMEQKICAg
 ICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgw
 NikKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAw
 MDA2M0MsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDA2MUE4LCAKICAgICAgICAg
 ICAgICAgICAgICAgICAgMHgwMDAwMDAwQSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MDAwMDAwMEEsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDBDLCAKICAgICAg
 ICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwQwogICAgICAgICAgICAgICAgICAgIH0sIAoK
 ICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA2KQogICAgICAgICAgICAgICAgICAg
 IHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDVCNywgCiAgICAgICAgICAgICAg
 ICAgICAgICAgIDB4MDAwMDRBMzgsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAw
 MDBBLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwQSwgCiAgICAgICAgICAg
 ICAgICAgICAgICAgIDB4MDAwMDAwMEIsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAw
 MDAwMDBCCiAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgIFBh
 Y2thZ2UgKDB4MDYpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAg
 ICAgICAweDAwMDAwNTMyLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwNDI2OCwg
 CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMEEsIAogICAgICAgICAgICAgICAg
 ICAgICAgICAweDAwMDAwMDBBLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAw
 QSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMEEKICAgICAgICAgICAgICAg
 ICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNikKICAgICAgICAg
 ICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDA0QUQsIAogICAg
 ICAgICAgICAgICAgICAgICAgICAweDAwMDAzMkM4LCAKICAgICAgICAgICAgICAgICAgICAg
 ICAgMHgwMDAwMDAwQSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMEEsIAog
 ICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDA5LCAKICAgICAgICAgICAgICAgICAg
 ICAgICAgMHgwMDAwMDAwOQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAg
 IH0pCiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIFJldHVybiAoWmVybykKICAgICAgICB9
 CgogICAgICAgIE1ldGhvZCAoX1BDVCwgMCwgTm90U2VyaWFsaXplZCkKICAgICAgICB7CiAg
 ICAgICAgICAgIFJldHVybiAoUGFja2FnZSAoMHgwMikKICAgICAgICAgICAgewogICAgICAg
 ICAgICAgICAgUmVzb3VyY2VUZW1wbGF0ZSAoKQogICAgICAgICAgICAgICAgewogICAgICAg
 ICAgICAgICAgICAgIFJlZ2lzdGVyIChGRml4ZWRIVywgCiAgICAgICAgICAgICAgICAgICAg
 ICAgIDB4NDAsICAgICAgICAgICAgICAgLy8gQml0IFdpZHRoCiAgICAgICAgICAgICAgICAg
 ICAgICAgIDB4MDAsICAgICAgICAgICAgICAgLy8gQml0IE9mZnNldAogICAgICAgICAgICAg
 ICAgICAgICAgICAweDAwMDAwMDAwMDAwMDAxOTksIC8vIEFkZHJlc3MKICAgICAgICAgICAg
 ICAgICAgICAgICAgLCkKICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgIFJl
 c291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAg
 ICBSZWdpc3RlciAoRkZpeGVkSFcsIAogICAgICAgICAgICAgICAgICAgICAgICAweDEwLCAg
 ICAgICAgICAgICAgIC8vIEJpdCBXaWR0aAogICAgICAgICAgICAgICAgICAgICAgICAweDAw
 LCAgICAgICAgICAgICAgIC8vIEJpdCBPZmZzZXQKICAgICAgICAgICAgICAgICAgICAgICAg
 MHgwMDAwMDAwMDAwMDAwMTk4LCAvLyBBZGRyZXNzCiAgICAgICAgICAgICAgICAgICAgICAg
 ICwpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pCiAgICAgICAgfQoKICAgICAg
 ICBNZXRob2QgKF9QUEMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgewogICAgICAgICAg
 ICBSZXR1cm4gKFplcm8pCiAgICAgICAgfQoKICAgICAgICBNZXRob2QgKF9QU0QsIDAsIE5v
 dFNlcmlhbGl6ZWQpCiAgICAgICAgewogICAgICAgICAgICBJZiAoQW5kIChUWVBFLCAweDAw
 MDAwODIwKSkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgUmV0dXJuIChQYWNrYWdl
 ICgweDAxKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIFBhY2thZ2Ug
 KDB4MDUpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAw
 eDA1LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMCwgCiAgICAgICAgICAgICAgICAg
 ICAgICAgIDB4MDAwMDAwMDAsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMEZF
 LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwNAogICAgICAgICAgICAgICAg
 ICAgIH0KICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIFJl
 dHVybiAoWmVybykKICAgICAgICB9CgogICAgICAgIE1ldGhvZCAoX0NTVCwgMCwgTm90U2Vy
 aWFsaXplZCkKICAgICAgICB7CiAgICAgICAgICAgIElmIChDb25kUmVmT2YgKFxfT1NJLCBM
 b2NhbDApKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBJZiAoTEFuZCAoXF9PU0kg
 KCJXaW5kb3dzIDIwMDEuMSIpLCBMQW5kIChMTm90IChcX09TSSAoIldpbmRvd3MgMjAwNiIp
 KSwgTE5vdCAoXF9PU0kgKAogICAgICAgICAgICAgICAgICAgICJXaW5kb3dzIDIwMDEuMSBT
 UDEiKSkpKSkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBTdG9yZSAo
 MHgwMCwgQ1NFTikKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBJZiAoTEFu
 ZCAoXF9PU0kgKCJXaW5kb3dzIDIwMDEiKSwgTEFuZCAoTE5vdCAoXF9PU0kgKCJXaW5kb3dz
 IDIwMDEgU1AyIikpLCBMTm90IChcX09TSSAoCiAgICAgICAgICAgICAgICAgICAgIldpbmRv
 d3MgMjAwMS4xIFNQMSIpKSkpKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAg
 ICAgIFN0b3JlICgweDAwLCBDU0VOKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9
 CgogICAgICAgICAgICBJZiAoQ1NFTikKICAgICAgICAgICAgewogICAgICAgICAgICAgICAg
 SWYgKExBbmQgKE1XT1MsIEFuZCAoVFlQRSwgMHgwMjAwKSkpCiAgICAgICAgICAgICAgICB7
 CiAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChQYWNrYWdlICgweDA0KQogICAgICAgICAg
 ICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMywgCiAgICAgICAgICAg
 ICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICAgICAgICAgIHsK
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICBSZWdpc3RlciAoRkZpeGVkSFcsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAweDAxLCAgICAgICAgICAgICAgIC8vIEJpdCBXaWR0aAogICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAweDAyLCAgICAgICAgICAgICAgIC8vIEJpdCBPZmZzZXQK
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMDAwMDAwMDAw
 LCAvLyBBZGRyZXNzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEs
 ICAgICAgICAgICAgICAgLy8gQWNjZXNzIFNpemUKICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgwMSwgCiAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAweDAwMDEsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDNFOAogICAg
 ICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgICAgIFBhY2th
 Z2UgKDB4MDQpCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZWdpc3RlciAoRkZpeGVk
 SFcsIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAxLCAgICAgICAg
 ICAgICAgIC8vIEJpdCBXaWR0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 ICAweDAyLCAgICAgICAgICAgICAgIC8vIEJpdCBPZmZzZXQKICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMDAwMDAwMDEwLCAvLyBBZGRyZXNzCiAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEsICAgICAgICAgICAgICAgLy8g
 QWNjZXNzIFNpemUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKQogICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgMHgwMiwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwNDAsIAogICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDFGNAogICAgICAgICAgICAgICAgICAgICAg
 ICB9LCAKCiAgICAgICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpCiAgICAgICAg
 ICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlc291cmNl
 VGVtcGxhdGUgKCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICBSZWdpc3RlciAoRkZpeGVkSFcsIAogICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAweDAxLCAgICAgICAgICAgICAgIC8vIEJpdCBXaWR0
 aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAyLCAgICAgICAgICAg
 ICAgIC8vIEJpdCBPZmZzZXQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 MHgwMDAwMDAwMDAwMDAwMDIwLCAvLyBBZGRyZXNzCiAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgIDB4MDEsICAgICAgICAgICAgICAgLy8gQWNjZXNzIFNpemUKICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMywgCiAgICAgICAg
 ICAgICAgICAgICAgICAgICAgICAweDAwNjAsIAogICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgMHgwMDAwMDE1RQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAg
 ICAgICAgfSkKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBSZXR1cm4gKFBh
 Y2thZ2UgKDB4MDQpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgMHgw
 MywgCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAg
 ICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFJlc291cmNlVGVtcGxhdGUgKCkKICAg
 ICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVn
 aXN0ZXIgKEZGaXhlZEhXLCAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAw
 LCAgICAgICAgICAgICAgIC8vIEJpdCBXaWR0aAogICAgICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgIDB4MDAsICAgICAgICAgICAgICAgLy8gQml0IE9mZnNldAogICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAwMDAwMDAwMCwgLy8gQWRkcmVzcwogICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICwpCiAgICAgICAgICAgICAgICAgICAgICAg
 IH0sIAoKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMSwgCiAgICAgICAgICAgICAgICAg
 ICAgICAgIDB4MDAwMSwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAzRTgKICAg
 ICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgw
 NCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIFJlc291
 cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAg
 ICAgICAgICAgICAgICAgUmVnaXN0ZXIgKFN5c3RlbUlPLCAKICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICAgICAweDA4LCAgICAgICAgICAgICAgIC8vIEJpdCBXaWR0aAogICAgICAg
 ICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsICAgICAgICAgICAgICAgLy8gQml0IE9m
 ZnNldAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAwMDAwMDQx
 NCwgLy8gQWRkcmVzcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICwpCiAgICAg
 ICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMiwg
 CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDA0MCwgCiAgICAgICAgICAgICAgICAgICAg
 ICAgIDB4MDAwMDAxRjQKICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAg
 ICAgICAgUGFja2FnZSAoMHgwNCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAg
 ICAgICAgICAgICAgIFJlc291cmNlVGVtcGxhdGUgKCkKICAgICAgICAgICAgICAgICAgICAg
 ICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVnaXN0ZXIgKFN5c3RlbUlPLCAK
 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDA4LCAgICAgICAgICAgICAgIC8v
 IEJpdCBXaWR0aAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsICAgICAg
 ICAgICAgICAgLy8gQml0IE9mZnNldAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
 IDB4MDAwMDAwMDAwMDAwMDQxNSwgLy8gQWRkcmVzcwogICAgICAgICAgICAgICAgICAgICAg
 ICAgICAgICAgICwpCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAgICAgICAg
 ICAgICAgICAgICAgMHgwMywgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDA2MCwgCiAg
 ICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAxNUUKICAgICAgICAgICAgICAgICAgICB9
 CiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBN
 ZXRob2QgKF9UUEMsIDAsIE5vdFNlcmlhbGl6ZWQpCiAgICAgICAgewogICAgICAgICAgICBS
 ZXR1cm4gKFplcm8pCiAgICAgICAgfQoKICAgICAgICBNZXRob2QgKF9QVEMsIDAsIE5vdFNl
 cmlhbGl6ZWQpCiAgICAgICAgewogICAgICAgICAgICBSZXR1cm4gKFBhY2thZ2UgKDB4MDIp
 CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIFJlc291cmNlVGVtcGxhdGUgKCkKICAg
 ICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBSZWdpc3RlciAoRkZpeGVkSFcs
 IAogICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAgICAgICAgICAgICAgIC8vIEJpdCBX
 aWR0aAogICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAgICAgICAgICAgICAgIC8vIEJp
 dCBPZmZzZXQKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMDAwMDAwMDAwLCAv
 LyBBZGRyZXNzCiAgICAgICAgICAgICAgICAgICAgICAgICwpCiAgICAgICAgICAgICAgICB9
 LCAKCiAgICAgICAgICAgICAgICBSZXNvdXJjZVRlbXBsYXRlICgpCiAgICAgICAgICAgICAg
 ICB7CiAgICAgICAgICAgICAgICAgICAgUmVnaXN0ZXIgKEZGaXhlZEhXLCAKICAgICAgICAg
 ICAgICAgICAgICAgICAgMHgwMCwgICAgICAgICAgICAgICAvLyBCaXQgV2lkdGgKICAgICAg
 ICAgICAgICAgICAgICAgICAgMHgwMCwgICAgICAgICAgICAgICAvLyBCaXQgT2Zmc2V0CiAg
 ICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAwMDAwMDAwMCwgLy8gQWRkcmVzcwog
 ICAgICAgICAgICAgICAgICAgICAgICAsKQogICAgICAgICAgICAgICAgfQogICAgICAgICAg
 ICB9KQogICAgICAgIH0KCiAgICAgICAgTWV0aG9kIChfVFNTLCAwLCBOb3RTZXJpYWxpemVk
 KQogICAgICAgIHsKICAgICAgICAgICAgSWYgKExBbmQgKFRTRU4sIEFuZCAoVFlQRSwgMHgw
 MDA0KSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIFJldHVybiAoUGFja2FnZSAo
 MHgwOCkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgw
 eDA1KQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgw
 MDAwMDA2NCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAyRjgsIAogICAgICAg
 ICAgICAgICAgICAgICAgICAweDAwMDAwMDAwLCAKICAgICAgICAgICAgICAgICAgICAgICAg
 MHgwMDAwMDAwMCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAKICAgICAg
 ICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNSkK
 ICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAw
 NTgsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMjk5LCAKICAgICAgICAgICAg
 ICAgICAgICAgICAgMHgwMDAwMDAwMCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAw
 MDAwMUUsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAwCiAgICAgICAgICAg
 ICAgICAgICAgfSwgCgogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDUpCiAgICAg
 ICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDRCLCAK
 ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDIzQSwgCiAgICAgICAgICAgICAgICAg
 ICAgICAgIDB4MDAwMDAwMDAsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDFD
 LCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMAogICAgICAgICAgICAgICAg
 ICAgIH0sIAoKICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA1KQogICAgICAgICAg
 ICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAzRiwgCiAgICAg
 ICAgICAgICAgICAgICAgICAgIDB4MDAwMDAxREIsIAogICAgICAgICAgICAgICAgICAgICAg
 ICAweDAwMDAwMDAwLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAxQSwgCiAg
 ICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAKICAgICAgICAgICAgICAgICAgICB9
 LCAKCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNSkKICAgICAgICAgICAgICAg
 ICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMzIsIAogICAgICAgICAg
 ICAgICAgICAgICAgICAweDAwMDAwMTdDLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgw
 MDAwMDAwMCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMTgsIAogICAgICAg
 ICAgICAgICAgICAgICAgICAweDAwMDAwMDAwCiAgICAgICAgICAgICAgICAgICAgfSwgCgog
 ICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDUpCiAgICAgICAgICAgICAgICAgICAg
 ewogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDI2LCAKICAgICAgICAgICAgICAg
 ICAgICAgICAgMHgwMDAwMDExRCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwMDAw
 MDAsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDE2LCAKICAgICAgICAgICAg
 ICAgICAgICAgICAgMHgwMDAwMDAwMAogICAgICAgICAgICAgICAgICAgIH0sIAoKICAgICAg
 ICAgICAgICAgICAgICBQYWNrYWdlICgweDA1KQogICAgICAgICAgICAgICAgICAgIHsKICAg
 ICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAxOSwgCiAgICAgICAgICAgICAgICAgICAg
 ICAgIDB4MDAwMDAwQkUsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAwLCAK
 ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAxNCwgCiAgICAgICAgICAgICAgICAg
 ICAgICAgIDB4MDAwMDAwMDAKICAgICAgICAgICAgICAgICAgICB9LCAKCiAgICAgICAgICAg
 ICAgICAgICAgUGFja2FnZSAoMHgwNSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAg
 ICAgICAgICAgICAgICAgIDB4MDAwMDAwMEQsIAogICAgICAgICAgICAgICAgICAgICAgICAw
 eDAwMDAwMDVGLCAKICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwgCiAgICAg
 ICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMTIsIAogICAgICAgICAgICAgICAgICAgICAg
 ICAweDAwMDAwMDAwCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSkK
 ICAgICAgICAgICAgfQoKICAgICAgICAgICAgUmV0dXJuIChaZXJvKQogICAgICAgIH0KCiAg
 ICAgICAgTWV0aG9kIChfVFNELCAwLCBOb3RTZXJpYWxpemVkKQogICAgICAgIHsKICAgICAg
 ICAgICAgSWYgKEFuZCAoVFlQRSwgMHgwMDAwMDA4MCkpCiAgICAgICAgICAgIHsKICAgICAg
 ICAgICAgICAgIFJldHVybiAoUGFja2FnZSAoMHgwMSkKICAgICAgICAgICAgICAgIHsKICAg
 ICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA1KQogICAgICAgICAgICAgICAgICAgIHsK
 ICAgICAgICAgICAgICAgICAgICAgICAgMHgwNSwgCiAgICAgICAgICAgICAgICAgICAgICAg
 IDB4MDAsIAogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDA2LCAKICAgICAgICAg
 ICAgICAgICAgICAgICAgMHgwMDAwMDBGRCwgCiAgICAgICAgICAgICAgICAgICAgICAgIDB4
 MDAwMDAwMDEKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9KQogICAg
 ICAgICAgICB9CgogICAgICAgICAgICBSZXR1cm4gKFplcm8pCiAgICAgICAgfQogICAgfQp9
 Cgo=
 --------------050508070702040007040902--

From: Chuck Silvers <chuq@chuq.com>
To: Lars Heidieker <lars@heidieker.de>
Cc: gnats-bugs@NetBSD.org, gnats-admin@netbsd.org, netbsd-bugs@netbsd.org,
	reinoud@NetBSD.org
Subject: Re: PR/47648 CVS commit: src/sys/arch/x86
Date: Fri, 29 Mar 2013 10:09:05 -0700

 On Thu, Mar 28, 2013 at 10:29:12PM +0100, Lars Heidieker wrote:
 > Since these changes I see an interrupt storm in int 9 for !DIAGNOSTICS
 > and !DEBUG or DIAGNOSTICS & DEBUG kernels.
 > It goes away if I put the ioapic_reenable back into mpacpi_find_interrupts.
 > 
 > I think the problem has been there before as well but the
 > ioapic_reenable fixes it.
 > 
 > I've attached two dmesg print (same config but one with DIAGNOSTICS
 > enabled and the other one with DIAGNOISTICS & DEBUG)
 > 
 > In case of no interrupt storm
 > ioapic0: int9 0x8060<vector=0x60,delmode=0x0,level,dest=0x0> 0x0<target=0x0>
 > 
 > In case of interrupt storm
 > ioapic0: int9
 > 0xb060<vector=0x60,delmode=0x0,pending,actlo,level,dest=0x0> 0x0<target=0x0>


 ok, apparently my new code in acpi_md_OsInstallInterruptHandler() gets the polarity wrong,
 but mpacpi_nonpci_intr() which is called later gets it right, and call to ioapic_reenable()
 pushes the corrected info into the hardware.  could you add some printfs to both of these
 to see why they are coming to different conclusions about what "redir" should be?

 -Chuck

From: Lars Heidieker <lars@heidieker.de>
To: Chuck Silvers <chuq@chuq.com>
Cc: gnats-bugs@NetBSD.org, gnats-admin@netbsd.org, 
 netbsd-bugs@netbsd.org, reinoud@NetBSD.org
Subject: Re: PR/47648 CVS commit: src/sys/arch/x86
Date: Sat, 30 Mar 2013 11:22:38 +0100

 On 2013-03-29 18:09, Chuck Silvers wrote:
 > On Thu, Mar 28, 2013 at 10:29:12PM +0100, Lars Heidieker wrote:
 >> Since these changes I see an interrupt storm in int 9 for !DIAGNOSTICS
 >> and !DEBUG or DIAGNOSTICS & DEBUG kernels.
 >> It goes away if I put the ioapic_reenable back into mpacpi_find_interrupts.
 >>
 >> I think the problem has been there before as well but the
 >> ioapic_reenable fixes it.
 >>
 >> I've attached two dmesg print (same config but one with DIAGNOSTICS
 >> enabled and the other one with DIAGNOISTICS & DEBUG)
 >>
 >> In case of no interrupt storm
 >> ioapic0: int9 0x8060<vector=0x60,delmode=0x0,level,dest=0x0> 0x0<target=0x0>
 >>
 >> In case of interrupt storm
 >> ioapic0: int9
 >> 0xb060<vector=0x60,delmode=0x0,pending,actlo,level,dest=0x0> 0x0<target=0x0>
 > 
 > 
 > ok, apparently my new code in acpi_md_OsInstallInterruptHandler() gets the polarity wrong,
 > but mpacpi_nonpci_intr() which is called later gets it right, and call to ioapic_reenable()
 > pushes the corrected info into the hardware.  could you add some printfs to both of these
 > to see why they are coming to different conclusions about what "redir" should be?
 > 
 > -Chuck
 > 

 Ok, I think I know what is going wrong, the memory for interrupt maps
 gets allocated in mpacpi_config_irouting and
 acpi_md_OsInstallInterruptHandler uses that memory to store config if
 allocated and to a tmpmap if not (dropping that info).
 apic_set_redir uses that config if allocated and defaults otherwise
 but as mpacpi_config_irouting runs after the SCI gets installed, we
 might endup with wrong values.

 I tend to think that putting the ioapic_reenable back into
 mpacpi_find_interrupts should do.

 Lars


 -- 
 ------------------------------------

 Mystische Erklärungen:
 Die mystischen Erklärungen gelten für tief;
 die Wahrheit ist, dass sie noch nicht einmal oberflächlich sind.

    -- Friedrich Nietzsche
    [ Die Fröhliche Wissenschaft Buch 3, 126 ]

From: "Chuck Silvers" <chs@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/47648 CVS commit: src/sys/arch/x86/acpi
Date: Sun, 31 Mar 2013 19:34:25 +0000

 Module Name:	src
 Committed By:	chs
 Date:		Sun Mar 31 19:34:25 UTC 2013

 Modified Files:
 	src/sys/arch/x86/acpi: acpi_machdep.c

 Log Message:
 yet more fixes for PR 47648 / PR 47016:
 when using a temporary mp_intr_map, initialize the "flags" field
 as well as "redir" since apic_set_redir() uses both.  fix how
 the flags field is change when applying an override, the trigger
 and polarity sub-fields aren't just one bit like they are in redir.


 To generate a diff of this commit:
 cvs rdiff -u -r1.5 -r1.6 src/sys/arch/x86/acpi/acpi_machdep.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Jeff Rizzo" <riz@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/47648 CVS commit: [netbsd-6] src/sys/arch/x86
Date: Sun, 31 Mar 2013 20:32:02 +0000

 Module Name:	src
 Committed By:	riz
 Date:		Sun Mar 31 20:32:01 UTC 2013

 Modified Files:
 	src/sys/arch/x86/acpi [netbsd-6]: acpi_machdep.c
 	src/sys/arch/x86/x86 [netbsd-6]: mpacpi.c

 Log Message:
 Pull up following revision(s) (requested by chs in ticket #855):
 	sys/arch/x86/acpi/acpi_machdep.c: revision 1.5
 	sys/arch/x86/acpi/acpi_machdep.c: revision 1.6
 	sys/arch/x86/x86/mpacpi.c: revision 1.97
 redo the ACPI interrupt handler setup again, this time handling
 MADT overrides that change the pin as well as the polarity.
 fixes PR 47648.
 yet more fixes for PR 47648 / PR 47016:
 when using a temporary mp_intr_map, initialize the "flags" field
 as well as "redir" since apic_set_redir() uses both.  fix how
 the flags field is change when applying an override, the trigger
 and polarity sub-fields aren't just one bit like they are in redir.


 To generate a diff of this commit:
 cvs rdiff -u -r1.3.2.1 -r1.3.2.2 src/sys/arch/x86/acpi/acpi_machdep.c
 cvs rdiff -u -r1.92.8.1 -r1.92.8.2 src/sys/arch/x86/x86/mpacpi.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

State-Changed-From-To: open->closed
State-Changed-By: chs@NetBSD.org
State-Changed-When: Mon, 08 Apr 2013 00:00:49 +0000
State-Changed-Why:
fixed and pulled up


>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.