From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by mx.groups.io with SMTP id smtpd.web10.3834.1685673781957964759 for ; Thu, 01 Jun 2023 19:43:02 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=Gyeuno3z; spf=pass (domain: intel.com, ip: 192.55.52.136, mailfrom: ray.ni@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1685673781; x=1717209781; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=YgzzALbirlmfHGhz8dTnfTc/OgFsmJkkIaCwSHE/t2g=; b=Gyeuno3zTxxGvwmZSxk+S5/xjaNqCGBEz1bshql0J8HXn3Bc8dNbilGU sPNJeYuLAuaQvuq9/fP0MJQlXyDbkY1CxW18ofSZoXbhB0ciCRE7YSGt4 a0OTg7w37CMIzQz8KincKzDNOpmnHJ9UPreon62Vj8bvtE54l95RgO7a+ qdWZB1IKzF4Bc1KtPq9J7dX3lpJnhPeihrs2hs8Wy1m+Khhu0H+JpTuvz E5u4sBdorhsYjel7rKKw9xdyJu1z89XRFlawMcHkVZaq7QAcDfn+vLC81 cWRNdJAWlLW/Ax76XZy2JyYfeh9w95NlkqRZqnw9jrQ0Y642bydNdhkqp A==; X-IronPort-AV: E=McAfee;i="6600,9927,10728"; a="335363604" X-IronPort-AV: E=Sophos;i="6.00,211,1681196400"; d="scan'208";a="335363604" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Jun 2023 19:43:01 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10728"; a="737351826" X-IronPort-AV: E=Sophos;i="6.00,211,1681196400"; d="scan'208";a="737351826" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by orsmga008.jf.intel.com with ESMTP; 01 Jun 2023 19:43:00 -0700 Received: from fmsmsx612.amr.corp.intel.com (10.18.126.92) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23; Thu, 1 Jun 2023 19:43:00 -0700 Received: from fmsmsx601.amr.corp.intel.com (10.18.126.81) 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.2507.23; Thu, 1 Jun 2023 19:42:59 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.23 via Frontend Transport; Thu, 1 Jun 2023 19:42:59 -0700 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (104.47.55.169) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.23; Thu, 1 Jun 2023 19:42:59 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=N1bFXg1sgou3Uhl7v/04N6TZK7FzvopCYvyjqLjzyiooHs8kky8BDHoZyuKeT+oKk3X8Jbw/Ph73MEFKi7MBSIJIB6SNg4XYTLcZME96hQtovnmY0jqI8Wi9Rk+PHGoc2bo3y9UVVL/ncBnPWwsmtkhCIosITKJvbqN+4BxKVXv+C/PuC95xf4o/bFf91gJihtX9sa19Pgz05JGv5VUf/afEPmHccLj1nf5ONnX4YX7j1RkShYcE/bVMbXhTD84qEnMe9ETwaMGumzwucDNOx5XmMlI3nKLR5nfWuWmqZFswn9e8CD76Yrwyu+d1pLQRn4xxkEiHDJrteQEAOEGFuw== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=YgzzALbirlmfHGhz8dTnfTc/OgFsmJkkIaCwSHE/t2g=; b=oSzQSz1zO1WMVoUWlgsoCAh1QwQo2MHPN7iOs9la2tzJI2tFT4LS52f3Vujg79uCxqUYU0jAv7KjSMm5VxNjVO3D3DIMGIm8k4TBmDkOl9J0nc/Q7/CNiUq7dtRzvtCgvTpYBbY5JqHfIQBJ3NNT1lr+iQVdMMf7qBvJS1NtX/49QBPt8RPXOzEW9qpDR6x9LsnGqgRShyDOladloy0OHdAwQPnYAnpJj5btJ88t04UwjN7JX1dowt53auXmMjd17EAf6u0/CD2vXTpRfEvXLP5PUQM3NIFQQ48kCTokx8WLZdJBcFKMQsq4F/d0sm38uVSvEyynzliYV8+bm+WjKA== 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 Received: from MN6PR11MB8244.namprd11.prod.outlook.com (2603:10b6:208:470::14) by SN7PR11MB6728.namprd11.prod.outlook.com (2603:10b6:806:264::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6433.23; Fri, 2 Jun 2023 02:42:52 +0000 Received: from MN6PR11MB8244.namprd11.prod.outlook.com ([fe80::892b:b8e6:bab7:635d]) by MN6PR11MB8244.namprd11.prod.outlook.com ([fe80::892b:b8e6:bab7:635d%3]) with mapi id 15.20.6455.020; Fri, 2 Jun 2023 02:42:51 +0000 From: "Ni, Ray" To: Michael Kubacki , Oliver Smith-Denny , "devel@edk2.groups.io" , Ard Biesheuvel , "Kinney, Michael D" , "t@taylorbeebe.com" CC: Leif Lindholm , Ard Biesheuvel , Sami Mujawar , Sean Brogan Subject: Re: [edk2-devel] [PATCH v1 1/1] ArmPkg: CpuDxe: Sync GCD Capabilities With Page Table Attributes Thread-Topic: [edk2-devel] [PATCH v1 1/1] ArmPkg: CpuDxe: Sync GCD Capabilities With Page Table Attributes Thread-Index: AQHZfC0tmt84Kz4Iw0uJxJwbRciJaa9FpW0AgAAMpYCAAABugIAAALeAgAABsoCAC30GgIAACn+AgAAATICAAFKgAIAAhgYAgAGmLYCACI5Oe4AA8LkAgADrHJCAGNSOgIAAAoAw Date: Fri, 2 Jun 2023 02:42:51 +0000 Message-ID: References: <20230426000930.5748-1-osde@linux.microsoft.com> <2795ccdc-09e3-1c62-2bb5-ba339c50dd77@linux.microsoft.com> <24ec7030-e384-663c-c8b0-37f3bdc0de59@linux.microsoft.com> <69d3e282-3f6e-2c4c-6e5f-528efc3ce810@linux.microsoft.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: MN6PR11MB8244:EE_|SN7PR11MB6728:EE_ x-ms-office365-filtering-correlation-id: bb048a80-2184-452d-9c78-08db63130f5b x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: aJ9ccxaKl0oNaOUAwIvDTte0BuPqa1/4giW4SgtAm7VrXj5wCTgJj36D7ki36m9fmqceutWXJJ0nPxSxy6+zySb+Wc+VqyeKBP0qTqgT1aRgNNrskdr+SPOTho1XBD0eKRuLMckK5dqqDAVveGfEBQTe+hceI/XKrFEBSM/Z4Q+GJwfcqOucnUYoPL0ezlgOOA504HcfrXafaOj5lfnzLWFc8lTrVTavYJt6QjFARH0zmtxQvlmmmgIuu1NkAhHTYXtkxftan+q44VoDg4ZRUE6TC3eIBbmO1aD+r1Wb0WmoLdLQAZOCsPkJxLeMnGeUIJ/9Dj0ciUotdIUCil82skuPTQ+ulUuWw4ljDQIvEVeTgqtTCmWWrNtZYp1HD6BCc08e7t7e4jfql3wil5uTxTryQ58v7XwanpYw8NaG4AtiqyrqDJMtPeZnMJCEYGLY+5V0mHnr/P5glhdzYhc0ZFksHCBE6UnZHwWoUxmAwWsaefO8YUM0S5VfKG0ezX4A18hXdDcR2N5kgHoSKkc7tmQU4eJZbYaJktso2ASokq5NBXCaSHzaYHTT+HMbQU7rtTU1NycUUut+9JmkpLWwOtLPwyfM3TgmnCD0E4RWKreJOR7RBg5uhnU+aTlPpfW7TYvtwE3kcyd3dGqkHPQ3PiRcHfrbDF7Pkma9UW1iL3U= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN6PR11MB8244.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(39860400002)(396003)(346002)(136003)(376002)(366004)(84040400005)(451199021)(66899021)(71200400001)(110136005)(8936002)(478600001)(54906003)(122000001)(66446008)(52536014)(2906002)(33656002)(86362001)(38070700005)(5660300002)(8676002)(64756008)(66476007)(4326008)(45080400002)(66946007)(82960400001)(76116006)(66556008)(316002)(55016003)(38100700002)(41300700001)(966005)(186003)(53546011)(26005)(9686003)(6506007)(7696005)(83380400001)(781001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?a0dtUGJUOXE3ZUVtNS8yUExkeG0rZ1BvSG5QWFdQcU1YelRRcFRxUzU2Mmhw?= =?utf-8?B?a3NmVnFSWTVidVRsdmdCQ2tscHI4OWlUSTJUeEhJK2E4aTh4NDB3Y1BHM0pr?= =?utf-8?B?dGJGWWc4RTdNb1A4RWtWRWpIbG5BOU9WU0JJMHFMVERzaVZReW9nT2NYUTZq?= =?utf-8?B?bk8zVVZUWUpoYkVOaXZEVVhWZXI2Z1ZMSWN1RmppbkNNTWNWYThuL0Jjd3pW?= =?utf-8?B?bDlLR29acDNEWmhjMTloekRKWENkMm1TTmJpcGJqaWxselhXTzJmRnI4TEVU?= =?utf-8?B?WkFVUE9oQ1pRQUVzZkxXdzhORkY2WVc3bk96Ry9QdkhnZmh5TmxlTXVWNUdN?= =?utf-8?B?azZtVDVkTzFZTkpvM1J0UmM0S1ptdjUvdXZId3dwZDhiQ2FJcGdqcHU0VWRO?= =?utf-8?B?TktrRzFmcFRZNk9uS1FFVjloWFRlVHUzL3JLOTdIRlp0SjlReGNHRlRPR1Fh?= =?utf-8?B?LzZoRElPVjh5a3lwcWU4Smw2UGY5QjcrcnRZL0oxK29icTg1UmlINWRKa1dx?= =?utf-8?B?WFZnYXZRN1M0dk1Kek80ODFJY2x6QlRXSHd1QUdScGlRZ3lteUpyeEEzd2ZS?= =?utf-8?B?UWFpaFNnaUJFNWgwdC9uZzF6RjM0NVhrWmR5Uml3YjB2T2l6NnQ2MnRwWEI5?= =?utf-8?B?cUdDL0JNM204bDJaaDlDVWJFWXlqTjl6TjJmR3paWW4xcmVaQUZ4WFJETCtN?= =?utf-8?B?S3Z5ZjhYM2ljK0NaMU9iVEE1WkwrZjUwS25lMzNQZ3dMQ1o0eHA4OExONVNq?= =?utf-8?B?Z282QmZtTzc4VGd4ZFZvSmhrVWFTeW5TRmFSSHNEY2ZDWi9lT3lHN09nRXJX?= =?utf-8?B?aisvbXVVUE5tVXBudG5BNnVlVHA3cFJ5eEpMZG1WdEk5d1QveFlocVJVbU1R?= =?utf-8?B?MWl3T3F3YnA2TkZDNEQrdHRjVWdOZDlUdHpjTzd0UXZWYXdEWUd1c2ZxOU5S?= =?utf-8?B?aDZNa242M09EcS9SWGRveFVjOWZHMUIrRTVkd0lFdkxyNlhKMDhYMXRMMFUw?= =?utf-8?B?VTBXRnYzT05hdDV3V3lsY0ZFbTZhYmxwU2gyRm83dzQxeEJ0NlVjVkZpNmR6?= =?utf-8?B?NEhUUDBuVGhKTjNHdFBXNHRzQmlINTVDY1krYXZEUVVIVTNYTzBWbGdlV0xz?= =?utf-8?B?QXJjSHJUNHUvVm83Umo0d0pIbzJTMDRjd2praHc2SEVIb0txVDAyNWpFRWZQ?= =?utf-8?B?ZTFIUzdsMTAwVnV3czJsY0hrNjhlNktMVC9HK1ZIWHV1VitKejY1dzVNaDZB?= =?utf-8?B?N2N4dURyYksvZHFFSkxGMnpVVkNIdlI4SnRodkExck4ybWlXNjVnNGNkM2NC?= =?utf-8?B?U0JQQ1dBaVA2aVl1UFkxTW9iQWxpa2xTTzZoRXFncmdsbDRJZmdzMzN2YVVR?= =?utf-8?B?NUpSMXZtM0dKU3o0NXI1UFMzM1V5d213RGk2RW1mYjNLWEJJU2xlWFpCbzlx?= =?utf-8?B?cXNBOUZMMHo3TjVtdk95enJtOERCNjd1NldnNy90b09RZjRTbVVhN2JwVHF3?= =?utf-8?B?UFhDdEppMWhnUkZISDVZbVBkYzZoK1JxNTZNYXdtZHlGN1kzSkMwZVp3WXpF?= =?utf-8?B?ditJRnl4QWhqUWpFTThPL1MyOTIvdUc1cGRpYkQxN1A3TTRJb3VtTlVHZ01P?= =?utf-8?B?L0Z5QU5yUFhYNUovNDJtSjNUNzIyOThDNHVPZFNqRHFxSzBDNWtSejBwc3Iz?= =?utf-8?B?bFY1aTA3U2tiR1hXajl2SDl0S0hhbmQyMzhDWFljWi9yZXhsbW5FdWpCRDFE?= =?utf-8?B?NFprOHBFU1pWNGN6TDVJN0xZU1NFNTBxUzFOU3Q5cCsxbzZSS3dyWkcvOGk1?= =?utf-8?B?cmJMczFWeTRBaXpSNWRmODA4dFlvSUxHUE1EYkZwbnNmK2txM0dSVkdoTXlr?= =?utf-8?B?RmZaQzJtd0d5TFBxeDNTWURGS1V0QkNWNnV0V2JnZDFsZE9heEdnREIyVE1j?= =?utf-8?B?WUptS1l0bVBwVEs3ZUx4alBmeSs2SUlvTkd0NW9nS1J1VXB6aHdrSUJoVWRZ?= =?utf-8?B?ZmxoOHo0eGZuK0RzaWpNYnI2TTlWa1lmNldEdUhWWmhsUzlSdjhJRGFNWHVi?= =?utf-8?B?NkpyMFRPdVBiYzRnRHBjQmVubktnWE5kMWFQUlBEOEI0NitZRkNVRGhqT0Jo?= =?utf-8?Q?U/Wo=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MN6PR11MB8244.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: bb048a80-2184-452d-9c78-08db63130f5b X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Jun 2023 02:42:51.5739 (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: WnFdHoO1nwKLQBPap/XcPdtjwEfRHJ7Pl06QSxCc8sVVlj+Sp27ZtUWlrwmjnQtQDn/81EsoVImAmWpcfQNaPw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR11MB6728 Return-Path: ray.ni@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SXQncyBhIGdvb2QgaWRlYSB0byBoYXZlIGEgZm9jdXMgYXJlYSAoInByb2plY3QiKSBmb3IgZXZl cnlvbmUgd29ya2luZyB0b2dldGhlciBvbiB0aGUgc2FtZSBwcm9ibGVtLg0KSSBzZWUgdGhlIGJl bmVmaXQgb2YgaGF2aW5nICJwcm9qZWN0IiBpcyB0byBhbGlnbiBldmVyeW9uZSdzIHByaW9yaXR5 IHNvIHRoZSAicHJvamVjdCIgY2FuIGJlIGRvbmUgd2l0aGluIGEgY2VydGFpbiBkZWFkbGluZS4N Cg0KTGV0J3MgdGFsayBtb3JlIGFib3V0IGZvbGxvd2luZyBpdGVtcyBpbiBuZXh0IG1lZXRpbmc6 DQoxLiBBbGlnbm1lbnQgb2YgdGhlIHByb2JsZW0gdG8gc29sdmUNCjIuIEFsaWdubWVudCBvZiB0 aGUgcHJpb3JpdHkNCg0KSSBhbSBhdmFpbGFibGUgYXQgMTBwbX4xMXBtIChHTVQrOCkgbmV4dCBX ZWRuZXNkYXkgbmlnaHQuDQoNClRoYW5rcywNClJheQ0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2Fn ZS0tLS0tDQo+IEZyb206IE1pY2hhZWwgS3ViYWNraSA8bWlrdWJhY2tAbGludXgubWljcm9zb2Z0 LmNvbT4NCj4gU2VudDogRnJpZGF5LCBKdW5lIDIsIDIwMjMgMTA6MjQgQU0NCj4gVG86IE5pLCBS YXkgPHJheS5uaUBpbnRlbC5jb20+OyBPbGl2ZXIgU21pdGgtRGVubnkgPG9zZGVAbGludXgubWlj cm9zb2Z0LmNvbT47DQo+IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBBcmQgQmllc2hldXZlbCA8YXJk YkBrZXJuZWwub3JnPjsgS2lubmV5LCBNaWNoYWVsIEQNCj4gPG1pY2hhZWwuZC5raW5uZXlAaW50 ZWwuY29tPjsgdEB0YXlsb3JiZWViZS5jb20NCj4gQ2M6IExlaWYgTGluZGhvbG0gPHF1aWNfbGxp bmRob2xAcXVpY2luYy5jb20+OyBBcmQgQmllc2hldXZlbA0KPiA8YXJkYit0aWFub2NvcmVAa2Vy bmVsLm9yZz47IFNhbWkgTXVqYXdhciA8c2FtaS5tdWphd2FyQGFybS5jb20+OyBTZWFuDQo+IEJy b2dhbiA8c2Vhbi5icm9nYW5AbWljcm9zb2Z0LmNvbT4NCj4gU3ViamVjdDogUmU6IFtlZGsyLWRl dmVsXSBbUEFUQ0ggdjEgMS8xXSBBcm1Qa2c6IENwdUR4ZTogU3luYyBHQ0QgQ2FwYWJpbGl0aWVz DQo+IFdpdGggUGFnZSBUYWJsZSBBdHRyaWJ1dGVzDQo+IA0KPiBIaSBSYXksDQo+IA0KPiBXZSBm b3VuZCB0aGUgbGFzdCBtZWV0aW5nIHRvIGJlIHZlcnkgaGVscGZ1bC4gQ2FuIHlvdSBwbGVhc2Ug c2V0IHVwIGFuDQo+IGFnZW5kYSBmb3IgYW4gdXBjb21pbmcgbWVldGluZyB0byBkaXNjdXNzIHdo YXQncyBoYXBwZW5lZCBzaW5jZSBhbmQgbmV4dA0KPiBzdGVwcz8NCj4gDQo+IElmIHlvdSdyZSBh dmFpbGFibGUsIHBlcmhhcHMgd2UgY291bGQgc2VlIGlmIFdlZG5lc2RheSBuZXh0IHdlZWsgYXQg dGhlDQo+IHNhbWUgdGltZSB3b3VsZCB3b3JrPw0KPiANCj4gV2UnZCBhbHNvIGxpa2UgdG8gc2hh cmUgaG93IEdpdEh1YiBQcm9qZWN0cyBbMV0gY2FuIGJlIHVzZWQgdG8gdHJhY2sNCj4gZnV0dXJl IHdvcmsgaW4gdGhlIG1lbW9yeSBwcm90ZWN0aW9uIHdvcmsgc3RyZWFtLiBXZSd2ZSB0YWxrZWQg YWJvdXQNCj4gUHJvamVjdHMgZm9yIGEgd2hpbGUgaW4gdGhlIFRpYW5vQ29yZSBUb29scyAmIENJ IHdvcmtpbmcgZ3JvdXAgYW5kIHRoaXMNCj4gbG9va3MgbGlrZSBhIGdyZWF0IG9wcG9ydHVuaXR5 IHRvIHRyeSBpdCBvdXQuIEEgcHVibGljIHByb2plY3QgaGFzIGJlZW4NCj4gY3JlYXRlZCBpbiB0 aGUgVGlhbm9Db3JlIG9yZyBbMl0uIEkndmUgcGxhY2VkIHNvbWUgaW5pdGlhbCBoaWdoLWxldmVs DQo+IHBpbGxhcnMgaW4gdGhlIHByb2plY3QgYXQgdGhlIG1vbWVudC4NCj4gDQo+IFByb2plY3Rz IGNhbiBoZWxwIGJyZWFrIGRvd24gbGFyZ2VyIGNvbXBsZXggaXRlbXMgYW5kIHNob3cgaG93IHRo ZQ0KPiBwaWVjZXMgZml0IHRvZ2V0aGVyIGluIGEgc2luZ2xlIHBsYWNlLiBJdCBoZWxwcyB2aXN1 YWxpemUgd2hvIGlzIHdvcmtpbmcNCj4gb24gd2hhdCwgd2hlbiB0aGV5IHJvdWdobHkgZXhwZWN0 IHRvIGNvbXBsZXRlIGl0LCBhbmQgd2hhdCBwaWxsYXJzIG9mDQo+IG1lbW9yeSBwcm90ZWN0aW9u IHdvcmsgc3VjaCBhcyBjb21wYXRpYmlsaXR5LCB0ZXN0aW5nLCBldGMuIGFyZSBkZWZpbmVkDQo+ IGFuZCBob3cgd2UncmUgbWFraW5nIHByb2dyZXNzIHRvd2FyZCB0aGVtLiBJbiB0aGlzIG1lZXRp bmcsIHdlJ2QgbGlrZSB0bw0KPiBkaXNjdXNzIGhvdyB3ZSBjYW4gbW9zdCBlZmZlY3RpdmVseSB1 c2UgaXQgdG8gY29sbGFib3JhdGUgaW4gdXBjb21pbmcNCj4gd29yayBhcmVhcy4NCj4gDQo+IEl0 IGlzIG5vdCBtZWFudCB0byByZXBsYWNlIHRoZSBtYWlsaW5nIGxpc3QgZm9yIGNvbW11bmljYXRp b24gb3IgY2hhbmdlDQo+IGNvZGUgcmV2aWV3IHByb2Nlc3MgYnV0IHRvIG9yZ2FuaXplIGFuZCB2 aXN1YWxpemUgYWdyZWVkIHVwb24gbWVtb3J5DQo+IHByb3RlY3Rpb24gd29yayBpdGVtcy4gSWRl YWxseSwgdGhpcyB3aWxsIGhlbHAgdHJhY2sgdGhhdCB0aGUgYXJlYXMgYXJlDQo+IGNvdmVyZWQg d2UgZXhwZWN0LCBzaW1wbGlmeSBwbGFubmluZyB0byBpbnRlcmNlcHQgdGhlIGNoYW5nZXMgaW4N Cj4gcGxhdGZvcm1zLCBzaG93IGhvdyB3b3JrIGl0ZW1zIGFyZSBjb25uZWN0ZWQsIGFuZCBlbmFi bGUgbmV3DQo+IGNvbnRyaWJ1dG9ycyB0byBxdWlja2x5IHNlZSBob3cgdGhleSBjYW4gY29udHJp YnV0ZS4NCj4gDQo+IFsxXSAtDQo+IGh0dHBzOi8vZG9jcy5naXRodWIuY29tL2VuL2lzc3Vlcy9w bGFubmluZy1hbmQtdHJhY2tpbmctd2l0aC1wcm9qZWN0cy9sZWFybmluZy0NCj4gYWJvdXQtcHJv amVjdHMvYWJvdXQtcHJvamVjdHMNCj4gWzJdIC0gaHR0cHM6Ly9naXRodWIuY29tL29yZ3MvdGlh bm9jb3JlL3Byb2plY3RzLzMNCj4gDQo+IFRoYW5rcywNCj4gTWljaGFlbA0KPiANCj4gT24gNS8x Ny8yMDIzIDM6MTQgQU0sIE5pLCBSYXkgd3JvdGU6DQo+ID4gSSBjcmVhdGVkIG9uZSBldmVudCBp biBodHRwczovL2VkazIuZ3JvdXBzLmlvL2cvZGV2ZWwvY2FsZW5kYXIuDQo+ID4NCj4gPiBNaWNy b3NvZnQgVGVhbXMgbWVldGluZyBsaW5rOiBodHRwczovL3RlYW1zLm1pY3Jvc29mdC5jb20vbC9t ZWV0dXAtDQo+IGpvaW4vMTklM2FtZWV0aW5nX1lUazRaRFUzWWpJdE9Ea3haQzAwTVRkbUxUbGta bVV0WVRoa05HUTBaV1l5TURaDQo+IGglNDB0aHJlYWQudjIvMD9jb250ZXh0PSU3YiUyMlRpZCUy MiUzYSUyMjQ2Yzk4ZDg4LWUzNDQtNGVkNC04NDk2LQ0KPiA0ZWQ3NzEyZTI1NWQlMjIlMmMlMjJP aWQlMjIlM2ElMjI1NWQzNmE1MC03OGJlLTRjZWQtYmMyNy0NCj4gM2QwNmM1NzZjYzE5JTIyJTdk DQo+ID4NCj4gPiBUaGUgSUNTIGZpbGUgaXMgYWxzbyBhdHRhY2hlZC4NCj4gPg0KPiA+DQo+ID4+ IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4+IEZyb206IE9saXZlciBTbWl0aC1EZW5u eSA8b3NkZUBsaW51eC5taWNyb3NvZnQuY29tPg0KPiA+PiBTZW50OiBXZWRuZXNkYXksIE1heSAx NywgMjAyMyAxOjEyIEFNDQo+ID4+IFRvOiBOaSwgUmF5IDxyYXkubmlAaW50ZWwuY29tPjsgZGV2 ZWxAZWRrMi5ncm91cHMuaW87IEFyZCBCaWVzaGV1dmVsDQo+ID4+IDxhcmRiQGtlcm5lbC5vcmc+ OyBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+Ow0KPiA+PiB0 QHRheWxvcmJlZWJlLmNvbQ0KPiA+PiBDYzogTGVpZiBMaW5kaG9sbSA8cXVpY19sbGluZGhvbEBx dWljaW5jLmNvbT47IEFyZCBCaWVzaGV1dmVsDQo+ID4+IDxhcmRiK3RpYW5vY29yZUBrZXJuZWwu b3JnPjsgU2FtaSBNdWphd2FyIDxzYW1pLm11amF3YXJAYXJtLmNvbT47DQo+ID4+IE1pY2hhZWwg S3ViYWNraSA8bWlrdWJhY2tAbGludXgubWljcm9zb2Z0LmNvbT47IFNlYW4gQnJvZ2FuDQo+ID4+ IDxzZWFuLmJyb2dhbkBtaWNyb3NvZnQuY29tPg0KPiA+PiBTdWJqZWN0OiBSZTogW2VkazItZGV2 ZWxdIFtQQVRDSCB2MSAxLzFdIEFybVBrZzogQ3B1RHhlOiBTeW5jIEdDRA0KPiBDYXBhYmlsaXRp ZXMNCj4gPj4gV2l0aCBQYWdlIFRhYmxlIEF0dHJpYnV0ZXMNCj4gPj4NCj4gPj4gSGkgUmF5LA0K PiA+Pg0KPiA+PiBUaGF0IHdvcmtzIGZyb20gb3VyIHNpZGUsIHRoYW5rcyBmb3Igc2V0dGluZyB1 cCB0aGUgbWVldGluZyENCj4gPj4NCj4gPj4gT2xpdmVyDQo+ID4+DQo+ID4+IE9uIDUvMTUvMjAy MyA3OjUzIFBNLCBOaSwgUmF5IHdyb3RlOg0KPiA+Pj4gQWxsLA0KPiA+Pj4gQ2FuIHlvdSBjaGVj ayBpZiB0aGUgbWVldGluZyB0aW1lIGlzIG9rIGZvciB5b3U/DQo+ID4+Pg0KPiA+Pj4gSXQgd2ls bCBiZSBpbiB0aGlzIHdlZWs6DQo+ID4+PiAqIFBEVCBXZWRuZXNkYXkgMDc6MDANCj4gPj4+ICog UGFyaXMgV2VkbmVzZGF5IDE2OjAwDQo+ID4+PiAqIFNoYW5naGFpIFdlZG5lc2RheSAyMjowMA0K PiA+Pj4NCj4gPj4+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18NCj4g Pj4+IEZyb206IGRldmVsQGVkazIuZ3JvdXBzLmlvIDxkZXZlbEBlZGsyLmdyb3Vwcy5pbz4gb24g YmVoYWxmIG9mIFRheWxvcg0KPiBCZWViZQ0KPiA+PiA8dEB0YXlsb3JiZWViZS5jb20+DQo+ID4+ PiBTZW50OiBUaHVyc2RheSwgTWF5IDExLCAyMDIzIDA6MTANCj4gPj4+IFRvOiBkZXZlbEBlZGsy Lmdyb3Vwcy5pbzsgb3NkZUBsaW51eC5taWNyb3NvZnQuY29tOyBBcmQgQmllc2hldXZlbDsNCj4g S2lubmV5LA0KPiA+PiBNaWNoYWVsIEQNCj4gPj4+IENjOiBOaSwgUmF5OyBMZWlmIExpbmRob2xt OyBBcmQgQmllc2hldXZlbDsgU2FtaSBNdWphd2FyOyBNaWNoYWVsIEt1YmFja2k7DQo+ID4+IFNl YW4gQnJvZ2FuDQo+ID4+PiBTdWJqZWN0OiBSZTogW2VkazItZGV2ZWxdIFtQQVRDSCB2MSAxLzFd IEFybVBrZzogQ3B1RHhlOiBTeW5jIEdDRA0KPiA+PiBDYXBhYmlsaXRpZXMgV2l0aCBQYWdlIFRh YmxlIEF0dHJpYnV0ZXMNCj4gPj4+DQo+ID4+PiBDYW4gd2Ugc2NoZWR1bGUgdGhlIG1lZXRpbmcg Zm9yIFdlZG5lc2RheSA1LzE3PyBJIHdpbGwgYmUgb3V0IHRoZQ0KPiA+Pj4gZm9sbG93aW5nIHdl ZWsgYW5kIHdvdWxkIGxpa2UgdG8gYXR0ZW5kLg0KPiA+Pj4NCj4gPj4+IFRoYW5rcyA6KQ0KPiA+ Pj4NCj4gPj4+IE9uIDUvOS8yMDIzIDc6NTkgQU0sIE9saXZlciBTbWl0aC1EZW5ueSB3cm90ZToN Cj4gPj4+PiBPbiA1LzgvMjAyMyAxMTo1OSBQTSwgQXJkIEJpZXNoZXV2ZWwgd3JvdGU6DQo+ID4+ Pj4+IE9uIFR1ZSwgOSBNYXkgMjAyMyBhdCAwNDowNCwgS2lubmV5LCBNaWNoYWVsIEQNCj4gPj4+ Pj4gPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPiB3cm90ZToNCj4gPj4+Pj4+DQo+ID4+Pj4+ PiBJIHdvdWxkIHByZWZlciBuZXh0IHdlZWsgYXMgd2VsbC4NCj4gPj4+Pj4+DQo+ID4+Pj4+PiBN aWtlDQo+ID4+Pj4+Pg0KPiA+Pj4+Pg0KPiA+Pj4+PiBOZXh0IHdlZWssIGkgY2FuIG9ubHkgZG8g V2VkbmVzZGF5LiBUaGUgd2VlayBhZnRlciAoMjItMjYpLCB0aGUgdGltZQ0KPiA+Pj4+PiBzbG90 IHdvcmtzIGZvciBtZSBvbiBhbnkgZGF5IG9mIHRoZSB3ZWVrLg0KPiA+Pj4+Pg0KPiA+Pj4+DQo+ ID4+Pj4gV2VkcyB3b3JrcyBmcm9tIG91ciBzaWRlLCB0aGUgd2VlayBhZnRlciBhbHNvIHdvcmtz IHBlcmZlY3RseSB3ZWxsDQo+ID4+Pj4gYW55IGRheS4gVGhhbmtzIGZvciB0aGUgZmxleGliaWxp dHkgYW5kIHdpbGxpbmduZXNzIHRvIG1lZXQuDQo+ID4+Pj4NCj4gPj4+PiBGb3IgcmVmZXJlbmNl IGZvciB0aGlzIHNwZWNpZmljIHBhdGNoLCB0aGlzIGJ6IG1heSBoZWxwIGNhY2hlIGluDQo+ID4+ Pj4gc29tZSBpbmZvOiBodHRwczovL2J1Z3ppbGxhLnRpYW5vY29yZS5vcmcvc2hvd19idWcuY2dp P2lkPTc1My4gVGhlDQo+ID4+Pj4gbWFpbCBsaW5rcyBhcmUgbGFyZ2VseSBkZWFkLCBvZiBjb3Vy c2UsIGJ1dCBjYW4gYmUgZm91bmQgb24gb3RoZXINCj4gPj4+PiBtYWlsaW5nIGxpc3QgcmV0ZW50 aW9uIHNpdGVzIChtYXliZSBpbiB0aGUgZnV0dXJlIHdlIHdpbGwgaGF2ZSBQUnMNCj4gPj4+PiBh bmQgZGlzY3Vzc2lvbnMgdG8gcmVmZXJlbmNlIDopLg0KPiA+Pj4+DQo+ID4+Pj4gVGhhbmtzLA0K PiA+Pj4+IE9saXZlcg0KPiA+Pj4+DQo+ID4+Pj4NCj4gPj4+Pg0KPiA+Pj4+DQo+ID4+Pj4NCj4g Pj4+DQo+ID4+Pg0KPiA+Pj4NCj4gPj4+IA0KPiA+Pj4NCj4gPj4+DQo=