From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Google-Smtp-Source: AG47ELvGLvgjI7k8czlFl4t1t1LrBeVWCYiL4v7ZHjmKfNLiJPIHVo1wT1VEUmi4uRR3a19wEbK1 ARC-Seal: i=1; a=rsa-sha256; t=1520393913; cv=none; d=google.com; s=arc-20160816; b=ckEh44wHDeLbxOW1UHcnvKRgC9lcM6FvJMLqoJCmcngpm/H82UBycsefLmKU4rX1rf 2ucwKY7sS6MyQoyxHNqUNyON0FXsN68S4hbK19Alu1d78V1tH28lvfqRm58yaeDsfjYC gg4x8qdpIR1UBSIYXS0/mxUKPxAkZTgZ9D2sbsp02yDJUqWN8VaBICx3/JeVjF6pTQ3C F7zZcDearyN3/YFOsOUAF1AR2cVcX8WLyQwqqYoLgTXSkgtF13GABLfX1CdYU4CCErdA gPWGRP7RqRmxhggrROqMk551Kw2cs3m5/QBXceNygmhcBNAvz/ELTUegadnKqjTOggB+ cO1Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=mime-version:content-transfer-encoding:content-language :accept-language:in-reply-to:references:message-id:date:thread-index :thread-topic:subject:cc:to:from:arc-authentication-results; bh=GNVSuqGTFw7uVHsLsOGUgKwnQq0lH0DPtPB6z8BVEzM=; b=hnRZcHWOhsCNbn94fCZFPTp35t2fw33ubO4Ik0jRIihHCKrKOf6GGqoZsGFdBql6g4 9gKtLW6wWUo2WzTNOQMcrXtufR6v6dZ+riaSKWoDcJnyKYLlKj5Q6ikSZexz5Ec4mQfz X45e9II6G39uCwwbxNRCBJUoRbEA1hhijipIn7xGK0XE3Vj2pv5Pk/2m9me5B+nbOJoV xDXIAA3zuM/b70CL19EF/y7g9w46gtCnLDxsl9Eg0E2AMqkGJ/Bp7iYvFgn6kgVAK7yr XrD69g/ggm5W9RjkMkKyihvNCc18QqJScfBqS2e08XdyqW+/gFTRyCeL5HVg+wBKsv19 zZfQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of prime.zeng@hisilicon.com designates 45.249.212.255 as permitted sender) smtp.mailfrom=prime.zeng@hisilicon.com Authentication-Results: mx.google.com; spf=pass (google.com: domain of prime.zeng@hisilicon.com designates 45.249.212.255 as permitted sender) smtp.mailfrom=prime.zeng@hisilicon.com From: "Zengtao (B)" To: Minas Harutyunyan , "johnyoun@synopsys.com" CC: "gregkh@linuxfoundation.org" , "linux-usb@vger.kernel.org" , "linux-kernel@vger.kernel.org" Subject: =?gb2312?B?tPC4tDogtPC4tDogUG9zc2libGUgdXNiX3JlcXVlc3QgbGVhayBpbiB0aGUg?= =?gb2312?B?ZnVuY3Rpb24gZHdjMl9nYWRnZXRfY29tcGxldGVfaXNvY19yZXF1ZXN0X2Rk?= =?gb2312?Q?ma?= Thread-Topic: =?gb2312?B?tPC4tDogUG9zc2libGUgdXNiX3JlcXVlc3QgbGVhayBpbiB0aGUgZnVuY3Rp?= =?gb2312?B?b24gZHdjMl9nYWRnZXRfY29tcGxldGVfaXNvY19yZXF1ZXN0X2RkbWE=?= Thread-Index: AQHTsH66hBxv8fQ62E6i86LFhm0HAaPBBfUQ Date: Wed, 7 Mar 2018 03:38:24 +0000 Message-ID: <678F3D1BB717D949B966B68EAEB446ED0C86EBD1@DGGEMM506-MBX.china.huawei.com> References: <678F3D1BB717D949B966B68EAEB446ED0C861F47@DGGEMM506-MBX.china.huawei.com> <410670D7E743164D87FA6160E7907A560113A9C13B@am04wembxb.internal.synopsys.com> <678F3D1BB717D949B966B68EAEB446ED0C865E22@DGGEMM506-MBX.china.huawei.com> <410670D7E743164D87FA6160E7907A560113AADA2D@am04wembxa.internal.synopsys.com> <410670D7E743164D87FA6160E7907A560113AAFA78@am04wembxa.internal.synopsys.com> In-Reply-To: <410670D7E743164D87FA6160E7907A560113AAFA78@am04wembxa.internal.synopsys.com> Accept-Language: zh-CN, en-US Content-Language: zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.67.222.15] Content-Type: text/plain; charset="gb2312" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-CFilter-Loop: Reflected X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: =?utf-8?q?1593634636290967368?= X-GMAIL-MSGID: =?utf-8?q?1594248568337508635?= X-Mailing-List: linux-kernel@vger.kernel.org List-ID: SGkgIE1pbmFzOiANCg0KPi0tLS0t08q8/tStvP4tLS0tLQ0KPreivP7IyzogTWluYXMgSGFydXR5 dW55YW4gW21haWx0bzpNaW5hcy5IYXJ1dHl1bnlhbkBzeW5vcHN5cy5jb21dDQo+t6LLzcqxvOQ6 IDIwMTjE6jPUwjLI1SAxODoyNw0KPsrVvP7IyzogWmVuZ3RhbyAoQikgPHByaW1lLnplbmdAaGlz aWxpY29uLmNvbT47IE1pbmFzIEhhcnV0eXVueWFuDQo+PE1pbmFzLkhhcnV0eXVueWFuQHN5bm9w c3lzLmNvbT47IGpvaG55b3VuQHN5bm9wc3lzLmNvbQ0KPjxKb2huLllvdW5Ac3lub3BzeXMuY29t Pg0KPrOty806IGdyZWdraEBsaW51eGZvdW5kYXRpb24ub3JnOyBsaW51eC11c2JAdmdlci5rZXJu ZWwub3JnOw0KPmxpbnV4LWtlcm5lbEB2Z2VyLmtlcm5lbC5vcmcNCj7W98ziOiBSZTogtPC4tDog UG9zc2libGUgdXNiX3JlcXVlc3QgbGVhayBpbiB0aGUgZnVuY3Rpb24NCj5kd2MyX2dhZGdldF9j b21wbGV0ZV9pc29jX3JlcXVlc3RfZGRtYQ0KPg0KPk9uIDMvMi8yMDE4IDI6MTAgUE0sIE1pbmFz IEhhcnV0eXVueWFuIHdyb3RlOg0KPlJlLXNlbmRpbmcgb25jZSB0aW1lIG1vcmUgYmVjYXVzZSBt YWlsIGRvZXNuJ3QgZGVsaXZlcmVkIHRvIGxpbnV4LXVzYiBhbmQNCj5saW51eC1rZXJuZWwgbWFp bGluZyBsaXN0Lg0KPg0KPkhpIFplbnRhZ28sDQo+Pg0KPj4gT24gMy8yLzIwMTggNTo0OCBBTSwg WmVuZ3RhbyAoQikgd3JvdGU6DQo+Pj4gSGkgTWluYXM6DQo+Pj4NCj4+PiBUaGFua3MgZm9yIHlv dXIgcmVwbHkuDQo+Pj4NCj4+Pj4gLS0tLS3Tyrz+1K28/i0tLS0tDQo+Pj4+ILeivP7IyzogTWlu YXMgSGFydXR5dW55YW4gW21haWx0bzpNaW5hcy5IYXJ1dHl1bnlhbkBzeW5vcHN5cy5jb21dDQo+ Pj4+ILeiy83KsbzkOiAyMDE4xOoy1MIyOMjVIDE4OjI3DQo+Pj4+IMrVvP7IyzogWmVuZ3RhbyAo QikgPHByaW1lLnplbmdAaGlzaWxpY29uLmNvbT47DQo+am9obnlvdW5Ac3lub3BzeXMuY29tDQo+ Pj4+IDxKb2huLllvdW5Ac3lub3BzeXMuY29tPg0KPj4+PiCzrcvNOiBncmVna2hAbGludXhmb3Vu ZGF0aW9uLm9yZzsgbGludXgtdXNiQHZnZXIua2VybmVsLm9yZzsNCj4+Pj4gbGludXgta2VybmVs QHZnZXIua2VybmVsLm9yZw0KPj4+PiDW98ziOiBSZTogUG9zc2libGUgdXNiX3JlcXVlc3QgbGVh ayBpbiB0aGUgZnVuY3Rpb24NCj4+Pj4gZHdjMl9nYWRnZXRfY29tcGxldGVfaXNvY19yZXF1ZXN0 X2RkbWENCj4+Pj4NCj4+Pj4gSGksDQo+Pj4+DQo+Pj4+IE9uIDIvMjgvMjAxOCAxOjAwIFBNLCBa ZW5ndGFvIChCKSB3cm90ZToNCj4+Pj4+IEhpIGpvaG55b3VuOg0KPj4+Pj4NCj4+Pj4+IEkgZm91 bmQgYSBzdXNwZWN0ZWQgYnVnLCBhbmQgSSBhbSB3cml0aW5nIHRvIGNvbmZpcm0gd2l0aCB5b3Uu DQo+Pj4+Pg0KPj4+Pj4gSW4gdGhlIGZ1bmN0aW9uDQo+Pj4+IGR3YzJfZ2FkZ2V0X2NvbXBsZXRl X2lzb2NfcmVxdWVzdF9kZG1hKGRyaXZlcnMvdXNiL2R3YzIvZ2FkZ2V0LmMpLg0KPj4+Pj4gT25s eSB0aGUgZmlyc3QgcmVxdWVzdCBmcm9tIHRoZSBlcSBxdWV1ZSBpcyBwcm9jZXNzZWQgd2hpbGUg bWF5YmUNCj4+Pj4+IHRoZXJlIGFyZQ0KPj4+PiBtb3JlIHRoYW4gb25lIGRlc2NyaXB0b3JzIGRv bmUgYnkgdGhlIEhXLg0KPj4+Pj4NCj4+Pj4+IDEuIEVhY2ggdXNiIHJlcXVlc3QgaXMgYXNzb2Np YXRlZCB3aXRoIGEgRE1BIGRlc2NyaXB0b3IsIGJ1dCB0aGlzDQo+Pj4+PiBpcyBub3QgcmVmbGVj dCBpbiB0aGUgZHJpdmVyLCBzbyB3aGVuIG9uZSBETUEgZGVzY3JpcHRvciBpcyBkb25lLA0KPj4+ Pj4gd2UgZG9uJ3Qga25vdyB3aGljaCB1c2IgcmVxdWVzdCBpcyBkb25lLCBidXQgSSB0aGluayBp ZiBvbmx5IG9uZQ0KPj4+Pj4gRE1BIGRlc2NyaXB0b3IgaXMNCj4+Pj4gZG9uZSwgd2UgY2FuIGtu b3cgdGhhdCB0aGUgZmlyc3QgVVNCIHJlcXVlc3QgaW4gZXEgcXVldWUgaXMgZG9uZSwNCj4+Pj4g YmVjYXVzZSB0aGUgSFcgRE1BIGRlc2NyaXB0b3IgYW5kIFNXIHVzYiByZXF1ZXN0IGFyZSBib3Ro IGluIHNlcXVlbmNlLg0KPj4+Pj4NCj4+Pj4+IDIuIEluIHRoZSBmdW5jdGlvbiBkd2MyX2dhZGdl dF9jb21wbGV0ZV9pc29jX3JlcXVlc3RfZGRtYSwgd2UgbWF5DQo+Pj4+PiBjb21wbGV0ZSBtb3Jl IHRoYW4gb25lIERNQSBkZXNjcmlwdG9yIGJ1dCBvbmx5IHRoZSBmaXJzdCBVc2INCj4+Pj4+IHJl cXVlc3QgaXMNCj4+Pj4gcHJvY2Vzc2VkLCBidXQgaW4gZmFjdCwgd2Ugc2hvdWxkIGFsbCB0aGUg dXNiIHJlcXVlc3RzIGFzc29jaWF0ZWQNCj4+Pj4gd2l0aCBhbGwgdGhlIGRvbmUgRE1BIGRlc2Ny aXB0b3JzLg0KPj4+Pj4NCj4+Pj4+IDMuIEkgbm90aWNlZCB0aGF0IGVhY2ggRE1BIGRlc2NyaXB0 b3IgaXMgY29uZmlndXJlZCB0byByZXBvcnQgYW4NCj4+Pj4+IGludGVycnVwdCwgYW5kIGlmIGVh Y2ggRE1BIGRlc2NyaXB0b3IgZ2VuZXJhdGUgYW4gaW50ZXJydXB0LCB0aGUNCj4+Pj4+IGFib3Zl IEZsb3cNCj4+Pj4gc2hvdWxkIGJlIG9rLCBidXQgdGhlIGludGVycnVwdHMgY2FuIG1lcmdlIGFu ZCB3ZSBoYXZlIHVzZWQgdGhlDQo+Pj4+IGRlcGRtYSB0byBmaWd1cmUgb3V0IHRoZSBsYXJnZXN0 IGZpbmlzaGVkIERNQSBkZXNjcmlwdG9yIGluZGV4Lg0KPj4+Pj4NCj4+Pj4NCj4+Pj4gV2h5IHlv dSBzdXNwZWN0IHRoYXQgc3Vic2VxdWVudCBpbnRlcnJ1cHRzIGNhbiBiZSBtZXJnZWQ/IERpZCB5 b3UNCj4+Pj4gc2VlIHRoaXMgY2FzZT8gQ2FuIHlvdSBwcm92aWRlIGEgbG9nPw0KPj4+PiBFdmVu IGluIGNhc2Ugb2YgbWluaW1hbCBpbnRlcnZhbD0xLCB0aW1lIGJldHdlZW4gMiBzdWJzZXF1ZW50 DQo+Pj4+IGludGVycnVwdHMgc2hvdWxkIGJlIGFib3V0IDEyNXVzLiBJdCdzIGZ1bGx5IGVub3Vn aCB0byBwcm9jZXNzDQo+Pj4+IHRhcmdldCBkZXNjcmlwdG9yLCBjb21wbGV0ZSByZXF1ZXN0LCBl bnF1ZXVlIG5ldyByZXF1ZXN0IGFuZCBwcmVwYXJlDQo+bmV3IGRlc2NyaXB0b3IuDQo+Pj4+DQo+ Pj4gWWVzLCBJIGhhdmUgc2VlbiB0aGFzIGNhc2Ugb24gbXkgcGxhdGZvcm0uDQo+Pj4NCj4+PiBJ IHRoaW5rIHRoZSBmb2xsb3dpbmcgc2hvdWxkIGJlIGNvbnNpZGVyZWQuDQo+Pj4NCj4+PiAxLiBU aGUgY3VycmVudGx5IGRyaXZlciBjb2RlIGNoZWNrcyB0aGUgZGVwZG1hIHJlZ2lzdGVyIHRvIGZp Z3VyZSBvdXQNCj4+PiB0aGUgbGF0ZXN0IGZpbmlzaGVkIGRlc2NyaXB0b3IsIGFuZCBldmVuIGlu IHRoZSBpbnRlcnJ1cHQgaGFuZGxlcg0KPj4+IHRyaWdnZXJlZCBieSBvbmUgZGVzY3JpcHRvciwg dGhlIGRlcGRtYSBtYXkgY29udGludWUgdG8gaW5jcmVhc2UsDQo+DQo+Tm8sIGRlcGRtYSBpbmNy ZWFzaW5nIG9ubHkgYWZ0ZXIgZmV0Y2hpbmcgZGVzY3JpcHRvciB0byBwcm9jZXNzLg0KPkRlc2Ny aXB0b3IgZmV0Y2hlZCBieSBjb3JlIGF0IGZvbGxvdyB0aW1lOg0KPjEuIElTT0MgSU4uIElmIGRl c2NyaXB0b3IgcHJvZ3JhbW1lZCBmb3IgTiB1ZiB0aGVuIGRlc2NyaXB0b3IgZmV0Y2hlZCBhdA0K Pk4tMSB1ZiwgcGVyZm9ybWluZyBETUEgKGJ1ZmZlcnMgZGF0YSB0byBUeEZJRk8pIGFuZCBvbiBE TUEgY29tcGxldGlvbg0KPmdlbmVyYXRlIFhmZXJDb21wbGV0ZSBpbnRlcnJ1cHQgaWYgSU9DIGJp dCBzZXQuDQo+Mi4gSVNPQyBPVVQuIERlc2NyaXB0b3IgZmV0Y2hlZCBvbmx5IHdoZW4gaWYgUnhG SUZPIG5vdCBlbXB0eSwgcGVyZm9ybWluZyBETUENCj4oUnhGSUZPIHRvIGJ1ZmZlcnMpIGFuZCBv biBETUEgY29tcGxldGlvbiBnZW5lcmF0ZSBYZmVyQ29tcGxldGUgaW50ZXJydXB0IGlmDQo+SU9D IGJpdCBzZXQuDQo+SW4gYm90aCBjYXNlIGdhcCBiZXR3ZWVuIGludGVycnVwdHMgaXMgMTI1dXMg KiBpbnRlcnZhbC4NCj5PbmUgZXhjZXB0aW9uIGZvciBJU09DIElOLiBEZXNjcmlwdG9yIGNhbiBi ZSBmZXRjaGVkIG11Y2ggZWFybGllciB0aGFuICh0YXJnZXQNCj51ZiAtIDEpIGlmIElnbm9yZSBG cmFtZSBOdW1iZXIgZmVhdHVyZSBlbmFibGVkIGluIERDVEwgYml0IDE1Lg0KPkJ1dCB0aGlzIGZl YXR1cmUgbm90IGltcGxlbWVudGVkIGluIGR3YzIgZHJpdmVyIGFsbC4gV2UgcGxhbm5pbmcgdG8g YWRkIHRoaXMNCj5mZWF0dXJlIGluIGRyaXZlciBsYXRlci4NCj4NCj4NCg0KSSBkb24ndCBxdWl0 ZSB1bmRlcnN0YW5kIHlvdXIgZGVzY3JpcHRpb24sIGJ1dCBpdCBzZWVtcyB0aGlzIGlzIG5vdCBh biBlZmZlY3QgaGFuZGxpbmcsDQpBdCBsZWFzdCB0aGUgaGFyZHdhcmUgYW5kIHNvZnR3YXJlIGFy ZSBub3QgcnVubmluZyBpbiBwYXJhbGxlbCBmb3IgZGVzY3JpcHRvcnMuKGh3IGFuZCBzdw0KUHJv Y2VzcyB0aGUgZGVzY3JpcHRvcnMgaW4gcGFyYWxsZWwgd2l0aCBsZXNzIGRlcGVuZGVuY3kpDQoN Cj4+PiBzbyBJIHRoaW5rIHlvdSBzaG91bGQgbm90IGF0IGxlYXN0IGRlcGVuZCBvbiB0aGUgZGVw ZG1hIGlmIHlvdSB0aGluaw0KPj4+IG9uIGRlc2NyaXB0b3Igc2hvdWxkIGJlIHByb2Nlc3NlZCBp biB0aGUgaW50ZXJydXB0IGhhbmRsZXIuDQo+Pj4NCj5UaGlzIGltcGxlbWVudGF0aW9uIGJhc2Vk IG9uIGNvcmUgcHJvZ3JhbW1pbmcgZmxvdy4NCj4NCj4+PiAyLiBUaGUgTGludXggc3lzdGVtIGNh bid0IGFzc3VyZSB0aGF0IHRoZSBzeXN0ZW0gaXMgYXZhaWxhYmxlIGluDQo+Pj4gZXZlcnkgMTI1 dXMsIGZvciBleGFtcGxlIFNvbWUgb3RoZXIga2VybmVsIG1vZHVsZXMgbmVlZCB0byBkaXNhYmxl DQo+Pj4gdGhlIGludGVycnVwdHMgb3Igb3RoZXIgaW50ZXJydXB0cyBoYW5kbGVyIGNvc3QgbW9y ZSB0aGFuIDEyNXVzLCBhbmQNCj4+PiB0aGlzIHVuZm9ydHVuYXRlbHkgaGFwcGVuZWQgb24gb3Vy IHBsYXRmb3JtLCBidXQgdGhhdCBpcyBub3QgYW4gaWxsZWdhbCBjYXNlLg0KPkkgc3VzcGVjdCwg aWYgdGhlIHN5c3RlbS9wbGF0Zm9ybSBoYXZlIG1vcmUgdGhhbiAxMjV1cyBJUlEgbGF0ZW5jeSB0 aGVuIGl0IGNhbid0DQo+YmUgdXNlZCBmb3IgSVNPQ3MgdHJhZmZpYy4NCj4NCkZvciB0aGUgY3Vy cmVudCBEdyBkcml2ZXIgaW1wbGVtZW50YXRpb24sIGlmIHRoZSBzeXN0ZW0gaGFzIG1vcmUgdGhl IDEyNXVzIElSUSBsYXRlbmN5LA0KSXQgd2lsbCBoYXZlIHBhY2tldHMgZHJvcCBmb3IgSVNDTyB0 cmFmZmljLiBCdXQgaWYgd2UgZG9uJ3QgZGVzaWduIHRoZSAyIGNodW5rcyBvZiBkZXNjcmlwdG9y cw0KQW5kIGRvbid0IGdlbmVyYXRlIG9uZSBpbnRlcnJ1cHQgZm9yIGVhY2ggZGVzY3JpcHRvciwg YW5kIGlmIHdpbGwgaGF2ZSBjaXJjbGUgZGVzY3JpcHRvcnMNCkxpc3QgYW5kIGdlbmVyYXRlIG9u ZSBpbnRlcnJ1cHQgZm9yIG11bHRpcGxlIGRlc2NyaXB0b3JzLCB3ZSBjYW4gdG9sZXJhbnQgbW9y ZSBJUlEgbGF0ZW5jeQ0KIGppdHRlcnMNCg0KPj4+DQo+Pj4gMy4gVGhlIGhhcmR3YXJlIGFsbG93 cyBlYWNoIGRtYSBkZXNjcmlwdG9yIHRvIHNldCBpdCdzIG93biBpb2MgYml0LA0KPj4+IHNvIHdl IGNhbid0IGp1c3QgYXNzdW1lIFRoYXQgZXZlcnkgZG1hIGRlc2NyaXB0b3IgbXVzdCBzZXQgdGhl IGlvYw0KPj4+IGJpdCB0byAxLiBBbmQgaWYgd2UgZW5mb3JjZSBlYWNoIGRlc2NyaXB0b3IgdG8g Z2VuZXJhdGUgYW4gaW50ZXJydXB0LCB0aGVuIHRvbw0KPmZyZXF1ZW50IGludGVycnVwdHMoMTI1 dXMpIHdpbGwgYmUgcmVhbGx5IGEgYnVyZGVuIGZvciB0aGUgc3lzdGVtLg0KPj4+DQo+U28sIHlv dSBzdWdnZXN0aW5nIHRvIG5vdCBzZXQgSU9DIGJpdCBvbiBlYWNoIGRlc2NyaXB0b3IsIGJ1dCBv bmx5IG9uIGxhc3Qgb25lLg0KPkluIHRoaXMgY2FzZSwgYXMgc29vbiBhcyBjb3JlIHdpbGwgcHJv Y2VzcyBsYXN0IGRlc2NyaXB0b3IgKGJpdCBMPTEpIGFuZCBnZW5lcmF0ZQ0KPlhmZXJDb21wbGV0 ZSAoSU9DPTEpLCBjb3JlIHdpbGwgcmV0dXJuIHRvIGZpcnN0IGRlc2NyaXB0b3Igd2hpY2ggYWxy ZWFkeQ0KPnByb2Nlc3NlZCBieSBjb3JlIGFuZCBCTkEgaW50ZXJydXB0IHdpbGwgYmUgYXNzZXJ0 ZWQuDQo+QmVjYXVzZSB0byBwcm9jZXNzIGFsbCBkZXNjcmlwdG9ycywgY29tcGxldGUgYWxsIHJl cXVlc3RzLCBmaWxsIGRlc2NyaXB0b3JzIGZvciBuZXcNCj5yZXF1ZXN0LCByZS1lbmFibGluZyBF UCwgZXRjLiBjYW4gZ2V0IG1vcmUgdGhhbiAxMjV1cy4NCj4NCj5BY3R1YWxseSwgY3VycmVudCBp bXBsZW1lbnRhdGlvbiBvZiBJU09DIElOL09VVCBpbiBERE1BIGJhc2VkIG9uIDIgY2h1bmtzIG9m DQo+ZGVzY3JpcHRvcnMgd2hpY2ggaXMgbm90IHNvIGNvcnJlY3QuIFdlIHByZXBhcmVkIHBhdGNo ZXMgdG8gZnVsbHkgdXBkYXRlIElTT0MNCj5JTi9PVVQgZmxvdyBmb3IgRERNQSBtb2RlLiBBcyBz b29uIGFzIHdlIGZpbmlzaCB0ZXN0aW5nIHdlIHdpbGwgc3VibWl0IHRvDQo+a2VybmVsLg0KPj4N CklmIHlvdSBkb24ndCBtaW5kLCBJIGNhbiBoZWxwIHRvIHRlc3Qgb24gb3VyIHBsYXRmb3JtLCBp dCBzZWVtcyB0aGF0IHRoZSBuZXcgZGVzaWduIHNvbWV3aGF0DQpzb2x2ZXMgdGhlIGlzc3VlIDIg YWJvdmUuDQoNCj4+PiBUaGFuayB5b3UuDQo+Pj4NCj4+Pj4+DQo+Pj4+PiBUbyB1bnN1YnNjcmli ZSBmcm9tIHRoaXMgbGlzdDogc2VuZCB0aGUgbGluZSAidW5zdWJzY3JpYmUgbGludXgtdXNiIg0K Pj4+Pj4gaW4gdGhlIGJvZHkgb2YgYSBtZXNzYWdlIHRvIG1ham9yZG9tb0B2Z2VyLmtlcm5lbC5v cmcgTW9yZQ0KPj4+Pj4gbWFqb3Jkb21vIGluZm8gYXQNCj4+Pj4+DQo+DQoNCg==