Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 20 Jun 2007 02:31:51 +0900
From:      Norikatsu Shigemura <nork@FreeBSD.org>
To:        freebsd-acpi@FreeBSD.org
Subject:   How do I use HPET?
Message-ID:  <20070620023151.c0f3b961.nork@FreeBSD.org>

next in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format.

--Multipart=_Wed__20_Jun_2007_02_31_51_+0900_KZTwyrG_5maCpUc3
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit

Hi.

	I'm using Panasonic Let's Note (Toughbook) CF-R4 with FreeBSD
	6-stable.  How do I use HPET?  I can't use HPET:-(.  Anyone,
	do you have any idea?

--Multipart=_Wed__20_Jun_2007_02_31_51_+0900_KZTwyrG_5maCpUc3
Content-Type: text/plain;
 name="dmesg.txt"
Content-Disposition: attachment;
 filename="dmesg.txt"
Content-Transfer-Encoding: 7bit

Copyright (c) 1992-2007 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
	The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 6.2-STABLE #65: Tue Jun 19 02:50:41 JST 2007
    nork@melfina.ninth-nine.com:/usr/obj/usr/src/sys/MELFINA
WARNING: Network stack Giant-free, but aio requires Giant.
    Consider adding 'options NET_WITH_GIANT' or setting debug.mpsafenet=0
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: Intel(R) Pentium(R) M processor 1.20GHz (1197.01-MHz 686-class CPU)
  Origin = "GenuineIntel"  Id = 0x6d8  Stepping = 8
  Features=0xafe9fbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,TM,PBE>
  Features2=0x180<EST,TM2>
  AMD Features=0x100000<NX>
real memory  = 1064173568 (1014 MB)
avail memory = 1032351744 (984 MB)
ACPI APIC Table: <MATBIO CFR4-3  >
ioapic0: Changing APIC ID to 1
ioapic0 <Version 2.0> irqs 0-23 on motherboard
kbd1 at kbdmux0
kqemu version 0x00010300
kqemu: KQEMU installed, max_locked_mem=515248kB.
ichwd module loaded
acpi0: <PTLTD   RSDT> on motherboard
acpi0: Power Button (fixed)
Timecounter "ACPI-fast" frequency 3579545 Hz quality 1000
acpi_timer0: <24-bit timer at 3.579545MHz> port 0x1008-0x100b on acpi0
acpi_ec0: <Embedded Controller: GPE 0x1d> port 0x62,0x66 on acpi0
cpu0: <ACPI CPU> on acpi0
est0: <Enhanced SpeedStep Frequency Control> on cpu0
p4tcc0: <CPU Frequency Thermal Control> on cpu0
acpi_lid0: <Control Method Lid Switch> on acpi0
battery0: <ACPI Control Method Battery> on acpi0
acpi_acad0: <AC Adapter> on acpi0
acpi_button0: <Power Button> on acpi0
acpi_panasonic0: <Panasonic Notebook Hotkeys> on acpi0
pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0
pci0: <ACPI PCI bus> on pcib0
agp0: <Intel 82915GM (915GM GMCH) SVGA controller> port 0x1800-0x1807 mem 0xb0080000-0xb00fffff,0xc0000000-0xcfffffff,0xb0000000-0xb003ffff irq 16 at device 2.0 on pci0
agp0: detected 7932k stolen memory
agp0: aperture size is 256M
drmsub0: <Intel i915GM>: (child of agp_i810.c) on agp0
info: [drm] AGP at 0xb0080000 0MB
info: [drm] Initialized i915 1.5.0 20060119
pci0: <display> at device 2.1 (no driver attached)
uhci0: <Intel 82801FB/FR/FW/FRW (ICH6) USB controller USB-A> port 0x1820-0x183f irq 23 at device 29.0 on pci0
uhci0: [GIANT-LOCKED]
usb0: <Intel 82801FB/FR/FW/FRW (ICH6) USB controller USB-A> on uhci0
usb0: USB revision 1.0
uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
ehci0: <Intel 82801FB (ICH6) USB 2.0 controller> mem 0xb0040000-0xb00403ff irq 23 at device 29.7 on pci0
ehci0: [GIANT-LOCKED]
usb1: EHCI version 1.0
usb1: companion controller, 2 ports each: usb0
usb1: <Intel 82801FB (ICH6) USB 2.0 controller> on ehci0
usb1: USB revision 2.0
uhub1: Intel EHCI root hub, class 9/0, rev 2.00/1.00, addr 1
uhub1: 2 ports with 2 removable, self powered
pcib1: <ACPI PCI-PCI bridge> at device 30.0 on pci0
pci6: <ACPI PCI bus> on pcib1
rl0: <RealTek 8139 10/100BaseTX> port 0x3000-0x30ff mem 0xb0100000-0xb01000ff irq 19 at device 1.0 on pci6
miibus0: <MII bus> on rl0
rlphy0: <RealTek internal media interface> on miibus0
rlphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
rl0: Ethernet address: 00:0b:97:33:1c:30
iwi0: <Intel(R) PRO/Wireless 2915ABG> mem 0xb0101000-0xb0101fff irq 21 at device 4.0 on pci6
iwi0: Ethernet address: 00:16:6f:33:41:34
cbb0: <RF5C476 PCI-CardBus Bridge> mem 0xb0102000-0xb0102fff irq 22 at device 5.0 on pci6
cardbus0: <CardBus bus> on cbb0
pccard0: <16-bit PCCard bus> on cbb0
pci6: <base peripheral> at device 5.1 (no driver attached)
pcm0: <Intel ICH6 (82801FB)> port 0x1c00-0x1cff,0x1840-0x187f mem 0xb0040800-0xb00409ff,0xb0040400-0xb00404ff irq 17 at device 30.2 on pci0
pcm0: <SigmaTel STAC9750/51 AC97 Codec>
isab0: <PCI-ISA bridge> at device 31.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <Intel ICH6 UDMA100 controller> port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0x1810-0x181f at device 31.1 on pci0
ata0: <ATA channel 0> on atapci0
ata1: <ATA channel 1> on atapci0
ichsmb0: <SMBus controller> port 0x18a0-0x18bf irq 19 at device 31.3 on pci0
ichsmb0: [GIANT-LOCKED]
smbus0: <System Management Bus> on ichsmb0
smb0: <SMBus generic I/O> on smbus0
acpi_tz0: <Thermal Zone> on acpi0
atkbdc0: <Keyboard controller (i8042)> port 0x60,0x64 irq 1 on acpi0
atkbd0: <AT Keyboard> irq 1 on atkbdc0
kbd0 at atkbd0
atkbd0: [GIANT-LOCKED]
psm0: <PS/2 Mouse> flags 0x2000 irq 12 on atkbdc0
psm0: [GIANT-LOCKED]
psm0: model Synaptics Touchpad, device ID 0
pmtimer0 on isa0
ichwd0: <Intel ICH6M  watchdog timer> on isa0
ichwd0: Intel ICH6M  watchdog timer TCO version 2
orm0: <ISA Option ROMs> at iomem 0xcf800-0xd07ff,0xdc000-0xdffff,0xe0000-0xeffff on isa0
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
Timecounter "TSC" frequency 1197010942 Hz quality 800
Timecounters tick every 1.000 msec
Fast IPsec: Initialized Security Association Processing.
ad0: 54156MB <TOSHIBA MK6034GAX AC101F> at ata0-master UDMA100
Trying to mount root from ufs:/dev/ad0s2a
ipfw2 (+ipv6) initialized, divert loadable, rule-based forwarding disabled, default to accept, logging unlimited
tap0: Ethernet address: 00:bd:51:27:00:00

--Multipart=_Wed__20_Jun_2007_02_31_51_+0900_KZTwyrG_5maCpUc3
Content-Type: text/plain;
 name="devinfo-rv.txt"
Content-Disposition: attachment;
 filename="devinfo-rv.txt"
Content-Transfer-Encoding: 7bit

nexus0
  legacy0
  npx0
  acpi0
      Interrupt request lines:
          0x9
      I/O ports:
          0x63
          0x65
          0x67
          0x80
          0x92
          0xb2-0xb3
          0x800-0x80f
          0x900-0x91f
          0x92c-0x97f
          0x1000-0x107f
          0x1180-0x11bf
          0xfe00-0xfe01
      I/O memory addresses:
          0xcf200-0xcf7ff
          0xd0800-0xd3fff
          0xe0000000-0xefffffff
          0xf0000000-0xf0003fff
          0xf0004000-0xf0004fff
          0xf0005000-0xf0005fff
          0xf0008000-0xf000bfff
          0xfed20000-0xfed8ffff
    cpu0 pnpinfo _HID=none _UID=0 at handle=\_PR_.CPU0
        ACPI I/O ports:
            0x1014
            0x1015
      est0
      p4tcc0
      acpi_perf0
      acpi_throttle0
      cpufreq0
    unknown pnpinfo _HID=none _UID=0 at handle=\_PR_.CPU1
    acpi_lid0 pnpinfo _HID=PNP0C0D _UID=0 at handle=\_SB_.LID_
    battery0 pnpinfo _HID=PNP0C0A _UID=0 at handle=\_SB_.BATA
    acpi_acad0 pnpinfo _HID=ACPI0003 _UID=0 at handle=\_SB_.AC__
    acpi_button0 pnpinfo _HID=PNP0C0C _UID=0 at handle=\_SB_.PWRB
    acpi_panasonic0 pnpinfo _HID=MAT0019 _UID=0 at handle=\_SB_.HKEY
    pcib0 pnpinfo _HID=PNP0A08 _UID=0 at handle=\_SB_.PCI0
      pci0
        hostb0 pnpinfo vendor=0x8086 device=0x2590 subvendor=0x10f7 subdevice=0x8338 class=0x060000 at slot=0 function=0
        agp0 pnpinfo vendor=0x8086 device=0x2592 subvendor=0x10f7 subdevice=0x8338 class=0x030000 at slot=2 function=0 handle=\_SB_.PCI0.GFX0
            Interrupt request lines:
                0x10
            I/O ports:
                0x1800-0x1807
            I/O memory addresses:
                0xb0000000-0xb003ffff
                0xb0080000-0xb00fffff
                0xc0000000-0xcfffffff
          drmsub0
        unknown pnpinfo vendor=0x8086 device=0x2792 subvendor=0x10f7 subdevice=0x8338 class=0x038000 at slot=2 function=1
        uhci0 pnpinfo vendor=0x8086 device=0x2658 subvendor=0x10f7 subdevice=0x8338 class=0x0c0300 at slot=29 function=0 handle=\_SB_.PCI0.USB1
            Interrupt request lines:
                0x17
            I/O ports:
                0x1820-0x183f
          usb0
            uhub0
        ehci0 pnpinfo vendor=0x8086 device=0x265c subvendor=0x10f7 subdevice=0x8338 class=0x0c0320 at slot=29 function=7 handle=\_SB_.PCI0.EHCI
            I/O memory addresses:
                0xb0040000-0xb00403ff
          usb1
            uhub1
        pcib1 pnpinfo vendor=0x8086 device=0x2448 subvendor=0x10f7 subdevice=0x8338 class=0x060401 at slot=30 function=0 handle=\_SB_.PCI0.PCIB
          pci6
            rl0 pnpinfo vendor=0x10ec device=0x8139 subvendor=0x10f7 subdevice=0x8338 class=0x020000 at slot=1 function=0 handle=\_SB_.PCI0.PCIB.LAN_
                Interrupt request lines:
                    0x13
                I/O ports:
                    0x3000-0x30ff
                I/O memory addresses:
                    0xb0100000-0xb01000ff
              miibus0
                rlphy0 pnpinfo oui=0x0 model=0x0 rev=0x0 at phyno=0
            iwi0 pnpinfo vendor=0x8086 device=0x4223 subvendor=0x8086 subdevice=0x1002 class=0x028000 at slot=4 function=0
                Interrupt request lines:
                    0x15
                I/O memory addresses:
                    0xb0101000-0xb0101fff
            cbb0 pnpinfo vendor=0x1180 device=0x0476 subvendor=0x10f7 subdevice=0x8338 class=0x060700 at slot=5 function=0 handle=\_SB_.PCI0.PCIB.CDB1
                Interrupt request lines:
                    0x16
                I/O memory addresses:
                    0xb0102000-0xb0102fff
              cardbus0
              pccard0
            unknown pnpinfo vendor=0x1180 device=0x0822 subvendor=0x10f7 subdevice=0x8338 class=0x080500 at slot=5 function=1
                I/O memory addresses:
                    0xb0100400-0xb01004ff
        pcm0 pnpinfo vendor=0x8086 device=0x266e subvendor=0x10f7 subdevice=0x834c class=0x040100 at slot=30 function=2 handle=\_SB_.PCI0.AUD0
            Interrupt request lines:
                0x11
            I/O ports:
                0x1840-0x187f
                0x1c00-0x1cff
            I/O memory addresses:
                0xb0040400-0xb00404ff
                0xb0040800-0xb00409ff
        isab0 pnpinfo vendor=0x8086 device=0x2641 subvendor=0x10f7 subdevice=0x8338 class=0x060100 at slot=31 function=0 handle=\_SB_.PCI0.LPCB
            I/O memory addresses:
                0xfed1c000-0xfed1c003
          isa0
            pmtimer0
            sc0
            vga0
                I/O ports:
                    0x3c0-0x3df
                I/O memory addresses:
                    0xa0000-0xbffff
            adv0
            aha0
            aic0
            bt0
            cs0
            ed0
            fdc0
            fe0
            ie0
            lnc0
            ppc0
            sio0
            sio1
            sio2
            sio3
            sn0
            vt0
            orm0
                I/O memory addresses:
                    0xcf800-0xd07ff
                    0xdc000-0xdffff
                    0xe0000-0xeffff
            ichwd0
                ACPI I/O ports:
                    0x1030-0x1037
                    0x1060-0x1069
        atapci0 pnpinfo vendor=0x8086 device=0x266f subvendor=0x10f7 subdevice=0x8338 class=0x01018a at slot=31 function=1 handle=\_SB_.PCI0.PATA
            I/O ports:
                0x170-0x177
                0x1f0-0x1f7
                0x376
                0x3f6
                0x1810-0x181f
          ata0
              Interrupt request lines:
                  0xe
            ad0
              subdisk0
          ata1
              Interrupt request lines:
                  0xf
        ichsmb0 pnpinfo vendor=0x8086 device=0x266a subvendor=0x10f7 subdevice=0x8338 class=0x0c0500 at slot=31 function=3 handle=\_SB_.PCI0.SBUS
            I/O ports:
                0x18a0-0x18bf
          smbus0
            smb0
    acpi_sysresource0 pnpinfo _HID=PNP0C02 _UID=4096 at handle=\_SB_.PCI0.OPRM
    unknown pnpinfo _HID=none _UID=0 at handle=\_SB_.PCI0.GFX0.CRT1
    unknown pnpinfo _HID=none _UID=0 at handle=\_SB_.PCI0.GFX0.LCD1
    unknown pnpinfo _HID=none _UID=0 at handle=\_SB_.PCI0.USB2
    unknown pnpinfo _HID=none _UID=0 at handle=\_SB_.PCI0.USB3
    unknown pnpinfo _HID=none _UID=0 at handle=\_SB_.PCI0.USB4
    unknown pnpinfo _HID=none _UID=0 at handle=\_SB_.PCI0.MODM
    acpi_sysresource1 pnpinfo _HID=PNP0C02 _UID=31 at handle=\_SB_.PCI0.LPCB.MBRD
    atdma0 pnpinfo _HID=PNP0200 _UID=0 at handle=\_SB_.PCI0.LPCB.DMAC
    unknown pnpinfo _HID=INT0800 _UID=0 at handle=\_SB_.PCI0.LPCB.FWHD
    unknown pnpinfo _HID=PNP0103 _UID=0 at handle=\_SB_.PCI0.LPCB.HPET
    atpic0 pnpinfo _HID=PNP0000 _UID=0 at handle=\_SB_.PCI0.LPCB.IPIC
    npxisa0 pnpinfo _HID=PNP0C04 _UID=0 at handle=\_SB_.PCI0.LPCB.MATH
    acpi_sysresource2 pnpinfo _HID=PNP0C02 _UID=1 at handle=\_SB_.PCI0.LPCB.MBD0
    unknown pnpinfo _HID=PNP0C02 _UID=2 at handle=\_SB_.PCI0.LPCB.MBD1
    attimer0 pnpinfo _HID=PNP0B00 _UID=0 at handle=\_SB_.PCI0.LPCB.RTC_
    attimer1 pnpinfo _HID=PNP0100 _UID=0 at handle=\_SB_.PCI0.LPCB.TIMR
    unknown pnpinfo _HID=PNP0800 _UID=0 at handle=\_SB_.PCI0.LPCB.SPKR
    unknown pnpinfo _HID=IFX0101 _UID=1 at handle=\_SB_.PCI0.LPCB.TPM_
    acpi_ec0 pnpinfo _HID=PNP0C09 _UID=0 at handle=\_SB_.PCI0.LPCB.EC0_
        I/O ports:
            0x62
            0x66
    unknown pnpinfo _HID=PNP0303 _UID=0 at handle=\_SB_.PCI0.LPCB.K101
    atkbdc0 pnpinfo _HID=PNP0320 _UID=0 at handle=\_SB_.PCI0.LPCB.K106
        I/O ports:
            0x60
            0x64
      atkbd0
          Interrupt request lines:
              0x1
      psm0
          Interrupt request lines:
              0xc
    unknown pnpinfo _HID=PNP0F13 _UID=0 at handle=\_SB_.PCI0.LPCB.MOUS
    psmcpnp0 pnpinfo _HID=SYN0002 _UID=0 at handle=\_SB_.PCI0.LPCB.MOU3
    pci_link0 pnpinfo _HID=PNP0C0F _UID=1 at handle=\_SB_.PCI0.LPCB.LNKA
    pci_link1 pnpinfo _HID=PNP0C0F _UID=2 at handle=\_SB_.PCI0.LPCB.LNKB
    pci_link2 pnpinfo _HID=PNP0C0F _UID=3 at handle=\_SB_.PCI0.LPCB.LNKC
    pci_link3 pnpinfo _HID=PNP0C0F _UID=4 at handle=\_SB_.PCI0.LPCB.LNKD
    pci_link4 pnpinfo _HID=PNP0C0F _UID=5 at handle=\_SB_.PCI0.LPCB.LNKE
    pci_link5 pnpinfo _HID=PNP0C0F _UID=6 at handle=\_SB_.PCI0.LPCB.LNKF
    pci_link6 pnpinfo _HID=PNP0C0F _UID=7 at handle=\_SB_.PCI0.LPCB.LNKG
    pci_link7 pnpinfo _HID=PNP0C0F _UID=8 at handle=\_SB_.PCI0.LPCB.LNKH
    unknown pnpinfo _HID=none _UID=0 at handle=\_SB_.PCI0.PATA.PRID
    unknown pnpinfo _HID=none _UID=0 at handle=\_SB_.PCI0.PATA.PRID.P_D0
    unknown pnpinfo _HID=none _UID=0 at handle=\_SB_.PCI0.PATA.PRID.P_D1
    acpi_tz0 pnpinfo _HID=none _UID=0 at handle=\_TZ_.TZC_
    acpi_timer0 pnpinfo unknown at unknown
        ACPI I/O ports:
            0x1008-0x100b

--Multipart=_Wed__20_Jun_2007_02_31_51_+0900_KZTwyrG_5maCpUc3
Content-Type: text/plain;
 name="CF-R4.asl"
Content-Disposition: attachment;
 filename="CF-R4.asl"
Content-Transfer-Encoding: base64

