From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by mx.groups.io with SMTP id smtpd.web11.10567.1676449055393049323 for ; Wed, 15 Feb 2023 00:17:40 -0800 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=Q045+TL0; spf=pass (domain: intel.com, ip: 192.55.52.88, 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=1676449055; x=1707985055; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=o7OpJWE1fvcXUu2yy6B/xqWilf3a8VrbhSE8RPIX2f8=; b=Q045+TL0aoQGDQDAX2U7iBY+BPexo8/CCgH/Tj2VqLvbiSP9zY/sfyqo zEulAuGAyu274OumuT22NS7uhVl/sq4aXsqvvAbb0di2p/zJQ5nRlbk4O XML9dUB1+RslF3eRaBM1PupVnGguXPRdEVmr8Yag4uq1hwWsbxYukdc/B QFlhA4DHGcw417irq6ZGJqHmSt9cAjCHAsn7t3Fjfs4wNFQlnliqcHvtO s4Lop008Sc1s+7mioIsVh1463OEQkADMkM5JiWzCDJ0ym3hc9BeJWlICH BZF+lMWYRQBzPYOUr8lywDoBQ3VIumf/7xN9IvjCV6Vb7dfVUIhPgJk+h A==; X-IronPort-AV: E=McAfee;i="6500,9779,10621"; a="358794733" X-IronPort-AV: E=Sophos;i="5.97,299,1669104000"; d="scan'208";a="358794733" Received: from orsmga006.jf.intel.com ([10.7.209.51]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Feb 2023 00:17:33 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10621"; a="647070983" X-IronPort-AV: E=Sophos;i="5.97,299,1669104000"; d="scan'208";a="647070983" Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83]) by orsmga006.jf.intel.com with ESMTP; 15 Feb 2023 00:17:33 -0800 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.16; Wed, 15 Feb 2023 00:17:32 -0800 Received: from fmsmsx602.amr.corp.intel.com (10.18.126.82) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.16; Wed, 15 Feb 2023 00:17:32 -0800 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.16 via Frontend Transport; Wed, 15 Feb 2023 00:17:32 -0800 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.108) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.16; Wed, 15 Feb 2023 00:17:31 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Ggm5qo+x68ciNOA72pv2rsglR5tTdypLhteJuyncqOXUjTNt/kj5sGL3NPETTactcXq1XYHH924FDGGq/2oHugN9/AQM74vIsFe60IKs3TcGSJ/gXLFkWcC6H1xtYLD61doaEiNAQzuIM6U1a95RirI9GcxzTict7KzMD65uHRDkADHOIlUJpoTKUrxRdhNJ653fMv4WFcovhc/7iIxXaCrpIwgMADKYRoMEMYBjnAliL7GxgxQxV5IZjbdU3x2ogTAcjOQBiGR8lozBoWketf2nWy7Bo3kyN/MCnNaKsMl2wKEHcpFECPoBKxLtcdPy1GbOvcnRZEZV1NpPXAWjKQ== 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=o7OpJWE1fvcXUu2yy6B/xqWilf3a8VrbhSE8RPIX2f8=; b=KvBEOBSmfxgYs2BX4gX3/dzQ9NTjIt4I1kusyz4sNtp7ln5KofefW7ccXZMuek9hbuvd5feE41CCyCRBoo6uJsS+tkLTKBHl9vxBuWL90j/yIhrWvP0hl8vtI4akY40z2nCqNbrsADE2KWx03Tzjcebr6k8+yBFtFonBYrEmnJp/+h4If9IwiFZJzVXr+ioVJ9zA/Ul1X4/9mcfV6IzqkuM7iTgXvCt8oFuc28B66VGMAnHsInHNN55RMKRpVU5ZbpWFjniZmq/fw87uW1dnljq9Sitovan7IszfTL09QeOAmvXSv4LHJxhO43XmPFlhqaMIBsFQ5QrUT20qE7QeMg== 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 DM4PR11MB7304.namprd11.prod.outlook.com (2603:10b6:8:107::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6086.26; Wed, 15 Feb 2023 08:17:28 +0000 Received: from MN6PR11MB8244.namprd11.prod.outlook.com ([fe80::f890:e4ec:e2d8:5831]) by MN6PR11MB8244.namprd11.prod.outlook.com ([fe80::f890:e4ec:e2d8:5831%3]) with mapi id 15.20.6086.026; Wed, 15 Feb 2023 08:17:28 +0000 From: "Ni, Ray" To: "devel@edk2.groups.io" , "Chen, Christine" , "Kinney, Michael D" , "Palomino Sosa, Guillermo A" CC: "Feng, Bob C" , "Gao, Liming" Subject: Re: [edk2-devel][PATCH V1 1/1] BaseTools: Generate compile information in build report Thread-Topic: [edk2-devel][PATCH V1 1/1] BaseTools: Generate compile information in build report Thread-Index: AQHZOqFZOvXkBHo7n0eaKLatGHTIla7PWXCAgAAQa4CAACBPgIAALCqA Date: Wed, 15 Feb 2023 08:17:28 +0000 Message-ID: References: <320a45f265969df1a108777713e5ac954a75be56.1675735858.git.guillermo.a.palomino.sosa@intel.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_|DM4PR11MB7304:EE_ x-ms-office365-filtering-correlation-id: ef87e51d-bcb8-4a76-f01c-08db0f2d13f2 x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: dzBJQj144xAVHEN1foT/4nzeLYX4R336CggbIYhssaKgz7NoxbVgPEo24bqovETBC6nFf7Yh2n6sYL46sDJuklB6j/yvJAWhHLgaG3NMYirp9gBVV459tooFouXl7N5Y81cF/CNaT5JKPB1deFfhapyhEMMdnerIZpVUMRRQV2baYLJBOcfITNvdMNsxw+MT5Ox8ZjgYiMgqYBqz9cJXjLppsGGqyScc0KXPqxHOo11l2Xvya8paddhK1vo+RXkfa8/+T6Y7Taqy2Hwh8MEfAU3jHGYoF//KQaf2FsIyQ3nBo08IU6LovC+7zasqxnd2QhSggjFlwyRo97LRC52zXkxjbcTv2WIltr8zIdgHlwJ3SxMWXcFLhpbXrAUPXr+LoU36pIPSWvy69PD9bC65Bg4iYpHz3VlWkMh5TwAH7VVtJY7IiWizZ2QF7oxM0OPRIRSQSLXWxRnLEaIOX0pL1HOv04BR8752CErrUNRYTVP5ddr68Y0J/SiyIevQkEIY46aoB10pdDJotWKsLSNL5H0kyFXkDqROJzmUM04lz+7OHT12QT+YyG6dE4pp7uNidOaNbPH6HUgghSe7a/lvP+UsoBb5xGmRGAra7fe0LiU9ZXrJuathx/UpXJZoudg2J9rMg/NOU/CUlAsmIUoXmGuDaOwu59Wi27WUh61uX2OXCOb9VpwClFyDaxhxsjAcoYOfGhNd6vQ97sq4LrOk1pjmn1CpUMeZKcPmUhAQlgI= 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:(13230025)(376002)(396003)(366004)(136003)(346002)(39860400002)(451199018)(5660300002)(41300700001)(8936002)(52536014)(2906002)(30864003)(110136005)(6636002)(54906003)(66476007)(66556008)(66946007)(316002)(4326008)(8676002)(66446008)(33656002)(76116006)(64756008)(55016003)(38100700002)(122000001)(82960400001)(83380400001)(71200400001)(7696005)(86362001)(26005)(186003)(38070700005)(53546011)(9686003)(478600001)(966005)(6506007)(66899018);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?bU5Ib3JUU29ZL2JTanMvQVVKNTI0cFNGSUpJQ0VWaE1wYktPcndTemtzclFN?= =?utf-8?B?aGdXb3gyN0hsNVAvUFRnVjdTcW45R2NxcXlRWjFMZDEyWlJHdEdja1J6MzI3?= =?utf-8?B?WnJuaWRqQXlSa0pZR3AyTzE1NTlWNmJ2clRBMjc5SURHaDRrbzVuWnFyVHFM?= =?utf-8?B?NVJQVHpWc2YzRXpFWUtCU3dsSlBDZEVTdC9OQ0xYK29RbXo1ZVlhTlRHbGxN?= =?utf-8?B?c2QrV1VrOHhtdS92WGdiMWhKTis2L2IzTlhpdzl6Ynp4RWJjOHJCeVlyU1Ar?= =?utf-8?B?czM4bThwMnp0SytoZUw1K3hYbTY3OVJsRWJFNWR5S3dXblJwQjkyUGVkdG94?= =?utf-8?B?MVlKQ2NaVExQVjFYUGpnTzlQUWVaN0txNXVGQnlXSm9OMnRQWXk3Ky9JT3pw?= =?utf-8?B?dXNQamFXSzlER291OVgxcWZJWDArYll1NEsreFdnMWxZa2tUUklhWUVyNjND?= =?utf-8?B?dFEyNXZtRTVJUWQ4Y1ZKRjVMUkpuTVFPY1hFc2NoRE1yelNmQkhIM3FoWWZv?= =?utf-8?B?Y2xvcDNnY1NYTUtsVWx5eUg0SWJPM1lmd1c0SlRVSWlzcGp1aE1DdXA1Q1B1?= =?utf-8?B?N0ZTSmlEdVkrTmc2c3pOZGthNEliNkwrbHgyVFFoRTlTWi9WUE9sK09McDNi?= =?utf-8?B?ejcybTVCTENBenBQeVNVU1lIdW8wcndMaUdkVzlFQ0ZISXNmdFN1Rzg5ZnAx?= =?utf-8?B?T3JFZVJDbVRWR3Nia3dvSGg0RklXd2tzWHFUMmRCTW1PbUpDNkllRUhidVRj?= =?utf-8?B?RVdCYTlvWng5MmNUUmxoRWdwRVl2eGVweVJHd1RFZWdWOXg3MlFEM1VubURQ?= =?utf-8?B?N3p4K1RrYVluMnpjZGxnSXRzV0JidWhtY0pnaHp5aWZyZFNrR3RuWUdROG1V?= =?utf-8?B?NWZvSHcvYXdHbEF4ckkwcjZIYllQRnlOTmQyQnhmRWpCSlY0ZmhxdnZWRDdv?= =?utf-8?B?SmhnaWlFRDhxMEd3ZnFrQ2tGZ0JOU0JMd2dqYmNNeVhxcEZ6WDJqNW5vYTU4?= =?utf-8?B?cTVXbE5XdzEzU0JRWXdHVUJER3o0UzR4NkkvcXdYTVp6aXdpK2Y5S0xOb1Fj?= =?utf-8?B?RGNqUS9IbG9VWkViOFkvVHlFL3ZXYXNZZ1RJMy9kZjVuL2FZMHcwZzF4cS84?= =?utf-8?B?VVRsRkVuQ0JMcjNobGdXOUhreU8yWGNnbGxKbzl2ZEZMWWg3RzQyTkx6RE5W?= =?utf-8?B?Nys2cmRCcGdJS2QrbmZOTmFIcnk4UnplQ3VWOUh6NWJpM0wvRENLVE5PbUlz?= =?utf-8?B?NmdIdk9OamZrYy9xWktaSmlsdVJrcDlsclY1WjkrVmxaUjRRUmRNMjEwZCtR?= =?utf-8?B?N1JJZWw0Tk95SUkyUE1wSE95WVJVamJiVllaL3NnQnZ6TlRnUnJTbjZIOGJs?= =?utf-8?B?cE02eXQwYytsdzVHZ1pKbFNRK29rTUUzckR2WDFKSnNTaTJqODhURkUrV2FT?= =?utf-8?B?UEdOZFVqMlc3R0V4SzRGR0VIdUN0N2E5cmJuRXZJaE5VRElxb21jY010TS9z?= =?utf-8?B?UGhXSUlhU0poblpWTWVHcUpscHYzZWxTbmtZRCtBRUZUNWhZQzJzOTYzcHcy?= =?utf-8?B?RUdQR2JuYjdDRW1ZcEd0aDRrZ254WmFSUFBaQ0NkTjJvSnhETWFBTVM2WUoy?= =?utf-8?B?TUtOYjQ3VEZNdDJ0SGVBQk16dkVGdS8zRHgzRVNNR0lUZG93NktxSmdWTEx5?= =?utf-8?B?OWtwMDhQaFVYQzd4c3VEYUFZdXo1alE0RlF2T3RLdlU4VEFMdTlGNU9NSlM2?= =?utf-8?B?Mmo3bUptK2VwSDVZT3kvd3JWTjQwMUlNVVJoc3IvUm5wd0FEUThDR01vVjlK?= =?utf-8?B?VkduVmFyQ1lib2xEdUp5Q1h1bWhMclpKUXhhMFJSWmNLUVZjL1E0ZThpM2JB?= =?utf-8?B?UWlabDhTY0MxcEtmV3cxMW5nL0tDbVNtSWQrV0hLRFFFdzNRNk52VlJvcFZS?= =?utf-8?B?aTAzUjZpTmVpU0tsTEdHT01YdnNaa1JEK1RYeDhzdjdwcHQ3NzkzQVVRdGtU?= =?utf-8?B?NklyUUQ0Z3VPUXZoSU56Vy9ZY200L2lkZHI0b3FzaG9PTkVHT1hFWW5sanlt?= =?utf-8?B?T1YvUE00c1Z6anlhaTRxc1RKSHpzL2Rhd3ZtZjR2cHlyQXU1aXZlMGhoWmZQ?= =?utf-8?Q?Q6Gc=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: ef87e51d-bcb8-4a76-f01c-08db0f2d13f2 X-MS-Exchange-CrossTenant-originalarrivaltime: 15 Feb 2023 08:17:28.5065 (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: XyS4P8HmktrMbFpu6ZuW30iJhI/NOvgQoQ32i2ec+3BqFVB576mZDa7CqjLOUT/Z/mcDs3csubLejtva8uj8jw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM4PR11MB7304 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 Q2hyaXN0aW5lLA0KSWYgQmFzZVRvb2xzIHJlbGF0ZWQgY2hhbmdlcyBpcyBpbXBsZW1lbnRlZCBp biBlZGsyLWJhc2V0b29scyByZXBvLA0KZG9lcyB0aGF0IG1lYW4gaWYgSSBvbmx5IGNoZWNrb3V0 IGVkazIgcmVwbywgSSBhbSB1c2luZyBhbiBvbGRlciB2ZXJzaW9uIG9mIEJhc2VUb29scz8NCg0K VGhhbmtzLA0KUmF5DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogZGV2 ZWxAZWRrMi5ncm91cHMuaW8gPGRldmVsQGVkazIuZ3JvdXBzLmlvPiBPbiBCZWhhbGYgT2YgWXV3 ZWkNCj4gQ2hlbg0KPiBTZW50OiBXZWRuZXNkYXksIEZlYnJ1YXJ5IDE1LCAyMDIzIDE6MzggUE0N Cj4gVG86IEtpbm5leSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT47IGRl dmVsQGVkazIuZ3JvdXBzLmlvOw0KPiBQYWxvbWlubyBTb3NhLCBHdWlsbGVybW8gQSA8Z3VpbGxl cm1vLmEucGFsb21pbm8uc29zYUBpbnRlbC5jb20+DQo+IENjOiBGZW5nLCBCb2IgQyA8Ym9iLmMu ZmVuZ0BpbnRlbC5jb20+OyBHYW8sIExpbWluZw0KPiA8Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNu Pg0KPiBTdWJqZWN0OiBSZTogW2VkazItZGV2ZWxdW1BBVENIIFYxIDEvMV0gQmFzZVRvb2xzOiBH ZW5lcmF0ZSBjb21waWxlDQo+IGluZm9ybWF0aW9uIGluIGJ1aWxkIHJlcG9ydA0KPiANCj4gSGkg TWlrZSwgdGhhbmtzIGZvciByZW1pbmRlci4NCj4gDQo+IEhpIFdpbGx5LCBjdXJyZW50bHksIEJh c2VUb29scyByZWxhdGVkIGNoYW5nZXMgd2lsbCBiZSBpbXBsZW1lbnRlZCBvbiB0aGUNCj4gZWRr Mi1iYXNldG9vbHMgcmVwby4gUGxlYXNlIHNlbmQgdGhlIHBhdGNoIGJhc2VkIG9uIHRoZSBlZGsy LWJhc2V0b29scw0KPiByZXBvfg0KPiANCj4gVGhhbmtzLA0KPiBDaHJpc3RpbmUNCj4gDQo+ID4g LS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gPiBGcm9tOiBLaW5uZXksIE1pY2hhZWwgRCA8 bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+DQo+ID4gU2VudDogV2VkbmVzZGF5LCBGZWJydWFy eSAxNSwgMjAyMyAxMTo0MyBBTQ0KPiA+IFRvOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbzsgQ2hlbiwg Q2hyaXN0aW5lIDx5dXdlaS5jaGVuQGludGVsLmNvbT47DQo+ID4gUGFsb21pbm8gU29zYSwgR3Vp bGxlcm1vIEEgPGd1aWxsZXJtby5hLnBhbG9taW5vLnNvc2FAaW50ZWwuY29tPg0KPiA+IENjOiBG ZW5nLCBCb2IgQyA8Ym9iLmMuZmVuZ0BpbnRlbC5jb20+OyBHYW8sIExpbWluZw0KPiA+IDxnYW9s aW1pbmdAYnlvc29mdC5jb20uY24+OyBLaW5uZXksIE1pY2hhZWwgRA0KPiA+IDxtaWNoYWVsLmQu a2lubmV5QGludGVsLmNvbT4NCj4gPiBTdWJqZWN0OiBSRTogW2VkazItZGV2ZWxdW1BBVENIIFYx IDEvMV0gQmFzZVRvb2xzOiBHZW5lcmF0ZSBjb21waWxlDQo+ID4gaW5mb3JtYXRpb24gaW4gYnVp bGQgcmVwb3J0DQo+ID4NCj4gPiBIYXMgdGhpcyBiZWVuIHJldmlld2VkIGZvciBlZGsyLWJhc2V0 b29scyByZXBvPw0KPiA+DQo+ID4gTWlrZQ0KPiA+DQo+ID4gPiAtLS0tLU9yaWdpbmFsIE1lc3Nh Z2UtLS0tLQ0KPiA+ID4gRnJvbTogZGV2ZWxAZWRrMi5ncm91cHMuaW8gPGRldmVsQGVkazIuZ3Jv dXBzLmlvPiBPbiBCZWhhbGYgT2YNCj4gWXV3ZWkNCj4gPiA+IENoZW4NCj4gPiA+IFNlbnQ6IFR1 ZXNkYXksIEZlYnJ1YXJ5IDE0LCAyMDIzIDY6NDQgUE0NCj4gPiA+IFRvOiBQYWxvbWlubyBTb3Nh LCBHdWlsbGVybW8gQSA8Z3VpbGxlcm1vLmEucGFsb21pbm8uc29zYUBpbnRlbC5jb20+Ow0KPiA+ ID4gZGV2ZWxAZWRrMi5ncm91cHMuaW8NCj4gPiA+IENjOiBGZW5nLCBCb2IgQyA8Ym9iLmMuZmVu Z0BpbnRlbC5jb20+OyBHYW8sIExpbWluZw0KPiA+ID4gPGdhb2xpbWluZ0BieW9zb2Z0LmNvbS5j bj4NCj4gPiA+IFN1YmplY3Q6IFJlOiBbZWRrMi1kZXZlbF1bUEFUQ0ggVjEgMS8xXSBCYXNlVG9v bHM6IEdlbmVyYXRlIGNvbXBpbGUNCj4gPiA+IGluZm9ybWF0aW9uIGluIGJ1aWxkIHJlcG9ydA0K PiA+ID4NCj4gPiA+IFJldmlld2VkLWJ5OiBZdXdlaSBDaGVuIDx5dXdlaS5jaGVuQGludGVsLmNv bT4NCj4gPiA+DQo+ID4gPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gPiA+IEZy b206IFBhbG9taW5vIFNvc2EsIEd1aWxsZXJtbyBBDQo+ID4gPiA+IDxndWlsbGVybW8uYS5wYWxv bWluby5zb3NhQGludGVsLmNvbT4NCj4gPiA+ID4gU2VudDogVHVlc2RheSwgRmVicnVhcnkgNywg MjAyMyAxMTowNyBBTQ0KPiA+ID4gPiBUbzogZGV2ZWxAZWRrMi5ncm91cHMuaW8NCj4gPiA+ID4g Q2M6IEZlbmcsIEJvYiBDIDxib2IuYy5mZW5nQGludGVsLmNvbT47IEdhbywgTGltaW5nDQo+ID4g PiA+IDxnYW9saW1pbmdAYnlvc29mdC5jb20uY24+OyBDaGVuLCBDaHJpc3RpbmUgPHl1d2VpLmNo ZW5AaW50ZWwuY29tPg0KPiA+ID4gPiBTdWJqZWN0OiBbZWRrMi1kZXZlbF1bUEFUQ0ggVjEgMS8x XSBCYXNlVG9vbHM6IEdlbmVyYXRlIGNvbXBpbGUNCj4gPiA+ID4gaW5mb3JtYXRpb24gaW4gYnVp bGQgcmVwb3J0DQo+ID4gPiA+DQo+ID4gPiA+IFJFRjpodHRwczovL2J1Z3ppbGxhLnRpYW5vY29y ZS5vcmcvc2hvd19idWcuY2dpP2lkPTI4NTANCj4gPiA+ID4NCj4gPiA+ID4gQWRkICItWSBSRVBP UlRfSU5GTyIgb3B0aW9uIHRvIGJ1aWxkIGNvbW1hbmQgdG8gZ2VuZXJhdGUgY29tcGlsZQ0KPiA+ ID4gPiBpbmZvcm1hdGlvbiBhcyBwYXJ0IG9mIEJ1aWxkUmVwb3J0Lg0KPiA+ID4gPiBUaGlzIG9w dGlvbiBnZW5lcmF0ZXMgZmlsZXMgdG8gYmUgdXNlZCBieSBleHRlcm5hbCB0b29scyBhcyBJREUn cyB0bw0KPiA+ID4gPiBlbmhhbmNlIGZ1bmN0aW9uYWxpdHkuDQo+ID4gPiA+IEZpbGVzIGFyZSBj cmVhdGVkIGluc2lkZSBidWlsZCBmb2xkZXI6DQo+ID4gPiA+IDxCdWlsZD4vPEJ1aWxkVGFyZ2V0 Pi88VG9vbENoYWluPi9Db21waWxlSW5mbw0KPiA+ID4gPg0KPiA+ID4gPiBGaWxlcyBjcmVhdGVk Og0KPiA+ID4gPiAqIGNvbXBpbGVfY29tbWFuZHMuanNvbiAtIENvbXBpbGF0aW9uIERhdGFiYXNl LiBUbyBiZSB1c2VkIGJ5IElERSdzDQo+ID4gPiA+ICAgdG8gZW5hYmxlIGFkdmFuY2UgZmVhdHVy ZXMNCj4gPiA+ID4gKiBjc2NvcGUuZmlsZXMgLSBMaXN0IG9mIGZpbGVzIHVzZWQgaW4gY29tcGls YXRpb24uIFVzZWQgYnkgQ3Njb3BlIHRvIHBhcnNlDQo+ID4gPiA+ICAgQyBjb2RlIGFuZCBwcm92 aWRlIGJyb3dzZSBmdW5jdGlvbmFsaXR5Lg0KPiA+ID4gPiAqIG1vZHVsZV9yZXBvcnQuanNvbiAt IE1vZHVsZSBkYXRhIGZvcm0gYnVpbGRSZXBvcnQgaW4gSnNvbiBmb3JtYXQuDQo+ID4gPiA+DQo+ ID4gPiA+IFNpZ25lZC1vZmYtYnk6IEd1aWxsZXJtbyBBbnRvbmlvIFBhbG9taW5vIFNvc2ENCj4g PiA+ID4gPGd1aWxsZXJtby5hLnBhbG9taW5vLnNvc2FAaW50ZWwuY29tPg0KPiA+ID4gPiAtLS0N Cj4gPiA+ID4gIEJhc2VUb29scy9Tb3VyY2UvUHl0aG9uL2J1aWxkL0J1aWxkUmVwb3J0LnB5ICB8 IDEzOQ0KPiA+ID4gPiArKysrKysrKysrKysrKysrKysrLQ0KPiA+ID4gPiAgQmFzZVRvb2xzL1Nv dXJjZS9QeXRob24vYnVpbGQvYnVpbGRvcHRpb25zLnB5IHwgICA0ICstDQo+ID4gPiA+ICAyIGZp bGVzIGNoYW5nZWQsIDE0MCBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQ0KPiA+ID4gPg0K PiA+ID4gPiBkaWZmIC0tZ2l0IGEvQmFzZVRvb2xzL1NvdXJjZS9QeXRob24vYnVpbGQvQnVpbGRS ZXBvcnQucHkNCj4gPiA+ID4gYi9CYXNlVG9vbHMvU291cmNlL1B5dGhvbi9idWlsZC9CdWlsZFJl cG9ydC5weQ0KPiA+ID4gPiBpbmRleCA0Njg3NzI5MzBjLi4zM2I0M2Q0NzFmIDEwMDY0NA0KPiA+ ID4gPiAtLS0gYS9CYXNlVG9vbHMvU291cmNlL1B5dGhvbi9idWlsZC9CdWlsZFJlcG9ydC5weQ0K PiA+ID4gPiArKysgYi9CYXNlVG9vbHMvU291cmNlL1B5dGhvbi9idWlsZC9CdWlsZFJlcG9ydC5w eQ0KPiA+ID4gPiBAQCAtMTAsNiArMTAsOCBAQA0KPiA+ID4gPg0KPiA+ID4gPiAgIyMgSW1wb3J0 IE1vZHVsZXMNCj4gPiA+ID4gICMNCj4gPiA+ID4gK2ltcG9ydCBqc29uDQo+ID4gPiA+ICtmcm9t IHBhdGhsaWIgaW1wb3J0IFBhdGgNCj4gPiA+ID4gIGltcG9ydCBDb21tb24uTG9uZ0ZpbGVQYXRo T3MgYXMgb3MNCj4gPiA+ID4gIGltcG9ydCByZQ0KPiA+ID4gPiAgaW1wb3J0IHBsYXRmb3JtDQo+ ID4gPiA+IEBAIC00MSw2ICs0Myw3IEBAIGZyb20gQ29tbW9uLkRhdGFUeXBlIGltcG9ydCAqICBp bXBvcnQNCj4gPiBjb2xsZWN0aW9ucw0KPiA+ID4gPiBmcm9tIENvbW1vbi5FeHByZXNzaW9uIGlt cG9ydCAqICBmcm9tIEdlbkZkcy5BcHJpb3JpU2VjdGlvbiBpbXBvcnQNCj4gPiA+ID4gRFhFX0FQ UklPUklfR1VJRCwgUEVJX0FQUklPUklfR1VJRA0KPiA+ID4gPiArZnJvbSBBdXRvR2VuLkluY2x1 ZGVzQXV0b0dlbiBpbXBvcnQgSW5jbHVkZXNBdXRvR2VuDQo+ID4gPiA+DQo+ID4gPiA+ICAjIyBQ YXR0ZXJuIHRvIGV4dHJhY3QgY29udGVudHMgaW4gRURLIERYUyBmaWxlcw0KPiA+ID4gPiBnRHhz RGVwZW5kZW5jeVBhdHRlcm4gPQ0KPiA+ID4gPiByZS5jb21waWxlKHIiREVQRU5ERU5DWV9TVEFS VCguKylERVBFTkRFTkNZX0VORCIsIHJlLkRPVEFMTCkNCj4gPiBAQCAtDQo+ID4gPiA+IDIyOTgs NiArMjMwMSwxMCBAQCBjbGFzcyBCdWlsZFJlcG9ydChvYmplY3QpOg0KPiA+ID4gPiAgICAgIGRl ZiBHZW5lcmF0ZVJlcG9ydChzZWxmLCBCdWlsZER1cmF0aW9uLCBBdXRvR2VuVGltZSwgTWFrZVRp bWUsDQo+ID4gPiA+IEdlbkZkc1RpbWUpOg0KPiA+ID4gPiAgICAgICAgICBpZiBzZWxmLlJlcG9y dEZpbGU6DQo+ID4gPiA+ICAgICAgICAgICAgICB0cnk6DQo+ID4gPiA+ICsNCj4gPiA+ID4gKyAg ICAgICAgICAgICAgICBpZiAiQ09NUElMRV9JTkZPIiBpbiBzZWxmLlJlcG9ydFR5cGU6DQo+ID4g PiA+ICsgICAgICAgICAgICAgICAgICAgIHNlbGYuR2VuZXJhdGVDb21waWxlSW5mbygpDQo+ID4g PiA+ICsNCj4gPiA+ID4gICAgICAgICAgICAgICAgICBGaWxlID0gW10NCj4gPiA+ID4gICAgICAg ICAgICAgICAgICBmb3IgKFdhLCBNYUxpc3QpIGluIHNlbGYuUmVwb3J0TGlzdDoNCj4gPiA+ID4g ICAgICAgICAgICAgICAgICAgICAgUGxhdGZvcm1SZXBvcnQoV2EsIE1hTGlzdCwNCj4gPiA+ID4g c2VsZi5SZXBvcnRUeXBlKS5HZW5lcmF0ZVJlcG9ydChGaWxlLCBCdWlsZER1cmF0aW9uLCBBdXRv R2VuVGltZSwNCj4gPiA+ID4gTWFrZVRpbWUsIEdlbkZkc1RpbWUsIHNlbGYuUmVwb3J0VHlwZSkg QEAgLTIzMTAsNyArMjMxNywxMzcgQEANCj4gPiBjbGFzcw0KPiA+ID4gPiBCdWlsZFJlcG9ydChv YmplY3QpOg0KPiA+ID4gPiAgICAgICAgICAgICAgICAgIEVka0xvZ2dlci5lcnJvcigiQnVpbGRS ZXBvcnQiLCBDT0RFX0VSUk9SLCAiVW5rbm93bg0KPiA+ID4gPiBmYXRhbCBlcnJvciB3aGVuIGdl bmVyYXRpbmcgYnVpbGQgcmVwb3J0IiwNCj4gPiA+ID4gRXh0cmFEYXRhPXNlbGYuUmVwb3J0Rmls ZSwNCj4gPiA+ID4gUmFpc2VFcnJvcj1GYWxzZSkNCj4gPiA+ID4gICAgICAgICAgICAgICAgICBF ZGtMb2dnZXIucXVpZXQoIihQeXRob24gJXMgb24gJXNcbiVzKSIgJQ0KPiA+ID4gPiAocGxhdGZv cm0ucHl0aG9uX3ZlcnNpb24oKSwgc3lzLnBsYXRmb3JtLCB0cmFjZWJhY2suZm9ybWF0X2V4Yygp KSkNCj4gPiA+ID4NCj4gPiA+ID4gKw0KPiA+ID4gPiArICAgICMjDQo+ID4gPiA+ICsgICAgIyBH ZW5lcmF0ZXMgY29tcGlsZSBkYXRhIGZpbGVzIHRvIGJlIHVzZWQgYnkgZXh0ZXJuYWwgdG9vbHMu DQo+ID4gPiA+ICsgICAgIyBDb21waWxlIGluZm9ybWF0aW9uIHdpbGwgYmUgZ2VuZXJhdGVkIGlu DQo+ID4gPiA+IDxCdWlsZD4vPEJ1aWxkVGFyZ2V0Pi88VG9vbENoYWluPi9Db21waWxlSW5mbw0K PiA+ID4gPiArICAgICMgRmlsZXMgZ2VuZXJhdGVkOiBjb21waWxlX2NvbW1hbmRzLmpzb24sIGNz Y29wZS5maWxlcywNCj4gPiA+ID4gbW9kdWxlc19yZXBvcnQuanNvbg0KPiA+ID4gPiArICAgICMN Cj4gPiA+ID4gKyAgICAjIEBwYXJhbSBzZWxmICAgICAgICAgICAgVGhlIG9iamVjdCBwb2ludGVy DQo+ID4gPiA+ICsgICAgIw0KPiA+ID4gPiArICAgIGRlZiBHZW5lcmF0ZUNvbXBpbGVJbmZvKHNl bGYpOg0KPiA+ID4gPiArICAgICAgICB0cnk6DQo+ID4gPiA+ICsgICAgICAgICAgICAjIExpc3Rz IGZvciB0aGUgb3V0cHV0IGVsZW1lbnRzDQo+ID4gPiA+ICsgICAgICAgICAgICBjb21waWxlX2Nv bW1hbmRzID0gW10NCj4gPiA+ID4gKyAgICAgICAgICAgIHVzZWRfZmlsZXMgPSBzZXQoKQ0KPiA+ ID4gPiArICAgICAgICAgICAgbW9kdWxlX3JlcG9ydCA9IFtdDQo+ID4gPiA+ICsNCj4gPiA+ID4g KyAgICAgICAgICAgIGZvciAoV2EsIE1hTGlzdCkgaW4gc2VsZi5SZXBvcnRMaXN0Og0KPiA+ID4g PiArICAgICAgICAgICAgICAgICMgT2J0YWluIGxpc3Qgb2YgYWxsIHByb2Nlc3NlZCBXb3Jrc3Bh Y2UgZmlsZXMNCj4gPiA+ID4gKyAgICAgICAgICAgICAgICBmb3IgZmlsZV9wYXRoIGluIFdhLl9H ZXRNZXRhRmlsZXMoV2EuQnVpbGRUYXJnZXQsDQo+ID4gV2EuVG9vbENoYWluKToNCj4gPiA+ID4g KyAgICAgICAgICAgICAgICAgICAgdXNlZF9maWxlcy5hZGQoZmlsZV9wYXRoKQ0KPiA+ID4gPiAr DQo+ID4gPiA+ICsgICAgICAgICAgICAgICAgZm9yIGF1dG9HZW4gaW4gV2EuQXV0b0dlbk9iamVj dExpc3Q6DQo+ID4gPiA+ICsNCj4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgIyBMb29wIHRo cm91Z2ggYWxsIG1vZHVsZXMNCj4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgZm9yIG1vZHVs ZSBpbiAoYXV0b0dlbi5MaWJyYXJ5QXV0b0dlbkxpc3QgKw0KPiA+ID4gPiBhdXRvR2VuLk1vZHVs ZUF1dG9HZW5MaXN0KToNCj4gPiA+ID4gKw0KPiA+ID4gPiArICAgICAgICAgICAgICAgICAgICAg ICAgdXNlZF9maWxlcy5hZGQobW9kdWxlLk1ldGFGaWxlLlBhdGgpDQo+ID4gPiA+ICsNCj4gPiA+ ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICMgTWFpbiBlbGVtZW50cyBvZiBtb2R1bGUgcmVw b3J0DQo+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICBtb2R1bGVfcmVwb3J0X2RhdGEg PSB7fQ0KPiA+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICAgbW9kdWxlX3JlcG9ydF9kYXRh WyJOYW1lIl0gPSBtb2R1bGUuTmFtZQ0KPiA+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICAg bW9kdWxlX3JlcG9ydF9kYXRhWyJBcmNoIl0gPSBtb2R1bGUuQXJjaA0KPiA+ID4gPiArICAgICAg ICAgICAgICAgICAgICAgICAgbW9kdWxlX3JlcG9ydF9kYXRhWyJQYXRoIl0gPSBtb2R1bGUuTWV0 YUZpbGUuUGF0aA0KPiA+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICAgbW9kdWxlX3JlcG9y dF9kYXRhWyJHdWlkIl0gPSBtb2R1bGUuR3VpZA0KPiA+ID4gPiArICAgICAgICAgICAgICAgICAg ICAgICAgbW9kdWxlX3JlcG9ydF9kYXRhWyJCdWlsZFR5cGUiXSA9IG1vZHVsZS5CdWlsZFR5cGUN Cj4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgIG1vZHVsZV9yZXBvcnRfZGF0YVsiSXNM aWJyYXJ5Il0gPSBtb2R1bGUuSXNMaWJyYXJ5DQo+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAg ICAgICBtb2R1bGVfcmVwb3J0X2RhdGFbIlNvdXJjZURpciJdID0gbW9kdWxlLlNvdXJjZURpcg0K PiA+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICAgbW9kdWxlX3JlcG9ydF9kYXRhWyJGaWxl cyJdID0gW10NCj4gPiA+ID4gKw0KPiA+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICAgIyBG aWxlcyB1c2VkIGJ5IG1vZHVsZQ0KPiA+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICAgZm9y IGRhdGFfZmlsZSBpbiBtb2R1bGUuU291cmNlRmlsZUxpc3Q6DQo+ID4gPiA+ICsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgbW9kdWxlX3JlcG9ydF9kYXRhWyJGaWxlcyJdLmFwcGVuZCh7Ik5h bWUiOg0KPiA+ID4gPiArIGRhdGFfZmlsZS5OYW1lLCAiUGF0aCI6IGRhdGFfZmlsZS5QYXRofSkN Cj4gPiA+ID4gKw0KPiA+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICAgIyBMaWJyYXJpZXMg dXNlZCBieSBtb2R1bGUNCj4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgIG1vZHVsZV9y ZXBvcnRfZGF0YVsiTGlicmFyaWVzIl0gPSBbXQ0KPiA+ID4gPiArICAgICAgICAgICAgICAgICAg ICAgICAgZm9yIGRhdGFfbGlicmFyeSBpbiBtb2R1bGUuTGlicmFyeUF1dG9HZW5MaXN0Og0KPiA+ ID4gPiArDQo+ID4gPiA+ICsgbW9kdWxlX3JlcG9ydF9kYXRhWyJMaWJyYXJpZXMiXS5hcHBlbmQo eyJQYXRoIjoNCj4gPiA+ID4gKyBkYXRhX2xpYnJhcnkuTWV0YUZpbGUuUGF0aH0pDQo+ID4gPiA+ ICsNCj4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICMgUGFja2FnZXMgdXNlZCBieSBt b2R1bGUNCj4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgIG1vZHVsZV9yZXBvcnRfZGF0 YVsiUGFja2FnZXMiXSA9IFtdDQo+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICBmb3Ig ZGF0YV9wYWNrYWdlIGluIG1vZHVsZS5QYWNrYWdlTGlzdDoNCj4gPiA+ID4gKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICBtb2R1bGVfcmVwb3J0X2RhdGFbIlBhY2thZ2VzIl0uYXBwZW5kKHsi UGF0aCI6DQo+ID4gPiA+IGRhdGFfcGFja2FnZS5NZXRhRmlsZS5QYXRoLCAiSW5jbHVkZXMiOiBb XX0pDQo+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBJbmNsdWRlcyBwYXRo IHVzZWQgaW4gcGFja2FnZQ0KPiA+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZv ciBkYXRhX3BhY2thZ2VfaW5jbHVkZSBpbiBkYXRhX3BhY2thZ2UuSW5jbHVkZXM6DQo+ID4gPiA+ ICsNCj4gPiA+ID4gKyBtb2R1bGVfcmVwb3J0X2RhdGFbIlBhY2thZ2VzIl1bLQ0KPiA+ID4gPiAx XVsiSW5jbHVkZXMiXS5hcHBlbmQoZGF0YV9wYWNrYWdlX2luYw0KPiA+ID4gPiArIGx1ZGUuUGF0 aCkNCj4gPiA+ID4gKw0KPiA+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICAgIyBQUEkncyBp biBtb2R1bGUNCj4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgIG1vZHVsZV9yZXBvcnRf ZGF0YVsiUFBJIl0gPSBbXQ0KPiA+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICAgZm9yIGRh dGFfcHBpIGluIG1vZHVsZS5QcGlMaXN0LmtleXMoKToNCj4gPiA+ID4gKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICBtb2R1bGVfcmVwb3J0X2RhdGFbIlBQSSJdLmFwcGVuZCh7Ik5hbWUiOg0K PiA+ID4gPiArIGRhdGFfcHBpLCAiR3VpZCI6IG1vZHVsZS5QcGlMaXN0W2RhdGFfcHBpXX0pDQo+ ID4gPiA+ICsNCj4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICMgUHJvdG9jb2wncyBp biBtb2R1bGUNCj4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgIG1vZHVsZV9yZXBvcnRf ZGF0YVsiUHJvdG9jb2wiXSA9IFtdDQo+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICBm b3IgZGF0YV9wcm90b2NvbCBpbiBtb2R1bGUuUHJvdG9jb2xMaXN0LmtleXMoKToNCj4gPiA+ID4g Kw0KPiA+ID4gPiArIG1vZHVsZV9yZXBvcnRfZGF0YVsiUHJvdG9jb2wiXS5hcHBlbmQoeyJOYW1l IjogZGF0YV9wcm90b2NvbCwNCj4gPiAiR3VpZCI6DQo+ID4gPiA+ICsgbW9kdWxlLlByb3RvY29s TGlzdFtkYXRhX3Byb3RvY29sXX0pDQo+ID4gPiA+ICsNCj4gPiA+ID4gKyAgICAgICAgICAgICAg ICAgICAgICAgICMgUENEJ3MgaW4gbW9kdWxlDQo+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAg ICAgICBtb2R1bGVfcmVwb3J0X2RhdGFbIlBjZCJdID0gW10NCj4gPiA+ID4gKyAgICAgICAgICAg ICAgICAgICAgICAgIGZvciBkYXRhX3BjZCBpbiBtb2R1bGUuTGlicmFyeVBjZExpc3Q6DQo+ID4g PiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgbW9kdWxlX3JlcG9ydF9kYXRhWyJQY2Qi XS5hcHBlbmQoeyJTcGFjZSI6DQo+ID4gPiA+IGRhdGFfcGNkLlRva2VuU3BhY2VHdWlkQ05hbWUs DQo+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICJOYW1lIjogZGF0YV9wY2QuVG9rZW5DTmFtZSwNCj4gPiA+ID4gKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIlZhbHVlIjogZGF0YV9wY2QuVG9rZW5WYWx1ZSwNCj4gPiA+ID4gKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkd1aWQiOg0K PiA+IGRhdGFfcGNkLlRva2VuU3BhY2VHdWlkVmFsdWUsDQo+ID4gPiA+ICsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJEYXR1bVR5 cGUiOiBkYXRhX3BjZC5EYXR1bVR5cGUsDQo+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJUeXBlIjogZGF0YV9wY2Qu VHlwZSwNCj4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIkRlZmF1bHRWYWx1ZSI6DQo+ID4gZGF0YV9wY2QuRGVmYXVs dFZhbHVlfSkNCj4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICMgQWRkIG1vZHVsZSB0 byByZXBvcnQNCj4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgIG1vZHVsZV9yZXBvcnQu YXBwZW5kKG1vZHVsZV9yZXBvcnRfZGF0YSkNCj4gPiA+ID4gKw0KPiA+ID4gPiArICAgICAgICAg ICAgICAgICAgICAgICAgIyBJbmNsdWRlIGZpbGUgZGVwZW5kZW5jaWVzIHRvIHVzZWQgZmlsZXMN Cj4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgIGluY2x1ZGVzX2F1dG9nZW4gPQ0KPiA+ ID4gPiArIEluY2x1ZGVzQXV0b0dlbihtb2R1bGUuTWFrZUZpbGVEaXIsDQo+ID4gPiA+IG1vZHVs ZSkNCj4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgIGZvciBkZXAgaW4gaW5jbHVkZXNf YXV0b2dlbi5EZXBzQ29sbGVjdGlvbjoNCj4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICB1c2VkX2ZpbGVzLmFkZChkZXApDQo+ID4gPiA+ICsNCj4gPiA+ID4gKyAgICAgICAgICAg ICAgICAgICAgICAgIGluY19mbGFnID0gIi1JIiAjIERlZmF1bHQgaW5jbHVkZSBmbGFnDQo+ID4g PiA+ICsgICAgICAgICAgICAgICAgICAgICAgICBpZiBtb2R1bGUuQnVpbGRSdWxlRmFtaWx5ID09 IFRBQl9DT01QSUxFUl9NU0ZUOg0KPiA+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAg IGluY19mbGFnID0gIi9JIg0KPiA+ID4gPiArDQo+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAg ICAgICBmb3Igc291cmNlIGluIG1vZHVsZS5Tb3VyY2VGaWxlTGlzdDoNCj4gPiA+ID4gKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICB1c2VkX2ZpbGVzLmFkZChzb3VyY2UuUGF0aCkNCj4gPiA+ ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21waWxlX2NvbW1hbmQgPSB7fQ0KPiA+ ID4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHNvdXJjZS5FeHQgaW4gWyIuYyIs ICIuY2MiLCAiLmNwcCJdOg0KPiA+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAjDQo+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgR2VuZXJhdGUg Y29tcGlsZSBjb21tYW5kIGZvciBlYWNoIGMgZmlsZQ0KPiA+ID4gPiArICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAjDQo+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGNvbXBpbGVfY29tbWFuZFsiZmlsZSJdID0gc291cmNlLlBhdGgNCj4gPiA+ID4gKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcGlsZV9jb21tYW5kWyJkaXJlY3RvcnkiXSA9 IHNvdXJjZS5EaXINCj4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVp bGRfY29tbWFuZCA9DQo+ID4gPiA+IG1vZHVsZS5CdWlsZFJ1bGVzW3NvdXJjZS5FeHRdLkNvbW1h bmRMaXN0WzBdDQo+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1aWxk X2NvbW1hbmRfdmFyaWFibGVzID0NCj4gPiA+ID4gKyByZS5maW5kYWxsKHIiXCRcKCguKj8pXCki LA0KPiA+ID4gPiBidWlsZF9jb21tYW5kKQ0KPiA+ID4gPiArICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBmb3IgdmFyIGluIGJ1aWxkX2NvbW1hbmRfdmFyaWFibGVzOg0KPiA+ID4gPiAr ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyX3Rva2VucyA9IHZhci5zcGxp dCgiXyIpDQo+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXJf bWFpbiA9IHZhcl90b2tlbnNbMF0NCj4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGlmIGxlbih2YXJfdG9rZW5zKSA9PSAxOg0KPiA+ID4gPiArICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhcl92YWx1ZSA9DQo+ID4gbW9kdWxlLkJ1aWxk T3B0aW9uW3Zhcl9tYWluXVsiUEFUSCJdDQo+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBlbHNlOg0KPiA+ID4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHZhcl92YWx1ZSA9DQo+ID4gPiA+IG1vZHVsZS5CdWlsZE9wdGlvblt2YXJf bWFpbl1bdmFyX3Rva2Vuc1sxXV0NCj4gPiA+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGJ1aWxkX2NvbW1hbmQgPQ0KPiA+ID4gPiArIGJ1aWxkX2NvbW1hbmQucmVwbGFj ZShmIiQoe3Zhcn0pIiwNCj4gPiA+ID4gdmFyX3ZhbHVlKQ0KPiA+ID4gPiArICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgaW5jbHVkZV9maWxlcyA9IGYiDQo+ID4ge2luY19mbGFn fSIuam9pbihtb2R1bGUuSW5jbHVkZVBhdGhMaXN0KQ0KPiA+ID4gPiArICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgYnVpbGRfY29tbWFuZCA9DQo+ID4gPiA+ICsgYnVpbGRfY29t bWFuZC5yZXBsYWNlKCIke3NyY30iLA0KPiA+ID4gPiBpbmNsdWRlX2ZpbGVzKQ0KPiA+ID4gPiAr ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVpbGRfY29tbWFuZCA9DQo+ID4g PiA+ICsgYnVpbGRfY29tbWFuZC5yZXBsYWNlKCIke2RzdH0iLCBtb2R1bGUuT3V0cHV0RGlyKQ0K PiA+ID4gPiArDQo+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgUmVt b3ZlIHVuIGRlZmluZWQgbWFjcm9zDQo+ID4gPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGNvbXBpbGVfY29tbWFuZFsiY29tbWFuZCJdID0NCj4gPiA+ID4gKyByZS5zdWIociJc JFwoLio/XCkiLCAiIiwNCj4gPiA+ID4gYnVpbGRfY29tbWFuZCkNCj4gPiA+ID4gKw0KPiA+ID4g PiArIGNvbXBpbGVfY29tbWFuZHMuYXBwZW5kKGNvbXBpbGVfY29tbWFuZCkNCj4gPiA+ID4gKw0K PiA+ID4gPiArICAgICAgICAgICAgICAgICMgQ3JlYXRlIG91dHB1dCBmb2xkZXIgaWYgZG9lc24n dCBleGlzdA0KPiA+ID4gPiArICAgICAgICAgICAgICAgIGNvbXBpbGVfaW5mb19mb2xkZXIgPQ0K PiA+IFBhdGgoV2EuQnVpbGREaXIpLmpvaW5wYXRoKCJDb21waWxlSW5mbyIpDQo+ID4gPiA+ICsg ICAgICAgICAgICAgICAgY29tcGlsZV9pbmZvX2ZvbGRlci5ta2RpcihleGlzdF9vaz1UcnVlKQ0K PiA+ID4gPiArDQo+ID4gPiA+ICsgICAgICAgICAgICAgICAgIyBTb3J0IGFuZCBzYXZlIGZpbGVz DQo+ID4gPiA+ICsgICAgICAgICAgICAgICAgY29tcGlsZV9jb21tYW5kcy5zb3J0KGtleT1sYW1i ZGEgeDogeFsiZmlsZSJdKQ0KPiA+ID4gPiArDQo+ID4gPiA+ICsNCj4gPiA+ID4NCj4gPg0KPiBT YXZlRmlsZU9uQ2hhbmdlKGNvbXBpbGVfaW5mb19mb2xkZXIuam9pbnBhdGgoZiJjb21waWxlX2Nv bW1hbmRzLmpzb24NCj4gIg0KPiA+ID4gPiArICksanNvbi5kdW1wcyhjb21waWxlX2NvbW1hbmRz LCBpbmRlbnQ9MiksIEZhbHNlKQ0KPiA+ID4gPiArDQo+ID4gPiA+ICsNCj4gPiA+ID4gKyBTYXZl RmlsZU9uQ2hhbmdlKGNvbXBpbGVfaW5mb19mb2xkZXIuam9pbnBhdGgoZiJjc2NvcGUuZmlsZXMi KSwNCj4gPiA+ID4gKyAiXG4iLmpvaW4oc29ydGVkKHVzZWRfZmlsZXMpKSwgRmFsc2UpDQo+ID4g PiA+ICsNCj4gPiA+ID4gKyAgICAgICAgICAgICAgICBtb2R1bGVfcmVwb3J0LnNvcnQoa2V5PWxh bWJkYSB4OiB4WyJQYXRoIl0pDQo+ID4gPiA+ICsNCj4gPiA+ID4gKw0KPiBTYXZlRmlsZU9uQ2hh bmdlKGNvbXBpbGVfaW5mb19mb2xkZXIuam9pbnBhdGgoZiJtb2R1bGVfcmVwb3J0Lmpzb24NCj4g PiA+ID4gKyAiKSwganNvbi5kdW1wcyhtb2R1bGVfcmVwb3J0LCBpbmRlbnQ9MiksIEZhbHNlKQ0K PiA+ID4gPiArDQo+ID4gPiA+ICsgICAgICAgIGV4Y2VwdDoNCj4gPiA+ID4gKyAgICAgICAgICAg IEVka0xvZ2dlci5lcnJvcigiQnVpbGRSZXBvcnQiLCBDT0RFX0VSUk9SLCAiVW5rbm93bg0KPiA+ ID4gPiArIGZhdGFsIGVycm9yDQo+ID4gPiA+IHdoZW4gZ2VuZXJhdGluZyBidWlsZCByZXBvcnQg Y29tcGlsZSBpbmZvcm1hdGlvbiIsDQo+ID4gPiA+IEV4dHJhRGF0YT1zZWxmLlJlcG9ydEZpbGUs IFJhaXNlRXJyb3I9RmFsc2UpDQo+ID4gPiA+ICsgICAgICAgICAgICBFZGtMb2dnZXIucXVpZXQo IihQeXRob24gJXMgb24gJXNcbiVzKSIgJQ0KPiA+ID4gPiArIChwbGF0Zm9ybS5weXRob25fdmVy c2lvbigpLCBzeXMucGxhdGZvcm0sIHRyYWNlYmFjay5mb3JtYXRfZXhjKCkpKQ0KPiA+ID4gPiAr DQo+ID4gPiA+ICAjIFRoaXMgYWN0cyBsaWtlIHRoZSBtYWluKCkgZnVuY3Rpb24gZm9yIHRoZSBz Y3JpcHQsIHVubGVzcyBpdCBpcw0KPiA+ID4gPiAnaW1wb3J0J2VkIGludG8gYW5vdGhlciBzY3Jp cHQuDQo+ID4gPiA+ICBpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOg0KPiA+ID4gPiAgICAgIHBh c3MNCj4gPiA+ID4gLQ0KPiA+ID4gPiBkaWZmIC0tZ2l0IGEvQmFzZVRvb2xzL1NvdXJjZS9QeXRo b24vYnVpbGQvYnVpbGRvcHRpb25zLnB5DQo+ID4gPiA+IGIvQmFzZVRvb2xzL1NvdXJjZS9QeXRo b24vYnVpbGQvYnVpbGRvcHRpb25zLnB5DQo+ID4gPiA+IGluZGV4IDgzMzQ2MDRiNDYuLjVlYzU2 MWY3ZWMgMTAwNjQ0DQo+ID4gPiA+IC0tLSBhL0Jhc2VUb29scy9Tb3VyY2UvUHl0aG9uL2J1aWxk L2J1aWxkb3B0aW9ucy5weQ0KPiA+ID4gPiArKysgYi9CYXNlVG9vbHMvU291cmNlL1B5dGhvbi9i dWlsZC9idWlsZG9wdGlvbnMucHkNCj4gPiA+ID4gQEAgLTg0LDggKzg0LDggQEAgY2xhc3MgTXlP cHRpb25QYXJzZXIoKToNCj4gPiA+ID4gICAgICAgICAgUGFyc2VyLmFkZF9vcHRpb24oIi1EIiwg Ii0tZGVmaW5lIiwgYWN0aW9uPSJhcHBlbmQiLA0KPiA+ID4gPiB0eXBlPSJzdHJpbmciLCBkZXN0 PSJNYWNyb3MiLCBoZWxwPSJNYWNybzogXCJOYW1lIFs9IFZhbHVlXVwiLiIpDQo+ID4gPiA+DQo+ ID4gPiA+ICAgICAgICAgIFBhcnNlci5hZGRfb3B0aW9uKCIteSIsICItLXJlcG9ydC1maWxlIiwg YWN0aW9uPSJzdG9yZSIsDQo+ID4gPiA+IGRlc3Q9IlJlcG9ydEZpbGUiLCBoZWxwPSJDcmVhdGUv b3ZlcndyaXRlIHRoZSByZXBvcnQgdG8gdGhlDQo+ID4gPiA+IHNwZWNpZmllZA0KPiA+ID4gPiBm aWxlbmFtZS4iKQ0KPiA+ID4gPiAtICAgICAgICBQYXJzZXIuYWRkX29wdGlvbigiLVkiLCAiLS1y ZXBvcnQtdHlwZSIsIGFjdGlvbj0iYXBwZW5kIiwNCj4gPiA+ID4gdHlwZT0iY2hvaWNlIiwgY2hv aWNlcz1bJ1BDRCcsICdMSUJSQVJZJywgJ0ZMQVNIJywgJ0RFUEVYJywNCj4gPiA+ID4gJ0JVSUxE X0ZMQUdTJywgJ0ZJWEVEX0FERFJFU1MnLCAnSEFTSCcsICdFWEVDVVRJT05fT1JERVInXSwNCj4g PiA+ID4gZGVzdD0iUmVwb3J0VHlwZSIsIGRlZmF1bHQ9W10sDQo+ID4gPiA+IC0gICAgICAgICAg ICBoZWxwPSJGbGFncyB0aGF0IGNvbnRyb2wgdGhlIHR5cGUgb2YgYnVpbGQgcmVwb3J0IHRvIGdl bmVyYXRlLg0KPiA+IE11c3QgYmUNCj4gPiA+ID4gb25lIG9mOiBbUENELCBMSUJSQVJZLCBGTEFT SCwgREVQRVgsIEJVSUxEX0ZMQUdTLCBGSVhFRF9BRERSRVNTLA0KPiA+ID4gPiBIQVNILCBFWEVD VVRJT05fT1JERVJdLiAgIlwNCj4gPiA+ID4gKyAgICAgICAgUGFyc2VyLmFkZF9vcHRpb24oIi1Z IiwgIi0tcmVwb3J0LXR5cGUiLCBhY3Rpb249ImFwcGVuZCIsDQo+ID4gPiA+IHR5cGU9ImNob2lj ZSIsIGNob2ljZXM9WydQQ0QnLCAnTElCUkFSWScsICdGTEFTSCcsICdERVBFWCcsDQo+ID4gPiA+ ICdCVUlMRF9GTEFHUycsICdGSVhFRF9BRERSRVNTJywgJ0hBU0gnLCAnRVhFQ1VUSU9OX09SREVS JywNCj4gPiA+ID4gJ0NPTVBJTEVfSU5GTyddLCBkZXN0PSJSZXBvcnRUeXBlIiwgZGVmYXVsdD1b XSwNCj4gPiA+ID4gKyAgICAgICAgICAgIGhlbHA9IkZsYWdzIHRoYXQgY29udHJvbCB0aGUgdHlw ZSBvZiBidWlsZCByZXBvcnQgdG8NCj4gPiA+ID4gKyBnZW5lcmF0ZS4gIE11c3QgYmUgb25lIG9m OiBbUENELCBMSUJSQVJZLCBGTEFTSCwgREVQRVgsDQo+ID4gPiA+ICsgQlVJTERfRkxBR1MsIEZJ WEVEX0FERFJFU1MsIEhBU0gsIEVYRUNVVElPTl9PUkRFUiwNCj4gPiBDT01QSUxFX0lORk9dLg0K PiA+ID4gPiArICJcDQo+ID4gPiA+ICAgICAgICAgICAgICAgICAgICJUbyBzcGVjaWZ5IG1vcmUg dGhhbiBvbmUgZmxhZywgcmVwZWF0IHRoaXMgb3B0aW9uDQo+ID4gPiA+IG9uIHRoZSBjb21tYW5k IGxpbmUgYW5kIHRoZSBkZWZhdWx0IGZsYWcgc2V0IGlzIFtQQ0QsIExJQlJBUlksDQo+ID4gPiA+ IEZMQVNILCBERVBFWCwgSEFTSCwgQlVJTERfRkxBR1MsIEZJWEVEX0FERFJFU1NdIikNCj4gPiA+ ID4gICAgICAgICAgUGFyc2VyLmFkZF9vcHRpb24oIi1GIiwgIi0tZmxhZyIsIGFjdGlvbj0ic3Rv cmUiLA0KPiA+ID4gPiB0eXBlPSJzdHJpbmciLCBkZXN0PSJGbGFnIiwNCj4gPiA+ID4gICAgICAg ICAgICAgIGhlbHA9IlNwZWNpZnkgdGhlIHNwZWNpZmljIG9wdGlvbiB0byBwYXJzZSBFREsgVU5J IGZpbGUuIE11c3QgYmUNCj4gPiBvbmUgb2Y6DQo+ID4gPiA+IFstYywgLXNdLiAtYyBpcyBmb3Ig RURLIGZyYW1ld29yayBVTkkgZmlsZSwgYW5kIC1zIGlzIGZvciBFREsgVUVGSQ0KPiA+ID4gPiBV TkkgZmlsZS4gIlwNCj4gPiA+ID4gLS0NCj4gPiA+ID4gMi4yOC4wLndpbmRvd3MuMQ0KPiA+ID4N Cj4gPiA+DQo+ID4gPg0KPiA+ID4NCj4gPiA+DQo+IA0KPiANCj4gDQo+IA0KPiANCg0K