From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mx.groups.io with SMTP id smtpd.web11.55.1592441854952805287 for ; Wed, 17 Jun 2020 17:57:35 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=wLt+VnWO; spf=pass (domain: intel.com, ip: 134.134.136.24, mailfrom: jian.j.wang@intel.com) IronPort-SDR: /i5s8tCTxvLxI51v5ZDT3kgpFYZ6e5/xjP8dI7i10xev69D5qPOzQWmxSJhaBTbebtF92yD4TN 96q/v3Lxuv4w== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Jun 2020 17:57:33 -0700 IronPort-SDR: Oe1yecX0oZvwibchEOGki4sEgM5+f8zoXsCwmwqlYFeMqe1zhynlvr49d5D8djeQLNddv4vgua xfGWRrgym83g== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.73,524,1583222400"; d="scan'208";a="291603396" Received: from fmsmsx107.amr.corp.intel.com ([10.18.124.205]) by orsmga002.jf.intel.com with ESMTP; 17 Jun 2020 17:57:33 -0700 Received: from fmsmsx603.amr.corp.intel.com (10.18.126.83) by fmsmsx107.amr.corp.intel.com (10.18.124.205) with Microsoft SMTP Server (TLS) id 14.3.439.0; Wed, 17 Jun 2020 17:57:33 -0700 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx603.amr.corp.intel.com (10.18.126.83) 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:57:33 -0700 Received: from FMSEDG002.ED.cps.intel.com (10.1.192.134) by fmsmsx611.amr.corp.intel.com (10.18.126.91) 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:57:33 -0700 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (104.47.70.108) by edgegateway.intel.com (192.55.55.69) with Microsoft SMTP Server (TLS) id 14.3.439.0; Wed, 17 Jun 2020 17:57:32 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZmGeumTOJVOzPP2MZUqIJFxmDt+cztQkTpDzo0hadOykjU8+sHujY8EB4ur6l6iku+/31qQrz6CZjXMmWMWJuL56OVfNc6PHVjQsyVNpBLM8M6QMexYrkttaID7yH+hmSLvimuiPsugqPtqtob33C8VRSEm+02DZWVu3yucl7SZHcn+pXpKAP1S31sPA+XWNAqEm+4nyLkMv5/L5GGGOS/JshVqtwSWLW0z6Zl+eQP/vXj7X8K1uSRiV0bD+ci40+8bM4wlUySMocmOBpP5spDhcjJ2Joq6b9vxMpcdwbOW6pAB8Zd7Qpw/RC0BeWdOe7MmgYkCX0F8qT6wchsdA5g== 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=euYOVz1phaUsGSO7Ecva6d1wr5vHh2QRAClIWSu1E3M=; b=adEbOFGNIz79Cv5C/6ntxID5GVKDwnOa2yZjIjk7U7panY0V0ZYrvUaQ2/zv0fTCyNbE5AC3uK2GAKjh6vZtp8rvDc4AbYHT7QcgFxbfwp+ZJ2/krkGy3N6btLIvUv0Binu1URBXbY4bmoyOTBrC6Vjt0YHvADpz/PSLElR00Wt3hym0EML2M1WmaouuU74Dk+oiFmAovgEQ2lMpnvDDAqsSF2ckUEUphJp7SI2A9zsDo5DlmGYIKNdAeZJguQZRfk0pMGFTjODQU8UzaNDSTX1uNiVWZ3TjtZ+5wvj3ggESfeREO0Y6Pi9aSmPP6C7OPa+sSsks+g09nNI3FrBL5Q== 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=euYOVz1phaUsGSO7Ecva6d1wr5vHh2QRAClIWSu1E3M=; b=wLt+VnWOEgSflNNdm6YnIKDdGBmC2LyWB4XQWjgROsml310p1hsL4FIH3H5bKUbrh79XeO+t57Y40XTuKcY4QMI6Ay4PxCchVeyquZRkHYzMEOIQpCCI2lejLdibMvfCxzW/3TYQd46/tvJPGJHT26wRnEo2ZzxKxGic/JPhxoc= Received: from SN6PR11MB3312.namprd11.prod.outlook.com (2603:10b6:805:c8::14) by SN6PR11MB2559.namprd11.prod.outlook.com (2603:10b6:805:57::15) 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:57:31 +0000 Received: from SN6PR11MB3312.namprd11.prod.outlook.com ([fe80::31f6:24c6:99f0:33d2]) by SN6PR11MB3312.namprd11.prod.outlook.com ([fe80::31f6:24c6:99f0:33d2%6]) with mapi id 15.20.3109.021; Thu, 18 Jun 2020 00:57:31 +0000 From: "Wang, Jian J" To: "Kinney, Michael D" , "devel@edk2.groups.io" , "Tan, Ming" 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+Lqjc4hkggAAi1gCAAIg28A== Date: Thu, 18 Jun 2020 00:57:30 +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-reaction: no-action dlp-version: 11.2.0.6 dlp-product: dlpe-windows 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.198.147.214] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 38546e22-2ef6-4cfa-ee93-08d81322944e x-ms-traffictypediagnostic: SN6PR11MB2559: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:7219; x-forefront-prvs: 0438F90F17 x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: E/4i3gOzyA8fYxHg9F+kpxcuYvyO84Faa0VABRzMG5xDR33cZIjkE43/IoJJY0vn7Ntu88jwTPtjqlg8f9qAYEvjqC6ZZGYLe4gIs0ydcL1JBjGUbqejoIBowIayPU/WJ3H1gBaeGrEl352D/Qg2lYGbZGxBK0PZIsmOL0Vgmu2yeKodT8+waMhT2E3ZRNyuKfNa7Af8z6gZPET8xVK/rWnJn1gcSAE1FQHp+F6KMEjK/XpM7GWGMXQN7NAtzPL3PGc23rhdT7YUhJKB3x1GM2wtUJBgqSNfCTOhM+JvtD24+jsvrLM90y8B68sUnmRsgZEFbWEJrOpUtIosS+1GN58GdyoQO/4CQ5hx5YmZYYtIlhEpLISWKrAlHqRYFJ0idmHc9eKM0gFRAeoy/peL8A== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SN6PR11MB3312.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFTY:;SFS:(4636009)(366004)(346002)(376002)(136003)(396003)(39860400002)(107886003)(5660300002)(316002)(66574015)(86362001)(52536014)(55016002)(9686003)(110136005)(33656002)(30864003)(4326008)(186003)(26005)(76116006)(66446008)(66946007)(8676002)(966005)(64756008)(53546011)(478600001)(6506007)(8936002)(7696005)(66476007)(66556008)(83380400001)(6636002)(71200400001)(2906002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: d3rKUqFVzxqyZax12Ho1JNMS/8r3XIly4nVgKnEUGSdy4RLYYRfilyUlyolfTc2K+3Vj+u9vykGE1LpzD2NGDJaDx5J/HD9+kM/QzNjKsZw+Wg4H65ocFhSWcatoSHoz6uOVOogx+nDzNehUwVx4PIZmyFq/d9Npz9tmHhFnDCLin4oDkkr1JzF4oBcB6o6L68ExPlvqqR4XHSF+l4EJJjKpIKag2MRUHhmj2icSxQOO92Ey9yW6ATpRpiEEWBziP33ColDJvjnch9TpIxpEF0sEMtCY082JOCdJywvKaccprd9pRWqtfvMT8jTOPvvbGkXx/qWTDD9A7CdTRIoC9VQVR0QNipOVw30U3wzCFZ/wCOBtCJxdQG4Px63bWeLanIFDWqja2h56XCtrQp8qyXYerrrFfij56Ig2i6x5oC4q1gOZ1guF0DlM20jfxr4usPRaqXtHmXehYe04p+l+7aESIF6XT1K8WJ1wB10w5dj1/umZ82Kryjzq7yejBmqb MIME-Version: 1.0 X-MS-Exchange-CrossTenant-Network-Message-Id: 38546e22-2ef6-4cfa-ee93-08d81322944e X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Jun 2020 00:57:30.9522 (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: 8yrjB1A6lBD4wDsh2g1QQz60ydlimhr3JeOuQLsHNlc+71vRXMgIsMgIHFq4EqnDw741mDzHESfIDUjNvF4ioQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR11MB2559 Return-Path: jian.j.wang@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 TWlrZSwNCg0KSSB0cmllZCB0byBidWlsZCBpdC4gVGhlcmUncyBubyB3YXJuaW5ncy4gQW5kIGl0 J3MgZnJlZSB0byBjaGFuZ2UgdHlwZSB0byBhbnkgb2YgdGhlbS4NCldoeSdzIHRoZXJlIHN1Y2gg bGltaXRhdGlvbj8gRmVhdHVyZUZsYWcgbG9va3MgdGhlIHNhbWUgYXMgRml4ZWRBdEJ1aWxkIHRv IG1lLg0KDQpSZWdhcmRzLA0KSmlhbg0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ IEZyb206IEtpbm5leSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4NCj4g U2VudDogVGh1cnNkYXksIEp1bmUgMTgsIDIwMjAgMTI6NDcgQU0NCj4gVG86IGRldmVsQGVkazIu Z3JvdXBzLmlvOyBXYW5nLCBKaWFuIEogPGppYW4uai53YW5nQGludGVsLmNvbT47IFRhbiwgTWlu Zw0KPiA8bWluZy50YW5AaW50ZWwuY29tPjsgS2lubmV5LCBNaWNoYWVsIEQgPG1pY2hhZWwuZC5r aW5uZXlAaW50ZWwuY29tPg0KPiBDYzogV3UsIEhhbyBBIDxoYW8uYS53dUBpbnRlbC5jb20+DQo+ IFN1YmplY3Q6IFJFOiBbZWRrMi1kZXZlbF0gW1BBVENIIHY1IDEvMV0gTWRlTW9kdWxlUGtnLmRl YzogQ2hhbmdlIFBDRHMgZm9yDQo+IHN0YXR1cyBjb2RlLg0KPiANCj4gTWluZywNCj4gDQo+IFdp dGggdGhpcyBjaGFuZ2UsIGFyZSB0aGUgc2FtZSBQQ0RzIGxpc3RlZCBhcyBib3RoDQo+IGEgRmVh dHVyZSBGbGFnIFBDRCBhbmQgYSBub24tRmVhdHVyZSBGbGFnIFBDRD8NCj4gDQo+IFRoYXQgc2hv dWxkIG5vdCBiZSBhbGxvd2VkLCBhbmQgaWYgdGhhdCBwYXNzZXMgdGhlDQo+IGJ1aWxkLCB0aGVu IHRoZSBidWlsZCB0b29scyBzaG91bGQgZmxhZyB0aGF0IGFzIGFuDQo+IGVycm9yIGNvbmRpdGlv bi4NCj4gDQo+IE1pa2UNCj4gDQo+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiBG cm9tOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbyA8ZGV2ZWxAZWRrMi5ncm91cHMuaW8+IE9uDQo+ID4g QmVoYWxmIE9mIFdhbmcsIEppYW4gSg0KPiA+IFNlbnQ6IFdlZG5lc2RheSwgSnVuZSAxNywgMjAy MCA3OjQzIEFNDQo+ID4gVG86IFRhbiwgTWluZyA8bWluZy50YW5AaW50ZWwuY29tPjsgZGV2ZWxA ZWRrMi5ncm91cHMuaW8NCj4gPiBDYzogV3UsIEhhbyBBIDxoYW8uYS53dUBpbnRlbC5jb20+DQo+ ID4gU3ViamVjdDogUmU6IFtlZGsyLWRldmVsXSBbUEFUQ0ggdjUgMS8xXQ0KPiA+IE1kZU1vZHVs ZVBrZy5kZWM6IENoYW5nZSBQQ0RzIGZvciBzdGF0dXMgY29kZS4NCj4gPg0KPiA+IFJldmlld2Vk LWJ5OiBKaWFuIEogV2FuZyA8amlhbi5qLndhbmdAaW50ZWwuY29tPg0KPiA+DQo+ID4gUmVnYXJk cywNCj4gPiBKaWFuDQo+ID4NCj4gPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4g PiBGcm9tOiBUYW4sIE1pbmcgPG1pbmcudGFuQGludGVsLmNvbT4NCj4gPiA+IFNlbnQ6IFdlZG5l c2RheSwgSnVuZSAxNywgMjAyMCAzOjM2IFBNDQo+ID4gPiBUbzogZGV2ZWxAZWRrMi5ncm91cHMu aW8NCj4gPiA+IENjOiBXYW5nLCBKaWFuIEogPGppYW4uai53YW5nQGludGVsLmNvbT47IFd1LCBI YW8gQQ0KPiA+IDxoYW8uYS53dUBpbnRlbC5jb20+DQo+ID4gPiBTdWJqZWN0OiBbUEFUQ0ggdjUg MS8xXSBNZGVNb2R1bGVQa2cuZGVjOiBDaGFuZ2UgUENEcw0KPiA+IGZvciBzdGF0dXMgY29kZS4N Cj4gPiA+DQo+ID4gPiBSRUY6DQo+ID4gaHR0cHM6Ly9idWd6aWxsYS50aWFub2NvcmUub3JnL3No b3dfYnVnLmNnaT9pZD0yNzg2DQo+ID4gPg0KPiA+ID4gSW4gb3JkZXIgdG8gc3VwcG9ydCBlbmFi bGUvZGlzYWJsZSByZXBvcnQgc3RhdHVzIGNvZGUNCj4gPiB0aHJvdWdoIG1lbW9yeQ0KPiA+ID4g b3Igc2VyaWFsIGR5bmFtaWMsIGNoYW5nZSB0aGUgZm9sbG93aW5nIFBDRHMgZnJvbQ0KPiA+IFtQ Y2RzRmVhdHVyZUZsYWddIHRvDQo+ID4gPiBbUGNkc0ZpeGVkQXRCdWlsZCwgUGNkc1BhdGNoYWJs ZUluTW9kdWxlLCBQY2RzRHluYW1pYywNCj4gPiBQY2RzRHluYW1pY0V4XToNCj4gPiA+ICAgUGNk U3RhdHVzQ29kZVVzZVNlcmlhbA0KPiA+ID4gICBQY2RTdGF0dXNDb2RlVXNlTWVtb3J5DQo+ID4g PiBUaGUgb3JpZ2luYWwgcGxhZm9ybXMgY2FuIHVzZSBQY2RzRml4ZWRBdEJ1aWxkIGluIC5kc2MN Cj4gPiBmaWxlcyB0byBzYXZlIHNpemUuDQo+ID4gPiBDdXJyZW50bHkgZG8gbm90IHJlbW92ZSB0 aGUgb2xkIHBjZCB0eXBlIHRvIGtlZXANCj4gPiBjb21wYXRpYmxlLg0KPiA+ID4NCj4gPiA+IENj OiBKaWFuIEogV2FuZyA8amlhbi5qLndhbmdAaW50ZWwuY29tPg0KPiA+ID4gQ2M6IEhhbyBBIFd1 IDxoYW8uYS53dUBpbnRlbC5jb20+DQo+ID4gPiBTaWduZWQtb2ZmLWJ5OiBNaW5nIFRhbiA8bWlu Zy50YW5AaW50ZWwuY29tPg0KPiA+ID4gLS0tDQo+ID4gPiBWNTogRG8gbm90IHJlbW92ZSB0aCBv bGQgcGNkIHR5cGUgdG8ga2VlcCBjb21wYXRpYmxlLA0KPiA+IGFuZCBjaGFuZ2UgdG8NCj4gPiA+ IHN0YW5kYWxvbmUgcGF0Y2guDQo+ID4gPiBWNDogTm8gY2hhbmdlIGZvciB0aGlzIDEvNCBwYXRj aCwganVzdCBtb2RpZnkgdGhlIDItDQo+ID4gNC80IHBhdGNocy4NCj4gPiA+IFYzOiBTcGxpdCBv bmUgcGF0Y2ggdG8gc2V2ZXJhbCBwYXRjaHMsIGVhY2ggUGtnIGhhcw0KPiA+IG9uZSBwYXRjaC4N Cj4gPiA+IFYyOiBDaGFuZ2UgdGhlIG5ldyB0eXBlIGZyb20gW1BjZHNEeW5hbWljXSB0bw0KPiA+ IFtQY2RzRml4ZWRBdEJ1aWxkLA0KPiA+ID4gUGNkc1BhdGNoYWJsZUluTW9kdWxlLCBQY2RzRHlu YW1pYywgUGNkc0R5bmFtaWNFeF0NCj4gPiA+ICAgICBBbmQgc2V0IHRvIFBjZHNGaXhlZEF0QnVp bGQgaW4gdGhlIG9yaWdpbmFsDQo+ID4gcGxhdGZvcm0gLmRzYyBmaWxlcy4NCj4gPiA+DQo+ID4g PiAgTWRlTW9kdWxlUGtnL01kZU1vZHVsZVBrZy5kZWMgICAgICAgICAgICAgICAgICAgIHwgMTMN Cj4gPiArKysrKysrKysrKysrDQo+ID4gPiAgLi4uL1N0YXR1c0NvZGVIYW5kbGVyL1BlaS9TdGF0 dXNDb2RlSGFuZGxlclBlaS5jIHwgIDYNCj4gPiArKystLS0NCj4gPiA+ICAuLi4vUGVpL1N0YXR1 c0NvZGVIYW5kbGVyUGVpLmluZiAgICAgICAgICAgICAgICAgfCAgNg0KPiA+ICsrLS0tLQ0KPiA+ ID4gIC4uLi9SdW50aW1lRHhlL1N0YXR1c0NvZGVIYW5kbGVyUnVudGltZUR4ZS5jICAgICB8IDE2 DQo+ID4gKysrKysrKystLS0tLS0tLQ0KPiA+ID4gIC4uLi9SdW50aW1lRHhlL1N0YXR1c0NvZGVI YW5kbGVyUnVudGltZUR4ZS5pbmYgICB8ICA2DQo+ID4gKystLS0tDQo+ID4gPiAgLi4uL1N0YXR1 c0NvZGVIYW5kbGVyL1NtbS9TdGF0dXNDb2RlSGFuZGxlclNtbS5jIHwgMTANCj4gPiArKysrKy0t LS0tDQo+ID4gPiAgLi4uL1NtbS9TdGF0dXNDb2RlSGFuZGxlclNtbS5pbmYgICAgICAgICAgICAg ICAgIHwgIDYNCj4gPiArKy0tLS0NCj4gPiA+ICA3IGZpbGVzIGNoYW5nZWQsIDM1IGluc2VydGlv bnMoKyksIDI4IGRlbGV0aW9ucygtKQ0KPiA+ID4NCj4gPiA+IGRpZmYgLS1naXQgYS9NZGVNb2R1 bGVQa2cvTWRlTW9kdWxlUGtnLmRlYw0KPiA+ID4gYi9NZGVNb2R1bGVQa2cvTWRlTW9kdWxlUGtn LmRlYw0KPiA+ID4gaW5kZXggNGY0NGFmNjk0ODYyLi5iZDM2OWQxZjIzMGUgMTAwNjQ0DQo+ID4g PiAtLS0gYS9NZGVNb2R1bGVQa2cvTWRlTW9kdWxlUGtnLmRlYw0KPiA+ID4gKysrIGIvTWRlTW9k dWxlUGtnL01kZU1vZHVsZVBrZy5kZWMNCj4gPiA+IEBAIC0yMDAxLDYgKzIwMDEsMTkgQEAgW1Bj ZHNGaXhlZEF0QnVpbGQsDQo+ID4gUGNkc1BhdGNoYWJsZUluTW9kdWxlLA0KPiA+ID4gUGNkc0R5 bmFtaWMsIFBjZHNEeW5hbWljRXhdDQo+ID4gPiAgICAjIEBQcm9tcHQgVENHIFBsYXRmb3JtIEZp cm13YXJlIFByb2ZpbGUgcmV2aXNpb24uDQo+ID4gPg0KPiA+ID4NCj4gPiBnRWZpTWRlTW9kdWxl UGtnVG9rZW5TcGFjZUd1aWQuUGNkVGNnUGZwTWVhc3VyZW1lbnRSZXZpcw0KPiA+IGlvbnwwfFVJ TlQzDQo+ID4gPiAyfDB4MDAwMTAwNzcNCj4gPiA+DQo+ID4gPiArICAjIyBJbmRpY2F0ZXMgaWYg U3RhdHVzQ29kZSBpcyByZXBvcnRlZCB2aWEgU2VyaWFsDQo+ID4gcG9ydC48QlI+PEJSPg0KPiA+ ID4gKyAgIyAgIFRSVUUgIC0gUmVwb3J0cyBTdGF0dXNDb2RlIHZpYSBTZXJpYWwgcG9ydC48QlI+ DQo+ID4gPiArICAjICAgRkFMU0UgLSBEb2VzIG5vdCByZXBvcnQgU3RhdHVzQ29kZSB2aWEgU2Vy aWFsDQo+ID4gcG9ydC48QlI+DQo+ID4gPiArICAjIEBQcm9tcHQgRW5hYmxlIFN0YXR1c0NvZGUg dmlhIFNlcmlhbCBwb3J0Lg0KPiA+ID4gKw0KPiA+ID4NCj4gPiBnRWZpTWRlTW9kdWxlUGtnVG9r ZW5TcGFjZUd1aWQuUGNkU3RhdHVzQ29kZVVzZVNlcmlhbHxUUg0KPiA+IFVFfEJPT0xFQU58DQo+ ID4gPiAweDAwMDEwMDIyDQo+ID4gPiArDQo+ID4gPiArICAjIyBJbmRpY2F0ZXMgaWYgU3RhdHVz Q29kZSBpcyBzdG9yZWQgaW4gbWVtb3J5Lg0KPiA+ID4gKyAgIyAgVGhlIG1lbW9yeSBpcyBib290 IHRpbWUgbWVtb3J5IGluIFBFSSBQaGFzZSBhbmQNCj4gPiBpcyBydW50aW1lIG1lbW9yeSBpbg0K PiA+ID4gRFhFIFBoYXNlLjxCUj48QlI+DQo+ID4gPiArICAjICAgVFJVRSAgLSBTdG9yZXMgU3Rh dHVzQ29kZSBpbiBtZW1vcnkuPEJSPg0KPiA+ID4gKyAgIyAgIEZBTFNFIC0gRG9lcyBub3Qgc3Rv cmUgU3RhdHVzQ29kZSBpbg0KPiA+IG1lbW9yeS48QlI+DQo+ID4gPiArICAjIEBQcm9tcHQgRW5h YmxlIFN0YXR1c0NvZGUgdmlhIG1lbW9yeS4NCj4gPiA+ICsNCj4gPiA+DQo+ID4gZ0VmaU1kZU1v ZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZFN0YXR1c0NvZGVVc2VNZW1vcnl8RkENCj4gPiBMU0V8 Qk9PTEVBDQo+ID4gPiBOfDB4MDAwMTAwMjMNCj4gPiA+ICsNCj4gPiA+ICBbUGNkc1BhdGNoYWJs ZUluTW9kdWxlXQ0KPiA+ID4gICAgIyMgU3BlY2lmeSBtZW1vcnkgc2l6ZSB3aXRoIHBhZ2UgbnVt YmVyIGZvciBQRUkNCj4gPiBjb2RlIHdoZW4NCj4gPiA+ICAgICMgIExvYWRpbmcgTW9kdWxlIGF0 IEZpeGVkIEFkZHJlc3MgZmVhdHVyZSBpcw0KPiA+IGVuYWJsZWQuDQo+ID4gPiBkaWZmIC0tZ2l0 DQo+ID4gPg0KPiA+IGEvTWRlTW9kdWxlUGtnL1VuaXZlcnNhbC9TdGF0dXNDb2RlSGFuZGxlci9Q ZWkvU3RhdHVzQ29kDQo+ID4gZUhhbmRsZXJQZWkuYw0KPiA+ID4NCj4gPiBiL01kZU1vZHVsZVBr Zy9Vbml2ZXJzYWwvU3RhdHVzQ29kZUhhbmRsZXIvUGVpL1N0YXR1c0NvZA0KPiA+IGVIYW5kbGVy UGVpLmMNCj4gPiA+IGluZGV4IDFiMDdmOTJmM2NlOC4uOWIyZWE0ZWU4NGQ5IDEwMDY0NA0KPiA+ ID4gLS0tDQo+ID4gYS9NZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1N0YXR1c0NvZGVIYW5kbGVyL1Bl aS9TdGF0dXNDb2QNCj4gPiBlSGFuZGxlclBlaS5jDQo+ID4gPiArKysNCj4gPiA+DQo+ID4gYi9N ZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1N0YXR1c0NvZGVIYW5kbGVyL1BlaS9TdGF0dXNDb2QNCj4g PiBlSGFuZGxlclBlaS5jDQo+ID4gPiBAQCAtMiw3ICsyLDcgQEANCj4gPiA+ICAgIFJlcG9ydCBT dGF0dXMgQ29kZSBIYW5kbGVyIFBFSU0gd2hpY2ggcHJvZHVjZXMNCj4gPiBnZW5lcmFsIGhhbmRs ZXJzIGFuZCBob29rDQo+ID4gPiB0aGVtDQo+ID4gPiAgICBvbnRvIHRoZSBQRUkgc3RhdHVzIGNv ZGUgcm91dGVyLg0KPiA+ID4NCj4gPiA+IC0gIENvcHlyaWdodCAoYykgMjAwOSAtIDIwMTgsIElu dGVsIENvcnBvcmF0aW9uLiBBbGwNCj4gPiByaWdodHMgcmVzZXJ2ZWQuPEJSPg0KPiA+ID4gKyAg Q29weXJpZ2h0IChjKSAyMDA5IC0gMjAyMCwgSW50ZWwgQ29ycG9yYXRpb24uIEFsbA0KPiA+IHJp Z2h0cyByZXNlcnZlZC48QlI+DQo+ID4gPiAgICBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNE LTItQ2xhdXNlLVBhdGVudA0KPiA+ID4NCj4gPiA+ICAqKi8NCj4gPiA+IEBAIC00NSwxMyArNDUs MTMgQEAgU3RhdHVzQ29kZUhhbmRsZXJQZWlFbnRyeSAoDQo+ID4gPiAgICAvLyBJZiBlbmFibGUg VXNlU2VyaWFsLCB0aGVuIGluaXRpYWxpemUgc2VyaWFsDQo+ID4gcG9ydC4NCj4gPiA+ICAgIC8v IGlmIGVuYWJsZSBVc2VNZW1vcnksIHRoZW4gaW5pdGlhbGl6ZSBtZW1vcnkNCj4gPiBzdGF0dXMg Y29kZSB3b3JrZXIuDQo+ID4gPiAgICAvLw0KPiA+ID4gLSAgaWYgKEZlYXR1cmVQY2RHZXQgKFBj ZFN0YXR1c0NvZGVVc2VTZXJpYWwpKSB7DQo+ID4gPiArICBpZiAoUGNkR2V0Qm9vbCAoUGNkU3Rh dHVzQ29kZVVzZVNlcmlhbCkpIHsNCj4gPiA+ICAgICAgU3RhdHVzID0gU2VyaWFsUG9ydEluaXRp YWxpemUoKTsNCj4gPiA+ICAgICAgQVNTRVJUX0VGSV9FUlJPUiAoU3RhdHVzKTsNCj4gPiA+ICAg ICAgU3RhdHVzID0gUnNjSGFuZGxlclBwaS0+UmVnaXN0ZXINCj4gPiAoU2VyaWFsU3RhdHVzQ29k ZVJlcG9ydFdvcmtlcik7DQo+ID4gPiAgICAgIEFTU0VSVF9FRklfRVJST1IgKFN0YXR1cyk7DQo+ ID4gPiAgICB9DQo+ID4gPiAtICBpZiAoRmVhdHVyZVBjZEdldCAoUGNkU3RhdHVzQ29kZVVzZU1l bW9yeSkpIHsNCj4gPiA+ICsgIGlmIChQY2RHZXRCb29sIChQY2RTdGF0dXNDb2RlVXNlTWVtb3J5 KSkgew0KPiA+ID4gICAgICBTdGF0dXMgPSBNZW1vcnlTdGF0dXNDb2RlSW5pdGlhbGl6ZVdvcmtl ciAoKTsNCj4gPiA+ICAgICAgQVNTRVJUX0VGSV9FUlJPUiAoU3RhdHVzKTsNCj4gPiA+ICAgICAg U3RhdHVzID0gUnNjSGFuZGxlclBwaS0+UmVnaXN0ZXINCj4gPiAoTWVtb3J5U3RhdHVzQ29kZVJl cG9ydFdvcmtlcik7DQo+ID4gPiBkaWZmIC0tZ2l0DQo+ID4gPg0KPiA+IGEvTWRlTW9kdWxlUGtn L1VuaXZlcnNhbC9TdGF0dXNDb2RlSGFuZGxlci9QZWkvU3RhdHVzQ29kDQo+ID4gZUhhbmRsZXJQ ZWkuaW5mDQo+ID4gPg0KPiA+IGIvTWRlTW9kdWxlUGtnL1VuaXZlcnNhbC9TdGF0dXNDb2RlSGFu ZGxlci9QZWkvU3RhdHVzQ29kDQo+ID4gZUhhbmRsZXJQZWkuaW5mDQo+ID4gPiBpbmRleCA4YWVm OWFmMzRhMDUuLjY0MzgwZGRmYWNjYyAxMDA2NDQNCj4gPiA+IC0tLQ0KPiA+ID4NCj4gPiBhL01k ZU1vZHVsZVBrZy9Vbml2ZXJzYWwvU3RhdHVzQ29kZUhhbmRsZXIvUGVpL1N0YXR1c0NvZA0KPiA+ IGVIYW5kbGVyUGVpLmluZg0KPiA+ID4gKysrDQo+ID4gPg0KPiA+IGIvTWRlTW9kdWxlUGtnL1Vu aXZlcnNhbC9TdGF0dXNDb2RlSGFuZGxlci9QZWkvU3RhdHVzQ29kDQo+ID4gZUhhbmRsZXJQZWku aW5mDQo+ID4gPiBAQCAtNTMsMTEgKzUzLDkgQEAgW0d1aWRzXQ0KPiA+ID4gIFtQcGlzXQ0KPiA+ ID4gICAgZ0VmaVBlaVJzY0hhbmRsZXJQcGlHdWlkICAgICAgICAgICAgICAgICAgICAgICMjDQo+ ID4gQ09OU1VNRVMNCj4gPiA+DQo+ID4gPiAtW0ZlYXR1cmVQY2RdDQo+ID4gPiAtDQo+ID4gZ0Vm aU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZFN0YXR1c0NvZGVVc2VNZW1vcnkgIyMNCj4g PiA+IENPTlNVTUVTDQo+ID4gPiAtDQo+ID4gZ0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlk LlBjZFN0YXR1c0NvZGVVc2VTZXJpYWwgIyMNCj4gPiBDT05TVU1FUw0KPiA+ID4gLQ0KPiA+ID4g IFtQY2RdDQo+ID4gPiArDQo+ID4gZ0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZFN0 YXR1c0NvZGVVc2VTZXJpYWwgIyMNCj4gPiBDT05TVU1FUw0KPiA+ID4gKw0KPiA+IGdFZmlNZGVN b2R1bGVQa2dUb2tlblNwYWNlR3VpZC5QY2RTdGF0dXNDb2RlVXNlTWVtb3J5ICMjDQo+ID4gPiBD T05TVU1FUw0KPiA+ID4NCj4gPiA+DQo+ID4gZ0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlk LlBjZFN0YXR1c0NvZGVNZW1vcnlTaXplfDENCj4gPiB8Z0VmaU1kZU1vZA0KPiA+ID4gdWxlUGtn VG9rZW5TcGFjZUd1aWQuUGNkU3RhdHVzQ29kZVVzZU1lbW9yeSAgICAjIw0KPiA+ID4gU09NRVRJ TUVTX0NPTlNVTUVTDQo+ID4gPg0KPiA+ID4gIFtEZXBleF0NCj4gPiA+IGRpZmYgLS1naXQNCj4g PiA+DQo+ID4gYS9NZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1N0YXR1c0NvZGVIYW5kbGVyL1J1bnRp bWVEeGUvU3QNCj4gPiBhdHVzQ29kZUhhbmRsDQo+ID4gPiBlclJ1bnRpbWVEeGUuYw0KPiA+ID4N Cj4gPiBiL01kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvU3RhdHVzQ29kZUhhbmRsZXIvUnVudGltZUR4 ZS9TdA0KPiA+IGF0dXNDb2RlSGFuZGwNCj4gPiA+IGVyUnVudGltZUR4ZS5jDQo+ID4gPiBpbmRl eCA3OWNjNDhmYTU1YTQuLmE4YzBmZTViNzE0OSAxMDA2NDQNCj4gPiA+IC0tLQ0KPiA+ID4NCj4g PiBhL01kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvU3RhdHVzQ29kZUhhbmRsZXIvUnVudGltZUR4ZS9T dA0KPiA+IGF0dXNDb2RlSGFuZGwNCj4gPiA+IGVyUnVudGltZUR4ZS5jDQo+ID4gPiArKysNCj4g PiA+DQo+ID4gYi9NZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1N0YXR1c0NvZGVIYW5kbGVyL1J1bnRp bWVEeGUvU3QNCj4gPiBhdHVzQ29kZUhhbmRsDQo+ID4gPiBlclJ1bnRpbWVEeGUuYw0KPiA+ID4g QEAgLTIsNyArMiw3IEBADQo+ID4gPiAgICBTdGF0dXMgQ29kZSBIYW5kbGVyIERyaXZlciB3aGlj aCBwcm9kdWNlcyBnZW5lcmFsDQo+ID4gaGFuZGxlcnMgYW5kIGhvb2sgdGhlbQ0KPiA+ID4gICAg b250byB0aGUgRFhFIHN0YXR1cyBjb2RlIHJvdXRlci4NCj4gPiA+DQo+ID4gPiAtICBDb3B5cmln aHQgKGMpIDIwMDYgLSAyMDE5LCBJbnRlbCBDb3Jwb3JhdGlvbi4gQWxsDQo+ID4gcmlnaHRzIHJl c2VydmVkLjxCUj4NCj4gPiA+ICsgIENvcHlyaWdodCAoYykgMjAwNiAtIDIwMjAsIEludGVsIENv cnBvcmF0aW9uLiBBbGwNCj4gPiByaWdodHMgcmVzZXJ2ZWQuPEJSPg0KPiA+ID4gICAgU1BEWC1M aWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQNCj4gPiA+DQo+ID4gPiAgKiov DQo+ID4gPiBAQCAtMjksNyArMjksNyBAQCBVbnJlZ2lzdGVyQm9vdFRpbWVIYW5kbGVycyAoDQo+ ID4gPiAgICBJTiBWT0lEICAgICAgICAgICAgICpDb250ZXh0DQo+ID4gPiAgICApDQo+ID4gPiAg ew0KPiA+ID4gLSAgaWYgKEZlYXR1cmVQY2RHZXQgKFBjZFN0YXR1c0NvZGVVc2VTZXJpYWwpKSB7 DQo+ID4gPiArICBpZiAoUGNkR2V0Qm9vbCAoUGNkU3RhdHVzQ29kZVVzZVNlcmlhbCkpIHsNCj4g PiA+ICAgICAgbVJzY0hhbmRsZXJQcm90b2NvbC0+VW5yZWdpc3Rlcg0KPiA+IChTZXJpYWxTdGF0 dXNDb2RlUmVwb3J0V29ya2VyKTsNCj4gPiA+ICAgIH0NCj4gPiA+ICB9DQo+ID4gPiBAQCAtODAs MTQgKzgwLDE0IEBAIEluaXRpYWxpemF0aW9uRGlzcGF0Y2hlcldvcmtlciAoDQo+ID4gPiAgICAv LyBJZiBlbmFibGUgVXNlU2VyaWFsLCB0aGVuIGluaXRpYWxpemUgc2VyaWFsDQo+ID4gcG9ydC4N Cj4gPiA+ICAgIC8vIGlmIGVuYWJsZSBVc2VSdW50aW1lTWVtb3J5LCB0aGVuIGluaXRpYWxpemUN Cj4gPiBydW50aW1lIG1lbW9yeSBzdGF0dXMgY29kZQ0KPiA+ID4gd29ya2VyLg0KPiA+ID4gICAg Ly8NCj4gPiA+IC0gIGlmIChGZWF0dXJlUGNkR2V0IChQY2RTdGF0dXNDb2RlVXNlU2VyaWFsKSkg ew0KPiA+ID4gKyAgaWYgKFBjZEdldEJvb2wgKFBjZFN0YXR1c0NvZGVVc2VTZXJpYWwpKSB7DQo+ ID4gPiAgICAgIC8vDQo+ID4gPiAgICAgIC8vIENhbGwgU2VyaWFsIFBvcnQgTGliIEFQSSB0byBp bml0aWFsaXplIHNlcmlhbA0KPiA+IHBvcnQuDQo+ID4gPiAgICAgIC8vDQo+ID4gPiAgICAgIFN0 YXR1cyA9IFNlcmlhbFBvcnRJbml0aWFsaXplICgpOw0KPiA+ID4gICAgICBBU1NFUlRfRUZJX0VS Uk9SIChTdGF0dXMpOw0KPiA+ID4gICAgfQ0KPiA+ID4gLSAgaWYgKEZlYXR1cmVQY2RHZXQgKFBj ZFN0YXR1c0NvZGVVc2VNZW1vcnkpKSB7DQo+ID4gPiArICBpZiAoUGNkR2V0Qm9vbCAoUGNkU3Rh dHVzQ29kZVVzZU1lbW9yeSkpIHsNCj4gPiA+ICAgICAgU3RhdHVzID0gUnRNZW1vcnlTdGF0dXND b2RlSW5pdGlhbGl6ZVdvcmtlciAoKTsNCj4gPiA+ICAgICAgQVNTRVJUX0VGSV9FUlJPUiAoU3Rh dHVzKTsNCj4gPiA+ICAgIH0NCj4gPiA+IEBAIC0xMTUsNyArMTE1LDcgQEAgSW5pdGlhbGl6YXRp b25EaXNwYXRjaGVyV29ya2VyICgNCj4gPiA+ICAgICAgICAgIC8vDQo+ID4gPiAgICAgICAgICAv LyBEaXNwYXRjaCByZWNvcmRzIHRvIGRldmljZXMgYmFzZWQgb24NCj4gPiBmZWF0dXJlIGZsYWcu DQo+ID4gPiAgICAgICAgICAvLw0KPiA+ID4gLSAgICAgICAgaWYgKEZlYXR1cmVQY2RHZXQgKFBj ZFN0YXR1c0NvZGVVc2VTZXJpYWwpKSB7DQo+ID4gPiArICAgICAgICBpZiAoUGNkR2V0Qm9vbCAo UGNkU3RhdHVzQ29kZVVzZVNlcmlhbCkpIHsNCj4gPiA+ICAgICAgICAgICAgU2VyaWFsU3RhdHVz Q29kZVJlcG9ydFdvcmtlciAoDQo+ID4gPiAgICAgICAgICAgICAgUmVjb3JkW0luZGV4XS5Db2Rl VHlwZSwNCj4gPiA+ICAgICAgICAgICAgICBSZWNvcmRbSW5kZXhdLlZhbHVlLA0KPiA+ID4gQEAg LTEyNCw3ICsxMjQsNyBAQCBJbml0aWFsaXphdGlvbkRpc3BhdGNoZXJXb3JrZXIgKA0KPiA+ID4g ICAgICAgICAgICAgIE5VTEwNCj4gPiA+ICAgICAgICAgICAgICApOw0KPiA+ID4gICAgICAgICAg fQ0KPiA+ID4gLSAgICAgICAgaWYgKEZlYXR1cmVQY2RHZXQgKFBjZFN0YXR1c0NvZGVVc2VNZW1v cnkpKSB7DQo+ID4gPiArICAgICAgICBpZiAoUGNkR2V0Qm9vbCAoUGNkU3RhdHVzQ29kZVVzZU1l bW9yeSkpIHsNCj4gPiA+ICAgICAgICAgICAgUnRNZW1vcnlTdGF0dXNDb2RlUmVwb3J0V29ya2Vy ICgNCj4gPiA+ICAgICAgICAgICAgICBSZWNvcmRbSW5kZXhdLkNvZGVUeXBlLA0KPiA+ID4gICAg ICAgICAgICAgIFJlY29yZFtJbmRleF0uVmFsdWUsDQo+ID4gPiBAQCAtMTcxLDEwICsxNzEsMTAg QEAgU3RhdHVzQ29kZUhhbmRsZXJSdW50aW1lRHhlRW50cnkNCj4gPiAoDQo+ID4gPiAgICAvLw0K PiA+ID4gICAgSW5pdGlhbGl6YXRpb25EaXNwYXRjaGVyV29ya2VyICgpOw0KPiA+ID4NCj4gPiA+ IC0gIGlmIChGZWF0dXJlUGNkR2V0IChQY2RTdGF0dXNDb2RlVXNlU2VyaWFsKSkgew0KPiA+ID4g KyAgaWYgKFBjZEdldEJvb2wgKFBjZFN0YXR1c0NvZGVVc2VTZXJpYWwpKSB7DQo+ID4gPiAgICAg IG1Sc2NIYW5kbGVyUHJvdG9jb2wtPlJlZ2lzdGVyDQo+ID4gKFNlcmlhbFN0YXR1c0NvZGVSZXBv cnRXb3JrZXIsDQo+ID4gPiBUUExfSElHSF9MRVZFTCk7DQo+ID4gPiAgICB9DQo+ID4gPiAtICBp ZiAoRmVhdHVyZVBjZEdldCAoUGNkU3RhdHVzQ29kZVVzZU1lbW9yeSkpIHsNCj4gPiA+ICsgIGlm IChQY2RHZXRCb29sIChQY2RTdGF0dXNDb2RlVXNlTWVtb3J5KSkgew0KPiA+ID4gICAgICBtUnNj SGFuZGxlclByb3RvY29sLT5SZWdpc3Rlcg0KPiA+IChSdE1lbW9yeVN0YXR1c0NvZGVSZXBvcnRX b3JrZXIsDQo+ID4gPiBUUExfSElHSF9MRVZFTCk7DQo+ID4gPiAgICB9DQo+ID4gPg0KPiA+ID4g ZGlmZiAtLWdpdA0KPiA+ID4NCj4gPiBhL01kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvU3RhdHVzQ29k ZUhhbmRsZXIvUnVudGltZUR4ZS9TdA0KPiA+IGF0dXNDb2RlSGFuZGwNCj4gPiA+IGVyUnVudGlt ZUR4ZS5pbmYNCj4gPiA+DQo+ID4gYi9NZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1N0YXR1c0NvZGVI YW5kbGVyL1J1bnRpbWVEeGUvU3QNCj4gPiBhdHVzQ29kZUhhbmRsDQo+ID4gPiBlclJ1bnRpbWVE eGUuaW5mDQo+ID4gPiBpbmRleCBkNzRjMmE1NWRjYWYuLmZhYWRmZDk1NzhmZSAxMDA2NDQNCj4g PiA+IC0tLQ0KPiA+ID4NCj4gPiBhL01kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvU3RhdHVzQ29kZUhh bmRsZXIvUnVudGltZUR4ZS9TdA0KPiA+IGF0dXNDb2RlSGFuZGwNCj4gPiA+IGVyUnVudGltZUR4 ZS5pbmYNCj4gPiA+ICsrKw0KPiA+ID4NCj4gPiBiL01kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvU3Rh dHVzQ29kZUhhbmRsZXIvUnVudGltZUR4ZS9TdA0KPiA+IGF0dXNDb2RlSGFuZGwNCj4gPiA+IGVy UnVudGltZUR4ZS5pbmYNCj4gPiA+IEBAIC01OCwxMiArNTgsMTAgQEAgW0d1aWRzXQ0KPiA+ID4g IFtQcm90b2NvbHNdDQo+ID4gPiAgICBnRWZpUnNjSGFuZGxlclByb3RvY29sR3VpZCAgICAgICAg ICAgICAgICAgICAgIyMNCj4gPiBDT05TVU1FUw0KPiA+ID4NCj4gPiA+IC1bRmVhdHVyZVBjZF0N Cj4gPiA+ICtbUGNkXQ0KPiA+ID4NCj4gPiBnRWZpTWRlTW9kdWxlUGtnVG9rZW5TcGFjZUd1aWQu UGNkU3RhdHVzQ29kZVJlcGxheUluICAjIw0KPiA+IENPTlNVTUVTDQo+ID4gPiAtDQo+ID4gZ0Vm aU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZFN0YXR1c0NvZGVVc2VNZW1vcnkgIyMNCj4g PiA+IENPTlNVTUVTDQo+ID4gPg0KPiA+IGdFZmlNZGVNb2R1bGVQa2dUb2tlblNwYWNlR3VpZC5Q Y2RTdGF0dXNDb2RlVXNlU2VyaWFsICMjDQo+ID4gQ09OU1VNRVMNCj4gPiA+IC0NCj4gPiA+IC1b UGNkXQ0KPiA+ID4gKw0KPiA+IGdFZmlNZGVNb2R1bGVQa2dUb2tlblNwYWNlR3VpZC5QY2RTdGF0 dXNDb2RlVXNlTWVtb3J5ICMjDQo+ID4gPiBDT05TVU1FUw0KPiA+ID4NCj4gPiBnRWZpTWRlTW9k dWxlUGtnVG9rZW5TcGFjZUd1aWQuUGNkU3RhdHVzQ29kZU1lbW9yeVNpemUNCj4gPiB8MTI4fA0K PiA+ID4gZ0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZFN0YXR1c0NvZGVVc2VNZW1v cnkNCj4gPiAjIw0KPiA+ID4gU09NRVRJTUVTX0NPTlNVTUVTDQo+ID4gPg0KPiA+ID4gIFtEZXBl eF0NCj4gPiA+IGRpZmYgLS1naXQNCj4gPiA+DQo+ID4gYS9NZGVNb2R1bGVQa2cvVW5pdmVyc2Fs L1N0YXR1c0NvZGVIYW5kbGVyL1NtbS9TdGF0dXNDb2QNCj4gPiBlSGFuZGxlclNtbS4NCj4gPiA+ IGMNCj4gPiA+DQo+ID4gYi9NZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1N0YXR1c0NvZGVIYW5kbGVy L1NtbS9TdGF0dXNDb2QNCj4gPiBlSGFuZGxlclNtbS4NCj4gPiA+IGMNCj4gPiA+IGluZGV4IGY1 NDk5MWVkM2Y2Ny4uMjAyNzE1NzFkZWQ0IDEwMDY0NA0KPiA+ID4gLS0tDQo+ID4gPg0KPiA+IGEv TWRlTW9kdWxlUGtnL1VuaXZlcnNhbC9TdGF0dXNDb2RlSGFuZGxlci9TbW0vU3RhdHVzQ29kDQo+ ID4gZUhhbmRsZXJTbW0uDQo+ID4gPiBjDQo+ID4gPiArKysNCj4gPiA+DQo+ID4gYi9NZGVNb2R1 bGVQa2cvVW5pdmVyc2FsL1N0YXR1c0NvZGVIYW5kbGVyL1NtbS9TdGF0dXNDb2QNCj4gPiBlSGFu ZGxlclNtbS4NCj4gPiA+IGMNCj4gPiA+IEBAIC0yLDcgKzIsNyBAQA0KPiA+ID4gICAgU3RhdHVz IENvZGUgSGFuZGxlciBEcml2ZXIgd2hpY2ggcHJvZHVjZXMgZ2VuZXJhbA0KPiA+IGhhbmRsZXJz IGFuZCBob29rIHRoZW0NCj4gPiA+ICAgIG9udG8gdGhlIFNNTSBzdGF0dXMgY29kZSByb3V0ZXIu DQo+ID4gPg0KPiA+ID4gLSAgQ29weXJpZ2h0IChjKSAyMDA5IC0gMjAxOCwgSW50ZWwgQ29ycG9y YXRpb24uIEFsbA0KPiA+IHJpZ2h0cyByZXNlcnZlZC48QlI+DQo+ID4gPiArICBDb3B5cmlnaHQg KGMpIDIwMDkgLSAyMDIwLCBJbnRlbCBDb3Jwb3JhdGlvbi4gQWxsDQo+ID4gcmlnaHRzIHJlc2Vy dmVkLjxCUj4NCj4gPiA+ICAgIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2Ut UGF0ZW50DQo+ID4gPg0KPiA+ID4gICoqLw0KPiA+ID4gQEAgLTI4LDE0ICsyOCwxNCBAQCBJbml0 aWFsaXphdGlvbkRpc3BhdGNoZXJXb3JrZXIgKA0KPiA+ID4gICAgLy8gSWYgZW5hYmxlIFVzZVNl cmlhbCwgdGhlbiBpbml0aWFsaXplIHNlcmlhbA0KPiA+IHBvcnQuDQo+ID4gPiAgICAvLyBpZiBl bmFibGUgVXNlUnVudGltZU1lbW9yeSwgdGhlbiBpbml0aWFsaXplDQo+ID4gcnVudGltZSBtZW1v cnkgc3RhdHVzIGNvZGUNCj4gPiA+IHdvcmtlci4NCj4gPiA+ICAgIC8vDQo+ID4gPiAtICBpZiAo RmVhdHVyZVBjZEdldCAoUGNkU3RhdHVzQ29kZVVzZVNlcmlhbCkpIHsNCj4gPiA+ICsgIGlmIChQ Y2RHZXRCb29sIChQY2RTdGF0dXNDb2RlVXNlU2VyaWFsKSkgew0KPiA+ID4gICAgICAvLw0KPiA+ ID4gICAgICAvLyBDYWxsIFNlcmlhbCBQb3J0IExpYiBBUEkgdG8gaW5pdGlhbGl6ZSBzZXJpYWwN Cj4gPiBwb3J0Lg0KPiA+ID4gICAgICAvLw0KPiA+ID4gICAgICBTdGF0dXMgPSBTZXJpYWxQb3J0 SW5pdGlhbGl6ZSAoKTsNCj4gPiA+ICAgICAgQVNTRVJUX0VGSV9FUlJPUiAoU3RhdHVzKTsNCj4g PiA+ICAgIH0NCj4gPiA+IC0gIGlmIChGZWF0dXJlUGNkR2V0IChQY2RTdGF0dXNDb2RlVXNlTWVt b3J5KSkgew0KPiA+ID4gKyAgaWYgKFBjZEdldEJvb2wgKFBjZFN0YXR1c0NvZGVVc2VNZW1vcnkp KSB7DQo+ID4gPiAgICAgIFN0YXR1cyA9IE1lbW9yeVN0YXR1c0NvZGVJbml0aWFsaXplV29ya2Vy ICgpOw0KPiA+ID4gICAgICBBU1NFUlRfRUZJX0VSUk9SIChTdGF0dXMpOw0KPiA+ID4gICAgfQ0K PiA+ID4gQEAgLTczLDEwICs3MywxMCBAQCBTdGF0dXNDb2RlSGFuZGxlclNtbUVudHJ5ICgNCj4g PiA+ICAgIC8vDQo+ID4gPiAgICBJbml0aWFsaXphdGlvbkRpc3BhdGNoZXJXb3JrZXIgKCk7DQo+ ID4gPg0KPiA+ID4gLSAgaWYgKEZlYXR1cmVQY2RHZXQgKFBjZFN0YXR1c0NvZGVVc2VTZXJpYWwp KSB7DQo+ID4gPiArICBpZiAoUGNkR2V0Qm9vbCAoUGNkU3RhdHVzQ29kZVVzZVNlcmlhbCkpIHsN Cj4gPiA+ICAgICAgbVJzY0hhbmRsZXJQcm90b2NvbC0+UmVnaXN0ZXINCj4gPiAoU2VyaWFsU3Rh dHVzQ29kZVJlcG9ydFdvcmtlcik7DQo+ID4gPiAgICB9DQo+ID4gPiAtICBpZiAoRmVhdHVyZVBj ZEdldCAoUGNkU3RhdHVzQ29kZVVzZU1lbW9yeSkpIHsNCj4gPiA+ICsgIGlmIChQY2RHZXRCb29s IChQY2RTdGF0dXNDb2RlVXNlTWVtb3J5KSkgew0KPiA+ID4gICAgICBtUnNjSGFuZGxlclByb3Rv Y29sLT5SZWdpc3Rlcg0KPiA+IChNZW1vcnlTdGF0dXNDb2RlUmVwb3J0V29ya2VyKTsNCj4gPiA+ ICAgIH0NCj4gPiA+DQo+ID4gPiBkaWZmIC0tZ2l0DQo+ID4gPg0KPiA+IGEvTWRlTW9kdWxlUGtn L1VuaXZlcnNhbC9TdGF0dXNDb2RlSGFuZGxlci9TbW0vU3RhdHVzQ29kDQo+ID4gZUhhbmRsZXJT bW0uaQ0KPiA+ID4gbmYNCj4gPiA+DQo+ID4gYi9NZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1N0YXR1 c0NvZGVIYW5kbGVyL1NtbS9TdGF0dXNDb2QNCj4gPiBlSGFuZGxlclNtbS5pDQo+ID4gPiBuZg0K PiA+ID4gaW5kZXggNDdkMDU0NWY5NTkxLi40ZTI0ZDg3ZTU1ZDEgMTAwNjQ0DQo+ID4gPiAtLS0N Cj4gPiA+DQo+ID4gYS9NZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1N0YXR1c0NvZGVIYW5kbGVyL1Nt bS9TdGF0dXNDb2QNCj4gPiBlSGFuZGxlclNtbS5pDQo+ID4gPiBuZg0KPiA+ID4gKysrDQo+ID4g Pg0KPiA+IGIvTWRlTW9kdWxlUGtnL1VuaXZlcnNhbC9TdGF0dXNDb2RlSGFuZGxlci9TbW0vU3Rh dHVzQ29kDQo+ID4gZUhhbmRsZXJTbW0uaQ0KPiA+ID4gbmYNCj4gPiA+IEBAIC01MywxMSArNTMs OSBAQCBbR3VpZHNdDQo+ID4gPiAgW1Byb3RvY29sc10NCj4gPiA+ICAgIGdFZmlTbW1Sc2NIYW5k bGVyUHJvdG9jb2xHdWlkICAgICAgICAgICAgICAgICAjIw0KPiA+IENPTlNVTUVTDQo+ID4gPg0K PiA+ID4gLVtGZWF0dXJlUGNkXQ0KPiA+ID4gLQ0KPiA+IGdFZmlNZGVNb2R1bGVQa2dUb2tlblNw YWNlR3VpZC5QY2RTdGF0dXNDb2RlVXNlTWVtb3J5ICMjDQo+ID4gPiBDT05TVU1FUw0KPiA+ID4g LQ0KPiA+IGdFZmlNZGVNb2R1bGVQa2dUb2tlblNwYWNlR3VpZC5QY2RTdGF0dXNDb2RlVXNlU2Vy aWFsICMjDQo+ID4gQ09OU1VNRVMNCj4gPiA+IC0NCj4gPiA+ICBbUGNkXQ0KPiA+ID4gKw0KPiA+ IGdFZmlNZGVNb2R1bGVQa2dUb2tlblNwYWNlR3VpZC5QY2RTdGF0dXNDb2RlVXNlU2VyaWFsICMj DQo+ID4gQ09OU1VNRVMNCj4gPiA+ICsNCj4gPiBnRWZpTWRlTW9kdWxlUGtnVG9rZW5TcGFjZUd1 aWQuUGNkU3RhdHVzQ29kZVVzZU1lbW9yeSAjIw0KPiA+ID4gQ09OU1VNRVMNCj4gPiA+DQo+ID4g Z0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZFN0YXR1c0NvZGVNZW1vcnlTaXplDQo+ ID4gfDEyOHwNCj4gPiA+IGdFZmlNZGVNb2R1bGVQa2dUb2tlblNwYWNlR3VpZC5QY2RTdGF0dXND b2RlVXNlTWVtb3J5DQo+ID4gIyMNCj4gPiA+IFNPTUVUSU1FU19DT05TVU1FUw0KPiA+ID4NCj4g PiA+ICBbRGVwZXhdDQo+ID4gPiAtLQ0KPiA+ID4gMi4yNC4wLndpbmRvd3MuMg0KPiA+DQo+ID4N Cj4gPiANCg0K