LyoNCiAgUlNEIFBUUjogT0VNPVBUTFRELCBBQ1BJX1Jldj0xLjB4ICgwKQ0KCVJTRFQ9MHgzZjZl
MzBhYSwgY2tzdW09MTc4DQogKi8NCi8qDQogIFJTRFQ6IExlbmd0aD02NCwgUmV2aXNpb249MSwg
Q2hlY2tzdW09MjQ1LA0KCU9FTUlEPVBUTFRELCBPRU0gVGFibGUgSUQ9ICBSU0RULCBPRU0gUmV2
aXNpb249MHg2MDQwMDAwLA0KCUNyZWF0b3IgSUQ9IExUUCwgQ3JlYXRvciBSZXZpc2lvbj0weDAN
CglFbnRyaWVzPXsgMHgzZjZlN2U3OCwgMHgzZjZlN2VmYywgMHgzZjZlN2ZkOCwgMHgzZjZlN2Y5
YywgMHgzZjZlMzRlNywgMHgzZjZlMzMwOSwgMHgzZjZlMzBlYSB9DQogKi8NCi8qDQogIEZBQ1A6
IExlbmd0aD0xMzIsIFJldmlzaW9uPTIsIENoZWNrc3VtPTIxMCwNCglPRU1JRD1NQVRCSU8sIE9F
TSBUYWJsZSBJRD1DRlI0LTMsIE9FTSBSZXZpc2lvbj0weDYwNDAwMDAsDQoJQ3JlYXRvciBJRD1N
RUksIENyZWF0b3IgUmV2aXNpb249MHgxDQogCUZBQ1M9MHgzZjZlOGZjMCwgRFNEVD0weDNmNmUz
OTMwDQoJSU5UX01PREVMPVBJQw0KCVByZWZlcnJlZF9QTV9Qcm9maWxlPVVuc3BlY2lmaWVkICgw
KQ0KCVNDSV9JTlQ9OQ0KCVNNSV9DTUQ9MHhiMiwgQUNQSV9FTkFCTEU9MHhmMCwgQUNQSV9ESVNB
QkxFPTB4ZjEsIFM0QklPU19SRVE9MHgwDQoJUFNUQVRFX0NOVD0weDgwDQoJUE0xYV9FVlRfQkxL
PTB4MTAwMC0weDEwMDMNCglQTTFhX0NOVF9CTEs9MHgxMDA0LTB4MTAwNQ0KCVBNMl9DTlRfQkxL
PTB4MTAyMC0weDEwMjANCglQTV9UTVJfQkxLPTB4MTAwOC0weDEwMGINCglHUEUwX0JMSz0weDEw
MjgtMHgxMDJmDQoJQ1NUX0NOVD0weDg1DQoJUF9MVkwyX0xBVD0xIHVzLCBQX0xWTDNfTEFUPTg1
IHVzDQoJRkxVU0hfU0laRT0wLCBGTFVTSF9TVFJJREU9MA0KCURVVFlfT0ZGU0VUPTEsIERVVFlf
V0lEVEg9Mw0KCURBWV9BTFJNPTEzLCBNT05fQUxSTT0wLCBDRU5UVVJZPTUwDQoJSUFQQ19CT09U
X0FSQ0g9ezgwNDJ9DQoJRmxhZ3M9e1dCSU5WRCxQUk9DX0MxLFNMUF9CVVRUT04sUlRDX1M0LFJF
U0VUX1JFR30NCglSRVNFVF9SRUc9MHhiMjowWzhdIChJTyksIFJFU0VUX1ZBTFVFPTB4YjQNCiAq
Lw0KLyoNCiAgRkFDUzoJTGVuZ3RoPTY0LCBId1NpZz0weDAwMDAwMDAwLCBGaXJtX1dha2VfVmVj
PTB4MDAwMDAwMDANCglHbG9iYWxfTG9jaz0NCglGbGFncz0NCglWZXJzaW9uPTANCiAqLw0KLyoN
CiAgRFNEVDogTGVuZ3RoPTE3NzM2LCBSZXZpc2lvbj0xLCBDaGVja3N1bT0xNDIsDQoJT0VNSUQ9
TUFUQklPLCBPRU0gVGFibGUgSUQ9Q0ZSNC0zLCBPRU0gUmV2aXNpb249MHg2MDQwMDAwLA0KCUNy
ZWF0b3IgSUQ9TVNGVCwgQ3JlYXRvciBSZXZpc2lvbj0weDEwMDAwMGUNCiAqLw0KLyoNCiAgQVBJ
QzogTGVuZ3RoPTk4LCBSZXZpc2lvbj0xLCBDaGVja3N1bT04LA0KCU9FTUlEPU1BVEJJTywgT0VN
IFRhYmxlIElEPUNGUjQtMywgT0VNIFJldmlzaW9uPTB4NjA0MDAwMCwNCglDcmVhdG9yIElEPU1F
SSwgQ3JlYXRvciBSZXZpc2lvbj0weDENCglMb2NhbCBBUElDIEFERFI9MHhmZWUwMDAwMA0KCUZs
YWdzPXtQQy1BVH0NCg0KCVR5cGU9TG9jYWwgQVBJQw0KCUFDUEkgQ1BVPTANCglGbGFncz17RU5B
QkxFRH0NCglBUElDIElEPTANCg0KCVR5cGU9TG9jYWwgQVBJQw0KCUFDUEkgQ1BVPTENCglGbGFn
cz17RElTQUJMRUR9DQoJQVBJQyBJRD0xDQoNCglUeXBlPUlPIEFQSUMNCglBUElDIElEPTENCglJ
TlQgQkFTRT0wDQoJQUREUj0weDAwMDAwMDAwZmVjMDAwMDANCg0KCVR5cGU9SU5UIE92ZXJyaWRl
DQoJQlVTPTANCglJUlE9MA0KCUlOVFI9Mg0KCUZsYWdzPXtQb2xhcml0eT1jb25mb3JtaW5nLCBU
cmlnZ2VyPWNvbmZvcm1pbmd9DQoNCglUeXBlPUlOVCBPdmVycmlkZQ0KCUJVUz0wDQoJSVJRPTkN
CglJTlRSPTkNCglGbGFncz17UG9sYXJpdHk9YWN0aXZlLWhpLCBUcmlnZ2VyPWxldmVsfQ0KDQoJ
VHlwZT1Mb2NhbCBOTUkNCglBQ1BJIENQVT0wDQoJTElOVCBQaW49MQ0KCUZsYWdzPXtQb2xhcml0
eT1hY3RpdmUtaGksIFRyaWdnZXI9ZWRnZX0NCiAqLw0KLyoNCiAgQk9PVDogTGVuZ3RoPTQwLCBS
ZXZpc2lvbj0xLCBDaGVja3N1bT0xNTQsDQoJT0VNSUQ9UFRMVEQsIE9FTSBUYWJsZSBJRD0kU0JG
VEJMJCwgT0VNIFJldmlzaW9uPTB4NjA0MDAwMCwNCglDcmVhdG9yIElEPSBMVFAsIENyZWF0b3Ig
UmV2aXNpb249MHgxDQogKi8NCi8qDQogIE1DRkc6IExlbmd0aD02MCwgUmV2aXNpb249MSwgQ2hl
Y2tzdW09ODYsDQoJT0VNSUQ9TUFUQklPLCBPRU0gVGFibGUgSUQ9Q0ZSNC0zLCBPRU0gUmV2aXNp
b249MHg2MDQwMDAwLA0KCUNyZWF0b3IgSUQ9TUVJLCBDcmVhdG9yIFJldmlzaW9uPTB4MQ0KDQoJ
QmFzZSBBZGRyZXNzPSAweDAwMDAwMDAwZTAwMDAwMDANCglTZWdtZW50IEdyb3VwPSAweDAwMDAN
CglTdGFydCBCdXM9IDANCglFbmQgQnVzPSAyNTUNCiAqLw0KLyoNCiAgU1NEVDogTGVuZ3RoPTU2
NSwgUmV2aXNpb249MSwgQ2hlY2tzdW09MTIsDQoJT0VNSUQ9UG1SZWYsIE9FTSBUYWJsZSBJRD1D
cHUwSXN0LCBPRU0gUmV2aXNpb249MHgzMDAwLA0KCUNyZWF0b3IgSUQ9SU5UTCwgQ3JlYXRvciBS
ZXZpc2lvbj0weDIwMDMwMjI0DQogKi8NCi8qDQogIFNTRFQ6IExlbmd0aD00NzgsIFJldmlzaW9u
PTEsIENoZWNrc3VtPTEyOCwNCglPRU1JRD1QbVJlZiwgT0VNIFRhYmxlIElEPUNwdTBDc3QsIE9F
TSBSZXZpc2lvbj0weDMwMDEsDQoJQ3JlYXRvciBJRD1JTlRMLCBDcmVhdG9yIFJldmlzaW9uPTB4
MjAwMzAyMjQNCiAqLw0KLyoNCiAgU1NEVDogTGVuZ3RoPTU0MywgUmV2aXNpb249MSwgQ2hlY2tz
dW09MzUsDQoJT0VNSUQ9UG1SZWYsIE9FTSBUYWJsZSBJRD1DcHVQbSwgT0VNIFJldmlzaW9uPTB4
MzAwMCwNCglDcmVhdG9yIElEPUlOVEwsIENyZWF0b3IgUmV2aXNpb249MHgyMDAzMDIyNA0KICov
DQovKg0KICogSW50ZWwgQUNQSSBDb21wb25lbnQgQXJjaGl0ZWN0dXJlDQogKiBBTUwgRGlzYXNz
ZW1ibGVyIHZlcnNpb24gMjAwNDExMTkNCiAqDQogKiBEaXNhc3NlbWJseSBvZiAvdG1wL2FjcGlk
dW1wLmtMT3p4cCwgV2VkIEp1biAyMCAwMTo0Mzo0NSAyMDA3DQogKi8NCkRlZmluaXRpb25CbG9j
ayAoIkRTRFQuYW1sIiwgIkRTRFQiLCAxLCAiTUFUQklPIiwgIkNGUjQtMyIsIDEwMDkyNTQ0MCkN
CnsNCiAgICBTY29wZSAoX1NCKQ0KICAgIHsNCiAgICAgICAgT3BlcmF0aW9uUmVnaW9uIChTTUkw
LCBTeXN0ZW1JTywgMHgwMDAwRkUwMCwgMHgwMDAwMDAwMikNCiAgICAgICAgRmllbGQgKFNNSTAs
IEFueUFjYywgTm9Mb2NrLCBQcmVzZXJ2ZSkNCiAgICAgICAgew0KICAgICAgICAgICAgU01JQywg
ICA4DQogICAgICAgIH0NCg0KICAgICAgICBPcGVyYXRpb25SZWdpb24gKFNNSTEsIFN5c3RlbU1l
bW9yeSwgMHgzRjZFOEQ0RCwgMHgwMDAwMDIwMCkNCiAgICAgICAgRmllbGQgKFNNSTEsIEFueUFj
YywgTm9Mb2NrLCBQcmVzZXJ2ZSkNCiAgICAgICAgew0KICAgICAgICAgICAgQkNNRCwgICA4LCAN
CiAgICAgICAgICAgIERJRCwgICAgMzIsIA0KICAgICAgICAgICAgSU5GTywgICA0MDU2DQogICAg
ICAgIH0NCg0KICAgICAgICBGaWVsZCAoU01JMSwgQW55QWNjLCBOb0xvY2ssIFByZXNlcnZlKQ0K
ICAgICAgICB7DQogICAgICAgICAgICBPZmZzZXQgKDB4MDUpLCANCiAgICAgICAgICAgIElORiwg
ICAgOA0KICAgICAgICB9DQoNCiAgICAgICAgRmllbGQgKFNNSTEsIEFueUFjYywgTm9Mb2NrLCBQ
cmVzZXJ2ZSkNCiAgICAgICAgew0KICAgICAgICAgICAgT2Zmc2V0ICgweDA1KSwgDQogICAgICAg
ICAgICBJTkZELCAgIDMyDQogICAgICAgIH0NCg0KICAgICAgICBGaWVsZCAoU01JMSwgQW55QWNj
LCBOb0xvY2ssIFByZXNlcnZlKQ0KICAgICAgICB7DQogICAgICAgICAgICBPZmZzZXQgKDB4MDUp
LCANCiAgICAgICAgICAgIElORlAsICAgMTI4DQogICAgICAgIH0NCg0KICAgICAgICBNdXRleCAo
UFNNWCwgMHgwMSkNCiAgICAgICAgTWV0aG9kIChQU1JWLCA1LCBTZXJpYWxpemVkKQ0KICAgICAg
ICB7DQogICAgICAgICAgICBBY3F1aXJlIChQU01YLCAweEZGRkYpDQogICAgICAgICAgICBJZiAo
QXJnMikNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBTdG9yZSAoQXJnMywgSU5GTykN
CiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgU3RvcmUgKEFyZzEsIERJRCkNCiAgICAgICAg
ICAgIFN0b3JlIChBcmcwLCBCQ01EKQ0KICAgICAgICAgICAgU3RvcmUgKDB4MDAsIFNNSUMpDQog
ICAgICAgICAgICBJZiAoTEVxdWFsIChBcmc0LCAweDAwKSkNCiAgICAgICAgICAgIHsNCiAgICAg
ICAgICAgICAgICBTdG9yZSAoWmVybywgTG9jYWwwKQ0KICAgICAgICAgICAgfQ0KICAgICAgICAg
ICAgRWxzZQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKEFyZzQs
IDB4MDEpKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKElO
RiwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICBFbHNlDQogICAg
ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChBcmc0LCAweDAz
KSkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUg
KElORkQsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAg
ICBFbHNlDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElm
IChMRXF1YWwgKEFyZzQsIDB4MDQpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChJTkZQLCBMb2NhbDApDQogICAgICAgICAgICAg
ICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAg
ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKElORk8sIExv
Y2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgfQ0K
ICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgUmVsZWFzZSAo
UFNNWCkNCiAgICAgICAgICAgIFJldHVybiAoTG9jYWwwKQ0KICAgICAgICB9DQoNCiAgICAgICAg
TWV0aG9kIChFQ1dSLCAyLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICB7DQogICAgICAgICAgICBB
bmQgKEFyZzAsIDB4RkYsIExvY2FsMCkNCiAgICAgICAgICAgIEFuZCAoQXJnMSwgMHhGRiwgTG9j
YWwxKQ0KICAgICAgICAgICAgUFNSViAoMHg5OSwgQWRkIChMb2NhbDAsIFNoaWZ0TGVmdCAoTG9j
YWwxLCAweDEwKSksIDB4MDAsIDB4MDAsIDB4MDApDQogICAgICAgIH0NCg0KICAgICAgICBNZXRo
b2QgKFJSVEMsIDEsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgIHsNCiAgICAgICAgICAgIEFuZCAo
QXJnMCwgMHhGRiwgTG9jYWwwKQ0KICAgICAgICAgICAgUmV0dXJuIChQU1JWICgweDkyLCAweDA1
LCAweDAxLCBMb2NhbDAsIDB4MDEpKQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgTWV0aG9kIChN
SU4sIDIsIE5vdFNlcmlhbGl6ZWQpDQogICAgew0KICAgICAgICBJZiAoTExlc3MgKEFyZzAsIEFy
ZzEpKQ0KICAgICAgICB7DQogICAgICAgICAgICBSZXR1cm4gKEFyZzApDQogICAgICAgIH0NCiAg
ICAgICAgRWxzZQ0KICAgICAgICB7DQogICAgICAgICAgICBSZXR1cm4gKEFyZzEpDQogICAgICAg
IH0NCiAgICB9DQoNCiAgICBNZXRob2QgKFNMRU4sIDEsIE5vdFNlcmlhbGl6ZWQpDQogICAgew0K
ICAgICAgICBSZXR1cm4gKFNpemVPZiAoQXJnMCkpDQogICAgfQ0KDQogICAgTWV0aG9kIChTMkJG
LCAxLCBTZXJpYWxpemVkKQ0KICAgIHsNCiAgICAgICAgQWRkIChTTEVOIChBcmcwKSwgT25lLCBM
b2NhbDApDQogICAgICAgIE5hbWUgKEJVRkYsIEJ1ZmZlciAoTG9jYWwwKSB7fSkNCiAgICAgICAg
U3RvcmUgKEFyZzAsIEJVRkYpDQogICAgICAgIFJldHVybiAoQlVGRikNCiAgICB9DQoNCiAgICBN
ZXRob2QgKFNDTVAsIDIsIE5vdFNlcmlhbGl6ZWQpDQogICAgew0KICAgICAgICBTdG9yZSAoUzJC
RiAoQXJnMCksIExvY2FsMCkNCiAgICAgICAgU3RvcmUgKFMyQkYgKEFyZzEpLCBMb2NhbDEpDQog
ICAgICAgIFN0b3JlIChaZXJvLCBMb2NhbDQpDQogICAgICAgIFN0b3JlIChTTEVOIChBcmcwKSwg
TG9jYWw1KQ0KICAgICAgICBTdG9yZSAoU0xFTiAoQXJnMSksIExvY2FsNikNCiAgICAgICAgU3Rv
cmUgKE1JTiAoTG9jYWw1LCBMb2NhbDYpLCBMb2NhbDcpDQogICAgICAgIFdoaWxlIChMTGVzcyAo
TG9jYWw0LCBMb2NhbDcpKQ0KICAgICAgICB7DQogICAgICAgICAgICBTdG9yZSAoRGVyZWZPZiAo
SW5kZXggKExvY2FsMCwgTG9jYWw0KSksIExvY2FsMikNCiAgICAgICAgICAgIFN0b3JlIChEZXJl
Zk9mIChJbmRleCAoTG9jYWwxLCBMb2NhbDQpKSwgTG9jYWwzKQ0KICAgICAgICAgICAgSWYgKExH
cmVhdGVyIChMb2NhbDIsIExvY2FsMykpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg
UmV0dXJuIChPbmUpDQogICAgICAgICAgICB9DQogICAgICAgICAgICBFbHNlDQogICAgICAgICAg
ICB7DQogICAgICAgICAgICAgICAgSWYgKExMZXNzIChMb2NhbDIsIExvY2FsMykpDQogICAgICAg
ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKE9uZXMpDQogICAgICAgICAg
ICAgICAgfQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBJbmNyZW1lbnQgKExvY2FsNCkN
CiAgICAgICAgfQ0KDQogICAgICAgIElmIChMTGVzcyAoTG9jYWw0LCBMb2NhbDUpKQ0KICAgICAg
ICB7DQogICAgICAgICAgICBSZXR1cm4gKE9uZSkNCiAgICAgICAgfQ0KICAgICAgICBFbHNlDQog
ICAgICAgIHsNCiAgICAgICAgICAgIElmIChMTGVzcyAoTG9jYWw0LCBMb2NhbDYpKQ0KICAgICAg
ICAgICAgew0KICAgICAgICAgICAgICAgIFJldHVybiAoT25lcykNCiAgICAgICAgICAgIH0NCiAg
ICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBSZXR1cm4gKFpl
cm8pDQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBOYW1lIChPU0lELCAw
eDAwKQ0KICAgIE1ldGhvZCAoQ0tPUywgMCwgTm90U2VyaWFsaXplZCkNCiAgICB7DQogICAgICAg
IElmIChPU0lEKQ0KICAgICAgICB7DQogICAgICAgICAgICBSZXR1cm4gKE9TSUQpDQogICAgICAg
IH0NCg0KICAgICAgICBJZiAoQ29uZFJlZk9mIChcX09TSSwgTG9jYWwwKSkNCiAgICAgICAgew0K
ICAgICAgICAgICAgU3RvcmUgKDB4ODIsIE9TSUQpDQogICAgICAgIH0NCiAgICAgICAgRWxzZQ0K
ICAgICAgICB7DQogICAgICAgICAgICBJZiAoTEVxdWFsIChTQ01QIChcX09TLCAiTWljcm9zb2Z0
IFdpbmRvd3MgTlQiKSwgWmVybykpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgU3Rv
cmUgKDB4ODEsIE9TSUQpDQogICAgICAgICAgICB9DQogICAgICAgICAgICBFbHNlDQogICAgICAg
ICAgICB7DQogICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoU0NNUCAoXF9PUywgIk1pY3Jvc29m
dCBXaW5kb3dzIiksIFplcm8pKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg
ICAgU3RvcmUgKDB4MDEsIE9TSUQpDQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAg
IEVsc2UNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwg
KFNDTVAgKFxfT1MsICJNaWNyb3NvZnQgV2luZG93c01FOiBNaWxsZW5uaXVtIEVkaXRpb24iKSwg
WmVybykpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0
b3JlICgweDAyLCBPU0lEKQ0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAg
ICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAg
U3RvcmUgKDB4RkYsIE9TSUQpDQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAg
ICB9DQogICAgICAgICAgICB9DQogICAgICAgIH0NCg0KICAgICAgICBSZXR1cm4gKE9TSUQpDQog
ICAgfQ0KDQogICAgU2NvcGUgKFwpDQogICAgew0KICAgICAgICBOYW1lIChXVEhULCBaZXJvKQ0K
ICAgICAgICBOYW1lIChBUElDLCBPbmUpDQogICAgICAgIE5hbWUgKEdWM0UsIE9uZSkNCiAgICAg
ICAgTmFtZSAoSFRURSwgWmVybykNCiAgICB9DQoNCiAgICBNZXRob2QgKEdJTkksIDAsIE5vdFNl
cmlhbGl6ZWQpDQogICAgew0KICAgICAgICBTdG9yZSAoXF9TQi5QU1JWICgweEM5LCAweDAxLCAw
eDAxLCAweDAxLCAweDAzKSwgQVBJQykNCiAgICAgICAgU3RvcmUgKFxfU0IuUFNSViAoMHhDOSwg
MHgwMSwgMHgwMSwgMHgwMiwgMHgwMyksIEdWM0UpDQogICAgICAgIFN0b3JlIChcX1NCLlBTUlYg
KDB4QzksIDB4MDEsIDB4MDEsIDB4MDMsIDB4MDMpLCBIVFRFKQ0KICAgIH0NCg0KICAgIE1ldGhv
ZCAoUE5PVCwgMCwgU2VyaWFsaXplZCkNCiAgICB7DQogICAgICAgIElmIChIVFRFKQ0KICAgICAg
ICB7DQogICAgICAgICAgICBJZiAoTEVxdWFsIChBbmQgKFBEQzAsIDB4MEEpLCAweDBBKSkNCiAg
ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBOb3RpZnkgKFxfUFIuQ1BVMCwgMHg4MCkNCiAg
ICAgICAgICAgIH0NCg0KICAgICAgICAgICAgSWYgKExFcXVhbCAoQW5kIChQREMxLCAweDBBKSwg
MHgwQSkpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgTm90aWZ5IChcX1BSLkNQVTEs
IDB4ODApDQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICAgICAgRWxzZQ0KICAgICAgICB7
DQogICAgICAgICAgICBOb3RpZnkgKFxfUFIuQ1BVMCwgMHg4MCkNCiAgICAgICAgICAgIFNsZWVw
ICgweDY0KQ0KICAgICAgICAgICAgTm90aWZ5IChcX1BSLkNQVTAsIDB4ODEpDQogICAgICAgIH0N
Cg0KICAgICAgICBOb3RpZnkgKFxfU0IuQkFUQSwgMHg4MCkNCiAgICB9DQoNCiAgICBTY29wZSAo
XCkNCiAgICB7DQogICAgICAgIE5hbWUgKEdURjAsIEJ1ZmZlciAoMHgwNykge30pDQogICAgICAg
IE5hbWUgKEdURjIsIEJ1ZmZlciAoMHgwNykge30pDQogICAgICAgIE5hbWUgKElERU0sIFplcm8p
DQogICAgfQ0KDQogICAgTWV0aG9kIChBSU5JLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgIHsNCiAg
ICAgICAgU3RvcmUgKFxfU0IuUFNSViAoMHg5NCwgMHgwMSwgMHgwMSwgMHgwMSwgMHgwMyksIElE
RU0pDQogICAgfQ0KDQogICAgTWV0aG9kIChHRVRQLCAxLCBTZXJpYWxpemVkKQ0KICAgIHsNCiAg
ICAgICAgSWYgKExFcXVhbCAoQW5kIChBcmcwLCAweDA5KSwgMHgwMCkpDQogICAgICAgIHsNCiAg
ICAgICAgICAgIFJldHVybiAoMHhGRkZGRkZGRikNCiAgICAgICAgfQ0KDQogICAgICAgIElmIChM
RXF1YWwgKEFuZCAoQXJnMCwgMHgwOSksIDB4MDgpKQ0KICAgICAgICB7DQogICAgICAgICAgICBS
ZXR1cm4gKDB4MDM4NCkNCiAgICAgICAgfQ0KDQogICAgICAgIFNoaWZ0UmlnaHQgKEFuZCAoQXJn
MCwgMHgwMzAwKSwgMHgwOCwgTG9jYWwwKQ0KICAgICAgICBTaGlmdFJpZ2h0IChBbmQgKEFyZzAs
IDB4MzAwMCksIDB4MEMsIExvY2FsMSkNCiAgICAgICAgUmV0dXJuIChNdWx0aXBseSAoMHgxRSwg
U3VidHJhY3QgKDB4MDksIEFkZCAoTG9jYWwwLCBMb2NhbDEpKSkpDQogICAgfQ0KDQogICAgTWV0
aG9kIChHRE1BLCA1LCBTZXJpYWxpemVkKQ0KICAgIHsNCiAgICAgICAgSWYgKEFyZzApDQogICAg
ICAgIHsNCiAgICAgICAgICAgIElmIChMQW5kIChBcmcxLCBBcmc0KSkNCiAgICAgICAgICAgIHsN
CiAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MTQpDQogICAgICAgICAgICB9DQoNCiAgICAgICAg
ICAgIElmIChMQW5kIChBcmcyLCBBcmc0KSkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg
ICBSZXR1cm4gKE11bHRpcGx5IChTdWJ0cmFjdCAoMHgwNCwgQXJnMyksIDB4MEYpKQ0KICAgICAg
ICAgICAgfQ0KDQogICAgICAgICAgICBSZXR1cm4gKE11bHRpcGx5IChTdWJ0cmFjdCAoMHgwNCwg
QXJnMyksIDB4MUUpKQ0KICAgICAgICB9DQoNCiAgICAgICAgUmV0dXJuICgweEZGRkZGRkZGKQ0K
ICAgIH0NCg0KICAgIE1ldGhvZCAoR0VUVCwgMSwgU2VyaWFsaXplZCkNCiAgICB7DQogICAgICAg
IFJldHVybiAoTXVsdGlwbHkgKDB4MUUsIFN1YnRyYWN0ICgweDA5LCBBZGQgKEFuZCAoU2hpZnRS
aWdodCAoQXJnMCwgMHgwMiksIDB4MDMpLCBBbmQgKEFyZzAsIDB4MDMpKSkpKQ0KICAgIH0NCg0K
ICAgIE1ldGhvZCAoR0VURiwgMywgU2VyaWFsaXplZCkNCiAgICB7DQogICAgICAgIE5hbWUgKFRN
UEYsIDB4MDApDQogICAgICAgIElmIChBcmcwKQ0KICAgICAgICB7DQogICAgICAgICAgICBPciAo
VE1QRiwgMHgwMSwgVE1QRikNCiAgICAgICAgfQ0KDQogICAgICAgIElmIChBbmQgKEFyZzIsIDB4
MDIpKQ0KICAgICAgICB7DQogICAgICAgICAgICBPciAoVE1QRiwgMHgwMiwgVE1QRikNCiAgICAg
ICAgfQ0KDQogICAgICAgIElmIChBcmcxKQ0KICAgICAgICB7DQogICAgICAgICAgICBPciAoVE1Q
RiwgMHgwNCwgVE1QRikNCiAgICAgICAgfQ0KDQogICAgICAgIElmIChBbmQgKEFyZzIsIDB4MjAp
KQ0KICAgICAgICB7DQogICAgICAgICAgICBPciAoVE1QRiwgMHgwOCwgVE1QRikNCiAgICAgICAg
fQ0KDQogICAgICAgIElmIChBbmQgKEFyZzIsIDB4NDAwMCkpDQogICAgICAgIHsNCiAgICAgICAg
ICAgIE9yIChUTVBGLCAweDEwLCBUTVBGKQ0KICAgICAgICB9DQoNCiAgICAgICAgUmV0dXJuIChU
TVBGKQ0KICAgIH0NCg0KICAgIE1ldGhvZCAoU0VUUCwgMywgU2VyaWFsaXplZCkNCiAgICB7DQog
ICAgICAgIElmIChMR3JlYXRlciAoQXJnMCwgMHhGMCkpDQogICAgICAgIHsNCiAgICAgICAgICAg
IFJldHVybiAoMHgwOCkNCiAgICAgICAgfQ0KICAgICAgICBFbHNlDQogICAgICAgIHsNCiAgICAg
ICAgICAgIElmIChBbmQgKEFyZzEsIDB4MDIpKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAg
ICAgIElmIChMQW5kIChMTm90IChMR3JlYXRlciAoQXJnMCwgMHg3OCkpLCBBbmQgKEFyZzIsIDB4
MDIpKSkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgy
MzAxKQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIElmIChMQW5kIChMTm90
IChMR3JlYXRlciAoQXJnMCwgMHhCNCkpLCBBbmQgKEFyZzIsIDB4MDEpKSkNCiAgICAgICAgICAg
ICAgICB7DQogICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgyMTAxKQ0KICAgICAgICAgICAg
ICAgIH0NCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgUmV0dXJuICgweDEwMDEpDQogICAg
ICAgIH0NCiAgICB9DQoNCiAgICBNZXRob2QgKFNETUEsIDEsIFNlcmlhbGl6ZWQpDQogICAgew0K
ICAgICAgICBJZiAoTE5vdCAoTEdyZWF0ZXIgKEFyZzAsIDB4MTQpKSkNCiAgICAgICAgew0KICAg
ICAgICAgICAgUmV0dXJuICgweDAxKQ0KICAgICAgICB9DQoNCiAgICAgICAgSWYgKExOb3QgKExH
cmVhdGVyIChBcmcwLCAweDFFKSkpDQogICAgICAgIHsNCiAgICAgICAgICAgIFJldHVybiAoMHgw
MikNCiAgICAgICAgfQ0KDQogICAgICAgIElmIChMTm90IChMR3JlYXRlciAoQXJnMCwgMHgyRCkp
KQ0KICAgICAgICB7DQogICAgICAgICAgICBSZXR1cm4gKDB4MDEpDQogICAgICAgIH0NCg0KICAg
ICAgICBJZiAoTE5vdCAoTEdyZWF0ZXIgKEFyZzAsIDB4M0MpKSkNCiAgICAgICAgew0KICAgICAg
ICAgICAgUmV0dXJuICgweDAyKQ0KICAgICAgICB9DQoNCiAgICAgICAgSWYgKExOb3QgKExHcmVh
dGVyIChBcmcwLCAweDVBKSkpDQogICAgICAgIHsNCiAgICAgICAgICAgIFJldHVybiAoMHgwMSkN
CiAgICAgICAgfQ0KDQogICAgICAgIFJldHVybiAoMHgwMCkNCiAgICB9DQoNCiAgICBNZXRob2Qg
KFNFVFQsIDMsIFNlcmlhbGl6ZWQpDQogICAgew0KICAgICAgICBJZiAoQW5kIChBcmcxLCAweDAy
KSkNCiAgICAgICAgew0KICAgICAgICAgICAgSWYgKExBbmQgKExOb3QgKExHcmVhdGVyIChBcmcw
LCAweDc4KSksIEFuZCAoQXJnMiwgMHgwMikpKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAg
ICAgIFJldHVybiAoMHgwQikNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgSWYgKExBbmQg
KExOb3QgKExHcmVhdGVyIChBcmcwLCAweEI0KSksIEFuZCAoQXJnMiwgMHgwMSkpKQ0KICAgICAg
ICAgICAgew0KICAgICAgICAgICAgICAgIFJldHVybiAoMHgwOSkNCiAgICAgICAgICAgIH0NCiAg
ICAgICAgfQ0KDQogICAgICAgIFJldHVybiAoMHgwNCkNCiAgICB9DQoNCiAgICBPcGVyYXRpb25S
ZWdpb24gKFJDUkIsIFN5c3RlbU1lbW9yeSwgMHhGRUQxQzAwMCwgMHg0MDAwKQ0KICAgIEZpZWxk
IChSQ1JCLCBEV29yZEFjYywgTG9jaywgUHJlc2VydmUpDQogICAgew0KICAgICAgICBPZmZzZXQg
KDB4MTAwMCksIA0KICAgICAgICBPZmZzZXQgKDB4MzAwMCksIA0KICAgICAgICBPZmZzZXQgKDB4
MzQwNCksIA0KICAgICAgICBIUEFTLCAgIDIsIA0KICAgICAgICAgICAgLCAgIDUsIA0KICAgICAg
ICBIUEFFLCAgIDEsIA0KICAgICAgICBPZmZzZXQgKDB4MzQxOCksIA0KICAgICAgICAgICAgLCAg
IDEsIA0KICAgICAgICBQQVRELCAgIDEsIA0KICAgICAgICBTQVRELCAgIDEsIA0KICAgICAgICBT
TUJELCAgIDEsIA0KICAgICAgICBBWkFELCAgIDEsIA0KICAgICAgICBBOTdELCAgIDEsIA0KICAg
ICAgICBPZmZzZXQgKDB4MzQxQSksIA0KICAgICAgICBSUDFELCAgIDEsIA0KICAgICAgICBSUDJE
LCAgIDEsIA0KICAgICAgICBSUDNELCAgIDEsIA0KICAgICAgICBSUDRELCAgIDENCiAgICB9DQoN
CiAgICBTY29wZSAoXCkNCiAgICB7DQogICAgICAgIE5hbWUgKFBXUlMsIDB4MDEpDQogICAgfQ0K
DQogICAgU2NvcGUgKF9TQikNCiAgICB7DQogICAgICAgIE1ldGhvZCAoRUNQRiwgMywgTm90U2Vy
aWFsaXplZCkNCiAgICAgICAgew0KICAgICAgICAgICAgSWYgKExFcXVhbCAoQXJnMCwgMHgwMTAw
KSkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBTdG9yZSAoXF9TQi5QQ0kwLkxQQ0Iu
RUMwLkVDMDEgKCksIFBXUlMpDQogICAgICAgICAgICAgICAgUmV0dXJuIChQV1JTKQ0KICAgICAg
ICAgICAgfQ0KDQogICAgICAgICAgICBJZiAoTEVxdWFsIChBcmcwLCAweDAxMDEpKQ0KICAgICAg
ICAgICAgew0KICAgICAgICAgICAgICAgIFJldHVybiAoXF9TQi5QQ0kwLkxQQ0IuRUMwLkVDMDIg
KEFyZzEpKQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBJZiAoTEVxdWFsIChBcmcwLCAw
eDAxMTApKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIFJldHVybiAoXF9TQi5QQ0kw
LkxQQ0IuRUMwLkVDMDMgKEFyZzEsIEFyZzIpKQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAg
ICBJZiAoTEVxdWFsIChBcmcwLCAweDAxMTEpKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAg
ICAgIFJldHVybiAoXF9TQi5QQ0kwLkxQQ0IuRUMwLkVDMDQgKEFyZzEsIEFyZzIpKQ0KICAgICAg
ICAgICAgfQ0KDQogICAgICAgICAgICBJZiAoTEVxdWFsIChBcmcwLCAweDAxMTIpKQ0KICAgICAg
ICAgICAgew0KICAgICAgICAgICAgICAgIFJldHVybiAoXF9TQi5QQ0kwLkxQQ0IuRUMwLkVDMDUg
KEFyZzEsIEFyZzIpKQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBJZiAoTEVxdWFsIChB
cmcwLCAweDAyMDApKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIFJldHVybiAoXF9T
Qi5QQ0kwLkxQQ0IuRUMwLkVDMDYgKCkpDQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIElm
IChMRXF1YWwgKEFyZzAsIDB4MDIwMSkpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg
UmV0dXJuIChcX1NCLlBDSTAuTFBDQi5FQzAuRUMwNyAoKSkNCiAgICAgICAgICAgIH0NCg0KICAg
ICAgICAgICAgSWYgKExFcXVhbCAoQXJnMCwgMHgwMjAyKSkNCiAgICAgICAgICAgIHsNCiAgICAg
ICAgICAgICAgICBSZXR1cm4gKFxfU0IuUENJMC5MUENCLkVDMC5FQzA4ICgpKQ0KICAgICAgICAg
ICAgfQ0KDQogICAgICAgICAgICBJZiAoTEVxdWFsIChBcmcwLCAweDAyMDMpKQ0KICAgICAgICAg
ICAgew0KICAgICAgICAgICAgICAgIFJldHVybiAoXF9TQi5QQ0kwLkxQQ0IuRUMwLkVDMDkgKCkp
DQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIElmIChMRXF1YWwgKEFyZzAsIDB4MDIwNCkp
DQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgUmV0dXJuIChcX1NCLlBDSTAuTFBDQi5F
QzAuRUMwQSAoKSkNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgSWYgKExFcXVhbCAoQXJn
MCwgMHgwMjA1KSkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBSZXR1cm4gKFxfU0Iu
UENJMC5MUENCLkVDMC5FQzBCIChBcmcxKSkNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAg
SWYgKExFcXVhbCAoQXJnMCwgMHgwMjA2KSkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg
ICBSZXR1cm4gKFxfU0IuUENJMC5MUENCLkVDMC5FQzBDIChBcmcxKSkNCiAgICAgICAgICAgIH0N
Cg0KICAgICAgICAgICAgSWYgKExFcXVhbCAoQXJnMCwgMHgwMjA3KSkNCiAgICAgICAgICAgIHsN
CiAgICAgICAgICAgICAgICBSZXR1cm4gKFxfU0IuUENJMC5MUENCLkVDMC5FQzBEIChBcmcxKSkN
CiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgSWYgKExFcXVhbCAoQXJnMCwgMHgwMjA4KSkN
CiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBSZXR1cm4gKFxfU0IuUENJMC5MUENCLkVD
MC5FQzBFIChBcmcxKSkNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgSWYgKExFcXVhbCAo
QXJnMCwgMHgwMjA5KSkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBSZXR1cm4gKFxf
U0IuUENJMC5MUENCLkVDMC5FQzBGIChBcmcxKSkNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAg
ICAgSWYgKExFcXVhbCAoQXJnMCwgMHgwMjBBKSkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAg
ICAgICBSZXR1cm4gKFxfU0IuUENJMC5MUENCLkVDMC5FQzEwIChBcmcxLCBBcmcyKSkNCiAgICAg
ICAgICAgIH0NCg0KICAgICAgICAgICAgSWYgKExFcXVhbCAoQXJnMCwgMHgwMjE1KSkNCiAgICAg
ICAgICAgIHsNCiAgICAgICAgICAgICAgICBSZXR1cm4gKFxfU0IuUENJMC5MUENCLkVDMC5aMDAw
ICgpKQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBSZXR1cm4gKDB4RkZGRkZGRkYpDQog
ICAgICAgIH0NCiAgICB9DQoNCiAgICBTY29wZSAoXF9TQikNCiAgICB7DQogICAgICAgIERldmlj
ZSAoTElEKQ0KICAgICAgICB7DQogICAgICAgICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJQTlAw
QzBEIikpDQogICAgICAgICAgICBOYW1lIChfVUlELCAweDAwKQ0KICAgICAgICAgICAgTWV0aG9k
IChfTElELCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg
IFJldHVybiAoXF9TQi5FQ1BGICgweDAyMDAsIDB4MDAsIDB4MDApKQ0KICAgICAgICAgICAgfQ0K
DQogICAgICAgICAgICBOYW1lIChfUFJXLCBQYWNrYWdlICgweDAyKQ0KICAgICAgICAgICAgew0K
ICAgICAgICAgICAgICAgIDB4MUIsIA0KICAgICAgICAgICAgICAgIDB4MDQNCiAgICAgICAgICAg
IH0pDQogICAgICAgICAgICBNZXRob2QgKF9QU1csIDEsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAg
ICAgICB7DQogICAgICAgICAgICAgICAgXF9TQi5FQ1BGICgweDAyMDcsIEFyZzAsIDB4MDApDQog
ICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBTY29wZSAoXF9TQikNCiAgICB7
DQogICAgICAgIE5hbWUgKFxfU0IuQkFTVCwgMHgwMCkNCiAgICAgICAgRGV2aWNlIChCQVRBKQ0K
ICAgICAgICB7DQogICAgICAgICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJQTlAwQzBBIikpDQog
ICAgICAgICAgICBOYW1lIChfVUlELCAweDAwKQ0KICAgICAgICAgICAgTmFtZSAoQV9QVSwgMHhG
RikNCiAgICAgICAgICAgIE1ldGhvZCAoX0JJRiwgMCwgU2VyaWFsaXplZCkNCiAgICAgICAgICAg
IHsNCiAgICAgICAgICAgICAgICBOYW1lIChCSUZSLCBQYWNrYWdlICgweDBEKQ0KICAgICAgICAg
ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgMHgwMCwgDQogICAgICAgICAgICAgICAgICAg
IDB4MDAsIA0KICAgICAgICAgICAgICAgICAgICAweDAwLCANCiAgICAgICAgICAgICAgICAgICAg
MHgwMCwgDQogICAgICAgICAgICAgICAgICAgIDB4MDAsIA0KICAgICAgICAgICAgICAgICAgICAw
eDAwLCANCiAgICAgICAgICAgICAgICAgICAgMHgwMCwgDQogICAgICAgICAgICAgICAgICAgIDB4
MDAsIA0KICAgICAgICAgICAgICAgICAgICAweDAwLCANCiAgICAgICAgICAgICAgICAgICAgQnVm
ZmVyICgweDEwKSB7fSwgDQogICAgICAgICAgICAgICAgICAgIEJ1ZmZlciAoMHgxMCkge30sIA0K
ICAgICAgICAgICAgICAgICAgICBCdWZmZXIgKDB4MTApIHt9LCANCiAgICAgICAgICAgICAgICAg
ICAgQnVmZmVyICgweDEwKSB7fQ0KICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAgICAgICAg
U3RvcmUgKFxfU0IuRUNQRiAoMHgwMTExLCAweDAwLCAweDAwKSwgQV9QVSkNCiAgICAgICAgICAg
ICAgICBTdG9yZSAoQV9QVSwgSW5kZXggKEJJRlIsIDB4MDApKQ0KICAgICAgICAgICAgICAgIElm
IChBX1BVKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4
MDEsIExvY2FsMSkNCiAgICAgICAgICAgICAgICAgICAgV2hpbGUgKExOb3QgKExHcmVhdGVyIChM
b2NhbDEsIDB4MDgpKSkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg
ICAgICAgU3RvcmUgKFxfU0IuRUNQRiAoMHgwMTExLCAweDAwLCBMb2NhbDEpLCBJbmRleCAoQklG
UiwgTG9jYWwxKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIEluY3JlbWVudCAoTG9jYWwxKQ0K
ICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAg
IEVsc2UNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAx
LCBMb2NhbDEpDQogICAgICAgICAgICAgICAgICAgIFdoaWxlIChMTm90IChMR3JlYXRlciAoTG9j
YWwxLCAweDA4KSkpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg
ICAgIFN0b3JlIChcX1NCLkVDUEYgKDB4MDExMSwgMHgwMCwgTG9jYWwxKSwgTG9jYWwyKQ0KICAg
ICAgICAgICAgICAgICAgICAgICAgSWYgKExBbmQgKExOb3QgKExFcXVhbCAoTG9jYWwyLCAweEZG
RkZGRkZGKSksIExBbmQgKExOb3QgKExFcXVhbCAoTG9jYWwxLCAweDAzKSksIExOb3QgKExFcXVh
bCAoTG9jYWwxLCAweDA0KSkpKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBNdWx0aXBseSAoTG9jYWwyLCAweDBBLCBMb2NhbDIpDQogICAg
ICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChM
b2NhbDIsIEluZGV4IChCSUZSLCBMb2NhbDEpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgSW5j
cmVtZW50IChMb2NhbDEpDQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB9
DQoNCiAgICAgICAgICAgICAgICBTdG9yZSAoXF9TQi5FQ1BGICgweDAxMTEsIDB4MDAsIDB4MDkp
LCBJbmRleCAoQklGUiwgMHgwOSkpDQogICAgICAgICAgICAgICAgU3RvcmUgKFxfU0IuRUNQRiAo
MHgwMTExLCAweDAwLCAweDBBKSwgSW5kZXggKEJJRlIsIDB4MEEpKQ0KICAgICAgICAgICAgICAg
IFN0b3JlIChcX1NCLkVDUEYgKDB4MDExMSwgMHgwMCwgMHgwQiksIEluZGV4IChCSUZSLCAweDBC
KSkNCiAgICAgICAgICAgICAgICBTdG9yZSAoIlBhbmFzb25pYyIsIEluZGV4IChCSUZSLCAweDBD
KSkNCiAgICAgICAgICAgICAgICBSZXR1cm4gKEJJRlIpDQogICAgICAgICAgICB9DQoNCiAgICAg
ICAgICAgIE1ldGhvZCAoX0JTVCwgMCwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgIHsNCiAgICAg
ICAgICAgICAgICBOYW1lIChCU1RSLCBQYWNrYWdlICgweDA0KQ0KICAgICAgICAgICAgICAgIHsN
CiAgICAgICAgICAgICAgICAgICAgMHgwMCwgDQogICAgICAgICAgICAgICAgICAgIDB4MDAsIA0K
ICAgICAgICAgICAgICAgICAgICAweDAwLCANCiAgICAgICAgICAgICAgICAgICAgMHgwMA0KICAg
ICAgICAgICAgICAgIH0pDQogICAgICAgICAgICAgICAgU3RvcmUgKFxfU0IuRUNQRiAoMHgwMTEw
LCAweDAwLCAweDAwKSwgSW5kZXggKEJTVFIsIDB4MDApKQ0KICAgICAgICAgICAgICAgIElmIChM
R3JlYXRlciAoQV9QVSwgMHgwMSkpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg
ICAgICBTdG9yZSAoXF9TQi5FQ1BGICgweDAxMTEsIDB4MDAsIDB4MDApLCBBX1BVKQ0KICAgICAg
ICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIElmIChBX1BVKQ0KICAgICAgICAgICAgICAg
IHsNCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFxfU0IuRUNQRiAoMHgwMTEwLCAweDAwLCAw
eDAxKSwgSW5kZXggKEJTVFIsIDB4MDEpKQ0KICAgICAgICAgICAgICAgICAgICBTdG9yZSAoXF9T
Qi5FQ1BGICgweDAxMTAsIDB4MDAsIDB4MDIpLCBJbmRleCAoQlNUUiwgMHgwMikpDQogICAgICAg
ICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICB7DQogICAg
ICAgICAgICAgICAgICAgIFN0b3JlIChcX1NCLkVDUEYgKDB4MDExMCwgMHgwMCwgMHgwMSksIExv
Y2FsMCkNCiAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoTG9jYWwwLCAweEZGRkZGRkZG
KSkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUg
KExvY2FsMCwgSW5kZXggKEJTVFIsIDB4MDEpKQ0KICAgICAgICAgICAgICAgICAgICB9DQogICAg
ICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg
ICAgICAgICAgICAgU3RvcmUgKE11bHRpcGx5IChMb2NhbDAsIDB4MEEpLCBJbmRleCAoQlNUUiwg
MHgwMSkpDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBTdG9y
ZSAoXF9TQi5FQ1BGICgweDAxMTAsIDB4MDAsIDB4MDIpLCBMb2NhbDApDQogICAgICAgICAgICAg
ICAgICAgIElmIChMRXF1YWwgKExvY2FsMCwgMHhGRkZGRkZGRikpDQogICAgICAgICAgICAgICAg
ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChMb2NhbDAsIEluZGV4IChCU1RS
LCAweDAyKSkNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICBFbHNl
DQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChN
dWx0aXBseSAoTG9jYWwwLCAweDBBKSwgSW5kZXggKEJTVFIsIDB4MDIpKQ0KICAgICAgICAgICAg
ICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgU3RvcmUgKFxf
U0IuRUNQRiAoMHgwMTEwLCAweDAwLCAweDAzKSwgSW5kZXggKEJTVFIsIDB4MDMpKQ0KICAgICAg
ICAgICAgICAgIFJldHVybiAoQlNUUikNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgTmFt
ZSAoX1BDTCwgUGFja2FnZSAoMHgwMSkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBc
X1NCDQogICAgICAgICAgICB9KQ0KICAgICAgICAgICAgTWV0aG9kIChfU1RBLCAwLCBTZXJpYWxp
emVkKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKFxfU0IuRUNQ
RiAoMHgwMTAxLCAweDAwLCAweDAwKSwgMHgwMSkpDQogICAgICAgICAgICAgICAgew0KICAgICAg
ICAgICAgICAgICAgICBSZXR1cm4gKDB4MUYpDQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAg
ICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIFJldHVy
biAoMHgwRikNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAg
IE1ldGhvZCAoX0JUUCwgMSwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgIHsNCiAgICAgICAg
ICAgICAgICBJZiAoTEdyZWF0ZXIgKEFfUFUsIDB4MDEpKQ0KICAgICAgICAgICAgICAgIHsNCiAg
ICAgICAgICAgICAgICAgICAgU3RvcmUgKFxfU0IuRUNQRiAoMHgwMTExLCAweDAwLCAweDAwKSwg
QV9QVSkNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBJZiAoQV9QVSkNCiAg
ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIFN0b3JlIChBcmcwLCBMb2NhbDEp
DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAg
ICB7DQogICAgICAgICAgICAgICAgICAgIFN0b3JlIChEaXZpZGUgKEFyZzAsIDB4MEEsICksIExv
Y2FsMSkNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBJZiAoTE5vdCAoTExl
c3MgKExvY2FsMSwgMHgwMDAxMDAwMCkpKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg
ICAgICAgICAgU3RvcmUgKFplcm8sIExvY2FsMCkNCiAgICAgICAgICAgICAgICB9DQogICAgICAg
ICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgU3Rv
cmUgKExvY2FsMSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAg
IFxfU0IuRUNQRiAoMHgwMTEyLCAweDAwLCBMb2NhbDApDQogICAgICAgICAgICB9DQogICAgICAg
IH0NCiAgICB9DQoNCiAgICBTY29wZSAoXF9TQikNCiAgICB7DQogICAgICAgIERldmljZSAoQUMp
DQogICAgICAgIHsNCiAgICAgICAgICAgIE5hbWUgKF9ISUQsICJBQ1BJMDAwMyIpDQogICAgICAg
ICAgICBOYW1lIChfVUlELCAweDAwKQ0KICAgICAgICAgICAgTWV0aG9kIChfUFNSLCAwLCBOb3RT
ZXJpYWxpemVkKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIFJldHVybiAoXF9TQi5F
Q1BGICgweDAxMDAsIDB4MDAsIDB4MDApKQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBO
YW1lIChfUENMLCBQYWNrYWdlICgweDAxKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg
IFxfU0INCiAgICAgICAgICAgIH0pDQogICAgICAgIH0NCg0KICAgICAgICBNZXRob2QgKEFEQUMs
IDAsIFNlcmlhbGl6ZWQpDQogICAgICAgIHsNCiAgICAgICAgICAgIFN0b3JlIChcX1NCLkVDUEYg
KDB4MDEwMCwgMHgwMCwgMHgwMCksIExvY2FsMCkNCiAgICAgICAgICAgIFxfU0IuUFNSViAoMHhD
OSwgMHgwMywgMHgwMSwgTG9jYWwwLCAweDAwKQ0KICAgICAgICAgICAgUE5PVCAoKQ0KICAgICAg
ICB9DQogICAgfQ0KDQogICAgU2NvcGUgKFxfU0IpDQogICAgew0KICAgICAgICBEZXZpY2UgKFBX
UkIpDQogICAgICAgIHsNCiAgICAgICAgICAgIE5hbWUgKF9ISUQsIEVpc2FJZCAoIlBOUDBDMEMi
KSkNCiAgICAgICAgICAgIE5hbWUgKF9VSUQsIDB4MDApDQogICAgICAgICAgICBNZXRob2QgKF9T
VEEsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgUmV0
dXJuICgweDBGKQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgU2NvcGUg
KFxfU0IpDQogICAgew0KICAgICAgICBEZXZpY2UgKEhLRVkpDQogICAgICAgIHsNCiAgICAgICAg
ICAgIE5hbWUgKF9ISUQsIEVpc2FJZCAoIk1BVDAwMTkiKSkNCiAgICAgICAgICAgIE5hbWUgKFNJ
RlIsIFBhY2thZ2UgKDB4MEUpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgMHgwMSwg
DQogICAgICAgICAgICAgICAgMHgwMCwgDQogICAgICAgICAgICAgICAgMHgxNSwgDQogICAgICAg
ICAgICAgICAgMHgwMSwgDQogICAgICAgICAgICAgICAgMHhGRiwgDQogICAgICAgICAgICAgICAg
MHgxNSwgDQogICAgICAgICAgICAgICAgMHgwMSwgDQogICAgICAgICAgICAgICAgMHg3RiwgDQog
ICAgICAgICAgICAgICAgMHgwMCwgDQogICAgICAgICAgICAgICAgMHgwMSwgDQogICAgICAgICAg
ICAgICAgMHgwMCwgDQogICAgICAgICAgICAgICAgMHgwMCwgDQogICAgICAgICAgICAgICAgMHgw
QSwgDQogICAgICAgICAgICAgICAgMHhGRg0KICAgICAgICAgICAgfSkNCiAgICAgICAgICAgIE5h
bWUgKEhEQVQsIEJ1ZmZlciAoMHgyMCkge30pDQogICAgICAgICAgICBOYW1lIChISU5QLCBaZXJv
KQ0KICAgICAgICAgICAgTmFtZSAoSE9VUCwgWmVybykNCiAgICAgICAgICAgIE11dGV4IChIRE1Y
LCAweDAwKQ0KICAgICAgICAgICAgTWV0aG9kIChfU1RBLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAg
ICAgICAgICAgew0KICAgICAgICAgICAgICAgIFJldHVybiAoMHgwRikNCiAgICAgICAgICAgIH0N
Cg0KICAgICAgICAgICAgTWV0aG9kIChfSU5JLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAg
ICAgew0KICAgICAgICAgICAgICAgIEhSRVMgKCkNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAg
ICAgTWV0aG9kIChIUkVTLCAwLCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAgew0KICAgICAgICAg
ICAgICAgIEFjcXVpcmUgKEhETVgsIDB4RkZGRikNCiAgICAgICAgICAgICAgICBPciAoMHgwMTAw
MDAwMCwgMHgwMCwgTG9jYWwxKQ0KICAgICAgICAgICAgICAgIFN0b3JlIChcX1NCLlBTUlYgKDB4
OTYsIDB4MTkwMDM0MzQsIDB4MDEsIExvY2FsMSwgMHgwMyksIExvY2FsMCkNCiAgICAgICAgICAg
ICAgICBTdG9yZSAoQW5kIChTaGlmdFJpZ2h0IChMb2NhbDAsIDB4MDgpLCAweEZGKSwgSW5kZXgg
KFNJRlIsIDB4MDcpKQ0KICAgICAgICAgICAgICAgIFN0b3JlIChBbmQgKExvY2FsMCwgMHhGRiks
IEluZGV4IChTSUZSLCAweDA0KSkNCiAgICAgICAgICAgICAgICBPciAoMHgwMjAwMDAwMCwgMHgw
MCwgTG9jYWwxKQ0KICAgICAgICAgICAgICAgIFN0b3JlIChBbmQgKFxfU0IuUFNSViAoMHg5Niwg
MHgxOTAwMzQzNCwgMHgwMSwgTG9jYWwxLCAweDAxKSwgMHgwMSksIEluZGV4IChTSUZSLCAweDA4
KSkNCiAgICAgICAgICAgICAgICBTdG9yZSAoXF9TQi5FQ1BGICgweDAyMTUsIDB4MDAsIDB4MDAp
LCBMb2NhbDApDQogICAgICAgICAgICAgICAgT3IgKExvY2FsMCwgMHgwMSwgTG9jYWwwKQ0KICAg
ICAgICAgICAgICAgIE9yIChMb2NhbDAsIDB4MDIsIExvY2FsMCkNCiAgICAgICAgICAgICAgICBT
dG9yZSAoTG9jYWwwLCBJbmRleCAoU0lGUiwgMHgwQSkpDQogICAgICAgICAgICAgICAgUmVsZWFz
ZSAoSERNWCkNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgTWV0aG9kIChIU0FWLCAwLCBT
ZXJpYWxpemVkKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIEFjcXVpcmUgKEhETVgs
IDB4RkZGRikNCiAgICAgICAgICAgICAgICBTdG9yZSAoRGVyZWZPZiAoSW5kZXggKFNJRlIsIDB4
MDQpKSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgIEFkZCAoU2hpZnRMZWZ0IChEZXJlZk9mIChJ
bmRleCAoU0lGUiwgMHgwNykpLCAweDA4KSwgTG9jYWwwLCBMb2NhbDApDQogICAgICAgICAgICAg
ICAgT3IgKDB4MDEwMDAwMDAsIDB4MDAwMTAwMDAsIExvY2FsMSkNCiAgICAgICAgICAgICAgICBP
ciAoTG9jYWwxLCBMb2NhbDAsIExvY2FsMSkNCiAgICAgICAgICAgICAgICBcX1NCLlBTUlYgKDB4
OTYsIDB4MTkwMDM0MzQsIDB4MDEsIExvY2FsMSwgMHgwMykNCiAgICAgICAgICAgICAgICBTdG9y
ZSAoQW5kIChEZXJlZk9mIChJbmRleCAoU0lGUiwgMHgwOCkpLCAweDAxKSwgTG9jYWwwKQ0KICAg
ICAgICAgICAgICAgIE9yICgweDAyMDAwMDAwLCAweDAwMDEwMDAwLCBMb2NhbDEpDQogICAgICAg
ICAgICAgICAgT3IgKExvY2FsMSwgTG9jYWwwLCBMb2NhbDEpDQogICAgICAgICAgICAgICAgXF9T
Qi5QU1JWICgweDk2LCAweDE5MDAzNDM0LCAweDAxLCBMb2NhbDEsIDB4MDEpDQogICAgICAgICAg
ICAgICAgUmVsZWFzZSAoSERNWCkNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgTWV0aG9k
IChISU5ELCAxLCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIEFj
cXVpcmUgKEhETVgsIDB4RkZGRikNCiAgICAgICAgICAgICAgICBTdG9yZSAoQXJnMCwgSW5kZXgg
KEhEQVQsIEhJTlApKQ0KICAgICAgICAgICAgICAgIEluY3JlbWVudCAoSElOUCkNCiAgICAgICAg
ICAgICAgICBEaXZpZGUgKEhJTlAsIDB4MjAsIEhJTlApDQogICAgICAgICAgICAgICAgSWYgKExF
cXVhbCAoSElOUCwgSE9VUCkpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg
ICBJbmNyZW1lbnQgKEhPVVApDQogICAgICAgICAgICAgICAgICAgIERpdmlkZSAoSE9VUCwgMHgy
MCwgSE9VUCkNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBSZWxlYXNlIChI
RE1YKQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBNZXRob2QgKEhJTkYsIDAsIFNlcmlh
bGl6ZWQpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgQWNxdWlyZSAoSERNWCwgMHhG
RkZGKQ0KICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKEhJTlAsIEhPVVApKQ0KICAgICAgICAg
ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFplcm8sIExvY2FsMCkNCiAgICAg
ICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgIHsNCiAg
ICAgICAgICAgICAgICAgICAgU3RvcmUgKERlcmVmT2YgKEluZGV4IChIREFULCBIT1VQKSksIExv
Y2FsMCkNCiAgICAgICAgICAgICAgICAgICAgSW5jcmVtZW50IChIT1VQKQ0KICAgICAgICAgICAg
ICAgICAgICBEaXZpZGUgKEhPVVAsIDB4MjAsIEhPVVApDQogICAgICAgICAgICAgICAgfQ0KDQog
ICAgICAgICAgICAgICAgU3RvcmUgKExOb3QgKExFcXVhbCAoSElOUCwgSE9VUCkpLCBMb2NhbDEp
DQogICAgICAgICAgICAgICAgUmVsZWFzZSAoSERNWCkNCiAgICAgICAgICAgICAgICBJZiAoTG9j
YWwxKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgTm90aWZ5IChcX1NC
LkhLRVksIDB4ODApDQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgUmV0dXJu
IChMb2NhbDApDQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIE1ldGhvZCAoU1FUWSwgMCwg
Tm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBSZXR1cm4gKDB4
MEUpDQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIE1ldGhvZCAoU0lORiwgMCwgTm90U2Vy
aWFsaXplZCkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBTdG9yZSAoXF9TQi5FQ1BG
ICgweDAyMTUsIDB4MDAsIDB4MDApLCBMb2NhbDApDQogICAgICAgICAgICAgICAgT3IgKExvY2Fs
MCwgMHgwMSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgIE9yIChMb2NhbDAsIDB4MDIsIExvY2Fs
MCkNCiAgICAgICAgICAgICAgICBTdG9yZSAoTG9jYWwwLCBJbmRleCAoU0lGUiwgMHgwQSkpDQog
ICAgICAgICAgICAgICAgUmV0dXJuIChTSUZSKQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAg
ICBNZXRob2QgKFNTRVQsIDIsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICB7DQogICAgICAgICAg
ICAgICAgSWYgKExPciAoTEVxdWFsIChBcmcwLCAweDA0KSwgTEVxdWFsIChBcmcwLCAweDA3KSkp
DQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBTdG9yZSAoQXJnMSwgSW5k
ZXggKFNJRlIsIEFyZzApKQ0KICAgICAgICAgICAgICAgICAgICBPciAoMHgwNDAwMDAwMCwgMHgw
MDAyMDAwMCwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICBPciAoTG9jYWwwLCBBcmcxLCBM
b2NhbDApDQogICAgICAgICAgICAgICAgICAgIFxfU0IuUFNSViAoMHg5NiwgMHgxOTAwMzQzNCwg
MHgwMSwgTG9jYWwwLCAweDAzKQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAg
IElmIChMRXF1YWwgKEFyZzAsIDB4MDgpKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg
ICAgICAgICAgU3RvcmUgKEFyZzEsIEluZGV4IChTSUZSLCBBcmcwKSkNCiAgICAgICAgICAgICAg
ICAgICAgXF9TQi5FQ1BGICgweDAyMDksIEFyZzEsIDB4MDApDQogICAgICAgICAgICAgICAgfQ0K
DQogICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoQXJnMCwgMHg4MCkpDQogICAgICAgICAgICAg
ICAgew0KICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChBcmcxLCAweDAxKSkNCiAgICAg
ICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4RTIwMSwg
TG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIEVsc2UN
CiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4
RTIwMCwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAg
ICAgXF9TQi5FQ1BGICgweDAyMDgsIEFyZzEsIDB4MDApDQogICAgICAgICAgICAgICAgfQ0KDQog
ICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoQXJnMCwgMHgwRCkpDQogICAgICAgICAgICAgICAg
ew0KICAgICAgICAgICAgICAgICAgICBTdG9yZSAoQXJnMSwgSW5kZXggKFNJRlIsIEFyZzApKQ0K
ICAgICAgICAgICAgICAgICAgICBPciAoMHgwNDAwMDAwMCwgMHgwMDAzMDAwMCwgTG9jYWwwKQ0K
ICAgICAgICAgICAgICAgICAgICBPciAoTG9jYWwwLCBBcmcxLCBMb2NhbDApDQogICAgICAgICAg
ICAgICAgICAgIFxfU0IuUFNSViAoMHg5NiwgMHgxOTAwMzQzNCwgMHgwMSwgTG9jYWwwLCAweDAz
KQ0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgTWV0aG9k
IChIQUNULCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg
IE5vdGlmeSAoUFdSQiwgMHg4MCkNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgIH0NCg0K
ICAgIFNjb3BlIChcX1BSKQ0KICAgIHsNCiAgICAgICAgUHJvY2Vzc29yIChDUFUwLCAweDAwLCAw
eDAwMDAxMDEwLCAweDA2KSB7fQ0KICAgICAgICBQcm9jZXNzb3IgKENQVTEsIDB4MDEsIDB4MDAw
MDEwMTAsIDB4MDYpIHt9DQogICAgfQ0KDQogICAgU2NvcGUgKFxfVFopDQogICAgew0KICAgICAg
ICBUaGVybWFsWm9uZSAoVFpDKQ0KICAgICAgICB7DQogICAgICAgICAgICBOYW1lIChJTklULCBa
ZXJvKQ0KICAgICAgICAgICAgTmFtZSAoQ1NDUCwgWmVybykNCiAgICAgICAgICAgIE5hbWUgKFBT
ViwgMHgwRENBKQ0KICAgICAgICAgICAgTmFtZSAoQ1JULCAweDBFMkUpDQogICAgICAgICAgICBN
ZXRob2QgKElOSVAsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICB7DQogICAgICAgICAg
ICAgICAgSWYgKExFcXVhbCAoSU5JVCwgWmVybykpDQogICAgICAgICAgICAgICAgew0KICAgICAg
ICAgICAgICAgICAgICBTdG9yZSAoXF9TQi5FQ1BGICgweDAyMDQsIFplcm8sIFplcm8pLCBDUlQp
DQogICAgICAgICAgICAgICAgICAgIFN0b3JlIChcX1NCLkVDUEYgKDB4MDIwMywgWmVybywgWmVy
byksIFBTVikNCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFxfU0IuRUNQRiAoMHgwMjAyLCBa
ZXJvLCBaZXJvKSwgX1RDMikNCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKE9uZSwgSU5JVCkN
CiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIE5hbWUgKF9U
QzEsIFplcm8pDQogICAgICAgICAgICBOYW1lIChfVEMyLCAweDBDKQ0KICAgICAgICAgICAgTmFt
ZSAoX1RTUCwgMHgyOCkNCiAgICAgICAgICAgIE1ldGhvZCAoX1RNUCwgMCwgTm90U2VyaWFsaXpl
ZCkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBTdG9yZSAoXF9TQi5FQ1BGICgweDAy
MDEsIFplcm8sIFplcm8pLCBMb2NhbDApDQogICAgICAgICAgICAgICAgSWYgKExHcmVhdGVyIChM
b2NhbDAsIENSVCkpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBcX1NC
LlBTUlYgKDB4OUMsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDApDQogICAgICAgICAgICAgICAgfQ0K
DQogICAgICAgICAgICAgICAgUmV0dXJuIChMb2NhbDApDQogICAgICAgICAgICB9DQoNCiAgICAg
ICAgICAgIE1ldGhvZCAoX1BTViwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgIHsNCiAg
ICAgICAgICAgICAgICBcX1RaLlRaQy5JTklQICgpDQogICAgICAgICAgICAgICAgUmV0dXJuIChQ
U1YpDQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIE1ldGhvZCAoX1BTTCwgMCwgU2VyaWFs
aXplZCkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBJZiAoSFRURSkNCiAgICAgICAg
ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIFJldHVybiAoUGFja2FnZSAoMHgwMikNCiAg
ICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgXF9QUi5DUFUwLCAN
CiAgICAgICAgICAgICAgICAgICAgICAgIFxfUFIuQ1BVMQ0KICAgICAgICAgICAgICAgICAgICB9
KQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIFJldHVybiAoUGFja2FnZSAo
MHgwMSkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIFxfUFIuQ1BVMA0K
ICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIE1ldGhvZCAo
X0NSVCwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBc
X1RaLlRaQy5JTklQICgpDQogICAgICAgICAgICAgICAgUmV0dXJuIChDUlQpDQogICAgICAgICAg
ICB9DQoNCiAgICAgICAgICAgIE1ldGhvZCAoX1NDUCwgMSwgTm90U2VyaWFsaXplZCkNCiAgICAg
ICAgICAgIHsNCiAgICAgICAgICAgICAgICBTdG9yZSAoQXJnMCwgQ1NDUCkNCiAgICAgICAgICAg
ICAgICBTdG9yZSAoWmVybywgSU5JVCkNCiAgICAgICAgICAgICAgICBcX1RaLlRaQy5JTklQICgp
DQogICAgICAgICAgICAgICAgTm90aWZ5IChcX1RaLlRaQywgMHg4MSkNCiAgICAgICAgICAgIH0N
CiAgICAgICAgfQ0KICAgIH0NCg0KICAgIFNjb3BlIChcX1NJKQ0KICAgIHsNCiAgICAgICAgTWV0
aG9kIChfU1NULCAxLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICB7DQogICAgICAgICAgICBJZiAo
TEFuZCAoTE5vdCAoTEVxdWFsIChBcmcwLCAweDA0KSksIExOb3QgKExFcXVhbCAoQXJnMCwgMHgw
MCkpKSkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBcX1NCLlBTUlYgKDB4OTIsIDB4
MDEsIDB4MDEsIEFyZzAsIDB4MDApDQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQoN
CiAgICBOYW1lIChfUzAsIFBhY2thZ2UgKDB4MDMpDQogICAgew0KICAgICAgICAweDAwLCANCiAg
ICAgICAgMHgwMCwgDQogICAgICAgIDB4MDANCiAgICB9KQ0KICAgIE5hbWUgKF9TMywgUGFja2Fn
ZSAoMHgwMykNCiAgICB7DQogICAgICAgIDB4MDUsIA0KICAgICAgICAweDA1LCANCiAgICAgICAg
MHgwMA0KICAgIH0pDQogICAgTmFtZSAoX1M0LCBQYWNrYWdlICgweDAzKQ0KICAgIHsNCiAgICAg
ICAgMHgwNiwgDQogICAgICAgIDB4MDYsIA0KICAgICAgICAweDAwDQogICAgfSkNCiAgICBOYW1l
IChfUzUsIFBhY2thZ2UgKDB4MDMpDQogICAgew0KICAgICAgICAweDA3LCANCiAgICAgICAgMHgw
NywgDQogICAgICAgIDB4MDANCiAgICB9KQ0KICAgIE5hbWUgKEZXU08sICJGV1NPIikNCiAgICBN
ZXRob2QgKF9XQUssIDEsIE5vdFNlcmlhbGl6ZWQpDQogICAgew0KICAgICAgICBcX1NCLlBTUlYg
KDB4OTIsIDB4MDMsIDB4MDEsIFxDS09TICgpLCAweDAwKQ0KICAgICAgICBJZiAoTE9yIChMRXF1
YWwgKEFyZzAsIDB4MDQpLCBMRXF1YWwgKEFyZzAsIDB4MDMpKSkNCiAgICAgICAgew0KICAgICAg
ICAgICAgU3RvcmUgKFxfU0IuUFNSViAoMHg5MywgMHgwMSwgMHgwMCwgMHgwMCwgMHgwMyksIExv
Y2FsMCkNCiAgICAgICAgICAgIElmIChMT3IgKExFcXVhbCAoTG9jYWwwLCAweDA2KSwgTEVxdWFs
IChMb2NhbDAsIDB4MDEpKSkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBOb3RpZnkg
KFxfU0IuUFdSQiwgMHgwMikNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KDQogICAgICAgIElm
IChMQW5kIChMTm90IChMTGVzcyAoQXJnMCwgMHgwMykpLCBMTm90IChMR3JlYXRlciAoQXJnMCwg
MHgwNSkpKSkNCiAgICAgICAgew0KICAgICAgICAgICAgXF9TQi5IS0VZLkhSRVMgKCkNCiAgICAg
ICAgfQ0KDQogICAgICAgIFxfU0IuRUNQRiAoMHgwMjA2LCAweDAwLCAweDAwKQ0KICAgICAgICBT
dG9yZSAoXF9TQi5FQ1BGICgweDAxMDEsIDB4MDAsIDB4MDApLCBMb2NhbDApDQogICAgICAgIElm
IChYT3IgKFxfU0IuQkFTVCwgTG9jYWwwKSkNCiAgICAgICAgew0KICAgICAgICAgICAgSWYgKExF
cXVhbCAoTG9jYWwwLCAweDAxKSkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBOb3Rp
ZnkgKFxfU0IuQkFUQSwgMHgwMCkNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIEVsc2UNCiAg
ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBOb3RpZnkgKFxfU0IuQkFUQSwgMHgwMSkNCiAg
ICAgICAgICAgIH0NCiAgICAgICAgfQ0KDQogICAgICAgIFxfU0IuQURBQyAoKQ0KICAgICAgICBc
X1NCLlBTUlYgKDB4QjgsIDB4MDEsIDB4MDAsIDB4MDAsIDB4MDApDQogICAgICAgIFJldHVybiAo
UGFja2FnZSAoMHgwMikNCiAgICAgICAgew0KICAgICAgICAgICAgMHgwMCwgDQogICAgICAgICAg
ICAweDAwDQogICAgICAgIH0pDQogICAgfQ0KDQogICAgU2NvcGUgKF9HUEUpDQogICAgew0KICAg
ICAgICBNZXRob2QgKF9MMEIsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgIHsNCiAgICAgICAg
ICAgIE5vdGlmeSAoXF9TQi5QQ0kwLlBDSUIsIDB4MDIpDQogICAgICAgIH0NCg0KICAgICAgICBN
ZXRob2QgKF9MMUIsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgIHsNCiAgICAgICAgICAgIE5v
dGlmeSAoXF9TQi5MSUQsIDB4MDIpDQogICAgICAgIH0NCiAgICB9DQoNCiAgICBTY29wZSAoXF9T
QikNCiAgICB7DQogICAgICAgIE5hbWUgKFxHUElDLCAweDAwKQ0KICAgICAgICBNZXRob2QgKFxf
UElDLCAxLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICB7DQogICAgICAgICAgICBTdG9yZSAoQXJn
MCwgR1BJQykNCiAgICAgICAgfQ0KDQogICAgICAgIERldmljZSAoUENJMCkNCiAgICAgICAgew0K
ICAgICAgICAgICAgTWV0aG9kIChfSU5JLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAg
ew0KICAgICAgICAgICAgICAgIFxfU0IuUFNSViAoMHg5MiwgMHgwMywgMHgwMSwgXENLT1MgKCks
IDB4MDApDQogICAgICAgICAgICAgICAgR0lOSSAoKQ0KICAgICAgICAgICAgICAgIEFJTkkgKCkN
CiAgICAgICAgICAgICAgICBcX1NCLlBTUlYgKDB4QjgsIDB4MDEsIDB4MDAsIDB4MDAsIDB4MDAp
DQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIE5hbWUgKF9ISUQsIEVpc2FJZCAoIlBOUDBB
MDgiKSkNCiAgICAgICAgICAgIE5hbWUgKF9DSUQsIDB4MDMwQUQwNDEpDQogICAgICAgICAgICBO
YW1lIChfQURSLCAweDAwKQ0KICAgICAgICAgICAgTmFtZSAoX0JCTiwgMHgwMCkNCiAgICAgICAg
ICAgIE9wZXJhdGlvblJlZ2lvbiAoSEJVUywgUENJX0NvbmZpZywgMHg0MCwgMHhDMCkNCiAgICAg
ICAgICAgIEZpZWxkIChIQlVTLCBEV29yZEFjYywgTm9Mb2NrLCBQcmVzZXJ2ZSkNCiAgICAgICAg
ICAgIHsNCiAgICAgICAgICAgICAgICBPZmZzZXQgKDB4NTApLCANCiAgICAgICAgICAgICAgICAg
ICAgLCAgIDQsIA0KICAgICAgICAgICAgICAgIFBNMEgsICAgMiwgDQogICAgICAgICAgICAgICAg
T2Zmc2V0ICgweDUxKSwgDQogICAgICAgICAgICAgICAgUE0xTCwgICAyLCANCiAgICAgICAgICAg
ICAgICAgICAgLCAgIDIsIA0KICAgICAgICAgICAgICAgIFBNMUgsICAgMiwgDQogICAgICAgICAg
ICAgICAgT2Zmc2V0ICgweDUyKSwgDQogICAgICAgICAgICAgICAgUE0yTCwgICAyLCANCiAgICAg
ICAgICAgICAgICAgICAgLCAgIDIsIA0KICAgICAgICAgICAgICAgIFBNMkgsICAgMiwgDQogICAg
ICAgICAgICAgICAgT2Zmc2V0ICgweDUzKSwgDQogICAgICAgICAgICAgICAgUE0zTCwgICAyLCAN
CiAgICAgICAgICAgICAgICAgICAgLCAgIDIsIA0KICAgICAgICAgICAgICAgIFBNM0gsICAgMiwg
DQogICAgICAgICAgICAgICAgT2Zmc2V0ICgweDU0KSwgDQogICAgICAgICAgICAgICAgUE00TCwg
ICAyLCANCiAgICAgICAgICAgICAgICAgICAgLCAgIDIsIA0KICAgICAgICAgICAgICAgIFBNNEgs
ICAgMiwgDQogICAgICAgICAgICAgICAgT2Zmc2V0ICgweDU1KSwgDQogICAgICAgICAgICAgICAg
UE01TCwgICAyLCANCiAgICAgICAgICAgICAgICAgICAgLCAgIDIsIA0KICAgICAgICAgICAgICAg
IFBNNUgsICAgMiwgDQogICAgICAgICAgICAgICAgT2Zmc2V0ICgweDU2KSwgDQogICAgICAgICAg
ICAgICAgUE02TCwgICAyLCANCiAgICAgICAgICAgICAgICAgICAgLCAgIDIsIA0KICAgICAgICAg
ICAgICAgIFBNNkgsICAgMiwgDQogICAgICAgICAgICAgICAgT2Zmc2V0ICgweDU3KSwgDQogICAg
ICAgICAgICAgICAgICAgICwgICA3LCANCiAgICAgICAgICAgICAgICBIRU5BLCAgIDEsIA0KICAg
ICAgICAgICAgICAgIE9mZnNldCAoMHg1QyksIA0KICAgICAgICAgICAgICAgICAgICAsICAgMywg
DQogICAgICAgICAgICAgICAgVE9VRCwgICA1DQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAg
IE5hbWUgKEJVRjAsIFJlc291cmNlVGVtcGxhdGUgKCkNCiAgICAgICAgICAgIHsNCiAgICAgICAg
ICAgICAgICBXb3JkQnVzTnVtYmVyIChSZXNvdXJjZVByb2R1Y2VyLCBNaW5GaXhlZCwgTWF4Rml4
ZWQsIFBvc0RlY29kZSwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDAwLA0KICAgICAgICAgICAg
ICAgICAgICAweDAwMDAsDQogICAgICAgICAgICAgICAgICAgIDB4MDBGRiwNCiAgICAgICAgICAg
ICAgICAgICAgMHgwMDAwLA0KICAgICAgICAgICAgICAgICAgICAweDAxMDAsIDB4MDApDQogICAg
ICAgICAgICAgICAgRFdvcmRJTyAoUmVzb3VyY2VQcm9kdWNlciwgTWluRml4ZWQsIE1heEZpeGVk
LCBQb3NEZWNvZGUsIEVudGlyZVJhbmdlLA0KICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAw
LA0KICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAwLA0KICAgICAgICAgICAgICAgICAgICAw
eDAwMDAwQ0Y3LA0KICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAwLA0KICAgICAgICAgICAg
ICAgICAgICAweDAwMDAwQ0Y4LCAweDAwKQ0KICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwg
MHgwQ0Y4LCAweDBDRjgsIDB4MDEsIDB4MDgpDQogICAgICAgICAgICAgICAgRFdvcmRJTyAoUmVz
b3VyY2VQcm9kdWNlciwgTWluRml4ZWQsIE1heEZpeGVkLCBQb3NEZWNvZGUsIEVudGlyZVJhbmdl
LA0KICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAwLA0KICAgICAgICAgICAgICAgICAgICAw
eDAwMDAwRDAwLA0KICAgICAgICAgICAgICAgICAgICAweDAwMDBGRkZGLA0KICAgICAgICAgICAg
ICAgICAgICAweDAwMDAwMDAwLA0KICAgICAgICAgICAgICAgICAgICAweDAwMDBGMzAwLCAweDAw
KQ0KICAgICAgICAgICAgICAgIERXb3JkTWVtb3J5IChSZXNvdXJjZVByb2R1Y2VyLCBQb3NEZWNv
ZGUsIE1pbkZpeGVkLCBNYXhGaXhlZCwgQ2FjaGVhYmxlLCBSZWFkV3JpdGUsDQogICAgICAgICAg
ICAgICAgICAgIDB4MDAwMDAwMDAsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwQTAwMDAsDQog
ICAgICAgICAgICAgICAgICAgIDB4MDAwQkZGRkYsDQogICAgICAgICAgICAgICAgICAgIDB4MDAw
MDAwMDAsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwMjAwMDAsIDB4MDApDQogICAgICAgICAg
ICAgICAgRFdvcmRNZW1vcnkgKFJlc291cmNlUHJvZHVjZXIsIFBvc0RlY29kZSwgTWluRml4ZWQs
IE1heEZpeGVkLCBDYWNoZWFibGUsIFJlYWRXcml0ZSwNCiAgICAgICAgICAgICAgICAgICAgMHgw
MDAwMDAwMCwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDBDMDAwMCwNCiAgICAgICAgICAgICAg
ICAgICAgMHgwMDBDM0ZGRiwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwNCiAgICAg
ICAgICAgICAgICAgICAgMHgwMDAwNDAwMCwgMHgwMCkNCiAgICAgICAgICAgICAgICBEV29yZE1l
bW9yeSAoUmVzb3VyY2VQcm9kdWNlciwgUG9zRGVjb2RlLCBNaW5GaXhlZCwgTWF4Rml4ZWQsIENh
Y2hlYWJsZSwgUmVhZFdyaXRlLA0KICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAwLA0KICAg
ICAgICAgICAgICAgICAgICAweDAwMEM0MDAwLA0KICAgICAgICAgICAgICAgICAgICAweDAwMEM3
RkZGLA0KICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAwLA0KICAgICAgICAgICAgICAgICAg
ICAweDAwMDA0MDAwLCAweDAwKQ0KICAgICAgICAgICAgICAgIERXb3JkTWVtb3J5IChSZXNvdXJj
ZVByb2R1Y2VyLCBQb3NEZWNvZGUsIE1pbkZpeGVkLCBNYXhGaXhlZCwgQ2FjaGVhYmxlLCBSZWFk
V3JpdGUsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAsDQogICAgICAgICAgICAgICAg
ICAgIDB4MDAwQzgwMDAsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwQ0JGRkYsDQogICAgICAg
ICAgICAgICAgICAgIDB4MDAwMDAwMDAsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwMDQwMDAs
IDB4MDApDQogICAgICAgICAgICAgICAgRFdvcmRNZW1vcnkgKFJlc291cmNlUHJvZHVjZXIsIFBv
c0RlY29kZSwgTWluRml4ZWQsIE1heEZpeGVkLCBDYWNoZWFibGUsIFJlYWRXcml0ZSwNCiAgICAg
ICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDBDQzAw
MCwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDBDRkZGRiwNCiAgICAgICAgICAgICAgICAgICAg
MHgwMDAwMDAwMCwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDAwNDAwMCwgMHgwMCkNCiAgICAg
ICAgICAgICAgICBEV29yZE1lbW9yeSAoUmVzb3VyY2VQcm9kdWNlciwgUG9zRGVjb2RlLCBNaW5G
aXhlZCwgTWF4Rml4ZWQsIENhY2hlYWJsZSwgUmVhZFdyaXRlLA0KICAgICAgICAgICAgICAgICAg
ICAweDAwMDAwMDAwLA0KICAgICAgICAgICAgICAgICAgICAweDAwMEQwMDAwLA0KICAgICAgICAg
ICAgICAgICAgICAweDAwMEQzRkZGLA0KICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAwLA0K
ICAgICAgICAgICAgICAgICAgICAweDAwMDA0MDAwLCAweDAwKQ0KICAgICAgICAgICAgICAgIERX
b3JkTWVtb3J5IChSZXNvdXJjZVByb2R1Y2VyLCBQb3NEZWNvZGUsIE1pbkZpeGVkLCBNYXhGaXhl
ZCwgQ2FjaGVhYmxlLCBSZWFkV3JpdGUsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAs
DQogICAgICAgICAgICAgICAgICAgIDB4MDAwRDQwMDAsDQogICAgICAgICAgICAgICAgICAgIDB4
MDAwRDdGRkYsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAsDQogICAgICAgICAgICAg
ICAgICAgIDB4MDAwMDQwMDAsIDB4MDApDQogICAgICAgICAgICAgICAgRFdvcmRNZW1vcnkgKFJl
c291cmNlUHJvZHVjZXIsIFBvc0RlY29kZSwgTWluRml4ZWQsIE1heEZpeGVkLCBDYWNoZWFibGUs
IFJlYWRXcml0ZSwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwNCiAgICAgICAgICAg
ICAgICAgICAgMHgwMDBEODAwMCwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDBEQkZGRiwNCiAg
ICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDAw
NDAwMCwgMHgwMCkNCiAgICAgICAgICAgICAgICBEV29yZE1lbW9yeSAoUmVzb3VyY2VQcm9kdWNl
ciwgUG9zRGVjb2RlLCBNaW5GaXhlZCwgTWF4Rml4ZWQsIENhY2hlYWJsZSwgUmVhZFdyaXRlLA0K
ICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAwLA0KICAgICAgICAgICAgICAgICAgICAweDAw
MERDMDAwLA0KICAgICAgICAgICAgICAgICAgICAweDAwMERGRkZGLA0KICAgICAgICAgICAgICAg
ICAgICAweDAwMDAwMDAwLA0KICAgICAgICAgICAgICAgICAgICAweDAwMDA0MDAwLCAweDAwKQ0K
ICAgICAgICAgICAgICAgIERXb3JkTWVtb3J5IChSZXNvdXJjZVByb2R1Y2VyLCBQb3NEZWNvZGUs
IE1pbkZpeGVkLCBNYXhGaXhlZCwgQ2FjaGVhYmxlLCBSZWFkV3JpdGUsDQogICAgICAgICAgICAg
ICAgICAgIDB4MDAwMDAwMDAsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwRTAwMDAsDQogICAg
ICAgICAgICAgICAgICAgIDB4MDAwRTNGRkYsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwMDAw
MDAsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwMDQwMDAsIDB4MDApDQogICAgICAgICAgICAg
ICAgRFdvcmRNZW1vcnkgKFJlc291cmNlUHJvZHVjZXIsIFBvc0RlY29kZSwgTWluRml4ZWQsIE1h
eEZpeGVkLCBDYWNoZWFibGUsIFJlYWRXcml0ZSwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDAw
MDAwMCwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDBFNDAwMCwNCiAgICAgICAgICAgICAgICAg
ICAgMHgwMDBFN0ZGRiwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwNCiAgICAgICAg
ICAgICAgICAgICAgMHgwMDAwNDAwMCwgMHgwMCkNCiAgICAgICAgICAgICAgICBEV29yZE1lbW9y
eSAoUmVzb3VyY2VQcm9kdWNlciwgUG9zRGVjb2RlLCBNaW5GaXhlZCwgTWF4Rml4ZWQsIENhY2hl
YWJsZSwgUmVhZFdyaXRlLA0KICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAwLA0KICAgICAg
ICAgICAgICAgICAgICAweDAwMEU4MDAwLA0KICAgICAgICAgICAgICAgICAgICAweDAwMEVCRkZG
LA0KICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAwLA0KICAgICAgICAgICAgICAgICAgICAw
eDAwMDA0MDAwLCAweDAwKQ0KICAgICAgICAgICAgICAgIERXb3JkTWVtb3J5IChSZXNvdXJjZVBy
b2R1Y2VyLCBQb3NEZWNvZGUsIE1pbkZpeGVkLCBNYXhGaXhlZCwgQ2FjaGVhYmxlLCBSZWFkV3Jp
dGUsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAsDQogICAgICAgICAgICAgICAgICAg
IDB4MDAwRUMwMDAsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwRUZGRkYsDQogICAgICAgICAg
ICAgICAgICAgIDB4MDAwMDAwMDAsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwMDQwMDAsIDB4
MDApDQogICAgICAgICAgICAgICAgRFdvcmRNZW1vcnkgKFJlc291cmNlUHJvZHVjZXIsIFBvc0Rl
Y29kZSwgTWluRml4ZWQsIE1heEZpeGVkLCBDYWNoZWFibGUsIFJlYWRXcml0ZSwNCiAgICAgICAg
ICAgICAgICAgICAgMHgwMDAwMDAwMCwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDBGMDAwMCwN
CiAgICAgICAgICAgICAgICAgICAgMHgwMDBGRkZGRiwNCiAgICAgICAgICAgICAgICAgICAgMHgw
MDAwMDAwMCwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDAxMDAwMCwgMHgwMCkNCiAgICAgICAg
ICAgICAgICBEV29yZE1lbW9yeSAoUmVzb3VyY2VQcm9kdWNlciwgUG9zRGVjb2RlLCBNaW5GaXhl
ZCwgTWF4Rml4ZWQsIENhY2hlYWJsZSwgUmVhZFdyaXRlLA0KICAgICAgICAgICAgICAgICAgICAw
eDAwMDAwMDAwLA0KICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAwLA0KICAgICAgICAgICAg
ICAgICAgICAweEZFQkZGRkZGLA0KICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAwLA0KICAg
ICAgICAgICAgICAgICAgICAweDAwMDAwMDAwLCAweDAwKQ0KICAgICAgICAgICAgfSkNCiAgICAg
ICAgICAgIE1ldGhvZCAoX0NSUywgMCwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgIHsNCiAgICAg
ICAgICAgICAgICBJZiAoUE0xTCkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg
ICAgIENyZWF0ZURXb3JkRmllbGQgKEJVRjAsIDB4ODAsIEMwTE4pDQogICAgICAgICAgICAgICAg
ICAgIFN0b3JlIChaZXJvLCBDMExOKQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAg
ICAgIElmIChMRXF1YWwgKFBNMUwsIDB4MDEpKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAg
ICAgICAgICAgICAgQ3JlYXRlQml0RmllbGQgKEJVRjAsIDB4MDM3OCwgQzBSVykNCiAgICAgICAg
ICAgICAgICAgICAgU3RvcmUgKFplcm8sIEMwUlcpDQogICAgICAgICAgICAgICAgfQ0KDQogICAg
ICAgICAgICAgICAgSWYgKFBNMUgpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg
ICAgICBDcmVhdGVEV29yZEZpZWxkIChCVUYwLCAweDlCLCBDNExOKQ0KICAgICAgICAgICAgICAg
ICAgICBTdG9yZSAoWmVybywgQzRMTikNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAg
ICAgICBJZiAoTEVxdWFsIChQTTFILCAweDAxKSkNCiAgICAgICAgICAgICAgICB7DQogICAgICAg
ICAgICAgICAgICAgIENyZWF0ZUJpdEZpZWxkIChCVUYwLCAweDA0NTAsIEM0UlcpDQogICAgICAg
ICAgICAgICAgICAgIFN0b3JlIChaZXJvLCBDNFJXKQ0KICAgICAgICAgICAgICAgIH0NCg0KICAg
ICAgICAgICAgICAgIElmIChQTTJMKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg
ICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQlVGMCwgMHhCNiwgQzhMTikNCiAgICAgICAgICAgICAg
ICAgICAgU3RvcmUgKFplcm8sIEM4TE4pDQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAg
ICAgICAgSWYgKExFcXVhbCAoUE0yTCwgMHgwMSkpDQogICAgICAgICAgICAgICAgew0KICAgICAg
ICAgICAgICAgICAgICBDcmVhdGVCaXRGaWVsZCAoQlVGMCwgMHgwNTI4LCBDOFJXKQ0KICAgICAg
ICAgICAgICAgICAgICBTdG9yZSAoWmVybywgQzhSVykNCiAgICAgICAgICAgICAgICB9DQoNCiAg
ICAgICAgICAgICAgICBJZiAoUE0ySCkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg
ICAgICAgIENyZWF0ZURXb3JkRmllbGQgKEJVRjAsIDB4RDEsIENDTE4pDQogICAgICAgICAgICAg
ICAgICAgIFN0b3JlIChaZXJvLCBDQ0xOKQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAg
ICAgICAgIElmIChMRXF1YWwgKFBNMkgsIDB4MDEpKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAg
ICAgICAgICAgICAgICAgQ3JlYXRlQml0RmllbGQgKEJVRjAsIDB4MDYwMCwgQ0NSVykNCiAgICAg
ICAgICAgICAgICAgICAgU3RvcmUgKFplcm8sIENDUlcpDQogICAgICAgICAgICAgICAgfQ0KDQog
ICAgICAgICAgICAgICAgSWYgKFBNM0wpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg
ICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChCVUYwLCAweEVDLCBEMExOKQ0KICAgICAgICAgICAg
ICAgICAgICBTdG9yZSAoWmVybywgRDBMTikNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAg
ICAgICAgICBJZiAoTEVxdWFsIChQTTNMLCAweDAxKSkNCiAgICAgICAgICAgICAgICB7DQogICAg
ICAgICAgICAgICAgICAgIENyZWF0ZUJpdEZpZWxkIChCVUYwLCAweDA2RDgsIEQwUlcpDQogICAg
ICAgICAgICAgICAgICAgIFN0b3JlIChaZXJvLCBEMFJXKQ0KICAgICAgICAgICAgICAgIH0NCg0K
ICAgICAgICAgICAgICAgIElmIChQTTNIKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg
ICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQlVGMCwgMHgwMTA3LCBENExOKQ0KICAgICAgICAg
ICAgICAgICAgICBTdG9yZSAoWmVybywgRDRMTikNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAg
ICAgICAgICAgICBJZiAoTEVxdWFsIChQTTNILCAweDAxKSkNCiAgICAgICAgICAgICAgICB7DQog
ICAgICAgICAgICAgICAgICAgIENyZWF0ZUJpdEZpZWxkIChCVUYwLCAweDA3QjAsIEQ0UlcpDQog
ICAgICAgICAgICAgICAgICAgIFN0b3JlIChaZXJvLCBENFJXKQ0KICAgICAgICAgICAgICAgIH0N
Cg0KICAgICAgICAgICAgICAgIElmIChQTTRMKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAg
ICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQlVGMCwgMHgwMTIyLCBEOExOKQ0KICAgICAg
ICAgICAgICAgICAgICBTdG9yZSAoWmVybywgRDhMTikNCiAgICAgICAgICAgICAgICB9DQoNCiAg
ICAgICAgICAgICAgICBJZiAoTEVxdWFsIChQTTRMLCAweDAxKSkNCiAgICAgICAgICAgICAgICB7
DQogICAgICAgICAgICAgICAgICAgIENyZWF0ZUJpdEZpZWxkIChCVUYwLCAweDA4ODgsIEQ4Ulcp
DQogICAgICAgICAgICAgICAgICAgIFN0b3JlIChaZXJvLCBEOFJXKQ0KICAgICAgICAgICAgICAg
IH0NCg0KICAgICAgICAgICAgICAgIElmIChQTTRIKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAg
ICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQlVGMCwgMHgwMTNELCBEQ0xOKQ0KICAg
ICAgICAgICAgICAgICAgICBTdG9yZSAoWmVybywgRENMTikNCiAgICAgICAgICAgICAgICB9DQoN
CiAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChQTTRILCAweDAxKSkNCiAgICAgICAgICAgICAg
ICB7DQogICAgICAgICAgICAgICAgICAgIENyZWF0ZUJpdEZpZWxkIChCVUYwLCAweDA5NjAsIERD
UlcpDQogICAgICAgICAgICAgICAgICAgIFN0b3JlIChaZXJvLCBEQ1JXKQ0KICAgICAgICAgICAg
ICAgIH0NCg0KICAgICAgICAgICAgICAgIElmIChQTTVMKQ0KICAgICAgICAgICAgICAgIHsNCiAg
ICAgICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQlVGMCwgMHgwMTU4LCBFMExOKQ0K
ICAgICAgICAgICAgICAgICAgICBTdG9yZSAoWmVybywgRTBMTikNCiAgICAgICAgICAgICAgICB9
DQoNCiAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChQTTVMLCAweDAxKSkNCiAgICAgICAgICAg
ICAgICB7DQogICAgICAgICAgICAgICAgICAgIENyZWF0ZUJpdEZpZWxkIChCVUYwLCAweDBBMzgs
IEUwUlcpDQogICAgICAgICAgICAgICAgICAgIFN0b3JlIChaZXJvLCBFMFJXKQ0KICAgICAgICAg
ICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIElmIChQTTVIKQ0KICAgICAgICAgICAgICAgIHsN
CiAgICAgICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQlVGMCwgMHgwMTczLCBFNExO
KQ0KICAgICAgICAgICAgICAgICAgICBTdG9yZSAoWmVybywgRTRMTikNCiAgICAgICAgICAgICAg
ICB9DQoNCiAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChQTTVILCAweDAxKSkNCiAgICAgICAg
ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIENyZWF0ZUJpdEZpZWxkIChCVUYwLCAweDBC
MTAsIEU0UlcpDQogICAgICAgICAgICAgICAgICAgIFN0b3JlIChaZXJvLCBFNFJXKQ0KICAgICAg
ICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIElmIChQTTZMKQ0KICAgICAgICAgICAgICAg
IHsNCiAgICAgICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQlVGMCwgMHgwMThFLCBF
OExOKQ0KICAgICAgICAgICAgICAgICAgICBTdG9yZSAoWmVybywgRThMTikNCiAgICAgICAgICAg
ICAgICB9DQoNCiAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChQTTZMLCAweDAxKSkNCiAgICAg
ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIENyZWF0ZUJpdEZpZWxkIChCVUYwLCAw
eDBCRTgsIEU4UlcpDQogICAgICAgICAgICAgICAgICAgIFN0b3JlIChaZXJvLCBFOFJXKQ0KICAg
ICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIElmIChQTTZIKQ0KICAgICAgICAgICAg
ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQlVGMCwgMHgwMUE5
LCBFQ0xOKQ0KICAgICAgICAgICAgICAgICAgICBTdG9yZSAoWmVybywgRUNMTikNCiAgICAgICAg
ICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChQTTZILCAweDAxKSkNCiAg
ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIENyZWF0ZUJpdEZpZWxkIChCVUYw
LCAweDBDQzAsIEVDUlcpDQogICAgICAgICAgICAgICAgICAgIFN0b3JlIChaZXJvLCBFQ1JXKQ0K
ICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIElmIChQTTBIKQ0KICAgICAgICAg
ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQlVGMCwgMHgw
MUM0LCBGMExOKQ0KICAgICAgICAgICAgICAgICAgICBTdG9yZSAoWmVybywgRjBMTikNCiAgICAg
ICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChQTTBILCAweDAxKSkN
CiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIENyZWF0ZUJpdEZpZWxkIChC
VUYwLCAweDBEOTgsIEYwUlcpDQogICAgICAgICAgICAgICAgICAgIFN0b3JlIChaZXJvLCBGMFJX
KQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQg
KEJVRjAsIDB4MDFEMywgTTFNTikNCiAgICAgICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChC
VUYwLCAweDAxRDcsIE0xTVgpDQogICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQlVG
MCwgMHgwMURGLCBNMUxOKQ0KICAgICAgICAgICAgICAgIFNoaWZ0TGVmdCAoVE9VRCwgMHgxQiwg
TTFNTikNCiAgICAgICAgICAgICAgICBBZGQgKFN1YnRyYWN0IChNMU1YLCBNMU1OKSwgMHgwMSwg
TTFMTikNCiAgICAgICAgICAgICAgICBSZXR1cm4gKEJVRjApDQogICAgICAgICAgICB9DQoNCiAg
ICAgICAgICAgIERldmljZSAoT1BSTSkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBO
YW1lIChfSElELCBFaXNhSWQgKCJQTlAwQzAyIikpDQogICAgICAgICAgICAgICAgTmFtZSAoX1VJ
RCwgMHgxMDAwKQ0KICAgICAgICAgICAgICAgIE5hbWUgKFJTUkMsIFJlc291cmNlVGVtcGxhdGUg
KCkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIE1lbW9yeTMyRml4ZWQg
KFJlYWRPbmx5LCAweDAwMDAwMDAwLCAweDAwMDAwMDAwKQ0KICAgICAgICAgICAgICAgIH0pDQog
ICAgICAgICAgICAgICAgTWV0aG9kIChJU1NELCAxLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAg
ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDMsIExvY2FsMCkNCiAgICAg
ICAgICAgICAgICAgICAgSWYgKEFuZCAoQXJnMCwgMHg0MDAwKSkNCiAgICAgICAgICAgICAgICAg
ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MzAsIExvY2FsMCkNCiAgICAg
ICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIFN0b3JlIChTaGlmdFJpZ2h0
IChTdWJ0cmFjdCAoQXJnMCwgMHgwMDBDMDAwMCksIDB4MEYpLCBMb2NhbDEpDQogICAgICAgICAg
ICAgICAgICAgIElmIChMRXF1YWwgKExvY2FsMSwgMHgwMCkpDQogICAgICAgICAgICAgICAgICAg
IHsNCiAgICAgICAgICAgICAgICAgICAgICAgIEFkZCAoTXVsdGlwbHkgKFxfU0IuUENJMC5QTTFI
LCAweDEwKSwgXF9TQi5QQ0kwLlBNMUwsIExvY2FsMikNCiAgICAgICAgICAgICAgICAgICAgfQ0K
DQogICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKExvY2FsMSwgMHgwMSkpDQogICAgICAg
ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIEFkZCAoTXVsdGlwbHkgKFxf
U0IuUENJMC5QTTJILCAweDEwKSwgXF9TQi5QQ0kwLlBNMkwsIExvY2FsMikNCiAgICAgICAgICAg
ICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKExvY2FsMSwgMHgw
MikpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIEFkZCAo
TXVsdGlwbHkgKFxfU0IuUENJMC5QTTNILCAweDEwKSwgXF9TQi5QQ0kwLlBNM0wsIExvY2FsMikN
CiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwg
KExvY2FsMSwgMHgwMykpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg
ICAgICAgIEFkZCAoTXVsdGlwbHkgKFxfU0IuUENJMC5QTTRILCAweDEwKSwgXF9TQi5QQ0kwLlBN
NEwsIExvY2FsMikNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAg
IElmIChMRXF1YWwgKExvY2FsMSwgMHgwNCkpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAg
ICAgICAgICAgICAgICAgICAgIEFkZCAoTXVsdGlwbHkgKFxfU0IuUENJMC5QTTVILCAweDEwKSwg
XF9TQi5QQ0kwLlBNNUwsIExvY2FsMikNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAg
ICAgICAgICAgICAgIElmIChMRXF1YWwgKExvY2FsMSwgMHgwNSkpDQogICAgICAgICAgICAgICAg
ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIEFkZCAoTXVsdGlwbHkgKFxfU0IuUENJMC5Q
TTZILCAweDEwKSwgXF9TQi5QQ0kwLlBNNkwsIExvY2FsMikNCiAgICAgICAgICAgICAgICAgICAg
fQ0KDQogICAgICAgICAgICAgICAgICAgIFJldHVybiAoQW5kIChMb2NhbDIsIExvY2FsMCkpDQog
ICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgTWV0aG9kIChST01TLCAxLCBOb3RT
ZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgSWYgKElT
U0QgKEFyZzApKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg
ICBPcGVyYXRpb25SZWdpb24gKFhST00sIFN5c3RlbU1lbW9yeSwgQXJnMCwgMHgwNCkNCiAgICAg
ICAgICAgICAgICAgICAgICAgIEZpZWxkIChYUk9NLCBCeXRlQWNjLCBOb0xvY2ssIFByZXNlcnZl
KQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFNJRywgICAgMTYsIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNJWiwgICAgOA0KICAg
ICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVx
dWFsIChTSUcsIDB4QUE1NSkpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgUmV0dXJuIChNdWx0aXBseSAoU0laLCAweDAyMDApKQ0KICAgICAg
ICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAg
ICAgICAgICAgUmV0dXJuIChaZXJvKQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAg
ICAgIE1ldGhvZCAoTVJTQywgMiwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICB7DQogICAg
ICAgICAgICAgICAgICAgIE5hbWUgKEJVRkYsIEJ1ZmZlciAoU3VidHJhY3QgKFNpemVPZiAoQXJn
MCksIDB4MDIpKSB7fSkNCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFplcm8sIExvY2FsMCkN
CiAgICAgICAgICAgICAgICAgICAgV2hpbGUgKExMZXNzIChMb2NhbDAsIFN1YnRyYWN0IChTaXpl
T2YgKEFyZzApLCAweDAyKSkpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg
ICAgICAgICAgIFN0b3JlIChEZXJlZk9mIChJbmRleCAoQXJnMCwgTG9jYWwwKSksIEluZGV4IChC
VUZGLCBMb2NhbDApKQ0KICAgICAgICAgICAgICAgICAgICAgICAgSW5jcmVtZW50IChMb2NhbDAp
DQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBDb25jYXRlbmF0
ZSAoQlVGRiwgQXJnMSwgTG9jYWwxKQ0KICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKExvY2Fs
MSkNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBNZXRob2QgKFJTVkEsIDMs
IFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBOYW1l
IChGWFJTLCBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAg
ICAgICAgICAgICAgICAgICAgIE1lbW9yeTMyRml4ZWQgKFJlYWRPbmx5LCAweDAwMDAwMDAwLCAw
eDAwMDAwMDAwKQ0KICAgICAgICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAgICAgICAgICBD
cmVhdGVEV29yZEZpZWxkIChGWFJTLCAweDA0LCBST01CKQ0KICAgICAgICAgICAgICAgICAgICBD
cmVhdGVEV29yZEZpZWxkIChGWFJTLCAweDA4LCBST01MKQ0KICAgICAgICAgICAgICAgICAgICBT
dG9yZSAoQXJnMSwgUk9NQikNCiAgICAgICAgICAgICAgICAgICAgU3VidHJhY3QgKEFyZzIsIEFy
ZzEsIFJPTUwpDQogICAgICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKEFyZzAsIDB4
MDQsIEFCQVMpDQogICAgICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKEFyZzAsIDB4
MDgsIEFMRU4pDQogICAgICAgICAgICAgICAgICAgIElmIChMQW5kIChMRXF1YWwgKEFCQVMsIFpl
cm8pLCBMRXF1YWwgKEFMRU4sIFplcm8pKSkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAg
ICAgICAgICAgICAgICAgICAgUmV0dXJuIChGWFJTKQ0KICAgICAgICAgICAgICAgICAgICB9DQoN
CiAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChNUlNDIChBcmcwLCBGWFJTKSkNCiAgICAgICAg
ICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBNZXRob2QgKEFMQUQsIDIsIE5vdFNlcmlhbGl6
ZWQpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKE11bHRp
cGx5IChEaXZpZGUgKFN1YnRyYWN0IChBZGQgKEFyZzAsIEFyZzEpLCBPbmUpLCBBcmcxLCApLCBB
cmcxKSkNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBNZXRob2QgKE9QUlIs
IDEsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg
ICBTdG9yZSAoQXJnMCwgTG9jYWw3KQ0KICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMDBD
MDAwMCwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICBXaGlsZSAoTExlc3MgKExvY2FsMCwg
MHgwMDBFMDAwMCkpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg
ICAgIFN0b3JlIChST01TIChMb2NhbDApLCBMb2NhbDEpDQogICAgICAgICAgICAgICAgICAgICAg
ICBJZiAoTEVxdWFsIChMb2NhbDEsIFplcm8pKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0K
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChBTEFEIChMb2NhbDAsIDB4NDAwMCks
IExvY2FsMikNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoQUxBRCAoTG9jYWww
LCAweDA4MDApLCBMb2NhbDMpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExOb3Qg
KExFcXVhbCAoTG9jYWwwLCBMb2NhbDIpKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7
DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMQW5kIChMTm90IChMRXF1YWwg
KExvY2FsMCwgTG9jYWwzKSksIFJPTVMgKExvY2FsMykpKQ0KICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAo
UlNWQSAoTG9jYWw3LCBMb2NhbDAsIExvY2FsMyksIExvY2FsNykNCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFN0b3JlIChMb2NhbDMsIExvY2FsMCkNCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbHNl
DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFN0b3JlIChSU1ZBIChMb2NhbDcsIExvY2FsMCwgTG9jYWwyKSwgTG9j
YWw3KQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDAwRTAw
MDAsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBTdG9yZSAoMHgwMDBFMDAwMCwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAg
IEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBBZGQgKExvY2FsMCwgTG9jYWwxLCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAg
ICB9DQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBSZXR1cm4g
KExvY2FsNykNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBNZXRob2QgKF9D
UlMsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg
ICAgICBSZXR1cm4gKE9QUlIgKFJTUkMpKQ0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAg
IH0NCg0KICAgICAgICAgICAgTWV0aG9kIChfUFJULCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAg
ICAgICAgew0KICAgICAgICAgICAgICAgIElmIChHUElDKQ0KICAgICAgICAgICAgICAgIHsNCiAg
ICAgICAgICAgICAgICAgICAgUmV0dXJuIChQSUM0KQ0KICAgICAgICAgICAgICAgIH0NCiAgICAg
ICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBS
ZXR1cm4gKFBJQzUpDQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KDQogICAgICAg
ICAgICBOYW1lIChQSUM0LCBQYWNrYWdlICgweDBBKQ0KICAgICAgICAgICAgew0KICAgICAgICAg
ICAgICAgIFBhY2thZ2UgKDB4MDQpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg
ICAgICAweDAwMDJGRkZGLCANCiAgICAgICAgICAgICAgICAgICAgMHgwMCwgDQogICAgICAgICAg
ICAgICAgICAgIDB4MDAsIA0KICAgICAgICAgICAgICAgICAgICAweDEwDQogICAgICAgICAgICAg
ICAgfSwgDQoNCiAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQ0KICAgICAgICAgICAgICAg
IHsNCiAgICAgICAgICAgICAgICAgICAgMHgwMDFERkZGRiwgDQogICAgICAgICAgICAgICAgICAg
IDB4MDAsIA0KICAgICAgICAgICAgICAgICAgICAweDAwLCANCiAgICAgICAgICAgICAgICAgICAg
MHgxNw0KICAgICAgICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICAgICAgUGFja2FnZSAoMHgw
NCkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIDB4MDAxREZGRkYsIA0K
ICAgICAgICAgICAgICAgICAgICAweDAxLCANCiAgICAgICAgICAgICAgICAgICAgMHgwMCwgDQog
ICAgICAgICAgICAgICAgICAgIDB4MTMNCiAgICAgICAgICAgICAgICB9LCANCg0KICAgICAgICAg
ICAgICAgIFBhY2thZ2UgKDB4MDQpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg
ICAgICAweDAwMURGRkZGLCANCiAgICAgICAgICAgICAgICAgICAgMHgwMiwgDQogICAgICAgICAg
ICAgICAgICAgIDB4MDAsIA0KICAgICAgICAgICAgICAgICAgICAweDEyDQogICAgICAgICAgICAg
ICAgfSwgDQoNCiAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQ0KICAgICAgICAgICAgICAg
IHsNCiAgICAgICAgICAgICAgICAgICAgMHgwMDFERkZGRiwgDQogICAgICAgICAgICAgICAgICAg
IDB4MDMsIA0KICAgICAgICAgICAgICAgICAgICAweDAwLCANCiAgICAgICAgICAgICAgICAgICAg
MHgxMA0KICAgICAgICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICAgICAgUGFja2FnZSAoMHgw
NCkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIDB4MDAxRUZGRkYsIA0K
ICAgICAgICAgICAgICAgICAgICAweDAwLCANCiAgICAgICAgICAgICAgICAgICAgMHgwMCwgDQog
ICAgICAgICAgICAgICAgICAgIDB4MTENCiAgICAgICAgICAgICAgICB9LCANCg0KICAgICAgICAg
ICAgICAgIFBhY2thZ2UgKDB4MDQpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg
ICAgICAweDAwMUVGRkZGLCANCiAgICAgICAgICAgICAgICAgICAgMHgwMSwgDQogICAgICAgICAg
ICAgICAgICAgIDB4MDAsIA0KICAgICAgICAgICAgICAgICAgICAweDE0DQogICAgICAgICAgICAg
ICAgfSwgDQoNCiAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQ0KICAgICAgICAgICAgICAg
IHsNCiAgICAgICAgICAgICAgICAgICAgMHgwMDFGRkZGRiwgDQogICAgICAgICAgICAgICAgICAg
IDB4MDAsIA0KICAgICAgICAgICAgICAgICAgICAweDAwLCANCiAgICAgICAgICAgICAgICAgICAg
MHgxMg0KICAgICAgICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICAgICAgUGFja2FnZSAoMHgw
NCkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIDB4MDAxRkZGRkYsIA0K
ICAgICAgICAgICAgICAgICAgICAweDAxLCANCiAgICAgICAgICAgICAgICAgICAgMHgwMCwgDQog
ICAgICAgICAgICAgICAgICAgIDB4MTMNCiAgICAgICAgICAgICAgICB9LCANCg0KICAgICAgICAg
ICAgICAgIFBhY2thZ2UgKDB4MDQpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg
ICAgICAweDAwMUZGRkZGLCANCiAgICAgICAgICAgICAgICAgICAgMHgwMywgDQogICAgICAgICAg
ICAgICAgICAgIDB4MDAsIA0KICAgICAgICAgICAgICAgICAgICAweDEwDQogICAgICAgICAgICAg
ICAgfQ0KICAgICAgICAgICAgfSkNCiAgICAgICAgICAgIE5hbWUgKFBJQzUsIFBhY2thZ2UgKDB4
MEEpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkNCiAgICAg
ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIDB4MDAwMkZGRkYsIA0KICAgICAgICAg
ICAgICAgICAgICAweDAwLCANCiAgICAgICAgICAgICAgICAgICAgXF9TQi5QQ0kwLkxQQ0IuTE5L
QSwgDQogICAgICAgICAgICAgICAgICAgIDB4MDANCiAgICAgICAgICAgICAgICB9LCANCg0KICAg
ICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAg
ICAgICAgICAgICAweDAwMURGRkZGLCANCiAgICAgICAgICAgICAgICAgICAgMHgwMCwgDQogICAg
ICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MUENCLkxOS0gsIA0KICAgICAgICAgICAgICAgICAg
ICAweDAwDQogICAgICAgICAgICAgICAgfSwgDQoNCiAgICAgICAgICAgICAgICBQYWNrYWdlICgw
eDA0KQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgMHgwMDFERkZGRiwg
DQogICAgICAgICAgICAgICAgICAgIDB4MDEsIA0KICAgICAgICAgICAgICAgICAgICBcX1NCLlBD
STAuTFBDQi5MTktELCANCiAgICAgICAgICAgICAgICAgICAgMHgwMA0KICAgICAgICAgICAgICAg
IH0sIA0KDQogICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkNCiAgICAgICAgICAgICAgICB7
DQogICAgICAgICAgICAgICAgICAgIDB4MDAxREZGRkYsIA0KICAgICAgICAgICAgICAgICAgICAw
eDAyLCANCiAgICAgICAgICAgICAgICAgICAgXF9TQi5QQ0kwLkxQQ0IuTE5LQywgDQogICAgICAg
ICAgICAgICAgICAgIDB4MDANCiAgICAgICAgICAgICAgICB9LCANCg0KICAgICAgICAgICAgICAg
IFBhY2thZ2UgKDB4MDQpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAw
eDAwMURGRkZGLCANCiAgICAgICAgICAgICAgICAgICAgMHgwMywgDQogICAgICAgICAgICAgICAg
ICAgIFxfU0IuUENJMC5MUENCLkxOS0EsIA0KICAgICAgICAgICAgICAgICAgICAweDAwDQogICAg
ICAgICAgICAgICAgfSwgDQoNCiAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQ0KICAgICAg
ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgMHgwMDFFRkZGRiwgDQogICAgICAgICAg
ICAgICAgICAgIDB4MDAsIA0KICAgICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuTFBDQi5MTktC
LCANCiAgICAgICAgICAgICAgICAgICAgMHgwMA0KICAgICAgICAgICAgICAgIH0sIA0KDQogICAg
ICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAg
ICAgICAgICAgIDB4MDAxRUZGRkYsIA0KICAgICAgICAgICAgICAgICAgICAweDAxLCANCiAgICAg
ICAgICAgICAgICAgICAgXF9TQi5QQ0kwLkxQQ0IuTE5LRSwgDQogICAgICAgICAgICAgICAgICAg
IDB4MDANCiAgICAgICAgICAgICAgICB9LCANCg0KICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4
MDQpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAweDAwMUZGRkZGLCAN
CiAgICAgICAgICAgICAgICAgICAgMHgwMCwgDQogICAgICAgICAgICAgICAgICAgIFxfU0IuUENJ
MC5MUENCLkxOS0MsIA0KICAgICAgICAgICAgICAgICAgICAweDAwDQogICAgICAgICAgICAgICAg
fSwgDQoNCiAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQ0KICAgICAgICAgICAgICAgIHsN
CiAgICAgICAgICAgICAgICAgICAgMHgwMDFGRkZGRiwgDQogICAgICAgICAgICAgICAgICAgIDB4
MDEsIA0KICAgICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuTFBDQi5MTktELCANCiAgICAgICAg
ICAgICAgICAgICAgMHgwMA0KICAgICAgICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICAgICAg
UGFja2FnZSAoMHgwNCkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIDB4
MDAxRkZGRkYsIA0KICAgICAgICAgICAgICAgICAgICAweDAzLCANCiAgICAgICAgICAgICAgICAg
ICAgXF9TQi5QQ0kwLkxQQ0IuTE5LQSwgDQogICAgICAgICAgICAgICAgICAgIDB4MDANCiAgICAg
ICAgICAgICAgICB9DQogICAgICAgICAgICB9KQ0KICAgICAgICAgICAgU2NvcGUgKFwpDQogICAg
ICAgICAgICB7DQogICAgICAgICAgICAgICAgTmFtZSAoQ1NURSwgMHgwMCkNCiAgICAgICAgICAg
ICAgICBOYW1lIChOU1RFLCAweDAwKQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBEZXZp
Y2UgKEdGWDApDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgTmFtZSAoX0FEUiwgMHgw
MDAyMDAwMCkNCiAgICAgICAgICAgICAgICBNZXRob2QgKF9ET1MsIDEsIE5vdFNlcmlhbGl6ZWQp
DQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBTdG9yZSAoQW5kIChBcmcw
LCAweDAzKSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICBcX1NCLlBTUlYgKDB4QjksIDB4
MjAsIDB4MDEsIExvY2FsMCwgMHgwMCkNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAg
ICAgICBNZXRob2QgKF9ET0QsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgew0K
ICAgICAgICAgICAgICAgICAgICBOYW1lIChUTVAyLCBQYWNrYWdlICgweDAyKQ0KICAgICAgICAg
ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAweDgwMDAwMTAwLCANCiAgICAg
ICAgICAgICAgICAgICAgICAgIDB4ODAwMDA0MTANCiAgICAgICAgICAgICAgICAgICAgfSkNCiAg
ICAgICAgICAgICAgICAgICAgUmV0dXJuIChUTVAyKQ0KICAgICAgICAgICAgICAgIH0NCg0KICAg
ICAgICAgICAgICAgIERldmljZSAoQ1JUMSkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAg
ICAgICAgICAgIE1ldGhvZCAoX0FEUiwgMCwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAg
ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4ODAwMDAxMDAsIExvY2FsMCkN
CiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoQW5kICgweEZGRkYsIExvY2FsMCkpDQog
ICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9EQ1Ms
IDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg
ICAgICAgICAgIFN0b3JlIChcX1NCLlBTUlYgKDB4QjksIDB4MDEsIDB4MDAsIDB4MDAsIDB4MDMp
LCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChMb2NhbDAsIDB4MDEw
MSkpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgUmV0dXJuICgweDFGKQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAg
ICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFJldHVybiAoMHgxRCkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0N
CiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0RH
UywgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg
ICAgICAgICAgICAgU3RvcmUgKE5TVEUsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAg
IElmIChBbmQgKExvY2FsMCwgMHgwMTAxKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MDEpDQogICAgICAgICAgICAgICAg
ICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAg
ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDAwKQ0KICAg
ICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAg
ICAgICAgICAgICAgTWV0aG9kIChfRFNTLCAxLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAg
ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChBbmQgKEFyZzAs
IDB4QzAwMDAwMDApLCAweEMwMDAwMDAwKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoTlNURSwgQ1NURSkNCiAgICAgICAgICAg
ICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0N
Cg0KICAgICAgICAgICAgICAgIERldmljZSAoTENEMSkNCiAgICAgICAgICAgICAgICB7DQogICAg
ICAgICAgICAgICAgICAgIE1ldGhvZCAoX0FEUiwgMCwgU2VyaWFsaXplZCkNCiAgICAgICAgICAg
ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4ODAwMDA0MTAsIExv
Y2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoQW5kICgweEZGRkYsIExvY2Fs
MCkpDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2Qg
KF9EQ1MsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAg
ICAgICAgICAgICAgICAgIFN0b3JlIChcX1NCLlBTUlYgKDB4QjksIDB4MDEsIDB4MDAsIDB4MDAs
IDB4MDMpLCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChMb2NhbDAs
IDB4MDgwOCkpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgUmV0dXJuICgweDFGKQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAg
ICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgxRCkNCiAgICAgICAgICAgICAgICAgICAg
ICAgIH0NCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIE1ldGhv
ZCAoX0RHUywgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAg
ICAgICAgICAgICAgICAgICAgU3RvcmUgKE5TVEUsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAg
ICAgICAgIElmIChBbmQgKExvY2FsMCwgMHgwODA4KSkNCiAgICAgICAgICAgICAgICAgICAgICAg
IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MDEpDQogICAgICAgICAg
ICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAg
ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDAw
KQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAg
ICAgICAgICAgICAgICAgICAgTWV0aG9kIChfRFNTLCAxLCBOb3RTZXJpYWxpemVkKQ0KICAgICAg
ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChBbmQg
KEFyZzAsIDB4QzAwMDAwMDApLCAweEMwMDAwMDAwKSkNCiAgICAgICAgICAgICAgICAgICAgICAg
IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoTlNURSwgQ1NURSkNCiAgICAg
ICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAg
ICAgIH0NCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgRGV2aWNlIChVU0IxKQ0KICAgICAg
ICAgICAgew0KICAgICAgICAgICAgICAgIE5hbWUgKF9BRFIsIDB4MDAxRDAwMDApDQogICAgICAg
ICAgICB9DQoNCiAgICAgICAgICAgIERldmljZSAoVVNCMikNCiAgICAgICAgICAgIHsNCiAgICAg
ICAgICAgICAgICBOYW1lIChfQURSLCAweDAwMUQwMDAxKQ0KICAgICAgICAgICAgfQ0KDQogICAg
ICAgICAgICBEZXZpY2UgKFVTQjMpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgTmFt
ZSAoX0FEUiwgMHgwMDFEMDAwMikNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgRGV2aWNl
IChVU0I0KQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIE5hbWUgKF9BRFIsIDB4MDAx
RDAwMDMpDQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIERldmljZSAoRUhDSSkNCiAgICAg
ICAgICAgIHsNCiAgICAgICAgICAgICAgICBOYW1lIChfQURSLCAweDAwMUQwMDA3KQ0KICAgICAg
ICAgICAgfQ0KDQogICAgICAgICAgICBEZXZpY2UgKFBDSUIpDQogICAgICAgICAgICB7DQogICAg
ICAgICAgICAgICAgTmFtZSAoX0FEUiwgMHgwMDFFMDAwMCkNCiAgICAgICAgICAgICAgICBEZXZp
Y2UgKENEQjEpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBOYW1lIChf
QURSLCAweDAwMDUwMDAwKQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIERl
dmljZSAoTEFOKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAo
X0FEUiwgMHgwMDAxMDAwMCkNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX1BSVywgUGFja2Fn
ZSAoMHgwMikNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAg
MHgwQiwgDQogICAgICAgICAgICAgICAgICAgICAgICAweDA0DQogICAgICAgICAgICAgICAgICAg
IH0pDQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgTWV0aG9kIChfUFJULCAw
LCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg
SWYgKEdQSUMpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAg
IFJldHVybiAoUElDNikNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAg
ICBFbHNlDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFJl
dHVybiAoUElDNykNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCg0K
ICAgICAgICAgICAgICAgIE5hbWUgKFBJQzYsIFBhY2thZ2UgKDB4MDYpDQogICAgICAgICAgICAg
ICAgew0KICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQ0KICAgICAgICAgICAgICAg
ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDVGRkZGLCANCiAgICAgICAgICAg
ICAgICAgICAgICAgIDB4MDAsIA0KICAgICAgICAgICAgICAgICAgICAgICAgMHgwMCwgDQogICAg
ICAgICAgICAgICAgICAgICAgICAweDE2DQogICAgICAgICAgICAgICAgICAgIH0sIA0KDQogICAg
ICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAg
ICAgICAgICAgICAgICAgICAgICAgIDB4MDAwNUZGRkYsIA0KICAgICAgICAgICAgICAgICAgICAg
ICAgMHgwMSwgDQogICAgICAgICAgICAgICAgICAgICAgICAweDAwLCANCiAgICAgICAgICAgICAg
ICAgICAgICAgIDB4MTQNCiAgICAgICAgICAgICAgICAgICAgfSwgDQoNCiAgICAgICAgICAgICAg
ICAgICAgUGFja2FnZSAoMHgwNCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg
ICAgICAgICAgICAgMHgwMDA1RkZGRiwgDQogICAgICAgICAgICAgICAgICAgICAgICAweDAyLCAN
CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsIA0KICAgICAgICAgICAgICAgICAgICAgICAg
MHgxNw0KICAgICAgICAgICAgICAgICAgICB9LCANCg0KICAgICAgICAgICAgICAgICAgICBQYWNr
YWdlICgweDA0KQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg
ICAweDAwMDFGRkZGLCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsIA0KICAgICAgICAg
ICAgICAgICAgICAgICAgMHgwMCwgDQogICAgICAgICAgICAgICAgICAgICAgICAweDEzDQogICAg
ICAgICAgICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQp
DQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAwNEZG
RkYsIA0KICAgICAgICAgICAgICAgICAgICAgICAgMHgwMCwgDQogICAgICAgICAgICAgICAgICAg
ICAgICAweDAwLCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MTUNCiAgICAgICAgICAgICAg
ICAgICAgfSwgDQoNCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkNCiAgICAgICAg
ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDA0RkZGRiwgDQogICAg
ICAgICAgICAgICAgICAgICAgICAweDAxLCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAs
IA0KICAgICAgICAgICAgICAgICAgICAgICAgMHgxMw0KICAgICAgICAgICAgICAgICAgICB9DQog
ICAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICBOYW1lIChQSUM3LCBQYWNrYWdlICgw
eDA2KQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgw
NCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDA1
RkZGRiwgDQogICAgICAgICAgICAgICAgICAgICAgICAweDAwLCANCiAgICAgICAgICAgICAgICAg
ICAgICAgIFxfU0IuUENJMC5MUENCLkxOS0csIA0KICAgICAgICAgICAgICAgICAgICAgICAgMHgw
MA0KICAgICAgICAgICAgICAgICAgICB9LCANCg0KICAgICAgICAgICAgICAgICAgICBQYWNrYWdl
ICgweDA0KQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAw
eDAwMDVGRkZGLCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEsIA0KICAgICAgICAgICAg
ICAgICAgICAgICAgXF9TQi5QQ0kwLkxQQ0IuTE5LRSwgDQogICAgICAgICAgICAgICAgICAgICAg
ICAweDAwDQogICAgICAgICAgICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICAgICAgICAgIFBh
Y2thZ2UgKDB4MDQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg
ICAgIDB4MDAwNUZGRkYsIA0KICAgICAgICAgICAgICAgICAgICAgICAgMHgwMiwgDQogICAgICAg
ICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuTFBDQi5MTktILCANCiAgICAgICAgICAgICAgICAg
ICAgICAgIDB4MDANCiAgICAgICAgICAgICAgICAgICAgfSwgDQoNCiAgICAgICAgICAgICAgICAg
ICAgUGFja2FnZSAoMHgwNCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg
ICAgICAgICAgMHgwMDAxRkZGRiwgDQogICAgICAgICAgICAgICAgICAgICAgICAweDAwLCANCiAg
ICAgICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MUENCLkxOS0QsIA0KICAgICAgICAgICAg
ICAgICAgICAgICAgMHgwMA0KICAgICAgICAgICAgICAgICAgICB9LCANCg0KICAgICAgICAgICAg
ICAgICAgICBQYWNrYWdlICgweDA0KQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAg
ICAgICAgICAgICAgICAweDAwMDRGRkZGLCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAs
IA0KICAgICAgICAgICAgICAgICAgICAgICAgXF9TQi5QQ0kwLkxQQ0IuTE5LRiwgDQogICAgICAg
ICAgICAgICAgICAgICAgICAweDAwDQogICAgICAgICAgICAgICAgICAgIH0sIA0KDQogICAgICAg
ICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAg
ICAgICAgICAgICAgICAgICAgIDB4MDAwNEZGRkYsIA0KICAgICAgICAgICAgICAgICAgICAgICAg
MHgwMSwgDQogICAgICAgICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuTFBDQi5MTktELCANCiAg
ICAgICAgICAgICAgICAgICAgICAgIDB4MDANCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAg
ICAgICAgICAgIH0pDQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIERldmljZSAoQVVEMCkN
CiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBOYW1lIChfQURSLCAweDAwMUUwMDAyKQ0K
ICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBEZXZpY2UgKE1PRE0pDQogICAgICAgICAgICB7
DQogICAgICAgICAgICAgICAgTmFtZSAoX0FEUiwgMHgwMDFFMDAwMykNCiAgICAgICAgICAgICAg
ICBOYW1lIChfUFJXLCBQYWNrYWdlICgweDAyKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAg
ICAgICAgICAgICAgMHgwNSwgDQogICAgICAgICAgICAgICAgICAgIDB4MDMNCiAgICAgICAgICAg
ICAgICB9KQ0KICAgICAgICAgICAgICAgIE5hbWUgKE1QU1csIDB4MDApDQogICAgICAgICAgICAg
ICAgTWV0aG9kIChfUFNXLCAxLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgIHsNCiAg
ICAgICAgICAgICAgICAgICAgU3RvcmUgKFNoaWZ0TGVmdCAoMHgwMCwgMHgxOCksIExvY2FsMCkN
CiAgICAgICAgICAgICAgICAgICAgT3IgKExvY2FsMCwgQW5kIChfQURSLCAweDAwRkYwMDAwKSwg
TG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICBPciAoTG9jYWwwLCBTaGlmdExlZnQgKEFuZCAo
X0FEUiwgMHhGRiksIDB4MDgpLCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgIE9yIChMb2Nh
bDAsIEFyZzAsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKExvY2FsMCwgTVBT
VykNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIERldmlj
ZSAoTFBDQikNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBOYW1lIChfQURSLCAweDAw
MUYwMDAwKQ0KICAgICAgICAgICAgICAgIE9wZXJhdGlvblJlZ2lvbiAoTFBDMCwgUENJX0NvbmZp
ZywgMHg0MCwgMHhDMCkNCiAgICAgICAgICAgICAgICBGaWVsZCAoTFBDMCwgQW55QWNjLCBOb0xv
Y2ssIFByZXNlcnZlKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgUE1C
QSwgICAxNiwgDQogICAgICAgICAgICAgICAgICAgIE9mZnNldCAoMHgwOCksIA0KICAgICAgICAg
ICAgICAgICAgICBHUEJBLCAgIDE2LCANCiAgICAgICAgICAgICAgICAgICAgT2Zmc2V0ICgweDIw
KSwgDQogICAgICAgICAgICAgICAgICAgIFBBUkMsICAgOCwgDQogICAgICAgICAgICAgICAgICAg
IFBCUkMsICAgOCwgDQogICAgICAgICAgICAgICAgICAgIFBDUkMsICAgOCwgDQogICAgICAgICAg
ICAgICAgICAgIFBEUkMsICAgOCwgDQogICAgICAgICAgICAgICAgICAgIE9mZnNldCAoMHgyOCks
IA0KICAgICAgICAgICAgICAgICAgICBQRVJDLCAgIDgsIA0KICAgICAgICAgICAgICAgICAgICBQ
RlJDLCAgIDgsIA0KICAgICAgICAgICAgICAgICAgICBQR1JDLCAgIDgsIA0KICAgICAgICAgICAg
ICAgICAgICBQSFJDLCAgIDgsIA0KICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4NDApLCAN
CiAgICAgICAgICAgICAgICAgICAgSU9EMCwgICA4LCANCiAgICAgICAgICAgICAgICAgICAgSU9E
MSwgICA4LCANCiAgICAgICAgICAgICAgICAgICAgT2Zmc2V0ICgweDQ0KSwgDQogICAgICAgICAg
ICAgICAgICAgIEdFTjEsICAgMTYsIA0KICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4NDgp
LCANCiAgICAgICAgICAgICAgICAgICAgR0VOMiwgICAxNiwgDQogICAgICAgICAgICAgICAgICAg
IE9mZnNldCAoMHg2MCksIA0KICAgICAgICAgICAgICAgICAgICAgICAgLCAgIDIsIA0KICAgICAg
ICAgICAgICAgICAgICBDUkVOLCAgIDEsIA0KICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4
QjApLCANCiAgICAgICAgICAgICAgICAgICAgUkNCQSwgICAzMg0KICAgICAgICAgICAgICAgIH0N
Cg0KICAgICAgICAgICAgICAgIERldmljZSAoTUJSRCkNCiAgICAgICAgICAgICAgICB7DQogICAg
ICAgICAgICAgICAgICAgIE5hbWUgKF9ISUQsIEVpc2FJZCAoIlBOUDBDMDIiKSkNCiAgICAgICAg
ICAgICAgICAgICAgTmFtZSAoX1VJRCwgMHgxRikNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAo
QlVGMCwgUmVzb3VyY2VUZW1wbGF0ZSAoKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg
ICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDkwMCwgMHgwOTAwLCAweDAxLCAweDIw
KQ0KICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDA5MkMsIDB4MDkyQywg
MHgwMSwgMHg1NCkNCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHhGRTAw
LCAweEZFMDAsIDB4MDIsIDB4MDIpDQogICAgICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAg
ICAgICAgICAgIE1ldGhvZCAoX0NSUywgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAg
ICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChCVUYwLCAw
eDAyLCBHMU1OKQ0KICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChCVUYw
LCAweDA0LCBHMU1YKQ0KICAgICAgICAgICAgICAgICAgICAgICAgQW5kICheXkdFTjEsIDB4RkY4
MCwgRzFNTikNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChHMU1OLCBHMU1YKQ0KICAg
ICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChCVUYwKQ0KICAgICAgICAgICAgICAgICAgICB9
DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgRGV2aWNlIChETUFDKQ0KICAg
ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgi
UE5QMDIwMCIpKQ0KICAgICAgICAgICAgICAgICAgICBOYW1lIChfQ1JTLCBSZXNvdXJjZVRlbXBs
YXRlICgpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElP
IChEZWNvZGUxNiwgMHgwMDAwLCAweDAwMDAsIDB4MDEsIDB4MjApDQogICAgICAgICAgICAgICAg
ICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDA4MSwgMHgwMDgxLCAweDAxLCAweDExKQ0KICAgICAg
ICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDAwOTMsIDB4MDA5MywgMHgwMSwgMHgw
RCkNCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMEMwLCAweDAwQzAs
IDB4MDEsIDB4MjApDQogICAgICAgICAgICAgICAgICAgICAgICBETUEgKENvbXBhdGliaWxpdHks
IE5vdEJ1c01hc3RlciwgVHJhbnNmZXI4XzE2KSB7NH0NCiAgICAgICAgICAgICAgICAgICAgfSkN
CiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBEZXZpY2UgKEZXSEQpDQogICAg
ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJJ
TlQwODAwIikpDQogICAgICAgICAgICAgICAgICAgIE5hbWUgKF9DUlMsIFJlc291cmNlVGVtcGxh
dGUgKCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgTWVt
b3J5MzJGaXhlZCAoUmVhZE9ubHksIDB4RkYwMDAwMDAsIDB4MDEwMDAwMDApDQogICAgICAgICAg
ICAgICAgICAgIH0pDQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgRGV2aWNl
IChIUEVUKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0hJ
RCwgRWlzYUlkICgiUE5QMDEwMyIpKQ0KICAgICAgICAgICAgICAgICAgICBOYW1lIChCVUYwLCBS
ZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg
ICAgICAgICAgIElSUU5vRmxhZ3MgKCkgezB9DQogICAgICAgICAgICAgICAgICAgICAgICBJUlFO
b0ZsYWdzICgpIHs4fQ0KICAgICAgICAgICAgICAgICAgICAgICAgTWVtb3J5MzJGaXhlZCAoUmVh
ZE9ubHksIDB4RkVEMDAwMDAsIDB4MDAwMDA0MDApDQogICAgICAgICAgICAgICAgICAgIH0pDQog
ICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1NUQSwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAg
ICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoXENL
T1MgKCksIDB4ODIpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIElmIChIUEFFKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDBGKQ0KICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAg
ICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBJZiAoSFBBRSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7
DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwQikNCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAg
ICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwMCkNCiAgICAgICAgICAgICAgICAgICAgfQ0K
DQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0NSUywgMCwgU2VyaWFsaXplZCkNCiAgICAg
ICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEhQQUUpDQogICAg
ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRl
RFdvcmRGaWVsZCAoQlVGMCwgMHgwQSwgSFBUMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBJZiAoTEVxdWFsIChIUEFTLCAweDAxKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7
DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweEZFRDAxMDAwLCBIUFQw
KQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIElmIChMRXF1YWwgKEhQQVMsIDB4MDIpKQ0KICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4RkVEMDIwMDAs
IEhQVDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgSWYgKExFcXVhbCAoSFBBUywgMHgwMykpDQogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHhGRUQw
MzAwMCwgSFBUMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAg
ICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoQlVGMCkNCiAg
ICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAg
IERldmljZSAoSVBJQykNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIE5h
bWUgKF9ISUQsIEVpc2FJZCAoIlBOUDAwMDAiKSkNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAo
X0NSUywgUmVzb3VyY2VUZW1wbGF0ZSAoKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg
ICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDAyMCwgMHgwMDIwLCAweDAxLCAweDAy
KQ0KICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDAwMjQsIDB4MDAyNCwg
MHgwMSwgMHgwMikNCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDI4
LCAweDAwMjgsIDB4MDEsIDB4MDIpDQogICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2Rl
MTYsIDB4MDAyQywgMHgwMDJDLCAweDAxLCAweDAyKQ0KICAgICAgICAgICAgICAgICAgICAgICAg
SU8gKERlY29kZTE2LCAweDAwMzAsIDB4MDAzMCwgMHgwMSwgMHgwMikNCiAgICAgICAgICAgICAg
ICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDM0LCAweDAwMzQsIDB4MDEsIDB4MDIpDQogICAg
ICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDAzOCwgMHgwMDM4LCAweDAxLCAw
eDAyKQ0KICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDAwM0MsIDB4MDAz
QywgMHgwMSwgMHgwMikNCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgw
MEEwLCAweDAwQTAsIDB4MDEsIDB4MDIpDQogICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVj
b2RlMTYsIDB4MDBBNCwgMHgwMEE0LCAweDAxLCAweDAyKQ0KICAgICAgICAgICAgICAgICAgICAg
ICAgSU8gKERlY29kZTE2LCAweDAwQTgsIDB4MDBBOCwgMHgwMSwgMHgwMikNCiAgICAgICAgICAg
ICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMEFDLCAweDAwQUMsIDB4MDEsIDB4MDIpDQog
ICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDBCMCwgMHgwMEIwLCAweDAx
LCAweDAyKQ0KICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDAwQjQsIDB4
MDBCNCwgMHgwMSwgMHgwMikNCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwg
MHgwMEI4LCAweDAwQjgsIDB4MDEsIDB4MDIpDQogICAgICAgICAgICAgICAgICAgICAgICBJTyAo
RGVjb2RlMTYsIDB4MDBCQywgMHgwMEJDLCAweDAxLCAweDAyKQ0KICAgICAgICAgICAgICAgICAg
ICAgICAgSU8gKERlY29kZTE2LCAweDA0RDAsIDB4MDREMCwgMHgwMSwgMHgwMikNCiAgICAgICAg
ICAgICAgICAgICAgICAgIElSUU5vRmxhZ3MgKCkgezJ9DQogICAgICAgICAgICAgICAgICAgIH0p
DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgRGV2aWNlIChNQVRIKQ0KICAg
ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgi
UE5QMEMwNCIpKQ0KICAgICAgICAgICAgICAgICAgICBOYW1lIChfQ1JTLCBSZXNvdXJjZVRlbXBs
YXRlICgpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElP
IChEZWNvZGUxNiwgMHgwMEYwLCAweDAwRjAsIDB4MDEsIDB4MDEpDQogICAgICAgICAgICAgICAg
ICAgICAgICBJUlFOb0ZsYWdzICgpIHsxM30NCiAgICAgICAgICAgICAgICAgICAgfSkNCiAgICAg
ICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBEZXZpY2UgKE1CRDApDQogICAgICAgICAg
ICAgICAgew0KICAgICAgICAgICAgICAgICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJQTlAwQzAy
IikpDQogICAgICAgICAgICAgICAgICAgIE5hbWUgKF9VSUQsIDB4MDEpDQogICAgICAgICAgICAg
ICAgICAgIE5hbWUgKEJVRjAsIFJlc291cmNlVGVtcGxhdGUgKCkNCiAgICAgICAgICAgICAgICAg
ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDAwNjMsIDB4MDA2
MywgMHgwMSwgMHgwMSkNCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgw
MDY1LCAweDAwNjUsIDB4MDEsIDB4MDEpDQogICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVj
b2RlMTYsIDB4MDA2NywgMHgwMDY3LCAweDAxLCAweDAxKQ0KICAgICAgICAgICAgICAgICAgICAg
ICAgSU8gKERlY29kZTE2LCAweDAwODAsIDB4MDA4MCwgMHgwMSwgMHgwMSkNCiAgICAgICAgICAg
ICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDkyLCAweDAwOTIsIDB4MDEsIDB4MDEpDQog
ICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDBCMiwgMHgwMEIyLCAweDAx
LCAweDAyKQ0KICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDA4MDAsIDB4
MDgwMCwgMHgwMSwgMHgxMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwg
MHgxMDAwLCAweDEwMDAsIDB4MDEsIDB4ODApDQogICAgICAgICAgICAgICAgICAgICAgICBJTyAo
RGVjb2RlMTYsIDB4MTE4MCwgMHgxMTgwLCAweDAxLCAweDQwKQ0KICAgICAgICAgICAgICAgICAg
ICAgICAgTWVtb3J5MzJGaXhlZCAoUmVhZFdyaXRlLCAweEUwMDAwMDAwLCAweDEwMDAwMDAwKQ0K
ICAgICAgICAgICAgICAgICAgICAgICAgTWVtb3J5MzJGaXhlZCAoUmVhZFdyaXRlLCAweEYwMDAw
MDAwLCAweDAwMDA0MDAwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgTWVtb3J5MzJGaXhlZCAo
UmVhZFdyaXRlLCAweEYwMDA0MDAwLCAweDAwMDAxMDAwKQ0KICAgICAgICAgICAgICAgICAgICAg
ICAgTWVtb3J5MzJGaXhlZCAoUmVhZFdyaXRlLCAweEYwMDA1MDAwLCAweDAwMDAxMDAwKQ0KICAg
ICAgICAgICAgICAgICAgICAgICAgTWVtb3J5MzJGaXhlZCAoUmVhZFdyaXRlLCAweEYwMDA4MDAw
LCAweDAwMDA0MDAwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgTWVtb3J5MzJGaXhlZCAoUmVh
ZFdyaXRlLCAweEZFRDIwMDAwLCAweDAwMDcwMDAwKQ0KICAgICAgICAgICAgICAgICAgICB9KQ0K
ICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9DUlMsIDAsIFNlcmlhbGl6ZWQpDQogICAgICAg
ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAo
QlVGMCwgMHgzQSwgUE1NTikNCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVs
ZCAoQlVGMCwgMHgzQywgUE1NWCkNCiAgICAgICAgICAgICAgICAgICAgICAgIEFuZCAoXl5QTUJB
LCAweEZGODAsIFBNTU4pDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoUE1NTiwgUE1N
WCkNCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoQlVGMCwgMHg0Miwg
R1BNTikNCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoQlVGMCwgMHg0
NCwgR1BNWCkNCiAgICAgICAgICAgICAgICAgICAgICAgIEFuZCAoXl5HUEJBLCAweEZGQzAsIEdQ
TU4pDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoR1BNTiwgR1BNWCkNCiAgICAgICAg
ICAgICAgICAgICAgICAgIFJldHVybiAoQlVGMCkNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAg
ICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIERldmljZSAoTUJEMSkNCiAgICAgICAg
ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIE5hbWUgKF9ISUQsIEVpc2FJZCAoIlBOUDBD
MDIiKSkNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX1VJRCwgMHgwMikNCiAgICAgICAgICAg
ICAgICAgICAgTmFtZSAoX0NSUywgUmVzb3VyY2VUZW1wbGF0ZSAoKQ0KICAgICAgICAgICAgICAg
ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBNZW1vcnkzMkZpeGVkIChSZWFkV3JpdGUs
IDB4RkVDMDAwMDAsIDB4MDAwMDEwMDApDQogICAgICAgICAgICAgICAgICAgICAgICBNZW1vcnkz
MkZpeGVkIChSZWFkV3JpdGUsIDB4RkVFMDAwMDAsIDB4MDAwMDEwMDApDQogICAgICAgICAgICAg
ICAgICAgIH0pDQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1NUQSwgMCwgTm90U2VyaWFs
aXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgU3Rv
cmUgKFxDS09TICgpLCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTE9yIChM
RXF1YWwgKExvY2FsMCwgMHgwMSksIExFcXVhbCAoTG9jYWwwLCAweDAyKSkpDQogICAgICAgICAg
ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExPciAoQVBJ
QywgSFRURSkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MEIpDQogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAg
ICBSZXR1cm4gKDB4MDApDQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB9
DQoNCiAgICAgICAgICAgICAgICBEZXZpY2UgKFJUQykNCiAgICAgICAgICAgICAgICB7DQogICAg
ICAgICAgICAgICAgICAgIE5hbWUgKF9ISUQsIEVpc2FJZCAoIlBOUDBCMDAiKSkNCiAgICAgICAg
ICAgICAgICAgICAgTmFtZSAoQlVGMCwgUmVzb3VyY2VUZW1wbGF0ZSAoKQ0KICAgICAgICAgICAg
ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDA3MCwg
MHgwMDcwLCAweDAxLCAweDA4KQ0KICAgICAgICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAg
ICAgICAgICBOYW1lIChCVUYxLCBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAgICAgICAgICAg
ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDcwLCAweDAw
NzAsIDB4MDEsIDB4MDgpDQogICAgICAgICAgICAgICAgICAgICAgICBJUlFOb0ZsYWdzICgpIHs4
fQ0KICAgICAgICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9D
UlMsIDAsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg
ICAgICAgICAgIElmIChIUEFFKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFJldHVybiAoQlVGMCkNCiAgICAgICAgICAgICAgICAgICAgICAg
IH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChCVUYxKQ0KICAgICAgICAgICAg
ICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgRGV2aWNlIChU
SU1SKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0hJRCwg
RWlzYUlkICgiUE5QMDEwMCIpKQ0KICAgICAgICAgICAgICAgICAgICBOYW1lIChCVUYwLCBSZXNv
dXJjZVRlbXBsYXRlICgpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg
ICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDQwLCAweDAwNDAsIDB4MDEsIDB4MDQpDQogICAgICAg
ICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDA1MCwgMHgwMDUwLCAweDEwLCAweDA0
KQ0KICAgICAgICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAgICAgICAgICBOYW1lIChCVUYx
LCBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg
ICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDQwLCAweDAwNDAsIDB4MDEsIDB4MDQpDQog
ICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDA1MCwgMHgwMDUwLCAweDEw
LCAweDA0KQ0KICAgICAgICAgICAgICAgICAgICAgICAgSVJRTm9GbGFncyAoKSB7MH0NCiAgICAg
ICAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfQ1JTLCAwLCBT
ZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg
ICBJZiAoSFBBRSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBSZXR1cm4gKEJVRjApDQogICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAg
ICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoQlVGMSkNCiAgICAgICAgICAgICAgICAgICAg
fQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIERldmljZSAoU1BLUikNCiAg
ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIE5hbWUgKF9ISUQsIEVpc2FJZCAo
IlBOUDA4MDAiKSkNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0NSUywgUmVzb3VyY2VUZW1w
bGF0ZSAoKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBJ
TyAoRGVjb2RlMTYsIDB4MDA2MSwgMHgwMDYxLCAweDAxLCAweDAxKQ0KICAgICAgICAgICAgICAg
ICAgICB9KQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIERldmljZSAoVFBN
KQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0hJRCwgRWlz
YUlkICgiSUZYMDEwMSIpKQ0KICAgICAgICAgICAgICAgICAgICBOYW1lIChfVUlELCAweDAxKQ0K
ICAgICAgICAgICAgICAgICAgICBOYW1lIChfQ1JTLCBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAg
ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwg
MHgwMDRFLCAweDAwNEUsIDB4MDEsIDB4MDIpDQogICAgICAgICAgICAgICAgICAgICAgICBJTyAo
RGVjb2RlMTYsIDB4MDkyMCwgMHgwOTIwLCAweDAxLCAweDBDKQ0KICAgICAgICAgICAgICAgICAg
ICB9KQ0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9TVEEsIDAsIE5vdFNlcmlhbGl6ZWQp
DQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAo
XF9TQi5QU1JWICgweENBLCAweDAwLCAweDAwLCAweDAwLCAweDAzKSkNCiAgICAgICAgICAgICAg
ICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIE5hbWUgKFxFQ1NU
LCAweDAwKQ0KICAgICAgICAgICAgICAgIERldmljZSAoRUMwKQ0KICAgICAgICAgICAgICAgIHsN
CiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMEMwOSIpKQ0KICAg
ICAgICAgICAgICAgICAgICBOYW1lIChfQ1JTLCBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAg
ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgw
MDYyLCAweDAwNjIsIDB4MDAsIDB4MDEpDQogICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVj
b2RlMTYsIDB4MDA2NiwgMHgwMDY2LCAweDAwLCAweDAxKQ0KICAgICAgICAgICAgICAgICAgICB9
KQ0KICAgICAgICAgICAgICAgICAgICBNdXRleCAoRUNFWCwgMHgwMCkNCiAgICAgICAgICAgICAg
ICAgICAgTWV0aG9kIChfUkVHLCAyLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAg
ICB7DQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChBcmcwLCAweDAzKSkNCiAg
ICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9y
ZSAoQXJnMSwgRUNTVCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChB
cmcxLCAweDAxKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFN0b3JlIChFQzAxICgpLCBQV1JTKQ0KICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcX1NCLlBTUlYgKDB4QzksIDB4MDMsIDB4MDEsIFBXUlMsIDB4MDAp
DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBOT1QgKCkNCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAg
ICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9JTkksIDAsIE5vdFNlcmlh
bGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElO
STIgKCkNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIE5hbWUg
KF9HUEUsIDB4MUQpDQogICAgICAgICAgICAgICAgICAgIE9wZXJhdGlvblJlZ2lvbiAoRUNSLCBF
bWJlZGRlZENvbnRyb2wsIDB4MDAsIDB4RkYpDQogICAgICAgICAgICAgICAgICAgIEZpZWxkIChF
Q1IsIEJ5dGVBY2MsIE5vTG9jaywgUHJlc2VydmUpDQogICAgICAgICAgICAgICAgICAgIHsNCiAg
ICAgICAgICAgICAgICAgICAgICAgIEJSU1QsICAgOCwgDQogICAgICAgICAgICAgICAgICAgICAg
ICBDVFJMLCAgIDgsIA0KICAgICAgICAgICAgICAgICAgICAgICAgT2Zmc2V0ICgweDA0KSwgDQog
ICAgICAgICAgICAgICAgICAgICAgICBFQ0NSLCAgIDgsIA0KICAgICAgICAgICAgICAgICAgICAg
ICAgREFUMSwgICA4LCANCiAgICAgICAgICAgICAgICAgICAgICAgIERBVDIsICAgOCwgDQogICAg
ICAgICAgICAgICAgICAgICAgICBEQVQzLCAgIDgsIA0KICAgICAgICAgICAgICAgICAgICAgICAg
T2Zmc2V0ICgweDE3KSwgDQogICAgICAgICAgICAgICAgICAgICAgICBTTFBULCAgIDgNCiAgICAg
ICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIE5hbWUgKExIS1EsIE9uZXMp
DQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoSENOViwgMSwgU2VyaWFsaXplZCkNCiAgICAg
ICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4RkZGRkZG
RkYsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMQW5kIChMTm90IChMTGVz
cyAoQXJnMCwgMHgwQSkpLCBMTm90IChMR3JlYXRlciAoQXJnMCwgMHgxNSkpKSkNCiAgICAgICAg
ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdWJ0cmFjdCAo
QXJnMCwgMHgwOSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChBbmQg
KDB4MDAsIFNoaWZ0TGVmdCAoMHgwMSwgTG9jYWwwKSkpDQogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHhGRkZGRkZG
RiwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAg
ICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExBbmQgKExOb3QgKExM
ZXNzIChBcmcwLCAweDcwKSksIExOb3QgKExHcmVhdGVyIChBcmcwLCAweDdCKSkpKQ0KICAgICAg
ICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZCAoQXJn
MCwgMHgxMSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN1YnRyYWN0IChB
cmcwLCAweDZGLCBMb2NhbDEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAo
MHgwMCwgU2hpZnRMZWZ0ICgweDAxLCBMb2NhbDEpKSkNCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweEZGRkZGRkZG
LCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMSEtRKQ0KICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAo
RUM4NiAoMHgyOCksIExIS1EpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0K
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEFuZCAoTEhLUSwgTE5vdCAoTEVx
dWFsIChMSEtRLCBTdWJ0cmFjdCAoTG9jYWwwLCAweDgwKSkpKSkNCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3Rv
cmUgKDB4RkZGRkZGRkYsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
fQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAg
IH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExBbmQgKExOb3QgKExMZXNzIChBcmcw
LCAweDgxKSksIExOb3QgKExHcmVhdGVyIChBcmcwLCAweDgyKSkpKQ0KICAgICAgICAgICAgICAg
ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN1YnRyYWN0IChBcmcwLCAw
eDUxLCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAg
ICAgICAgICAgIElmIChMTm90IChMRXF1YWwgKExvY2FsMCwgMHhGRkZGRkZGRikpKQ0KICAgICAg
ICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxfU0IuSEtF
WS5ISU5EIChMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgTm90aWZ5IChcX1NC
LkhLRVksIDB4ODApDQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAg
ICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg
ICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBN
ZXRob2QgKF9RMEEsIDAsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAg
ICAgICAgICAgICAgICAgICAgIEhDTlYgKDB4MEEpDQogICAgICAgICAgICAgICAgICAgIH0NCg0K
ICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9RMEIsIDAsIFNlcmlhbGl6ZWQpDQogICAgICAg
ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIEhDTlYgKDB4MEIpDQogICAg
ICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9RMEQsIDAs
IFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg
ICAgIEhDTlYgKDB4MEQpDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAg
ICAgICBNZXRob2QgKF9RMEUsIDAsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsN
CiAgICAgICAgICAgICAgICAgICAgICAgIEhDTlYgKDB4MEUpDQogICAgICAgICAgICAgICAgICAg
IH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9RMEYsIDAsIFNlcmlhbGl6ZWQpDQog
ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIEhDTlYgKDB4MEYp
DQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9R
MTAsIDAsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg
ICAgICAgICAgIEhDTlYgKDB4MTApDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAg
ICAgICAgICAgICBNZXRob2QgKF9RMTEsIDAsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAg
ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIEhDTlYgKDB4MTEpDQogICAgICAgICAgICAg
ICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9RMTIsIDAsIFNlcmlhbGl6
ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIEhDTlYg
KDB4MTIpDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRo
b2QgKF9RMTMsIDAsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAg
ICAgICAgICAgICAgICAgIEhDTlYgKDB4MTMpDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAg
ICAgICAgICAgICAgICAgICBNZXRob2QgKF9RMTQsIDAsIFNlcmlhbGl6ZWQpDQogICAgICAgICAg
ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIEhDTlYgKDB4MTQpDQogICAgICAg
ICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9RMTUsIDAsIFNl
cmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAg
IEhDTlYgKDB4MTUpDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAg
ICBNZXRob2QgKF9RNzAsIDAsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAg
ICAgICAgICAgICAgICAgICAgICAgIEhDTlYgKDB4NzApDQogICAgICAgICAgICAgICAgICAgIH0N
Cg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9RNzEsIDAsIFNlcmlhbGl6ZWQpDQogICAg
ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIEhDTlYgKDB4NzEpDQog
ICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9RNzMs
IDAsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg
ICAgICAgIEhDTlYgKDB4NzMpDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAg
ICAgICAgICBNZXRob2QgKF9RNzQsIDAsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAg
IHsNCiAgICAgICAgICAgICAgICAgICAgICAgIEhDTlYgKDB4NzQpDQogICAgICAgICAgICAgICAg
ICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9RNzUsIDAsIFNlcmlhbGl6ZWQp
DQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIEhDTlYgKDB4
NzUpDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2Qg
KF9RNzYsIDAsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg
ICAgICAgICAgICAgIEhDTlYgKDB4NzYpDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAg
ICAgICAgICAgICAgICBNZXRob2QgKF9RNzcsIDAsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAg
ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIEhDTlYgKDB4NzcpDQogICAgICAgICAg
ICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9RNzgsIDAsIFNlcmlh
bGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIEhD
TlYgKDB4NzgpDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBN
ZXRob2QgKF9RNzksIDAsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAg
ICAgICAgICAgICAgICAgICAgIEhDTlYgKDB4NzkpDQogICAgICAgICAgICAgICAgICAgIH0NCg0K
ICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9RN0EsIDAsIFNlcmlhbGl6ZWQpDQogICAgICAg
ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIEhDTlYgKDB4N0EpDQogICAg
ICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9RN0IsIDAs
IFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg
ICAgIEhDTlYgKDB4N0IpDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAg
ICAgICBNZXRob2QgKF9RODEsIDAsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsN
CiAgICAgICAgICAgICAgICAgICAgICAgIEhDTlYgKDB4ODEpDQogICAgICAgICAgICAgICAgICAg
IH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9RODIsIDAsIFNlcmlhbGl6ZWQpDQog
ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIEhDTlYgKDB4ODIp
DQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9R
MEMsIDAsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg
ICAgICAgICAgIFxfU0IuQ0hHRCAoKQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAg
ICAgICAgICAgICAgTWV0aG9kIChfUTcyLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAg
ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBN
ZXRob2QgKElOSTIsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAg
ICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1EyMywg
MCwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg
ICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfUTlGLCAwLCBTZXJpYWxpemVkKQ0K
ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBOb3RpZnkgKFxf
U0IuQkFUQSwgMHg4MSkNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAg
ICAgIE1ldGhvZCAoX1FBMCwgMCwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0K
ICAgICAgICAgICAgICAgICAgICAgICAgTm90aWZ5IChcX1NCLkJBVEEsIDB4ODApDQogICAgICAg
ICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKEVDOEQsIDEsIFNl
cmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAg
IElmIChMRXF1YWwgKEVDU1QsIDB4MDApKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChTaGlmdExlZnQgKEFyZzAsIDB4MDgpLCBM
b2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEFkZCAoTG9jYWwwLCAw
eDg4KSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChcX1NCLlBT
UlYgKDB4QzMsIExvY2FsMCwgMHgwMCwgMHgwMCwgMHgwMyksIExvY2FsMCkNCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBJZiAoQW5kIChMb2NhbDAsIDB4RkYpKQ0KICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgw
eEZGRkZGRkZGKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoQW5kIChTaGlmdFJpZ2h0IChMb2NhbDAs
IDB4MDgpLCAweEZGRkYpLCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFJldHVybiAoTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAg
ICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAg
ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBBY3F1aXJlIChF
Q0VYLCAweEZGRkYpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEFyZzAsIERB
VDEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4ODgsIEVDQ1IpDQogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4QzgsIExvY2FsNCkNCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBXaGlsZSAoTEFuZCAoTE5vdCAoTEVxdWFsIChMb2NhbDQsIDB4MDAp
KSwgTE5vdCAoTEVxdWFsIChFQ0NSLCAweDAwKSkpKQ0KICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RhbGwgKDB4MTkpDQogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIERlY3JlbWVudCAoTG9jYWw0KQ0KICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Jl
IChEQVQxLCBMb2NhbDEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKERBVDIs
IExvY2FsMikNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZWxlYXNlIChFQ0VYKQ0KICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKExvY2FsNCwgMHgwMCkpDQogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBSZXR1cm4gKDB4RkZGRkZGRkYpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEFkZCAoU2hpZnRMZWZ0IChMb2NhbDIs
IDB4MDgpLCBMb2NhbDEpLCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0
dXJuIChMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAg
ICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKEVDMDMsIDIsIFNlcmlhbGl6ZWQp
DQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1
YWwgKEFyZzEsIDB4MDApKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKEFyZzAsIDB4MDApKQ0KICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEVD
ODYgKDB4NkEpLCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoTG9jYWwwLCAweEZGRkZGRkZGKSkN
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFJldHVybiAoMHgwMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChMb2NhbDApDQogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQog
ICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChBcmcxLCAweDAxKSkNCiAgICAgICAg
ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFs
IChBcmcwLCAweDAwKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChFQzhEICgweDZDKSwgTG9jYWwwKQ0KICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElm
IChMTm90IChMTGVzcyAoTG9jYWwwLCAweEZGRkYpKSkNCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHhGRkZGRkZG
RikNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgUmV0dXJuIChMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAg
ICAgICBJZiAoTEVxdWFsIChBcmcxLCAweDAyKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsN
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChBcmcwLCAweDAwKSkNCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFN0b3JlIChFQzhEICgweDZFKSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMTm90IChMTGVzcyAoTG9j
YWwwLCAweEZGRkYpKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHhGRkZGRkZGRikNCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
UmV0dXJuIChMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAg
ICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChB
cmcxLCAweDAzKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBJZiAoTEVxdWFsIChBcmcwLCAweDAwKSkNCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChFQzhEICgw
eDcwKSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFQzgyICgweDQx
LCAweDAwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIElmIChMTm90IChMTGVzcyAoTG9jYWwwLCAweEZGRkYpKSkNCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJl
dHVybiAoMHhGRkZGRkZGRikNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsN
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChMb2NhbDApDQogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAg
ICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfUTVDLCAwLCBT
ZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg
ICBOb3RpZnkgKFxfVFouVFpDLCAweDgwKQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAg
ICAgICAgICAgICAgICAgTWV0aG9kIChfUTgwLCAwLCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAg
ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoRUMwMSAoKSwgUFdSUykN
CiAgICAgICAgICAgICAgICAgICAgICAgIFxfU0IuUFNSViAoMHhDOSwgMHgwMywgMHgwMSwgUFdS
UywgMHgwMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIFBOT1QgKCkNCiAgICAgICAgICAgICAg
ICAgICAgICAgIE5vdGlmeSAoXF9TQi5BQywgMHg4MCkNCiAgICAgICAgICAgICAgICAgICAgfQ0K
DQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1E4MywgMCwgU2VyaWFsaXplZCkNCiAgICAg
ICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgTm90aWZ5IChcX1NCLkxJ
RCwgMHg4MCkNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIE1l
dGhvZCAoX1FBMywgMCwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAg
ICAgICAgICAgICAgICAgICAgXF9TQi5QU1JWICgweEQ1LCAweDAwLCAweDAwLCAweDAwLCAweDAw
KQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChF
QzA2LCAwLCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg
ICAgICAgICAgICBTdG9yZSAoMHgwOSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAg
U3RvcmUgKDB4MDIsIExvY2FsMSkNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChFQzg5
IChMb2NhbDAsIExvY2FsMSksIExvY2FsMikNCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChM
RXF1YWwgKExvY2FsMiwgMHhGRkZGRkZGRikpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDAxKQ0KICAgICAgICAgICAgICAg
ICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAg
ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoTG9jYWwyKQ0K
ICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAg
ICAgICAgICAgICAgICAgTWV0aG9kIChFQzA3LCAwLCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAg
ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKEVDODggKEVDODcgKDB4
MDQsIDB4QzgpKSkNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAg
IE1ldGhvZCAoRUMwOCwgMCwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAg
ICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDAzKQ0KICAgICAgICAgICAgICAgICAgICB9
DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChFQzA5LCAwLCBTZXJpYWxpemVkKQ0KICAg
ICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKEVDODgg
KEVDODcgKDB4MDQsIDB4QzUpKSkNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAg
ICAgICAgICAgIE1ldGhvZCAoRUMwQSwgMCwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAg
ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChFQzg4IChFQzg3ICgweDA0LCAw
eEM2KSkpDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRo
b2QgKEVDMEIsIDEsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAg
ICAgICAgICAgICAgICAgIEVDODMgKDB4MEIsIEFyZzApDQogICAgICAgICAgICAgICAgICAgICAg
ICBSZXR1cm4gKDB4MDApDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAg
ICAgICBNZXRob2QgKEVDMDEsIDAsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsN
CiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoQW5kIChFQzg2ICgweDA4KSwgMHgwMSkp
DQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKEVD
MDIsIDEsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg
ICAgICAgICAgIFN0b3JlIChFQzg2ICgweDA4KSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAg
ICAgICAgSWYgKExFcXVhbCAoTG9jYWwwLCAweEZGRkZGRkZGKSkNCiAgICAgICAgICAgICAgICAg
ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MDApDQogICAg
ICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1
YWwgKEFyZzAsIDB4MDApKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIElmIChBbmQgKExvY2FsMCwgMHgwNCkpDQogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4
MDEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwMCkNCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIH0N
Cg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKEVDMDQsIDIsIFNlcmlhbGl6ZWQpDQogICAg
ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIE5hbWUgKEJVRiwgQnVm
ZmVyICgweDEwKSB7fSkNCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKEFyZzAs
IDB4MDApKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIElmIChMRXF1YWwgKEFyZzEsIDB4MDApKQ0KICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEVDODUgKDB4NjAp
LCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKExv
Y2FsMCwgMHhGRkZGRkZGRikpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwMSkNCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoQXJnMSwgMHgwMSkpDQogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9y
ZSAoRUM4NSAoMHg2MiksIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
SWYgKExPciAoTEVxdWFsIChMb2NhbDAsIDB4MDApLCBMTm90IChMTGVzcyAoTG9jYWwwLCAweEZG
RkYpKSkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHhGRkZGRkZGRikNCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbHNl
DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFJldHVybiAoTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoQXJnMSwgMHgwMikpDQogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoRUM4
NSAoMHg2NCksIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExP
ciAoTEVxdWFsIChMb2NhbDAsIDB4MDApLCBMTm90IChMTGVzcyAoTG9jYWwwLCAweEZGRkYpKSkp
DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFJldHVybiAoMHhGRkZGRkZGRikNCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFJldHVybiAoTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgSWYgKExFcXVhbCAoQXJnMSwgMHgwMykpDQogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKE9uZSkNCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBJZiAoTEVxdWFsIChBcmcxLCAweDA0KSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7
DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChFQzg1ICgweDY4KSwgTG9j
YWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoTE9yIChMRXF1YWwgKExv
Y2FsMCwgMHgwMCksIExOb3QgKExMZXNzIChMb2NhbDAsIDB4RkZGRikpKSkNCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgUmV0dXJuICgweEZGRkZGRkZGKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9
DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0
dXJuIChMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAo
TEVxdWFsIChBcmcxLCAweDA1KSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChFQzg1ICgweDcyKSwgTG9jYWwwKQ0K
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChMb2NhbDAsIDB4RkZG
RkZGRkYpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MDApDQogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBSZXR1cm4gKExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIElmIChMRXF1YWwgKEFyZzEsIDB4MDYpKQ0KICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEVDODUgKDB4
NzQpLCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwg
KExvY2FsMCwgMHhGRkZGRkZGRikpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsN
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwMCkNCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoTG9jYWwwKQ0KICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoQXJnMSwgMHgwNykpDQogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBT
dG9yZSAoRUM4NSAoMHg3NiksIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgSWYgKExFcXVhbCAoTG9jYWwwLCAweEZGRkZGRkZGKSkNCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJu
ICgweDAxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChMb2NhbDApDQog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChBcmcxLCAw
eDA4KSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFN0b3JlIChFQzg1ICgweDc4KSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChMb2NhbDAsIDB4RkZGRkZGRkYpKQ0KICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBSZXR1cm4gKDB4MDEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0N
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1
cm4gKExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChM
RXF1YWwgKEFyZzEsIDB4MDkpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDAsIEJVRikNCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEVDODQgKDB4OEMsIDB4MEMpLCBCVUYpDQogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoQlVGKQ0KICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwg
KEFyZzEsIDB4MEEpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDAsIEJVRikNCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgU3RvcmUgKEVDODUgKDB4OUEpLCBMb2NhbDApDQogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFN0b3JlIChFQzhDIChMb2NhbDAsIDB4MDUpLCBCVUYpDQogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoQlVGKQ0KICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwg
KEFyZzEsIDB4MEIpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDAsIEJVRikNCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgU3RvcmUgKEVDODQgKDB4OUMsIDB4MDgpLCBCVUYpDQogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoQlVGKQ0KICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKEFyZzEs
IDB4MEMpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgU3RvcmUgKCJQYW5hc29uaWMiLCBCVUYpDQogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFJldHVybiAoQlVGKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAg
IH0NCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgfQ0KDQog
ICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoRUMwNSwgMiwgU2VyaWFsaXplZCkNCiAgICAgICAg
ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoQXJnMCwg
MHgwMCkpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgRUM4MiAoMHhGMCwgQXJnMSkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAg
ICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoRUMwQywgMSwg
U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAg
ICAgU3RvcmUgKEFuZCAoQXJnMCwgMHgwNyksIFNMUFQpDQogICAgICAgICAgICAgICAgICAgICAg
ICBSZXR1cm4gKDB4MDApDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAg
ICAgICBNZXRob2QgKEVDMEQsIDEsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsN
CiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKEFyZzAsIDB4MDEpKQ0KICAgICAg
ICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgw
eDk4LCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAg
ICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgSWYgKExFcXVhbCAoQXJnMCwgMHgwMCkpDQogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHg4MSwg
TG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4RkZGRkZGRkYpDQogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAg
ICAgICAgICAgICAgICBSZXR1cm4gKEVDOEIgKDB4NDMsIExvY2FsMCkpDQogICAgICAgICAgICAg
ICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKEVDMEUsIDEsIFNlcmlhbGl6
ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChM
Tm90IChMRXF1YWwgKEVDOEEgKDB4MDAsIDB4MjMsIEFuZCAoRUM4NyAoMHgwMCwgMHgyMyksIDB4
RkQpKSwgMHgwMCkpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFJldHVybiAoMHhGRkZGRkZGRikNCiAgICAgICAgICAgICAgICAgICAgICAg
IH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoQXJnMCwgMHgwMSkpDQog
ICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3Rv
cmUgKDB4ODAsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAg
ICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMCwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAg
ICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChFQzhBICgweDAx
LCAweDlDLCAweEZGKSwgMHgwMCkpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChFQzhBICgweDAxLCAweDlELCBMb2NhbDApKQ0K
ICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQ0K
ICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJl
dHVybiAoMHhGRkZGRkZGRikNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAg
ICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoRUMwRiwgMSwgU2VyaWFs
aXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgSWYg
KExFcXVhbCAoQXJnMCwgMHgwMSkpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDEsIExvY2FsMCkNCiAgICAgICAgICAgICAg
ICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAg
ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChBcmcw
LCAweDAwKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFN0b3JlICgweDAwLCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVy
biAoMHhGRkZGRkZGRikNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAg
ICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIEVDODMgKDB4MTcsIExv
Y2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHhGRkZGRkZGRikNCiAgICAg
ICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoRUMxMCwgMiwg
U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAg
ICAgU3RvcmUgKEVDODkgKEFyZzAsIEFyZzEpLCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAg
ICAgICBJZiAoTEVxdWFsIChMb2NhbDAsIDB4RkZGRkZGRkYpKQ0KICAgICAgICAgICAgICAgICAg
ICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwMCkNCiAgICAg
ICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAg
ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4g
KExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAg
fQ0KDQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoWjAwMCwgMCwgU2VyaWFsaXplZCkNCiAg
ICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEVDODYg
KDB4MTUpLCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICBBbmQgKExvY2FsMCwgMHg4
MCwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChMb2NhbDApDQogICAg
ICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKEVDODIsIDIs
IFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg
ICAgIElmIChMRXF1YWwgKEVDU1QsIDB4MDApKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0K
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMQW5kIChMTm90IChMTGVzcyAoQXJnMCwg
MHhGMCkpLCBMTm90IChMR3JlYXRlciAoQXJnMCwgMHhGMykpKSkNCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChTaGlm
dExlZnQgKEFyZzEsIDB4MDgpLCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg
fQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAwLCBM
b2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgU3RvcmUgKEFkZCAoU2hpZnRMZWZ0IChMb2NhbDAsIDB4MDgpLCBBcmcwKSwg
TG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChBZGQgKFNoaWZ0TGVm
dCAoTG9jYWwwLCAweDA4KSwgMHhERCksIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBTdG9yZSAoXF9TQi5QU1JWICgweEMzLCBMb2NhbDAsIDB4MDAsIDB4MDAsIDB4MDMpLCBM
b2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoTG9jYWwwLCAweDQw
MDAwMEZGKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFJldHVybiAoMHhGRkZGRkZGRikNCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExB
bmQgKExOb3QgKExMZXNzIChBcmcwLCAweDIwKSksIExOb3QgKExHcmVhdGVyIChBcmcwLCAweDM3
KSkpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBTdG9yZSAoQW5kIChTaGlmdFJpZ2h0IChMb2NhbDAsIDB4MDgp
LCAweDAwODBGRkZGKSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgUmV0dXJuIChMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4g
KDB4MDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAg
ICAgICAgICAgICAgIEFjcXVpcmUgKEVDRVgsIDB4RkZGRikNCiAgICAgICAgICAgICAgICAgICAg
ICAgIElmIChMQW5kIChMTm90IChMTGVzcyAoQXJnMCwgMHhGMCkpLCBMTm90IChMR3JlYXRlciAo
QXJnMCwgMHhGMykpKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBTdG9yZSAoQW5kIChBcmcxLCAweEZGKSwgREFUMikNCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBTdG9yZSAoQW5kIChTaGlmdFJpZ2h0IChBcmcxLCAweDA4KSwgMHhG
RiksIERBVDMpDQogICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAg
ICAgICAgIFN0b3JlIChBcmcwLCBEQVQxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUg
KDB4REQsIEVDQ1IpDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHhDOCwgTG9jYWw0
KQ0KICAgICAgICAgICAgICAgICAgICAgICAgV2hpbGUgKExBbmQgKExOb3QgKExFcXVhbCAoTG9j
YWw0LCAweDAwKSksIExOb3QgKExFcXVhbCAoRUNDUiwgMHgwMCkpKSkNCiAgICAgICAgICAgICAg
ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdGFsbCAoMHgxOSkNCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBEZWNyZW1lbnQgKExvY2FsNCkNCiAgICAgICAgICAg
ICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKERBVDEsIExv
Y2FsMSkNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChEQVQyLCBMb2NhbDIpDQogICAg
ICAgICAgICAgICAgICAgICAgICBTdG9yZSAoREFUMywgTG9jYWwzKQ0KICAgICAgICAgICAgICAg
ICAgICAgICAgUmVsZWFzZSAoRUNFWCkNCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMT3Ig
KExFcXVhbCAoTG9jYWw0LCAweDAwKSwgQW5kIChMb2NhbDMsIDB4NDApKSkNCiAgICAgICAgICAg
ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4RkZG
RkZGRkYpDQogICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAg
ICAgIElmIChMQW5kIChMTm90IChMTGVzcyAoQXJnMCwgMHgyMCkpLCBMTm90IChMR3JlYXRlciAo
QXJnMCwgMHgzNykpKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBTdG9yZSAoQWRkIChTaGlmdExlZnQgKExvY2FsMiwgMHgwOCksIExvY2Fs
MSksIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChMb2NhbDMs
IDB4ODApKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgT3IgKExvY2FsMCwgMHgwMDgwMDAwMCkNCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKExvY2Fs
MCkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAg
UmV0dXJuICgweDAwKQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAg
ICAgTWV0aG9kIChFQzgzLCAyLCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQog
ICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChFQ1NULCAweDAwKSkNCiAgICAgICAg
ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFs
IChBcmcwLCAweDBCKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFxfU0IuRUNXUiAoMHgwQiwgQXJnMSkNCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVx
dWFsIChBcmcwLCAweDE3KSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFxfU0IuRUNXUiAoMHgxNywgQXJnMSkNCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAg
ICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgQWNxdWlyZSAoRUNFWCwgMHhGRkZGKQ0KICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFN0b3JlIChBcmcwLCBEQVQxKQ0KICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFN0b3JlIChBcmcxLCBEQVQyKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0
b3JlICgweEI1LCBFQ0NSKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweEM4
LCBMb2NhbDEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgV2hpbGUgKExBbmQgKExOb3Qg
KExFcXVhbCAoTG9jYWwxLCAweDAwKSksIExOb3QgKExFcXVhbCAoRUNDUiwgMHgwMCkpKSkNCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFN0YWxsICgweDE5KQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEZWNyZW1l
bnQgKExvY2FsMSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBSZWxlYXNlIChFQ0VYKQ0KICAgICAgICAgICAgICAgICAgICAgICAg
fQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChF
Qzg5LCAyLCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg
ICAgICAgICAgICBJZiAoTE9yIChMT3IgKExMZXNzIChBcmcwLCAweDAxKSwgTEdyZWF0ZXIgKEFy
ZzAsIDB4MTApKSwgTEdyZWF0ZXIgKEFyZzEsIDB4MDcpKSkNCiAgICAgICAgICAgICAgICAgICAg
ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4RkZGRkZGRkYpDQog
ICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Jl
IChFQzg3ICgweDEyLCAweEVGKSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgSWYg
KExFcXVhbCAoTG9jYWwwLCAweEZGRkZGRkZGKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsN
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4RkZGRkZGRkYpDQogICAgICAg
ICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDBB
LCBMb2NhbDEpDQogICAgICAgICAgICAgICAgICAgICAgICBXaGlsZSAoTEFuZCAoTE5vdCAoTEVx
dWFsIChMb2NhbDEsIDB4MDApKSwgTEVxdWFsIChFQzg3ICgweDEyLCAweEVGKSwgTG9jYWwwKSkp
DQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAg
U2xlZXAgKDB4MDEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgRGVjcmVtZW50IChMb2Nh
bDEpDQogICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAg
IElmIChMRXF1YWwgKExvY2FsMSwgMHgwMCkpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweEZGRkZGRkZGKQ0KICAgICAgICAg
ICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoRUM4NyAo
MHgxMiwgQWRkICgweEVGLCBBcmcwKSksIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAg
IElmIChMRXF1YWwgKExvY2FsMCwgMHhGRkZGRkZGRikpDQogICAgICAgICAgICAgICAgICAgICAg
ICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweEZGRkZGRkZGKQ0KICAg
ICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4g
KEFuZCAoU2hpZnRSaWdodCAoTG9jYWwwLCBBcmcxKSwgMHgwMSkpDQogICAgICAgICAgICAgICAg
ICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKEVDODQsIDIsIFNlcmlhbGl6ZWQp
DQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIE5hbWUgKEVC
VUYsIEJ1ZmZlciAoMHgxMCkge30pDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgw
MCwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExHcmVhdGVyIChBcmcxLCAw
eDAwKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBXaGlsZSAoTExlc3MgKExvY2FsMCwgQXJnMSkpDQogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoRUM4NiAoQWRk
IChBcmcwLCBMb2NhbDApKSwgTG9jYWwxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBJZiAoTEVxdWFsIChMb2NhbDEsIDB4RkZGRkZGRkYpKQ0KICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCcmVhaw0K
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgU3RvcmUgKExvY2FsMSwgSW5kZXggKEVCVUYsIExvY2FsMCkpDQogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIEluY3JlbWVudCAoTG9jYWwwKQ0KICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMTm90
IChMRXF1YWwgKExvY2FsMCwgQXJnMSkpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsN
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDAsIEVCVUYpDQogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQog
ICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKEVCVUYpDQogICAgICAgICAgICAgICAgICAg
IH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKEVDODUsIDEsIFNlcmlhbGl6ZWQpDQog
ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIEFkZCAoQXJnMCwg
MHgwMSwgTG9jYWwxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4RkZGRkZGRkYs
IExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMTm90IChMR3JlYXRlciAoTG9j
YWwxLCAweEZGKSkpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgU3RvcmUgKEVDODYgKExvY2FsMSksIExvY2FsMikNCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBJZiAoTE5vdCAoTEdyZWF0ZXIgKExvY2FsMiwgMHhGRikpKQ0KICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
U2hpZnRMZWZ0IChMb2NhbDIsIDB4MDgsIExvY2FsMikNCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgU3RvcmUgKEVDODYgKEFyZzApLCBMb2NhbDMpDQogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIElmIChMTm90IChMR3JlYXRlciAoTG9jYWwzLCAweEZGKSkpDQogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIEFkZCAoTG9jYWwzLCBMb2NhbDIsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAg
ICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChMb2NhbDAp
DQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKEVD
ODYsIDEsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg
ICAgICAgICAgIFN0b3JlICgweEZGRkZGRkZGLCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAg
ICAgICBJZiAoTE5vdCAoTEdyZWF0ZXIgKEFyZzAsIDB4N0YpKSkNCiAgICAgICAgICAgICAgICAg
ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoRUM4NyAoMHgxMywg
T3IgKEFyZzAsIDB4ODApKSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAg
ICAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMTm90IChMR3JlYXRlciAoQXJnMCwgMHhGRikp
KQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgU3RvcmUgKEVDODcgKDB4MTQsIEFyZzApLCBMb2NhbDApDQogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAg
ICAgICAgICAgICAgICBSZXR1cm4gKExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQog
ICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoRUM4RiwgMiwgU2VyaWFsaXplZCkNCiAgICAgICAg
ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4RkZGRkZGRkYs
IExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMTm90IChMR3JlYXRlciAoQXJn
MCwgMHg3RikpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFN0b3JlIChFQzhBICgweDEzLCBPciAoQXJnMCwgMHg4MCksIEFyZzEpLCBMb2Nh
bDApDQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICBF
bHNlDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgSWYgKExOb3QgKExHcmVhdGVyIChBcmcwLCAweEZGKSkpDQogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoRUM4QSAo
MHgxNCwgQXJnMCwgQXJnMSksIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9
DQogICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIFJl
dHVybiAoTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAg
ICAgTWV0aG9kIChFQzg3LCAyLCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQog
ICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChFQ1NULCAweDAwKSkNCiAgICAgICAg
ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoQXJn
MCwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChBZGQgKFNoaWZ0
TGVmdCAoTG9jYWwwLCAweDA4KSwgQXJnMSksIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBTdG9yZSAoQWRkIChTaGlmdExlZnQgKExvY2FsMCwgMHgxMCksIDB4QkEpLCBMb2Nh
bDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFxfU0IuUFNSViAoMHhDMywg
TG9jYWwwLCAweDAwLCAweDAwLCAweDAzKSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIElmIChBbmQgKExvY2FsMCwgMHhGRikpDQogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4RkZGRkZGRkYp
DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFJldHVybiAoQW5kIChTaGlmdFJpZ2h0IChMb2NhbDAsIDB4MDgpLCAw
eEZGKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAg
ICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIEFjcXVpcmUgKEVDRVgsIDB4RkZGRikN
CiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweEZGRkZGRkZGLCBMb2NhbDApDQogICAg
ICAgICAgICAgICAgICAgICAgICBJZiAoTEFuZCAoTE5vdCAoTEdyZWF0ZXIgKEFyZzEsIDB4RkYp
KSwgTE5vdCAoTEdyZWF0ZXIgKEFyZzAsIDB4MTcpKSkpDQogICAgICAgICAgICAgICAgICAgICAg
ICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEFyZzEsIERBVDIpDQogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEFyZzAsIERBVDMpDQogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgU3RvcmUgKDB4QkEsIEVDQ1IpDQogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgU3RvcmUgKDB4QzgsIExvY2FsMSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBX
aGlsZSAoTEFuZCAoTE5vdCAoTEVxdWFsIChMb2NhbDEsIDB4MDApKSwgTE5vdCAoTEVxdWFsIChF
Q0NSLCAweDAwKSkpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgU3RhbGwgKDB4MTkpDQogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIERlY3JlbWVudCAoTG9jYWwxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAg
IH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKExvY2FsMSwgMHgw
MCkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBTdG9yZSAoMHhGRkZGRkZGRiwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9y
ZSAoREFUMSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAg
ICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgUmVsZWFzZSAoRUNF
WCkNCiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoTG9jYWwwKQ0KICAgICAgICAgICAg
ICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChFQzhCLCAyLCBTZXJpYWxp
emVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBTdG9y
ZSAoMHhGRkZGRkZGRiwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExOb3Qg
KExHcmVhdGVyIChBcmcwLCAweDdGKSkpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEVDOEEgKDB4MTMsIE9yIChBcmcwLCAweDgw
KSwgQXJnMSksIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAg
ICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBJZiAoTE5vdCAoTEdyZWF0ZXIgKEFyZzAsIDB4RkYpKSkNCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFN0b3JlIChFQzhBICgweDE0LCBBcmcwLCBBcmcxKSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAg
ICAgICAgICAgICAgUmV0dXJuIChMb2NhbDApDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAg
ICAgICAgICAgICAgICAgICBNZXRob2QgKEVDOEEsIDMsIFNlcmlhbGl6ZWQpDQogICAgICAgICAg
ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKEVDU1QsIDB4
MDApKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFN0b3JlIChBcmcwLCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3Rv
cmUgKEFkZCAoU2hpZnRMZWZ0IChMb2NhbDAsIDB4MDgpLCBBcmcxKSwgTG9jYWwwKQ0KICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChBZGQgKFNoaWZ0TGVmdCAoTG9jYWwwLCAweDA4
KSwgQXJnMiksIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoQWRk
IChTaGlmdExlZnQgKExvY2FsMCwgMHgwOCksIDB4QkIpLCBMb2NhbDApDQogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgU3RvcmUgKFxfU0IuUFNSViAoMHhDMywgTG9jYWwwLCAweDAwLCAweDAw
LCAweDAzKSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChBbmQgKExv
Y2FsMCwgMHhGRikpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4RkZGRkZGRkYpDQogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJl
dHVybiAoMHgwMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAg
ICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIEFjcXVpcmUgKEVDRVgsIDB4
RkZGRikNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweEZGRkZGRkZGLCBMb2NhbDAp
DQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEFuZCAoTE5vdCAoTEdyZWF0ZXIgKEFyZzEs
IDB4RkYpKSwgTE5vdCAoTEdyZWF0ZXIgKEFyZzAsIDB4MTcpKSkpDQogICAgICAgICAgICAgICAg
ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEFyZzIsIERBVDEp
DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEFyZzEsIERBVDIpDQogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEFyZzAsIERBVDMpDQogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgU3RvcmUgKDB4QkIsIEVDQ1IpDQogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgU3RvcmUgKDB4QzgsIExvY2FsMSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBXaGls
ZSAoTEFuZCAoTE5vdCAoTEVxdWFsIChMb2NhbDEsIDB4MDApKSwgTE5vdCAoTEVxdWFsIChFQ0NS
LCAweDAwKSkpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgU3RhbGwgKDB4MTkpDQogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIERlY3JlbWVudCAoTG9jYWwxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0N
Cg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKExvY2FsMSwgMHgwMCkp
DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBTdG9yZSAoMHhGRkZGRkZGRiwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAo
MHgwMCwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAg
ICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgUmVsZWFzZSAoRUNFWCkN
CiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoTG9jYWwwKQ0KICAgICAgICAgICAgICAg
ICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChFQzhFLCAxLCBTZXJpYWxpemVk
KQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBBbmQgKEFy
ZzAsIDB4RkYsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoXF9TQi5Q
U1JWICgweDk4LCBMb2NhbDAsIDB4MDAsIDB4MDAsIDB4MDEpKQ0KICAgICAgICAgICAgICAgICAg
ICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChFQzg4LCAxLCBTZXJpYWxpemVkKQ0K
ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEdyZWF0
ZXIgKEFyZzAsIDB4RkYpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFN0b3JlICgweEZGRkZGRkZGLCBMb2NhbDApDQogICAgICAgICAgICAg
ICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAg
ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkIChBcmcwLCAweDEx
LCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoQW5kIChB
cmcwLCAweDgwKSwgMHgwMCkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBBZGQgKExvY2FsMCwgMHgwMTAwLCBMb2NhbDApDQog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgTXVsdGlwbHkgKExvY2FsMCwgMHgwQSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAg
ICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKExvY2FsMCkNCiAgICAgICAg
ICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoRUM4QywgMiwgU2Vy
aWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAg
TmFtZSAoQlVGLCBCdWZmZXIgKDB4MTApIHt9KQ0KICAgICAgICAgICAgICAgICAgICAgICAgU3Rv
cmUgKDB4MDAsIEJVRikNCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMT3IgKExMZXNzIChB
cmcxLCAweDAxKSwgTEdyZWF0ZXIgKEFyZzEsIDB4MTApKSkNCiAgICAgICAgICAgICAgICAgICAg
ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKEJVRikNCiAgICAgICAg
ICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEFyZzAs
IExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAwLCBMb2NhbDEpDQog
ICAgICAgICAgICAgICAgICAgICAgICBXaGlsZSAoTExlc3MgKExvY2FsMSwgQXJnMSkpDQogICAg
ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgRGl2aWRl
IChMb2NhbDAsIDB4MEEsIExvY2FsMiwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFN1YnRyYWN0IChBcmcxLCBMb2NhbDEsIExvY2FsMykNCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBEZWNyZW1lbnQgKExvY2FsMykNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBB
ZGQgKExvY2FsMiwgMHgzMCwgSW5kZXggKEJVRiwgTG9jYWwzKSkNCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBJbmNyZW1lbnQgKExvY2FsMSkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0N
Cg0KICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChCVUYpDQogICAgICAgICAgICAgICAg
ICAgIH0NCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBEZXZpY2UgKEsxMDEp
DQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBOYW1lIChfSElELCBFaXNh
SWQgKCJQTlAwMzAzIikpDQogICAgICAgICAgICAgICAgICAgIE5hbWUgKF9DUlMsIFJlc291cmNl
VGVtcGxhdGUgKCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAg
ICAgSU8gKERlY29kZTE2LCAweDAwNjAsIDB4MDA2MCwgMHgwMSwgMHgwMSkNCiAgICAgICAgICAg
ICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDY0LCAweDAwNjQsIDB4MDEsIDB4MDEpDQog
ICAgICAgICAgICAgICAgICAgICAgICBJUlFOb0ZsYWdzICgpIHsxfQ0KICAgICAgICAgICAgICAg
ICAgICB9KQ0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9TVEEsIDAsIE5vdFNlcmlhbGl6
ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChM
Tm90IChMRXF1YWwgKFxfU0IuUFNSViAoMHg5NywgMHgwNTAwMDAwMCwgMHgwMSwgMHg1MDAwLCAw
eDAzKSwgMHgwMSkpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFJldHVybiAoMHgwRikNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAg
ICAgICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MDApDQogICAgICAgICAgICAgICAg
ICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB9DQoNCiAg
ICAgICAgICAgICAgICBEZXZpY2UgKEsxMDYpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAg
ICAgICAgICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJQTlAwMzIwIikpDQogICAgICAgICAgICAg
ICAgICAgIE5hbWUgKF9DSUQsIDB4MDMwM0QwNDEpDQogICAgICAgICAgICAgICAgICAgIE5hbWUg
KF9DUlMsIFJlc291cmNlVGVtcGxhdGUgKCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAg
ICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDAwNjAsIDB4MDA2MCwgMHgwMSwgMHgw
MSkNCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDY0LCAweDAwNjQs
IDB4MDEsIDB4MDEpDQogICAgICAgICAgICAgICAgICAgICAgICBJUlFOb0ZsYWdzICgpIHsxfQ0K
ICAgICAgICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9TVEEs
IDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg
ICAgICAgICAgIElmIChMRXF1YWwgKFxfU0IuUFNSViAoMHg5NywgMHgwNTAwMDAwMCwgMHgwMSwg
MHg1MDAwLCAweDAzKSwgMHgwMSkpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDBGKQ0KICAgICAgICAgICAgICAgICAgICAg
ICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAg
ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwMCkNCiAgICAgICAg
ICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAg
IH0NCg0KICAgICAgICAgICAgICAgIERldmljZSAoTU9VUykNCiAgICAgICAgICAgICAgICB7DQog
ICAgICAgICAgICAgICAgICAgIE5hbWUgKF9ISUQsIEVpc2FJZCAoIlBOUDBGMTMiKSkNCiAgICAg
ICAgICAgICAgICAgICAgTmFtZSAoX0NSUywgUmVzb3VyY2VUZW1wbGF0ZSAoKQ0KICAgICAgICAg
ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBJUlFOb0ZsYWdzICgpIHsxMn0N
CiAgICAgICAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfU1RB
LCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg
ICAgICAgICAgICBTdG9yZSAoXF9TQi5QU1JWICgweDk3LCAweDA2MDAwMDAwLCAweDAxLCAweDYw
MDAsIDB4MDEpLCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChM
b2NhbDAsIDB4MDEpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFJldHVybiAoMHgwMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAg
ICAgICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MEYpDQogICAgICAgICAgICAgICAg
ICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIE9wZXJhdGlvblJlZ2lvbiAoQkRB
LCBTeXN0ZW1NZW1vcnksIDB4MDQwMCwgMHgwMTAwKQ0KICAgICAgICAgICAgICAgICAgICAgICAg
RmllbGQgKEJEQSwgQnl0ZUFjYywgTm9Mb2NrLCBQcmVzZXJ2ZSkNCiAgICAgICAgICAgICAgICAg
ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4MTApLCANCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLCAgIDIsIA0KICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIE1GTEcsICAgMQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAg
ICAgICAgICAgICAgICAgICBJZiAoTUZMRykNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MEYpDQogICAgICAgICAgICAgICAg
ICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAg
ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDAwKQ0KICAg
ICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAg
ICAgICAgfQ0KDQogICAgICAgICAgICAgICAgRGV2aWNlIChNT1UzKQ0KICAgICAgICAgICAgICAg
IHsNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgiU1lOMDAwMiIpKQ0K
ICAgICAgICAgICAgICAgICAgICBOYW1lIChfQ0lELCAweDEzMEZEMDQxKQ0KICAgICAgICAgICAg
ICAgICAgICBOYW1lIChfQ1JTLCBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAgICAgICAgICAg
ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElSUU5vRmxhZ3MgKCkgezEyfQ0KICAgICAg
ICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9TVEEsIDAsIE5v
dFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg
ICAgIFN0b3JlIChcX1NCLlBTUlYgKDB4OTcsIDB4MDYwMDAwMDAsIDB4MDEsIDB4NjAwMCwgMHgw
MSksIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKExvY2FsMCwg
MHgwMSkpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgUmV0dXJuICgweDBGKQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAg
ICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwMCkNCiAgICAgICAgICAgICAgICAgICAgICAg
IH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgT3BlcmF0aW9uUmVnaW9uIChCREEsIFN5c3Rl
bU1lbW9yeSwgMHgwNDAwLCAweDAxMDApDQogICAgICAgICAgICAgICAgICAgICAgICBGaWVsZCAo
QkRBLCBCeXRlQWNjLCBOb0xvY2ssIFByZXNlcnZlKQ0KICAgICAgICAgICAgICAgICAgICAgICAg
ew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9mZnNldCAoMHgxMCksIA0KICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAsICAgMiwgDQogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgTUZMRywgICAxDQogICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAg
ICAgICAgICAgIElmIChNRkxHKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwRikNCiAgICAgICAgICAgICAgICAgICAgICAg
IH0NCiAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAg
IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MDApDQogICAgICAgICAg
ICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB9
DQoNCiAgICAgICAgICAgICAgICBEZXZpY2UgKExOS0EpDQogICAgICAgICAgICAgICAgew0KICAg
ICAgICAgICAgICAgICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJQTlAwQzBGIikpDQogICAgICAg
ICAgICAgICAgICAgIE5hbWUgKF9VSUQsIDB4MDEpDQogICAgICAgICAgICAgICAgICAgIE1ldGhv
ZCAoX0RJUywgMCwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAg
ICAgICAgICAgICAgICAgU3RvcmUgKDB4ODAsIFBBUkMpDQogICAgICAgICAgICAgICAgICAgIH0N
Cg0KICAgICAgICAgICAgICAgICAgICBOYW1lIChfUFJTLCBSZXNvdXJjZVRlbXBsYXRlICgpDQog
ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElSUSAoTGV2ZWws
IEFjdGl2ZUxvdywgU2hhcmVkKSB7MTF9DQogICAgICAgICAgICAgICAgICAgIH0pDQogICAgICAg
ICAgICAgICAgICAgIE1ldGhvZCAoX0NSUywgMCwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgICAg
ICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgTmFtZSAoUlRMQSwgUmVzb3VyY2VUZW1w
bGF0ZSAoKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIElSUSAoTGV2ZWwsIEFjdGl2ZUxvdywgU2hhcmVkKSB7fQ0KICAgICAgICAgICAgICAg
ICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoUlRM
QSwgMHgwMSwgSVJRMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChaZXJvLCBJUlEw
KQ0KICAgICAgICAgICAgICAgICAgICAgICAgU2hpZnRMZWZ0ICgweDAxLCBBbmQgKFBBUkMsIDB4
MEYpLCBJUlEwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChSVExBKQ0KICAgICAg
ICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfU1JTLCAxLCBT
ZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg
ICBDcmVhdGVXb3JkRmllbGQgKEFyZzAsIDB4MDEsIElSUTApDQogICAgICAgICAgICAgICAgICAg
ICAgICBGaW5kU2V0UmlnaHRCaXQgKElSUTAsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAg
ICAgIERlY3JlbWVudCAoTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKExv
Y2FsMCwgUEFSQykNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAg
IE1ldGhvZCAoX1NUQSwgMCwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAg
ICAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoUEFSQywgMHg4MCkpDQogICAgICAgICAgICAg
ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDA5KQ0K
ICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQ0K
ICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJl
dHVybiAoMHgwQikNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAg
ICAgfQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIERldmljZSAoTE5LQikN
CiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIE5hbWUgKF9ISUQsIEVpc2FJ
ZCAoIlBOUDBDMEYiKSkNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX1VJRCwgMHgwMikNCiAg
ICAgICAgICAgICAgICAgICAgTWV0aG9kIChfRElTLCAwLCBTZXJpYWxpemVkKQ0KICAgICAgICAg
ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHg4MCwgUEJSQykN
CiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIE5hbWUgKF9QUlMs
IFJlc291cmNlVGVtcGxhdGUgKCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg
ICAgICAgICAgICAgSVJRIChMZXZlbCwgQWN0aXZlTG93LCBTaGFyZWQpIHs5fQ0KICAgICAgICAg
ICAgICAgICAgICB9KQ0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9DUlMsIDAsIFNlcmlh
bGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIE5h
bWUgKFJUTEIsIFJlc291cmNlVGVtcGxhdGUgKCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsN
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJUlEgKExldmVsLCBBY3RpdmVMb3csIFNoYXJl
ZCkge30NCiAgICAgICAgICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAgICAgICAgICAgICAg
ICBDcmVhdGVXb3JkRmllbGQgKFJUTEIsIDB4MDEsIElSUTApDQogICAgICAgICAgICAgICAgICAg
ICAgICBTdG9yZSAoWmVybywgSVJRMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIFNoaWZ0TGVm
dCAoMHgwMSwgQW5kIChQQlJDLCAweDBGKSwgSVJRMCkNCiAgICAgICAgICAgICAgICAgICAgICAg
IFJldHVybiAoUlRMQikNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAg
ICAgIE1ldGhvZCAoX1NSUywgMSwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0K
ICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChBcmcwLCAweDAxLCBJUlEw
KQ0KICAgICAgICAgICAgICAgICAgICAgICAgRmluZFNldFJpZ2h0Qml0IChJUlEwLCBMb2NhbDAp
DQogICAgICAgICAgICAgICAgICAgICAgICBEZWNyZW1lbnQgKExvY2FsMCkNCiAgICAgICAgICAg
ICAgICAgICAgICAgIFN0b3JlIChMb2NhbDAsIFBCUkMpDQogICAgICAgICAgICAgICAgICAgIH0N
Cg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9TVEEsIDAsIFNlcmlhbGl6ZWQpDQogICAg
ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChBbmQgKFBCUkMs
IDB4ODApKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFJldHVybiAoMHgwOSkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAg
ICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MEIpDQogICAgICAgICAgICAgICAgICAgICAg
ICB9DQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAg
ICAgICAgICBEZXZpY2UgKExOS0MpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg
ICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJQTlAwQzBGIikpDQogICAgICAgICAgICAgICAgICAg
IE5hbWUgKF9VSUQsIDB4MDMpDQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0RJUywgMCwg
U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAg
ICAgU3RvcmUgKDB4ODAsIFBDUkMpDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAg
ICAgICAgICAgICBOYW1lIChfUFJTLCBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAgICAgICAg
ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElSUSAoTGV2ZWwsIEFjdGl2ZUxvdywg
U2hhcmVkKSB7OX0NCiAgICAgICAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICAgICAg
TWV0aG9kIChfQ1JTLCAwLCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAg
ICAgICAgICAgICAgICAgICAgICBOYW1lIChSVExDLCBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAg
ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSVJRIChM
ZXZlbCwgQWN0aXZlTG93LCBTaGFyZWQpIHt9DQogICAgICAgICAgICAgICAgICAgICAgICB9KQ0K
ICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChSVExDLCAweDAxLCBJUlEw
KQ0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFplcm8sIElSUTApDQogICAgICAgICAg
ICAgICAgICAgICAgICBTaGlmdExlZnQgKDB4MDEsIEFuZCAoUENSQywgMHgwRiksIElSUTApDQog
ICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKFJUTEMpDQogICAgICAgICAgICAgICAgICAg
IH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9TUlMsIDEsIFNlcmlhbGl6ZWQpDQog
ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRG
aWVsZCAoQXJnMCwgMHgwMSwgSVJRMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIEZpbmRTZXRS
aWdodEJpdCAoSVJRMCwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgRGVjcmVtZW50
IChMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoTG9jYWwwLCBQQ1JDKQ0K
ICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfU1RB
LCAwLCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg
ICAgICAgICBJZiAoQW5kIChQQ1JDLCAweDgwKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsN
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MDkpDQogICAgICAgICAgICAg
ICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAg
ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDBCKQ0K
ICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAg
ICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgRGV2aWNlIChMTktEKQ0KICAgICAgICAgICAg
ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMEMwRiIp
KQ0KICAgICAgICAgICAgICAgICAgICBOYW1lIChfVUlELCAweDA0KQ0KICAgICAgICAgICAgICAg
ICAgICBNZXRob2QgKF9ESVMsIDAsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsN
CiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDgwLCBQRFJDKQ0KICAgICAgICAgICAg
ICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX1BSUywgUmVzb3VyY2VUZW1w
bGF0ZSAoKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBJ
UlEgKExldmVsLCBBY3RpdmVMb3csIFNoYXJlZCkgezd9DQogICAgICAgICAgICAgICAgICAgIH0p
DQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0NSUywgMCwgU2VyaWFsaXplZCkNCiAgICAg
ICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgTmFtZSAoUlRMRCwgUmVz
b3VyY2VUZW1wbGF0ZSAoKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIElSUSAoTGV2ZWwsIEFjdGl2ZUxvdywgU2hhcmVkKSB7fQ0KICAgICAg
ICAgICAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRG
aWVsZCAoUlRMRCwgMHgwMSwgSVJRMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICha
ZXJvLCBJUlEwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgU2hpZnRMZWZ0ICgweDAxLCBBbmQg
KFBEUkMsIDB4MEYpLCBJUlEwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChSVExE
KQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChf
U1JTLCAxLCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg
ICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKEFyZzAsIDB4MDEsIElSUTApDQogICAgICAgICAg
ICAgICAgICAgICAgICBGaW5kU2V0UmlnaHRCaXQgKElSUTAsIExvY2FsMCkNCiAgICAgICAgICAg
ICAgICAgICAgICAgIERlY3JlbWVudCAoTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAg
U3RvcmUgKExvY2FsMCwgUERSQykNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAg
ICAgICAgICAgIE1ldGhvZCAoX1NUQSwgMCwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAg
ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoUERSQywgMHg4MCkpDQogICAg
ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJu
ICgweDA5KQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAg
ICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFJldHVybiAoMHgwQikNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAg
ICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIERldmlj
ZSAoTE5LRSkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIE5hbWUgKF9I
SUQsIEVpc2FJZCAoIlBOUDBDMEYiKSkNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX1VJRCwg
MHgwNSkNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfRElTLCAwLCBTZXJpYWxpemVkKQ0K
ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHg4
MCwgUEVSQykNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIE5h
bWUgKF9QUlMsIFJlc291cmNlVGVtcGxhdGUgKCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAg
ICAgICAgICAgICAgICAgICAgICAgSVJRIChMZXZlbCwgQWN0aXZlTG93LCBTaGFyZWQpIHszfQ0K
ICAgICAgICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9DUlMs
IDAsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg
ICAgICAgIE5hbWUgKFJUTEUsIFJlc291cmNlVGVtcGxhdGUgKCkNCiAgICAgICAgICAgICAgICAg
ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJUlEgKExldmVsLCBBY3RpdmVM
b3csIFNoYXJlZCkge30NCiAgICAgICAgICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAgICAg
ICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKFJUTEUsIDB4MDEsIElSUTApDQogICAgICAgICAg
ICAgICAgICAgICAgICBTdG9yZSAoWmVybywgSVJRMCkNCiAgICAgICAgICAgICAgICAgICAgICAg
IFNoaWZ0TGVmdCAoMHgwMSwgQW5kIChQRVJDLCAweDBGKSwgSVJRMCkNCiAgICAgICAgICAgICAg
ICAgICAgICAgIFJldHVybiAoUlRMRSkNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAg
ICAgICAgICAgICAgIE1ldGhvZCAoX1NSUywgMSwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgICAg
ICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChBcmcwLCAw
eDAxLCBJUlEwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgRmluZFNldFJpZ2h0Qml0IChJUlEw
LCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICBEZWNyZW1lbnQgKExvY2FsMCkNCiAg
ICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChMb2NhbDAsIFBFUkMpDQogICAgICAgICAgICAg
ICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9TVEEsIDAsIFNlcmlhbGl6
ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChB
bmQgKFBFUkMsIDB4ODApKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFJldHVybiAoMHgwOSkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0N
CiAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgIHsN
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MEIpDQogICAgICAgICAgICAg
ICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB9DQoN
CiAgICAgICAgICAgICAgICBEZXZpY2UgKExOS0YpDQogICAgICAgICAgICAgICAgew0KICAgICAg
ICAgICAgICAgICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJQTlAwQzBGIikpDQogICAgICAgICAg
ICAgICAgICAgIE5hbWUgKF9VSUQsIDB4MDYpDQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAo
X0RJUywgMCwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg
ICAgICAgICAgICAgU3RvcmUgKDB4ODAsIFBGUkMpDQogICAgICAgICAgICAgICAgICAgIH0NCg0K
ICAgICAgICAgICAgICAgICAgICBOYW1lIChfUFJTLCBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAg
ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElSUSAoTGV2ZWwsIEFj
dGl2ZUxvdywgU2hhcmVkKSB7NX0NCiAgICAgICAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAg
ICAgICAgICAgTWV0aG9kIChfQ1JTLCAwLCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAg
ICB7DQogICAgICAgICAgICAgICAgICAgICAgICBOYW1lIChSVExGLCBSZXNvdXJjZVRlbXBsYXRl
ICgpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgSVJRIChMZXZlbCwgQWN0aXZlTG93LCBTaGFyZWQpIHt9DQogICAgICAgICAgICAgICAgICAg
ICAgICB9KQ0KICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChSVExGLCAw
eDAxLCBJUlEwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFplcm8sIElSUTApDQog
ICAgICAgICAgICAgICAgICAgICAgICBTaGlmdExlZnQgKDB4MDEsIEFuZCAoUEZSQywgMHgwRiks
IElSUTApDQogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKFJUTEYpDQogICAgICAgICAg
ICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9TUlMsIDEsIFNlcmlh
bGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIENy
ZWF0ZVdvcmRGaWVsZCAoQXJnMCwgMHgwMSwgSVJRMCkNCiAgICAgICAgICAgICAgICAgICAgICAg
IEZpbmRTZXRSaWdodEJpdCAoSVJRMCwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAg
RGVjcmVtZW50IChMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoTG9jYWww
LCBQRlJDKQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0
aG9kIChfU1RBLCAwLCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg
ICAgICAgICAgICAgICAgICBJZiAoQW5kIChQRlJDLCAweDgwKSkNCiAgICAgICAgICAgICAgICAg
ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MDkpDQogICAg
ICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAg
ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJu
ICgweDBCKQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICB9
DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgRGV2aWNlIChMTktHKQ0KICAg
ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgi
UE5QMEMwRiIpKQ0KICAgICAgICAgICAgICAgICAgICBOYW1lIChfVUlELCAweDA3KQ0KICAgICAg
ICAgICAgICAgICAgICBNZXRob2QgKF9ESVMsIDAsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAg
ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDgwLCBQR1JDKQ0KICAg
ICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX1BSUywgUmVz
b3VyY2VUZW1wbGF0ZSAoKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg
ICAgICAgICBJUlEgKExldmVsLCBBY3RpdmVMb3csIFNoYXJlZCkgezN9DQogICAgICAgICAgICAg
ICAgICAgIH0pDQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0NSUywgMCwgU2VyaWFsaXpl
ZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgTmFtZSAo
UlRMRywgUmVzb3VyY2VUZW1wbGF0ZSAoKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIElSUSAoTGV2ZWwsIEFjdGl2ZUxvdywgU2hhcmVkKSB7
fQ0KICAgICAgICAgICAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICAgICAgICAgIENy
ZWF0ZVdvcmRGaWVsZCAoUlRMRywgMHgwMSwgSVJRMCkNCiAgICAgICAgICAgICAgICAgICAgICAg
IFN0b3JlIChaZXJvLCBJUlEwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgU2hpZnRMZWZ0ICgw
eDAxLCBBbmQgKFBHUkMsIDB4MEYpLCBJUlEwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgUmV0
dXJuIChSVExHKQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAg
TWV0aG9kIChfU1JTLCAxLCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAg
ICAgICAgICAgICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKEFyZzAsIDB4MDEsIElSUTApDQog
ICAgICAgICAgICAgICAgICAgICAgICBGaW5kU2V0UmlnaHRCaXQgKElSUTAsIExvY2FsMCkNCiAg
ICAgICAgICAgICAgICAgICAgICAgIERlY3JlbWVudCAoTG9jYWwwKQ0KICAgICAgICAgICAgICAg
ICAgICAgICAgU3RvcmUgKExvY2FsMCwgUEdSQykNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQog
ICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1NUQSwgMCwgU2VyaWFsaXplZCkNCiAgICAgICAg
ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoUEdSQywgMHg4
MCkpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgUmV0dXJuICgweDA5KQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAg
ICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFJldHVybiAoMHgwQikNCiAgICAgICAgICAgICAgICAgICAgICAgIH0N
CiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAg
ICAgIERldmljZSAoTE5LSCkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg
IE5hbWUgKF9ISUQsIEVpc2FJZCAoIlBOUDBDMEYiKSkNCiAgICAgICAgICAgICAgICAgICAgTmFt
ZSAoX1VJRCwgMHgwOCkNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfRElTLCAwLCBTZXJp
YWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBT
dG9yZSAoMHg4MCwgUEhSQykNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAg
ICAgICAgIE5hbWUgKF9QUlMsIFJlc291cmNlVGVtcGxhdGUgKCkNCiAgICAgICAgICAgICAgICAg
ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgSVJRIChMZXZlbCwgQWN0aXZlTG93LCBTaGFy
ZWQpIHsxMH0NCiAgICAgICAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICAgICAgTWV0
aG9kIChfQ1JTLCAwLCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg
ICAgICAgICAgICAgICAgICBOYW1lIChSVExILCBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAg
ICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSVJRIChMZXZl
bCwgQWN0aXZlTG93LCBTaGFyZWQpIHt9DQogICAgICAgICAgICAgICAgICAgICAgICB9KQ0KICAg
ICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChSVExILCAweDAxLCBJUlEwKQ0K
ICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFplcm8sIElSUTApDQogICAgICAgICAgICAg
ICAgICAgICAgICBTaGlmdExlZnQgKDB4MDEsIEFuZCAoUEhSQywgMHgwRiksIElSUTApDQogICAg
ICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKFJUTEgpDQogICAgICAgICAgICAgICAgICAgIH0N
Cg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9TUlMsIDEsIFNlcmlhbGl6ZWQpDQogICAg
ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVs
ZCAoQXJnMCwgMHgwMSwgSVJRMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIEZpbmRTZXRSaWdo
dEJpdCAoSVJRMCwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgRGVjcmVtZW50IChM
b2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoTG9jYWwwLCBQSFJDKQ0KICAg
ICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfU1RBLCAw
LCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg
ICAgICBJZiAoQW5kIChQSFJDLCAweDgwKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MDkpDQogICAgICAgICAgICAgICAg
ICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAg
ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDBCKQ0KICAg
ICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAg
ICAgICAgfQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBEZXZpY2UgKFBBVEEpDQogICAg
ICAgICAgICB7DQogICAgICAgICAgICAgICAgTmFtZSAoX0FEUiwgMHgwMDFGMDAwMSkNCiAgICAg
ICAgICAgICAgICBPcGVyYXRpb25SZWdpb24gKFBBQ1MsIFBDSV9Db25maWcsIDB4NDAsIDB4QzAp
DQogICAgICAgICAgICAgICAgRmllbGQgKFBBQ1MsIERXb3JkQWNjLCBOb0xvY2ssIFByZXNlcnZl
KQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgUFJJVCwgICAxNiwgDQog
ICAgICAgICAgICAgICAgICAgIE9mZnNldCAoMHgwNCksIA0KICAgICAgICAgICAgICAgICAgICBQ
U0lULCAgIDQsIA0KICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4MDgpLCANCiAgICAgICAg
ICAgICAgICAgICAgU1lOQywgICA0LCANCiAgICAgICAgICAgICAgICAgICAgT2Zmc2V0ICgweDBB
KSwgDQogICAgICAgICAgICAgICAgICAgIFNEVDAsICAgMiwgDQogICAgICAgICAgICAgICAgICAg
ICAgICAsICAgMiwgDQogICAgICAgICAgICAgICAgICAgIFNEVDEsICAgMiwgDQogICAgICAgICAg
ICAgICAgICAgIE9mZnNldCAoMHgxNCksIA0KICAgICAgICAgICAgICAgICAgICBJQ1IwLCAgIDQs
IA0KICAgICAgICAgICAgICAgICAgICBJQ1IxLCAgIDQsIA0KICAgICAgICAgICAgICAgICAgICBJ
Q1IyLCAgIDQsIA0KICAgICAgICAgICAgICAgICAgICBJQ1IzLCAgIDQsIA0KICAgICAgICAgICAg
ICAgICAgICBJQ1I0LCAgIDQsIA0KICAgICAgICAgICAgICAgICAgICBJQ1I1LCAgIDQNCiAgICAg
ICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBEZXZpY2UgKFBSSUQpDQogICAgICAgICAg
ICAgICAgew0KICAgICAgICAgICAgICAgICAgICBOYW1lIChfQURSLCAweDAwKQ0KICAgICAgICAg
ICAgICAgICAgICBOYW1lIChOQ00wLCAweDAzKQ0KICAgICAgICAgICAgICAgICAgICBOYW1lIChO
Q00xLCAweDAzKQ0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9HVE0sIDAsIE5vdFNlcmlh
bGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIE5h
bWUgKFBCVUYsIEJ1ZmZlciAoMHgxNCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAw
LCAweDAwLCAweDAwLCANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAweDAwLCAw
eDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCANCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAweDAwLCAweDAwLCAweDAwLCAweDAwDQogICAgICAgICAgICAgICAgICAgICAgICB9
KQ0KICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoUEJVRiwgMHgwMCwg
UElPMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKFBCVUYsIDB4
MDQsIERNQTApDQogICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChQQlVG
LCAweDA4LCBQSU8xKQ0KICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAo
UEJVRiwgMHgwQywgRE1BMSkNCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmll
bGQgKFBCVUYsIDB4MTAsIEZMQUcpDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoR0VU
UCAoUFJJVCksIFBJTzApDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoR0RNQSAoQW5k
IChTWU5DLCAweDAxKSwgQW5kIChJQ1IzLCAweDAxKSwgQW5kIChJQ1IwLCAweDAxKSwgU0RUMCwg
QW5kIChJQ1IxLCAweDAxKSksIERNQTApDQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVx
dWFsIChETUEwLCAweEZGRkZGRkZGKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoUElPMCwgRE1BMCkNCiAgICAgICAgICAgICAg
ICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoUFJJVCwgMHg0
MDAwKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBJZiAoTEVxdWFsIChBbmQgKFBSSVQsIDB4OTApLCAweDgwKSkNCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgw
eDAzODQsIFBJTzEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChHRVRUIChQU0lUKSwgUElPMSkNCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICB9DQog
ICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAgICB7DQog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4RkZGRkZGRkYsIFBJTzEpDQogICAg
ICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChH
RE1BIChBbmQgKFNZTkMsIDB4MDIpLCBBbmQgKElDUjMsIDB4MDIpLCBBbmQgKElDUjAsIDB4MDIp
LCBTRFQxLCBBbmQgKElDUjEsIDB4MDIpKSwgRE1BMSkNCiAgICAgICAgICAgICAgICAgICAgICAg
IElmIChMRXF1YWwgKERNQTEsIDB4RkZGRkZGRkYpKQ0KICAgICAgICAgICAgICAgICAgICAgICAg
ew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChQSU8xLCBETUExKQ0KICAgICAg
ICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoR0VU
RiAoQW5kIChTWU5DLCAweDAxKSwgQW5kIChTWU5DLCAweDAyKSwgUFJJVCksIEZMQUcpDQogICAg
ICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChMRXF1YWwgKFBJTzAsIDB4RkZGRkZGRkYpLCBM
RXF1YWwgKERNQTAsIDB4RkZGRkZGRkYpKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHg3OCwgUElPMCkNCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBTdG9yZSAoMHgxNCwgRE1BMCkNCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBTdG9yZSAoMHgwMywgRkxBRykNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0K
ICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChQQlVGKQ0KICAgICAgICAgICAgICAgICAg
ICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfU1RNLCAzLCBOb3RTZXJpYWxpemVk
KQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVE
V29yZEZpZWxkIChBcmcwLCAweDAwLCBQSU8wKQ0KICAgICAgICAgICAgICAgICAgICAgICAgQ3Jl
YXRlRFdvcmRGaWVsZCAoQXJnMCwgMHgwNCwgRE1BMCkNCiAgICAgICAgICAgICAgICAgICAgICAg
IENyZWF0ZURXb3JkRmllbGQgKEFyZzAsIDB4MDgsIFBJTzEpDQogICAgICAgICAgICAgICAgICAg
ICAgICBDcmVhdGVEV29yZEZpZWxkIChBcmcwLCAweDBDLCBETUExKQ0KICAgICAgICAgICAgICAg
ICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQXJnMCwgMHgxMCwgRkxBRykNCiAgICAgICAgICAg
ICAgICAgICAgICAgIElmIChMRXF1YWwgKFNpemVPZiAoQXJnMSksIDB4MDIwMCkpDQogICAgICAg
ICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQW5kIChQUklU
LCAweDQwRjAsIFBSSVQpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQW5kIChTWU5DLCAw
eDAyLCBTWU5DKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAwLCBTRFQw
KQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFuZCAoSUNSMCwgMHgwMiwgSUNSMCkNCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBBbmQgKElDUjEsIDB4MDIsIElDUjEpDQogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgQW5kIChJQ1IzLCAweDAyLCBJQ1IzKQ0KICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIEFuZCAoSUNSNSwgMHgwMiwgSUNSNSkNCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKEFyZzEsIDB4NjIsIFc0OTApDQogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChBcmcxLCAweDZBLCBXNTMwKQ0KICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoQXJnMSwgMHg3RSwgVzYz
MCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKEFyZzEsIDB4
ODAsIFc2NDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChB
cmcxLCAweEIwLCBXODgwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRG
aWVsZCAoQXJnMSwgMHhCQSwgVzkzMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDcmVh
dGVXb3JkRmllbGQgKEFyZzEsIDB4QUMsIFc4NjApDQogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgT3IgKFBSSVQsIDB4ODAwNCwgUFJJVCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJ
ZiAoTEFuZCAoQW5kIChGTEFHLCAweDAyKSwgQW5kIChXNDkwLCAweDA4MDApKSkNCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9y
IChQUklULCAweDAyLCBQUklUKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIE9yIChQUklULCBTRVRQIChQSU8wLCBXNTMwLCBXNjQw
KSwgUFJJVCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChGTEFHLCAweDAx
KSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIE9yIChTWU5DLCAweDAxLCBTWU5DKQ0KICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBTdG9yZSAoU0RNQSAoRE1BMCksIFNEVDApDQogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIElmIChMTGVzcyAoRE1BMCwgMHgxRSkpDQogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9yIChJQ1Iz
LCAweDAxLCBJQ1IzKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExMZXNzIChETUEwLCAweDNDKSkNCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgT3IgKElDUjAsIDB4MDEsIElDUjApDQogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChXOTMw
LCAweDIwMDApKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBPciAoSUNSMSwgMHgwMSwgSUNSMSkNCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0N
Cg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAzLCBOQ00wKQ0KICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIElmIChMTm90IChMTGVzcyAoU2l6ZU9mIChBcmcxKSwgMHgw
MTAyKSkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBJZiAoQW5kIChEZXJlZk9mIChJbmRleCAoQXJnMSwgMHgwMTAwKSksIE9u
ZSkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIE9yIChOQ00wLCAweDA0LCBOQ00wKQ0KICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFxfU0IuUFNSViAoMHg5NywgMHgwMzAwMDAw
MCwgMHgwMSwgMHgzMDAwLCAweDAzKSwgTG9jYWwzKQ0KICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIElmIChMb2NhbDMpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChXODYwLCAweDA0MDApKQ0KICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcX1NCLlBTUlYgKDB4OTcsIDB4MDMwMDAwMDAsIDB4MDEsIDB4MzEwMCwgMHgwMCkNCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9yIChOQ00wLCAweDA4LCBOQ00wKQ0KICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAg
fQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICBJ
ZiAoTEVxdWFsIChTaXplT2YgKEFyZzIpLCAweDAyMDApKQ0KICAgICAgICAgICAgICAgICAgICAg
ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFuZCAoUFJJVCwgMHgzRjBGLCBQUklU
KQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAwLCBQU0lUKQ0KICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIEFuZCAoU1lOQywgMHgwMSwgU1lOQykNCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMCwgU0RUMSkNCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBBbmQgKElDUjAsIDB4MDEsIElDUjApDQogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgQW5kIChJQ1IxLCAweDAxLCBJQ1IxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFu
ZCAoSUNSMywgMHgwMSwgSUNSMykNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbmQgKElD
UjUsIDB4MDEsIElDUjUpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZp
ZWxkIChBcmcyLCAweDYyLCBXNDkxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0
ZVdvcmRGaWVsZCAoQXJnMiwgMHg2QSwgVzUzMSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBDcmVhdGVXb3JkRmllbGQgKEFyZzIsIDB4N0UsIFc2MzEpDQogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChBcmcyLCAweDgwLCBXNjQxKQ0KICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoQXJnMiwgMHhCMCwgVzg4MSkNCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKEFyZzIsIDB4QkEsIFc5MzEp
DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgT3IgKFBSSVQsIDB4ODA0MCwgUFJJVCkNCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEFuZCAoQW5kIChGTEFHLCAweDA4KSwgQW5k
IChXNDkxLCAweDA4MDApKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIE9yIChQUklULCAweDIwLCBQUklUKQ0KICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChB
bmQgKEZMQUcsIDB4MTApKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgT3IgKFBSSVQsIDB4NDAwMCwgUFJJVCkNCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExHcmVhdGVyIChQSU8xLCAweEYwKSkNCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgT3IgKFBSSVQsIDB4ODAsIFBSSVQpDQogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBPciAoUFJJVCwgMHgxMCwgUFJJVCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIFN0b3JlIChTRVRUIChQSU8xLCBXNTMxLCBXNjQxKSwgUFNJVCkNCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0K
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChBbmQgKEZMQUcsIDB4MDQpKQ0KICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
T3IgKFNZTkMsIDB4MDIsIFNZTkMpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0
b3JlIChTRE1BIChETUExKSwgU0RUMSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
SWYgKExMZXNzIChETUExLCAweDFFKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT3IgKElDUjMsIDB4MDIsIElD
UjMpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBJZiAoTExlc3MgKERNQTEsIDB4M0MpKQ0KICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBP
ciAoSUNSMCwgMHgwMiwgSUNSMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0K
DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChBbmQgKFc5MzEsIDB4MjAwMCkp
DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIE9yIChJQ1IxLCAweDAyLCBJQ1IxKQ0KICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDMsIE5DTTEpDQogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgSWYgKExOb3QgKExMZXNzIChTaXplT2YgKEFyZzIpLCAweDAxMDIpKSkNCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIElmIChBbmQgKERlcmVmT2YgKEluZGV4IChBcmcyLCAweDAxMDApKSwgT25lKSkNCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgT3IgKE5DTTEsIDB4MDQsIE5DTTEpDQogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAg
ICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBE
ZXZpY2UgKFBfRDApDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg
ICAgIE5hbWUgKF9BRFIsIDB4MDApDQogICAgICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9H
VEYsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgTmFtZSAoUElCMCwgQnVmZmVyICgweDBFKQ0KICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgw
MywgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHhBMCwgMHhFRiwgMHgwMywgDQogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4QTAsIDB4RUYN
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIE5hbWUgKEZMSzAsIEJ1ZmZlciAoMHgwNykNCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsIDB4MDAsIDB4MDAsIDB4
MDAsIDB4MDAsIDB4QTAsIDB4RjUNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KQ0KICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIE5hbWUgKFNNWDAsIEJ1ZmZlciAoMHgwRSkNCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4MDAsIDB4RTAsIDB4RjgsIDB4MDAsIA0KICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweEUwLCAw
eEY5DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBDcmVhdGVCeXRlRmllbGQgKFBJQjAsIDB4MDEsIFBNRDApDQogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgQ3JlYXRlQnl0ZUZpZWxkIChQSUIwLCAweDA4LCBETUQwKQ0KICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKFNNWDAsIDB4MDksIE1YQTAp
DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoUFJJVCwgMHgwMikpDQogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBJZiAoTEVxdWFsIChBbmQgKFBSSVQsIDB4MDkpLCAweDA4KSkNCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3Rv
cmUgKDB4MDgsIFBNRDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgw
QSwgUE1EMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNoaWZ0UmlnaHQg
KEFuZCAoUFJJVCwgMHgwMzAwKSwgMHgwOCwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgU2hpZnRSaWdodCAoQW5kIChQUklULCAweDMwMDApLCAweDBDLCBMb2Nh
bDEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBZGQgKExvY2FsMCwgTG9j
YWwxLCBMb2NhbDIpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVx
dWFsICgweDAzLCBMb2NhbDIpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDBCLCBQ
TUQwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsICgweDA1LCBMb2NhbDIpKQ0KICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDBDLCBQTUQwKQ0KICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAg
IEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFN0b3JlICgweDAxLCBQTUQwKQ0KICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChBbmQgKFNZTkMsIDB4MDEp
KQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgU3RvcmUgKE9yIChTRFQwLCAweDQwKSwgRE1EMCkNCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgSWYgKEFuZCAoSUNSMSwgMHgwMSkpDQogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChB
bmQgKElDUjAsIDB4MDEpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0K
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFkZCAoRE1EMCwgMHgwMiwg
RE1EMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoSUNSMywgMHgwMSkpDQogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgU3RvcmUgKDB4NDUsIERNRDApDQogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxz
ZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgT3IgKFN1YnRyYWN0IChBbmQgKFBNRDAsIDB4MDcpLCAweDAyKSwgMHgyMCwgRE1E
MCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBJZiAoQW5kIChOQ00wLCAweDA4KSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChcX1NCLlBTUlYgKDB4
OTcsIDB4MDMwMDAwMDAsIDB4MDEsIDB4MzAwMCwgMHgwMyksIExvY2FsMykNCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgSWYgKExvY2FsMykNCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT3IgKExvY2Fs
MywgMHhFMDAwMDAwMCwgTG9jYWwzKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgU3RvcmUgKExvY2FsMywgTVhBMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIENvbmNhdGVuYXRlIChQSUIwLCBTTVgwLCBMb2NhbDQpDQogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBTdG9yZSAoUElCMCwgTG9jYWw0KQ0KICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChQSUIwLCBMb2NhbDQpDQogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFu
ZCAoTkNNMCwgMHgwNCkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICBDb25jYXRlbmF0ZSAoTG9jYWw0LCBGTEswLCBMb2NhbDAp
DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIFN0b3JlIChMb2NhbDQsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKExvY2Fs
MCkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgfQ0KDQog
ICAgICAgICAgICAgICAgICAgIERldmljZSAoUF9EMSkNCiAgICAgICAgICAgICAgICAgICAgew0K
ICAgICAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0FEUiwgMHgwMSkNCiAgICAgICAgICAgICAg
ICAgICAgICAgIE1ldGhvZCAoX0dURiwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAg
ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBOYW1lIChQSUIxLCBCdWZm
ZXIgKDB4MEUpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAweDAzLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweEIwLCAweEVG
LCAweDAzLCANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMCwgMHgwMCwgMHgw
MCwgMHgwMCwgMHhCMCwgMHhFRg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pDQogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgTmFtZSAoRkxLMSwgQnVmZmVyICgweDA3KQ0KICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
MHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHhCMCwgMHhGNQ0KICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIH0pDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlQnl0ZUZp
ZWxkIChQSUIxLCAweDAxLCBQTUQxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0
ZUJ5dGVGaWVsZCAoUElCMSwgMHgwOCwgRE1EMSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBJZiAoQW5kIChQUklULCAweDIwKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQog
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKEFuZCAoUFJJVCwgMHg5
MCksIDB4ODApKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwOCwgUE1EMSkNCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBF
bHNlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIEFkZCAoQW5kIChQU0lULCAweDAzKSwgU2hpZnRSaWdodCAoQW5k
IChQU0lULCAweDBDKSwgMHgwMiksIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIElmIChMRXF1YWwgKDB4MDUsIExvY2FsMCkpDQogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgU3RvcmUgKDB4MEMsIFBNRDEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgSWYgKExFcXVhbCAoMHgwMywgTG9jYWwwKSkNCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIFN0b3JlICgweDBCLCBQTUQxKQ0KICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwQSwgUE1EMSkN
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAg
ICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDEsIFBNRDEpDQogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoU1lOQywg
MHgwMikpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBTdG9yZSAoT3IgKFNEVDEsIDB4NDApLCBETUQxKQ0KICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChJQ1IxLCAweDAyKSkNCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
SWYgKEFuZCAoSUNSMCwgMHgwMikpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWRkIChETUQxLCAw
eDAyLCBETUQxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChJQ1IzLCAweDAyKSkNCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHg0NSwgRE1EMSkNCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0K
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBPciAoU3VidHJhY3QgKEFuZCAoUE1EMSwgMHgwNyksIDB4MDIpLCAweDIw
LCBETUQxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIElmIChBbmQgKE5DTTEsIDB4MDQpKQ0KICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29uY2F0ZW5hdGUgKFBJ
QjEsIEZMSzEsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsN
CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFBJQjEsIExvY2FsMCkNCiAg
ICAgICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBSZXR1cm4gKExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAg
ICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCg0KICAgICAgICAg
ICAgRGV2aWNlIChTQlVTKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIE5hbWUgKF9B
RFIsIDB4MDAxRjAwMDMpDQogICAgICAgICAgICB9DQogICAgICAgIH0NCg0KICAgICAgICBNZXRo
b2QgKENIR0QsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgIHsNCiAgICAgICAgICAgIElmIChc
X1NCLlBTUlYgKDB4QjksIDB4MjIsIDB4MDAsIDB4MDAsIDB4MDEpKQ0KICAgICAgICAgICAgew0K
ICAgICAgICAgICAgICAgIE5vdGlmeSAoXF9TQi5QQ0kwLCAweDAwKQ0KICAgICAgICAgICAgICAg
IFNsZWVwICgweDAzRTgpDQogICAgICAgICAgICAgICAgU3RvcmUgKFxfU0IuUFNSViAoMHhCOSwg
MHgwNywgMHgwMCwgMHgwMCwgMHgwMyksIE5TVEUpDQogICAgICAgICAgICAgICAgU3RvcmUgKE5T
VEUsIExvY2FsMCkNCiAgICAgICAgICAgICAgICBOb3RpZnkgKFxfU0IuUENJMC5HRlgwLCAweDgw
KQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgTWV0aG9kIChfUFRTLCAx
LCBOb3RTZXJpYWxpemVkKQ0KICAgIHsNCiAgICAgICAgXF9TQi5QU1JWICgweEI4LCAweDAwLCAw
eDAwLCAweDAwLCAweDAwKQ0KICAgICAgICBJZiAoTE5vdCAoTEVxdWFsIChBcmcwLCAweDA1KSkp
DQogICAgICAgIHsNCiAgICAgICAgICAgIFxfU0IuUFNSViAoMHg5MiwgMHgwMiwgMHgwMCwgMHgw
MCwgMHgwMCkNCiAgICAgICAgfQ0KDQogICAgICAgIElmIChMRXF1YWwgKEFyZzAsIDB4MDMpKQ0K
ICAgICAgICB7DQogICAgICAgICAgICBcX1NCLlBTUlYgKDB4QzcsIFxfU0IuUENJMC5NT0RNLk1Q
U1csIDB4MDAsIDB4MDAsIDB4MDApDQogICAgICAgICAgICBcX1NCLlBTUlYgKDB4OTAsIDB4MDAs
IDB4MDEsIDB4MDMsIDB4MDApDQogICAgICAgICAgICBcX1NCLlBTUlYgKDB4OTEsIDB4MTAsIDB4
MDEsIDB4MDEsIDB4MDApDQogICAgICAgICAgICBcX1NCLlBTUlYgKDB4OTEsIDB4NDAsIDB4MDEs
IDB4MDEsIDB4MDApDQogICAgICAgIH0NCg0KICAgICAgICBJZiAoTEVxdWFsIChBcmcwLCAweDA0
KSkNCiAgICAgICAgew0KICAgICAgICAgICAgXF9TQi5QU1JWICgweDkwLCAweDAwLCAweDAxLCAw
eDA0LCAweDAwKQ0KICAgICAgICB9DQoNCiAgICAgICAgSWYgKExFcXVhbCAoQXJnMCwgMHgwNSkp
DQogICAgICAgIHsNCiAgICAgICAgICAgIFxfU0IuUFNSViAoMHg5MCwgMHgwMCwgMHgwMSwgMHgw
NSwgMHgwMCkNCiAgICAgICAgfQ0KDQogICAgICAgIElmIChMQW5kIChMTm90IChMTGVzcyAoQXJn
MCwgMHgwMykpLCBMTm90IChMR3JlYXRlciAoQXJnMCwgMHgwNSkpKSkNCiAgICAgICAgew0KICAg
ICAgICAgICAgXF9TQi5IS0VZLkhTQVYgKCkNCiAgICAgICAgfQ0KDQogICAgICAgIFN0b3JlIChc
X1NCLkVDUEYgKDB4MDEwMSwgMHgwMCwgMHgwMCksIFxfU0IuQkFTVCkNCiAgICAgICAgXF9TQi5F
Q1BGICgweDAyMDYsIEFyZzAsIDB4MDApDQogICAgfQ0KDQogICAgU2NvcGUgKFxfUFIuQ1BVMCkN
CiAgICB7DQogICAgICAgIE1ldGhvZCAoX1BQQywgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAg
ew0KICAgICAgICAgICAgUmV0dXJuICgweDAwKQ0KICAgICAgICB9DQoNCiAgICAgICAgTWV0aG9k
IChfUENULCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICB7DQogICAgICAgICAgICBJZiAoQW5k
IChDRkdELCAweDQwMDApKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIFJldHVybiAo
UGFja2FnZSAoMHgwMikNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIFJl
c291cmNlVGVtcGxhdGUgKCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg
ICAgICAgICAgUmVnaXN0ZXIgKFN5c3RlbUlPLCAweDA4LCAweDAwLCAweDAwMDAwMDAwMDAwMDA4
MDApDQogICAgICAgICAgICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICAgICAgICAgIFJlc291
cmNlVGVtcGxhdGUgKCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg
ICAgICAgUmVnaXN0ZXIgKFN5c3RlbUlPLCAweDA4LCAweDAwLCAweDAwMDAwMDAwMDAwMDA4MDIp
DQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAg
fQ0KDQogICAgICAgICAgICBJZiAoTEFuZCAoQW5kIChDRkdELCAweDAyKSwgQW5kIChQREMwLCAw
eDAxKSkpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgUmV0dXJuIChQYWNrYWdlICgw
eDAyKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgUmVzb3VyY2VUZW1w
bGF0ZSAoKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBS
ZWdpc3RlciAoRkZpeGVkSFcsIDB4MDAsIDB4MDAsIDB4MDAwMDAwMDAwMDAwMDAwMCkNCiAgICAg
ICAgICAgICAgICAgICAgfSwgDQoNCiAgICAgICAgICAgICAgICAgICAgUmVzb3VyY2VUZW1wbGF0
ZSAoKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBSZWdp
c3RlciAoRkZpeGVkSFcsIDB4MDAsIDB4MDAsIDB4MDAwMDAwMDAwMDAwMDAwMCkNCiAgICAgICAg
ICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAgICB9DQoNCiAgICAg
ICAgICAgIFJldHVybiAoUGFja2FnZSAoMHgwMikNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAg
ICAgICBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg
ICAgICAgICBSZWdpc3RlciAoU3lzdGVtSU8sIDB4MTAsIDB4MDAsIDB4MDAwMDAwMDAwMDAwMDBC
MikNCiAgICAgICAgICAgICAgICB9LCANCg0KICAgICAgICAgICAgICAgIFJlc291cmNlVGVtcGxh
dGUgKCkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIFJlZ2lzdGVyIChT
eXN0ZW1JTywgMHgwOCwgMHgwMCwgMHgwMDAwMDAwMDAwMDAwMEIzKQ0KICAgICAgICAgICAgICAg
IH0NCiAgICAgICAgICAgIH0pDQogICAgICAgIH0NCg0KICAgICAgICBNZXRob2QgKF9QU1MsIDAs
IE5vdFNlcmlhbGl6ZWQpDQogICAgICAgIHsNCiAgICAgICAgICAgIElmIChMQW5kIChMTm90IChB
bmQgKENGR0QsIDB4NDAwMCkpLCBMQW5kIChBbmQgKENGR0QsIDB4MDIpLCBBbmQgKFBEQzAsIDB4
MDEpKSkpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgUmV0dXJuIChOUFNTKQ0KICAg
ICAgICAgICAgfQ0KDQogICAgICAgICAgICBSZXR1cm4gKFNQU1MpDQogICAgICAgIH0NCg0KICAg
ICAgICBOYW1lIChTUFNTLCBQYWNrYWdlICgweDA0KQ0KICAgICAgICB7DQogICAgICAgICAgICBQ
YWNrYWdlICgweDA2KQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIDB4MDAwMDA0QjAs
IA0KICAgICAgICAgICAgICAgIDB4MDAwMDEzODgsIA0KICAgICAgICAgICAgICAgIDB4MDAwMDAw
NkUsIA0KICAgICAgICAgICAgICAgIDB4MDAwMDAwMEEsIA0KICAgICAgICAgICAgICAgIDB4MDAw
MDAwODMsIA0KICAgICAgICAgICAgICAgIDB4MDAwMDAwMDANCiAgICAgICAgICAgIH0sIA0KDQog
ICAgICAgICAgICBQYWNrYWdlICgweDA2KQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg
IDB4MDAwMDAzRTgsIA0KICAgICAgICAgICAgICAgIDB4MDAwMDBGQTAsIA0KICAgICAgICAgICAg
ICAgIDB4MDAwMDAwNkUsIA0KICAgICAgICAgICAgICAgIDB4MDAwMDAwMEEsIA0KICAgICAgICAg
ICAgICAgIDB4MDAwMDAxODMsIA0KICAgICAgICAgICAgICAgIDB4MDAwMDAwMDENCiAgICAgICAg
ICAgIH0sIA0KDQogICAgICAgICAgICBQYWNrYWdlICgweDA2KQ0KICAgICAgICAgICAgew0KICAg
ICAgICAgICAgICAgIDB4MDAwMDAzMjAsIA0KICAgICAgICAgICAgICAgIDB4MDAwMDBCQjgsIA0K
ICAgICAgICAgICAgICAgIDB4MDAwMDAwNkUsIA0KICAgICAgICAgICAgICAgIDB4MDAwMDAwMEEs
IA0KICAgICAgICAgICAgICAgIDB4MDAwMDAyODMsIA0KICAgICAgICAgICAgICAgIDB4MDAwMDAw
MDINCiAgICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICBQYWNrYWdlICgweDA2KQ0KICAgICAg
ICAgICAgew0KICAgICAgICAgICAgICAgIDB4MDAwMDAyNTgsIA0KICAgICAgICAgICAgICAgIDB4
MDAwMDBCQjgsIA0KICAgICAgICAgICAgICAgIDB4MDAwMDAwNkUsIA0KICAgICAgICAgICAgICAg
IDB4MDAwMDAwMEEsIA0KICAgICAgICAgICAgICAgIDB4MDAwMDAzODMsIA0KICAgICAgICAgICAg
ICAgIDB4MDAwMDAwMDMNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSkNCiAgICAgICAgTmFtZSAo
TlBTUywgUGFja2FnZSAoMHgwNCkNCiAgICAgICAgew0KICAgICAgICAgICAgUGFja2FnZSAoMHgw
NikNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAweDAwMDAwNEIwLCANCiAgICAgICAg
ICAgICAgICAweDAwMDAxMzg4LCANCiAgICAgICAgICAgICAgICAweDAwMDAwMDBBLCANCiAgICAg
ICAgICAgICAgICAweDAwMDAwMDBBLCANCiAgICAgICAgICAgICAgICAweDAwMDAwQzBELCANCiAg
ICAgICAgICAgICAgICAweDAwMDAwQzBEDQogICAgICAgICAgICB9LCANCg0KICAgICAgICAgICAg
UGFja2FnZSAoMHgwNikNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAweDAwMDAwM0U4
LCANCiAgICAgICAgICAgICAgICAweDAwMDAwRkEwLCANCiAgICAgICAgICAgICAgICAweDAwMDAw
MDBBLCANCiAgICAgICAgICAgICAgICAweDAwMDAwMDBBLCANCiAgICAgICAgICAgICAgICAweDAw
MDAwQTBCLCANCiAgICAgICAgICAgICAgICAweDAwMDAwQTBCDQogICAgICAgICAgICB9LCANCg0K
ICAgICAgICAgICAgUGFja2FnZSAoMHgwNikNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg
ICAweDAwMDAwMzIwLCANCiAgICAgICAgICAgICAgICAweDAwMDAwQkI4LCANCiAgICAgICAgICAg
ICAgICAweDAwMDAwMDBBLCANCiAgICAgICAgICAgICAgICAweDAwMDAwMDBBLCANCiAgICAgICAg
ICAgICAgICAweDAwMDAwODA5LCANCiAgICAgICAgICAgICAgICAweDAwMDAwODA5DQogICAgICAg
ICAgICB9LCANCg0KICAgICAgICAgICAgUGFja2FnZSAoMHgwNikNCiAgICAgICAgICAgIHsNCiAg
ICAgICAgICAgICAgICAweDAwMDAwMjU4LCANCiAgICAgICAgICAgICAgICAweDAwMDAwQkI4LCAN
CiAgICAgICAgICAgICAgICAweDAwMDAwMDBBLCANCiAgICAgICAgICAgICAgICAweDAwMDAwMDBB
LCANCiAgICAgICAgICAgICAgICAweDAwMDAwNjA3LCANCiAgICAgICAgICAgICAgICAweDAwMDAw
NjA3DQogICAgICAgICAgICB9DQogICAgICAgIH0pDQogICAgfQ0KDQogICAgU2NvcGUgKFxfUFIu
Q1BVMCkNCiAgICB7DQogICAgICAgIE1ldGhvZCAoX0NTVCwgMCwgTm90U2VyaWFsaXplZCkNCiAg
ICAgICAgew0KICAgICAgICAgICAgSWYgKEFuZCAoQ0ZHRCwgMHg0MDAwKSkNCiAgICAgICAgICAg
IHsNCiAgICAgICAgICAgICAgICBSZXR1cm4gKFBhY2thZ2UgKDB4MDIpDQogICAgICAgICAgICAg
ICAgew0KICAgICAgICAgICAgICAgICAgICAweDAxLCANCiAgICAgICAgICAgICAgICAgICAgUGFj
a2FnZSAoMHgwNCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAg
ICAgUmVzb3VyY2VUZW1wbGF0ZSAoKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFJlZ2lzdGVyIChGRml4ZWRIVywgMHgwMSwgMHgwMSwgMHgw
MDAwMDAwMDAwMDAwODA5KQ0KICAgICAgICAgICAgICAgICAgICAgICAgfSwgDQoNCiAgICAgICAg
ICAgICAgICAgICAgICAgIDB4MDEsIA0KICAgICAgICAgICAgICAgICAgICAgICAgMHgwMSwgDQog
ICAgICAgICAgICAgICAgICAgICAgICAweDAzRTgNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAg
ICAgICAgICAgICAgIH0pDQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIElmIChMQW5kIChB
bmQgKENGR0QsIDB4ODApLCBMTm90IChQV1JTKSkpDQogICAgICAgICAgICB7DQogICAgICAgICAg
ICAgICAgUmV0dXJuIChQYWNrYWdlICgweDA1KQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAg
ICAgICAgICAgICAgMHgwNCwgDQogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpDQog
ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFJlc291cmNlVGVt
cGxhdGUgKCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBSZWdpc3RlciAoRkZpeGVkSFcsIDB4MDAsIDB4MDAsIDB4MDAwMDAwMDAwMDAwMDAw
MCkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICAgICAgICAgICAg
ICAweDAxLCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEsIA0KICAgICAgICAgICAgICAg
ICAgICAgICAgMHgwM0U4DQogICAgICAgICAgICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICAg
ICAgICAgIFBhY2thZ2UgKDB4MDQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg
ICAgICAgICAgICAgIFJlc291cmNlVGVtcGxhdGUgKCkNCiAgICAgICAgICAgICAgICAgICAgICAg
IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZWdpc3RlciAoU3lzdGVtSU8sIDB4MDgs
IDB4MDAsIDB4MDAwMDAwMDAwMDAwMTAxNCkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIA0K
DQogICAgICAgICAgICAgICAgICAgICAgICAweDAyLCANCiAgICAgICAgICAgICAgICAgICAgICAg
IDB4MDEsIA0KICAgICAgICAgICAgICAgICAgICAgICAgMHgwMUY0DQogICAgICAgICAgICAgICAg
ICAgIH0sIA0KDQogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpDQogICAgICAgICAg
ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFJlc291cmNlVGVtcGxhdGUgKCkN
CiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBS
ZWdpc3RlciAoU3lzdGVtSU8sIDB4MDgsIDB4MDAsIDB4MDAwMDAwMDAwMDAwMTAxNSkNCiAgICAg
ICAgICAgICAgICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICAgICAgICAgICAgICAweDAzLCAN
CiAgICAgICAgICAgICAgICAgICAgICAgIDB4NTUsIA0KICAgICAgICAgICAgICAgICAgICAgICAg
MHhGQQ0KICAgICAgICAgICAgICAgICAgICB9LCANCg0KICAgICAgICAgICAgICAgICAgICBQYWNr
YWdlICgweDA0KQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg
ICBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgUmVnaXN0ZXIgKFN5c3RlbUlPLCAweDA4LCAweDAwLCAweDAw
MDAwMDAwMDAwMDEwMTYpDQogICAgICAgICAgICAgICAgICAgICAgICB9LCANCg0KICAgICAgICAg
ICAgICAgICAgICAgICAgMHgwMywgDQogICAgICAgICAgICAgICAgICAgICAgICAweEI5LCANCiAg
ICAgICAgICAgICAgICAgICAgICAgIDB4NjQNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAg
ICAgICAgICAgIH0pDQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIElmIChBbmQgKENGR0Qs
IDB4NDApKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIFJldHVybiAoUGFja2FnZSAo
MHgwNCkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIDB4MDMsIA0KICAg
ICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQ0KICAgICAgICAgICAgICAgICAgICB7DQog
ICAgICAgICAgICAgICAgICAgICAgICBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAgICAgICAg
ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVnaXN0ZXIgKEZGaXhl
ZEhXLCAweDAwLCAweDAwLCAweDAwMDAwMDAwMDAwMDAwMDApDQogICAgICAgICAgICAgICAgICAg
ICAgICB9LCANCg0KICAgICAgICAgICAgICAgICAgICAgICAgMHgwMSwgDQogICAgICAgICAgICAg
ICAgICAgICAgICAweDAxLCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDNFOA0KICAgICAg
ICAgICAgICAgICAgICB9LCANCg0KICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQ0K
ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBSZXNvdXJjZVRl
bXBsYXRlICgpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgUmVnaXN0ZXIgKFN5c3RlbUlPLCAweDA4LCAweDAwLCAweDAwMDAwMDAwMDAwMDEw
MTQpDQogICAgICAgICAgICAgICAgICAgICAgICB9LCANCg0KICAgICAgICAgICAgICAgICAgICAg
ICAgMHgwMiwgDQogICAgICAgICAgICAgICAgICAgICAgICAweDAxLCANCiAgICAgICAgICAgICAg
ICAgICAgICAgIDB4MDFGNA0KICAgICAgICAgICAgICAgICAgICB9LCANCg0KICAgICAgICAgICAg
ICAgICAgICBQYWNrYWdlICgweDA0KQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAg
ICAgICAgICAgICAgICBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAgICAgICAgICAgICAgICAg
ICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVnaXN0ZXIgKFN5c3RlbUlPLCAweDA4
LCAweDAwLCAweDAwMDAwMDAwMDAwMDEwMTUpDQogICAgICAgICAgICAgICAgICAgICAgICB9LCAN
Cg0KICAgICAgICAgICAgICAgICAgICAgICAgMHgwMywgDQogICAgICAgICAgICAgICAgICAgICAg
ICAweDU1LCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4RkENCiAgICAgICAgICAgICAgICAg
ICAgfQ0KICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIElm
IChBbmQgKENGR0QsIDB4MjApKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIFJldHVy
biAoUGFja2FnZSAoMHgwMykNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg
IDB4MDIsIA0KICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQ0KICAgICAgICAgICAg
ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBSZXNvdXJjZVRlbXBsYXRlICgpDQog
ICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVn
aXN0ZXIgKEZGaXhlZEhXLCAweDAwLCAweDAwLCAweDAwMDAwMDAwMDAwMDAwMDApDQogICAgICAg
ICAgICAgICAgICAgICAgICB9LCANCg0KICAgICAgICAgICAgICAgICAgICAgICAgMHgwMSwgDQog
ICAgICAgICAgICAgICAgICAgICAgICAweDAxLCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4
MDNFOA0KICAgICAgICAgICAgICAgICAgICB9LCANCg0KICAgICAgICAgICAgICAgICAgICBQYWNr
YWdlICgweDA0KQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg
ICBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgUmVnaXN0ZXIgKFN5c3RlbUlPLCAweDA4LCAweDAwLCAweDAw
MDAwMDAwMDAwMDEwMTQpDQogICAgICAgICAgICAgICAgICAgICAgICB9LCANCg0KICAgICAgICAg
ICAgICAgICAgICAgICAgMHgwMiwgDQogICAgICAgICAgICAgICAgICAgICAgICAweDAxLCANCiAg
ICAgICAgICAgICAgICAgICAgICAgIDB4MDFGNA0KICAgICAgICAgICAgICAgICAgICB9DQogICAg
ICAgICAgICAgICAgfSkNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgUmV0dXJuIChQYWNr
YWdlICgweDAyKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIDB4MDEsIA0KICAgICAg
ICAgICAgICAgIFBhY2thZ2UgKDB4MDQpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg
ICAgICAgICBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAg
ICAgICAgICAgICAgICAgICAgIFJlZ2lzdGVyIChGRml4ZWRIVywgMHgwMCwgMHgwMCwgMHgwMDAw
MDAwMDAwMDAwMDAwKQ0KICAgICAgICAgICAgICAgICAgICB9LCANCg0KICAgICAgICAgICAgICAg
ICAgICAweDAxLCANCiAgICAgICAgICAgICAgICAgICAgMHgwMSwgDQogICAgICAgICAgICAgICAg
ICAgIDB4MDNFOA0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0pDQogICAgICAgIH0N
CiAgICB9DQoNCiAgICBTY29wZSAoXCkNCiAgICB7DQogICAgICAgIE5hbWUgKFNTRFQsIFBhY2th
Z2UgKDB4MEMpDQogICAgICAgIHsNCiAgICAgICAgICAgICJDUFUwSVNUICIsIA0KICAgICAgICAg
ICAgMHgzRjZFMzRFNywgDQogICAgICAgICAgICAweDAwMDAwMjM1LCANCiAgICAgICAgICAgICJD
UFUxSVNUICIsIA0KICAgICAgICAgICAgMHgwMDAwMDAwMCwgDQogICAgICAgICAgICAweEYwMDBG
RjUzLCANCiAgICAgICAgICAgICJDUFUwQ1NUICIsIA0KICAgICAgICAgICAgMHgzRjZFMzMwOSwg
DQogICAgICAgICAgICAweDAwMDAwMURFLCANCiAgICAgICAgICAgICJDUFUxQ1NUICIsIA0KICAg
ICAgICAgICAgMHgwMDAwMDAwMCwgDQogICAgICAgICAgICAweEYwMDBGRjUzDQogICAgICAgIH0p
DQogICAgICAgIE5hbWUgKENGR0QsIDB4MDZEODgyRjIpDQogICAgICAgIE5hbWUgKFxQREMwLCAw
eDgwMDAwMDAwKQ0KICAgICAgICBOYW1lIChcUERDMSwgMHg4MDAwMDAwMCkNCiAgICB9DQoNCiAg
ICBTY29wZSAoXF9QUi5DUFUwKQ0KICAgIHsNCiAgICAgICAgTmFtZSAoSEkwLCAweDAwKQ0KICAg
ICAgICBOYW1lIChIQzAsIDB4MDApDQogICAgICAgIE1ldGhvZCAoX1BEQywgMSwgTm90U2VyaWFs
aXplZCkNCiAgICAgICAgew0KICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQXJnMCwgMHgw
OCwgQ0FQMCkNCiAgICAgICAgICAgIFN0b3JlIChDQVAwLCBQREMwKQ0KICAgICAgICAgICAgSWYg
KExBbmQgKEFuZCAoQ0ZHRCwgMHg0MDAwKSwgTEVxdWFsIChBbmQgKFBEQzAsIDB4MEEpLCAweDBB
KSkpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgSWYgKEFuZCAoQ0ZHRCwgMHgwMykp
DQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBPcGVyYXRpb25SZWdpb24g
KElTVDAsIFN5c3RlbU1lbW9yeSwgRGVyZWZPZiAoSW5kZXggKFNTRFQsIDB4MDEpKSwgRGVyZWZP
ZiAoSW5kZXggKFNTRFQsIDB4MDIpKSkNCiAgICAgICAgICAgICAgICAgICAgTG9hZCAoSVNUMCwg
SEkwKQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIElmIChBbmQgKENGR0Qs
IDB4MTApKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgT3BlcmF0aW9u
UmVnaW9uIChDU1QwLCBTeXN0ZW1NZW1vcnksIERlcmVmT2YgKEluZGV4IChTU0RULCAweDA3KSks
IERlcmVmT2YgKEluZGV4IChTU0RULCAweDA4KSkpDQogICAgICAgICAgICAgICAgICAgIExvYWQg
KENTVDAsIEhDMCkNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgIH0N
CiAgICB9DQoNCiAgICBTY29wZSAoXF9QUi5DUFUxKQ0KICAgIHsNCiAgICAgICAgTmFtZSAoSEkx
LCAweDAwKQ0KICAgICAgICBOYW1lIChIQzEsIDB4MDApDQogICAgICAgIE1ldGhvZCAoX1BEQywg
MSwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgew0KICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVs
ZCAoQXJnMCwgMHgwOCwgQ0FQMSkNCiAgICAgICAgICAgIFN0b3JlIChDQVAxLCBQREMxKQ0KICAg
ICAgICAgICAgSWYgKExBbmQgKEFuZCAoQ0ZHRCwgMHg0MDAwKSwgTEVxdWFsIChBbmQgKFBEQzEs
IDB4MEEpLCAweDBBKSkpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgSWYgKEFuZCAo
Q0ZHRCwgMHgwMykpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBPcGVy
YXRpb25SZWdpb24gKElTVDEsIFN5c3RlbU1lbW9yeSwgRGVyZWZPZiAoSW5kZXggKFNTRFQsIDB4
MDQpKSwgRGVyZWZPZiAoSW5kZXggKFNTRFQsIDB4MDUpKSkNCiAgICAgICAgICAgICAgICAgICAg
TG9hZCAoSVNUMSwgSEkxKQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIElm
IChBbmQgKENGR0QsIDB4MTApKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg
ICAgT3BlcmF0aW9uUmVnaW9uIChDU1QxLCBTeXN0ZW1NZW1vcnksIERlcmVmT2YgKEluZGV4IChT
U0RULCAweDBBKSksIERlcmVmT2YgKEluZGV4IChTU0RULCAweDBCKSkpDQogICAgICAgICAgICAg
ICAgICAgIExvYWQgKENTVDEsIEhDMSkNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9
DQoNCiAgICAgICAgICAgIElmIChMRXF1YWwgKEFuZCAoUERDMSwgMHgwQSksIDB4MEEpKQ0KICAg
ICAgICAgICAgew0KICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKFdUSFQsIDB4MDEpKQ0KICAg
ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDAsIFdUSFQpDQog
ICAgICAgICAgICAgICAgICAgIFxfU0IuUFNSViAoMHhDOSwgMHgwMiwgMHgwMSwgMHgwMCwgMHgw
MCkNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQp9
DQoNCg==

