From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mailgw02.mediatek.com ([210.61.82.184]:42799 "EHLO mailgw02.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1726537AbeLSDRA (ORCPT ); Tue, 18 Dec 2018 22:17:00 -0500 Message-ID: <1545189395.3262.2.camel@mtkswgap22> Subject: Re: [PATCH v5] cdc-acm: fix abnormal DATA RX issue for Mediatek Preloader. From: Macpaul Lin To: Lars Melin CC: Oliver Neukum , Andrey Arapov , Johan Hovold , "Greg Kroah-Hartman" , Mediatek WSD Upstream , , Date: Wed, 19 Dec 2018 11:16:35 +0800 In-Reply-To: <1545186137.1821.5.camel@mtkswgap22> References: <1544671676-23912-1-git-send-email-macpaul.lin@mediatek.com> <1545134386-5528-1-git-send-email-macpaul.lin@mediatek.com> <20181218123840.GP20658@localhost> <1545140229.18594.3.camel@suse.com> <1545143195.10193.6.camel@mtkswgap22> <1545146389.10193.12.camel@mtkswgap22> <5b0e5bf4-0411-0c58-ccae-fe66c937a36b@gmail.com> <1545155303.16619.11.camel@mtkswgap22> <1545186137.1821.5.camel@mtkswgap22> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit MIME-Version: 1.0 Sender: stable-owner@vger.kernel.org List-ID: On Wed, 2018-12-19 at 10:22 +0800, Macpaul Lin wrote: > On Wed, 2018-12-19 at 01:48 +0800, Macpaul Lin wrote: > > On Tue, 2018-12-18 at 23:42 +0700, Lars Melin wrote: > > > On 12/18/2018 22:19, Macpaul Lin wrote: > > > > > > > > > > Hi all, > > > > > > > > After double check the PID/VID officially used (registered) by Mediatek > > > > Inc. The following VID/PID maps to the corresponding USB interface of > > > > the firmware of cell phone. > > > > VID:0x0e8d, PID:0x0003: Mediatek BROM. > > > > VID:0x0e8d, PID:0x2000: Mediatek Preloader. > > > > > > > > I will update Patch v6 for changing Andrey's previous comments. > > > > > > > > > > You should show us a verbose lsusb of your 0e8d:0003 before changing > > > Andrey's submission. > > > > > > > > > Season's Greeting > > > Lars > > Hi Lars, Sorry I just missed your explain about the UNION descriptor and did not found in my mail box. Here comes the verbose lsusb -v dump. Bus 001 Device 003: ID 0e8d:0003 MediaTek Inc. MT6227 phone [432/3160] Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 1.10 bDeviceClass 2 Communications bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 64 idVendor 0x0e8d MediaTek Inc. idProduct 0x0003 MT6227 phone bcdDevice 1.00 iManufacturer 0 iProduct 0 iSerial 0 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 67 bNumInterfaces 2 bConfigurationValue 1 iConfiguration 0 bmAttributes 0x80 (Bus Powered) MaxPower 0mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 1 bInterfaceClass 2 Communications bInterfaceSubClass 2 Abstract (modem) bInterfaceProtocol 1 AT-commands (v.25ter) iInterface 1 (error) CDC Header: bcdCDC 1.10 CDC ACM: bmCapabilities 0x0f connection notifications sends break line coding and serial state get/set/clear comm features CDC Union: bMasterInterface 0 bSlaveInterface 1 CDC Call Management: bmCapabilities 0x03 call management use DataInterface bDataInterface 1 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x84 EP 4 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0040 1x 64 bytes bInterval 1 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 0 bNumEndpoints 2 bInterfaceClass 10 CDC Data bInterfaceSubClass 0 Unused bInterfaceProtocol 0 iInterface 2 (error) Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x81 EP 1 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0200 1x 512 bytes bInterval 0 Endpoint Descriptor: bLength 7 bDescriptorType 5 bEndpointAddress 0x01 EP 1 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0200 1x 512 bytes bInterval 0 Device Status: 0x7410 (Bus Powered) Bus 001 Device 002: ID 0e8d:2000 MediaTek Inc. MT65xx Preloader Device Descriptor: bLength 18 bDescriptorType 1 bcdUSB 2.00 bDeviceClass 2 Communications bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 64 idVendor 0x0e8d MediaTek Inc. idProduct 0x2000 MT65xx Preloader bcdDevice 1.00 iManufacturer 1 (error) iProduct 2 (error) iSerial 0 bNumConfigurations 1 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 70 bNumInterfaces 2 bConfigurationValue 1 iConfiguration 3 (error) bmAttributes 0xc0 Self Powered MaxPower 500mA Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 1 bAlternateSetting 0 bNumEndpoints 2 bInterfaceClass 10 CDC Data bInterfaceSubClass 0 Unused bInterfaceProtocol 0 iInterface 4 (error) Endpoint Descriptor: bLength 8 bDescriptorType 5 bEndpointAddress 0x01 EP 1 OUT bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0200 1x 512 bytes bInterval 0 Endpoint Descriptor: bLength 8 bDescriptorType 5 bEndpointAddress 0x81 EP 1 IN bmAttributes 2 Transfer Type Bulk Synch Type None Usage Type Data wMaxPacketSize 0x0200 1x 512 bytes bInterval 0 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 1 bInterfaceClass 2 Communications bInterfaceSubClass 2 Abstract (modem) bInterfaceProtocol 1 AT-commands (v.25ter) iInterface 5 (error) CDC Header: bcdCDC 1.10 CDC ACM: bmCapabilities 0x0f connection notifications sends break line coding and serial state get/set/clear comm features CDC Union: bMasterInterface 1 bSlaveInterface 0 CDC Call Management: bmCapabilities 0x03 call management use DataInterface bDataInterface 0 Endpoint Descriptor: bLength 8 bDescriptorType 5 bEndpointAddress 0x83 EP 3 IN bmAttributes 3 Transfer Type Interrupt Synch Type None Usage Type Data wMaxPacketSize 0x0040 1x 64 bytes bInterval 16 Device Status: 0x13f0 (Bus Powered) Debug Mode Regards, Macpaul Lin From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: [v5] cdc-acm: fix abnormal DATA RX issue for Mediatek Preloader. From: macpaul.lin@mediatek.com Message-Id: <1545189395.3262.2.camel@mtkswgap22> Date: Wed, 19 Dec 2018 11:16:35 +0800 To: Lars Melin Cc: Oliver Neukum , Andrey Arapov , Johan Hovold , Greg Kroah-Hartman , Mediatek WSD Upstream , linux-usb@vger.kernel.org, stable@vger.kernel.org List-ID: T24gV2VkLCAyMDE4LTEyLTE5IGF0IDEwOjIyICswODAwLCBNYWNwYXVsIExpbiB3cm90ZToKPiBP biBXZWQsIDIwMTgtMTItMTkgYXQgMDE6NDggKzA4MDAsIE1hY3BhdWwgTGluIHdyb3RlOgo+ID4g T24gVHVlLCAyMDE4LTEyLTE4IGF0IDIzOjQyICswNzAwLCBMYXJzIE1lbGluIHdyb3RlOgo+ID4g PiBPbiAxMi8xOC8yMDE4IDIyOjE5LCBNYWNwYXVsIExpbiB3cm90ZToKPiA+ID4gCj4gPiA+IAo+ ID4gPiA+IEhpIGFsbCwKPiA+ID4gPiAKPiA+ID4gPiBBZnRlciBkb3VibGUgY2hlY2sgdGhlIFBJ RC9WSUQgb2ZmaWNpYWxseSB1c2VkIChyZWdpc3RlcmVkKSBieSBNZWRpYXRlawo+ID4gPiA+IElu Yy4gVGhlIGZvbGxvd2luZyBWSUQvUElEIG1hcHMgdG8gdGhlIGNvcnJlc3BvbmRpbmcgVVNCIGlu dGVyZmFjZSBvZgo+ID4gPiA+IHRoZSBmaXJtd2FyZSBvZiBjZWxsIHBob25lLgo+ID4gPiA+IFZJ RDoweDBlOGQsIFBJRDoweDAwMDM6IE1lZGlhdGVrIEJST00uCj4gPiA+ID4gVklEOjB4MGU4ZCwg UElEOjB4MjAwMDogTWVkaWF0ZWsgUHJlbG9hZGVyLgo+ID4gPiA+IAo+ID4gPiA+IEkgd2lsbCB1 cGRhdGUgUGF0Y2ggdjYgZm9yIGNoYW5naW5nIEFuZHJleSdzIHByZXZpb3VzIGNvbW1lbnRzLgo+ ID4gPiA+IAo+ID4gPiAKPiA+ID4gWW91IHNob3VsZCBzaG93IHVzIGEgdmVyYm9zZSBsc3VzYiBv ZiB5b3VyIDBlOGQ6MDAwMyBiZWZvcmUgY2hhbmdpbmcKPiA+ID4gQW5kcmV5J3Mgc3VibWlzc2lv bi4KPiA+ID4gCj4gPiA+IAo+ID4gPiBTZWFzb24ncyBHcmVldGluZwo+ID4gPiBMYXJzCj4gPiAK SGkgTGFycywKClNvcnJ5IEkganVzdCBtaXNzZWQgeW91ciBleHBsYWluIGFib3V0IHRoZSBVTklP TiBkZXNjcmlwdG9yIGFuZCBkaWQgbm90IApmb3VuZCBpbiBteSBtYWlsIGJveC4KSGVyZSBjb21l cyB0aGUgdmVyYm9zZSBsc3VzYiAtdiBkdW1wLgoKQnVzIDAwMSBEZXZpY2UgMDAzOiBJRCAwZThk OjAwMDMgTWVkaWFUZWsgSW5jLiBNVDYyMjcgcGhvbmUKWzQzMi8zMTYwXQpEZXZpY2UgRGVzY3Jp cHRvcjoKICBiTGVuZ3RoICAgICAgICAgICAgICAgIDE4CiAgYkRlc2NyaXB0b3JUeXBlICAgICAg ICAgMQogIGJjZFVTQiAgICAgICAgICAgICAgIDEuMTAKICBiRGV2aWNlQ2xhc3MgICAgICAgICAg ICAyIENvbW11bmljYXRpb25zCiAgYkRldmljZVN1YkNsYXNzICAgICAgICAgMAogIGJEZXZpY2VQ cm90b2NvbCAgICAgICAgIDAKICBiTWF4UGFja2V0U2l6ZTAgICAgICAgIDY0CiAgaWRWZW5kb3Ig ICAgICAgICAgIDB4MGU4ZCBNZWRpYVRlayBJbmMuCiAgaWRQcm9kdWN0ICAgICAgICAgIDB4MDAw MyBNVDYyMjcgcGhvbmUKICBiY2REZXZpY2UgICAgICAgICAgICAxLjAwCiAgaU1hbnVmYWN0dXJl ciAgICAgICAgICAgMAogIGlQcm9kdWN0ICAgICAgICAgICAgICAgIDAKICBpU2VyaWFsICAgICAg ICAgICAgICAgICAwCiAgYk51bUNvbmZpZ3VyYXRpb25zICAgICAgMQogIENvbmZpZ3VyYXRpb24g RGVzY3JpcHRvcjoKICAgIGJMZW5ndGggICAgICAgICAgICAgICAgIDkKICAgIGJEZXNjcmlwdG9y VHlwZSAgICAgICAgIDIKICAgIHdUb3RhbExlbmd0aCAgICAgICAgICAgNjcKICAgIGJOdW1JbnRl cmZhY2VzICAgICAgICAgIDIKICAgIGJDb25maWd1cmF0aW9uVmFsdWUgICAgIDEKICAgIGlDb25m aWd1cmF0aW9uICAgICAgICAgIDAKICAgIGJtQXR0cmlidXRlcyAgICAgICAgIDB4ODAKICAgICAg KEJ1cyBQb3dlcmVkKQogICAgTWF4UG93ZXIgICAgICAgICAgICAgICAgMG1BCiAgICBJbnRlcmZh Y2UgRGVzY3JpcHRvcjoKICAgICAgYkxlbmd0aCAgICAgICAgICAgICAgICAgOQogICAgICBiRGVz Y3JpcHRvclR5cGUgICAgICAgICA0CiAgICAgIGJJbnRlcmZhY2VOdW1iZXIgICAgICAgIDAKICAg ICAgYkFsdGVybmF0ZVNldHRpbmcgICAgICAgMAogICAgICBiTnVtRW5kcG9pbnRzICAgICAgICAg ICAxCiAgICAgIGJJbnRlcmZhY2VDbGFzcyAgICAgICAgIDIgQ29tbXVuaWNhdGlvbnMKICAgICAg YkludGVyZmFjZVN1YkNsYXNzICAgICAgMiBBYnN0cmFjdCAobW9kZW0pCiAgICAgIGJJbnRlcmZh Y2VQcm90b2NvbCAgICAgIDEgQVQtY29tbWFuZHMgKHYuMjV0ZXIpCiAgICAgIGlJbnRlcmZhY2Ug ICAgICAgICAgICAgIDEgKGVycm9yKQogICAgICBDREMgSGVhZGVyOgogICAgICAgIGJjZENEQyAg ICAgICAgICAgICAgIDEuMTAKICAgICAgQ0RDIEFDTToKICAgICAgICBibUNhcGFiaWxpdGllcyAg ICAgICAweDBmCiAgICAgICAgICBjb25uZWN0aW9uIG5vdGlmaWNhdGlvbnMKICAgICAgICAgIHNl bmRzIGJyZWFrCiAgICAgICAgICBsaW5lIGNvZGluZyBhbmQgc2VyaWFsIHN0YXRlCiAgICAgICAg ICBnZXQvc2V0L2NsZWFyIGNvbW0gZmVhdHVyZXMKICAgICAgQ0RDIFVuaW9uOgogICAgICAgIGJN YXN0ZXJJbnRlcmZhY2UgICAgICAgIDAKICAgICAgICBiU2xhdmVJbnRlcmZhY2UgICAgICAgICAx CiAgICAgIENEQyBDYWxsIE1hbmFnZW1lbnQ6CiAgICAgICAgYm1DYXBhYmlsaXRpZXMgICAgICAg MHgwMwogICAgICAgICAgY2FsbCBtYW5hZ2VtZW50CiAgICAgICAgICB1c2UgRGF0YUludGVyZmFj ZQogICAgICAgIGJEYXRhSW50ZXJmYWNlICAgICAgICAgIDEKICAgICAgRW5kcG9pbnQgRGVzY3Jp cHRvcjoKICAgICAgICBiTGVuZ3RoICAgICAgICAgICAgICAgICA3CiAgICAgICAgYkRlc2NyaXB0 b3JUeXBlICAgICAgICAgNQogICAgICAgIGJFbmRwb2ludEFkZHJlc3MgICAgIDB4ODQgIEVQIDQg SU4KICAgICAgICBibUF0dHJpYnV0ZXMgICAgICAgICAgICAzCiAgICAgICAgICBUcmFuc2ZlciBU eXBlICAgICAgICAgICAgSW50ZXJydXB0CiAgICAgICAgICBTeW5jaCBUeXBlICAgICAgICAgICAg ICAgTm9uZQogICAgICAgICAgVXNhZ2UgVHlwZSAgICAgICAgICAgICAgIERhdGEKICAgICAgICB3 TWF4UGFja2V0U2l6ZSAgICAgMHgwMDQwICAxeCA2NCBieXRlcwogICAgICAgIGJJbnRlcnZhbCAg ICAgICAgICAgICAgIDEKICAgIEludGVyZmFjZSBEZXNjcmlwdG9yOgogICAgICBiTGVuZ3RoICAg ICAgICAgICAgICAgICA5CiAgICAgIGJEZXNjcmlwdG9yVHlwZSAgICAgICAgIDQKICAgICAgYklu dGVyZmFjZU51bWJlciAgICAgICAgMQogICAgICBiQWx0ZXJuYXRlU2V0dGluZyAgICAgICAwCiAg ICAgIGJOdW1FbmRwb2ludHMgICAgICAgICAgIDIKICAgICAgYkludGVyZmFjZUNsYXNzICAgICAg ICAxMCBDREMgRGF0YQogICAgICBiSW50ZXJmYWNlU3ViQ2xhc3MgICAgICAwIFVudXNlZAogICAg ICBiSW50ZXJmYWNlUHJvdG9jb2wgICAgICAwCiAgICAgIGlJbnRlcmZhY2UgICAgICAgICAgICAg IDIgKGVycm9yKQogICAgICBFbmRwb2ludCBEZXNjcmlwdG9yOgogICAgICAgIGJMZW5ndGggICAg ICAgICAgICAgICAgIDcKICAgICAgICBiRGVzY3JpcHRvclR5cGUgICAgICAgICA1CiAgICAgICAg YkVuZHBvaW50QWRkcmVzcyAgICAgMHg4MSAgRVAgMSBJTgogICAgICAgIGJtQXR0cmlidXRlcyAg ICAgICAgICAgIDIKICAgICAgICAgIFRyYW5zZmVyIFR5cGUgICAgICAgICAgICBCdWxrCiAgICAg ICAgICBTeW5jaCBUeXBlICAgICAgICAgICAgICAgTm9uZQogICAgICAgICAgVXNhZ2UgVHlwZSAg ICAgICAgICAgICAgIERhdGEKICAgICAgICB3TWF4UGFja2V0U2l6ZSAgICAgMHgwMjAwICAxeCA1 MTIgYnl0ZXMKICAgICAgICBiSW50ZXJ2YWwgICAgICAgICAgICAgICAwCiAgICAgIEVuZHBvaW50 IERlc2NyaXB0b3I6CiAgICAgICAgYkxlbmd0aCAgICAgICAgICAgICAgICAgNwogICAgICAgIGJE ZXNjcmlwdG9yVHlwZSAgICAgICAgIDUKICAgICAgICBiRW5kcG9pbnRBZGRyZXNzICAgICAweDAx ICBFUCAxIE9VVAogICAgICAgIGJtQXR0cmlidXRlcyAgICAgICAgICAgIDIKICAgICAgICAgIFRy YW5zZmVyIFR5cGUgICAgICAgICAgICBCdWxrCiAgICAgICAgICBTeW5jaCBUeXBlICAgICAgICAg ICAgICAgTm9uZQogICAgICAgICAgVXNhZ2UgVHlwZSAgICAgICAgICAgICAgIERhdGEKICAgICAg ICB3TWF4UGFja2V0U2l6ZSAgICAgMHgwMjAwICAxeCA1MTIgYnl0ZXMKICAgICAgICBiSW50ZXJ2 YWwgICAgICAgICAgICAgICAwCkRldmljZSBTdGF0dXM6ICAgICAweDc0MTAKICAoQnVzIFBvd2Vy ZWQpCgpCdXMgMDAxIERldmljZSAwMDI6IElEIDBlOGQ6MjAwMCBNZWRpYVRlayBJbmMuIE1UNjV4 eCBQcmVsb2FkZXIKRGV2aWNlIERlc2NyaXB0b3I6CiAgYkxlbmd0aCAgICAgICAgICAgICAgICAx OAogIGJEZXNjcmlwdG9yVHlwZSAgICAgICAgIDEKICBiY2RVU0IgICAgICAgICAgICAgICAyLjAw CiAgYkRldmljZUNsYXNzICAgICAgICAgICAgMiBDb21tdW5pY2F0aW9ucwogIGJEZXZpY2VTdWJD bGFzcyAgICAgICAgIDAKICBiRGV2aWNlUHJvdG9jb2wgICAgICAgICAwCiAgYk1heFBhY2tldFNp emUwICAgICAgICA2NAogIGlkVmVuZG9yICAgICAgICAgICAweDBlOGQgTWVkaWFUZWsgSW5jLgog IGlkUHJvZHVjdCAgICAgICAgICAweDIwMDAgTVQ2NXh4IFByZWxvYWRlcgogIGJjZERldmljZSAg ICAgICAgICAgIDEuMDAKICBpTWFudWZhY3R1cmVyICAgICAgICAgICAxIChlcnJvcikKICBpUHJv ZHVjdCAgICAgICAgICAgICAgICAyIChlcnJvcikKICBpU2VyaWFsICAgICAgICAgICAgICAgICAw CiAgYk51bUNvbmZpZ3VyYXRpb25zICAgICAgMQogIENvbmZpZ3VyYXRpb24gRGVzY3JpcHRvcjoK ICAgIGJMZW5ndGggICAgICAgICAgICAgICAgIDkKICAgIGJEZXNjcmlwdG9yVHlwZSAgICAgICAg IDIKICAgIHdUb3RhbExlbmd0aCAgICAgICAgICAgNzAKICAgIGJOdW1JbnRlcmZhY2VzICAgICAg ICAgIDIKICAgIGJDb25maWd1cmF0aW9uVmFsdWUgICAgIDEKICAgIGlDb25maWd1cmF0aW9uICAg ICAgICAgIDMgKGVycm9yKQogICAgYm1BdHRyaWJ1dGVzICAgICAgICAgMHhjMAogICAgICBTZWxm IFBvd2VyZWQKICAgIE1heFBvd2VyICAgICAgICAgICAgICA1MDBtQQogICAgSW50ZXJmYWNlIERl c2NyaXB0b3I6CiAgICAgIGJMZW5ndGggICAgICAgICAgICAgICAgIDkKICAgICAgYkRlc2NyaXB0 b3JUeXBlICAgICAgICAgNAogICAgICBiSW50ZXJmYWNlTnVtYmVyICAgICAgICAxCiAgICAgIGJB bHRlcm5hdGVTZXR0aW5nICAgICAgIDAKICAgICAgYk51bUVuZHBvaW50cyAgICAgICAgICAgMgog ICAgICBiSW50ZXJmYWNlQ2xhc3MgICAgICAgIDEwIENEQyBEYXRhCiAgICAgIGJJbnRlcmZhY2VT dWJDbGFzcyAgICAgIDAgVW51c2VkCiAgICAgIGJJbnRlcmZhY2VQcm90b2NvbCAgICAgIDAKICAg ICAgaUludGVyZmFjZSAgICAgICAgICAgICAgNCAoZXJyb3IpCiAgICAgIEVuZHBvaW50IERlc2Ny aXB0b3I6CiAgICAgICAgYkxlbmd0aCAgICAgICAgICAgICAgICAgOAogICAgICAgIGJEZXNjcmlw dG9yVHlwZSAgICAgICAgIDUKICAgICAgICBiRW5kcG9pbnRBZGRyZXNzICAgICAweDAxICBFUCAx IE9VVAogICAgICAgIGJtQXR0cmlidXRlcyAgICAgICAgICAgIDIKICAgICAgICAgIFRyYW5zZmVy IFR5cGUgICAgICAgICAgICBCdWxrCiAgICAgICAgICBTeW5jaCBUeXBlICAgICAgICAgICAgICAg Tm9uZQogICAgICAgICAgVXNhZ2UgVHlwZSAgICAgICAgICAgICAgIERhdGEKICAgICAgICB3TWF4 UGFja2V0U2l6ZSAgICAgMHgwMjAwICAxeCA1MTIgYnl0ZXMKICAgICAgICBiSW50ZXJ2YWwgICAg ICAgICAgICAgICAwCiAgICAgIEVuZHBvaW50IERlc2NyaXB0b3I6CiAgICAgICAgYkxlbmd0aCAg ICAgICAgICAgICAgICAgOAogICAgICAgIGJEZXNjcmlwdG9yVHlwZSAgICAgICAgIDUKICAgICAg ICBiRW5kcG9pbnRBZGRyZXNzICAgICAweDgxICBFUCAxIElOCiAgICAgICAgYm1BdHRyaWJ1dGVz ICAgICAgICAgICAgMgogICAgICAgICAgVHJhbnNmZXIgVHlwZSAgICAgICAgICAgIEJ1bGsKICAg ICAgICAgIFN5bmNoIFR5cGUgICAgICAgICAgICAgICBOb25lCiAgICAgICAgICBVc2FnZSBUeXBl ICAgICAgICAgICAgICAgRGF0YQogICAgICAgIHdNYXhQYWNrZXRTaXplICAgICAweDAyMDAgIDF4 IDUxMiBieXRlcwogICAgICAgIGJJbnRlcnZhbCAgICAgICAgICAgICAgIDAKICAgIEludGVyZmFj ZSBEZXNjcmlwdG9yOgogICAgICBiTGVuZ3RoICAgICAgICAgICAgICAgICA5CiAgICAgIGJEZXNj cmlwdG9yVHlwZSAgICAgICAgIDQKICAgICAgYkludGVyZmFjZU51bWJlciAgICAgICAgMAogICAg ICBiQWx0ZXJuYXRlU2V0dGluZyAgICAgICAwCiAgICAgIGJOdW1FbmRwb2ludHMgICAgICAgICAg IDEKICAgICAgYkludGVyZmFjZUNsYXNzICAgICAgICAgMiBDb21tdW5pY2F0aW9ucwogICAgICBi SW50ZXJmYWNlU3ViQ2xhc3MgICAgICAyIEFic3RyYWN0IChtb2RlbSkKICAgICAgYkludGVyZmFj ZVByb3RvY29sICAgICAgMSBBVC1jb21tYW5kcyAodi4yNXRlcikKICAgICAgaUludGVyZmFjZSAg ICAgICAgICAgICAgNSAoZXJyb3IpCiAgICAgIENEQyBIZWFkZXI6CiAgICAgICAgYmNkQ0RDICAg ICAgICAgICAgICAgMS4xMAogICAgICBDREMgQUNNOgogICAgICAgIGJtQ2FwYWJpbGl0aWVzICAg ICAgIDB4MGYKICAgICAgICAgIGNvbm5lY3Rpb24gbm90aWZpY2F0aW9ucwogICAgICAgICAgc2Vu ZHMgYnJlYWsKICAgICAgICAgIGxpbmUgY29kaW5nIGFuZCBzZXJpYWwgc3RhdGUKICAgICAgICAg IGdldC9zZXQvY2xlYXIgY29tbSBmZWF0dXJlcwogICAgICBDREMgVW5pb246CiAgICAgICAgYk1h c3RlckludGVyZmFjZSAgICAgICAgMQogICAgICAgIGJTbGF2ZUludGVyZmFjZSAgICAgICAgIDAK ICAgICAgQ0RDIENhbGwgTWFuYWdlbWVudDoKICAgICAgICBibUNhcGFiaWxpdGllcyAgICAgICAw eDAzCiAgICAgICAgICBjYWxsIG1hbmFnZW1lbnQKICAgICAgICAgIHVzZSBEYXRhSW50ZXJmYWNl CiAgICAgICAgYkRhdGFJbnRlcmZhY2UgICAgICAgICAgMAogICAgICBFbmRwb2ludCBEZXNjcmlw dG9yOgogICAgICAgIGJMZW5ndGggICAgICAgICAgICAgICAgIDgKICAgICAgICBiRGVzY3JpcHRv clR5cGUgICAgICAgICA1CiAgICAgICAgYkVuZHBvaW50QWRkcmVzcyAgICAgMHg4MyAgRVAgMyBJ TgogICAgICAgIGJtQXR0cmlidXRlcyAgICAgICAgICAgIDMKICAgICAgICAgIFRyYW5zZmVyIFR5 cGUgICAgICAgICAgICBJbnRlcnJ1cHQKICAgICAgICAgIFN5bmNoIFR5cGUgICAgICAgICAgICAg ICBOb25lCiAgICAgICAgICBVc2FnZSBUeXBlICAgICAgICAgICAgICAgRGF0YQogICAgICAgIHdN YXhQYWNrZXRTaXplICAgICAweDAwNDAgIDF4IDY0IGJ5dGVzCiAgICAgICAgYkludGVydmFsICAg ICAgICAgICAgICAxNgpEZXZpY2UgU3RhdHVzOiAgICAgMHgxM2YwCiAgKEJ1cyBQb3dlcmVkKQog IERlYnVnIE1vZGUKClJlZ2FyZHMsCk1hY3BhdWwgTGluCg==