From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by mx.groups.io with SMTP id smtpd.web12.6464.1578561755255711561 for ; Thu, 09 Jan 2020 01:22:35 -0800 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: intel.com, ip: 134.134.136.31, mailfrom: jiewen.yao@intel.com) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga007.jf.intel.com ([10.7.209.58]) by orsmga104.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 09 Jan 2020 01:22:34 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.69,413,1571727600"; d="scan'208";a="211833734" Received: from fmsmsx103.amr.corp.intel.com ([10.18.124.201]) by orsmga007.jf.intel.com with ESMTP; 09 Jan 2020 01:22:34 -0800 Received: from fmsmsx120.amr.corp.intel.com (10.18.124.208) by FMSMSX103.amr.corp.intel.com (10.18.124.201) with Microsoft SMTP Server (TLS) id 14.3.439.0; Thu, 9 Jan 2020 01:22:34 -0800 Received: from shsmsx101.ccr.corp.intel.com (10.239.4.153) by fmsmsx120.amr.corp.intel.com (10.18.124.208) with Microsoft SMTP Server (TLS) id 14.3.439.0; Thu, 9 Jan 2020 01:22:33 -0800 Received: from shsmsx102.ccr.corp.intel.com ([169.254.2.202]) by SHSMSX101.ccr.corp.intel.com ([169.254.1.30]) with mapi id 14.03.0439.000; Thu, 9 Jan 2020 17:22:32 +0800 From: "Yao, Jiewen" To: "Gao, Zhichao" , "devel@edk2.groups.io" CC: "Wang, Jian J" , "Zhang, Chao B" , "Justen, Jordan L" , Laszlo Ersek , Ard Biesheuvel , =?utf-8?B?TWFyYy1BbmRyw6kgTHVyZWF1?= , "Stefan Berger" Subject: Re: [PATCH 00/13] Extend and fix the TCG/TCG2 Physical Presence Interface Thread-Topic: [PATCH 00/13] Extend and fix the TCG/TCG2 Physical Presence Interface Thread-Index: AQHVweKINv4kHl9GkkOll1rQ3CYyxKfYQblggAAS/uCAABT/kIAJmEdwgAAWBWA= Date: Thu, 9 Jan 2020 09:22:31 +0000 Message-ID: <74D8A39837DF1E4DA445A8C0B3885C503F8D78FB@shsmsx102.ccr.corp.intel.com> References: <20200103030428.28176-1-zhichao.gao@intel.com> <74D8A39837DF1E4DA445A8C0B3885C503F8C9AAA@shsmsx102.ccr.corp.intel.com> <3CE959C139B4C44DBEA1810E3AA6F9000B8BBFA2@SHSMSX101.ccr.corp.intel.com> <74D8A39837DF1E4DA445A8C0B3885C503F8C9D46@shsmsx102.ccr.corp.intel.com> <3CE959C139B4C44DBEA1810E3AA6F9000B8C05DF@SHSMSX101.ccr.corp.intel.com> In-Reply-To: <3CE959C139B4C44DBEA1810E3AA6F9000B8C05DF@SHSMSX101.ccr.corp.intel.com> Accept-Language: zh-CN, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiYjM0MDNmOGItNTA2Zi00YTA3LTk1NWItMDM2YTczNDMzOTI2IiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiZGtYVmExbDdMZGFiNlBER3JaSlRPcW95blwvSlYrRTZsN05CY1wvb2RFZ3VLWDMzZUVJZVYxTEkzYjRJRXJhOThQIn0= x-ctpclassification: CTP_NT dlp-product: dlpe-windows dlp-version: 11.2.0.6 dlp-reaction: no-action x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Return-Path: jiewen.yao@intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 T0suIEJ1dCB0aGUgUFBEYXRhIGlzIGludGVybmFsIGltcGxlbWVudGF0aW9uLCBpdCBzaG91bGQg bmV2ZXIgYmUgdXNlZCBhcyBwYXJhbWV0ZXIuDQoNCklmIHdoYXQgaXMgbmVlZGVkIGlzIHRoZSBQ YXJhbWV0ZXIsIHBsZWFzZSB1c2UgUmVxdWVzdFBhcmFtZXRlciBleHBsaWNpdGx5IGFuZCBhbGln biB3aXRoIHRoZSBUQ0cyIFBQIGxpYi4NCg0KVGhhbmsgeW91DQpZYW8gSmlld2VuDQoNCg0KPiAt LS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBHYW8sIFpoaWNoYW8gPHpoaWNoYW8u Z2FvQGludGVsLmNvbT4NCj4gU2VudDogVGh1cnNkYXksIEphbnVhcnkgOSwgMjAyMCA1OjA2IFBN DQo+IFRvOiBZYW8sIEppZXdlbiA8amlld2VuLnlhb0BpbnRlbC5jb20+OyBkZXZlbEBlZGsyLmdy b3Vwcy5pbw0KPiBDYzogV2FuZywgSmlhbiBKIDxqaWFuLmoud2FuZ0BpbnRlbC5jb20+OyBaaGFu ZywgQ2hhbyBCDQo+IDxjaGFvLmIuemhhbmdAaW50ZWwuY29tPjsgSnVzdGVuLCBKb3JkYW4gTCA8 am9yZGFuLmwuanVzdGVuQGludGVsLmNvbT47DQo+IExhc3psbyBFcnNlayA8bGVyc2VrQHJlZGhh dC5jb20+OyBBcmQgQmllc2hldXZlbCA8YXJkLmJpZXNoZXV2ZWxAbGluYXJvLm9yZz47DQo+IE1h cmMtQW5kcsOpIEx1cmVhdSA8bWFyY2FuZHJlLmx1cmVhdUByZWRoYXQuY29tPjsgU3RlZmFuIEJl cmdlcg0KPiA8c3RlZmFuYkBsaW51eC5pYm0uY29tPg0KPiBTdWJqZWN0OiBSRTogW1BBVENIIDAw LzEzXSBFeHRlbmQgYW5kIGZpeCB0aGUgVENHL1RDRzIgUGh5c2ljYWwgUHJlc2VuY2UNCj4gSW50 ZXJmYWNlDQo+IA0KPiBKaWV3ZW4sDQo+IA0KPiBUaGUgVGNnMlNtbSBkcml2ZXIgc3VwcG9ydCB0 byBzdWJtaXQgdGhlIFRQTSBvcGVyYXRpb24gcmVxdWVzdCB0byBwcmUtT1MNCj4gZW52aXJvbm1l bnQgYW5kIHByZS1PUyBlbnZpcm9ubWVudCwgYnV0IGl0IG9ubHkgdHJhbnNmZXIgdGhlIG9wZXJh dGlvbiByZXF1ZXN0DQo+IGNvZGUgYW5kIHRoZSByZXF1ZXN0IHBhcmFtZXRlciBhbmQgc2F2ZSB0 byB0aGUgIlRjZzJQaHlzaWNhbFByZXNlbmNlIg0KPiB2YXJpYWJsZS4NCj4gQnV0IGF0IHRoZSBl eGVjdXRpb24gcGFydCwgdGhlIGludGVyZmFjZSBvbmx5IHRyYW5zZmVyIHRoZSBvcGVyYXRpb24g cmVxdWVzdCBjb2RlLg0KPiBTZWUgYmxvdzoNCj4gVUlOVDMyDQo+IEVGSUFQSQ0KPiBUY2cyUHBW ZW5kb3JMaWJFeGVjdXRlUGVuZGluZ1JlcXVlc3QgKA0KPiAgIElOIFRQTTJCX0FVVEggICAgICAg ICAgICAgKlBsYXRmb3JtQXV0aCwgIE9QVElPTkFMDQo+ICAgSU4gVUlOVDMyICAgICAgICAgICAg ICAgICBPcGVyYXRpb25SZXF1ZXN0LA0KPiAgIElOIE9VVCBVSU5UMzIgICAgICAgICAgICAgKk1h bmFnZW1lbnRGbGFncywNCj4gICBPVVQgQk9PTEVBTiAgICAgICAgICAgICAgICpSZXNldFJlcXVp cmVkDQo+ICAgKTsNCj4gVGhpcyBjYW4ndCBtZWV0IHNvbWUgdmVuZG9ycycgcmVxdWlyZW1lbnQu IEl0IGRyb3AgdGhlIHJlcXVlc3QgcGFyYW1ldGVyIGFuZA0KPiB3ZSBuZWVkIGl0IGZvciBzb21l IG9wZXJhdGlvbiBvciB2YWxpZGF0aW9uLg0KPiBUaGF0IGlzIHdoeSB3ZSB3YW50IHRvIGV4dGVu ZCB0aGUgaW50ZXJmYWNlIHdpdGggdGhlIFBQZGF0YSwgaXQgY29udGFpbiB0aGUNCj4gd2hvbGUg cGFyYW1ldGVycyB3ZSBuZWVkLg0KPiANCj4gQWJvdXQgdGhlIGZ1bmN0aW9uIEluZGV4LCBzYW1l IHJlYXNvbiwgd2UgbmVlZCBpdCB0byBkbyBzb21lIG9wZXJhdGlvbnMgYW5kDQo+IHZhbGlkYXRp b25zLg0KPiBUcmFuc2ZlciB0aGUgUFBkYXRhIHBvaW50ZXIgY2FuIHNvbHZlIGFsbCB0aGUgcHJv YmxlbXMuDQo+IA0KPiBUaGFua3MsDQo+IFpoaWNoYW8NCj4gDQo+ID4gLS0tLS1PcmlnaW5hbCBN ZXNzYWdlLS0tLS0NCj4gPiBGcm9tOiBZYW8sIEppZXdlbg0KPiA+IFNlbnQ6IEZyaWRheSwgSmFu dWFyeSAzLCAyMDIwIDE6MzAgUE0NCj4gPiBUbzogR2FvLCBaaGljaGFvIDx6aGljaGFvLmdhb0Bp bnRlbC5jb20+OyBkZXZlbEBlZGsyLmdyb3Vwcy5pbw0KPiA+IENjOiBXYW5nLCBKaWFuIEogPGpp YW4uai53YW5nQGludGVsLmNvbT47IFpoYW5nLCBDaGFvIEINCj4gPiA8Y2hhby5iLnpoYW5nQGlu dGVsLmNvbT47IEp1c3RlbiwgSm9yZGFuIEwgPGpvcmRhbi5sLmp1c3RlbkBpbnRlbC5jb20+Ow0K PiA+IExhc3psbyBFcnNlayA8bGVyc2VrQHJlZGhhdC5jb20+OyBBcmQgQmllc2hldXZlbA0KPiA+ IDxhcmQuYmllc2hldXZlbEBsaW5hcm8ub3JnPjsgTWFyYy1BbmRyw6kgTHVyZWF1DQo+ID4gPG1h cmNhbmRyZS5sdXJlYXVAcmVkaGF0LmNvbT47IFN0ZWZhbiBCZXJnZXIgPHN0ZWZhbmJAbGludXgu aWJtLmNvbT4NCj4gPiBTdWJqZWN0OiBSRTogW1BBVENIIDAwLzEzXSBFeHRlbmQgYW5kIGZpeCB0 aGUgVENHL1RDRzIgUGh5c2ljYWwgUHJlc2VuY2UNCj4gPiBJbnRlcmZhY2UNCj4gPg0KPiA+IFdo YXQgaXMgdGhlIHBsYXRmb3JtIHVzZSBjYXNlPw0KPiA+IFBsZWFzZSBnaXZlIGF0IGxlYXN0IHNv bWUgZXhhbXBsZXMuDQo+ID4NCj4gPg0KPiA+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0N Cj4gPiA+IEZyb206IEdhbywgWmhpY2hhbyA8emhpY2hhby5nYW9AaW50ZWwuY29tPg0KPiA+ID4g U2VudDogRnJpZGF5LCBKYW51YXJ5IDMsIDIwMjAgMTowOCBQTQ0KPiA+ID4gVG86IFlhbywgSmll d2VuIDxqaWV3ZW4ueWFvQGludGVsLmNvbT47IGRldmVsQGVkazIuZ3JvdXBzLmlvDQo+ID4gPiBD YzogV2FuZywgSmlhbiBKIDxqaWFuLmoud2FuZ0BpbnRlbC5jb20+OyBaaGFuZywgQ2hhbyBCDQo+ ID4gPiA8Y2hhby5iLnpoYW5nQGludGVsLmNvbT47IEp1c3RlbiwgSm9yZGFuIEwNCj4gPiA+IDxq b3JkYW4ubC5qdXN0ZW5AaW50ZWwuY29tPjsgTGFzemxvIEVyc2VrIDxsZXJzZWtAcmVkaGF0LmNv bT47IEFyZA0KPiA+ID4gQmllc2hldXZlbCA8YXJkLmJpZXNoZXV2ZWxAbGluYXJvLm9yZz47IE1h cmMtQW5kcsOpIEx1cmVhdQ0KPiA+ID4gPG1hcmNhbmRyZS5sdXJlYXVAcmVkaGF0LmNvbT47IFN0 ZWZhbiBCZXJnZXINCj4gPiA8c3RlZmFuYkBsaW51eC5pYm0uY29tPg0KPiA+ID4gU3ViamVjdDog UkU6IFtQQVRDSCAwMC8xM10gRXh0ZW5kIGFuZCBmaXggdGhlIFRDRy9UQ0cyIFBoeXNpY2FsDQo+ ID4gPiBQcmVzZW5jZSBJbnRlcmZhY2UNCj4gPiA+DQo+ID4gPiBTZWUgYmVsb3cuDQo+ID4gPg0K PiA+ID4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ID4gPiBGcm9tOiBZYW8sIEpp ZXdlbg0KPiA+ID4gPiBTZW50OiBGcmlkYXksIEphbnVhcnkgMywgMjAyMCAxMTowOSBBTQ0KPiA+ ID4gPiBUbzogR2FvLCBaaGljaGFvIDx6aGljaGFvLmdhb0BpbnRlbC5jb20+OyBkZXZlbEBlZGsy Lmdyb3Vwcy5pbw0KPiA+ID4gPiBDYzogV2FuZywgSmlhbiBKIDxqaWFuLmoud2FuZ0BpbnRlbC5j b20+OyBaaGFuZywgQ2hhbyBCDQo+ID4gPiA+IDxjaGFvLmIuemhhbmdAaW50ZWwuY29tPjsgSnVz dGVuLCBKb3JkYW4gTA0KPiA+ID4gPiA8am9yZGFuLmwuanVzdGVuQGludGVsLmNvbT47IExhc3ps byBFcnNlayA8bGVyc2VrQHJlZGhhdC5jb20+OyBBcmQNCj4gPiA+ID4gQmllc2hldXZlbCA8YXJk LmJpZXNoZXV2ZWxAbGluYXJvLm9yZz47IE1hcmMtQW5kcsOpIEx1cmVhdQ0KPiA+ID4gPiA8bWFy Y2FuZHJlLmx1cmVhdUByZWRoYXQuY29tPjsgU3RlZmFuIEJlcmdlcg0KPiA+IDxzdGVmYW5iQGxp bnV4LmlibS5jb20+DQo+ID4gPiA+IFN1YmplY3Q6IFJFOiBbUEFUQ0ggMDAvMTNdIEV4dGVuZCBh bmQgZml4IHRoZSBUQ0cvVENHMiBQaHlzaWNhbA0KPiA+ID4gPiBQcmVzZW5jZSBJbnRlcmZhY2UN Cj4gPiA+ID4NCj4gPiA+ID4gSGkNCj4gPiA+ID4gSSBhbSBub3QgY2xlYXIgb24gdGhlIHB1cnBv c2Ugb2YgdGhpcyBleHRlbnNpb24uDQo+ID4gPiA+DQo+ID4gPiA+IFRoZSBCdWd6aWxsYSBqdXN0 IGRlc2NyaWJlcyB0aGUgc29sdXRpb24uDQo+ID4gPiA+IEJ1dCB3aGF0IGlzIHRoZSBwcm9ibGVt IHlvdSBhcmUgdHJ5aW5nIHRvIHJlc29sdmU/DQo+ID4gPiA+DQo+ID4gPiA+IEkgY29tcGxldGVs eSBkb27igJl0IHVuZGVyc3RhbmQuDQo+ID4gPiA+DQo+ID4gPiA+IFBsZWFzZSBkbyBjb25zaWRl ciBhZGQgdGhlIGJhY2tncm91bmQgaW5mb3JtYXRpb24gdGhlcmUuDQo+ID4gPiA+IE9yIGl0IGlz IGhhcmQgZm9yIG1lIHRvIGNvbW1lbnQuDQo+ID4gPiA+DQo+ID4gPiA+DQo+ID4gPiA+IFRoYW5r IHlvdQ0KPiA+ID4gPiBZYW8gSmlld2VuDQo+ID4gPiA+DQo+ID4gPiA+ID4gLS0tLS1PcmlnaW5h bCBNZXNzYWdlLS0tLS0NCj4gPiA+ID4gPiBGcm9tOiBHYW8sIFpoaWNoYW8gPHpoaWNoYW8uZ2Fv QGludGVsLmNvbT4NCj4gPiA+ID4gPiBTZW50OiBGcmlkYXksIEphbnVhcnkgMywgMjAyMCAxMTow NCBBTQ0KPiA+ID4gPiA+IFRvOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbw0KPiA+ID4gPiA+IENjOiBZ YW8sIEppZXdlbiA8amlld2VuLnlhb0BpbnRlbC5jb20+OyBXYW5nLCBKaWFuIEoNCj4gPiA+ID4g PiA8amlhbi5qLndhbmdAaW50ZWwuY29tPjsgWmhhbmcsIENoYW8gQiA8Y2hhby5iLnpoYW5nQGlu dGVsLmNvbT47DQo+ID4gPiA+ID4gSnVzdGVuLCBKb3JkYW4gTCA8am9yZGFuLmwuanVzdGVuQGlu dGVsLmNvbT47IExhc3psbyBFcnNlaw0KPiA+ID4gPiA+IDxsZXJzZWtAcmVkaGF0LmNvbT47IEFy ZCBCaWVzaGV1dmVsIDxhcmQuYmllc2hldXZlbEBsaW5hcm8ub3JnPjsNCj4gPiA+ID4gPiBNYXJj LUFuZHLDqSBMdXJlYXUgPG1hcmNhbmRyZS5sdXJlYXVAcmVkaGF0LmNvbT47IFN0ZWZhbiBCZXJn ZXINCj4gPiA+ID4gPiA8c3RlZmFuYkBsaW51eC5pYm0uY29tPg0KPiA+ID4gPiA+IFN1YmplY3Q6 IFtQQVRDSCAwMC8xM10gRXh0ZW5kIGFuZCBmaXggdGhlIFRDRy9UQ0cyIFBoeXNpY2FsDQo+ID4g PiA+ID4gUHJlc2VuY2UgSW50ZXJmYWNlDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiBSRUY6IGh0dHBz Oi8vYnVnemlsbGEudGlhbm9jb3JlLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjQ0Mw0KPiA+ID4gPiA+ DQo+ID4gPiA+ID4gMS4gQWRkIHR3byBpbnRlcmZhY2VzIFRjZzJQcFZlbmRvckxpYkV4ZWN1dGVQ ZW5kaW5nUmVxdWVzdEV4IGFuZA0KPiA+ID4gPiA+IFRjZzJQcFZlbmRvckxpYlN1Ym1pdFJlcXVl c3RUb1ByZU9TRnVuY3Rpb25FeCB0bw0KPiA+IFRjZzJQcFZlbmRvckxpYi4NCj4gPiA+ID4gPiBJ dCBoYXMgb25lIG1vcmUgcGFyYW1ldGVyIFBQRGF0YSAodHlwZQ0KPiA+IEVGSV9UQ0cyX1BIWVNJ Q0FMX1BSRVNFTkNFKQ0KPiA+ID4gPiA+IHRvIHRyYW5zZmVyIG1vcmUgZGF0YS4NCj4gPiA+ID4g PiAyLiBVc2UgdGhlIEV4IHZlcnNpb24gaW5zdGVhZCBvZiBvcmlnaW5hbCBvbmUgaW4NCj4gPiA+ ID4gPiBUY2cyUGh5c2ljYWxQcmVzZW5jZUxpYiAzLiBBZGQgYSBwY2QNCj4gPiA+ID4gPiBQY2RQ aHlzaWNhbFByZXNlbmNlVXNlckNvbmZpcm1UaW1lb3V0IHRvIGNvbnRyb2wgdGhlIHVzZXIgY29u ZmlybQ0KPiA+ID4gPiA+IGlucHV0IGtleSB0aW1lb3V0Lg0KPiA+ID4gPiA+IDQuIEFkZCBGdW5j dGlvbkluZGV4IHRvIHN0cnVjdHVyZSB0eXBlIEVGSV9UQ0cyX1BIWVNJQ0FMX1BSRVNFTkNFDQo+ ID4gPiA+ID4gdG8gdHJhbnNmZXINCj4gPiA+ID4gPiBtVGNnTnZzLT5QaHlzaWNhbFByZXNlbmNl LlBhcmFtZXRlciBkYXRhLg0KPiA+ID4gPiA+IDUuIEFkZCBwYXJhbWV0ZXIgRnVuY3Rpb25JbmRl eCB0bw0KPiA+ID4gPiA+IFRjZzJQaHlzaWNhbFByZXNlbmNlTGliU3VibWl0UmVxdWVzdFRvUHJl T1NGdW5jdGlvbkV4DQo+ID4gPiA+ID4gdG8gaW5pdGlhbGl6ZSB0aGUgUFBkYXRhLg0KPiA+ID4N Cj4gPiA+IEJhY2tncm91bmQ6DQo+ID4gPiBTb21lIHBsYXRmb3JtcyBpbXBsZW1lbnQgdGhlaXIg b3duIFRjZzJQcFZlbmRvckxpYiBhbmQgd2FudCB0bw0KPiA+IG9wZXJhdGUNCj4gPiA+IHdpdGgg bW9yZSBwYXJhbWV0ZXJzLg0KPiA+ID4NCj4gPiA+ICMxLSMyIGFuZCAjNC0jNSBjaGFuZ2VzIGFp bSB0byBhZGQgZXh0ZW5kIHRoZSBpbnRlcmZhY2Ugd2l0aCBQUGRhdGEuDQo+ID4gPiBQUGRhdGEg cG9pbnRlciBjYW4gdHJhbnNmZXIgbW9zdCBvZiB0aGUgcmVxdWlyZWQgcGFyYW1ldGVyIHRvIGRv IHRoZQ0KPiA+IG9wZXJhdGlvbi4NCj4gPiA+IEFsbCB0aGUgZXh0ZW5kIGNoYW5nZXMgaXMgZm9y IHRoZSBQUGRhdGEgYW5kIHRyYW5zZmVyIHRvIHRoZSBwbGF0Zm9ybQ0KPiA+ID4gaW1wbGVtZW50 ZWQgaW50ZXJmYWNlcy4gVGhpcyB3b3VsZCBhZmZlY3QgdGhlIHBsYXRmb3JtcyB3aGljaA0KPiA+ ID4gaW1wbGVtZW50IHRoZWlyIG93biBUY2cyUHBWZW5kb3JMaWIuDQo+ID4gPiBCdXQgZm9yIG9w ZW4gc291cmNlIHBsYXRmb3JtLCBJIGRpZG4ndCBzZWUgYW55IGltcGxlbWVudGF0aW9uIG9mIGl0 Lg0KPiA+ID4NCj4gPiA+ICMzIGFpbXMgdG8gYWRkIGEgcGNkIHRvIGxldCB0aGUgY3VzdG9tZXJz IHRvIGRlY2lkZSB3aGV0aGVyIHRvIHdhaXQNCj4gPiA+IGZvciB0aGUgaW5wdXQgZm9yZXZlciBv ciB3aXRoIGEgdGltZW91dCBjb3VudC4NCj4gPiA+DQo+ID4gPiA+ID4gNi4gTW92ZSBUY2cyQ29u ZmlnTnZEYXRhLmggZnJvbSBTZWN1cml0eVBrZy9UY2cvVGNnMkNvbmZpZyB0bw0KPiA+ID4gPiA+ IFNlY3VyaXR5UGtnL0luY2x1ZGUuDQo+ID4gPiA+ID4gSXQgaXMgdXNlZnVsIGZvciBwbGF0Zm9y bSBjb2RlIHRvIGltcGxlbWVudCB0aGVpciBvd24NCj4gPiA+IFRjZzJQaHlzaWNhbFByZXNlbmNl TGliLg0KPiA+ID4NCj4gPiA+ICM2IGlzIGEgbW92ZW1lbnQgdG8gZGVjcmVhc2UgdGhlIGR1cGxp Y2F0ZWQgY29kZSBhdCBwbGF0Zm9ybSBzaWRlIGlmDQo+ID4gPiB0aGUgcGxhdGZvcm0gY29kZSBp bXBsZW1lbnQgaXRzIG93biBUQ0cgbGlicmFyeSBvciBkcml2ZXIuDQo+ID4gPg0KPiA+ID4gPiA+ IDcuIFJlcGxhY2UgdGhlIEFTU0VSVCB3aXRoIGVycm9yIGNvZGUgcmV0dXJuIGluDQo+ID4gPiA+ ID4gVHBtUGh5c2ljYWxQcmVzZW5jZUxpYg0KPiA+ID4NCj4gPiA+ICM3IGFpbXMgdG8gcmVtb3Zl IHRoZSBBU1NFUlQgYmVjYXVzZSBpdCBpcyBub3QgY3JpdGljYWwuIEFTU0VSVCB3aGVuDQo+ID4g PiBmYWlsIHRvIGNhbGwgVHBtUGh5c2ljYWxQcmVzZW5jZSBhbmQgR2V0VHBtQ2FwYWJpbGl0eSBp cyBub3QgYSBnb29kDQo+ID4gYmVoYXZpb3IuDQo+ID4gPg0KPiA+ID4gPiA+IDguIEZpeCBvbmUg b3BlcmF0aW9uDQo+ID4gPiA+ID4gKFBIWVNJQ0FMX1BSRVNFTkNFX0RFQUNUSVZBVEVfRElTQUJM RV9PV05FUl9GQUxTRSkgZmxvdyBvZg0KPiA+ID4gPiA+IFRjZ1BoeXNpY2FsUHJlc2VuY2VMaWIg KHJlZmVyIHRvIFBoeXNpY2FsIFByZXNlbmNlIEludGVyZmFjZSBTcGVjIFBhZ2UNCj4gPiAzNyku DQo+ID4gPg0KPiA+ID4gIzggaXMgYSBidWcgZml4IHRvIGZvbGxvdyB0aGUgc3BlYy4NCj4gPiA+ DQo+ID4gPiBUaGFua3MsDQo+ID4gPiBaaGljaGFvDQo+ID4gPg0KPiA+ID4gPiA+DQo+ID4gPiA+ ID4gQ2M6IEppZXdlbiBZYW8gPGppZXdlbi55YW9AaW50ZWwuY29tPg0KPiA+ID4gPiA+IENjOiBK aWFuIEogV2FuZyA8amlhbi5qLndhbmdAaW50ZWwuY29tPg0KPiA+ID4gPiA+IENjOiBDaGFvIFpo YW5nIDxjaGFvLmIuemhhbmdAaW50ZWwuY29tPg0KPiA+ID4gPiA+IENjOiBKb3JkYW4gSnVzdGVu IDxqb3JkYW4ubC5qdXN0ZW5AaW50ZWwuY29tPg0KPiA+ID4gPiA+IENjOiBMYXN6bG8gRXJzZWsg PGxlcnNla0ByZWRoYXQuY29tPg0KPiA+ID4gPiA+IENjOiBBcmQgQmllc2hldXZlbCA8YXJkLmJp ZXNoZXV2ZWxAbGluYXJvLm9yZz4NCj4gPiA+ID4gPiBDYzogTWFyYy1BbmRyw6kgTHVyZWF1IDxt YXJjYW5kcmUubHVyZWF1QHJlZGhhdC5jb20+DQo+ID4gPiA+ID4gQ2M6IFN0ZWZhbiBCZXJnZXIg PHN0ZWZhbmJAbGludXguaWJtLmNvbT4NCj4gPiA+ID4gPiBTaWduZWQtb2ZmLWJ5OiBaaGljaGFv IEdhbyA8emhpY2hhby5nYW9AaW50ZWwuY29tPiBaaGljaGFvIEdhbyAoMTMpOg0KPiA+ID4gPiA+ ICAgU2VjdXJpdHlQa2cvVGNnMlBwVmVybmRvckxpYjogQWRkIHR3byBFeCBmdW5jdGlvbiB0byBo YW5kbGUgUFBkYXRhDQo+ID4gPiA+ID4gICBTZWN1cml0eVBrZy9UY2cyUHBWZW5kb3JMaWI6IEFk ZCBpbXBsZW1lbnRhdGlvbiBvZiBuZXcgRXgNCj4gPiBmdW5jdGlvbg0KPiA+ID4gPiA+ICAgU2Vj dXJpdHlQa2cvVGNnMlBoeXNpY2FsUHJlc2VuY2VMaWI6IFVzZSB0aGUgbmV3IEV4IGZ1bmN0aW9u DQo+ID4gPiA+ID4gICBTZWN1cml0eVBrZy9TbW1UY2cyUGh5c2ljYWxQcmVzZW5jZUxpYjogVXNl IHRoZSBuZXcgRXggZnVuY3Rpb24NCj4gPiA+ID4gPiAgIFNlY3VyaXR5UGtnL2RlYzogQWRkIGEg cGNkIGZvciB1c2VyIHJlc3BvbnNlIHdhaXQgdGltZQ0KPiA+ID4gPiA+ICAgT3ZtZlBrZy9UY2cy UGh5c2ljYWxQcmVzZW5jZUxpYjogVXNlIHBjZCBmb3IgdXNlciByZXNwb25zZSB3YWl0DQo+ID4g dGltZQ0KPiA+ID4gPiA+ICAgU2VjdXJpdHlQa2cvVGNnMlBoeXNpY2FsUHJlc2VuY2VMaWI6IFVz ZSBQY2QgZm9yIHVzZXIgcmVzcCB3YWl0IHRpbWUNCj4gPiA+ID4gPiAgIFNlY3VyaXR5UGtnL1Rj Z1B5aHNpY2FsUHJlc2VuY2VMaWI6IFVzZSBQY2QgZm9yIHVzZXIgcmVzcCB3YWl0IHRpbWUNCj4g PiA+ID4gPiAgIFNlY3VyaXR5UGtnL1RjZzJQaHlzaWNhbFByZXNlbmNlRGF0YS5oOiBBZGQgRnVu Y3Rpb25JbmRleCBmb3INCj4gPiBQUGRhdGENCj4gPiA+ID4gPiAgIFNlY3VyaXR5UGtnL1RjZzJQ aHlzaWNhbFByZXNlbmNlTGliOiBFeHRlbmQgdGhlIHN1Ym1pdCBwcmVPUyBmdW5jDQo+ID4gPiA+ ID4gICBTZWN1cml0eVBrZzogTW92ZSB0aGUgVGNnMkNvbmZpZ052RGF0YS5oIHRvIEluY2x1ZGUg Zm9sZGVyDQo+ID4gPiA+ID4gICBTZWN1cml0eVBrZy9UY2dQaHlzaWNhbFByZXNlbmNlTGliOiBS ZXBsYWNlIHRoZSBBU1NFUlQgd2l0aCBlcnJvcg0KPiA+IGNvZGUNCj4gPiA+ID4gPiAgIFNlY3Vy aXR5UGtnL1RjZ1BoeXNpY2FsUHJlc2VuY2VMaWI6IEZpeCB0aGUgb3BlcmF0aW9uIG9mIDExDQo+ ID4gPiA+ID4NCj4gPiA+ID4gPiAgLi4uL0R4ZVRjZzJQaHlzaWNhbFByZXNlbmNlTGliLmMgICAg ICAgICAgICAgIHwgIDYzICsrKysrKystLS0NCj4gPiA+ID4gPiAgLi4uL0R4ZVRjZzJQaHlzaWNh bFByZXNlbmNlTGliLmluZiAgICAgICAgICAgIHwgICA2ICstDQo+ID4gPiA+ID4gIC4uLi9JbmNs dWRlL0d1aWQvVGNnMlBoeXNpY2FsUHJlc2VuY2VEYXRhLmggICB8ICAgMyArLQ0KPiA+ID4gPiA+ ICAuLi4vSW5jbHVkZS9MaWJyYXJ5L1RjZzJQaHlzaWNhbFByZXNlbmNlTGliLmggfCAgIDQgKy0N Cj4gPiA+ID4gPiAgU2VjdXJpdHlQa2cvSW5jbHVkZS9MaWJyYXJ5L1RjZzJQcFZlbmRvckxpYi5o IHwgIDU0ICsrKysrKysrLQ0KPiA+ID4gPiA+ICAuLi4vVGNnMkNvbmZpZyA9PiBJbmNsdWRlfS9U Y2cyQ29uZmlnTnZEYXRhLmggfCAgIDIgKy0NCj4gPiA+ID4gPiAgLi4uL0R4ZVRjZzJQaHlzaWNh bFByZXNlbmNlTGliLmMgICAgICAgICAgICAgIHwgIDY4ICsrKysrKysrLS0tDQo+ID4gPiA+ID4g IC4uLi9EeGVUY2cyUGh5c2ljYWxQcmVzZW5jZUxpYi5pbmYgICAgICAgICAgICB8ICAgNCArLQ0K PiA+ID4gPiA+ICAuLi4vRHhlVGNnUGh5c2ljYWxQcmVzZW5jZUxpYi5jICAgICAgICAgICAgICAg fCAxMTAgKysrKysrKysrKysrLS0tLS0tDQo+ID4gPiA+ID4gIC4uLi9EeGVUY2dQaHlzaWNhbFBy ZXNlbmNlTGliLmluZiAgICAgICAgICAgICB8ICAgNiArLQ0KPiA+ID4gPiA+ICAuLi4vU21tVGNn MlBoeXNpY2FsUHJlc2VuY2VMaWIuYyAgICAgICAgICAgICAgfCAgMTUgKystDQo+ID4gPiA+ID4g IC4uLi9UY2cyUHBWZW5kb3JMaWJOdWxsL1RjZzJQcFZlbmRvckxpYk51bGwuYyB8ICA2MSArKysr KysrKystDQo+ID4gPiA+ID4gIFNlY3VyaXR5UGtnL1NlY3VyaXR5UGtnLmRlYyAgICAgICAgICAg ICAgICAgICB8ICAgNyArLQ0KPiA+ID4gPiA+ICBTZWN1cml0eVBrZy9TZWN1cml0eVBrZy51bmkg ICAgICAgICAgICAgICAgICAgfCAgIDcgKy0NCj4gPiA+ID4gPiAgU2VjdXJpdHlQa2cvVGNnL1Rj ZzJDb25maWcvVGNnMkNvbmZpZy52ZnIgICAgIHwgICA0ICstDQo+ID4gPiA+ID4gIFNlY3VyaXR5 UGtnL1RjZy9UY2cyQ29uZmlnL1RjZzJDb25maWdEeGUuaW5mICB8ICAgMyArLQ0KPiA+ID4gPiA+ ICBTZWN1cml0eVBrZy9UY2cvVGNnMkNvbmZpZy9UY2cyQ29uZmlnSW1wbC5oICAgfCAgIDQgKy0N Cj4gPiA+ID4gPiAgU2VjdXJpdHlQa2cvVGNnL1RjZzJDb25maWcvVGNnMkNvbmZpZ1BlaS5pbmYg IHwgICAzICstDQo+ID4gPiA+ID4gIFNlY3VyaXR5UGtnL1RjZy9UY2cyQ29uZmlnL1RjZzJDb25m aWdQZWltLmMgICB8ICAgNCArLQ0KPiA+ID4gPiA+ICBTZWN1cml0eVBrZy9UY2cvVGNnMkNvbmZp Zy9UcG1EZXRlY3Rpb24uYyAgICAgfCAgIDQgKy0NCj4gPiA+ID4gPiAgU2VjdXJpdHlQa2cvVGNn L1RjZzJTbW0vVGNnMlNtbS5jICAgICAgICAgICAgIHwgIDEwICstDQo+ID4gPiA+ID4gIDIxIGZp bGVzIGNoYW5nZWQsIDM0NyBpbnNlcnRpb25zKCspLCA5NSBkZWxldGlvbnMoLSkgIHJlbmFtZQ0K PiA+ID4gPiA+IFNlY3VyaXR5UGtnL3tUY2cvVGNnMkNvbmZpZyA9PiBJbmNsdWRlfS9UY2cyQ29u ZmlnTnZEYXRhLmggKDk0JSkNCj4gPiA+ID4gPg0KPiA+ID4gPiA+IC0tDQo+ID4gPiA+ID4gMi4y MS4wLndpbmRvd3MuMQ0KDQo=