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.477.1621888185175257088 for ; Mon, 24 May 2021 13:29:45 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=k4YgaXnU; spf=pass (domain: intel.com, ip: 192.55.52.93, mailfrom: michael.d.kinney@intel.com) IronPort-SDR: MPCGspu1HVX9sYWNRG4yvr7vAs3p5wbSIEd7/JS741/MRI0ZQXGfvIoaGuhMSDOI+X2DL2Fqg6 6rP3Hfm5r4wg== X-IronPort-AV: E=McAfee;i="6200,9189,9994"; a="198969677" X-IronPort-AV: E=Sophos;i="5.82,325,1613462400"; d="scan'208";a="198969677" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 24 May 2021 13:29:41 -0700 IronPort-SDR: MKcHwGs1dUHZ0lzO3LIq7ylcSksW/XChfGPpZPT5vPRxC0htzFrWTgGx/onnE/ydRhRQAmLrpS iVdVRU7gs6KA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.82,325,1613462400"; d="scan'208";a="614237423" Received: from fmsmsx604.amr.corp.intel.com ([10.18.126.84]) by orsmga005.jf.intel.com with ESMTP; 24 May 2021 13:29:41 -0700 Received: from fmsmsx607.amr.corp.intel.com (10.18.126.87) by fmsmsx604.amr.corp.intel.com (10.18.126.84) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.4; Mon, 24 May 2021 13:29:40 -0700 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) by fmsmsx607.amr.corp.intel.com (10.18.126.87) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.4 via Frontend Transport; Mon, 24 May 2021 13:29:40 -0700 Received: from NAM04-MW2-obe.outbound.protection.outlook.com (104.47.73.173) 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; Mon, 24 May 2021 13:29:39 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CrfJYHFIL1sRLpbmylkWRZTqZG4hbXXd0mq7bJwf7/f2zrk1pwNIXeWVjPqsQLk/atRg6D+Uf/6bMwmnz3F0nM+XIH0O4nGtMUSWk/5T3hmDubv6XCarElZMMHukS6QoQyQEwYpvO2//sCeMy+YdV1lJouLGgyAyX2tm1fD3vEaB1jezW9gwmLD6ZcnQBoxjhPRNw1TPxJj+IvchPQKvlXZojghFHcL5EX2yJ0z/4TZY1IyNt6X2O5rwOKQdHzlFpkmyFjrHMA125euuHwfsoKYIJTGbFjxcKpG346aDn+A16UzBAsMvhvXZ17xDa/4VsrFYPuZcx51d951XGqmIfw== 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=SfJiEZZooxVlOOD66JGGThaAxH747QCV1DKrWYTF8Ss=; b=kgSUDJYwEthOemMErg1tzThEsT2ESNQdM++Xf3XRfa1pyDzqnQOACd9tcyMCYoX3Py9pXap470w5R/XEZDJDTfIbAyyQhFFEMJAMiJUq7NwcX0Ggv+weLMwqtJbdiukwFM9btkg1Zp3r1xdZQU00Og8lDSarWKCs3ZpNuGbllhwoq2VsJex0H7paaw2tCFvBIY6cR4vnrJHhlNDSvWeluT1xZYeIiK55rSPUvoRtYts+jR5YwQCuzp83ljmYHhqbmpci1jGPjqahV5ZxzMuAzmVmLI3zgzT49322Ii+Sb9t2fTEaIzm1vlmkwbUBrW87v4Dx88mrjrRh8TsOgWXDvQ== 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=SfJiEZZooxVlOOD66JGGThaAxH747QCV1DKrWYTF8Ss=; b=k4YgaXnUCbGzNb6VtutNJbjUEcbdjdnOiduGxi3/M08H9EL4S7VCISgz/7V4cbNfeJidwhCjKqplHV4qjzhM/q3NwRRSVZFH/FJFrUAIZg0hyi2yp99UKcMQPYiehnBCesVvYrgGz++KSROy+7lCKgSKrUIZY5r7TbtTX2Ie4zY= Received: from CO1PR11MB4929.namprd11.prod.outlook.com (2603:10b6:303:6d::19) by CO1PR11MB4866.namprd11.prod.outlook.com (2603:10b6:303:91::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4150.27; Mon, 24 May 2021 20:29:38 +0000 Received: from CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::59e2:f389:5f8b:2f08]) by CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::59e2:f389:5f8b:2f08%4]) with mapi id 15.20.4150.027; Mon, 24 May 2021 20:29:38 +0000 From: "Michael D Kinney" To: "devel@edk2.groups.io" , "Liu, Zhiguang" , "Kinney, Michael D" CC: Liming Gao Subject: Re: [edk2-devel] [PATCH 1/2] MdePkg: Standalone PCD driver Thread-Topic: [edk2-devel] [PATCH 1/2] MdePkg: Standalone PCD driver Thread-Index: AQHXUH6/hMeLqSFbRUmSL90HxNAkmqrzFdYw Date: Mon, 24 May 2021 20:29:38 +0000 Message-ID: References: <20210524092454.1168-1-zhiguang.liu@intel.com> <20210524092454.1168-2-zhiguang.liu@intel.com> In-Reply-To: <20210524092454.1168-2-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: edk2.groups.io; dkim=none (message not signed) header.d=none;edk2.groups.io; dmarc=none action=none header.from=intel.com; x-originating-ip: [24.19.191.44] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 55aa1d0a-7292-4ca2-3d0d-08d91ef2a703 x-ms-traffictypediagnostic: CO1PR11MB4866: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8882; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 2g/BOZTUNAJRys0MWwbjJZgOtUvUtItZJB6IrOD6M0Wh5pwZuDjhHsksYVSgCJRX34mZIb349Vi3cIp4ScSHh9ygW1ncOl843oZysvmiB0Jcl6ZMVxiBa7sdupPqh9apRelbZaggXRpIGmbU0qkQ1lmuBnYCzpjsDvs+Skv9ux/yJ70Ye56WKfZY1sv1qtKi6ErGF5mLkFIN/chkpvPbFHYVxt7q3/6r8+WHixHHzetL/rQNxxcI0dTPTTutJrHLtCLCP9ocd/v6RypI3jIHA/bd1BMZJY4xDngtlIY1uw7GkQYxNffbnqmlM9QatHmzqSa0VWBwDhzlX8GZUQD543M6pMJ+9UJAxl3KCUG7Dgl1SiXc/ALP2NyfskY9lYobPXrfG6RqxLfEqk1kRoODXz3WGDYinEYVKxHEh7HI8gbBHH3/IUVh0EjSvFvV/0NCjuJq/3iJxdWyhhqyO+RlhAU+7dGiUoHxEbqM+3LKfon4b+mKHBjFE55mJ0bNHPELvE9wY+msIiVtl9GSZ03aIg0ekxpYGaFm1ex3b+pTyA+Mw3TrmefDhvXr/XRTpBs9YUgSDwoue4Dpi3w2a0jWY/qbb8STs6BM3AvkcZTN7yDGSCL190RRPnHWmkbi4eVVfgwM/2Gyz0BklwpQKQE6f0x6Oz3StJOTPQ2ukT7T3j9oLKteWLo0vd8hRt51tBtJ58A2yZM18DEYGD/DEijkZtEvR81l7qjS9caxY9TEnPNnNCIE/oGGq2ztoMrmQyICxXX1V4Tn0+8URGEl2djrkg== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO1PR11MB4929.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(376002)(346002)(396003)(136003)(366004)(39860400002)(4326008)(8676002)(64756008)(122000001)(478600001)(76116006)(7696005)(8936002)(66476007)(30864003)(66446008)(5660300002)(38100700002)(52536014)(66946007)(66556008)(9686003)(83380400001)(86362001)(71200400001)(110136005)(33656002)(316002)(53546011)(6506007)(26005)(186003)(55016002)(2906002)(19627235002)(966005)(44824005);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: =?utf-8?B?U0NhR2hFdDJaMXBlM2VWa0pKUkdNdUN0UjBaaStxREpSTVh5VThSR2IxTHFo?= =?utf-8?B?VDdDc3VNbDhWazJvNWs5L0t1WThVNjZUbHNKZUhaa0dDdlFXRnJKLzdXNkdP?= =?utf-8?B?amdOVE5mWkpDdFBlUktpWTBNS3ZKRG5JaXljMDNGWjlwa3Z3eU8vWi9jK3Nq?= =?utf-8?B?eDYvQkR6M1ZkQysrRTRScFRWOW5aT0V1YzZKaE52ejBBQUNzUzdPRjhycXhp?= =?utf-8?B?eWhLUUV3VHVaeVFPNHAyYXVwTmZsdnF4LzE4a0NVWTVNUFhEeFFZbnQwV00v?= =?utf-8?B?VFlNVXg4U3dySElUOGoxT2EwTjRBZ3YvZnhDQXhNbDBjcXZxVzlLTG51UFcr?= =?utf-8?B?ODFkNjJ4YUdtT1pGa3k0eFozVHk1T1V5K2dadXpoZXp5ZGt6bjhSTVBMY3dr?= =?utf-8?B?ZnNVYkZKTEVWaGU4ZFhrVzFVRGRkNzloWEpxWWFRbkZnS2pYMVprKzZZZjJG?= =?utf-8?B?Q21YeHVnWVg1azk5dWUwc2srOFByT2dCK2h3SnhSdzgyZk1neTF5ekc1MXds?= =?utf-8?B?VWpIeDAreVNzU1d2MmNnQ0RuRS9xVXMzQVJXQzNxUy9DWlF5YlRVbHNCSXpO?= =?utf-8?B?V2xpWHg0YnltVTA2RlhLR3R1cmdKelk2UG05RnNSdFFheFFoY2wwNEtLTHd5?= =?utf-8?B?OXMxMERPWHU4MG5RcTQwVXZubkIwWFl5aW1BM1BzR2YzQkR5ZDRqWVJHak1u?= =?utf-8?B?eHZCZXNxUmVyRVpFdkl1MERnQkpMQWdtUDJMeDFDejlxOWpWWEtQYWk5VmU0?= =?utf-8?B?a1c0bzdlN3I1WS9JdklTbDJWTUhrMnBkczd4TWlWakcyZXZ0cW9ndFdxRE9o?= =?utf-8?B?WTFPazRQc0MyWkpZSElmYXJ2WmJJNlVPbG52Rm00VzBQbUV4cXJTTkt6dkxp?= =?utf-8?B?R0hvYVVjNURVTlF3OWdOUlNqSUI1SWlPR2kvOFNVTCsyOEEvV3AwZVRydVJs?= =?utf-8?B?ZTdNcm9jRW1GOXQ3dDQ5amF0RmkxUDBISm5XTkJYYlYxYVhOOTVLTVBBSWdj?= =?utf-8?B?TUhFQTJKSkEwNmZJczRiN3J6b2ttNGxMSEVMOGM1MENzWnh6RU00QWpnWWtk?= =?utf-8?B?dlcxU1NlVGQ5MWJZUllQQzNJRmN3c3lJemVJZ0tYRkFrMWFrQThrUjV6d2Fh?= =?utf-8?B?UlJrNzJ3UEZEdWpvV0lIb0R2VHFlbGVRUlN0dkt5SzRuYlR2NUx6Ty9HQjly?= =?utf-8?B?L2lIancxNXRESkFGU0lvRVY0SXJLY290SityNzJuRzhRbDk5RmdGblhsazFo?= =?utf-8?B?L3BiWlNQUGZ6QnNRTTBEbnd5YURTV2oxM3E1V2VGbkFPQmJjZUp3VUV4Q1Qz?= =?utf-8?B?RlZrRjhIWUpBdXZqYktLQnE1YWFONXdRb0RVZGNyUDV5K0JtRW03c3FJSGx4?= =?utf-8?B?bzBtWUp6VGQ1ZjdMQVlnYXVaR3lWaS9xcERxSUdWQnl2REFWeEQ3dXpsR3Nu?= =?utf-8?B?ZWFvZ05wdDVJdERoZlFIYWwyYlJCQ3lPQ0I5dWI1cmc2czhvUXRFSVhGbUhJ?= =?utf-8?B?RXh0NFJ3THF3VHczbFlpdjk5YklVSFV0TmZzYnhWVldINU5NUmMwT2d5YkNE?= =?utf-8?B?b2ZmOW1Ec2FhK2xHakwwN3VCUHI1TStIUnJ2akc2T0c2bjd6djhEOFZ6YzA5?= =?utf-8?B?dy9XR0NFdzNINSt6c3NhTzlGbThOSmNkdHVIMFNBYXdyeFhiWVNxYjBub05v?= =?utf-8?B?WWl4V2hLT0JFWmJ5VmV5MEV6WVBadm0rc0hUQkh1OFc4TUZhZEk4MGJKQXRW?= =?utf-8?Q?AI6InWCH48pJ/a72uI=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CO1PR11MB4929.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 55aa1d0a-7292-4ca2-3d0d-08d91ef2a703 X-MS-Exchange-CrossTenant-originalarrivaltime: 24 May 2021 20:29:38.1397 (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: ZNGaWSMLFTp0Nb86vR4bbMLm4O0CYmZzOnmrdUy9LnPEnERGkOEw7yGH90m/JfeMnVJxLmf4/hh5LrZfuUCKVkROp9IiTKLAr3CJ/BJqjmk= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR11MB4866 Return-Path: michael.d.kinney@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 V2h5IGRvIHdlIG5lZWQgYSBuZXcgUENEPw0KDQpDYW4ndCB3ZSBtYWtlIHRoaXMgdGhlIGRlZmF1 bHQgYmVoYXZpb3IgdG8gb25seSBpbnN0YWxsIG9uZSBpbnN0YW5jZT8NCg0KVGhhbmtzLA0KDQpN aWtlDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogZGV2ZWxAZWRrMi5n cm91cHMuaW8gPGRldmVsQGVkazIuZ3JvdXBzLmlvPiBPbiBCZWhhbGYgT2YgWmhpZ3VhbmcgTGl1 DQo+IFNlbnQ6IE1vbmRheSwgTWF5IDI0LCAyMDIxIDI6MjUgQU0NCj4gVG86IGRldmVsQGVkazIu Z3JvdXBzLmlvDQo+IENjOiBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5kLmtpbm5leUBpbnRl bC5jb20+OyBMaW1pbmcgR2FvIDxnYW9saW1pbmdAYnlvc29mdC5jb20uY24+DQo+IFN1YmplY3Q6 IFtlZGsyLWRldmVsXSBbUEFUQ0ggMS8yXSBNZGVQa2c6IFN0YW5kYWxvbmUgUENEIGRyaXZlcg0K PiANCj4gQWRkIGEgZmVhdHVyZSBQQ0QgdG8gY29udHJvbCBpZiB0aGUgUENEIGRyaXZlciBpcyBi dWlsZCBhcyBzdGFuZGFsb25lIG1vZGUuDQo+IFRoaXMgd2F5LCB0d28gbW9kZSBQQ0QgZHJpdmVy IHdvbid0IHNoYXJlIHRoZSBkYXRhIGJhc2UuDQo+IA0KPiBDYzogTWljaGFlbCBEIEtpbm5leSA8 bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+DQo+IENjOiBMaW1pbmcgR2FvIDxnYW9saW1pbmdA Ynlvc29mdC5jb20uY24+DQo+IFNpZ25lZC1vZmYtYnk6IFpoaWd1YW5nIExpdSA8emhpZ3Vhbmcu bGl1QGludGVsLmNvbT4NCj4gLS0tDQo+ICBNZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1BDRC9EeGUv UGNkLmMgICAgICAgfCA3NSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+IC0tDQo+ICBNZGVNb2R1bGVQa2cv VW5pdmVyc2FsL1BDRC9EeGUvUGNkLmluZiAgICAgfCAxNiArKysrKysrKysrKystLS0tDQo+ICBN ZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1BDRC9EeGUvU2VydmljZS5jICAgfCAgNyArKysrKystDQo+ ICBNZGVQa2cvSW5jbHVkZS9Qcm90b2NvbC9QY2QuaCAgICAgICAgICAgICAgfCAgNSAtLS0tLQ0K PiAgTWRlUGtnL0luY2x1ZGUvUHJvdG9jb2wvUGNkSW5mby5oICAgICAgICAgIHwgIDUgLS0tLS0N Cj4gIE1kZVBrZy9MaWJyYXJ5L0R4ZVBjZExpYi9EeGVQY2RMaWIuYyAgICAgICB8IDI0ICsrKysr KysrKysrKysrKysrKysrLS0tLQ0KPiAgTWRlUGtnL0xpYnJhcnkvRHhlUGNkTGliL0R4ZVBjZExp Yi5pbmYgICAgIHwgMTYgKysrKysrKysrKysrLS0tLQ0KPiAgTWRlUGtnL0xpYnJhcnkvRHhlUGNk TGliL1BheWxvYWRQY2RMaWIuaW5mIHwgNzEgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysNCj4gIE1kZVBrZy9NZGVQ a2cuZGVjICAgICAgICAgICAgICAgICAgICAgICAgICB8IDEyICsrKysrKysrKysrKw0KPiAgOSBm aWxlcyBjaGFuZ2VkLCAxODQgaW5zZXJ0aW9ucygrKSwgNDcgZGVsZXRpb25zKC0pDQo+IA0KPiBk aWZmIC0tZ2l0IGEvTWRlTW9kdWxlUGtnL1VuaXZlcnNhbC9QQ0QvRHhlL1BjZC5jIGIvTWRlTW9k dWxlUGtnL1VuaXZlcnNhbC9QQ0QvRHhlL1BjZC5jDQo+IGluZGV4IGNkYjliNGZhYzEuLmRjOWM0 YmUwMjIgMTAwNjQ0DQo+IC0tLSBhL01kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvUENEL0R4ZS9QY2Qu Yw0KPiArKysgYi9NZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1BDRC9EeGUvUGNkLmMNCj4gQEAgLTEy OSwzNCArMTI5LDYxIEBAIFBjZER4ZUluaXQgKA0KPiAgICAvLw0KPiANCj4gICAgLy8gTWFrZSBz dXJlIHRoZSBQY2QgUHJvdG9jb2wgaXMgbm90IGFscmVhZHkgaW5zdGFsbGVkIGluIHRoZSBzeXN0 ZW0NCj4gDQo+ICAgIC8vDQo+IA0KPiArICBpZiAoRmVhdHVyZVBjZEdldCAoUGNkU3RhbmRhbG9u ZVBjZERhdGFiYXNlRW5hYmxlKSkgew0KPiANCj4gKyAgICBBU1NFUlRfUFJPVE9DT0xfQUxSRUFE WV9JTlNUQUxMRUQgKE5VTEwsICZnRWRraWlQYXlsb2FkU3RhbmRhbG9uZVBjZFByb3RvY29sR3Vp ZCk7DQo+IA0KPiArICAgIEJ1aWxkUGNkRHhlRGF0YUJhc2UgKCk7DQo+IA0KPiANCj4gDQo+IC0g IEFTU0VSVF9QUk9UT0NPTF9BTFJFQURZX0lOU1RBTExFRCAoTlVMTCwgJmdQY2RQcm90b2NvbEd1 aWQpOw0KPiANCj4gKyAgICAvLw0KPiANCj4gKyAgICAvLyBJbnN0YWxsIFBDRF9QUk9UT0NPTCB0 byBoYW5kbGUgZHluYW1pYyB0eXBlIFBDRA0KPiANCj4gKyAgICAvLyBJbnN0YWxsIEVGSV9QQ0Rf UFJPVE9DT0wgdG8gaGFuZGxlIGR5bmFtaWNFeCB0eXBlIFBDRA0KPiANCj4gKyAgICAvLw0KPiAN Cj4gKyAgICBTdGF0dXMgPSBnQlMtPkluc3RhbGxNdWx0aXBsZVByb3RvY29sSW50ZXJmYWNlcyAo DQo+IA0KPiArICAgICAgICAgICAgICAgICAgICAmbVBjZEhhbmRsZSwNCj4gDQo+ICsgICAgICAg ICAgICAgICAgICAgICZnRWRraWlQYXlsb2FkU3RhbmRhbG9uZVBjZFByb3RvY29sR3VpZCwgICAg ICZtUGNkSW5zdGFuY2UsDQo+IA0KPiArICAgICAgICAgICAgICAgICAgICAmZ0Vka2lpRWZpUGF5 bG9hZFN0YW5kYWxvbmVQY2RQcm90b2NvbEd1aWQsICAmbUVmaVBjZEluc3RhbmNlLA0KPiANCj4g KyAgICAgICAgICAgICAgICAgICAgTlVMTA0KPiANCj4gKyAgICAgICAgICAgICAgICAgICAgKTsN Cj4gDQo+ICsgICAgQVNTRVJUX0VGSV9FUlJPUiAoU3RhdHVzKTsNCj4gDQo+IA0KPiANCj4gLSAg QnVpbGRQY2REeGVEYXRhQmFzZSAoKTsNCj4gDQo+ICsgICAgLy8NCj4gDQo+ICsgICAgLy8gSW5z dGFsbCBHRVRfUENEX0lORk9fUFJPVE9DT0wgdG8gaGFuZGxlIGR5bmFtaWMgdHlwZSBQQ0QNCj4g DQo+ICsgICAgLy8gSW5zdGFsbCBFRklfR0VUX1BDRF9JTkZPX1BST1RPQ09MIHRvIGhhbmRsZSBk eW5hbWljRXggdHlwZSBQQ0QNCj4gDQo+ICsgICAgLy8NCj4gDQo+ICsgICAgU3RhdHVzID0gZ0JT LT5JbnN0YWxsTXVsdGlwbGVQcm90b2NvbEludGVyZmFjZXMgKA0KPiANCj4gKyAgICAgICAgICAg ICAgICAgICAgJm1QY2RIYW5kbGUsDQo+IA0KPiArICAgICAgICAgICAgICAgICAgICAmZ0Vka2lp UGF5bG9hZEdldFN0YW5kYWxvbmVQY2RJbmZvUHJvdG9jb2xHdWlkLCAgICAgJm1HZXRQY2RJbmZv SW5zdGFuY2UsDQo+IA0KPiArICAgICAgICAgICAgICAgICAgICAmZ0Vka2lpRWZpUGF5bG9hZEdl dFN0YW5kYWxvbmVQY2RJbmZvUHJvdG9jb2xHdWlkLCAgJm1FZmlHZXRQY2RJbmZvSW5zdGFuY2Us DQo+IA0KPiArICAgICAgICAgICAgICAgICAgICBOVUxMDQo+IA0KPiArICAgICAgICAgICAgICAg ICAgICApOw0KPiANCj4gKyAgICBBU1NFUlRfRUZJX0VSUk9SIChTdGF0dXMpOw0KPiANCj4gKyAg fSBlbHNlIHsNCj4gDQo+ICsgICAgQVNTRVJUX1BST1RPQ09MX0FMUkVBRFlfSU5TVEFMTEVEIChO VUxMLCAmZ1BjZFByb3RvY29sR3VpZCk7DQo+IA0KPiArICAgIEJ1aWxkUGNkRHhlRGF0YUJhc2Ug KCk7DQo+IA0KPiANCj4gDQo+IC0gIC8vDQo+IA0KPiAtICAvLyBJbnN0YWxsIFBDRF9QUk9UT0NP TCB0byBoYW5kbGUgZHluYW1pYyB0eXBlIFBDRA0KPiANCj4gLSAgLy8gSW5zdGFsbCBFRklfUENE X1BST1RPQ09MIHRvIGhhbmRsZSBkeW5hbWljRXggdHlwZSBQQ0QNCj4gDQo+IC0gIC8vDQo+IA0K PiAtICBTdGF0dXMgPSBnQlMtPkluc3RhbGxNdWx0aXBsZVByb3RvY29sSW50ZXJmYWNlcyAoDQo+ IA0KPiAtICAgICAgICAgICAgICAgICAgJm1QY2RIYW5kbGUsDQo+IA0KPiAtICAgICAgICAgICAg ICAgICAgJmdQY2RQcm90b2NvbEd1aWQsICAgICAmbVBjZEluc3RhbmNlLA0KPiANCj4gLSAgICAg ICAgICAgICAgICAgICZnRWZpUGNkUHJvdG9jb2xHdWlkLCAgJm1FZmlQY2RJbnN0YW5jZSwNCj4g DQo+IC0gICAgICAgICAgICAgICAgICBOVUxMDQo+IA0KPiAtICAgICAgICAgICAgICAgICAgKTsN Cj4gDQo+IC0gIEFTU0VSVF9FRklfRVJST1IgKFN0YXR1cyk7DQo+IA0KPiArICAgIC8vDQo+IA0K PiArICAgIC8vIEluc3RhbGwgUENEX1BST1RPQ09MIHRvIGhhbmRsZSBkeW5hbWljIHR5cGUgUENE DQo+IA0KPiArICAgIC8vIEluc3RhbGwgRUZJX1BDRF9QUk9UT0NPTCB0byBoYW5kbGUgZHluYW1p Y0V4IHR5cGUgUENEDQo+IA0KPiArICAgIC8vDQo+IA0KPiArICAgIFN0YXR1cyA9IGdCUy0+SW5z dGFsbE11bHRpcGxlUHJvdG9jb2xJbnRlcmZhY2VzICgNCj4gDQo+ICsgICAgICAgICAgICAgICAg ICAgICZtUGNkSGFuZGxlLA0KPiANCj4gKyAgICAgICAgICAgICAgICAgICAgJmdQY2RQcm90b2Nv bEd1aWQsICAgICAmbVBjZEluc3RhbmNlLA0KPiANCj4gKyAgICAgICAgICAgICAgICAgICAgJmdF ZmlQY2RQcm90b2NvbEd1aWQsICAmbUVmaVBjZEluc3RhbmNlLA0KPiANCj4gKyAgICAgICAgICAg ICAgICAgICAgTlVMTA0KPiANCj4gKyAgICAgICAgICAgICAgICAgICAgKTsNCj4gDQo+ICsgICAg QVNTRVJUX0VGSV9FUlJPUiAoU3RhdHVzKTsNCj4gDQo+IA0KPiANCj4gLSAgLy8NCj4gDQo+IC0g IC8vIEluc3RhbGwgR0VUX1BDRF9JTkZPX1BST1RPQ09MIHRvIGhhbmRsZSBkeW5hbWljIHR5cGUg UENEDQo+IA0KPiAtICAvLyBJbnN0YWxsIEVGSV9HRVRfUENEX0lORk9fUFJPVE9DT0wgdG8gaGFu ZGxlIGR5bmFtaWNFeCB0eXBlIFBDRA0KPiANCj4gLSAgLy8NCj4gDQo+IC0gIFN0YXR1cyA9IGdC Uy0+SW5zdGFsbE11bHRpcGxlUHJvdG9jb2xJbnRlcmZhY2VzICgNCj4gDQo+IC0gICAgICAgICAg ICAgICAgICAmbVBjZEhhbmRsZSwNCj4gDQo+IC0gICAgICAgICAgICAgICAgICAmZ0dldFBjZElu Zm9Qcm90b2NvbEd1aWQsICAgICAmbUdldFBjZEluZm9JbnN0YW5jZSwNCj4gDQo+IC0gICAgICAg ICAgICAgICAgICAmZ0VmaUdldFBjZEluZm9Qcm90b2NvbEd1aWQsICAmbUVmaUdldFBjZEluZm9J bnN0YW5jZSwNCj4gDQo+IC0gICAgICAgICAgICAgICAgICBOVUxMDQo+IA0KPiAtICAgICAgICAg ICAgICAgICAgKTsNCj4gDQo+IC0gIEFTU0VSVF9FRklfRVJST1IgKFN0YXR1cyk7DQo+IA0KPiAr ICAgIC8vDQo+IA0KPiArICAgIC8vIEluc3RhbGwgR0VUX1BDRF9JTkZPX1BST1RPQ09MIHRvIGhh bmRsZSBkeW5hbWljIHR5cGUgUENEDQo+IA0KPiArICAgIC8vIEluc3RhbGwgRUZJX0dFVF9QQ0Rf SU5GT19QUk9UT0NPTCB0byBoYW5kbGUgZHluYW1pY0V4IHR5cGUgUENEDQo+IA0KPiArICAgIC8v DQo+IA0KPiArICAgIFN0YXR1cyA9IGdCUy0+SW5zdGFsbE11bHRpcGxlUHJvdG9jb2xJbnRlcmZh Y2VzICgNCj4gDQo+ICsgICAgICAgICAgICAgICAgICAgICZtUGNkSGFuZGxlLA0KPiANCj4gKyAg ICAgICAgICAgICAgICAgICAgJmdHZXRQY2RJbmZvUHJvdG9jb2xHdWlkLCAgICAgJm1HZXRQY2RJ bmZvSW5zdGFuY2UsDQo+IA0KPiArICAgICAgICAgICAgICAgICAgICAmZ0VmaUdldFBjZEluZm9Q cm90b2NvbEd1aWQsICAmbUVmaUdldFBjZEluZm9JbnN0YW5jZSwNCj4gDQo+ICsgICAgICAgICAg ICAgICAgICAgIE5VTEwNCj4gDQo+ICsgICAgICAgICAgICAgICAgICAgICk7DQo+IA0KPiArICAg IEFTU0VSVF9FRklfRVJST1IgKFN0YXR1cyk7DQo+IA0KPiArICB9DQo+IA0KPiANCj4gDQo+ICAg IC8vDQo+IA0KPiAgICAvLyBSZWdpc3RlciBjYWxsYmFjayBmdW5jdGlvbiB1cG9uIFZhcmlhYmxl TG9ja1Byb3RvY29sDQo+IA0KPiBkaWZmIC0tZ2l0IGEvTWRlTW9kdWxlUGtnL1VuaXZlcnNhbC9Q Q0QvRHhlL1BjZC5pbmYgYi9NZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1BDRC9EeGUvUGNkLmluZg0K PiBpbmRleCBlYjlmNzU3ZjE0Li5mM2U3MDRmMDgzIDEwMDY0NA0KPiAtLS0gYS9NZGVNb2R1bGVQ a2cvVW5pdmVyc2FsL1BDRC9EeGUvUGNkLmluZg0KPiArKysgYi9NZGVNb2R1bGVQa2cvVW5pdmVy c2FsL1BDRC9EeGUvUGNkLmluZg0KPiBAQCAtMzI5LDEwICszMjksMTUgQEANCj4gICAgZ0VmaU1k ZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlkICAgICAgICAgICAgICAgICMjIFNPTUVUSU1FU19DT05T VU1FUyAgIyMgR1VJRA0KPiANCj4gDQo+IA0KPiAgW1Byb3RvY29sc10NCj4gDQo+IC0gIGdQY2RQ cm90b2NvbEd1aWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIyBQUk9EVUNFUw0KPiAN Cj4gLSAgZ0VmaVBjZFByb3RvY29sR3VpZCAgICAgICAgICAgICAgICAgICAgICAgICAgICMjIFBS T0RVQ0VTDQo+IA0KPiAtICBnR2V0UGNkSW5mb1Byb3RvY29sR3VpZCAgICAgICAgICAgICAgICAg ICAgICAgIyMgU09NRVRJTUVTX1BST0RVQ0VTDQo+IA0KPiAtICBnRWZpR2V0UGNkSW5mb1Byb3Rv Y29sR3VpZCAgICAgICAgICAgICAgICAgICAgIyMgU09NRVRJTUVTX1BST0RVQ0VTDQo+IA0KPiAr ICBnUGNkUHJvdG9jb2xHdWlkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMgUFJP RFVDRVMNCj4gDQo+ICsgIGdFZmlQY2RQcm90b2NvbEd1aWQgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAjIyBQUk9EVUNFUw0KPiANCj4gKyAgZ0dldFBjZEluZm9Qcm90b2NvbEd1aWQgICAg ICAgICAgICAgICAgICAgICAgICAgICMjIFNPTUVUSU1FU19QUk9EVUNFUw0KPiANCj4gKyAgZ0Vm aUdldFBjZEluZm9Qcm90b2NvbEd1aWQgICAgICAgICAgICAgICAgICAgICAgICMjIFNPTUVUSU1F U19QUk9EVUNFUw0KPiANCj4gKw0KPiANCj4gKyAgZ0Vka2lpUGF5bG9hZFN0YW5kYWxvbmVQY2RQ cm90b2NvbEd1aWQgICAgICAgICAgICMjIFBST0RVQ0VTDQo+IA0KPiArICBnRWRraWlFZmlQYXls b2FkU3RhbmRhbG9uZVBjZFByb3RvY29sR3VpZCAgICAgICAgIyMgUFJPRFVDRVMNCj4gDQo+ICsg IGdFZGtpaVBheWxvYWRHZXRTdGFuZGFsb25lUGNkSW5mb1Byb3RvY29sR3VpZCAgICAjIyBTT01F VElNRVNfUFJPRFVDRVMNCj4gDQo+ICsgIGdFZGtpaUVmaVBheWxvYWRHZXRTdGFuZGFsb25lUGNk SW5mb1Byb3RvY29sR3VpZCAjIyBTT01FVElNRVNfUFJPRFVDRVMNCj4gDQo+ICAgICMjIE5PVElG WQ0KPiANCj4gICAgIyMgU09NRVRJTUVTX0NPTlNVTUVTDQo+IA0KPiAgICBnRWRraWlWYXJpYWJs ZUxvY2tQcm90b2NvbEd1aWQNCj4gDQo+IEBAIC0zNDIsNiArMzQ3LDkgQEANCj4gICAgZ0VmaU1k ZU1vZHVsZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZFZwZEJhc2VBZGRyZXNzNjQgICAgIyMgU09NRVRJ TUVTX0NPTlNVTUVTDQo+IA0KPiAgICBnRWZpTWRlTW9kdWxlUGtnVG9rZW5TcGFjZUd1aWQuUGNk U2V0TnZTdG9yZURlZmF1bHRJZCAjIyBTT01FVElNRVNfQ09OU1VNRVMNCj4gDQo+IA0KPiANCj4g K1tGZWF0dXJlUGNkXQ0KPiANCj4gKyAgZ0VmaU1kZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZFN0YW5k YWxvbmVQY2REYXRhYmFzZUVuYWJsZSAjIyBDT05TVU1FUw0KPiANCj4gKw0KPiANCj4gIFtEZXBl eF0NCj4gDQo+ICAgIFRSVUUNCj4gDQo+IA0KPiANCj4gZGlmZiAtLWdpdCBhL01kZU1vZHVsZVBr Zy9Vbml2ZXJzYWwvUENEL0R4ZS9TZXJ2aWNlLmMgYi9NZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1BD RC9EeGUvU2VydmljZS5jDQo+IGluZGV4IGVhN2VkYzNjYmIuLmZlMTZiYTcxM2IgMTAwNjQ0DQo+ IC0tLSBhL01kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvUENEL0R4ZS9TZXJ2aWNlLmMNCj4gKysrIGIv TWRlTW9kdWxlUGtnL1VuaXZlcnNhbC9QQ0QvRHhlL1NlcnZpY2UuYw0KPiBAQCAtODYxLDcgKzg2 MSwxMiBAQCBCdWlsZFBjZER4ZURhdGFCYXNlICgNCj4gICAgQ29weU1lbSAoUGNkRHhlRGIsIG1Q Y2REYXRhYmFzZS5EeGVEYiwgbVBjZERhdGFiYXNlLkR4ZURiLT5MZW5ndGgpOw0KPiANCj4gICAg bVBjZERhdGFiYXNlLkR4ZURiID0gUGNkRHhlRGI7DQo+IA0KPiANCj4gDQo+IC0gIEd1aWRIb2Ig PSBHZXRGaXJzdEd1aWRIb2IgKCZnUGNkRGF0YUJhc2VIb2JHdWlkKTsNCj4gDQo+ICsgIGlmIChG ZWF0dXJlUGNkR2V0IChQY2RTdGFuZGFsb25lUGNkRGF0YWJhc2VFbmFibGUpKSB7DQo+IA0KPiAr ICAgIEd1aWRIb2IgPSBOVUxMOw0KPiANCj4gKyAgfSBlbHNlIHsNCj4gDQo+ICsgICAgR3VpZEhv YiA9IEdldEZpcnN0R3VpZEhvYiAoJmdQY2REYXRhQmFzZUhvYkd1aWQpOw0KPiANCj4gKyAgfQ0K PiANCj4gKw0KPiANCj4gICAgaWYgKEd1aWRIb2IgIT0gTlVMTCkgew0KPiANCj4gDQo+IA0KPiAg ICAgIC8vDQo+IA0KPiBkaWZmIC0tZ2l0IGEvTWRlUGtnL0luY2x1ZGUvUHJvdG9jb2wvUGNkLmgg Yi9NZGVQa2cvSW5jbHVkZS9Qcm90b2NvbC9QY2QuaA0KPiBpbmRleCA5Y2QxYTk5OGY4Li5jZmE2 YWMyMzYwIDEwMDY0NA0KPiAtLS0gYS9NZGVQa2cvSW5jbHVkZS9Qcm90b2NvbC9QY2QuaA0KPiAr KysgYi9NZGVQa2cvSW5jbHVkZS9Qcm90b2NvbC9QY2QuaA0KPiBAQCAtMTcsMTEgKzE3LDYgQEAg U1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRlbnQNCj4gICNpZm5kZWYg X19QQ0RfSF9fDQo+IA0KPiAgI2RlZmluZSBfX1BDRF9IX18NCj4gDQo+IA0KPiANCj4gLWV4dGVy biBFRklfR1VJRCBnUGNkUHJvdG9jb2xHdWlkOw0KPiANCj4gLQ0KPiANCj4gLSNkZWZpbmUgUENE X1BST1RPQ09MX0dVSUQgXA0KPiANCj4gLSAgeyAweDExYjM0MDA2LCAweGQ4NWIsIDB4NGQwYSwg eyAweGEyLCAweDkwLCAweGQ1LCAweGE1LCAweDcxLCAweDMxLCAweGUsIDB4ZjcgfSB9DQo+IA0K PiAtDQo+IA0KPiAgI2RlZmluZSBQQ0RfSU5WQUxJRF9UT0tFTl9OVU1CRVIgKChVSU5UTikgMCkN Cj4gDQo+IA0KPiANCj4gDQo+IA0KPiBkaWZmIC0tZ2l0IGEvTWRlUGtnL0luY2x1ZGUvUHJvdG9j b2wvUGNkSW5mby5oIGIvTWRlUGtnL0luY2x1ZGUvUHJvdG9jb2wvUGNkSW5mby5oDQo+IGluZGV4 IGIwZWM3ZjY3NzAuLjU2OTEyMTVjNDIgMTAwNjQ0DQo+IC0tLSBhL01kZVBrZy9JbmNsdWRlL1By b3RvY29sL1BjZEluZm8uaA0KPiArKysgYi9NZGVQa2cvSW5jbHVkZS9Qcm90b2NvbC9QY2RJbmZv LmgNCj4gQEAgLTE5LDExICsxOSw2IEBADQo+ICAjaWZuZGVmIF9fUENEX0lORk9fSF9fDQo+IA0K PiAgI2RlZmluZSBfX1BDRF9JTkZPX0hfXw0KPiANCj4gDQo+IA0KPiAtZXh0ZXJuIEVGSV9HVUlE IGdHZXRQY2RJbmZvUHJvdG9jb2xHdWlkOw0KPiANCj4gLQ0KPiANCj4gLSNkZWZpbmUgR0VUX1BD RF9JTkZPX1BST1RPQ09MX0dVSUQgXA0KPiANCj4gLSAgeyAweDViZTQwZjU3LCAweGZhNjgsIDB4 NDYxMCwgeyAweGJiLCAweGJmLCAweGU5LCAweGM1LCAweGZjLCAweGRhLCAweGQzLCAweDY1IH0g fQ0KPiANCj4gLQ0KPiANCj4gIC8vLw0KPiANCj4gIC8vLyBUaGUgZm9yd2FyZCBkZWNsYXJhdGlv biBmb3IgR0VUX1BDRF9JTkZPX1BST1RPQ09MLg0KPiANCj4gIC8vLw0KPiANCj4gZGlmZiAtLWdp dCBhL01kZVBrZy9MaWJyYXJ5L0R4ZVBjZExpYi9EeGVQY2RMaWIuYyBiL01kZVBrZy9MaWJyYXJ5 L0R4ZVBjZExpYi9EeGVQY2RMaWIuYw0KPiBpbmRleCAyYWNjYWVkYTJjLi44YTYxNDg2ODMyIDEw MDY0NA0KPiAtLS0gYS9NZGVQa2cvTGlicmFyeS9EeGVQY2RMaWIvRHhlUGNkTGliLmMNCj4gKysr IGIvTWRlUGtnL0xpYnJhcnkvRHhlUGNkTGliL0R4ZVBjZExpYi5jDQo+IEBAIC00Myw3ICs0Mywx MSBAQCBHZXRQaVBjZFByb3RvY29sICgNCj4gICAgICAvLyBQSSBQY2QgcHJvdG9jb2wgZGVmaW5l ZCBpbiBQSSAxLjIgdm9sMyBzaG91bGQgYmUgaW5zdGFsbGVkIGJlZm9yZSB0aGUgbW9kdWxlDQo+ IA0KPiAgICAgIC8vIGFjY2VzcyBEeW5hbWljRXggdHlwZSBQQ0QuDQo+IA0KPiAgICAgIC8vDQo+ IA0KPiAtICAgIFN0YXR1cyA9IGdCUy0+TG9jYXRlUHJvdG9jb2wgKCZnRWZpUGNkUHJvdG9jb2xH dWlkLCBOVUxMLCAoVk9JRCAqKikgJm1QaVBjZCk7DQo+IA0KPiArICAgIGlmIChGZWF0dXJlUGNk R2V0IChQY2RTdGFuZGFsb25lUGNkRGF0YWJhc2VFbmFibGUpKSB7DQo+IA0KPiArICAgICAgU3Rh dHVzID0gZ0JTLT5Mb2NhdGVQcm90b2NvbCAoJmdFZGtpaUVmaVBheWxvYWRTdGFuZGFsb25lUGNk UHJvdG9jb2xHdWlkLCBOVUxMLCAoVk9JRCAqKikgJm1QaVBjZCk7DQo+IA0KPiArICAgIH0gZWxz ZSB7DQo+IA0KPiArICAgICAgU3RhdHVzID0gZ0JTLT5Mb2NhdGVQcm90b2NvbCAoJmdFZmlQY2RQ cm90b2NvbEd1aWQsIE5VTEwsIChWT0lEICoqKSAmbVBpUGNkKTsNCj4gDQo+ICsgICAgfQ0KPiAN Cj4gICAgICBBU1NFUlRfRUZJX0VSUk9SIChTdGF0dXMpOw0KPiANCj4gICAgICBBU1NFUlQgKG1Q aVBjZCAhPSBOVUxMKTsNCj4gDQo+ICAgIH0NCj4gDQo+IEBAIC02OCw3ICs3MiwxMSBAQCBHZXRQ Y2RQcm90b2NvbCAoDQo+ICAgICAgLy8gUENEIHByb3RvY29sIG5lZWQgdG8gYmUgaW5zdGFsbGVk IGJlZm9yZSB0aGUgbW9kdWxlIGFjY2VzcyBEeW5hbWljIHR5cGUgUENELg0KPiANCj4gICAgICAv LyBCdXQgZHluYW1pYyB0eXBlIFBDRCBpcyBub3QgcmVxdWlyZWQgaW4gUEkgMS4yIHNwZWNpZmlj YXRpb24uDQo+IA0KPiAgICAgIC8vDQo+IA0KPiAtICAgIFN0YXR1cyA9IGdCUy0+TG9jYXRlUHJv dG9jb2wgKCZnUGNkUHJvdG9jb2xHdWlkLCBOVUxMLCAoVk9JRCAqKikmbVBjZCk7DQo+IA0KPiAr ICAgIGlmIChGZWF0dXJlUGNkR2V0IChQY2RTdGFuZGFsb25lUGNkRGF0YWJhc2VFbmFibGUpKSB7 DQo+IA0KPiArICAgICAgU3RhdHVzID0gZ0JTLT5Mb2NhdGVQcm90b2NvbCAoJmdFZGtpaVBheWxv YWRTdGFuZGFsb25lUGNkUHJvdG9jb2xHdWlkLCBOVUxMLCAoVk9JRCAqKikmbVBjZCk7DQo+IA0K PiArICAgIH0gZWxzZSB7DQo+IA0KPiArICAgICAgU3RhdHVzID0gZ0JTLT5Mb2NhdGVQcm90b2Nv bCAoJmdQY2RQcm90b2NvbEd1aWQsIE5VTEwsIChWT0lEICoqKSZtUGNkKTsNCj4gDQo+ICsgICAg fQ0KPiANCj4gICAgICBBU1NFUlRfRUZJX0VSUk9SIChTdGF0dXMpOw0KPiANCj4gICAgICBBU1NF UlQgKG1QY2QgIT0gTlVMTCk7DQo+IA0KPiAgICB9DQo+IA0KPiBAQCAtODgsNyArOTYsMTEgQEAg R2V0UGlQY2RJbmZvUHJvdG9jb2xQb2ludGVyICgNCj4gICAgRUZJX1NUQVRVUyAgU3RhdHVzOw0K PiANCj4gDQo+IA0KPiAgICBpZiAobVBpUGNkSW5mbyA9PSBOVUxMKSB7DQo+IA0KPiAtICAgIFN0 YXR1cyA9IGdCUy0+TG9jYXRlUHJvdG9jb2wgKCZnRWZpR2V0UGNkSW5mb1Byb3RvY29sR3VpZCwg TlVMTCwgKFZPSUQgKiopJm1QaVBjZEluZm8pOw0KPiANCj4gKyAgICBpZiAoRmVhdHVyZVBjZEdl dCAoUGNkU3RhbmRhbG9uZVBjZERhdGFiYXNlRW5hYmxlKSkgew0KPiANCj4gKyAgICAgIFN0YXR1 cyA9IGdCUy0+TG9jYXRlUHJvdG9jb2wgKCZnRWRraWlFZmlQYXlsb2FkR2V0U3RhbmRhbG9uZVBj ZEluZm9Qcm90b2NvbEd1aWQsIE5VTEwsIChWT0lEICoqKSZtUGlQY2RJbmZvKTsNCj4gDQo+ICsg ICAgfSBlbHNlew0KPiANCj4gKyAgICAgIFN0YXR1cyA9IGdCUy0+TG9jYXRlUHJvdG9jb2wgKCZn RWZpR2V0UGNkSW5mb1Byb3RvY29sR3VpZCwgTlVMTCwgKFZPSUQgKiopJm1QaVBjZEluZm8pOw0K PiANCj4gKyAgICB9DQo+IA0KPiAgICAgIEFTU0VSVF9FRklfRVJST1IgKFN0YXR1cyk7DQo+IA0K PiAgICAgIEFTU0VSVCAobVBpUGNkSW5mbyAhPSBOVUxMKTsNCj4gDQo+ICAgIH0NCj4gDQo+IEBA IC0xMDgsNyArMTIwLDExIEBAIEdldFBjZEluZm9Qcm90b2NvbFBvaW50ZXIgKA0KPiAgICBFRklf U1RBVFVTICBTdGF0dXM7DQo+IA0KPiANCj4gDQo+ICAgIGlmIChtUGNkSW5mbyA9PSBOVUxMKSB7 DQo+IA0KPiAtICAgIFN0YXR1cyA9IGdCUy0+TG9jYXRlUHJvdG9jb2wgKCZnR2V0UGNkSW5mb1By b3RvY29sR3VpZCwgTlVMTCwgKFZPSUQgKiopJm1QY2RJbmZvKTsNCj4gDQo+ICsgICAgaWYgKEZl YXR1cmVQY2RHZXQgKFBjZFN0YW5kYWxvbmVQY2REYXRhYmFzZUVuYWJsZSkpIHsNCj4gDQo+ICsg ICAgICBTdGF0dXMgPSBnQlMtPkxvY2F0ZVByb3RvY29sICgmZ0Vka2lpUGF5bG9hZEdldFN0YW5k YWxvbmVQY2RJbmZvUHJvdG9jb2xHdWlkLCBOVUxMLCAoVk9JRCAqKikmbVBjZEluZm8pOw0KPiAN Cj4gKyAgICB9IGVsc2Ugew0KPiANCj4gKyAgICAgIFN0YXR1cyA9IGdCUy0+TG9jYXRlUHJvdG9j b2wgKCZnR2V0UGNkSW5mb1Byb3RvY29sR3VpZCwgTlVMTCwgKFZPSUQgKiopJm1QY2RJbmZvKTsN Cj4gDQo+ICsgICAgfQ0KPiANCj4gICAgICBBU1NFUlRfRUZJX0VSUk9SIChTdGF0dXMpOw0KPiAN Cj4gICAgICBBU1NFUlQgKG1QY2RJbmZvICE9IE5VTEwpOw0KPiANCj4gICAgfQ0KPiANCj4gZGlm ZiAtLWdpdCBhL01kZVBrZy9MaWJyYXJ5L0R4ZVBjZExpYi9EeGVQY2RMaWIuaW5mIGIvTWRlUGtn L0xpYnJhcnkvRHhlUGNkTGliL0R4ZVBjZExpYi5pbmYNCj4gaW5kZXggM2Q0ZDIxYjQ0Mi4uNTlk OWZlNGYxMSAxMDA2NDQNCj4gLS0tIGEvTWRlUGtnL0xpYnJhcnkvRHhlUGNkTGliL0R4ZVBjZExp Yi5pbmYNCj4gKysrIGIvTWRlUGtnL0xpYnJhcnkvRHhlUGNkTGliL0R4ZVBjZExpYi5pbmYNCj4g QEAgLTUzLDEwICs1MywxOCBAQA0KPiANCj4gDQo+IA0KPiANCj4gIFtQcm90b2NvbHNdDQo+IA0K PiAtICBnUGNkUHJvdG9jb2xHdWlkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMgU09N RVRJTUVTX0NPTlNVTUVTDQo+IA0KPiAtICBnRWZpUGNkUHJvdG9jb2xHdWlkICAgICAgICAgICAg ICAgICAgICAgICAgICAgIyMgQ09OU1VNRVMNCj4gDQo+IC0gIGdHZXRQY2RJbmZvUHJvdG9jb2xH dWlkICAgICAgICAgICAgICAgICAgICAgICAjIyBTT01FVElNRVNfQ09OU1VNRVMNCj4gDQo+IC0g IGdFZmlHZXRQY2RJbmZvUHJvdG9jb2xHdWlkICAgICAgICAgICAgICAgICAgICAjIyBTT01FVElN RVNfQ09OU1VNRVMNCj4gDQo+ICsgIGdQY2RQcm90b2NvbEd1aWQgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAjIyBTT01FVElNRVNfQ09OU1VNRVMNCj4gDQo+ICsgIGdFZmlQY2RQcm90 b2NvbEd1aWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjIyBTT01FVElNRVNfQ09OU1VN RVMNCj4gDQo+ICsgIGdHZXRQY2RJbmZvUHJvdG9jb2xHdWlkICAgICAgICAgICAgICAgICAgICAg ICAgICAjIyBTT01FVElNRVNfQ09OU1VNRVMNCj4gDQo+ICsgIGdFZmlHZXRQY2RJbmZvUHJvdG9j b2xHdWlkICAgICAgICAgICAgICAgICAgICAgICAjIyBTT01FVElNRVNfQ09OU1VNRVMNCj4gDQo+ ICsNCj4gDQo+ICsgIGdFZGtpaVBheWxvYWRTdGFuZGFsb25lUGNkUHJvdG9jb2xHdWlkICAgICAg ICAgICAjIyBTT01FVElNRVNfQ09OU1VNRVMNCj4gDQo+ICsgIGdFZGtpaUVmaVBheWxvYWRTdGFu ZGFsb25lUGNkUHJvdG9jb2xHdWlkICAgICAgICAjIyBTT01FVElNRVNfQ09OU1VNRVMNCj4gDQo+ ICsgIGdFZGtpaVBheWxvYWRHZXRTdGFuZGFsb25lUGNkSW5mb1Byb3RvY29sR3VpZCAgICAjIyBT T01FVElNRVNfQ09OU1VNRVMNCj4gDQo+ICsgIGdFZGtpaUVmaVBheWxvYWRHZXRTdGFuZGFsb25l UGNkSW5mb1Byb3RvY29sR3VpZCAjIyBTT01FVElNRVNfQ09OU1VNRVMNCj4gDQo+ICsNCj4gDQo+ ICtbRmVhdHVyZVBjZF0NCj4gDQo+ICsgIGdFZmlNZGVQa2dUb2tlblNwYWNlR3VpZC5QY2RTdGFu ZGFsb25lUGNkRGF0YWJhc2VFbmFibGUgIyMgQ09OU1VNRVMNCj4gDQo+IA0KPiANCj4gIFtEZXBl eC5jb21tb24uRFhFX0RSSVZFUiwgRGVwZXguY29tbW9uLkRYRV9SVU5USU1FX0RSSVZFUiwgRGVw ZXguY29tbW9uLkRYRV9TQUxfRFJJVkVSLCBEZXBleC5jb21tb24uRFhFX1NNTV9EUklWRVJdDQo+ IA0KPiAgICBnRWZpUGNkUHJvdG9jb2xHdWlkDQo+IA0KPiBkaWZmIC0tZ2l0IGEvTWRlUGtnL0xp YnJhcnkvRHhlUGNkTGliL1BheWxvYWRQY2RMaWIuaW5mIGIvTWRlUGtnL0xpYnJhcnkvRHhlUGNk TGliL1BheWxvYWRQY2RMaWIuaW5mDQo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+IGluZGV4IDAw MDAwMDAwMDAuLmU2MTI5NmUxMWENCj4gLS0tIC9kZXYvbnVsbA0KPiArKysgYi9NZGVQa2cvTGli cmFyeS9EeGVQY2RMaWIvUGF5bG9hZFBjZExpYi5pbmYNCj4gQEAgLTAsMCArMSw3MSBAQA0KPiAr IyMgQGZpbGUNCj4gDQo+ICsjIEluc3RhbmNlIG9mIFBDRCBMaWJyYXJ5IHVzaW5nIFBDRCBQcm90 b2NvbC4NCj4gDQo+ICsjDQo+IA0KPiArIyBUaGVyZSBhcmUgdHdvIFBDRCBwcm90b2NvbHMgYXMg Zm9sbG93czoNCj4gDQo+ICsjICAgMSkgUENEX1BST1RPQ09MDQo+IA0KPiArIyAgICAgIEl0IGlz IEVES0lJIGltcGxlbWVudGF0aW9uIHdoaWNoIHN1cHBvcnQgRHluYW1pYy9EeW5hbWljRXggUGNk cy4NCj4gDQo+ICsjICAgMikgRUZJX1BDRF9QUk9UT0NPTA0KPiANCj4gKyMgICAgICBJdCBpcyBk ZWZpbmVkIGJ5IFBJIHNwZWNpZmljYXRpb24gMS4yLCBWb2wgMyB3aGljaCBvbmx5IHN1cHBvcnQg ZHluYW1pY0V4DQo+IA0KPiArIyAgICAgIHR5cGUgUGNkLg0KPiANCj4gKyMNCj4gDQo+ICsjIEZv ciBkeW5hbWljRXggdHlwZSBQQ0QsIGl0IGlzIGNvbXBhdGlibGUgYmV0d2VlbiBQQ0RfUFJPVE9D T0wgYW5kIEVGSV9QQ0RfUFJPVE9DT0wuDQo+IA0KPiArIw0KPiANCj4gKyMgVGhpcyBsaWJyYXJ5 IGluc3RhbmNlIHVzZXMgdGhlIFBDRF9QUk9UT0NPTCB0byBoYW5kbGUgZHluYW1pYyBQQ0QgcmVx dWVzdCBhbmQgdXNlDQo+IA0KPiArIyBFRklfUENEX1BST1RPQ09MIHRvIGhhbmRsZSBkeW5hbWlj RXggdHlwZSBQQ0QuDQo+IA0KPiArIw0KPiANCj4gKyMgTm90ZTogQSBkcml2ZXIgb2YgdHlwZSBE WEVfUlVOVElNRV9EUklWRVIgYW5kIERYRV9TTU1fRFJJVkVSIGNhbiBvbmx5IHVzZSB0aGlzIER4 ZVBjZExpYg0KPiANCj4gKyMgIGluIHRoZWlyIGluaXRpYWxpemF0aW9uIHdpdGhvdXQgYW55IGlz c3VlcyB0byBhY2Nlc3MgRHluYW1pYyBhbmQgRHluYW1pY0V4IFBDRC4gVGhleSBjYW4ndA0KPiAN Cj4gKyMgIGFjY2VzcyBEeW5hbWljIGFuZCBEeW5hbWljRXggUENEIGluIHRoZSBpbXBsZW1lbnRh dGlvbiBvZiBydW50aW1lIHNlcnZpY2VzIGFuZCBTTUkgaGFuZGxlcnMuDQo+IA0KPiArIyAgQmVj YXVzZSBFRklfUENEX1BST1RPQ09MIGlzIERYRSBwcm90b2NvbCB0aGF0IGlzIG5vdCBhdmFpbGFi bGUgaW4gT1MgcnVudGltZSBwaGFzZS4NCj4gDQo+ICsjDQo+IA0KPiArIyBDb3B5cmlnaHQgKGMp IDIwMDcgLSAyMDE4LCBJbnRlbCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC48QlI+ DQo+IA0KPiArIw0KPiANCj4gKyMgIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1 c2UtUGF0ZW50DQo+IA0KPiArIw0KPiANCj4gKyMNCj4gDQo+ICsjIw0KPiANCj4gKw0KPiANCj4g K1tEZWZpbmVzXQ0KPiANCj4gKyAgSU5GX1ZFUlNJT04gICAgICAgICAgICAgICAgICAgID0gMHgw MDAxMDAwNQ0KPiANCj4gKyAgQkFTRV9OQU1FICAgICAgICAgICAgICAgICAgICAgID0gRHhlUGNk TGliDQo+IA0KPiArICBNT0RVTEVfVU5JX0ZJTEUgICAgICAgICAgICAgICAgPSBEeGVQY2RMaWIu dW5pDQo+IA0KPiArICBGSUxFX0dVSUQgICAgICAgICAgICAgICAgICAgICAgPSBmOWFmMmYzOC0w OWUyLTRmZjEtYjY2MS01ZDFjMTlkOWY3NWMNCj4gDQo+ICsgIE1PRFVMRV9UWVBFICAgICAgICAg ICAgICAgICAgICA9IERYRV9EUklWRVINCj4gDQo+ICsgIFZFUlNJT05fU1RSSU5HICAgICAgICAg ICAgICAgICA9IDEuMA0KPiANCj4gKyAgTElCUkFSWV9DTEFTUyAgICAgICAgICAgICAgICAgID0g UGNkTGlifERYRV9DT1JFIERYRV9EUklWRVIgRFhFX1JVTlRJTUVfRFJJVkVSIERYRV9TTU1fRFJJ VkVSIFNNTV9DT1JFIFVFRklfQVBQTElDQVRJT04NCj4gVUVGSV9EUklWRVINCj4gDQo+ICsNCj4g DQo+ICsjDQo+IA0KPiArIyAgVkFMSURfQVJDSElURUNUVVJFUyAgICAgICAgICAgPSBJQTMyIFg2 NCBFQkMNCj4gDQo+ICsjDQo+IA0KPiArDQo+IA0KPiArW1NvdXJjZXNdDQo+IA0KPiArICBEeGVQ Y2RMaWIuYw0KPiANCj4gKw0KPiANCj4gKw0KPiANCj4gK1tQYWNrYWdlc10NCj4gDQo+ICsgIE1k ZVBrZy9NZGVQa2cuZGVjDQo+IA0KPiArDQo+IA0KPiArDQo+IA0KPiArW0xpYnJhcnlDbGFzc2Vz XQ0KPiANCj4gKyAgQmFzZU1lbW9yeUxpYg0KPiANCj4gKyAgVWVmaUJvb3RTZXJ2aWNlc1RhYmxl TGliDQo+IA0KPiArICBEZWJ1Z0xpYg0KPiANCj4gKw0KPiANCj4gKw0KPiANCj4gK1tQcm90b2Nv bHNdDQo+IA0KPiArICBnUGNkUHJvdG9jb2xHdWlkICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIyMgU09NRVRJTUVTX0NPTlNVTUVTDQo+IA0KPiArICBnRWZpUGNkUHJvdG9jb2xHdWlk ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyMgU09NRVRJTUVTX0NPTlNVTUVTDQo+IA0K PiArICBnR2V0UGNkSW5mb1Byb3RvY29sR3VpZCAgICAgICAgICAgICAgICAgICAgICAgICAgIyMg U09NRVRJTUVTX0NPTlNVTUVTDQo+IA0KPiArICBnRWZpR2V0UGNkSW5mb1Byb3RvY29sR3VpZCAg ICAgICAgICAgICAgICAgICAgICAgIyMgU09NRVRJTUVTX0NPTlNVTUVTDQo+IA0KPiArDQo+IA0K PiArICBnRWRraWlQYXlsb2FkU3RhbmRhbG9uZVBjZFByb3RvY29sR3VpZCAgICAgICAgICAgIyMg U09NRVRJTUVTX0NPTlNVTUVTDQo+IA0KPiArICBnRWRraWlFZmlQYXlsb2FkU3RhbmRhbG9uZVBj ZFByb3RvY29sR3VpZCAgICAgICAgIyMgU09NRVRJTUVTX0NPTlNVTUVTDQo+IA0KPiArICBnRWRr aWlQYXlsb2FkR2V0U3RhbmRhbG9uZVBjZEluZm9Qcm90b2NvbEd1aWQgICAgIyMgU09NRVRJTUVT X0NPTlNVTUVTDQo+IA0KPiArICBnRWRraWlFZmlQYXlsb2FkR2V0U3RhbmRhbG9uZVBjZEluZm9Q cm90b2NvbEd1aWQgIyMgU09NRVRJTUVTX0NPTlNVTUVTDQo+IA0KPiArDQo+IA0KPiArW0ZlYXR1 cmVQY2RdDQo+IA0KPiArICBnRWZpTWRlUGtnVG9rZW5TcGFjZUd1aWQuUGNkU3RhbmRhbG9uZVBj ZERhdGFiYXNlRW5hYmxlICMjIENPTlNVTUVTDQo+IA0KPiArDQo+IA0KPiArW0RlcGV4LmNvbW1v bi5EWEVfRFJJVkVSLCBEZXBleC5jb21tb24uRFhFX1JVTlRJTUVfRFJJVkVSLCBEZXBleC5jb21t b24uRFhFX1NBTF9EUklWRVIsIERlcGV4LmNvbW1vbi5EWEVfU01NX0RSSVZFUl0NCj4gDQo+ICsg IGdFZGtpaUVmaVBheWxvYWRTdGFuZGFsb25lUGNkUHJvdG9jb2xHdWlkDQo+IA0KPiArDQo+IA0K PiBkaWZmIC0tZ2l0IGEvTWRlUGtnL01kZVBrZy5kZWMgYi9NZGVQa2cvTWRlUGtnLmRlYw0KPiBp bmRleCBiNDlmODhkOGUxLi40NGY2MGUyMDg2IDEwMDY0NA0KPiAtLS0gYS9NZGVQa2cvTWRlUGtn LmRlYw0KPiArKysgYi9NZGVQa2cvTWRlUGtnLmRlYw0KPiBAQCAtMTAwMCw2ICsxMDAwLDEyIEBA DQo+ICAgICMjIEluY2x1ZGUvUHJvdG9jb2wvUGNkSW5mby5oDQo+IA0KPiAgICBnR2V0UGNkSW5m b1Byb3RvY29sR3VpZCAgICAgICAgPSB7IDB4NWJlNDBmNTcsIDB4ZmE2OCwgMHg0NjEwLCB7IDB4 YmIsIDB4YmYsIDB4ZTksIDB4YzUsIDB4ZmMsIDB4ZGEsIDB4ZDMsIDB4NjUgfSB9DQo+IA0KPiAN Cj4gDQo+ICsgICMjIFBheWxvYWQgU3RhbmRhbG9uZSBQY2QgUHJvdG9jb2wNCj4gDQo+ICsgIGdF ZGtpaVBheWxvYWRTdGFuZGFsb25lUGNkUHJvdG9jb2xHdWlkICAgICAgICAgICAgPSB7MHg4ZWY2 ZmY0OCwgMHgyMjYwLCAweDU0MDcsIHsweDBkLCAweDE4LCAweDJlLCAweDJjLCAweGFhLCAweDdk LA0KPiAweGM5LCAweDFmfX0NCj4gDQo+ICsgIGdFZGtpaUVmaVBheWxvYWRTdGFuZGFsb25lUGNk UHJvdG9jb2xHdWlkICAgICAgICAgPSB7MHg3ZTUwYzQyMiwgMHhhZTc2LCAweGJkYzksIHsweDE2 LCAweDY2LCAweGNhLCAweDY3LCAweDk1LCAweDA0LA0KPiAweDRkLCAweGVhfX0NCj4gDQo+ICsg IGdFZGtpaVBheWxvYWRHZXRTdGFuZGFsb25lUGNkSW5mb1Byb3RvY29sR3VpZCAgICAgPSB7MHhk NzIxNGMwMywgMHgyN2UwLCAweDViMzUsIHsweGQ1LCAweGIxLCAweGViLCAweDFhLCAweDUwLCAw eDE0LA0KPiAweDVlLCAweDE1fX0NCj4gDQo+ICsgIGdFZGtpaUVmaVBheWxvYWRHZXRTdGFuZGFs b25lUGNkSW5mb1Byb3RvY29sR3VpZCAgPSB7MHgxMDM5ZWNkZiwgMHg1OTA4LCAweGY3NmMsIHsw eDUxLCAweGY5LCAweGFlLCAweDA5LCAweGM1LCAweGE5LA0KPiAweDY4LCAweDllfX0NCj4gDQo+ ICsNCj4gDQo+ICAgICMNCj4gDQo+ICAgICMgUHJvdG9jb2xzIGRlZmluZWQgaW4gUEkxLjAuDQo+ IA0KPiAgICAjDQo+IA0KPiBAQCAtMTk0NSw2ICsxOTUxLDEyIEBADQo+ICAgICMgQFByb21wdCBW YWxpZGF0ZSBPUkRFUkVEX0NPTExFQ1RJT04gc3RydWN0dXJlDQo+IA0KPiAgICBnRWZpTWRlUGtn VG9rZW5TcGFjZUd1aWQuUGNkVmFsaWRhdGVPcmRlcmVkQ29sbGVjdGlvbnxGQUxTRXxCT09MRUFO fDB4MDAwMDAwMmENCj4gDQo+IA0KPiANCj4gKyAgIyMgSW5kaWNhdGVzIGlmIHRoZSBzdGFuZGFs b25lIFBDRCBkYXRhYmFzZSBpcyBlbmFibGVkIGZvciBQYXlsb2FkLjxCUj48QlI+DQo+IA0KPiAr ICAjICAgVFJVRSAgLSBFbmFibGUgdGFuZGFsb25lIFBDRCBkYXRhYmFzZSBpcyBlbmFibGVkIGZv ciBQYXlsb2FkLjxCUj4NCj4gDQo+ICsgICMgICBGQUxTRSAtIERpc2FibGUgdGFuZGFsb25lIFBD RCBkYXRhYmFzZSBpcyBlbmFibGVkIGZvciBQYXlsb2FkLjxCUj4NCj4gDQo+ICsgICMgQFByb21w dCBFbmFibGUgdGFuZGFsb25lIFBDRCBkYXRhYmFzZSBpcyBlbmFibGVkIGZvciBQYXlsb2FkLg0K PiANCj4gKyAgZ0VmaU1kZVBrZ1Rva2VuU3BhY2VHdWlkLlBjZFN0YW5kYWxvbmVQY2REYXRhYmFz ZUVuYWJsZXxGQUxTRXxCT09MRUFOfDB4MDAwMDAwMmUNCj4gDQo+ICsNCj4gDQo+ICBbUGNkc0Zp eGVkQXRCdWlsZF0NCj4gDQo+ICAgICMjIFN0YXR1cyBjb2RlIHZhbHVlIGZvciBpbmRpY2F0aW5n IGEgd2F0Y2hkb2cgdGltZXIgaGFzIGV4cGlyZWQuDQo+IA0KPiAgICAjIEVGSV9DT01QVVRJTkdf VU5JVF9IT1NUX1BST0NFU1NPUiB8IEVGSV9DVV9IUF9FQ19USU1FUl9FWFBJUkVEDQo+IA0KPiAt LQ0KPiAyLjMwLjAud2luZG93cy4yDQo+IA0KPiANCj4gDQo+IC09LT0tPS09LT0tPQ0KPiBHcm91 cHMuaW8gTGlua3M6IFlvdSByZWNlaXZlIGFsbCBtZXNzYWdlcyBzZW50IHRvIHRoaXMgZ3JvdXAu DQo+IFZpZXcvUmVwbHkgT25saW5lICgjNzU1MDIpOiBodHRwczovL2VkazIuZ3JvdXBzLmlvL2cv ZGV2ZWwvbWVzc2FnZS83NTUwMg0KPiBNdXRlIFRoaXMgVG9waWM6IGh0dHBzOi8vZ3JvdXBzLmlv L210LzgzMDQ2OTM1LzE2NDM0OTYNCj4gR3JvdXAgT3duZXI6IGRldmVsK293bmVyQGVkazIuZ3Jv dXBzLmlvDQo+IFVuc3Vic2NyaWJlOiBodHRwczovL2VkazIuZ3JvdXBzLmlvL2cvZGV2ZWwvdW5z dWIgW21pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tXQ0KPiAtPS09LT0tPS09LT0NCj4gDQoNCg==