From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mx.groups.io with SMTP id smtpd.web10.15099.1658654639379706600 for ; Sun, 24 Jul 2022 02:23:59 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=QesAgTET; spf=pass (domain: intel.com, ip: 134.134.136.24, mailfrom: bob.c.feng@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1658654639; x=1690190639; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=4bHhCjgngOH+V/8/yYMIaEu5ShyvLHrUtipfr0q4UOk=; b=QesAgTETh3w98BNaWkQF3njNMlBdLsnL8k8o46thg7edW19d2p6wlJVw Nua0HkRcGjEB39hwJcD0Hs9gwxthXRIfQz4WITfGWM1qFy/rzas04arzW uRo5Z5sNATq+f58im50SclekHILI63ns50Lm96G3ofiy4m8HoDFU6vFRc Bx8rslGQLZIJ8iATItAyZlrADyYQbMVZ59SRLdDFG8ir0fHJiMkCIxy2e uiDNrmRIjOsJHVMwa/Z6OQEuufncS9EKPLPtu0Y7H0MJUUPeyI3EClTI3 6utRXk8LICs6A696a4a5kUH+91ZyaeJ6UWkKWe67GEYP6dDlYKwAJqN+i Q==; X-IronPort-AV: E=McAfee;i="6400,9594,10417"; a="288287523" X-IronPort-AV: E=Sophos;i="5.93,190,1654585200"; d="scan'208";a="288287523" Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 24 Jul 2022 02:23:58 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.93,190,1654585200"; d="scan'208";a="688733933" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by FMSMGA003.fm.intel.com with ESMTP; 24 Jul 2022 02:23:57 -0700 Received: from fmsmsx612.amr.corp.intel.com (10.18.126.92) 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.2375.28; Sun, 24 Jul 2022 02:23:57 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) 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.2375.28 via Frontend Transport; Sun, 24 Jul 2022 02:23:57 -0700 Received: from NAM02-DM3-obe.outbound.protection.outlook.com (104.47.56.40) 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.2308.27; Sun, 24 Jul 2022 02:23:57 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=inZEOh/XVXJXjKZS1LVySN24YTe6nLaUzglEz8HHWJh8bswrDL66t5TaDE2vlNz6kLxN6wG4pjVzwb/kMsc0P+T7q1um5gkBOJPbXm8xNrm1/tfk0JiktH1UPEYtaYooR7LDVBgPXcj7eXNeffYFJxa/gXDbkOHB6YhVjLE9fsGqsGFA4CRbNzAk8EWvzZVtF73Ih6tnnCDIatiHeyL5aJnEMjORggxiuONoJPf5PVTc0Qda0+QVSgcGN2AmrvUP0fS250QC/L2RsiP1aO2YubJFztYhHdbUFvuo0Nijuh9n+Whwps1ZIH1BWN+D2yemVuEueQuAlU0KloJvJ6QcQw== 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=4bHhCjgngOH+V/8/yYMIaEu5ShyvLHrUtipfr0q4UOk=; b=MyN03TVawKRZzJDkZkmh9gf5tcqTUxvEUqJyz7IQmugETj6l/7au8SJffjnN5E69Rr1Dh1juDAaQxz1HPmEyFpr5hXz6H8J9Maymi3ZwgUnyP02KGabL+3h6J6LI9mwTAd83Gsryfic6cusTsbx8A6Zn8Adxtusdcsg4/fzdmX3ExESL9ZaaIAjKCTDj4Q202EqZavhWoZ2GRrqtgxKrGs0NI9O/FAOWEwx3m5cZg3U5ZNVklpSn/cGTlE4MKrSSJQVzWQ4vuEX4uhbtcpYJrNTeDH28TUnL+8XdbahJo8yo6MITWDEkh5IPGfnVN26/kOYIUn8scHH5jS60TCfEEA== 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 PH7PR11MB5863.namprd11.prod.outlook.com (2603:10b6:510:135::11) by SN6PR11MB3038.namprd11.prod.outlook.com (2603:10b6:805:cd::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5458.20; Sun, 24 Jul 2022 09:23:50 +0000 Received: from PH7PR11MB5863.namprd11.prod.outlook.com ([fe80::943:4b5a:b96b:30f8]) by PH7PR11MB5863.namprd11.prod.outlook.com ([fe80::943:4b5a:b96b:30f8%5]) with mapi id 15.20.5458.023; Sun, 24 Jul 2022 09:23:50 +0000 From: "Bob Feng" To: "devel@edk2.groups.io" , "aladyshev22@gmail.com" CC: "Gao, Liming" , "Chen, Christine" Subject: Re: [edk2-devel] [PATCH] BaseTools/VolInfo: Parse apriori files Thread-Topic: [edk2-devel] [PATCH] BaseTools/VolInfo: Parse apriori files Thread-Index: AQHYneD4Qh9J39DhLEiyP73BjqhqlK2NCqtwgAAp4gCAAA048A== Date: Sun, 24 Jul 2022 09:23:50 +0000 Message-ID: References: <20220722153730.9563-1-aladyshev22@gmail.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-version: 11.6.500.17 dlp-product: dlpe-windows dlp-reaction: no-action authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: f24c64cb-0d09-4a53-b759-08da6d563851 x-ms-traffictypediagnostic: SN6PR11MB3038:EE_ 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: UPTRUDCqN+je7xSzen7W6fNLQCFNA/VuWFw2/9Q3sPjt4/eCHJXu8QjFodMbSqJ5qKS2+4GG+DODEntQh+zEeMf5k15VhptlQcJvQejYRd+GMzpZgcM6PB1GIMh6tIgK4Eym9G1OTg25YYZmQ4g0CKmIUD+ZUiWSOnZG/bk5UixyAmPgq8ZLu+1wQThBiM0zwEduZW5bMZbXwRCO6JsKOlAYoDWes/h0DtyH3MOmkaG9/134AKJwuly+f/L9eQqtV6rmyYRDMuB0xZgM9UHlxlY3Zw7l1tAO+kZYQ2NPhBu0LggU3fHp2nXqQA6gkDMVHt94JLbUoZiIXr7mNFzYowhcRyp46FelwtWCYJdC61J+Ep3/gvxmrIOM6/92fKcsn20FkepEVaHDqSyB4OJeeBMJkVo65yTMg5FrNW5z0aeDl5w6OQXBxayoGz7DEj+Fs1GUzASWjk0NmMc1ZBNrhyKhJG4Cdv7hv87Q2SyM+gAD2ElvpcV4gtaebry4OV0d7Pibtg/2mILIQJgVHjiQ0Yv4vhXWKlTTVYeaoCcyGT4OTpQ5iLmqvvmoo3L91DxEx3Nf0x8TqWZu/AarvPskjm5PkKG/knT6ovrcMYmfsQBxsVbFwysX/Zby3guxzL4TOcB/Br/w5mnWq113OCP1Wj8ptiuByrTR3ptsh1kS4bUyIdJjhK7ABDFdlm0E1UOklc8/HQvENLupVGso2ALGuhIPzHMytrjIFi4ksQSZVJa1/96qbkSYXbnrS/ljW9W5WHJd5RsRiJiOV4YS1viPMZLUHPfFUA/GcSvDX6JVct56og7cNeMPSW4rt3szk9knWVnXjJSt/DY/r2+pyOxTf+rzqqZWLVK7H7ATqmtcw0GX4Sb6AHu2Hx+GhXL7g1nt x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH7PR11MB5863.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230016)(376002)(366004)(39860400002)(396003)(136003)(346002)(478600001)(52536014)(83380400001)(966005)(186003)(5660300002)(4326008)(8676002)(107886003)(110136005)(54906003)(316002)(19627235002)(86362001)(8936002)(55016003)(38070700005)(6506007)(82960400001)(9686003)(26005)(53546011)(7696005)(2906002)(76116006)(71200400001)(41300700001)(66446008)(33656002)(38100700002)(64756008)(122000001)(66476007)(66946007)(66556008);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?a2ppWGlkNzQ2MExxNTRRZndJUzYwWmZtdkdWWG5mRWFpK0VPT3RxUFlHQXQ1?= =?utf-8?B?NkJzTnFGcWEwVXo1eDV0L09pb1JlR21pTHVPOEgzOC9XQWh2L0N1WGxyTmhq?= =?utf-8?B?WUtib3A2dlRRRk4vZ1hYaks4U0RPNTU3WDRLZ3FSUTF3MlAzc3p1Mjd5bXlK?= =?utf-8?B?WkMvQW82U2J3NktlN3p3TU5wZDh2d0lVb1IvbmkzUGJiWG9ibHMwMFUvUi85?= =?utf-8?B?eFcwSzIrdXg4NGNCNWRTQXY1TDVzM0ZiQ0dBTGE5cFdUbkErNVlzSnlGVHBF?= =?utf-8?B?SmJaRHA1VG8yZEtQanJUMXMvVG5Bb05hdVh1M1c3T2U3OXlnYjBtME9sRHY4?= =?utf-8?B?RVZURnB4eVJkRC9RSmFrcUYydXFwSWpIQk0yZFFwRGJ5d2prTGZPTWdyQTVx?= =?utf-8?B?MFRxcm5CK09oN3pGcEtZMUNrUFE1YjNWd0YrVGM1eHVnSjIvNEpBblUzUkkx?= =?utf-8?B?V2pYUEJlTXZnU0h3NGZSRUFDUVNBVmZHajhIYnhOQThGVHEyWVpaZ005bnlk?= =?utf-8?B?ZGZuNnZjT0ZoNUZJOFp0enpVVnVDb0JWTmM1RnI0VktOZ0tUajhBZ21VN3hm?= =?utf-8?B?aTM4aVdYMHNxbWNOOURaL28ydEJ6RFlROXQyL1AxYXNReFBla3lJcEcycktB?= =?utf-8?B?dGlselJXZ0FqMUhDSFFLWFF0M2ZpMmFEV1RGaGxJUlJ3QTRnNXRnaVd2dzNj?= =?utf-8?B?TEViWkNEQTM0ckJSSFBYVXRmd2VBSXRYMFYzZVdGdENPR1RDWEtjOGZPb0Rv?= =?utf-8?B?Und1UXJHU29zSDZWU2JpczJUdGE5akd5ckRIOFdiQTZHTjZaVzVrR1EvU2w1?= =?utf-8?B?eDdhelhCRzJINEVKMFUxSTF6WmJUQS84WG4zbXBtOXpOVGtUMGJZQXNya0RH?= =?utf-8?B?RUVnWUw3VlkrRThpeldwdjh4ZC85MnpkQlhnTllQTStMM1J2MllUOUdYQ1NN?= =?utf-8?B?R2hZWmIrY3FCTlo4YkFNaVdtckF4eFA3UXhZSGhNekIzZDc0ZW1kZHp6NHp5?= =?utf-8?B?WWVwdTR5UTRIZHdkbFpHOEFiUXgxLzBmZllTR05hc0ZscUs3ejIzbzdRaFBD?= =?utf-8?B?SGdYN0xYbUdsSGh5OUMycWVBK3BhQUFSbnBGSlNneWxQMUdPYll2RnNrZUZF?= =?utf-8?B?bDBRN05uU2R3UWdPVUtYMkdYS0ZYWXc1NVdTV2t3OWxqWGFIU08zdk0xSmFP?= =?utf-8?B?cGluR2l3NXRKOXA4OWVPTlVCNzl3OEQ3VGNMbGxrME1KSlhiWmt1eDkyMzN6?= =?utf-8?B?dHptQnVndGhuaXdEaHp6djZMaTNPME9sNW52dXNYaHJBWnN2UWlZZ1J5aG9p?= =?utf-8?B?NHdyM2U4ajR5Tzd2aFZ4MkhFQjZLdUxxUVN1UDR4aERDajZjNjlPR1ZRQWRG?= =?utf-8?B?eFlOUmVwbzlxNitOd2JjMUhPOEpINDlWUXltcEplV1pMY2dvZFVFWEd3RVVu?= =?utf-8?B?L2M0ZjVSMnNlRUw3TzRCTzEwNUJSNjN4S29QOFRQQmVhOUNEK3FuM0xQRDZK?= =?utf-8?B?YjV4MnRBQzRBQkwvL0RsY2JCV1Z4c2JLbkg4TDlEM1h0d3E1aVJrc05Ub0R5?= =?utf-8?B?YjN2bTFUNGh5TGxmbEo0OVI5clVkQmhhRVcyMXBST1RmOGVmYzI0M2V2aWZM?= =?utf-8?B?M1EweEIzRGltYnBxM2U3bkdYZkdSNVpvQy8zS1NaOFpIa21ISDRwQXVUUnVl?= =?utf-8?B?dkt0dlVOREZRMkhzWHdrdlFodXlJdWVyZFZDQ1BSSVRCVWJSOXVLRnZnRGVJ?= =?utf-8?B?U0N3MkVTUlBRZHVHZ1UyNVZodjRNV1NqR0taZXBOSHJUd1FPODJaSTUrRjcw?= =?utf-8?B?VklUZzRlZk04NEZTZTl2NFJsNG5TWmo2Y2ZUYlA1dGxqL3BhQkNsT0p1TEpV?= =?utf-8?B?MEZDRlRSOStjNFd2a2QvcnMzMVd0d2QzeXdvZzFIVDZxekZsV2NnSldaUEhS?= =?utf-8?B?QlVLc2lUNW9nZFowSjBhcTBNNGh2cDc2azZ2ekMwNUNxZVRWekxPVHVWbVZo?= =?utf-8?B?SnpOMDRjLzBIL0J1Qy9uUVdWWHBXS2N1YXJqRytWRGllL2M3aDhoWkphSTE3?= =?utf-8?B?L3pNbHlsVi93VEk3UlBmNWhLSlF6MTVKZ3J2cG10ck84Mm94aW1ETUhDS1hj?= =?utf-8?Q?TPBfr5u0+hCgNefi3HuPPcRSA?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PH7PR11MB5863.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: f24c64cb-0d09-4a53-b759-08da6d563851 X-MS-Exchange-CrossTenant-originalarrivaltime: 24 Jul 2022 09:23:50.5528 (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: 0tRGl9u6H8GhnCwOxqiiLXv7kbmL8RTVLzjqgSP48dkvT0GI3wfFwnAZp04QJL9SvUOgCjSnZW+qf71ie6aoVQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR11MB3038 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 Q29weXJpZ2h0IChjKSAyMDIyLCBLb25zdGFudGluIEFsYWR5c2hldiA8YWxhZHlzaGV2MjJAZ21h aWwuY29tPjxCUj4NCldpbGwgYmUgZmluZS4NCg0KVGhhbmtzLA0KQm9iDQoNCi0tLS0tT3JpZ2lu YWwgTWVzc2FnZS0tLS0tDQpGcm9tOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbyA8ZGV2ZWxAZWRrMi5n cm91cHMuaW8+IE9uIEJlaGFsZiBPZiBLb25zdGFudGluIEFsYWR5c2hldg0KU2VudDogU3VuZGF5 LCBKdWx5IDI0LCAyMDIyIDQ6MzQgUE0NClRvOiBGZW5nLCBCb2IgQyA8Ym9iLmMuZmVuZ0BpbnRl bC5jb20+DQpDYzogZGV2ZWxAZWRrMi5ncm91cHMuaW87IEdhbywgTGltaW5nIDxnYW9saW1pbmdA Ynlvc29mdC5jb20uY24+OyBDaGVuLCBDaHJpc3RpbmUgPHl1d2VpLmNoZW5AaW50ZWwuY29tPg0K U3ViamVjdDogUmU6IFtlZGsyLWRldmVsXSBbUEFUQ0hdIEJhc2VUb29scy9Wb2xJbmZvOiBQYXJz ZSBhcHJpb3JpIGZpbGVzDQoNCkhpLCBCb2IhDQoNCkhvdyBzaG91bGQgSSB1cGRhdGUgaXQ/DQoN ClNob3VsZCBJIGluY3JlYXNlIGEgeWVhciBmb3IgdGhlIEludGVsIENvcnBvcmF0aW9uIGxpa2Ug dGhpcyBgYGAgQ29weXJpZ2h0IChjKSAxOTk5IC0gMjAyMiwgSW50ZWwgQ29ycG9yYXRpb24uIEFs bCByaWdodHMgcmVzZXJ2ZWQuPEJSPiBgYGAgT3Igc2hvdWxkIEkgZW50ZXIgbXkgbmFtZSBvbiBh bm90aGVyIHN0cmluZz8NCmBgYA0KQ29weXJpZ2h0IChjKSAyMDIyLCBLb25zdGFudGluIEFsYWR5 c2hldiA8YWxhZHlzaGV2MjJAZ21haWwuY29tPjxCUj4gYGBgDQoNCkJlc3QgcmVnYXJkcywNCktv bnN0YW50aW4gQWxhZHlzaGV2DQoNCk9uIFN1biwgSnVsIDI0LCAyMDIyIGF0IDk6MTAgQU0gRmVu ZywgQm9iIEMgPGJvYi5jLmZlbmdAaW50ZWwuY29tPiB3cm90ZToNCj4NCj4gSGkgS29uc3RhbnRp biwNCj4NCj4gQ291bGQgeW91IHVwZGF0ZSB0aGUgY29weXJpZ2h0IGluIFZvbEluZm8uYz8NCj4N Cj4gVGhhbmtzLA0KPiBCb2INCj4NCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJv bTogZGV2ZWxAZWRrMi5ncm91cHMuaW8gPGRldmVsQGVkazIuZ3JvdXBzLmlvPiBPbiBCZWhhbGYg T2YgDQo+IEtvbnN0YW50aW4gQWxhZHlzaGV2DQo+IFNlbnQ6IEZyaWRheSwgSnVseSAyMiwgMjAy MiAxMTozOCBQTQ0KPiBUbzogZGV2ZWxAZWRrMi5ncm91cHMuaW8NCj4gQ2M6IEZlbmcsIEJvYiBD IDxib2IuYy5mZW5nQGludGVsLmNvbT47IEdhbywgTGltaW5nIA0KPiA8Z2FvbGltaW5nQGJ5b3Nv ZnQuY29tLmNuPjsgQ2hlbiwgQ2hyaXN0aW5lIDx5dXdlaS5jaGVuQGludGVsLmNvbT47IA0KPiBL b25zdGFudGluIEFsYWR5c2hldiA8YWxhZHlzaGV2MjJAZ21haWwuY29tPg0KPiBTdWJqZWN0OiBb ZWRrMi1kZXZlbF0gW1BBVENIXSBCYXNlVG9vbHMvVm9sSW5mbzogUGFyc2UgYXByaW9yaSBmaWxl cw0KPg0KPiBPdXRwdXQgZmlsZSBHVUlEcyBmcm9tIHRoZSBEWEUgYW5kIFBFSSBhcHJpb3JpIGZp bGVzLg0KPg0KPiBTaWduZWQtb2ZmLWJ5OiBLb25zdGFudGluIEFsYWR5c2hldiA8YWxhZHlzaGV2 MjJAZ21haWwuY29tPg0KPiAtLS0NCj4gIEJhc2VUb29scy9Tb3VyY2UvQy9Wb2xJbmZvL1ZvbElu Zm8uYyB8IDc0IA0KPiArKysrKysrKysrKysrKysrKysrKysrKysrKysrDQo+ICAxIGZpbGUgY2hh bmdlZCwgNzQgaW5zZXJ0aW9ucygrKQ0KPg0KPiBkaWZmIC0tZ2l0IGEvQmFzZVRvb2xzL1NvdXJj ZS9DL1ZvbEluZm8vVm9sSW5mby5jIA0KPiBiL0Jhc2VUb29scy9Tb3VyY2UvQy9Wb2xJbmZvL1Zv bEluZm8uYw0KPiBpbmRleCAyZDdjNjIxMmIzLi4yOGM2ODA2Y2YwIDEwMDY0NA0KPiAtLS0gYS9C YXNlVG9vbHMvU291cmNlL0MvVm9sSW5mby9Wb2xJbmZvLmMNCj4gKysrIGIvQmFzZVRvb2xzL1Nv dXJjZS9DL1ZvbEluZm8vVm9sSW5mby5jDQo+IEBAIC00Myw2ICs0Myw4IEBAIFNQRFgtTGljZW5z ZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2UtUGF0ZW50DQo+ICAvLyAgRUZJX0dVSUQgIGdFZmlD cmMzMkd1aWRlZFNlY3Rpb25FeHRyYWN0aW9uUHJvdG9jb2xHdWlkID0gRUZJX0NSQzMyX0dVSURF RF9TRUNUSU9OX0VYVFJBQ1RJT05fUFJPVE9DT0xfR1VJRDsrRUZJX0dVSUQgIGdQZWlBcHJpb3Jp RmlsZU5hbWVHdWlkID0geyAweDFiNDVjYzBhLCAweDE1NmEsIDB4NDI4YSwgeyAwWEFGLCAweDYy LCAgMHg0OSwgMHg4NiwgMHg0ZCwgMHhhMCwgMHhlNiwgMHhlNiB9fTsrRUZJX0dVSUQgIGdBcHJp b3JpR3VpZCA9IHsgMHhGQzUxMEVFNywgMHhGRkRDLCAweDExRDQsIHsgMHhCRCwgMHg0MSwgMHgw MCwgMHg4MCwgMHhDNywgMHgzQywgMHg4OCwgMHg4MSB9fTsgICNkZWZpbmUgVVRJTElUWV9NQUpP Ul9WRVJTSU9OICAgICAgMSAjZGVmaW5lIFVUSUxJVFlfTUlOT1JfVkVSU0lPTiAgICAgIDBAQCAt MTA3LDYgKzEwOSwxMiBAQCBSZWFkSGVhZGVyICgNCj4gICAgT1VUIEJPT0xFQU4gICAqRXJhc2VQ b2xhcml0eSAgICk7ICtTVEFUSUMrRUZJX1NUQVRVUytQcmludEFwcmlvcmlGaWxlICgrICBFRklf RkZTX0ZJTEVfSEVBREVSICAgICAgICAgKkZpbGVIZWFkZXIrICApOysgU1RBVElDIEVGSV9TVEFU VVMgUHJpbnRGaWxlSW5mbyAoQEAgLTEwODMsNiArMTA5MSw1MyBAQCBSZXR1cm5zOg0KPiAgICBy ZXR1cm4gRUZJX1NVQ0NFU1M7IH0gK1NUQVRJQytFRklfU1RBVFVTK1ByaW50QXByaW9yaUZpbGUg KCsgIEVGSV9GRlNfRklMRV9IRUFERVIgICAgICAgICAqRmlsZUhlYWRlcisgICkrLyorKysrUm91 dGluZSBEZXNjcmlwdGlvbjorKyAgUHJpbnQgR1VJRHMgZnJvbSB0aGUgQVBSSU9SSSBmaWxlKytB cmd1bWVudHM6KysgIEZpbGVIZWFkZXIgLSBUaGUgZmlsZSBoZWFkZXIrK1JldHVybnM6KysgIEVG SV9TVUNDRVNTICAgICAgIC0gVGhlIEFQUklPUkkgZmlsZSB3YXMgcGFyc2VkIGNvcnJlY3RseSsg IEVGSV9TRUNUSU9OX0VSUk9SIC0gUHJvYmxlbSB3aXRoIGZpbGUgcGFyc2luZysrLS0qLyt7KyAg VUlOVDggICAgICAgICAgICAgICBHdWlkQnVmZmVyW1BSSU5URURfR1VJRF9CVUZGRVJfU0laRV07 KyAgVUlOVDMyICAgICAgICAgICAgICBIZWFkZXJTaXplOysrICBIZWFkZXJTaXplID0gRnZCdWZH ZXRGZnNIZWFkZXJTaXplIChGaWxlSGVhZGVyKTsrKyAgaWYgKEZpbGVIZWFkZXItPlR5cGUgIT0g RUZJX0ZWX0ZJTEVUWVBFX0ZSRUVGT1JNKSsgICAgcmV0dXJuIEVGSV9TRUNUSU9OX0VSUk9SOysr ICBFRklfQ09NTU9OX1NFQ1RJT05fSEVBREVSKiBTZWN0aW9uSGVhZGVyID0gKEVGSV9DT01NT05f U0VDVElPTl9IRUFERVIgKikgKChVSU5UTikgRmlsZUhlYWRlciArIEhlYWRlclNpemUpOysgIGlm IChTZWN0aW9uSGVhZGVyLT5UeXBlICE9IEVGSV9TRUNUSU9OX1JBVykrICAgIHJldHVybiBFRklf U0VDVElPTl9FUlJPUjsrKyAgVUlOVDMyIFNlY3Rpb25MZW5ndGggPSBHZXRTZWN0aW9uRmlsZUxl bmd0aCAoU2VjdGlvbkhlYWRlcik7KyAgRUZJX0dVSUQqIEZpbGVOYW1lID0gKEVGSV9HVUlEICop ICgoVUlOVDggKikgU2VjdGlvbkhlYWRlciArIHNpemVvZiAoRUZJX0NPTU1PTl9TRUNUSU9OX0hF QURFUikpOysgIHdoaWxlICgoKFVJTlQ4ICopIEZpbGVOYW1lKSA8ICgoVUlOVDggKikgU2VjdGlv bkhlYWRlciArIFNlY3Rpb25MZW5ndGgpKSB7KyAgICBQcmludEd1aWRUb0J1ZmZlciAoRmlsZU5h bWUsIEd1aWRCdWZmZXIsIHNpemVvZiAoR3VpZEJ1ZmZlciksIFRSVUUpOysgICAgcHJpbnRmICgi JXMgICIsIEd1aWRCdWZmZXIpOysgICAgUHJpbnRHdWlkTmFtZSAoR3VpZEJ1ZmZlcik7KyAgICBw cmludGYgKCJcbiIpOysgICAgRmlsZU5hbWUrKzsrICB9KysgIHJldHVybiBFRklfU1VDQ0VTUzsr fSsgU1RBVElDIEVGSV9TVEFUVVMgUHJpbnRGaWxlSW5mbyAoQEAgLTEzMzksNiArMTM5NCwyNSBA QCBSZXR1cm5zOg0KPiAgICAgIGJyZWFrOyAgIH0gKyAgaWYgKCFDb21wYXJlR3VpZCAoKyAgICAg ICAmRmlsZUhlYWRlci0+TmFtZSwrICAgICAgICZnUGVpQXByaW9yaUZpbGVOYW1lR3VpZCsgICAg ICAgKSkrICB7KyAgICBwcmludGYoIlxuIik7KyAgICBwcmludGYoIlBFSSBBUFJJT1JJIEZJTEU6 XG4iKTsrICAgIHJldHVybiBQcmludEFwcmlvcmlGaWxlIChGaWxlSGVhZGVyKTsrICB9KyAgaWYg KCFDb21wYXJlR3VpZCAoKyAgICAgICAmRmlsZUhlYWRlci0+TmFtZSwrICAgICAgICZnQXByaW9y aUd1aWQrICAgICAgICkpKyAgeysgICAgcHJpbnRmKCJcbiIpOysgICAgcHJpbnRmKCJEWEUgQVBS SU9SSSBGSUxFOlxuIik7KyAgICByZXR1cm4gUHJpbnRBcHJpb3JpRmlsZSAoRmlsZUhlYWRlcik7 KyAgfSsgICByZXR1cm4gRUZJX1NVQ0NFU1M7IH0gLS0NCj4gMi4yNS4xDQo+DQo+DQo+DQo+IC09 LT0tPS09LT0tPQ0KPiBHcm91cHMuaW8gTGlua3M6IFlvdSByZWNlaXZlIGFsbCBtZXNzYWdlcyBz ZW50IHRvIHRoaXMgZ3JvdXAuDQo+IFZpZXcvUmVwbHkgT25saW5lICgjOTE3MjIpOiANCj4gaHR0 cHM6Ly9lZGsyLmdyb3Vwcy5pby9nL2RldmVsL21lc3NhZ2UvOTE3MjINCj4gTXV0ZSBUaGlzIFRv cGljOiBodHRwczovL2dyb3Vwcy5pby9tdC85MjU1MDIwNi8xNzY4NzQyDQo+IEdyb3VwIE93bmVy OiBkZXZlbCtvd25lckBlZGsyLmdyb3Vwcy5pbw0KPiBVbnN1YnNjcmliZTogaHR0cHM6Ly9lZGsy Lmdyb3Vwcy5pby9nL2RldmVsL3Vuc3ViIA0KPiBbYm9iLmMuZmVuZ0BpbnRlbC5jb21dIC09LT0t PS09LT0tPQ0KPg0KPg0KDQoNCg0KDQoNCg==