From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by mx.groups.io with SMTP id smtpd.web12.2312.1592440857767727535 for ; Wed, 17 Jun 2020 17:40:57 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=pNX0XWbG; spf=pass (domain: intel.com, ip: 134.134.136.20, mailfrom: ming.tan@intel.com) IronPort-SDR: 0AH3pOT3sI6PVq3yGoeLOSxi2NXrvpwq25dDaSpDFF8sNCqy2I2umvhPah4oXY5Cd+uXg5JH2W 90jPl69KXUAQ== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Jun 2020 17:40:56 -0700 IronPort-SDR: /SAjYfM2AHnm9gqcuN6O4QWlpvNcxWt/1lPBVJvAXtLOl+f7fBW4JwV/QEQI/Wh9mXJ8jFJlIW gNk5CV3YoO9w== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.73,524,1583222400"; d="scan'208";a="261873243" Received: from orsmsx101.amr.corp.intel.com ([10.22.225.128]) by fmsmga007.fm.intel.com with ESMTP; 17 Jun 2020 17:40:56 -0700 Received: from orsmsx609.amr.corp.intel.com (10.22.229.22) by ORSMSX101.amr.corp.intel.com (10.22.225.128) with Microsoft SMTP Server (TLS) id 14.3.439.0; Wed, 17 Jun 2020 17:40:56 -0700 Received: from orsmsx609.amr.corp.intel.com (10.22.229.22) by ORSMSX609.amr.corp.intel.com (10.22.229.22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Wed, 17 Jun 2020 17:40:55 -0700 Received: from ORSEDG002.ED.cps.intel.com (10.7.248.5) by orsmsx609.amr.corp.intel.com (10.22.229.22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256) id 15.1.1713.5 via Frontend Transport; Wed, 17 Jun 2020 17:40:55 -0700 Received: from NAM04-SN1-obe.outbound.protection.outlook.com (104.47.44.58) by edgegateway.intel.com (134.134.137.101) with Microsoft SMTP Server (TLS) id 14.3.439.0; Wed, 17 Jun 2020 17:40:52 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IKOaYFPoXwvGUuUxCF6U1U3nitvq44NIrW2Q5/0rvt+rSZfGlZ/WYglnaw86pNlsurMflPV3cNtv6M4wyaykyhTs6Gm07wV0DnekTfR9dEvmWsvCleHzsuNXgDkj4yZ0WoZgH0BZ1bty3rxC1+8ePp5cqHvWPvg+VoXyW2TtoAAgS/GPsQZFHH3X3LHzgd5hkX4eB7LNF53UbeTAYa0ALjdEP5ikRhck9H63+G2KFwA3jQBwbU9HjFJsmqi8/Ji5ImszdXQSpXzKk7xbAkr3IKEEKSxjn2NXn1/rsSXt1l6AXfg4AacScdqMRKblTcqnhDArugdDF3ntG8km4bOzSg== 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-SenderADCheck; bh=BOH0diQHnvY4pQiNjEUecyt5KSMxoD5bC8gnsgoj9rk=; b=JCB/vo3VwRZgmdmGJbIR3hLCZl7wuOYSVzqib40Rs7t+IHpeaKA6WqqtfMzY/uExhSVcJtPfAcZzHuK7royAumakFMwNeRtwE+hU8AsFEwOtGIVv8Qb9gJTWjfO43inFhTx92x/xLth7zLMP8Xnbu5Sw+E6rkKaKWkMIFYvjRSAn5K3FW0r4LORGY1p4e+GjmRGkyALMyuPZdB1kISDNnFh7XpxVEiRGoddg0jahFT+sCT6Fk/S471kTnHy1bJKJbKosqjFnkJZuu4UV/jTAWMJExZZPmPkTUc6/7T/1pn1II5c04lkjH3lrcEleyXQGHB4KP6SMJr1ffzsjqMkQBg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=BOH0diQHnvY4pQiNjEUecyt5KSMxoD5bC8gnsgoj9rk=; b=pNX0XWbG8fR+zUQMrFVYacPQJRspyeEu2U1y1d+q6EJX1J9Ir6zB/dfpuOzdrGr2UpErcI0bi2s8Uh7BwWr4KcWrHv/sve6zzVB2PmYYFCj7LkvZlmJTvZrcoHXD2zylCox2JfTyWhOhmIS+qDcwladeGd4lXDrEsoIurL3fVZ8= Received: from SN6PR11MB3438.namprd11.prod.outlook.com (2603:10b6:805:cf::22) by SN6PR11MB3280.namprd11.prod.outlook.com (2603:10b6:805:bb::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3109.22; Thu, 18 Jun 2020 00:40:50 +0000 Received: from SN6PR11MB3438.namprd11.prod.outlook.com ([fe80::19fa:b424:d32b:e8d6]) by SN6PR11MB3438.namprd11.prod.outlook.com ([fe80::19fa:b424:d32b:e8d6%7]) with mapi id 15.20.3088.028; Thu, 18 Jun 2020 00:40:50 +0000 From: "Tan, Ming" To: "Kinney, Michael D" , "devel@edk2.groups.io" , "Wang, Jian J" CC: "Wu, Hao A" Subject: Re: [edk2-devel] [PATCH v5 1/1] MdeModulePkg.dec: Change PCDs for status code. Thread-Topic: [edk2-devel] [PATCH v5 1/1] MdeModulePkg.dec: Change PCDs for status code. Thread-Index: AQHWRHn62P5UhdZsTUWyJbpaTG6+Lqjc4hkggAAi1gCAAINtoA== Date: Thu, 18 Jun 2020 00:40:50 +0000 Message-ID: References: <20200617073556.54429-1-ming.tan@intel.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.2.0.6 authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.102.204.38] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 2671cb0a-2b7a-4b2a-432f-08d81320402b x-ms-traffictypediagnostic: SN6PR11MB3280: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:5797; x-forefront-prvs: 0438F90F17 x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: T+y3fx/5Fl93qSsFL8VwtX3sH93UGJLIEJKruTm8JPg6zw0Om/jzkKGwJOzp/dSFH/57f4rJiCkG6SToVfMOz3XtE9FrBkRuHq0YLYRoJZeVuavz3myqerg0AzUHSoY7GYVuWuYiB3znfMZmS0wwhCWacNCRE7aP64CFqNgydROB8BZdGeRj9WDdG/UatTg2dLzYDY17O+MBIQFMv7xAlv806YcooygWk/bz1gDX2KMdcg+wH3aKL6B8Ck2Qssvi+wIRZasLUvptfqLVscImrXZYnJ0fYR+LX1i/UQj6ciT+2qMZTPovPTIcVUEZ0FLXvQM4oT97XpjbhfVyj2VWZ60Rs8TJJxD7VTWMjwZYh2fiwvyS6Je3zFbjva1M/z138sUflHqE0Wf7Xhq+IBAhFg== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR11MB3438.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFTY:;SFS:(4636009)(376002)(136003)(39860400002)(396003)(366004)(346002)(8936002)(5660300002)(186003)(86362001)(71200400001)(2906002)(4326008)(52536014)(966005)(6506007)(53546011)(6636002)(83380400001)(7696005)(107886003)(8676002)(30864003)(66574015)(26005)(33656002)(478600001)(316002)(9686003)(66556008)(66946007)(66476007)(64756008)(76116006)(66446008)(110136005)(55016002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: 2oc5ragHhoW6O2+i727f7CL69XbEggACgwtPJBX1vnRYipdr1Q8Hh5e+WuyfA3Iu83CJt/c4+PZIovEBsh7Ox44Xqh8smdWBOPh/y3geD0SxBgpb+A3ucAqBKDM7P6LcCc0/8O5zfTJ8V8VX0aOctqbmFyl/aylyFNAlel6Udqgh/IJW4zliSVVku9G5lrtSBcq8GxGNaDl1aX4IwxcrhXavavuae2/Ozio1YCzlSin4ylcpvcVBc1ONiEqMeEDFWVEDtF3JshMF+9R331GrJ6tK6I9fJQMSGe+pcE4/5MEVU+yYG/adYwv8PrsLbDFURamz5Qr9Rzj0ZpT7OpJ7U3QbRP8TfeHGPXfsszwXy4+RGOTKtb0YVeqiep/YZAu1SjQvJMAn9LbH6L1WUpmmVZKLOah8JoHKJVBcN3YSKAxAoBwzvQPYQnfrLXRBGXHAC4eE3yx+TJNeTNegGtsAjTZZHyvBdDMx+oc+iQlpmymnTyZY/SqjmFRdxBYqt4RF MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 2671cb0a-2b7a-4b2a-432f-08d81320402b X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Jun 2020 00:40:50.8194 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: eG5zdi8814FqSvSy7tck2aj03f/RQRWg9n7TmRGpjuqU/lOry6jFsaxlmnfFuSloIo0g+RKWjgVPHfFA6dNQgQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR11MB3280 Return-Path: ming.tan@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 TWljaGFlbDoNCiAgSSB2ZXJpZnkgaXQgY2FuIHBhc3MgdGhlIGxvY2FsIGJ1aWxkLg0KICBVc2Ug dGhpcyBzb2x1dGlvbiwgY2FuIGtlZXAgY29tcGF0aWJsZSwgbmVlZCBub3QgcmVtb3ZlIHRoZSBz ZXR0aW5nIGluIHBsYXRmb3JtcyBhdCBmaXJzdC4NCiAgSSB3aWxsIHJlbW92ZSB0aGUgRmVhdHVy ZSBGbGFnIFBDRCBhdCBsYXN0LCBhZnRlciB0aGUgcGxhdGZvcm1zIGNoYW5nZSB0aGUgUENEIHR5 cGUuDQoNCiAgQlIvVGFuIE1pbmcuDQoNCi0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQpGcm9t OiBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+IA0KU2VudDog VGh1cnNkYXksIEp1bmUgMTgsIDIwMjAgMTI6NDcgQU0NClRvOiBkZXZlbEBlZGsyLmdyb3Vwcy5p bzsgV2FuZywgSmlhbiBKIDxqaWFuLmoud2FuZ0BpbnRlbC5jb20+OyBUYW4sIE1pbmcgPG1pbmcu dGFuQGludGVsLmNvbT47IEtpbm5leSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVs LmNvbT4NCkNjOiBXdSwgSGFvIEEgPGhhby5hLnd1QGludGVsLmNvbT4NClN1YmplY3Q6IFJFOiBb ZWRrMi1kZXZlbF0gW1BBVENIIHY1IDEvMV0gTWRlTW9kdWxlUGtnLmRlYzogQ2hhbmdlIFBDRHMg Zm9yIHN0YXR1cyBjb2RlLg0KDQpNaW5nLA0KDQpXaXRoIHRoaXMgY2hhbmdlLCBhcmUgdGhlIHNh bWUgUENEcyBsaXN0ZWQgYXMgYm90aCBhIEZlYXR1cmUgRmxhZyBQQ0QgYW5kIGEgbm9uLUZlYXR1 cmUgRmxhZyBQQ0Q/DQoNClRoYXQgc2hvdWxkIG5vdCBiZSBhbGxvd2VkLCBhbmQgaWYgdGhhdCBw YXNzZXMgdGhlIGJ1aWxkLCB0aGVuIHRoZSBidWlsZCB0b29scyBzaG91bGQgZmxhZyB0aGF0IGFz IGFuIGVycm9yIGNvbmRpdGlvbi4NCg0KTWlrZQ0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0t LS0tDQo+IEZyb206IGRldmVsQGVkazIuZ3JvdXBzLmlvIDxkZXZlbEBlZGsyLmdyb3Vwcy5pbz4g T24gQmVoYWxmIE9mIFdhbmcsIA0KPiBKaWFuIEoNCj4gU2VudDogV2VkbmVzZGF5LCBKdW5lIDE3 LCAyMDIwIDc6NDMgQU0NCj4gVG86IFRhbiwgTWluZyA8bWluZy50YW5AaW50ZWwuY29tPjsgZGV2 ZWxAZWRrMi5ncm91cHMuaW8NCj4gQ2M6IFd1LCBIYW8gQSA8aGFvLmEud3VAaW50ZWwuY29tPg0K PiBTdWJqZWN0OiBSZTogW2VkazItZGV2ZWxdIFtQQVRDSCB2NSAxLzFdDQo+IE1kZU1vZHVsZVBr Zy5kZWM6IENoYW5nZSBQQ0RzIGZvciBzdGF0dXMgY29kZS4NCj4gDQo+IFJldmlld2VkLWJ5OiBK aWFuIEogV2FuZyA8amlhbi5qLndhbmdAaW50ZWwuY29tPg0KPiANCj4gUmVnYXJkcywNCj4gSmlh bg0KPiANCj4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+IEZyb206IFRhbiwgTWlu ZyA8bWluZy50YW5AaW50ZWwuY29tPg0KPiA+IFNlbnQ6IFdlZG5lc2RheSwgSnVuZSAxNywgMjAy MCAzOjM2IFBNDQo+ID4gVG86IGRldmVsQGVkazIuZ3JvdXBzLmlvDQo+ID4gQ2M6IFdhbmcsIEpp YW4gSiA8amlhbi5qLndhbmdAaW50ZWwuY29tPjsgV3UsIEhhbyBBDQo+IDxoYW8uYS53dUBpbnRl bC5jb20+DQo+ID4gU3ViamVjdDogW1BBVENIIHY1IDEvMV0gTWRlTW9kdWxlUGtnLmRlYzogQ2hh bmdlIFBDRHMNCj4gZm9yIHN0YXR1cyBjb2RlLg0KPiA+DQo+ID4gUkVGOg0KPiBodHRwczovL2J1 Z3ppbGxhLnRpYW5vY29yZS5vcmcvc2hvd19idWcuY2dpP2lkPTI3ODYNCj4gPg0KPiA+IEluIG9y ZGVyIHRvIHN1cHBvcnQgZW5hYmxlL2Rpc2FibGUgcmVwb3J0IHN0YXR1cyBjb2RlDQo+IHRocm91 Z2ggbWVtb3J5DQo+ID4gb3Igc2VyaWFsIGR5bmFtaWMsIGNoYW5nZSB0aGUgZm9sbG93aW5nIFBD RHMgZnJvbQ0KPiBbUGNkc0ZlYXR1cmVGbGFnXSB0bw0KPiA+IFtQY2RzRml4ZWRBdEJ1aWxkLCBQ Y2RzUGF0Y2hhYmxlSW5Nb2R1bGUsIFBjZHNEeW5hbWljLA0KPiBQY2RzRHluYW1pY0V4XToNCj4g PiAgIFBjZFN0YXR1c0NvZGVVc2VTZXJpYWwNCj4gPiAgIFBjZFN0YXR1c0NvZGVVc2VNZW1vcnkN Cj4gPiBUaGUgb3JpZ2luYWwgcGxhZm9ybXMgY2FuIHVzZSBQY2RzRml4ZWRBdEJ1aWxkIGluIC5k c2MNCj4gZmlsZXMgdG8gc2F2ZSBzaXplLg0KPiA+IEN1cnJlbnRseSBkbyBub3QgcmVtb3ZlIHRo ZSBvbGQgcGNkIHR5cGUgdG8ga2VlcA0KPiBjb21wYXRpYmxlLg0KPiA+DQo+ID4gQ2M6IEppYW4g SiBXYW5nIDxqaWFuLmoud2FuZ0BpbnRlbC5jb20+DQo+ID4gQ2M6IEhhbyBBIFd1IDxoYW8uYS53 dUBpbnRlbC5jb20+DQo+ID4gU2lnbmVkLW9mZi1ieTogTWluZyBUYW4gPG1pbmcudGFuQGludGVs LmNvbT4NCj4gPiAtLS0NCj4gPiBWNTogRG8gbm90IHJlbW92ZSB0aCBvbGQgcGNkIHR5cGUgdG8g a2VlcCBjb21wYXRpYmxlLA0KPiBhbmQgY2hhbmdlIHRvDQo+ID4gc3RhbmRhbG9uZSBwYXRjaC4N Cj4gPiBWNDogTm8gY2hhbmdlIGZvciB0aGlzIDEvNCBwYXRjaCwganVzdCBtb2RpZnkgdGhlIDIt DQo+IDQvNCBwYXRjaHMuDQo+ID4gVjM6IFNwbGl0IG9uZSBwYXRjaCB0byBzZXZlcmFsIHBhdGNo cywgZWFjaCBQa2cgaGFzDQo+IG9uZSBwYXRjaC4NCj4gPiBWMjogQ2hhbmdlIHRoZSBuZXcgdHlw ZSBmcm9tIFtQY2RzRHluYW1pY10gdG8NCj4gW1BjZHNGaXhlZEF0QnVpbGQsDQo+ID4gUGNkc1Bh dGNoYWJsZUluTW9kdWxlLCBQY2RzRHluYW1pYywgUGNkc0R5bmFtaWNFeF0NCj4gPiAgICAgQW5k IHNldCB0byBQY2RzRml4ZWRBdEJ1aWxkIGluIHRoZSBvcmlnaW5hbA0KPiBwbGF0Zm9ybSAuZHNj IGZpbGVzLg0KPiA+DQo+ID4gIE1kZU1vZHVsZVBrZy9NZGVNb2R1bGVQa2cuZGVjICAgICAgICAg ICAgICAgICAgICB8IDEzDQo+ICsrKysrKysrKysrKysNCj4gPiAgLi4uL1N0YXR1c0NvZGVIYW5k bGVyL1BlaS9TdGF0dXNDb2RlSGFuZGxlclBlaS5jIHwgIDYNCj4gKysrLS0tDQo+ID4gIC4uLi9Q ZWkvU3RhdHVzQ29kZUhhbmRsZXJQZWkuaW5mICAgICAgICAgICAgICAgICB8ICA2DQo+ICsrLS0t LQ0KPiA+ICAuLi4vUnVudGltZUR4ZS9TdGF0dXNDb2RlSGFuZGxlclJ1bnRpbWVEeGUuYyAgICAg fCAxNg0KPiArKysrKysrKy0tLS0tLS0tDQo+ID4gIC4uLi9SdW50aW1lRHhlL1N0YXR1c0NvZGVI YW5kbGVyUnVudGltZUR4ZS5pbmYgICB8ICA2DQo+ICsrLS0tLQ0KPiA+ICAuLi4vU3RhdHVzQ29k ZUhhbmRsZXIvU21tL1N0YXR1c0NvZGVIYW5kbGVyU21tLmMgfCAxMA0KPiArKysrKy0tLS0tDQo+ ID4gIC4uLi9TbW0vU3RhdHVzQ29kZUhhbmRsZXJTbW0uaW5mICAgICAgICAgICAgICAgICB8ICA2 DQo+ICsrLS0tLQ0KPiA+ICA3IGZpbGVzIGNoYW5nZWQsIDM1IGluc2VydGlvbnMoKyksIDI4IGRl bGV0aW9ucygtKQ0KPiA+DQo+ID4gZGlmZiAtLWdpdCBhL01kZU1vZHVsZVBrZy9NZGVNb2R1bGVQ a2cuZGVjIA0KPiA+IGIvTWRlTW9kdWxlUGtnL01kZU1vZHVsZVBrZy5kZWMgaW5kZXggNGY0NGFm Njk0ODYyLi5iZDM2OWQxZjIzMGUgDQo+ID4gMTAwNjQ0DQo+ID4gLS0tIGEvTWRlTW9kdWxlUGtn L01kZU1vZHVsZVBrZy5kZWMNCj4gPiArKysgYi9NZGVNb2R1bGVQa2cvTWRlTW9kdWxlUGtnLmRl Yw0KPiA+IEBAIC0yMDAxLDYgKzIwMDEsMTkgQEAgW1BjZHNGaXhlZEF0QnVpbGQsDQo+IFBjZHNQ YXRjaGFibGVJbk1vZHVsZSwNCj4gPiBQY2RzRHluYW1pYywgUGNkc0R5bmFtaWNFeF0NCj4gPiAg ICAjIEBQcm9tcHQgVENHIFBsYXRmb3JtIEZpcm13YXJlIFByb2ZpbGUgcmV2aXNpb24uDQo+ID4N Cj4gPg0KPiBnRWZpTWRlTW9kdWxlUGtnVG9rZW5TcGFjZUd1aWQuUGNkVGNnUGZwTWVhc3VyZW1l bnRSZXZpcw0KPiBpb258MHxVSU5UMw0KPiA+IDJ8MHgwMDAxMDA3Nw0KPiA+DQo+ID4gKyAgIyMg SW5kaWNhdGVzIGlmIFN0YXR1c0NvZGUgaXMgcmVwb3J0ZWQgdmlhIFNlcmlhbA0KPiBwb3J0LjxC Uj48QlI+DQo+ID4gKyAgIyAgIFRSVUUgIC0gUmVwb3J0cyBTdGF0dXNDb2RlIHZpYSBTZXJpYWwg cG9ydC48QlI+DQo+ID4gKyAgIyAgIEZBTFNFIC0gRG9lcyBub3QgcmVwb3J0IFN0YXR1c0NvZGUg dmlhIFNlcmlhbA0KPiBwb3J0LjxCUj4NCj4gPiArICAjIEBQcm9tcHQgRW5hYmxlIFN0YXR1c0Nv ZGUgdmlhIFNlcmlhbCBwb3J0Lg0KPiA+ICsNCj4gPg0KPiBnRWZpTWRlTW9kdWxlUGtnVG9rZW5T cGFjZUd1aWQuUGNkU3RhdHVzQ29kZVVzZVNlcmlhbHxUUg0KPiBVRXxCT09MRUFOfA0KPiA+IDB4 MDAwMTAwMjINCj4gPiArDQo+ID4gKyAgIyMgSW5kaWNhdGVzIGlmIFN0YXR1c0NvZGUgaXMgc3Rv cmVkIGluIG1lbW9yeS4NCj4gPiArICAjICBUaGUgbWVtb3J5IGlzIGJvb3QgdGltZSBtZW1vcnkg aW4gUEVJIFBoYXNlIGFuZA0KPiBpcyBydW50aW1lIG1lbW9yeSBpbg0KPiA+IERYRSBQaGFzZS48 QlI+PEJSPg0KPiA+ICsgICMgICBUUlVFICAtIFN0b3JlcyBTdGF0dXNDb2RlIGluIG1lbW9yeS48 QlI+DQo+ID4gKyAgIyAgIEZBTFNFIC0gRG9lcyBub3Qgc3RvcmUgU3RhdHVzQ29kZSBpbg0KPiBt ZW1vcnkuPEJSPg0KPiA+ICsgICMgQFByb21wdCBFbmFibGUgU3RhdHVzQ29kZSB2aWEgbWVtb3J5 Lg0KPiA+ICsNCj4gPg0KPiBnRWZpTWRlTW9kdWxlUGtnVG9rZW5TcGFjZUd1aWQuUGNkU3RhdHVz Q29kZVVzZU1lbW9yeXxGQQ0KPiBMU0V8Qk9PTEVBDQo+ID4gTnwweDAwMDEwMDIzDQo+ID4gKw0K PiA+ICBbUGNkc1BhdGNoYWJsZUluTW9kdWxlXQ0KPiA+ICAgICMjIFNwZWNpZnkgbWVtb3J5IHNp emUgd2l0aCBwYWdlIG51bWJlciBmb3IgUEVJDQo+IGNvZGUgd2hlbg0KPiA+ICAgICMgIExvYWRp bmcgTW9kdWxlIGF0IEZpeGVkIEFkZHJlc3MgZmVhdHVyZSBpcw0KPiBlbmFibGVkLg0KPiA+IGRp ZmYgLS1naXQNCj4gPg0KPiBhL01kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvU3RhdHVzQ29kZUhhbmRs ZXIvUGVpL1N0YXR1c0NvZA0KPiBlSGFuZGxlclBlaS5jDQo+ID4NCj4gYi9NZGVNb2R1bGVQa2cv VW5pdmVyc2FsL1N0YXR1c0NvZGVIYW5kbGVyL1BlaS9TdGF0dXNDb2QNCj4gZUhhbmRsZXJQZWku Yw0KPiA+IGluZGV4IDFiMDdmOTJmM2NlOC4uOWIyZWE0ZWU4NGQ5IDEwMDY0NA0KPiA+IC0tLQ0K PiBhL01kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvU3RhdHVzQ29kZUhhbmRsZXIvUGVpL1N0YXR1c0Nv ZA0KPiBlSGFuZGxlclBlaS5jDQo+ID4gKysrDQo+ID4NCj4gYi9NZGVNb2R1bGVQa2cvVW5pdmVy c2FsL1N0YXR1c0NvZGVIYW5kbGVyL1BlaS9TdGF0dXNDb2QNCj4gZUhhbmRsZXJQZWkuYw0KPiA+ IEBAIC0yLDcgKzIsNyBAQA0KPiA+ICAgIFJlcG9ydCBTdGF0dXMgQ29kZSBIYW5kbGVyIFBFSU0g d2hpY2ggcHJvZHVjZXMNCj4gZ2VuZXJhbCBoYW5kbGVycyBhbmQgaG9vaw0KPiA+IHRoZW0NCj4g PiAgICBvbnRvIHRoZSBQRUkgc3RhdHVzIGNvZGUgcm91dGVyLg0KPiA+DQo+ID4gLSAgQ29weXJp Z2h0IChjKSAyMDA5IC0gMjAxOCwgSW50ZWwgQ29ycG9yYXRpb24uIEFsbA0KPiByaWdodHMgcmVz ZXJ2ZWQuPEJSPg0KPiA+ICsgIENvcHlyaWdodCAoYykgMjAwOSAtIDIwMjAsIEludGVsIENvcnBv cmF0aW9uLiBBbGwNCj4gcmlnaHRzIHJlc2VydmVkLjxCUj4NCj4gPiAgICBTUERYLUxpY2Vuc2Ut SWRlbnRpZmllcjogQlNELTItQ2xhdXNlLVBhdGVudA0KPiA+DQo+ID4gICoqLw0KPiA+IEBAIC00 NSwxMyArNDUsMTMgQEAgU3RhdHVzQ29kZUhhbmRsZXJQZWlFbnRyeSAoDQo+ID4gICAgLy8gSWYg ZW5hYmxlIFVzZVNlcmlhbCwgdGhlbiBpbml0aWFsaXplIHNlcmlhbA0KPiBwb3J0Lg0KPiA+ICAg IC8vIGlmIGVuYWJsZSBVc2VNZW1vcnksIHRoZW4gaW5pdGlhbGl6ZSBtZW1vcnkNCj4gc3RhdHVz IGNvZGUgd29ya2VyLg0KPiA+ICAgIC8vDQo+ID4gLSAgaWYgKEZlYXR1cmVQY2RHZXQgKFBjZFN0 YXR1c0NvZGVVc2VTZXJpYWwpKSB7DQo+ID4gKyAgaWYgKFBjZEdldEJvb2wgKFBjZFN0YXR1c0Nv ZGVVc2VTZXJpYWwpKSB7DQo+ID4gICAgICBTdGF0dXMgPSBTZXJpYWxQb3J0SW5pdGlhbGl6ZSgp Ow0KPiA+ICAgICAgQVNTRVJUX0VGSV9FUlJPUiAoU3RhdHVzKTsNCj4gPiAgICAgIFN0YXR1cyA9 IFJzY0hhbmRsZXJQcGktPlJlZ2lzdGVyDQo+IChTZXJpYWxTdGF0dXNDb2RlUmVwb3J0V29ya2Vy KTsNCj4gPiAgICAgIEFTU0VSVF9FRklfRVJST1IgKFN0YXR1cyk7DQo+ID4gICAgfQ0KPiA+IC0g IGlmIChGZWF0dXJlUGNkR2V0IChQY2RTdGF0dXNDb2RlVXNlTWVtb3J5KSkgew0KPiA+ICsgIGlm IChQY2RHZXRCb29sIChQY2RTdGF0dXNDb2RlVXNlTWVtb3J5KSkgew0KPiA+ICAgICAgU3RhdHVz ID0gTWVtb3J5U3RhdHVzQ29kZUluaXRpYWxpemVXb3JrZXIgKCk7DQo+ID4gICAgICBBU1NFUlRf RUZJX0VSUk9SIChTdGF0dXMpOw0KPiA+ICAgICAgU3RhdHVzID0gUnNjSGFuZGxlclBwaS0+UmVn aXN0ZXINCj4gKE1lbW9yeVN0YXR1c0NvZGVSZXBvcnRXb3JrZXIpOw0KPiA+IGRpZmYgLS1naXQN Cj4gPg0KPiBhL01kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvU3RhdHVzQ29kZUhhbmRsZXIvUGVpL1N0 YXR1c0NvZA0KPiBlSGFuZGxlclBlaS5pbmYNCj4gPg0KPiBiL01kZU1vZHVsZVBrZy9Vbml2ZXJz YWwvU3RhdHVzQ29kZUhhbmRsZXIvUGVpL1N0YXR1c0NvZA0KPiBlSGFuZGxlclBlaS5pbmYNCj4g PiBpbmRleCA4YWVmOWFmMzRhMDUuLjY0MzgwZGRmYWNjYyAxMDA2NDQNCj4gPiAtLS0NCj4gPg0K PiBhL01kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvU3RhdHVzQ29kZUhhbmRsZXIvUGVpL1N0YXR1c0Nv ZA0KPiBlSGFuZGxlclBlaS5pbmYNCj4gPiArKysNCj4gPg0KPiBiL01kZU1vZHVsZVBrZy9Vbml2 ZXJzYWwvU3RhdHVzQ29kZUhhbmRsZXIvUGVpL1N0YXR1c0NvZA0KPiBlSGFuZGxlclBlaS5pbmYN Cj4gPiBAQCAtNTMsMTEgKzUzLDkgQEAgW0d1aWRzXQ0KPiA+ICBbUHBpc10NCj4gPiAgICBnRWZp UGVpUnNjSGFuZGxlclBwaUd1aWQgICAgICAgICAgICAgICAgICAgICAgIyMNCj4gQ09OU1VNRVMN Cj4gPg0KPiA+IC1bRmVhdHVyZVBjZF0NCj4gPiAtDQo+IGdFZmlNZGVNb2R1bGVQa2dUb2tlblNw YWNlR3VpZC5QY2RTdGF0dXNDb2RlVXNlTWVtb3J5ICMjDQo+ID4gQ09OU1VNRVMNCj4gPiAtDQo+ IGdFZmlNZGVNb2R1bGVQa2dUb2tlblNwYWNlR3VpZC5QY2RTdGF0dXNDb2RlVXNlU2VyaWFsICMj IENPTlNVTUVTDQo+ID4gLQ0KPiA+ICBbUGNkXQ0KPiA+ICsNCj4gZ0VmaU1kZU1vZHVsZVBrZ1Rv a2VuU3BhY2VHdWlkLlBjZFN0YXR1c0NvZGVVc2VTZXJpYWwgIyMgQ09OU1VNRVMNCj4gPiArDQo+ IGdFZmlNZGVNb2R1bGVQa2dUb2tlblNwYWNlR3VpZC5QY2RTdGF0dXNDb2RlVXNlTWVtb3J5ICMj DQo+ID4gQ09OU1VNRVMNCj4gPg0KPiA+DQo+IGdFZmlNZGVNb2R1bGVQa2dUb2tlblNwYWNlR3Vp ZC5QY2RTdGF0dXNDb2RlTWVtb3J5U2l6ZXwxDQo+IHxnRWZpTWRlTW9kDQo+ID4gdWxlUGtnVG9r ZW5TcGFjZUd1aWQuUGNkU3RhdHVzQ29kZVVzZU1lbW9yeSAgICAjIw0KPiA+IFNPTUVUSU1FU19D T05TVU1FUw0KPiA+DQo+ID4gIFtEZXBleF0NCj4gPiBkaWZmIC0tZ2l0DQo+ID4NCj4gYS9NZGVN b2R1bGVQa2cvVW5pdmVyc2FsL1N0YXR1c0NvZGVIYW5kbGVyL1J1bnRpbWVEeGUvU3QNCj4gYXR1 c0NvZGVIYW5kbA0KPiA+IGVyUnVudGltZUR4ZS5jDQo+ID4NCj4gYi9NZGVNb2R1bGVQa2cvVW5p dmVyc2FsL1N0YXR1c0NvZGVIYW5kbGVyL1J1bnRpbWVEeGUvU3QNCj4gYXR1c0NvZGVIYW5kbA0K PiA+IGVyUnVudGltZUR4ZS5jDQo+ID4gaW5kZXggNzljYzQ4ZmE1NWE0Li5hOGMwZmU1YjcxNDkg MTAwNjQ0DQo+ID4gLS0tDQo+ID4NCj4gYS9NZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1N0YXR1c0Nv ZGVIYW5kbGVyL1J1bnRpbWVEeGUvU3QNCj4gYXR1c0NvZGVIYW5kbA0KPiA+IGVyUnVudGltZUR4 ZS5jDQo+ID4gKysrDQo+ID4NCj4gYi9NZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1N0YXR1c0NvZGVI YW5kbGVyL1J1bnRpbWVEeGUvU3QNCj4gYXR1c0NvZGVIYW5kbA0KPiA+IGVyUnVudGltZUR4ZS5j DQo+ID4gQEAgLTIsNyArMiw3IEBADQo+ID4gICAgU3RhdHVzIENvZGUgSGFuZGxlciBEcml2ZXIg d2hpY2ggcHJvZHVjZXMgZ2VuZXJhbA0KPiBoYW5kbGVycyBhbmQgaG9vayB0aGVtDQo+ID4gICAg b250byB0aGUgRFhFIHN0YXR1cyBjb2RlIHJvdXRlci4NCj4gPg0KPiA+IC0gIENvcHlyaWdodCAo YykgMjAwNiAtIDIwMTksIEludGVsIENvcnBvcmF0aW9uLiBBbGwNCj4gcmlnaHRzIHJlc2VydmVk LjxCUj4NCj4gPiArICBDb3B5cmlnaHQgKGMpIDIwMDYgLSAyMDIwLCBJbnRlbCBDb3Jwb3JhdGlv bi4gQWxsDQo+IHJpZ2h0cyByZXNlcnZlZC48QlI+DQo+ID4gICAgU1BEWC1MaWNlbnNlLUlkZW50 aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQNCj4gPg0KPiA+ICAqKi8NCj4gPiBAQCAtMjksNyAr MjksNyBAQCBVbnJlZ2lzdGVyQm9vdFRpbWVIYW5kbGVycyAoDQo+ID4gICAgSU4gVk9JRCAgICAg ICAgICAgICAqQ29udGV4dA0KPiA+ICAgICkNCj4gPiAgew0KPiA+IC0gIGlmIChGZWF0dXJlUGNk R2V0IChQY2RTdGF0dXNDb2RlVXNlU2VyaWFsKSkgew0KPiA+ICsgIGlmIChQY2RHZXRCb29sIChQ Y2RTdGF0dXNDb2RlVXNlU2VyaWFsKSkgew0KPiA+ICAgICAgbVJzY0hhbmRsZXJQcm90b2NvbC0+ VW5yZWdpc3Rlcg0KPiAoU2VyaWFsU3RhdHVzQ29kZVJlcG9ydFdvcmtlcik7DQo+ID4gICAgfQ0K PiA+ICB9DQo+ID4gQEAgLTgwLDE0ICs4MCwxNCBAQCBJbml0aWFsaXphdGlvbkRpc3BhdGNoZXJX b3JrZXIgKA0KPiA+ICAgIC8vIElmIGVuYWJsZSBVc2VTZXJpYWwsIHRoZW4gaW5pdGlhbGl6ZSBz ZXJpYWwNCj4gcG9ydC4NCj4gPiAgICAvLyBpZiBlbmFibGUgVXNlUnVudGltZU1lbW9yeSwgdGhl biBpbml0aWFsaXplDQo+IHJ1bnRpbWUgbWVtb3J5IHN0YXR1cyBjb2RlDQo+ID4gd29ya2VyLg0K PiA+ICAgIC8vDQo+ID4gLSAgaWYgKEZlYXR1cmVQY2RHZXQgKFBjZFN0YXR1c0NvZGVVc2VTZXJp YWwpKSB7DQo+ID4gKyAgaWYgKFBjZEdldEJvb2wgKFBjZFN0YXR1c0NvZGVVc2VTZXJpYWwpKSB7 DQo+ID4gICAgICAvLw0KPiA+ICAgICAgLy8gQ2FsbCBTZXJpYWwgUG9ydCBMaWIgQVBJIHRvIGlu aXRpYWxpemUgc2VyaWFsDQo+IHBvcnQuDQo+ID4gICAgICAvLw0KPiA+ICAgICAgU3RhdHVzID0g U2VyaWFsUG9ydEluaXRpYWxpemUgKCk7DQo+ID4gICAgICBBU1NFUlRfRUZJX0VSUk9SIChTdGF0 dXMpOw0KPiA+ICAgIH0NCj4gPiAtICBpZiAoRmVhdHVyZVBjZEdldCAoUGNkU3RhdHVzQ29kZVVz ZU1lbW9yeSkpIHsNCj4gPiArICBpZiAoUGNkR2V0Qm9vbCAoUGNkU3RhdHVzQ29kZVVzZU1lbW9y eSkpIHsNCj4gPiAgICAgIFN0YXR1cyA9IFJ0TWVtb3J5U3RhdHVzQ29kZUluaXRpYWxpemVXb3Jr ZXIgKCk7DQo+ID4gICAgICBBU1NFUlRfRUZJX0VSUk9SIChTdGF0dXMpOw0KPiA+ICAgIH0NCj4g PiBAQCAtMTE1LDcgKzExNSw3IEBAIEluaXRpYWxpemF0aW9uRGlzcGF0Y2hlcldvcmtlciAoDQo+ ID4gICAgICAgICAgLy8NCj4gPiAgICAgICAgICAvLyBEaXNwYXRjaCByZWNvcmRzIHRvIGRldmlj ZXMgYmFzZWQgb24NCj4gZmVhdHVyZSBmbGFnLg0KPiA+ICAgICAgICAgIC8vDQo+ID4gLSAgICAg ICAgaWYgKEZlYXR1cmVQY2RHZXQgKFBjZFN0YXR1c0NvZGVVc2VTZXJpYWwpKSB7DQo+ID4gKyAg ICAgICAgaWYgKFBjZEdldEJvb2wgKFBjZFN0YXR1c0NvZGVVc2VTZXJpYWwpKSB7DQo+ID4gICAg ICAgICAgICBTZXJpYWxTdGF0dXNDb2RlUmVwb3J0V29ya2VyICgNCj4gPiAgICAgICAgICAgICAg UmVjb3JkW0luZGV4XS5Db2RlVHlwZSwNCj4gPiAgICAgICAgICAgICAgUmVjb3JkW0luZGV4XS5W YWx1ZSwNCj4gPiBAQCAtMTI0LDcgKzEyNCw3IEBAIEluaXRpYWxpemF0aW9uRGlzcGF0Y2hlcldv cmtlciAoDQo+ID4gICAgICAgICAgICAgIE5VTEwNCj4gPiAgICAgICAgICAgICAgKTsNCj4gPiAg ICAgICAgICB9DQo+ID4gLSAgICAgICAgaWYgKEZlYXR1cmVQY2RHZXQgKFBjZFN0YXR1c0NvZGVV c2VNZW1vcnkpKSB7DQo+ID4gKyAgICAgICAgaWYgKFBjZEdldEJvb2wgKFBjZFN0YXR1c0NvZGVV c2VNZW1vcnkpKSB7DQo+ID4gICAgICAgICAgICBSdE1lbW9yeVN0YXR1c0NvZGVSZXBvcnRXb3Jr ZXIgKA0KPiA+ICAgICAgICAgICAgICBSZWNvcmRbSW5kZXhdLkNvZGVUeXBlLA0KPiA+ICAgICAg ICAgICAgICBSZWNvcmRbSW5kZXhdLlZhbHVlLA0KPiA+IEBAIC0xNzEsMTAgKzE3MSwxMCBAQCBT dGF0dXNDb2RlSGFuZGxlclJ1bnRpbWVEeGVFbnRyeQ0KPiAoDQo+ID4gICAgLy8NCj4gPiAgICBJ bml0aWFsaXphdGlvbkRpc3BhdGNoZXJXb3JrZXIgKCk7DQo+ID4NCj4gPiAtICBpZiAoRmVhdHVy ZVBjZEdldCAoUGNkU3RhdHVzQ29kZVVzZVNlcmlhbCkpIHsNCj4gPiArICBpZiAoUGNkR2V0Qm9v bCAoUGNkU3RhdHVzQ29kZVVzZVNlcmlhbCkpIHsNCj4gPiAgICAgIG1Sc2NIYW5kbGVyUHJvdG9j b2wtPlJlZ2lzdGVyDQo+IChTZXJpYWxTdGF0dXNDb2RlUmVwb3J0V29ya2VyLA0KPiA+IFRQTF9I SUdIX0xFVkVMKTsNCj4gPiAgICB9DQo+ID4gLSAgaWYgKEZlYXR1cmVQY2RHZXQgKFBjZFN0YXR1 c0NvZGVVc2VNZW1vcnkpKSB7DQo+ID4gKyAgaWYgKFBjZEdldEJvb2wgKFBjZFN0YXR1c0NvZGVV c2VNZW1vcnkpKSB7DQo+ID4gICAgICBtUnNjSGFuZGxlclByb3RvY29sLT5SZWdpc3Rlcg0KPiAo UnRNZW1vcnlTdGF0dXNDb2RlUmVwb3J0V29ya2VyLA0KPiA+IFRQTF9ISUdIX0xFVkVMKTsNCj4g PiAgICB9DQo+ID4NCj4gPiBkaWZmIC0tZ2l0DQo+ID4NCj4gYS9NZGVNb2R1bGVQa2cvVW5pdmVy c2FsL1N0YXR1c0NvZGVIYW5kbGVyL1J1bnRpbWVEeGUvU3QNCj4gYXR1c0NvZGVIYW5kbA0KPiA+ IGVyUnVudGltZUR4ZS5pbmYNCj4gPg0KPiBiL01kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvU3RhdHVz Q29kZUhhbmRsZXIvUnVudGltZUR4ZS9TdA0KPiBhdHVzQ29kZUhhbmRsDQo+ID4gZXJSdW50aW1l RHhlLmluZg0KPiA+IGluZGV4IGQ3NGMyYTU1ZGNhZi4uZmFhZGZkOTU3OGZlIDEwMDY0NA0KPiA+ IC0tLQ0KPiA+DQo+IGEvTWRlTW9kdWxlUGtnL1VuaXZlcnNhbC9TdGF0dXNDb2RlSGFuZGxlci9S dW50aW1lRHhlL1N0DQo+IGF0dXNDb2RlSGFuZGwNCj4gPiBlclJ1bnRpbWVEeGUuaW5mDQo+ID4g KysrDQo+ID4NCj4gYi9NZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1N0YXR1c0NvZGVIYW5kbGVyL1J1 bnRpbWVEeGUvU3QNCj4gYXR1c0NvZGVIYW5kbA0KPiA+IGVyUnVudGltZUR4ZS5pbmYNCj4gPiBA QCAtNTgsMTIgKzU4LDEwIEBAIFtHdWlkc10NCj4gPiAgW1Byb3RvY29sc10NCj4gPiAgICBnRWZp UnNjSGFuZGxlclByb3RvY29sR3VpZCAgICAgICAgICAgICAgICAgICAgIyMNCj4gQ09OU1VNRVMN Cj4gPg0KPiA+IC1bRmVhdHVyZVBjZF0NCj4gPiArW1BjZF0NCj4gPg0KPiBnRWZpTWRlTW9kdWxl UGtnVG9rZW5TcGFjZUd1aWQuUGNkU3RhdHVzQ29kZVJlcGxheUluICAjIyBDT05TVU1FUw0KPiA+ IC0NCj4gZ0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZFN0YXR1c0NvZGVVc2VNZW1v cnkgIyMNCj4gPiBDT05TVU1FUw0KPiA+DQo+IGdFZmlNZGVNb2R1bGVQa2dUb2tlblNwYWNlR3Vp ZC5QY2RTdGF0dXNDb2RlVXNlU2VyaWFsICMjIENPTlNVTUVTDQo+ID4gLQ0KPiA+IC1bUGNkXQ0K PiA+ICsNCj4gZ0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZFN0YXR1c0NvZGVVc2VN ZW1vcnkgIyMNCj4gPiBDT05TVU1FUw0KPiA+DQo+IGdFZmlNZGVNb2R1bGVQa2dUb2tlblNwYWNl R3VpZC5QY2RTdGF0dXNDb2RlTWVtb3J5U2l6ZQ0KPiB8MTI4fA0KPiA+IGdFZmlNZGVNb2R1bGVQ a2dUb2tlblNwYWNlR3VpZC5QY2RTdGF0dXNDb2RlVXNlTWVtb3J5DQo+ICMjDQo+ID4gU09NRVRJ TUVTX0NPTlNVTUVTDQo+ID4NCj4gPiAgW0RlcGV4XQ0KPiA+IGRpZmYgLS1naXQNCj4gPg0KPiBh L01kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvU3RhdHVzQ29kZUhhbmRsZXIvU21tL1N0YXR1c0NvZA0K PiBlSGFuZGxlclNtbS4NCj4gPiBjDQo+ID4NCj4gYi9NZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1N0 YXR1c0NvZGVIYW5kbGVyL1NtbS9TdGF0dXNDb2QNCj4gZUhhbmRsZXJTbW0uDQo+ID4gYw0KPiA+ IGluZGV4IGY1NDk5MWVkM2Y2Ny4uMjAyNzE1NzFkZWQ0IDEwMDY0NA0KPiA+IC0tLQ0KPiA+DQo+ IGEvTWRlTW9kdWxlUGtnL1VuaXZlcnNhbC9TdGF0dXNDb2RlSGFuZGxlci9TbW0vU3RhdHVzQ29k DQo+IGVIYW5kbGVyU21tLg0KPiA+IGMNCj4gPiArKysNCj4gPg0KPiBiL01kZU1vZHVsZVBrZy9V bml2ZXJzYWwvU3RhdHVzQ29kZUhhbmRsZXIvU21tL1N0YXR1c0NvZA0KPiBlSGFuZGxlclNtbS4N Cj4gPiBjDQo+ID4gQEAgLTIsNyArMiw3IEBADQo+ID4gICAgU3RhdHVzIENvZGUgSGFuZGxlciBE cml2ZXIgd2hpY2ggcHJvZHVjZXMgZ2VuZXJhbA0KPiBoYW5kbGVycyBhbmQgaG9vayB0aGVtDQo+ ID4gICAgb250byB0aGUgU01NIHN0YXR1cyBjb2RlIHJvdXRlci4NCj4gPg0KPiA+IC0gIENvcHly aWdodCAoYykgMjAwOSAtIDIwMTgsIEludGVsIENvcnBvcmF0aW9uLiBBbGwNCj4gcmlnaHRzIHJl c2VydmVkLjxCUj4NCj4gPiArICBDb3B5cmlnaHQgKGMpIDIwMDkgLSAyMDIwLCBJbnRlbCBDb3Jw b3JhdGlvbi4gQWxsDQo+IHJpZ2h0cyByZXNlcnZlZC48QlI+DQo+ID4gICAgU1BEWC1MaWNlbnNl LUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQNCj4gPg0KPiA+ICAqKi8NCj4gPiBAQCAt MjgsMTQgKzI4LDE0IEBAIEluaXRpYWxpemF0aW9uRGlzcGF0Y2hlcldvcmtlciAoDQo+ID4gICAg Ly8gSWYgZW5hYmxlIFVzZVNlcmlhbCwgdGhlbiBpbml0aWFsaXplIHNlcmlhbA0KPiBwb3J0Lg0K PiA+ICAgIC8vIGlmIGVuYWJsZSBVc2VSdW50aW1lTWVtb3J5LCB0aGVuIGluaXRpYWxpemUNCj4g cnVudGltZSBtZW1vcnkgc3RhdHVzIGNvZGUNCj4gPiB3b3JrZXIuDQo+ID4gICAgLy8NCj4gPiAt ICBpZiAoRmVhdHVyZVBjZEdldCAoUGNkU3RhdHVzQ29kZVVzZVNlcmlhbCkpIHsNCj4gPiArICBp ZiAoUGNkR2V0Qm9vbCAoUGNkU3RhdHVzQ29kZVVzZVNlcmlhbCkpIHsNCj4gPiAgICAgIC8vDQo+ ID4gICAgICAvLyBDYWxsIFNlcmlhbCBQb3J0IExpYiBBUEkgdG8gaW5pdGlhbGl6ZSBzZXJpYWwN Cj4gcG9ydC4NCj4gPiAgICAgIC8vDQo+ID4gICAgICBTdGF0dXMgPSBTZXJpYWxQb3J0SW5pdGlh bGl6ZSAoKTsNCj4gPiAgICAgIEFTU0VSVF9FRklfRVJST1IgKFN0YXR1cyk7DQo+ID4gICAgfQ0K PiA+IC0gIGlmIChGZWF0dXJlUGNkR2V0IChQY2RTdGF0dXNDb2RlVXNlTWVtb3J5KSkgew0KPiA+ ICsgIGlmIChQY2RHZXRCb29sIChQY2RTdGF0dXNDb2RlVXNlTWVtb3J5KSkgew0KPiA+ICAgICAg U3RhdHVzID0gTWVtb3J5U3RhdHVzQ29kZUluaXRpYWxpemVXb3JrZXIgKCk7DQo+ID4gICAgICBB U1NFUlRfRUZJX0VSUk9SIChTdGF0dXMpOw0KPiA+ICAgIH0NCj4gPiBAQCAtNzMsMTAgKzczLDEw IEBAIFN0YXR1c0NvZGVIYW5kbGVyU21tRW50cnkgKA0KPiA+ICAgIC8vDQo+ID4gICAgSW5pdGlh bGl6YXRpb25EaXNwYXRjaGVyV29ya2VyICgpOw0KPiA+DQo+ID4gLSAgaWYgKEZlYXR1cmVQY2RH ZXQgKFBjZFN0YXR1c0NvZGVVc2VTZXJpYWwpKSB7DQo+ID4gKyAgaWYgKFBjZEdldEJvb2wgKFBj ZFN0YXR1c0NvZGVVc2VTZXJpYWwpKSB7DQo+ID4gICAgICBtUnNjSGFuZGxlclByb3RvY29sLT5S ZWdpc3Rlcg0KPiAoU2VyaWFsU3RhdHVzQ29kZVJlcG9ydFdvcmtlcik7DQo+ID4gICAgfQ0KPiA+ IC0gIGlmIChGZWF0dXJlUGNkR2V0IChQY2RTdGF0dXNDb2RlVXNlTWVtb3J5KSkgew0KPiA+ICsg IGlmIChQY2RHZXRCb29sIChQY2RTdGF0dXNDb2RlVXNlTWVtb3J5KSkgew0KPiA+ICAgICAgbVJz Y0hhbmRsZXJQcm90b2NvbC0+UmVnaXN0ZXINCj4gKE1lbW9yeVN0YXR1c0NvZGVSZXBvcnRXb3Jr ZXIpOw0KPiA+ICAgIH0NCj4gPg0KPiA+IGRpZmYgLS1naXQNCj4gPg0KPiBhL01kZU1vZHVsZVBr Zy9Vbml2ZXJzYWwvU3RhdHVzQ29kZUhhbmRsZXIvU21tL1N0YXR1c0NvZA0KPiBlSGFuZGxlclNt bS5pDQo+ID4gbmYNCj4gPg0KPiBiL01kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvU3RhdHVzQ29kZUhh bmRsZXIvU21tL1N0YXR1c0NvZA0KPiBlSGFuZGxlclNtbS5pDQo+ID4gbmYNCj4gPiBpbmRleCA0 N2QwNTQ1Zjk1OTEuLjRlMjRkODdlNTVkMSAxMDA2NDQNCj4gPiAtLS0NCj4gPg0KPiBhL01kZU1v ZHVsZVBrZy9Vbml2ZXJzYWwvU3RhdHVzQ29kZUhhbmRsZXIvU21tL1N0YXR1c0NvZA0KPiBlSGFu ZGxlclNtbS5pDQo+ID4gbmYNCj4gPiArKysNCj4gPg0KPiBiL01kZU1vZHVsZVBrZy9Vbml2ZXJz YWwvU3RhdHVzQ29kZUhhbmRsZXIvU21tL1N0YXR1c0NvZA0KPiBlSGFuZGxlclNtbS5pDQo+ID4g bmYNCj4gPiBAQCAtNTMsMTEgKzUzLDkgQEAgW0d1aWRzXQ0KPiA+ICBbUHJvdG9jb2xzXQ0KPiA+ ICAgIGdFZmlTbW1Sc2NIYW5kbGVyUHJvdG9jb2xHdWlkICAgICAgICAgICAgICAgICAjIw0KPiBD T05TVU1FUw0KPiA+DQo+ID4gLVtGZWF0dXJlUGNkXQ0KPiA+IC0NCj4gZ0VmaU1kZU1vZHVsZVBr Z1Rva2VuU3BhY2VHdWlkLlBjZFN0YXR1c0NvZGVVc2VNZW1vcnkgIyMNCj4gPiBDT05TVU1FUw0K PiA+IC0NCj4gZ0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZFN0YXR1c0NvZGVVc2VT ZXJpYWwgIyMgQ09OU1VNRVMNCj4gPiAtDQo+ID4gIFtQY2RdDQo+ID4gKw0KPiBnRWZpTWRlTW9k dWxlUGtnVG9rZW5TcGFjZUd1aWQuUGNkU3RhdHVzQ29kZVVzZVNlcmlhbCAjIyBDT05TVU1FUw0K PiA+ICsNCj4gZ0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZFN0YXR1c0NvZGVVc2VN ZW1vcnkgIyMNCj4gPiBDT05TVU1FUw0KPiA+DQo+IGdFZmlNZGVNb2R1bGVQa2dUb2tlblNwYWNl R3VpZC5QY2RTdGF0dXNDb2RlTWVtb3J5U2l6ZQ0KPiB8MTI4fA0KPiA+IGdFZmlNZGVNb2R1bGVQ a2dUb2tlblNwYWNlR3VpZC5QY2RTdGF0dXNDb2RlVXNlTWVtb3J5DQo+ICMjDQo+ID4gU09NRVRJ TUVTX0NPTlNVTUVTDQo+ID4NCj4gPiAgW0RlcGV4XQ0KPiA+IC0tDQo+ID4gMi4yNC4wLndpbmRv d3MuMg0KPiANCj4gDQo+IA0KDQo=