From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from NAM04-DM6-obe.outbound.protection.outlook.com (NAM04-DM6-obe.outbound.protection.outlook.com [40.92.45.69]) by mx.groups.io with SMTP id smtpd.web09.1068.1667602765086474994 for ; Fri, 04 Nov 2022 15:59:25 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@outlook.com header.s=selector1 header.b=PfeYg1JW; spf=pass (domain: outlook.com, ip: 40.92.45.69, mailfrom: christopher.zurcher@outlook.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=H8yWH9jvSjxF4D3dJlQ0lN0jb9H4ROiVAEbkCgKCgE7/Tb2n2VmycISWVYR4ulNmPkSiIlatPLeBXXho11C61hmhhvZZGQKuidPCofcUjC3QhKSSqlEyfcrvM7FmdiO8uAexC1iHhGPqi1/4Wig9Ams9foY2s/eVQvEh74K/i3aMdbx54NeosSr35JcHrWfRCX1zVFskySVeHY5WBKjcVz33L1Ez1cuhrvR8gm7wfr9xsQzEyvQ7jwnnWYvTpHUsOWYDEBC4MXhrFWZQ8eCemw8+o15t80FtYYWF5RHuMwvUQ+RozYssYAjPrBcBOaXCNbNpI3jqohR25qcy4SqwsA== 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=guTB7DX9J5mzY5tqWMnb+wUXM5bwYc3OKNUU9oOrIMo=; b=oHpCmV5xAl0WEsfzmuT1JnYxoI8cAJA7P1Bnt+ns7qZWSEIwvYtZ6Tj+pzT0nsLQEKWyJIdl/CkERSHDR7zEUDGqgzG0RMs/viHpR62T296+sAJDQ12Rj7u6xs9Q9mmfMWibaZur06GmoyTiB4Sm+uoQw/KBDYuGtYUfIq265yTLv9uGpl+BtwbKx7P9QqkKn4Bc0baDqvCetNyc78xkzO9mwrrM3GIea+VGlm0h0CkkbK1WCf2gSMBHdvPqgXA1qmKO/QZBicXvM0xJO4N1dIk5sUc3a96uf2C3TDeQRutg42zz2Km93l/5u2Q9Dz2QskapjCaEcQmOnrLwvxuTPw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=guTB7DX9J5mzY5tqWMnb+wUXM5bwYc3OKNUU9oOrIMo=; b=PfeYg1JWuma5NyraO3zX9KZJ/FLqGU6fdwO+vt9ZxfBQYLe1GHGBpSVn6QSHtw9f4OK17aK0BhBrcD6CUYtffHl4eR4pIdIiQ4mNzjvyJ1hJiAJl95r2/QA3LIwvrMr8he7CYal74TDJDR/YM3z/WfV8qyMmv1XrrAJtQ8vzZvEXDtKuLHNSg6qELPl7IRf8MonE+a8OT5YnA3C0azEgSNqZYRx7yRHnov+Tjw+KF7ZdX0RTANj/ka6m0gXVnfrPnyhCTUs35A5Ckm977oEfN8qpvB7s9V+0DmCB5TzutN8kPMqW312OrlYey8MRpZtqO1+djtW89J0rncqPDdBzTA== Received: from BY3PR06MB8018.namprd06.prod.outlook.com (2603:10b6:a03:3c1::7) by SN7PR06MB7088.namprd06.prod.outlook.com (2603:10b6:806:108::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5813.9; Fri, 4 Nov 2022 22:59:23 +0000 Received: from BY3PR06MB8018.namprd06.prod.outlook.com ([fe80::98ff:9c2f:f971:bca9]) by BY3PR06MB8018.namprd06.prod.outlook.com ([fe80::98ff:9c2f:f971:bca9%6]) with mapi id 15.20.5813.008; Fri, 4 Nov 2022 22:59:23 +0000 From: "Christopher Zurcher" To: "devel@edk2.groups.io" , "michael.d.kinney@intel.com" , Laszlo Ersek CC: "Zurcher, Christopher" , "Jiang, Guomin" , "Wang, Jian J" , "Yao, Jiewen" , "Lu, Xiaoyu1" Subject: Re: [edk2-devel] [PATCH v2] CryptoPkg/Readme.md: typo and grammar fixes Thread-Topic: [edk2-devel] [PATCH v2] CryptoPkg/Readme.md: typo and grammar fixes Thread-Index: AQHY8EVOPB65DiV1S0amUhRAKBJky64u47AAgAB9u6A= Date: Fri, 4 Nov 2022 22:59:23 +0000 Message-ID: References: <20221104120214.12123-1-lersek@redhat.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_ActionId=a5d760d8-564f-485c-b23b-b3f2dca68421;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_ContentBits=0;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Enabled=true;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Method=Standard;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Name=Internal;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_SetDate=2022-11-04T22:58:40Z;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_SiteId=72f988bf-86f1-41af-91ab-2d7cd011db47; x-tmn: [jrW4pYTav8PYqlEmGCGvmUL+VBrIYCy0] x-ms-publictraffictype: Email x-ms-traffictypediagnostic: BY3PR06MB8018:EE_|SN7PR06MB7088:EE_ x-ms-office365-filtering-correlation-id: 94f435ea-34d9-4b9f-1db6-08dabeb83726 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: RmMitbWlmB/JsWzi8G5YheyPs0WP2OMIOH0VETHD0+Wi/8cPkCTr3CM9/fcF10bWZSLYaOtXGy4GnSMEyV8tGAZr1/sd5G2QbW1Jqmr/pHAmTsudWnsNL8C6P3NsFqMoB4J9pqIPg3IqpyR2J1qsMxQ/O81J4ud460xDjsiyydVfVq9Pa1i4KeKCeOM3UEhJU9vglg8WqCpBZIMkPV3XdKQzSX6mnq32NYU/P4+3l1Z+NU2q9RrXlyp1YZ/X5KorYDZdVJT5Ml3e4m9oRxpbB8xQrx+QpFvaNzXVSwx8etRuMhIimnis6cVrpDF1ONw5MvklSD7kJ4rXq1Ffn4FtxKf6d4lnLNj/knHuld1l+NsTyYctRMHTS8Z69/jVH/E2mKvQke7+6v/iNknvDvxMzEkAsBBvRYjtqSOVV6mOkTjS49Z4709cUG3ZsMaM98nXWZaeMZlUqRGnJQjfnsi+aoOkOX4jNTEGdKkVnFjWAbA7o3ae2L9ywcw9WtKxcNwG88HqTALUlUPKUmzDRhmU+7MtpYtx9LQ2kyWgph5lIEDF0FsKbfSogqMNUFQPdgipdp5QWEI8KG0JIZH6eh6rdIYCtom7wSHKlaL6jq/4eUwXSN9a6GQLLtkvOqwtquWozgBPvbORtmmQiWfpetx7697NO56bw+4YS9HgNgiEvLXHZJlR3+ODstd7GDEQnjsLS8glASIl9hXjul4NifRZow== x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?NXA4cGtWZGNlc3AzUDhVQ3lkcWNvUTNRNzlQMWVSbmZGRGZDa2lKV2ZsaWsr?= =?utf-8?B?Mnd0dnVuQW40OU5sL3RwaEJaSzJBd042L1k4SXV3QktuNWhqSVFVL2Q3VHoy?= =?utf-8?B?SWRYSFZQL2lZQ0lyaXJYcE9oRTJEOFYrYnVEY2F6NW0yUUwxRjA0dGVrR3lx?= =?utf-8?B?Q0F5ZDBDb2NkZ3JWeGJIcE1qNjMxU0xMY3VRWmF0TFFRbnlTRi9HV2NtRFlq?= =?utf-8?B?bmlzTlpEc0JUN1IyM1VKa3EzNFRrWWhyMnZIbEdvaHdLOTFWMHFBT1hwaG5S?= =?utf-8?B?UVBMRGRQUytuVkpIMStOVzhYQUFTUXlFSlhLS1lKSDlKSFJtMSs1ZlNqSnVu?= =?utf-8?B?T1lFSHdNUnNNcUFKTkMwWGtCOVdHalRMYmx5K1pBTmtwZkVSYk8xdDhtS2tY?= =?utf-8?B?QjVTRFMwbVRnMkJUZko1dC9MK0xYQlR0blcxYkpLY1YvRjIraHYrWHZuTmpa?= =?utf-8?B?cW5Qd2czbno0MEIydVpUU2tpR04xUDVUb29VYW1ZYkJ0Q0VlNGNzQWZzZ1JW?= =?utf-8?B?djZnOWdncW5vU00rdVNXNzhEWitMaThUZ1VDT0lLc0J1dHlSUFJJRjZ0MkxX?= =?utf-8?B?bmVTYVFqT2VoTXZva1pZSjdzSEU4YXRSeU8rMTNVbVdGYW9waTJ6UGREcTJL?= =?utf-8?B?NFByV25lZXlRNVpvV3R5REhQSFB3VTU3a0RTek5GZ0xHeDl4Smk5T3g1b3p6?= =?utf-8?B?Zk84MFNrQVljdjVzbys2WHhnbE9XaE9mTjlyZGdnaGZDN2t1NFdJaTk1bzNG?= =?utf-8?B?ZUVyQUdFNG8rVWN0cjgzUXQreGhLVjY2L3lJeWlNT0p2bzhYbXpTcytETXBa?= =?utf-8?B?MnBKN2RkaVVVdGlmWXhtN3NSVFR4YjNXeUVKc05SNWtWbVRMaE9hYVF4NU1O?= =?utf-8?B?Z0lQWTdPSFhEMVdPaGVvZTFmK1g5a3hWTUM5N2NVRStXbTVJK0hTMHJrbHln?= =?utf-8?B?VHFMdjhGMERwamU1dERRaFJHMnZRNFVkbWJlc1pWT01lR1ZxaGxSdW9OS0pk?= =?utf-8?B?VnloaHpTNy80bVdwWHBDVkV1VjdOUlRISDlhd0tFZUl5ajVJejZjZUo1N2g1?= =?utf-8?B?ang2a2JyTFEzbzhnS0dzemZ0Y0lsYWR3SmlESXZBV3N2aGZacXkwdGtnSEJZ?= =?utf-8?B?bDFoMURpaHN2SHlQNmRQVmtWaUIyeWlWUDRyZkRmWFRkU25RakJYdy9nZVNQ?= =?utf-8?B?Q2xCekpCSW8xTE9kVE8vZlVhdnNNZytBVENLdVdJc1Zab2FjVjN2UWFvZEM3?= =?utf-8?B?cFdxbGx2Rng2eU5CWVF4L3JaYzByTGhyTVBHb3dMSWw1a0lVNUkyK2lKOUtt?= =?utf-8?B?ZHV5LzZHNkVpN0Z6b1B3NGJjRjYycjdkZ1dxRkc2S1llSXFsOEFXdlVHSjBq?= =?utf-8?B?RzJERnBzNUFFQlVxeXd6WnltNEFodWdFR0xvb050d3cxYzNqN2lrdlVQczVn?= =?utf-8?B?Y2VSamNPNE52ekROS01jLzdETzA4cktONWp3U29ramE5ZFZUclRGSVV4TEtt?= =?utf-8?B?ekpvZVNMcFR4VnhuRzIyRCtlTVRhbXJObXFWalEyT2hEN2FvNEJWSzRVMW5l?= =?utf-8?B?V2w3OFAzUG14UjhVSTJMZ0U1dmg5N2hWcTF3bkpDbjZYZGlhRE1PRzd0U0ZB?= =?utf-8?B?V0NrY2tXcyttdjRjS01lRGVYYWRnbmNkY0NKU211LzdZNWhnRDRHemE4Qzcy?= =?utf-8?B?VHpxL0V2RDNZTEw5VDNrVUZQWFBDK05LNTM1M1ZyWEp6dEloUlE1Zmxwc29v?= =?utf-8?Q?DRyBY/kAbx8Moq6x10=3D?= MIME-Version: 1.0 X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BY3PR06MB8018.namprd06.prod.outlook.com X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-CrossTenant-Network-Message-Id: 94f435ea-34d9-4b9f-1db6-08dabeb83726 X-MS-Exchange-CrossTenant-originalarrivaltime: 04 Nov 2022 22:59:23.4538 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-rms-persistedconsumerorg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR06MB7088 Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 UmV2aWV3ZWQtYnk6IENocmlzdG9waGVyIFp1cmNoZXIgPGNocmlzdG9waGVyLnp1cmNoZXJAbWlj cm9zb2Z0LmNvbT4NCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBkZXZl bEBlZGsyLmdyb3Vwcy5pbyA8ZGV2ZWxAZWRrMi5ncm91cHMuaW8+IE9uIEJlaGFsZiBPZiBNaWNo YWVsIEQNCj4gS2lubmV5DQo+IFNlbnQ6IEZyaWRheSwgTm92ZW1iZXIgNCwgMjAyMiAwODoyOQ0K PiBUbzogTGFzemxvIEVyc2VrIDxsZXJzZWtAcmVkaGF0LmNvbT47IGRldmVsQGVkazIuZ3JvdXBz LmlvOyBLaW5uZXksIE1pY2hhZWwgRA0KPiA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+DQo+ IENjOiBadXJjaGVyLCBDaHJpc3RvcGhlciA8Y2hyaXN0b3BoZXIuenVyY2hlckBtaWNyb3NvZnQu Y29tPjsgSmlhbmcsIEd1b21pbg0KPiA8Z3VvbWluLmppYW5nQGludGVsLmNvbT47IFdhbmcsIEpp YW4gSiA8amlhbi5qLndhbmdAaW50ZWwuY29tPjsgWWFvLCBKaWV3ZW4NCj4gPGppZXdlbi55YW9A aW50ZWwuY29tPjsgTHUsIFhpYW95dTEgPHhpYW95dTEubHVAaW50ZWwuY29tPg0KPiBTdWJqZWN0 OiBSZTogW2VkazItZGV2ZWxdIFtQQVRDSCB2Ml0gQ3J5cHRvUGtnL1JlYWRtZS5tZDogdHlwbyBh bmQgZ3JhbW1hcg0KPiBmaXhlcw0KPiANCj4gUmV2aWV3ZWQtYnk6IE1pY2hhZWwgRCBLaW5uZXkg PG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPg0KPiANCj4gDQo+ID4gLS0tLS1PcmlnaW5hbCBN ZXNzYWdlLS0tLS0NCj4gPiBGcm9tOiBMYXN6bG8gRXJzZWsgPGxlcnNla0ByZWRoYXQuY29tPg0K PiA+IFNlbnQ6IEZyaWRheSwgTm92ZW1iZXIgNCwgMjAyMiA1OjAyIEFNDQo+ID4gVG86IGRldmVs QGVkazIuZ3JvdXBzLmlvOyBsZXJzZWtAcmVkaGF0LmNvbQ0KPiA+IENjOiBadXJjaGVyLCBDaHJp c3RvcGhlciA8Y2hyaXN0b3BoZXIuenVyY2hlckBtaWNyb3NvZnQuY29tPjsgSmlhbmcsDQo+ID4g R3VvbWluIDxndW9taW4uamlhbmdAaW50ZWwuY29tPjsgV2FuZywgSmlhbiBKIDxqaWFuLmoud2Fu Z0BpbnRlbC5jb20+Ow0KPiA+IFlhbywgSmlld2VuIDxqaWV3ZW4ueWFvQGludGVsLmNvbT47IEtp bm5leSwgTWljaGFlbCBEDQo+ID4gPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPjsgTHUsIFhp YW95dTEgPHhpYW95dTEubHVAaW50ZWwuY29tPg0KPiA+IFN1YmplY3Q6IFtQQVRDSCB2Ml0gQ3J5 cHRvUGtnL1JlYWRtZS5tZDogdHlwbyBhbmQgZ3JhbW1hciBmaXhlcw0KPiA+DQo+ID4gQ29tbWl0 IDI0NGNlMzNiZGQyZiAoIkNyeXB0b1BrZzogQWRkIFJlYWRtZS5tZCIsIDIwMjItMTAtMjQpIGhh ZCBhZGRlZA0KPiA+IHRoZSBsb25nLWF3YWl0ZWQgZG9jdW1lbnRhdGlvbiBvbiB0aGUgZHluYW1p YyBjcnlwdG8gc2VydmljZXMuIEZpeA0KPiA+IHNvbWUgb2YgdGhlIHR5cG9zIGFuZCBhcmd1YWJs ZSBncmFtbWFyIGVycm9ycyBpbiAiUmVhZG1lLm1kIi4gQSBmZXcNCj4gPiBsaWdodCBjbGFyaWZp Y2F0aW9ucyBhcmUgYWxzbyBzbnVjayBpbi4NCj4gPg0KPiA+IENjOiBDaHJpc3RvcGhlciBadXJj aGVyIDxjaHJpc3RvcGhlci56dXJjaGVyQG1pY3Jvc29mdC5jb20+DQo+ID4gQ2M6IEd1b21pbiBK aWFuZyA8Z3VvbWluLmppYW5nQGludGVsLmNvbT4NCj4gPiBDYzogSmlhbiBKIFdhbmcgPGppYW4u ai53YW5nQGludGVsLmNvbT4NCj4gPiBDYzogSmlld2VuIFlhbyA8amlld2VuLnlhb0BpbnRlbC5j b20+DQo+ID4gQ2M6IE1pY2hhZWwgRCBLaW5uZXkgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29t Pg0KPiA+IENjOiBYaWFveXUgTHUgPHhpYW95dTEubHVAaW50ZWwuY29tPg0KPiA+IFNpZ25lZC1v ZmYtYnk6IExhc3psbyBFcnNlayA8bGVyc2VrQHJlZGhhdC5jb20+DQo+ID4gLS0tDQo+ID4NCj4g PiBOb3RlczoNCj4gPiAgICAgdjI6DQo+ID4NCj4gPiAgICAgLSBVUkw6DQo+ID4NCj4gPiBodHRw czovL3BhZ3VyZS5pby9sZXJzZWsvZWRrMi9jLzhkN2IyNmJmYjZhMT9icmFuY2g9Y3J5cHRvcGtn X3JlYWRtZV90DQo+ID4geXBvc192Mg0KPiA+DQo+ID4gICAgIC0gdjEgd2FzIGF0Og0KPiA+ICAg ICAgIC0gaHR0cHM6Ly9saXN0bWFuLnJlZGhhdC5jb20vYXJjaGl2ZXMvZWRrMi1kZXZlbC1hcmNo aXZlLzIwMjItDQo+IE5vdmVtYmVyLzA1NTE1My5odG1sDQo+ID4gICAgICAgLSBtc2dpZCA8MjAy MjExMDIwOTM2MzcuOTEzMi0xLWxlcnNla0ByZWRoYXQuY29tPg0KPiA+DQo+ID4gICAgIC0ga2Vl cCByZWZlcnJpbmcgdG8gdGhlIHNpbmd1bGFyIEhhc2hBcGlMaWIgYWxnb3JpdGhtIHRoYXQNCj4g PiAgICAgICBQY2RIYXNoQXBpTGliUG9saWN5IGV4cG9zZXMgZm9yIGNvbmZpZ3VyYXRpb24gaW4g c2luZ3VsYXIgW01pa2VdDQo+ID4NCj4gPiAgICAgLSBzdGlsbCBmaXggdGhlIGR1cGxpY2F0ZWQg InRvIiB0eXBvDQo+ID4NCj4gPiAgICAgLSByYW5nZS1kaWZmIGFnYWluc3QgdjEgKGkuZS4sIGZp cnN0IGh1bmsgZHJvcHBlZCwgc2Vjb25kIGh1bmsNCj4gdXBkYXRlZCk6DQo+ID4NCj4gPiAgICAg PiAxOiAgYTcyNjlmMTcwNDM3ICEgMTogIDhkN2IyNmJmYjZhMSBDcnlwdG9Qa2cvUmVhZG1lLm1k OiB0eXBvIGFuZA0KPiBncmFtbWFyIGZpeGVzDQo+ID4gICAgID4gICAgIEBAIC05NCwxOCArOTQs MTEgQEANCj4gPiAgICAgPiAgICAgICBgYGANCj4gPiAgICAgPiAgICAgICBbTGlicmFyeUNsYXNz ZXMuY29tbW9uLkRYRV9SVU5USU1FX0RSSVZFUl0NCj4gPiAgICAgPiAgICAgIEBADQo+ID4gICAg ID4gICAgIC0gIyMjIFBDRCBDb25maWd1cmF0aW9uIFNldHRpbmdzDQo+ID4gICAgID4gICAgIC0N Cj4gPiAgICAgPiAgICAgLSBUaGVyZSBhcmUgMiBQQ0Qgc2V0dGluZ3MgdGhhdCBhcmUgdXNlZCB0 byBjb25maWd1cmUNCj4gY3J5cHRvZ3JhcGhpYyBzZXJ2aWNlcy4NCj4gPiAgICAgPiAgICAgLS1g UGNkSGFzaEFwaUxpYlBvbGljeWAgaXMgdXNlZCB0byBjb25maWd1cmUgdGhlIGhhc2ggYWxnb3Jp dGhtDQo+IHByb3ZpZGVkIGJ5IHRoZQ0KPiA+ICAgICA+ICAgICAtK2BQY2RIYXNoQXBpTGliUG9s aWN5YCBpcyB1c2VkIHRvIGNvbmZpZ3VyZSB0aGUgaGFzaCBhbGdvcml0aG1zDQo+IHByb3ZpZGVk IGJ5IHRoZQ0KPiA+ICAgICA+ICAgICAtIEJhc2VIYXNoQXBpTGliIGxpYnJhcnkgaW5zdGFuY2Uu IGBQY2RDcnlwdG9TZXJ2aWNlRmFtaWx5RW5hYmxlYA0KPiBpcyB1c2VkIHRvDQo+ID4gICAgID4g ICAgIC0gY29uZmlndXJlIHRoZSBjcnlwdG9ncmFwaGljIHNlcnZpY2VzIHN1cHBvcnRlZCBieSB0 aGUNCj4gQ3J5cHRvUGVpLCBDcnlwdG9EeGUsDQo+ID4gICAgID4gICAgICAgYW5kIENyeXB0b1Nt bSBtb2R1bGVzLg0KPiA+ICAgICA+DQo+ID4gICAgID4gICAgICAgKiBgZ0VmaUNyeXB0b1BrZ1Rv a2VuU3BhY2VHdWlkLlBjZEhhc2hBcGlMaWJQb2xpY3lgIC0gVGhpcyBQQ0QNCj4gaW5kaWNhdGVz IHRoZQ0KPiA+ICAgICA+ICAgICAgLSAgSEFTSCBhbGdvcml0aG0gdG8gdG8gdXNlIGluIHRoZSBC YXNlSGFzaEFwaUxpYiB0byBjYWxjdWxhdGUNCj4gaGFzaCBvZiBkYXRhLiBUaGUNCj4gPiAgICAg PiAgICAgLSsgIEhBU0ggYWxnb3JpdGhtcyB0byB1c2UgaW4gdGhlIEJhc2VIYXNoQXBpTGliIHRv IGNhbGN1bGF0ZQ0KPiBoYXNoIG9mIGRhdGEuIFRoZQ0KPiA+ICAgICA+ICAgICArKyAgSEFTSCBh bGdvcml0aG0gdG8gdXNlIGluIHRoZSBCYXNlSGFzaEFwaUxpYiB0byBjYWxjdWxhdGUgaGFzaA0K PiBvZiBkYXRhLiBUaGUNCj4gPiAgICAgPiAgICAgICAgIGRlZmF1bHQgaGFzaGluZyBhbGdvcml0 aG0gZm9yIEJhc2VIYXNoQXBpTGliIGlzIHNldCB0bw0KPiBIQVNIX0FMR19TSEEyNTYuDQo+ID4g ICAgID4gICAgICAgICB8ICBTZXR0aW5nICAgfCAgICBBbGdvcml0aG0gICAgIHwNCj4gPiAgICAg PiAgICAgICAgIHwtLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLS0tLS0tfA0KPiA+DQo+ID4gIENy eXB0b1BrZy9SZWFkbWUubWQgfCA0NiArKysrKysrKysrLS0tLS0tLS0tLQ0KPiA+ICAxIGZpbGUg Y2hhbmdlZCwgMjMgaW5zZXJ0aW9ucygrKSwgMjMgZGVsZXRpb25zKC0pDQo+ID4NCj4gPiBkaWZm IC0tZ2l0IGEvQ3J5cHRvUGtnL1JlYWRtZS5tZCBiL0NyeXB0b1BrZy9SZWFkbWUubWQgaW5kZXgN Cj4gPiA5NDZhYTFlOTllN2QuLjA2NzQ2NWI4ZWI3ZCAxMDA2NDQNCj4gPiAtLS0gYS9DcnlwdG9Q a2cvUmVhZG1lLm1kDQo+ID4gKysrIGIvQ3J5cHRvUGtnL1JlYWRtZS5tZA0KPiA+IEBAIC0zOSw3 ICszOSw3IEBAIHByb3ZpZGVzIHRoZSBzbWFsbGVzdCBvdmVyYWxsIGZpcm13YXJlIG92ZXJoZWFk Lg0KPiA+DQo+ID4gICMjIFN0YXRpY2FsbHkgTGlua2luZyBDcnlwdG9ncmFwaGljIFNlcnZpY2Vz DQo+ID4NCj4gPiAtVGhlIGZpZ3VyZSBiZWxvdyBzaG93cyBhbiBleGFtcGxlIG9mIGEgZmlybXdh cmUgbW9kdWxlcyB0aGF0IHJlcXVpcmVzDQo+ID4gdGhlIHVzZSBvZg0KPiA+ICtUaGUgZmlndXJl IGJlbG93IHNob3dzIGFuIGV4YW1wbGUgb2YgYSBmaXJtd2FyZSBtb2R1bGUgdGhhdCByZXF1aXJl cw0KPiA+ICt0aGUgdXNlIG9mDQo+ID4gIGNyeXB0b2dyYXBoaWMgc2VydmljZXMuIFRoZSBjcnlw dG9ncmFwaGljIHNlcnZpY2VzIGFyZSBwcm92aWRlZCBieQ0KPiA+IHRocmVlIGxpYnJhcnkgIGNs YXNzZXMgY2FsbGVkIEJhc2VDcnlwdExpYiwgVGxzTGliLCBhbmQgSGFzaEFwaUxpYi4NCj4gPiBU aGVzZSBsaWJyYXJ5IGNsYXNzZXMgYXJlICBpbXBsZW1lbnRlZCB1c2luZyBBUElzIGZyb20gdGhl IE9wZW5TU0wNCj4gPiBwcm9qZWN0IHRoYXQgYXJlIGFic3RyYWN0ZWQgYnkgdGhlIEBAIC00OSw3 ICs0OSw3IEBAIGZ1bGwgQyBydW50aW1lDQo+ID4gbGlicmFyeSBmb3IgZmlybXdhcmUgY29tcG9u ZW50cy4gSW5zdGVhZCwgdGhlIENyeXB0b1BrZyBpbmNsdWRlcyAgdGhlDQo+ID4gc21hbGxlc3Qg c3Vic2V0IG9mIHNlcnZpY2VzIHJlcXVpcmVkIHRvIGJ1aWxkIHRoZSBPcGVuU1NMIHByb2plY3Qg aW4gdGhlDQo+IHByaXZhdGUgbGlicmFyeSBjbGFzcyBjYWxsZWQgSW50cmluc2ljTGliLg0KPiA+ DQo+ID4gLVRoZSBDcnlwdG9Qa2cgcHJvdmlkZXMgc2V2ZXJhbCBpbnN0YW5jZXMgaWYgdGhlIEJh c2VDcnlwdExpYiBhbmQNCj4gPiBPcGVuc3NsTGliIHdpdGgNCj4gPiArVGhlIENyeXB0b1BrZyBw cm92aWRlcyBzZXZlcmFsIGluc3RhbmNlcyBvZiB0aGUgQmFzZUNyeXB0TGliIGFuZA0KPiA+ICtP cGVuc3NsTGliIHdpdGgNCj4gPiAgZGlmZmVyZW50IGNyeXB0b2dyYXBoaWMgc2VydmljZSBmZWF0 dXJlcyBhbmQgcGVyZm9ybWFuY2UNCj4gPiBvcHRpbWl6YXRpb25zLiBUaGUgIHBsYXRmb3JtIGRl dmVsb3BlciBtdXN0IHNlbGVjdCB0aGUgY29ycmVjdA0KPiA+IGluc3RhbmNlcyBiYXNlZCBvbiBj cnlwdG9ncmFwaGljICBzZXJ2aWNlIHJlcXVpcmVtZW50cyBpbiBlYWNoIFVFRkkvUEkNCj4gPiBm aXJtd2FyZSBwaGFzZSAoU0VDLCBQRUksIERYRSwgVUVGSSwgQEAgLTk3LDkgKzk3LDkgQEAgbGlu a2luZyBpcyBub3QNCj4gYXZhaWxhYmxlIGZvciBTRUMgb3IgVUVGSSBSVCBtb2R1bGVzLg0KPiA+ DQo+ID4gIFRoZSBFREsgSUkgbW9kdWxlcy9saWJyYXJpZXMgdGhhdCByZXF1aXJlIGNyeXB0b2dy YXBoaWMgc2VydmljZXMgdXNlDQo+ID4gdGhlIHNhbWUgIEJhc2VDcnlwdExpYi9UbHNMaWIvSGFz aEFwaUxpYiBBUElzLiBUaGlzIG1lYW5zIG5vIHNvdXJjZQ0KPiA+IGNoYW5nZXMgYXJlIHJlcXVp cmVkIC10byB1c2Ugc3RhdGljIGxpbmtpbmcgb3IgZHluYW1pYyBsaW5raW5nLiBJdCBpcw0KPiA+ IGEgcGxhdGZvcm0gY29uZmlndXJhdGlvbiBvcHRpb25zIC10byBzZWxlY3Qgc3RhdGljIGxpbmtp bmcgb3IgZHluYW1pYw0KPiA+IGxpbmtpbmcuIFRoaXMgY2hvaWNlIGNhbiBiZSBtYWtlIGdsb2Jh bGx5LCAtcGVyIGZpcm13YXJlIG1vZHVsZSB0eXBlLCBvcg0KPiBpbmRpdmlkdWFsIG1vZHVsZXMu DQo+ID4gK3RvIHVzZSBzdGF0aWMgbGlua2luZyBvciBkeW5hbWljIGxpbmtpbmcuIEl0IGlzIGEg cGxhdGZvcm0NCj4gPiArY29uZmlndXJhdGlvbiBvcHRpb24gdG8gc2VsZWN0IHN0YXRpYyBsaW5r aW5nIG9yIGR5bmFtaWMgbGlua2luZy4NCj4gPiArVGhpcyBjaG9pY2UgY2FuIGJlIG1hZGUgZ2xv YmFsbHksIHBlciBmaXJtd2FyZSBtb2R1bGUgdHlwZSwgb3IgZm9yDQo+IGluZGl2aWR1YWwgbW9k dWxlcy4NCj4gPg0KPiA+ICBgYGANCj4gPiAgKz09PT09PT09PT09PT09PT09PT0rICAgICs9PT09 PT09PT09PT09PT09PT09KyAgICAgKz09PT09PT09PT09PT09PT09PT0rDQo+ID4gQEAgLTE1OSw3 ICsxNTksNyBAQCBUaGUgdGFibGUgYmVsb3cgcHJvdmlkZXMgYSBzdW1tYXJ5IG9mIHRoZQ0KPiA+ IHN1cHBvcnRlZCBjcnlwdG9ncmFwaGljIHNlcnZpY2VzLiBJdCAgaW5kaWNhdGVzIGlmIHRoZSBm YW1pbHkgb3Igc2VydmljZSBpcw0KPiBkZXByZWNhdGVkIG9yIHJlY29tbWVuZGVkIHRvIG5vdCBi ZSB1c2VkLg0KPiA+ICBJdCBhbHNvIHNob3dzIHdoaWNoICpDcnlwdExpYiBsaWJyYXJ5IGluc3Rh bmNlcyBzdXBwb3J0IHRoZSBmYW1pbHkgb3INCj4gc2VydmljZS4NCj4gPiAgSWYgYSBjZWxsIGlz IGJsYW5rIHRoZW4gdGhlIHNlcnZpY2Ugb3IgZmFtaWx5IGlzIGFsd2F5cyBkaXNhYmxlZCBhbmQN Cj4gPiB0aGUgLWBQY2RDcnlwdG9TZXJ2aWNlRmFtaWx5RW5hYmxlYCBzZXR0aW5ncyBmb3IgdGhh dCBmYW1pbHkgb3Igc2VydmljZSBpcw0KPiBpZ25vcmVkLg0KPiA+ICtgUGNkQ3J5cHRvU2Vydmlj ZUZhbWlseUVuYWJsZWAgc2V0dGluZyBmb3IgdGhhdCBmYW1pbHkgb3Igc2VydmljZSBpcw0KPiBp Z25vcmVkLg0KPiA+ICBJZiB0aGUgY2VsbCBpcyBub3QgYmxhbmssIHRoZW4gdGhlIHNlcnZpY2Ug b3IgZmFtaWx5IGlzIGNvbmZpZ3VyYWJsZQ0KPiA+IHVzaW5nICBgUGNkQ3J5cHRvU2VydmljZUZh bWlseUVuYWJsZWAgYXMgbG9uZyBhcyB0aGUgY29ycmVjdA0KPiA+IE9wZW5zc2xMaWIgb3IgVGxz TGliIGlzICBhbHNvIGNvbmZpZ3VyZWQuDQo+ID4gQEAgLTIzNCwxMCArMjM0LDEwIEBAIHBoYXNl cyAoU0VDLCBQRUksIERYRSwgVUVGSSwgU01NLCBVRUZJIFJUKS4NCj4gPg0KPiA+ICBUaGUgZm9s bG93aW5nIHRhYmxlIGNhbiBiZSB1c2VkIHRvIGhlbHAgc2VsZWN0IHRoZSBiZXN0IE9wZW5zc2xM aWINCj4gPiBpbnN0YW5jZSBmb3IgIGVhY2ggcGhhc2UuIFRoZSBTaXplIGNvbHVtbiBvbmx5IHNo b3dzIHRoZSBlc3RpbWF0ZWQNCj4gPiBzaXplIGluY3JlYXNlIGZvciBhIC1jb21wcmVzc2VkIElB MzIvWDY0IG1vZHVsZXMgdGhhdCB1c2VzIHRoZQ0KPiA+IGNyeXB0b2dyYXBoaWMgc2VydmljZXMg d2l0aA0KPiA+ICtjb21wcmVzc2VkIElBMzIvWDY0IG1vZHVsZSB0aGF0IHVzZXMgdGhlIGNyeXB0 b2dyYXBoaWMgc2VydmljZXMgd2l0aA0KPiA+ICBgT3BlbnNzbExpYi5pbmZgIGFzIHRoZSBiYXNl bGluZSBzaXplLiBUaGUgYWN0dWFsIHNpemUgaW5jcmVhc2UNCj4gPiBkZXBlbmRzIG9uIHRoZSAg c3BlY2lmaWMgc2V0IG9mIGVuYWJsZWQgY3J5cHRvZ3JhcGhpYyBzZXJ2aWNlcy4gSWYgRUNDDQo+ ID4gc2VydmljZXMgYXJlIG5vdCAtcmVxdWlyZWQsIHRoZW4gc2l6ZSBjYW4gYmUgcmVkdWNlZCBi eSB1c2luZw0KPiA+IE9wZW5zc2xMaWIuaW5mIGluc3RlYWQgb2YNCj4gPiArcmVxdWlyZWQsIHRo ZW4gdGhlIHNpemUgY2FuIGJlIHJlZHVjZWQgYnkgdXNpbmcgT3BlbnNzbExpYi5pbmYNCj4gPiAr aW5zdGVhZCBvZg0KPiA+ICBgT3BlbnNzbExpYkZ1bGwuaW5mYC4gUGVyZm9ybWFuY2Ugb3B0aW1p emF0aW9uIHJlcXVpcmVzIGEgc2l6ZSBpbmNyZWFzZS4NCj4gPg0KPiA+ICB8IE9wZW5zc2xMaWIg SW5zdGFuY2UgICAgIHwgU1NMIHwgRUNDIHwgUGVyZiBPcHQgfCBDUFUgQXJjaCB8IFNpemUgIHwN Cj4gPiBAQCAtMzcxLDEwICszNzEsMTAgQEAgc2V0dGluZ3MuDQo+ID4NCj4gPiAgIyMjIFVFRkkg UnVudGltZSBEcml2ZXIgTGlicmFyeSBNYXBwaW5ncw0KPiA+DQo+ID4gLVVFRkkgUnVudGltZSBE cml2ZXJzIG9ubHkgc3VwcG9ydHMgc3RhdGljIGxpbmtpbmcgb2YgY3J5cHRvZ3JhcGhpYw0KPiBz ZXJ2aWNlcy4NCj4gPiAtVGhlIGZvbGxvd2luZyBsaWJyYXJ5IG1hcHBpbmdzIGFyZSByZWNvbW1l bmRlZCBmb3IgVUVGSSBSdW50aW1lDQo+ID4gRHJpdmVycy4gSXQgdXNlcyAtdGhlIHJ1bnRpbWUg c3BlY2lmaWMgdmVyc2lvbiBvZiB0aGUgQmFzZUNyeXB0TGliIGFuZA0KPiA+IHRoZSBudWxsIHZl cnNpb24gb2YgdGhlIC1UbHNMaWIgYmVjYXVzZSBUTFMgc2VydmljZXMgYXJlIG5vdCB0eXBpY2Fs bHkgdXNlZA0KPiBpbiBydW50aW1lLg0KPiA+ICtVRUZJIFJ1bnRpbWUgRHJpdmVycyBvbmx5IHN1 cHBvcnQgc3RhdGljIGxpbmtpbmcgb2YgY3J5cHRvZ3JhcGhpYw0KPiBzZXJ2aWNlcy4NCj4gPiAr VGhlIGZvbGxvd2luZyBsaWJyYXJ5IG1hcHBpbmdzIGFyZSByZWNvbW1lbmRlZCBmb3IgVUVGSSBS dW50aW1lDQo+ID4gK0RyaXZlcnMuIFRoZXkgdXNlIHRoZSBydW50aW1lIHNwZWNpZmljIHZlcnNp b24gb2YgdGhlIEJhc2VDcnlwdExpYg0KPiA+ICthbmQgdGhlIG51bGwgdmVyc2lvbiBvZiB0aGUg VGxzTGliIGJlY2F1c2UgVExTIHNlcnZpY2VzIGFyZSBub3QgdHlwaWNhbGx5DQo+IHVzZWQgYXQg cnVudGltZS4NCj4gPg0KPiA+ICBgYGANCj4gPiAgW0xpYnJhcnlDbGFzc2VzLmNvbW1vbi5EWEVf UlVOVElNRV9EUklWRVJdDQo+ID4gQEAgLTM5NCw3ICszOTQsNyBAQCBjb25maWd1cmUgdGhlIGNy eXB0b2dyYXBoaWMgc2VydmljZXMgc3VwcG9ydGVkIGJ5DQo+ID4gdGhlIENyeXB0b1BlaSwgQ3J5 cHRvRHhlLCAgYW5kIENyeXB0b1NtbSBtb2R1bGVzLg0KPiA+DQo+ID4gICogYGdFZmlDcnlwdG9Q a2dUb2tlblNwYWNlR3VpZC5QY2RIYXNoQXBpTGliUG9saWN5YCAtIFRoaXMgUENEDQo+ID4gaW5k aWNhdGVzIHRoZQ0KPiA+IC0gIEhBU0ggYWxnb3JpdGhtIHRvIHRvIHVzZSBpbiB0aGUgQmFzZUhh c2hBcGlMaWIgdG8gY2FsY3VsYXRlIGhhc2ggb2YNCj4gPiBkYXRhLiBUaGUNCj4gPiArICBIQVNI IGFsZ29yaXRobSB0byB1c2UgaW4gdGhlIEJhc2VIYXNoQXBpTGliIHRvIGNhbGN1bGF0ZSBoYXNo IG9mDQo+ID4gKyBkYXRhLiBUaGUNCj4gPiAgICBkZWZhdWx0IGhhc2hpbmcgYWxnb3JpdGhtIGZv ciBCYXNlSGFzaEFwaUxpYiBpcyBzZXQgdG8gSEFTSF9BTEdfU0hBMjU2Lg0KPiA+ICAgIHwgIFNl dHRpbmcgICB8ICAgIEFsZ29yaXRobSAgICAgfA0KPiA+ICAgIHwtLS0tLS0tLS0tLS18LS0tLS0t LS0tLS0tLS0tLS0tfA0KPiA+IEBAIC00MDcsOCArNDA3LDggQEAgYW5kIENyeXB0b1NtbSBtb2R1 bGVzLg0KPiA+ICAqIGBnRWZpQ3J5cHRvUGtnVG9rZW5TcGFjZUd1aWQuUGNkQ3J5cHRvU2Vydmlj ZUZhbWlseUVuYWJsZWAgLQ0KPiBFbmFibGUvRGlzYWJsZQ0KPiA+ICAgICB0aGUgZmFtaWxpZXMg YW5kIGluZGl2aWR1YWwgc2VydmljZXMgcHJvZHVjZWQgYnkgdGhlIEVESyBJSSBDcnlwdG8NCj4g PiAgICAgUHJvdG9jb2xzL1BQSXMuIFRoZSBkZWZhdWx0IGlzIGFsbCBzZXJ2aWNlcyBkaXNhYmxl ZC4gVGhpcyBTdHJ1Y3R1cmVkDQo+IFBDRCBpcw0KPiA+IC0gICBhc3NvY2lhdGVkIHdpdGggYFBD RF9DUllQVE9fU0VSVklDRV9GQU1JTFlfRU5BQkxFYCBzdHJ1Y3R1cmUgdGhhdA0KPiBkZWZpbmVk IGluDQo+ID4gLSAgIGBJbmNsdWRlL1BjZC9QY2RDcnlwdG9TZXJ2aWNlRmFtaWx5RW5hYmxlLmhg Lg0KPiA+ICsgICBhc3NvY2lhdGVkIHdpdGggdGhlIGBQQ0RfQ1JZUFRPX1NFUlZJQ0VfRkFNSUxZ X0VOQUJMRWAgc3RydWN0dXJlIHRoYXQNCj4gaXMNCj4gPiArICAgZGVmaW5lZCBpbiBgSW5jbHVk ZS9QY2QvUGNkQ3J5cHRvU2VydmljZUZhbWlseUVuYWJsZS5oYC4NCj4gPg0KPiA+ICAgICBUaGVy ZSBhcmUgdGhyZWUgbGF5ZXJzIG9mIHByaW9yaXR5IHRoYXQgZGV0ZXJtaW5lIGlmIGEgc3BlY2lm aWMgZmFtaWx5DQo+IG9yDQo+ID4gICAgIGluZGl2aWR1YWwgY3J5cHRvZ3JhcGhpYyBzZXJ2aWNl IGlzIGFjdHVhbGx5IGVuYWJsZWQgaW4gdGhlDQo+ID4gQ3J5cHRvUGVpLCBAQCAtNDIwLDE1ICs0 MjAsMTUgQEAgYW5kIENyeXB0b1NtbSBtb2R1bGVzLg0KPiA+ICAgICAgICBPcGVuc3NsTGliIGlu c3RhbmNlIGxpbmtlZCwgdGhlbiB0aGUgc2VydmljZSBpcyBhbHdheXMgZGlzYWJsZWQuDQo+ID4g ICAgIDIpIEJhc2VDcnlwdExpYiBpbnN0YW5jZSBzZWxlY3Rpb24uDQo+ID4gICAgICAgICogQ3J5 cHRvUGVpIGlzIGFsd2F5cyBsaW5rZWQgd2l0aCB0aGUgUGVpQ3J5cHRMaWIgaW5zdGFuY2Ugb2Yg dGhlDQo+ID4gLSAgICAgICAgQmFzZUNyeXB0TGliIGxpYnJhcnkgY2xhc3MuIFRoZSB0YWJsZSBh Ym92ZSBoYXZlIGEgY29sdW1uIGZvciB0aGUNCj4gPiArICAgICAgICBCYXNlQ3J5cHRMaWIgbGli cmFyeSBjbGFzcy4gVGhlIHRhYmxlIGFib3ZlIGhhcyBhIGNvbHVtbiBmb3INCj4gPiArIHRoZQ0K PiA+ICAgICAgICAgIFBlaUNyeXB0TGliLiBJZiB0aGUgZmFtaWx5IG9yIHNlcnZpY2UgaXMgYmxh bmssIHRoZW4gdGhhdCBmYW1pbHkNCj4gb3INCj4gPiAgICAgICAgICBzZXJ2aWNlIGlzIGFsd2F5 cyBkaXNhYmxlZC4NCj4gPiAgICAgICAgKiBDcnlwdG9EeGUgaXMgYWx3YXlzIGxpbmtlZCB3aXRo IHRoZSBCYXNlQ3J5cHRMaWIgaW5zdGFuY2Ugb2YgdGhlDQo+ID4gLSAgICAgICAgQmFzZUNyeXB0 TGliIGxpYnJhcnkgY2xhc3MuIFRoZSB0YWJsZSBhYm92ZSBoYXZlIGEgY29sdW1uIGZvciB0aGUN Cj4gPiArICAgICAgICBCYXNlQ3J5cHRMaWIgbGlicmFyeSBjbGFzcy4gVGhlIHRhYmxlIGFib3Zl IGhhcyBhIGNvbHVtbiBmb3INCj4gPiArIHRoZQ0KPiA+ICAgICAgICAgIEJhc2VDcnlwdExpYi4g SWYgdGhlIGZhbWlseSBvciBzZXJ2aWNlIGlzIGJsYW5rLCB0aGVuIHRoYXQgZmFtaWx5DQo+IG9y DQo+ID4gICAgICAgICAgc2VydmljZSBpcyBhbHdheXMgZGlzYWJsZWQuDQo+ID4gICAgICAgICog Q3J5cHRvU21tIGlzIGFsd2F5cyBsaW5rZWQgd2l0aCB0aGUgU21tQ3J5cHRMaWIgaW5zdGFuY2Ug b2YgdGhlDQo+ID4gLSAgICAgICAgQmFzZUNyeXB0TGliIGxpYnJhcnkgY2xhc3MuIFRoZSB0YWJs ZSBhYm92ZSBoYXZlIGEgY29sdW1uIGZvciB0aGUNCj4gPiArICAgICAgICBCYXNlQ3J5cHRMaWIg bGlicmFyeSBjbGFzcy4gVGhlIHRhYmxlIGFib3ZlIGhhcyBhIGNvbHVtbiBmb3INCj4gPiArIHRo ZQ0KPiA+ICAgICAgICAgIFNtbUNyeXB0TGliLiBJZiB0aGUgZmFtaWx5IG9yIHNlcnZpY2UgaXMg YmxhbmssIHRoZW4gdGhhdCBmYW1pbHkNCj4gb3INCj4gPiAgICAgICAgICBzZXJ2aWNlIGlzIGFs d2F5cyBkaXNhYmxlZC4NCj4gPiAgICAgMykgSWYgYSBmYW1pbHkgb3Igc2VydmljZSBpcyBlbmFi bGVkIGluIHRoZSBPcGVuc3NsTGliIGluc3RhbmNlDQo+ID4gYW5kIGl0IGlzIEBAIC00MzgsMTEg KzQzOCwxMSBAQCBhbmQgQ3J5cHRvU21tIG1vZHVsZXMuDQo+ID4gICAgICAgIGJpdCBmaWVsZHMg Zm9yIGVhY2ggZmFtaWx5IG9mIHNlcnZpY2VzLiBBbGwgb2YgdGhlIGZhbWlsaWVzIGFyZQ0KPiBk aXNhYmxlZA0KPiA+ICAgICAgICBieSBkZWZhdWx0LiBBbiBlbnRpcmUgZmFtaWx5IG9mIHNlcnZp Y2VzIGNhbiBiZSBlbmFibGVkIGJ5IHNldHRpbmcNCj4gdGhlDQo+ID4gICAgICAgIGZhbWlseSBm aWVsZCB0byB0aGUgdmFsdWUgYFBDRF9DUllQVE9fU0VSVklDRV9FTkFCTEVfRkFNSUxZYC4NCj4g SW5kaXZpZHVhbA0KPiA+IC0gICAgICBzZXJ2aWNlcyBjYW4gYmUgZW5hYmxlZCBieSBzZXR0aW5n IGEgc2luZ2xlIHNlcnZpY2UgbmFtZSB0byBgVFJVRWAuDQo+ID4gLSAgICAgIFNldHRpbmdzIGxp c3RlZCBsYXRlciBpbiB0aGUgRFNDIGZpbGUgaGF2ZSBwcmlvcml0eSBvdmVyIHNldHRpbmdzDQo+ IGVhcmxpZXINCj4gPiAtICAgICAgaW4gdGhlIERTQyBmaWxlLCBzbyBpdCBpcyBsZWdhbCBmb3Ig YW4gZW50aXJlIGZhbWlseSB0byBiZSBlbmFibGVkDQo+IGZpcnN0DQo+ID4gLSAgICAgIGFuZCB0 aGVuIGEgZmV3IGluZGl2aWR1YWwgc2VydmljZXMgZGlzYWJsZWQgYnkgc2V0dGluZyB0aGUgc2Vy dmljZQ0KPiBuYW1lIHRvDQo+ID4gLSAgICAgIGBGQUxTRWAuDQo+ID4gKyAgICAgIHNlcnZpY2Vz IGNhbiBiZSBlbmFibGVkIGJ5IHNldHRpbmcgYSBzaW5nbGUgc2VydmljZSBuYW1lIChiaXQpIHRv DQo+IGBUUlVFYC4NCj4gPiArICAgICAgU2V0dGluZ3MgbGlzdGVkIGxhdGVyIGluIHRoZSBEU0Mg ZmlsZSBoYXZlIHByaW9yaXR5IG92ZXIgc2V0dGluZ3MNCj4gbGlzdGVkDQo+ID4gKyAgICAgIGVh cmxpZXIgaW4gdGhlIERTQyBmaWxlLCBzbyBpdCBpcyB2YWxpZCBmb3IgYW4gZW50aXJlIGZhbWls eSB0byBiZQ0KPiBlbmFibGVkDQo+ID4gKyAgICAgIGZpcnN0IGFuZCB0aGVuIGZvciBhIGZldyBp bmRpdmlkdWFsIHNlcnZpY2VzIHRvIGJlIGRpc2FibGVkIGJ5DQo+IHNldHRpbmcNCj4gPiArICAg ICAgdGhvc2Ugc2VydmljZSBuYW1lcyB0byBgRkFMU0VgLg0KPiA+DQo+ID4gICMjIyMgQ29tbW9u IFBFSSBQY2RDcnlwdG9TZXJ2aWNlRmFtaWx5RW5hYmxlIFNldHRpbmdzDQo+ID4NCj4gDQo+IA0K PiANCj4gDQoNCg==