--Multipart=_Wed__20_Jun_2007_02_31_51_+0900_KZTwyrG_5maCpUc3
Content-Type: text/plain;
 name="kldstat-v.txt"
Content-Disposition: attachment;
 filename="kldstat-v.txt"
Content-Transfer-Encoding: 7bit

Id Refs Address    Size     Name
 1   74 0xc0400000 32f394   kernel
	Contains modules:
		Id Name
		152 null
		153 pci/fixup_pci
		154 pci/ignore_pci
		155 pci/isab
		156 pcib/pci
		157 pci/pcib
		158 watchdog
		159 devfs
		160 g_dev
		161 g_disk
		162 g_vfs
		163 isab/isa
		164 eisab/isa
		165 isa/isahint
		166 isa/orm
		167 isa/pnp
		168 elf32
		169 shell
		170 cpu/cpufreq
		171 rootbus
		172 ksem_init
		173 ksem_open
		174 ksem_unlink
		175 ksem_close
		176 ksem_post
		177 ksem_wait
		178 ksem_timedwait
		179 ksem_trywait
		180 ksem_getvalue
		181 ksem_destroy
		182 sem
		183 enc
		184 ether
		185 loop
		186 zlib
		187 crypto
		188 cryptodev
		189 ufs
		190 g_class
		191 atkbdc/atkbd
		192 isa/atkbdc
		193 acpi/atkbdc
		194 atkbdc/psm
		195 isa/psmcpnp
		196 acpi/psmcpnp
		197 scterm-sc
		198 scrndr-vga
		199 g_bsd
		200 g_mbr
		201 g_mbrext
		202 isa/pnpbios
		203 pci/ioapic
		204 nexus/legacy
		205 legacy/cpu
		206 legacy/mptable_pcib
		207 pci/mptable_pcib
		208 root/nexus
		209 isa/sysresource
		210 isa/atpic
		211 acpi/atpic
		212 isa/attimer
		213 acpi/attimer
		214 legacy/isa
		215 isa/atdma
		216 acpi/atdma
		217 nexus/npx
		218 isa/npxisa
		219 acpi/npxisa
		220 isa/pmtimer
		221 legacy/pcib
		222 pci/hostb
		223 isa/pcibus_pnp
		224 pci/pcibios_pcib
		225 legacy/pir
		226 isa/sc
		227 isa/vga
 2    2 0xc0730000 1f5b0    linux.ko
	Contains modules:
		Id Name
		18 linuxelf
		19 linuxaout
 3    2 0xc0750000 4818     sysvmsg.ko
	Contains modules:
		Id Name
		 1 sysvmsg
		 2 msgrcv
		 3 msgsnd
		 4 msgget
		 5 msgctl
		 6 msgsys
 4    2 0xc0755000 6360     sysvsem.ko
	Contains modules:
		Id Name
		 7 sysvsem
		 8 semop
		 9 semget
		10 __semctl
		11 semsys
 5    2 0xc075c000 4a74     sysvshm.ko
	Contains modules:
		Id Name
		12 sysvshm
		13 shmget
		14 shmdt
		15 shmctl
		16 shmat
		17 shmsys
 6    1 0xc0761000 5860     if_tap.ko
	Contains modules:
		Id Name
		20 if_tap
 7    1 0xc0767000 f964     if_iwi.ko
	Contains modules:
		Id Name
		23 pci/iwi
 8    3 0xc0777000 222d8    wlan.ko
	Contains modules:
		Id Name
		21 wlan
 9    3 0xc079a000 311c     firmware.ko
	Contains modules:
		Id Name
		22 firmware
