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.web10.7747.1676432571105231243 for ; Tue, 14 Feb 2023 19:42:51 -0800 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=ktiphAbI; spf=pass (domain: intel.com, ip: 192.55.52.88, mailfrom: michael.d.kinney@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1676432571; x=1707968571; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=Z1ICR8Z+eAfpKvvcrvXah8E7tQZuSMp/UWYSVMayBo0=; b=ktiphAbIYJaSXTnPowNqFIAzLZRAJi2gMtzb11CJ/QR19b6y4OmhSFHV xn+8yCWrgPaCf9N3A9n6kymqwybhiWpg7kkL2I1IabTGA5/UD73DvLaaW 5Bo9HjjP/EZM1Zf4OSiarErnv5gB/DdDuM0aoJmK/fke2y/IK3S+edSIv RCrd9pIQdlF7LxDuavi5BUofdSp5rPCmfpbY5X2XeJpoKqXh6pGzaNUCV 8jzL3klg1QmwzR0jec/ImfkZf/3LHRo8R9NLfvaUS8Ha9SVG3Ad6cfLtJ CcDjT0hYur9ha1gltCXbZmm/Wd6h2n33j44d4qMfnDrTV8vjgsTnh0WB5 w==; X-IronPort-AV: E=McAfee;i="6500,9779,10621"; a="358755035" X-IronPort-AV: E=Sophos;i="5.97,298,1669104000"; d="scan'208";a="358755035" Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Feb 2023 19:42:50 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10621"; a="662781448" X-IronPort-AV: E=Sophos;i="5.97,298,1669104000"; d="scan'208";a="662781448" Received: from orsmsx601.amr.corp.intel.com ([10.22.229.14]) by orsmga007.jf.intel.com with ESMTP; 14 Feb 2023 19:42:49 -0800 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) 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.2507.16; Tue, 14 Feb 2023 19:42:49 -0800 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) 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.2507.16; Tue, 14 Feb 2023 19:42:48 -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.2507.16 via Frontend Transport; Tue, 14 Feb 2023 19:42:48 -0800 Received: from NAM04-MW2-obe.outbound.protection.outlook.com (104.47.73.172) 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.2507.16; Tue, 14 Feb 2023 19:42:48 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RwF+WyuKjx9/k5l6HdRr5zee1E/p0ddIE+s3Jp4TjwJ73fi2/9wT6V0ja/s3kQkWqgNDH8MTsvNj9Vd+pt3gDXsCRXpLNhh5+lMikHufKPmSgaG+JGK3eFI1A4oEHt5Mm8f8ReAE32BQ4cqp5wWq2gg2+1SlA4XznNqyur5kUMPBAdconQFE8NmtOtw66osFRNl0acFJE9C89laX6Fbaxm/DOhaKQKq+uXDZHielhPR6M0BqDZnMtOBiicqmzfv3fQnmCesWj3E6koEQ6Zpxts38F5WYCO6zJoCUK+FMqjE4RU4ZS+PM+nYGDgU0C/h09VbSFeg4eIxGVBYw2s6hGQ== 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=Z1ICR8Z+eAfpKvvcrvXah8E7tQZuSMp/UWYSVMayBo0=; b=kuRuDEy3HOccGHn+a6jRjXXpciVYNXuXaMe0YMN3OVR7FGFJoPiGuN3xKVLfisIj5v5GOpK4pWoMXK7enhXRl6FUzpZPPbzb6P910qTMmuLWPH1Oj725o8KwzbGX0ArLbi4GmmUOoN7NMPzCoCb8ayysoGQWv9bWtPX//86LsfrlE5285qC+3XAbhqja1FEGMU89j/95HWuSKhXfOs3G1BtZOw1i63eTWkkjh2/YHbl7Cx4p7dEuHhBzFTWHTUCtzBCl8FOE9OkDXqM72BIfUDyN2Q3r2U6h4i+i1W4Hvea/Cl423ZPaE0SWDCFBRoF/7ZPymUQTq+CPAoCCuEfPGw== 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 CO1PR11MB4929.namprd11.prod.outlook.com (2603:10b6:303:6d::19) by BN0PR11MB5710.namprd11.prod.outlook.com (2603:10b6:408:14a::15) 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 03:42:43 +0000 Received: from CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::c4d0:989a:e319:fe68]) by CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::c4d0:989a:e319:fe68%5]) with mapi id 15.20.6086.026; Wed, 15 Feb 2023 03:42:43 +0000 From: "Michael D Kinney" To: "devel@edk2.groups.io" , "Chen, Christine" , "Palomino Sosa, Guillermo A" CC: "Feng, Bob C" , "Gao, Liming" , "Kinney, Michael D" 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: AQHZOqFfXcxYF0StGk26U1Brxzcpta7PWXCAgAAQU7A= Date: Wed, 15 Feb 2023 03:42:43 +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: CO1PR11MB4929:EE_|BN0PR11MB5710:EE_ x-ms-office365-filtering-correlation-id: 60e2c130-2a2b-4bc9-0804-08db0f06b1d8 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: mRcdQUlZf6VMQLbjGab94LMNd+1fckfJbGgRvTq+xc+t4cHwz0LVajBUsORuhp5PEv8mO6hBqdm0EjSQrQVV0kGZegnKeP1/x4rM9FJ3nGVYUxBh8AaMPxUI42L/kfNkBYr3iRoL14s/xgbS3VlEATqQmSGPL7gyU0iaWQbSZ/p1A8+oVkebCR71bKoyosfqdHXypFGrFfgCtM7m8V0ki/QbSO2BfWb7rC2ood9UOdC85ry4o/c+OuUWR5RzUmGCszU0fz2yFyAzlk+KzVYnSS1nLfJr5d/H6iinYKgbvLoN2lj1kcqe4eNj4z7lWLDJpNVjHYBQyW1FOvQiuuh6SmIyjLVg7zwOaoJ9hHYgrVFzE2wmv89+yv24+/L54S1iTHqHvQHkFbBhcnROZnQ/mCPhNStZJuOW5Isx+jHuD/kM3T+7hhkmm2YhGaMkXxkQUmufZoLvHtzLCm5qgzKAMwVL80GUcoUgdYua/6y8P2FtGwmtl//ZzLCx1S2y7SWG5uNbRoNWsnsR+uLL/0yiabm8Ws+sZaGcnRPSEE/VoiYlSTAhmLYh0ZGJuHbwu7j5rpJskgUndibLVKjma0GCh/S4H1/axOUTdnagC2gCqNwILiLaTlSd40q0FSV0exwhkkdkfMbZsGVr4MAVsri12e1As/T/aq4r+Kw7AV2Lufp4Kt9HFHMcl6EEdJbd9wXIWBy0odxdhlyUSy56OzH/UWuNtMZGgASsYENh/j53Sbo= 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:(13230025)(39860400002)(396003)(366004)(376002)(136003)(346002)(451199018)(66899018)(55016003)(33656002)(110136005)(6636002)(83380400001)(316002)(54906003)(9686003)(53546011)(6506007)(186003)(26005)(2906002)(30864003)(52536014)(38100700002)(5660300002)(8936002)(71200400001)(107886003)(478600001)(122000001)(966005)(7696005)(38070700005)(86362001)(66446008)(66556008)(8676002)(41300700001)(66476007)(64756008)(4326008)(66946007)(76116006)(82960400001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?dWRRMDBSNHJVUFhxd3JlVVdtOVV0a3crODk5L1hPZkFFeUhyRTd6bHVOaTlP?= =?utf-8?B?dXV3MndzNUcyTU5WekxMRHo2K2V4akV1cFhjeEZQV1pWM2g4ajBvMmdPSWEv?= =?utf-8?B?ZlVrVC9Od0Fmb0lyMjNMMzhPREluekF2T2FLaHY4U0RTd0pMNm53a2V2ZGRv?= =?utf-8?B?UXVYZUw2UGROcStSWTZMb0syTlhsZkpZOE00V3FJcmF1QktYZFpCVWFEQnFW?= =?utf-8?B?U3VxU0tJOUhLeEdFNEN4TDVRRXNHbnZ4UXJQNEpRdjd0QkFtY0ZxeXhSd2tj?= =?utf-8?B?bkZ3ZDJHQllsOXBERUJQSGE3ZkVHQ1lrM2tQOUp5cDgwQUpyeENmVnhkM05q?= =?utf-8?B?NWVsQkIrMTRtUEMzRHM4SDhHWExnc1pDelVSeEcvOG96a2lnM244TGFTNGhM?= =?utf-8?B?ejdJdHc1ODhXZGw1VzJPY3N5M1FCVlQ5TW9RWVVjY2xEa2padFdhRFFYNXNW?= =?utf-8?B?K3RkRVREOXVTS2o4V1Iyb2FkZnp4SFF0a2ZrL0dnVXdpVlZudDNickFqY1h6?= =?utf-8?B?Wm1CUzEvNERuUnFyM0w4eEJ3MkhLd2tkRHcvdm12L2h4alZJd1JUalN3YnVW?= =?utf-8?B?MTEwUzZ1YS9Ganhua2t5OXJSVkxxa2VadXdaOTBidDJGRk9sTkpTdmpYKy9k?= =?utf-8?B?VTZNd3hBaXlOc0NMTUpCVnFGMkJnR1VDYWdMM0ZPcjgxNUgweVJtSHZjNUpj?= =?utf-8?B?emtwVW1DbU5QNXNoNDNRcVU2VGFnbE8xckR5dWxtdm85ZzByelp0UTE5NWRx?= =?utf-8?B?RVJqTzhUbHExS1VBdWMxeGllWDdBQW8vekZicjdYejE4YlFPcUpSaTZpS1RZ?= =?utf-8?B?a3R4WWJQTWJITXBWQmdxTGdwSkhYckRxYWRPd1lxVk02b1hWYkxjcTZKTmlS?= =?utf-8?B?bDVGWXF5TzJhVVg5eW9NK2ljclpnYUNIaW52dnFZR2Z5WXA3MGs2VHo0Skdr?= =?utf-8?B?V0c5aGlTTEF5QmVsZ0J2SGRuSGlveU1tdW8zcnJ1V3BTMGRORkg2aGpQeE9Q?= =?utf-8?B?Smc4T2JNQVBuaC94RDhkUkNhOTJ4T21CTHJQUmYyVjY5OGtzN3RyeVRCMnA0?= =?utf-8?B?SkcwYTNBbXRTYjZDZW00Q0hOcEZaYk9OV0dYYXFDam1HYjlHM21DSWF2bERW?= =?utf-8?B?K1J2cUdPcnBRSnNKNTA3Q1NJVDhIdFY2TnBtZXFxSVNmcDhxdGFYdFhrWWIv?= =?utf-8?B?YUxTQ2pDNGxtaS9STC9QclFMa0lqMm5rZEpzblFITjR0bHNjZWxsSy9KUnJH?= =?utf-8?B?WUNsOVFhN1N3OEE2cGdGbzFVaExST3QrMDN2ZTcrMUhRaCtVTmhBdUJSMzhl?= =?utf-8?B?YnRJOUlWWjRSNlUxOFhDV1FtSFl1blQ4TDN5TTBZMEVNZGVTMHVsN0dNTmtv?= =?utf-8?B?TEFmQnpnTUw0NHl1MzEzSFkzU3VmVXVnRWR5b0U2VXlkTXE1YVo2V1Fsb3I0?= =?utf-8?B?VVhXby9oYW1VTGkxOXBYYXdQVG03b0hJV1c2RkJSeHF6M2pNYmk0c2d0VmI0?= =?utf-8?B?SDNQblVZRmVldGd5MGJKaGthOVMvUm1CUFNsckREVkNYcXk5cG1BeXdES25n?= =?utf-8?B?d0tzcE53d1BFNExaT2RQZVhkci84N1hRcU1yMEVpRWk1T3hxR0ZZbHBMVjZV?= =?utf-8?B?WHJDSHdlRXovczJyZ0RiRnNTOXhEeHloT3F4aG9VNW1UV3pxQVNMSytISVJU?= =?utf-8?B?UG5mWVRvNUpyUmo3REpqY2g2czdlaEVuOTVKS0E2b1dRellZSmlkZ0FzMHBD?= =?utf-8?B?VnBEcXJ6a1czbGtDK3M1WHcvclUzWmFuaDZJYU5aa2FsbDU0OTA5b1RabjFL?= =?utf-8?B?NEhaSGNROFdsSmpvMDhLaUxSTElPdkE0amdEenpCN2FSbnB3WXFuMWd4QnZZ?= =?utf-8?B?ckpYTTRnZGo3T1MzVzJaUTJPSFdTVzJzWTFGdzFEVzRic1orL1BtM09yTWtN?= =?utf-8?B?VTByZXJmYWh3NDllTHdHekdVR1pINjZ2WElOUXlSK0pseW1XUjQxMCtmRVJz?= =?utf-8?B?NW80VGNyN29ucnM5REtIdmtUSTdYTFF1SUtlZDlGSm9Ia1FiN1dNdTg1b0kx?= =?utf-8?B?ZGlma0h5bUs0NWNUb2Raekk3YXpDV2gyc3VwbnJWWDhwRnB5TjBsb1BXZndk?= =?utf-8?B?aFA0Z1J3dFk2NzQ2RnFUMktGcXREMmw3OWVFZWFVKzRxYnNXYzlXalRYSzls?= =?utf-8?B?MEE9PQ==?= 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: 60e2c130-2a2b-4bc9-0804-08db0f06b1d8 X-MS-Exchange-CrossTenant-originalarrivaltime: 15 Feb 2023 03:42:43.0377 (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: qdw9pB14nT4hQZ4Qv4AEy37YDVOdj85vYRVMKob7ODrez5VhWWr6xi+M36vb/B5nXylyKg3VmFNkiAxWZGp5iUC5nwV2v1xXNvURg5fEZ6o= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN0PR11MB5710 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 SGFzIHRoaXMgYmVlbiByZXZpZXdlZCBmb3IgZWRrMi1iYXNldG9vbHMgcmVwbz8NCg0KTWlrZQ0K DQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IGRldmVsQGVkazIuZ3JvdXBz LmlvIDxkZXZlbEBlZGsyLmdyb3Vwcy5pbz4gT24gQmVoYWxmIE9mIFl1d2VpIENoZW4NCj4gU2Vu dDogVHVlc2RheSwgRmVicnVhcnkgMTQsIDIwMjMgNjo0NCBQTQ0KPiBUbzogUGFsb21pbm8gU29z YSwgR3VpbGxlcm1vIEEgPGd1aWxsZXJtby5hLnBhbG9taW5vLnNvc2FAaW50ZWwuY29tPjsgZGV2 ZWxAZWRrMi5ncm91cHMuaW8NCj4gQ2M6IEZlbmcsIEJvYiBDIDxib2IuYy5mZW5nQGludGVsLmNv bT47IEdhbywgTGltaW5nIDxnYW9saW1pbmdAYnlvc29mdC5jb20uY24+DQo+IFN1YmplY3Q6IFJl OiBbZWRrMi1kZXZlbF1bUEFUQ0ggVjEgMS8xXSBCYXNlVG9vbHM6IEdlbmVyYXRlIGNvbXBpbGUg aW5mb3JtYXRpb24gaW4gYnVpbGQgcmVwb3J0DQo+IA0KPiBSZXZpZXdlZC1ieTogWXV3ZWkgQ2hl biA8eXV3ZWkuY2hlbkBpbnRlbC5jb20+DQo+IA0KPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0t LS0tDQo+ID4gRnJvbTogUGFsb21pbm8gU29zYSwgR3VpbGxlcm1vIEEgPGd1aWxsZXJtby5hLnBh bG9taW5vLnNvc2FAaW50ZWwuY29tPg0KPiA+IFNlbnQ6IFR1ZXNkYXksIEZlYnJ1YXJ5IDcsIDIw MjMgMTE6MDcgQU0NCj4gPiBUbzogZGV2ZWxAZWRrMi5ncm91cHMuaW8NCj4gPiBDYzogRmVuZywg Qm9iIEMgPGJvYi5jLmZlbmdAaW50ZWwuY29tPjsgR2FvLCBMaW1pbmcNCj4gPiA8Z2FvbGltaW5n QGJ5b3NvZnQuY29tLmNuPjsgQ2hlbiwgQ2hyaXN0aW5lIDx5dXdlaS5jaGVuQGludGVsLmNvbT4N Cj4gPiBTdWJqZWN0OiBbZWRrMi1kZXZlbF1bUEFUQ0ggVjEgMS8xXSBCYXNlVG9vbHM6IEdlbmVy YXRlIGNvbXBpbGUNCj4gPiBpbmZvcm1hdGlvbiBpbiBidWlsZCByZXBvcnQNCj4gPg0KPiA+IFJF RjpodHRwczovL2J1Z3ppbGxhLnRpYW5vY29yZS5vcmcvc2hvd19idWcuY2dpP2lkPTI4NTANCj4g Pg0KPiA+IEFkZCAiLVkgUkVQT1JUX0lORk8iIG9wdGlvbiB0byBidWlsZCBjb21tYW5kIHRvIGdl bmVyYXRlIGNvbXBpbGUNCj4gPiBpbmZvcm1hdGlvbiBhcyBwYXJ0IG9mIEJ1aWxkUmVwb3J0Lg0K PiA+IFRoaXMgb3B0aW9uIGdlbmVyYXRlcyBmaWxlcyB0byBiZSB1c2VkIGJ5IGV4dGVybmFsIHRv b2xzIGFzIElERSdzIHRvIGVuaGFuY2UNCj4gPiBmdW5jdGlvbmFsaXR5Lg0KPiA+IEZpbGVzIGFy ZSBjcmVhdGVkIGluc2lkZSBidWlsZCBmb2xkZXI6DQo+ID4gPEJ1aWxkPi88QnVpbGRUYXJnZXQ+ LzxUb29sQ2hhaW4+L0NvbXBpbGVJbmZvDQo+ID4NCj4gPiBGaWxlcyBjcmVhdGVkOg0KPiA+ICog Y29tcGlsZV9jb21tYW5kcy5qc29uIC0gQ29tcGlsYXRpb24gRGF0YWJhc2UuIFRvIGJlIHVzZWQg YnkgSURFJ3MNCj4gPiAgIHRvIGVuYWJsZSBhZHZhbmNlIGZlYXR1cmVzDQo+ID4gKiBjc2NvcGUu ZmlsZXMgLSBMaXN0IG9mIGZpbGVzIHVzZWQgaW4gY29tcGlsYXRpb24uIFVzZWQgYnkgQ3Njb3Bl IHRvIHBhcnNlDQo+ID4gICBDIGNvZGUgYW5kIHByb3ZpZGUgYnJvd3NlIGZ1bmN0aW9uYWxpdHku DQo+ID4gKiBtb2R1bGVfcmVwb3J0Lmpzb24gLSBNb2R1bGUgZGF0YSBmb3JtIGJ1aWxkUmVwb3J0 IGluIEpzb24gZm9ybWF0Lg0KPiA+DQo+ID4gU2lnbmVkLW9mZi1ieTogR3VpbGxlcm1vIEFudG9u aW8gUGFsb21pbm8gU29zYQ0KPiA+IDxndWlsbGVybW8uYS5wYWxvbWluby5zb3NhQGludGVsLmNv bT4NCj4gPiAtLS0NCj4gPiAgQmFzZVRvb2xzL1NvdXJjZS9QeXRob24vYnVpbGQvQnVpbGRSZXBv cnQucHkgIHwgMTM5DQo+ID4gKysrKysrKysrKysrKysrKysrKy0NCj4gPiAgQmFzZVRvb2xzL1Nv dXJjZS9QeXRob24vYnVpbGQvYnVpbGRvcHRpb25zLnB5IHwgICA0ICstDQo+ID4gIDIgZmlsZXMg Y2hhbmdlZCwgMTQwIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pDQo+ID4NCj4gPiBkaWZm IC0tZ2l0IGEvQmFzZVRvb2xzL1NvdXJjZS9QeXRob24vYnVpbGQvQnVpbGRSZXBvcnQucHkNCj4g PiBiL0Jhc2VUb29scy9Tb3VyY2UvUHl0aG9uL2J1aWxkL0J1aWxkUmVwb3J0LnB5DQo+ID4gaW5k ZXggNDY4NzcyOTMwYy4uMzNiNDNkNDcxZiAxMDA2NDQNCj4gPiAtLS0gYS9CYXNlVG9vbHMvU291 cmNlL1B5dGhvbi9idWlsZC9CdWlsZFJlcG9ydC5weQ0KPiA+ICsrKyBiL0Jhc2VUb29scy9Tb3Vy Y2UvUHl0aG9uL2J1aWxkL0J1aWxkUmVwb3J0LnB5DQo+ID4gQEAgLTEwLDYgKzEwLDggQEANCj4g Pg0KPiA+ICAjIyBJbXBvcnQgTW9kdWxlcw0KPiA+ICAjDQo+ID4gK2ltcG9ydCBqc29uDQo+ID4g K2Zyb20gcGF0aGxpYiBpbXBvcnQgUGF0aA0KPiA+ICBpbXBvcnQgQ29tbW9uLkxvbmdGaWxlUGF0 aE9zIGFzIG9zDQo+ID4gIGltcG9ydCByZQ0KPiA+ICBpbXBvcnQgcGxhdGZvcm0NCj4gPiBAQCAt NDEsNiArNDMsNyBAQCBmcm9tIENvbW1vbi5EYXRhVHlwZSBpbXBvcnQgKiAgaW1wb3J0IGNvbGxl Y3Rpb25zDQo+ID4gZnJvbSBDb21tb24uRXhwcmVzc2lvbiBpbXBvcnQgKiAgZnJvbSBHZW5GZHMu QXByaW9yaVNlY3Rpb24gaW1wb3J0DQo+ID4gRFhFX0FQUklPUklfR1VJRCwgUEVJX0FQUklPUklf R1VJRA0KPiA+ICtmcm9tIEF1dG9HZW4uSW5jbHVkZXNBdXRvR2VuIGltcG9ydCBJbmNsdWRlc0F1 dG9HZW4NCj4gPg0KPiA+ICAjIyBQYXR0ZXJuIHRvIGV4dHJhY3QgY29udGVudHMgaW4gRURLIERY UyBmaWxlcyAgZ0R4c0RlcGVuZGVuY3lQYXR0ZXJuID0NCj4gPiByZS5jb21waWxlKHIiREVQRU5E RU5DWV9TVEFSVCguKylERVBFTkRFTkNZX0VORCIsIHJlLkRPVEFMTCkgQEAgLQ0KPiA+IDIyOTgs NiArMjMwMSwxMCBAQCBjbGFzcyBCdWlsZFJlcG9ydChvYmplY3QpOg0KPiA+ICAgICAgZGVmIEdl bmVyYXRlUmVwb3J0KHNlbGYsIEJ1aWxkRHVyYXRpb24sIEF1dG9HZW5UaW1lLCBNYWtlVGltZSwN Cj4gPiBHZW5GZHNUaW1lKToNCj4gPiAgICAgICAgICBpZiBzZWxmLlJlcG9ydEZpbGU6DQo+ID4g ICAgICAgICAgICAgIHRyeToNCj4gPiArDQo+ID4gKyAgICAgICAgICAgICAgICBpZiAiQ09NUElM RV9JTkZPIiBpbiBzZWxmLlJlcG9ydFR5cGU6DQo+ID4gKyAgICAgICAgICAgICAgICAgICAgc2Vs Zi5HZW5lcmF0ZUNvbXBpbGVJbmZvKCkNCj4gPiArDQo+ID4gICAgICAgICAgICAgICAgICBGaWxl ID0gW10NCj4gPiAgICAgICAgICAgICAgICAgIGZvciAoV2EsIE1hTGlzdCkgaW4gc2VsZi5SZXBv cnRMaXN0Og0KPiA+ICAgICAgICAgICAgICAgICAgICAgIFBsYXRmb3JtUmVwb3J0KFdhLCBNYUxp c3QsDQo+ID4gc2VsZi5SZXBvcnRUeXBlKS5HZW5lcmF0ZVJlcG9ydChGaWxlLCBCdWlsZER1cmF0 aW9uLCBBdXRvR2VuVGltZSwNCj4gPiBNYWtlVGltZSwgR2VuRmRzVGltZSwgc2VsZi5SZXBvcnRU eXBlKSBAQCAtMjMxMCw3ICsyMzE3LDEzNyBAQCBjbGFzcw0KPiA+IEJ1aWxkUmVwb3J0KG9iamVj dCk6DQo+ID4gICAgICAgICAgICAgICAgICBFZGtMb2dnZXIuZXJyb3IoIkJ1aWxkUmVwb3J0Iiwg Q09ERV9FUlJPUiwgIlVua25vd24gZmF0YWwNCj4gPiBlcnJvciB3aGVuIGdlbmVyYXRpbmcgYnVp bGQgcmVwb3J0IiwgRXh0cmFEYXRhPXNlbGYuUmVwb3J0RmlsZSwNCj4gPiBSYWlzZUVycm9yPUZh bHNlKQ0KPiA+ICAgICAgICAgICAgICAgICAgRWRrTG9nZ2VyLnF1aWV0KCIoUHl0aG9uICVzIG9u ICVzXG4lcykiICUNCj4gPiAocGxhdGZvcm0ucHl0aG9uX3ZlcnNpb24oKSwgc3lzLnBsYXRmb3Jt LCB0cmFjZWJhY2suZm9ybWF0X2V4YygpKSkNCj4gPg0KPiA+ICsNCj4gPiArICAgICMjDQo+ID4g KyAgICAjIEdlbmVyYXRlcyBjb21waWxlIGRhdGEgZmlsZXMgdG8gYmUgdXNlZCBieSBleHRlcm5h bCB0b29scy4NCj4gPiArICAgICMgQ29tcGlsZSBpbmZvcm1hdGlvbiB3aWxsIGJlIGdlbmVyYXRl ZCBpbg0KPiA+IDxCdWlsZD4vPEJ1aWxkVGFyZ2V0Pi88VG9vbENoYWluPi9Db21waWxlSW5mbw0K PiA+ICsgICAgIyBGaWxlcyBnZW5lcmF0ZWQ6IGNvbXBpbGVfY29tbWFuZHMuanNvbiwgY3Njb3Bl LmZpbGVzLA0KPiA+IG1vZHVsZXNfcmVwb3J0Lmpzb24NCj4gPiArICAgICMNCj4gPiArICAgICMg QHBhcmFtIHNlbGYgICAgICAgICAgICBUaGUgb2JqZWN0IHBvaW50ZXINCj4gPiArICAgICMNCj4g PiArICAgIGRlZiBHZW5lcmF0ZUNvbXBpbGVJbmZvKHNlbGYpOg0KPiA+ICsgICAgICAgIHRyeToN Cj4gPiArICAgICAgICAgICAgIyBMaXN0cyBmb3IgdGhlIG91dHB1dCBlbGVtZW50cw0KPiA+ICsg ICAgICAgICAgICBjb21waWxlX2NvbW1hbmRzID0gW10NCj4gPiArICAgICAgICAgICAgdXNlZF9m aWxlcyA9IHNldCgpDQo+ID4gKyAgICAgICAgICAgIG1vZHVsZV9yZXBvcnQgPSBbXQ0KPiA+ICsN Cj4gPiArICAgICAgICAgICAgZm9yIChXYSwgTWFMaXN0KSBpbiBzZWxmLlJlcG9ydExpc3Q6DQo+ ID4gKyAgICAgICAgICAgICAgICAjIE9idGFpbiBsaXN0IG9mIGFsbCBwcm9jZXNzZWQgV29ya3Nw YWNlIGZpbGVzDQo+ID4gKyAgICAgICAgICAgICAgICBmb3IgZmlsZV9wYXRoIGluIFdhLl9HZXRN ZXRhRmlsZXMoV2EuQnVpbGRUYXJnZXQsIFdhLlRvb2xDaGFpbik6DQo+ID4gKyAgICAgICAgICAg ICAgICAgICAgdXNlZF9maWxlcy5hZGQoZmlsZV9wYXRoKQ0KPiA+ICsNCj4gPiArICAgICAgICAg ICAgICAgIGZvciBhdXRvR2VuIGluIFdhLkF1dG9HZW5PYmplY3RMaXN0Og0KPiA+ICsNCj4gPiAr ICAgICAgICAgICAgICAgICAgICAjIExvb3AgdGhyb3VnaCBhbGwgbW9kdWxlcw0KPiA+ICsgICAg ICAgICAgICAgICAgICAgIGZvciBtb2R1bGUgaW4gKGF1dG9HZW4uTGlicmFyeUF1dG9HZW5MaXN0 ICsNCj4gPiBhdXRvR2VuLk1vZHVsZUF1dG9HZW5MaXN0KToNCj4gPiArDQo+ID4gKyAgICAgICAg ICAgICAgICAgICAgICAgIHVzZWRfZmlsZXMuYWRkKG1vZHVsZS5NZXRhRmlsZS5QYXRoKQ0KPiA+ ICsNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgIyBNYWluIGVsZW1lbnRzIG9mIG1vZHVs ZSByZXBvcnQNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgbW9kdWxlX3JlcG9ydF9kYXRh ID0ge30NCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgbW9kdWxlX3JlcG9ydF9kYXRhWyJO YW1lIl0gPSBtb2R1bGUuTmFtZQ0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICBtb2R1bGVf cmVwb3J0X2RhdGFbIkFyY2giXSA9IG1vZHVsZS5BcmNoDQo+ID4gKyAgICAgICAgICAgICAgICAg ICAgICAgIG1vZHVsZV9yZXBvcnRfZGF0YVsiUGF0aCJdID0gbW9kdWxlLk1ldGFGaWxlLlBhdGgN Cj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgbW9kdWxlX3JlcG9ydF9kYXRhWyJHdWlkIl0g PSBtb2R1bGUuR3VpZA0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICBtb2R1bGVfcmVwb3J0 X2RhdGFbIkJ1aWxkVHlwZSJdID0gbW9kdWxlLkJ1aWxkVHlwZQ0KPiA+ICsgICAgICAgICAgICAg ICAgICAgICAgICBtb2R1bGVfcmVwb3J0X2RhdGFbIklzTGlicmFyeSJdID0gbW9kdWxlLklzTGli cmFyeQ0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICBtb2R1bGVfcmVwb3J0X2RhdGFbIlNv dXJjZURpciJdID0gbW9kdWxlLlNvdXJjZURpcg0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAg ICBtb2R1bGVfcmVwb3J0X2RhdGFbIkZpbGVzIl0gPSBbXQ0KPiA+ICsNCj4gPiArICAgICAgICAg ICAgICAgICAgICAgICAgIyBGaWxlcyB1c2VkIGJ5IG1vZHVsZQ0KPiA+ICsgICAgICAgICAgICAg ICAgICAgICAgICBmb3IgZGF0YV9maWxlIGluIG1vZHVsZS5Tb3VyY2VGaWxlTGlzdDoNCj4gPiAr ICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1vZHVsZV9yZXBvcnRfZGF0YVsiRmlsZXMiXS5h cHBlbmQoeyJOYW1lIjoNCj4gPiArIGRhdGFfZmlsZS5OYW1lLCAiUGF0aCI6IGRhdGFfZmlsZS5Q YXRofSkNCj4gPiArDQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICMgTGlicmFyaWVzIHVz ZWQgYnkgbW9kdWxlDQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgIG1vZHVsZV9yZXBvcnRf ZGF0YVsiTGlicmFyaWVzIl0gPSBbXQ0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICBmb3Ig ZGF0YV9saWJyYXJ5IGluIG1vZHVsZS5MaWJyYXJ5QXV0b0dlbkxpc3Q6DQo+ID4gKw0KPiA+ICsg bW9kdWxlX3JlcG9ydF9kYXRhWyJMaWJyYXJpZXMiXS5hcHBlbmQoeyJQYXRoIjoNCj4gPiArIGRh dGFfbGlicmFyeS5NZXRhRmlsZS5QYXRofSkNCj4gPiArDQo+ID4gKyAgICAgICAgICAgICAgICAg ICAgICAgICMgUGFja2FnZXMgdXNlZCBieSBtb2R1bGUNCj4gPiArICAgICAgICAgICAgICAgICAg ICAgICAgbW9kdWxlX3JlcG9ydF9kYXRhWyJQYWNrYWdlcyJdID0gW10NCj4gPiArICAgICAgICAg ICAgICAgICAgICAgICAgZm9yIGRhdGFfcGFja2FnZSBpbiBtb2R1bGUuUGFja2FnZUxpc3Q6DQo+ ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb2R1bGVfcmVwb3J0X2RhdGFbIlBhY2th Z2VzIl0uYXBwZW5kKHsiUGF0aCI6DQo+ID4gZGF0YV9wYWNrYWdlLk1ldGFGaWxlLlBhdGgsICJJ bmNsdWRlcyI6IFtdfSkNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgSW5jbHVk ZXMgcGF0aCB1c2VkIGluIHBhY2thZ2UNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAg IGZvciBkYXRhX3BhY2thZ2VfaW5jbHVkZSBpbiBkYXRhX3BhY2thZ2UuSW5jbHVkZXM6DQo+ID4g Kw0KPiA+ICsgbW9kdWxlX3JlcG9ydF9kYXRhWyJQYWNrYWdlcyJdWy0NCj4gPiAxXVsiSW5jbHVk ZXMiXS5hcHBlbmQoZGF0YV9wYWNrYWdlX2luYw0KPiA+ICsgbHVkZS5QYXRoKQ0KPiA+ICsNCj4g PiArICAgICAgICAgICAgICAgICAgICAgICAgIyBQUEkncyBpbiBtb2R1bGUNCj4gPiArICAgICAg ICAgICAgICAgICAgICAgICAgbW9kdWxlX3JlcG9ydF9kYXRhWyJQUEkiXSA9IFtdDQo+ID4gKyAg ICAgICAgICAgICAgICAgICAgICAgIGZvciBkYXRhX3BwaSBpbiBtb2R1bGUuUHBpTGlzdC5rZXlz KCk6DQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBtb2R1bGVfcmVwb3J0X2RhdGFb IlBQSSJdLmFwcGVuZCh7Ik5hbWUiOg0KPiA+ICsgZGF0YV9wcGksICJHdWlkIjogbW9kdWxlLlBw aUxpc3RbZGF0YV9wcGldfSkNCj4gPiArDQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICMg UHJvdG9jb2wncyBpbiBtb2R1bGUNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgbW9kdWxl X3JlcG9ydF9kYXRhWyJQcm90b2NvbCJdID0gW10NCj4gPiArICAgICAgICAgICAgICAgICAgICAg ICAgZm9yIGRhdGFfcHJvdG9jb2wgaW4gbW9kdWxlLlByb3RvY29sTGlzdC5rZXlzKCk6DQo+ID4g Kw0KPiA+ICsgbW9kdWxlX3JlcG9ydF9kYXRhWyJQcm90b2NvbCJdLmFwcGVuZCh7Ik5hbWUiOiBk YXRhX3Byb3RvY29sLCAiR3VpZCI6DQo+ID4gKyBtb2R1bGUuUHJvdG9jb2xMaXN0W2RhdGFfcHJv dG9jb2xdfSkNCj4gPiArDQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICMgUENEJ3MgaW4g bW9kdWxlDQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgIG1vZHVsZV9yZXBvcnRfZGF0YVsi UGNkIl0gPSBbXQ0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICBmb3IgZGF0YV9wY2QgaW4g bW9kdWxlLkxpYnJhcnlQY2RMaXN0Og0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAg bW9kdWxlX3JlcG9ydF9kYXRhWyJQY2QiXS5hcHBlbmQoeyJTcGFjZSI6DQo+ID4gZGF0YV9wY2Qu VG9rZW5TcGFjZUd1aWRDTmFtZSwNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiTmFtZSI6IGRhdGFfcGNkLlRva2VuQ05h bWUsDQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIlZhbHVlIjogZGF0YV9wY2QuVG9rZW5WYWx1ZSwNCj4gPiArICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAi R3VpZCI6IGRhdGFfcGNkLlRva2VuU3BhY2VHdWlkVmFsdWUsDQo+ID4gKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkRhdHVtVHlw ZSI6IGRhdGFfcGNkLkRhdHVtVHlwZSwNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiVHlwZSI6IGRhdGFfcGNkLlR5cGUs DQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIkRlZmF1bHRWYWx1ZSI6IGRhdGFfcGNkLkRlZmF1bHRWYWx1ZX0pDQo+ID4g KyAgICAgICAgICAgICAgICAgICAgICAgICMgQWRkIG1vZHVsZSB0byByZXBvcnQNCj4gPiArICAg ICAgICAgICAgICAgICAgICAgICAgbW9kdWxlX3JlcG9ydC5hcHBlbmQobW9kdWxlX3JlcG9ydF9k YXRhKQ0KPiA+ICsNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgIyBJbmNsdWRlIGZpbGUg ZGVwZW5kZW5jaWVzIHRvIHVzZWQgZmlsZXMNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAg aW5jbHVkZXNfYXV0b2dlbiA9IEluY2x1ZGVzQXV0b0dlbihtb2R1bGUuTWFrZUZpbGVEaXIsDQo+ ID4gbW9kdWxlKQ0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICBmb3IgZGVwIGluIGluY2x1 ZGVzX2F1dG9nZW4uRGVwc0NvbGxlY3Rpb246DQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICB1c2VkX2ZpbGVzLmFkZChkZXApDQo+ID4gKw0KPiA+ICsgICAgICAgICAgICAgICAgICAg ICAgICBpbmNfZmxhZyA9ICItSSIgIyBEZWZhdWx0IGluY2x1ZGUgZmxhZw0KPiA+ICsgICAgICAg ICAgICAgICAgICAgICAgICBpZiBtb2R1bGUuQnVpbGRSdWxlRmFtaWx5ID09IFRBQl9DT01QSUxF Ul9NU0ZUOg0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5jX2ZsYWcgPSAiL0ki DQo+ID4gKw0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICBmb3Igc291cmNlIGluIG1vZHVs ZS5Tb3VyY2VGaWxlTGlzdDoNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzZWRf ZmlsZXMuYWRkKHNvdXJjZS5QYXRoKQ0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAg Y29tcGlsZV9jb21tYW5kID0ge30NCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlm IHNvdXJjZS5FeHQgaW4gWyIuYyIsICIuY2MiLCAiLmNwcCJdOg0KPiA+ICsgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICMNCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAjIEdlbmVyYXRlIGNvbXBpbGUgY29tbWFuZCBmb3IgZWFjaCBjIGZpbGUNCj4gPiArICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAjDQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgY29tcGlsZV9jb21tYW5kWyJmaWxlIl0gPSBzb3VyY2UuUGF0aA0KPiA+ICsgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXBpbGVfY29tbWFuZFsiZGlyZWN0b3J5Il0g PSBzb3VyY2UuRGlyDQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVpbGRf Y29tbWFuZCA9DQo+ID4gbW9kdWxlLkJ1aWxkUnVsZXNbc291cmNlLkV4dF0uQ29tbWFuZExpc3Rb MF0NCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidWlsZF9jb21tYW5kX3Zh cmlhYmxlcyA9IHJlLmZpbmRhbGwociJcJFwoKC4qPylcKSIsDQo+ID4gYnVpbGRfY29tbWFuZCkN Cj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgdmFyIGluIGJ1aWxkX2Nv bW1hbmRfdmFyaWFibGVzOg0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB2YXJfdG9rZW5zID0gdmFyLnNwbGl0KCJfIikNCj4gPiArICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgdmFyX21haW4gPSB2YXJfdG9rZW5zWzBdDQo+ID4gKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGlmIGxlbih2YXJfdG9rZW5zKSA9PSAxOg0KPiA+ICsg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyX3ZhbHVlID0gbW9kdWxl LkJ1aWxkT3B0aW9uW3Zhcl9tYWluXVsiUEFUSCJdDQo+ID4gKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGVsc2U6DQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB2YXJfdmFsdWUgPQ0KPiA+IG1vZHVsZS5CdWlsZE9wdGlvblt2YXJfbWFpbl1b dmFyX3Rva2Vuc1sxXV0NCj4gPiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg YnVpbGRfY29tbWFuZCA9IGJ1aWxkX2NvbW1hbmQucmVwbGFjZShmIiQoe3Zhcn0pIiwNCj4gPiB2 YXJfdmFsdWUpDQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluY2x1 ZGVfZmlsZXMgPSBmIiB7aW5jX2ZsYWd9Ii5qb2luKG1vZHVsZS5JbmNsdWRlUGF0aExpc3QpDQo+ ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJ1aWxkX2NvbW1hbmQgPSBi dWlsZF9jb21tYW5kLnJlcGxhY2UoIiR7c3JjfSIsDQo+ID4gaW5jbHVkZV9maWxlcykNCj4gPiAr ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVpbGRfY29tbWFuZCA9DQo+ID4g KyBidWlsZF9jb21tYW5kLnJlcGxhY2UoIiR7ZHN0fSIsIG1vZHVsZS5PdXRwdXREaXIpDQo+ID4g Kw0KPiA+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgUmVtb3ZlIHVuIGRlZmlu ZWQgbWFjcm9zDQo+ID4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcGlsZV9j b21tYW5kWyJjb21tYW5kIl0gPSByZS5zdWIociJcJFwoLio/XCkiLCAiIiwNCj4gPiBidWlsZF9j b21tYW5kKQ0KPiA+ICsNCj4gPiArIGNvbXBpbGVfY29tbWFuZHMuYXBwZW5kKGNvbXBpbGVfY29t bWFuZCkNCj4gPiArDQo+ID4gKyAgICAgICAgICAgICAgICAjIENyZWF0ZSBvdXRwdXQgZm9sZGVy IGlmIGRvZXNuJ3QgZXhpc3QNCj4gPiArICAgICAgICAgICAgICAgIGNvbXBpbGVfaW5mb19mb2xk ZXIgPSBQYXRoKFdhLkJ1aWxkRGlyKS5qb2lucGF0aCgiQ29tcGlsZUluZm8iKQ0KPiA+ICsgICAg ICAgICAgICAgICAgY29tcGlsZV9pbmZvX2ZvbGRlci5ta2RpcihleGlzdF9vaz1UcnVlKQ0KPiA+ ICsNCj4gPiArICAgICAgICAgICAgICAgICMgU29ydCBhbmQgc2F2ZSBmaWxlcw0KPiA+ICsgICAg ICAgICAgICAgICAgY29tcGlsZV9jb21tYW5kcy5zb3J0KGtleT1sYW1iZGEgeDogeFsiZmlsZSJd KQ0KPiA+ICsNCj4gPiArDQo+ID4gU2F2ZUZpbGVPbkNoYW5nZShjb21waWxlX2luZm9fZm9sZGVy LmpvaW5wYXRoKGYiY29tcGlsZV9jb21tYW5kcy5qc29uIg0KPiA+ICsgKSxqc29uLmR1bXBzKGNv bXBpbGVfY29tbWFuZHMsIGluZGVudD0yKSwgRmFsc2UpDQo+ID4gKw0KPiA+ICsNCj4gPiArIFNh dmVGaWxlT25DaGFuZ2UoY29tcGlsZV9pbmZvX2ZvbGRlci5qb2lucGF0aChmImNzY29wZS5maWxl cyIpLA0KPiA+ICsgIlxuIi5qb2luKHNvcnRlZCh1c2VkX2ZpbGVzKSksIEZhbHNlKQ0KPiA+ICsN Cj4gPiArICAgICAgICAgICAgICAgIG1vZHVsZV9yZXBvcnQuc29ydChrZXk9bGFtYmRhIHg6IHhb IlBhdGgiXSkNCj4gPiArDQo+ID4gKyBTYXZlRmlsZU9uQ2hhbmdlKGNvbXBpbGVfaW5mb19mb2xk ZXIuam9pbnBhdGgoZiJtb2R1bGVfcmVwb3J0Lmpzb24iKSwNCj4gPiArIGpzb24uZHVtcHMobW9k dWxlX3JlcG9ydCwgaW5kZW50PTIpLCBGYWxzZSkNCj4gPiArDQo+ID4gKyAgICAgICAgZXhjZXB0 Og0KPiA+ICsgICAgICAgICAgICBFZGtMb2dnZXIuZXJyb3IoIkJ1aWxkUmVwb3J0IiwgQ09ERV9F UlJPUiwgIlVua25vd24gZmF0YWwgZXJyb3INCj4gPiB3aGVuIGdlbmVyYXRpbmcgYnVpbGQgcmVw b3J0IGNvbXBpbGUgaW5mb3JtYXRpb24iLA0KPiA+IEV4dHJhRGF0YT1zZWxmLlJlcG9ydEZpbGUs IFJhaXNlRXJyb3I9RmFsc2UpDQo+ID4gKyAgICAgICAgICAgIEVka0xvZ2dlci5xdWlldCgiKFB5 dGhvbiAlcyBvbiAlc1xuJXMpIiAlDQo+ID4gKyAocGxhdGZvcm0ucHl0aG9uX3ZlcnNpb24oKSwg c3lzLnBsYXRmb3JtLCB0cmFjZWJhY2suZm9ybWF0X2V4YygpKSkNCj4gPiArDQo+ID4gICMgVGhp cyBhY3RzIGxpa2UgdGhlIG1haW4oKSBmdW5jdGlvbiBmb3IgdGhlIHNjcmlwdCwgdW5sZXNzIGl0 IGlzICdpbXBvcnQnZWQgaW50bw0KPiA+IGFub3RoZXIgc2NyaXB0Lg0KPiA+ICBpZiBfX25hbWVf XyA9PSAnX19tYWluX18nOg0KPiA+ICAgICAgcGFzcw0KPiA+IC0NCj4gPiBkaWZmIC0tZ2l0IGEv QmFzZVRvb2xzL1NvdXJjZS9QeXRob24vYnVpbGQvYnVpbGRvcHRpb25zLnB5DQo+ID4gYi9CYXNl VG9vbHMvU291cmNlL1B5dGhvbi9idWlsZC9idWlsZG9wdGlvbnMucHkNCj4gPiBpbmRleCA4MzM0 NjA0YjQ2Li41ZWM1NjFmN2VjIDEwMDY0NA0KPiA+IC0tLSBhL0Jhc2VUb29scy9Tb3VyY2UvUHl0 aG9uL2J1aWxkL2J1aWxkb3B0aW9ucy5weQ0KPiA+ICsrKyBiL0Jhc2VUb29scy9Tb3VyY2UvUHl0 aG9uL2J1aWxkL2J1aWxkb3B0aW9ucy5weQ0KPiA+IEBAIC04NCw4ICs4NCw4IEBAIGNsYXNzIE15 T3B0aW9uUGFyc2VyKCk6DQo+ID4gICAgICAgICAgUGFyc2VyLmFkZF9vcHRpb24oIi1EIiwgIi0t ZGVmaW5lIiwgYWN0aW9uPSJhcHBlbmQiLCB0eXBlPSJzdHJpbmciLA0KPiA+IGRlc3Q9Ik1hY3Jv cyIsIGhlbHA9Ik1hY3JvOiBcIk5hbWUgWz0gVmFsdWVdXCIuIikNCj4gPg0KPiA+ICAgICAgICAg IFBhcnNlci5hZGRfb3B0aW9uKCIteSIsICItLXJlcG9ydC1maWxlIiwgYWN0aW9uPSJzdG9yZSIs DQo+ID4gZGVzdD0iUmVwb3J0RmlsZSIsIGhlbHA9IkNyZWF0ZS9vdmVyd3JpdGUgdGhlIHJlcG9y dCB0byB0aGUgc3BlY2lmaWVkDQo+ID4gZmlsZW5hbWUuIikNCj4gPiAtICAgICAgICBQYXJzZXIu YWRkX29wdGlvbigiLVkiLCAiLS1yZXBvcnQtdHlwZSIsIGFjdGlvbj0iYXBwZW5kIiwNCj4gPiB0 eXBlPSJjaG9pY2UiLCBjaG9pY2VzPVsnUENEJywgJ0xJQlJBUlknLCAnRkxBU0gnLCAnREVQRVgn LCAnQlVJTERfRkxBR1MnLA0KPiA+ICdGSVhFRF9BRERSRVNTJywgJ0hBU0gnLCAnRVhFQ1VUSU9O X09SREVSJ10sIGRlc3Q9IlJlcG9ydFR5cGUiLA0KPiA+IGRlZmF1bHQ9W10sDQo+ID4gLSAgICAg ICAgICAgIGhlbHA9IkZsYWdzIHRoYXQgY29udHJvbCB0aGUgdHlwZSBvZiBidWlsZCByZXBvcnQg dG8gZ2VuZXJhdGUuICBNdXN0IGJlDQo+ID4gb25lIG9mOiBbUENELCBMSUJSQVJZLCBGTEFTSCwg REVQRVgsIEJVSUxEX0ZMQUdTLCBGSVhFRF9BRERSRVNTLCBIQVNILA0KPiA+IEVYRUNVVElPTl9P UkRFUl0uICAiXA0KPiA+ICsgICAgICAgIFBhcnNlci5hZGRfb3B0aW9uKCItWSIsICItLXJlcG9y dC10eXBlIiwgYWN0aW9uPSJhcHBlbmQiLA0KPiA+IHR5cGU9ImNob2ljZSIsIGNob2ljZXM9WydQ Q0QnLCAnTElCUkFSWScsICdGTEFTSCcsICdERVBFWCcsICdCVUlMRF9GTEFHUycsDQo+ID4gJ0ZJ WEVEX0FERFJFU1MnLCAnSEFTSCcsICdFWEVDVVRJT05fT1JERVInLCAnQ09NUElMRV9JTkZPJ10s DQo+ID4gZGVzdD0iUmVwb3J0VHlwZSIsIGRlZmF1bHQ9W10sDQo+ID4gKyAgICAgICAgICAgIGhl bHA9IkZsYWdzIHRoYXQgY29udHJvbCB0aGUgdHlwZSBvZiBidWlsZCByZXBvcnQgdG8NCj4gPiAr IGdlbmVyYXRlLiAgTXVzdCBiZSBvbmUgb2Y6IFtQQ0QsIExJQlJBUlksIEZMQVNILCBERVBFWCwg QlVJTERfRkxBR1MsDQo+ID4gKyBGSVhFRF9BRERSRVNTLCBIQVNILCBFWEVDVVRJT05fT1JERVIs IENPTVBJTEVfSU5GT10uICAiXA0KPiA+ICAgICAgICAgICAgICAgICAgICJUbyBzcGVjaWZ5IG1v cmUgdGhhbiBvbmUgZmxhZywgcmVwZWF0IHRoaXMgb3B0aW9uIG9uIHRoZSBjb21tYW5kDQo+ID4g bGluZSBhbmQgdGhlIGRlZmF1bHQgZmxhZyBzZXQgaXMgW1BDRCwgTElCUkFSWSwgRkxBU0gsIERF UEVYLCBIQVNILA0KPiA+IEJVSUxEX0ZMQUdTLCBGSVhFRF9BRERSRVNTXSIpDQo+ID4gICAgICAg ICAgUGFyc2VyLmFkZF9vcHRpb24oIi1GIiwgIi0tZmxhZyIsIGFjdGlvbj0ic3RvcmUiLCB0eXBl PSJzdHJpbmciLA0KPiA+IGRlc3Q9IkZsYWciLA0KPiA+ICAgICAgICAgICAgICBoZWxwPSJTcGVj aWZ5IHRoZSBzcGVjaWZpYyBvcHRpb24gdG8gcGFyc2UgRURLIFVOSSBmaWxlLiBNdXN0IGJlIG9u ZSBvZjoNCj4gPiBbLWMsIC1zXS4gLWMgaXMgZm9yIEVESyBmcmFtZXdvcmsgVU5JIGZpbGUsIGFu ZCAtcyBpcyBmb3IgRURLIFVFRkkgVU5JIGZpbGUuICJcDQo+ID4gLS0NCj4gPiAyLjI4LjAud2lu ZG93cy4xDQo+IA0KPiANCj4gDQo+IA0KPiANCg0K