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.web08.5759.1618299467476607175 for ; Tue, 13 Apr 2021 00:37:48 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=R9aFibbs; spf=pass (domain: intel.com, ip: 134.134.136.100, mailfrom: bob.c.feng@intel.com) IronPort-SDR: xNB2w8jNiOTMUgC090d91e0lylz5cYQERc4Af7hhamegYmWR1Ma1c6EDiJxY9yTcBzTcLvfIqW DMZPXNyPmDUQ== X-IronPort-AV: E=McAfee;i="6200,9189,9952"; a="258335700" X-IronPort-AV: E=Sophos;i="5.82,218,1613462400"; d="scan'208";a="258335700" Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Apr 2021 00:37:45 -0700 IronPort-SDR: tghKwCulfIKBvfzWt8WhYo/urZUTIYlnCMkoVI6TiRpWgE9yDHn5OrM/XV8T9YCyLuCh9uhdYL yclqTOUd3TKA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.82,218,1613462400"; d="scan'208";a="451842562" Received: from orsmsx605.amr.corp.intel.com ([10.22.229.18]) by fmsmga002.fm.intel.com with ESMTP; 13 Apr 2021 00:37:44 -0700 Received: from orsmsx609.amr.corp.intel.com (10.22.229.22) by ORSMSX605.amr.corp.intel.com (10.22.229.18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2; Tue, 13 Apr 2021 00:37:44 -0700 Received: from orsmsx601.amr.corp.intel.com (10.22.229.14) by ORSMSX609.amr.corp.intel.com (10.22.229.22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2; Tue, 13 Apr 2021 00:37:43 -0700 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) 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.2106.2 via Frontend Transport; Tue, 13 Apr 2021 00:37:43 -0700 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.169) 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.2106.2; Tue, 13 Apr 2021 00:36:39 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aa5Jl01vYq6M/5HySgd8Tlc8xbMvK5dphOnWBWbbnx2qZpeisAGvLcn3E4MMsEc6ZVT+VENIM9IxxdOuXFpkBniGXB8qkD1sKCfLt7SWPmvTlsRHRYbpl6alVexYEH43u18VfX+9WYqzOktIzDTTzfMBu84wNGvkTNJ0daKwZybeetIZSlmrC40vsstYyEW/65++dI2Xv60fF8WF8+oizViO88EEhT39wN1OZDQPVC++b0VyQ3aMsVpi2pPIzRBwjtmwdldqd/Nu/L81M0CwhW/drLDADBj2Ej7xdmBSnU5XERfHBZs3lbAxq2yXv8XHAcKfKbD9oYJcZhXhypWGgQ== 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-SenderADCheck; bh=QMolEgTlIOvVTa0en1n0ANu6ZwRNL91WvueKB0gKgOA=; b=f6v6HTSzkoUw8+mk8LZvCj/lcimHJVeJz0AcVv/hs/bfUGf6XhPiXomaZHRuK+s+/EFFnVfBivQZaSnnBkz/1Tqi+X9g9v8tDDnyejoxkDQmzBJRe6wA5a/T8woms+u7btCsfWxPskzz4nVBl3HXqr3pRSmLYMLJAwEjEG04akcab171QdpWdoGw5x7xiM1q5mYpVOmsWTCeeXXiBwlpzbKBAL4dKwcTrqok9muQ1P0IKgiBtXQ5bx42azTBN4iRoW7GWaXeF+ALMoA74+mBzuL7iqtx6DZ8x41ECUvI7skfmRKa7Inxb2qeXjyuk/Yujdr6do8mZ0K6Q7FHKs97Fw== 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=QMolEgTlIOvVTa0en1n0ANu6ZwRNL91WvueKB0gKgOA=; b=R9aFibbskLCmy0RpfpgITJIAeSkCjKuOjOgqhBiuEl7/AeFmR/f3Pw7oXGOsTv52wqVnp7gAS36jN35qhgA3NDP0tY9idH2nI29YT5Bodg7lNHZNWuxjN/5E2gS3TdtllO1SNK7TH/4yjNbErcIed4Wp6otfoAfXkZkJGbTyfHM= Received: from BY5PR11MB4070.namprd11.prod.outlook.com (2603:10b6:a03:181::16) by SJ0PR11MB4989.namprd11.prod.outlook.com (2603:10b6:a03:2d9::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4020.22; Tue, 13 Apr 2021 07:36:38 +0000 Received: from BY5PR11MB4070.namprd11.prod.outlook.com ([fe80::59d9:835:3da1:ffda]) by BY5PR11MB4070.namprd11.prod.outlook.com ([fe80::59d9:835:3da1:ffda%4]) with mapi id 15.20.4020.022; Tue, 13 Apr 2021 07:36:38 +0000 From: "Bob Feng" To: "Kinney, Michael D" , gaoliming , "devel@edk2.groups.io" CC: "Chen, Christine" Subject: Re: [edk2-devel] [Patch 1/1] BaseTools/PlatformAutoGen: MAKE_FLAGS and MAKE_PATH fixes Thread-Topic: [edk2-devel] [Patch 1/1] BaseTools/PlatformAutoGen: MAKE_FLAGS and MAKE_PATH fixes Thread-Index: AQHXLYogiyH/9RXGP0WecSw76e4/sqqxrlAAgAATUwCAAFJZgA== Date: Tue, 13 Apr 2021 07:36:38 +0000 Message-ID: References: <20210409214838.1501-1-michael.d.kinney@intel.com> <00dc01d73004$b2d11bd0$18735370$@byosoft.com.cn> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-version: 11.5.1.3 dlp-product: dlpe-windows dlp-reaction: no-action authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.55.46.54] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: e92c8ae9-8310-413f-973c-08d8fe4edf75 x-ms-traffictypediagnostic: SJ0PR11MB4989: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:1443; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: yJ9TPsqkAaYiyq6UjaYWzo/CixvwV/C2LNPwYjRA34oNRN5W7lccxODEi3VlSNf2KTc1SKdrUQ5EwbNRWknrMD8jITYeSdNTfsklK2V1zC4ReSGwH6X6utCaW4hAHLqBcKwqv1+b4GarPUCiZzcBVXHy2Jkf6GeLeHn+NGCyObBsc3NWb9NjxNp5WABDHQSmMPZLLTHdwCtgolOQ2ylLvairZ721OhmFw0q2vehtEVIMB6bo2rFdg8mID8zxuMSLRFAnJTIkHEHuMD/HBRZN/xxzi88FV1sK2oQ7outkGn/0PL2IW/le0qL5yrVunTvhJx9wmWfeKG6KAWsNbHazDuUhXurQLeVw3KjrTDREy6gMjpU8njDazdEyzhvoIgS2nAW5964yiXW/8M2bQVoRrf8wBTH3kf7f7iU2WF3SD5L1FOmeyzZUJZunPcM1Hy4lTRhBdwzCeu5ybjFQgKtff6OqBh2jqpCP7Woa6AsjCLye1DhiifabaLIi1KybuC4NVEiNcva2CucDtTdwJFO1uYTONPi7WGRRz8cBYh5ja3QRMQhUzfjWD2bDtfuIjecNQD8jPwPEHPSxF0kPPMilMEiMztOjoHyMMlTo+j+/Tm5ruO2RVbH5vgvEKimfgouwq7elcQIXBuguzdWdGAZ4ILzr4vzGeXTwdxMYIXiGC6KD5XE608X+OS31pvak0nn6 x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BY5PR11MB4070.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(136003)(39860400002)(346002)(396003)(366004)(376002)(186003)(8936002)(26005)(86362001)(7696005)(478600001)(53546011)(5660300002)(38100700002)(122000001)(66946007)(316002)(33656002)(66556008)(8676002)(71200400001)(110136005)(55016002)(66476007)(83380400001)(66446008)(6506007)(9686003)(2906002)(107886003)(4326008)(966005)(76116006)(52536014)(64756008);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: =?utf-8?B?cXJwa1Bwb0lKRGd3QjVLQmpFb2JhU0xDaXl4bUZLLzNFMWsvMDFQL2pEaVhz?= =?utf-8?B?cmFnOFJCdEZwOFBTUnAxSmsrVlJpbW9UNVJhcGRQU1drUFI5eXZyb3I1NDFO?= =?utf-8?B?U0x0RlRiTTBxRGZyRkhDVVNoSzV1RHM1NGxkNnQ2UWxkVEs1L0pqemprVjNW?= =?utf-8?B?bHQ4V2ZjQmErM2Z5Qnk5bndsZHJTRnJ6SDNDbjg3MGcvSFltR0VBUzFUWE1F?= =?utf-8?B?STVvNVdBcnpNbWNlZ05NQmdCaGJ1YkR5RCtxUkxNUFZtdk9IT29GNjdGZnpy?= =?utf-8?B?SHR1eE83TlhZTmNWTEhXTGFPcnhVSDVGS2ZkOUNCbDlnbGROMDJvL0UwcVdC?= =?utf-8?B?OUtHVFZ1bFNrd2JpWmRjQzg4NzgyQ1dGZkJBdWZXdVlFNnREL1BuNW1zNEo2?= =?utf-8?B?ZUF4WWQ4MmVaTWNybWJyNDNZR3BYT3RJSTJKU01EZEc2eWJLeFJuak9YNHBz?= =?utf-8?B?azQ2K2txWHdtT3o0MThjTy8wa3ZWSjFXYitRRmF5V0ZmRWZZalI3MW1iSGUr?= =?utf-8?B?RzJqa2IyMEdXOURHRUNwYkUxdDYyUHc1YmtyOEcxYjVmcVZkOGlwVGorZ01M?= =?utf-8?B?K1ZEV1hYTzlya1o3QzU1Vm82bHlvckJCRW9haU96cWlSOVd4d0Mrd3hlZWVD?= =?utf-8?B?Kzg0Yk9RN1h0dktJR2s2L2lNUVVWMi85dERyVWcrbUY5dlJTZ3YzK2kzOUNm?= =?utf-8?B?cHNEU0QxQjN1MUxoeWl0VU8xUmtmejZOeFpNSEhJalJFQTZScHRFS01GV3lC?= =?utf-8?B?L2lIQXF6MytiUExaVThRdmpqY1RaNjZxMS9rQ2VJajdGS0FXZEwwVm9raVR1?= =?utf-8?B?dTdBcmxCT2ZqamZaYnZ3OTMyOWhJMWJUZ3pQV1pXQlpYS3NUeE1CWnBLUVE3?= =?utf-8?B?bjBibDJPZ0JoNnQ2b3JGbVNYVzJIRFV2TnQ1U0Rtby9iNStHWmsrSnhsU1Mw?= =?utf-8?B?SzlXOWdLS3VxWVlUNXZ1SFpCckJTYU1SK1hsUTc2ZHhwKzdVcVBxQlNXRVJF?= =?utf-8?B?cDVHRFNZbWtXaXYzdzJJK0txblNQb3M1UG00eVZkbzZyZ2hWaThsNmFtKy9V?= =?utf-8?B?b0pBV1BOTllUdDhjZEhJMUNyS1NDcXY1OGJuNGlyQzFYYXUySSt1U0tyb0ox?= =?utf-8?B?ZENDWHpwelVENXh3a2FUTWsyNEtPY2pGOEFVV1NNVk5TczlJbDRVeWRyQlF6?= =?utf-8?B?a3dnR0dnOU52blcwcFN2cmdQZmFBS3MzRkU5dnNGMzhPUXFQYmVWWVdwNlFv?= =?utf-8?B?SlJGeHY5SnpDYjJLQ0FwaVFDTnpndkJmamp5YjVHdHFuZzJRVFNjcVNERUlj?= =?utf-8?B?bFJnejVMNXJoemVnaTZyWmhjRTFRWlI2a1BZWGkwNVNzbDh0TmY2M2hlNDdu?= =?utf-8?B?MHR0ZWNVWXFDa3lzUHNzVlBkdlhJdGcyRmNINERZU3NuN0FqRU93d1M4aDhn?= =?utf-8?B?bVNmOGhBZ0RtUSsxYkl3OXN5ckVwUXM5MEZpb3pOWHJ2SDNnTGtKdmVxaTdC?= =?utf-8?B?M3VGZE1BRXJYbVRCdWpWUksrek9mbzcwaXpiVEVsNmEybndvM0hsTzdtcDFO?= =?utf-8?B?NkIrOXdic2lyRUxHSkVZYlVlbnUzZnYxN1lQeWpYU2p1bHdYN2pQclN5TzNW?= =?utf-8?B?c2pUS3UycUlQNC9xRkpoVmdjU2NSTFZUQURBSDNtbWJpSkszZmRnL0xjUFVR?= =?utf-8?B?ZzVGenpCTHgraHF1ajBBZEczQ3hBYVRwQ2dhSjVleFo2eEhpR3k5b0VSbE1m?= =?utf-8?Q?U4uo8zmZOBrR78Q0bw=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BY5PR11MB4070.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: e92c8ae9-8310-413f-973c-08d8fe4edf75 X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Apr 2021 07:36:38.1295 (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: XWUL7RmfBreLn1o9FfiooAvQsroWUmw5D3iI6O+hlesI6uKYQhi+v3xXHcCqPeX3h5YwtbEJB2l2X30Ijn3H/Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ0PR11MB4989 Return-Path: bob.c.feng@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 VGhpcyBwYXRjaCBsb29rcyBnb29kIHRvIG1lLg0KDQpSZXZpZXdlZC1ieTogQm9iIEZlbmcgPGJv Yi5jLmZlbmdAaW50ZWwuY29tPg0KDQpUaGFua3MsDQpCb2INCg0KLS0tLS1PcmlnaW5hbCBNZXNz YWdlLS0tLS0NCkZyb206IEtpbm5leSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVs LmNvbT4gDQpTZW50OiBUdWVzZGF5LCBBcHJpbCAxMywgMjAyMSAxMDo0MCBBTQ0KVG86IGdhb2xp bWluZyA8Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuPjsgZGV2ZWxAZWRrMi5ncm91cHMuaW87IEtp bm5leSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4NCkNjOiBGZW5nLCBC b2IgQyA8Ym9iLmMuZmVuZ0BpbnRlbC5jb20+OyBDaGVuLCBDaHJpc3RpbmUgPHl1d2VpLmNoZW5A aW50ZWwuY29tPg0KU3ViamVjdDogUkU6IFtlZGsyLWRldmVsXSBbUGF0Y2ggMS8xXSBCYXNlVG9v bHMvUGxhdGZvcm1BdXRvR2VuOiBNQUtFX0ZMQUdTIGFuZCBNQUtFX1BBVEggZml4ZXMNCg0KTGlt aW5nLA0KDQpUaGUgQlogY29udGFpbnMgYW4gZXhhbXBsZSBvZiBNQUtFX0ZMQUdTIGluIERTQyB0 aGF0IGJyZWFrcyB0aGUgYnVpbGQuICBXaXRoIHRoaXMgY2hhbmdlLCB0aGF0IGV4YW1wbGUgcGFz c2VzIGFuZCBzaG93cyB0aGUgYWRkaXRpb25hbCBtYWtlIHRvb2wgb3V0cHV0Lg0KDQpNaWtlDQoN Cj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogZ2FvbGltaW5nIDxnYW9saW1p bmdAYnlvc29mdC5jb20uY24+DQo+IFNlbnQ6IE1vbmRheSwgQXByaWwgMTIsIDIwMjEgNjozMSBQ TQ0KPiBUbzogZGV2ZWxAZWRrMi5ncm91cHMuaW87IEtpbm5leSwgTWljaGFlbCBEIA0KPiA8bWlj aGFlbC5kLmtpbm5leUBpbnRlbC5jb20+DQo+IENjOiBGZW5nLCBCb2IgQyA8Ym9iLmMuZmVuZ0Bp bnRlbC5jb20+OyBDaGVuLCBDaHJpc3RpbmUgDQo+IDx5dXdlaS5jaGVuQGludGVsLmNvbT4NCj4g U3ViamVjdDog5Zue5aSNOiBbZWRrMi1kZXZlbF0gW1BhdGNoIDEvMV0gQmFzZVRvb2xzL1BsYXRm b3JtQXV0b0dlbjogDQo+IE1BS0VfRkxBR1MgYW5kIE1BS0VfUEFUSCBmaXhlcw0KPiANCj4gTWlr ZToNCj4gICBJIGRvbid0IHNlZSB0aGUgaXNzdWUgaW4gdGhlIGNvZGUgY2hhbmdlLiBJIHdhbnQg dG8ga25vdyB3aGF0IHVuaXQgDQo+IHRlc3QgaGFzIGJlZW4gZG9uZSBmb3IgdGhpcyBjaGFuZ2Uu DQo+IA0KPiBUaGFua3MNCj4gTGltaW5nDQo+ID4gLS0tLS3pgq7ku7bljp/ku7YtLS0tLQ0KPiA+ IOWPkeS7tuS6ujogZGV2ZWxAZWRrMi5ncm91cHMuaW8gPGRldmVsQGVkazIuZ3JvdXBzLmlvPiDk u6PooaggTWljaGFlbCBEIEtpbm5leQ0KPiA+IOWPkemAgeaXtumXtDogMjAyMeW5tDTmnIgxMOaX pSA1OjQ5DQo+ID4g5pS25Lu25Lq6OiBkZXZlbEBlZGsyLmdyb3Vwcy5pbw0KPiA+IOaKhOmAgTog Qm9iIEZlbmcgPGJvYi5jLmZlbmdAaW50ZWwuY29tPjsgTGltaW5nIEdhbyANCj4gPiA8Z2FvbGlt aW5nQGJ5b3NvZnQuY29tLmNuPjsgWXV3ZWkgQ2hlbiA8eXV3ZWkuY2hlbkBpbnRlbC5jb20+DQo+ ID4g5Li76aKYOiBbZWRrMi1kZXZlbF0gW1BhdGNoIDEvMV0gQmFzZVRvb2xzL1BsYXRmb3JtQXV0 b0dlbjogTUFLRV9GTEFHUyANCj4gPiBhbmQgTUFLRV9QQVRIIGZpeGVzDQo+ID4NCj4gPiBSRUY6 IGh0dHBzOi8vYnVnemlsbGEudGlhbm9jb3JlLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzMxMg0KPiA+ DQo+ID4gVXBkYXRlIHBhcnNpbmcgb2YgTUFLRV9GTEFHUyBpbiBEU0MgW0J1aWxkT3B0aW9uc10g c2VjdGlvbnMgdG8gc3BsaXQgDQo+ID4gdGhlIGZsYWdzIGludG8gYSBsaXN0IHRvIGJlIGNvbXBh dGlibGUgd2l0aCBydW5uaW5nIHRoZSBtYWtlIGNvbW1hbmQgDQo+ID4gdXNpbmcgUG9wZW4oKS4g IFBhcnNpbmcgTUFLRV9GTEFHUyBmcm9tIHRvb2xzX2RlZi50eHQgYWxyZWFkeSB1c2VzIA0KPiA+ IF9TcGxpdE9wdGlvbigpLiAgVGhpcyBjaGFuZ2UgdXNlcyB0aGUgc2FtZSBfU3BsaXRPcHRpb24o KSBtZXRob2QgZm9yIA0KPiA+IE1BS0VfRkxBR1MgZnJvbSBhIERTQyBbQnVpbGRPcHRpb25zXSBz ZWN0aW9uLg0KPiA+DQo+ID4gQWxzbyB1cGRhdGUgdGhlIHBhcnNpbmcgb2YgTUFLRV9QQVRIIHRv IHN1cHBvcnQgTUFLRV9QQVRIIGZyb20gDQo+ID4gdG9vbHNfZGVmLnR4dCBvciB0aGUgRFNDIFtC dWlsZE9wdGlvbnNdIHNlY3Rpb24uICBNQUtFX1BBVEggaW4gRFNDIA0KPiA+IFtCdWlsZE9wdGlv bnNdIHNlY3Rpb24gaXMgaGlnaGVyIHByaW9yaXR5IHRoYW4gTUFLRV9QQVRIIGluIA0KPiA+IHRv b2xzX2RlZi50eHQuDQo+ID4NCj4gPiBDYzogQm9iIEZlbmcgPGJvYi5jLmZlbmdAaW50ZWwuY29t Pg0KPiA+IENjOiBMaW1pbmcgR2FvIDxnYW9saW1pbmdAYnlvc29mdC5jb20uY24+DQo+ID4gQ2M6 IFl1d2VpIENoZW4gPHl1d2VpLmNoZW5AaW50ZWwuY29tPg0KPiA+IFNpZ25lZC1vZmYtYnk6IE1p Y2hhZWwgRCBLaW5uZXkgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPg0KPiA+IC0tLQ0KPiA+ ICAuLi4vU291cmNlL1B5dGhvbi9BdXRvR2VuL1BsYXRmb3JtQXV0b0dlbi5weSAgfCAzNiANCj4g PiArKysrKysrKysrKy0tLS0tLS0tDQo+ID4gIDEgZmlsZSBjaGFuZ2VkLCAyMSBpbnNlcnRpb25z KCspLCAxNSBkZWxldGlvbnMoLSkNCj4gPg0KPiA+IGRpZmYgLS1naXQgYS9CYXNlVG9vbHMvU291 cmNlL1B5dGhvbi9BdXRvR2VuL1BsYXRmb3JtQXV0b0dlbi5weQ0KPiA+IGIvQmFzZVRvb2xzL1Nv dXJjZS9QeXRob24vQXV0b0dlbi9QbGF0Zm9ybUF1dG9HZW4ucHkNCj4gPiBpbmRleCA3ZDhlN2Iz YzdjYzEuLmMxNmYyZTRjZDhiNyAxMDA2NDQNCj4gPiAtLS0gYS9CYXNlVG9vbHMvU291cmNlL1B5 dGhvbi9BdXRvR2VuL1BsYXRmb3JtQXV0b0dlbi5weQ0KPiA+ICsrKyBiL0Jhc2VUb29scy9Tb3Vy Y2UvUHl0aG9uL0F1dG9HZW4vUGxhdGZvcm1BdXRvR2VuLnB5DQo+ID4gQEAgLTEsNyArMSw3IEBA DQo+ID4gICMjIEBmaWxlDQo+ID4gICMgQ3JlYXRlIG1ha2VmaWxlIGZvciBNUyBubWFrZSBhbmQg R05VIG1ha2UgICMgLSMgQ29weXJpZ2h0IChjKSANCj4gPiAyMDE5LCBJbnRlbCBDb3Jwb3JhdGlv bi4gQWxsIHJpZ2h0cyByZXNlcnZlZC48QlI+DQo+ID4gKyMgQ29weXJpZ2h0IChjKSAyMDE5IC0g MjAyMSwgSW50ZWwgQ29ycG9yYXRpb24uIEFsbCByaWdodHMgDQo+ID4gK3Jlc2VydmVkLjxCUj4N Cj4gPiAgIyAgQ29weXJpZ2h0IChjKSAyMDIwLCBBUk0gTGltaXRlZC4gQWxsIHJpZ2h0cyByZXNl cnZlZC48QlI+ICAjIA0KPiA+IFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2Ut UGF0ZW50ICAjIEBAIC04MDUsMjAgKzgwNSwyNiANCj4gPiBAQCBjbGFzcyBQbGF0Zm9ybUF1dG9H ZW4oQXV0b0dlbik6DQo+ID4gICAgICAjDQo+ID4gICAgICBAY2FjaGVkX3Byb3BlcnR5DQo+ID4g ICAgICBkZWYgQnVpbGRDb21tYW5kKHNlbGYpOg0KPiA+IC0gICAgICAgIFJldFZhbCA9IFtdDQo+ ID4gLSAgICAgICAgaWYgIk1BS0UiIGluIHNlbGYuVG9vbERlZmluaXRpb24gYW5kICJQQVRIIiBp bg0KPiA+IHNlbGYuVG9vbERlZmluaXRpb25bIk1BS0UiXToNCj4gPiAtICAgICAgICAgICAgUmV0 VmFsICs9IF9TcGxpdE9wdGlvbihzZWxmLlRvb2xEZWZpbml0aW9uWyJNQUtFIl1bIlBBVEgiXSkN Cj4gPiAtICAgICAgICAgICAgaWYgIkZMQUdTIiBpbiBzZWxmLlRvb2xEZWZpbml0aW9uWyJNQUtF Il06DQo+ID4gLSAgICAgICAgICAgICAgICBOZXdPcHRpb24gPQ0KPiA+IHNlbGYuVG9vbERlZmlu aXRpb25bIk1BS0UiXVsiRkxBR1MiXS5zdHJpcCgpDQo+ID4gLSAgICAgICAgICAgICAgICBpZiBO ZXdPcHRpb24gIT0gJyc6DQo+ID4gLSAgICAgICAgICAgICAgICAgICAgUmV0VmFsICs9IF9TcGxp dE9wdGlvbihOZXdPcHRpb24pDQo+ID4gLSAgICAgICAgICAgIGlmICJNQUtFIiBpbiBzZWxmLkVk a0lJQnVpbGRPcHRpb246DQo+ID4gLSAgICAgICAgICAgICAgICBpZiAiRkxBR1MiIGluIHNlbGYu RWRrSUlCdWlsZE9wdGlvblsiTUFLRSJdOg0KPiA+IC0gICAgICAgICAgICAgICAgICAgIEZsYWdz ID0gc2VsZi5FZGtJSUJ1aWxkT3B0aW9uWyJNQUtFIl1bIkZMQUdTIl0NCj4gPiAtICAgICAgICAg ICAgICAgICAgICBpZiBGbGFncy5zdGFydHN3aXRoKCc9Jyk6DQo+ID4gLSAgICAgICAgICAgICAg ICAgICAgICAgIFJldFZhbCA9IFtSZXRWYWxbMF1dICsgW0ZsYWdzWzE6XV0NCj4gPiAtICAgICAg ICAgICAgICAgICAgICBlbHNlOg0KPiA+IC0gICAgICAgICAgICAgICAgICAgICAgICBSZXRWYWwu YXBwZW5kKEZsYWdzKQ0KPiA+ICsgICAgICAgIGlmICJNQUtFIiBpbiBzZWxmLkVka0lJQnVpbGRP cHRpb24gYW5kICJQQVRIIiBpbg0KPiA+IHNlbGYuRWRrSUlCdWlsZE9wdGlvblsiTUFLRSJdOg0K PiA+ICsgICAgICAgICAgICAjIE1BS0VfUEFUSCBpbiBEU0MgW0J1aWxkT3B0aW9uc10gc2VjdGlv biBpcyBoaWdoZXIgcHJpb3JpdHkNCj4gPiArICAgICAgICAgICAgUGF0aCA9IHNlbGYuRWRrSUlC dWlsZE9wdGlvblsiTUFLRSJdWyJQQVRIIl0NCj4gPiArICAgICAgICAgICAgaWYgUGF0aC5zdGFy dHN3aXRoKCc9Jyk6DQo+ID4gKyAgICAgICAgICAgICAgICBQYXRoID0gUGF0aFsxOl0uc3RyaXAo KQ0KPiA+ICsgICAgICAgICAgICBSZXRWYWwgPSBfU3BsaXRPcHRpb24oUGF0aCkNCj4gPiArICAg ICAgICBlbGlmICJNQUtFIiBpbiBzZWxmLlRvb2xEZWZpbml0aW9uIGFuZCAiUEFUSCIgaW4NCj4g PiBzZWxmLlRvb2xEZWZpbml0aW9uWyJNQUtFIl06DQo+ID4gKyAgICAgICAgICAgIFJldFZhbCA9 IF9TcGxpdE9wdGlvbihzZWxmLlRvb2xEZWZpbml0aW9uWyJNQUtFIl1bIlBBVEgiXSkNCj4gPiAr ICAgICAgICBlbHNlOg0KPiA+ICsgICAgICAgICAgICByZXR1cm4gW10NCj4gPiArICAgICAgICBp ZiAiTUFLRSIgaW4gc2VsZi5Ub29sRGVmaW5pdGlvbiBhbmQgIkZMQUdTIiBpbg0KPiA+IHNlbGYu VG9vbERlZmluaXRpb25bIk1BS0UiXToNCj4gPiArICAgICAgICAgICAgTmV3T3B0aW9uID0gc2Vs Zi5Ub29sRGVmaW5pdGlvblsiTUFLRSJdWyJGTEFHUyJdLnN0cmlwKCkNCj4gPiArICAgICAgICAg ICAgaWYgTmV3T3B0aW9uICE9ICcnOg0KPiA+ICsgICAgICAgICAgICAgICAgUmV0VmFsICs9IF9T cGxpdE9wdGlvbihOZXdPcHRpb24pDQo+ID4gKyAgICAgICAgaWYgIk1BS0UiIGluIHNlbGYuRWRr SUlCdWlsZE9wdGlvbiBhbmQgIkZMQUdTIiBpbg0KPiA+IHNlbGYuRWRrSUlCdWlsZE9wdGlvblsi TUFLRSJdOg0KPiA+ICsgICAgICAgICAgICBGbGFncyA9IHNlbGYuRWRrSUlCdWlsZE9wdGlvblsi TUFLRSJdWyJGTEFHUyJdDQo+ID4gKyAgICAgICAgICAgIGlmIEZsYWdzLnN0YXJ0c3dpdGgoJz0n KToNCj4gPiArICAgICAgICAgICAgICAgIFJldFZhbCA9IFtSZXRWYWxbMF1dICsgX1NwbGl0T3B0 aW9uKEZsYWdzWzE6XS5zdHJpcCgpKQ0KPiA+ICsgICAgICAgICAgICBlbHNlOg0KPiA+ICsgICAg ICAgICAgICAgICAgUmV0VmFsID0gUmV0VmFsICsgX1NwbGl0T3B0aW9uKEZsYWdzLnN0cmlwKCkp DQo+ID4gICAgICAgICAgcmV0dXJuIFJldFZhbA0KPiA+DQo+ID4gICAgICAjIyBHZXQgdG9vbCBj aGFpbiBkZWZpbml0aW9uDQo+ID4gLS0NCj4gPiAyLjMxLjEud2luZG93cy4xDQo+ID4NCj4gPg0K PiA+DQo+ID4gDQo+ID4NCj4gDQo+IA0KDQo=