10    1 0xc079e000 6758     if_rl.ko
	Contains modules:
		Id Name
		48 rl/miibus
		49 cardbus/rl
		50 pci/rl
11    2 0xc07a5000 1edac    miibus.ko
	Contains modules:
		Id Name
		24 miibus/ukphy
		25 miibus/e1000phy
		26 miibus/xlphy
		27 miibus/nsphy
		28 miibus/mlphy
		29 miibus/tlphy
		30 miibus/rlphy
		31 miibus/amphy
		32 miibus/dcphy
		33 miibus/pnphy
		34 miibus/inphy
		35 miibus/tdkphy
		36 miibus/bmtphy
		37 miibus/brgphy
		38 miibus/xmphy
		39 miibus/pnaphy
		40 miibus/lxtphy
		41 miibus/qsphy
		42 miibus/acphy
		43 miibus/nsgphy
		44 miibus/rgephy
		45 miibus/ruephy
		46 miibus/gentbi
		47 miibus/ip1000phy
12    1 0xc07c4000 7134     snd_ich.ko
	Contains modules:
		Id Name
		52 pci/snd_ich
13    2 0xc07cc000 26968    sound.ko
	Contains modules:
		Id Name
		51 sound
14    6 0xc07f3000 23184    usb.ko
	Contains modules:
		Id Name
		53 uhub/uhub
		54 usb/uhub
		55 ehci/usb
		56 uhci/usb
		57 ohci/usb
		58 cardbus/uhci
		59 pci/uhci
		60 cardbus/ohci
		61 pci/ohci
		62 cardbus/ehci
		63 pci/ehci
