From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by mx.groups.io with SMTP id smtpd.web12.2962.1639110170283407040 for ; Thu, 09 Dec 2021 20:22:50 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.com header.s=intel header.b=YqcSajqu; spf=pass (domain: intel.com, ip: 134.134.136.100, mailfrom: michael.d.kinney@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1639110170; x=1670646170; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=mg3BcwKCbDUE7fsYXpfLf3s3ZbWs6JrBZO9eue/Ze+8=; b=YqcSajqurMJt1HAG6pOcnatk1xAFFkkF/W/9Jrtws4bzo7oEYu3OoPbq LPiiz9LDno3Q+Q0nPLN8/AYIkhbT0aCp75clxKQ+bll0mnNSybphYC8pL Q9OEJiYb4h/5zjs5WgxMzkzcqsZQU4XWa4BNbbU3Lz56LbE4h4MFcHohj ko16TYsVf65lJmL9NY7Q8x5q3977faKqPaDjEjm12SCz9zhbUKvEhCZeT J1hIyoeXn8tOXzYeA3UlmHABL6+NNQctR1spgH1W8WHKvZ+G1xfI9dPSX 8yYI/aPBrdSeh5EKhSqv1Pk5YPXiH5Q8rPODMOY5c1rQcO0Nr4xv/tlxg A==; X-IronPort-AV: E=McAfee;i="6200,9189,10193"; a="301653927" X-IronPort-AV: E=Sophos;i="5.88,194,1635231600"; d="scan'208";a="301653927" Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Dec 2021 20:22:49 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.88,194,1635231600"; d="scan'208";a="753010680" Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by fmsmga005.fm.intel.com with ESMTP; 09 Dec 2021 20:22:48 -0800 Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) by ORSMSX602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20; Thu, 9 Dec 2021 20:22:48 -0800 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by ORSMSX611.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20; Thu, 9 Dec 2021 20:22:47 -0800 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx610.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.20 via Frontend Transport; Thu, 9 Dec 2021 20:22:47 -0800 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.177) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2308.20; Thu, 9 Dec 2021 20:22:23 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=oCm4a5pUXeBDlECI1Lh1ofMCXJyMLjUxV2HAqQ2jI7uyclP1pil4e8yXX2I5VH1FVZCm6m1EpN+czgCw3oDyVGgPQH1HjxTZKsl6/G9WvPI9FauuYpfOJ4dFN6Ox4oc/qyu1c6IQxDhjqzZQ+pmt/tUyAL0pOSljWg0NJcd2nCcbIVqSoc0Mu+lV+i3HNzRBSCczdRd+iFAPt4jEJIWUdrKv4OwL79/t9i3eXBzjSCCvrJwS0VHIfvEjqKdekqbAOIgp1B5esJSnovtmPngKqo7nstluuo5SDwO26IM+0RBUdijl1LWYBpT80pzWqaMGTjTesk0BMF9CvzGumlUsRQ== 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=mg3BcwKCbDUE7fsYXpfLf3s3ZbWs6JrBZO9eue/Ze+8=; b=Wn7O7EubE3wHv82hMSxibDzaOqRRXaVLC3snzCVc/cY3nSmXHRzK+imA2Qb4/UQerqpw+CLzZ2tUNbq5WS/Me7VzBKw/074OjHhEQAwxZopWRl37+4rWH2xNuWSCIO0VM7fRGSpb4AYVpE6nr8AgRMVCb1vyKPnmFw7CylviSadRFk55HYYHpWbt/+dZv7/XOEh3OfuQ9rgZTrsNEjtjX/4lgNjP20dgj92jxiz5eVgyzWpamrVreOR2eOONhnlC7kXFnVdBPKTToU42d/SPJnBu3PL4YKvAY0aRLSPlOH9wOJ80fAw285x5Iw36Lv9ppm6n32524gc9mL15f67QvA== 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=mg3BcwKCbDUE7fsYXpfLf3s3ZbWs6JrBZO9eue/Ze+8=; b=BO9Fq9yXr8n+sWT8O2WX0dsj7Azz5Pz/NlVl1l0qPHMatdcR4KzE8xPRyPOKW06BuNL41BCeZrDadS2GYInY/zSvF1KS2bdd/463Oa5wnmwqEs7wg8cmLqpjKRsbCYjIq+3BTYQGdOVVAy8NkFbZXDHg1iVhqM3caW/dGz0o7m0= Received: from CO1PR11MB4929.namprd11.prod.outlook.com (2603:10b6:303:6d::19) by CO1PR11MB4948.namprd11.prod.outlook.com (2603:10b6:303:9b::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4755.14; Fri, 10 Dec 2021 04:22:22 +0000 Received: from CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::69f8:2c79:e2cc:540b]) by CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::69f8:2c79:e2cc:540b%6]) with mapi id 15.20.4778.015; Fri, 10 Dec 2021 04:22:22 +0000 From: "Michael D Kinney" To: "michael.kubacki@outlook.com" , "devel@edk2.groups.io" , "Kinney, Michael D" CC: Andrew Fish , Leif Lindholm , "Liming Gao" Subject: Re: [edk2-wiki][PATCH v1 1/1] Add more details to EDK II Code Formatting (Uncrustify) Thread-Topic: [edk2-wiki][PATCH v1 1/1] Add more details to EDK II Code Formatting (Uncrustify) Thread-Index: AQHX7WntVNVZ/PbYwUe2NFUvj7/rFKwrHz9Q Date: Fri, 10 Dec 2021 04:22:22 +0000 Message-ID: References: In-Reply-To: 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: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 07a265c5-b82e-4486-1c2e-08d9bb94a9bb x-ms-traffictypediagnostic: CO1PR11MB4948:EE_ x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8882; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: VDv9nHlqrh/IpYnv6ObGb4JWXAD/hsa/17N/lZGpuESR2bMHr/zR/VB4BnkDPVGvP50+qm8jSNx+Quo+LXcoReIQRMSOZoPCY07NmRAOSoKsbqhSBAD6AhwGPzCwi+1sxPEmRqFgTSOcynb4vwcbT8pxcJ2r6QO4JvPP90yQoI24up5P9r/H9odibEWV33cRypT56lFiAZAJqphTxYkeJm0VHFyQFSxZtozqdxof19at16ll263Yu0WIjpbqSDM5+BbJeLeBYYlt2/OkIlvlNlk1tViE9QsJAQpO8QIpzp8ouVCRPIu1nFvtZ3a3PWW4ok7s58VU3dWbGBw0X5muOzI3XKF4AKA4OaytwCZGSoTDZ/dOL56y0MdxBxs2hwlCvcopjEzbzqG+fbpErE9hwTVajBL2EjEs4mmBSuw2tx68ME5ImJ59X1gxf3+mRYR8UCSaa3O+X8kIY5I9UWj4pS4kN7dy3dofeyAu5C9ujVrdqQjA0FzmUfbdcEBAE5Q86e8BOBtlaq8lzlH83t/ub4HY+lxb2R/sedYsv7dosKXVeJZNQ+x3imkCtyskjSFdXU1Y7mE0uuNa9yJ1GDDJkdNT68CN8oIHfxERKWVQHO26sZOR120wahxRkINKgCmTGqv3r8wfE/INNHe3GPh162PvXfD0Pc7+FTVsq6cO6lHEk1bJqdBLHy3ofpc/QPbxPVwvUxLcSaaf5HmeRd0IZOEyktD/4+wt/DJ+lGQPKlbLbI3iE3g4W1GyCZtBvBBGS2wa2PwllaptoL9IsYSEDHitRO7OnkrA/BBu5yylGqTOh3iDgbCvaLByWvigzw41BWo64fSkz2eJufYmUhwpkIoPjYhdid2hQwUNoYfyE/rERQIGr57QbNGfOFA1dvrAoY9jMmIMv6YV0Th7DuMdNw== 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:(366004)(52536014)(7696005)(6506007)(186003)(53546011)(71200400001)(38100700002)(2906002)(122000001)(4326008)(66946007)(33656002)(38070700005)(54906003)(26005)(30864003)(5660300002)(9686003)(508600001)(110136005)(66556008)(966005)(66476007)(66446008)(8936002)(8676002)(64756008)(82960400001)(76116006)(45080400002)(316002)(86362001)(83380400001)(55016003)(403724002)(460985005);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?SUVvMXpKOTVZK3pHWUFNdE1oYm9HMnlqamRXQ2IrVWFDWWFtbGNYWGVXSXBO?= =?utf-8?B?Ym5JSkI2bHlGOUxqbktsVTF4S1hQN0dCZ3YrZnBoWEdtNTBMQWhYMWFqQjdn?= =?utf-8?B?cXN4MmNDT2dYUVBxUEpnWTdoWS8xN1lXSUFMbWlWaVJqbDdQWkZUWDN0Yk52?= =?utf-8?B?ekhzeHNLWmY2UVV0U2h3U05XWmVSazN0OUJPWHZSMUtrRjl1NEJ0NU5WbG1M?= =?utf-8?B?MmRxdm1MaWNFanJyWGQ5Q1Vac3hJbUtDY1l4S3pyU01zODZTUXEyZXFtN1Qv?= =?utf-8?B?VGtzNk52alpOSlkzWXlXcTdpM0RPU1FneDNvTHZiZjVvWnJiR3FRRzVMY2pw?= =?utf-8?B?anRQNmxpcmRoNUs5eWtGZm1Xa2lRenNpZnRjMU8zV1V2blVPV1FsbnU5ejVD?= =?utf-8?B?SllOMkc3eXZVVGduSy9QWGVVRGtzbGIyZ0w3U3BDYzliSzFDSkwrb1JkUlFO?= =?utf-8?B?OVhHYm1FVWFZQkhaTkM0ZmZWSzNqK1ZXcUFLMGljNCtFZW9iTmtsUjZKUWli?= =?utf-8?B?S0ZueHp0aE9RbklPT0t1TngwQjE3SEtCUitqdDgxWVJpb1pqUzUvZllVbU8y?= =?utf-8?B?cDNoNER4T253VktXYnRqUTZtUjVvOXk0Mks4amE4Sk5kTU0wR3lVNThKbkVK?= =?utf-8?B?cW90M2lvQ0daSHplU08zall5VXlsZW15Sm5TeFkxbyt1azVma3o3Q1ZHZm5C?= =?utf-8?B?QjJwaklxM0FqaExJSWlXZUxzS3U1K28rZ2dncnFQVVRHTjlxUkRFSVFURndm?= =?utf-8?B?dVRtMWE4SENBNysrR0ZmQkxIM29mYlJSd2tJSDBNZWRFb0xiU3dUYjN1MGdv?= =?utf-8?B?blF3K2dCOFNmbkYrL0Z3cGN1UysrWVp4RTlGWjBEMW9LM1RoOFhvcURNak9q?= =?utf-8?B?bktZeEg0WmJhZXRnUlhEK28rZHJIeUluZ3lDSldnZE5yazdVbThRYmdnT2Z4?= =?utf-8?B?VU1XS1F1N2ZHWHFWdTc2K1hLdGpUcWRuaUxwajJKdjZ0UHRKdnh4dGJoSWdl?= =?utf-8?B?QWRQSktTVjN0bTI5bWdUSXlWK3hwUzZvTHUrNXNhc003ZnhmeUVrc1JGN3Fk?= =?utf-8?B?anNxUzFqN1JGSW13cm82QVlwNElneTNUT04rQ2VoVzVoYWtCcDFyQ25xd0JW?= =?utf-8?B?YTZCYkV0YmxXaWs0N1YvWUdHMFQ0ZmkrSGM1Q0ZGT2dVRzVDTTdEVm8wQ2Rn?= =?utf-8?B?TGFwWGlzVHBFRG00QW10TW80dzRDb1dJcTFwdlcvRWFZd2F5dVBiMTBkbW9D?= =?utf-8?B?NDdCY0xYeTJVNmFFZThNZG1PeUozNGlQcmcrRWJkbkpQT1Q3ZHRNS0tYS0s4?= =?utf-8?B?SDlnUm8yOFJlc0tLdEVuaFFyNFVGeFhIY2V3bjV4blF4b1NXTFZiejZEQy9j?= =?utf-8?B?MTNVUy81VU5scno2TnpLdnZ6dmJnTVhpend5VUtKNUxSVmNleDduSVUwalM2?= =?utf-8?B?VlNwa3A3dnJKcHh2bVYrZVBEZWJ1SjZ0bVdzakxpUm9Nb3BGWGRZazJPUm5X?= =?utf-8?B?YnpCdGxKaVdnRnl6MXBkdnhhaDhFSXBJcytXeit5cGs1Z0RjRHcxSjNPWnBK?= =?utf-8?B?M1gxM3YzQkZxVnVRN0NHcytrOGFYaHhtejFlNHJzVnFQcUZxenV0bm5VLzFu?= =?utf-8?B?NXl3enRZTlNaTWhYNG95NmQ1NmlObEt1YmpwaUhFRHd6RWdjN3EwcVBEWEVO?= =?utf-8?B?dWkzWE9HYVJ2NkovRSt0R1NwbjFPUHpnSDdpQW45WXg5aExEM2xVb2tta1BZ?= =?utf-8?B?TEtmaVNKU0JQeDFoRzBNZm1WU0g0ZEVCUWJhOWZhcnN4TUJHTXZrQmllTEhC?= =?utf-8?B?OHVNdEltSzFadU5EQmNlaU9UdkVFc2llRjJwUHg3U1pITks4N1ZERE5Dd0tC?= =?utf-8?B?aG5ra1hsSmNhbUZYb0hqZVBiZGFoTm5xSE1iUG04SVI2WU8reFk0OE5uV3hn?= =?utf-8?B?NzNmYVNmMGRlajNBTkdYSU1PaDNFbHNla2tPOWU4M2kwV1BCRGZyV2xGM2hO?= =?utf-8?B?YkFPQ3pPTXlXRzhzZVJwOVJHbThlTmdxeXZzYytKVld1NDdzaVZpYkdFN3U1?= =?utf-8?B?TTNTaWwvSlhDbkpsWGFzd004ek9KS2VvK3NpTjc5UVdaNU9KZ3lnenRTOHVZ?= =?utf-8?B?Vkx6MXNkT2NweHNwSTlJbWlLaXNiTTQ0Qm8wUnhkVzVTZ2FzeUhQK1JVblE1?= =?utf-8?B?TFFHVDlPS3FaeUZubjF5ditMMlhqbks5UHFwUnovOG5FTXFUd1FNYnVxMnha?= =?utf-8?B?RDQwV0oyejZBcG5JMmR2UXd2YytRPT0=?= 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: 07a265c5-b82e-4486-1c2e-08d9bb94a9bb X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Dec 2021 04:22:22.5864 (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: Zc8ElH2QvQqaDN/LJS0ruwaZiTXVqloMMDhlYCpA1mkMV+gJ4gAQ+nge+nCyCEASo4LiOX/1eJ3/tKuTWbIJBTcMnjh7EphqxkOvenPRe80= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR11MB4948 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 TWljaGFlbCwNCg0KdGhhbmtzIGZvciB0aGUgdXBkYXRlLg0KDQpXaGVuIGEgYnJhbmNoIG9mIHdp a2kgaXMgcG9zdGVkIHdpdGggY29tbWl0cyBsaWtlIHlvdSBoYXZlLCB5b3UgY2FuIGdldCB0aGlz IHZpZXcNCndoaWNoIHNob3dzIHRoZSBjaGFuZ2VzIGluIGEgZWFzaWVyIHRvIHJldmlldyByZW5k ZXJlZCBmb3JtYXQuDQoNCmh0dHBzOi8vZ2l0aHViLmNvbS9tYWt1YmFja2kvdGlhbm9jb3JlLmdp dGh1Yi5pby9jb21taXQvODk3YjgyN2M3NzkwODU5YmNhODQxMGEwMGNhMjliZGZkNjdlYWM0Yj9z aG9ydF9wYXRoPTYxZTIxMjQjZGlmZi02MWUyMTI0NjUxZGUwN2E3ODNlNDhiZmFhZGQ3Zjc2MDJj ZjRiNWMxNjJiMzE0ZTk4YTdmMTJjMmI4ZWM3MWFmDQoNCkJlc3QgcmVnYXJkcywNCg0KTWlrZQ0K DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogbWljaGFlbC5rdWJhY2tp QG91dGxvb2suY29tIDxtaWNoYWVsLmt1YmFja2lAb3V0bG9vay5jb20+DQo+IFNlbnQ6IFRodXJz ZGF5LCBEZWNlbWJlciA5LCAyMDIxIDY6MDEgUE0NCj4gVG86IGRldmVsQGVkazIuZ3JvdXBzLmlv DQo+IENjOiBBbmRyZXcgRmlzaCA8YWZpc2hAYXBwbGUuY29tPjsgTGVpZiBMaW5kaG9sbSA8bGVp ZkBudXZpYWluYy5jb20+OyBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5kLmtpbm5leUBpbnRl bC5jb20+Ow0KPiBMaW1pbmcgR2FvIDxnYW9saW1pbmdAYnlvc29mdC5jb20uY24+DQo+IFN1Ympl Y3Q6IFtlZGsyLXdpa2ldW1BBVENIIHYxIDEvMV0gQWRkIG1vcmUgZGV0YWlscyB0byBFREsgSUkg Q29kZSBGb3JtYXR0aW5nIChVbmNydXN0aWZ5KQ0KPiANCj4gRnJvbTogTWljaGFlbCBLdWJhY2tp IDxtaWNoYWVsLmt1YmFja2lAbWljcm9zb2Z0LmNvbT4NCj4gDQo+IFVwZGF0ZXMgdGhlIHdpa2kg cGFnZSB0byBpbmNsdWRlOg0KPiANCj4gMS4gTWlub3IgZm9ybWF0dGluZyB1cGRhdGVzDQo+IDIu IEFkZGl0aW9uYWwgbGlua3MgdG8gY3JpdGljYWwgZmlsZXMNCj4gMy4gSW5jcmVhc2VkIGRldGFp bHMgaW4gYSBmZXcgaW1wb3J0YW50IHNlY3Rpb25zDQo+IDQuIE1vcmUgZGV0YWlsZWQgbWFudWFs IHVzYWdlIGluc3RydWN0aW9ucw0KPiA1LiBNb3JlIExpbnV4IGV4YW1wbGVzDQo+IA0KPiBDYzog QW5kcmV3IEZpc2ggPGFmaXNoQGFwcGxlLmNvbT4NCj4gQ2M6IExlaWYgTGluZGhvbG0gPGxlaWZA bnV2aWFpbmMuY29tPg0KPiBDYzogTWljaGFlbCBEIEtpbm5leSA8bWljaGFlbC5kLmtpbm5leUBp bnRlbC5jb20+DQo+IENjOiBMaW1pbmcgR2FvIDxnYW9saW1pbmdAYnlvc29mdC5jb20uY24+DQo+ IFNpZ25lZC1vZmYtYnk6IE1pY2hhZWwgS3ViYWNraSA8bWljaGFlbC5rdWJhY2tpQG1pY3Jvc29m dC5jb20+DQo+IC0tLQ0KPiANCj4gTm90ZXM6DQo+ICAgICBBIHJlbmRlcmVkIHZlcnNpb24gb2Yg dGhlIG1hcmtkb3duIGRvY3VtZW50IGluIHRoaXMgcGF0Y2ggaXMNCj4gICAgIGF2YWlsYWJsZSBo ZXJlOg0KPiANCj4gICAgIGh0dHBzOi8vZ2l0aHViLmNvbS9tYWt1YmFja2kvdGlhbm9jb3JlLmdp dGh1Yi5pby9ibG9iL3VwZGF0ZV91bmNydXN0aWZ5X2luc3RydWN0aW9ucy9FREstSUktQ29kZS1G b3JtYXR0aW5nLm1kDQo+IA0KPiAgRURLLUlJLUNvZGUtRm9ybWF0dGluZy5tZCB8IDg2ICsrKysr KysrKysrKysrKy0tLS0tDQo+ICAxIGZpbGUgY2hhbmdlZCwgNjcgaW5zZXJ0aW9ucygrKSwgMTkg ZGVsZXRpb25zKC0pDQo+IA0KPiBkaWZmIC0tZ2l0IGEvRURLLUlJLUNvZGUtRm9ybWF0dGluZy5t ZCBiL0VESy1JSS1Db2RlLUZvcm1hdHRpbmcubWQNCj4gaW5kZXggZjYzNDE5M2NiNjA4Li44MDcx ZTA4NjNlNjIgMTAwNjQ0DQo+IC0tLSBhL0VESy1JSS1Db2RlLUZvcm1hdHRpbmcubWQNCj4gKysr IGIvRURLLUlJLUNvZGUtRm9ybWF0dGluZy5tZA0KPiBAQCAtMSw2ICsxLDYgQEANCj4gICMgRURL IElJIENvZGUgRm9ybWF0dGluZw0KPiANCj4gLVRvIGJldHRlciBhY2hpZXZlIHRoZSBnb2FscyBv ZiB0aGUgW0VESyBJSSBDIENvZGluZyBTdGFuZGFyZHMgU3BlY2lmaWNhdGlvbl0oaHR0cHM6Ly9l ZGsyLWRvY3MuZ2l0Ym9vay5pby9lZGstaWktYy0NCj4gY29kaW5nLXN0YW5kYXJkcy1zcGVjaWZp Y2F0aW9uLyksDQo+ICtUbyBiZXR0ZXIgcmVhbGl6ZSB0aGUgZ29hbHMgb2YgdGhlIFtFREsgSUkg QyBDb2RpbmcgU3RhbmRhcmRzIFNwZWNpZmljYXRpb25dKGh0dHBzOi8vZWRrMi1kb2NzLmdpdGJv b2suaW8vZWRrLWlpLWMtDQo+IGNvZGluZy1zdGFuZGFyZHMtc3BlY2lmaWNhdGlvbi8pLA0KPiAg RURLIElJIGNvZGUgZm9ybWF0dGluZyBpcyBhdXRvbWF0ZWQgdXNpbmcgYSBzb3VyY2UgY29kZSBi ZWF1dGlmaWVyIGNhbGxlZCBVbmNydXN0aWZ5LiBVbmNydXN0aWZ5IGlzIGNvbXBhdGlibGUgd2l0 aA0KPiAgQy9DKysgaW4gYWRkaXRpb24gdG8gb3RoZXIgbGFuZ3VhZ2VzLiBJbiBFREsgSUksIGl0 IGlzIHVzZWQgdG8gZm9ybWF0IEMgbGFuZ3VhZ2Ugc291cmNlIGNvZGUuDQo+IA0KPiBAQCAtMjAs MTEgKzIwLDExIEBAIHN0YW5kYXJkOg0KPiAgICBoZWFkZXIuDQo+ICAqICoqZGVmYXVsdF9mdW5j dGlvbl9oZWFkZXIudHh0KiogLSBBIHRleHQgZmlsZSBjb250YWluaW5nIGEgdGVtcGxhdGUgdGhh dCBpcyBwbGFjZWQgYWJvdmUgZnVuY3Rpb25zIHRoYXQgYXJlIG1pc3NpbmcNCj4gICAgYSBmdW5j dGlvbiBoZWFkZXIuDQo+IC0qICoqUmVhZG1lLm1kKiogLSBBIGZpbGUgdGhhdCBjb250YWlucyBk ZXRhaWxzIGFib3V0IGhvdyB0aGUgcGx1Z2luIHdvcmtzIGFuZCBob3cgdG8gdXNlIGl0Lg0KPiAr KiBbKipSZWFkbWUubWQqKl0oaHR0cHM6Ly9naXRodWIuY29tL3RpYW5vY29yZS9lZGsyL2Jsb2Iv bWFzdGVyLy5weXRvb2wvUGx1Z2luL1VuY3J1c3RpZnlDaGVjay9SZWFkbWUubWQpIC0gQSBmaWxl IHRoYXQNCj4gY29udGFpbnMgZGV0YWlscyBhYm91dCBob3cgdGhlIHBsdWdpbiB3b3JrcyBhbmQg aG93IHRvIHVzZSBpdC4NCj4gICogKip1bmNydXN0aWZ5X2V4dF9kZXAueW1sKiogLSBBbiAiZXh0 ZXJuYWwgZGVwZW5kZW5jeSIgZmlsZSB0aGF0IGlzIHVzZWQgdG8gZ2V0IHRoZSBjdXJyZW50IHZl cnNpb24gb2YgdGhlIFVuY3J1c3RpZnkNCj4gICAgYXBwbGljYXRpb24gdXNlZCBieSB0aGUgcGx1 Z2luLiBUaGlzIGZpbGUgY29udGFpbnMgdGhlIE51R2V0IGZlZWQgVVJMIGFuZCB0aGUgdmVyc2lv biBjdXJyZW50bHkgdXNlZC4NCj4gICogKip1bmNydXN0aWZ5X3BsdWdfaW4ueWFtbCoqIC0gQSBm aWxlIHRoYXQgY29udGFpbnMgaW5mb3JtYXRpb24gdG8gZGVzY3JpYmUgdGhlIHBsdWdpbiB0byB0 aGUgYnVpbGQgZW52aXJvbm1lbnQuDQo+IC0qICoqdW5jcnVzdGlmeS5jZmcqKiAtIEEgZmlsZSB1 c2VkIGJ5IHRoZSBVbmNydXN0aWZ5IGFwcGxpY2F0aW9uIHRvIGNvbnRyb2wgaG93IGl0IGZvcm1h dHMgY29kZS4gSWYgeW91IHdhbnQgdG8gdHdlYWsNCj4gKyogWyoqdW5jcnVzdGlmeS5jZmcqKl0o aHR0cHM6Ly9naXRodWIuY29tL3RpYW5vY29yZS9lZGsyL2Jsb2IvbWFzdGVyLy5weXRvb2wvUGx1 Z2luL1VuY3J1c3RpZnlDaGVjay91bmNydXN0aWZ5LmNmZykgLSBBDQo+IGZpbGUgdXNlZCBieSB0 aGUgVW5jcnVzdGlmeSBhcHBsaWNhdGlvbiB0byBjb250cm9sIGhvdyBpdCBmb3JtYXRzIGNvZGUu IElmIHlvdSB3YW50IHRvIHR3ZWFrDQo+ICAgIHBhcnRpY3VsYXIgZm9ybWF0dGluZyBkZXRhaWxz LCB0aGlzIGlzIHRoZSBwbGFjZSB0byBzdGFydC4NCj4gICogKipVbmNydXN0aWZ5Q2hlY2sucHkq KiAtIFRoZSBhY3R1YWwgUHl0aG9uIGZpbGUgdGhhdCBpcyB0aGUgQ0kgcGx1Z2luLiBMaWtlIGFs bCBDSSBwbHVnaW5zLCB0aGlzIHBsdWdpbiBjYW4gYmUgcnVuDQo+ICAgIGluIGxvY2FsIENJIGFu ZCBzZXJ2ZXIgQ0kuDQo+IEBAIC0zMiw3ICszMiw3IEBAIHN0YW5kYXJkOg0KPiAgIyMgRURLIElJ IFVuY3J1c3RpZnkgRm9yaw0KPiANCj4gIER1ZSB0byBudWFuY2VzIGluIHRoZSB3YXkgRURLIElJ IGZvcm1hdHMgY29kZSwgc29tZSBjaGFuZ2VzIHdlcmUgbWFkZSB0byB0aGUgdXBzdHJlYW0gVW5j cnVzdGlmeSBhcHBsaWNhdGlvbi4gVGhlc2UNCj4gLXdlcmUgY2hhbmdlcyB0aGF0IGNvdWxkIG5v dCBiZSBtYWRlIHB1cmVseSB0aHJvdWdoIHRoZSBVbmNydXN0aWZ5IGNvbmZpZ3VyYXRpb24gZmls ZS4gRm9yIG1vcmUgZGV0YWlscyBhYm91dCB0aGUgZm9yaywNCj4gK3dlcmUgY2hhbmdlcyB0aGF0 IGNvdWxkIG5vdCBiZSBjb250cm9sbGVkIHB1cmVseSB0aHJvdWdoIHRoZSBVbmNydXN0aWZ5IGNv bmZpZ3VyYXRpb24gZmlsZS4gRm9yIG1vcmUgZGV0YWlscyBhYm91dCB0aGUNCj4gZm9yaywNCj4g IHBsZWFzZSB2aXNpdCB0aGF0IHByb2plY3Qgb3ZlcnZpZXcgaW4gdGhlIGxpbmsgYmVsb3cuDQo+ IA0KPiAgKiBVbmNydXN0aWZ5IHVwc3RyZWFtIHJlcG9zaXRvcnk6IGh0dHBzOi8vZ2l0aHViLmNv bS91bmNydXN0aWZ5L3VuY3J1c3RpZnkNCj4gQEAgLTUyLDggKzUyLDkgQEAgVGhlIHJlY29tbWVu ZGVkIGZsb3cgaXM6DQo+ICAyLiBVc2UgdGhlIGBzdHVhcnQqYCBjb21tYW5kcyB0byBwdWxsIHRo ZSBVbmNydXN0aWZ5IGFwcGxpY2F0aW9uIGludG8gdGhlIGVkazIgd29ya3NwYWNlDQo+ICAzLiBT ZXQgdXAgdGhlIGFiaWxpdHkgdG8gcnVuIFVuY3J1c3RpZnkgbG9jYWxseSAoZm9yIGV4YW1wbGUs IHVzaW5nIHRoZSBWaXN1YWwgU3R1ZGlvIENvZGUgVW5jcnVzdGlmeSBwbHVnaW4pDQo+ICA0LiBN YWtlIGFuZCB0ZXN0IGNvZGUgY2hhbmdlcw0KPiAtNS4gUnVuIEVESyBJSSBDSSBsb2NhbGx5IHRv IHZlcmlmeSBVbmNydXN0aWZ5Q2hlY2sgcGFzc2VzDQo+IC02LiBTZW5kIHRoZSBjb2RlIHBhdGNo IHRvIHRoZSBFREsgSUkgbWFpbGluZyBsaXN0DQo+ICs1LiBGb3JtYXQgY29kZSBsb2NhbGx5IHVz aW5nIFVuY3J1c3RpZnkgKGZvciBleGFtcGxlLCB1c2luZyB0aGUgVmlzdWFsIFN0dWRpbyBDb2Rl IFVuY3J1c3RpZnkgcGx1Z2luKQ0KPiArNi4gUnVuIEVESyBJSSBDSSBsb2NhbGx5IHRvIHZlcmlm eSBVbmNydXN0aWZ5Q2hlY2sgcGFzc2VzDQo+ICs3LiBTZW5kIHRoZSBjb2RlIHBhdGNoIHRvIHRo ZSBFREsgSUkgbWFpbGluZyBsaXN0DQo+IA0KPiAgIyMgSW5zdGFsbGluZyBVbmNydXN0aWZ5DQo+ IA0KPiBAQCAtNjUsNyArNjYsNyBAQCBhbmQgdWx0aW1hdGVseSBwdWJsaXNoZWQgaW50byBhIE51 R2V0IGZlZWQgaW4gdGhhdCBmb3JrIHByb2plY3QuDQo+ICBJdCBpcyBzdHJvbmdseSByZWNvbW1l bmRlZCB0byBmb2xsb3cgdGhpcyBmbG93LiBJdCBzZXRzIHVwIHRoZSB3b3Jrc3BhY2UgdG8gd29y ayB3aXRoIGxvY2FsIENJIGFuZCBhdXRvbWF0aWNhbGx5IGdldHMNCj4gIHRoZSBjdXJyZW50IHN1 cHBvcnRlZCB2ZXJzaW9uIG9mIHRoZSBhcHBsaWNhdGlvbi4NCj4gDQo+IC1UaGUgVW5jcnVzdGlm eSB0b29sIGlzIGluc3RhbGxlZCBhdXRvbWF0aWNhbGx5IHdoZW4gdGhlIFB5dG9vbHMgZW52aXJv bm1lbnQgaXMgdXNlZCBhbmQgdGhlIGBzdHVhcnQqYCBjb21tYW5kcyBhcmUgcnVuDQo+ICtUaGUg VW5jcnVzdGlmeSB0b29sIGlzIGluc3RhbGxlZCBhdXRvbWF0aWNhbGx5IHdoZW4gdGhlIHB5dG9v bHMgZW52aXJvbm1lbnQgaXMgdXNlZCBhbmQgdGhlIGBzdHVhcnQqYCBjb21tYW5kcyBhcmUgcnVu DQo+ICB0byBjb21wbGV0ZSBlbnZpcm9ubWVudCBzZXR1cC4gUmV2aWV3IHRoZSBlZGsyDQo+IFsu cHl0b29sL1JlYWRtZS5tZF0oaHR0cHM6Ly9naXRodWIuY29tL3RpYW5vY29yZS9lZGsyL3RyZWUv bWFzdGVyLy5weXRvb2wjcnVubmluZy1jaS1sb2NhbGx5KQ0KPiAgZmlsZSBmb3IgZGV0YWlscyBv biBgc3R1YXJ0YCBhbmQgdGhpcyBvdmVyYWxsIGZsb3cuDQo+IA0KPiBAQCAtNzYsOSArNzcsOSBA QCBhcHBsaWNhdGlvbi4NCj4gDQo+ICAjIyMgTWFudWFsIEluc3RhbGxhdGlvbjogRG93bmxvYWQg ZnJvbSB0aGUgZm9yayBwcm9qZWN0DQo+IA0KPiAtVGhlIHJlbGVhc2UgcGlwZWxpbmUgaW4gdGhl IEVESyBJSSBVbmNydXN0aWZ5IGZvcmsgcHJvamVjdCBjb250YWlucyB0aGUgYnVpbGQgaW5mb3Jt YXRpb24gZm9yIGVhY2ggcmVsZWFzZS4gRWFjaCBidWlsZA0KPiAtaW4gdGhpcyBwaXBlbGluZSBy ZXByZXNlbnRzIGEgcmVsZWFzZS4gQnkgZ29pbmcgdG8gYSBzcGVjaWZpYyBidWlsZCwgdGhlIGRl dGFpbHMgbWFwcGluZyB0aGUgYnVpbGQgdG8gc291cmNlIGNvZGUNCj4gLShzdWNoIGFzIHRoZSBi cmFuY2ggYW5kIGNvbW1pdCkgYXJlIHByZXNlbnQuDQo+ICtUaGUgW3JlbGVhc2UgcGlwZWxpbmVd KGh0dHBzOi8vZGV2LmF6dXJlLmNvbS9wcm9qZWN0bXUvVW5jcnVzdGlmeS9fYnVpbGQ/ZGVmaW5p dGlvbklkPTg5KSBpbiB0aGUgRURLIElJIFVuY3J1c3RpZnkgZm9yaw0KPiArcHJvamVjdCBjb250 YWlucyB0aGUgYnVpbGQgaW5mb3JtYXRpb24gZm9yIGVhY2ggcmVsZWFzZS4gRWFjaCBidWlsZCBp biB0aGlzIHBpcGVsaW5lIHJlcHJlc2VudHMgYSByZWxlYXNlLiBCeSBnb2luZyB0bw0KPiArYSBz cGVjaWZpYyBidWlsZCwgdGhlIGRldGFpbHMgbWFwcGluZyB0aGUgYnVpbGQgdG8gc291cmNlIGNv ZGUgKHN1Y2ggYXMgdGhlIGJyYW5jaCBhbmQgY29tbWl0KSBhcmUgcHJlc2VudC4NCj4gDQo+ICBU aGUgYnVpbGQgY29udGVudCBpcyBwdWJsaXNoZWQgYXMgYSBOdUdldCBwYWNrYWdlIHRvIGEgTnVH ZXQgZmVlZC4gVGhpcyBpcyB0aGUgc2FtZSBmZWVkLCB0aGUgcmVjb21tZW5kZWQgaW5zdGFsbGF0 aW9uDQo+ICBpbnN0cnVjdGlvbnMgYXV0b21hdGljYWxseSBwdWxsIGZyb20uIFRoZSBOdUdldCBm ZWVkIGlzIGF2YWlsYWJsZSBpbiB0aGUNCj4gWyJBcnRpZmFjdHMiXShodHRwczovL2Rldi5henVy ZS5jb20vcHJvamVjdG11L1VuY3J1c3RpZnkvX3BhY2thZ2luZz9fYT1mZWVkJmZlZWQ9bXVfdW5j cnVzdGlmeSkNCj4gQEAgLTEzMiwxMyArMTMzLDQ4IEBAIHRoZSBjb25maWd1cmF0aW9uIGRldGFp bHMgYXJlIHNldCBvbmNlIGluIHRoZSBlZGl0b3IgY29uZmlndXJhdGlvbiBmaWxlLg0KPiAgVGhl c2UgaW5zdHJ1Y3Rpb25zIGFyZSB3cml0dGVuIGZvciBXaW5kb3dzIDEwLiBUaGVzZSBhY3Rpdml0 aWVzIGNvdWxkIGJlIGZ1cnRoZXIgYXV0b21hdGVkIGludG8gYSBoaWdoLWxldmVsIHNjcmlwdA0K PiAgYnV0IHRoYXQgaGFzIG5vdCBiZWVuIGRvbmUgeWV0Lg0KPiANCj4gKyMjIyMgTWFudWFsIFVz YWdlIC0gR2VuZXJhdGUgRmlsZSBMaXN0DQo+ICsNCj4gK1VuY3J1c3RpZnkgbXVzdCBiZSBnaXZl biBhIGxpc3Qgb2YgZmlsZXMgdG8gcnVuIGFnYWluc3QuIFRoaXMgY2FuIGJlIGRvbmUgYnkgcmVk aXJlY3RpbmcgdGhlIGxpc3QgdG8gc3RkaW4gb3IgYnkNCj4gK3Byb3ZpZGluZyBhIHRleHQgZmls ZS4gRXhhbXBsZXMgb2YgaG93IHBlcmZvcm0gYm90aCBhcHByb2FjaGVzIGFyZSBnaXZlbiBiZWxv dy4NCj4gKw0KPiArIyMjIyMgTWFudWFsIFVzYWdlIC0gR2VuZXJhdGUgRmlsZSBMaXN0IHZpYSBz dGRpbg0KPiArDQo+ICtUaGlzIGlzIHRoZSByZWNvbW1lbmRlZCB3YXkgdG8gbWFudWFsbHkgcnVu IFVuY3J1c3RpZnkuIEl0IGlzIHdvcmtzIGFjcm9zcyBMaW51eCBhbmQgV2luZG93cyBhbmQgcmVk dWNlcyB0aGUgbnVtYmVyIG9mDQo+ICtvdmVyYWxsIHN0ZXBzLg0KPiArDQo+ICtFeGFtcGxlIHRv IHJ1biBhZ2FpbnN0IGFsbCAuYyBhbmQgLmggZmlsZXMgaW4gYER5bmFtaWNUYWJsZXNQa2dgIGV4 ZWN1dGVkIGZyb20gdGhlIHJvb3Qgb2YgdGhlIGVkazIgd29ya3NwYWNlLg0KPiArDQo+ICtMaW51 eDoNCj4gKw0KPiArYGBgc2hlbGwNCj4gK2dpdCBscy1maWxlcyBEeW5hbWljVGFibGVzUGtnKi5j IER5bmFtaWNUYWJsZXNQa2cqLmggfCAuLy5weXRvb2wvUGx1Z2luL1VuY3J1c3RpZnlDaGVjay9t dS11bmNydXN0aWZ5LQ0KPiByZWxlYXNlX2V4dGRlcC9MaW51eC14ODYvdW5jcnVzdGlmeSAtYyAu Ly5weXRvb2wvUGx1Z2luL1VuY3J1c3RpZnlDaGVjay91bmNydXN0aWZ5LmNmZyAtRiAtIC0tcmVw bGFjZSAtLW5vLWJhY2t1cCAtLWlmLQ0KPiBjaGFuZ2VkDQo+ICtgYGANCj4gKw0KPiArV2luZG93 czoNCj4gKw0KPiArYGBgc2hlbGwNCj4gK2dpdCBscy1maWxlcyBEeW5hbWljVGFibGVzUGtnKi5j IER5bmFtaWNUYWJsZXNQa2cqLmggfCAuXC5weXRvb2xcUGx1Z2luXFVuY3J1c3RpZnlDaGVja1xt dS11bmNydXN0aWZ5LQ0KPiByZWxlYXNlX2V4dGRlcFxXaW5kb3dzLXg4Nlx1bmNydXN0aWZ5LmV4 ZSAtYyAuXC5weXRvb2xcUGx1Z2luXFVuY3J1c3RpZnlDaGVja1x1bmNydXN0aWZ5LmNmZyAtRiAt IC0tcmVwbGFjZSAtLW5vLWJhY2t1cCAtLQ0KPiBpZi1jaGFuZ2VkDQo+ICtgYGANCj4gKw0KPiAr KiBUaGUgYGdpdCBscy1maWxlc2AgY29tbWFuZCBpcyB1c2VkIHRvIGdhdGhlciB0aGUgbGlzdCBv ZiAuYyBhbmQgLmggZmlsZXMgaW4gYER5bmFtaWNUYWJsZXNQa2dgDQo+ICsqIFRoZSBvdXRwdXQg ZnJvbSBgZ2l0IGxzLWZpbGVzYCBpcyByZWRpcmVjdGVkIHRvIGB1bmNydXN0aWZ5YA0KPiArKiBU aGUgZm9sbG93aW5nIG9wdGlvbnMgYXJlIGdpdmVuIHRvIHRoZSBVbmNydXN0aWZ5IGFwcGxpY2F0 aW9uOg0KPiArICAqIGAtY2A6IFRoZSBwYXRoIHRvIHRoZSBVbmNydXN0aWZ5IGNvbmZpZ3VyYXRp b24gZmlsZQ0KPiArICAqIGAtRmA6IFJlYWQgdGhlIGZpbGVzIG9uZSBwZXIgbGluZS4gYC1gIGlu ZGljYXRlcyB0aGUgbGlzdCBzaG91bGQgYmUgcmVhZCBmcm9tIHN0ZGluLg0KPiArICAqIGAtLXJl cGxhY2VgOiBSZXBsYWNlIHRoZSBzb3VyY2UgZmlsZXMgaW4gcGxhY2UgKGNvbnZlbmllbnQgdG8g ZGlmZiBmb3JtYXR0aW5nIHdpdGggZ2l0KQ0KPiArICAqIGAtLW5vLWJhY2t1cGA6IFJlcGxhY2Ug ZmlsZXMgd2l0aCBubyBiYWNrdXAgKGFnYWluLCB1c2VmdWwgdG8gZGlmZiBmb3JtYXR0aW5nIHdp dGggZ2l0KQ0KPiArICAqIGAtLWlmLWNoYW5nZWRgOiBPbmx5IHByb2R1Y2Ugb3V0cHV0IGlmIGEg Y2hhbmdlIGlzIGRldGVjdGVkLg0KPiArDQo+ICsjIyMjIyBNYW51YWwgVXNhZ2UgLSBHZW5lcmF0 ZSBGaWxlIExpc3QgdmlhIFRleHQgRmlsZQ0KPiArDQo+ICAxLiBHZW5lcmF0ZSBhIGxpc3Qgb2Yg dGhlIGZpbGVzIHRvIHJ1biBhZ2FpbnN0LiBUaGlzIGV4YW1wbGUgZ2VuZXJhdGVzIGEgcmVjdXJz aXZlIGxpc3Qgb2YgYWxsIC5jIGFuZCAuaCBmaWxlcy4NCj4gDQo+ICAgICAqIEl0IGlzIHJlY29t bWVuZGVkIHRvIHJ1biB0aGlzIGluIGNsZWFubHkgY2xvbmVkIGVkazIgcmVwbyB3aXRob3V0IHN1 Ym1vZHVsZXMgdG8gcHJldmVudCBzdWJtb2R1bGUgZmlsZXMNCj4gICAgICAgKHN1Y2ggYXMgQnJv dGxpIGZpbGVzIGluIE1kZU1vZHVsZVBrZykgZnJvbSBnZXR0aW5nIGluY2x1ZGVkIGluIHRoZSBm aWxlIGxpc3QgKGlmIHlvdSBhcmUgcnVubmluZyBhZ2FpbnN0IGFsbA0KPiAgICAgICBmaWxlcyku IEluY2x1ZGluZyBhbGwgZmlsZXMgd2lsbCBzaWduaWZpY2FudGx5IGluY3JlYXNlIHRoZSBhbW91 bnQgb2YgdGltZSBVbmNydXN0aWZ5IHRha2VzIHRvIHJ1bi4NCj4gDQo+IC0gICAqIFNhbXBsZSBQ b3dlcnNoZWxsIGNvbW1hbmQgdG8gcmVjdXJzaXZlbHkgd3JpdGUgYWxsIC5jIGFuZCAuaCBmaWxl cyBpbiBhIGdpdmVuIHBhY2thZ2UgdG8gYSB0ZXh0IGZpbGU6DQo+ICsgICAqIFNhbXBsZSBQb3dl cnNoZWxsIGNvbW1hbmQgdG8gcmVjdXJzaXZlbHkgd3JpdGUgYWxsIC5jIGFuZCAuaCBmaWxlcyBp biBhIGdpdmVuIHBhY2thZ2UgdG8gYSB0ZXh0IGZpbGUgKHRoaXMgY2FuIG9mDQo+IGNvdXJzZSBi ZSBkb25lIHdpdGggb3RoZXIgbGFuZ3VhZ2VzL2NvbW1hbmRzKToNCj4gDQo+ICAgICAgIGBgYHBv d2Vyc2hlbGwNCj4gICAgICAgR2V0LUNoaWxkSXRlbSAtUGF0aCAuXE1kZVBrZ1wqIC1JbmNsdWRl ICouYywgKi5oIC1SZWN1cnNlIC1Gb3JjZSB8ICV7JF8uZnVsbG5hbWV9IHwgT3V0LUZpbGUNCj4g QEAgLTE0NywyOSArMTgzLDM5IEBAIGJ1dCB0aGF0IGhhcyBub3QgYmVlbiBkb25lIHlldC4NCj4g DQo+ICAgICA+ICoqV0FSTklORyoqIFBvd2Vyc2hlbGwgd2lsbCBwdXQgdGhlIFVURi04IEJPTSBh dCB0aGUgYmVnaW5uaW5nIG9mIHRoZSBvdXRwdXQgZmlsZS4gVW5jcnVzdGlmeSBkb2VzIG5vdCBy ZWNvZ25pemUgdGhlDQo+IEJPTQ0KPiAgICAgYW5kIGl0IHNob3VsZCBiZSByZW1vdmVkIGJlZm9y ZSBwYXNzaW5nIHRoZSBmaWxlIGFzIGlucHV0IHRvIFVuY3J1c3RpZnkuIElmIGl0IGlzIG5vdCBy ZW1vdmVkLCBVbmNydXN0aWZ5IHdpbGwNCj4gLSAgIG5vdCByZWFkIHRoZSBmaXJzdCBmaWxlIHBh dGggaW4gdGhlIHRleHQgZmlsZSBwcm9wZXJseSB3aGljaCB3aWxsIGNhdXNlIHRoZSBmaWxlIHRv IG5vdCBiZSBmb3JtYXR0ZWQuDQo+ICsgICBub3QgcmVhZCB0aGUgZmlyc3QgZmlsZSBwYXRoIGlu IHRoZSB0ZXh0IGZpbGUgcHJvcGVybHkgd2hpY2ggd2lsbCBjYXVzZSB0aGUgZmlsZSB0byBub3Qg YmUgZm9ybWF0dGVkLiAqKktlZXAgdGhpcyBpbg0KPiBtaW5kIHJlZ2FyZGxlc3Mgb2YgdGhlIG1l dGhvZCB1c2VkIGZvciBnZW5lcmF0aW5nIHRoZSB0ZXh0IGZpbGUuKioNCj4gDQo+ICAyLiBSdW4g VW5jcnVzdGlmeSB1c2luZyB0aGUgZ2VuZXJhdGVkIHRleHQgZmlsZSBhcyBpbnB1dA0KPiANCj4g LSAgIFRoZSBmb2xsb3dpbmcgYXNzdW1lIHlvdSBtb3ZlIHRoZSBFREsgSUkgVW5jcnVzdGlmeSBj b25maWd1cmF0aW9uIGZpbGUgdG8gdGhlIGRpcmVjdG9yeSAudW5jcnVzdGlmeSBpbiB5b3VyIGVk azINCj4gLSAgIHdvcmtzcGFjZS4NCj4gK0V4YW1wbGUgdG8gcnVuIGFnYWluc3QgYWxsIC5jIGFu ZCAuaCBmaWxlcyBpbiBgTWRlUGtnYCBleGVjdXRlZCBmcm9tIHRoZSByb290IG9mIHRoZSBlZGsy IHdvcmtzcGFjZS4NCj4gKw0KPiArICAgV2luZG93czoNCj4gDQo+ICAgICBgYGBzaGVsbA0KPiAt ICAgdW5jcnVzdGlmeS5leGUgLWMgLlwucHl0b29sXFBsdWdpblxVbmNydXN0aWZ5Q2hlY2tcdW5j cnVzdGlmeS5jZmcgLUYgTWRlUGtnRmlsZXMudHh0IC0tcmVwbGFjZSAtLW5vLWJhY2t1cCAtLWlm LQ0KPiBjaGFuZ2VkDQo+ICsgICAuXC5weXRvb2xcUGx1Z2luXFVuY3J1c3RpZnlDaGVja1xtdS11 bmNydXN0aWZ5LXJlbGVhc2VfZXh0ZGVwXFdpbmRvd3MteDg2XHVuY3J1c3RpZnkuZXhlIC1jDQo+ IC5cLnB5dG9vbFxQbHVnaW5cVW5jcnVzdGlmeUNoZWNrXHVuY3J1c3RpZnkuY2ZnIC1GIE1kZVBr Z0ZpbGVzLnR4dCAtLXJlcGxhY2UgLS1uby1iYWNrdXAgLS1pZi1jaGFuZ2VkDQo+ICAgICBgYGAN Cj4gDQo+ICsqIFRoZSBmb2xsb3dpbmcgb3B0aW9ucyBhcmUgZ2l2ZW4gdG8gdGhlIFVuY3J1c3Rp ZnkgYXBwbGljYXRpb246DQo+ICsgICogYC1jYDogVGhlIHBhdGggdG8gdGhlIFVuY3J1c3RpZnkg Y29uZmlndXJhdGlvbiBmaWxlDQo+ICsgICogYC1GYDogUmVhZCB0aGUgZmlsZXMgb25lIHBlciBs aW5lIGZyb20gdGhlIGZpbGUgYE1kZVBrZ0ZpbGVzLnR4dGANCj4gKyAgKiBgLS1yZXBsYWNlYDog UmVwbGFjZSB0aGUgc291cmNlIGZpbGVzIGluIHBsYWNlIChjb252ZW5pZW50IHRvIGRpZmYgZm9y bWF0dGluZyB3aXRoIGdpdCkNCj4gKyAgKiBgLS1uby1iYWNrdXBgOiBSZXBsYWNlIGZpbGVzIHdp dGggbm8gYmFja3VwIChhZ2FpbiwgdXNlZnVsIHRvIGRpZmYgZm9ybWF0dGluZyB3aXRoIGdpdCkN Cj4gKyAgKiBgLS1pZi1jaGFuZ2VkYDogT25seSBwcm9kdWNlIG91dHB1dCBpZiBhIGNoYW5nZSBp cyBkZXRlY3RlZC4NCj4gKw0KPiAgICAgPiAqTm90ZToqIFdoZW4gdGVzdGluZyBhIGNvbmZpZ3Vy YXRpb24gY2hhbmdlLCBpdCBpcyBzb21ldGltZXMgdXNlZnVsIHRvIHJ1biBVbmNydXN0aWZ5IGFn YWluc3QgYSBwYXJ0aWN1bGFyIGZpbGUNCj4gICAgICAgYW5kIGNoZWNrIHRoZSBkZWJ1ZyBvdXRw dXQgdG8gdW5kZXJzdGFuZCB3aGF0IHJ1bGUgd2FzIGFwcGxpZWQgYW5kIHdoeSBpdCB3YXMgYXBw bGllZC4gVGhlIGNvbW1hbmQgc2hvd3MgYW4NCj4gICAgICAgZXhhbXBsZSBvZiBob3cgdG8gcnVu IHRoZSBjb25maWd1cmF0aW9uIGZpbGUgYHVuY3J1c3RpZnkuY2ZnYCBhZ2FpbnN0IHRoZSBzb3Vy Y2UgZmlsZSBgVmFyaWFibGVTbW0uY2Agd2hlcmUgdGhlDQo+ICAgICAgIGZpbGUgaXMgZm9yY2Vk IHRvIGJlIHRyZWF0ZWQgYXMgQywgdGhlIGRlYnVnIG91dHB1dCBpcyB3cml0dGVuIHRvIGB1bmNy dXN0aWZ5X2RlYnVnLnR4dGAgYW5kIHRoZSBsb2cgc2V2ZXJpdHkgbGV2ZWwNCj4gICAgICAgaXMg c2V0IHRvICJhbGwiLg0KPiANCj4gKyAgIFdpbmRvd3M6DQo+ICsNCj4gICAgIGBgYHNoZWxsDQo+ IC0gICB1bmNydXN0aWZ5LmV4ZSAtYyAuXC5weXRvb2xcUGx1Z2luXFVuY3J1c3RpZnlDaGVja1x1 bmNydXN0aWZ5LmNmZyAtZg0KPiAuXE1kZU1vZHVsZVBrZ1xVbml2ZXJzYWxcVmFyaWFibGVcUnVu dGltZUR4ZVxWYXJpYWJsZVNtbS5jIC1vIG91dHB1dC5jIC1sIEMgLXAgdW5jcnVzdGlmeV9kZWJ1 Zy50eHQgLUwgQQ0KPiAyPnZlcmJvc2VfZGVidWcudHh0DQo+ICsgICAuXC5weXRvb2xcUGx1Z2lu XFVuY3J1c3RpZnlDaGVja1xtdS11bmNydXN0aWZ5LXJlbGVhc2VfZXh0ZGVwXFdpbmRvd3MteDg2 XHVuY3J1c3RpZnkuZXhlIC1jDQo+IC5cLnB5dG9vbFxQbHVnaW5cVW5jcnVzdGlmeUNoZWNrXHVu Y3J1c3RpZnkuY2ZnIC1mIC5cTWRlTW9kdWxlUGtnXFVuaXZlcnNhbFxWYXJpYWJsZVxSdW50aW1l RHhlXFZhcmlhYmxlU21tLmMgLW8gb3V0cHV0LmMNCj4gLWwgQyAtcCB1bmNydXN0aWZ5X2RlYnVn LnR4dCAtTCBBIDI+dmVyYm9zZV9kZWJ1Zy50eHQNCj4gICAgIGBgYA0KPiANCj4gIFVuY3J1c3Rp Znkgd2lsbCB1cGRhdGUgdGhlIHNvdXJjZSBmaWxlcyBpbi1wbGFjZSAod2l0aCB0aGUgY29tbWFu ZHMgZ2l2ZW4pLiBUaGlzIGFsbG93cyB5b3UgdG8gZGlmZiB0aGUgcmVzdWx0cyB3aXRoDQo+IC1n aXQuIEZyb20gaGVyZSwgeW91IGNhbiBpdGVyYXRpdmVseSB0d2VhayB0aGUgY29uZmlndXJhdGlv biBmaWxlIGFuZCBjaGVjayB0aGUgcmVzdWx0cyB1bnRpbCB5b3VyIHNhdGlzZmllZCB3aXRoIHRo ZQ0KPiArZ2l0LiBGcm9tIGhlcmUsIHlvdSBjYW4gaXRlcmF0aXZlbHkgdHdlYWsgdGhlIGNvbmZp Z3VyYXRpb24gZmlsZSBhbmQgY2hlY2sgdGhlIHJlc3VsdHMgdW50aWwgeW91IGFyZSBzYXRpc2Zp ZWQgd2l0aCB0aGUNCj4gIG91dGNvbWUuDQo+IA0KPiAgIyMgVW5jcnVzdGlmeSBpbiBDSQ0KPiBA QCAtMTkyLDcgKzIzOCw5IEBAIHRlcm1pbmFsIG91dHB1dCBpbiBsb2NhbCBDSSBhbmQgdGhlIGJ1 aWxkIG91dHB1dCBsb2cgaW4gc2VydmVyIENJLg0KPiAgUmVhZCB0aGUgW1VuY3J1c3RpZnlDaGVj aw0KPiBSZWFkbWUubWRdKGh0dHBzOi8vZ2l0aHViLmNvbS90aWFub2NvcmUvZWRrMi9ibG9iL21h c3Rlci8ucHl0b29sL1BsdWdpbi9VbmNydXN0aWZ5Q2hlY2svUmVhZG1lLm1kKQ0KPiAgdG8gdW5k ZXJzdGFuZCBtb3JlIGFib3V0IGhvdyB0aGUgcGx1Z2luIGNhbiBiZSBjb25maWd1cmVkIGZvciBD SS4NCj4gDQo+IC0jIyBFeHRyYSBSZWFkaW5nOiBUcmFjaW5nIEhpc3RvcnkgQWNyb3NzIHRoZSBV bmNydXN0aWZ5IENoYW5nZXMNCj4gKyMjIEV4dHJhIFJlYWRpbmc6IFRyYWNpbmcgSGlzdG9yeSBB Y3Jvc3MgdGhlIFVuY3J1c3RpZnkgVHJhbnNpdGlvbiBpbiBlZGsNCj4gKw0KPiArTm90ZTogTW9z dCB1c2VycyBkbyBub3QgbmVlZCB0byByZWFkIHRoaXMgc2VjdGlvbi4NCj4gDQo+ICBJdCBtaWdo dCBiZSBoZWxwZnVsIHRvIHZpZXcgdGhlIGVudGlyZSBoaXN0b3J5IHJld3JpdHRlbiB3aXRoIFVu Y3J1c3RpZnkgZm9ybWF0dGluZyBvbiBldmVyeSBjb21taXQuIEZvciBleGFtcGxlLCBhbg0KPiAg YWx0ZXJuYXRlIHZlcnNpb24gb2YgdGhlIGVkazIgcmVwb3NpdG9yeSB0aGF0IHNlcnZlcyBhcyAi ZG9jdW1lbnRhdGlvbiIgd2l0aCB0aGUgZW50aXJlIGhpc3RvcnkgcmUtd3JpdHRlbi4NCj4gQEAg LTIwNiw3ICsyNTQsNyBAQCBBIHRvb2wgY2FsbGVkIGdpdC1maWx0ZXItcmVwbyBjYW4gYmUgdXNl ZCB0byBwZXJmb3JtIHRoaXMgdHJhbnNmb3JtYXRpb24gYW5kIHJ1bg0KPiAgVGhlIGZvbGxvd2lu ZyBzdGVwcyBjYW4gYmUgdXNlZCB0byBwZXJmb3JtIHRoaXMgdHJhbnNmb3JtYXRpb24uIFRoaXMg aXMgdGhlIFdpbmRvd3MgcHJvY2Vzcy4gQSBMaW51eCBwcm9jZXNzIHdpbGwgYmUNCj4gIGFkZGVk IGluIHRoZSBmdXR1cmUuDQo+IA0KPiAtICA+ICoqV0FSTklORyoqICBUaGlzIG9wZXJhdGlvbiBt b2RpZmllcyAocmV3cml0ZXMpIGFsbCB0aGUgY29tbWl0cyBpbiB0aGUgbG9jYWwgIGNvcHkgb2Yg dGhlIHJlcG8uICBEbyBub3QgcGVyZm9ybQ0KPiArICA+ICoqV0FSTklORyoqICBUaGlzIG9wZXJh dGlvbiBtb2RpZmllcyAocmV3cml0ZXMpIGFsbCB0aGUgY29tbWl0cyBpbiB0aGUgbG9jYWwgY29w eSBvZiB0aGUgcmVwby4gRG8gbm90IHBlcmZvcm0NCj4gICAgICAgICAgICAgICAgICAgdGhlc2Ug c3RlcHMgb24gYSBsb2NhbCByZXBvIHlvdSBhcmUgdXNpbmcgZm9yIGFjdGl2ZSBkZXZlbG9wbWVu dC4NCj4gDQo+ICAxLiBDbG9uZSBlZGsyIGludG8gYSBuZXcgZGlyZWN0b3J5IChzZWUgKipXQVJO SU5HKiopDQo+IC0tDQo+IDIuMjguMC53aW5kb3dzLjENCg0K