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.web09.1747.1612921993018009245 for ; Tue, 09 Feb 2021 17:53:13 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=eoTTVCi5; spf=pass (domain: intel.com, ip: 192.55.52.88, mailfrom: michael.d.kinney@intel.com) IronPort-SDR: gU2wZXi5AeoMco0tvGXZH84q4xBvZFu1FLu0idPlnaEMcNNw/FsDUPZDBljeBtMfDmXop3rTtD sPE12ftXzIBg== X-IronPort-AV: E=McAfee;i="6000,8403,9890"; a="201092374" X-IronPort-AV: E=Sophos;i="5.81,166,1610438400"; d="scan'208";a="201092374" Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Feb 2021 17:53:10 -0800 IronPort-SDR: FD3SGTw1c/VgsDiBgSVzNym0ETnNwor+NL6SI7TeO8Zi+0bVi+S17Ok1y7N2F8e8Qkyl7VuFWY gDJ/5vrnFr6w== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.81,166,1610438400"; d="scan'208";a="412586081" Received: from orsmsx604.amr.corp.intel.com ([10.22.229.17]) by fmsmga004.fm.intel.com with ESMTP; 09 Feb 2021 17:53:10 -0800 Received: from orsmsx609.amr.corp.intel.com (10.22.229.22) by ORSMSX604.amr.corp.intel.com (10.22.229.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2; Tue, 9 Feb 2021 17:53:09 -0800 Received: from orsmsx602.amr.corp.intel.com (10.22.229.15) 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, 9 Feb 2021 17:53:09 -0800 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) 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.2106.2 via Frontend Transport; Tue, 9 Feb 2021 17:53:09 -0800 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.108) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.1713.5; Tue, 9 Feb 2021 17:53:00 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=i1ouVxjRWD1qwDdH3LYYOnp3DMFzzaZ1hCWtpzYkMKDgV6u6DYrM9kV9PlxxyPSB+5mFY23eojEc3LZ9S7FJU8lh5SML2Nvs/43WSe8rySm5Sgpma2joMYEXnHBzoYV3z5JtqqFOnffpgONWQDl5/4LM+kCnNygITWoyMQhkgFxrpywZynvtNy8c7Hw8GJJC5zP60Fqfua/D7Fd/eRSLgNGQEtVQiCpepU87mGD66FSqbdeXD1ld6rjkJWXSry60DsaNlC25DrJRdkcfH8al91OplAdB8P0lRbfbgSFLzjSR80UNFu2hJVZB95G720IGmDKroxziPIWSa4lnyH9oRA== 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=wmAL6+pqC6hQCqnE1KxrTfpE/BagDJrCtybnNr6tmK8=; b=WXR9vVg4BEi0OVVB8YCkTG7pU8JuwQjadX6rlSsApiQErUHKGFy+xngXiWGVaBytcPZQlfNmjzVtwP9aZ+DzrpA3Lu1/1vyl0AovcqlUn+jWXtse3+VoctPzx+WtKxUcZusUWl3P2g9IMc/kDjw3WHV+UvnLNgbj5gs60c0j8MSkHKFEcBKpQGlYvlvH0BYzKW6hzQmeVCpbVqm4Fl/ewfWMILz77KaJH+CwFF/bWvKUmlzQIFXSF7VRXarjF8oZhB0E4peWuZ83eccaSZaLAm1SaCVyWtUoQnQnvp2eeB64tARU6Mzd/BY6HuiOyJZalMTnZbdYZvaWxlow49NEBA== 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=wmAL6+pqC6hQCqnE1KxrTfpE/BagDJrCtybnNr6tmK8=; b=eoTTVCi5li71rADtbOQSRQaY0XxO0HFSN/Tg5A5bdiDwOsTapK0j4bHqKAWdWNs6zcEyubOQVjIjaofeLc0L3aRLf9EmTEnZ70jrR+VymZ5eEshUx2G+dFpGEnxFVIH2P9M468hvGJrceryuyEK9WUvQ138corSfqYC54ldSj5k= Received: from CO1PR11MB4929.namprd11.prod.outlook.com (2603:10b6:303:6d::19) by MWHPR11MB1726.namprd11.prod.outlook.com (2603:10b6:300:23::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3846.25; Wed, 10 Feb 2021 01:52:59 +0000 Received: from CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::ddb6:ec7f:2548:efdc]) by CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::ddb6:ec7f:2548:efdc%4]) with mapi id 15.20.3846.026; Wed, 10 Feb 2021 01:52:59 +0000 From: "Michael D Kinney" To: "Feng, Bob C" , Leif Lindholm , "Kinney, Michael D" CC: "devel@edk2.groups.io" , Liming Gao , "Chen, Christine" , "Matthew Carlson" Subject: Re: [Patch] BaseTools: Fix the ending character for Linux script BuildEnv Thread-Topic: [Patch] BaseTools: Fix the ending character for Linux script BuildEnv Thread-Index: AQHW/vQJzdF9j3+HZ0el06TBL5RZlqpP6u4AgAAAlgCAAKu+sIAACXJw Date: Wed, 10 Feb 2021 01:52:59 +0000 Message-ID: References: <20210209145808.451-1-bob.c.feng@intel.com> <20210209150118.GJ1664@vanye> 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.5.1.3 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: [24.19.191.44] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 94f588ea-505e-4924-5607-08d8cd6697fb x-ms-traffictypediagnostic: MWHPR11MB1726: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:1303; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: hAnDGaVkeako2E7YLXMXhDqK1uxszesYoy48nxmy6qq4xhygOMOXo5PWsv/3CWd6dtl2DR+hURzZqcCAqmFXNNPanhatbLTU4Q0lo+83XCHVSS3pxEDXTVBofL2zFlpBmJlIUpO5maPxm4DMcEAJ35rkr7j5S7LUSUFnKsxa1nH372GfYsV3s2GfXbvuEi18aiTZufoIreDjrXT54rRuk5CTT6Il6WbiHP28EXAXA1kICuakZTYHeZEjPuYM8whySLDRBIKPQFg3kJWj3dyQC2Ey3rY4H0m/654S6jRygkmQFh4K30sl5nrolSdjMoVj1HhtBXQIMyJx2RgGszXdK/3e4sUyv51EgaI/9Rd2uJtgCCSYsu4mhYwCg7BqUItKBVjHZyygHd8mPuUs4yQvzDTERjvXzGugn5b7R+i5G0eywE7kFEhxxl447SUx7uiXFINewdJPo8wzFwwrMftYISWhkWBd0IB/ObcVpnajtcDPlRtRdNMUBL53C+LoOziTvMvY22dAU6XFrrUXXdLOmndZs4PUjdWa9YvbFtMuu0FnuaNmOPGeg1a8uHQzV3gG2qjW3/jBccL53R5S8WqXMJ93yWv4XAr22G+gJvJzWog= 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:(346002)(39860400002)(376002)(366004)(396003)(136003)(478600001)(71200400001)(54906003)(53546011)(6506007)(110136005)(8676002)(86362001)(66556008)(64756008)(66446008)(66476007)(76116006)(66946007)(966005)(316002)(4326008)(2940100002)(7696005)(8936002)(83380400001)(5660300002)(26005)(2906002)(186003)(33656002)(52536014)(55016002)(9686003);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: =?utf-8?B?WkpneDNJVmNGRG9XdVhCM2F4RVBpbjcxRTFpT2wrWHpYR3c5RjE3aWhkK2VL?= =?utf-8?B?bU1NYkJQMGdnNWhZaEFyVkhFODBRN3hJc2FrWFNuTWlmdk1uUW5xTVRYZG1I?= =?utf-8?B?QWRmOVN2ZjZSOFhrSm9yQmYxaFpNMlgydzhwWVR4SUpyeGFFZ3IzQktPdVEr?= =?utf-8?B?WSt5cThVbUhxTEtIeFE2T3JQRkZvL3l5RXRqZGd5VXhFVms1TXR5THR6ZExi?= =?utf-8?B?SFpOTVo3dFZOUkpHaDBZR3dkdkhZZWZtYm00U3VsOHlUOUJ1UDViT2V2N01Z?= =?utf-8?B?Y2l0RnN4d2M5Rkc1RnpYbksrUk9oc1BKYk1GRmY2eDF2ZWpGTklweURxVVo2?= =?utf-8?B?MmdUc05jQzhSbUtYSm9HVFpKcUVsQ1VGaS9MU1YvQlpZMVF0S2wzblhvU0VZ?= =?utf-8?B?eWxnYnBaTGhvT0RCbnkyRVZnMGx5dHVYQlg0bGw0RDF6enY3MTM5d0JrRWJj?= =?utf-8?B?WG1STVBJaFRWdVdSdWpyWENUUzEwanE2L0pGVHlhc2RkSmZFd1N2S0lCVlRm?= =?utf-8?B?aHZaTDlzQksxZ3BGRHAwcms1ZWRRQ2ZadkVxWU84ZndxSm1WSzZjdXJEcHVk?= =?utf-8?B?a1BpUS9IRlc0TjZtYnd2b25VczcvZm1hVFl0UFNGd1MvNktZRjRTd0gzKzBv?= =?utf-8?B?R2xHM3hlaFprN0paOG8yU2tMQjV4Snd0OElvMkZKdTcwcUFFMUxvR1BMWE1G?= =?utf-8?B?SXBReHRYQ0Npak1lV0hBZ0FsdkV5NThPN0Z2T2paQUJNRkJ3OUJ2QXlURFZX?= =?utf-8?B?K1dmeUpra0dMai9NdW80cFZwcGV6cDVxU1ZwOGxOSmtLdVJMTENNUzByNDFX?= =?utf-8?B?TitwbktoaWRWWlRBclJ2UCtJSlJlalorYWxjTE1mSHBMVEFQM3RrVmVGRTFm?= =?utf-8?B?eDdRK1JpQlZXRXI5ZUgwSXpkYVovZ1hjUHF0Ymw1THJmRmQzTURNUHczUDh3?= =?utf-8?B?Z25yYkExcE52ZzJxb1ROVTV3VDhtTDJ4UjVGVGpRSktvelFZNFZmKzYvdGtL?= =?utf-8?B?bDlQaFNnWTFIZktkKzhjM0JoY0tGZURUUk1RbGJycm9raEFldFRhZk1MQ0Uz?= =?utf-8?B?d3NVanpZS3lZNm43TytyYWtITS9ROEhpNkxiTWlTZlpnQ0tYUUV1Vi9YdGpB?= =?utf-8?B?NnhJQWJ4eU5IK293MlVYbFY2WkNrY0RvbmsyaW5waTZoMTYreWpYVEZ6WEpN?= =?utf-8?B?cG1kWnVpSHN2NDVaRHZnUkE1dmdyanpiSkw4OGhYL0lmRVdtUmZQaGs2bjhs?= =?utf-8?B?TlF6NTliVHR4RGFVQVI2MWlRMVpNNXJkUGRWREV6TW9kY3NUTDE0MFVTMU85?= =?utf-8?B?MHIxYzZqeXFVVkozdUhzYldKRW1JMEU2T3VGYms4YlN4OE04UXdYL0RWLzM4?= =?utf-8?B?L0ZDREVRU2thWlFjazl2am5Ja3htaGYvN1g4Ymk5VEI5UmFKbE5udWVtMVd6?= =?utf-8?B?LzhLam1lNXJCeG8wQlcvZU1vdTc3TzJyaFd3WUpuVDRYWDBnZmpqdTlQYmY0?= =?utf-8?B?dGFBTi9jZ0dhQmFJS1AzMWRaUTI0TW9LUmVSQWM1WkFya2FOT0MrU2J0dW9o?= =?utf-8?B?RTFNc3NVcklzTUU0RWY0Tnd1YjhvZkY0VGpQVWN0Y3lLMkJldUZvMXk5TjE2?= =?utf-8?B?MEZ6VGdNMkN0UHk4TndOZldWanVLclFEZjdxcnJvM1ZTaTluZlJBSWdwMHFm?= =?utf-8?B?dnhZbms1K3F5ZHQvc0Q4d2NoZkxERi9BSzdZemlNdDc0a2JYdWpCNXF0MVNr?= =?utf-8?Q?cdMguF+CoHZDW3gMPY=3D?= 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: 94f588ea-505e-4924-5607-08d8cd6697fb X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Feb 2021 01:52:59.2467 (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: 0DNRaJnJIebTbj5b22AmrqJyIHm0vs1ObbnhPS4NS41fgdxPVtjSN4mGKgo7ZzgUjTnx5fDQbk6YityQCZYhp7Yu9Ixqbzve+krAYoWbMoI= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR11MB1726 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 UHVzaGVkDQoNClBSOiBodHRwczovL2dpdGh1Yi5jb20vdGlhbm9jb3JlL2VkazIvcHVsbC8xNDE5 DQpDb21taXQ6IGh0dHBzOi8vZ2l0aHViLmNvbS90aWFub2NvcmUvZWRrMi9wdWxsLzE0MTkvY29t bWl0cy9jMTBiNTEzODMwZTYzZmE0ZmMyOGYxZWRjNDMzNTJkZThkOTdiNjFmDQoNCk1pa2UNCiAN Cg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBLaW5uZXksIE1pY2hhZWwg RCA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+DQo+IFNlbnQ6IFR1ZXNkYXksIEZlYnJ1YXJ5 IDksIDIwMjEgNToyMSBQTQ0KPiBUbzogRmVuZywgQm9iIEMgPGJvYi5jLmZlbmdAaW50ZWwuY29t PjsgTGVpZiBMaW5kaG9sbSA8bGVpZkBudXZpYWluYy5jb20+OyBLaW5uZXksIE1pY2hhZWwgRCA8 bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+DQo+IENjOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbzsg TGltaW5nIEdhbyA8Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuPjsgQ2hlbiwgQ2hyaXN0aW5lIDx5 dXdlaS5jaGVuQGludGVsLmNvbT47IE1hdHRoZXcgQ2FybHNvbg0KPiA8bWF0dGhld2ZjYXJsc29u QGdtYWlsLmNvbT4NCj4gU3ViamVjdDogUkU6IFtQYXRjaF0gQmFzZVRvb2xzOiBGaXggdGhlIGVu ZGluZyBjaGFyYWN0ZXIgZm9yIExpbnV4IHNjcmlwdCBCdWlsZEVudg0KPiANCj4gSGkgQm9iLA0K PiANCj4gUmV2aWV3ZWQtYnk6IE1pY2hhZWwgRCBLaW5uZXkgPG1pY2hhZWwuZC5raW5uZXlAaW50 ZWwuY29tPg0KPiANCj4gSXQgaXMgZGlmZmljdWx0IHRvIHNlZSB0aGUgY2hhbmdlcy4gIEkgZGlk IHZlcmlmeSB0aGF0IHRoZSBmaWxlIGJlZm9yZSB0aGUgcGF0Y2ggaGFkIG1peGVkIGxpbmUNCj4g ZW5kaW5ncyBhbmQgdGhlIG9uZSBhZnRlciB0aGUgcGF0Y2ggaXMgTEYgb25seSBsaW5lIGVuZGlu Z3MuDQo+IA0KPiBNaW5vciBpc3N1ZXMgd2l0aCBBdXRob3IgbmFtZSB3aXRoIGEgJywnLiAgSSBm aXhlZCB0aGF0IHdoZW4gSSBhZGRlZCB0aGUgcmIgdG8gdGhlIGNvbW1pdCBtZXNzYWdlLg0KPiAN Cj4gQmVzdCByZWdhcmRzLA0KPiANCj4gTWlrZQ0KPiANCj4gDQo+ID4gLS0tLS1PcmlnaW5hbCBN ZXNzYWdlLS0tLS0NCj4gPiBGcm9tOiBGZW5nLCBCb2IgQyA8Ym9iLmMuZmVuZ0BpbnRlbC5jb20+ DQo+ID4gU2VudDogVHVlc2RheSwgRmVicnVhcnkgOSwgMjAyMSA3OjAzIEFNDQo+ID4gVG86IEtp bm5leSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT47IExlaWYgTGluZGhv bG0gPGxlaWZAbnV2aWFpbmMuY29tPg0KPiA+IENjOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbzsgTGlt aW5nIEdhbyA8Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuPjsgQ2hlbiwgQ2hyaXN0aW5lIDx5dXdl aS5jaGVuQGludGVsLmNvbT47IE1hdHRoZXcgQ2FybHNvbg0KPiA+IDxtYXR0aGV3ZmNhcmxzb25A Z21haWwuY29tPg0KPiA+IFN1YmplY3Q6IFJFOiBbUGF0Y2hdIEJhc2VUb29sczogRml4IHRoZSBl bmRpbmcgY2hhcmFjdGVyIGZvciBMaW51eCBzY3JpcHQgQnVpbGRFbnYNCj4gPg0KPiA+IEhpIE1p a2UNCj4gPg0KPiA+IENvdWxkIHlvdSBoZWxwIHJldmlldyB0aGlzIHBhdGNoIGFuZCBwdXNoIGl0 Pw0KPiA+IExpbWluZyBtYXkgdGFrZSBsZWF2ZSBub3cuDQo+ID4NCj4gPiBUaGFua3MsDQo+ID4g Qm9iDQo+ID4NCj4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+IEZyb206IExlaWYg TGluZGhvbG0gPGxlaWZAbnV2aWFpbmMuY29tPg0KPiA+IFNlbnQ6IFR1ZXNkYXksIEZlYnJ1YXJ5 IDksIDIwMjEgMTE6MDEgUE0NCj4gPiBUbzogRmVuZywgQm9iIEMgPGJvYi5jLmZlbmdAaW50ZWwu Y29tPg0KPiA+IENjOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbzsgTGltaW5nIEdhbyA8Z2FvbGltaW5n QGJ5b3NvZnQuY29tLmNuPjsgQ2hlbiwgQ2hyaXN0aW5lIDx5dXdlaS5jaGVuQGludGVsLmNvbT47 IE1hdHRoZXcgQ2FybHNvbg0KPiA+IDxtYXR0aGV3ZmNhcmxzb25AZ21haWwuY29tPjsgS2lubmV5 LCBNaWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPg0KPiA+IFN1YmplY3Q6IFJl OiBbUGF0Y2hdIEJhc2VUb29sczogRml4IHRoZSBlbmRpbmcgY2hhcmFjdGVyIGZvciBMaW51eCBz Y3JpcHQgQnVpbGRFbnYNCj4gPg0KPiA+IE9uIFR1ZSwgRmViIDA5LCAyMDIxIGF0IDIyOjU4OjA4 ICswODAwLCBCb2IgRmVuZyB3cm90ZToNCj4gPiA+IFNpZ25lZC1vZmYtYnk6IEJvYiBGZW5nIDxi b2IuYy5mZW5nQGludGVsLmNvbT4NCj4gPiA+IENjOiBMaW1pbmcgR2FvIDxnYW9saW1pbmdAYnlv c29mdC5jb20uY24+DQo+ID4gPiBDYzogWXV3ZWkgQ2hlbiA8eXV3ZWkuY2hlbkBpbnRlbC5jb20+ DQo+ID4gPiBDYzogTWF0dGhldyBDYXJsc29uIDxtYXR0aGV3ZmNhcmxzb25AZ21haWwuY29tPg0K PiA+ID4gQ2M6IE1pY2hhZWwgRCAgS2lubmV5IDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4N Cj4gPiA+IENjOiBMZWlmIExpbmRob2xtIDxsZWlmQG51dmlhaW5jLmNvbT4NCj4gPg0KPiA+IFNN VFAgc3RyaXBzIHRoZSBpbnRlcnN0aW5nIGFzcGVjdCwgYnV0IGFzIGxvbmcgYXMgdGhlIGVuZCBy ZXN1bHQgaXMgYSBCdWlsZEVudiB0aGF0IGhhcyBubyA8Q1I+IGNoYXJhY3RlcnM6DQo+ID4gUmV2 aWV3ZWQtYnk6IExlaWYgTGluZGhvbG0gPGxlaWZAbnV2aWFpbmMuY29tPg0KPiA+DQo+ID4gPiAt LS0NCj4gPiA+ICBCYXNlVG9vbHMvQnVpbGRFbnYgfCAyNCArKysrKysrKysrKystLS0tLS0tLS0t LS0NCj4gPiA+ICAxIGZpbGUgY2hhbmdlZCwgMTIgaW5zZXJ0aW9ucygrKSwgMTIgZGVsZXRpb25z KC0pDQo+ID4gPg0KPiA+ID4gZGlmZiAtLWdpdCBhL0Jhc2VUb29scy9CdWlsZEVudiBiL0Jhc2VU b29scy9CdWlsZEVudiBpbmRleA0KPiA+ID4gOGQyODNlMTBjMC4uMjc1ZjRjNTkwMSAxMDA3NTUN Cj4gPiA+IC0tLSBhL0Jhc2VUb29scy9CdWlsZEVudg0KPiA+ID4gKysrIGIvQmFzZVRvb2xzL0J1 aWxkRW52DQo+ID4gPiBAQCAtNDQsMTEgKzQ0LDExIEBAIFJlc3RvcmVQcmV2aW91c0NvbmZpZ3Vy YXRpb24oKSB7DQo+ID4gPiAgICAgICAgICAgIGJyZWFrDQo+ID4gPiAgICAgICAgICBmaQ0KPiA+ ID4gICAgICAgIGRvbmUNCj4gPiA+ICAgICAgZmkNCj4gPiA+ICAgIGZpDQo+ID4gPiAtDQo+ID4g PiArDQo+ID4gPiAgICBQUkVWSU9VU19DT05GX0ZJTEU9JENPTkZfUEFUSC9CdWlsZEVudi5zaA0K PiA+ID4gICAgaWYgWyAtZSAkUFJFVklPVVNfQ09ORl9GSUxFIF0NCj4gPiA+ICAgIHRoZW4NCj4g PiA+ICAgICAgZWNobyBMb2FkaW5nIHByZXZpb3VzIGNvbmZpZ3VyYXRpb24gZnJvbSAkUFJFVklP VVNfQ09ORl9GSUxFDQo+ID4gPiAgICAgIC4gJFBSRVZJT1VTX0NPTkZfRklMRQ0KPiA+ID4gQEAg LTE5NiwyMSArMTk2LDIxIEBAIEFkZEVka1Rvb2xzVG9QYXRoKCkgew0KPiA+ID4gICAgICByZXR1 cm4gMQ0KPiA+ID4gICAgZmkNCj4gPiA+DQo+ID4gPiAgICBFREtfVE9PTFNfUEFUSF9CSU49YEdl dEVka1Rvb2xzUGF0aEJpbkRpcmVjdG9yeWANCj4gPiA+DQo+ID4gPiAtICAjIGNoZWNrIGlmIHRo ZSBlZGsyYmFzZXRvb2xzIHBpcCBwYWNrYWdlIGlzIGF2YWlsYWJsZQ0KPiA+ID4gLSAgaWYgJFBZ VEhPTl9DT01NQU5EIC1jICJpbXBvcnQgZWRrMmJhc2V0b29scyIgJj4gL2Rldi9udWxsOyB0aGVu DQo+ID4gPiAtICAgICMgaWYgaXQgaXMsIHVzZSB0aGUgcGlwIHZlcnNpb24gb2YgdGhlIHdyYXBw ZXJzDQo+ID4gPiAtICAgIGVjaG8gIlVzaW5nIFBpcCBCYXNldG9vbHMiDQo+ID4gPiAtICAgIEFk ZERpclRvU3RhcnRPZlBhdGggJEVES19UT09MU19QQVRIL0JpblBpcFdyYXBwZXJzL1Bvc2l4TGlr ZQ0KPiA+ID4gLSAgZWxzZQ0KPiA+ID4gLSAgICBlY2hvICJVc2luZyBFREsyIGluLXNvdXJjZSBC YXNldG9vbHMiDQo+ID4gPiAtICAgIEFkZERpclRvU3RhcnRPZlBhdGggJEVES19UT09MU19QQVRI L0JpbldyYXBwZXJzL1Bvc2l4TGlrZQ0KPiA+ID4gLSAgZmkNCj4gPiA+IC0NCj4gPiA+IC0NCj4g PiA+ICsgICMgY2hlY2sgaWYgdGhlIGVkazJiYXNldG9vbHMgcGlwIHBhY2thZ2UgaXMgYXZhaWxh YmxlICBpZg0KPiA+ID4gKyAkUFlUSE9OX0NPTU1BTkQgLWMgImltcG9ydCBlZGsyYmFzZXRvb2xz IiAmPiAvZGV2L251bGw7IHRoZW4NCj4gPiA+ICsgICAgIyBpZiBpdCBpcywgdXNlIHRoZSBwaXAg dmVyc2lvbiBvZiB0aGUgd3JhcHBlcnMNCj4gPiA+ICsgICAgZWNobyAiVXNpbmcgUGlwIEJhc2V0 b29scyINCj4gPiA+ICsgICAgQWRkRGlyVG9TdGFydE9mUGF0aCAkRURLX1RPT0xTX1BBVEgvQmlu UGlwV3JhcHBlcnMvUG9zaXhMaWtlDQo+ID4gPiArICBlbHNlDQo+ID4gPiArICAgIGVjaG8gIlVz aW5nIEVESzIgaW4tc291cmNlIEJhc2V0b29scyINCj4gPiA+ICsgICAgQWRkRGlyVG9TdGFydE9m UGF0aCAkRURLX1RPT0xTX1BBVEgvQmluV3JhcHBlcnMvUG9zaXhMaWtlDQo+ID4gPiArICBmaQ0K PiA+ID4gKw0KPiA+ID4gKw0KPiA+ID4gICAgQWRkRGlyVG9TdGFydE9mUGF0aCAkRURLX1RPT0xT X1BBVEhfQklODQo+ID4gPg0KPiA+ID4gIH0NCj4gPiA+DQo+ID4gPiAgQ29weVNpbmdsZVRlbXBs YXRlRmlsZSgpIHsNCj4gPiA+IC0tDQo+ID4gPiAyLjI5LjEud2luZG93cy4xDQo+ID4gPg0K