15    1 0xc0817000 519c     ugen.ko
	Contains modules:
		Id Name
		64 uhub/ugen
16    1 0xc081d000 7c54     umass.ko
	Contains modules:
		Id Name
		78 uhub/umass
17    2 0xc0825000 40450    cam.ko
	Contains modules:
		Id Name
		65 cam
		66 probe
		67 xpt
		68 cd
		69 ch
		70 da
		71 pass
		72 pt
		73 sa
		74 ses
		75 sg
		76 targbh
		77 targ
18    1 0xc0866000 3780     umodem.ko
	Contains modules:
		Id Name
		80 uhub/umodem
19    3 0xc086a000 3694     ucom.ko
	Contains modules:
		Id Name
		79 ucom
20    2 0xc086e000 17920    agp.ko
	Contains modules:
		Id Name
		81 pci/agp_i810
		82 pci/agp_intel
		83 pci/agp_via
		84 pci/agp_sis
		85 pci/agp_ali
		86 pci/agp_amd
		87 pci/agp_nvidia
		88 pci/agp_ati
		89 pci/agp_amd64
21    1 0xc0886000 19ac     accf_data.ko
	Contains modules:
		Id Name
		90 accf_data
22    1 0xc0888000 2484     accf_http.ko
	Contains modules:
		Id Name
		91 accf_http
