From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail05.groups.io (mail05.groups.io [45.79.224.7]) by spool.mail.gandi.net (Postfix) with ESMTPS id 44C2FD81111 for ; Tue, 18 Jun 2024 08:53:24 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=moM4ngyC2YCqjSgBZmWbXDzgtCiCBX6TswLz7K2QG5I=; c=relaxed/simple; d=groups.io; h=From:To:CC:Subject:Thread-Topic:Thread-Index:Date:Message-ID:References:In-Reply-To:Accept-Language:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Resent-Date:Resent-From:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Language:Content-Type:Content-Transfer-Encoding; s=20240206; t=1718700804; v=1; b=ja5S01L76L4N2YsjxfLLH68dtegCI5qnPgGECL0KedttLZbp+w+nlsEznZXZ3dP0nc7ENv0R D8DP8k4Ne8Dp3QcbLu0R/uwYq2/pGt/hsLoVL45BdGQ3IaW9iLr090TJ1eGeNzAHR/0DnOpjsG/ BmBwrGmDTvy7LXo86a32wAsZecE2tTtS0egUc8r41KlpGGcwnxyk7n8snhPwyYPfa9NrNzKzBWF IB9sxKG5lVkrwBW6X0/KH8fv9kA6OxBLp/SvvuFES0h1V+y63XqZqDJw7VdsgJ9AeKFfVpwJ2rm KLHHoeYaBnuwSiRDKbx8PTJD73Rfopqr1mMUjenS6FF3A== X-Received: by 127.0.0.2 with SMTP id OipLYY7687511xOYKeZjVQB6; Tue, 18 Jun 2024 01:53:22 -0700 X-Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.11]) by mx.groups.io with SMTP id smtpd.web10.81958.1718700802048505394 for ; Tue, 18 Jun 2024 01:53:22 -0700 X-CSE-ConnectionGUID: yb9Vns9wSIKXWNxJIxNXcg== X-CSE-MsgGUID: IK1A2zjjRPSeSPlpAjArFg== X-IronPort-AV: E=McAfee;i="6700,10204,11106"; a="26147782" X-IronPort-AV: E=Sophos;i="6.08,247,1712646000"; d="scan'208";a="26147782" X-Received: from orviesa003.jf.intel.com ([10.64.159.143]) by orvoesa103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Jun 2024 01:53:21 -0700 X-CSE-ConnectionGUID: 5ChAcfFfSw2YbiMX2nJe3A== X-CSE-MsgGUID: Xm6up047Rq6TI785RpEDbA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.08,247,1712646000"; d="scan'208";a="46388651" X-Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83]) by orviesa003.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 18 Jun 2024 01:53:21 -0700 X-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.2507.39; Tue, 18 Jun 2024 01:53:21 -0700 X-Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Tue, 18 Jun 2024 01:53:20 -0700 X-Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39 via Frontend Transport; Tue, 18 Jun 2024 01:53:20 -0700 X-Received: from NAM10-MW2-obe.outbound.protection.outlook.com (104.47.55.47) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.39; Tue, 18 Jun 2024 01:53:20 -0700 X-Received: from DM6PR11MB4738.namprd11.prod.outlook.com (2603:10b6:5:2a3::18) by SJ0PR11MB4896.namprd11.prod.outlook.com (2603:10b6:a03:2dd::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7677.30; Tue, 18 Jun 2024 08:53:18 +0000 X-Received: from DM6PR11MB4738.namprd11.prod.outlook.com ([fe80::7064:9c9a:d2ca:c6a1]) by DM6PR11MB4738.namprd11.prod.outlook.com ([fe80::7064:9c9a:d2ca:c6a1%6]) with mapi id 15.20.7677.030; Tue, 18 Jun 2024 08:53:18 +0000 From: "Li, Zhihao" To: "Chiu, Chasel" , "Desimone, Nathaniel L" , "Duggapu, Chinni B" , "Chen, Gang C" CC: "devel@edk2.groups.io" Subject: Re: [edk2-devel] [PATCH v1 1/2] MdeModulePkg/Core/Pei: Install MigrateTempRamPpi Thread-Topic: [edk2-devel] [PATCH v1 1/2] MdeModulePkg/Core/Pei: Install MigrateTempRamPpi Thread-Index: AQEWmBJrNQu4hLldKbkjEgORZ47PJrM0ld/wgAEIgNCAAdFcAIAAAPZQgBL6KCCABgnOgIAFAqRw Date: Tue, 18 Jun 2024 08:53:18 +0000 Message-ID: References: <20240429032001.6657-1-zhihao.li@intel.com> <00d401dab0e3$968a1ef0$c39e5cd0$@byosoft.com.cn> <00e501dab24f$f098b0b0$d1ca1210$@byosoft.com.cn> <045801dabed2$66e6c3e0$34b44ba0$@byosoft.com.cn> In-Reply-To: <045801dabed2$66e6c3e0$34b44ba0$@byosoft.com.cn> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DM6PR11MB4738:EE_|SJ0PR11MB4896:EE_ x-ms-office365-filtering-correlation-id: 1c3cc1cd-fb95-4220-ac1e-08dc8f74196a x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam-message-info: =?utf-8?B?RFZzZldKajR5cTFHZjRod1V0NkRWdlVmN2MxUGxURmFLRGNFYzRVeHJzSG04?= =?utf-8?B?L25YS2hrV1lLbXpsUk9lckVseHd4NldvR09zcTFHTXhYNTNOOXM3T2V5UUlO?= =?utf-8?B?OTh1dXErS1VGMUNsaklVQ3k4Z2lHSFJTWkVnLzNyUUlMdDMvT2xjMU55TVJY?= =?utf-8?B?NXd1Y1VrUmx1eStUajNET1FoUERCaDhKSkY2Z2piVUIvWG1FMG54djdtWU1w?= =?utf-8?B?UTY0NFBlWTFkZzZ1TWJHT0xpTlY3MnVnWEovVjhiMjVpQkhEekJpZkthWmZz?= =?utf-8?B?bW1XYjFsMlF5M3pZRUVrU29tMUlQOENYODdhOUZqNmZrZTJFU3RUVlQxc1ox?= =?utf-8?B?S3dNY1VweFRpVDJXYVNmMzhkWjdXdXQ5QW5uakRIeUFiNXdjTW13eWZQU3RN?= =?utf-8?B?cGR3bThTQ3dtbVhTRmYyeTBwanJvellpcEE0QXBjcUdOb1htenJ2N3lUUnRn?= =?utf-8?B?Y29pMnBiaW5IbFpnenphZDM2MFJWaUVMNm41TkZTU09peC94Z3o1Ukt6Mlo5?= =?utf-8?B?U0pUNHlDUGhFSGVhcEVVYzMxOVQzZFYyb1hCWUFuWVNyaWdXRWEzZnNvVUtP?= =?utf-8?B?Lzhub0RaWlZnbTZoUE1LL2ZxaEZOaXJsamlSUGgwclBSaVE4NUNoNUVhekoz?= =?utf-8?B?Z3FtRGRyNC8yNE9EOVhFdDJjQ1g1NkF5eDduUDl4WDN6QlY5QW9WV3ExRHZS?= =?utf-8?B?TVNsNHQyUHhwaGVmRDlHT05Ld09RMi9DY3d6eDhINm9UcXRkUnA4VVRWajFZ?= =?utf-8?B?NVNEUkw5Sm9PZ2VDWjQ5TG51MWJhRGF6ZHVzSEZkQ2JoNC9mVTlZOHgxeW1F?= =?utf-8?B?SEdsT3ZOWW9oTFBGZVdnVXdLUGZlaGVqejgrTkZKOThMUTJoVndsRUZkczRN?= =?utf-8?B?NmErdVVaNnFUWjlXdTdBM3FqT1FuMGNrT2d6Z2hya3JPT3BiNjhlb0RZUnNX?= =?utf-8?B?dEQ2Y095eUhIYWFjVmJESnlZOFVRT2E5THhDZWZpaHdkcVRhSHBBSEdMQ04x?= =?utf-8?B?SXRocUI4NEh5QzBkemo1c2YvcDludG9nUnNxL0FEbFJJVDJBS21QRG5WaWRT?= =?utf-8?B?WjFzWGczZWsvUUVxOHUxRk1vbzJURVlpZTlDVWd4blJpc3FxRGhHUVlGNlJT?= =?utf-8?B?c0VhdlgwMjdyUWNGSzJjTURGZkp4enlGdjdOekxrR2FMa1I4d3VEVXl4bm1k?= =?utf-8?B?RXoxTzZlVEZkVDNwTEM1d2ZpVUorOEJ4OHZJWGZRNk5TeFUxS2ovS3Y1Sy84?= =?utf-8?B?SXM2TzRZb1Jyb3AvZFRhSjZjSTFGY2hkaHFManFqWHZyaWwrd1YxSlg2anhw?= =?utf-8?B?cVFZYmZzS29rWERCbERqYnV2dFJSbkFYQ2k4QThyYjAxTkJmNnRpbkZqb3hi?= =?utf-8?B?elNsY1l3by9za0pBZzFVMCtDNVZ1V1FPK2I4ZXg2a1gvZmdYd3BydUNSY0VC?= =?utf-8?B?OGlsMlRLTTJDVitUUzBzRlNBc2lOWHloeTBzc3MvUkpGcXZ4bHhFUzNuU1Vn?= =?utf-8?B?aHUyS2FHbGw2bDU5Y3hxcG1ubXFpZWFMalg4RnczbWNoTlR2enlETGZ3aFNB?= =?utf-8?B?UlpYQjJVSjV4YzVSRlltcW5wZFpiYVc2UEUyZTNoTlRBVTR1T2ZjTHArcmJZ?= =?utf-8?B?NzhiV2pQNnN5Z0dVSnZvY2RXNnVmdXNMdURjK2VxOXY5d00yS041b05tYU5h?= =?utf-8?B?OTlBTkVTZ1hDaEJKVDVoZlZLOGo0Y2xDWlYwOXNwb1I5WlpabVNyVERxYzFP?= =?utf-8?Q?k4Wd9XpLPWiYluFvwlqixLlksXtPC6ojguAQrHk?= x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?K1RUQXpsekxnOWFtazRPK244RzdHTDg2REs4eEtCNCtDSm5NZHhUZnNydTIz?= =?utf-8?B?M09ESlZhTzBkU0Y0aWIva0luV2M5bFBIQnNWc28xWE5lak9hR3p5V2xXcjNl?= =?utf-8?B?SFRLTkxEb1o4KzI5MHhKK2dubzZwOUQwVVRRMUYwbGlWamtnQVpBMEFjV1F4?= =?utf-8?B?QUYyUWFCT0ZXU3NENE16WTNTUFJ0YlpEVTZkVHU1MWdtejFPRU1UMnhRaFBB?= =?utf-8?B?RUZadTJ5VExuZHExdGJqRW1UMFdWZzVvei9kWEY0UFFUcFRIbWpaa2c3d2pH?= =?utf-8?B?UGxIRzBWR2Q0ZThEaWdaL1BBWWVBZzhXeG1JZTVwUVpNd1dpcDFyclJ3TXdO?= =?utf-8?B?NDRlVE1JVDFnV3dZdTk4RXFaUHYvWWg2TXVHUVNRVTRmRXNMeHpSdFJibWhC?= =?utf-8?B?MXpHS2tidURtMkZORFlDUmkweFA3eHpNQmpyTTdWVXZjV0VQdG9vSGw3Qmk1?= =?utf-8?B?WXlGR1N6MVFzTWxzUTZNbmJYNmhUSFBZYklZd1VrSnJWWlBEaTFWL1RKeDVn?= =?utf-8?B?TVBrMmx2MXFGMDNPYW5QbU1LUjJjcGdYZVZjbFNSck44VnhrNXluVDU4WExX?= =?utf-8?B?R1JsNXZRZjNIU1FraEJpVVBJcnJ3OVZva0xhQmh3NEFoTEpuY3ZWcFNqSzcw?= =?utf-8?B?ZE1FWFV5RjFlOXNHTzdKbCtZRlpkREtBT1dOU3g1TjNKNGVwclYxSFZkUG9S?= =?utf-8?B?blZIVWJWL3RYQ0N0TmV1bVZjMjk0ZHRpU3JQbW50V1kwSk5sTURtanNPVVph?= =?utf-8?B?T0FzT3RFMWh2WUpyRHBLVUdkTkkwYXZwSjlwcjZCWE53UFhPR2xMYWUxelR3?= =?utf-8?B?MEpIWGVKeTBxNHpBWTRwZlZNejVwb1kySzk4b0JUbG1GRktDRFgxa3RRZGZU?= =?utf-8?B?TjB1QmxJbGk3N1Aya25tNlV3Mkh6Q29iRE43NUtOTVk2L2FUMmhoUWo2SzNE?= =?utf-8?B?cWVaTVIvOHJKckVGZXdJZU5HVTdtM0pHc1lsbVFnNWdteGw2aUkwQ2FsakFG?= =?utf-8?B?dG1IV2tFKzlOVXkxUHoxQ01Qc05QMVpNcDBheW9xbkY2TGdsYm1qMGFOUXRo?= =?utf-8?B?dkNRRXc2WWpsc1FyWHhPMDRXK0EzVWllcWUwdERtUFRmdEdkQ1FpQVA2TURp?= =?utf-8?B?ZFFsZHljWm5yS0g2MVZvdkNaeXBoUWFaVENsNG5udlNGUEF3TE45MkF2anNN?= =?utf-8?B?YUdkcVpUVnhhS0syT1hQUE5laTMrRkkveE1nZERiRUo4dVhlYzV0NTEzaURp?= =?utf-8?B?ZHN0NFJ5TkxtVi9rVjNnazJaeXlCRXVyb1BIRmZPb0FhYzVoSVVhRjZXZUIy?= =?utf-8?B?NmZyQVBiRnNzaTdpNXZwUGFJYnR3WFVYRTFqQWJVcFRDcVpMbFE3YzZOd2py?= =?utf-8?B?TW1nQmcvSXk1aVhpV3JlMjlvQTNIYnlhaHhBNWRkTUpHdzBLNHlseTZHeCt4?= =?utf-8?B?WUEzMUZvQlVpVUkyM2czTm03VW00cFlMd0xKNjVyNWF1ZGpQQzBsMWxaUnZY?= =?utf-8?B?T0RUTWVHaks2WWdERVVLNUlObWNrc0N0ZjFEdEU3SlhUNytrWWtpQ3pTQTNG?= =?utf-8?B?dklnNVAwVDE5Tll3dDhBWGQ2Q2ZqZkRDMWRyWUptMUF4ZVFzZFB3SU91Z0RN?= =?utf-8?B?WGVjOFRSU3pXc1JHUnJlM0wzanMwNGpJdjlpMDltVTFybEpJODgzMVQ5cFNJ?= =?utf-8?B?VktwQ3F0bGV4eVpYNFBNb3BIb0RrWHJ3TUhLZm9IdzEvNUJPanp0WGVtdExh?= =?utf-8?B?dTljVDlWTm1MaDExNGNxNEpOTTlCakRvM2x1WkZrNTlqeVBuVlE2ZlBTeFJL?= =?utf-8?B?S3pZdnhYU3hsSnd2VDFlejhXb3lKUGRmaU5lOUh0M2lkaVJ5NXhHaHRSZllG?= =?utf-8?B?Vk5tcmVBMDlMa29YWUhXMVVhbnRFRkJLeXdVMXZBTDRzYktSMWFiU0Y0ZWRz?= =?utf-8?B?ZDdScjRPaCt2eEI5dVkrWGNVM0s4akZUc0UwUEJ1T3VNMTFaS0tvOWVGUlN0?= =?utf-8?B?NWpLdGpaeDAxMU5vMVBmblBBOWo1NFk3R0RpMVhQb2Zla3V6clhsUndnRjA1?= =?utf-8?B?cUpXeUhKOXM5OFQ0SUV3bG1sUU5qU0UwNHdsTCtEejVzTkFEUzNJV0g0NFVo?= =?utf-8?Q?meJT3teDQ2RiCw1foB91OARzS?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM6PR11MB4738.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1c3cc1cd-fb95-4220-ac1e-08dc8f74196a X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Jun 2024 08:53:18.4742 (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: SOE6Rg+GObbg+PojvGsTsENpHe74IcKK1GlVh9CcoAByAp9ZHyo8Y+KW2PGXBbUfpsaNpAOffaLgy0Rtej4gsg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR11MB4896 X-OriginatorOrg: intel.com Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Resent-Date: Tue, 18 Jun 2024 01:53:22 -0700 Resent-From: zhihao.li@intel.com Reply-To: devel@edk2.groups.io,zhihao.li@intel.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: pNJajVpkPmKX2Ftdu3CvtUrNx7686176AA= Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20240206 header.b=ja5S01L7; spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 45.79.224.7 as permitted sender) smtp.mailfrom=bounce@groups.io; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=intel.com (policy=none) SGkNCg0KVGhlIGNoYW5nZSBpbiBNZGVNb2R1bGVQa2cgaGF2ZSBiZWVuIG1lcmdlZCBub3cuIENv dWxkIHlvdSBwbGVhc2UgaGVscCB0byByZXZpZXcgdGhlIHBhdGNoIGluIEludGVsRnNwMldyYXBw ZXJQa2cuDQpJIGhhZCBzZW50IHRoZSBwYXRjaCBvbiBBcHIgMzAuIEkgY2FuIHNlbmQgaXQgYWdh aW4gaWYgeW91IG5lZWQuDQpUaGlzIGlzIHRoZSBQUiBsaW5rIGZvciBJbnRlbEZzcDJXcmFwcGVy UGtnOiBodHRwczovL2dpdGh1Yi5jb20vdGlhbm9jb3JlL2VkazIvcHVsbC81NjAxL2NvbW1pdHMv MjkwZDMzNDdjNDVkMzU5ZGEzZmYxY2NkNTBmMjkwYTQ1NzY3ZDQzYQ0KDQpUaGFua3MgYSBsb3Qu DQoNCkJSLA0KWmhpaGFvDQoNCi0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQpGcm9tOiBnYW9s aW1pbmcgPGdhb2xpbWluZ0BieW9zb2Z0LmNvbS5jbj4gDQpTZW50OiBTYXR1cmRheSwgSnVuZSAx NSwgMjAyNCAxMToxNiBBTQ0KVG86IExpLCBaaGloYW8gPHpoaWhhby5saUBpbnRlbC5jb20+OyBk ZXZlbEBlZGsyLmdyb3Vwcy5pbw0KQ2M6IENoaXUsIENoYXNlbCA8Y2hhc2VsLmNoaXVAaW50ZWwu Y29tPjsgRGVzaW1vbmUsIE5hdGhhbmllbCBMIDxuYXRoYW5pZWwubC5kZXNpbW9uZUBpbnRlbC5j b20+OyBEdWdnYXB1LCBDaGlubmkgQiA8Y2hpbm5pLmIuZHVnZ2FwdUBpbnRlbC5jb20+OyBDaGVu LCBHYW5nIEMgPGdhbmcuYy5jaGVuQGludGVsLmNvbT4NClN1YmplY3Q6IOWbnuWkjTogW2VkazIt ZGV2ZWxdIFtQQVRDSCB2MSAxLzJdIE1kZU1vZHVsZVBrZy9Db3JlL1BlaTogSW5zdGFsbCBNaWdy YXRlVGVtcFJhbVBwaQ0KDQpaaGloYW86DQogIEkgaGF2ZSBubyBvdGhlciBjb21tZW50IGZvciB0 aGUgY2hhbmdlIGluIE1kZU1vZHVsZVBrZy4gUGxlYXNlIGNyZWF0ZSBwdWxsIHJlcXVlc3QgZm9y IGl0LiANCg0KVGhhbmtzDQpMaW1pbmcNCj4gLS0tLS3pgq7ku7bljp/ku7YtLS0tLQ0KPiDlj5Hk u7bkuro6IExpLCBaaGloYW8gPHpoaWhhby5saUBpbnRlbC5jb20+DQo+IOWPkemAgeaXtumXtDog MjAyNOW5tDbmnIgxMeaXpSAxNTozNg0KPiDmlLbku7bkuro6IGdhb2xpbWluZyA8Z2FvbGltaW5n QGJ5b3NvZnQuY29tLmNuPjsgZGV2ZWxAZWRrMi5ncm91cHMuaW8NCj4g5oqE6YCBOiBDaGl1LCBD aGFzZWwgPGNoYXNlbC5jaGl1QGludGVsLmNvbT47IERlc2ltb25lLCBOYXRoYW5pZWwgTCANCj4g PG5hdGhhbmllbC5sLmRlc2ltb25lQGludGVsLmNvbT47IER1Z2dhcHUsIENoaW5uaSBCIA0KPiA8 Y2hpbm5pLmIuZHVnZ2FwdUBpbnRlbC5jb20+OyBDaGVuLCBHYW5nIEMgPGdhbmcuYy5jaGVuQGlu dGVsLmNvbT4NCj4g5Li76aKYOiBSRTogW2VkazItZGV2ZWxdIFtQQVRDSCB2MSAxLzJdIE1kZU1v ZHVsZVBrZy9Db3JlL1BlaTogSW5zdGFsbCANCj4gTWlncmF0ZVRlbXBSYW1QcGkNCj4gDQo+IEhp IExpbWluZw0KPiANCj4gSWYgdGhlcmUgYXJlIG5vIGNvbmNlcm5zIGFib3V0IGl0LCBjb3VsZCB5 b3UgcGxlYXNlIGhlbHAgdG8gcmV2aWV3IHRoZSANCj4gcGF0Y2ggaW4gTWRlTW9kdWxlUGtnIHNj b3BlIGFuZCBjaGVjayBpbj8NCj4gQW5kIHRoZW4sIEkgY29udGFjdCB3aXRoIHRoZSBtYWludGFp bmVycyBvZiBJbnRlbEZzcDJXcmFwcGVyUGtnIGZvciANCj4gYW5vdGhlciBwYXRjaCByZXZpZXcu DQo+IA0KPiBCUiwNCj4gWmhpaGFvDQo+IA0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0K PiBGcm9tOiBMaSwgWmhpaGFvDQo+IFNlbnQ6IFRodXJzZGF5LCBNYXkgMzAsIDIwMjQgMjozMiBQ TQ0KPiBUbzogZ2FvbGltaW5nIDxnYW9saW1pbmdAYnlvc29mdC5jb20uY24+OyBkZXZlbEBlZGsy Lmdyb3Vwcy5pbw0KPiBDYzogQ2hpdSwgQ2hhc2VsIDxjaGFzZWwuY2hpdUBpbnRlbC5jb20+OyBE ZXNpbW9uZSwgTmF0aGFuaWVsIEwgDQo+IDxuYXRoYW5pZWwubC5kZXNpbW9uZUBpbnRlbC5jb20+ OyBEdWdnYXB1LCBDaGlubmkgQiANCj4gPGNoaW5uaS5iLmR1Z2dhcHVAaW50ZWwuY29tPjsgQ2hl biwgR2FuZyBDIDxnYW5nLmMuY2hlbkBpbnRlbC5jb20+DQo+IFN1YmplY3Q6IFJFOiBbZWRrMi1k ZXZlbF0gW1BBVENIIHYxIDEvMl0gTWRlTW9kdWxlUGtnL0NvcmUvUGVpOiANCj4gSW5zdGFsbCBN aWdyYXRlVGVtcFJhbVBwaQ0KPiANCj4gWWVzLCB0aGV5IGFyZSB1c2VkLg0KPiBSZWZlciB0byBo dHRwczovL2J1Z3ppbGxhLnRpYW5vY29yZS5vcmcvc2hvd19idWcuY2dpP2lkPTIzNzYgLCBGc3Ag DQo+IGJpbmFyeSBtZWFzdXJlbWVudCBoYXMgYmVlbiBpbXBsZW1lbnRlZCBhbmQgY29udHJvbGxl ZCBieSANCj4gUGNkRnNwTWVhc3VyZW1lbnRDb25maWcuDQo+IEN1cnJlbnQgZGVmZWN0Og0KPiAx LiBGU1AtVC9GU1AtTSBtYXkgbm90IGJlIG1pZ3JhdGVkLg0KPiAyLiBFdmVuIGlmIEZTUC1NIGhh cyBiZWVuIG1pZ3JhdGVkLCBpdHMgbWVhc3VyZW1lbnQgc3RpbGwgdXNlZCB0aGUgDQo+IG9yaWdp bmFsIGFkZHJlc3MuDQo+IENvcnJlc3BvbmRpbmcgbW9kaWZpY2F0aW9uczoNCj4gSW4gTWRlTW9k dWxlUGtnIHNjb3BlOg0KPiAxLiBBZGQgdGhlIGdFZGtpaVBlaU1pZ3JhdGVUZW1wUmFtUHBpR3Vp ZCBhbmQgaW5zdGFsbCBpdCBhZnRlciANCj4gRXZhY3VhdGVUZW1wUmFtIGlzIGNhbGxlZC4NCj4g SW4gSW50ZWxGc3AyV3JhcHBlclBrZyBzY29wZToNCj4gMS4gQWRkIE1pZ3JhdGVUZW1wUmFtUHBp IG5vdGlmaWNhdGlvbiB3aGljaCB3aWxsIGNoZWNrIHRoZSBtaWdyYXRpb24gDQo+IG9mIEZTUC1U L00gYW5kIG1pZ3JhdGUgdGhlbSBpZiB0aGV5IGFyZSBub3QgbWlncmF0ZWQgYnV0IG5lZWQgdG8g YmUgbWVhc3VyZWQuDQo+IDIuIEZpeCBUY2cgbm90aWZpY2F0aW9uIHRvIHVzZSBtaWdyYXRlZCBh ZGRyZXNzIGlmIHRoZSBiaW5hcmllcyBoYWQgYmVlbiBtaWdyYXRlZC4NCj4gDQo+IEJSLA0KPiBa aGloYW8NCj4gDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IGdhb2xpbWlu ZyA8Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuPg0KPiBTZW50OiBUaHVyc2RheSwgTWF5IDMwLCAy MDI0IDE6MTIgUE0NCj4gVG86IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBMaSwgWmhpaGFvIDx6aGlo YW8ubGlAaW50ZWwuY29tPg0KPiBDYzogQ2hpdSwgQ2hhc2VsIDxjaGFzZWwuY2hpdUBpbnRlbC5j b20+OyBEZXNpbW9uZSwgTmF0aGFuaWVsIEwgDQo+IDxuYXRoYW5pZWwubC5kZXNpbW9uZUBpbnRl bC5jb20+OyBEdWdnYXB1LCBDaGlubmkgQiANCj4gPGNoaW5uaS5iLmR1Z2dhcHVAaW50ZWwuY29t PjsgQ2hlbiwgR2FuZyBDIDxnYW5nLmMuY2hlbkBpbnRlbC5jb20+DQo+IFN1YmplY3Q6IOWbnuWk jTogW2VkazItZGV2ZWxdIFtQQVRDSCB2MSAxLzJdIE1kZU1vZHVsZVBrZy9Db3JlL1BlaTogDQo+ IEluc3RhbGwgTWlncmF0ZVRlbXBSYW1QcGkNCj4gDQo+IFpoaWhhbzoNCj4gICBJZiBGc3AtVC9N IGlzIG5vdCBpbnN0YWxsZWQsIGFyZSB0aGV5IHN0aWxsIHVzZWQgaW4gUEVJIGJvb3Q/IElmIA0K PiB0aGV5IGFyZSB1c2VkLCBJIGFncmVlIHRoZXkgc2hvdWxkIGJlIG1lYXN1cmVkLg0KPiANCj4g VGhhbmtzDQo+IExpbWluZw0KPiA+IC0tLS0t6YKu5Lu25Y6f5Lu2LS0tLS0NCj4gPiDlj5Hku7bk uro6IGRldmVsQGVkazIuZ3JvdXBzLmlvIDxkZXZlbEBlZGsyLmdyb3Vwcy5pbz4g5Luj6KGoIExp LCBaaGloYW8NCj4gPiDlj5HpgIHml7bpl7Q6IDIwMjTlubQ15pyIMjnml6UgMTE6MzYNCj4gPiDm lLbku7bkuro6IGdhb2xpbWluZyA8Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuPjsgZGV2ZWxAZWRr Mi5ncm91cHMuaW8NCj4gPiDmioTpgIE6IENoaXUsIENoYXNlbCA8Y2hhc2VsLmNoaXVAaW50ZWwu Y29tPjsgRGVzaW1vbmUsIE5hdGhhbmllbCBMIA0KPiA+IDxuYXRoYW5pZWwubC5kZXNpbW9uZUBp bnRlbC5jb20+OyBEdWdnYXB1LCBDaGlubmkgQiANCj4gPiA8Y2hpbm5pLmIuZHVnZ2FwdUBpbnRl bC5jb20+OyBDaGVuLCBHYW5nIEMgPGdhbmcuYy5jaGVuQGludGVsLmNvbT4NCj4gPiDkuLvpopg6 IFJlOiBbZWRrMi1kZXZlbF0gW1BBVENIIHYxIDEvMl0gTWRlTW9kdWxlUGtnL0NvcmUvUGVpOiBJ bnN0YWxsIA0KPiA+IE1pZ3JhdGVUZW1wUmFtUHBpDQo+ID4NCj4gPiBJc3N1ZSBkZXNjcmlwdGlv bjoNCj4gPiAxLiBQZWlDb3JlIG9ubHkgbWlncmF0ZXMgRnNwLU0gaW4gZGlzcGF0Y2ggbW9kZSBh bmQgZG9lc24ndCBtaWdyYXRlIA0KPiA+IEZzcC1UIGFuZCBGc3AtTSBpbiBBcGkgbW9kZS4NCj4g PiAyLiBGc3AtVCBhbmQgRnNwLU0gd2lsbCBiZSBtZWFzdXJlZCBpbiBwb3N0LW1lbSBQRUkgYW5k IHRoZSANCj4gPiBtZWFzdXJlbWVudCB1c2VzIG9yaWdpbmFsIGFkZHJlc3Nlcy4NCj4gPiBSb290 Q2F1c2U6DQo+ID4gUGVpQ29yZSBvbmx5IG1pZ3JhdGVzIGluc3RhbGxlZCBGVnMgYW5kIEZzcC1U L00gbWF5IG5vdCBiZSBpbnN0YWxsZWQuDQo+ID4NCj4gPiBEZWZlY3QgaW4gaW1wbGVtZW50YXRp b246DQo+ID4gSW4gTWRlTW9kdWxlUGtnL0NvcmUvUGVpL1BlaU1haW4vUGVpTWFpbi5jIGxpbmUg NDUwOg0KPiA+IEV2YWN1YXRlVGVtcFJhbSB3aWxsIG1pZ3JhdGUgaW5zdGFsbGVkIGNvbnRlbnQg ZnJvbSBUZW1wb3JhcnkgUkFNIHRvIA0KPiA+IFBlcm1hbmVudCBSQU0gYmVjYXVzZSBvZiBCb290 R3VhcmQgVE9DVE9VIA0KPiA+IHZ1bG5lcmFiaWxpdHkoaHR0cHM6Ly9idWd6aWxsYS50aWFub2Nv cmUub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjE0KS4NCj4gPiBJbiBJbnRlbEZzcDJXcmFwcGVyUGtn L0ZzcG1XcmFwcGVyUGVpbS9Gc3BtV3JhcHBlclBlaW0uYyBsaW5lIDIyMDoNCj4gPiBGc3BtV3Jh cHBlckluaXQgd2lsbCBpbnN0YWxsIEZzcG0gaW4gZGlzcGF0Y2ggbW9kZSBvciBkaXJlY3RseSBj YWxsIA0KPiA+IFBlaUZzcE1lbW9yeUluaXQgZnVuY3Rpb24gaW4gYXBpIG1vZGUuDQo+ID4gPT0+ DQo+ID4gQXBpIG1vZGU6IEZzcC1UIGFuZCBGc3AtTSBhcmUgbm90IG1pZ3JhdGVkIGJlY2F1c2Ug dGhleSBhcmUgbm90IGluc3RhbGxlZC4NCj4gPiBEaXNwYXRjaCBtb2RlOiBGc3AtVCBpcyBub3Qg bWlncmF0ZWQgYmVjYXVzZSBpdCBpcyBub3QgaW5zdGFsbGVkLg0KPiA+DQo+ID4gSW4gSW50ZWxG c3AyV3JhcHBlclBrZy9Gc3BtV3JhcHBlclBlaW0vRnNwbVdyYXBwZXJQZWltLmMgbGluZSAyOTEs DQo+IDMwMDoNCj4gPiBUY2dQcGlOb3RpZnkgdHJhbnNtaXRzIG9yaWdpbmFsIGFkZHJlc3NlcyhQ Y2RGc3B0QmFzZUFkZHJlc3MsDQo+ID4gUGNkRnNwbUJhc2VBZGRyZXNzKSB0byBNZWFzdXJlRnNw RmlybXdhcmVCbG9iIHdoaWNoIHdpbGwgdHJpZ2dlciANCj4gPiBIYXNoTG9nRXh0ZW5kRXZlbnQu DQo+ID4gSW4gU2VjdXJpdHlQa2cvVGNnL1RjZzJQZWkvVGNnMlBlaS5jIGxpbmUgOTY2Og0KPiA+ IFRjZ1BwaSB3aWxsIGJlIGluc3RhbGxlZCBpbiBQZWltRW50cnlNUCB3aGljaCB3aWxsIGJlIGNh bGxlZCB3aGVuIA0KPiA+IHRoZSBQRUkgRm91bmRhdGlvbiBkaXNjb3ZlcnMgcGVybWFuZW50IG1l bW9yeShsaW5lIDEwNTkgDQo+ID4gbUltYWdlSW5NZW1vcnkgPQ0KPiBUUlVFKS4NCj4gPiA9PT4N Cj4gPiBPcmlnaW5hbCBhZGRyZXNzZXMgb2YgRnNwLVQgYW5kIEZzcC1NIHdpbGwgYmUgdXNlZCBm b3IgbWVhc3VyZW1lbnQgDQo+ID4gYWZ0ZXIgcGVybWFuZW50IG1lbW9yeSBpcyByZWFkeSBhbmQg aW5zdGFsbGVkIEZWcyBhcmUgbWlncmF0ZWQuDQo+ID4NCj4gPg0KPiA+IFNvbHV0aW9uOg0KPiA+ IE1kZU1vZHVsZVBrZzogUGVpQ29yZSBJbnN0YWxscyBNaWdyYXRlVGVtcFJhbVBwaSBpZiANCj4g PiBQY2RNaWdyYXRlVGVtcG9yYXJ5UmFtRmlybXdhcmVWb2x1bWVzIGlzIFRydWUuDQo+ID4gSW50 ZWxGc3AyV3JhcHBlclBrZyA6IDEuIE1pZ3JhdGVUZW1wUmFtUHBpIG5pdGlmaWNhdGlvbiBpbiAN Cj4gPiBGc3BtV3JhcHBlclBlaW0gbWlncmF0ZXMgRnNwVC9NIGJpbmFyeSB0byBwZXJtYW5lbnQg bWVtb3J5IGFuZCBidWlsZA0KPiBNaWdhdGVkRnZJbmZvSG9iLg0KPiA+ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIuIFRDRyBub3RpZmljYXRpb24gY2hlY2tzIA0K PiA+IE1pZ2F0ZWRGdkluZm9Ib2IgYW5kIHRyYW5zbWl0cyBEUkFNIGFkZHJlc3MgZm9yIG1lYXN1 cmVtZW50Lg0KPiA+DQo+ID4gQlIsDQo+ID4gWmhpaGFvDQo+ID4NCj4gPg0KPiA+IC0tLS0tT3Jp Z2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gRnJvbTogZ2FvbGltaW5nIDxnYW9saW1pbmdAYnlvc29m dC5jb20uY24+DQo+ID4gU2VudDogVHVlc2RheSwgTWF5IDI4LCAyMDI0IDU6NDQgUE0NCj4gPiBU bzogTGksIFpoaWhhbyA8emhpaGFvLmxpQGludGVsLmNvbT47IGRldmVsQGVkazIuZ3JvdXBzLmlv DQo+ID4gQ2M6IENoaXUsIENoYXNlbCA8Y2hhc2VsLmNoaXVAaW50ZWwuY29tPjsgRGVzaW1vbmUs IE5hdGhhbmllbCBMIA0KPiA+IDxuYXRoYW5pZWwubC5kZXNpbW9uZUBpbnRlbC5jb20+OyBEdWdn YXB1LCBDaGlubmkgQiANCj4gPiA8Y2hpbm5pLmIuZHVnZ2FwdUBpbnRlbC5jb20+OyBDaGVuLCBH YW5nIEMgPGdhbmcuYy5jaGVuQGludGVsLmNvbT4NCj4gPiBTdWJqZWN0OiDlm57lpI06IFtQQVRD SCB2MSAxLzJdIE1kZU1vZHVsZVBrZy9Db3JlL1BlaTogSW5zdGFsbCANCj4gPiBNaWdyYXRlVGVt cFJhbVBwaQ0KPiA+DQo+ID4gWmhpaGFvOg0KPiA+ICAgQ291bGQgeW91IGV4cGxhaW4gdGhlIHNp dHVhdGlvbiB0aGF0IEZTUC1UL00gaXMgbm90IG1pZ3JhdGVkIGJ5IFBlaUNvcmU/DQo+ID4NCj4g PiBUaGFua3MNCj4gPiBMaW1pbmcNCj4gPiA+IC0tLS0t6YKu5Lu25Y6f5Lu2LS0tLS0NCj4gPiA+ IOWPkeS7tuS6ujogWmhpaGFvIExpIDx6aGloYW8ubGlAaW50ZWwuY29tPg0KPiA+ID4g5Y+R6YCB 5pe26Ze0OiAyMDI05bm0NOaciDI55pelIDExOjIwDQo+ID4gPiDmlLbku7bkuro6IGRldmVsQGVk azIuZ3JvdXBzLmlvDQo+ID4gPiDmioTpgIE6IENoYXNlbCBDaGl1IDxjaGFzZWwuY2hpdUBpbnRl bC5jb20+OyBOYXRlIERlU2ltb25lIA0KPiA+ID4gPG5hdGhhbmllbC5sLmRlc2ltb25lQGludGVs LmNvbT47IER1Z2dhcHUgQ2hpbm5pIEIgDQo+ID4gPiA8Y2hpbm5pLmIuZHVnZ2FwdUBpbnRlbC5j b20+OyBDaGVuIEdhbmcgQyA8Z2FuZy5jLmNoZW5AaW50ZWwuY29tPjsgDQo+ID4gPiBMaW1pbmcg R2FvIDxnYW9saW1pbmdAYnlvc29mdC5jb20uY24+DQo+ID4gPiDkuLvpopg6IFtQQVRDSCB2MSAx LzJdIE1kZU1vZHVsZVBrZy9Db3JlL1BlaTogSW5zdGFsbCANCj4gPiA+IE1pZ3JhdGVUZW1wUmFt UHBpDQo+ID4gPg0KPiA+ID4gUkVGOiBodHRwczovL2J1Z3ppbGxhLnRpYW5vY29yZS5vcmcvc2hv d19idWcuY2dpP2lkPTQ3MTYNCj4gPiA+DQo+ID4gPiBNaWdyYXRlIEZTUC1UL00gYmluYXJ5IGZy b20gdGVtcG9yYXJ5IFJBTSB0byBwZXJtYW5lbnQgUkFNIGJlZm9yZSANCj4gPiA+IE5FTSB0ZWFy IGRvd24uIFRjZyBtb2R1bGUgd2lsbCB1c2UgcGVybWFuZW50IGFkZHJlc3Mgb2YgRlNQLVQvTSAN Cj4gPiA+IGZvciBtZWFzdXJlbWVudC4NCj4gPiA+IDEuIFBlaUNvcmUgaW5zdGFsbHMgbU1pZ3Jh dGVUZW1wUmFtUHBpIGlmIA0KPiA+ID4gUGNkTWlncmF0ZVRlbXBvcmFyeVJhbUZpcm13YXJlVm9s dW1lcyBpcyBUcnVlIDIuIEZzcG1XcmFwcGVyUGVpbSANCj4gPiA+IG1pZ3JhdGUgRnNwVC9NIGJp bmFyeSB0byBwZXJtYW5lbnQgbWVtb3J5IGFuZCBidWlsZCANCj4gPiA+IE1pZ2F0ZWRGdkluZm9I b2IgMy4gVENHIG5vdGlmaWNhdGlvbiBjaGVja3MgTWlnYXRlZEZ2SW5mb0hvYiBhbmQgDQo+ID4g PiB0cmFuc21pdHMgRFJBTSBhZGRyZXNzIGZvciBtZWFzdXJlbWVudA0KPiA+ID4NCj4gPiA+IENj OiBDaGFzZWwgQ2hpdSA8Y2hhc2VsLmNoaXVAaW50ZWwuY29tPg0KPiA+ID4gQ2M6IE5hdGUgRGVT aW1vbmUgPG5hdGhhbmllbC5sLmRlc2ltb25lQGludGVsLmNvbT4NCj4gPiA+IENjOiBEdWdnYXB1 IENoaW5uaSBCIDxjaGlubmkuYi5kdWdnYXB1QGludGVsLmNvbT4NCj4gPiA+IENjOiBDaGVuIEdh bmcgQyA8Z2FuZy5jLmNoZW5AaW50ZWwuY29tPg0KPiA+ID4gQ2M6IExpbWluZyBHYW8gPGdhb2xp bWluZ0BieW9zb2Z0LmNvbS5jbj4NCj4gPiA+DQo+ID4gPiBTaWduZWQtb2ZmLWJ5OiBaaGloYW8g TGkgPHpoaWhhby5saUBpbnRlbC5jb20+DQo+ID4gPiAtLS0NCj4gPiA+ICBNZGVNb2R1bGVQa2cv Q29yZS9QZWkvUGVpTWFpbi9QZWlNYWluLmMgICAgfCAxMCArKysrKysrKy0NCj4gPiA+ICBNZGVN b2R1bGVQa2cvQ29yZS9QZWkvUGVpTWFpbi5oICAgICAgICAgICAgfCAgMyArKy0NCj4gPiA+ICBN ZGVNb2R1bGVQa2cvQ29yZS9QZWkvUGVpTWFpbi5pbmYgICAgICAgICAgfCAgMyArKy0NCj4gPiA+ ICBNZGVNb2R1bGVQa2cvSW5jbHVkZS9HdWlkL01pZ3JhdGVkRnZJbmZvLmggfCAgNCArKy0tIA0K PiA+ID4gTWRlTW9kdWxlUGtnL0luY2x1ZGUvUHBpL01pZ3JhdGVUZW1wUmFtLmggIHwgMjMNCj4g PiA+ICsrKysrKysrKysrKysrKysrKysrDQo+ID4gPiAgTWRlTW9kdWxlUGtnL01kZU1vZHVsZVBr Zy5kZWMgICAgICAgICAgICAgIHwgIDUgKysrKy0NCj4gPiA+ICA2IGZpbGVzIGNoYW5nZWQsIDQy IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pDQo+ID4gPg0KPiA+ID4gZGlmZiAtLWdpdCBh L01kZU1vZHVsZVBrZy9Db3JlL1BlaS9QZWlNYWluL1BlaU1haW4uYw0KPiA+ID4gYi9NZGVNb2R1 bGVQa2cvQ29yZS9QZWkvUGVpTWFpbi9QZWlNYWluLmMNCj4gPiA+IGluZGV4IGJmMTcxOWQ3OTQx YS4uMGUzZDlhODQzODE2IDEwMDY0NA0KPiA+ID4gLS0tIGEvTWRlTW9kdWxlUGtnL0NvcmUvUGVp L1BlaU1haW4vUGVpTWFpbi5jDQo+ID4gPiArKysgYi9NZGVNb2R1bGVQa2cvQ29yZS9QZWkvUGVp TWFpbi9QZWlNYWluLmMNCj4gPiA+IEBAIC0xLDcgKzEsNyBAQA0KPiA+ID4gIC8qKiBAZmlsZQ0K PiA+ID4gICAgUGVpIENvcmUgTWFpbiBFbnRyeSBQb2ludA0KPiA+ID4NCj4gPiA+IC1Db3B5cmln aHQgKGMpIDIwMDYgLSAyMDE5LCBJbnRlbCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyANCj4gPiA+ IHJlc2VydmVkLjxCUj4NCj4gPiA+ICtDb3B5cmlnaHQgKGMpIDIwMDYgLSAyMDI0LCBJbnRlbCBD b3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyANCj4gPiA+ICtyZXNlcnZlZC48QlI+DQo+ID4gPiAgU1BE WC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQNCj4gPiA+DQo+ID4gPiAg KiovDQo+ID4gPiBAQCAtMTMsNiArMTMsMTEgQEAgRUZJX1BFSV9QUElfREVTQ1JJUFRPUiAgbU1l bW9yeURpc2NvdmVyZWRQcGkNCj4gPSB7DQo+ID4gPiAgICAmZ0VmaVBlaU1lbW9yeURpc2NvdmVy ZWRQcGlHdWlkLA0KPiA+ID4gICAgTlVMTA0KPiA+ID4gIH07DQo+ID4gPiArRUZJX1BFSV9QUElf REVTQ1JJUFRPUiAgbU1pZ3JhdGVUZW1wUmFtUHBpID0gew0KPiA+ID4gKyAgKEVGSV9QRUlfUFBJ X0RFU0NSSVBUT1JfUFBJIHwNCj4gPiA+IEVGSV9QRUlfUFBJX0RFU0NSSVBUT1JfVEVSTUlOQVRF X0xJU1QpLA0KPiA+ID4gKyAgJmdFZGtpaVBlaU1pZ3JhdGVUZW1wUmFtUHBpR3VpZCwNCj4gPiA+ ICsgIE5VTEwNCj4gPiA+ICt9Ow0KPiA+ID4NCj4gPiA+ICAvLy8NCj4gPiA+ICAvLy8gUGVpIHNl cnZpY2UgaW5zdGFuY2UNCj4gPiA+IEBAIC00NDksNiArNDU0LDkgQEAgUGVpQ29yZSAoDQo+ID4g PiAgICAgICAgLy8NCj4gPiA+ICAgICAgICBFdmFjdWF0ZVRlbXBSYW0gKCZQcml2YXRlRGF0YSwg U2VjQ29yZURhdGEpOw0KPiA+ID4NCj4gPiA+ICsgICAgICBTdGF0dXMgPSBQZWlTZXJ2aWNlc0lu c3RhbGxQcGkgKCZtTWlncmF0ZVRlbXBSYW1QcGkpOw0KPiA+ID4gKyAgICAgIEFTU0VSVF9FRklf RVJST1IgKFN0YXR1cyk7DQo+ID4gPiArDQo+ID4gPiAgICAgICAgREVCVUcgKChERUJVR19WRVJC T1NFLCAiUFBJIGxpc3RzIGFmdGVyIHRlbXBvcmFyeSBSQU0gDQo+ID4gPiBldmFjdWF0aW9uOlxu IikpOw0KPiA+ID4gICAgICAgIER1bXBQcGlMaXN0ICgmUHJpdmF0ZURhdGEpOw0KPiA+ID4gICAg ICB9DQo+ID4gPiBkaWZmIC0tZ2l0IGEvTWRlTW9kdWxlUGtnL0NvcmUvUGVpL1BlaU1haW4uaCAN Cj4gPiA+IGIvTWRlTW9kdWxlUGtnL0NvcmUvUGVpL1BlaU1haW4uaCBpbmRleCA0NmI2YzIzMDE0 YTMuLjhkZjBjMmQ1NjFmNw0KPiA+ID4gMTAwNjQ0DQo+ID4gPiAtLS0gYS9NZGVNb2R1bGVQa2cv Q29yZS9QZWkvUGVpTWFpbi5oDQo+ID4gPiArKysgYi9NZGVNb2R1bGVQa2cvQ29yZS9QZWkvUGVp TWFpbi5oDQo+ID4gPiBAQCAtMSw3ICsxLDcgQEANCj4gPiA+ICAvKiogQGZpbGUNCj4gPiA+ICAg IERlZmluaXRpb24gb2YgUGVpIENvcmUgU3RydWN0dXJlcyBhbmQgU2VydmljZXMNCj4gPiA+DQo+ ID4gPiAtQ29weXJpZ2h0IChjKSAyMDA2IC0gMjAxOSwgSW50ZWwgQ29ycG9yYXRpb24uIEFsbCBy aWdodHMgDQo+ID4gPiByZXNlcnZlZC48QlI+DQo+ID4gPiArQ29weXJpZ2h0IChjKSAyMDA2IC0g MjAyNCwgSW50ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgDQo+ID4gPiArcmVzZXJ2ZWQuPEJS Pg0KPiA+ID4gIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2UtUGF0ZW50DQo+ ID4gPg0KPiA+ID4gICoqLw0KPiA+ID4gQEAgLTI2LDYgKzI2LDcgQEAgU1BEWC1MaWNlbnNlLUlk ZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQgDQo+ID4gPiAjaW5jbHVkZSA8UHBpL1RlbXBv cmFyeVJhbURvbmUuaD4gICNpbmNsdWRlIDxQcGkvU2VjSG9iRGF0YS5oPiANCj4gPiA+ICNpbmNs dWRlIDxQcGkvUGVpQ29yZUZ2TG9jYXRpb24uaD4NCj4gPiA+ICsjaW5jbHVkZSA8UHBpL01pZ3Jh dGVUZW1wUmFtLmg+DQo+ID4gPiAgI2luY2x1ZGUgPExpYnJhcnkvRGVidWdMaWIuaD4NCj4gPiA+ ICAjaW5jbHVkZSA8TGlicmFyeS9QZWlDb3JlRW50cnlQb2ludC5oPiAgI2luY2x1ZGUgDQo+ID4g PiA8TGlicmFyeS9CYXNlTGliLmg+IGRpZmYgLS1naXQgYS9NZGVNb2R1bGVQa2cvQ29yZS9QZWkv UGVpTWFpbi5pbmYNCj4gPiA+IGIvTWRlTW9kdWxlUGtnL0NvcmUvUGVpL1BlaU1haW4uaW5mDQo+ ID4gPiBpbmRleCA4OTNiZGMwNTI3OTguLjRlNTQ1ZGRhYjJhYiAxMDA2NDQNCj4gPiA+IC0tLSBh L01kZU1vZHVsZVBrZy9Db3JlL1BlaS9QZWlNYWluLmluZg0KPiA+ID4gKysrIGIvTWRlTW9kdWxl UGtnL0NvcmUvUGVpL1BlaU1haW4uaW5mDQo+ID4gPiBAQCAtNiw3ICs2LDcgQEANCj4gPiA+ICAj IDIpIERpc3BhdGNoIFBFSU0gZnJvbSBkaXNjb3ZlcmVkIEZWLg0KPiA+ID4gICMgMykgSGFuZG9m ZiBjb250cm9sIHRvIER4ZUlwbCB0byBsb2FkIERYRSBjb3JlIGFuZCBlbnRlciBEWEUgcGhhc2Uu DQo+ID4gPiAgIw0KPiA+ID4gLSMgQ29weXJpZ2h0IChjKSAyMDA2IC0gMjAxOSwgSW50ZWwgQ29y cG9yYXRpb24uIEFsbCByaWdodHMgDQo+ID4gPiByZXNlcnZlZC48QlI+DQo+ID4gPiArIyBDb3B5 cmlnaHQgKGMpIDIwMDYgLSAyMDI0LCBJbnRlbCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyANCj4g PiA+ICtyZXNlcnZlZC48QlI+DQo+ID4gPiAgIw0KPiA+ID4gICMgIFNQRFgtTGljZW5zZS1JZGVu dGlmaWVyOiBCU0QtMi1DbGF1c2UtUGF0ZW50ICAjIEBAIC0xMDEsNiANCj4gPiA+ICsxMDEsNyBA QA0KPiA+ID4gICAgZ0VmaVBlaVJlc2V0MlBwaUd1aWQgICAgICAgICAgICAgICAgICAgICAgICAg ICMjDQo+ID4gPiBTT01FVElNRVNfQ09OU1VNRVMNCj4gPiA+ICAgIGdFZmlTZWNIb2JEYXRhUHBp R3VpZCAgICAgICAgICAgICAgICAgICAgICAgICAjIw0KPiA+ID4gU09NRVRJTUVTX0NPTlNVTUVT DQo+ID4gPiAgICBnRWZpUGVpQ29yZUZ2TG9jYXRpb25QcGlHdWlkICAgICAgICAgICAgICAgICAg IyMNCj4gPiA+IFNPTUVUSU1FU19DT05TVU1FUw0KPiA+ID4gKyAgZ0Vka2lpUGVpTWlncmF0ZVRl bXBSYW1QcGlHdWlkICAgICAgICAgICAgICAgICMjIFBST0RVQ0VTDQo+ID4gPg0KPiA+ID4gIFtQ Y2RdDQo+ID4gPiAgICBnRWZpTWRlTW9kdWxlUGtnVG9rZW5TcGFjZUd1aWQuUGNkUGVpQ29yZU1h eFBlaVN0YWNrU2l6ZQ0KPiA+ID4gIyMgQ09OU1VNRVMNCj4gPiA+IGRpZmYgLS1naXQgYS9NZGVN b2R1bGVQa2cvSW5jbHVkZS9HdWlkL01pZ3JhdGVkRnZJbmZvLmgNCj4gPiA+IGIvTWRlTW9kdWxl UGtnL0luY2x1ZGUvR3VpZC9NaWdyYXRlZEZ2SW5mby5oDQo+ID4gPiBpbmRleCAxYzhiMGRmZWZj NDkuLjI1NWUyNzgyMzViMSAxMDA2NDQNCj4gPiA+IC0tLSBhL01kZU1vZHVsZVBrZy9JbmNsdWRl L0d1aWQvTWlncmF0ZWRGdkluZm8uaA0KPiA+ID4gKysrIGIvTWRlTW9kdWxlUGtnL0luY2x1ZGUv R3VpZC9NaWdyYXRlZEZ2SW5mby5oDQo+ID4gPiBAQCAtMSw3ICsxLDcgQEANCj4gPiA+ICAvKiog QGZpbGUNCj4gPiA+ICAgIE1pZ3JhdGVkIEZWIGluZm9ybWF0aW9uDQo+ID4gPg0KPiA+ID4gLUNv cHlyaWdodCAoYykgMjAyMCwgSW50ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgcmVzZXJ2ZWQu PEJSPg0KPiA+ID4gK0NvcHlyaWdodCAoYykgMjAyMCAtIDIwMjQsIEludGVsIENvcnBvcmF0aW9u LiBBbGwgcmlnaHRzIA0KPiA+ID4gK3Jlc2VydmVkLjxCUj4NCj4gPiA+ICBTUERYLUxpY2Vuc2Ut SWRlbnRpZmllcjogQlNELTItQ2xhdXNlLVBhdGVudA0KPiA+ID4NCj4gPiA+ICAqKi8NCj4gPiA+ IEBAIC01MCw3ICs1MCw3IEBAIHR5cGVkZWYgc3RydWN0IHsNCj4gPiA+DQo+ID4gPiAgdHlwZWRl ZiBzdHJ1Y3Qgew0KPiA+ID4gICAgVUlOVDMyICAgIEZ2T3JnQmFzZTsgICAgICAgICAvLyBvcmln aW5hbCBGViBhZGRyZXNzDQo+ID4gPiAtICBVSU5UMzIgICAgRnZOZXdCYXNlOyAgICAgICAgIC8v IG5ldyBGViBhZGRyZXNzDQo+ID4gPiArICBVSU5UMzIgICAgRnZOZXdCYXNlOyAgICAgICAgIC8v IG5ldyBGViBhZGRyZXNzLCAwIG1lYW5zIHJlYmFzZWQNCj4gPiBkYXRhDQo+ID4gPiBpcyBub3Qg Y29waWVkDQo+ID4gPiAgICBVSU5UMzIgICAgRnZEYXRhQmFzZTsgICAgICAgIC8vIG9yaWdpbmFs IEZWIGRhdGEsIDAgbWVhbnMgcmF3IGRhdGEgaXMNCj4gPiBub3QNCj4gPiA+IGNvcGllZA0KPiA+ ID4gICAgVUlOVDMyICAgIEZ2TGVuZ3RoOyAgICAgICAgICAvLyBGdiBMZW5ndGgNCj4gPiA+ICB9 IEVES0lJX01JR1JBVEVEX0ZWX0lORk87DQo+ID4gPiBkaWZmIC0tZ2l0IGEvTWRlTW9kdWxlUGtn L0luY2x1ZGUvUHBpL01pZ3JhdGVUZW1wUmFtLmgNCj4gPiA+IGIvTWRlTW9kdWxlUGtnL0luY2x1 ZGUvUHBpL01pZ3JhdGVUZW1wUmFtLmgNCj4gPiA+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ID4g PiBpbmRleCAwMDAwMDAwMDAwMDAuLjliYmI1NWQ1Y2Y4Ng0KPiA+ID4gLS0tIC9kZXYvbnVsbA0K PiA+ID4gKysrIGIvTWRlTW9kdWxlUGtnL0luY2x1ZGUvUHBpL01pZ3JhdGVUZW1wUmFtLmgNCj4g PiA+IEBAIC0wLDAgKzEsMjMgQEANCj4gPiA+ICsvKiogQGZpbGUNCj4gPiA+ICsgIFRoaXMgZmls ZSBkZWNsYXJlcyBNaWdyYXRlIFRlbXBvcmFyeSBNZW1vcnkgUFBJLg0KPiA+ID4gKw0KPiA+ID4g KyAgVGhpcyBQUEkgaXMgcHVibGlzaGVkIGJ5IHRoZSBQRUkgRm91bmRhdGlvbiB3aGVuIHRlbXBv cmFyeSBSQU0gDQo+ID4gPiArIG5lZWRzIHRvDQo+ID4gPiBldmFjdWF0ZS4NCj4gPiA+ICsgIEl0 cyBwdXJwb3NlIGlzIHRvIGJlIHVzZWQgYXMgYSBzaWduYWwgZm9yIG90aGVyIFBFSU1zIHdobyBj YW4gDQo+ID4gPiArIHJlZ2lzdGVyDQo+ID4gZm9yIGENCj4gPiA+ICsgIG5vdGlmaWNhdGlvbiBv biBpdHMgaW5zdGFsbGF0aW9uLg0KPiA+ID4gKw0KPiA+ID4gKyAgQ29weXJpZ2h0IChjKSAyMDI0 LCBJbnRlbCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC48QlI+DQo+ID4gPiArICBT UERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlLVBhdGVudA0KPiA+ID4gKw0KPiA+ ID4gKyoqLw0KPiA+ID4gKw0KPiA+ID4gKyNpZm5kZWYgUEVJX01JR1JBVEVfVEVNUF9SQU1fUFBJ X0hfICNkZWZpbmUgDQo+ID4gPiArUEVJX01JR1JBVEVfVEVNUF9SQU1fUFBJX0hfDQo+ID4gPiAr DQo+ID4gPiArI2RlZmluZSBFRklfUEVJX01JR1JBVEVfVEVNUF9SQU1fUFBJX0dVSUQgXA0KPiA+ ID4gKyAgeyBcDQo+ID4gPiArICAgIDB4Yzc5ZGM1M2IsIDB4YWZjZCwgMHg0YTZhLCB7MHhhZCwg MHg5NCwgMHhhNywgMHg2YSwgMHgzZiwgDQo+ID4gPiArMHhhOSwNCj4gPiAweGU5LA0KPiA+ID4g MHhjMiB9IFwNCj4gPiA+ICsgIH0NCj4gPiA+ICsNCj4gPiA+ICtleHRlcm4gRUZJX0dVSUQgIGdF ZGtpaVBlaU1pZ3JhdGVUZW1wUmFtUHBpR3VpZDsNCj4gPiA+ICsNCj4gPiA+ICsjZW5kaWYNCj4g PiA+IGRpZmYgLS1naXQgYS9NZGVNb2R1bGVQa2cvTWRlTW9kdWxlUGtnLmRlYyANCj4gPiA+IGIv TWRlTW9kdWxlUGtnL01kZU1vZHVsZVBrZy5kZWMgaW5kZXggM2EyMzlhMTY4N2VhLi40M2U5MmM2 OGNhMjANCj4gPiA+IDEwMDY0NA0KPiA+ID4gLS0tIGEvTWRlTW9kdWxlUGtnL01kZU1vZHVsZVBr Zy5kZWMNCj4gPiA+ICsrKyBiL01kZU1vZHVsZVBrZy9NZGVNb2R1bGVQa2cuZGVjDQo+ID4gPiBA QCAtNCw3ICs0LDcgQEANCj4gPiA+ICAjIGFuZCBsaWJyYXJpZXMgaW5zdGFuY2VzLCB3aGljaCBh cmUgdXNlZCBmb3IgdGhvc2UgbW9kdWxlcy4NCj4gPiA+ICAjDQo+ID4gPiAgIyBDb3B5cmlnaHQg KGMpIDIwMTksIE5WSURJQSBDT1JQT1JBVElPTi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4NCj4gPiA+ IC0jIENvcHlyaWdodCAoYykgMjAwNyAtIDIwMjEsIEludGVsIENvcnBvcmF0aW9uLiBBbGwgcmln aHRzIA0KPiA+ID4gcmVzZXJ2ZWQuPEJSPg0KPiA+ID4gKyMgQ29weXJpZ2h0IChjKSAyMDA3IC0g MjAyNCwgSW50ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgDQo+ID4gPiArcmVzZXJ2ZWQuPEJS Pg0KPiA+ID4gICMgQ29weXJpZ2h0IChjKSAyMDE2LCBMaW5hcm8gTHRkLiBBbGwgcmlnaHRzIHJl c2VydmVkLjxCUj4gICMgKEMpIA0KPiA+ID4gQ29weXJpZ2h0IDIwMTYgLSAyMDE5IEhld2xldHQg UGFja2FyZCBFbnRlcnByaXNlIERldmVsb3BtZW50IA0KPiA+ID4gTFA8QlI+ICMgQ29weXJpZ2h0 IChjKSAyMDE3LCBBTUQgSW5jb3Jwb3JhdGVkLiBBbGwgcmlnaHRzIA0KPiA+ID4gcmVzZXJ2ZWQu PEJSPiBAQA0KPiA+ID4gLTU0Niw2ICs1NDYsOSBAQA0KPiA+ID4gICAgIyMgSW5jbHVkZS9QcGkv TWVtb3J5QXR0cmlidXRlLmgNCj4gPiA+ICAgIGdFZGtpaU1lbW9yeUF0dHJpYnV0ZVBwaUd1aWQg ICAgICAgICAgICAgID0geyAweDFiZTg0MGRlLCAweDJkOTIsDQo+ID4gPiAweDQxZWMsIHsgMHhi NiwgMHhkMywgMHgxOSwgMHg2NCwgMHgxMywgMHg1MCwgMHg1MSwgMHhmYiB9IH0NCj4gPiA+DQo+ ID4gPiArICAjIyBJbmNsdWRlL1BwaS9NaWdyYXRlVGVtcFJhbS5oDQo+ID4gPiArICBnRWRraWlQ ZWlNaWdyYXRlVGVtcFJhbVBwaUd1aWQgICAgICAgICAgICA9IHsgMHhjNzlkYzUzYiwgMHhhZmNk LA0KPiA+ID4gMHg0YTZhLCB7IDB4YWQsIDB4OTQsIDB4YTcsIDB4NmEsIDB4M2YsIDB4YTksIDB4 ZTksIDB4YzIgfSB9DQo+ID4gPiArDQo+ID4gPiAgW1Byb3RvY29sc10NCj4gPiA+ICAgICMjIExv YWQgRmlsZSBwcm90b2NvbCBwcm92aWRlcyBjYXBhYmlsaXR5IHRvIGxvYWQgYW5kIHVubG9hZCAN Cj4gPiA+IEVGSSBpbWFnZQ0KPiA+IGludG8NCj4gPiA+IG1lbW9yeSBhbmQgZXhlY3V0ZSBpdC4N Cj4gPiA+ICAgICMgIEluY2x1ZGUvUHJvdG9jb2wvTG9hZFBlMzJJbWFnZS5oDQo+ID4gPiAtLQ0K PiA+ID4gMi40NC4wLndpbmRvd3MuMQ0KPiA+DQo+ID4NCj4gPg0KPiA+DQo+ID4NCj4gPiANCj4g Pg0KPiANCj4gDQoNCg0KDQoNCgotPS09LT0tPS09LT0tPS09LT0tPS09LQpHcm91cHMuaW8gTGlu a3M6IFlvdSByZWNlaXZlIGFsbCBtZXNzYWdlcyBzZW50IHRvIHRoaXMgZ3JvdXAuClZpZXcvUmVw bHkgT25saW5lICgjMTE5NjA2KTogaHR0cHM6Ly9lZGsyLmdyb3Vwcy5pby9nL2RldmVsL21lc3Nh Z2UvMTE5NjA2Ck11dGUgVGhpcyBUb3BpYzogaHR0cHM6Ly9ncm91cHMuaW8vbXQvMTA2NzM3NTAx Lzc2ODYxNzYKR3JvdXAgT3duZXI6IGRldmVsK293bmVyQGVkazIuZ3JvdXBzLmlvClVuc3Vic2Ny aWJlOiBodHRwczovL2VkazIuZ3JvdXBzLmlvL2cvZGV2ZWwvdW5zdWIgW3JlYmVjY2FAb3BlbmZ3 LmlvXQotPS09LT0tPS09LT0tPS09LT0tPS09LQoKDQo=