From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (NAM11-CO1-obe.outbound.protection.outlook.com [40.107.220.70]) by mx.groups.io with SMTP id smtpd.web11.3325.1681353226061140602 for ; Wed, 12 Apr 2023 19:33:46 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@ami.com header.s=selector1 header.b=fhY4P1bO; spf=pass (domain: ami.com, ip: 40.107.220.70, mailfrom: richardho@ami.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Yzq/URWZvnuKkORgwRgCA03favhopxMMbEop5vqpolBC6shDsnKQWoyXBiIGU6tOtNRtL5z25fSMnu/Rnl2OwLPD5EICbCdw6hjcmC0PynBq1FyMS7UJnNRCGxGDWznnSez0U2VWnOqhPXSuw6kJlr2nN3vcNkJPKvUxCVe4es8OKEsACkB6j+BvBjpgqnzFS5JbEQ9d09VganqGVWjveU4dS2PORVPtrj0EY9BglMHDmXsbaD0XO6b4TziJanUCqPZ7PBx5Nu92bRiGSp7wlsaXRtZyRbYpBi8IByp23ooA4co5EZ0Sz+TGJFVfmsmgwsktEotMdM1Gciudc7+Vtg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=kWs8UP+p1CtGzt32dxJKniEN82MLv9OHTu2ZMv+Qd20=; b=dEYLGu9SbvYDi7R2b9g20R4loIzFQp3pRjEwoL6uFOVSpH1oLKtz75p57lp1ZVvYQ3ltu/X+f7NzmbgGD8C86G7JlbqRGaCgi6fYg+cXxQyEap1Besjo1h0Kk7dhy3B4r0Y4zAvA+7YrFB2rl2cmUSf6GPxWfSdvGGV4qVcTlG+tfKGmVE3RTTD+8yis9nCofeaRQRkILE2SyUykGwlGwN9cbyRAQTsqSs+3zkpBhidTN4n57EQZ/fGg1gLWSPetaET2MaIzFI2+s0HX+n7z++TsvrZZFdAOddlvyvWUqFW2Dm+G44wNRXRsVwVTiBW0kFx9TmZnLSrkI2wf5B6aOg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=ami.com; dmarc=pass action=none header.from=ami.com; dkim=pass header.d=ami.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ami.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=kWs8UP+p1CtGzt32dxJKniEN82MLv9OHTu2ZMv+Qd20=; b=fhY4P1bOr0KFaSN9NfNMvKZsQYi/EuMUbEsV1CIiKOcMEWgVXsu4zP5lx+4vRsggTxYYalqt//hZCQqgJGyaVAdgNh4UlL62zyOnZI2oFH0k3O0QG7rQjqoSwSWuVzjvIJIml5OKmyTSv9gTBMqt9qmhukWXBOXo+Zt9QMyUjHk= Received: from CY8PR10MB6441.namprd10.prod.outlook.com (2603:10b6:930:63::16) by DS7PR10MB4926.namprd10.prod.outlook.com (2603:10b6:5:3ac::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6298.30; Thu, 13 Apr 2023 02:33:44 +0000 Received: from CY8PR10MB6441.namprd10.prod.outlook.com ([fe80::b965:7721:e4d7:5409]) by CY8PR10MB6441.namprd10.prod.outlook.com ([fe80::b965:7721:e4d7:5409%6]) with mapi id 15.20.6277.031; Thu, 13 Apr 2023 02:33:43 +0000 From: =?UTF-8?B?UmljaGFyZEhvIFvkvZXmmI7lv6Bd?= To: "Chang, Abner" , Pedro Falcato , "devel@edk2.groups.io" , "rebecca@bsdio.com" CC: Andrew Fish , Leif Lindholm , Michael D Kinney , Michael Kubacki , Zhiguang Liu , Liming Gao , Tinh Nguyen , =?utf-8?B?VG9ueSBMbyAo576F6YeR5p2+KQ==?= , =?utf-8?B?TWFydmluIEjDpHVzZXI=?= Subject: Re: [edk2-devel] [PATCH v7 1/3] UsbNetworkPkg/UsbRndis: Add USB RNDIS devices support Thread-Topic: [EXTERNAL] Re: [edk2-devel] [PATCH v7 1/3] UsbNetworkPkg/UsbRndis: Add USB RNDIS devices support Thread-Index: AQHZbHKdk0EWPYe7dkGkbUqRyZMZ+K8m5wnggAAtuICAAXIjIA== Date: Thu, 13 Apr 2023 02:33:43 +0000 Message-ID: References: <20230407112638.405-1-richardho@ami.com> <20e340f2-c5bb-10b1-f286-0c52afffb74f@bsdio.com> In-Reply-To: Accept-Language: zh-TW, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_Enabled=true; MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_SetDate=2023-04-12T04:25:33Z; MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_Method=Standard; MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_Name=General; MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_SiteId=3dd8961f-e488-4e60-8e11-a82d994e183d; MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_ActionId=6f6b9faf-9954-4c30-8ece-95a472f65c5d; MSIP_Label_4342314e-0df4-4b58-84bf-38bed6170a0f_ContentBits=1 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=ami.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CY8PR10MB6441:EE_|DS7PR10MB4926:EE_ x-ms-office365-filtering-correlation-id: 046316a9-1c55-44cc-044c-08db3bc78018 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: NYx84Zt0N9LNgy9rTMnpdMzjsEcsC1rrAT3uoyMiQ8ttrX+3CpdOvxsbDDkdTnlEU5G4wsGtcq1kPU+BHCLHiaT35RT01lmm/m1aI1EFJQGZjtC1BK+N5Ygmu0X2KDnru7im5LvcVZuC2Hyf+EzB35lCAgiXKeCQtNRQbvMs0Vmv4fXIQhMFduGW9+lzcZtxVWGFCEtY6x4s3MsCANP+e2wxC3/5jYG60CW6S93hpmYA9aILB5UFyrO798vunDwgugrhGRw5tT8YR5s06WMZZQHaTAktWZnYMElEPL7cwCjYKp5qUgZKbzQ9FPqltjupM7aaew5XgTyuylISk+DqOHsIeK14zynov9yMAMnkyhUnzUe94gR3bWUM0qijI8C4t4biXPgH9eXA8prhYhxCOsthIu/5KJsdHqalDHAEi3Zc7OwB6LSYKgdQfcUNx35WOaTfa3tFug/BEF50j3V2JrLRMUNgkkIXXQAmH5LPiexKz7/DTt+oMlmLWcyS9nPStWv3MGXvpy1VwU2hsGP2IdZ/O0OtnXzC9fOFbCqilMDlygpUNeMfKECMVCSSt/9u+XUbqT8S3vu1DhnppwSLxFWHkN0rEKlFIB3iKTW6L8laJ4GreOJGe9rLPEIELcK3 x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CY8PR10MB6441.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(376002)(39850400004)(346002)(396003)(366004)(136003)(451199021)(71200400001)(33656002)(40140700001)(38070700005)(5660300002)(122000001)(52536014)(7416002)(2906002)(38100700002)(55016003)(86362001)(316002)(8936002)(8676002)(66946007)(66446008)(66556008)(64756008)(41300700001)(66476007)(4326008)(83380400001)(76116006)(66574015)(6506007)(186003)(478600001)(110136005)(26005)(53546011)(19627235002)(85182001)(54906003)(9686003)(7696005);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?c21YTWRTOE1JNGthUDZWMXdWWDZkaFhzOXlhanoydW1wbXc0NkI1amEzcGVu?= =?utf-8?B?azl3TXhDSmgrTWJDSDVYZyt4RzA1aytxbzlENVh2OVBFYVI5emkyKzc1b3A4?= =?utf-8?B?RDFpc1VEY0hUdzVWMDlsZDJYV0twUDBjNUg0cVdveW1CZGlSSzNXOUpFckNN?= =?utf-8?B?ZmNnci85K011eC9jN3FWL2JTUlkyRU1KMVRlTFBSSmhxWUdUYWtNYVlPV011?= =?utf-8?B?VU4zeWc4M2UyWW1kcXlLbEh6VHZMVGw5cUpzVml5QVUzZmQ3NmxmS0pERHd5?= =?utf-8?B?V2J1SkU0N0EzUXFyYiszTndHaXZXZ3hEa1lNaTRWZHA3QlRnaVNIYVBoQ3FU?= =?utf-8?B?cjZGUjBVTENmS3dueUQxUVZVNHI0SVJzR2lSY1lreVVZaWVUMGlmRHEyZDJs?= =?utf-8?B?RzNWVmtWN25Qc3lLN0k0cnRjZVdERHkrT1NXUzNOVjdGNkpXejR1VGtWbFRa?= =?utf-8?B?cEdkMm1Lay9EVU5jc09YZXo4MHgrYzV6bkNTd0x5UkxTeVFPaGt0cSszTmUx?= =?utf-8?B?b0wxc25nUTdOVDNTVmFLSWxxNUltOU9SOE8ySWIrUXlEQnZuc0MwT3lQUnpC?= =?utf-8?B?Rm9RTGhpV1NQcmY4dnF3T1Z4ZzdUV2RkMWhUd0RrWXZXcjZLTUpUOVlUVkRi?= =?utf-8?B?dTh2MzZSblVaWEp3QXFFMGg2MXhGREZDdGJVbys4dGNPblBsa2xEeS9QQitw?= =?utf-8?B?MnVHTHB4TmdtY09xTnVzNHNCNVJVU0prU0xWU3BIaGRtVis4NFMxOXlhOXFS?= =?utf-8?B?WktKOUdvd09YVzR6OWVqUnhteTF4ZWJRd0R4NjJPbjF0R0ZXR25zZFc0eWt0?= =?utf-8?B?NllnSFZ1dE9OWHpRY3BVTS9CVk9ya2E3bGNmZ3pwelBiblJXMDlGUUJlS1dj?= =?utf-8?B?b040TXJNU1pGdlRrUmtWbzhMU2d5SnhLenRETWU4SitnQzI5S3RnR3hJY1Y3?= =?utf-8?B?VEVmN2UyeWtyQ0t2YVBJRHNFa0o2RGZpaTZaMndFdDJPWDN2d2dyZERRVDhD?= =?utf-8?B?bU16MUt3UFl0b2drV2l3VFJiU3N1TTczTzlvNzZPUWdSdWhaNXFrR1ZHdjZn?= =?utf-8?B?MU54cWJFcnFoZlJLbVluQXpNOGpqRExzSEh4ZzJRb2xiVUZjSHBjVnc5Ry9s?= =?utf-8?B?T0F6aVVnd29FbXBNNWNycUxRdGROcnVWN3g0WG43YXJWVEdNZHkrcnF0OGFa?= =?utf-8?B?UGlreTM5MFBIaTk1OGV2a3JYaGVNTDlna0lHREJtR2lHS3g0NHg0eEtKWXNq?= =?utf-8?B?cUdlM201MzhJY0xjRkkvMXc4dmY1VmZSYytXRXI4MlVyQzJJM2NDSGNnaGl6?= =?utf-8?B?WDExcEFQVVpPcGxOaGhWVFJaVzRZeXhYTkUyMmtzK25GU29XaG05bmdva2pk?= =?utf-8?B?Sk9SaGZMTzVlb1ZhNGY2MTI1MXVhZTRUamlBVmt0R21kNi9tV25VQi9iRjFT?= =?utf-8?B?UGtkZmRLWURBTTN2azdCZkhYQkdQNW91UVArUENGZExtb1pib2NwN2xUdUs5?= =?utf-8?B?VW1BT3VxZlhZY0RhNTdPUmlKM2VoR3dMbkZxMGtpWFB0QWtyYks2cTNoNDRL?= =?utf-8?B?Tm1xUUE2ZjgrYyt2a3dQdGhxZXRKbGNUcmVna3E4Q3ZDTU1aaUZyNllHUDZx?= =?utf-8?B?TW1obkVUaXVRMmpucEdCSXFNRTlIOU04Z2graEprbzhmTU93YkdnYWhQQ3lH?= =?utf-8?B?SW1QMXlLZWZXdGFtRkhhY2tSdlBoL2NOeDdSUzgwL2orOEVoY3NtTlliNk9i?= =?utf-8?B?THFqMmRhU0M3aWU2V1k0RStlc0Y0L2s4MVkxVmlQVmRCQjZFTGJqV3FHYXcz?= =?utf-8?B?OUlOZkZhK2EzM1lNbDR1cW5TVjJXYi90bjJXd0JMSitzaldJenBKbTJiUWVy?= =?utf-8?B?aEZ5NnNGRWxFTHdGQWM0Uy9RcWJPQ0RtREpSTnR5UUJZQ2pLMXVSWjNqNW54?= =?utf-8?B?aGliTGI0YlVDSThGcFZhU1M1SERnMCs3cWhRRFBUUU1Gb0VvbllwN2VpMmRu?= =?utf-8?B?RmRaSWF1MjhYRnlLM0Z3emZuR3psZzh4TVRSM3B2RVdDSjgrNTc1OUlpZisy?= =?utf-8?B?YXNTK1FFbmRmR1A2cGI1TmhPQUVYRUlRUnZVNjVUa1U0WkRCU3lTUXlGTCtV?= =?utf-8?Q?aNnE=3D?= MIME-Version: 1.0 X-OriginatorOrg: ami.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CY8PR10MB6441.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 046316a9-1c55-44cc-044c-08db3bc78018 X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Apr 2023 02:33:43.6176 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 27e97857-e15f-486c-b58e-86c2b3040f93 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: URRhc65cY/g1E9e1213M6GVqTt0w9ISqGJgttyszMecAJkwEfI/SJl+ZmkLuny/xkqvnP2oKc25LosUxuEXW6g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR10MB4926 Content-Language: zh-TW Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SGkgUGVkcm8sDQoNCldvdWxkIHlvdSBjb25zZW50IGlmIEkgdXBzdHJlYW0gdGhlIGNvZGUgdG8g ZWRrMi9NZGVNb2R1bGVQa2cvQnVzL1VzYi9Vc2JOZXR3b3JrPw0KDQpUaGFua3MsDQpSaWNoYXJk DQoNCi0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQpGcm9tOiBDaGFuZywgQWJuZXIgPEFibmVy LkNoYW5nQGFtZC5jb20+DQpTZW50OiAyMDIz5bm0NOaciDEy5pelIDEyOjI2IFBNDQpUbzogUmlj aGFyZCBIbyAo5L2V5piO5b+gKSA8UmljaGFyZEhvQGFtaS5jb20+OyBQZWRybyBGYWxjYXRvIDxw ZWRyby5mYWxjYXRvQGdtYWlsLmNvbT47IGRldmVsQGVkazIuZ3JvdXBzLmlvOyByZWJlY2NhQGJz ZGlvLmNvbQ0KQ2M6IEFuZHJldyBGaXNoIDxhZmlzaEBhcHBsZS5jb20+OyBMZWlmIExpbmRob2xt IDxxdWljX2xsaW5kaG9sQHF1aWNpbmMuY29tPjsgTWljaGFlbCBEIEtpbm5leSA8bWljaGFlbC5k Lmtpbm5leUBpbnRlbC5jb20+OyBNaWNoYWVsIEt1YmFja2kgPG1pa3ViYWNrQGxpbnV4Lm1pY3Jv c29mdC5jb20+OyBaaGlndWFuZyBMaXUgPHpoaWd1YW5nLmxpdUBpbnRlbC5jb20+OyBMaW1pbmcg R2FvIDxnYW9saW1pbmdAYnlvc29mdC5jb20uY24+OyBUaW5oIE5ndXllbiA8dGluaG5ndXllbkBv cy5hbXBlcmVjb21wdXRpbmcuY29tPjsgVG9ueSBMbyAo576F6YeR5p2+KSA8VG9ueUxvQGFtaS5j b20+OyBNYXJ2aW4gSMOkdXNlciA8bWhhZXVzZXJAcG9zdGVvLmRlPg0KU3ViamVjdDogUkU6IFtF WFRFUk5BTF0gUmU6IFtlZGsyLWRldmVsXSBbUEFUQ0ggdjcgMS8zXSBVc2JOZXR3b3JrUGtnL1Vz YlJuZGlzOiBBZGQgVVNCIFJORElTIGRldmljZXMgc3VwcG9ydA0KDQpbQU1EIE9mZmljaWFsIFVz ZSBPbmx5IC0gR2VuZXJhbF0NCg0KSGkgUmljaGFyZCBhbmQgUGVkcm8sDQpVbmRlcnN0YW5kIHRo YXQgaXMgdGhlIHN0YW5kYXJkIFVTQiBjb21tdW5pY2F0aW9uIGNsYXNzIGRldmljZSwgdGhhdCBp cyB3aHkgSSB0aGluayBwdXQgaXQgdW5kZXIgTWRlTW9kdWxlUGtnL0J1cy9Vc2IvVXNiTmV0d29y ayBtYWtlcyBtb3JlIHNlbnNlIGJlY2F1c2UgaXQgaXMgc2ltaWxhciB0byB0aGUgVVNCIG1hc3Mg c3RvcmFnZSBvciBISUQgY2xhc3Nlcy4NClVTQiBSTkRJUyBkcml2ZXIgYW5kIEVES0lJIFVTQiBF dGhlcm5ldCBwcm90b2NvbCBhcmUgb24gdG9wIG9mIFVTQiBkZXZpY2VzIHRoYXQgYWtpbiB0byBC TE9DSyBJTyBwcm90b2NvbCB0byBVU0IgTVNELCB3aGljaCBJIHRoaW5rIHRob3NlIHR3byBjYW4g YmUgbG9jYXRlZCB1bmRlciBNZGVNb2R1bGVQa2cvQnVzL1VzYi9Vc2JOZXR3b3JrIGFzIHdlbGwg YmVjYXVzZSB0aG9zZSBhcmUgb25seSB1c2VkIGJ5IFVTQiBDREMgZGV2aWNlcy4NClRoYXQgaXMg bm8gcHJvYmxlbSB0byBhZGQgdGhvc2UgZml4ZWQgUENEcyBhbmQgb3RoZXIgZGVmaW5pdGlvbnMg c3VjaCBhcyBwcm90b2NvbCBkZWZpbml0aW9ucyBpbiBNZGVNb2R1bGVQa2cuZGVjIGlmIFVzYk5l dHdvcmsgaXMgcGFydCBvZiBNZGVNb2R1bGVQa2cuDQoNClRoYW5rcw0KQWJuZXINCg0KPiAtLS0t LU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBSaWNoYXJkIEhvICjkvZXmmI7lv6ApIDxS aWNoYXJkSG9AYW1pLmNvbT4NCj4gU2VudDogV2VkbmVzZGF5LCBBcHJpbCAxMiwgMjAyMyAxMDoy NyBBTQ0KPiBUbzogUGVkcm8gRmFsY2F0byA8cGVkcm8uZmFsY2F0b0BnbWFpbC5jb20+OyBkZXZl bEBlZGsyLmdyb3Vwcy5pbzsNCj4gcmViZWNjYUBic2Rpby5jb207IENoYW5nLCBBYm5lciA8QWJu ZXIuQ2hhbmdAYW1kLmNvbT4NCj4gQ2M6IEFuZHJldyBGaXNoIDxhZmlzaEBhcHBsZS5jb20+OyBM ZWlmIExpbmRob2xtDQo+IDxxdWljX2xsaW5kaG9sQHF1aWNpbmMuY29tPjsgTWljaGFlbCBEIEtp bm5leQ0KPiA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+OyBNaWNoYWVsIEt1YmFja2kNCj4g PG1pa3ViYWNrQGxpbnV4Lm1pY3Jvc29mdC5jb20+OyBaaGlndWFuZyBMaXUgPHpoaWd1YW5nLmxp dUBpbnRlbC5jb20+Ow0KPiBMaW1pbmcgR2FvIDxnYW9saW1pbmdAYnlvc29mdC5jb20uY24+OyBU aW5oIE5ndXllbg0KPiA8dGluaG5ndXllbkBvcy5hbXBlcmVjb21wdXRpbmcuY29tPjsgVG9ueSBM byAo576F6YeR5p2+KQ0KPiA8VG9ueUxvQGFtaS5jb20+OyBNYXJ2aW4gSMOkdXNlciA8bWhhZXVz ZXJAcG9zdGVvLmRlPg0KPiBTdWJqZWN0OiBSRTogW0VYVEVSTkFMXSBSZTogW2VkazItZGV2ZWxd IFtQQVRDSCB2NyAxLzNdDQo+IFVzYk5ldHdvcmtQa2cvVXNiUm5kaXM6IEFkZCBVU0IgUk5ESVMg ZGV2aWNlcyBzdXBwb3J0DQo+DQo+IENhdXRpb246IFRoaXMgbWVzc2FnZSBvcmlnaW5hdGVkIGZy b20gYW4gRXh0ZXJuYWwgU291cmNlLiBVc2UgcHJvcGVyDQo+IGNhdXRpb24gd2hlbiBvcGVuaW5n IGF0dGFjaG1lbnRzLCBjbGlja2luZyBsaW5rcywgb3IgcmVzcG9uZGluZy4NCj4NCj4NCj4gSGkg UGVkcm8vQWJuZXIsDQo+DQo+IFVzYk5ldHdvcmtQa2cgcHJvdmlkZSB0aGUgUk5ESVMvRUNNL05D TSBkZXZpY2Ugc3VwcG9ydCB0aGF0IGFyZQ0KPiBpbXBsZW1lbnQgZm9ybSBVU0Igc3BlY2lmaWNh dGlvbih3ZSBoYXZlIG90aGVyIFVTQiBuZXR3b3JrIGRldmljZSdzDQo+IGRyaXZlciB0byB1cHN0 cmVhbSkuDQo+IEl0IGlzIG5vdCBzcGVjaWZpYyBVU0IgZGV2aWNlLiBUaGUgZHJpdmVyIGNvdWxk IHdvcmsgb24gYW55IHBsYXRmb3JtLg0KPiBTbywgd2UgY3JlYXRlIFVzYk5ldHdvcmtQa2cgc2Ft ZSBhcyBOZXR3b3JrUGtnIGluIGVkazIgcmVwby4NCj4NCj4gQ3VycmVudGx5LCB3ZSBoYXZlIHNv bWUgRml4ZWQgUENEcyBpbiBVc2JOZXR3b3JrUGtnLmRlYy4gQ2FuIGFkZCBpdCB0bw0KPiBNZGVN b2R1bGVQa2cuZGVjPw0KPiBXaGljaCBvbmUgaXMgYmV0dGVyIGZvciB1cHN0cmVhbSBmcm9tIGJl bG93IHJ1bGVzPw0KPg0KPiAjMTogZWRrMi1wbGF0Zm9ybXMvRmVhdHVyZXMvVXNiTmV0d29ya1Br Zw0KPiAjMjogZWRrMi9NZGVNb2R1bGVQa2cvQnVzL1VzYi9Vc2JOZXR3b3JrDQo+ICMzOiBlZGsy L1VzYk5ldHdvcmtQa2cNCj4NCj4gVGhhbmtzLA0KPiBSaWNoYXJkDQo+DQo+IC0tLS0tT3JpZ2lu YWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IFBlZHJvIEZhbGNhdG8gPHBlZHJvLmZhbGNhdG9AZ21h aWwuY29tPg0KPiBTZW50OiAyMDIz5bm0NOaciDEx5pelIDg6MzkgUE0NCj4gVG86IGRldmVsQGVk azIuZ3JvdXBzLmlvOyByZWJlY2NhQGJzZGlvLmNvbQ0KPiBDYzogUmljaGFyZCBIbyAo5L2V5piO 5b+gKSA8UmljaGFyZEhvQGFtaS5jb20+OyBBbmRyZXcgRmlzaA0KPiA8YWZpc2hAYXBwbGUuY29t PjsgTGVpZiBMaW5kaG9sbSA8cXVpY19sbGluZGhvbEBxdWljaW5jLmNvbT47IE1pY2hhZWwNCj4g RCBLaW5uZXkgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPjsgTWljaGFlbCBLdWJhY2tpDQo+ IDxtaWt1YmFja0BsaW51eC5taWNyb3NvZnQuY29tPjsgWmhpZ3VhbmcgTGl1IDx6aGlndWFuZy5s aXVAaW50ZWwuY29tPjsNCj4gTGltaW5nIEdhbyA8Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuPjsg VGluaCBOZ3V5ZW4NCj4gPHRpbmhuZ3V5ZW5Ab3MuYW1wZXJlY29tcHV0aW5nLmNvbT47IFRvbnkg TG8gKOe+hemHkeadvikNCj4gPFRvbnlMb0BhbWkuY29tPjsgTWFydmluIEjDpHVzZXIgPG1oYWV1 c2VyQHBvc3Rlby5kZT4NCj4gU3ViamVjdDogW0VYVEVSTkFMXSBSZTogW2VkazItZGV2ZWxdIFtQ QVRDSCB2NyAxLzNdDQo+IFVzYk5ldHdvcmtQa2cvVXNiUm5kaXM6IEFkZCBVU0IgUk5ESVMgZGV2 aWNlcyBzdXBwb3J0DQo+DQo+DQo+ICoqQ0FVVElPTjogVGhlIGUtbWFpbCBiZWxvdyBpcyBmcm9t IGFuIGV4dGVybmFsIHNvdXJjZS4gUGxlYXNlDQo+IGV4ZXJjaXNlIGNhdXRpb24gYmVmb3JlIG9w ZW5pbmcgYXR0YWNobWVudHMsIGNsaWNraW5nIGxpbmtzLCBvcg0KPiBmb2xsb3dpbmcgZ3VpZGFu Y2UuKioNCj4NCj4gT24gVHVlLCBBcHIgMTEsIDIwMjMgYXQgMTozMeKAr1BNIFJlYmVjY2EgQ3Jh biA8cmViZWNjYUBic2Rpby5jb20+IHdyb3RlOg0KPiA+IEdpdmVuIHRoaXMgaXMgYWRkaW5nIGEg bmV3IHRvcC1sZXZlbCBwYWNrYWdlLCBJJ2QgbGlrZSB0byBzZWUgYQ0KPiA+IHJldmlldy9mZWVk YmFjayBmcm9tIHRoZSBUaWFub0NvcmUgU3Rld2FyZHMuDQo+DQo+IEkgd291bGQgcGVyc29uYWxs eSBsb3ZlIHRvIHVuZGVyc3RhbmQgd2h5IHRoaXMgaXMgYmVpbmcgcHVzaGVkIGFzIGENCj4gdG9w IGxldmVsIHBhY2thZ2UgaW4gZWRrMiB3aGVuICJzdXBwb3NlZGx5IiBlZGsyLXBsYXRmb3Jtcy9G ZWF0dXJlcyBpcw0KPiB0aGUgbW9yZSBjb3JyZWN0IGFwcHJvYWNoIGhlcmUgKGFzIGRpc2N1c3Nl ZCB3aXRoIFNlYW4sIE5hdGUgYSBmZXcgbW9udGhzIGJhY2spLg0KPg0KPiBPciBpcyB0aGF0IGhl bGxzY2FwZSBvbmx5IHJlc2VydmVkIGZvciBtZT8gOnYNCj4NCj4gLS0NCj4gUGVkcm8NCj4gLVRo ZSBpbmZvcm1hdGlvbiBjb250YWluZWQgaW4gdGhpcyBtZXNzYWdlIG1heSBiZSBjb25maWRlbnRp YWwgYW5kDQo+IHByb3ByaWV0YXJ5IHRvIEFtZXJpY2FuIE1lZ2F0cmVuZHMgKEFNSSkuIFRoaXMg Y29tbXVuaWNhdGlvbiBpcw0KPiBpbnRlbmRlZCB0byBiZSByZWFkIG9ubHkgYnkgdGhlIGluZGl2 aWR1YWwgb3IgZW50aXR5IHRvIHdob20gaXQgaXMNCj4gYWRkcmVzc2VkIG9yIGJ5IHRoZWlyIGRl c2lnbmVlLiBJZiB0aGUgcmVhZGVyIG9mIHRoaXMgbWVzc2FnZSBpcyBub3QNCj4gdGhlIGludGVu ZGVkIHJlY2lwaWVudCwgeW91IGFyZSBvbiBub3RpY2UgdGhhdCBhbnkgZGlzdHJpYnV0aW9uIG9m DQo+IHRoaXMgbWVzc2FnZSwgaW4gYW55IGZvcm0sIGlzIHN0cmljdGx5IHByb2hpYml0ZWQuIFBs ZWFzZSBwcm9tcHRseQ0KPiBub3RpZnkgdGhlIHNlbmRlciBieSByZXBseSBlLW1haWwgb3IgYnkg dGVsZXBob25lIGF0IDc3MC0yNDYtODYwMCwgYW5kDQo+IHRoZW4gZGVsZXRlIG9yIGRlc3Ryb3kg YWxsIGNvcGllcyBvZiB0aGUgdHJhbnNtaXNzaW9uLg0KLVRoZSBpbmZvcm1hdGlvbiBjb250YWlu ZWQgaW4gdGhpcyBtZXNzYWdlIG1heSBiZSBjb25maWRlbnRpYWwgYW5kIHByb3ByaWV0YXJ5IHRv IEFtZXJpY2FuIE1lZ2F0cmVuZHMgKEFNSSkuIFRoaXMgY29tbXVuaWNhdGlvbiBpcyBpbnRlbmRl ZCB0byBiZSByZWFkIG9ubHkgYnkgdGhlIGluZGl2aWR1YWwgb3IgZW50aXR5IHRvIHdob20gaXQg aXMgYWRkcmVzc2VkIG9yIGJ5IHRoZWlyIGRlc2lnbmVlLiBJZiB0aGUgcmVhZGVyIG9mIHRoaXMg bWVzc2FnZSBpcyBub3QgdGhlIGludGVuZGVkIHJlY2lwaWVudCwgeW91IGFyZSBvbiBub3RpY2Ug dGhhdCBhbnkgZGlzdHJpYnV0aW9uIG9mIHRoaXMgbWVzc2FnZSwgaW4gYW55IGZvcm0sIGlzIHN0 cmljdGx5IHByb2hpYml0ZWQuIFBsZWFzZSBwcm9tcHRseSBub3RpZnkgdGhlIHNlbmRlciBieSBy ZXBseSBlLW1haWwgb3IgYnkgdGVsZXBob25lIGF0IDc3MC0yNDYtODYwMCwgYW5kIHRoZW4gZGVs ZXRlIG9yIGRlc3Ryb3kgYWxsIGNvcGllcyBvZiB0aGUgdHJhbnNtaXNzaW9uLg0K