23    1 0xc088b000 c31c     random.ko
	Contains modules:
		Id Name
		92 random
24    1 0xc0898000 1cfc     io.ko
	Contains modules:
		Id Name
		93 io
25    1 0xc089a000 8884     aio.ko
	Contains modules:
		Id Name
		94 aio
		95 lio_listio
		96 aio_waitcomplete
		97 aio_write
		98 aio_read
		99 aio_error
		100 aio_cancel
		101 aio_suspend
		102 aio_return
26    2 0xc08a3000 4d00     mem.ko
	Contains modules:
		Id Name
		103 mem
27    1 0xc08a8000 55f0     kbdmux.ko
	Contains modules:
		Id Name
		104 kbdmux
28    1 0xc08ae000 1d498    kqemu.ko
	Contains modules:
		Id Name
		105 kqemu
29    5 0xc08cc000 e8c8     ata.ko
	Contains modules:
		Id Name
		106 ata
30    1 0xc08db000 2166c    atapci.ko
	Contains modules:
		Id Name
		107 atapci/ata
		108 pci/atapci
31    1 0xc08fd000 25f0     atacard.ko
	Contains modules:
		Id Name
		109 pccard/ata
32    1 0xc0900000 3b40     atadisk.ko
	Contains modules:
		Id Name
		110 ata/ad
