From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by spool.mail.gandi.net (Postfix) with ESMTPS id B2D3E740035 for ; Mon, 8 Jan 2024 13:59:17 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=nQnjYk8Ma4tt0y90dUtjQ8cXkcen9F45WUggvjEznoM=; c=relaxed/simple; d=groups.io; h=ARC-Seal:ARC-Message-Signature:ARC-Authentication-Results:From:To:CC:Subject:Thread-Topic:Thread-Index:Date:Message-ID:References:In-Reply-To:Accept-Language:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Language:Content-Type:Content-Transfer-Encoding; s=20140610; t=1704722356; v=1; b=G3pcHvg5rYdnG9Vc2f27OK2bY1YrOd3RoYARTUgBp7zASsm+gYZXB5MrBJwwKmpDqvMVmDxk EsOow3iKIDqrCCgxmRgmkOS6yPFZAQS060sIKUUb7ux/fzPMGLd+yP2o9w4Y6xz1zMGVgBCNR2/ Zgeq1o8ttlzLemD21dgrE+RY= X-Received: by 127.0.0.2 with SMTP id avKVYY7687511x3xPym731FZ; Mon, 08 Jan 2024 05:59:16 -0800 X-Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.9]) by mx.groups.io with SMTP id smtpd.web10.7201.1704722355313759686 for ; Mon, 08 Jan 2024 05:59:15 -0800 X-IronPort-AV: E=McAfee;i="6600,9927,10947"; a="4674435" X-IronPort-AV: E=Sophos;i="6.04,341,1695711600"; d="scan'208";a="4674435" X-Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by fmvoesa103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Jan 2024 05:59:14 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10947"; a="1112735199" X-IronPort-AV: E=Sophos;i="6.04,341,1695711600"; d="scan'208";a="1112735199" X-Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83]) by fmsmga005.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 08 Jan 2024 05:59:13 -0800 X-Received: from fmsmsx612.amr.corp.intel.com (10.18.126.92) 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.35; Mon, 8 Jan 2024 05:59:13 -0800 X-Received: from fmsmsx601.amr.corp.intel.com (10.18.126.81) by fmsmsx612.amr.corp.intel.com (10.18.126.92) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Mon, 8 Jan 2024 05:59:13 -0800 X-Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35 via Frontend Transport; Mon, 8 Jan 2024 05:59:13 -0800 X-Received: from NAM10-DM6-obe.outbound.protection.outlook.com (104.47.58.100) by edgegateway.intel.com (192.55.55.70) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.35; Mon, 8 Jan 2024 05:59:12 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=fCLWysZXD9jzP3ylYLCrNLmnSpiEO6ofcQxISWum+oWLm6wQReVvkrZA5a5VqOSZO89/GgrUSZUni9tss9mgd5EqcTeHIkbg8HusCFCID3kdcNxxlaym4COFJWsEd0ZR6HMvYm1aQBDC91qPBVQqWjLFXvAHFEmoWm6uPUGDA8WEA20B/QhGOXl6w1LD3E6IL8u0axfpw4FGFbk/SmvWbdvtWqD5GNT57BIatuSv2elMShv5THkFzffodx/LA8sUXkpQnL3VY7RxPfMQgkUrSasAKSXdgFvPmlvtbU0QyzSwp/oDtw1yc5jFNedFfIkcEBx0KlYGE6QFO3pmn5Cckw== 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=FEvcWjvxFr19R94Wf2oFM9VKZCG4TL11rghMlOiQ1N0=; b=Ridsy1xNwuDEA6C4seCxxXPqyO9ptVj4RYCA4O4eqoRM7vaMVo4zB46Jeb3gOYbxjoFmK8ghIfSMo+JuvJJ7s/PMuM93sCKXozAaKwrKKLipGZinVgQWtkGNmYGfp8dXwbKqR2Ya0knUm4Oc1ZXwbNchMtxafnB1QMXgER1TskDz+tbEXReu4FcdWx++hBNzpsUhDdxvoYy0haZ+nfsY8XBmFEDMgHyaZJYkCiT+oFaQsC12+Yq49U36CRMp9xLfVywrxz6q7kTnIdjfqF1qLN2bzpGNIl3/aHJ0+icvNqmvTbGQsPeFCGXqlK5G9oZwDUJstY2GEBhMhuBndEYAzg== 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 X-Received: from IA1PR11MB6170.namprd11.prod.outlook.com (2603:10b6:208:3ea::11) by BL3PR11MB6411.namprd11.prod.outlook.com (2603:10b6:208:3ba::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7159.23; Mon, 8 Jan 2024 13:59:09 +0000 X-Received: from IA1PR11MB6170.namprd11.prod.outlook.com ([fe80::109e:362f:955:9149]) by IA1PR11MB6170.namprd11.prod.outlook.com ([fe80::109e:362f:955:9149%4]) with mapi id 15.20.7159.020; Mon, 8 Jan 2024 13:59:09 +0000 From: "Huang, Yanbo" To: "Gao, Liming" , "devel@edk2.groups.io" , "Chen, Christine" , "'Joey Vagedes'" CC: 'Rebecca Cran' , "Feng, Bob C" , "Kinney, Michael D" Subject: Re: [edk2-devel] [PATCH v1 1/1] BaseTools: Fix raw strings containing valid escape characters Thread-Topic: [edk2-devel] [PATCH v1 1/1] BaseTools: Fix raw strings containing valid escape characters Thread-Index: AQHaOa4oYwoQ8sqXGESm7t43E+2V37DPLNHAgABI3cCAAIMugIAAB/0w Date: Mon, 8 Jan 2024 13:59:09 +0000 Message-ID: References: <20231228164739.1042-1-joey.vagedes@gmail.com> <20231228164739.1042-2-joey.vagedes@gmail.com> <17A83A4D186CC8F7.1387@groups.io> <03b201da4236$1c8c87d0$55a59770$@byosoft.com.cn> In-Reply-To: <03b201da4236$1c8c87d0$55a59770$@byosoft.com.cn> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: IA1PR11MB6170:EE_|BL3PR11MB6411:EE_ x-ms-office365-filtering-correlation-id: eb81ad1a-fae5-469a-dd95-08dc1051fcbb x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam-message-info: nQkMDWo7K32lcgMVExSDA4071X0KmBWSLxhU+iw/ztbYaieO04jjkuxafUxPhqs2Jrkit/WCBTeVF4cQ3ML0+nZvA8UYZSFMlpPoDwkHF9e/SWvmclAO2uis+WI8w1mjIct4artkiGKmKA9gMSjAhQQ+0AImFKInwsRG6HIPl0GDOrThEQ7mPcVnvuvbmoXqaanyrjtSGg5hDx+e4EMiddwO/D47Ugtf2jk3ufVx0Stj6rkB9VZ8yk2LOWxsWLp0CsrGkfEhwkr57P3t8z41EKGSyvWWQGhJHp2N5fZ5IuD1l72ZbRkXimhHqV/7G5dh5RnR6hbYqsqyfNTJfLvDc5eoJqc4U6c9JhbwXZlkOr8SND1wiZAImdMkZzOzHiPWg00fb7LPTVln5stPTrsDYTCqqFGLrFk2qHKI5qEEptP2B8P7oNor73fVWV8lGLNJpYI6Qi3XWJBCqwyKPPsaPdYSo1vlDwzjPfsy9JXumgvrXdTvL7UCbZIF8xi6SHAqGfJMoT7CxUJpDvxzhGPw6QyFaC4qE3rLX0oddonA5iv5VGbnpWn+gxhznYfhGvh1aDRStwN6TswIjhT1tsm1MvPe8Gd+YZwJx/1+3t2NrRedQNZAyzubsjCXHjPMCxtj6k8EqMAFw5Hdp6vxz6QB8B2iuk60KxkxoonlPD45rKI= x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?TG1sZWdQc0E2R3RaY3l3RWdSZldOL2l6cUdSZkNzN3YyRDhYY0paV1Y3emlK?= =?utf-8?B?c3pWVjJrbXM2Wkg1cjM5am1KeUV5Q0h5NFR6VHpocFhLQ0FuaE9IWGdoVWtp?= =?utf-8?B?OFhGL1RORml1TzlPMVBzRDBURkdKY2FDMHRXWFI1a0FjNkxPOGl2N045SUVS?= =?utf-8?B?enljWnNtbjRTYWxqclJQTFgxSzRBaXRIcTRvQkxhbk5ZQml4LzhQa1hJWmsz?= =?utf-8?B?MHZzZGZ0djZQNmF4RGE2dDdaQ3BoaU5wN2lGRUdtTnY1OGZPNXh5dWltajNh?= =?utf-8?B?dmcxZ3J1Uk1ndENsYnZzajNXdmJLYUVDTHFiV3Rpb0JYY0pyTzRjOXF3UzNh?= =?utf-8?B?WE4zREtyVnowWGUvbXQwTzE4QmRMSTZsSlVhemJ5YmxxMGgzYndtV3krbU5r?= =?utf-8?B?TVJhWmpNdVVWK3luNzVtSENyUDI1S3ByeXNFN1NEQ2h0ZXE1Mmd3bFZHbnhl?= =?utf-8?B?eUgvclVrQlNlckJDaEZVQnZsUXJmZFhKUDJUNm1aak9KN29VZjJvaHEwU2lN?= =?utf-8?B?VDc3V0Vwa2FveW42aEN5R1lEWmhhTGhsUllROUZ5WjJFZkhkK2FndE93b2NX?= =?utf-8?B?cWltemJSOUFvQmpydTFESE9OQVc1b1NuQ2ZXY3ROclMzRTRZR0F0WTcxL1l4?= =?utf-8?B?Q0krTzlYVzNsMkgxQTdrMElxNkdaZUhYRmJSMVVucVp1cUV2bzVEK1kya2I1?= =?utf-8?B?cVVQbXhSU0xxWkJLNUN4RjBMc2RDL0hBNVV6N3hReXFmSDNjQ2VGR09yQTBx?= =?utf-8?B?R0wrUlUvUEdsaS8zSEpYRGRYWlhQeE5qd3FYbTE2V0RmZXA0TW1sZVBVTCtm?= =?utf-8?B?SE52VXNPcUx1c0FxdWtPcTFHTHFmcXE2STVvak9zVU9ubUhNbExJVlMxeHdF?= =?utf-8?B?QmQwL3ZpK1NYOUk1bVJQU3N4QlNyc1V3ZG5ZTmJacDVZdzhsMGdUUU9Eb1Fw?= =?utf-8?B?UGhoYnB5d3BOMU5LdzZCMFY3V2tWbkoyRnZBTzU5OFNKc2hBS01WdTdneldN?= =?utf-8?B?ME92Y2dDMndwa2Jac1VaTkV3VWcxcngzNngwK1RsL002bS95UjZPcVNtMHlY?= =?utf-8?B?MUtCQk9CekNIelVDYnZXc2Q2SlozSU9RSXd1STc3TDRMaDBXUi9CT3lDbkhl?= =?utf-8?B?bGlvUFZ3ZnRCVWZkNmFPbWxpd3pmTkwzUmFLMEltL2M4YUdENk5Uamczd2Mr?= =?utf-8?B?bkFGSGgxSldjbmlRNERNdlpsTndhb3EzWjF6TUNJWGdVRFZQSHUxSUFmNzAr?= =?utf-8?B?YitTT0xyUG54NHE1Q0dBVW9Ld1lMNjBnSFl0QzMrd1NyTFJSc2JWYUVNSHQx?= =?utf-8?B?R2NVMDhoYnp6RjRGSjh6R1dFazJadklCOXFLMEF6YUxKZTZnVzBhcDg1Smhr?= =?utf-8?B?QnFKYld2ZEgwYkpWOERpKzBuQTlJb2VQZUFJVXFBVnJnUXR4bFV2QVA3akdy?= =?utf-8?B?ZXJzRUZLaUNpeW5LMDhFSFNWNzN3Qk9SK0NzQWZOdVl2S0VBUnc2R2Q4WjFt?= =?utf-8?B?eEt4aWtlaWRaRDhZSGVQNTVUYkN6bkNkYU5sK2d0Um9iclNmTTQzcnluaUt5?= =?utf-8?B?Ym40cEZFdlZXSnA2M05BMXFMbmtCdUJJejIxQjY2TWg4QldvNFBNYzJHc010?= =?utf-8?B?K0d1Sk5kUWdNSk1GcHU0UTFGbjh6c2VETWt5T2hBNDVSWnF5QUtuaTdNd1N1?= =?utf-8?B?L1NkMzNvSkN2bVYyRzZoV3VaQjM3L1k4OG5Zd0c2NnV6ZUJxWTBrQ1o0NXBx?= =?utf-8?B?WlF5YjZlNWpDY0c4dkdRZzM0ZWVtWjF6U3lUS21Dcnc2WTZQOFJVUnY1RHhI?= =?utf-8?B?U3lMMHVId2JGbkZhSUNqbm9ScDdHbnNhRitLY2JnWkkxVFNDWmI4VlVmaFlE?= =?utf-8?B?U055VkgzRloyRUM5RXBYdzZiODdGU3VKaXBvdDA1NDA3eUtTbC9MWE5TRGt2?= =?utf-8?B?cjZGRWZaVStoK0l5cEhtZXpETVRnQWhtTDRyZlI1MmhHSjJaakFzMTBYQjRR?= =?utf-8?B?a1ZScm83b2xuaTBZTzE3Y09nWi9nalZFOXBwVHkvT1RGZTFQUEJ2UG1nYk1i?= =?utf-8?B?bkU5L1JaSHlZNTUwenE3amlmQnl1bUwzcDdjZzVEZ21UNm92RkkwTk13ZnNZ?= =?utf-8?Q?CFo9hQxeBKFMFFRMPxG4WKpaD?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: IA1PR11MB6170.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: eb81ad1a-fae5-469a-dd95-08dc1051fcbb X-MS-Exchange-CrossTenant-originalarrivaltime: 08 Jan 2024 13:59:09.8031 (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: fAyKeKq2LbIreZdyfJbhVL9/kpxCHjEJvT5BmbHl8eUlxjzjvP0zh0Lr3DyCQWztgODSW81OACLVPAgyuVnv4A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL3PR11MB6411 X-OriginatorOrg: intel.com Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,yanbo.huang@intel.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: X1jS12eyhIQwKHvUOxE59oMbx7686176AA= Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20140610 header.b=G3pcHvg5; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=intel.com (policy=none); spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io; arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}") SGkgTGltaW5nLA0KDQpUaGlzIGlzc3VlIGlzIGludHJvZHVjZWQgYnkgdGhpcyBjb21taXQ6IA0K U0hBLTE6IDlmMDA2MWEwM2I2MWQyODJmYmMwYmE1YmUyMjE1NWQwNmE1ZTY0YTENCg0KKiBCYXNl VG9vbHM6IFJlc29sdmUgcmVnZXggc3ludGF4IHdhcm5pbmdzDQoNClN3aXRjaGVzIHJlZ2V4IHBh dHRlcm5zIHRvIHJhdyB0ZXh0IHRvIHJlc29sdmUgcHl0aG9uIDMuMTIgc3ludGF4DQp3YXJuaW5n cyBpbiByZWdhcmRzIHRvIGludmFsaWQgZXNjYXBlIHNlcXVlbmNlcywgYXMgaXMgc3VnZ2VzdGVk IGJ5IHRoZQ0KcmUgKHJlZ2V4KSBtb2R1bGUgaW4gcHl0aG9uLg0KDQpCZXN0IFJlZ2FyZHMsDQpZ YW5ibyBIdWFuZw0KDQotLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KRnJvbTogZ2FvbGltaW5n IDxnYW9saW1pbmdAYnlvc29mdC5jb20uY24+IA0KU2VudDogTW9uZGF5LCBKYW51YXJ5IDgsIDIw MjQgOToyNSBQTQ0KVG86IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBDaGVuLCBDaHJpc3RpbmUgPHl1 d2VpLmNoZW5AaW50ZWwuY29tPjsgJ0pvZXkgVmFnZWRlcycgPGpvZXkudmFnZWRlc0BnbWFpbC5j b20+DQpDYzogJ1JlYmVjY2EgQ3JhbicgPHJlYmVjY2FAYnNkaW8uY29tPjsgRmVuZywgQm9iIEMg PGJvYi5jLmZlbmdAaW50ZWwuY29tPjsgSHVhbmcsIFlhbmJvIDx5YW5iby5odWFuZ0BpbnRlbC5j b20+OyBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+DQpTdWJq ZWN0OiDlm57lpI06IFtlZGsyLWRldmVsXSBbUEFUQ0ggdjEgMS8xXSBCYXNlVG9vbHM6IEZpeCBy YXcgc3RyaW5ncyBjb250YWluaW5nIHZhbGlkIGVzY2FwZSBjaGFyYWN0ZXJzDQoNCkNocmlzdGlu ZToNCiAgSXMgdGhpcyBhIHJlZ3Jlc3Npb24gaXNzdWU/IE9yIGRvZXMgaXQgcmVzb2x2ZSBuZXcg dXNhZ2U/IEkgYW0gY3VyaW91cyB3aHkgaXQgaXMgbm90IHJlcG9ydGVkIGJlZm9yZS4NCg0KVGhh bmtzDQpMaW1pbmcNCj4gLS0tLS3pgq7ku7bljp/ku7YtLS0tLQ0KPiDlj5Hku7bkuro6IGRldmVs QGVkazIuZ3JvdXBzLmlvIDxkZXZlbEBlZGsyLmdyb3Vwcy5pbz4g5Luj6KGoIFl1d2VpIENoZW4N Cj4g5Y+R6YCB5pe26Ze0OiAyMDI05bm0MeaciDjml6UgMTM6MzcNCj4g5pS25Lu25Lq6OiBkZXZl bEBlZGsyLmdyb3Vwcy5pbzsgQ2hlbiwgQ2hyaXN0aW5lIDx5dXdlaS5jaGVuQGludGVsLmNvbT47 IA0KPiBKb2V5IFZhZ2VkZXMgPGpvZXkudmFnZWRlc0BnbWFpbC5jb20+DQo+IOaKhOmAgTogUmVi ZWNjYSBDcmFuIDxyZWJlY2NhQGJzZGlvLmNvbT47IEdhbywgTGltaW5nIA0KPiA8Z2FvbGltaW5n QGJ5b3NvZnQuY29tLmNuPjsgRmVuZywgQm9iIEMgPGJvYi5jLmZlbmdAaW50ZWwuY29tPjsgSHVh bmcsIA0KPiBZYW5ibyA8eWFuYm8uaHVhbmdAaW50ZWwuY29tPjsgS2lubmV5LCBNaWNoYWVsIEQg DQo+IDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4NCj4g5Li76aKYOiBSZTogW2VkazItZGV2 ZWxdIFtQQVRDSCB2MSAxLzFdIEJhc2VUb29sczogRml4IHJhdyBzdHJpbmdzDQpjb250YWluaW5n DQo+IHZhbGlkIGVzY2FwZSBjaGFyYWN0ZXJzDQo+IA0KPiBIaSBMaW1pbmcgYW5kIENyYW4sDQo+ IA0KPiBXZSBzaG91bGQgbWVyZ2UgdGhpcyBmaXhpbmcgcGF0Y2ggYXNhcCBhcyBpdCBpbmZsdWVu Y2VzIEJhc2VUb29sJ3MgdXNhZ2UuDQo+IA0KPiBUaGFua3MsDQo+IENocmlzdGluZQ0KPiANCj4g PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+IEZyb206IGRldmVsQGVkazIuZ3JvdXBz LmlvIDxkZXZlbEBlZGsyLmdyb3Vwcy5pbz4gT24gQmVoYWxmIE9mIFl1d2VpIA0KPiA+IENoZW4N Cj4gPiBTZW50OiBNb25kYXksIEphbnVhcnkgOCwgMjAyNCA5OjE2IEFNDQo+ID4gVG86IEpvZXkg VmFnZWRlcyA8am9leS52YWdlZGVzQGdtYWlsLmNvbT47IGRldmVsQGVkazIuZ3JvdXBzLmlvDQo+ ID4gQ2M6IFJlYmVjY2EgQ3JhbiA8cmViZWNjYUBic2Rpby5jb20+OyBHYW8sIExpbWluZyANCj4g PiA8Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuPjsgRmVuZywgQm9iIEMgPGJvYi5jLmZlbmdAaW50 ZWwuY29tPg0KPiA+IFN1YmplY3Q6IFJlOiBbZWRrMi1kZXZlbF0gW1BBVENIIHYxIDEvMV0gQmFz ZVRvb2xzOiBGaXggcmF3IHN0cmluZ3MNCj4gY29udGFpbmluZw0KPiA+IHZhbGlkIGVzY2FwZSBj aGFyYWN0ZXJzDQo+ID4NCj4gPiBIaSBKb2V5LA0KPiA+DQo+ID4gVGhhbmtzIGZvciBmaXhpbmcu DQo+ID4NCj4gPiBSZXZpZXdlZC1ieTogWXV3ZWkgQ2hlbiA8eXV3ZWkuY2hlbkBpbnRlbC5jb20+ DQo+ID4NCj4gPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gPiBGcm9tOiBKb2V5 IFZhZ2VkZXMgPGpvZXkudmFnZWRlc0BnbWFpbC5jb20+DQo+ID4gPiBTZW50OiBGcmlkYXksIERl Y2VtYmVyIDI5LCAyMDIzIDEyOjQ4IEFNDQo+ID4gPiBUbzogZGV2ZWxAZWRrMi5ncm91cHMuaW8N Cj4gPiA+IENjOiBSZWJlY2NhIENyYW4gPHJlYmVjY2FAYnNkaW8uY29tPjsgR2FvLCBMaW1pbmcg DQo+ID4gPiA8Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuPjsgRmVuZywgQm9iIEMgPGJvYi5jLmZl bmdAaW50ZWwuY29tPjsNCj4gQ2hlbiwNCj4gPiA+IENocmlzdGluZSA8eXV3ZWkuY2hlbkBpbnRl bC5jb20+DQo+ID4gPiBTdWJqZWN0OiBbUEFUQ0ggdjEgMS8xXSBCYXNlVG9vbHM6IEZpeCByYXcg c3RyaW5ncyBjb250YWluaW5nIA0KPiA+ID4gdmFsaWQgZXNjYXBlIGNoYXJhY3RlcnMNCj4gPiA+ DQo+ID4gPiBGaXhlcyByYXcgcmVnZXggc3RyaW5ncyB0aGF0IGNvbnRhaW4gdmFsaWQgKGFuZCBw dXJwb3NlZnVsKSBlc2NhcGUgDQo+ID4gPiBjaGFyYWN0ZXJzIGFzIHRoZXkgYXJlIGJlaW5nIHRy ZWF0ZWQgYXMgaW5kaXZpZHVhbCBjaGFyYWN0ZXJzIA0KPiA+ID4gcmF0aGVyIHRoYW4gdGhlIHNp bmdsZSBlc2NhcGVkIGNoYXJhY3RlciB0aGV5IHJlcHJlc2VudCAoaS5lLiAnXHQnIA0KPiA+ID4g aXMgYmVpbmcNCnRyZWF0ZWQNCj4gYXMNCj4gPiBhICdcJyBhbmQgYSAndCcNCj4gPiA+IHJhdGhl ciB0aGFuIGEgc2luZ2xlIHRhYiBjaGFyYWN0ZXIpLg0KPiA+ID4NCj4gPiA+IFNpZ25lZC1vZmYt Ynk6IEpvZXkgVmFnZWRlcyA8am9leS52YWdlZGVzQGdtYWlsLmNvbT4NCj4gPiA+IENjOiBSZWJl Y2NhIENyYW4gPHJlYmVjY2FAYnNkaW8uY29tPg0KPiA+ID4gQ2M6IExpbWluZyBHYW8gPGdhb2xp bWluZ0BieW9zb2Z0LmNvbS5jbj4NCj4gPiA+IENjOiBCb2IgRmVuZyA8Ym9iLmMuZmVuZ0BpbnRl bC5jb20+DQo+ID4gPiBDYzogWXV3ZWkgQ2hlbiA8eXV3ZWkuY2hlbkBpbnRlbC5jb20+DQo+ID4g PiAtLS0NCj4gPiA+ICBCYXNlVG9vbHMvU291cmNlL1B5dGhvbi9BdXRvR2VuL0dlbk1ha2UucHkg ICAgICAgIHwgMiArLQ0KPiA+ID4gIEJhc2VUb29scy9Tb3VyY2UvUHl0aG9uL0NvbW1vbi9NaXNj LnB5ICAgICAgICAgICAgfCAyICstDQo+ID4gPiAgQmFzZVRvb2xzL1NvdXJjZS9QeXRob24vV29y a3NwYWNlL0RzY0J1aWxkRGF0YS5weSB8IDQgKystLQ0KPiA+ID4gIDMgZmlsZXMgY2hhbmdlZCwg NCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQ0KPiA+ID4NCj4gPiA+IGRpZmYgLS1naXQg YS9CYXNlVG9vbHMvU291cmNlL1B5dGhvbi9BdXRvR2VuL0dlbk1ha2UucHkNCj4gPiA+IGIvQmFz ZVRvb2xzL1NvdXJjZS9QeXRob24vQXV0b0dlbi9HZW5NYWtlLnB5DQo+ID4gPiBpbmRleCBjNDE2 ZmUxNzJmZTUuLmZiZDM1ZDQ5ODkyMyAxMDA3NTUNCj4gPiA+IC0tLSBhL0Jhc2VUb29scy9Tb3Vy Y2UvUHl0aG9uL0F1dG9HZW4vR2VuTWFrZS5weQ0KPiA+ID4gKysrIGIvQmFzZVRvb2xzL1NvdXJj ZS9QeXRob24vQXV0b0dlbi9HZW5NYWtlLnB5DQo+ID4gPiBAQCAtMjgsNyArMjgsNyBAQCBmcm9t IENvbW1vbi5EYXRhVHlwZSBpbXBvcnQNCj4gPiBUQUJfQ09NUElMRVJfTVNGVA0KPiA+ID4gZ0lu Y2x1ZGVQYXR0ZXJuID0gcmUuY29tcGlsZShyIl5bIFx0XSpbIyVdP1sgXHRdKmluY2x1ZGUoPzpb IA0KPiA+ID4gXHRdKig/OlxcKD86XHJcbnxccnxcbikpKlsgXHRdKikqKD86XCg/WyBcIjxdP1sg XHRdKikoWy1cdy5cXC8oKSANCj4gPiA+IFx0XSspKD86WyBcdF0qW1wiPl0/XCk/KSIsIHJlLk1V TFRJTElORSB8IHJlLlVOSUNPREUgfA0KPiA+ID4gcmUuSUdOT1JFQ0FTRSkgICMjIFJlZ3VsYXIg ZXhwcmVzc2lvbiBmb3IgbWF0Y2hpbmcgbWFjcm8gdXNlZCBpbiANCj4gPiA+IGhlYWRlciBmaWxl IGluY2x1c2lvbi1nTWFjcm9QYXR0ZXJuID0gDQo+ID4gPiByZS5jb21waWxlKHIiKFtfQS1aXVtf QS1aMC05XSopWyBcdF0qXCgoLispXCkiLCANCj4gPiA+IHJlLlVOSUNPREUpK2dNYWNyb1BhdHRl cm4gPSByZS5jb21waWxlKCIoW19BLVpdW19BLVowLTldKilbIA0KPiA+ID4gXHRdKlxcKCguKylc XCkiLA0KPiA+ID4gcmUuVU5JQ09ERSkgIGdJc0ZpbGVNYXAgPSB7fSBkaWZmIC0tZ2l0IA0KPiA+ ID4gYS9CYXNlVG9vbHMvU291cmNlL1B5dGhvbi9Db21tb24vTWlzYy5weQ0KPiA+ID4gYi9CYXNl VG9vbHMvU291cmNlL1B5dGhvbi9Db21tb24vTWlzYy5weQ0KPiA+ID4gaW5kZXggZjg3ZDlkYmRi YTM5Li4zNGJmYzkwYWJkOTQgMTAwNzU1DQo+ID4gPiAtLS0gYS9CYXNlVG9vbHMvU291cmNlL1B5 dGhvbi9Db21tb24vTWlzYy5weQ0KPiA+ID4gKysrIGIvQmFzZVRvb2xzL1NvdXJjZS9QeXRob24v Q29tbW9uL01pc2MucHkNCj4gPiA+IEBAIC0xOTI2LDQgKzE5MjYsNCBAQCBkZWYgQ29weURpY3Qo b3JpX2RpY3QpOg0KPiA+ID4gICMgUmVtb3ZlIHRoZSBjL2MrKyBjb21tZW50czogLy8gYW5kIC8q ICovICMgZGVmDQo+ID4gPiBSZW1vdmVDQ29tbWVudHMoY3RleHQpOi0gICAgcmV0dXJuIHJlLnN1 YihyJy8vLio/XG58L1wqLio/XCovJywgJ1xuJywNCj4gY3RleHQsDQo+ID4gPiBmbGFncz1yZS5T KSsgICAgcmV0dXJuIHJlLnN1YignLy8uKj9cbnwvXFwqLio/XFwqLycsICdcbicsIGN0ZXh0LA0K PiBmbGFncz1yZS5TKWRpZmYgLS0NCj4gPiBnaXQNCj4gPiA+IGEvQmFzZVRvb2xzL1NvdXJjZS9Q eXRob24vV29ya3NwYWNlL0RzY0J1aWxkRGF0YS5weQ0KPiA+ID4gYi9CYXNlVG9vbHMvU291cmNl L1B5dGhvbi9Xb3Jrc3BhY2UvRHNjQnVpbGREYXRhLnB5DQo+ID4gPiBpbmRleCA4MTdjZGJlNWYx OWMuLjQ3NjgwOTkzNDNlNSAxMDA2NDQNCj4gPiA+IC0tLSBhL0Jhc2VUb29scy9Tb3VyY2UvUHl0 aG9uL1dvcmtzcGFjZS9Ec2NCdWlsZERhdGEucHkNCj4gPiA+ICsrKyBiL0Jhc2VUb29scy9Tb3Vy Y2UvUHl0aG9uL1dvcmtzcGFjZS9Ec2NCdWlsZERhdGEucHkNCj4gPiA+IEBAIC0yODQwLDcgKzI4 NDAsNyBAQCBjbGFzcyBEc2NCdWlsZERhdGEoUGxhdGZvcm1CdWlsZENsYXNzT2JqZWN0KToNCj4g PiA+ICAgICAgICAgICMgc3RhcnQgZ2VuZXJhdGluZyBtYWtlZmlsZSAgICAgICAgIE1ha2VBcHAg PQ0KPiBQY2RNYWtlZmlsZUhlYWRlciAgICAgICAgIGlmDQo+ID4gPiBzeXMucGxhdGZvcm0gPT0g IndpbjMyIjotICAgICAgICAgICAgTWFrZUFwcCA9IE1ha2VBcHAgKyByJ0FQUEZJTEUNCj4gPiA+ ID0gJXNcJXMuZXhlXG4nICUgKHNlbGYuT3V0cHV0UGF0aCwgUGNkVmFsdWVJbml0TmFtZSkgKyBy J0FQUE5BTUUgPSANCj4gPiA+ICVzXG4nICUgKFBjZFZhbHVlSW5pdE5hbWUpICsgcidPQkpFQ1RT ID0gJXNcJXMub2JqICVzLm9ialxuJyAlIA0KPiA+ID4gKHNlbGYuT3V0cHV0UGF0aCwgUGNkVmFs dWVJbml0TmFtZSwgb3MucGF0aC5qb2luKHNlbGYuT3V0cHV0UGF0aCwNCj4gPiA+IFBjZFZhbHVl Q29tbW9uTmFtZSkpICsgJ0lOQyA9ICcrICAgICAgICAgICAgTWFrZUFwcCA9IE1ha2VBcHANCj4g KyAnQVBQRklMRQ0KPiA+ID4gPSAlc1xcJXMuZXhlXG4nICUgKHNlbGYuT3V0cHV0UGF0aCwgUGNk VmFsdWVJbml0TmFtZSkgKyAnQVBQTkFNRSA9IA0KPiA+ID4gJXNcbicgJSAoUGNkVmFsdWVJbml0 TmFtZSkgKyAnT0JKRUNUUyA9ICVzXFwlcy5vYmogJXMub2JqXG4nICUgDQo+ID4gPiAoc2VsZi5P dXRwdXRQYXRoLCBQY2RWYWx1ZUluaXROYW1lLCBvcy5wYXRoLmpvaW4oc2VsZi5PdXRwdXRQYXRo LA0KPiA+ID4gUGNkVmFsdWVDb21tb25OYW1lKSkgKyAnSU5DID0gJyAgICAgICAgIGVsc2U6DQo+ IE1ha2VBcHAgPSBNYWtlQXBwICsNCj4gPiA+IFBjZEdjY01ha2VmaWxlICAgICAgICAgICAgIE1h a2VBcHAgPSBNYWtlQXBwICsgJ0FQUEZJTEUNCj4gPSAlcy8lc1xuJyAlDQo+ID4gPiAoc2VsZi5P dXRwdXRQYXRoLCBQY2RWYWx1ZUluaXROYW1lKSArICdBUFBOQU1FID0gJXNcbicgJQ0KPiA+ID4g KFBjZFZhbHVlSW5pdE5hbWUpICsgJ09CSkVDVFMgPSAlcy8lcy5vICVzLm9cbicgJSANCj4gPiA+ IChzZWxmLk91dHB1dFBhdGgsIFBjZFZhbHVlSW5pdE5hbWUsIG9zLnBhdGguam9pbihzZWxmLk91 dHB1dFBhdGgsIA0KPiA+ID4gUGNkVmFsdWVDb21tb25OYW1lKSkNCj4gPiArDQo+ID4gPiBcQEAg LTI5NTAsNyArMjk1MCw3IEBAIGNsYXNzIERzY0J1aWxkRGF0YShQbGF0Zm9ybUJ1aWxkQ2xhc3NP YmplY3QpOg0KPiA+ID4gICAgICAgICAgICAgIE1ha2VBcHAgKz0gIiQoT0JKRUNUUykgOiAlc1xu IiAlIGluY2x1ZGVfZmlsZQ0KPiBpZiBzeXMucGxhdGZvcm0NCj4gPiA9PQ0KPiA+ID4gIndpbjMy IjogICAgICAgICAgICAgUGNkVmFsdWVDb21tb25QYXRoID0NCj4gPiA+DQo+ID4NCj4gb3MucGF0 aC5ub3JtcGF0aChtd3Muam9pbihHbG9iYWxEYXRhLmdHbG9iYWxEZWZpbmVzWyJFREtfVE9PTFNf UEFUSCJdDQo+ID4gPiAsICJTb3VyY2VcQ1xDb21tb25cUGNkVmFsdWVDb21tb24uYyIpKS0gICAg ICAgICAgICBNYWtlQXBwID0NCj4gTWFrZUFwcCArDQo+ID4gPiByJyVzXFBjZFZhbHVlQ29tbW9u LmMgOiAlc1xuJyAlIChzZWxmLk91dHB1dFBhdGgsDQo+ID4gUGNkVmFsdWVDb21tb25QYXRoKSsN Cj4gPiA+IE1ha2VBcHAgPSBNYWtlQXBwICsgJyVzXFxQY2RWYWx1ZUNvbW1vbi5jIDogJXNcbicg JQ0KPiAoc2VsZi5PdXRwdXRQYXRoLA0KPiA+ID4gUGNkVmFsdWVDb21tb25QYXRoKSAgICAgICAg ICAgICBNYWtlQXBwID0gTWFrZUFwcCArICdcdGNvcHkNCj4gL3kgJXMNCj4gPiAkQFxuJyAlDQo+ ID4gPiAoUGNkVmFsdWVDb21tb25QYXRoKSAgICAgICAgIGVsc2U6DQo+IFBjZFZhbHVlQ29tbW9u UGF0aCA9DQo+ID4gPg0KPiA+DQo+IG9zLnBhdGgubm9ybXBhdGgobXdzLmpvaW4oR2xvYmFsRGF0 YS5nR2xvYmFsRGVmaW5lc1siRURLX1RPT0xTX1BBVEgiXQ0KPiA+ID4gLCAiU291cmNlL0MvQ29t bW9uL1BjZFZhbHVlQ29tbW9uLmMiKSktLQ0KPiA+ID4gMi40My4wLndpbmRvd3MuMQ0KPiA+DQo+ ID4NCj4gPg0KPiA+DQo+ID4NCj4gDQo+IA0KPiANCj4gDQo+IA0KDQoNCg0KDQoKLT0tPS09LT0t PS09LT0tPS09LT0tPS0KR3JvdXBzLmlvIExpbmtzOiBZb3UgcmVjZWl2ZSBhbGwgbWVzc2FnZXMg c2VudCB0byB0aGlzIGdyb3VwLgpWaWV3L1JlcGx5IE9ubGluZSAoIzExMzM5Myk6IGh0dHBzOi8v ZWRrMi5ncm91cHMuaW8vZy9kZXZlbC9tZXNzYWdlLzExMzM5MwpNdXRlIFRoaXMgVG9waWM6IGh0 dHBzOi8vZ3JvdXBzLmlvL210LzEwMzU5NzEyOS83Njg2MTc2Ckdyb3VwIE93bmVyOiBkZXZlbCtv d25lckBlZGsyLmdyb3Vwcy5pbwpVbnN1YnNjcmliZTogaHR0cHM6Ly9lZGsyLmdyb3Vwcy5pby9n L2RldmVsL3Vuc3ViIFtyZWJlY2NhQG9wZW5mdy5pb10KLT0tPS09LT0tPS09LT0tPS09LT0tPS0K Cg0K