From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by mx.groups.io with SMTP id smtpd.web09.133.1624491942594285616 for ; Wed, 23 Jun 2021 16:45:43 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=wyYESgwe; spf=pass (domain: intel.com, ip: 192.55.52.93, mailfrom: guo.dong@intel.com) IronPort-SDR: zoYA4rdaKGylUYI3EB3g31KlAmuacQylJMeAUWF/w321xqkjr3eEW1JZNdcDas0RU3Nfn+pOJ0 bOCKXJJhQRnw== X-IronPort-AV: E=McAfee;i="6200,9189,10024"; a="204356791" X-IronPort-AV: E=Sophos;i="5.83,295,1616482800"; d="scan'208";a="204356791" Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 23 Jun 2021 16:45:40 -0700 IronPort-SDR: R87jVvmpxkk8f0NZdKFFKwC4I4MRTmq/OZEnjM6vjC57GB/FIk+iuJGWr4uuKj2bIVv+aTooVT 0M46po0RT4/g== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.83,295,1616482800"; d="scan'208";a="487531096" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by orsmga001.jf.intel.com with ESMTP; 23 Jun 2021 16:45:40 -0700 Received: from fmsmsx612.amr.corp.intel.com (10.18.126.92) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.4; Wed, 23 Jun 2021 16:45:40 -0700 Received: from fmsmsx608.amr.corp.intel.com (10.18.126.88) by fmsmsx612.amr.corp.intel.com (10.18.126.92) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.4; Wed, 23 Jun 2021 16:45:39 -0700 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) by fmsmsx608.amr.corp.intel.com (10.18.126.88) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.4 via Frontend Transport; Wed, 23 Jun 2021 16:45:39 -0700 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.176) by edgegateway.intel.com (192.55.55.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2242.4; Wed, 23 Jun 2021 16:45:39 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SBB8r8iqYqthY2o2xebM95XSY/fzAj+PxE0avTcsQhC+Xah9yBAkYhL2ZmSlit8aN/uKznpyx4cTGwKDSUmxVswMPBTc0Yuzy0GEUggRVsM+6xlvk4goCmBzfUkhDtbGjyWzFlPC25+fAH3yA+Y/s79Fz3hepXsJqPyKOgD7IyMQE4abozTEvuHnVOkq3lh0i1vdxqLVbL6rjPqVab9+J4W3lbbAPlMaPm4nblCJg+bsr9DQg8f+UxhnF4a+5xUB5mxn5qBFc1+h5z6Af7L5ZHSEhuUuKLa37h6kZL20L7v2evcDIrNMLx32B4xX7Rnw3SYMH6Ewr2mOKeb3XFDsMQ== 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=Nkb8UU52BNMqQ9xtFeqwAIfZ9Hgxro/rhEIwrYV26sE=; b=E6o848X4T1GWZL3GEAYTOEWvEX+j2Li9qT435aXC+LF24xIfguoSVX3JaNL5jngi67uOaqsLLzPw5yVhRyC0qP0AEmB/CxGhncSDwvraRLCKsY75TUHPeU+82+4QvZvvO/K5ZMzbpYiT8HqfauslLGuYtZr+UHR/UAkLeUBhR187m4eha1ivTWAhQ6UYpXv/0xrktkH7vzB3l0BnDH1L5Xw9H7sEpSf7EqlYz2nmI2KI/TbHIJcYnqR7ASY5Z4WsZprrgEv7SQ5uKx1AKuBoYtf7Mi16JndVm7SVUmlKPPq0PTs3x/S5RdMbqniMmf0d/nNSjCwcjbsgmXsOd5Czxg== 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=Nkb8UU52BNMqQ9xtFeqwAIfZ9Hgxro/rhEIwrYV26sE=; b=wyYESgwe3tOwqNqGojqfu+A/hDxGYJvBd6AfdT3IsDHXC8Ul19aBcn+qLiWmUoOrHeEjrmrwp18JGNtPU0LZKCpim+MKI5U5XN+dsN+svsbIFWgAlyECaVYhlVtEF4D31Vwdmp7ynkIpM7oaBQBbnmt9zdXD2nPKKJTph4lwClc= Received: from BYAPR11MB3622.namprd11.prod.outlook.com (2603:10b6:a03:fe::30) by BYAPR11MB3445.namprd11.prod.outlook.com (2603:10b6:a03:77::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4242.23; Wed, 23 Jun 2021 23:45:38 +0000 Received: from BYAPR11MB3622.namprd11.prod.outlook.com ([fe80::247b:262c:b8da:710b]) by BYAPR11MB3622.namprd11.prod.outlook.com ([fe80::247b:262c:b8da:710b%7]) with mapi id 15.20.4242.023; Wed, 23 Jun 2021 23:45:38 +0000 From: "Guo Dong" To: "Liu, Zhiguang" , "devel@edk2.groups.io" CC: "Ma, Maurice" , "You, Benjamin" Subject: Re: [Patch V2 07/12] UefiPayloadPkg: Fix up UPL Pcd database Thread-Topic: [Patch V2 07/12] UefiPayloadPkg: Fix up UPL Pcd database Thread-Index: AQHXZ9rh7867D46klU6OFkkTTZeZtqsiQ/pQ Date: Wed, 23 Jun 2021 23:45:38 +0000 Message-ID: References: <20210623025235.3311-1-zhiguang.liu@intel.com> <20210623025235.3311-8-zhiguang.liu@intel.com> In-Reply-To: <20210623025235.3311-8-zhiguang.liu@intel.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.5.1.3 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: [68.104.146.79] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 4523527c-3315-4375-39a8-08d936a10107 x-ms-traffictypediagnostic: BYAPR11MB3445: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:7691; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: BwGFHOU7FoCxTPOS7W1WznzeFNYq7P/+R7N5EIGZq7R5C+PlAg2UH0HBLc2cNbebIe2Jsrzf+zMMEAQeFtx1zvz8LBw/+pnRWr+UWaNNpv4dpUqpqhvWk7e9cYVbFI7RGYXcBQrZ8CfWGnxmi7McDcWWE20xOZ4Ml5Yoz38EFn+1j8ROPZdkgDTLIQwhaMkIIG8gjbgSXnNJ04gVpBw4I9Vp7i17MCuYGhtcQbGl/VWFcTy5Ia9c4C6yXmK1ksfJH3IiFVKvav7xQ5VEY4EaOQ+rRN68mXVsZSxSSUDX9kxCHTstAU2BPcP7y0co+La8vEN4RKLU5Gpq7leRvwCHvPV+9YXO+Ec6+HSHdR5ojzZbZy0DJUxBZQ6mrerIYVWI3y/MsT1rWniTCM04nPd5yBGKmq9WYsVOHwvN2kj9kmrm1REC/XPN86AC/vYNliIxf9zeJ8CRUie/u+6J2CX9tAUEUQ5BuJOHFVCbFpwwcYeq1owRH1apfnQXZYIR5GLJCrFj0Iw/scDhqN6/HWznMsgMEOFQdg4QL3YF0CK2II+ysDh05HcD100yK1j4mjwBRtUJbRM1Ms76ZdLHvG4md46fT4uKUvah9TllbXm24Aq3ibtLucO4cqxqmRgSwfupx2QSDThK5a6mvKTbmpwzurlTBmR7ib2HngRkgDvIsUE= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BYAPR11MB3622.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(366004)(396003)(376002)(346002)(136003)(39860400002)(186003)(26005)(107886003)(2906002)(66946007)(53546011)(30864003)(76116006)(9686003)(478600001)(19627235002)(4326008)(71200400001)(86362001)(83380400001)(66476007)(5660300002)(6506007)(38100700002)(122000001)(64756008)(66556008)(52536014)(66446008)(55016002)(8936002)(110136005)(33656002)(7696005)(316002)(54906003)(8676002)(130980200001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?N2Z5VDhtMWg5MjRZU3dUaFpYUTkxdFBjQXdqeS83cFljaDg4U2hSRk5QSDBt?= =?utf-8?B?anV0bGhsaDgyazVLOWpORTljbXpkUWg4ekxzRkIwdk9JU3Btd21DSFdxYjNO?= =?utf-8?B?bVZpVkUwcEtVV3ZkdmVuR3VvWjhUOE0vQU5GUlBEamIxUmNLOGZKSHlYeS9a?= =?utf-8?B?b0MySHF0dkwvQzU0MmIzRkhUd0VkaGNSY1phdlJJMWlaS0lWQWNGczBNV0Ry?= =?utf-8?B?RzJFaFVLUlJkUXRuVTl5QU5jbHRlUUI3WEdyNGp3N3RZWEQ1Y2JESGNQRW5t?= =?utf-8?B?VElnSnprNk5POXpESjc0V2tZbUUxQXYyUHdNNEptajNtOUp5N01FUEhueGxM?= =?utf-8?B?TnZVdmV3alJ0c1poR2hpRC9XOTZhSXVCRXlIVURoTTB1akVBdytOc1dhRnVv?= =?utf-8?B?a2hKUHlKTzc4YlJqZ3JzdWxuZzR3ZitWYVkzRE9nZFNOUDRmRG4weVlmNzhY?= =?utf-8?B?Wit3US9vaHp2ZVh1T3J6bldQTFFQU29tK3FzYWJlOGNEUVRrTXErNkc5Rk9a?= =?utf-8?B?M05xNFZQOGNmUVZEVnNNakhBbVdsOVRCYVpWeE5vWlFTN3BTTjZha3dCb2Vu?= =?utf-8?B?UWZlYzBkdjYwT3FuTWxTQ2NySXZWYjM3eENqT2JGMzZrejdIT0ZHcHJvQ0ZL?= =?utf-8?B?TWlzVnFPd2Z5SUREcFRObFdlaHVFYlhrTVdWV0xxOWR4UVVoTnVEalVUSGVL?= =?utf-8?B?Y2p6TzJnNnZaY0N0TFZoM0JMSEd1MVlNdWt2ZUFsKzZGWjVkc3hza3dROHBx?= =?utf-8?B?T2VucWs5OWdoSnIwakx4ZjBpNUpmeFhKS3owNXA4YXkrekU3bGlkb05DMDBB?= =?utf-8?B?czZqcU5PRHQvN0lIUG9hNlUvMzJzT3JNRFlEWEFsTG9ubkdTZUdQZVJ4Wko0?= =?utf-8?B?L3ZLUVJLSzcwaDc0bkpOa0QzRzNxMCtVUUIyVFg1M3RTSzdsTG5VWkJhQm1y?= =?utf-8?B?R1d3SjBvREdpaEVuRjNvY3VQUW5JUEFzelY2blg5VTlNdGZaVzJaRG41WlFO?= =?utf-8?B?Wlk4L1FSS0lNY1dFbkZQbWRZQWlBak1xRDRMKzMwLzc1N2NndUhwVmx2d0ox?= =?utf-8?B?WnlMZEplZXNDZE11VzE3a3JnMzRuQU54bFN4S1ZXcWR4YXJwMWdiSC84ZTZO?= =?utf-8?B?b3JLc2VhMlFONHVMU1Y2WWk1dE1uNlB4bkxnYzlVRStGdTRxRTR0cVJmWUJE?= =?utf-8?B?RUpGeWxCTXFGLzdWV2RHalZHeHhpRDJSVjViemowUDM1ZitxTWh1Qkh6S1ZZ?= =?utf-8?B?clFlRzJSS1ZKWHRZWUpyRmpEaHRleWFIRzl6Smx1M25mTzNQY2JuUllXTWVt?= =?utf-8?B?SVd6UktGSkRCczRiV2J0cDh5elF3cWhxY3lONS95WWsxSkF0RlgwNGZTeVA2?= =?utf-8?B?RjIzTFlsV1FnTHh3MndrUU9wcVFsTU55aVk5dWxzTmRQa1JsUUlhTENZUTJ4?= =?utf-8?B?WE45QWtLQ1VIRXgyZjlzeDMxN2daYjVlVVlZbTNCMFM5RCtGRE1HbFJ1SHp6?= =?utf-8?B?aUwwZUhCSUdCMDRZVWo2dHJsMUdqaSsvSVU4MTk0VGY3SUNOQVpBaWw4WnQ4?= =?utf-8?B?QjFhZ0RXUEZOSU85alNhZytpUXNnYjRVZkZXSk5EZ1FQbWhIakEweFBmSmVo?= =?utf-8?B?Z0F0c3o4Vk1HblVhMWx4bFd2OW9BRlpCVm84T255d0hCTmh0aUsyNml1QzlW?= =?utf-8?B?Y0tONFdxYWJQSWgxOWF4ZjVNaDRwcVBpRmJNMldHQTh5NGJpc1VBMVpHdlRL?= =?utf-8?Q?cFRBA0e+pRzb5yitAbFHTbH+0fWy6/vqt7V2Piq?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BYAPR11MB3622.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4523527c-3315-4375-39a8-08d936a10107 X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Jun 2021 23:45:38.3091 (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: gTRIqthq6W594LC6PF9xujqgFQT5NhkxFBP2kaLRlb8enim5pLdZpIv/U+6cvge08WtwVIOyG8P/JhRXQTB6iA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR11MB3445 Return-Path: guo.dong@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 DQpSZXZpZXdlZC1ieTogR3VvIERvbmcgPGd1by5kb25nQGludGVsLmNvbT4NCg0KPiAtLS0tLU9y aWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBMaXUsIFpoaWd1YW5nIDx6aGlndWFuZy5saXVA aW50ZWwuY29tPg0KPiBTZW50OiBUdWVzZGF5LCBKdW5lIDIyLCAyMDIxIDc6NTMgUE0NCj4gVG86 IGRldmVsQGVkazIuZ3JvdXBzLmlvDQo+IENjOiBNYSwgTWF1cmljZSA8bWF1cmljZS5tYUBpbnRl bC5jb20+OyBEb25nLCBHdW8NCj4gPGd1by5kb25nQGludGVsLmNvbT47IFlvdSwgQmVuamFtaW4g PGJlbmphbWluLnlvdUBpbnRlbC5jb20+DQo+IFN1YmplY3Q6IFtQYXRjaCBWMiAwNy8xMl0gVWVm aVBheWxvYWRQa2c6IEZpeCB1cCBVUEwgUGNkIGRhdGFiYXNlDQo+IA0KPiBWMToNCj4gRWRrMiBi b290bG9hZGVyIHdpbGwgcGFzcyB0aGUgcGVpIHBjZCBkYXRhYmFzZSwgYW5kIFVQTCBhbHNvIGNv bnRhaW4gYQ0KPiBQQ0QgZGF0YWJhc2UuDQo+IER4ZSBQQ0QgZHJpdmVyIGhhcyB0aGUgYXNzdW1w dGlvbiB0aGF0IHRoZSB0d28gUENEIGRhdGFiYXNlIGNhbiBiZQ0KPiBjYXRlbmF0ZWQgYW5kIHRo ZSBsb2NhbCB0b2tlbiBudW1iZXIgc2hvdWxkIGJlIHN1Y2Nlc3NpdmXjgIINCj4gVGhpcyBwYXRj aCB3aWxsIG1hbnVhbGx5IGZpeCB1cCB0aGUgVVBMIFBDRCBkYXRhYmFzZSB0byBtZWV0IHRoYXQN Cj4gYXNzdW1wdGlvbi4NCj4gVjI6DQo+IFVwZGF0ZSB0aGUgZnVuY3Rpb24gY29tbWVudHMNCj4g DQo+IENjOiBNYXVyaWNlIE1hIDxtYXVyaWNlLm1hQGludGVsLmNvbT4NCj4gQ2M6IEd1byBEb25n IDxndW8uZG9uZ0BpbnRlbC5jb20+DQo+IENjOiBCZW5qYW1pbiBZb3UgPGJlbmphbWluLnlvdUBp bnRlbC5jb20+DQo+IFNpZ25lZC1vZmYtYnk6IFpoaWd1YW5nIExpdSA8emhpZ3VhbmcubGl1QGlu dGVsLmNvbT4NCj4gLS0tDQo+ICBVZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L0xvYWRE eGVDb3JlLmMgICAgICAgICAgICAgfCAxOQ0KPiArKysrKysrKysrKystLS0tLS0tDQo+ICBVZWZp UGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5L1VlZmlQYXlsb2FkRW50cnkuaCAgICAgICAgfCA0 NQ0KPiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysNCj4gIFVl ZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvVW5pdmVyc2FsUGF5bG9hZEVudHJ5LmMgICB8 IDU3DQo+ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKw0KPiAgVWVmaVBheWxvYWRQa2cvVWVmaVBheWxvYWRFbnRyeS9Vbml2ZXJzYWxQYXls b2FkRW50cnkuaW5mIHwgIDIgKysNCj4gIFVlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkUGtnLmRl YyAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyICsrDQo+ICBVZWZpUGF5bG9hZFBrZy9VZWZp UGF5bG9hZFBrZy5kc2MgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMSArDQo+ICA2IGZpbGVz IGNoYW5nZWQsIDExOSBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQ0KPiANCj4gZGlmZiAt LWdpdCBhL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvTG9hZER4ZUNvcmUuYw0KPiBi L1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkRW50cnkvTG9hZER4ZUNvcmUuYw0KPiBpbmRleCBm NWQ3MGM1OWY4Li4wYjZjYjQ3Y2QwIDEwMDY0NA0KPiAtLS0gYS9VZWZpUGF5bG9hZFBrZy9VZWZp UGF5bG9hZEVudHJ5L0xvYWREeGVDb3JlLmMNCj4gKysrIGIvVWVmaVBheWxvYWRQa2cvVWVmaVBh eWxvYWRFbnRyeS9Mb2FkRHhlQ29yZS5jDQo+IEBAIC0xMTQsMjAgKzExNCwyMyBAQCBMb2FkUGVD b2ZmSW1hZ2UgKA0KPiAgfQ0KPiANCj4gDQo+IA0KPiAgLyoqDQo+IA0KPiAtICBUaGlzIGZ1bmN0 aW9uIHNlYXJjaHMgYSBnaXZlbiBmaWxlIHR5cGUgd2l0aGluIGEgdmFsaWQgRlYuDQo+IA0KPiAr ICBUaGlzIGZ1bmN0aW9uIHNlYXJjaHMgYSBnaXZlbiBmaWxlIHR5cGUgd2l0aCBhIGdpdmVuIEd1 aWQgd2l0aGluIGEgdmFsaWQgRlYuDQo+IA0KPiArICBJZiBpbnB1dCBHdWlkIGlzIE5VTEwsIHdp bGwgbG9jYXRlIHRoZSBmaXJzdCBzZWN0aW9uIGhhdmluZyB0aGUgZ2l2ZW4gZmlsZSB0eXBlDQo+ IA0KPiANCj4gDQo+ICAgIEBwYXJhbSBGdkhlYWRlciAgICAgICAgQSBwb2ludGVyIHRvIGZpcm13 YXJlIHZvbHVtZSBoZWFkZXIgdGhhdCBjb250YWlucw0KPiB0aGUgc2V0IG9mIGZpbGVzDQo+IA0K PiAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvIGJlIHNlYXJjaGVkLg0KPiANCj4gICAgQHBh cmFtIEZpbGVUeXBlICAgICAgICBGaWxlIHR5cGUgdG8gYmUgc2VhcmNoZWQuDQo+IA0KPiArICBA cGFyYW0gR3VpZCAgICAgICAgICAgIFdpbGwgaWdub3JlIGlmIGl0IGlzIE5VTEwuDQo+IA0KPiAg ICBAcGFyYW0gRmlsZUhlYWRlciAgICAgIEEgcG9pbnRlciB0byB0aGUgZGlzY292ZXJlZCBmaWxl LCBpZiBzdWNjZXNzZnVsLg0KPiANCj4gDQo+IA0KPiAgICBAcmV0dmFsIEVGSV9TVUNDRVNTICAg IFN1Y2Nlc3NmdWxseSBmb3VuZCBGaWxlVHlwZQ0KPiANCj4gICAgQHJldHZhbCBFRklfTk9UX0ZP VU5EICBGaWxlIHR5cGUgY2FuJ3QgYmUgZm91bmQuDQo+IA0KPiAgKiovDQo+IA0KPiAgRUZJX1NU QVRVUw0KPiANCj4gLUZ2RmluZEZpbGUgKA0KPiANCj4gK0Z2RmluZEZpbGVCeVR5cGVHdWlkICgN Cj4gDQo+ICAgIElOICBFRklfRklSTVdBUkVfVk9MVU1FX0hFQURFUiAgKkZ2SGVhZGVyLA0KPiAN Cj4gICAgSU4gIEVGSV9GVl9GSUxFVFlQRSAgICAgICAgICAgICBGaWxlVHlwZSwNCj4gDQo+ICsg IElOICBFRklfR1VJRCAgICAgICAgICAgICAgICAgICAgKkd1aWQgICAgICAgICAgIE9QVElPTkFM LA0KPiANCj4gICAgT1VUIEVGSV9GRlNfRklMRV9IRUFERVIgICAgICAgICAqKkZpbGVIZWFkZXIN Cj4gDQo+ICAgICkNCj4gDQo+ICB7DQo+IA0KPiBAQCAtMTcxLDggKzE3NCwxMCBAQCBGdkZpbmRG aWxlICgNCj4gICAgICAvLyBMb29rIGZvciBmaWxlIHR5cGUNCj4gDQo+ICAgICAgLy8NCj4gDQo+ ICAgICAgaWYgKEZpbGUtPlR5cGUgPT0gRmlsZVR5cGUpIHsNCj4gDQo+IC0gICAgICAqRmlsZUhl YWRlciA9IEZpbGU7DQo+IA0KPiAtICAgICAgcmV0dXJuIEVGSV9TVUNDRVNTOw0KPiANCj4gKyAg ICAgIGlmIChHdWlkID09IE5VTEwgfHwgQ29tcGFyZUd1aWQoJkZpbGUtPk5hbWUsIEd1aWQpKSB7 DQo+IA0KPiArICAgICAgICAqRmlsZUhlYWRlciA9IEZpbGU7DQo+IA0KPiArICAgICAgICByZXR1 cm4gRUZJX1NVQ0NFU1M7DQo+IA0KPiArICAgICAgfQ0KPiANCj4gICAgICB9DQo+IA0KPiAgICB9 DQo+IA0KPiANCj4gDQo+IEBAIC0yNjYsNyArMjcxLDcgQEAgTG9hZER4ZUNvcmUgKA0KPiAgICAv Lw0KPiANCj4gICAgLy8gRFhFIEZWIGlzIGluc2lkZSBQYXlsb2FkIEZWLiBIZXJlIGZpbmQgRFhF IEZWIGZyb20gUGF5bG9hZCBGVg0KPiANCj4gICAgLy8NCj4gDQo+IC0gIFN0YXR1cyA9IEZ2Rmlu ZEZpbGUgKFBheWxvYWRGdiwNCj4gRUZJX0ZWX0ZJTEVUWVBFX0ZJUk1XQVJFX1ZPTFVNRV9JTUFH RSwgJkZpbGVIZWFkZXIpOw0KPiANCj4gKyAgU3RhdHVzID0gRnZGaW5kRmlsZUJ5VHlwZUd1aWQg KFBheWxvYWRGdiwNCj4gRUZJX0ZWX0ZJTEVUWVBFX0ZJUk1XQVJFX1ZPTFVNRV9JTUFHRSwgTlVM TCwgJkZpbGVIZWFkZXIpOw0KPiANCj4gICAgaWYgKEVGSV9FUlJPUiAoU3RhdHVzKSkgew0KPiAN Cj4gICAgICByZXR1cm4gU3RhdHVzOw0KPiANCj4gICAgfQ0KPiANCj4gQEAgLTI4Myw3ICsyODgs NyBAQCBMb2FkRHhlQ29yZSAoDQo+ICAgIC8vDQo+IA0KPiAgICAvLyBGaW5kIERYRSBjb3JlIGZp bGUgZnJvbSBEWEUgRlYNCj4gDQo+ICAgIC8vDQo+IA0KPiAtICBTdGF0dXMgPSBGdkZpbmRGaWxl IChEeGVDb3JlRnYsIEVGSV9GVl9GSUxFVFlQRV9EWEVfQ09SRSwgJkZpbGVIZWFkZXIpOw0KPiAN Cj4gKyAgU3RhdHVzID0gRnZGaW5kRmlsZUJ5VHlwZUd1aWQgKER4ZUNvcmVGdiwgRUZJX0ZWX0ZJ TEVUWVBFX0RYRV9DT1JFLA0KPiBOVUxMLCAmRmlsZUhlYWRlcik7DQo+IA0KPiAgICBpZiAoRUZJ X0VSUk9SIChTdGF0dXMpKSB7DQo+IA0KPiAgICAgIHJldHVybiBTdGF0dXM7DQo+IA0KPiAgICB9 DQo+IA0KPiBAQCAtMzMwLDcgKzMzNSw3IEBAIFVuaXZlcnNhbExvYWREeGVDb3JlICgNCj4gICAg Ly8NCj4gDQo+ICAgIC8vIEZpbmQgRFhFIGNvcmUgZmlsZSBmcm9tIERYRSBGVg0KPiANCj4gICAg Ly8NCj4gDQo+IC0gIFN0YXR1cyA9IEZ2RmluZEZpbGUgKER4ZUZ2LCBFRklfRlZfRklMRVRZUEVf RFhFX0NPUkUsICZGaWxlSGVhZGVyKTsNCj4gDQo+ICsgIFN0YXR1cyA9IEZ2RmluZEZpbGVCeVR5 cGVHdWlkIChEeGVGdiwgRUZJX0ZWX0ZJTEVUWVBFX0RYRV9DT1JFLCBOVUxMLA0KPiAmRmlsZUhl YWRlcik7DQo+IA0KPiAgICBpZiAoRUZJX0VSUk9SIChTdGF0dXMpKSB7DQo+IA0KPiAgICAgIHJl dHVybiBTdGF0dXM7DQo+IA0KPiAgICB9DQo+IA0KPiBkaWZmIC0tZ2l0IGEvVWVmaVBheWxvYWRQ a2cvVWVmaVBheWxvYWRFbnRyeS9VZWZpUGF5bG9hZEVudHJ5LmgNCj4gYi9VZWZpUGF5bG9hZFBr Zy9VZWZpUGF5bG9hZEVudHJ5L1VlZmlQYXlsb2FkRW50cnkuaA0KPiBpbmRleCBkZmY3YjZiODdm Li4zMzE3MjRjNjg3IDEwMDY0NA0KPiAtLS0gYS9VZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVu dHJ5L1VlZmlQYXlsb2FkRW50cnkuaA0KPiArKysgYi9VZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9h ZEVudHJ5L1VlZmlQYXlsb2FkRW50cnkuaA0KPiBAQCAtMzUsNiArMzUsNyBAQA0KPiAgI2luY2x1 ZGUgPFVuaXZlcnNhbFBheWxvYWQvQWNwaVRhYmxlLmg+DQo+IA0KPiAgI2luY2x1ZGUgPFVuaXZl cnNhbFBheWxvYWQvVW5pdmVyc2FsUGF5bG9hZC5oPg0KPiANCj4gICNpbmNsdWRlIDxVbml2ZXJz YWxQYXlsb2FkL0V4dHJhRGF0YS5oPg0KPiANCj4gKyNpbmNsdWRlIDxHdWlkL1BjZERhdGFCYXNl U2lnbmF0dXJlR3VpZC5oPg0KPiANCj4gDQo+IA0KPiAgI2RlZmluZSBMRUdBQ1lfODI1OV9NQVNL X1JFR0lTVEVSX01BU1RFUiAgMHgyMQ0KPiANCj4gICNkZWZpbmUgTEVHQUNZXzgyNTlfTUFTS19S RUdJU1RFUl9TTEFWRSAgIDB4QTENCj4gDQo+IEBAIC0xNTksNCArMTYwLDQ4IEBAIEhhbmRPZmZU b0R4ZUNvcmUgKA0KPiAgICBJTiBFRklfUEVJX0hPQl9QT0lOVEVSUyAgIEhvYkxpc3QNCj4gDQo+ ICAgICk7DQo+IA0KPiANCj4gDQo+ICtFRklfU1RBVFVTDQo+IA0KPiArRml4VXBQY2REYXRhYmFz ZSAoDQo+IA0KPiArICBJTiAgRUZJX0ZJUk1XQVJFX1ZPTFVNRV9IRUFERVIgKkR4ZUZ2DQo+IA0K PiArICApOw0KPiANCj4gKw0KPiANCj4gKy8qKg0KPiANCj4gKyAgVGhpcyBmdW5jdGlvbiBzZWFy Y2hzIGEgZ2l2ZW4gc2VjdGlvbiB0eXBlIHdpdGhpbiBhIHZhbGlkIEZGUyBmaWxlLg0KPiANCj4g Kw0KPiANCj4gKyAgQHBhcmFtICBGaWxlSGVhZGVyICAgICAgICAgICAgQSBwb2ludGVyIHRvIHRo ZSBmaWxlIGhlYWRlciB0aGF0IGNvbnRhaW5zIHRoZSBzZXQNCj4gb2Ygc2VjdGlvbnMgdG8NCj4g DQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlIHNlYXJjaGVkLg0KPiANCj4g KyAgQHBhcmFtICBTZWFyY2hUeXBlICAgICAgICAgICAgVGhlIHZhbHVlIG9mIHRoZSBzZWN0aW9u IHR5cGUgdG8gc2VhcmNoLg0KPiANCj4gKyAgQHBhcmFtICBTZWN0aW9uRGF0YSAgICAgICAgICAg QSBwb2ludGVyIHRvIHRoZSBkaXNjb3ZlcmVkIHNlY3Rpb24sIGlmDQo+IHN1Y2Nlc3NmdWwuDQo+ IA0KPiArDQo+IA0KPiArICBAcmV0dmFsIEVGSV9TVUNDRVNTICAgICAgICAgICBUaGUgc2VjdGlv biB3YXMgZm91bmQuDQo+IA0KPiArICBAcmV0dmFsIEVGSV9OT1RfRk9VTkQgICAgICAgICBUaGUg c2VjdGlvbiB3YXMgbm90IGZvdW5kLg0KPiANCj4gKw0KPiANCj4gKyoqLw0KPiANCj4gK0VGSV9T VEFUVVMNCj4gDQo+ICtGaWxlRmluZFNlY3Rpb24gKA0KPiANCj4gKyAgSU4gRUZJX0ZGU19GSUxF X0hFQURFUiAgICAgICAgKkZpbGVIZWFkZXIsDQo+IA0KPiArICBJTiBFRklfU0VDVElPTl9UWVBF ICAgICAgICAgICBTZWN0aW9uVHlwZSwNCj4gDQo+ICsgIE9VVCBWT0lEICAgICAgICAgICAgICAg ICAgICAgICoqU2VjdGlvbkRhdGENCj4gDQo+ICsgICk7DQo+IA0KPiArDQo+IA0KPiArLyoqDQo+ IA0KPiArICBUaGlzIGZ1bmN0aW9uIHNlYXJjaHMgYSBnaXZlbiBmaWxlIHR5cGUgd2l0aCBhIGdp dmVuIEd1aWQgd2l0aGluIGEgdmFsaWQgRlYuDQo+IA0KPiArICBJZiBpbnB1dCBHdWlkIGlzIE5V TEwsIHdpbGwgbG9jYXRlIHRoZSBmaXJzdCBzZWN0aW9uIGhhdmluZyB0aGUgZ2l2ZW4gZmlsZSB0 eXBlDQo+IA0KPiArDQo+IA0KPiArICBAcGFyYW0gRnZIZWFkZXIgICAgICAgIEEgcG9pbnRlciB0 byBmaXJtd2FyZSB2b2x1bWUgaGVhZGVyIHRoYXQgY29udGFpbnMNCj4gdGhlIHNldCBvZiBmaWxl cw0KPiANCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICB0byBiZSBzZWFyY2hlZC4NCj4gDQo+ ICsgIEBwYXJhbSBGaWxlVHlwZSAgICAgICAgRmlsZSB0eXBlIHRvIGJlIHNlYXJjaGVkLg0KPiAN Cj4gKyAgQHBhcmFtIEd1aWQgICAgICAgICAgICBXaWxsIGlnbm9yZSBpZiBpdCBpcyBOVUxMLg0K PiANCj4gKyAgQHBhcmFtIEZpbGVIZWFkZXIgICAgICBBIHBvaW50ZXIgdG8gdGhlIGRpc2NvdmVy ZWQgZmlsZSwgaWYgc3VjY2Vzc2Z1bC4NCj4gDQo+ICsNCj4gDQo+ICsgIEByZXR2YWwgRUZJX1NV Q0NFU1MgICAgU3VjY2Vzc2Z1bGx5IGZvdW5kIEZpbGVUeXBlDQo+IA0KPiArICBAcmV0dmFsIEVG SV9OT1RfRk9VTkQgIEZpbGUgdHlwZSBjYW4ndCBiZSBmb3VuZC4NCj4gDQo+ICsqKi8NCj4gDQo+ ICtFRklfU1RBVFVTDQo+IA0KPiArRnZGaW5kRmlsZUJ5VHlwZUd1aWQgKA0KPiANCj4gKyAgSU4g IEVGSV9GSVJNV0FSRV9WT0xVTUVfSEVBREVSICAqRnZIZWFkZXIsDQo+IA0KPiArICBJTiAgRUZJ X0ZWX0ZJTEVUWVBFICAgICAgICAgICAgIEZpbGVUeXBlLA0KPiANCj4gKyAgSU4gIEVGSV9HVUlE ICAgICAgICAgICAgICAgICAgICAqR3VpZCAgICAgICAgICAgT1BUSU9OQUwsDQo+IA0KPiArICBP VVQgRUZJX0ZGU19GSUxFX0hFQURFUiAgICAgICAgICoqRmlsZUhlYWRlcg0KPiANCj4gKyAgKTsN Cj4gDQo+ICAjZW5kaWYNCj4gDQo+IGRpZmYgLS1naXQgYS9VZWZpUGF5bG9hZFBrZy9VZWZpUGF5 bG9hZEVudHJ5L1VuaXZlcnNhbFBheWxvYWRFbnRyeS5jDQo+IGIvVWVmaVBheWxvYWRQa2cvVWVm aVBheWxvYWRFbnRyeS9Vbml2ZXJzYWxQYXlsb2FkRW50cnkuYw0KPiBpbmRleCA5ZDU5NDU0NDg2 Li5iOGMxMzE3ZGYwIDEwMDY0NA0KPiAtLS0gYS9VZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVu dHJ5L1VuaXZlcnNhbFBheWxvYWRFbnRyeS5jDQo+ICsrKyBiL1VlZmlQYXlsb2FkUGtnL1VlZmlQ YXlsb2FkRW50cnkvVW5pdmVyc2FsUGF5bG9hZEVudHJ5LmMNCj4gQEAgLTI1LDYgKzI1LDYyIEBA DQo+IA0KPiANCj4gIGV4dGVybiBWT0lEICAqbUhvYkxpc3Q7DQo+IA0KPiANCj4gDQo+ICsvKioN Cj4gDQo+ICsgIFNvbWUgYm9vdGxvYWRlciBtYXkgcGFzcyBhIHBjZCBkYXRhYmFzZSwgYW5kIFVQ TCBhbHNvIGNvbnRhaW4gYSBQQ0QNCj4gZGF0YWJhc2UuDQo+IA0KPiArICBEeGUgUENEIGRyaXZl ciBoYXMgdGhlIGFzc3VtcHRpb24gdGhhdCB0aGUgdHdvIFBDRCBkYXRhYmFzZSBjYW4gYmUNCj4g Y2F0ZW5hdGVkIGFuZA0KPiANCj4gKyAgdGhlIGxvY2FsIHRva2VuIG51bWJlciBzaG91bGQgYmUg c3VjY2Vzc2l2ZeOAgg0KPiANCj4gKyAgVGhpcyBmdW5jdGlvbiB3aWxsIGZpeCB1cCB0aGUgVVBM IFBDRCBkYXRhYmFzZSB0byBtZWV0IHRoYXQgYXNzdW1wdGlvbi4NCj4gDQo+ICsNCj4gDQo+ICsg IEBwYXJhbVtpbl0gICBEeGVGdiAgICAgICAgIFRoZSBGViB3aGVyZSB0byBmaW5kIHRoZSBVbml2 ZXJzYWwgUENEIGRhdGFiYXNlLg0KPiANCj4gKw0KPiANCj4gKyAgQHJldHZhbCBFRklfU1VDQ0VT UyAgICAgICAgSWYgaXQgY29tcGxldGVkIHN1Y2Nlc3NmdWxseS4NCj4gDQo+ICsgIEByZXR2YWwg b3RoZXIgICAgICAgICAgICAgIEZhaWxlZCB0byBmaXggdXAuDQo+IA0KPiArKiovDQo+IA0KPiAr RUZJX1NUQVRVUw0KPiANCj4gK0ZpeFVwUGNkRGF0YWJhc2UgKA0KPiANCj4gKyAgSU4gIEVGSV9G SVJNV0FSRV9WT0xVTUVfSEVBREVSICpEeGVGdg0KPiANCj4gKyAgKQ0KPiANCj4gK3sNCj4gDQo+ ICsgIEVGSV9TVEFUVVMgICAgICAgICAgICAgICAgICBTdGF0dXM7DQo+IA0KPiArICBFRklfRkZT X0ZJTEVfSEVBREVSICAgICAgICAgKkZpbGVIZWFkZXI7DQo+IA0KPiArICBWT0lEICAgICAgICAg ICAgICAgICAgICAgICAgKlBjZFJhd0RhdGE7DQo+IA0KPiArICBQRUlfUENEX0RBVEFCQVNFICAg ICAgICAgICAgKlBlaURhdGFiYXNlOw0KPiANCj4gKyAgUEVJX1BDRF9EQVRBQkFTRSAgICAgICAg ICAgICpVcGxEYXRhYmFzZTsNCj4gDQo+ICsgIEVGSV9IT0JfR1VJRF9UWVBFICAgICAgICAgICAq R3VpZEhvYjsNCj4gDQo+ICsgIERZTkFNSUNFWF9NQVBQSU5HICAgICAgICAgICAqRXhNYXBUYWJs ZTsNCj4gDQo+ICsgIFVJTlROICAgICAgICAgICAgICAgICAgICAgICBJbmRleDsNCj4gDQo+ICsN Cj4gDQo+ICsgIEd1aWRIb2IgPSBHZXRGaXJzdEd1aWRIb2IgKCZnUGNkRGF0YUJhc2VIb2JHdWlk KTsNCj4gDQo+ICsgIGlmIChHdWlkSG9iID09IE5VTEwpIHsNCj4gDQo+ICsgICAgLy8NCj4gDQo+ ICsgICAgLy8gTm8gZml4LXVwIGlzIG5lZWRlZC4NCj4gDQo+ICsgICAgLy8NCj4gDQo+ICsgICAg cmV0dXJuIEVGSV9TVUNDRVNTOw0KPiANCj4gKyAgfQ0KPiANCj4gKyAgUGVpRGF0YWJhc2UgPSAo UEVJX1BDRF9EQVRBQkFTRSAqKSBHRVRfR1VJRF9IT0JfREFUQSAoR3VpZEhvYik7DQo+IA0KPiAr ICBERUJVRyAoKERFQlVHX0lORk8sICJGaW5kIHRoZSBQZWkgUENEIGRhdGEgYmFzZSwgdGhlIHRv dGFsIGxvY2FsIHRva2VuDQo+IG51bWJlciBpcyAlZFxuIiwgUGVpRGF0YWJhc2UtPkxvY2FsVG9r ZW5Db3VudCkpOw0KPiANCj4gKw0KPiANCj4gKyAgU3RhdHVzID0gRnZGaW5kRmlsZUJ5VHlwZUd1 aWQgKER4ZUZ2LCBFRklfRlZfRklMRVRZUEVfRFJJVkVSLA0KPiBQY2RHZXRQdHIgKFBjZFBjZERy aXZlckZpbGUpLCAmRmlsZUhlYWRlcik7DQo+IA0KPiArICBBU1NFUlRfRUZJX0VSUk9SIChTdGF0 dXMpOw0KPiANCj4gKyAgaWYgKEVGSV9FUlJPUiAoU3RhdHVzKSkgew0KPiANCj4gKyAgICByZXR1 cm4gU3RhdHVzOw0KPiANCj4gKyAgfQ0KPiANCj4gKyAgU3RhdHVzID0gRmlsZUZpbmRTZWN0aW9u IChGaWxlSGVhZGVyLCBFRklfU0VDVElPTl9SQVcsICZQY2RSYXdEYXRhKTsNCj4gDQo+ICsgIEFT U0VSVF9FRklfRVJST1IgKFN0YXR1cyk7DQo+IA0KPiArICBpZiAoRUZJX0VSUk9SIChTdGF0dXMp KSB7DQo+IA0KPiArICAgIHJldHVybiBTdGF0dXM7DQo+IA0KPiArICB9DQo+IA0KPiArDQo+IA0K PiArICBVcGxEYXRhYmFzZSA9IChQRUlfUENEX0RBVEFCQVNFICopIFBjZFJhd0RhdGE7DQo+IA0K PiArICBFeE1hcFRhYmxlICA9IChEWU5BTUlDRVhfTUFQUElORyAqKSAoVUlOVE4pICgoVUlOVE4p IFBjZFJhd0RhdGENCj4gKyBVcGxEYXRhYmFzZS0+RXhNYXBUYWJsZU9mZnNldCk7DQo+IA0KPiAr DQo+IA0KPiArICBmb3IgKEluZGV4ID0gMDsgSW5kZXggPCBVcGxEYXRhYmFzZS0+RXhUb2tlbkNv dW50OyBJbmRleCsrKSB7DQo+IA0KPiArICAgIEV4TWFwVGFibGVbSW5kZXhdLlRva2VuTnVtYmVy ICs9IFBlaURhdGFiYXNlLT5Mb2NhbFRva2VuQ291bnQ7DQo+IA0KPiArICB9DQo+IA0KPiArICBE RUJVRyAoKERFQlVHX0lORk8sICJGaXggdXAgVVBMIFBDRCBkYXRhYmFzZSBzdWNjZXNzZnVsbHlc biIpKTsNCj4gDQo+ICsgIHJldHVybiBFRklfU1VDQ0VTUzsNCj4gDQo+ICt9DQo+IA0KPiArDQo+ IA0KPiAgLyoqDQo+IA0KPiAgICBBZGQgSE9CIGludG8gSE9CIGxpc3QNCj4gDQo+IA0KPiANCj4g QEAgLTMzMiw2ICszODgsNyBAQCBfTW9kdWxlRW50cnlQb2ludCAoDQo+ICAgIFN0YXR1cyA9IEJ1 aWxkSG9icyAoQm9vdGxvYWRlclBhcmFtZXRlciwgJkR4ZUZ2KTsNCj4gDQo+ICAgIEFTU0VSVF9F RklfRVJST1IgKFN0YXR1cyk7DQo+IA0KPiANCj4gDQo+ICsgIEZpeFVwUGNkRGF0YWJhc2UgKER4 ZUZ2KTsNCj4gDQo+ICAgIFN0YXR1cyA9IFVuaXZlcnNhbExvYWREeGVDb3JlIChEeGVGdiwgJkR4 ZUNvcmVFbnRyeVBvaW50KTsNCj4gDQo+ICAgIEFTU0VSVF9FRklfRVJST1IgKFN0YXR1cyk7DQo+ IA0KPiANCj4gDQo+IGRpZmYgLS1naXQgYS9VZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZEVudHJ5 L1VuaXZlcnNhbFBheWxvYWRFbnRyeS5pbmYNCj4gYi9VZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9h ZEVudHJ5L1VuaXZlcnNhbFBheWxvYWRFbnRyeS5pbmYNCj4gaW5kZXggNzdjZDI1YWFmZC4uNzZk N2U0NzkxYyAxMDA2NDQNCj4gLS0tIGEvVWVmaVBheWxvYWRQa2cvVWVmaVBheWxvYWRFbnRyeS9V bml2ZXJzYWxQYXlsb2FkRW50cnkuaW5mDQo+ICsrKyBiL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXls b2FkRW50cnkvVW5pdmVyc2FsUGF5bG9hZEVudHJ5LmluZg0KPiBAQCAtNjMsNiArNjMsNyBAQA0K PiAgICBnRWZpQWNwaVRhYmxlR3VpZA0KPiANCj4gICAgZ1VlZmlTZXJpYWxQb3J0SW5mb0d1aWQN Cj4gDQo+ICAgIGdVbml2ZXJzYWxQYXlsb2FkRXh0cmFEYXRhR3VpZA0KPiANCj4gKyAgZ1BjZERh dGFCYXNlSG9iR3VpZA0KPiANCj4gDQo+IA0KPiAgW0ZlYXR1cmVQY2QuSUEzMl0NCj4gDQo+ICAg IGdFZmlNZGVNb2R1bGVQa2dUb2tlblNwYWNlR3VpZC5QY2REeGVJcGxTd2l0Y2hUb0xvbmdNb2Rl ICAgICAgIyMNCj4gQ09OU1VNRVMNCj4gDQo+IEBAIC03Miw2ICs3Myw3IEBADQo+IA0KPiANCj4g DQo+IA0KPiAgW1BjZC5JQTMyLFBjZC5YNjRdDQo+IA0KPiArICBnVWVmaVBheWxvYWRQa2dUb2tl blNwYWNlR3VpZC5QY2RQY2REcml2ZXJGaWxlDQo+IA0KPiAgICBnRWZpTWRlTW9kdWxlUGtnVG9r ZW5TcGFjZUd1aWQuUGNkVXNlMUdQYWdlVGFibGUgICAgICAgICAgICAgICAgICAgICAgIyMNCj4g U09NRVRJTUVTX0NPTlNVTUVTDQo+IA0KPiANCj4gZ0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VH dWlkLlBjZFB0ZU1lbW9yeUVuY3J5cHRpb25BZGRyZXNzT3JNDQo+IGFzayAgICAjIyBDT05TVU1F Uw0KPiANCj4gDQo+IGdFZmlNZGVNb2R1bGVQa2dUb2tlblNwYWNlR3VpZC5QY2ROdWxsUG9pbnRl ckRldGVjdGlvblByb3BlcnR5TWFzaw0KPiAjIyBDT05TVU1FUw0KPiANCj4gZGlmZiAtLWdpdCBh L1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkUGtnLmRlYw0KPiBiL1VlZmlQYXlsb2FkUGtnL1Vl ZmlQYXlsb2FkUGtnLmRlYw0KPiBpbmRleCAxMDVlMWY1YTFjLi5kODRmNTYwOTk1IDEwMDY0NA0K PiAtLS0gYS9VZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZFBrZy5kZWMNCj4gKysrIGIvVWVmaVBh eWxvYWRQa2cvVWVmaVBheWxvYWRQa2cuZGVjDQo+IEBAIC03MiwzICs3Miw1IEBADQo+IGdVZWZp UGF5bG9hZFBrZ1Rva2VuU3BhY2VHdWlkLlBjZE1lbW9yeVR5cGVFZmlSdW50aW1lU2VydmljZXND b2RlDQo+IHwweDgwfFVJTlQzMnwweA0KPiANCj4gDQo+ICAjIFNpemUgb2YgdGhlIHJlZ2lvbiB1 c2VkIGJ5IFVFRkkgaW4gcGVybWFuZW50IG1lbW9yeQ0KPiANCj4gDQo+IGdVZWZpUGF5bG9hZFBr Z1Rva2VuU3BhY2VHdWlkLlBjZFN5c3RlbU1lbW9yeVVlZmlSZWdpb25TaXplfDB4MDIwDQo+IDAw MDAwfFVJTlQzMnwweDAwMDAwMDE3DQo+IA0KPiArDQo+IA0KPiArZ1VlZmlQYXlsb2FkUGtnVG9r ZW5TcGFjZUd1aWQuUGNkUGNkRHJpdmVyRmlsZXx7IDB4NTcsIDB4NzIsIDB4Y2YsIDB4ODAsDQo+ IDB4YWIsIDB4ODcsIDB4ZjksIDB4NDcsIDB4YTMsIDB4ZmUsIDB4RDUsIDB4MEIsIDB4NzYsIDB4 ZDgsIDB4OTUsDQo+IDB4NDEgfXxWT0lEKnwweDAwMDAwMDE4DQo+IA0KPiBkaWZmIC0tZ2l0IGEv VWVmaVBheWxvYWRQa2cvVWVmaVBheWxvYWRQa2cuZHNjDQo+IGIvVWVmaVBheWxvYWRQa2cvVWVm aVBheWxvYWRQa2cuZHNjDQo+IGluZGV4IGQ4Mjc3ZWZjY2QuLmUzZDY2OWE2ZDYgMTAwNjQ0DQo+ IC0tLSBhL1VlZmlQYXlsb2FkUGtnL1VlZmlQYXlsb2FkUGtnLmRzYw0KPiArKysgYi9VZWZpUGF5 bG9hZFBrZy9VZWZpUGF5bG9hZFBrZy5kc2MNCj4gQEAgLTI5OCw2ICsyOTgsNyBAQA0KPiAgICBn RWZpTWRlTW9kdWxlUGtnVG9rZW5TcGFjZUd1aWQuUGNkVXNlMUdQYWdlVGFibGV8VFJVRQ0KPiAN Cj4gICAgZ0VmaU1kZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZEJvb3RNYW5hZ2VyTWVudUZp bGV8eyAweDIxLA0KPiAweGFhLCAweDJjLCAweDQ2LCAweDE0LCAweDc2LCAweDAzLCAweDQ1LCAw eDgzLCAweDZlLCAweDhhLCAweGI2LCAweGY0LCAweDY2LA0KPiAweDIzLCAweDMxIH0NCj4gDQo+ IA0KPiANCj4gKyAgZ1VlZmlQYXlsb2FkUGtnVG9rZW5TcGFjZUd1aWQuUGNkUGNkRHJpdmVyRmls ZXx7IDB4NTcsIDB4NzIsIDB4Y2YsDQo+IDB4ODAsIDB4YWIsIDB4ODcsIDB4ZjksIDB4NDcsIDB4 YTMsIDB4ZmUsIDB4RDUsIDB4MEIsIDB4NzYsIDB4ZDgsIDB4OTUsIDB4NDEgfQ0KPiANCj4gDQo+ IA0KPiAgIWlmICQoU09VUkNFX0RFQlVHX0VOQUJMRSkNCj4gDQo+IA0KPiBnRWZpU291cmNlTGV2 ZWxEZWJ1Z1BrZ1Rva2VuU3BhY2VHdWlkLlBjZERlYnVnTG9hZEltYWdlTWV0aG9kfDB4DQo+IDIN Cj4gDQo+IC0tDQo+IDIuMzAuMC53aW5kb3dzLjINCg0K