33    1 0xc0904000 7100     atapicd.ko
	Contains modules:
		Id Name
		111 ata/acd
34    1 0xc090c000 2ec8     wlan_wep.ko
	Contains modules:
		Id Name
		112 wlan_wep
35    1 0xc090f000 300fc    iwi_bss.ko
	Contains modules:
		Id Name
		113 iwi_bss_fw
36    1 0xc0940000 b77c     cbb.ko
	Contains modules:
		Id Name
		115 isa/cbb
		116 pci/cbb
37    3 0xc094c000 3514     exca.ko
	Contains modules:
		Id Name
		114 exca
38    1 0xc0950000 76ec     cardbus.ko
	Contains modules:
		Id Name
		117 cbb/cardbus
39    1 0xc0958000 ef34     pccard.ko
	Contains modules:
		Id Name
		118 cbb/pccard
		119 pcic/pccard
40    1 0xc0967000 4234     uplcom.ko
	Contains modules:
		Id Name
		120 uhub/uplcom
41    1 0xc096c000 3374     smb.ko
	Contains modules:
		Id Name
		121 smbus/smb
42    3 0xc0970000 2c1c     smbus.ko
	Contains modules:
		Id Name
43    1 0xc0973000 2af8     ichwd.ko
	Contains modules:
		Id Name
		122 isa/ichwd
