From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by mx.groups.io with SMTP id smtpd.web11.6450.1635211753039706930 for ; Mon, 25 Oct 2021 18:29:13 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=ptRiDrhn; spf=pass (domain: intel.com, ip: 134.134.136.65, mailfrom: min.m.xu@intel.com) X-IronPort-AV: E=McAfee;i="6200,9189,10148"; a="229746797" X-IronPort-AV: E=Sophos;i="5.87,181,1631602800"; d="scan'208";a="229746797" Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga103.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 25 Oct 2021 18:29:12 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.87,181,1631602800"; d="scan'208";a="465113949" Received: from orsmsx601.amr.corp.intel.com ([10.22.229.14]) by orsmga002.jf.intel.com with ESMTP; 25 Oct 2021 18:29:12 -0700 Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) by ORSMSX601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Mon, 25 Oct 2021 18:29:11 -0700 Received: from orsmsx607.amr.corp.intel.com (10.22.229.20) by ORSMSX612.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12; Mon, 25 Oct 2021 18:29:11 -0700 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by orsmsx607.amr.corp.intel.com (10.22.229.20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2242.12 via Frontend Transport; Mon, 25 Oct 2021 18:29:11 -0700 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (104.47.58.172) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2242.12; Mon, 25 Oct 2021 18:29:11 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nSmoBfjikcKteRvTaNU5S2Lt4bRZOo9TWca7r7tDDvWnsJjk220q7EdzLRjXl9QbWXpXtLj92p6lOnOlfmf13HAdMX+zGLKIDysByldMetm1mCmKpyHP1L3QnC9xEFqMN/Zv07aXbHTZCQ0frnCRLKksHs+Zf6evm50ZUcfHee56iyeCnfH0NjZhAC3kCIA8Nr9C6TByobcdVH1KbWPuPCjUoZ3GpE04akpktnJ/aU1jau+0q8QV3Lc5EI1+BNRFk010fJzh4RMmO8zV+HLIRJzaum6WqTJlEDPgZVw0UUJxlD2ZdQOaIaAENSrENl1nPy4Z30G1OK/Ew7hCsmNk0w== 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=cDwhy4l9fHJ8I6oaGBl2YHix0+rCZp2/IyIcxM+A7Jg=; b=fRAc1eW/lHeurc93wE1omA/FZVryzaXFsR+OvOQZMJJKP76LP0Im70rGt7xsXzI2WkY6eLmEVs5U0ujJOtJeUaze5hUkrmXejTjM+UnVAFtUytkycU9l1aC39zJFE+r3hGq0oU4adsghcK4zdIWRFEzxffeKqHkK/mzHVs23aorXYFWU+yusI1BLQqapShUKfF2yrkTMozDWHa1oisKmiijL65tTwFSEuJ51WD+U/1h5oOt2B8uPmUBgeNFtIXeANV3hQ2gmFpf4M4/vUWj0Ke11jGRU9Y/tIt25wDaY7R9VnMz6bMdF6cCYcqkUuBofbujw75sKrd7/cKrpL0zRKA== 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=cDwhy4l9fHJ8I6oaGBl2YHix0+rCZp2/IyIcxM+A7Jg=; b=ptRiDrhnIAXG1VGou9VOqf48G+adDmJjs0bN8l1OVMWvz2/FciFkuAXAodcPArvfXWvcq0Xj3lnrHNzlzkMa2hQOdN+Mdqdf9Fbqz8RANeS7I/8GmiFP0D7gccJKLIA1sTh1QDGaMsdToh9CAvTzH3qZpqrJ02m6V5d7mp3bnVs= Received: from PH0PR11MB5064.namprd11.prod.outlook.com (2603:10b6:510:3b::15) by PH0PR11MB5128.namprd11.prod.outlook.com (2603:10b6:510:39::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4628.15; Tue, 26 Oct 2021 01:29:09 +0000 Received: from PH0PR11MB5064.namprd11.prod.outlook.com ([fe80::7deb:6c36:73c2:f0d4]) by PH0PR11MB5064.namprd11.prod.outlook.com ([fe80::7deb:6c36:73c2:f0d4%3]) with mapi id 15.20.4628.022; Tue, 26 Oct 2021 01:29:09 +0000 From: "Min Xu" To: "kraxel@redhat.com" , "devel@edk2.groups.io" CC: Ard Biesheuvel , "Justen, Jordan L" , Brijesh Singh , "Erdem Aktas" , James Bottomley , "Yao, Jiewen" , Tom Lendacky , "Xu, Min M" Subject: Re: [edk2-devel] [PATCH V2 28/28] OvmfPkg: Add LocalApicTimerDxe Thread-Topic: [edk2-devel] [PATCH V2 28/28] OvmfPkg: Add LocalApicTimerDxe Thread-Index: AQHXuZreGhpalTyZpESPGYJme7isl6vPX4KAgBPkfECAAG97AIAA6LSQ Date: Tue, 26 Oct 2021 01:29:09 +0000 Message-ID: References: <20211012130207.zmx2yf5inpkoalqf@sirius.home.kraxel.org> <20211025112750.mytcbe3yawtidj7q@sirius.home.kraxel.org> In-Reply-To: <20211025112750.mytcbe3yawtidj7q@sirius.home.kraxel.org> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.6.200.16 authentication-results: redhat.com; dkim=none (message not signed) header.d=none;redhat.com; dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 263debae-2fa1-4baf-f58e-08d998200240 x-ms-traffictypediagnostic: PH0PR11MB5128: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:3513; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: QMbYS3mrodPS+MyWrrLto/dOBgVsYWl0edP6m6rwjLmqdDCX+9Ok65UKJIdpyjOwLOdbE44YVbk3RlNQ25JQQd6N16O80hmYK6o1LPv1fg2XAmfve87Bpd24EVMblbC5JyWOFcIRBd8EZQ0bqfdWCwqSqlgpjG3KG6yU7IFw08SyGu1vlPjudN+JVENlHb8OBrT+8OBP86v/yZwuSJt/dU+YIwZmf+0VTUmPh6ZLmQLQkZii5Ebsvd/7uCwXhyaiT+cssl3+RYm6tjwM3UPFkCiyQeqF79UWkiua54wFAaaUHVz687rkXxCe29dLHbeQnSQIORnzhA/psPBxpdtVHQuAAQwWpoXGvtxZ/g+eU7RBFtNTq0A5ZKH6IqAeK+eNckRUJ91lbCcrzCehRJON50aAQ+x3LWETP9nTKtTAZVXOcrR2V9e90kkXXvZ3rnAtKcmLpfWRvYHUN1hlBbmd45VsOQv4oNTNUWjRK/F5/+pOAT5RPx0QEt+m7R7vPGuUhQhlVMdbdOOJpwCm3VykcTRciOOF22wNPchfTDRZz0ZsKC0ThCBF1vTEJ3bNPWhRK3zWtlCWHSScJ+uQvXKkz7BL9nWlhCoL/snZ92F7qd+MaAApjQUtuhk/Vh2Is4CkKzfx80X/N7SFD34UjWJgInfzoZyMYGZYhhBNgu0sghLX+XkGGjKPiz9X/bvrJzORrO5twTo613nyBgEZmqzsudPpwgnADm/G6PIdmIiRWZ7eO2EqMM1O41Y5ibt5EUKHevawjdm+Y/Bz4yM+YFjoIf3wJsopx1VVkUK7So+AhJmdOmdvvxb9WH12ch5YdkaP x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH0PR11MB5064.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(366004)(9686003)(186003)(66446008)(55016002)(26005)(82960400001)(4326008)(6506007)(38070700005)(86362001)(64756008)(38100700002)(66476007)(122000001)(66946007)(7696005)(66556008)(83380400001)(76116006)(54906003)(110136005)(52536014)(19627235002)(316002)(8936002)(107886003)(71200400001)(508600001)(5660300002)(966005)(33656002)(2906002)(8676002)(3714002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?STU5RlQrRUl4OUl3QTgwNDQvbzJYUGpPcHFBcDI2SXh0UHYrcVpLMEYyd0E0?= =?utf-8?B?U1dMSnJKWnVaSXVONE5UUGZsZjZaeEdZT0l5M3FuREVUOGkxUXRaK05zd3Iw?= =?utf-8?B?U1Facll0THNzMTltSHRSaDBKeEp0c0NBaERBZnYxTnlFNk1od1Y4UjBsZ1hw?= =?utf-8?B?NUNHb2JaZGRxMGtXS2lmTDdyTEU3Q040ejdheFhBaVQ5TThXUmJnNkJ6VWww?= =?utf-8?B?TmFVSlE1SXNmU0J1VnVYR203d3JqU3VZaXhOeGJFRUl4ajRMNmkwcUlNWUxp?= =?utf-8?B?dDJFMm14eWRQYlJEUkdwYlZ2SGRQZHlMRmRGaVBUVmJJWThFcFpqSW4welhK?= =?utf-8?B?V0p5c3RjcjErcWhMUU1SZEt6M0ZGRDlodVNYQTlFUHdyOTRwNkM5RFh4ZUJL?= =?utf-8?B?YzExR0ZUckFmYnNKKzZ1ZWdlbHF0cFVPVjBPRnE1QzNLQ0Q0SlRXdFNNTXdK?= =?utf-8?B?QUxwZXdHbDd3SFQxbDdWblZOWGJUZjJJY3RLRCtnQVFONEZSUTNYRTlVM21L?= =?utf-8?B?Tjc1cmtJL0xTWjcwSTBlVUtEbUxBMXRhM3JRZVJ2V2hFaFVIdm9nVXNoM0ZJ?= =?utf-8?B?dGkxcGZnc1h3TU9BbnlpdS9IekZ6VjkxUkxKbDNQbFFYTHFXUFE1NVJCc2lK?= =?utf-8?B?TWV2Y1UvSkl5aVdjcGw5T3VWVE1SWDdYUVhTT3dPN1VoUkh0SW1lZTg1T0hw?= =?utf-8?B?ZS9zeEVpdHd1TkRGRk9PYWwzVGlzanhYQlhlVldXNDhRTC9ZbXBmN3RjS2Np?= =?utf-8?B?c2VQNVRiZFZ5Q1FiRk5LdUpyVkxEY2FocVREdkpmWFFtd2lUdE8yM0p3ZXJi?= =?utf-8?B?aUVBZThzYVU5TDlaeWtOMUJnVWFja080cFlvRTBVUVUyTUM1SUF5T05tOVcw?= =?utf-8?B?d2FMMU11SjA0ZjZra09NQmVZNy91Um1XbzVyeFF4ZUxTVnJyeVAwU2FTbDYy?= =?utf-8?B?QkxDcDJNZHBiOEM3bTN1SUNQOUpMa1pFeVIvYWhlZUdFaXJWVzZMcENUakVz?= =?utf-8?B?Qy82R3lWdXpDY0wyNEhmWHRxNXM0VWtVREpIb3M4OWd0dEgxRElYYTZvbWhI?= =?utf-8?B?N00wSUdGWW1FR3BoUmR1QXdpK2MzcEx6ajdxazRGdG5wUDFuSGo1bkNSUGw1?= =?utf-8?B?dENqZUIyNWkyS1ZOR3p6bHZWT1ZwUE16bnJWYUY5dG1GM29NZFo3aldDRTFC?= =?utf-8?B?b0F1MENOY0gvem9KRFZWVGxvYm04Mkg1RzRMSEl2YW9yWVQ2RmdRWk5TOUdI?= =?utf-8?B?RnFEOVhmMWtzV3JxdFJtNWYwU0pCMUdYVXNydkJ0bmdENmE1K2NiOUM3d3pQ?= =?utf-8?B?MFJzdnZXM3NWTDNreEdmWFg3MUx5NkRwYXRadTQ4VXZ2MElVYitqbWZwVmJo?= =?utf-8?B?UUlGSDlVNnhERTVtVlc4NzFpK1JhOElHSk55SXZCN3hxT2RBejFOb3dRSFpl?= =?utf-8?B?R216bGY1ZllaMFNnaHRTbGJuVEFJejVlcmNVYnR3Q3NBSElPNGtGejRKTm42?= =?utf-8?B?L2FTR3dqbjc4QVk0MGR4bU9sRG9WeG9Bamw4bjUrOWJLZUdBcW4zeWpUVUJv?= =?utf-8?B?R0ZMallZb1Jmb1dzM3NNSmVLN294OHg2allCdG9HbHNaOGxBM2FjcnpwYTl4?= =?utf-8?B?c1FoRDcxVEZmVjk4VE5ETGlTNVorQXh5WDVaQVU3WGdnejF1WDdpL0ZmSytM?= =?utf-8?B?QW5OWit3UllycG5Ndy8xbDhKRXdiV3pZdDgvaDlUc3dSWnVFNDBCWWJLWGE1?= =?utf-8?B?UWJMbEtBTEhsM1N1a0NzUEZOSi9ydmJ1bnFoSHZYRUczRnJCcHlyS3RaOXcw?= =?utf-8?B?NUN0MDlSaWlLV0JRcTg3WmJzZW5URUhLWm95SmxuMnlYeEdncGdCMjBIWHla?= =?utf-8?B?ekRITFpCcG5LWVorQS9nRVN1TUdzcytNSnVwcGIwVkJyZVpiaXdCc3RKb1dt?= =?utf-8?B?QnBQcmVnd2tISW1hRUdIVFpvanFNNUk4ZlJuMjdkem9tVG5yakJOZlhaV3dG?= =?utf-8?B?WjM0cG5zNU11R3J0RGZWUHREZW1HRXpROXN2OGtxYVFQS1p3TUdHSzVUWGFv?= =?utf-8?B?NnB4bTF5MGdRZDUzbmVETnhTSjJkMmJRQU1JaStaWTRibGV1ZGNkTUNUUVNT?= =?utf-8?B?bGFoWStwRnFuU0R6bk1aam1CYVJqTHgxY2Q5a1BoQ09EU1pza1hmSWtDOUdk?= =?utf-8?Q?iRa5NrdNftRVn+cgKPQBXaY=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PH0PR11MB5064.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 263debae-2fa1-4baf-f58e-08d998200240 X-MS-Exchange-CrossTenant-originalarrivaltime: 26 Oct 2021 01:29:09.2657 (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: Cb4vsOfrFTZiAYY/0N/e1xvXgiLj42/sf7tCjX5IzEHSjT8IRj1dKY0VAq0taVhIjpQYGIyaW/G8zaM7iyrhzw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB5128 Return-Path: min.m.xu@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 T24gT2N0b2JlciAyNSwgMjAyMSA3OjI4IFBNLCBHZXJkIEhvZmZtYW5uIHdyb3RlOg0KPiBPbiBN b24sIE9jdCAyNSwgMjAyMSBhdCAwNzozNzozM0FNICswMDAwLCBNaW4gWHUgd3JvdGU6DQo+ID4g T24gT2N0b2JlciAxMiwgMjAyMSA5OjAyIFBNLCBHZXJkIEhvZmZtYW5uIHdyb3RlOg0KPiA+ID4g T24gVHVlLCBPY3QgMDUsIDIwMjEgYXQgMTE6Mzk6MzlBTSArMDgwMCwgTWluIFh1IHdyb3RlOg0K PiA+ID4gPiBSRkPvvJogaHR0cHM6Ly9idWd6aWxsYS50aWFub2NvcmUub3JnL3Nob3dfYnVnLmNn aT9pZD0zNDI5DQo+ID4gPiA+DQo+ID4gPiA+IFREWCBndWVzdCBzdXBwb3J0cyBMb2NhbEFwaWNU aW1lci4gQnV0IGluIGN1cnJlbnQgT3ZtZlBrZyB0aGUNCj4gPiA+ID4gc3VwcG9ydGVkIHRpbWVy IGlzIDgyNTRUaW1lckR4ZS4gU28NCj4gPiA+ID4gZ1VlZmlPdm1mUGtnVG9rZW5TcGFjZUd1aWQu UGNkVGltZXJTZWxlY3Rvcg0KPiA+ID4gPiBpcyBpbnRyb2R1Y2VkIHRvIHNlbGVjdCB0aGUgcnVu bmluZyBUaW1lci4gVGhlIFRpbWVyIGRyaXZlciB3aWxsDQo+ID4gPiA+IGNoZWNrIHRoZSBUaW1l clNlbGVjdG9yIGluIGl0cyBlbnRyeSBwb2ludC4gVGhlIGRlZmF1bHQgVGltZXIgaXMgODI1NC4N Cj4gPiA+DQo+ID4gPiBIbW0uDQo+ID4gPg0KPiA+ID4gV2UgYWxyZWFkeSBoYXZlIGEgbG9jYWwg YXBpYyB0aW1lciBpbXBsZW1lbnRhdGlvbiAoWGVuVGltZXJEeGUpLg0KPiA+ID4gV29ya3MgZmlu ZSB3aXRoIGt2bSwgbWljcm92bSBhbHJlYWR5IHVzZXMgdGhhdC4gIFNlZSBjb21taXQNCj4gPiA+ IDc2NjAyZjQ1ZGNkOQ0KPiA+ID4gKCJPdm1mUGtnL01pY3Jvdm06IHVzZSBYZW5UaW1lckR4ZSAo bGFwaWMgdGltZXIpIikuDQo+ID4gPg0KPiA+ID4gU28sIGZpcnN0IEknZCBzdWdnZXN0IHRvIGp1 c3QgdXNlIHRoYXQgKG1heWJlIHJlbmFtZSB0aGUgdGhpbmcgdG8NCj4gPiA+IGF2b2lkIGNvbmZ1 c2lvbiBhcyBpdCBpc24ndCByZWFsbHkgWGVuIHNwZWNpZmljKS4NCj4gPg0KPiA+IFRoYW5rcyBm b3IgcmVtaW5kZXIuIFdlIGNhbiB1c2UgWGVuVGltZXJEeGUgYXMgdGhlIExvY2FsQXBpY1RpbWVy RHhlIGluDQo+IFRkeCBndWVzdC4gVGhlcmUgd2lsbCBiZSBhIHNlcGFyYXRlIHBhdGNoIHRvIHJl bmFtZSBYZW5UaW1lckR4ZSB0bw0KPiBMb2NhbEFwaWNUaW1lckR4ZSBpbiB0aGUgbmV4dCB2ZXJz aW9uLg0KPiANCj4gWW91IGNhbiBhbHNvIHNwbGl0IHRoaXMgb2ZmIGludG8gYSBzZXBhcmF0ZSBw YXRjaCBzZXJpZXMgYXMgaXQgc2hvdWxkbid0IGhhdmUgYW55IHRkeA0KPiBkZXBlbmRlbmN5Lg0K PiANCj4gPiBJIGFtIG5vdCBxdWl0ZSBzdXJlIGlmIHRoZXJlIHdpbGwgYmUgYW55IHNpZGUgZWZm ZWN0IGlmIHdlIHN3aXRjaCBvdm1mDQo+ID4gKFg2NCkgZnJvbSA4MjU0IHRvIGxhcGljIHVuY29u ZGl0aW9uYWxseS4gUXVpY2sgc21va2UgdGVzdCBkb2VzIHNob3cNCj4gPiBubyBvYnZpb3VzIHBy b2JsZW1zIChFREsyIENJIHNob3dzIG5vIGVycm9yIGVpdGhlcikuIEJ1dCBzaW5jZSA4MjU0DQo+ ID4gdGltZXIgaGFzIGFscmVhZHkgYmVlbiB1c2VkIGluIE92bWZQa2dYNjQsIHRoZW4gdGhlcmUg YWx3YXlzIGEgcmVhc29uDQo+ID4gd2h5IDgyNTQgaXMgdXNlZC4NCj4gDQo+IE5vdGUgdGhhdCA4 MjU0VGltZXJEeGUgd2FzIG5vdCB3cml0dGVuIGZvciBPVk1GLCBpdCB3YXMgbW92ZWQgb3ZlciBm cm9tDQo+IFBjQXRDaGlwc2V0UGtnIHRvIE92bWZQa2cgaW4gMjAxOS4gIFByb2JhYmx5IGJlY2F1 c2UgT1ZNRiB3YXMgdGhlIG9ubHkgdXNlcg0KPiBsZWZ0Lg0KPiANCj4gTW9zdCBsaWtlbHkgdGhl IHJlYXNvbiBPVk1GIHVzZWQgODI1NFRpbWVyRHhlIGluaXRpYWxseSB3YXMgdGhhdCBpdCBjb3Vs ZCBqdXN0DQo+IHVzZSB0aGUgZXhpc3RpbmcgZHJpdmVyIGluIFBjQXRDaGlwc2V0UGtnLiAgQW5k IGl0IHNpbXBseSBoYXNuJ3QgYmVlbiBjaGFuZ2VkIGV2ZXIuDQo+IA0KPiBIbW0sIENTTSBzdXBw b3J0IHdhcyBtb3ZlZCBpbiAyMDE5IHRvbywgY2hlY2tpbmcgLi4uDQo+IA0KPiBZZXMsIENTTSBz dXBwb3J0IGRlcGVuZHMgb24gODI1NCAoYW5kIDgyNTkpIGRyaXZlcnMuDQo+IA0KPiA+IEkgYW0g dGhpbmtpbmcgaWYgaXQgaXMgYSBtb3JlIHNlY3VyZSB3YXkgdG8gaW50cm9kdWNlIFBjZFRpbWVy U2VsZWN0b3INCj4gPiAodG8gc2VsZWN0IHRpbWVyIGluIHJ1bi10aW1lKSB0aGlzIHRpbWUuICBX ZSBjYW4gcmV2aXNpdCB0aGlzIHByb3Bvc2FsDQo+ID4gKHN3aXRjaCBvdm1mIGZyb20gODI1NCB0 byBsYXBpYyB1bmNvbmRpdGlvbmFsbHkpIHdoZW4gd2UgYXJlIHByZXR0eQ0KPiA+IHN1cmUgdGhl cmUgaXMgbm8gc2lkZSBlZmZlY3QgaW4gdGhlIGZ1dHVyZS4NCj4gDQo+IEkgc3RpbGwgdGhpbmsg d2UgZG9uJ3QgbmVlZCBhIHJ1bnRpbWUgc3dpdGNoLiAgQ29udGludWUgdXNpbmcgODI1NFRpbWVy RHhlIGZvcg0KPiBDU01fRU5BQkxFPVRSVUUgYnVpbGRzIHNob3VsZCBiZSBlbm91Z2guDQo+IA0K VGhhbmtzIGZvciB5b3VyIGRldGFpbGVkIGV4cGxhbmF0aW9uLiBJIGFncmVlIHdlIGRvbid0IG5l ZWQgYSBydW50aW1lIHN3aXRjaC4gSnVzdCB1c2UgQ1NNX0VOQUJMRT1UUlVFIGluICouZHNjLyou ZmRmIHRvIHN3aXRjaCA4MjU0IGFuZCBsYXBpYyBpbiBidWlsZCB0aW1lLg0KSSB3aWxsIHN1Ym1p dCBhIHNlcGFyYXRlIHBhdGNoIHNlcmllcyBmb3IgdGhpcyBjaGFuZ2UuDQoNClRoZXJlIGFyZSA0 IC5kc2Mgd2hpY2ggaW5jbHVkZSB0aGUgODI1NFRpbWVyLiANCiAtIE92bWZQa2cvQW1kU2V2L0Ft ZFNldlg2NC5kc2MNCiAtIE92bWZQa2cvT3ZtZlBrZ0lhMzIuZHNjDQogLSBPdm1mUGtnL092bWZQ a2dJYTMyWDY0LmRzYw0KIC0gT3ZtZlBrZy9Pdm1mUGtnWDY0LmRzYw0KDQpEbyB5b3UgdGhpbmsg d2Ugc2hvdWxkIGFwcGx5IHRoZSBjaGFuZ2VzIHRvIGFsbCBhYm92ZSA0IC5kc2M/DQoNClRoYW5r cw0KTWluDQo=