From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=134.134.136.31; helo=mga06.intel.com; envelope-from=eric.jin@intel.com; receiver=edk2-devel@lists.01.org Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 5DD68211B85E9 for ; Thu, 17 Jan 2019 21:13:07 -0800 (PST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga104.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 17 Jan 2019 21:13:06 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.56,489,1539673200"; d="scan'208";a="126778479" Received: from fmsmsx104.amr.corp.intel.com ([10.18.124.202]) by FMSMGA003.fm.intel.com with ESMTP; 17 Jan 2019 21:13:06 -0800 Received: from FMSMSX110.amr.corp.intel.com (10.18.116.10) by fmsmsx104.amr.corp.intel.com (10.18.124.202) with Microsoft SMTP Server (TLS) id 14.3.408.0; Thu, 17 Jan 2019 21:13:06 -0800 Received: from shsmsx151.ccr.corp.intel.com (10.239.6.50) by fmsmsx110.amr.corp.intel.com (10.18.116.10) with Microsoft SMTP Server (TLS) id 14.3.408.0; Thu, 17 Jan 2019 21:13:05 -0800 Received: from shsmsx103.ccr.corp.intel.com ([169.254.4.150]) by SHSMSX151.ccr.corp.intel.com ([169.254.3.160]) with mapi id 14.03.0415.000; Fri, 18 Jan 2019 13:13:04 +0800 From: "Jin, Eric" To: Supreeth Venkatesh , "edk2-devel@lists.01.org" Thread-Topic: [edk2-test][Patch] uefi-sct/SctPkg:Correct Enable parameter in ReceiveFilters test Thread-Index: AQHUrqfAwYFCTws9Q0+rK1R6Jh7A9KW0ewSw Date: Fri, 18 Jan 2019 05:13:04 +0000 Message-ID: References: <20181127060259.109480-1-eric.jin@intel.com> <6839a47d737c7dcd25e990beea7566bca3ac19c7.camel@arm.com> In-Reply-To: <6839a47d737c7dcd25e990beea7566bca3ac19c7.camel@arm.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Subject: Re: [edk2-test][Patch] uefi-sct/SctPkg:Correct Enable parameter in ReceiveFilters test X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 18 Jan 2019 05:13:07 -0000 Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 U3VwcmVldGgsDQoNClllcywgdGhlIE1BQyBoZXJlIGlzIHRoZSBwdXJwb3NlIGZvciB0ZXN0IGRh dGEgb25seS4NCkkgd2lsbCBhZGQgdGhlIGNvbW1lbnQgdG8gY2xhcmlmeSBpdCB3aGVuIEkgcHVz aCB0aGUgY29kZS4NCg0KQmVzdCBSZWdhcmRzDQpFcmljDQoNCi0tLS0tT3JpZ2luYWwgTWVzc2Fn ZS0tLS0tDQpGcm9tOiBTdXByZWV0aCBWZW5rYXRlc2ggPHN1cHJlZXRoLnZlbmthdGVzaEBhcm0u Y29tPiANClNlbnQ6IEZyaWRheSwgSmFudWFyeSAxOCwgMjAxOSA1OjAxIEFNDQpUbzogSmluLCBF cmljIDxlcmljLmppbkBpbnRlbC5jb20+OyBlZGsyLWRldmVsQGxpc3RzLjAxLm9yZw0KU3ViamVj dDogUmU6IFtlZGsyLXRlc3RdW1BhdGNoXSB1ZWZpLXNjdC9TY3RQa2c6Q29ycmVjdCBFbmFibGUg cGFyYW1ldGVyIGluIFJlY2VpdmVGaWx0ZXJzIHRlc3QNCg0KDQpNQUMgYWRkcmVzcyBpcyBoYXJk Y29kZWQgYmVsb3cgd2hpY2ggbmVlZHMgYSBjb21tZW50IG9yIGNsYXJpZmljYXRpb24gdG8gc2F5 IGl0IGlzIHRlc3QgZGF0YSAoaWYgaXQgcmVhbGx5IGlzKS4NCk90aGVyd2lzZSwgaXRzIGdvb2Qg dG8gZ28uDQoNCk9uIFR1ZSwgMjAxOC0xMS0yNyBhdCAxNDowMiArMDgwMCwgRXJpYyBKaW4gd3Jv dGU6DQo+IFRoZSBwYXRjaCBpcyBhcHBsaWVkIHRvIHRoZSBFRkkgcGFydC4NCj4gDQo+IEZpeCBi dWcgLSBzZXQgRUZJX1NJTVBMRV9ORVRXT1JLX1JFQ0VJVkVfTVVMVElDQVNUIGJpdCBpbiBFbmFi bGUgDQo+IHBhcmFtZXRlciB0byBtYWtlIHN1cmUgTXVsdGljYXN0IGlzIGVuYWJsZWQuDQo+IEFk ZCBvbmUgY2hlY2twb2ludCB3aGVuIE1DYXN0RmlsdGVyQ291bnQgaXMgemVybw0KPiANCj4gQ2M6 IFN1cHJlZXRoIFZlbmthdGVzaCA8c3VwcmVldGgudmVua2F0ZXNoQGFybS5jb20+DQo+IENvbnRy aWJ1dGVkLXVuZGVyOiBUaWFub0NvcmUgQ29udHJpYnV0aW9uIEFncmVlbWVudCAxLjENCj4gU2ln bmVkLW9mZi1ieTogRXJpYyBKaW4gPGVyaWMuamluQGludGVsLmNvbT4NCkFja2VkLWJ5OiBTdXBy ZWV0aCBWZW5rYXRlc2ggPHN1cHJlZXRoLnZlbmthdGVzaEBhcm0uY29tPg0KDQo+IC0tLQ0KPiAg Li4uL0VGSS9Qcm90b2NvbC9TaW1wbGVOZXR3b3JrL0JsYWNrQm94VGVzdC9HdWlkLmMgfCAgIDQg Ky0NCj4gIC4uLi9FRkkvUHJvdG9jb2wvU2ltcGxlTmV0d29yay9CbGFja0JveFRlc3QvR3VpZC5o IHwgICA3ICstDQo+ICAuLi4vQmxhY2tCb3hUZXN0L1NpbXBsZU5ldHdvcmtCQlRlc3RDb25mb3Jt YW5jZS5jICB8IDE5OA0KPiArKysrKysrKysrKystLS0tLS0tLS0NCj4gIDMgZmlsZXMgY2hhbmdl ZCwgMTE5IGluc2VydGlvbnMoKyksIDkwIGRlbGV0aW9ucygtKQ0KPiANCj4gZGlmZiAtLWdpdCBh L3VlZmktDQo+IHNjdC9TY3RQa2cvVGVzdENhc2UvVUVGSS9FRkkvUHJvdG9jb2wvU2ltcGxlTmV0 d29yay9CbGFja0JveFRlc3QvR3VpZA0KPiAuYyBiL3VlZmktDQo+IHNjdC9TY3RQa2cvVGVzdENh c2UvVUVGSS9FRkkvUHJvdG9jb2wvU2ltcGxlTmV0d29yay9CbGFja0JveFRlc3QvR3VpZA0KPiAu Yw0KPiBpbmRleCA2ZWE2YzRjLi43MjM0MzIzIDEwMDY0NA0KPiAtLS0gYS91ZWZpLQ0KPiBzY3Qv U2N0UGtnL1Rlc3RDYXNlL1VFRkkvRUZJL1Byb3RvY29sL1NpbXBsZU5ldHdvcmsvQmxhY2tCb3hU ZXN0L0d1aWQNCj4gLmMNCj4gKysrIGIvdWVmaS0NCj4gc2N0L1NjdFBrZy9UZXN0Q2FzZS9VRUZJ L0VGSS9Qcm90b2NvbC9TaW1wbGVOZXR3b3JrL0JsYWNrQm94VGVzdC9HdWlkDQo+IC5jDQo+IEBA IC0xLDcgKzEsNyBAQA0KPiAgLyoqIEBmaWxlDQo+ICANCj4gICAgQ29weXJpZ2h0IDIwMDYgLSAy MDE2IFVuaWZpZWQgRUZJLCBJbmMuPEJSPg0KPiAtICBDb3B5cmlnaHQgKGMpIDIwMTAgLSAyMDE2 LCBJbnRlbCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyANCj4gcmVzZXJ2ZWQuPEJSPg0KPiArICBD b3B5cmlnaHQgKGMpIDIwMTAgLSAyMDE4LCBJbnRlbCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cw0K PiByZXNlcnZlZC48QlI+DQo+ICANCj4gICAgVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55 aW5nIG1hdGVyaWFscw0KPiAgICBhcmUgbGljZW5zZWQgYW5kIG1hZGUgYXZhaWxhYmxlIHVuZGVy IHRoZSB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiANCj4gdGhlIEJTRCBMaWNlbnNlIEBAIC0xMTIs NiArMTEyLDggQEAgRUZJX0dVSUQNCj4gZ1NpbXBsZU5ldHdvcmtCQlRlc3RDb25mb3JtYW5jZUFz c2VydGlvbkd1aWQwNDEgPSANCj4gRUZJX1RFU1RfU0lNUExFTkVUV09SDQo+ICANCj4gIEVGSV9H VUlEIGdTaW1wbGVOZXR3b3JrQkJUZXN0Q29uZm9ybWFuY2VBc3NlcnRpb25HdWlkMDQyID0gDQo+ IEVGSV9URVNUX1NJTVBMRU5FVFdPUktCQlRFU1RDT05GT1JNQU5DRV9BU1NFUlRJT05fMDQyX0dV SUQ7DQo+ICANCj4gK0VGSV9HVUlEIGdTaW1wbGVOZXR3b3JrQkJUZXN0Q29uZm9ybWFuY2VBc3Nl cnRpb25HdWlkMDQzID0NCj4gRUZJX1RFU1RfU0lNUExFTkVUV09SS0JCVEVTVENPTkZPUk1BTkNF X0FTU0VSVElPTl8wNDNfR1VJRDsNCj4gKw0KPiAgRUZJX0dVSUQgZ1NpbXBsZU5ldHdvcmtCQlRl c3RGdW5jdGlvbkFzc2VydGlvbkd1aWQwMDEgPSANCj4gRUZJX1RFU1RfU0lNUExFTkVUV09SS0JC VEVTVEZVTkNUSU9OX0FTU0VSVElPTl8wMDFfR1VJRDsNCj4gIA0KPiAgRUZJX0dVSUQgZ1NpbXBs ZU5ldHdvcmtCQlRlc3RGdW5jdGlvbkFzc2VydGlvbkd1aWQwMDIgPSANCj4gRUZJX1RFU1RfU0lN UExFTkVUV09SS0JCVEVTVEZVTkNUSU9OX0FTU0VSVElPTl8wMDJfR1VJRDsNCj4gZGlmZiAtLWdp dCBhL3VlZmktDQo+IHNjdC9TY3RQa2cvVGVzdENhc2UvVUVGSS9FRkkvUHJvdG9jb2wvU2ltcGxl TmV0d29yay9CbGFja0JveFRlc3QvR3VpZA0KPiAuaCBiL3VlZmktDQo+IHNjdC9TY3RQa2cvVGVz dENhc2UvVUVGSS9FRkkvUHJvdG9jb2wvU2ltcGxlTmV0d29yay9CbGFja0JveFRlc3QvR3VpZA0K PiAuaA0KPiBpbmRleCAyODFkODkzLi5iZjkwOWQxIDEwMDY0NA0KPiAtLS0gYS91ZWZpLQ0KPiBz Y3QvU2N0UGtnL1Rlc3RDYXNlL1VFRkkvRUZJL1Byb3RvY29sL1NpbXBsZU5ldHdvcmsvQmxhY2tC b3hUZXN0L0d1aWQNCj4gLmgNCj4gKysrIGIvdWVmaS0NCj4gc2N0L1NjdFBrZy9UZXN0Q2FzZS9V RUZJL0VGSS9Qcm90b2NvbC9TaW1wbGVOZXR3b3JrL0JsYWNrQm94VGVzdC9HdWlkDQo+IC5oDQo+ IEBAIC0xLDcgKzEsNyBAQA0KPiAgLyoqIEBmaWxlDQo+ICANCj4gICAgQ29weXJpZ2h0IDIwMDYg LSAyMDE2IFVuaWZpZWQgRUZJLCBJbmMuPEJSPg0KPiAtICBDb3B5cmlnaHQgKGMpIDIwMTAgLSAy MDE2LCBJbnRlbCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyANCj4gcmVzZXJ2ZWQuPEJSPg0KPiAr ICBDb3B5cmlnaHQgKGMpIDIwMTAgLSAyMDE4LCBJbnRlbCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0 cw0KPiByZXNlcnZlZC48QlI+DQo+ICANCj4gICAgVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21w YW55aW5nIG1hdGVyaWFscw0KPiAgICBhcmUgbGljZW5zZWQgYW5kIG1hZGUgYXZhaWxhYmxlIHVu ZGVyIHRoZSB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiANCj4gdGhlIEJTRCBMaWNlbnNlIEBAIC0y MzUsNiArMjM1LDExIEBAIGV4dGVybiBFRklfR1VJRCANCj4gZ1NpbXBsZU5ldHdvcmtCQlRlc3RD b25mb3JtYW5jZUFzc2VydGlvbkd1aWQwNDE7DQo+ICANCj4gIGV4dGVybiBFRklfR1VJRCBnU2lt cGxlTmV0d29ya0JCVGVzdENvbmZvcm1hbmNlQXNzZXJ0aW9uR3VpZDA0MjsNCj4gIA0KPiArI2Rl ZmluZSBFRklfVEVTVF9TSU1QTEVORVRXT1JLQkJURVNUQ09ORk9STUFOQ0VfQVNTRVJUSU9OXzA0 M19HVUlEIFwgDQo+ICt7IDB4OGNlYzBiODYsIDB4Nzc3MywgMHg0ZDNjLCB7MHg4NCwgMHgxMywg MHgyNiwgMHgzNywgMHhmYiwgMHhkMCwNCj4gMHg4ZSwgMHgxYiB9fQ0KPiArDQo+ICtleHRlcm4g RUZJX0dVSUQgZ1NpbXBsZU5ldHdvcmtCQlRlc3RDb25mb3JtYW5jZUFzc2VydGlvbkd1aWQwNDM7 DQo+ICsNCj4gICNkZWZpbmUgRUZJX1RFU1RfU0lNUExFTkVUV09SS0JCVEVTVEZVTkNUSU9OX0FT U0VSVElPTl8wMDFfR1VJRCBcICB7IA0KPiAweGY1ODY1MWZlLCAweDA1MzgsIDB4NDQwNywgezB4 ODgsIDB4ZTAsIDB4ODgsIDB4YjgsIDB4ZGEsIDB4MTgsIDB4MzgsIA0KPiAweDNhIH19DQo+ICAN Cj4gZGlmZiAtLWdpdCBhL3VlZmktDQo+IHNjdC9TY3RQa2cvVGVzdENhc2UvVUVGSS9FRkkvUHJv dG9jb2wvU2ltcGxlTmV0d29yay9CbGFja0JveFRlc3QvU2ltcA0KPiBsZU5ldHdvcmtCQlRlc3RD b25mb3JtYW5jZS5jIGIvdWVmaS0NCj4gc2N0L1NjdFBrZy9UZXN0Q2FzZS9VRUZJL0VGSS9Qcm90 b2NvbC9TaW1wbGVOZXR3b3JrL0JsYWNrQm94VGVzdC9TaW1wDQo+IGxlTmV0d29ya0JCVGVzdENv bmZvcm1hbmNlLmMNCj4gaW5kZXggY2NiYmFkMC4uMDNhMGQwNCAxMDA2NDQNCj4gLS0tIGEvdWVm aS0NCj4gc2N0L1NjdFBrZy9UZXN0Q2FzZS9VRUZJL0VGSS9Qcm90b2NvbC9TaW1wbGVOZXR3b3Jr L0JsYWNrQm94VGVzdC9TaW1wDQo+IGxlTmV0d29ya0JCVGVzdENvbmZvcm1hbmNlLmMNCj4gKysr IGIvdWVmaS0NCj4gc2N0L1NjdFBrZy9UZXN0Q2FzZS9VRUZJL0VGSS9Qcm90b2NvbC9TaW1wbGVO ZXR3b3JrL0JsYWNrQm94VGVzdC9TaW1wDQo+IGxlTmV0d29ya0JCVGVzdENvbmZvcm1hbmNlLmMN Cj4gQEAgLTEsNyArMSw3IEBADQo+ICAvKiogQGZpbGUNCj4gIA0KPiAgICBDb3B5cmlnaHQgMjAw NiAtIDIwMTYgVW5pZmllZCBFRkksIEluYy48QlI+DQo+IC0gIENvcHlyaWdodCAoYykgMjAxMCAt IDIwMTYsIEludGVsIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIA0KPiByZXNlcnZlZC48QlI+DQo+ ICsgIENvcHlyaWdodCAoYykgMjAxMCAtIDIwMTgsIEludGVsIENvcnBvcmF0aW9uLiBBbGwgcmln aHRzDQo+IHJlc2VydmVkLjxCUj4NCj4gIA0KPiAgICBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2Nv bXBhbnlpbmcgbWF0ZXJpYWxzDQo+ICAgIGFyZSBsaWNlbnNlZCBhbmQgbWFkZSBhdmFpbGFibGUg dW5kZXIgdGhlIHRlcm1zIGFuZCBjb25kaXRpb25zIG9mIA0KPiB0aGUgQlNEIExpY2Vuc2UgQEAg LTU4MSwxMCArNTgxLDkgQEAgDQo+IEJCVGVzdFJlY2VpdmVGaWx0ZXJDb25mb3JtYW5jZVRlc3Qg KCAgew0KPiAgICBFRklfU1RBTkRBUkRfVEVTVF9MSUJSQVJZX1BST1RPQ09MICAgICpTdGFuZGFy ZExpYjsNCj4gICAgRUZJX1NUQVRVUyAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdGF0dXM7 DQo+IC0gIEVGSV9TVEFUVVMgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RhdHVzQnVmWzVd Ow0KPiAtICBFRklfVEVTVF9BU1NFUlRJT04gICAgICAgICAgICAgICAgICAgIEFzc2VydGlvblR5 cGVbNV07DQo+ICsgIEVGSV9URVNUX0FTU0VSVElPTiAgICAgICAgICAgICAgICAgICAgQXNzZXJ0 aW9uVHlwZTsNCj4gICAgRUZJX1NJTVBMRV9ORVRXT1JLX1BST1RPQ09MICAgICAgICAgICAqU25w SW50ZXJmYWNlOw0KPiAtICBFRklfU0lNUExFX05FVFdPUktfU1RBVEUgICAgICAgICAgICAgIFN0 YXRlMSwgU3RhdGUyOw0KPiArICBFRklfTUFDX0FERFJFU1MgICAgICAgICAgICAgICAgICAgICAg IE1BQzsNCj4gIA0KPiAgICAvLw0KPiAgICAvLyBHZXQgdGhlIFN0YW5kYXJkIExpYnJhcnkgSW50 ZXJmYWNlIEBAIC02MDgsMTYgKzYwNywxNCBAQCANCj4gQkJUZXN0UmVjZWl2ZUZpbHRlckNvbmZv cm1hbmNlVGVzdCAoDQo+ICAgIC8vIENoZWNrIHdoZXRoZXIgdGhlIHN0YXRlIG9mIG5ldHdvcmsg aW50ZXJmYWNlIGlzIA0KPiBFZmlTaW1wbGVOZXR3b3JrU3RvcHBlZC4NCj4gICAgLy8gSWYgbm90 LCBjaGFuZ2UgdGhlIHN0YXRlIHRvIEVmaVNpbXBsZU5ldHdvcmtTdG9wcGVkLg0KPiAgICAvLw0K PiAtICBTdGF0ZTEgPSBTbnBJbnRlcmZhY2UtPk1vZGUtPlN0YXRlOw0KPiAtICBpZiAoU3RhdGUx ID09IEVmaVNpbXBsZU5ldHdvcmtJbml0aWFsaXplZCkgew0KPiArICBpZiAoU25wSW50ZXJmYWNl LT5Nb2RlLT5TdGF0ZSA9PSBFZmlTaW1wbGVOZXR3b3JrSW5pdGlhbGl6ZWQpIHsNCj4gICAgICBT dGF0dXMgPSBTbnBJbnRlcmZhY2UtPlNodXRkb3duIChTbnBJbnRlcmZhY2UpOw0KPiAgICAgIGlm IChFRklfRVJST1IoU3RhdHVzKSkgew0KPiAgICAgICAgcmV0dXJuIFN0YXR1czsNCj4gICAgICB9 DQo+ICAgIH0NCj4gIA0KPiAtICBTdGF0ZTIgPSBTbnBJbnRlcmZhY2UtPk1vZGUtPlN0YXRlOw0K PiAtICBpZiAoU3RhdGUyID09IEVmaVNpbXBsZU5ldHdvcmtTdGFydGVkKSB7DQo+ICsgIGlmIChT bnBJbnRlcmZhY2UtPk1vZGUtPlN0YXRlID09IEVmaVNpbXBsZU5ldHdvcmtTdGFydGVkKSB7DQo+ ICAgICAgU3RhdHVzID0gU25wSW50ZXJmYWNlLT5TdG9wIChTbnBJbnRlcmZhY2UpOw0KPiAgICAg IGlmIChFRklfRVJST1IoU3RhdHVzKSkgew0KPiAgICAgICAgcmV0dXJuIFN0YXR1czsNCj4gQEAg LTYyOCwxMyArNjI1LDI0IEBAIEJCVGVzdFJlY2VpdmVGaWx0ZXJDb25mb3JtYW5jZVRlc3QgKA0K PiAgICAvLyBBc3NlcnRpb24gUG9pbnQgNS42LjIuMQ0KPiAgICAvLyBDYWxsIFJlY2VpdmVGaWx0 ZXJzKCkgZnVuY3Rpb24gaWYgbmV0d29yayBpbnRlcmZhY2Ugbm90IHN0YXJ0Lg0KPiAgICAvLw0K PiAtICBTdGF0dXNCdWZbMF0gPSBTbnBJbnRlcmZhY2UtPlJlY2VpdmVGaWx0ZXJzIChTbnBJbnRl cmZhY2UsIDAsIDAsIA0KPiBGQUxTRSwgMCwgTlVMTCk7DQo+IC0gIGlmICgoU3RhdHVzQnVmWzBd ID09IEVGSV9OT1RfU1RBUlRFRCkgJiYgKFNucEludGVyZmFjZS0+TW9kZS0NCj4gPlN0YXRlID09 IEVmaVNpbXBsZU5ldHdvcmtTdG9wcGVkKSkgew0KPiAtICAgIEFzc2VydGlvblR5cGVbMF0gPSBF RklfVEVTVF9BU1NFUlRJT05fUEFTU0VEOw0KPiArICBTdGF0dXMgPSBTbnBJbnRlcmZhY2UtPlJl Y2VpdmVGaWx0ZXJzIChTbnBJbnRlcmZhY2UsIDAsIDAsIEZBTFNFLA0KPiAwLCBOVUxMKTsNCj4g KyAgaWYgKChTdGF0dXMgPT0gRUZJX05PVF9TVEFSVEVEKSAmJiAoU25wSW50ZXJmYWNlLT5Nb2Rl LT5TdGF0ZSA9PQ0KPiBFZmlTaW1wbGVOZXR3b3JrU3RvcHBlZCkpIHsNCj4gKyAgICBBc3NlcnRp b25UeXBlID0gRUZJX1RFU1RfQVNTRVJUSU9OX1BBU1NFRDsNCj4gICAgfSBlbHNlIHsNCj4gLSAg ICBBc3NlcnRpb25UeXBlWzBdID0gRUZJX1RFU1RfQVNTRVJUSU9OX0ZBSUxFRDsNCj4gKyAgICBB c3NlcnRpb25UeXBlID0gRUZJX1RFU1RfQVNTRVJUSU9OX0ZBSUxFRDsNCj4gICAgfQ0KPiAgDQo+ ICsgIFN0YW5kYXJkTGliLT5SZWNvcmRBc3NlcnRpb24gKA0KPiArICAgICAgICAgICAgICAgICBT dGFuZGFyZExpYiwNCj4gKyAgICAgICAgICAgICAgICAgQXNzZXJ0aW9uVHlwZSwNCj4gKyAgICAg ICAgICAgICAgICAgZ1NpbXBsZU5ldHdvcmtCQlRlc3RDb25mb3JtYW5jZUFzc2VydGlvbkd1aWQw MDYsDQo+ICsgICAgICAgICAgICAgICAgIEwiRUZJX1NJTVBMRV9ORVRXT1JLX1BST1RPQ09MLlJl Y2VpdmVGaWx0ZXJzIC0NCj4gSW52b2tlIFJlY2VpdmVGaWx0ZXJzKCkgd2hlbiBuZXR3b3JrIGlu dGVyZmFjZSBub3Qgc3RhcnQuIiwNCj4gKyAgICAgICAgICAgICAgICAgTCIlYTolZDpTdGF0dXMg LSAlciIsDQo+ICsgICAgICAgICAgICAgICAgIF9fRklMRV9fLA0KPiArICAgICAgICAgICAgICAg ICAoVUlOVE4pX19MSU5FX18sDQo+ICsgICAgICAgICAgICAgICAgIFN0YXR1cw0KPiArICAgICAg ICAgICAgICAgICApOw0KPiArDQo+ICAgIC8vDQo+ICAgIC8vIEFzc2VydGlvbiBQb2ludCA1LjYu Mi4yDQo+ICAgIC8vIENhbGwgUmVjZWl2ZUZpbHRlcnMoKSBmdW5jdGlvbiBpZiBuZXR3b3JrIGlu dGVyZmFjZSBub3QgDQo+IGluaXRpYWxpemVkLg0KPiBAQCAtNjQ0LDEzICs2NTIsMjQgQEAgQkJU ZXN0UmVjZWl2ZUZpbHRlckNvbmZvcm1hbmNlVGVzdCAoDQo+ICAgICAgcmV0dXJuIFN0YXR1czsN Cj4gICAgfQ0KPiAgDQo+IC0gIFN0YXR1c0J1ZlsxXSA9IFNucEludGVyZmFjZS0+UmVjZWl2ZUZp bHRlcnMgKFNucEludGVyZmFjZSwgMCwgMCwgDQo+IEZBTFNFLCAwLCBOVUxMKTsNCj4gLSAgaWYg KFN0YXR1c0J1ZlsxXSA9PSBFRklfREVWSUNFX0VSUk9SKSB7DQo+IC0gICAgQXNzZXJ0aW9uVHlw ZVsxXSA9IEVGSV9URVNUX0FTU0VSVElPTl9QQVNTRUQ7DQo+ICsgIFN0YXR1cyA9IFNucEludGVy ZmFjZS0+UmVjZWl2ZUZpbHRlcnMgKFNucEludGVyZmFjZSwgMCwgMCwgRkFMU0UsDQo+IDAsIE5V TEwpOw0KPiArICBpZiAoU3RhdHVzID09IEVGSV9ERVZJQ0VfRVJST1IpIHsNCj4gKyAgICBBc3Nl cnRpb25UeXBlID0gRUZJX1RFU1RfQVNTRVJUSU9OX1BBU1NFRDsNCj4gICAgfSBlbHNlIHsNCj4g LSAgICBBc3NlcnRpb25UeXBlWzFdID0gRUZJX1RFU1RfQVNTRVJUSU9OX0ZBSUxFRDsNCj4gKyAg ICBBc3NlcnRpb25UeXBlID0gRUZJX1RFU1RfQVNTRVJUSU9OX0ZBSUxFRDsNCj4gICAgfQ0KPiAt DQo+ICsNCj4gKyAgU3RhbmRhcmRMaWItPlJlY29yZEFzc2VydGlvbiAoDQo+ICsgICAgICAgICAg ICAgICAgIFN0YW5kYXJkTGliLA0KPiArICAgICAgICAgICAgICAgICBBc3NlcnRpb25UeXBlLA0K PiArICAgICAgICAgICAgICAgICBnU2ltcGxlTmV0d29ya0JCVGVzdENvbmZvcm1hbmNlQXNzZXJ0 aW9uR3VpZDAwNywNCj4gKyAgICAgICAgICAgICAgICAgTCJFRklfU0lNUExFX05FVFdPUktfUFJP VE9DT0wuUmVjZWl2ZUZpbHRlcnMgLQ0KPiBJbnZva2UgUmVjZWl2ZUZpbHRlcnMoKSB3aGVuIG5l dHdvcmsgaW50ZXJmYWNlIG5vdCBpbml0aWFsaXplZC4iLA0KPiArICAgICAgICAgICAgICAgICBM IiVhOiVkOlN0YXR1cyAtICVyIiwNCj4gKyAgICAgICAgICAgICAgICAgX19GSUxFX18sDQo+ICsg ICAgICAgICAgICAgICAgIChVSU5UTilfX0xJTkVfXywNCj4gKyAgICAgICAgICAgICAgICAgU3Rh dHVzDQo+ICsgICAgICAgICAgICAgICAgICk7DQo+ICsNCj4gICAgLy8NCj4gICAgLy8gQXNzZXJ0 aW9uIFBvaW50IDUuNi4yLjMNCj4gICAgLy8gQ2FsbCBSZWNlaXZlRmlsdGVycygpIGZ1bmN0aW9u IHdpdGggaW52YWxpZCBwYXJhbWV0ZXJzLg0KPiBAQCAtNjYzLDkzICs2ODIsOTYgQEAgQkJUZXN0 UmVjZWl2ZUZpbHRlckNvbmZvcm1hbmNlVGVzdCAoDQo+ICAgIC8vDQo+ICAgIC8vICBDYWxsIFJl Y2VpdmVGaWx0ZXJzIHdpdGggaW52YWxpZGUgRW5hYmxlDQo+ICAgIC8vDQo+IC0gIFN0YXR1c0J1 ZlsyXSA9IFNucEludGVyZmFjZS0+UmVjZWl2ZUZpbHRlcnMgKFNucEludGVyZmFjZSwgDQo+IH4o U25wSW50ZXJmYWNlLT5Nb2RlLT5SZWNlaXZlRmlsdGVyTWFzayksIDAsIEZBTFNFLCAwLCBOVUxM KTsNCj4gLSAgaWYgKFN0YXR1c0J1ZlsyXSA9PSBFRklfSU5WQUxJRF9QQVJBTUVURVIpIHsNCj4g LSAgICBBc3NlcnRpb25UeXBlWzJdID0gRUZJX1RFU1RfQVNTRVJUSU9OX1BBU1NFRDsNCj4gLSAg fSBlbHNlIHsNCj4gLSAgICBBc3NlcnRpb25UeXBlWzJdID0gRUZJX1RFU1RfQVNTRVJUSU9OX0ZB SUxFRDsNCj4gLSAgfQ0KPiAtDQo+IC0gIC8vDQo+IC0gIC8vICBDYWxsIFJlY2VpdmVGaWx0ZXJz IHdpdGggaW52YWxpZGUgTUNhc3RGaWx0ZXJDbnQNCj4gLSAgLy8NCj4gLSAgU3RhdHVzQnVmWzNd ID0gU25wSW50ZXJmYWNlLT5SZWNlaXZlRmlsdGVycyAoU25wSW50ZXJmYWNlLCAwLCAwLCANCj4g RkFMU0UsIFNucEludGVyZmFjZS0+TW9kZS0+TWF4TUNhc3RGaWx0ZXJDb3VudCArIDEsIE5VTEwp Ow0KPiAtICBpZiAoU3RhdHVzQnVmWzNdID09IEVGSV9JTlZBTElEX1BBUkFNRVRFUikgew0KPiAt ICAgIEFzc2VydGlvblR5cGVbM10gPSBFRklfVEVTVF9BU1NFUlRJT05fUEFTU0VEOw0KPiAtICB9 IGVsc2Ugew0KPiAtICAgIEFzc2VydGlvblR5cGVbM10gPSBFRklfVEVTVF9BU1NFUlRJT05fRkFJ TEVEOw0KPiAtICB9DQo+IC0NCj4gLSAgLy8NCj4gLSAgLy8gIENhbGwgUmVjZWl2ZUZpbHRlcnMg d2l0aCBNQ2FzdEZpbHRlckNudCBub3QgbWF0Y2ggTUNhc3RGaWx0ZXINCj4gLSAgLy8NCj4gLSAg U3RhdHVzQnVmWzRdID0gU25wSW50ZXJmYWNlLT5SZWNlaXZlRmlsdGVycyAoU25wSW50ZXJmYWNl LCAwLCAwLCANCj4gRkFMU0UsIDEsIE5VTEwpOw0KPiAtICBpZiAoU3RhdHVzQnVmWzRdID09IEVG SV9JTlZBTElEX1BBUkFNRVRFUikgew0KPiAtICAgIEFzc2VydGlvblR5cGVbNF0gPSBFRklfVEVT VF9BU1NFUlRJT05fUEFTU0VEOw0KPiArICBTdGF0dXMgPSBTbnBJbnRlcmZhY2UtPlJlY2VpdmVG aWx0ZXJzIChTbnBJbnRlcmZhY2UsDQo+IH4oU25wSW50ZXJmYWNlLT5Nb2RlLT5SZWNlaXZlRmls dGVyTWFzayksIDAsIEZBTFNFLCAwLCBOVUxMKTsNCj4gKyAgaWYgKFN0YXR1cyA9PSBFRklfSU5W QUxJRF9QQVJBTUVURVIpIHsNCj4gKyAgICBBc3NlcnRpb25UeXBlID0gRUZJX1RFU1RfQVNTRVJU SU9OX1BBU1NFRDsNCj4gICAgfSBlbHNlIHsNCj4gLSAgICBBc3NlcnRpb25UeXBlWzRdID0gRUZJ X1RFU1RfQVNTRVJUSU9OX0ZBSUxFRDsNCj4gKyAgICBBc3NlcnRpb25UeXBlID0gRUZJX1RFU1Rf QVNTRVJUSU9OX0ZBSUxFRDsNCj4gICAgfQ0KPiAgDQo+IC0NCj4gLSAgU3RhbmRhcmRMaWItPlJl Y29yZEFzc2VydGlvbiAoDQo+IC0gICAgICAgICAgICAgICAgIFN0YW5kYXJkTGliLA0KPiAtICAg ICAgICAgICAgICAgICBBc3NlcnRpb25UeXBlWzBdLA0KPiAtICAgICAgICAgICAgICAgICBnU2lt cGxlTmV0d29ya0JCVGVzdENvbmZvcm1hbmNlQXNzZXJ0aW9uR3VpZDAwNiwNCj4gLSAgICAgICAg ICAgICAgICAgTCJFRklfU0lNUExFX05FVFdPUktfUFJPVE9DT0wuUmVjZWl2ZUZpbHRlcnMgLQ0K PiBJbnZva2UgUmVjZWl2ZUZpbHRlcnMoKSB3aGVuIG5ldHdvcmsgaW50ZXJmYWNlIG5vdCBzdGFy dC4iLA0KPiAtICAgICAgICAgICAgICAgICBMIiVhOiVkOlN0YXR1cyAtICVyIiwNCj4gLSAgICAg ICAgICAgICAgICAgX19GSUxFX18sDQo+IC0gICAgICAgICAgICAgICAgIChVSU5UTilfX0xJTkVf XywNCj4gLSAgICAgICAgICAgICAgICAgU3RhdHVzQnVmWzBdDQo+IC0gICAgICAgICAgICAgICAg ICk7DQo+IC0NCj4gLSAgU3RhbmRhcmRMaWItPlJlY29yZEFzc2VydGlvbiAoDQo+IC0gICAgICAg ICAgICAgICAgIFN0YW5kYXJkTGliLA0KPiAtICAgICAgICAgICAgICAgICBBc3NlcnRpb25UeXBl WzFdLA0KPiAtICAgICAgICAgICAgICAgICBnU2ltcGxlTmV0d29ya0JCVGVzdENvbmZvcm1hbmNl QXNzZXJ0aW9uR3VpZDAwNywNCj4gLSAgICAgICAgICAgICAgICAgTCJFRklfU0lNUExFX05FVFdP UktfUFJPVE9DT0wuUmVjZWl2ZUZpbHRlcnMgLQ0KPiBJbnZva2UgUmVjZWl2ZUZpbHRlcnMoKSB3 aGVuIG5ldHdvcmsgaW50ZXJmYWNlIG5vdCBpbml0aWFsaXplZC4iLA0KPiAtICAgICAgICAgICAg ICAgICBMIiVhOiVkOlN0YXR1cyAtICVyIiwNCj4gLSAgICAgICAgICAgICAgICAgX19GSUxFX18s DQo+IC0gICAgICAgICAgICAgICAgIChVSU5UTilfX0xJTkVfXywNCj4gLSAgICAgICAgICAgICAg ICAgU3RhdHVzQnVmWzFdDQo+IC0gICAgICAgICAgICAgICAgICk7DQo+IC0gIA0KPiAgICBTdGFu ZGFyZExpYi0+UmVjb3JkQXNzZXJ0aW9uICgNCj4gICAgICAgICAgICAgICAgICAgU3RhbmRhcmRM aWIsDQo+IC0gICAgICAgICAgICAgICAgIEFzc2VydGlvblR5cGVbMl0sDQo+ICsgICAgICAgICAg ICAgICAgIEFzc2VydGlvblR5cGUsDQo+ICAgICAgICAgICAgICAgICAgIGdTaW1wbGVOZXR3b3Jr QkJUZXN0Q29uZm9ybWFuY2VBc3NlcnRpb25HdWlkMDA4LA0KPiAgICAgICAgICAgICAgICAgICBM IkVGSV9TSU1QTEVfTkVUV09SS19QUk9UT0NPTC5SZWNlaXZlRmlsdGVycyAtIA0KPiBJbnZva2Ug UmVjZWl2ZUZpbHRlcnMoKSB3aXRoIGludmFsaWQgRW5hYmxlLiIsDQo+ICAgICAgICAgICAgICAg ICAgIEwiJWE6JWQ6U3RhdHVzIC0gJXIiLA0KPiAgICAgICAgICAgICAgICAgICBfX0ZJTEVfXywN Cj4gICAgICAgICAgICAgICAgICAgKFVJTlROKV9fTElORV9fLA0KPiAtICAgICAgICAgICAgICAg ICBTdGF0dXNCdWZbMl0NCj4gKyAgICAgICAgICAgICAgICAgU3RhdHVzDQo+ICAgICAgICAgICAg ICAgICAgICk7DQo+ICANCj4gLSAgU3RhbmRhcmRMaWItPlJlY29yZEFzc2VydGlvbiAoDQo+IC0g ICAgICAgICAgICAgICAgIFN0YW5kYXJkTGliLA0KPiAtICAgICAgICAgICAgICAgICBBc3NlcnRp b25UeXBlWzNdLA0KPiAtICAgICAgICAgICAgICAgICBnU2ltcGxlTmV0d29ya0JCVGVzdENvbmZv cm1hbmNlQXNzZXJ0aW9uR3VpZDAwOSwNCj4gLSAgICAgICAgICAgICAgICAgTCJFRklfU0lNUExF X05FVFdPUktfUFJPVE9DT0wuUmVjZWl2ZUZpbHRlcnMgLQ0KPiBJbnZva2UgUmVjZWl2ZUZpbHRl cnMoKSB3aXRoIGludmFsaWQgTUNhc3RGaWx0ZXJDbnQuIiwNCj4gLSAgICAgICAgICAgICAgICAg TCIlYTolZDpTdGF0dXMgLSAlciIsDQo+IC0gICAgICAgICAgICAgICAgIF9fRklMRV9fLA0KPiAt ICAgICAgICAgICAgICAgICAoVUlOVE4pX19MSU5FX18sDQo+IC0gICAgICAgICAgICAgICAgIFN0 YXR1c0J1ZlszXQ0KPiAtICAgICAgICAgICAgICAgICApOw0KPiArICAvLw0KPiArICAvLyAgQ2Fs bCBSZWNlaXZlRmlsdGVycyB3aXRoIGludmFsaWRlIE1DYXN0RmlsdGVyQ250ICAvLyAgaWYgDQo+ ICsgKChTbnBJbnRlcmZhY2UtPk1vZGUtPlJlY2VpdmVGaWx0ZXJNYXNrICYNCj4gRUZJX1NJTVBM RV9ORVRXT1JLX1JFQ0VJVkVfTVVMVElDQVNUKSAhPSAwKSB7DQo+ICsgICAgU2N0U2V0TWVtICgm TUFDLCBzaXplb2YgKE1BQyksIDB4MDApOw0KPiArICAgIE1BQy5BZGRyWzBdID0gMHgwMTsNCj4g KyAgICBNQUMuQWRkclsxXSA9IDB4MDA7DQo+ICsgICAgTUFDLkFkZHJbMl0gPSAweDVlOw0KPiAr ICAgIE1BQy5BZGRyWzNdID0gMHgwMDsNCj4gKyAgICBNQUMuQWRkcls0XSA9IDB4MDA7DQo+ICsg ICAgTUFDLkFkZHJbNV0gPSAweDAyOw0KV2h5IGlzIHRoZSBNQUMgaGFyZGNvZGVkLiBDbGFyaWZp Y2F0aW9uPw0KDQo+ICsNCj4gKyAgICBTdGF0dXMgPSBTbnBJbnRlcmZhY2UtPlJlY2VpdmVGaWx0 ZXJzIChTbnBJbnRlcmZhY2UsDQo+IEVGSV9TSU1QTEVfTkVUV09SS19SRUNFSVZFX01VTFRJQ0FT VCwgMCwgRkFMU0UsIFNucEludGVyZmFjZS0+TW9kZS0NCj4gPk1heE1DYXN0RmlsdGVyQ291bnQg KyAxLCAmTUFDKTsNCj4gKyAgICBpZiAoU3RhdHVzID09IEVGSV9JTlZBTElEX1BBUkFNRVRFUikg ew0KPiArICAgICAgQXNzZXJ0aW9uVHlwZSA9IEVGSV9URVNUX0FTU0VSVElPTl9QQVNTRUQ7DQo+ ICsgICAgfSBlbHNlIHsNCj4gKyAgICAgIEFzc2VydGlvblR5cGUgPSBFRklfVEVTVF9BU1NFUlRJ T05fRkFJTEVEOw0KPiArICAgIH0NCj4gIA0KPiAtICBTdGFuZGFyZExpYi0+UmVjb3JkQXNzZXJ0 aW9uICgNCj4gLSAgICAgICAgICAgICAgICAgU3RhbmRhcmRMaWIsDQo+IC0gICAgICAgICAgICAg ICAgIEFzc2VydGlvblR5cGVbNF0sDQo+IC0gICAgICAgICAgICAgICAgIGdTaW1wbGVOZXR3b3Jr QkJUZXN0Q29uZm9ybWFuY2VBc3NlcnRpb25HdWlkMDEwLA0KPiAtICAgICAgICAgICAgICAgICBM IkVGSV9TSU1QTEVfTkVUV09SS19QUk9UT0NPTC5SZWNlaXZlRmlsdGVycyAtDQo+IEludm9rZSBS ZWNlaXZlRmlsdGVycygpIHdpdGggTUNhc3RGaWx0ZXJDbnQgbm90IG1hdGNoIE1DYXN0RmlsdGVy LiIsDQo+IC0gICAgICAgICAgICAgICAgIEwiJWE6JWQ6U3RhdHVzIC0gJXIiLA0KPiAtICAgICAg ICAgICAgICAgICBfX0ZJTEVfXywNCj4gLSAgICAgICAgICAgICAgICAgKFVJTlROKV9fTElORV9f LA0KPiAtICAgICAgICAgICAgICAgICBTdGF0dXNCdWZbNF0NCj4gLSAgICAgICAgICAgICAgICAg KTsNCj4gKyAgICBTdGFuZGFyZExpYi0+UmVjb3JkQXNzZXJ0aW9uICgNCj4gKyAgICAgICAgICAg ICAgICAgICBTdGFuZGFyZExpYiwNCj4gKyAgICAgICAgICAgICAgICAgICBBc3NlcnRpb25UeXBl LA0KPiArICAgICAgICAgICAgICAgICAgIGdTaW1wbGVOZXR3b3JrQkJUZXN0Q29uZm9ybWFuY2VB c3NlcnRpb25HdWlkMDA5LA0KPiArICAgICAgICAgICAgICAgICAgIEwiRUZJX1NJTVBMRV9ORVRX T1JLX1BST1RPQ09MLlJlY2VpdmVGaWx0ZXJzIC0NCj4gSW52b2tlIFJlY2VpdmVGaWx0ZXJzKCkg d2l0aCBpbnZhbGlkIE1DYXN0RmlsdGVyQ250IGlzIGdyZWF0ZXIgdGhhbg0KPiBTbnAtPk1vZGUt Pk1heE1DYXN0RmlsdGVyQ291bnQuIiwNCj4gKyAgICAgICAgICAgICAgICAgICBMIiVhOiVkOlN0 YXR1cyAtICVyIiwNCj4gKyAgICAgICAgICAgICAgICAgICBfX0ZJTEVfXywNCj4gKyAgICAgICAg ICAgICAgICAgICAoVUlOVE4pX19MSU5FX18sDQo+ICsgICAgICAgICAgICAgICAgICAgU3RhdHVz DQo+ICsgICAgICAgICAgICAgICAgICAgKTsNCj4gKw0KPiArICAgIFN0YXR1cyA9IFNucEludGVy ZmFjZS0+UmVjZWl2ZUZpbHRlcnMgKFNucEludGVyZmFjZSwNCj4gRUZJX1NJTVBMRV9ORVRXT1JL X1JFQ0VJVkVfTVVMVElDQVNULCAwLCBGQUxTRSwgMCwgJk1BQyk7DQo+ICsgICAgaWYgKFN0YXR1 cyA9PSBFRklfSU5WQUxJRF9QQVJBTUVURVIpIHsNCj4gKyAgICAgIEFzc2VydGlvblR5cGUgPSBF RklfVEVTVF9BU1NFUlRJT05fUEFTU0VEOw0KPiArICAgIH0gZWxzZSB7DQo+ICsgICAgICBBc3Nl cnRpb25UeXBlID0gRUZJX1RFU1RfQVNTRVJUSU9OX0ZBSUxFRDsNCj4gKyAgICB9DQo+ICsNCj4g KyAgICBTdGFuZGFyZExpYi0+UmVjb3JkQXNzZXJ0aW9uICgNCj4gKyAgICAgICAgICAgICAgICAg ICBTdGFuZGFyZExpYiwNCj4gKyAgICAgICAgICAgICAgICAgICBBc3NlcnRpb25UeXBlLA0KPiAr ICAgICAgICAgICAgICAgICAgIGdTaW1wbGVOZXR3b3JrQkJUZXN0Q29uZm9ybWFuY2VBc3NlcnRp b25HdWlkMDQzLA0KPiArICAgICAgICAgICAgICAgICAgIEwiRUZJX1NJTVBMRV9ORVRXT1JLX1BS T1RPQ09MLlJlY2VpdmVGaWx0ZXJzIC0NCj4gSW52b2tlIFJlY2VpdmVGaWx0ZXJzKCkgd2l0aCBp bnZhbGlkIE1DYXN0RmlsdGVyQ250IGlzIDAuIiwNCj4gKyAgICAgICAgICAgICAgICAgICBMIiVh OiVkOlN0YXR1cyAtICVyIiwNCj4gKyAgICAgICAgICAgICAgICAgICBfX0ZJTEVfXywNCj4gKyAg ICAgICAgICAgICAgICAgICAoVUlOVE4pX19MSU5FX18sDQo+ICsgICAgICAgICAgICAgICAgICAg U3RhdHVzDQo+ICsgICAgICAgICAgICAgICAgICAgKTsNCj4gKw0KPiArICAgIFN0YXR1cyA9IFNu cEludGVyZmFjZS0+UmVjZWl2ZUZpbHRlcnMgKFNucEludGVyZmFjZSwNCj4gRUZJX1NJTVBMRV9O RVRXT1JLX1JFQ0VJVkVfTVVMVElDQVNULCAwLCBGQUxTRSwgMSwgTlVMTCk7DQo+ICsgICAgaWYg KFN0YXR1cyA9PSBFRklfSU5WQUxJRF9QQVJBTUVURVIpIHsNCj4gKyAgICAgIEFzc2VydGlvblR5 cGUgPSBFRklfVEVTVF9BU1NFUlRJT05fUEFTU0VEOw0KPiArICAgIH0gZWxzZSB7DQo+ICsgICAg ICBBc3NlcnRpb25UeXBlID0gRUZJX1RFU1RfQVNTRVJUSU9OX0ZBSUxFRDsNCj4gKyAgICB9DQo+ ICsNCj4gKyAgICBTdGFuZGFyZExpYi0+UmVjb3JkQXNzZXJ0aW9uICgNCj4gKyAgICAgICAgICAg ICAgICAgICBTdGFuZGFyZExpYiwNCj4gKyAgICAgICAgICAgICAgICAgICBBc3NlcnRpb25UeXBl LA0KPiArICAgICAgICAgICAgICAgICAgIGdTaW1wbGVOZXR3b3JrQkJUZXN0Q29uZm9ybWFuY2VB c3NlcnRpb25HdWlkMDEwLA0KPiArICAgICAgICAgICAgICAgICAgIEwiRUZJX1NJTVBMRV9ORVRX T1JLX1BST1RPQ09MLlJlY2VpdmVGaWx0ZXJzIC0NCj4gSW52b2tlIFJlY2VpdmVGaWx0ZXJzKCkg d2l0aCBNQ2FzdEZpbHRlckNudCBub3QgbWF0Y2ggTUNhc3RGaWx0ZXIuIiwNCj4gKyAgICAgICAg ICAgICAgICAgICBMIiVhOiVkOlN0YXR1cyAtICVyIiwNCj4gKyAgICAgICAgICAgICAgICAgICBf X0ZJTEVfXywNCj4gKyAgICAgICAgICAgICAgICAgICAoVUlOVE4pX19MSU5FX18sDQo+ICsgICAg ICAgICAgICAgICAgICAgU3RhdHVzDQo+ICsgICAgICAgICAgICAgICAgICAgKTsNCj4gKw0KPiAr ICB9DQo+ICANCj4gICAgLy8NCj4gICAgLy8gUmVzdG9yZSBTTlAgU3RhdGUNCj4gICAgLy8NCj4g LSAgaWYgKFN0YXRlMSA9PSBFZmlTaW1wbGVOZXR3b3JrU3RvcHBlZCkgew0KPiArICBpZiAoU25w SW50ZXJmYWNlLT5Nb2RlLT5TdGF0ZSA9PSBFZmlTaW1wbGVOZXR3b3JrU3RvcHBlZCkgew0KPiAg ICAgIFN0YXR1cyA9IFNucEludGVyZmFjZS0+U2h1dGRvd24gKFNucEludGVyZmFjZSk7DQo+ICAg ICAgaWYgKEVGSV9FUlJPUihTdGF0dXMpKSB7DQo+ICAgICAgICByZXR1cm4gU3RhdHVzOw0KPiBA QCAtNzYwLDcgKzc4Miw3IEBAIEJCVGVzdFJlY2VpdmVGaWx0ZXJDb25mb3JtYW5jZVRlc3QgKA0K PiAgICAgICAgcmV0dXJuIFN0YXR1czsNCj4gICAgICB9DQo+ICAgIH0NCj4gLQ0KPiArDQo+ICAg IHJldHVybiBFRklfU1VDQ0VTUzsNCj4gIH0NCj4gIA0KDQo=