44    1 0xc0976000 415c     ichsmb.ko
	Contains modules:
		Id Name
		123 ichsmb/smbus
		124 pci/ichsmb
45    1 0xc097b000 a4fc     cpufreq.ko
	Contains modules:
		Id Name
		125 pci/ichss_pci
		126 cpu/ichss
		127 cpu/est
		128 cpu/p4tcc
		129 cpu/powernow
		130 cpu/smist
46    1 0xc0986000 3898     acpi_panasonic.ko
	Contains modules:
		Id Name
		150 acpi/acpi_panasonic
47    2 0xc098a000 64df0    acpi.ko
	Contains modules:
		Id Name
		131 nexus/acpi
		132 acpi/acpi_button
		133 acpi/acpi_isab
		134 pcib/acpi_pci
		135 acpi/acpi_pcib
		136 pci/acpi_pcib
		137 acpi/acpi_sysresource
		138 acpi/acpi_timer
		139 acpi/acpi_pci_link
		140 acpi/acpi_tz
		141 acpi/acpi_acad
		142 acpi/acpi_cmbat
		143 acpi/cpu
		144 acpi/acpi_ec
		145 acpi/acpi_hpet
		146 acpi/acpi_lid
		147 cpu/acpi_perf
		148 acpi/acpi_smbat
		149 cpu/acpi_throttle
48    1 0xc09ef000 6e40     i915.ko
	Contains modules:
		Id Name
		151 agp/i915
49    2 0xc09f6000 10c68    drm.ko
	Contains modules:
		Id Name
50    2 0xc4e54000 6000     procfs.ko
	Contains modules:
		Id Name
		229 procfs
51    2 0xc4e5b000 6000     pseudofs.ko
	Contains modules:
		Id Name
		228 pseudofs
52    1 0xc4e61000 7000     linprocfs.ko
	Contains modules:
		Id Name
		230 linprocfs
53    1 0xc4e6a000 2000     ntfs_iconv.ko
	Contains modules:
		Id Name
		235 ntfs_iconv
54    1 0xc4e6c000 4000     libiconv.ko
	Contains modules:
		Id Name
		231 iconv
		232 iconv_xlat
		233 iconv_xlat16
55    1 0xc4e7f000 b000     ntfs.ko
	Contains modules:
		Id Name
		234 ntfs
56    2 0xc4f74000 e000     ipfw.ko
	Contains modules:
		Id Name
		236 ipfw
57    1 0xc4f8e000 4000     ipdivert.ko
	Contains modules:
		Id Name
		237 ipdivert
58    1 0xc50f8000 31000    nfsclient.ko
	Contains modules:
		Id Name
		238 nfslock
		239 nfs
		240 nfs4

--Multipart=_Wed__20_Jun_2007_02_31_51_+0900_KZTwyrG_5maCpUc3--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070620023151.c0f3b961.nork>