Date: Mon, 30 Aug 2004 12:26:36 +0400 From: Vladimir Grebenschikov <vova@fbsd.ru> To: mobile@freebsd.org Subject: acpi_video on SONY VAIO PCG-Z1 [was: acpi_video users needed] Message-ID: <1093854397.864.40.camel@localhost>
next in thread | raw e-mail | index | archive | help
--=-BE6+xfMzJmYpAg2zZzbZ Content-Type: text/plain Content-Transfer-Encoding: 7bit Hi Is any chance to make acpi_video work on SONY VAIO PCG-Z1 ? acpi_video.ko loads well, but does not report anything, and does not add hw.acpi.video subtree. Please advise. kernel is latest HEAD (cvsup 28 Aug). acpidump -dt and devinfo -v in attachment. dmesg: Copyright (c) 1992-2004 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD 6.0-CURRENT #1: Sat Aug 28 14:39:19 MSD 2004 root@vbook.fbsd.ru:/usr/obj/usr/src/sys/VBOOK Timecounter "i8254" frequency 1193182 Hz quality 0 CPU: Intel(R) Pentium(R) M processor 1700MHz (1686.97-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0x695 Stepping = 5 Features=0xa7e9f9bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,TM,PBE> real memory = 536281088 (511 MB) avail memory = 515035136 (491 MB) netsmb_dev: loaded acpi0: <SONY> on motherboard acpi_ec0: <Embedded Controller: GPE 0x1c> port 0x66,0x62 on acpi0 Timecounter "ACPI-safe" frequency 3579545 Hz quality 1000 acpi_timer0: <24-bit timer at 3.579545MHz> port 0x1008-0x100b on acpi0 cpu0: <ACPI CPU (2 Cx states)> on acpi0 acpi_tz0: <Thermal Zone> on acpi0 acpi_lid0: <Control Method Lid Switch> on acpi0 acpi_button0: <Power Button> on acpi0 pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0 pci0: <ACPI PCI bus> on pcib0 pcib1: <ACPI PCI-PCI bridge> at device 1.0 on pci0 pci1: <ACPI PCI bus> on pcib1 pci1: <display, VGA> at device 0.0 (no driver attached) uhci0: <Intel 82801DB (ICH4) USB controller USB-A> port 0x1800-0x181f irq 9 at device 29.0 on pci0 uhci0: [GIANT-LOCKED] usb0: <Intel 82801DB (ICH4) 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 uhci1: <Intel 82801DB (ICH4) USB controller USB-B> port 0x1820-0x183f irq 9 at device 29.1 on pci0 uhci1: [GIANT-LOCKED] usb1: <Intel 82801DB (ICH4) USB controller USB-B> on uhci1 usb1: USB revision 1.0 uhub1: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub1: 2 ports with 2 removable, self powered uhub2: Texas Instruments UT-USB41 hub, class 9/0, rev 1.10/1.10, addr 2 uhub2: 4 ports with 4 removable, self powered ukbd0: BTC USB KMp, rev 1.00/1.00, addr 3, iclass 3/1 kbd1 at ukbd0 ums0: BTC USB KMp, rev 1.00/1.00, addr 3, iclass 3/1 ums0: 3 buttons ums1: Microsoft Microsoft IntelliMouse\M-. Explorer, rev 1.10/1.14, addr 4, iclass 3/1 ums1: 5 buttons and Z dir. uhci2: <Intel 82801DB (ICH4) USB controller USB-C> port 0x1840-0x185f at device 29.2 on pci0 uhci2: [GIANT-LOCKED] usb2: <Intel 82801DB (ICH4) USB controller USB-C> on uhci2 usb2: USB revision 1.0 uhub3: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub3: 2 ports with 2 removable, self powered umass0: Sony USB Memory Stick Slot, rev 2.00/1.10, addr 2 umass0: Get Max Lun not supported (STALLED) ehci0: <EHCI (generic) USB 2.0 controller> mem 0xd0000000-0xd00003ff at device 29.7 on pci0 ehci0: [GIANT-LOCKED] ehci_pci_attach: companion usb0 ehci_pci_attach: companion usb1 ehci_pci_attach: companion usb2 usb3: EHCI version 1.0 usb3: companion controllers, 2 ports each: usb0 usb1 usb2 usb3: <EHCI (generic) USB 2.0 controller> on ehci0 usb3: USB revision 2.0 uhub4: Intel EHCI root hub, class 9/0, rev 2.00/1.00, addr 1 uhub4: 6 ports with 6 removable, self powered umass1: Sony USB Memory Stick Slot, rev 2.00/1.10, addr 2 ehci_idone: need toggle update status=80018d40 nstatus=80008c80 ehci_idone: need toggle update status=80028d40 nstatus=80008c80 umass1: Get Max Lun not supported (STALLED) pcib2: <ACPI PCI-PCI bridge> at device 30.0 on pci0 ACPI link \\_SB_.PCI0.LPCB.LNKF has invalid initial irq 3, ignoring pci2: <ACPI PCI bus> on pcib2 cbb0: <RF5C475 PCI-CardBus Bridge> irq 9 at device 5.0 on pci2 cardbus0: <CardBus bus> on cbb0 fwohci0: <Ricoh R5C551> mem 0xd0202000-0xd02027ff at device 5.1 on pci2 fwohci0: [GIANT-LOCKED] fwohci0: OHCI version 1.0 (ROM=1) fwohci0: No. of Isochronous channels is 4. fwohci0: EUI64 08:00:46:03:01:8d:e0:3c fwohci0: Phy 1394a available S400, 2 ports. fwohci0: Link S400, max_rec 2048 bytes. firewire0: <IEEE1394(FireWire) bus> on fwohci0 sbp0: <SBP-2/SCSI over FireWire> on firewire0 fwohci0: Initiate bus reset fwohci0: node_id=0xc800ffc0, gen=1, CYCLEMASTER mode firewire0: 1 nodes, maxhop <= 0, cable IRM = 0 (me) firewire0: bus manager 0 (me) pci2: <network, ethernet> at device 8.0 (no driver attached) ndis0: <Intel(R) PRO/Wireless 2200BG Network Connection> mem 0xd0201000-0xd0201fff irq 9 at device 11.0 on pci2 ndis0: [GIANT-LOCKED] ndis0: NDIS API version: 5.1 ndis0: NDIS ERROR: c000138d (unknown error) ndis0: NDIS NUMERRORS: 0 ndis0: init handler failed device_attach: ndis0 attach returned 6 isab0: <PCI-ISA bridge> at device 31.0 on pci0 isa0: <ISA bus> on isab0 atapci0: <Intel ICH4 UDMA100 controller> port 0x1860-0x186f,0x376,0x170-0x177,0x3f6,0x1f0-0x1f7 at device 31.1 on pci0 ata0: channel #0 on atapci0 ata1: channel #1 on atapci0 pci0: <serial bus, SMBus> at device 31.3 (no driver attached) pcm0: <Intel ICH4 (82801DB)> port 0x18c0-0x18ff,0x1c00-0x1cff mem 0xd0000800-0xd00008ff,0xd0000c00-0xd0000dff irq 9 at device 31.5 on pci0 pcm0: [GIANT-LOCKED] pcm0: <Yamaha YMF753 AC97 Codec> pci0: <simple comms> at device 31.6 (no driver attached) atkbdc0: <Keyboard controller (i8042)> port 0x64,0x60 irq 1 on acpi0 atkbd0: <AT Keyboard> irq 1 on atkbdc0 kbd0 at atkbd0 atkbd0: [GIANT-LOCKED] psm0: <PS/2 Mouse> irq 12 on atkbdc0 psm0: [GIANT-LOCKED] psm0: model GlidePoint, device ID 0 acpi_cmbat0: <Control Method Battery> on acpi0 acpi_acad0: <AC Adapter> on acpi0 npx0: [FAST] npx0: <math processor> on motherboard npx0: INT 16 interface pmtimer0 on isa0 orm0: <ISA Option ROMs> at iomem 0xdc000-0xdffff,0xd8000-0xdbfff,0xc0000-0xcffff on isa0 sc0: <System console> on isa0 sc0: VGA <16 virtual consoles, flags=0x200> vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 Timecounter "TSC" frequency 1686966203 Hz quality 800 Timecounters tick every 10.000 msec ipfw2 initialized, divert enabled, rule-based forwarding disabled, default to deny, logging unlimited acpi_cpu: throttling enabled, 8 steps (100% to 12.5%), currently 100.0% ad0: 57231MB <TOSHIBA MK6021GAS/GA024A> [116280/16/63] at ata0-master UDMA100 uhub2: at uhub1 port 1 (addr 2) disconnected umass0: at uhub3 port 1 (addr 2) disconnected umass0: detached ukbd0: detached ums0: detached ums1: detached uhub2: detached uhub2: Texas Instruments UT-USB41 hub, class 9/0, rev 1.10/1.10, addr 2 uhub2: 4 ports with 4 removable, self powered ukbd0: BTC USB KMp, rev 1.00/1.00, addr 3, iclass 3/1 kbd1 at ukbd0 ums0: BTC USB KMp, rev 1.00/1.00, addr 3, iclass 3/1 ums0: 3 buttons ums1: Microsoft Microsoft IntelliMouse\M-. Explorer, rev 1.10/1.14, addr 4, iclass 3/1 ums1: 5 buttons and Z dir. ata1-slave: FAILURE - ATAPI_IDENTIFY no interrupt ata1-slave: FAILURE - ATAPI_IDENTIFY no interrupt ATAPI_RESET time = 180us acd0: CDRW <UJDA755 DVD/CDRW/1.00> at ata1-master UDMA33 da0 at umass-sim1 bus 1 target 0 lun 0 da0: <Sony MSC-U04 3.00> Removable Direct Access SCSI-0 device da0: 1.000MB/s transfers da0: 3MB (7904 512 byte sectors: 64H 32S/T 3C) Mounting root from ufs:/dev/ad0s3a fxp0: <Intel 82801DB (ICH4) Pro/100 VE Ethernet> port 0x4000-0x403f mem 0xd0200000-0xd0200fff irq 9 at device 8.0 on pci2 fxp0: Ethernet address: 08:00:46:c8:45:b3 fxp0: [GIANT-LOCKED] ndis0: <Intel(R) PRO/Wireless 2200BG Network Connection> mem 0xd0201000-0xd0201fff irq 9 at device 11.0 on pci2 ndis0: [GIANT-LOCKED] ndis0: NDIS API version: 5.1 ndis0: Ethernet address: 00:0e:35:03:82:74 ndis0: 11b rates: 1Mbps 2Mbps 5.5Mbps 11Mbps 5.5Mbps 11Mbps ndis0: 11g rates: 6Mbps 9Mbps 12Mbps 18Mbps 24Mbps 36Mbps 48Mbps 54Mbps miibus0: <MII bus> on fxp0 inphy0: <i82562ET 10/100 media interface> on miibus0 inphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto -- Vladimir B. Grebenschikov SWsoft Inc. vova@sw-soft.com -- Vladimir B. Grebenchikov vova@fbsd.ru --=-BE6+xfMzJmYpAg2zZzbZ Content-Disposition: attachment; filename=acpidump-dt.txt Content-Type: text/plain; name=acpidump-dt.txt; charset=KOI8-R Content-Transfer-Encoding: base64 LyoNCiAgUlNEIFBUUjogT0VNPVBUTFRELCBBQ1BJX1Jldj0xLjB4ICgwKQ0KCVJTRFQ9MHgxZmY3 ODA2YiwgY2tzdW09NTYNCiAqLw0KLyoNCiAgUlNEVDogTGVuZ3RoPTQ4LCBSZXZpc2lvbj0xLCBD aGVja3N1bT0yNDksDQoJT0VNSUQ9U09OWSwgT0VNIFRhYmxlIElEPUcwLCBPRU0gUmV2aXNpb249 MHgyMDAzMTEyMSwNCglDcmVhdG9yIElEPVBUTCwgQ3JlYXRvciBSZXZpc2lvbj0weDANCglFbnRy aWVzPXsgMHgxZmY3YmVjMiwgMHgxZmY3YmZkOCwgMHgxZmY3ODA5YiB9DQogKi8NCi8qDQogIEZB Q1A6IExlbmd0aD0xMzIsIFJldmlzaW9uPTIsIENoZWNrc3VtPTEyMywNCglPRU1JRD1TT05ZLCBP RU0gVGFibGUgSUQ9RzAsIE9FTSBSZXZpc2lvbj0weDIwMDMxMTIxLA0KCUNyZWF0b3IgSUQ9UFRM LCBDcmVhdG9yIFJldmlzaW9uPTB4NTANCiAJRkFDUz0weDFmZjdjZmMwLCBEU0RUPTB4MWZmNzg1 MDcNCglJTlRfTU9ERUw9UElDDQoJUHJlZmVycmVkX1BNX1Byb2ZpbGU9VW5zcGVjaWZpZWQgKDAp DQoJU0NJX0lOVD05DQoJU01JX0NNRD0weGIyLCBBQ1BJX0VOQUJMRT0weGYwLCBBQ1BJX0RJU0FC TEU9MHhmMSwgUzRCSU9TX1JFUT0weDANCglQU1RBVEVfQ05UPTB4ODANCglQTTFhX0VWVF9CTEs9 MHgxMDAwLTB4MTAwMw0KCVBNMWFfQ05UX0JMSz0weDEwMDQtMHgxMDA1DQoJUE0yX0NOVF9CTEs9 MHgxMDIwLTB4MTAyMA0KCVBNX1RNUl9CTEs9MHgxMDA4LTB4MTAwYg0KCUdQRTBfQkxLPTB4MTAy OC0weDEwMmYNCglQX0xWTDJfTEFUPTEgdXMsIFBfTFZMM19MQVQ9MTAwMSB1cw0KCUZMVVNIX1NJ WkU9MCwgRkxVU0hfU1RSSURFPTANCglEVVRZX09GRlNFVD0xLCBEVVRZX1dJRFRIPTMNCglEQVlf QUxSTT0xMywgTU9OX0FMUk09MCwgQ0VOVFVSWT01MA0KCUlBUENfQk9PVF9BUkNIPXs4MDQyfQ0K CUZsYWdzPXtXQklOVkQsUFJPQ19DMSxQV1JfQlVUVE9OLFNMUF9CVVRUT04sUlRDX1M0LFJFU0VU X1JFR30NCglSRVNFVF9SRUc9MHg2NDowWzhdIChJTyksIFJFU0VUX1ZBTFVFPTB4ZmUNCiAqLw0K LyoNCiAgRkFDUzoJTGVuZ3RoPTY0LCBId1NpZz0weDAwMDAwMDAwLCBGaXJtX1dha2VfVmVjPTB4 MDAwMDAwMDANCglHbG9iYWxfTG9jaz0NCglGbGFncz0NCglWZXJzaW9uPTANCiAqLw0KLyoNCiAg RFNEVDogTGVuZ3RoPTE0Nzc5LCBSZXZpc2lvbj0xLCBDaGVja3N1bT0xMDEsDQoJT0VNSUQ9U09O WSwgT0VNIFRhYmxlIElEPUcwLCBPRU0gUmV2aXNpb249MHgyMDAzMTEyMSwNCglDcmVhdG9yIElE PVBUTCwgQ3JlYXRvciBSZXZpc2lvbj0weDEwMDAwMGQNCiAqLw0KLyoNCiAgQk9PVDogTGVuZ3Ro PTQwLCBSZXZpc2lvbj0xLCBDaGVja3N1bT03MSwNCglPRU1JRD1TT05ZLCBPRU0gVGFibGUgSUQ9 RzAsIE9FTSBSZXZpc2lvbj0weDIwMDMxMTIxLA0KCUNyZWF0b3IgSUQ9UFRMLCBDcmVhdG9yIFJl dmlzaW9uPTB4MQ0KICovDQovKg0KICBTU0RUOiBMZW5ndGg9NzI4LCBSZXZpc2lvbj0xLCBDaGVj a3N1bT0yMzcsDQoJT0VNSUQ9U09OWSwgT0VNIFRhYmxlIElEPUcwLCBPRU0gUmV2aXNpb249MHgy MDAzMTEyMSwNCglDcmVhdG9yIElEPVBUTCwgQ3JlYXRvciBSZXZpc2lvbj0weDANCiAqLw0KLyoN CiAqIEludGVsIEFDUEkgQ29tcG9uZW50IEFyY2hpdGVjdHVyZQ0KICogQU1MIERpc2Fzc2VtYmxl ciB2ZXJzaW9uIDIwMDQwNTI3DQogKg0KICogRGlzYXNzZW1ibHkgb2YgL3RtcC9hY3BpZHVtcC5R RHlzcFAsIE1vbiBBdWcgMzAgMTE6NTY6MDYgMjAwNA0KICovDQpEZWZpbml0aW9uQmxvY2sgKCJE U0RULmFtbCIsICJEU0RUIiwgMSwgIlNPTlkiLCAiRzAiLCA1MzcwNzE5MDUpDQp7DQogICAgT3Bl cmF0aW9uUmVnaW9uIChQT1JULCBTeXN0ZW1JTywgMHg4MCwgMHgwMSkNCiAgICBGaWVsZCAoUE9S VCwgQnl0ZUFjYywgTm9Mb2NrLCBQcmVzZXJ2ZSkNCiAgICB7DQogICAgICAgIFA4MEgsICAgOA0K ICAgIH0NCg0KICAgIE9wZXJhdGlvblJlZ2lvbiAoSU9fVCwgU3lzdGVtSU8sIDB4MDgwMCwgMHgw OCkNCiAgICBGaWVsZCAoSU9fVCwgQnl0ZUFjYywgTm9Mb2NrLCBQcmVzZXJ2ZSkNCiAgICB7DQog ICAgICAgIFRSUDAsICAgOA0KICAgIH0NCg0KICAgIE9wZXJhdGlvblJlZ2lvbiAoR1BJTywgU3lz dGVtSU8sIDB4MTE4MCwgMHgzQykNCiAgICBGaWVsZCAoR1BJTywgQnl0ZUFjYywgTm9Mb2NrLCBQ cmVzZXJ2ZSkNCiAgICB7DQogICAgICAgIEdVMDAsICAgOCwgDQogICAgICAgIEdVMDEsICAgOCwg DQogICAgICAgIEdVMDIsICAgOCwgDQogICAgICAgIEdVMDMsICAgOCwgDQogICAgICAgIEdJTzAs ICAgOCwgDQogICAgICAgIEdJTzEsICAgOCwgDQogICAgICAgIEdJTzIsICAgOCwgDQogICAgICAg IEdJTzMsICAgOCwgDQogICAgICAgIE9mZnNldCAoMHgwQyksIA0KICAgICAgICBHTDAwLCAgIDgs IA0KICAgICAgICBHTDAxLCAgIDgsIA0KICAgICAgICBHTDAyLCAgIDgsIA0KICAgICAgICBHTDAz LCAgIDgsIA0KICAgICAgICBPZmZzZXQgKDB4MTgpLCANCiAgICAgICAgR0IwMCwgICA4LCANCiAg ICAgICAgR0IwMSwgICA4LCANCiAgICAgICAgR0IwMiwgICA4LCANCiAgICAgICAgR0IwMywgICA4 LCANCiAgICAgICAgT2Zmc2V0ICgweDJDKSwgDQogICAgICAgIEdJVjAsICAgOCwgDQogICAgICAg IEdJVjEsICAgOCwgDQogICAgICAgIEdJVjIsICAgOCwgDQogICAgICAgIEdJVjMsICAgOCwgDQog ICAgICAgIEdVMDQsICAgOCwgDQogICAgICAgIEdVMDUsICAgOCwgDQogICAgICAgIEdVMDYsICAg OCwgDQogICAgICAgIEdVMDcsICAgOCwgDQogICAgICAgIEdJTzQsICAgOCwgDQogICAgICAgIEdJ TzUsICAgOCwgDQogICAgICAgIEdJTzYsICAgOCwgDQogICAgICAgIEdJTzcsICAgOCwgDQogICAg ICAgICAgICAsICAgMSwgDQogICAgICAgICAgICAsICAgMSwgDQogICAgICAgIENQRU4sICAgMSwg DQogICAgICAgIE9mZnNldCAoMHgzOSksIA0KICAgICAgICBHTDA1LCAgIDgsIA0KICAgICAgICBH TDA2LCAgIDgsIA0KICAgICAgICBHTDA3LCAgIDgNCiAgICB9DQoNCiAgICBPcGVyYXRpb25SZWdp b24gKE1OVlMsIFN5c3RlbU1lbW9yeSwgMHgxRkY3Q0FCNywgMHg0MCkNCiAgICBGaWVsZCAoTU5W UywgQW55QWNjLCBMb2NrLCBQcmVzZXJ2ZSkNCiAgICB7DQogICAgICAgIFBTQUMsICAgOCwgDQog ICAgICAgIFBTREMsICAgOA0KICAgIH0NCg0KICAgIE11dGV4IChNVVRYLCAweDAwKQ0KICAgIE5h bWUgKF9TMCwgUGFja2FnZSAoMHgwMykNCiAgICB7DQogICAgICAgIDB4MDAsIA0KICAgICAgICAw eDAwLCANCiAgICAgICAgMHgwMA0KICAgIH0pDQogICAgTmFtZSAoX1MzLCBQYWNrYWdlICgweDAz KQ0KICAgIHsNCiAgICAgICAgMHgwNSwgDQogICAgICAgIDB4MDUsIA0KICAgICAgICAweDAwDQog ICAgfSkNCiAgICBOYW1lIChfUzQsIFBhY2thZ2UgKDB4MDMpDQogICAgew0KICAgICAgICAweDA2 LCANCiAgICAgICAgMHgwNiwgDQogICAgICAgIDB4MDANCiAgICB9KQ0KICAgIE5hbWUgKF9TNSwg UGFja2FnZSAoMHgwMykNCiAgICB7DQogICAgICAgIDB4MDcsIA0KICAgICAgICAweDA3LCANCiAg ICAgICAgMHgwMA0KICAgIH0pDQogICAgU2NvcGUgKFxfUFIpDQogICAgew0KICAgICAgICBQcm9j ZXNzb3IgKENQVTAsIDB4MDAsIDB4MDAwMDEwMTAsIDB4MDYpDQogICAgICAgIHsNCiAgICAgICAg ICAgIFNjb3BlIChcKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIE5hbWUgKEdWU1Ms IE9uZSkNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgU2NvcGUgKFxfUFIuQ1BVMCkNCiAg ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBNZXRob2QgKF9DU1QsIDAsIE5vdFNlcmlhbGl6 ZWQpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBJZiAoXF9TQi5QQ0kw LkxQQ0IuRUMwLkVDT0spDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgICAgIFN0b3JlIChcX1NCLlBDSTAuTFBDQi5FQzAuQUNBVCwgTG9jYWwwKQ0KICAgICAgICAg ICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAg ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgQW5kIChQSFNEICgweEQ0LCAweDgwKSwgMHgw NDAwLCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAg ICBJZiAoTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg ICAgICBSZXR1cm4gKEFDU1QpDQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAg ICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg ICBJZiAoR1ZTUykNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICBSZXR1cm4gKERDU1QpDQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAg ICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChERFNUKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0KDQogICAg ICAgICAgICAgICAgTmFtZSAoQUNTVCwgUGFja2FnZSAoMHgwMykNCiAgICAgICAgICAgICAgICB7 DQogICAgICAgICAgICAgICAgICAgIDB4MDIsIA0KICAgICAgICAgICAgICAgICAgICBQYWNrYWdl ICgweDA0KQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBS ZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgUmVnaXN0ZXIgKEZGaXhlZEhXLCAweDA4LCAweDAwLCAweDAwMDAw MDAwMDAwMDAwMDApDQogICAgICAgICAgICAgICAgICAgICAgICB9LCANCg0KICAgICAgICAgICAg ICAgICAgICAgICAgMHgwMSwgDQogICAgICAgICAgICAgICAgICAgICAgICAweDAxLCANCiAgICAg ICAgICAgICAgICAgICAgICAgIDB4MDNFOA0KICAgICAgICAgICAgICAgICAgICB9LCANCg0KICAg ICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQ0KICAgICAgICAgICAgICAgICAgICB7DQog ICAgICAgICAgICAgICAgICAgICAgICBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAgICAgICAg ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVnaXN0ZXIgKFN5c3Rl bUlPLCAweDA4LCAweDAwLCAweDAwMDAwMDAwMDAwMDEwMTQpDQogICAgICAgICAgICAgICAgICAg ICAgICB9LCANCg0KICAgICAgICAgICAgICAgICAgICAgICAgMHgwMiwgDQogICAgICAgICAgICAg ICAgICAgICAgICAweDAxLCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDFGNA0KICAgICAg ICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICBOYW1l IChEQ1NULCBQYWNrYWdlICgweDA1KQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg ICAgICAgMHgwNCwgDQogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpDQogICAgICAg ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFJlc291cmNlVGVtcGxhdGUg KCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICBSZWdpc3RlciAoRkZpeGVkSFcsIDB4MDgsIDB4MDAsIDB4MDAwMDAwMDAwMDAwMDAwMCkNCiAg ICAgICAgICAgICAgICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICAgICAgICAgICAgICAweDAx LCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEsIA0KICAgICAgICAgICAgICAgICAgICAg ICAgMHgwM0U4DQogICAgICAgICAgICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICAgICAgICAg IFBhY2thZ2UgKDB4MDQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgICAgIFJlc291cmNlVGVtcGxhdGUgKCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICBSZWdpc3RlciAoU3lzdGVtSU8sIDB4MDgsIDB4MDAs IDB4MDAwMDAwMDAwMDAwMTAxNCkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0sIA0KDQogICAg ICAgICAgICAgICAgICAgICAgICAweDAyLCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDEs IA0KICAgICAgICAgICAgICAgICAgICAgICAgMHgwMUY0DQogICAgICAgICAgICAgICAgICAgIH0s IA0KDQogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpDQogICAgICAgICAgICAgICAg ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFJlc291cmNlVGVtcGxhdGUgKCkNCiAgICAg ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZWdpc3Rl ciAoU3lzdGVtSU8sIDB4MDgsIDB4MDAsIDB4MDAwMDAwMDAwMDAwMTAxNSkNCiAgICAgICAgICAg ICAgICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICAgICAgICAgICAgICAweDAzLCANCiAgICAg ICAgICAgICAgICAgICAgICAgIDB4NTUsIA0KICAgICAgICAgICAgICAgICAgICAgICAgMHhGQQ0K ICAgICAgICAgICAgICAgICAgICB9LCANCg0KICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgw eDA0KQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBSZXNv dXJjZVRlbXBsYXRlICgpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgUmVnaXN0ZXIgKFN5c3RlbUlPLCAweDA4LCAweDAwLCAweDAwMDAwMDAw MDAwMDEwMTYpDQogICAgICAgICAgICAgICAgICAgICAgICB9LCANCg0KICAgICAgICAgICAgICAg ICAgICAgICAgMHgwMywgDQogICAgICAgICAgICAgICAgICAgICAgICAweEI5LCANCiAgICAgICAg ICAgICAgICAgICAgICAgIDB4NjQNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAg ICAgIH0pDQogICAgICAgICAgICAgICAgTmFtZSAoRERTVCwgUGFja2FnZSAoMHgwNCkNCiAgICAg ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIDB4MDMsIA0KICAgICAgICAgICAgICAg ICAgICBQYWNrYWdlICgweDA0KQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgICAgICBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAgICAgICAgICAgICAgICAgICB7 DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVnaXN0ZXIgKEZGaXhlZEhXLCAweDA4LCAw eDAwLCAweDAwMDAwMDAwMDAwMDAwMDApDQogICAgICAgICAgICAgICAgICAgICAgICB9LCANCg0K ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMSwgDQogICAgICAgICAgICAgICAgICAgICAgICAw eDAxLCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDNFOA0KICAgICAgICAgICAgICAgICAg ICB9LCANCg0KICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQ0KICAgICAgICAgICAg ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBSZXNvdXJjZVRlbXBsYXRlICgpDQog ICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVn aXN0ZXIgKFN5c3RlbUlPLCAweDA4LCAweDAwLCAweDAwMDAwMDAwMDAwMDEwMTQpDQogICAgICAg ICAgICAgICAgICAgICAgICB9LCANCg0KICAgICAgICAgICAgICAgICAgICAgICAgMHgwMiwgDQog ICAgICAgICAgICAgICAgICAgICAgICAweDAxLCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4 MDFGNA0KICAgICAgICAgICAgICAgICAgICB9LCANCg0KICAgICAgICAgICAgICAgICAgICBQYWNr YWdlICgweDA0KQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg ICBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgUmVnaXN0ZXIgKFN5c3RlbUlPLCAweDA4LCAweDAwLCAweDAw MDAwMDAwMDAwMDEwMTUpDQogICAgICAgICAgICAgICAgICAgICAgICB9LCANCg0KICAgICAgICAg ICAgICAgICAgICAgICAgMHgwMywgDQogICAgICAgICAgICAgICAgICAgICAgICAweDU1LCANCiAg ICAgICAgICAgICAgICAgICAgICAgIDB4RkENCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAg ICAgICAgICAgIH0pDQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBOYW1l IChcQ1RZUCwgMHgwMCkNCiAgICBOYW1lIChcRUNPTiwgMHgwMCkNCiAgICBNZXRob2QgKF9QVFMs IDEsIE5vdFNlcmlhbGl6ZWQpDQogICAgew0KICAgICAgICBTdG9yZSAoQXJnMCwgUDgwSCkNCiAg ICAgICAgSWYgKExFcXVhbCAoQXJnMCwgMHgwMykpDQogICAgICAgIHsNCiAgICAgICAgICAgIFN0 b3JlIChcX1NCLlBDSTAuTFBDQi5TUElDLl9DUlMgKCksIFxfU0IuUENJMC5MUENCLlNQSUMuU1NS QykNCiAgICAgICAgfQ0KDQogICAgICAgIElmIChMRXF1YWwgKEFyZzAsIDB4MDQpKQ0KICAgICAg ICB7DQogICAgICAgICAgICBTdG9yZSAoXF9TQi5QQ0kwLkxQQ0IuU1BJQy5fQ1JTICgpLCBcX1NC LlBDSTAuTFBDQi5TUElDLlNTUkMpDQogICAgICAgICAgICBQSFNCICgweEEyLCBcX1NCLk9TVEIp DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBNZXRob2QgKF9XQUssIDEsIE5vdFNlcmlhbGl6ZWQp DQogICAgew0KICAgICAgICBTdG9yZSAoMHgwMCwgUDgwSCkNCiAgICAgICAgXF9TQi5OQ1BVICgp DQogICAgICAgIElmIChMRXF1YWwgKEFyZzAsIDB4MDMpKQ0KICAgICAgICB7DQogICAgICAgICAg ICBcX1NCLlBDSTAuTFBDQi5TUElDLl9TUlMgKFxfU0IuUENJMC5MUENCLlNQSUMuU1NSQykNCiAg ICAgICAgICAgIElmIChMTm90IChcX1NCLlBDSTAuTFBDQi5FQzAuV0FLSSkpDQogICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgTm90aWZ5IChcX1NCLlBXUkIsIDB4MDIpDQogICAgICAgICAg ICB9DQogICAgICAgIH0NCg0KICAgICAgICBJZiAoTEVxdWFsIChBcmcwLCAweDA0KSkNCiAgICAg ICAgew0KICAgICAgICAgICAgXF9TQi5QQ0kwLkxQQ0IuU1BJQy5fU1JTIChcX1NCLlBDSTAuTFBD Qi5TUElDLlNTUkMpDQogICAgICAgICAgICBQSFNCICgweEEzLCBcX1NCLk9TVEIpDQogICAgICAg ICAgICBOb3RpZnkgKFxfU0IuUFdSQiwgMHgwMikNCiAgICAgICAgfQ0KDQogICAgICAgIFJldHVy biAoWmVybykNCiAgICB9DQoNCiAgICBTY29wZSAoXF9TQikNCiAgICB7DQogICAgICAgIE5hbWUg KE9TVEIsIE9uZXMpDQogICAgICAgIE9wZXJhdGlvblJlZ2lvbiAoT1NUWSwgU3lzdGVtTWVtb3J5 LCAweDFGRjdDQUY3LCAweDAwMDAwMDAxKQ0KICAgICAgICBGaWVsZCAoT1NUWSwgQW55QWNjLCBO b0xvY2ssIFByZXNlcnZlKQ0KICAgICAgICB7DQogICAgICAgICAgICBUUE9TLCAgIDgNCiAgICAg ICAgfQ0KDQogICAgICAgIE1ldGhvZCAoT1NUUCwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAg ew0KICAgICAgICAgICAgSWYgKExFcXVhbCAoXk9TVEIsIE9uZXMpKQ0KICAgICAgICAgICAgew0K ICAgICAgICAgICAgICAgIElmIChDb25kUmVmT2YgKFxfT1NJLCBMb2NhbDApKQ0KICAgICAgICAg ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgSWYgKFxfT1NJICgiV2luZG93cyAyMDAxLjEi KSkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUg KDB4MjAsIF5PU1RCKQ0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MjAsIF5UUE9T KQ0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAg ICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgSWYgKFxfT1NJICgiV2lu ZG93cyAyMDAxIFNQMSIpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFN0b3JlICgweDEwLCBeT1NUQikNCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICBTdG9yZSAoMHgxMCwgXlRQT1MpDQogICAgICAgICAgICAgICAgICAgICAgICB9DQog ICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAgICB7DQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKFxfT1NJICgiV2luZG93cyAyMDAxIikpDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBTdG9yZSAoMHgwOCwgXk9TVEIpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IFN0b3JlICgweDA4LCBeVFBPUykNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDAsIF5PU1RCKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMCwgXlRQT1MpDQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAg ICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIEVs c2UNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIElmIChDb25kUmVmT2Yg KFxfT1MsIExvY2FsMCkpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgICAgIElmICheU0VRTCAoXF9PUywgIk1pY3Jvc29mdCBXaW5kb3dzIikpDQogICAgICAgICAg ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDEs IF5PU1RCKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAxLCBeVFBPUykN CiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UN CiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJ ZiAoXlNFUUwgKFxfT1MsICJNaWNyb3NvZnQgV2luZG93c01FOiBNaWxsZW5uaXVtIEVkaXRpb24i KSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFN0b3JlICgweDAyLCBeT1NUQikNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgU3RvcmUgKDB4MDIsIF5UUE9TKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0N CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoXlNFUUwgKFxfT1Ms ICJNaWNyb3NvZnQgV2luZG93cyBOVCIpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwNCwgXk9T VEIpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwNCwgXlRQ T1MpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMCwgXk9TVEIpDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMCwgXlRQT1MpDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIH0N CiAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg ICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMCwgXk9TVEIpDQogICAgICAgICAgICAgICAgICAg ICAgICBTdG9yZSAoMHgwMCwgXlRQT1MpDQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAg ICAgICAgICB9DQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIFJldHVybiAoXk9TVEIpDQog ICAgICAgIH0NCg0KICAgICAgICBNZXRob2QgKFNFUUwsIDIsIFNlcmlhbGl6ZWQpDQogICAgICAg IHsNCiAgICAgICAgICAgIFN0b3JlIChTaXplT2YgKEFyZzApLCBMb2NhbDApDQogICAgICAgICAg ICBTdG9yZSAoU2l6ZU9mIChBcmcxKSwgTG9jYWwxKQ0KICAgICAgICAgICAgSWYgKExOb3QgKExF cXVhbCAoTG9jYWwwLCBMb2NhbDEpKSkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBS ZXR1cm4gKFplcm8pDQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIE5hbWUgKEJVRjAsIEJ1 ZmZlciAoTG9jYWwwKSB7fSkNCiAgICAgICAgICAgIFN0b3JlIChBcmcwLCBCVUYwKQ0KICAgICAg ICAgICAgTmFtZSAoQlVGMSwgQnVmZmVyIChMb2NhbDApIHt9KQ0KICAgICAgICAgICAgU3RvcmUg KEFyZzEsIEJVRjEpDQogICAgICAgICAgICBTdG9yZSAoWmVybywgTG9jYWwyKQ0KICAgICAgICAg ICAgV2hpbGUgKExMZXNzIChMb2NhbDIsIExvY2FsMCkpDQogICAgICAgICAgICB7DQogICAgICAg ICAgICAgICAgU3RvcmUgKERlcmVmT2YgKEluZGV4IChCVUYwLCBMb2NhbDIpKSwgTG9jYWwzKQ0K ICAgICAgICAgICAgICAgIFN0b3JlIChEZXJlZk9mIChJbmRleCAoQlVGMSwgTG9jYWwyKSksIExv Y2FsNCkNCiAgICAgICAgICAgICAgICBJZiAoTE5vdCAoTEVxdWFsIChMb2NhbDMsIExvY2FsNCkp KQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChaZXJvKQ0K ICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIEluY3JlbWVudCAoTG9jYWwyKQ0K ICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBSZXR1cm4gKE9uZSkNCiAgICAgICAgfQ0KICAg IH0NCg0KICAgIFNjb3BlIChcX0dQRSkNCiAgICB7DQogICAgICAgIE11dGV4IChHTE9LLCAweDAw KQ0KICAgICAgICBNZXRob2QgKF9MMDMsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgIHsNCiAg ICAgICAgICAgIE5vdGlmeSAoXF9TQi5QQ0kwLlVTQjAsIDB4MDIpDQogICAgICAgIH0NCg0KICAg ICAgICBNZXRob2QgKF9MMDQsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgIHsNCiAgICAgICAg ICAgIE5vdGlmeSAoXF9TQi5QQ0kwLlVTQjEsIDB4MDIpDQogICAgICAgIH0NCg0KICAgICAgICBN ZXRob2QgKF9MMDUsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgIHsNCiAgICAgICAgICAgIE5v dGlmeSAoXF9TQi5QQ0kwLk1PRE0sIDB4MDIpDQogICAgICAgIH0NCg0KICAgICAgICBNZXRob2Qg KF9MMEMsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgIHsNCiAgICAgICAgICAgIE5vdGlmeSAo XF9TQi5QQ0kwLlVTQjIsIDB4MDIpDQogICAgICAgIH0NCg0KICAgICAgICBNZXRob2QgKF9MMEQs IDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgIHsNCiAgICAgICAgICAgIE5vdGlmeSAoXF9TQi5Q Q0kwLlVTQjcsIDB4MDIpDQogICAgICAgIH0NCg0KICAgICAgICBNZXRob2QgKF9MMEIsIDAsIE5v dFNlcmlhbGl6ZWQpDQogICAgICAgIHsNCiAgICAgICAgICAgIElmIChMTm90IChMTGVzcyAoXF9T Qi5PU1RCLCAweDA4KSkpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgQWNxdWlyZSAo R0xPSywgMHhGRkZGKQ0KICAgICAgICAgICAgICAgIFNsZWVwICgweDY0KQ0KICAgICAgICAgICAg ICAgIE5vdGlmeSAoXF9TQi5QQ0kwLlBDSUIuQ1JEMCwgMHgwMikNCiAgICAgICAgICAgICAgICBT bGVlcCAoMHg2NCkNCiAgICAgICAgICAgICAgICBSZWxlYXNlIChHTE9LKQ0KICAgICAgICAgICAg ICAgIE5vdGlmeSAoXF9TQi5QQ0kwLlBDSUIsIDB4MDIpDQogICAgICAgICAgICB9DQogICAgICAg ICAgICBFbHNlDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgTm90aWZ5IChcX1NCLlBD STAuUENJQiwgMHgwMikNCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KDQogICAgICAgIE1ldGhv ZCAoX0wxRCwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgew0KICAgICAgICAgICAgTm90aWZ5 IChcX1NCLlBDSTAuTFBDQi5FQzAsIDB4MDIpDQogICAgICAgIH0NCiAgICB9DQoNCiAgICBPcGVy YXRpb25SZWdpb24gKFNNSTAsIFN5c3RlbU1lbW9yeSwgMHgxRkY3Q0FGOCwgMHgwMDAwMDQxNSkN CiAgICBGaWVsZCAoU01JMCwgQW55QWNjLCBOb0xvY2ssIFByZXNlcnZlKQ0KICAgIHsNCiAgICAg ICAgQkNNRCwgICA4LCANCiAgICAgICAgRElELCAgICAzMiwgDQogICAgICAgIElORk8sICAgNDA5 Ng0KICAgIH0NCg0KICAgIEZpZWxkIChTTUkwLCBBbnlBY2MsIE5vTG9jaywgUHJlc2VydmUpDQog ICAgew0KICAgICAgICBPZmZzZXQgKDB4MDUpLCANCiAgICAgICAgSU5GQiwgICA4DQogICAgfQ0K DQogICAgRmllbGQgKFNNSTAsIEFueUFjYywgTm9Mb2NrLCBQcmVzZXJ2ZSkNCiAgICB7DQogICAg ICAgIE9mZnNldCAoMHgwNSksIA0KICAgICAgICBJTkZELCAgIDMyDQogICAgfQ0KDQogICAgRmll bGQgKFNNSTAsIEFueUFjYywgTm9Mb2NrLCBQcmVzZXJ2ZSkNCiAgICB7DQogICAgICAgIE9mZnNl dCAoMHgwNSksIA0KICAgICAgICBTWEJGLCAgIDgzMjANCiAgICB9DQoNCiAgICBGaWVsZCAoU01J MCwgQW55QWNjLCBOb0xvY2ssIFByZXNlcnZlKQ0KICAgIHsNCiAgICAgICAgT2Zmc2V0ICgweDA1 KSwgDQogICAgICAgIElORjEsICAgOCwgDQogICAgICAgIElORjIsICAgOA0KICAgIH0NCg0KICAg IE9wZXJhdGlvblJlZ2lvbiAoU01JMSwgU3lzdGVtSU8sIDB4MDAwMEZFMDAsIDB4MDAwMDAwMDIp DQogICAgRmllbGQgKFNNSTEsIEFueUFjYywgTm9Mb2NrLCBQcmVzZXJ2ZSkNCiAgICB7DQogICAg ICAgIFNNSUMsICAgOA0KICAgIH0NCg0KICAgIE11dGV4IChNUEhTLCAweDAwKQ0KICAgIE1ldGhv ZCAoUEhTMCwgMSwgTm90U2VyaWFsaXplZCkNCiAgICB7DQogICAgICAgIFN0b3JlIChBcmcwLCBC Q01EKQ0KICAgICAgICBTdG9yZSAoWmVybywgU01JQykNCiAgICAgICAgV2hpbGUgKExFcXVhbCAo QkNNRCwgQXJnMCkpIHt9DQogICAgICAgIFN0b3JlICgweDAwLCBCQ01EKQ0KICAgIH0NCg0KICAg IE1ldGhvZCAoUEhTLCAxLCBTZXJpYWxpemVkKQ0KICAgIHsNCiAgICAgICAgQWNxdWlyZSAoTVBI UywgMHhGRkZGKQ0KICAgICAgICBTdG9yZSAoMHgwMCwgRElEKQ0KICAgICAgICBQSFMwIChBcmcw KQ0KICAgICAgICBTdG9yZSAoSU5GRCwgTG9jYWwwKQ0KICAgICAgICBSZWxlYXNlIChNUEhTKQ0K ICAgICAgICBSZXR1cm4gKExvY2FsMCkNCiAgICB9DQoNCiAgICBNZXRob2QgKFBIU0QsIDIsIFNl cmlhbGl6ZWQpDQogICAgew0KICAgICAgICBBY3F1aXJlIChNUEhTLCAweEZGRkYpDQogICAgICAg IFN0b3JlICgweDAwLCBESUQpDQogICAgICAgIFN0b3JlIChBcmcxLCBJTkZEKQ0KICAgICAgICBQ SFMwIChBcmcwKQ0KICAgICAgICBTdG9yZSAoSU5GRCwgTG9jYWwwKQ0KICAgICAgICBSZWxlYXNl IChNUEhTKQ0KICAgICAgICBSZXR1cm4gKExvY2FsMCkNCiAgICB9DQoNCiAgICBNZXRob2QgKFBI U1csIDMsIFNlcmlhbGl6ZWQpDQogICAgew0KICAgICAgICBBY3F1aXJlIChNUEhTLCAweEZGRkYp DQogICAgICAgIFN0b3JlICgweDAwLCBESUQpDQogICAgICAgIFN0b3JlIChBcmcxLCBJTkYxKQ0K ICAgICAgICBTdG9yZSAoQXJnMiwgSU5GMikNCiAgICAgICAgUEhTMCAoQXJnMCkNCiAgICAgICAg U3RvcmUgKElORkIsIExvY2FsMCkNCiAgICAgICAgUmVsZWFzZSAoTVBIUykNCiAgICAgICAgUmV0 dXJuIChMb2NhbDApDQogICAgfQ0KDQogICAgTWV0aG9kIChQSFNCLCAyLCBTZXJpYWxpemVkKQ0K ICAgIHsNCiAgICAgICAgQWNxdWlyZSAoTVBIUywgMHhGRkZGKQ0KICAgICAgICBTdG9yZSAoMHgw MCwgRElEKQ0KICAgICAgICBTdG9yZSAoQXJnMSwgSU5GQikNCiAgICAgICAgUEhTMCAoQXJnMCkN CiAgICAgICAgU3RvcmUgKElORkIsIExvY2FsMCkNCiAgICAgICAgUmVsZWFzZSAoTVBIUykNCiAg ICAgICAgUmV0dXJuIChMb2NhbDApDQogICAgfQ0KDQogICAgTWV0aG9kIChQU0NTLCAxLCBTZXJp YWxpemVkKQ0KICAgIHsNCiAgICAgICAgQWNxdWlyZSAoTVBIUywgMHhGRkZGKQ0KICAgICAgICBT dG9yZSAoQXJnMCwgRElEKQ0KICAgICAgICBQSFMwICgweDAwKQ0KICAgICAgICBTdG9yZSAoSU5G TywgTG9jYWwwKQ0KICAgICAgICBSZWxlYXNlIChNUEhTKQ0KICAgICAgICBSZXR1cm4gKExvY2Fs MCkNCiAgICB9DQoNCiAgICBNZXRob2QgKFBTU1MsIDIsIFNlcmlhbGl6ZWQpDQogICAgew0KICAg ICAgICBBY3F1aXJlIChNUEhTLCAweEZGRkYpDQogICAgICAgIFN0b3JlIChBcmcwLCBESUQpDQog ICAgICAgIFN0b3JlIChBcmcxLCBJTkZPKQ0KICAgICAgICBQSFMwICgweDAxKQ0KICAgICAgICBS ZWxlYXNlIChNUEhTKQ0KICAgIH0NCg0KICAgIE1ldGhvZCAoUFNQUywgMSwgU2VyaWFsaXplZCkN CiAgICB7DQogICAgICAgIEFjcXVpcmUgKE1QSFMsIDB4RkZGRikNCiAgICAgICAgU3RvcmUgKEFy ZzAsIERJRCkNCiAgICAgICAgUEhTMCAoMHgwMikNCiAgICAgICAgU3RvcmUgKElORk8sIExvY2Fs MCkNCiAgICAgICAgUmVsZWFzZSAoTVBIUykNCiAgICAgICAgUmV0dXJuIChMb2NhbDApDQogICAg fQ0KDQogICAgTWV0aG9kIChQU0RJLCAxLCBTZXJpYWxpemVkKQ0KICAgIHsNCiAgICAgICAgQWNx dWlyZSAoTVBIUywgMHhGRkZGKQ0KICAgICAgICBTdG9yZSAoQXJnMCwgRElEKQ0KICAgICAgICBQ SFMwICgweDAzKQ0KICAgICAgICBSZWxlYXNlIChNUEhTKQ0KICAgIH0NCg0KICAgIE1ldGhvZCAo UFNTVCwgMSwgU2VyaWFsaXplZCkNCiAgICB7DQogICAgICAgIEFjcXVpcmUgKE1QSFMsIDB4RkZG RikNCiAgICAgICAgU3RvcmUgKEFyZzAsIERJRCkNCiAgICAgICAgUEhTMCAoMHgwNCkNCiAgICAg ICAgU3RvcmUgKElORkIsIExvY2FsMCkNCiAgICAgICAgUmVsZWFzZSAoTVBIUykNCiAgICAgICAg UmV0dXJuIChMb2NhbDApDQogICAgfQ0KDQogICAgU2NvcGUgKFxfVFopDQogICAgew0KICAgICAg ICBUaGVybWFsWm9uZSAoQVRGMCkNCiAgICAgICAgew0KICAgICAgICAgICAgTWV0aG9kIChLRUxW LCAxLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIFN0b3Jl IChBcmcwLCBMb2NhbDApDQogICAgICAgICAgICAgICAgTXVsdGlwbHkgKExvY2FsMCwgMHgwQSwg TG9jYWwwKQ0KICAgICAgICAgICAgICAgIEFkZCAoTG9jYWwwLCAweDBBQUIsIExvY2FsMCkNCiAg ICAgICAgICAgICAgICBSZXR1cm4gKExvY2FsMCkNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAg ICAgTWV0aG9kIChfVE1QLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgew0KICAgICAg ICAgICAgICAgIElmIChMRXF1YWwgKFxfU0IuUENJMC5MUENCLkVDMC5FQ09LLCAweDAwKSkNCiAg ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIFN0b3JlIChQSFNEICgweEQ0LCAw eEMwKSwgTG9jYWwxKQ0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICBFbHNlDQog ICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBTdG9yZSAoXF9TQi5QQ0kwLkxQ Q0IuRUMwLkExVFAsIExvY2FsMSkNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAg ICBTaGlmdFJpZ2h0IChMb2NhbDEsIDB4MDgsIExvY2FsMCkNCiAgICAgICAgICAgICAgICBJZiAo TEdyZWF0ZXIgKExvY2FsMCwgMHg4MCkpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgICAgICBTbGVlcCAoMHgzMikNCiAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoXF9T Qi5QQ0kwLkxQQ0IuRUMwLkVDT0ssIDB4MDApKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAg ICAgICAgICAgICAgICAgICAgICBTdG9yZSAoUEhTRCAoMHhENCwgMHhDMCksIExvY2FsMSkNCiAg ICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAg ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChcX1NCLlBDSTAuTFBD Qi5FQzAuQTFUUCwgTG9jYWwxKQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAg ICAgICAgICAgU2hpZnRSaWdodCAoTG9jYWwxLCAweDA4LCBMb2NhbDApDQogICAgICAgICAgICAg ICAgfQ0KDQogICAgICAgICAgICAgICAgUmV0dXJuIChLRUxWIChMb2NhbDApKQ0KICAgICAgICAg ICAgfQ0KDQogICAgICAgICAgICBNZXRob2QgKF9QU1YsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAg ICAgICAgICB7DQogICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoXF9TQi5QQ0kwLkxQQ0IuRUMw LkVDT0ssIDB4MDApKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgU3Rv cmUgKFBIU0QgKDB4RDQsIDB4QzQpLCBMb2NhbDEpDQogICAgICAgICAgICAgICAgfQ0KICAgICAg ICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIFN0 b3JlIChcX1NCLlBDSTAuTFBDQi5FQzAuQTFQVCwgTG9jYWwxKQ0KICAgICAgICAgICAgICAgIH0N Cg0KICAgICAgICAgICAgICAgIFNoaWZ0UmlnaHQgKExvY2FsMSwgMHgwOCwgTG9jYWwwKQ0KICAg ICAgICAgICAgICAgIFJldHVybiAoS0VMViAoTG9jYWwwKSkNCiAgICAgICAgICAgIH0NCg0KICAg ICAgICAgICAgTmFtZSAoX1BTTCwgUGFja2FnZSAoMHgwMSkNCiAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICBcX1BSLkNQVTANCiAgICAgICAgICAgIH0pDQogICAgICAgICAgICBNZXRob2Qg KF9DUlQsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg SWYgKExFcXVhbCAoXF9TQi5QQ0kwLkxQQ0IuRUMwLkVDT0ssIDB4MDApKQ0KICAgICAgICAgICAg ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFBIU0QgKDB4RDQsIDB4QzYpLCBMb2Nh bDEpDQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgIFN0b3JlIChcX1NCLlBDSTAuTFBDQi5FQzAuQTFD VCwgTG9jYWwxKQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIFNoaWZ0Umln aHQgKExvY2FsMSwgMHgwOCwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgIFJldHVybiAoS0VMViAo TG9jYWwwKSkNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgTmFtZSAoX1RDMSwgMHgwMSkN CiAgICAgICAgICAgIE5hbWUgKF9UQzIsIDB4MDIpDQogICAgICAgICAgICBOYW1lIChfVFNQLCAw eDMyKQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgU2NvcGUgKFxfU0IpDQogICAgew0KICAgICAg ICBEZXZpY2UgKExJRDApDQogICAgICAgIHsNCiAgICAgICAgICAgIE5hbWUgKF9ISUQsIEVpc2FJ ZCAoIlBOUDBDMEQiKSkNCiAgICAgICAgICAgIE1ldGhvZCAoX0xJRCwgMCwgTm90U2VyaWFsaXpl ZCkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChcX1NCLlBDSTAu TFBDQi5FQzAuRUNPSywgMHgwMCkpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg ICAgICBBbmQgKFBIU0IgKDB4RDQsIDB4ODIpLCAweDA0LCBMb2NhbDApDQogICAgICAgICAgICAg ICAgfQ0KICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgICAgIFN0b3JlIChcX1NCLlBDSTAuTFBDQi5FQzAuTElEUywgTG9jYWwwKQ0KICAgICAg ICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIFJldHVybiAoTG9jYWwwKQ0KICAgICAgICAg ICAgfQ0KICAgICAgICB9DQoNCiAgICAgICAgRGV2aWNlIChQV1JCKQ0KICAgICAgICB7DQogICAg ICAgICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJQTlAwQzBDIikpDQogICAgICAgICAgICBOYW1l IChfUFJXLCBQYWNrYWdlICgweDAyKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIDB4 MUQsIA0KICAgICAgICAgICAgICAgIDB4MDQNCiAgICAgICAgICAgIH0pDQogICAgICAgIH0NCg0K ICAgICAgICBNdXRleCAoUExPSywgMHgwMCkNCiAgICAgICAgTWV0aG9kIChOQ1BVLCAwLCBOb3RT ZXJpYWxpemVkKQ0KICAgICAgICB7DQogICAgICAgICAgICBBY3F1aXJlIChQTE9LLCAweEZGRkYp DQogICAgICAgICAgICBOb3RpZnkgKFxfUFIuQ1BVMCwgMHg4MCkNCiAgICAgICAgICAgIFNsZWVw ICgweDY0KQ0KICAgICAgICAgICAgTm90aWZ5IChcX1BSLkNQVTAsIDB4ODEpDQogICAgICAgICAg ICBSZWxlYXNlIChQTE9LKQ0KICAgICAgICB9DQoNCiAgICAgICAgRGV2aWNlIChQQ0kwKQ0KICAg ICAgICB7DQogICAgICAgICAgICBNZXRob2QgKF9JTkksIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAg ICAgICAgICB7DQogICAgICAgICAgICAgICAgXF9TQi5PU1RQICgpDQogICAgICAgICAgICB9DQoN CiAgICAgICAgICAgIE1ldGhvZCAoX1MxRCwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MDIpDQogICAgICAgICAgICB9DQoNCiAgICAg ICAgICAgIE1ldGhvZCAoX1MzRCwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICBSZXR1cm4gKDB4MDIpDQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAg IE1ldGhvZCAoX1M0RCwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgIHsNCiAgICAgICAg ICAgICAgICBSZXR1cm4gKDB4MDIpDQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIE5hbWUg KF9ISUQsIEVpc2FJZCAoIlBOUDBBMDMiKSkNCiAgICAgICAgICAgIE5hbWUgKF9BRFIsIDB4MDAp DQogICAgICAgICAgICBOYW1lIChfQkJOLCAweDAwKQ0KICAgICAgICAgICAgT3BlcmF0aW9uUmVn aW9uIChIQlVTLCBQQ0lfQ29uZmlnLCAweDQwLCAweEMwKQ0KICAgICAgICAgICAgRmllbGQgKEhC VVMsIERXb3JkQWNjLCBOb0xvY2ssIFByZXNlcnZlKQ0KICAgICAgICAgICAgew0KICAgICAgICAg ICAgICAgIE9mZnNldCAoMHgyMCksIA0KICAgICAgICAgICAgICAgIERSQjAsICAgOCwgDQogICAg ICAgICAgICAgICAgRFJCMSwgICA4LCANCiAgICAgICAgICAgICAgICBEUkIyLCAgIDgsIA0KICAg ICAgICAgICAgICAgIERSQjMsICAgOCwgDQogICAgICAgICAgICAgICAgT2Zmc2V0ICgweDUwKSwg DQogICAgICAgICAgICAgICAgICAgICwgICA0LCANCiAgICAgICAgICAgICAgICBQTTBILCAgIDIs IA0KICAgICAgICAgICAgICAgIE9mZnNldCAoMHg1MSksIA0KICAgICAgICAgICAgICAgIFBNMUws ICAgMiwgDQogICAgICAgICAgICAgICAgICAgICwgICAyLCANCiAgICAgICAgICAgICAgICBQTTFI LCAgIDIsIA0KICAgICAgICAgICAgICAgIE9mZnNldCAoMHg1MiksIA0KICAgICAgICAgICAgICAg IFBNMkwsICAgMiwgDQogICAgICAgICAgICAgICAgICAgICwgICAyLCANCiAgICAgICAgICAgICAg ICBQTTJILCAgIDIsIA0KICAgICAgICAgICAgICAgIE9mZnNldCAoMHg1MyksIA0KICAgICAgICAg ICAgICAgIFBNM0wsICAgMiwgDQogICAgICAgICAgICAgICAgICAgICwgICAyLCANCiAgICAgICAg ICAgICAgICBQTTNILCAgIDIsIA0KICAgICAgICAgICAgICAgIE9mZnNldCAoMHg1NCksIA0KICAg ICAgICAgICAgICAgIFBNNEwsICAgMiwgDQogICAgICAgICAgICAgICAgICAgICwgICAyLCANCiAg ICAgICAgICAgICAgICBQTTRILCAgIDIsIA0KICAgICAgICAgICAgICAgIE9mZnNldCAoMHg1NSks IA0KICAgICAgICAgICAgICAgIFBNNUwsICAgMiwgDQogICAgICAgICAgICAgICAgICAgICwgICAy LCANCiAgICAgICAgICAgICAgICBQTTVILCAgIDIsIA0KICAgICAgICAgICAgICAgIE9mZnNldCAo MHg1NiksIA0KICAgICAgICAgICAgICAgIFBNNkwsICAgMiwgDQogICAgICAgICAgICAgICAgICAg ICwgICAyLCANCiAgICAgICAgICAgICAgICBQTTZILCAgIDIsIA0KICAgICAgICAgICAgICAgIE9m ZnNldCAoMHg1NyksIA0KICAgICAgICAgICAgICAgIEZESEMsICAgOA0KICAgICAgICAgICAgfQ0K DQogICAgICAgICAgICBOYW1lIChCVUYwLCBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgV29yZEJ1c051bWJlciAoUmVzb3VyY2VQcm9kdWNlciwgTWlu Rml4ZWQsIE1heEZpeGVkLCBQb3NEZWNvZGUsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwMCwN CiAgICAgICAgICAgICAgICAgICAgMHgwMDAwLA0KICAgICAgICAgICAgICAgICAgICAweDAwRkYs DQogICAgICAgICAgICAgICAgICAgIDB4MDAwMCwNCiAgICAgICAgICAgICAgICAgICAgMHgwMTAw LCAweDAwKQ0KICAgICAgICAgICAgICAgIERXb3JkSU8gKFJlc291cmNlUHJvZHVjZXIsIE1pbkZp eGVkLCBNYXhGaXhlZCwgUG9zRGVjb2RlLCBFbnRpcmVSYW5nZSwNCiAgICAgICAgICAgICAgICAg ICAgMHgwMDAwMDAwMCwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwNCiAgICAgICAg ICAgICAgICAgICAgMHgwMDAwMENGNywNCiAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwN CiAgICAgICAgICAgICAgICAgICAgMHgwMDAwMENGOCwgMHgwMCkNCiAgICAgICAgICAgICAgICBJ TyAoRGVjb2RlMTYsIDB4MENGOCwgMHgwQ0Y4LCAweDAxLCAweDA4KQ0KICAgICAgICAgICAgICAg IERXb3JkSU8gKFJlc291cmNlUHJvZHVjZXIsIE1pbkZpeGVkLCBNYXhGaXhlZCwgUG9zRGVjb2Rl LCBFbnRpcmVSYW5nZSwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwNCiAgICAgICAg ICAgICAgICAgICAgMHgwMDAwMEQwMCwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDAwRkZGRiwN CiAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwNCiAgICAgICAgICAgICAgICAgICAgMHgw MDAwRjMwMCwgMHgwMCkNCiAgICAgICAgICAgICAgICBEV29yZE1lbW9yeSAoUmVzb3VyY2VQcm9k dWNlciwgUG9zRGVjb2RlLCBNaW5GaXhlZCwgTWF4Rml4ZWQsIENhY2hlYWJsZSwgUmVhZFdyaXRl LA0KICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAwLA0KICAgICAgICAgICAgICAgICAgICAw eDAwMEEwMDAwLA0KICAgICAgICAgICAgICAgICAgICAweDAwMEJGRkZGLA0KICAgICAgICAgICAg ICAgICAgICAweDAwMDAwMDAwLA0KICAgICAgICAgICAgICAgICAgICAweDAwMDIwMDAwLCAweDAw KQ0KICAgICAgICAgICAgICAgIERXb3JkTWVtb3J5IChSZXNvdXJjZVByb2R1Y2VyLCBQb3NEZWNv ZGUsIE1pbkZpeGVkLCBNYXhGaXhlZCwgQ2FjaGVhYmxlLCBSZWFkV3JpdGUsDQogICAgICAgICAg ICAgICAgICAgIDB4MDAwMDAwMDAsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwQzAwMDAsDQog ICAgICAgICAgICAgICAgICAgIDB4MDAwQzNGRkYsDQogICAgICAgICAgICAgICAgICAgIDB4MDAw MDAwMDAsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwMDQwMDAsIDB4MDApDQogICAgICAgICAg ICAgICAgRFdvcmRNZW1vcnkgKFJlc291cmNlUHJvZHVjZXIsIFBvc0RlY29kZSwgTWluRml4ZWQs IE1heEZpeGVkLCBDYWNoZWFibGUsIFJlYWRXcml0ZSwNCiAgICAgICAgICAgICAgICAgICAgMHgw MDAwMDAwMCwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDBDNDAwMCwNCiAgICAgICAgICAgICAg ICAgICAgMHgwMDBDN0ZGRiwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwNCiAgICAg ICAgICAgICAgICAgICAgMHgwMDAwNDAwMCwgMHgwMCkNCiAgICAgICAgICAgICAgICBEV29yZE1l bW9yeSAoUmVzb3VyY2VQcm9kdWNlciwgUG9zRGVjb2RlLCBNaW5GaXhlZCwgTWF4Rml4ZWQsIENh Y2hlYWJsZSwgUmVhZFdyaXRlLA0KICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAwLA0KICAg ICAgICAgICAgICAgICAgICAweDAwMEM4MDAwLA0KICAgICAgICAgICAgICAgICAgICAweDAwMENC RkZGLA0KICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAwLA0KICAgICAgICAgICAgICAgICAg ICAweDAwMDA0MDAwLCAweDAwKQ0KICAgICAgICAgICAgICAgIERXb3JkTWVtb3J5IChSZXNvdXJj ZVByb2R1Y2VyLCBQb3NEZWNvZGUsIE1pbkZpeGVkLCBNYXhGaXhlZCwgQ2FjaGVhYmxlLCBSZWFk V3JpdGUsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAsDQogICAgICAgICAgICAgICAg ICAgIDB4MDAwQ0MwMDAsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwQ0ZGRkYsDQogICAgICAg ICAgICAgICAgICAgIDB4MDAwMDAwMDAsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwMDQwMDAs IDB4MDApDQogICAgICAgICAgICAgICAgRFdvcmRNZW1vcnkgKFJlc291cmNlUHJvZHVjZXIsIFBv c0RlY29kZSwgTWluRml4ZWQsIE1heEZpeGVkLCBDYWNoZWFibGUsIFJlYWRXcml0ZSwNCiAgICAg ICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDBEMDAw MCwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDBEM0ZGRiwNCiAgICAgICAgICAgICAgICAgICAg MHgwMDAwMDAwMCwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDAwNDAwMCwgMHgwMCkNCiAgICAg ICAgICAgICAgICBEV29yZE1lbW9yeSAoUmVzb3VyY2VQcm9kdWNlciwgUG9zRGVjb2RlLCBNaW5G aXhlZCwgTWF4Rml4ZWQsIENhY2hlYWJsZSwgUmVhZFdyaXRlLA0KICAgICAgICAgICAgICAgICAg ICAweDAwMDAwMDAwLA0KICAgICAgICAgICAgICAgICAgICAweDAwMEQ0MDAwLA0KICAgICAgICAg ICAgICAgICAgICAweDAwMEQ3RkZGLA0KICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAwLA0K ICAgICAgICAgICAgICAgICAgICAweDAwMDA0MDAwLCAweDAwKQ0KICAgICAgICAgICAgICAgIERX b3JkTWVtb3J5IChSZXNvdXJjZVByb2R1Y2VyLCBQb3NEZWNvZGUsIE1pbkZpeGVkLCBNYXhGaXhl ZCwgQ2FjaGVhYmxlLCBSZWFkV3JpdGUsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAs DQogICAgICAgICAgICAgICAgICAgIDB4MDAwRDgwMDAsDQogICAgICAgICAgICAgICAgICAgIDB4 MDAwREJGRkYsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAsDQogICAgICAgICAgICAg ICAgICAgIDB4MDAwMDQwMDAsIDB4MDApDQogICAgICAgICAgICAgICAgRFdvcmRNZW1vcnkgKFJl c291cmNlUHJvZHVjZXIsIFBvc0RlY29kZSwgTWluRml4ZWQsIE1heEZpeGVkLCBDYWNoZWFibGUs IFJlYWRXcml0ZSwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwNCiAgICAgICAgICAg ICAgICAgICAgMHgwMDBEQzAwMCwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDBERkZGRiwNCiAg ICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDAw NDAwMCwgMHgwMCkNCiAgICAgICAgICAgICAgICBEV29yZE1lbW9yeSAoUmVzb3VyY2VQcm9kdWNl ciwgUG9zRGVjb2RlLCBNaW5GaXhlZCwgTWF4Rml4ZWQsIENhY2hlYWJsZSwgUmVhZFdyaXRlLA0K ICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAwLA0KICAgICAgICAgICAgICAgICAgICAweDAw MEUwMDAwLA0KICAgICAgICAgICAgICAgICAgICAweDAwMEUzRkZGLA0KICAgICAgICAgICAgICAg ICAgICAweDAwMDAwMDAwLA0KICAgICAgICAgICAgICAgICAgICAweDAwMDA0MDAwLCAweDAwKQ0K ICAgICAgICAgICAgICAgIERXb3JkTWVtb3J5IChSZXNvdXJjZVByb2R1Y2VyLCBQb3NEZWNvZGUs IE1pbkZpeGVkLCBNYXhGaXhlZCwgQ2FjaGVhYmxlLCBSZWFkV3JpdGUsDQogICAgICAgICAgICAg ICAgICAgIDB4MDAwMDAwMDAsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwRTQwMDAsDQogICAg ICAgICAgICAgICAgICAgIDB4MDAwRTdGRkYsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwMDAw MDAsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwMDQwMDAsIDB4MDApDQogICAgICAgICAgICAg ICAgRFdvcmRNZW1vcnkgKFJlc291cmNlUHJvZHVjZXIsIFBvc0RlY29kZSwgTWluRml4ZWQsIE1h eEZpeGVkLCBDYWNoZWFibGUsIFJlYWRXcml0ZSwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDAw MDAwMCwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDBFODAwMCwNCiAgICAgICAgICAgICAgICAg ICAgMHgwMDBFQkZGRiwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwNCiAgICAgICAg ICAgICAgICAgICAgMHgwMDAwNDAwMCwgMHgwMCkNCiAgICAgICAgICAgICAgICBEV29yZE1lbW9y eSAoUmVzb3VyY2VQcm9kdWNlciwgUG9zRGVjb2RlLCBNaW5GaXhlZCwgTWF4Rml4ZWQsIENhY2hl YWJsZSwgUmVhZFdyaXRlLA0KICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAwLA0KICAgICAg ICAgICAgICAgICAgICAweDAwMEVDMDAwLA0KICAgICAgICAgICAgICAgICAgICAweDAwMEVGRkZG LA0KICAgICAgICAgICAgICAgICAgICAweDAwMDAwMDAwLA0KICAgICAgICAgICAgICAgICAgICAw eDAwMDA0MDAwLCAweDAwKQ0KICAgICAgICAgICAgICAgIERXb3JkTWVtb3J5IChSZXNvdXJjZVBy b2R1Y2VyLCBQb3NEZWNvZGUsIE1pbkZpeGVkLCBNYXhGaXhlZCwgQ2FjaGVhYmxlLCBSZWFkV3Jp dGUsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwMDAwMDAsDQogICAgICAgICAgICAgICAgICAg IDB4MDAwRjAwMDAsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwRkZGRkYsDQogICAgICAgICAg ICAgICAgICAgIDB4MDAwMDAwMDAsDQogICAgICAgICAgICAgICAgICAgIDB4MDAwMTAwMDAsIDB4 MDApDQogICAgICAgICAgICAgICAgRFdvcmRNZW1vcnkgKFJlc291cmNlUHJvZHVjZXIsIFBvc0Rl Y29kZSwgTWluRml4ZWQsIE1heEZpeGVkLCBDYWNoZWFibGUsIFJlYWRXcml0ZSwNCiAgICAgICAg ICAgICAgICAgICAgMHgwMDAwMDAwMCwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwN CiAgICAgICAgICAgICAgICAgICAgMHhGRUJGRkZGRiwNCiAgICAgICAgICAgICAgICAgICAgMHgw MDAwMDAwMCwNCiAgICAgICAgICAgICAgICAgICAgMHgwMDAwMDAwMCwgMHgwMCkNCiAgICAgICAg ICAgIH0pDQogICAgICAgICAgICBNZXRob2QgKF9DUlMsIDAsIFNlcmlhbGl6ZWQpDQogICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgSWYgKFBNMUwpDQogICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChCVUYwLCAweDgwLCBDMExOKQ0KICAg ICAgICAgICAgICAgICAgICBTdG9yZSAoWmVybywgQzBMTikNCiAgICAgICAgICAgICAgICB9DQoN CiAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChQTTFMLCAweDAxKSkNCiAgICAgICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgICAgIENyZWF0ZUJpdEZpZWxkIChCVUYwLCAweDAzNzgsIEMw UlcpDQogICAgICAgICAgICAgICAgICAgIFN0b3JlIChaZXJvLCBDMFJXKQ0KICAgICAgICAgICAg ICAgIH0NCg0KICAgICAgICAgICAgICAgIElmIChQTTFIKQ0KICAgICAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQlVGMCwgMHg5QiwgQzRMTikNCiAg ICAgICAgICAgICAgICAgICAgU3RvcmUgKFplcm8sIEM0TE4pDQogICAgICAgICAgICAgICAgfQ0K DQogICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoUE0xSCwgMHgwMSkpDQogICAgICAgICAgICAg ICAgew0KICAgICAgICAgICAgICAgICAgICBDcmVhdGVCaXRGaWVsZCAoQlVGMCwgMHgwNDUwLCBD NFJXKQ0KICAgICAgICAgICAgICAgICAgICBTdG9yZSAoWmVybywgQzRSVykNCiAgICAgICAgICAg ICAgICB9DQoNCiAgICAgICAgICAgICAgICBJZiAoUE0yTCkNCiAgICAgICAgICAgICAgICB7DQog ICAgICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKEJVRjAsIDB4QjYsIEM4TE4pDQog ICAgICAgICAgICAgICAgICAgIFN0b3JlIChaZXJvLCBDOExOKQ0KICAgICAgICAgICAgICAgIH0N Cg0KICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKFBNMkwsIDB4MDEpKQ0KICAgICAgICAgICAg ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgQ3JlYXRlQml0RmllbGQgKEJVRjAsIDB4MDUyOCwg QzhSVykNCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFplcm8sIEM4UlcpDQogICAgICAgICAg ICAgICAgfQ0KDQogICAgICAgICAgICAgICAgSWYgKFBNMkgpDQogICAgICAgICAgICAgICAgew0K ICAgICAgICAgICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChCVUYwLCAweEQxLCBDQ0xOKQ0K ICAgICAgICAgICAgICAgICAgICBTdG9yZSAoWmVybywgQ0NMTikNCiAgICAgICAgICAgICAgICB9 DQoNCiAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChQTTJILCAweDAxKSkNCiAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgIENyZWF0ZUJpdEZpZWxkIChCVUYwLCAweDA2MDAs IENDUlcpDQogICAgICAgICAgICAgICAgICAgIFN0b3JlIChaZXJvLCBDQ1JXKQ0KICAgICAgICAg ICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIElmIChQTTNMKQ0KICAgICAgICAgICAgICAgIHsN CiAgICAgICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQlVGMCwgMHhFQywgRDBMTikN CiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFplcm8sIEQwTE4pDQogICAgICAgICAgICAgICAg fQ0KDQogICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoUE0zTCwgMHgwMSkpDQogICAgICAgICAg ICAgICAgew0KICAgICAgICAgICAgICAgICAgICBDcmVhdGVCaXRGaWVsZCAoQlVGMCwgMHgwNkQ4 LCBEMFJXKQ0KICAgICAgICAgICAgICAgICAgICBTdG9yZSAoWmVybywgRDBSVykNCiAgICAgICAg ICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBJZiAoUE0zSCkNCiAgICAgICAgICAgICAgICB7 DQogICAgICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKEJVRjAsIDB4MDEwNywgRDRM TikNCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFplcm8sIEQ0TE4pDQogICAgICAgICAgICAg ICAgfQ0KDQogICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoUE0zSCwgMHgwMSkpDQogICAgICAg ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBDcmVhdGVCaXRGaWVsZCAoQlVGMCwgMHgw N0IwLCBENFJXKQ0KICAgICAgICAgICAgICAgICAgICBTdG9yZSAoWmVybywgRDRSVykNCiAgICAg ICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBJZiAoUE00TCkNCiAgICAgICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKEJVRjAsIDB4MDEyMiwg RDhMTikNCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFplcm8sIEQ4TE4pDQogICAgICAgICAg ICAgICAgfQ0KDQogICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoUE00TCwgMHgwMSkpDQogICAg ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBDcmVhdGVCaXRGaWVsZCAoQlVGMCwg MHgwODg4LCBEOFJXKQ0KICAgICAgICAgICAgICAgICAgICBTdG9yZSAoWmVybywgRDhSVykNCiAg ICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBJZiAoUE00SCkNCiAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKEJVRjAsIDB4MDEz RCwgRENMTikNCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFplcm8sIERDTE4pDQogICAgICAg ICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoUE00SCwgMHgwMSkpDQog ICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBDcmVhdGVCaXRGaWVsZCAoQlVG MCwgMHgwOTYwLCBEQ1JXKQ0KICAgICAgICAgICAgICAgICAgICBTdG9yZSAoWmVybywgRENSVykN CiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBJZiAoUE01TCkNCiAgICAgICAg ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKEJVRjAsIDB4 MDE1OCwgRTBMTikNCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFplcm8sIEUwTE4pDQogICAg ICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoUE01TCwgMHgwMSkp DQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBDcmVhdGVCaXRGaWVsZCAo QlVGMCwgMHgwQTM4LCBFMFJXKQ0KICAgICAgICAgICAgICAgICAgICBTdG9yZSAoWmVybywgRTBS VykNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBJZiAoUE01SCkNCiAgICAg ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKEJVRjAs IDB4MDE3MywgRTRMTikNCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFplcm8sIEU0TE4pDQog ICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoUE01SCwgMHgw MSkpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBDcmVhdGVCaXRGaWVs ZCAoQlVGMCwgMHgwQjEwLCBFNFJXKQ0KICAgICAgICAgICAgICAgICAgICBTdG9yZSAoWmVybywg RTRSVykNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBJZiAoUE02TCkNCiAg ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKEJV RjAsIDB4MDE4RSwgRThMTikNCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFplcm8sIEU4TE4p DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoUE02TCwg MHgwMSkpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBDcmVhdGVCaXRG aWVsZCAoQlVGMCwgMHgwQkU4LCBFOFJXKQ0KICAgICAgICAgICAgICAgICAgICBTdG9yZSAoWmVy bywgRThSVykNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBJZiAoUE02SCkN CiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQg KEJVRjAsIDB4MDFBOSwgRUNMTikNCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFplcm8sIEVD TE4pDQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoUE02 SCwgMHgwMSkpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBDcmVhdGVC aXRGaWVsZCAoQlVGMCwgMHgwQ0MwLCBFQ1JXKQ0KICAgICAgICAgICAgICAgICAgICBTdG9yZSAo WmVybywgRUNSVykNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBJZiAoUE0w SCkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmll bGQgKEJVRjAsIDB4MDFDNCwgRjBMTikNCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFplcm8s IEYwTE4pDQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgSWYgKExFcXVhbCAo UE0wSCwgMHgwMSkpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBDcmVh dGVCaXRGaWVsZCAoQlVGMCwgMHgwRDk4LCBGMFJXKQ0KICAgICAgICAgICAgICAgICAgICBTdG9y ZSAoWmVybywgRjBSVykNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBDcmVh dGVEV29yZEZpZWxkIChCVUYwLCAweDAxRDMsIE0xTU4pDQogICAgICAgICAgICAgICAgQ3JlYXRl RFdvcmRGaWVsZCAoQlVGMCwgMHgwMUQ3LCBNMU1YKQ0KICAgICAgICAgICAgICAgIENyZWF0ZURX b3JkRmllbGQgKEJVRjAsIDB4MDFERiwgTTFMTikNCiAgICAgICAgICAgICAgICBNdWx0aXBseSAo MHgwMjAwMDAwMCwgRFJCMywgTTFNTikNCiAgICAgICAgICAgICAgICBBZGQgKFN1YnRyYWN0IChN MU1YLCBNMU1OKSwgMHgwMSwgTTFMTikNCiAgICAgICAgICAgICAgICBSZXR1cm4gKEJVRjApDQog ICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIE1ldGhvZCAoX1BSVCwgMCwgTm90U2VyaWFsaXpl ZCkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBSZXR1cm4gKFBhY2thZ2UgKDB4MDkp DQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQ0K ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAweDAwMDFGRkZG LCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAsIA0KICAgICAgICAgICAgICAgICAgICAg ICAgXF9TQi5QQ0kwLkxQQ0IuTE5LQSwgDQogICAgICAgICAgICAgICAgICAgICAgICAweDAwDQog ICAgICAgICAgICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4 MDQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAw MUZGRkYsIA0KICAgICAgICAgICAgICAgICAgICAgICAgMHgwMSwgDQogICAgICAgICAgICAgICAg ICAgICAgICBcX1NCLlBDSTAuTFBDQi5MTktCLCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4 MDANCiAgICAgICAgICAgICAgICAgICAgfSwgDQoNCiAgICAgICAgICAgICAgICAgICAgUGFja2Fn ZSAoMHgwNCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAg MHgwMDAxRkZGRiwgDQogICAgICAgICAgICAgICAgICAgICAgICAweDAyLCANCiAgICAgICAgICAg ICAgICAgICAgICAgIFxfU0IuUENJMC5MUENCLkxOS0MsIA0KICAgICAgICAgICAgICAgICAgICAg ICAgMHgwMA0KICAgICAgICAgICAgICAgICAgICB9LCANCg0KICAgICAgICAgICAgICAgICAgICBQ YWNrYWdlICgweDA0KQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg ICAgICAweDAwMDFGRkZGLCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDMsIA0KICAgICAg ICAgICAgICAgICAgICAgICAgXF9TQi5QQ0kwLkxQQ0IuTE5LRCwgDQogICAgICAgICAgICAgICAg ICAgICAgICAweDAwDQogICAgICAgICAgICAgICAgICAgIH0sIA0KDQogICAgICAgICAgICAgICAg ICAgIFBhY2thZ2UgKDB4MDQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg ICAgICAgICAgIDB4MDAxREZGRkYsIA0KICAgICAgICAgICAgICAgICAgICAgICAgMHgwMCwgDQog ICAgICAgICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuTFBDQi5MTktBLCANCiAgICAgICAgICAg ICAgICAgICAgICAgIDB4MDANCiAgICAgICAgICAgICAgICAgICAgfSwgDQoNCiAgICAgICAgICAg ICAgICAgICAgUGFja2FnZSAoMHgwNCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAg ICAgICAgICAgICAgICAgMHgwMDFERkZGRiwgDQogICAgICAgICAgICAgICAgICAgICAgICAweDAx LCANCiAgICAgICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MUENCLkxOS0QsIA0KICAgICAg ICAgICAgICAgICAgICAgICAgMHgwMA0KICAgICAgICAgICAgICAgICAgICB9LCANCg0KICAgICAg ICAgICAgICAgICAgICBQYWNrYWdlICgweDA0KQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAg ICAgICAgICAgICAgICAgICAgICAweDAwMURGRkZGLCANCiAgICAgICAgICAgICAgICAgICAgICAg IDB4MDIsIA0KICAgICAgICAgICAgICAgICAgICAgICAgXF9TQi5QQ0kwLkxQQ0IuTE5LQywgDQog ICAgICAgICAgICAgICAgICAgICAgICAweDAwDQogICAgICAgICAgICAgICAgICAgIH0sIA0KDQog ICAgICAgICAgICAgICAgICAgIFBhY2thZ2UgKDB4MDQpDQogICAgICAgICAgICAgICAgICAgIHsN CiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDAxREZGRkYsIA0KICAgICAgICAgICAgICAgICAg ICAgICAgMHgwMywgDQogICAgICAgICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuTFBDQi5MTktI LCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDANCiAgICAgICAgICAgICAgICAgICAgfSwg DQoNCiAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkNCiAgICAgICAgICAgICAgICAg ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgMHgwMDFGRkZGRiwgDQogICAgICAgICAgICAg ICAgICAgICAgICAweDAxLCANCiAgICAgICAgICAgICAgICAgICAgICAgIFxfU0IuUENJMC5MUENC LkxOS0IsIA0KICAgICAgICAgICAgICAgICAgICAgICAgMHgwMA0KICAgICAgICAgICAgICAgICAg ICB9DQogICAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgRGV2 aWNlIChBR1BCKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIE5hbWUgKF9BRFIsIDB4 MDAwMTAwMDApDQogICAgICAgICAgICAgICAgTWV0aG9kIChfUFJULCAwLCBOb3RTZXJpYWxpemVk KQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChQYWNrYWdl ICgweDAxKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBQ YWNrYWdlICgweDA0KQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgIDB4RkZGRiwgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgwMCwg DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgXF9TQi5QQ0kwLkxQQ0IuTE5LQSwgDQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgMHgwMA0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0K ICAgICAgICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAg ICAgIERldmljZSAoVklEMCkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg IE5hbWUgKF9BRFIsIDB4MDApDQogICAgICAgICAgICAgICAgICAgIE9wZXJhdGlvblJlZ2lvbiAo VklEUiwgUENJX0NvbmZpZywgMHg0QywgMHgwNCkNCiAgICAgICAgICAgICAgICAgICAgRmllbGQg KFZJRFIsIEJ5dGVBY2MsIE5vTG9jaywgUHJlc2VydmUpDQogICAgICAgICAgICAgICAgICAgIHsN CiAgICAgICAgICAgICAgICAgICAgICAgIFNTSUQsICAgMzINCiAgICAgICAgICAgICAgICAgICAg fQ0KDQogICAgICAgICAgICAgICAgICAgIERldmljZSAoQ1JUKQ0KICAgICAgICAgICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgICAgICAgICBOYW1lIChfQURSLCAweDAxMDApDQogICAgICAg ICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBEZXZpY2UgKExDRCkNCiAgICAg ICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0FEUiwgMHgw MTEwKQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgRGV2aWNl IChUVikNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgTmFt ZSAoX0FEUiwgMHgwMjAwKQ0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAg fQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBEZXZpY2UgKFBDSUIpDQogICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgTmFtZSAoX0FEUiwgMHgwMDFFMDAwMCkNCiAgICAgICAgICAg ICAgICBEZXZpY2UgKExBTkMpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICBOYW1lIChfQURSLCAweDAwMDgwMDAwKQ0KICAgICAgICAgICAgICAgICAgICBOYW1lIChfUFJX LCBQYWNrYWdlICgweDAyKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg ICAgICAgICAweDBCLCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDMNCiAgICAgICAgICAg ICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBEZXZpY2Ug KFdMQU4pDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBOYW1lIChfQURS LCAweDAwMEIwMDAwKQ0KICAgICAgICAgICAgICAgICAgICBOYW1lIChfUFNDLCAweDAwKQ0KICAg ICAgICAgICAgICAgICAgICBNZXRob2QgKF9QUzAsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAg ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAwLCBfUFND KQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChf UFMzLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgICAgICAgICBTdG9yZSAoMHgwMywgX1BTQykNCiAgICAgICAgICAgICAgICAgICAgfQ0K DQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1NUQSwgMCwgTm90U2VyaWFsaXplZCkNCiAg ICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDBG KQ0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAg ICAgICAgRGV2aWNlIChDUkQwKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgTmFtZSAoX0FEUiwgMHgwMDA1MDAwMCkNCiAgICAgICAgICAgICAgICAgICAgT3BlcmF0aW9u UmVnaW9uIChDQ1JELCBQQ0lfQ29uZmlnLCAweDAwLCAweEU0KQ0KICAgICAgICAgICAgICAgICAg ICBGaWVsZCAoQ0NSRCwgRFdvcmRBY2MsIE5vTG9jaywgUHJlc2VydmUpDQogICAgICAgICAgICAg ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIE9mZnNldCAoMHgwNCksIA0KICAgICAg ICAgICAgICAgICAgICAgICAgQ0QwNCwgICAzMiwgDQogICAgICAgICAgICAgICAgICAgICAgICBP ZmZzZXQgKDB4M0UpLCANCiAgICAgICAgICAgICAgICAgICAgICAgIENEM0UsICAgMzIsIA0KICAg ICAgICAgICAgICAgICAgICAgICAgT2Zmc2V0ICgweDQ0KSwgDQogICAgICAgICAgICAgICAgICAg ICAgICBDRDQ0LCAgIDMyLCANCiAgICAgICAgICAgICAgICAgICAgICAgIE9mZnNldCAoMHhFMCks IA0KICAgICAgICAgICAgICAgICAgICAgICAgQ0RFMCwgICA4LCANCiAgICAgICAgICAgICAgICAg ICAgICAgIENERTEsICAgOA0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAg ICAgICAgTWV0aG9kIChfSU5JLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoWmVybywgQ0Q0NCkNCiAgICAgICAg ICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIE5hbWUgKF9QU0MsIDB4MDApDQog ICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1BTMCwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAg ICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDAsIF9Q U0MpDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2Qg KF9QUzMsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAg ICAgICAgICAgICAgICAgIFN0b3JlICgweDAzLCBfUFNDKQ0KICAgICAgICAgICAgICAgICAgICB9 DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfU1RBLCAwLCBOb3RTZXJpYWxpemVkKQ0K ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4 MEYpDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBOYW1lIChf UFJXLCBQYWNrYWdlICgweDAyKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgICAgICAweDBCLCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MDMNCiAgICAgICAg ICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBEZXZp Y2UgKFNEOTQpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBOYW1lIChf QURSLCAweDAwMDUwMDAxKQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIE1l dGhvZCAoX1BSVCwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICB7DQogICAgICAg ICAgICAgICAgICAgIFJldHVybiAoUGFja2FnZSAoMHgwNSkNCiAgICAgICAgICAgICAgICAgICAg ew0KICAgICAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkNCiAgICAgICAgICAgICAg ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwMDVGRkZGLCANCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwLCANCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICBcX1NCLlBDSTAuTFBDQi5MTktGLCANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAw eDAwDQogICAgICAgICAgICAgICAgICAgICAgICB9LCANCg0KICAgICAgICAgICAgICAgICAgICAg ICAgUGFja2FnZSAoMHgwNCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAweDAwMDVGRkZGLCANCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAweDAxLCANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuTFBDQi5MTktH LCANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwDQogICAgICAgICAgICAgICAgICAg ICAgICB9LCANCg0KICAgICAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkNCiAgICAg ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwMEJG RkZGLCANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwLCANCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICBcX1NCLlBDSTAuTFBDQi5MTktELCANCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAweDAwDQogICAgICAgICAgICAgICAgICAgICAgICB9LCANCg0KICAgICAgICAgICAg ICAgICAgICAgICAgUGFja2FnZSAoMHgwNCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwMDRGRkZGLCANCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAweDAwLCANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcX1NCLlBDSTAu TFBDQi5MTktFLCANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwDQogICAgICAgICAg ICAgICAgICAgICAgICB9LCANCg0KICAgICAgICAgICAgICAgICAgICAgICAgUGFja2FnZSAoMHgw NCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAweDAwMDhGRkZGLCANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwLCANCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICBcX1NCLlBDSTAuTFBDQi5MTktFLCANCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAweDAwDQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAg ICAgICAgICAgICAgIH0pDQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KDQogICAg ICAgICAgICBEZXZpY2UgKExQQ0IpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgTmFt ZSAoX0FEUiwgMHgwMDFGMDAwMCkNCiAgICAgICAgICAgICAgICBPcGVyYXRpb25SZWdpb24gKExQ QzAsIFBDSV9Db25maWcsIDB4NDAsIDB4QzApDQogICAgICAgICAgICAgICAgRmllbGQgKExQQzAs IEFueUFjYywgTm9Mb2NrLCBQcmVzZXJ2ZSkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgICAgIE9mZnNldCAoMHgyMCksIA0KICAgICAgICAgICAgICAgICAgICBQSVJBLCAgIDgs IA0KICAgICAgICAgICAgICAgICAgICBQSVJCLCAgIDgsIA0KICAgICAgICAgICAgICAgICAgICBQ SVJDLCAgIDgsIA0KICAgICAgICAgICAgICAgICAgICBQSVJELCAgIDgsIA0KICAgICAgICAgICAg ICAgICAgICBPZmZzZXQgKDB4MjgpLCANCiAgICAgICAgICAgICAgICAgICAgUElSRSwgICA4LCAN CiAgICAgICAgICAgICAgICAgICAgUElSRiwgICA4LCANCiAgICAgICAgICAgICAgICAgICAgUElS RywgICA4LCANCiAgICAgICAgICAgICAgICAgICAgUElSSCwgICA4LCANCiAgICAgICAgICAgICAg ICAgICAgT2Zmc2V0ICgweDkwKSwgDQogICAgICAgICAgICAgICAgICAgIEhQVEUsICAgMzIsIA0K ICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4QTApLCANCiAgICAgICAgICAgICAgICAgICAg TERFMCwgICA4LCANCiAgICAgICAgICAgICAgICAgICAgTERFMSwgICA4DQogICAgICAgICAgICAg ICAgfQ0KDQogICAgICAgICAgICAgICAgRGV2aWNlIChMTktBKQ0KICAgICAgICAgICAgICAgIHsN CiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMEMwRiIpKQ0KICAg ICAgICAgICAgICAgICAgICBOYW1lIChfVUlELCAweDAxKQ0KICAgICAgICAgICAgICAgICAgICBN ZXRob2QgKF9ESVMsIDAsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDgwLCBQSVJBKQ0KICAgICAgICAgICAgICAgICAg ICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX1BSUywgUmVzb3VyY2VUZW1wbGF0ZSAo KQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBJUlEgKExl dmVsLCBBY3RpdmVMb3csIFNoYXJlZCkgezl9DQogICAgICAgICAgICAgICAgICAgIH0pDQogICAg ICAgICAgICAgICAgICAgIE1ldGhvZCAoX0NSUywgMCwgU2VyaWFsaXplZCkNCiAgICAgICAgICAg ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgTmFtZSAoUlRMQSwgUmVzb3VyY2VU ZW1wbGF0ZSAoKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgIElSUSAoTGV2ZWwsIEFjdGl2ZUxvdywgU2hhcmVkKSB7fQ0KICAgICAgICAgICAg ICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAo UlRMQSwgMHgwMSwgSVJRMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChaZXJvLCBJ UlEwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgU2hpZnRMZWZ0ICgweDAxLCBBbmQgKFBJUkEs IDB4MEYpLCBJUlEwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChSVExBKQ0KICAg ICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfU1JTLCAx LCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg ICAgICBDcmVhdGVXb3JkRmllbGQgKEFyZzAsIDB4MDEsIElSUTApDQogICAgICAgICAgICAgICAg ICAgICAgICBGaW5kU2V0UmlnaHRCaXQgKElSUTAsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAg ICAgICAgIERlY3JlbWVudCAoTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUg KExvY2FsMCwgUElSQSkNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAg ICAgIE1ldGhvZCAoX1NUQSwgMCwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0K ICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoUElSQSwgMHg4MCkpDQogICAgICAgICAg ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDA5 KQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgRWxz ZQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAg IFJldHVybiAoMHgwQikNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAg ICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIERldmljZSAoTE5L QikNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIE5hbWUgKF9ISUQsIEVp c2FJZCAoIlBOUDBDMEYiKSkNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX1VJRCwgMHgwMikN CiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfRElTLCAwLCBTZXJpYWxpemVkKQ0KICAgICAg ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHg4MCwgUElS QikNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIE5hbWUgKF9Q UlMsIFJlc291cmNlVGVtcGxhdGUgKCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAg ICAgICAgICAgICAgICAgSVJRIChMZXZlbCwgQWN0aXZlTG93LCBTaGFyZWQpIHs5fQ0KICAgICAg ICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9DUlMsIDAsIFNl cmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAg IE5hbWUgKFJUTEIsIFJlc291cmNlVGVtcGxhdGUgKCkNCiAgICAgICAgICAgICAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJUlEgKExldmVsLCBBY3RpdmVMb3csIFNo YXJlZCkge30NCiAgICAgICAgICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAgICAgICAgICAg ICAgICBDcmVhdGVXb3JkRmllbGQgKFJUTEIsIDB4MDEsIElSUTApDQogICAgICAgICAgICAgICAg ICAgICAgICBTdG9yZSAoWmVybywgSVJRMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIFNoaWZ0 TGVmdCAoMHgwMSwgQW5kIChQSVJCLCAweDBGKSwgSVJRMCkNCiAgICAgICAgICAgICAgICAgICAg ICAgIFJldHVybiAoUlRMQikNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAg ICAgICAgIE1ldGhvZCAoX1NSUywgMSwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAg ew0KICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChBcmcwLCAweDAxLCBJ UlEwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgRmluZFNldFJpZ2h0Qml0IChJUlEwLCBMb2Nh bDApDQogICAgICAgICAgICAgICAgICAgICAgICBEZWNyZW1lbnQgKExvY2FsMCkNCiAgICAgICAg ICAgICAgICAgICAgICAgIFN0b3JlIChMb2NhbDAsIFBJUkIpDQogICAgICAgICAgICAgICAgICAg IH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9TVEEsIDAsIFNlcmlhbGl6ZWQpDQog ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChBbmQgKFBJ UkIsIDB4ODApKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFJldHVybiAoMHgwOSkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAg ICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MEIpDQogICAgICAgICAgICAgICAgICAg ICAgICB9DQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB9DQoNCiAgICAg ICAgICAgICAgICBEZXZpY2UgKExOS0MpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJQTlAwQzBGIikpDQogICAgICAgICAgICAgICAg ICAgIE5hbWUgKF9VSUQsIDB4MDMpDQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0RJUywg MCwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICAgICAgU3RvcmUgKDB4ODAsIFBJUkMpDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAg ICAgICAgICAgICAgICBOYW1lIChfUFJTLCBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAgICAg ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElSUSAoTGV2ZWwsIEFjdGl2ZUxv dywgU2hhcmVkKSB7OX0NCiAgICAgICAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICAg ICAgTWV0aG9kIChfQ1JTLCAwLCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQog ICAgICAgICAgICAgICAgICAgICAgICBOYW1lIChSVExDLCBSZXNvdXJjZVRlbXBsYXRlICgpDQog ICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSVJR IChMZXZlbCwgQWN0aXZlTG93LCBTaGFyZWQpIHt9DQogICAgICAgICAgICAgICAgICAgICAgICB9 KQ0KICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChSVExDLCAweDAxLCBJ UlEwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFplcm8sIElSUTApDQogICAgICAg ICAgICAgICAgICAgICAgICBTaGlmdExlZnQgKDB4MDEsIEFuZCAoUElSQywgMHgwRiksIElSUTAp DQogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKFJUTEMpDQogICAgICAgICAgICAgICAg ICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9TUlMsIDEsIFNlcmlhbGl6ZWQp DQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdv cmRGaWVsZCAoQXJnMCwgMHgwMSwgSVJRMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIEZpbmRT ZXRSaWdodEJpdCAoSVJRMCwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgRGVjcmVt ZW50IChMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoTG9jYWwwLCBQSVJD KQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChf U1RBLCAwLCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgICAgICBJZiAoQW5kIChQSVJDLCAweDgwKSkNCiAgICAgICAgICAgICAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MDkpDQogICAgICAgICAg ICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAg ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDBC KQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICB9DQogICAg ICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgRGV2aWNlIChMTktEKQ0KICAgICAgICAg ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMEMw RiIpKQ0KICAgICAgICAgICAgICAgICAgICBOYW1lIChfVUlELCAweDA0KQ0KICAgICAgICAgICAg ICAgICAgICBNZXRob2QgKF9ESVMsIDAsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDgwLCBQSVJEKQ0KICAgICAgICAg ICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX1BSUywgUmVzb3VyY2VU ZW1wbGF0ZSAoKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg ICBJUlEgKExldmVsLCBBY3RpdmVMb3csIFNoYXJlZCkgezl9DQogICAgICAgICAgICAgICAgICAg IH0pDQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0NSUywgMCwgU2VyaWFsaXplZCkNCiAg ICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgTmFtZSAoUlRMRCwg UmVzb3VyY2VUZW1wbGF0ZSAoKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgIElSUSAoTGV2ZWwsIEFjdGl2ZUxvdywgU2hhcmVkKSB7fQ0KICAg ICAgICAgICAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdv cmRGaWVsZCAoUlRMRCwgMHgwMSwgSVJRMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Jl IChaZXJvLCBJUlEwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgU2hpZnRMZWZ0ICgweDAxLCBB bmQgKFBJUkQsIDB4MEYpLCBJUlEwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChS VExEKQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9k IChfU1JTLCAxLCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKEFyZzAsIDB4MDEsIElSUTApDQogICAgICAg ICAgICAgICAgICAgICAgICBGaW5kU2V0UmlnaHRCaXQgKElSUTAsIExvY2FsMCkNCiAgICAgICAg ICAgICAgICAgICAgICAgIERlY3JlbWVudCAoTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgU3RvcmUgKExvY2FsMCwgUElSRCkNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAg ICAgICAgICAgICAgIE1ldGhvZCAoX1NUQSwgMCwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgICAg ICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoUElSRCwgMHg4MCkpDQog ICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0 dXJuICgweDA5KQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAg ICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFJldHVybiAoMHgwQikNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAg ICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIERl dmljZSAoTE5LRSkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIE5hbWUg KF9ISUQsIEVpc2FJZCAoIlBOUDBDMEYiKSkNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX1VJ RCwgMHgwNSkNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfRElTLCAwLCBTZXJpYWxpemVk KQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAo MHg4MCwgUElSRSkNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAg IE5hbWUgKF9QUlMsIFJlc291cmNlVGVtcGxhdGUgKCkNCiAgICAgICAgICAgICAgICAgICAgew0K ICAgICAgICAgICAgICAgICAgICAgICAgSVJRIChMZXZlbCwgQWN0aXZlTG93LCBTaGFyZWQpIHs5 fQ0KICAgICAgICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9D UlMsIDAsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg ICAgICAgICAgIE5hbWUgKFJUTEUsIFJlc291cmNlVGVtcGxhdGUgKCkNCiAgICAgICAgICAgICAg ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJUlEgKExldmVsLCBBY3Rp dmVMb3csIFNoYXJlZCkge30NCiAgICAgICAgICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAg ICAgICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKFJUTEUsIDB4MDEsIElSUTApDQogICAgICAg ICAgICAgICAgICAgICAgICBTdG9yZSAoWmVybywgSVJRMCkNCiAgICAgICAgICAgICAgICAgICAg ICAgIFNoaWZ0TGVmdCAoMHgwMSwgQW5kIChQSVJFLCAweDBGKSwgSVJRMCkNCiAgICAgICAgICAg ICAgICAgICAgICAgIFJldHVybiAoUlRMRSkNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAg ICAgICAgICAgICAgICAgIE1ldGhvZCAoX1NSUywgMSwgU2VyaWFsaXplZCkNCiAgICAgICAgICAg ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChBcmcw LCAweDAxLCBJUlEwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgRmluZFNldFJpZ2h0Qml0IChJ UlEwLCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICBEZWNyZW1lbnQgKExvY2FsMCkN CiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChMb2NhbDAsIFBJUkUpDQogICAgICAgICAg ICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9TVEEsIDAsIFNlcmlh bGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElm IChBbmQgKFBJUkUsIDB4ODApKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwOSkNCiAgICAgICAgICAgICAgICAgICAgICAg IH0NCiAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MEIpDQogICAgICAgICAg ICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB9 DQoNCiAgICAgICAgICAgICAgICBEZXZpY2UgKExOS0YpDQogICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJQTlAwQzBGIikpDQogICAgICAg ICAgICAgICAgICAgIE5hbWUgKF9VSUQsIDB4MDYpDQogICAgICAgICAgICAgICAgICAgIE1ldGhv ZCAoX0RJUywgMCwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAg ICAgICAgICAgICAgICAgU3RvcmUgKDB4ODAsIFBJUkYpDQogICAgICAgICAgICAgICAgICAgIH0N Cg0KICAgICAgICAgICAgICAgICAgICBOYW1lIChfUFJTLCBSZXNvdXJjZVRlbXBsYXRlICgpDQog ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElSUSAoTGV2ZWws IEFjdGl2ZUxvdywgU2hhcmVkKSB7OX0NCiAgICAgICAgICAgICAgICAgICAgfSkNCiAgICAgICAg ICAgICAgICAgICAgTWV0aG9kIChfQ1JTLCAwLCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBOYW1lIChSVExGLCBSZXNvdXJjZVRlbXBs YXRlICgpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgSVJRIChMZXZlbCwgQWN0aXZlTG93LCBTaGFyZWQpIHt9DQogICAgICAgICAgICAgICAg ICAgICAgICB9KQ0KICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChSVExG LCAweDAxLCBJUlEwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFplcm8sIElSUTAp DQogICAgICAgICAgICAgICAgICAgICAgICBTaGlmdExlZnQgKDB4MDEsIEFuZCAoUElSRiwgMHgw RiksIElSUTApDQogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKFJUTEYpDQogICAgICAg ICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9TUlMsIDEsIFNl cmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAg IENyZWF0ZVdvcmRGaWVsZCAoQXJnMCwgMHgwMSwgSVJRMCkNCiAgICAgICAgICAgICAgICAgICAg ICAgIEZpbmRTZXRSaWdodEJpdCAoSVJRMCwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgRGVjcmVtZW50IChMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoTG9j YWwwLCBQSVJGKQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAg TWV0aG9kIChfU1RBLCAwLCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAg ICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChQSVJGLCAweDgwKSkNCiAgICAgICAgICAgICAg ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MDkpDQog ICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQog ICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0 dXJuICgweDBCKQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAg ICB9DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgRGV2aWNlIChMTktHKQ0K ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0hJRCwgRWlzYUlk ICgiUE5QMEMwRiIpKQ0KICAgICAgICAgICAgICAgICAgICBOYW1lIChfVUlELCAweDA3KQ0KICAg ICAgICAgICAgICAgICAgICBNZXRob2QgKF9ESVMsIDAsIFNlcmlhbGl6ZWQpDQogICAgICAgICAg ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDgwLCBQSVJHKQ0K ICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX1BSUywg UmVzb3VyY2VUZW1wbGF0ZSAoKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgICAgICBJUlEgKExldmVsLCBBY3RpdmVMb3csIFNoYXJlZCkgezl9DQogICAgICAgICAg ICAgICAgICAgIH0pDQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0NSUywgMCwgU2VyaWFs aXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgTmFt ZSAoUlRMRywgUmVzb3VyY2VUZW1wbGF0ZSAoKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgIElSUSAoTGV2ZWwsIEFjdGl2ZUxvdywgU2hhcmVk KSB7fQ0KICAgICAgICAgICAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICAgICAgICAg IENyZWF0ZVdvcmRGaWVsZCAoUlRMRywgMHgwMSwgSVJRMCkNCiAgICAgICAgICAgICAgICAgICAg ICAgIFN0b3JlIChaZXJvLCBJUlEwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgU2hpZnRMZWZ0 ICgweDAxLCBBbmQgKFBJUkcsIDB4MEYpLCBJUlEwKQ0KICAgICAgICAgICAgICAgICAgICAgICAg UmV0dXJuIChSVExHKQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAg ICAgTWV0aG9kIChfU1JTLCAxLCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQog ICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKEFyZzAsIDB4MDEsIElSUTAp DQogICAgICAgICAgICAgICAgICAgICAgICBGaW5kU2V0UmlnaHRCaXQgKElSUTAsIExvY2FsMCkN CiAgICAgICAgICAgICAgICAgICAgICAgIERlY3JlbWVudCAoTG9jYWwwKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgU3RvcmUgKExvY2FsMCwgUElSRykNCiAgICAgICAgICAgICAgICAgICAgfQ0K DQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1NUQSwgMCwgU2VyaWFsaXplZCkNCiAgICAg ICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoUElSRywg MHg4MCkpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgUmV0dXJuICgweDA5KQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAg ICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwQikNCiAgICAgICAgICAgICAgICAgICAgICAg IH0NCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAg ICAgICAgIERldmljZSAoTE5LSCkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg ICAgIE5hbWUgKF9ISUQsIEVpc2FJZCAoIlBOUDBDMEYiKSkNCiAgICAgICAgICAgICAgICAgICAg TmFtZSAoX1VJRCwgMHgwOCkNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfRElTLCAwLCBT ZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg ICBTdG9yZSAoMHg4MCwgUElSSCkNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAg ICAgICAgICAgIE5hbWUgKF9QUlMsIFJlc291cmNlVGVtcGxhdGUgKCkNCiAgICAgICAgICAgICAg ICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgSVJRIChMZXZlbCwgQWN0aXZlTG93LCBT aGFyZWQpIHs5fQ0KICAgICAgICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAgICAgICAgICBN ZXRob2QgKF9DUlMsIDAsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgIE5hbWUgKFJUTEgsIFJlc291cmNlVGVtcGxhdGUgKCkNCiAgICAg ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJUlEgKExl dmVsLCBBY3RpdmVMb3csIFNoYXJlZCkge30NCiAgICAgICAgICAgICAgICAgICAgICAgIH0pDQog ICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKFJUTEgsIDB4MDEsIElSUTAp DQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoWmVybywgSVJRMCkNCiAgICAgICAgICAg ICAgICAgICAgICAgIFNoaWZ0TGVmdCAoMHgwMSwgQW5kIChQSVJILCAweDBGKSwgSVJRMCkNCiAg ICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoUlRMSCkNCiAgICAgICAgICAgICAgICAgICAg fQ0KDQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1NSUywgMSwgU2VyaWFsaXplZCkNCiAg ICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZp ZWxkIChBcmcwLCAweDAxLCBJUlEwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgRmluZFNldFJp Z2h0Qml0IChJUlEwLCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICBEZWNyZW1lbnQg KExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChMb2NhbDAsIFBJUkgpDQog ICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9TVEEs IDAsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgICAgIElmIChBbmQgKFBJUkgsIDB4ODApKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwOSkNCiAgICAgICAgICAgICAg ICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAg ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MEIpDQog ICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAg ICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBEZXZpY2UgKFRJTVIpDQogICAgICAgICAgICAg ICAgew0KICAgICAgICAgICAgICAgICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJQTlAwMTAwIikp DQogICAgICAgICAgICAgICAgICAgIE5hbWUgKEJVRjAsIFJlc291cmNlVGVtcGxhdGUgKCkNCiAg ICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2 LCAweDAwNDAsIDB4MDA0MCwgMHgwMSwgMHgwNCkNCiAgICAgICAgICAgICAgICAgICAgICAgIElP IChEZWNvZGUxNiwgMHgwMDUwLCAweDAwNTAsIDB4MTAsIDB4MDQpDQogICAgICAgICAgICAgICAg ICAgIH0pDQogICAgICAgICAgICAgICAgICAgIE5hbWUgKEJVRjEsIFJlc291cmNlVGVtcGxhdGUg KCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERl Y29kZTE2LCAweDAwNDAsIDB4MDA0MCwgMHgwMSwgMHgwNCkNCiAgICAgICAgICAgICAgICAgICAg ICAgIElPIChEZWNvZGUxNiwgMHgwMDUwLCAweDAwNTAsIDB4MTAsIDB4MDQpDQogICAgICAgICAg ICAgICAgICAgICAgICBJUlFOb0ZsYWdzICgpIHswfQ0KICAgICAgICAgICAgICAgICAgICB9KQ0K ICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9DUlMsIDAsIFNlcmlhbGl6ZWQpDQogICAgICAg ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChBbmQgKEhQVEUsIDB4 MDAwMjAwMDApKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFJldHVybiAoQlVGMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAg ICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChCVUYxKQ0KICAgICAgICAgICAgICAgICAgICB9 DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgRGV2aWNlIChJUElDKQ0KICAg ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgi UE5QMDAwMCIpKQ0KICAgICAgICAgICAgICAgICAgICBOYW1lIChfQ1JTLCBSZXNvdXJjZVRlbXBs YXRlICgpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElP IChEZWNvZGUxNiwgMHgwMDIwLCAweDAwMjAsIDB4MDEsIDB4MDIpDQogICAgICAgICAgICAgICAg ICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDAyNCwgMHgwMDI0LCAweDAxLCAweDAyKQ0KICAgICAg ICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDAwMjgsIDB4MDAyOCwgMHgwMSwgMHgw MikNCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDJDLCAweDAwMkMs IDB4MDEsIDB4MDIpDQogICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDAz MCwgMHgwMDMwLCAweDAxLCAweDAyKQ0KICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29k ZTE2LCAweDAwMzQsIDB4MDAzNCwgMHgwMSwgMHgwMikNCiAgICAgICAgICAgICAgICAgICAgICAg IElPIChEZWNvZGUxNiwgMHgwMDM4LCAweDAwMzgsIDB4MDEsIDB4MDIpDQogICAgICAgICAgICAg ICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDAzQywgMHgwMDNDLCAweDAxLCAweDAyKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDAwQTAsIDB4MDBBMCwgMHgwMSwg MHgwMikNCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMEE0LCAweDAw QTQsIDB4MDEsIDB4MDIpDQogICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4 MDBBOCwgMHgwMEE4LCAweDAxLCAweDAyKQ0KICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERl Y29kZTE2LCAweDAwQUMsIDB4MDBBQywgMHgwMSwgMHgwMikNCiAgICAgICAgICAgICAgICAgICAg ICAgIElPIChEZWNvZGUxNiwgMHgwMEIwLCAweDAwQjAsIDB4MDEsIDB4MDIpDQogICAgICAgICAg ICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDBCNCwgMHgwMEI0LCAweDAxLCAweDAyKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDAwQjgsIDB4MDBCOCwgMHgw MSwgMHgwMikNCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMEJDLCAw eDAwQkMsIDB4MDEsIDB4MDIpDQogICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYs IDB4MDREMCwgMHgwNEQwLCAweDAxLCAweDAyKQ0KICAgICAgICAgICAgICAgICAgICAgICAgSVJR Tm9GbGFncyAoKSB7Mn0NCiAgICAgICAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICB9 DQoNCiAgICAgICAgICAgICAgICBEZXZpY2UgKFJUQykNCiAgICAgICAgICAgICAgICB7DQogICAg ICAgICAgICAgICAgICAgIE5hbWUgKF9ISUQsIEVpc2FJZCAoIlBOUDBCMDAiKSkNCiAgICAgICAg ICAgICAgICAgICAgTmFtZSAoQlVGMCwgUmVzb3VyY2VUZW1wbGF0ZSAoKQ0KICAgICAgICAgICAg ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDA3MCwg MHgwMDcwLCAweDAxLCAweDA4KQ0KICAgICAgICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAg ICAgICAgICBOYW1lIChCVUYxLCBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAgICAgICAgICAg ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDcwLCAweDAw NzAsIDB4MDEsIDB4MDgpDQogICAgICAgICAgICAgICAgICAgICAgICBJUlFOb0ZsYWdzICgpIHs4 fQ0KICAgICAgICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9D UlMsIDAsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg ICAgICAgICAgIElmIChBbmQgKEhQVEUsIDB4MDAwMjAwMDApKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoQlVGMCkNCiAgICAg ICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChC VUYxKQ0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAg ICAgICAgICAgRGV2aWNlIChNQVRIKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg ICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgiUE5QMEMwNCIpKQ0KICAgICAgICAgICAgICAgICAg ICBOYW1lIChfQ1JTLCBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAgICAgICAgICAgICAgIHsN CiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMEYwLCAweDAwRjAsIDB4 MDEsIDB4MDEpDQogICAgICAgICAgICAgICAgICAgICAgICBJUlFOb0ZsYWdzICgpIHsxM30NCiAg ICAgICAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAg ICBEZXZpY2UgKERNQUMpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBO YW1lIChfSElELCBFaXNhSWQgKCJQTlAwMjAwIikpDQogICAgICAgICAgICAgICAgICAgIE5hbWUg KF9DUlMsIFJlc291cmNlVGVtcGxhdGUgKCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAg ICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDAwMDAsIDB4MDAwMCwgMHgwMSwgMHgy MCkNCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDgxLCAweDAwODEs IDB4MDEsIDB4MEYpDQogICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDA5 MCwgMHgwMDkwLCAweDAxLCAweDAyKQ0KICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29k ZTE2LCAweDAwOTMsIDB4MDA5MywgMHgwMSwgMHgwRCkNCiAgICAgICAgICAgICAgICAgICAgICAg IElPIChEZWNvZGUxNiwgMHgwMEMwLCAweDAwQzAsIDB4MDEsIDB4MjApDQogICAgICAgICAgICAg ICAgICAgICAgICBETUEgKENvbXBhdGliaWxpdHksIE5vdEJ1c01hc3RlciwgVHJhbnNmZXI4XzE2 KSB7NH0NCiAgICAgICAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAg ICAgICAgICAgICBEZXZpY2UgKE1CUkQpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJQTlAwQzAyIikpDQogICAgICAgICAgICAgICAg ICAgIE5hbWUgKF9DUlMsIFJlc291cmNlVGVtcGxhdGUgKCkNCiAgICAgICAgICAgICAgICAgICAg ew0KICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDAwMkUsIDB4MDAyRSwg MHgwMSwgMHgwMikNCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDYx LCAweDAwNjEsIDB4MDEsIDB4MDEpDQogICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2Rl MTYsIDB4MDA2MywgMHgwMDYzLCAweDAxLCAweDAxKQ0KICAgICAgICAgICAgICAgICAgICAgICAg SU8gKERlY29kZTE2LCAweDAwNjUsIDB4MDA2NSwgMHgwMSwgMHgwMSkNCiAgICAgICAgICAgICAg ICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDY3LCAweDAwNjcsIDB4MDEsIDB4MDEpDQogICAg ICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDA4MCwgMHgwMDgwLCAweDAxLCAw eDAxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDAwOTIsIDB4MDA5 MiwgMHgwMSwgMHgwMSkNCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgw MEIyLCAweDAwQjIsIDB4MDEsIDB4MDIpDQogICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVj b2RlMTYsIDB4MDYwMCwgMHgwNjAwLCAweDAxLCAweDEwKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgSU8gKERlY29kZTE2LCAweDA3MDAsIDB4MDcwMCwgMHgwMSwgMHgxMCkNCiAgICAgICAgICAg ICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgxMDAwLCAweDEwMDAsIDB4MDEsIDB4ODApDQog ICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MTE4MCwgMHgxMTgwLCAweDAx LCAweDQwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweEZFMDAsIDB4 RkUwMCwgMHgwMSwgMHgwMikNCiAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwg MHhGRTEwLCAweEZFMTAsIDB4MDEsIDB4MDgpDQogICAgICAgICAgICAgICAgICAgICAgICBNZW1v cnkzMkZpeGVkIChSZWFkV3JpdGUsIDB4RkVCRkUwMDAsIDB4MDAwMDEwMDApDQogICAgICAgICAg ICAgICAgICAgICAgICBNZW1vcnkzMkZpeGVkIChSZWFkV3JpdGUsIDB4RkVCRkYwMDAsIDB4MDAw MDEwMDApDQogICAgICAgICAgICAgICAgICAgICAgICBNZW1vcnkzMkZpeGVkIChSZWFkV3JpdGUs IDB4RkVDMDAwMDAsIDB4MDAwMDEwMDApDQogICAgICAgICAgICAgICAgICAgIH0pDQogICAgICAg ICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgRGV2aWNlIChGV0hEKQ0KICAgICAgICAgICAg ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0hJRCwgRWlzYUlkICgiSU5UMDgwMCIp KQ0KICAgICAgICAgICAgICAgICAgICBOYW1lIChfQ1JTLCBSZXNvdXJjZVRlbXBsYXRlICgpDQog ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIE1lbW9yeTMyRml4 ZWQgKFJlYWRPbmx5LCAweEZGODAwMDAwLCAweDAwODAwMDAwKQ0KICAgICAgICAgICAgICAgICAg ICB9KQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIERldmljZSAoRUMwKQ0K ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0hJRCwgRWlzYUlk ICgiUE5QMEMwOSIpKQ0KICAgICAgICAgICAgICAgICAgICBOYW1lIChfQ1JTLCBSZXNvdXJjZVRl bXBsYXRlICgpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAg IElPIChEZWNvZGUxNiwgMHgwMDYyLCAweDAwNjIsIDB4MDEsIDB4MDEpDQogICAgICAgICAgICAg ICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MDA2NiwgMHgwMDY2LCAweDAxLCAweDAxKQ0KICAg ICAgICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAgICAgICAgICBOYW1lIChfR1BFLCAweDFD KQ0KICAgICAgICAgICAgICAgICAgICBOYW1lIChFQ09LLCAweDAwKQ0KICAgICAgICAgICAgICAg ICAgICBNZXRob2QgKF9SRUcsIDIsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKEFyZzAsIDB4MDMpKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Jl IChBcmcxLCBFQ09LKQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAg ICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX1BSVywgUGFja2FnZSAoMHgwMikN CiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgMHgxRCwgDQog ICAgICAgICAgICAgICAgICAgICAgICAweDA1DQogICAgICAgICAgICAgICAgICAgIH0pDQogICAg ICAgICAgICAgICAgICAgIE9wZXJhdGlvblJlZ2lvbiAoRUNSLCBFbWJlZGRlZENvbnRyb2wsIDB4 MDAsIDB4RkYpDQogICAgICAgICAgICAgICAgICAgIEZpZWxkIChFQ1IsIEJ5dGVBY2MsIExvY2ss IFByZXNlcnZlKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg ICBPZmZzZXQgKDB4ODApLCANCiAgICAgICAgICAgICAgICAgICAgICAgIE1QQlAsICAgMSwgDQog ICAgICAgICAgICAgICAgICAgICAgICBNUEJELCAgIDEsIA0KICAgICAgICAgICAgICAgICAgICAg ICAgRE9LRCwgICAxLCANCiAgICAgICAgICAgICAgICAgICAgICAgIERGQlAsICAgMSwgDQogICAg ICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4ODEpLCANCiAgICAgICAgICAgICAgICAgICAg ICAgIEJUMUEsICAgMSwgDQogICAgICAgICAgICAgICAgICAgICAgICBCVDJBLCAgIDEsIA0KICAg ICAgICAgICAgICAgICAgICAgICAgQUNBVCwgICAxLCANCiAgICAgICAgICAgICAgICAgICAgICAg IE9mZnNldCAoMHg4MiksIA0KICAgICAgICAgICAgICAgICAgICAgICAgUFdSQiwgICAxLCANCiAg ICAgICAgICAgICAgICAgICAgICAgIEpPR0IsICAgMSwgDQogICAgICAgICAgICAgICAgICAgICAg ICBMSURTLCAgIDEsIA0KICAgICAgICAgICAgICAgICAgICAgICAgT2Zmc2V0ICgweDgzKSwgDQog ICAgICAgICAgICAgICAgICAgICAgICBCVDFQLCAgIDEsIA0KICAgICAgICAgICAgICAgICAgICAg ICAgQlQyUCwgICAxLCANCiAgICAgICAgICAgICAgICAgICAgICAgIE9mZnNldCAoMHg4NCksIA0K ICAgICAgICAgICAgICAgICAgICAgICAgQjFTVCwgICA4LCANCiAgICAgICAgICAgICAgICAgICAg ICAgIEIyU1QsICAgOCwgDQogICAgICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4OTApLCAN CiAgICAgICAgICAgICAgICAgICAgICAgIE1BU0ssICAgOCwgDQogICAgICAgICAgICAgICAgICAg ICAgICBCVDFTLCAgIDEsIA0KICAgICAgICAgICAgICAgICAgICAgICAgQlQyUywgICAxLCANCiAg ICAgICAgICAgICAgICAgICAgICAgIE9mZnNldCAoMHg5MiksIA0KICAgICAgICAgICAgICAgICAg ICAgICAgQlQxVywgICAxLCANCiAgICAgICAgICAgICAgICAgICAgICAgIEJUMlcsICAgMSwgDQog ICAgICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4OTMpLCANCiAgICAgICAgICAgICAgICAg ICAgICAgIEZBTjAsICAgOCwgDQogICAgICAgICAgICAgICAgICAgICAgICBDQjBTLCAgIDEsIA0K ICAgICAgICAgICAgICAgICAgICAgICAgQ0IxUywgICAxLCANCiAgICAgICAgICAgICAgICAgICAg ICAgIE9mZnNldCAoMHg5NSksIA0KICAgICAgICAgICAgICAgICAgICAgICAgUEhZTywgICAxLCAN CiAgICAgICAgICAgICAgICAgICAgICAgIE9mZnNldCAoMHg5NiksIA0KICAgICAgICAgICAgICAg ICAgICAgICAgQlJJVCwgICA4LCANCiAgICAgICAgICAgICAgICAgICAgICAgIENPTlQsICAgOCwg DQogICAgICAgICAgICAgICAgICAgICAgICBTTkRVLCAgIDEsIA0KICAgICAgICAgICAgICAgICAg ICAgICAgU05ERCwgICAxLCANCiAgICAgICAgICAgICAgICAgICAgICAgIE9mZnNldCAoMHg5OSks IA0KICAgICAgICAgICAgICAgICAgICAgICAgU01ETSwgICAxLCANCiAgICAgICAgICAgICAgICAg ICAgICAgIE9mZnNldCAoMHg5QSksIA0KICAgICAgICAgICAgICAgICAgICAgICAgT2Zmc2V0ICgw eDlCKSwgDQogICAgICAgICAgICAgICAgICAgICAgICBTSVJRLCAgIDgsIA0KICAgICAgICAgICAg ICAgICAgICAgICAgU0xPQiwgICA4LCANCiAgICAgICAgICAgICAgICAgICAgICAgIFNISUIsICAg OCwgDQogICAgICAgICAgICAgICAgICAgICAgICBNUFdSLCAgIDEsIA0KICAgICAgICAgICAgICAg ICAgICAgICAgV0FLSSwgICAxLCANCiAgICAgICAgICAgICAgICAgICAgICAgIE9mZnNldCAoMHg5 RiksIA0KICAgICAgICAgICAgICAgICAgICAgICAgT2Zmc2V0ICgweEEwKSwgDQogICAgICAgICAg ICAgICAgICAgICAgICBCMVJDLCAgIDE2LCANCiAgICAgICAgICAgICAgICAgICAgICAgIEIxQUIs ICAgMTYsIA0KICAgICAgICAgICAgICAgICAgICAgICAgQjFBQywgICAxNiwgDQogICAgICAgICAg ICAgICAgICAgICAgICBCMVZPLCAgIDE2LCANCiAgICAgICAgICAgICAgICAgICAgICAgIEIyUkMs ICAgMTYsIA0KICAgICAgICAgICAgICAgICAgICAgICAgQjJBQiwgICAxNiwgDQogICAgICAgICAg ICAgICAgICAgICAgICBCMkFDLCAgIDE2LCANCiAgICAgICAgICAgICAgICAgICAgICAgIEIyVk8s ICAgMTYsIA0KICAgICAgICAgICAgICAgICAgICAgICAgQjFEQywgICAxNiwgDQogICAgICAgICAg ICAgICAgICAgICAgICBCMUxGLCAgIDE2LCANCiAgICAgICAgICAgICAgICAgICAgICAgIEIxRFYs ICAgMTYsIA0KICAgICAgICAgICAgICAgICAgICAgICAgQjFETCwgICAxNiwgDQogICAgICAgICAg ICAgICAgICAgICAgICBCMkRDLCAgIDE2LCANCiAgICAgICAgICAgICAgICAgICAgICAgIEIyTEYs ICAgMTYsIA0KICAgICAgICAgICAgICAgICAgICAgICAgQjJEViwgICAxNiwgDQogICAgICAgICAg ICAgICAgICAgICAgICBCMkRMLCAgIDE2LCANCiAgICAgICAgICAgICAgICAgICAgICAgIEExVFAs ICAgMTYsIA0KICAgICAgICAgICAgICAgICAgICAgICAgQTFBVCwgICAxNiwgDQogICAgICAgICAg ICAgICAgICAgICAgICBBMVBULCAgIDE2LCANCiAgICAgICAgICAgICAgICAgICAgICAgIEExQ1Qs ICAgMTYsIA0KICAgICAgICAgICAgICAgICAgICAgICAgQTJUUCwgICAxNiwgDQogICAgICAgICAg ICAgICAgICAgICAgICBBMkFULCAgIDE2LCANCiAgICAgICAgICAgICAgICAgICAgICAgIEEyUFQs ICAgMTYsIA0KICAgICAgICAgICAgICAgICAgICAgICAgQTJDVCwgICAxNg0KICAgICAgICAgICAg ICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfUTUwLCAwLCBOb3RTZXJp YWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBO b3RpZnkgKEFDQUQsIDB4ODApDQogICAgICAgICAgICAgICAgICAgICAgICBcX1NCLk5DUFUgKCkN CiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1E1 MSwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgICAgICAgICAgSWYgKEJUMUEpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgTm90aWZ5IChCQVQxLCAweDAwKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAg ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5vdGlmeSAoQkFUMSwgMHgw MSkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAg Tm90aWZ5IChCQVQxLCAweDgwKQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAg ICAgICAgICAgTWV0aG9kIChfUTUzLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoIl9RNTM6QmF0dGVyeSBTZWxl Y3Rpb24iLCBEZWJ1ZykNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAg ICAgIE1ldGhvZCAoX1E1OCwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAg ew0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKCJfUTU4OkFURiB0ZW1wZXJhdHVyZSB0 cmlwIHBvaW50IGNoYW5nZCIsIERlYnVnKQ0KICAgICAgICAgICAgICAgICAgICAgICAgTm90aWZ5 IChcX1RaLkFURjAsIDB4ODEpDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAg ICAgICAgICBNZXRob2QgKF9RNUYsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAg ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgiX1E1RjpBVEYgdGVtcGVyYXR1 cmUgcmVhY2hlcyB0cmlwIHBvaW50IiwgRGVidWcpDQogICAgICAgICAgICAgICAgICAgICAgICBO b3RpZnkgKFxfVFouQVRGMCwgMHg4MCkNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAg ICAgICAgICAgICAgIE1ldGhvZCAoX1E2MCwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAg ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgTm90aWZ5IChcX1NCLlBXUkIsIDB4 ODApDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2Qg KF9RNjYsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAg ICAgICAgICAgICAgICAgIE5vdGlmeSAoXF9TQi5MSUQwLCAweDgwKQ0KICAgICAgICAgICAgICAg ICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgRGV2aWNlIChCQVQxKQ0KICAgICAgICAgICAg ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBOYW1lIChfSElELCBFaXNhSWQgKCJQ TlAwQzBBIikpDQogICAgICAgICAgICAgICAgICAgICAgICBOYW1lIChfVUlELCAweDAxKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgTmFtZSAoX1BDTCwgUGFja2FnZSAoMHgwMSkNCiAgICAgICAg ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcX1NCDQogICAg ICAgICAgICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAgICAgICAgICAgICAgTmFtZSAoQkFU SSwgUGFja2FnZSAoMHgwRCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAweDAwLCANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDk2 NTAsIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4OTY1MCwgDQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgMHgwMCwgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgMHgzOUQw LCANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwLCANCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAweDc4LCANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwLCANCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAweDBBLCANCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAiIiwgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIiIsIA0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICJMSU9OIiwgDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIlNv bnkgQ29ycC4iDQogICAgICAgICAgICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAgICAgICAg ICAgICAgTmFtZSAoQkFUUywgUGFja2FnZSAoMHgwNCkNCiAgICAgICAgICAgICAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAyLCANCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAweEZGRkZGRkZGLCANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDBE N0EsIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIDB4Mzg0MA0KICAgICAgICAgICAgICAg ICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX1NUQSwgMCwgTm90 U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICBJZiAoTEVxdWFsIChcX1NCLlBDSTAuTFBDQi5FQzAuRUNPSywgMHgwMCkpDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBBbmQgKFBIU0QgKDB4RDQsIDB4ODApLCAweDAxMDAsIExvY2FsMSkNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgU3RvcmUgKEJUMUEsIExvY2FsMSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQoN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoTG9jYWwxKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4 MUYsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MEYsIExvY2FsMCkNCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1 cm4gKExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAg ICAgICAgICAgTWV0aG9kIChfQklGLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKFxfU0Iu UENJMC5MUENCLkVDMC5FQ09LLCAweDAwKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7 DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChQSFNEICgweEQ0LCAweEIw KSwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoUEhTRCAo MHhENCwgMHhCMiksIExvY2FsMSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3Rv cmUgKFBIU0QgKDB4RDQsIDB4QjYpLCBMb2NhbDIpDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChCMURD LCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChCMUxGLCBM b2NhbDEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChCMURWLCBMb2Nh bDIpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgTXVsdGlwbHkgKExvY2FsMCwgMHgwQSwgSW5kZXggKEJBVEksIDB4MDEpKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgIE11bHRpcGx5IChMb2NhbDEsIDB4MEEsIEluZGV4IChC QVRJLCAweDAyKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoTG9jYWwyLCBJ bmRleCAoQkFUSSwgMHgwNCkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChC QVRJKQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAg ICBNZXRob2QgKF9CU1QsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoXF9TQi5QQ0kwLkxQ Q0IuRUMwLkVDT0ssIDB4MDApKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEFuZCAoUEhTRCAoMHhENCwgMHg4NCks IDB4RkYsIExvY2FsMCksIEluZGV4IChCQVRTLCAweDAwKSkNCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgU3RvcmUgKFBIU0QgKDB4RDQsIDB4QTYpLCBMb2NhbDApDQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChQSFNEICgweEQ0LCAweEE0KSwgTG9jYWwxKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoUEhTRCAoMHhENCwgMHhBMiks IExvY2FsMikNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEIxU1QsIEluZGV4IChCQVRTLCAweDAwKSkN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEIxVk8sIExvY2FsMCkNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEIxQUMsIExvY2FsMSkNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEIxQUIsIExvY2FsMikNCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAo TEVxdWFsIChMb2NhbDEsIDB4RkZGRikpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHhGRkZGRkZGRiwgTG9jYWwx KQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBJZiAoTE5vdCAoTExlc3MgKExvY2FsMSwgMHg4MDAwKSkpDQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFhPciAoTG9jYWwxLCAweEZGRkYsIExvY2FsMSkNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIEluY3JlbWVudCAoTG9jYWwxKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTXVsdGlw bHkgKExvY2FsMCwgTG9jYWwxLCBMb2NhbDEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIERpdmlkZSAoTG9jYWwxLCAweDAzRTgsICwgTG9jYWwxKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChMb2NhbDEs IEluZGV4IChCQVRTLCAweDAxKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBNdWx0aXBs eSAoTG9jYWwyLCAweDBBLCBJbmRleCAoQkFUUywgMHgwMikpDQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgU3RvcmUgKExvY2FsMCwgSW5kZXggKEJBVFMsIDB4MDMpKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFJldHVybiAoQkFUUykNCiAgICAgICAgICAgICAgICAgICAgICAgIH0N CiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIFNjb3BlIChcKQ0K ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBOYW1lIChQV1JT LCBPbmVzKQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgRGV2 aWNlIChBQ0FEKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg ICBOYW1lIChfSElELCAiQUNQSTAwMDMiKQ0KICAgICAgICAgICAgICAgICAgICAgICAgTmFtZSAo X1BDTCwgUGFja2FnZSAoMHgwMSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICBcX1NCDQogICAgICAgICAgICAgICAgICAgICAgICB9KQ0KICAg ICAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfUFNSLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChM RXF1YWwgKFxfU0IuUENJMC5MUENCLkVDMC5FQ09LLCAweDAwKSkNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFuZCAoUEhTRCAo MHhENCwgMHg4MCksIDB4MDQwMCwgTG9jYWwxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAg IH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoQUNBVCwg TG9jYWwxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFN0b3JlIChMb2NhbDEsIFBXUlMpDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgSWYgKExvY2FsMSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoT25lKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1 cm4gKFplcm8pDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAg ICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9TVEEsIDAsIE5v dFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgUmV0dXJuICgweDBGKQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAg ICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAg RGV2aWNlIChTUElDKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgTmFt ZSAoX0hJRCwgRWlzYUlkICgiU05ZNjAwMSIpKQ0KICAgICAgICAgICAgICAgICAgICBOYW1lIChS U1JDLCBSZXNvdXJjZVRlbXBsYXRlICgpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAg ICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgwMDAwLCAweDAwMDAsIDB4MDEsIDB4MjAp DQogICAgICAgICAgICAgICAgICAgICAgICBJUlFOb0ZsYWdzICgpIHt9DQogICAgICAgICAgICAg ICAgICAgIH0pDQogICAgICAgICAgICAgICAgICAgIE5hbWUgKFNTUkMsIFJlc291cmNlVGVtcGxh dGUgKCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgSU8g KERlY29kZTE2LCAweDAwMDAsIDB4MDAwMCwgMHgwMSwgMHgyMCkNCiAgICAgICAgICAgICAgICAg ICAgICAgIElSUU5vRmxhZ3MgKCkge30NCiAgICAgICAgICAgICAgICAgICAgfSkNCiAgICAgICAg ICAgICAgICAgICAgTmFtZSAoU0lSVCwgUGFja2FnZSAoMHgwNCkNCiAgICAgICAgICAgICAgICAg ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgMHgwNiwgDQogICAgICAgICAgICAgICAgICAg ICAgICAweDA5LCANCiAgICAgICAgICAgICAgICAgICAgICAgIDB4MEEsIA0KICAgICAgICAgICAg ICAgICAgICAgICAgMHgwQg0KICAgICAgICAgICAgICAgICAgICB9KQ0KICAgICAgICAgICAgICAg ICAgICBNZXRob2QgKF9DUlMsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZUJ5dGVGaWVsZCAoUlNSQywgMHgwMiwg SU9NMSkNCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZUJ5dGVGaWVsZCAoUlNSQywgMHgw MywgSU9NMikNCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoUlNSQywg MHgwMiwgSU8xSSkNCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoUlNS QywgMHgwNCwgSU8xQSkNCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAo UlNSQywgMHgwOSwgSVJRVikNCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKFxf U0IuUENJMC5MUENCLkVDMC5FQ09LLCAweDAwKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoUEhTQiAoMHhENCwgMHg5QyksIElP TTEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFBIU0IgKDB4RDQsIDB4OUQp LCBJT00yKQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAg ICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFN0b3JlIChcX1NCLlBDSTAuTFBDQi5FQzAuU0xPQiwgSU9NMSkNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBTdG9yZSAoXF9TQi5QQ0kwLkxQQ0IuRUMwLlNISUIsIElPTTIpDQog ICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Jl IChJTzFJLCBJTzFBKQ0KICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoXF9TQi5Q Q0kwLkxQQ0IuRUMwLkVDT0ssIDB4MDApKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFNoaWZ0UmlnaHQgKFBIU0IgKDB4RDQsIDB4OUIpLCAw eDA0LCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAg ICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgU2hpZnRSaWdodCAoXF9TQi5QQ0kwLkxQQ0IuRUMwLlNJUlEsIDB4MDQsIExv Y2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAg ICAgRmluZFNldFJpZ2h0Qml0IChMb2NhbDAsIExvY2FsMSkNCiAgICAgICAgICAgICAgICAgICAg ICAgIElmIChMb2NhbDEpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgRGVjcmVtZW50IChMb2NhbDEpDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgU3RvcmUgKERlcmVmT2YgKEluZGV4IChTSVJULCBMb2NhbDEpKSwgTG9jYWwwKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFNoaWZ0TGVmdCAoMHgwMSwgTG9jYWwwLCBJUlFWKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICBSZXR1 cm4gKFJTUkMpDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBN ZXRob2QgKF9TUlMsIDEsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZUJ5dGVGaWVsZCAoQXJnMCwgMHgwMiwgSU9BMSkN CiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZUJ5dGVGaWVsZCAoQXJnMCwgMHgwMywgSU9B MikNCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoQXJnMCwgMHgwOSwg SVJRVikNCiAgICAgICAgICAgICAgICAgICAgICAgIEZpbmRTZXRSaWdodEJpdCAoSVJRViwgTG9j YWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExvY2FsMCkNCiAgICAgICAgICAgICAg ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBEZWNyZW1lbnQgKExvY2Fs MCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoTWF0Y2ggKFNJUlQsIE1FUSwg TG9jYWwwLCBNVFIsIDB4MDAsIDB4MDApLCBMb2NhbDEpDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgU2hpZnRMZWZ0ICgweDEwLCBMb2NhbDEsIExvY2FsMikNCiAgICAgICAgICAgICAgICAg ICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAg ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMCwgTG9jYWwy KQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICBJ ZiAoTEVxdWFsIChcX1NCLlBDSTAuTFBDQi5FQzAuRUNPSywgMHgwMCkpDQogICAgICAgICAgICAg ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUEhTVyAoMHhENSwgMHg5 QiwgTG9jYWwyKQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAg ICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFN0b3JlIChMb2NhbDIsIFxfU0IuUENJMC5MUENCLkVDMC5TSVJRKQ0KICAgICAg ICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFs IChcX1NCLlBDSTAuTFBDQi5FQzAuRUNPSywgMHgwMCkpDQogICAgICAgICAgICAgICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgUEhTVyAoMHhENSwgMHg5RCwgSU9BMikN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQSFNXICgweEQ1LCAweDlDLCBJT0ExKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAg ICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3Jl IChJT0EyLCBcX1NCLlBDSTAuTFBDQi5FQzAuU0hJQikNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICBTdG9yZSAoSU9BMSwgXF9TQi5QQ0kwLkxQQ0IuRUMwLlNMT0IpDQogICAgICAgICAgICAg ICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIFNsZWVwICgweDAxKQ0KICAg ICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX1BSUywgUmVz b3VyY2VUZW1wbGF0ZSAoKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg ICAgICAgICBTdGFydERlcGVuZGVudEZuTm9QcmkgKCkNCiAgICAgICAgICAgICAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYsIDB4MTA4MCwgMHgx MDgwLCAweDAxLCAweDIwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAg ICAgICAgICAgICAgU3RhcnREZXBlbmRlbnRGbk5vUHJpICgpDQogICAgICAgICAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSU8gKERlY29kZTE2LCAweDEwQTAs IDB4MTBBMCwgMHgwMSwgMHgyMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAg ICAgICAgICAgICAgICAgIFN0YXJ0RGVwZW5kZW50Rm5Ob1ByaSAoKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIElPIChEZWNvZGUxNiwgMHgx MEMwLCAweDEwQzAsIDB4MDEsIDB4MjApDQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAg ICAgICAgICAgICAgICAgICAgICBTdGFydERlcGVuZGVudEZuTm9QcmkgKCkNCiAgICAgICAgICAg ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2RlMTYs IDB4MTBFMCwgMHgxMEUwLCAweDAxLCAweDIwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0K ICAgICAgICAgICAgICAgICAgICAgICAgRW5kRGVwZW5kZW50Rm4gKCkNCiAgICAgICAgICAgICAg ICAgICAgICAgIElSUU5vRmxhZ3MgKCkgezYsOSwxMCwxMX0NCiAgICAgICAgICAgICAgICAgICAg fSkNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfRElTLCAwLCBOb3RTZXJpYWxpemVkKQ0K ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoX0NS UyAoKSwgU1NSQykNCiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKFxfU0IuUENJ MC5MUENCLkVDMC5FQ09LLCAweDAwKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICBQSFNXICgweEQ1LCAweDlCLCAweDAwKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFBIU1cgKDB4RDUsIDB4OUQsIDB4MDApDQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgUEhTVyAoMHhENSwgMHg5QywgMHgwMCkNCiAgICAgICAgICAgICAgICAg ICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAg ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMCwgXF9TQi5Q Q0kwLkxQQ0IuRUMwLlNJUlEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4 MDAsIFxfU0IuUENJMC5MUENCLkVDMC5TSElCKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAg IFN0b3JlICgweDAwLCBcX1NCLlBDSTAuTFBDQi5FQzAuU0xPQikNCiAgICAgICAgICAgICAgICAg ICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgU2xlZXAgKDB4MDEpDQogICAgICAg ICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9TVEEsIDAsIE5v dFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg ICAgIElmIChMRXF1YWwgKFxfU0IuUENJMC5MUENCLkVDMC5FQ09LLCAweDAwKSkNCiAgICAgICAg ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTaGlmdFJpZ2h0 IChQSFNCICgweEQ0LCAweDlCKSwgMHgwNCwgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAg ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNoaWZ0UmlnaHQgKFxfU0IuUENJMC5M UENCLkVDMC5TSVJRLCAweDA0LCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICB9DQoN CiAgICAgICAgICAgICAgICAgICAgICAgIEZpbmRTZXRSaWdodEJpdCAoTG9jYWwwLCBMb2NhbDEp DQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTG9jYWwxKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwRikNCiAgICAg ICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAg ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4g KDB4MEQpDQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIH0N CiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBEZXZpY2UgKFNOQykNCiAgICAg ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIE5hbWUgKF9ISUQsIEVpc2FJZCAoIlNO WTUwMDEiKSkNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChHUElELCAwLCBOb3RTZXJpYWxp emVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBSZXR1 cm4gKFBIU0IgKDB4QzAsIDB4MDApKQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAg ICAgICAgICAgICAgTWV0aG9kIChHQlJULCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAg ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChcX1NCLlBDSTAu TFBDQi5FQzAuRUNPSywgMHgwMCkpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFBIU0QgKDB4RDQsIDB4OTYpLCBMb2NhbDApDQog ICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQog ICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3Rv cmUgKFxfU0IuUENJMC5MUENCLkVDMC5CUklULCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAg ICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoUEhTQiAoMHhDRiwgTG9j YWwwKSkNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIE1ldGhv ZCAoU0JSVCwgMSwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAg ICAgICAgICAgICAgICAgICAgU3RvcmUgKFBIU0IgKDB4Q0QsIEFyZzApLCBMb2NhbDApDQogICAg ICAgICAgICAgICAgICAgICAgICBJZiAoTEVxdWFsIChcX1NCLlBDSTAuTFBDQi5FQzAuRUNPSywg MHgwMCkpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgUEhTQiAoMHhDMywgTG9jYWwwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAg ICAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChMb2NhbDAsIFxfU0IuUENJMC5MUENCLkVD MC5CUklUKQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAg ICAgICBSZXR1cm4gKFplcm8pDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAg ICAgICAgICBNZXRob2QgKEdQQlIsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAg ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoUEhTQiAoMHhDMSwgMHgwMCkp DQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKFNQ QlIsIDEsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg ICAgICAgICAgICAgIFBIU0IgKDB4QzIsIEFyZzApDQogICAgICAgICAgICAgICAgICAgICAgICBS ZXR1cm4gKFplcm8pDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAg ICBNZXRob2QgKEdDVFIsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsN CiAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKFxfU0IuUENJMC5MUENCLkVDMC5F Q09LLCAweDAwKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICBTdG9yZSAoUEhTRCAoMHhENCwgMHg5NyksIExvY2FsMCkNCiAgICAgICAgICAg ICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAg ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoXF9TQi5Q Q0kwLkxQQ0IuRUMwLkNPTlQsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0K ICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChQSFNCICgweEQwLCBMb2NhbDApKQ0KICAg ICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChTQ1RSLCAx LCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg ICAgICAgICBTdG9yZSAoUEhTQiAoMHhDRSwgQXJnMCksIExvY2FsMCkNCiAgICAgICAgICAgICAg ICAgICAgICAgIElmIChMRXF1YWwgKFxfU0IuUENJMC5MUENCLkVDMC5FQ09LLCAweDAwKSkNCiAg ICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBQSFNC ICgweEM2LCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAg ICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgU3RvcmUgKExvY2FsMCwgXF9TQi5QQ0kwLkxQQ0IuRUMwLkNPTlQpDQog ICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVy biAoWmVybykNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIE1l dGhvZCAoR1BDUiwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChQSFNCICgweEM0LCAweDAwKSkNCiAgICAgICAg ICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoU1BDUiwgMSwgTm90 U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAg ICAgUEhTQiAoMHhDNSwgQXJnMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoWmVy bykNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAo R0NNSSwgMSwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAg ICAgICAgICAgICAgICAgUmV0dXJuIChQSFNEICgweENBLCBBcmcwKSkNCiAgICAgICAgICAgICAg ICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoU0NNSSwgMSwgTm90U2VyaWFs aXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgUmV0 dXJuIChQSFNEICgweENCLCBBcmcwKSkNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAg ICAgICAgICAgICAgIE1ldGhvZCAoUFdBSywgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAg ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgQWNxdWlyZSAoUExPSywgMHhGRkZG KQ0KICAgICAgICAgICAgICAgICAgICAgICAgTm90aWZ5IChcX1BSLkNQVTAsIDB4ODApDQogICAg ICAgICAgICAgICAgICAgICAgICBSZWxlYXNlIChQTE9LKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgUmV0dXJuIChaZXJvKQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAg ICAgICAgTWV0aG9kIChQV1JOLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgICAgICAgICBOb3RpZnkgKFxfU0IuUFdSQiwgMHg4MCkNCiAg ICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoQ1NYQiwg MSwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAg ICAgICAgICAgQWNxdWlyZSAoTVBIUywgMHhGRkZGKQ0KICAgICAgICAgICAgICAgICAgICAgICAg U3RvcmUgKEFyZzAsIFNYQkYpDQogICAgICAgICAgICAgICAgICAgICAgICBQSFMwICgweENDKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKFNYQkYsIExvY2FsMCkNCiAgICAgICAgICAg ICAgICAgICAgICAgIFJlbGVhc2UgKE1QSFMpDQogICAgICAgICAgICAgICAgICAgICAgICBSZXR1 cm4gKExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAg IE5hbWUgKEJTSVQsIDB4RkZGRikNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChDRFBXLCAx LCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg ICAgICBJZiAoQXJnMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICBJZiAoTE5vdCAoQW5kIChcR0wwMywgMHgwOCkpKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT3IgKEFu ZCAoXF9TQi5QQ0kwLklERUMuSUNSNCwgMHgwMyksIDB4MDQsIFxfU0IuUENJMC5JREVDLklDUjQp DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNsZWVwICgweDBBKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBPciAoXEdMMDMsIDB4MDgsIFxHTDAzKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBTbGVlcCAoMHgwMUY0KQ0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBBbmQgKFxfU0IuUENJMC5JREVDLklDUjQsIDB4MDMsIFxfU0IuUENJMC5J REVDLklDUjQpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChCU0lULCBc X1NCLlBDSTAuSURFQy5TRUNUKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAg ICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAg ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoQW5k IChcR0wwMywgMHgwOCkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoXF9TQi5QQ0kwLklERUMuU0VDVCwgQlNJVCkN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4ODAwMCwgXF9TQi5QQ0kw LklERUMuU0VDVCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT3IgKEFuZCAoXF9T Qi5QQ0kwLklERUMuSUNSNCwgMHgwMyksIDB4MDQsIFxfU0IuUENJMC5JREVDLklDUjQpDQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNsZWVwICgweDBBKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBBbmQgKFxHTDAzLCAweEY3LCBcR0wwMykNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgU2xlZXAgKDB4MDFGNCkNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIH0N Cg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKEdDRFAsIDAsIE5vdFNlcmlhbGl6ZWQpDQog ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoU2hp ZnRSaWdodCAoQW5kIChcR0wwMywgMHgwOCksIDB4MDMpKQ0KICAgICAgICAgICAgICAgICAgICB9 DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChHV0RQLCAwLCBOb3RTZXJpYWxpemVkKQ0K ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKFBI UyAoMHhERikpDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBN ZXRob2QgKE5QUEMsIDEsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAg ICAgICAgICAgICAgICAgICAgICAgIE5vb3ANCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAg ICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIERldmljZSAoUFMySykNCiAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgIE5hbWUgKF9ISUQsIEVpc2FJZCAoIlBOUDAzMDMi KSkNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0NSUywgUmVzb3VyY2VUZW1wbGF0ZSAoKQ0K ICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBJTyAoRGVjb2Rl MTYsIDB4MDA2MCwgMHgwMDYwLCAweDAxLCAweDAxKQ0KICAgICAgICAgICAgICAgICAgICAgICAg SU8gKERlY29kZTE2LCAweDAwNjQsIDB4MDA2NCwgMHgwMSwgMHgwMSkNCiAgICAgICAgICAgICAg ICAgICAgICAgIElSUSAoRWRnZSwgQWN0aXZlSGlnaCwgRXhjbHVzaXZlKSB7MX0NCiAgICAgICAg ICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBEZXZp Y2UgKFBTMk0pDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBOYW1lIChf SElELCBFaXNhSWQgKCJTTlk5MDA2IikpDQogICAgICAgICAgICAgICAgICAgIE5hbWUgKF9DSUQs IDB4MTMwRkQwNDEpDQogICAgICAgICAgICAgICAgICAgIE5hbWUgKF9DUlMsIFJlc291cmNlVGVt cGxhdGUgKCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAg SVJRIChFZGdlLCBBY3RpdmVIaWdoLCBFeGNsdXNpdmUpIHsxMn0NCiAgICAgICAgICAgICAgICAg ICAgfSkNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIERl dmljZSAoVVNCMCkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBOYW1lIChfQURSLCAw eDAwMUQwMDAwKQ0KICAgICAgICAgICAgICAgIE9wZXJhdGlvblJlZ2lvbiAoVTBDUywgUENJX0Nv bmZpZywgMHhDNCwgMHgwNCkNCiAgICAgICAgICAgICAgICBGaWVsZCAoVTBDUywgRFdvcmRBY2Ms IE5vTG9jaywgUHJlc2VydmUpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICBVMEVOLCAgIDINCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBOYW1lIChf UFJXLCBQYWNrYWdlICgweDAyKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgMHgwMywgDQogICAgICAgICAgICAgICAgICAgIDB4MDMNCiAgICAgICAgICAgICAgICB9KQ0K ICAgICAgICAgICAgICAgIE1ldGhvZCAoX1BTVywgMSwgTm90U2VyaWFsaXplZCkNCiAgICAgICAg ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIElmIChBcmcwKQ0KICAgICAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMywgVTBFTikNCiAgICAg ICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAg ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDAwLCBVMEVOKQ0KICAg ICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAg TWV0aG9kIChfUzFELCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICAgICAgUmV0dXJuICgweDAyKQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAg ICAgICAgICAgIE1ldGhvZCAoX1MzRCwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwMikNCiAgICAgICAgICAgICAgICB9 DQoNCiAgICAgICAgICAgICAgICBNZXRob2QgKF9TNEQsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAg ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MDIpDQogICAgICAg ICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICBEZXZpY2UgKFVTQjEpDQog ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgTmFtZSAoX0FEUiwgMHgwMDFEMDAwMSkNCiAg ICAgICAgICAgICAgICBPcGVyYXRpb25SZWdpb24gKFUxQ1MsIFBDSV9Db25maWcsIDB4QzQsIDB4 MDQpDQogICAgICAgICAgICAgICAgRmllbGQgKFUxQ1MsIERXb3JkQWNjLCBOb0xvY2ssIFByZXNl cnZlKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgVTFFTiwgICAyDQog ICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgTmFtZSAoX1BSVywgUGFja2FnZSAo MHgwMikNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIDB4MDQsIA0KICAg ICAgICAgICAgICAgICAgICAweDAzDQogICAgICAgICAgICAgICAgfSkNCiAgICAgICAgICAgICAg ICBNZXRob2QgKF9QU1csIDEsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICBJZiAoQXJnMCkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAg ICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDMsIFUxRU4pDQogICAgICAgICAgICAgICAgICAg IH0NCiAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAg ICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMCwgVTFFTikNCiAgICAgICAgICAgICAgICAg ICAgfQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIE1ldGhvZCAoX1MxRCwg MCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg IFJldHVybiAoMHgwMikNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBNZXRo b2QgKF9TM0QsIDAsIE5vdFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAg ICAgICAgICAgICBSZXR1cm4gKDB4MDIpDQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAg ICAgICAgTWV0aG9kIChfUzRELCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgIHsN CiAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDAyKQ0KICAgICAgICAgICAgICAgIH0NCiAg ICAgICAgICAgIH0NCg0KICAgICAgICAgICAgRGV2aWNlIChVU0IyKQ0KICAgICAgICAgICAgew0K ICAgICAgICAgICAgICAgIE5hbWUgKF9BRFIsIDB4MDAxRDAwMDIpDQogICAgICAgICAgICAgICAg T3BlcmF0aW9uUmVnaW9uIChVMkNTLCBQQ0lfQ29uZmlnLCAweEM0LCAweDA0KQ0KICAgICAgICAg ICAgICAgIEZpZWxkIChVMkNTLCBEV29yZEFjYywgTm9Mb2NrLCBQcmVzZXJ2ZSkNCiAgICAgICAg ICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIFUyRU4sICAgMg0KICAgICAgICAgICAgICAg IH0NCg0KICAgICAgICAgICAgICAgIE5hbWUgKF9QUlcsIFBhY2thZ2UgKDB4MDIpDQogICAgICAg ICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAweDBDLCANCiAgICAgICAgICAgICAgICAg ICAgMHgwMw0KICAgICAgICAgICAgICAgIH0pDQogICAgICAgICAgICAgICAgTWV0aG9kIChfUFNX LCAxLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgSWYgKEFyZzApDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg ICAgIFN0b3JlICgweDAzLCBVMkVOKQ0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAg ICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICAgICAgU3RvcmUgKDB4MDAsIFUyRU4pDQogICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAg ICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBNZXRob2QgKF9TMUQsIDAsIE5vdFNlcmlhbGl6 ZWQpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MDIp DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgTWV0aG9kIChfUzNELCAwLCBO b3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgUmV0 dXJuICgweDAyKQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIE1ldGhvZCAo X1M0RCwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgIFJldHVybiAoMHgwMikNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICB9DQoN CiAgICAgICAgICAgIERldmljZSAoVVNCNykNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg ICBOYW1lIChfQURSLCAweDAwMUQwMDA3KQ0KICAgICAgICAgICAgICAgIE5hbWUgKF9QUlcsIFBh Y2thZ2UgKDB4MDIpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAweDBE LCANCiAgICAgICAgICAgICAgICAgICAgMHgwMw0KICAgICAgICAgICAgICAgIH0pDQogICAgICAg ICAgICB9DQoNCiAgICAgICAgICAgIE5hbWUgKE5BVEEsIFBhY2thZ2UgKDB4MDEpDQogICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgMHgwMDFGMDAwMQ0KICAgICAgICAgICAgfSkNCiAgICAg ICAgICAgIERldmljZSAoSURFQykNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBOYW1l IChfQURSLCAweDAwMUYwMDAxKQ0KICAgICAgICAgICAgICAgIE9wZXJhdGlvblJlZ2lvbiAoSURF QywgUENJX0NvbmZpZywgMHg0MCwgMHgxOCkNCiAgICAgICAgICAgICAgICBGaWVsZCAoSURFQywg RFdvcmRBY2MsIE5vTG9jaywgUHJlc2VydmUpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAg ICAgICAgICAgICBQUklULCAgIDE2LCANCiAgICAgICAgICAgICAgICAgICAgU0VDVCwgICAxNiwg DQogICAgICAgICAgICAgICAgICAgIFBTSVQsICAgNCwgDQogICAgICAgICAgICAgICAgICAgIFNT SVQsICAgNCwgDQogICAgICAgICAgICAgICAgICAgIE9mZnNldCAoMHgwOCksIA0KICAgICAgICAg ICAgICAgICAgICBTWU5DLCAgIDQsIA0KICAgICAgICAgICAgICAgICAgICBPZmZzZXQgKDB4MEEp LCANCiAgICAgICAgICAgICAgICAgICAgU0RUMCwgICAyLCANCiAgICAgICAgICAgICAgICAgICAg ICAgICwgICAyLCANCiAgICAgICAgICAgICAgICAgICAgU0RUMSwgICAyLCANCiAgICAgICAgICAg ICAgICAgICAgT2Zmc2V0ICgweDBCKSwgDQogICAgICAgICAgICAgICAgICAgIFNEVDIsICAgMiwg DQogICAgICAgICAgICAgICAgICAgICAgICAsICAgMiwgDQogICAgICAgICAgICAgICAgICAgIFNE VDMsICAgMiwgDQogICAgICAgICAgICAgICAgICAgIE9mZnNldCAoMHgxNCksIA0KICAgICAgICAg ICAgICAgICAgICBJQ1IwLCAgIDQsIA0KICAgICAgICAgICAgICAgICAgICBJQ1IxLCAgIDQsIA0K ICAgICAgICAgICAgICAgICAgICBJQ1IyLCAgIDQsIA0KICAgICAgICAgICAgICAgICAgICBJQ1Iz LCAgIDQsIA0KICAgICAgICAgICAgICAgICAgICBJQ1I0LCAgIDQsIA0KICAgICAgICAgICAgICAg ICAgICBJQ1I1LCAgIDQNCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBEZXZp Y2UgKFBSSUQpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBOYW1lIChf QURSLCAweDAwKQ0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9HVE0sIDAsIE5vdFNlcmlh 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 ICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKFBCVUYpDQogICAgICAgICAgICAgICAgICAgIH0N Cg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9TVE0sIDMsIE5vdFNlcmlhbGl6ZWQpDQog ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZURXb3Jk RmllbGQgKEFyZzAsIDB4MDAsIFBJTzApDQogICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVE V29yZEZpZWxkIChBcmcwLCAweDA0LCBETUEwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgQ3Jl YXRlRFdvcmRGaWVsZCAoQXJnMCwgMHgwOCwgUElPMSkNCiAgICAgICAgICAgICAgICAgICAgICAg IENyZWF0ZURXb3JkRmllbGQgKEFyZzAsIDB4MEMsIERNQTEpDQogICAgICAgICAgICAgICAgICAg ICAgICBDcmVhdGVEV29yZEZpZWxkIChBcmcwLCAweDEwLCBGTEFHKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgT3IgKElDUjIsIDB4MDQsIElDUjIpDQogICAgICAgICAgICAgICAgICAgICAgICBJ ZiAoTEVxdWFsIChTaXplT2YgKEFyZzEpLCAweDAyMDApKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFuZCAoUFJJVCwgMHg0MEYwLCBQUklU KQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFuZCAoU1lOQywgMHgwRSwgU1lOQykNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMCwgU0RUMCkNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBBbmQgKElDUjAsIDB4MEUsIElDUjApDQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgQW5kIChJQ1IxLCAweDBFLCBJQ1IxKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgIEFuZCAoSUNSMywgMHgwRSwgSUNSMykNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICBBbmQgKElDUjUsIDB4MEUsIElDUjUpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ3Jl YXRlV29yZEZpZWxkIChBcmcxLCAweDYyLCBXNDkwKQ0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgIENyZWF0ZVdvcmRGaWVsZCAoQXJnMSwgMHg2QSwgVzUzMCkNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKEFyZzEsIDB4N0UsIFc2MzApDQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChBcmcxLCAweDgwLCBXNjQwKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoQXJnMSwgMHhCMCwgVzg4 MCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKEFyZzEsIDB4 QkEsIFc5MzApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgT3IgKFBSSVQsIDB4ODAwNCwg UFJJVCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEFuZCAoQW5kIChGTEFHLCAw eDAyKSwgQW5kIChXNDkwLCAweDA4MDApKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7 DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9yIChQUklULCAweDAyLCBQUklUKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgIE9yIChQUklULCBTRVRQIChQSU8wLCBXNTMwLCBXNjQwKSwgUFJJVCkNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBJZiAoQW5kIChGTEFHLCAweDAxKSkNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9yIChTWU5DLCAw eDAxLCBTWU5DKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoU0RNQSAo RE1BMCksIFNEVDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMTGVzcyAo RE1BMCwgMHgxRSkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9yIChJQ1IzLCAweDAxLCBJQ1IzKQ0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgSWYgKExMZXNzIChETUEwLCAweDNDKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT3IgKElDUjAsIDB4 MDEsIElDUjApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChXOTMwLCAweDIwMDApKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBPciAoSUNSMSwgMHgwMSwgSUNSMSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAg ICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoU2l6ZU9mIChBcmcy KSwgMHgwMjAwKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICBBbmQgKFBSSVQsIDB4M0YwRiwgUFJJVCkNCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICBTdG9yZSAoMHgwMCwgUFNJVCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBB bmQgKFNZTkMsIDB4MEQsIFNZTkMpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUg KDB4MDAsIFNEVDEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQW5kIChJQ1IwLCAweDBE LCBJQ1IwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFuZCAoSUNSMSwgMHgwRCwgSUNS MSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbmQgKElDUjMsIDB4MEQsIElDUjMpDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgQW5kIChJQ1I1LCAweDBELCBJQ1I1KQ0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoQXJnMiwgMHg2MiwgVzQ5MSkN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKEFyZzIsIDB4NkEs IFc1MzEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChBcmcy LCAweDdFLCBXNjMxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVs ZCAoQXJnMiwgMHg4MCwgVzY0MSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVX b3JkRmllbGQgKEFyZzIsIDB4QjAsIFc4ODEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg Q3JlYXRlV29yZEZpZWxkIChBcmcyLCAweEJBLCBXOTMxKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgIE9yIChQUklULCAweDgwNDAsIFBSSVQpDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgSWYgKExBbmQgKEFuZCAoRkxBRywgMHgwOCksIEFuZCAoVzQ5MSwgMHgwODAwKSkpDQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBPciAoUFJJVCwgMHgyMCwgUFJJVCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQoN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChGTEFHLCAweDEwKSkNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IE9yIChQUklULCAweDQwMDAsIFBSSVQpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IElmIChMR3JlYXRlciAoUElPMSwgMHhGMCkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9yIChQUklULCAweDgw LCBQUklUKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT3IgKFBSSVQsIDB4MTAsIFBS SVQpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoU0VUVCAoUElP MSwgVzUzMSwgVzY0MSksIFBTSVQpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0N CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICBJZiAoQW5kIChGTEFHLCAweDA0KSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7 DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9yIChTWU5DLCAweDAyLCBTWU5DKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoU0RNQSAoRE1BMSksIFNEVDEp DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMTGVzcyAoRE1BMCwgMHgxRSkp DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIE9yIChJQ1IzLCAweDAyLCBJQ1IzKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExM ZXNzIChETUEwLCAweDNDKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT3IgKElDUjAsIDB4MDIsIElDUjApDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBJZiAoQW5kIChXOTMxLCAweDIwMDApKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPciAoSUNS MSwgMHgwMiwgSUNSMSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAg ICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIERldmljZSAoUF9EMCkNCiAg ICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0FEUiwg MHgwMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0dURiwgMCwgTm90U2VyaWFs aXplZCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICBOYW1lIChQSUIwLCBCdWZmZXIgKDB4MEUpDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAzLCAweDAwLCAweDAwLCAw eDAwLCAweDAwLCAweEEwLCAweEVGLCAweDAzLCANCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHhBMCwgMHhFRg0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgIH0pDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlQnl0ZUZp ZWxkIChQSUIwLCAweDAxLCBQTUQwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0 ZUJ5dGVGaWVsZCAoUElCMCwgMHgwOCwgRE1EMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICBJZiAoQW5kIChQUklULCAweDAyKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKEFuZCAoUFJJVCwgMHgw OSksIDB4MDgpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwOCwgUE1EMCkNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBF bHNlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDBBLCBQTUQwKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgU2hpZnRSaWdodCAoQW5kIChQUklULCAweDAzMDApLCAweDA4LCBM b2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTaGlmdFJpZ2h0IChB bmQgKFBSSVQsIDB4MzAwMCksIDB4MEMsIExvY2FsMSkNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIEFkZCAoTG9jYWwwLCBMb2NhbDEsIExvY2FsMikNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKDB4MDMsIExvY2FsMikpDQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgU3RvcmUgKDB4MEIsIFBNRDApDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElm IChMRXF1YWwgKDB4MDUsIExvY2FsMikpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4 MEMsIFBNRDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9 DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDEsIFBN RDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgSWYgKEFuZCAoU1lOQywgMHgwMSkpDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoT3IgKFNEVDAsIDB4 NDApLCBETUQwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChJQ1Ix LCAweDAxKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoSUNSMCwgMHgwMSkpDQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgQWRkIChETUQwLCAweDAyLCBETUQwKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJ ZiAoQW5kIChJQ1IzLCAweDAxKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHg0NSwg RE1EMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPciAoU3VidHJhY3QgKEFuZCAo UE1EMCwgMHgwNyksIDB4MDIpLCAweDIwLCBETUQwKQ0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoUElCMCkNCiAgICAg ICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAg ICAgICAgICAgIE5hbWUgKEZXU08sICJGV1NPIikNCiAgICAgICAgICAgICAgICAgICAgTmFtZSAo X1BTQywgMHgwMCkNCiAgICAgICAgICAgICAgICAgICAgTWV0aG9kIChfUFMwLCAwLCBOb3RTZXJp YWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBT dG9yZSAoMHgwMCwgX1BTQykNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAg ICAgICAgIE1ldGhvZCAoX1BTMywgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICAg ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDMsIF9QU0MpDQogICAgICAg ICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBEZXZp Y2UgKFNFQ0QpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBOYW1lIChf QURSLCAweDAxKQ0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9HVE0sIDAsIE5vdFNlcmlh bGl6ZWQpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIE5h bWUgKFNCVUYsIEJ1ZmZlciAoMHgxNCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAw LCAweDAwLCAweDAwLCANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAwLCAweDAwLCAw eDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCAweDAwLCANCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAweDAwLCAweDAwLCAweDAwLCAweDAwDQogICAgICAgICAgICAgICAgICAgICAgICB9 KQ0KICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoU0JVRiwgMHgwMCwg UElPMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmllbGQgKFNCVUYsIDB4 MDQsIERNQTApDQogICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVEV29yZEZpZWxkIChTQlVG LCAweDA4LCBQSU8xKQ0KICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAo U0JVRiwgMHgwQywgRE1BMSkNCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZURXb3JkRmll bGQgKFNCVUYsIDB4MTAsIEZMQUcpDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoR0VU UCAoU0VDVCksIFBJTzApDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoR0RNQSAoQW5k IChTWU5DLCAweDA0KSwgQW5kIChJQ1IzLCAweDA0KSwgQW5kIChJQ1IwLCAweDA0KSwgU0RUMiwg QW5kIChJQ1IxLCAweDA0KSksIERNQTApDQogICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEVx dWFsIChETUEwLCAweEZGRkZGRkZGKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoUElPMCwgRE1BMCkNCiAgICAgICAgICAgICAg ICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoU0VDVCwgMHg0 MDAwKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICBJZiAoTEVxdWFsIChBbmQgKFNFQ1QsIDB4OTApLCAweDgwKSkNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlICgw eDAzODQsIFBJTzEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChHRVRUIChTU0lUKSwgUElPMSkNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgICAgICB9DQog ICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAgICB7DQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4RkZGRkZGRkYsIFBJTzEpDQogICAg ICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChH RE1BIChBbmQgKFNZTkMsIDB4MDgpLCBBbmQgKElDUjMsIDB4MDgpLCBBbmQgKElDUjAsIDB4MDgp LCBTRFQzLCBBbmQgKElDUjEsIDB4MDgpKSwgRE1BMSkNCiAgICAgICAgICAgICAgICAgICAgICAg IElmIChMRXF1YWwgKERNQTEsIDB4RkZGRkZGRkYpKQ0KICAgICAgICAgICAgICAgICAgICAgICAg ew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIChQSU8xLCBETUExKQ0KICAgICAg ICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoR0VU RiAoQW5kIChTWU5DLCAweDA0KSwgQW5kIChTWU5DLCAweDA4KSwgU0VDVCksIEZMQUcpDQogICAg ICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKFNCVUYpDQogICAgICAgICAgICAgICAgICAgIH0N Cg0KICAgICAgICAgICAgICAgICAgICBNZXRob2QgKF9TVE0sIDMsIE5vdFNlcmlhbGl6ZWQpDQog ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZURXb3Jk RmllbGQgKEFyZzAsIDB4MDAsIFBJTzApDQogICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVE V29yZEZpZWxkIChBcmcwLCAweDA0LCBETUEwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgQ3Jl YXRlRFdvcmRGaWVsZCAoQXJnMCwgMHgwOCwgUElPMSkNCiAgICAgICAgICAgICAgICAgICAgICAg IENyZWF0ZURXb3JkRmllbGQgKEFyZzAsIDB4MEMsIERNQTEpDQogICAgICAgICAgICAgICAgICAg ICAgICBDcmVhdGVEV29yZEZpZWxkIChBcmcwLCAweDEwLCBGTEFHKQ0KICAgICAgICAgICAgICAg ICAgICAgICAgT3IgKElDUjIsIDB4MDQsIElDUjIpDQogICAgICAgICAgICAgICAgICAgICAgICBJ ZiAoTEVxdWFsIChTaXplT2YgKEFyZzEpLCAweDAyMDApKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFuZCAoU0VDVCwgMHg0MEYwLCBTRUNU KQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFuZCAoU1lOQywgMHgwQiwgU1lOQykNCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwMCwgU0RUMikNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBBbmQgKElDUjAsIDB4MEIsIElDUjApDQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgQW5kIChJQ1IxLCAweDBCLCBJQ1IxKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgIEFuZCAoSUNSMywgMHgwQiwgSUNSMykNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICBBbmQgKElDUjUsIDB4MEIsIElDUjUpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ3Jl YXRlV29yZEZpZWxkIChBcmcxLCAweDYyLCBXNDkwKQ0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgIENyZWF0ZVdvcmRGaWVsZCAoQXJnMSwgMHg2QSwgVzUzMCkNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKEFyZzEsIDB4N0UsIFc2MzApDQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChBcmcxLCAweDgwLCBXNjQwKQ0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoQXJnMSwgMHhCMCwgVzg4 MCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKEFyZzEsIDB4 QkEsIFc5MzApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgT3IgKFNFQ1QsIDB4ODAwNCwg U0VDVCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoTEFuZCAoQW5kIChGTEFHLCAw eDAyKSwgQW5kIChXNDkwLCAweDA4MDApKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7 DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9yIChTRUNULCAweDAyLCBTRUNUKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgIE9yIChTRUNULCBTRVRQIChQSU8wLCBXNTMwLCBXNjQwKSwgU0VDVCkNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICBJZiAoQW5kIChGTEFHLCAweDAxKSkNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9yIChTWU5DLCAw eDA0LCBTWU5DKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoU0RNQSAo RE1BMCksIFNEVDIpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMTGVzcyAo RE1BMCwgMHgxRSkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9yIChJQ1IzLCAweDA0LCBJQ1IzKQ0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgSWYgKExMZXNzIChETUEwLCAweDNDKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT3IgKElDUjAsIDB4 MDQsIElDUjApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChXOTMwLCAweDIwMDApKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBPciAoSUNSMSwgMHgwNCwgSUNSMSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAg ICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVhbCAoU2l6ZU9mIChBcmcy KSwgMHgwMjAwKSkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICBBbmQgKFNFQ1QsIDB4M0YwRiwgU0VDVCkNCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICBTdG9yZSAoMHgwMCwgU1NJVCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBB bmQgKFNZTkMsIDB4MDcsIFNZTkMpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUg KDB4MDAsIFNEVDMpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQW5kIChJQ1IwLCAweDA3 LCBJQ1IwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFuZCAoSUNSMSwgMHgwNywgSUNS MSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbmQgKElDUjMsIDB4MDcsIElDUjMpDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgQW5kIChJQ1I1LCAweDA3LCBJQ1I1KQ0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVsZCAoQXJnMiwgMHg2MiwgVzQ5MSkN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVXb3JkRmllbGQgKEFyZzIsIDB4NkEs IFc1MzEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlV29yZEZpZWxkIChBcmcy LCAweDdFLCBXNjMxKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZVdvcmRGaWVs ZCAoQXJnMiwgMHg4MCwgVzY0MSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICBDcmVhdGVX b3JkRmllbGQgKEFyZzIsIDB4QjAsIFc4ODEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg Q3JlYXRlV29yZEZpZWxkIChBcmcyLCAweEJBLCBXOTMxKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgIE9yIChTRUNULCAweDgwNDAsIFNFQ1QpDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgSWYgKExBbmQgKEFuZCAoRkxBRywgMHgwOCksIEFuZCAoVzQ5MSwgMHgwODAwKSkpDQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBPciAoU0VDVCwgMHgyMCwgU0VDVCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQoN CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChGTEFHLCAweDEwKSkNCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IE9yIChTRUNULCAweDQwMDAsIFNFQ1QpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IElmIChMR3JlYXRlciAoUElPMSwgMHhGMCkpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9yIChTRUNULCAweDgw LCBTRUNUKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT3IgKFNFQ1QsIDB4MTAsIFNF Q1QpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoU0VUVCAoUElP MSwgVzUzMSwgVzY0MSksIFNTSVQpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0N CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICBJZiAoQW5kIChGTEFHLCAweDA0KSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7 DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9yIChTWU5DLCAweDA4LCBTWU5DKQ0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoU0RNQSAoRE1BMSksIFNEVDMp DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMTGVzcyAoRE1BMCwgMHgxRSkp DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIE9yIChJQ1IzLCAweDA4LCBJQ1IzKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExM ZXNzIChETUEwLCAweDNDKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgT3IgKElDUjAsIDB4MDgsIElDUjApDQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBJZiAoQW5kIChXOTMxLCAweDIwMDApKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPciAoSUNS MSwgMHgwOCwgSUNSMSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAg ICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAg ICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIERldmljZSAoU19EMCkNCiAg ICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgTmFtZSAoX0FEUiwg MHgwMCkNCiAgICAgICAgICAgICAgICAgICAgICAgIE1ldGhvZCAoX0dURiwgMCwgTm90U2VyaWFs aXplZCkNCiAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICBOYW1lIChTSUIwLCBCdWZmZXIgKDB4MEUpDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAweDAzLCAweDAwLCAweDAwLCAw eDAwLCAweDAwLCAweEEwLCAweEVGLCAweDAzLCANCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgMHgwMCwgMHgwMCwgMHgwMCwgMHgwMCwgMHhBMCwgMHhFRg0KICAgICAgICAgICAgICAg ICAgICAgICAgICAgIH0pDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlQnl0ZUZp ZWxkIChTSUIwLCAweDAxLCBQTUQwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0 ZUJ5dGVGaWVsZCAoU0lCMCwgMHgwOCwgRE1EMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICBJZiAoQW5kIChTRUNULCAweDAyKSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKEFuZCAoU0VDVCwgMHgw OSksIDB4MDgpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHgwOCwgUE1EMCkNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBF bHNlDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDBBLCBQTUQwKQ0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgU2hpZnRSaWdodCAoQW5kIChTRUNULCAweDAzMDApLCAweDA4LCBM b2NhbDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTaGlmdFJpZ2h0IChB bmQgKFNFQ1QsIDB4MzAwMCksIDB4MEMsIExvY2FsMSkNCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIEFkZCAoTG9jYWwwLCBMb2NhbDEsIExvY2FsMikNCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIElmIChMRXF1YWwgKDB4MDMsIExvY2FsMikpDQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgU3RvcmUgKDB4MEIsIFBNRDApDQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIElm IChMRXF1YWwgKDB4MDUsIExvY2FsMikpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4 MEMsIFBNRDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9DQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9 DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgRWxzZQ0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgKDB4MDEsIFBN RDApDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAg ICAgICAgICAgSWYgKEFuZCAoU1lOQywgMHgwNCkpDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoT3IgKFNEVDIsIDB4 NDApLCBETUQwKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJZiAoQW5kIChJQ1Ix LCAweDA0KSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoSUNSMCwgMHgwNCkpDQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgQWRkIChETUQwLCAweDAyLCBETUQwKQ0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJ ZiAoQW5kIChJQ1IzLCAweDA0KSkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSAoMHg0NSwg RE1EMCkNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICBFbHNlDQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPciAoU3VidHJhY3QgKEFuZCAo UE1EMCwgMHgwNyksIDB4MDIpLCAweDIwLCBETUQwKQ0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoU0lCMCkNCiAgICAg ICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAg ICAgICAgICAgIE1ldGhvZCAoX1BTMCwgMCwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgICAgICAg ICAgICAgew0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgTWV0 aG9kIChfUFMzLCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAg ICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBN ZXRob2QgKEdFVFAsIDEsIFNlcmlhbGl6ZWQpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAg ICAgICAgICAgICBJZiAoTEVxdWFsIChBbmQgKEFyZzAsIDB4MDkpLCAweDAwKSkNCiAgICAgICAg ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweEZGRkZGRkZG KQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgSWYgKExFcXVh bCAoQW5kIChBcmcwLCAweDA5KSwgMHgwOCkpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwMzg0KQ0KICAgICAgICAgICAgICAgICAgICB9 DQoNCiAgICAgICAgICAgICAgICAgICAgU2hpZnRSaWdodCAoQW5kIChBcmcwLCAweDAzMDApLCAw eDA4LCBMb2NhbDApDQogICAgICAgICAgICAgICAgICAgIFNoaWZ0UmlnaHQgKEFuZCAoQXJnMCwg MHgzMDAwKSwgMHgwQywgTG9jYWwxKQ0KICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKE11bHRp cGx5ICgweDFFLCBTdWJ0cmFjdCAoMHgwOSwgQWRkIChMb2NhbDAsIExvY2FsMSkpKSkNCiAgICAg ICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICBNZXRob2QgKEdETUEsIDUsIFNlcmlhbGl6 ZWQpDQogICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICBJZiAoQXJnMCkNCiAg ICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExBbmQgKEFy ZzEsIEFyZzQpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFJldHVybiAoMHgxNCkNCiAgICAgICAgICAgICAgICAgICAgICAgIH0NCg0KICAg ICAgICAgICAgICAgICAgICAgICAgSWYgKExBbmQgKEFyZzIsIEFyZzQpKQ0KICAgICAgICAgICAg ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoTXVsdGlw bHkgKFN1YnRyYWN0ICgweDA0LCBBcmczKSwgMHgwRikpDQogICAgICAgICAgICAgICAgICAgICAg ICB9DQoNCiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoTXVsdGlwbHkgKFN1YnRyYWN0 ICgweDA0LCBBcmczKSwgMHgxRSkpDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAg ICAgICAgICAgICBSZXR1cm4gKDB4RkZGRkZGRkYpDQogICAgICAgICAgICAgICAgfQ0KDQogICAg ICAgICAgICAgICAgTWV0aG9kIChHRVRULCAxLCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChNdWx0aXBseSAoMHgxRSwgU3VidHJhY3Qg KDB4MDksIEFkZCAoQW5kIChTaGlmdFJpZ2h0IChBcmcwLCAweDAyKSwgMHgwMyksIEFuZCAoQXJn MCwgMHgwMykpKSkpDQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgTWV0aG9k IChHRVRGLCAzLCBTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg ICAgICAgTmFtZSAoVE1QRiwgMHgwMCkNCiAgICAgICAgICAgICAgICAgICAgSWYgKEFyZzApDQog ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIE9yIChUTVBGLCAw eDAxLCBUTVBGKQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAg SWYgKEFuZCAoQXJnMiwgMHgwMikpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg ICAgICAgICAgICAgIE9yIChUTVBGLCAweDAyLCBUTVBGKQ0KICAgICAgICAgICAgICAgICAgICB9 DQoNCiAgICAgICAgICAgICAgICAgICAgSWYgKEFyZzEpDQogICAgICAgICAgICAgICAgICAgIHsN CiAgICAgICAgICAgICAgICAgICAgICAgIE9yIChUTVBGLCAweDA0LCBUTVBGKQ0KICAgICAgICAg ICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgSWYgKEFuZCAoQXJnMiwgMHgyMCkp DQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIE9yIChUTVBG LCAweDA4LCBUTVBGKQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAg ICAgSWYgKEFuZCAoQXJnMiwgMHg0MDAwKSkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAg ICAgICAgICAgICAgICAgICAgT3IgKFRNUEYsIDB4MTAsIFRNUEYpDQogICAgICAgICAgICAgICAg ICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKFRNUEYpDQogICAgICAgICAgICAg ICAgfQ0KDQogICAgICAgICAgICAgICAgTWV0aG9kIChTRVRQLCAzLCBTZXJpYWxpemVkKQ0KICAg ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgSWYgKExHcmVhdGVyIChBcmcwLCAw eEYwKSkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgUmV0 dXJuICgweDA4KQ0KICAgICAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgICAgIEVs c2UNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgSWYgKEFu ZCAoQXJnMSwgMHgwMikpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgICAgICAgICAgSWYgKExBbmQgKExOb3QgKExHcmVhdGVyIChBcmcwLCAweDc4KSksIEFu ZCAoQXJnMiwgMHgwMikpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDIzMDEpDQogICAgICAgICAgICAgICAg ICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgSWYgKExBbmQgKExO b3QgKExHcmVhdGVyIChBcmcwLCAweEI0KSksIEFuZCAoQXJnMiwgMHgwMSkpKQ0KICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUmV0 dXJuICgweDIxMDEpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAg ICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MTAwMSkN CiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAg ICAgIE1ldGhvZCAoU0RNQSwgMSwgU2VyaWFsaXplZCkNCiAgICAgICAgICAgICAgICB7DQogICAg ICAgICAgICAgICAgICAgIElmIChMTm90IChMR3JlYXRlciAoQXJnMCwgMHgxNCkpKQ0KICAgICAg ICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBSZXR1cm4gKDB4MDEpDQog ICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgICAgICBJZiAoTE5vdCAoTEdy ZWF0ZXIgKEFyZzAsIDB4MUUpKSkNCiAgICAgICAgICAgICAgICAgICAgew0KICAgICAgICAgICAg ICAgICAgICAgICAgUmV0dXJuICgweDAyKQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAg ICAgICAgICAgICAgICAgSWYgKExOb3QgKExHcmVhdGVyIChBcmcwLCAweDJEKSkpDQogICAgICAg ICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFJldHVybiAoMHgwMSkNCiAg ICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgICAgIElmIChMTm90IChMR3Jl YXRlciAoQXJnMCwgMHgzQykpKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgICAgICBSZXR1cm4gKDB4MDIpDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAg ICAgICAgICAgICAgICBJZiAoTE5vdCAoTEdyZWF0ZXIgKEFyZzAsIDB4NUEpKSkNCiAgICAgICAg ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDAxKQ0KICAg ICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDAwKQ0K ICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgICAgIE1ldGhvZCAoU0VUVCwgMywgU2Vy aWFsaXplZCkNCiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIElmIChBbmQg KEFyZzEsIDB4MDIpKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAg ICAgICBJZiAoTEFuZCAoTE5vdCAoTEdyZWF0ZXIgKEFyZzAsIDB4NzgpKSwgQW5kIChBcmcyLCAw eDAyKSkpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgUmV0dXJuICgweDBCKQ0KICAgICAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAg ICAgICAgICAgICAgICAgICBJZiAoTEFuZCAoTE5vdCAoTEdyZWF0ZXIgKEFyZzAsIDB4QjQpKSwg QW5kIChBcmcyLCAweDAxKSkpDQogICAgICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgICAgICAgICAgICAgUmV0dXJuICgweDA5KQ0KICAgICAgICAgICAgICAgICAgICAgICAg fQ0KICAgICAgICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgUmV0dXJuICgw eDA0KQ0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgRGV2 aWNlIChTQlVTKQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIE5hbWUgKF9BRFIsIDB4 MDAxRjAwMDMpDQogICAgICAgICAgICAgICAgT3BlcmF0aW9uUmVnaW9uIChTQlVTLCBTeXN0ZW1J TywgMHgxODgwLCAweDEwKQ0KICAgICAgICAgICAgICAgIEZpZWxkIChTQlVTLCBCeXRlQWNjLCBO b0xvY2ssIFByZXNlcnZlKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAgICAg SFNUUywgICA4LCANCiAgICAgICAgICAgICAgICAgICAgT2Zmc2V0ICgweDAyKSwgDQogICAgICAg ICAgICAgICAgICAgIEhDT04sICAgOCwgDQogICAgICAgICAgICAgICAgICAgIEhDT00sICAgOCwg DQogICAgICAgICAgICAgICAgICAgIFRYU0EsICAgOCwgDQogICAgICAgICAgICAgICAgICAgIERB VDAsICAgOCwgDQogICAgICAgICAgICAgICAgICAgIERBVDEsICAgOCwgDQogICAgICAgICAgICAg ICAgICAgIEJEQlIsICAgOCwgDQogICAgICAgICAgICAgICAgICAgIE9mZnNldCAoMHgwOSksIA0K ICAgICAgICAgICAgICAgICAgICBSWFNBLCAgIDgsIA0KICAgICAgICAgICAgICAgICAgICBTREFU LCAgIDE2DQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgTWV0aG9kIChTQldC LCAzLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgU3RvcmUgKDB4MEEsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgV2hpbGUgKExBbmQg KEFuZCAoSFNUUywgMHgwMSksIExvY2FsMCkpDQogICAgICAgICAgICAgICAgICAgIHsNCiAgICAg ICAgICAgICAgICAgICAgICAgIFNsZWVwICgweDY0KQ0KICAgICAgICAgICAgICAgICAgICAgICAg RGVjcmVtZW50IChMb2NhbDApDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAg ICAgICAgICBTdG9yZSAoMHhGRiwgSFNUUykNCiAgICAgICAgICAgICAgICAgICAgU3RvcmUgKEFy ZzAsIFRYU0EpDQogICAgICAgICAgICAgICAgICAgIFN0b3JlIChBcmcxLCBIQ09NKQ0KICAgICAg ICAgICAgICAgICAgICBTdG9yZSAoQXJnMiwgREFUMCkNCiAgICAgICAgICAgICAgICAgICAgU3Rv cmUgKDB4MDAsIERBVDEpDQogICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDA4LCBIQ09OKQ0K ICAgICAgICAgICAgICAgICAgICBTbGVlcCAoMHg2NCkNCiAgICAgICAgICAgICAgICAgICAgU3Rv cmUgKDB4NDgsIEhDT04pDQogICAgICAgICAgICAgICAgfQ0KDQogICAgICAgICAgICAgICAgTWV0 aG9kIChTQlJCLCAyLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAg ICAgICAgICAgICAgU3RvcmUgKDB4MEEsIExvY2FsMCkNCiAgICAgICAgICAgICAgICAgICAgV2hp bGUgKExBbmQgKEFuZCAoSFNUUywgMHgwMSksIExvY2FsMCkpDQogICAgICAgICAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAgICAgICAgIFNsZWVwICgweDY0KQ0KICAgICAgICAgICAgICAg ICAgICAgICAgRGVjcmVtZW50IChMb2NhbDApDQogICAgICAgICAgICAgICAgICAgIH0NCg0KICAg ICAgICAgICAgICAgICAgICBTdG9yZSAoMHhGRiwgSFNUUykNCiAgICAgICAgICAgICAgICAgICAg U3RvcmUgKE9yIChBcmcwLCAweDAxKSwgVFhTQSkNCiAgICAgICAgICAgICAgICAgICAgU3RvcmUg KEFyZzEsIEhDT00pDQogICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDA4LCBIQ09OKQ0KICAg ICAgICAgICAgICAgICAgICBTbGVlcCAoMHg2NCkNCiAgICAgICAgICAgICAgICAgICAgU3RvcmUg KDB4NDgsIEhDT04pDQogICAgICAgICAgICAgICAgICAgIFN0b3JlICgweDBBLCBMb2NhbDApDQog ICAgICAgICAgICAgICAgICAgIFdoaWxlIChMQW5kIChBbmQgKEhTVFMsIDB4MDIpLCBMb2NhbDAp KQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgICAgICBTbGVlcCAo MHg2NCkNCiAgICAgICAgICAgICAgICAgICAgICAgIERlY3JlbWVudCAoTG9jYWwwKQ0KICAgICAg ICAgICAgICAgICAgICB9DQoNCiAgICAgICAgICAgICAgICAgICAgUmV0dXJuIChEQVQwKQ0KICAg ICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgRGV2aWNlIChBVUQw KQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIE5hbWUgKF9BRFIsIDB4MDAxRjAwMDUp DQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIERldmljZSAoTU9ETSkNCiAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICBOYW1lIChfQURSLCAweDAwMUYwMDA2KQ0KICAgICAgICAgICAg ICAgIE5hbWUgKF9QUlcsIFBhY2thZ2UgKDB4MDIpDQogICAgICAgICAgICAgICAgew0KICAgICAg ICAgICAgICAgICAgICAweDA1LCANCiAgICAgICAgICAgICAgICAgICAgMHgwMw0KICAgICAgICAg ICAgICAgIH0pDQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBTY29wZSAo X1BSLkNQVTApDQogICAgew0KICAgICAgICBNZXRob2QgKF9QUEMsIDAsIE5vdFNlcmlhbGl6ZWQp DQogICAgICAgIHsNCiAgICAgICAgICAgIElmIChcX1NCLlBDSTAuTFBDQi5FQzAuRUNPSykNCiAg ICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBTdG9yZSAoXF9TQi5QQ0kwLkxQQ0IuRUMwLkFD QVQsIExvY2FsMCkNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIEVsc2UNCiAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICBBbmQgKFxQSFNEICgweEQ0LCAweDgwKSwgMHgwNDAwLCBMb2Nh bDApDQogICAgICAgICAgICB9DQoNCiAgICAgICAgICAgIElmIChMb2NhbDApDQogICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgUmV0dXJuIChQU0FDKQ0KICAgICAgICAgICAgfQ0KICAgICAg ICAgICAgRWxzZQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIFJldHVybiAoUFNEQykN CiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KDQogICAgICAgIE5hbWUgKFBEQzAsIDB4RjAwMDAw MDApDQogICAgICAgIE1ldGhvZCAoX1BEQywgMSwgTm90U2VyaWFsaXplZCkNCiAgICAgICAgew0K ICAgICAgICAgICAgQ3JlYXRlRFdvcmRGaWVsZCAoQXJnMCwgMHgwOCwgQ0FQMCkNCiAgICAgICAg ICAgIFN0b3JlIChDQVAwLCBQREMwKQ0KICAgICAgICB9DQoNCiAgICAgICAgTWV0aG9kIChfUENU LCAwLCBOb3RTZXJpYWxpemVkKQ0KICAgICAgICB7DQogICAgICAgICAgICBJZiAoTEVxdWFsIChB bmQgKFBEQzAsIE9uZSksIE9uZSkpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgUmV0 dXJuIChQYWNrYWdlICgweDAyKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg ICAgUmVzb3VyY2VUZW1wbGF0ZSAoKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgICAgICAgICBSZWdpc3RlciAoRkZpeGVkSFcsIDB4MDAsIDB4MDAsIDB4MDAwMDAwMDAw MDAwMDAwMCkNCiAgICAgICAgICAgICAgICAgICAgfSwgDQoNCiAgICAgICAgICAgICAgICAgICAg UmVzb3VyY2VUZW1wbGF0ZSAoKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAg ICAgICAgICAgICBSZWdpc3RlciAoRkZpeGVkSFcsIDB4MDAsIDB4MDAsIDB4MDAwMDAwMDAwMDAw MDAwMCkNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0pDQogICAgICAg ICAgICB9DQogICAgICAgICAgICBFbHNlDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg UmV0dXJuIChQYWNrYWdlICgweDAyKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAg ICAgICAgUmVzb3VyY2VUZW1wbGF0ZSAoKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAg ICAgICAgICAgICAgICAgICBSZWdpc3RlciAoU3lzdGVtSU8sIDB4MTAsIDB4MDAsIDB4MDAwMDAw MDAwMDAwMDBCMikNCiAgICAgICAgICAgICAgICAgICAgfSwgDQoNCiAgICAgICAgICAgICAgICAg ICAgUmVzb3VyY2VUZW1wbGF0ZSAoKQ0KICAgICAgICAgICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgICAgICAgICBSZWdpc3RlciAoU3lzdGVtSU8sIDB4MDgsIDB4MDAsIDB4MDAwMDAwMDAw MDAwMDBCMykNCiAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIH0pDQogICAg ICAgICAgICB9DQogICAgICAgIH0NCg0KICAgICAgICBNZXRob2QgKF9QU1MsIDAsIE5vdFNlcmlh bGl6ZWQpDQogICAgICAgIHsNCiAgICAgICAgICAgIElmIChMRXF1YWwgKEFuZCAoUERDMCwgT25l KSwgT25lKSkNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICBSZXR1cm4gKE5QU1MpDQog ICAgICAgICAgICB9DQogICAgICAgICAgICBFbHNlDQogICAgICAgICAgICB7DQogICAgICAgICAg ICAgICAgUmV0dXJuIChTUFNTKQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQoNCiAgICAgICAg TmFtZSAoTlBTUywgUGFja2FnZSAoMHgwNikNCiAgICAgICAgew0KICAgICAgICAgICAgUGFja2Fn ZSAoMHgwNikNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAweDAwMDAwNkE0LCANCiAg ICAgICAgICAgICAgICAweDAwMDA1RkI0LCANCiAgICAgICAgICAgICAgICAweDAwMDAwMDBBLCAN CiAgICAgICAgICAgICAgICAweDAwMDAwMDBBLCANCiAgICAgICAgICAgICAgICAweDAwMDAxMTMx LCANCiAgICAgICAgICAgICAgICAweDAwMDAxMTMxDQogICAgICAgICAgICB9LCANCg0KICAgICAg ICAgICAgUGFja2FnZSAoMHgwNikNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAweDAw MDAwNTc4LCANCiAgICAgICAgICAgICAgICAweDAwMDA0QzJDLCANCiAgICAgICAgICAgICAgICAw eDAwMDAwMDBBLCANCiAgICAgICAgICAgICAgICAweDAwMDAwMDBBLCANCiAgICAgICAgICAgICAg ICAweDAwMDAwRTI2LCANCiAgICAgICAgICAgICAgICAweDAwMDAwRTI2DQogICAgICAgICAgICB9 LCANCg0KICAgICAgICAgICAgUGFja2FnZSAoMHgwNikNCiAgICAgICAgICAgIHsNCiAgICAgICAg ICAgICAgICAweDAwMDAwNEIwLCANCiAgICAgICAgICAgICAgICAweDAwMDAzRTgwLCANCiAgICAg ICAgICAgICAgICAweDAwMDAwMDBBLCANCiAgICAgICAgICAgICAgICAweDAwMDAwMDBBLCANCiAg ICAgICAgICAgICAgICAweDAwMDAwQzIxLCANCiAgICAgICAgICAgICAgICAweDAwMDAwQzIxDQog ICAgICAgICAgICB9LCANCg0KICAgICAgICAgICAgUGFja2FnZSAoMHgwNikNCiAgICAgICAgICAg IHsNCiAgICAgICAgICAgICAgICAweDAwMDAwM0U4LCANCiAgICAgICAgICAgICAgICAweDAwMDAz MkM4LCANCiAgICAgICAgICAgICAgICAweDAwMDAwMDBBLCANCiAgICAgICAgICAgICAgICAweDAw MDAwMDBBLCANCiAgICAgICAgICAgICAgICAweDAwMDAwQTFBLCANCiAgICAgICAgICAgICAgICAw eDAwMDAwQTFBDQogICAgICAgICAgICB9LCANCg0KICAgICAgICAgICAgUGFja2FnZSAoMHgwNikN CiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAweDAwMDAwMzIwLCANCiAgICAgICAgICAg ICAgICAweDAwMDAyNTFDLCANCiAgICAgICAgICAgICAgICAweDAwMDAwMDBBLCANCiAgICAgICAg ICAgICAgICAweDAwMDAwMDBBLCANCiAgICAgICAgICAgICAgICAweDAwMDAwODEzLCANCiAgICAg ICAgICAgICAgICAweDAwMDAwODEzDQogICAgICAgICAgICB9LCANCg0KICAgICAgICAgICAgUGFj a2FnZSAoMHgwNikNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAweDAwMDAwMjU4LCAN CiAgICAgICAgICAgICAgICAweDAwMDAxNzcwLCANCiAgICAgICAgICAgICAgICAweDAwMDAwMDBB LCANCiAgICAgICAgICAgICAgICAweDAwMDAwMDBBLCANCiAgICAgICAgICAgICAgICAweDAwMDAw NjEwLCANCiAgICAgICAgICAgICAgICAweDAwMDAwNjEwDQogICAgICAgICAgICB9DQogICAgICAg IH0pDQogICAgICAgIE5hbWUgKFNQU1MsIFBhY2thZ2UgKDB4MDYpDQogICAgICAgIHsNCiAgICAg ICAgICAgIFBhY2thZ2UgKDB4MDYpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgMHgw MDAwMDZBNCwgDQogICAgICAgICAgICAgICAgMHgwMDAwNUZCNCwgDQogICAgICAgICAgICAgICAg MHgwMDAwMDA2NCwgDQogICAgICAgICAgICAgICAgMHgwMDAwMDA2RSwgDQogICAgICAgICAgICAg ICAgMHgwMDAwMDA4MywgDQogICAgICAgICAgICAgICAgMHgwMDAwMDAwMA0KICAgICAgICAgICAg fSwgDQoNCiAgICAgICAgICAgIFBhY2thZ2UgKDB4MDYpDQogICAgICAgICAgICB7DQogICAgICAg ICAgICAgICAgMHgwMDAwMDU3OCwgDQogICAgICAgICAgICAgICAgMHgwMDAwNEMyQywgDQogICAg ICAgICAgICAgICAgMHgwMDAwMDA2NCwgDQogICAgICAgICAgICAgICAgMHgwMDAwMDA2RSwgDQog ICAgICAgICAgICAgICAgMHgwMDAwMDE4MywgDQogICAgICAgICAgICAgICAgMHgwMDAwMDAwMQ0K ICAgICAgICAgICAgfSwgDQoNCiAgICAgICAgICAgIFBhY2thZ2UgKDB4MDYpDQogICAgICAgICAg ICB7DQogICAgICAgICAgICAgICAgMHgwMDAwMDRCMCwgDQogICAgICAgICAgICAgICAgMHgwMDAw M0U4MCwgDQogICAgICAgICAgICAgICAgMHgwMDAwMDA2NCwgDQogICAgICAgICAgICAgICAgMHgw MDAwMDA2RSwgDQogICAgICAgICAgICAgICAgMHgwMDAwMDI4MywgDQogICAgICAgICAgICAgICAg MHgwMDAwMDAwMg0KICAgICAgICAgICAgfSwgDQoNCiAgICAgICAgICAgIFBhY2thZ2UgKDB4MDYp DQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgMHgwMDAwMDNFOCwgDQogICAgICAgICAg ICAgICAgMHgwMDAwMzJDOCwgDQogICAgICAgICAgICAgICAgMHgwMDAwMDA2NCwgDQogICAgICAg ICAgICAgICAgMHgwMDAwMDA2RSwgDQogICAgICAgICAgICAgICAgMHgwMDAwMDM4MywgDQogICAg ICAgICAgICAgICAgMHgwMDAwMDAwMw0KICAgICAgICAgICAgfSwgDQoNCiAgICAgICAgICAgIFBh Y2thZ2UgKDB4MDYpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgMHgwMDAwMDMyMCwg DQogICAgICAgICAgICAgICAgMHgwMDAwMjUxQywgDQogICAgICAgICAgICAgICAgMHgwMDAwMDA2 NCwgDQogICAgICAgICAgICAgICAgMHgwMDAwMDA2RSwgDQogICAgICAgICAgICAgICAgMHgwMDAw MDQ4MywgDQogICAgICAgICAgICAgICAgMHgwMDAwMDAwNA0KICAgICAgICAgICAgfSwgDQoNCiAg ICAgICAgICAgIFBhY2thZ2UgKDB4MDYpDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAg MHgwMDAwMDI1OCwgDQogICAgICAgICAgICAgICAgMHgwMDAwMTc3MCwgDQogICAgICAgICAgICAg ICAgMHgwMDAwMDA2NCwgDQogICAgICAgICAgICAgICAgMHgwMDAwMDA2RSwgDQogICAgICAgICAg ICAgICAgMHgwMDAwMDU4MywgDQogICAgICAgICAgICAgICAgMHgwMDAwMDAwNQ0KICAgICAgICAg ICAgfQ0KICAgICAgICB9KQ0KICAgIH0NCn0NCg0K --=-BE6+xfMzJmYpAg2zZzbZ Content-Disposition: attachment; filename=devinfo-v.txt Content-Type: text/plain; name=devinfo-v.txt; charset=KOI8-R Content-Transfer-Encoding: base64 bmV4dXMwDQogIGFjcGkwDQogICAgY3B1MCBwbnBpbmZvIF9ISUQ9bm9uZSBfVUlEPTAgYXQgaGFu ZGxlPVxfUFJfLkNQVTANCiAgICBhY3BpX3R6MCBwbnBpbmZvIF9ISUQ9bm9uZSBfVUlEPTAgYXQg aGFuZGxlPVxfVFpfLkFURjANCiAgICBhY3BpX2xpZDAgcG5waW5mbyBfSElEPVBOUDBDMEQgX1VJ RD0wIGF0IGhhbmRsZT1cX1NCXy5MSUQwDQogICAgYWNwaV9idXR0b24wIHBucGluZm8gX0hJRD1Q TlAwQzBDIF9VSUQ9MCBhdCBoYW5kbGU9XF9TQl8uUFdSQg0KICAgIHBjaWIwIHBucGluZm8gX0hJ RD1QTlAwQTAzIF9VSUQ9MCBhdCBoYW5kbGU9XF9TQl8uUENJMA0KICAgICAgcGNpMA0KICAgICAg ICBob3N0YjAgcG5waW5mbyB2ZW5kb3I9MHg4MDg2IGRldmljZT0weDMzNDAgc3VidmVuZG9yPTB4 MTA0ZCBzdWJkZXZpY2U9MHg4MTQwIGNsYXNzPTB4MDYwMDAwIGF0IHNsb3Q9MCBmdW5jdGlvbj0w DQogICAgICAgIHBjaWIxIHBucGluZm8gdmVuZG9yPTB4ODA4NiBkZXZpY2U9MHgzMzQxIHN1YnZl bmRvcj0weDAwMDAgc3ViZGV2aWNlPTB4MDAwMCBjbGFzcz0weDA2MDQwMCBhdCBzbG90PTEgZnVu Y3Rpb249MCBoYW5kbGU9XF9TQl8uUENJMC5BR1BCDQogICAgICAgICAgcGNpMQ0KICAgICAgICAg ICAgdW5rbm93biBwbnBpbmZvIHZlbmRvcj0weDEwMDIgZGV2aWNlPTB4NGM1OSBzdWJ2ZW5kb3I9 MHgxMDRkIHN1YmRldmljZT0weDgxNDAgY2xhc3M9MHgwMzAwMDAgYXQgc2xvdD0wIGZ1bmN0aW9u PTAgaGFuZGxlPVxfU0JfLlBDSTAuQUdQQi5WSUQwDQogICAgICAgIHVoY2kwIHBucGluZm8gdmVu ZG9yPTB4ODA4NiBkZXZpY2U9MHgyNGMyIHN1YnZlbmRvcj0weDEwNGQgc3ViZGV2aWNlPTB4ODE0 MCBjbGFzcz0weDBjMDMwMCBhdCBzbG90PTI5IGZ1bmN0aW9uPTAgaGFuZGxlPVxfU0JfLlBDSTAu VVNCMA0KICAgICAgICAgIHVzYjANCiAgICAgICAgICAgIHVodWIwDQogICAgICAgIHVoY2kxIHBu cGluZm8gdmVuZG9yPTB4ODA4NiBkZXZpY2U9MHgyNGM0IHN1YnZlbmRvcj0weDEwNGQgc3ViZGV2 aWNlPTB4ODE0MCBjbGFzcz0weDBjMDMwMCBhdCBzbG90PTI5IGZ1bmN0aW9uPTEgaGFuZGxlPVxf U0JfLlBDSTAuVVNCMQ0KICAgICAgICAgIHVzYjENCiAgICAgICAgICAgIHVodWIxDQogICAgICAg ICAgICAgIHVodWIyIHBucGluZm8gdmVuZG9yPTB4MDQ1MSBwcm9kdWN0PTB4MTQ0NiBkZXZjbGFz cz0weDA5IGRldnN1YmNsYXNzPTB4MDAgc2VybnVtPSIiIGF0IHBvcnQ9MA0KICAgICAgICAgICAg ICAgIHVrYmQwIHBucGluZm8gdmVuZG9yPTB4MDQ2ZSBwcm9kdWN0PTB4Njc4MiBkZXZjbGFzcz0w eDAwIGRldnN1YmNsYXNzPTB4MDAgc2VybnVtPSIiIGludGNsYXNzPTB4MDMgaW50c3ViY2xhc3M9 MHgwMSBhdCBwb3J0PTIgaW50ZXJmYWNlPTANCiAgICAgICAgICAgICAgICB1bXMwIHBucGluZm8g dmVuZG9yPTB4MDQ2ZSBwcm9kdWN0PTB4Njc4MiBkZXZjbGFzcz0weDAwIGRldnN1YmNsYXNzPTB4 MDAgc2VybnVtPSIiIGludGNsYXNzPTB4MDMgaW50c3ViY2xhc3M9MHgwMSBhdCBwb3J0PTIgaW50 ZXJmYWNlPTENCiAgICAgICAgICAgICAgICB1bXMxIHBucGluZm8gdmVuZG9yPTB4MDQ1ZSBwcm9k dWN0PTB4MDAxZSBkZXZjbGFzcz0weDAwIGRldnN1YmNsYXNzPTB4MDAgc2VybnVtPSIiIGludGNs YXNzPTB4MDMgaW50c3ViY2xhc3M9MHgwMSBhdCBwb3J0PTMgaW50ZXJmYWNlPTANCiAgICAgICAg dWhjaTIgcG5waW5mbyB2ZW5kb3I9MHg4MDg2IGRldmljZT0weDI0Yzcgc3VidmVuZG9yPTB4MTA0 ZCBzdWJkZXZpY2U9MHg4MTQwIGNsYXNzPTB4MGMwMzAwIGF0IHNsb3Q9MjkgZnVuY3Rpb249MiBo YW5kbGU9XF9TQl8uUENJMC5VU0IyDQogICAgICAgICAgdXNiMg0KICAgICAgICAgICAgdWh1YjMN CiAgICAgICAgZWhjaTAgcG5waW5mbyB2ZW5kb3I9MHg4MDg2IGRldmljZT0weDI0Y2Qgc3VidmVu ZG9yPTB4MTA0ZCBzdWJkZXZpY2U9MHg4MTQwIGNsYXNzPTB4MGMwMzIwIGF0IHNsb3Q9MjkgZnVu Y3Rpb249NyBoYW5kbGU9XF9TQl8uUENJMC5VU0I3DQogICAgICAgICAgdXNiMw0KICAgICAgICAg ICAgdWh1YjQNCiAgICAgICAgICAgICAgdW1hc3MxIHBucGluZm8gdmVuZG9yPTB4MDU0YyBwcm9k dWN0PTB4MDE0ZCBkZXZjbGFzcz0weDAwIGRldnN1YmNsYXNzPTB4MDAgc2VybnVtPSIwMDUyNDQ5 Njc3NDkyMjI0IiBpbnRjbGFzcz0weDA4IGludHN1YmNsYXNzPTB4MDUgYXQgcG9ydD00IGludGVy ZmFjZT0wDQogICAgICAgIHBjaWIyIHBucGluZm8gdmVuZG9yPTB4ODA4NiBkZXZpY2U9MHgyNDQ4 IHN1YnZlbmRvcj0weDAwMDAgc3ViZGV2aWNlPTB4MDAwMCBjbGFzcz0weDA2MDQwMCBhdCBzbG90 PTMwIGZ1bmN0aW9uPTAgaGFuZGxlPVxfU0JfLlBDSTAuUENJQg0KICAgICAgICAgIHBjaTINCiAg ICAgICAgICAgIGNiYjAgcG5waW5mbyB2ZW5kb3I9MHgxMTgwIGRldmljZT0weDA0NzUgc3VidmVu ZG9yPTB4MTA0ZCBzdWJkZXZpY2U9MHg4MTQwIGNsYXNzPTB4MDYwNzAwIGF0IHNsb3Q9NSBmdW5j dGlvbj0wIGhhbmRsZT1cX1NCXy5QQ0kwLlBDSUIuQ1JEMA0KICAgICAgICAgICAgICBjYXJkYnVz MA0KICAgICAgICAgICAgICBwY2NhcmQwDQogICAgICAgICAgICBmd29oY2kwIHBucGluZm8gdmVu ZG9yPTB4MTE4MCBkZXZpY2U9MHgwNTUxIHN1YnZlbmRvcj0weDEwNGQgc3ViZGV2aWNlPTB4ODE0 MCBjbGFzcz0weDBjMDAxMCBhdCBzbG90PTUgZnVuY3Rpb249MSBoYW5kbGU9XF9TQl8uUENJMC5Q Q0lCLlNEOTQNCiAgICAgICAgICAgICAgZmlyZXdpcmUwDQogICAgICAgICAgICAgICAgc2JwMA0K ICAgICAgICAgICAgZnhwMCBwbnBpbmZvIHZlbmRvcj0weDgwODYgZGV2aWNlPTB4MTAzZCBzdWJ2 ZW5kb3I9MHgxMDRkIHN1YmRldmljZT0weDgxNDAgY2xhc3M9MHgwMjAwMDAgYXQgc2xvdD04IGZ1 bmN0aW9uPTAgaGFuZGxlPVxfU0JfLlBDSTAuUENJQi5MQU5DDQogICAgICAgICAgICAgIG1paWJ1 czANCiAgICAgICAgICAgICAgICBpbnBoeTANCiAgICAgICAgICAgIG5kaXMwIHBucGluZm8gdmVu ZG9yPTB4ODA4NiBkZXZpY2U9MHg0MjIwIHN1YnZlbmRvcj0weDgwODYgc3ViZGV2aWNlPTB4Mjc1 MSBjbGFzcz0weDAyODAwMCBhdCBzbG90PTExIGZ1bmN0aW9uPTAgaGFuZGxlPVxfU0JfLlBDSTAu UENJQi5XTEFODQogICAgICAgIGlzYWIwIHBucGluZm8gdmVuZG9yPTB4ODA4NiBkZXZpY2U9MHgy NGNjIHN1YnZlbmRvcj0weDAwMDAgc3ViZGV2aWNlPTB4MDAwMCBjbGFzcz0weDA2MDEwMCBhdCBz bG90PTMxIGZ1bmN0aW9uPTAgaGFuZGxlPVxfU0JfLlBDSTAuTFBDQg0KICAgICAgICAgIGlzYTAN CiAgICAgICAgICAgIHBtdGltZXIwDQogICAgICAgICAgICBzYzANCiAgICAgICAgICAgIHZnYTAN CiAgICAgICAgICAgIGFkdjANCiAgICAgICAgICAgIGFoYTANCiAgICAgICAgICAgIGFpYzANCiAg ICAgICAgICAgIGJ0MA0KICAgICAgICAgICAgY3MwDQogICAgICAgICAgICBlZDANCiAgICAgICAg ICAgIGZkYzANCiAgICAgICAgICAgIGZlMA0KICAgICAgICAgICAgaWUwDQogICAgICAgICAgICBs bmMwDQogICAgICAgICAgICBwY2ljMA0KICAgICAgICAgICAgcGNpYzENCiAgICAgICAgICAgIHBw YzANCiAgICAgICAgICAgIHNpbzANCiAgICAgICAgICAgIHNpbzENCiAgICAgICAgICAgIHNpbzIN CiAgICAgICAgICAgIHNpbzMNCiAgICAgICAgICAgIHNuMA0KICAgICAgICAgICAgdnQwDQogICAg ICAgICAgICBvcm0wDQogICAgICAgIGF0YXBjaTAgcG5waW5mbyB2ZW5kb3I9MHg4MDg2IGRldmlj ZT0weDI0Y2Egc3VidmVuZG9yPTB4MTA0ZCBzdWJkZXZpY2U9MHg4MTQwIGNsYXNzPTB4MDEwMThh IGF0IHNsb3Q9MzEgZnVuY3Rpb249MSBoYW5kbGU9XF9TQl8uUENJMC5JREVDDQogICAgICAgICAg YXRhMA0KICAgICAgICAgIGF0YTENCiAgICAgICAgdW5rbm93biBwbnBpbmZvIHZlbmRvcj0weDgw ODYgZGV2aWNlPTB4MjRjMyBzdWJ2ZW5kb3I9MHgxMDRkIHN1YmRldmljZT0weDgxNDAgY2xhc3M9 MHgwYzA1MDAgYXQgc2xvdD0zMSBmdW5jdGlvbj0zIGhhbmRsZT1cX1NCXy5QQ0kwLlNCVVMNCiAg ICAgICAgcGNtMCBwbnBpbmZvIHZlbmRvcj0weDgwODYgZGV2aWNlPTB4MjRjNSBzdWJ2ZW5kb3I9 MHgxMDRkIHN1YmRldmljZT0weDgxNDAgY2xhc3M9MHgwNDAxMDAgYXQgc2xvdD0zMSBmdW5jdGlv bj01IGhhbmRsZT1cX1NCXy5QQ0kwLkFVRDANCiAgICAgICAgdW5rbm93biBwbnBpbmZvIHZlbmRv cj0weDgwODYgZGV2aWNlPTB4MjRjNiBzdWJ2ZW5kb3I9MHgxMDRkIHN1YmRldmljZT0weDgxNDAg Y2xhc3M9MHgwNzAzMDAgYXQgc2xvdD0zMSBmdW5jdGlvbj02IGhhbmRsZT1cX1NCXy5QQ0kwLk1P RE0NCiAgICB1bmtub3duIHBucGluZm8gX0hJRD1ub25lIF9VSUQ9MCBhdCBoYW5kbGU9XF9TQl8u UENJMC5BR1BCLlZJRDAuQ1JUXw0KICAgIHVua25vd24gcG5waW5mbyBfSElEPW5vbmUgX1VJRD0w IGF0IGhhbmRsZT1cX1NCXy5QQ0kwLkFHUEIuVklEMC5MQ0RfDQogICAgdW5rbm93biBwbnBpbmZv IF9ISUQ9bm9uZSBfVUlEPTAgYXQgaGFuZGxlPVxfU0JfLlBDSTAuQUdQQi5WSUQwLlRWX18NCiAg ICB1bmtub3duIHBucGluZm8gX0hJRD1QTlAwQzBGIF9VSUQ9MSBhdCBoYW5kbGU9XF9TQl8uUENJ MC5MUENCLkxOS0ENCiAgICB1bmtub3duIHBucGluZm8gX0hJRD1QTlAwQzBGIF9VSUQ9MiBhdCBo YW5kbGU9XF9TQl8uUENJMC5MUENCLkxOS0INCiAgICB1bmtub3duIHBucGluZm8gX0hJRD1QTlAw QzBGIF9VSUQ9MyBhdCBoYW5kbGU9XF9TQl8uUENJMC5MUENCLkxOS0MNCiAgICB1bmtub3duIHBu cGluZm8gX0hJRD1QTlAwQzBGIF9VSUQ9NCBhdCBoYW5kbGU9XF9TQl8uUENJMC5MUENCLkxOS0QN CiAgICB1bmtub3duIHBucGluZm8gX0hJRD1QTlAwQzBGIF9VSUQ9NSBhdCBoYW5kbGU9XF9TQl8u UENJMC5MUENCLkxOS0UNCiAgICB1bmtub3duIHBucGluZm8gX0hJRD1QTlAwQzBGIF9VSUQ9NiBh dCBoYW5kbGU9XF9TQl8uUENJMC5MUENCLkxOS0YNCiAgICB1bmtub3duIHBucGluZm8gX0hJRD1Q TlAwQzBGIF9VSUQ9NyBhdCBoYW5kbGU9XF9TQl8uUENJMC5MUENCLkxOS0cNCiAgICB1bmtub3du IHBucGluZm8gX0hJRD1QTlAwQzBGIF9VSUQ9OCBhdCBoYW5kbGU9XF9TQl8uUENJMC5MUENCLkxO S0gNCiAgICBhdHRpbWVyMCBwbnBpbmZvIF9ISUQ9UE5QMDEwMCBfVUlEPTAgYXQgaGFuZGxlPVxf U0JfLlBDSTAuTFBDQi5USU1SDQogICAgYXRwaWMwIHBucGluZm8gX0hJRD1QTlAwMDAwIF9VSUQ9 MCBhdCBoYW5kbGU9XF9TQl8uUENJMC5MUENCLklQSUMNCiAgICBhdHRpbWVyMSBwbnBpbmZvIF9I SUQ9UE5QMEIwMCBfVUlEPTAgYXQgaGFuZGxlPVxfU0JfLlBDSTAuTFBDQi5SVENfDQogICAgbnB4 aXNhMCBwbnBpbmZvIF9ISUQ9UE5QMEMwNCBfVUlEPTAgYXQgaGFuZGxlPVxfU0JfLlBDSTAuTFBD Qi5NQVRIDQogICAgYXRkbWEwIHBucGluZm8gX0hJRD1QTlAwMjAwIF9VSUQ9MCBhdCBoYW5kbGU9 XF9TQl8uUENJMC5MUENCLkRNQUMNCiAgICBhY3BpX3N5c3Jlc291cmNlMCBwbnBpbmZvIF9ISUQ9 UE5QMEMwMiBfVUlEPTAgYXQgaGFuZGxlPVxfU0JfLlBDSTAuTFBDQi5NQlJEDQogICAgdW5rbm93 biBwbnBpbmZvIF9ISUQ9SU5UMDgwMCBfVUlEPTAgYXQgaGFuZGxlPVxfU0JfLlBDSTAuTFBDQi5G V0hEDQogICAgYWNwaV9lYzAgcG5waW5mbyBfSElEPVBOUDBDMDkgX1VJRD0wIGF0IGhhbmRsZT1c X1NCXy5QQ0kwLkxQQ0IuRUMwXw0KICAgIGFjcGlfY21iYXQwIHBucGluZm8gX0hJRD1QTlAwQzBB IF9VSUQ9MSBhdCBoYW5kbGU9XF9TQl8uUENJMC5MUENCLkVDMF8uQkFUMQ0KICAgIGFjcGlfYWNh ZDAgcG5waW5mbyBfSElEPUFDUEkwMDAzIF9VSUQ9MCBhdCBoYW5kbGU9XF9TQl8uUENJMC5MUENC LkVDMF8uQUNBRA0KICAgIHVua25vd24gcG5waW5mbyBfSElEPVNOWTYwMDEgX1VJRD0wIGF0IGhh bmRsZT1cX1NCXy5QQ0kwLkxQQ0IuU1BJQw0KICAgIHVua25vd24gcG5waW5mbyBfSElEPVNOWTUw MDEgX1VJRD0wIGF0IGhhbmRsZT1cX1NCXy5QQ0kwLkxQQ0IuU05DXw0KICAgIGF0a2JkYzAgcG5w aW5mbyBfSElEPVBOUDAzMDMgX1VJRD0wIGF0IGhhbmRsZT1cX1NCXy5QQ0kwLkxQQ0IuUFMySw0K ICAgICAgYXRrYmQwDQogICAgICBwc20wDQogICAgcHNtY3BucDAgcG5waW5mbyBfSElEPVNOWTkw MDYgX1VJRD0wIGF0IGhhbmRsZT1cX1NCXy5QQ0kwLkxQQ0IuUFMyTQ0KICAgIHVua25vd24gcG5w aW5mbyBfSElEPW5vbmUgX1VJRD0wIGF0IGhhbmRsZT1cX1NCXy5QQ0kwLklERUMuUFJJRA0KICAg IHVua25vd24gcG5waW5mbyBfSElEPW5vbmUgX1VJRD0wIGF0IGhhbmRsZT1cX1NCXy5QQ0kwLklE RUMuUFJJRC5QX0QwDQogICAgdW5rbm93biBwbnBpbmZvIF9ISUQ9bm9uZSBfVUlEPTAgYXQgaGFu ZGxlPVxfU0JfLlBDSTAuSURFQy5TRUNEDQogICAgdW5rbm93biBwbnBpbmZvIF9ISUQ9bm9uZSBf VUlEPTAgYXQgaGFuZGxlPVxfU0JfLlBDSTAuSURFQy5TRUNELlNfRDANCiAgICBhY3BpX3RpbWVy MCBwbnBpbmZvIHVua25vd24gYXQgdW5rbm93bg0KICBsZWdhY3kwDQogIG5weDANCm== --=-BE6+xfMzJmYpAg2zZzbZ--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1093854397.864.40.camel>