From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=3.0 tests=BAYES_00, CHARSET_FARAWAY_HEADER,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id C35C8C433E3 for ; Thu, 23 Jul 2020 03:15:05 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id A34EF2084D for ; Thu, 23 Jul 2020 03:15:05 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1733229AbgGWDPC (ORCPT ); Wed, 22 Jul 2020 23:15:02 -0400 Received: from ZXSHCAS1.zhaoxin.com ([203.148.12.81]:31911 "EHLO ZXSHCAS1.zhaoxin.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1728902AbgGWDPC (ORCPT ); Wed, 22 Jul 2020 23:15:02 -0400 Received: from zxbjmbx2.zhaoxin.com (10.29.252.164) by ZXSHCAS1.zhaoxin.com (10.28.252.161) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1979.3; Thu, 23 Jul 2020 10:59:56 +0800 Received: from zxbjmbx2.zhaoxin.com (10.29.252.164) by zxbjmbx2.zhaoxin.com (10.29.252.164) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1979.3; Thu, 23 Jul 2020 10:59:55 +0800 Received: from zxbjmbx2.zhaoxin.com ([fe80::4d77:9dba:64a8:8ec3]) by zxbjmbx2.zhaoxin.com ([fe80::4d77:9dba:64a8:8ec3%4]) with mapi id 15.01.1979.003; Thu, 23 Jul 2020 10:59:55 +0800 From: "Weitao Wang(BJ-RD)" To: Alan Stern , Greg KH CC: WeitaoWang-oc , "mathias.nyman@linux.intel.com" , "ulf.hansson@linaro.org" , "vkoul@kernel.org" , "hslester96@gmail.com" , "linux-usb@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "Carsten_Schmid@mentor.com" , "efremov@linux.com" , "Tony W. Wang(XA-RD)" , "Cobe Chen(BJ-RD)" , "Tim Guo(BJ-RD)" , "wwt8723@163.com" Subject: =?gb2312?B?tPC4tDogW1BBVENIXSBVU0I6Rml4IGtlcm5lbCBOVUxMIHBvaW50ZXIgd2hl?= =?gb2312?Q?n_unbind_UHCI_form_vfio-pci?= Thread-Topic: [PATCH] USB:Fix kernel NULL pointer when unbind UHCI form vfio-pci Thread-Index: AQHWYB9UCUIuPM0Yq0GNAP42GB7Bv6kTBUEAgAAltoCAAUQSsA== Date: Thu, 23 Jul 2020 02:59:55 +0000 Message-ID: <1bf449377e3448bc9c8bc7b64d7b7990@zhaoxin.com> References: <1595419068-4812-1-git-send-email-WeitaoWang-oc@zhaoxin.com> <20200722124414.GA3153105@kroah.com> <20200722145913.GB1310843@rowland.harvard.edu> In-Reply-To: <20200722145913.GB1310843@rowland.harvard.edu> Accept-Language: zh-CN, en-US Content-Language: zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.29.8.32] Content-Type: text/plain; charset="gb2312" Content-Transfer-Encoding: base64 MIME-Version: 1.0 Sender: linux-usb-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-usb@vger.kernel.org DQpPbiAsIEp1bCAyMiwgMjAyMCBhdCAwMjo0NDoxNFBNICswMjAwLCBBbGFuIHdyb3RlOg0KPiBP biBXZWQsIEp1bCAyMiwgMjAyMCBhdCAwMjo0NDoxNFBNICswMjAwLCBHcmVnIEtIIHdyb3RlOg0K PiA+IE9uIFdlZCwgSnVsIDIyLCAyMDIwIGF0IDA3OjU3OjQ4UE0gKzA4MDAsIFdlaXRhb1dhbmdv YyB3cm90ZToNCj4gPiA+IFRoaXMgYnVnIGlzIGZvdW5kIGluIFpoYW94aW4gcGxhdGZvcm0sIGJ1 dCBpdCdzIGEgY29tbW9tIGNvZGUgYnVnLg0KPiA+ID4gRmFpbCBzZXF1ZW5jZToNCj4gPiA+IHN0 ZXAxOiBVbmJpbmQgVUhDSSBjb250cm9sbGVyIGZyb20gbmF0aXZlIGRyaXZlcjsNCj4gPiA+IHN0 ZXAyOiBCaW5kIFVIQ0kgY29udHJvbGxlciB0byB2ZmlvLXBjaSwgd2hpY2ggd2lsbCBwdXQgVUhD SSBjb250cm9sbGVyIGluIG9uZQ0KPiB2ZmlvDQo+ID4gPiAgICAgICAgZ3JvdXAncyBkZXZpY2Ug bGlzdCBhbmQgc2V0IFVIQ0kncyBkZXYtPmRyaXZlcl9kYXRhIHRvIHN0cnVjdA0KPiB2ZmlvLXBj aShmb3IgVUhDSSkNCj4gPg0KPiA+IEhhaCwgdGhhdCB3b3Jrcz8gIEhvdyBkbyB5b3UgZG8gdGhh dCBwcm9wZXJseT8gIFdoYXQgY29kZSBkb2VzIHRoYXQ/DQo+DQo+IFllYWgsIHRoYXQgY2FuJ3Qg cG9zc2libHkgd29yay4gIFRoZSBVU0IgY29yZSBleHBlY3RzIHRoYXQgYW55IGhvc3QNCj4gY29u dHJvbGxlciBkZXZpY2UgKG9yIGF0IGxlYXN0LCBhbnkgUENJIGhvc3QgY29udHJvbGxlciBkZXZp Y2UpIGhhcyBpdHMNCj4gZHJpdmVyX2RhdGEgc2V0IHRvIHBvaW50IHRvIGEgc3RydWN0IHVzYl9o Y2QuICBJdCBkb2Vzbid0IGV4cGVjdCBhIGhvc3QNCj4gY29udHJvbGxlciB0byBiZSBib3VuZCB0 byBhbnl0aGluZyBvdGhlciB0aGFuIGEgaG9zdCBjb250cm9sbGVyIGRyaXZlci4NCj4NCj4gVGhp bmdzIGNvdWxkIGVhc2lseSBnbyB2ZXJ5IHdyb25nIGhlcmUuICBGb3IgZXhhbXBsZSwgc3VwcG9z ZSBhdCB0aGlzDQo+IHBvaW50IHRoZSBlaGNpLWhjZCBkcml2ZXIganVzdCBoYXBwZW5zIHRvIGJp bmQgdG8gdGhlIEVIQ0kgY29udHJvbGxlci4NCj4gV2hlbiB0aGlzIGhhcHBlbnMsIHRoZSBFSENJ IGNvbnRyb2xsZXIgaGFyZHdhcmUgdGFrZXMgb3ZlciBhbGwgdGhlIFVTQg0KPiBjb25uZWN0aW9u cyB0aGF0IHdlcmUgcm91dGVkIHRvIHRoZSBVSENJIGNvbnRyb2xsZXIuICBIb3cgd2lsbCB2Zmlv LXBjaQ0KPiBkZWFsIHdpdGggdGhhdD8gIFByZXR0eSB1bmdyYWNlZnVsbHksIEkgaW1hZ2luZS4N Cj4NCj4gVGhlIG9ubHkgd2F5IHRvIG1ha2UgdGhpcyB3b3JrIGF0IGFsbCBpcyB0byB1bmJpbmQg Ym90aCB1aGNpLWhjZCBhbmQNCj4gZWhjaS1oY2QgZmlyc3QuICBUaGVuIGFmdGVyIGJvdGggYXJl IGZpbmlzaGVkIHlvdSBjYW4gc2FmZWx5IGJpbmQNCj4gdmZpby1wY2kgdG8gdGhlIEVIQ0kgY29u dHJvbGxlciBhbmQgdGhlIFVIQ0kgY29udHJvbGxlcnMgKGluIHRoYXQNCj4gb3JkZXIpLg0KPg0K SSdtIGFncmVlIHdpdGggeW91LCB1bmJpbmQgYm90aCB1aGNpLWhjZCBhbmQgZWhjaS1oY2QgZmly c3QgdGhlbiBiaW5kIHRvDQp2ZmlvLXBjaSBpcyBhIG1vcmUgcmVhc29uYWJsZSBzZXF1ZW5jZS4g T3VyIGV4cGVyaW1lbnRzIHByb3ZlIHRoYXQgdGhpcw0Kc2VxdWVuY2UgaXMgaW5kZWVkIGdvb2Qg YXMgZXhwZWN0ZWQuDQpIb3dldmVyLCBJIGRpZCBub3QgZmluZCBhIGZvcm1hbCBkb2N1bWVudCB0 byBwcmVzY3JpYmUgdGhpcyBvcmRlci4NClVuZm9ydHVuYXRlbHksIHNvbWUgYXBwbGljYXRpb24g c29mdHdhcmUgc3VjaCBhcyB2aXJ0LW1hbmFnZXIvcWVtdSBhc3NpZ24NClVIQ0kvRUhDSSB0byBn dWVzdCBPUyBoYXMgdGhlIHNhbWUgYmluZC91bmJpbmQgc2VxdWVuY2UgYXMgdGVzdCChsGJ5IGhh bmShsS4NCkRvIHdlIG5lZWQgdG8gY29uc2lkZXIgY29tcGF0aWJpbGl0eSB3aXRoIHRoaXMgYXBw bGljYXRpb24gc2NlbmFyaW8/DQoNClRoZSBmb2xsb3dpbmcgbG9nIGlzIGNhcHR1cmVkIHdoZW4g c3RhcnRpbmcgdGhlbiBzaHV0ZG93biB0aGUNCnZpcnR1YWwgbWFjaGluZS4NCg0KLyogc3RhcnRp bmcgdmlydHVhbCBtYWNoaW5lKi8NClsgMjc4NS4yNTAwMDFdIGF1ZGl0OiB0eXBlPTE0MDAgYXVk aXQoMTU5NDM3NTgzNy4xOTE6NDgpOiBhcHBhcm1vcj0iU1RBVFVTIiBvcGVyYXRpb249InByb2Zp bGVfbG9hZCIgcHJvZmlsZT0idW5jb25maW5lZCIgbmFtZT0ibGlidmlydC1mYTY3NGU3My02N2Ey LTQ2NzItODUyNC1lNjJkZWE4YTNjNmMiIHBpZD0yMDA4IGNvbW09ImFwcGFybW9yX3BhcnNlciIN ClsgMjc4NS40Njc1MTBdIHVoY2lfaGNkIDAwMDA6MDA6MTAuMDogcmVtb3ZlLCBzdGF0ZSA0DQpb IDI3ODUuNDcyNDI2XSB1c2IgdXNiMTogVVNCIGRpc2Nvbm5lY3QsIGRldmljZSBudW1iZXIgMQ0K LypiaW5kIDAwMDA6MDA6MTAuMCB0byB2ZmlvLXBjaSovDQpbIDI3ODUuNDc4Nzk4XSB1aGNpX2hj ZCAwMDAwOjAwOjEwLjA6IFVTQiBidXMgMSBkZXJlZ2lzdGVyZWQNClsgMjc4NS41Njg3NDFdIHVo Y2lfaGNkIDAwMDA6MDA6MTAuMTogcmVtb3ZlLCBzdGF0ZSAxDQpbIDI3ODUuNTczNTYyXSB1c2Ig dXNiMjogVVNCIGRpc2Nvbm5lY3QsIGRldmljZSBudW1iZXIgMQ0KWyAyNzg1LjU3ODc5M10gdXNi IDItMjogVVNCIGRpc2Nvbm5lY3QsIGRldmljZSBudW1iZXIgMw0KWyAyNzg1Ljc1ODAxNl0gdWhj aV9oY2QgMDAwMDowMDoxMC4xOiBVU0IgYnVzIDIgZGVyZWdpc3RlcmVkDQovKmJpbmQgMDAwMDow MDoxMC4xIHRvIHZmaW8tcGNpKi8NClsgMjc4Ni4wMzc0NDhdIGVoY2ktcGNpIDAwMDA6MDA6MTAu NzogcmVtb3ZlLCBzdGF0ZSA0DQpbIDI3ODYuMDQyNDYwXSB1c2IgdXNiMzogVVNCIGRpc2Nvbm5l Y3QsIGRldmljZSBudW1iZXIgMQ0KWyAyNzg2LjA0ODcwMF0gZWhjaS1wY2kgMDAwMDowMDoxMC43 OiBVU0IgYnVzIDMgZGVyZWdpc3RlcmVkDQovKmJpbmQgMDAwMDowMDoxMC43IHRvIHZmaW8tcGNp Ki8NClsgMjc4Ny41MTgwNDFdIGF1ZGl0OiB0eXBlPTE0MDAgYXVkaXQoMTU5NDM3NTgzOS40NTk6 NDkpOiBhcHBhcm1vcj0iU1RBVFVTIiBvcGVyYXRpb249InByb2ZpbGVfcmVwbGFjZSIgcHJvZmls ZT0idW5jb25maW5lZCIgbmFtZT0ibGlidmlydC1mYTY3NGU3My02N2EyLTQ2NzItODUyNC1lNjJk ZWE4YTNjNmMiIHBpZD0yMDM0IGNvbW09ImFwcGFybW9yX3BhcnNlciINClsgMjc4OC4yOTA3MDZd IGF1ZGl0OiB0eXBlPTE0MDAgYXVkaXQoMTU5NDM3NTg0MC4yMzE6NTApOiBhcHBhcm1vcj0iU1RB VFVTIiBvcGVyYXRpb249InByb2ZpbGVfcmVwbGFjZSIgcHJvZmlsZT0idW5jb25maW5lZCIgbmFt ZT0ibGlidmlydC1mYTY3NGU3My02N2EyLTQ2NzItODUyNC1lNjJkZWE4YTNjNmMiIHBpZD0yMDM3 IGNvbW09ImFwcGFybW9yX3BhcnNlciINClsgMjc4OC45NjAwNzBdIGF1ZGl0OiB0eXBlPTE0MDAg YXVkaXQoMTU5NDM3NTg0MC44OTk6NTEpOiBhcHBhcm1vcj0iU1RBVFVTIiBvcGVyYXRpb249InBy b2ZpbGVfcmVwbGFjZSIgaW5mbz0ic2FtZSBhcyBjdXJyZW50IHByb2ZpbGUsIHNraXBwaW5nIiBw cm9maWxlPSJ1bmNvbmZpbmVkIiBuYW1lPSJsaWJ2aXJ0LWZhNjc0ZTczLTY3YTItNDY3Mi04NTI0 LWU2MmRlYThhM2M2YyIgcGlkPTIwNDAgY29tbT0iYXBwYXJtb3JfcGFyc2VyIg0KWyAyNzg4Ljk2 ODgyMV0gdmlyYnIwOiBwb3J0IDIodm5ldDApIGVudGVyZWQgYmxvY2tpbmcgc3RhdGUNClsgMjc4 OC45ODgxNTldIHZpcmJyMDogcG9ydCAyKHZuZXQwKSBlbnRlcmVkIGRpc2FibGVkIHN0YXRlDQpb IDI3ODguOTkzNzExXSBkZXZpY2Ugdm5ldDAgZW50ZXJlZCBwcm9taXNjdW91cyBtb2RlDQpbIDI3 ODguOTk5NDUzXSB2aXJicjA6IHBvcnQgMih2bmV0MCkgZW50ZXJlZCBibG9ja2luZyBzdGF0ZQ0K WyAyNzg5LjAwNTA1M10gdmlyYnIwOiBwb3J0IDIodm5ldDApIGVudGVyZWQgbGlzdGVuaW5nIHN0 YXRlDQpbIDI3ODkuMDk4NzE3XSBzeXN0ZW1kLWpvdXJuYWxkWzI4Nl06IFN1Y2Nlc3NmdWxseSBz ZW50IHN0cmVhbSBmaWxlIGRlc2NyaXB0b3IgdG8gc2VydmljZSBtYW5hZ2VyLg0KWyAyNzg5LjU2 NDI0MV0gYXVkaXQ6IHR5cGU9MTQwMCBhdWRpdCgxNTk0Mzc1ODQxLjUwNzo1Mik6IGFwcGFybW9y PSJTVEFUVVMiIG9wZXJhdGlvbj0icHJvZmlsZV9yZXBsYWNlIiBwcm9maWxlPSJ1bmNvbmZpbmVk IiBuYW1lPSJsaWJ2aXJ0LWZhNjc0ZTczLTY3YTItNDY3Mi04NTI0LWU2MmRlYThhM2M2YyIgcGlk PTIwNjUgY29tbT0iYXBwYXJtb3JfcGFyc2VyIg0KWyAyNzkxLjAyODAyOF0gdmlyYnIwOiBwb3J0 IDIodm5ldDApIGVudGVyZWQgbGVhcm5pbmcgc3RhdGUNClsgMjc5My4wNDc5OTldIHZpcmJyMDog cG9ydCAyKHZuZXQwKSBlbnRlcmVkIGZvcndhcmRpbmcgc3RhdGUNClsgMjc5My4wNTM0NDldIHZp cmJyMDogdG9wb2xvZ3kgY2hhbmdlIGRldGVjdGVkLCBwcm9wYWdhdGluZw0KWyAyNzkzLjQzMzYw NF0gdmZpb19jYXBfaW5pdDogMDAwMDowMDoxMC43IGhpZGluZyBjYXAgMHhhDQoNCi8qIHNodXRk b3duIHZpcnR1YWwgbWFjaGluZSovDQpbIDM4MzguNzcyMDU4XSBzeXN0ZW1kLWpvdXJuYWxkWzI4 Nl06IFN1Y2Nlc3NmdWxseSBzZW50IHN0cmVhbSBmaWxlIGRlc2NyaXB0b3IgdG8gc2VydmljZSBt YW5hZ2VyLg0KWyAzODM4LjgxNTgxOV0gc3lzdGVtZC1qb3VybmFsZFsyODZdOiBTdWNjZXNzZnVs bHkgc2VudCBzdHJlYW0gZmlsZSBkZXNjcmlwdG9yIHRvIHNlcnZpY2UgbWFuYWdlci4NClsgMzgz OC44NzEwMDJdIHN5c3RlbWQtam91cm5hbGRbMjg2XTogU3VjY2Vzc2Z1bGx5IHNlbnQgc3RyZWFt IGZpbGUgZGVzY3JpcHRvciB0byBzZXJ2aWNlIG1hbmFnZXIuDQpbIDM4MzguODg0NjA2XSBzeXN0 ZW1kLWpvdXJuYWxkWzI4Nl06IFN1Y2Nlc3NmdWxseSBzZW50IHN0cmVhbSBmaWxlIGRlc2NyaXB0 b3IgdG8gc2VydmljZSBtYW5hZ2VyLg0KWyAzODM4Ljg5NDUxNF0gc3lzdGVtZC1qb3VybmFsZFsy ODZdOiBTdWNjZXNzZnVsbHkgc2VudCBzdHJlYW0gZmlsZSBkZXNjcmlwdG9yIHRvIHNlcnZpY2Ug bWFuYWdlci4NClsgMzgzOC44OTY3OTFdIHJma2lsbDogaW5wdXQgaGFuZGxlciBlbmFibGVkDQpb IDM4MzguOTAzODk2XSBzeXN0ZW1kLWpvdXJuYWxkWzI4Nl06IFN1Y2Nlc3NmdWxseSBzZW50IHN0 cmVhbSBmaWxlIGRlc2NyaXB0b3IgdG8gc2VydmljZSBtYW5hZ2VyLg0KWyAzODM4LjkwNzk5OF0g c3lzdGVtZFsxXTogU2VudCBtZXNzYWdlIHR5cGU9c2lnbmFsIHNlbmRlcj1uL2EgZGVzdGluYXRp b249bi9hIHBhdGg9L29yZy9mcmVlZGVza3RvcC9zeXN0ZW1kMS91bml0L3BhY2thZ2VraXRfMmVz ZXJ2aWNlIGludGVyZmFjZT1vcmcuZnJlZWRlc2t0b3AuREJ1cy5Qcm9wZXJ0aWVzIG1lbWJlcj1Q cm9wZXJ0aWVzQ2hhbmdlZCBjb29raWU9OTUyIHJlcGx5X2Nvb2tpZT0wIHNpZ25hdHVyZT1zYXtz dn1hcyBlcnJvci1uYW1lPW4vYSBlcnJvci1tZXNzYWdlPW4vYQ0KWyAzODM4Ljk0OTUwMF0gc3lz dGVtZC1qb3VybmFsZFsyODZdOiBTdWNjZXNzZnVsbHkgc2VudCBzdHJlYW0gZmlsZSBkZXNjcmlw dG9yIHRvIHNlcnZpY2UgbWFuYWdlci4NClsgMzgzOS4wMDI3NTddIHN5c3RlbWQtam91cm5hbGRb Mjg2XTogU3VjY2Vzc2Z1bGx5IHNlbnQgc3RyZWFtIGZpbGUgZGVzY3JpcHRvciB0byBzZXJ2aWNl IG1hbmFnZXIuDQpbIDM4MzkuMTgyMDUzXSBzeXN0ZW1kLWpvdXJuYWxkWzI4Nl06IFN1Y2Nlc3Nm dWxseSBzZW50IHN0cmVhbSBmaWxlIGRlc2NyaXB0b3IgdG8gc2VydmljZSBtYW5hZ2VyLg0KWyAz ODM5LjE5MTMxM10gc3lzdGVtZC1qb3VybmFsZFsyODZdOiBTdWNjZXNzZnVsbHkgc2VudCBzdHJl YW0gZmlsZSBkZXNjcmlwdG9yIHRvIHNlcnZpY2UgbWFuYWdlci4NClsgMzgzOC4zMDI3MjVdIGxp YnZpcnQtZ3Vlc3RzLnNoWzIxNjFdOiBSdW5uaW5nIGd1ZXN0cyBvbiBkZWZhdWx0IFVSSTogZ2Vu ZXJpYw0KWyAzODM4LjMwNjc4M10gbGlidmlydC1ndWVzdHMuc2hbMjE2MV06IFNodXR0aW5nIGRv d24gZ3Vlc3RzIG9uIGRlZmF1bHQgVVJJLi4uDQpbIDM4MzguNDE1MTAzXSBsaWJ2aXJ0LWd1ZXN0 cy5zaFsyMTYxXTogU3RhcnRpbmcgc2h1dGRvd24gb24gZ3Vlc3Q6IGdlbmVyaWMNCnBseW1vdXRo LXBvd2Vyb2ZmLnNlcnZpY2UNClsgIE9LICBdIFN0b3BwZWQgRmlybXdhcmUgdXBkYXRlIGRhZW1v bi4NClsgIE9LICBdIFN0b3BwZWQgU2Vzc2lvbiAxIG9mIHVzZXIgd2FuZy4NClsgIE9LICBdIFJl bW92ZWQgc2xpY2UgVXNlciBTbGljZSBvZiB3YW5nLg0KICAgICAgICAgU3RvcHBpbmcgUGVybWl0 IFVzZXIgU2Vzc2lvbnMuLi4NCiAgICAgICAgIFN0b3BwaW5nIExvZ2luIFNlcnZpY2UuLi4NClsg IE9LICBdIFN0b3BwZWQgUGVybWl0IFVzZXIgU2Vzc2lvbnMuDQpbICBPSyAgXSBVbm1vdW50ZWQg TW91bnQgdW5pdCBmb3IgY29yZSwgcmV2aXNpb24gOTI4OS4NClsgIE9LICBdIFVubW91bnRlZCBN b3VudCB1bml0IGZvciBnbm9tZS1zeXN0ZW0tbW9uaXRvciwgcmV2aXNpb24gMTQ4Lg0KWyAgT0sg IF0gVW5tb3VudGVkIE1vdW50IHVuaXQgZm9yIGdub21lLTMtMzQtMTgwNCwgcmV2aXNpb24gMzMu DQpbICBPSyAgXSBVbm1vdW50ZWQgTW91bnQgdW5pdCBmb3IgZ25vbWUtbG9ncywgcmV2aXNpb24g ODEuDQpbICBPSyAgXSBVbm1vdW50ZWQgTW91bnQgdW5pdCBmb3IgY29yZTE4LCByZXZpc2lvbiAx NzU0Lg0KWyAgT0sgIF0gVW5tb3VudGVkIE1vdW50IHVuaXQgZm9yIGdub21lLTMtMjgtMTgwNCwg cmV2aXNpb24gMTE2Lg0KWyAgT0sgIF0gVW5tb3VudGVkIE1vdW50IHVuaXQgZm9yIGdub21lLWNo YXJhY3RlcnMsIHJldmlzaW9uIDU1MC4NClsgIE9LICBdIFVubW91bnRlZCBNb3VudCB1bml0IGZv ciBnbm9tZS0zLTM0LTE4MDQsIHJldmlzaW9uIDM2Lg0KWyAgT0sgIF0gVW5tb3VudGVkIE1vdW50 IHVuaXQgZm9yIGNvcmUsIHJldmlzaW9uIDk0MzYuDQpbICBPSyAgXSBVbm1vdW50ZWQgTW91bnQg dW5pdCBmb3IgZ25vbWUtY2hhcmFjdGVycywgcmV2aXNpb24gNTM5Lg0KWyAgT0sgIF0gVW5tb3Vu dGVkIE1vdW50IHVuaXQgZm9yIGd0ay1jb21tb24tdGhlbWVzLCByZXZpc2lvbiAxNDQwLg0KWyAg T0sgIF0gVW5tb3VudGVkIE1vdW50IHVuaXQgZm9yIGd0ay1jb21tb24tdGhlbWVzLCByZXZpc2lv biAxNTA2Lg0KWyAgT0sgIF0gVW5tb3VudGVkIE1vdW50IHVuaXQgZm9yIGNvcmUxOCwgcmV2aXNp b24gMTY2OC4NClsgIE9LICBdIFVubW91bnRlZCBNb3VudCB1bml0IGZvciBnbm9tZS1jYWxjdWxh dG9yLCByZXZpc2lvbiA1NDQuDQpbICBPSyAgXSBVbm1vdW50ZWQgTW91bnQgdW5pdCBmb3IgZ25v bWUtY2FsY3VsYXRvciwgcmV2aXNpb24gNzQ4Lg0KWyAgT0sgIF0gVW5tb3VudGVkIE1vdW50IHVu aXQgZm9yIGdub21lLWxvZ3MsIHJldmlzaW9uIDEwMC4NClsgIE9LICBdIFVubW91bnRlZCBNb3Vu dCB1bml0IGZvciBnbm9tZS0zLTI4LTE4MDQsIHJldmlzaW9uIDEyOC4NClsgIE9LICBdIFN0b3Bw ZWQgTG9naW4gU2VydmljZS4NClsgIE9LICBdIFN0b3BwZWQgdGFyZ2V0IFVzZXIgYW5kIEdyb3Vw IE5hbWUgTG9va3Vwcy4NClsgMzgzOS40NzE2MzVdIGxpYnZpcnQtZ3Vlc3RzLnNoWzIxNjFdOiBX YWl0aW5nIGZvciAxIGd1ZXN0cyB0byBzaHV0IGRvd24sIDEyMCBzZWNvbmRzIGxlZnQNClsgMzg0 MS44MjQ4NDJdIHZpcmJyMDogcG9ydCAyKHZuZXQwKSBlbnRlcmVkIGRpc2FibGVkIHN0YXRlDQpb IDM4NDEuODMyOTQ5XSBkZXZpY2Ugdm5ldDAgbGVmdCBwcm9taXNjdW91cyBtb2RlDQpbIDM4NDEu ODM3MzkzXSB2aXJicjA6IHBvcnQgMih2bmV0MCkgZW50ZXJlZCBkaXNhYmxlZCBzdGF0ZQ0KW1sg Mzg0My4xNjc0OTVdIGF1ZGl0OiB0eXBlPTE0MDAgYXVkaXQoMTU5NDM3Njg5NS4xMDc6NTMpOiBh cHBhcm1vcj0iU1RBVFVTIiBvcGVyYXRpb249InByb2ZpbGVfcmVtb3ZlIiBwcm9maWxlPSJ1bmNv bmZpbmVkIiBuYW1lPSJsaWJ2aXJ0LWZhNjc0ZTczLTY3YTItNDY3Mi04NTI0LWU2MmRlYThhM2M2 YyIgcGlkPTIzMDEgY29tbT0iYXBwYXJtb3JfcGFyc2VyIg0KWyAzODQzLjI0NjM5N10gQlVHOiB1 bmFibGUgdG8gaGFuZGxlIGtlcm5lbCBOVUxMIHBvaW50ZXIgZGVyZWZlcmVuY2UgYXQgMDAwMDAw MDAwMDAwMDAwMA0KWyAzODQzLjI1NDE1N10gUEdEIDAgUDREIDANClsgMzg0My4yNTY2NzFdIE9v cHM6IDAwMDIgWyMxXSBTTVAgTk9QVEkNClsgMzg0My4yNjAzMDFdIENQVTogMSBQSUQ6IDE4MTIg Q29tbTogbGlidmlydGQgTm90IHRhaW50ZWQgNC4xOS42NSAjMTANClsgMzg0My4yNjY1MTFdIEhh cmR3YXJlIG5hbWU6IFNoYW5naGFpIFpoYW94aW4gU2VtaWNvbmR1Y3RvciBDby4sIEx0ZC4gSFgw MDJFQS9IWDAwMkVBLCBCSU9TIEhYMDAyRUEwXzAzX1I0OTBfRF8yMDA3MDcgMDcvMDcvMjAyMA0K WyAzODQzLjI3NzgwNF0gUklQOiAwMDEwOnZmaW9fZGV2aWNlX3B1dCsweGE1LzB4MTQwIFt2Zmlv XQ0KWyAzODQzLjI4MzEyOV0gQ29kZTogMWMgNGUgY2UgNDggOGIgNzMgMjggNDggOGIgNTMgMjAg NDggYzcgYzcgNDggNTQgNjEgYzAgZTggNTEgMWMgNGUgY2UgNDggOGIgNTMgMjAgNDggOGIgNDMg MjggNDggYzcgYzcgODAgNTQgNjEgYzAgNDggODkgNDIgMDggPDQ4PiA4OSAxMCA0OCBiOCAwMCAw MSAwMCAwMCAwMCAwMCBhZCBkZSA0OCA4OSA0MyAyMCA0OCAwNSAwMCAwMSAwMA0KWyAzODQzLjMw MTcyNl0gUlNQOiAwMDE4OmZmZmY4ZmRlMjIxMGJjMjggRUZMQUdTOiAwMDAxMDI4Mg0KWyAzODQz LjMwNjkwNV0gUkFYOiAwMDAwMDAwMDAwMDAwMDAwIFJCWDogZmZmZjhmZGUxYTU5ZWQwMCBSQ1g6 IDAwMDAwMDAwMDAwMDAwMDANClsgMzg0My4zMTM5NzVdIFJEWDogZmZmZjhmZGRlMjdkNjgyMCBS U0k6IGZmZmY4ZmRlMmZhOTY0MzggUkRJOiBmZmZmZmZmZmMwNjE1NDgwDQpbIDM4NDMuMzIxMTE4 XSBSQlA6IGZmZmY4ZmRlMjIxMGJjNDggUjA4OiAwMDAwMDAwMDAwMDAwYzkwIFIwOTogM2Q3NDc4 NjU2ZTJjMzAzZA0KWyAzODQzLjMyODE5MF0gUjEwOiBmZmZmOGZkZGUyMjg0NTIwIFIxMTogMzAz MjM4MzY2NDM3MzI2NSBSMTI6IGZmZmY4ZmRkZTI3ZDY4MDANClsgMzg0My4zMzUzMTRdIFIxMzog ZmZmZjhmZGUxYTU5ZWQyMCBSMTQ6IGZmZmY4ZmRkZTI3ZDY4MDAgUjE1OiAwMDAwMDAwMDAwMDAw MDAwDQpbIDM4NDMuMzQyMzkwXSBGUzogIDAwMDA3ZjkxZmUzZDY3MDAoMDAwMCkgR1M6ZmZmZjhm ZGUyZmE4MDAwMCgwMDAwKSBrbmxHUzowMDAwMDAwMDAwMDAwMDAwDQpbIDM4NDMuMzUwNDU3XSBD UzogIDAwMTAgRFM6IDAwMDAgRVM6IDAwMDAgQ1IwOiAwMDAwMDAwMDgwMDUwMDMzDQpbIDM4NDMu MzU2MjIxXSBDUjI6IDAwMDAwMDAwMDAwMDAwMDAgQ1IzOiAwMDAwMDAwNDI1ZmVjMDA1IENSNDog MDAwMDAwMDAwMDE2MGVlMA0KWyAzODQzLjM2MzMxMl0gQ2FsbCBUcmFjZToNClsgMzg0My4zNjU3 NzhdICB2ZmlvX2RlbF9ncm91cF9kZXYrMHgxMDUvMHgyZTAgW3ZmaW9dDQpbIDM4NDMuMzcwNTM3 XSAgPyBkb193YWl0X2ludHJfaXJxKzB4OTAvMHg5MA0KWyAzODQzLjM3NDU1MF0gID8gdnByaW50 a19mdW5jKzB4NDcvMHhjMA0KWyAzODQzLjM3ODIwMl0gIHZmaW9fcGNpX3JlbW92ZSsweDIwLzB4 ZTAgW3ZmaW9fcGNpXQ0KWyAzODQzLjM4MjkwMF0gIHBjaV9kZXZpY2VfcmVtb3ZlKzB4NTEvMHhk MA0KWyAzODQzLjM4Njc5OV0gIGRldmljZV9yZWxlYXNlX2RyaXZlcl9pbnRlcm5hbCsweDE4ZC8w eDI1MA0KWyAzODQzLjM5MjA0Ml0gIGRldmljZV9yZWxlYXNlX2RyaXZlcisweDEyLzB4MjANClsg Mzg0My4zOTYzMjRdICB1bmJpbmRfc3RvcmUrMHhiZC8weDE5MA0KWyAzODQzLjM5OTg2OV0gIGRy dl9hdHRyX3N0b3JlKzB4MjcvMHg0MA0KWyAzODQzLjQwMzU0MV0gIHN5c2ZzX2tmX3dyaXRlKzB4 M2MvMHg1MA0KWyAzODQzLjQwNzI1MV0gIGtlcm5mc19mb3Bfd3JpdGUrMHgxMjUvMHgxYTANClsg Mzg0My40MTE0MzFdICBfX3Zmc193cml0ZSsweDNhLzB4MTkwDQpbIDM4NDMuNDE0OTAyXSAgPyBh cHBhcm1vcl9maWxlX3Blcm1pc3Npb24rMHgxYS8weDIwDQpbIDM4NDMuNDE5NjQ4XSAgPyBzZWN1 cml0eV9maWxlX3Blcm1pc3Npb24rMHgzMS8weGMwDQpbIDM4NDMuNDI0NjQ4XSAgPyBfY29uZF9y ZXNjaGVkKzB4MTkvMHg0MA0KWyAzODQzLjQyODQwN10gIHZmc193cml0ZSsweGIxLzB4MWEwDQpb IDM4NDMuNDMxNjk2XSAga3N5c193cml0ZSsweDVjLzB4ZTANClsgMzg0My40MzUwNDhdICBfX3g2 NF9zeXNfd3JpdGUrMHgxYS8weDIwDQpbIDM4NDMuNDM5MDU2XSAgZG9fc3lzY2FsbF82NCsweDVh LzB4MTIwDQpbIDM4NDMuNDQyNzEzXSAgZW50cnlfU1lTQ0FMTF82NF9hZnRlcl9od2ZyYW1lKzB4 NDQvMHhhOQ0KWyAzODQzLjQ0Nzc1N10gUklQOiAwMDMzOjB4N2Y5MjRlMjkwMmI3DQpbIDM4NDMu NDUxMzg1XSBDb2RlOiA0NCAwMCAwMCA0MSA1NCA1NSA0OSA4OSBkNCA1MyA0OCA4OSBmNSA4OSBm YiA0OCA4MyBlYyAxMCBlOCA1YiBmZCBmZiBmZiA0YyA4OSBlMiA0MSA4OSBjMCA0OCA4OSBlZSA4 OSBkZiBiOCAwMSAwMCAwMCAwMCAwZiAwNSA8NDg+IDNkIDAwIGYwIGZmIGZmIDc3IDM1IDQ0IDg5 IGM3IDQ4IDg5IDQ0IDI0IDA4IGU4IDk0IGZkIGZmIGZmIDQ4DQpbIDM4NDMuNDcwNjk2XSBSU1A6 IDAwMmI6MDAwMDdmOTFmZTNkNTgxMCBFRkxBR1M6IDAwMDAwMjkzIE9SSUdfUkFYOiAwMDAwMDAw MDAwMDAwMDAxDQpbIDM4NDMuNDc4NTA4XSBSQVg6IGZmZmZmZmZmZmZmZmZmZGEgUkJYOiAwMDAw MDAwMDAwMDAwMDE2IFJDWDogMDAwMDdmOTI0ZTI5MDJiNw0KWyAzODQzLjQ4NTYyN10gUkRYOiAw MDAwMDAwMDAwMDAwMDBjIFJTSTogMDAwMDdmOTIxMDAxYzc4NCBSREk6IDAwMDAwMDAwMDAwMDAw MTYNClsgMzg0My40OTMwMDFdIFJCUDogMDAwMDdmOTIxMDAxYzc4NCBSMDg6IDAwMDAwMDAwMDAw MDAwMDAgUjA5OiAwMDAwMDAwMDAwMDAwMDBkDQpbIDM4NDMuNTAwMTIwXSBSMTA6IDAwMDAwMDAw MDAwMDAwMDAgUjExOiAwMDAwMDAwMDAwMDAwMjkzIFIxMjogMDAwMDAwMDAwMDAwMDAwYw0KWyAz ODQzLjUwNzQxM10gUjEzOiAwMDAwMDAwMDAwMDAwMDAwIFIxNDogMDAwMDAwMDAwMDAwMDAxNiBS MTU6IDAwMDA3ZjkxZTgxMTJlMjANClsgMzg0My41MTQ1NDFdIE1vZHVsZXMgbGlua2VkIGluOiB2 ZmlvX3BjaSB2ZmlvX3ZpcnFmZCB2ZmlvX2lvbW11X3R5cGUxIHZmaW8geHRfQ0hFQ0tTVU0gaXB0 YWJsZV9tYW5nbGUgaXB0X01BU1FVRVJBREUgaXB0YWJsZV9uYXQgbmZfbmF0X2lwdjQgbmZfbmF0 IHh0X2Nvbm50cmFjayBuZl9jb25udHJhY2sgbmZfZGVmcmFnX2lwdjYgbmZfZGVmcmFnX2lwdjQg bGliY3JjMzJjIGlwdF9SRUpFQ1QgbmZfcmVqZWN0X2lwdjQgeHRfdGNwdWRwIGJyaWRnZSBzdHAg bGxjIGVidGFibGVfZmlsdGVyIGVidGFibGVzIGlwNnRhYmxlX2ZpbHRlciBpcDZfdGFibGVzIGlw dGFibGVfZmlsdGVyIGJwZmlsdGVyIGFtZGdwdSBjaGFzaCBncHVfc2NoZWQgbmxzX2lzbzg4NTlf MSBzbmRfaGRhX2NvZGVjX2hkbWkgcmFkZW9uIHNuZF9oZGFfaW50ZWwgc25kX2hkYV9jb2RlYyBz bmRfaGRhX2NvcmUgc25kX2h3ZGVwIHNuZF9wY20gdmlhX2NwdXRlbXAgaHdtb25fdmlkIGt2bV9p bnRlbCBrdm0gc25kX3NlcV9taWRpIHR0bSBzbmRfc2VxX21pZGlfZXZlbnQgaXJxYnlwYXNzIHNu ZF9yYXdtaWRpIGNyY3QxMGRpZl9wY2xtdWwgY3JjMzJfcGNsbXVsIGRybV9rbXNfaGVscGVyIGdo YXNoX2NsbXVsbmlfaW50ZWwgc25kX3NlcSBwY2JjIGFlc25pX2ludGVsIGFlc194ODZfNjQgY3J5 cHRvX3NpbWQgZHJtIHNuZF9zZXFfZGV2aWNlIGNyeXB0ZCBnbHVlX2hlbHBlciBqb3lkZXYgc25k X3RpbWVyIGlucHV0X2xlZHMgc2VyaW9fcmF3IHNuZCBpMmNfYWxnb19iaXQgZmJfc3lzX2ZvcHMg c3lzY29weWFyZWEgdmlkZW8gc3lzZmlsbHJlY3Qgc3lzaW1nYmx0DQpbIDM4NDMuNTg2NDYzXSAg c291bmRjb3JlIG1hY19oaWQgc2NoX2ZxX2NvZGVsIHBhcnBvcnRfcGMgcHBkZXYgbHAgcGFycG9y dCBpcF90YWJsZXMgeF90YWJsZXMgYXV0b2ZzNCBoaWRfZ2VuZXJpYyBhaGNpIHBzbW91c2Ugcjgx NjkgdXNiaGlkIGhpZCBsaWJhaGNpIHJlYWx0ZWsNClsgMzg0My42MDA2MzddIENSMjogMDAwMDAw MDAwMDAwMDAwMA0KWyAzODQzLjYwNDEwOF0gLS0tWyBlbmQgdHJhY2UgNjVkNzI2MjNiODRiZjdh MyBdLS0tDQpbIDM4NDMuNjA4ODM5XSBSSVA6IDAwMTA6dmZpb19kZXZpY2VfcHV0KzB4YTUvMHgx NDAgW3ZmaW9dDQpbIDM4NDMuNjE0MjA5XSBDb2RlOiAxYyA0ZSBjZSA0OCA4YiA3MyAyOCA0OCA4 YiA1MyAyMCA0OCBjNyBjNyA0OCA1NCA2MSBjMCBlOCA1MSAxYyA0ZSBjZSA0OCA4YiA1MyAyMCA0 OCA4YiA0MyAyOCA0OCBjNyBjNyA4MCA1NCA2MSBjMCA0OCA4OSA0MiAwOCA8NDg+IDg5IDEwIDQ4 IGI4IDAwIDAxIDAwIDAwIDAwIDAwIGFkIGRlIDQ4IDg5IDQzIDIwIDQ4IDA1IDAwIDAxIDAwDQpb IDM4NDMuNjMzNDE5XSBSU1A6IDAwMTg6ZmZmZjhmZGUyMjEwYmMyOCBFRkxBR1M6IDAwMDEwMjgy DQpbIDM4NDMuNjM4ODE2XSBSQVg6IDAwMDAwMDAwMDAwMDAwMDAgUkJYOiBmZmZmOGZkZTFhNTll ZDAwIFJDWDogMDAwMDAwMDAwMDAwMDAwMA0KWyAzODQzLjY0NjEzM10gUkRYOiBmZmZmOGZkZGUy N2Q2ODIwIFJTSTogZmZmZjhmZGUyZmE5NjQzOCBSREk6IGZmZmZmZmZmYzA2MTU0ODANClsgMzg0 My42NTM1NTFdIFJCUDogZmZmZjhmZGUyMjEwYmM0OCBSMDg6IDAwMDAwMDAwMDAwMDBjOTAgUjA5 OiAzZDc0Nzg2NTZlMmMzMDNkDQpbIDM4NDMuNjYxMzA0XSBSMTA6IGZmZmY4ZmRkZTIyODQ1MjAg UjExOiAzMDMyMzgzNjY0MzczMjY1IFIxMjogZmZmZjhmZGRlMjdkNjgwMA0KWyAzODQzLjY2ODU0 MF0gUjEzOiBmZmZmOGZkZTFhNTllZDIwIFIxNDogZmZmZjhmZGRlMjdkNjgwMCBSMTU6IDAwMDAw MDAwMDAwMDAwMDANClsgMzg0My42NzYwMjldIEZTOiAgMDAwMDdmOTFmZTNkNjcwMCgwMDAwKSBH UzpmZmZmOGZkZTJmYTgwMDAwKDAwMDApIGtubEdTOjAwMDAwMDAwMDAwMDAwMDANClsgMzg0My42 ODQzOThdIENTOiAgMDAxMCBEUzogMDAwMCBFUzogMDAwMCBDUjA6IDAwMDAwMDAwODAwNTAwMzMN ClsgMzg0My42OTAyNjldIENSMjogMDAwMDAwMDAwMDAwMDAwMCBDUjM6IDAwMDAwMDA0MjVmZWMw MDUgQ1I0OiAwMDAwMDAwMDAwMTYwZWUwDQoNClRoYW5rcw0Kd2VpdGFvd2FuZw0KDQoNCrGjw9zJ +cP3o7oNCrG+08q8/rqs09Cxo8Pcu/LXqNPQ0MXPoqOsvfa5qda4tqjK1bz+yMvKudPDoaPRz737 ttSxvtPKvP678sbkxNrI3df2yM66zs60vq3K2siotcSy6dTEoaLKudPDoaK4tNbGu/LXqreioaMN CkNPTkZJREVOVElBTCBOT1RFOg0KVGhpcyBlbWFpbCBjb250YWlucyBjb25maWRlbnRpYWwgb3Ig bGVnYWxseSBwcml2aWxlZ2VkIGluZm9ybWF0aW9uIGFuZCBpcyBmb3IgdGhlIHNvbGUgdXNlIG9m IGl0cyBpbnRlbmRlZCByZWNpcGllbnQuIEFueSB1bmF1dGhvcml6ZWQgcmV2aWV3LCB1c2UsIGNv cHlpbmcgb3IgZm9yd2FyZGluZyBvZiB0aGlzIGVtYWlsIG9yIHRoZSBjb250ZW50IG9mIHRoaXMg ZW1haWwgaXMgc3RyaWN0bHkgcHJvaGliaXRlZC4NCg==