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.9040.1619452630423731080 for ; Mon, 26 Apr 2021 08:57:11 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=GwSkSYcA; spf=pass (domain: intel.com, ip: 192.55.52.88, mailfrom: michael.d.kinney@intel.com) IronPort-SDR: zCzBeoqp4oAonc91RPdplYG6CjyrZfHBi3f0RdIZKRbo1uIwSqiHsgsHxWT1V62yIhh2DitNew 9F34OXqt4l/w== X-IronPort-AV: E=McAfee;i="6200,9189,9966"; a="217055198" X-IronPort-AV: E=Sophos;i="5.82,252,1613462400"; d="scan'208";a="217055198" Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 26 Apr 2021 08:57:08 -0700 IronPort-SDR: /+jTF9Hn0VvbaC5W3TzEY1pRG2szfxKN6Zh8Xys/BWBlx/ELo568Oj81e1fTsOqg8rEDy6dG2Z sAeUkvWd3XCg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.82,252,1613462400"; d="scan'208";a="422703801" Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16]) by fmsmga008.fm.intel.com with ESMTP; 26 Apr 2021 08:57:07 -0700 Received: from orsmsx602.amr.corp.intel.com (10.22.229.15) by ORSMSX603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2; Mon, 26 Apr 2021 08:57:04 -0700 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) 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; Mon, 26 Apr 2021 08:57:04 -0700 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (104.47.55.104) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2106.2; Mon, 26 Apr 2021 08:57:04 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=aePPs8fMJBMVxiyE/7QLbBBNgySJGycYFKTTjUB+/4inRPPNlJ/mjG2N0egCoPW4hC357DBw1Ws3uXOZw44dXnYiv/+oVFa8gmIws6gOcn/wv5Y91nT74zFuq3Z0rln4hZNxHYu/FPdv0t2IO0Xsksyswr3Z98SOQlES+Qna7ZTiGuzNxu7rw/AHQEp7l4WhysAscIVf3rgRx7arLCTsL+wlEFvKhXBNu76wb5y0PP6NRTrp0bXqHVtSeGKz3SLCBAdPTRX1yvZjj0nknFExQnvYvZRKeqrCPzVWyk0oVB2hfaJVARFPykGqgVn9zrv6nC2FQcu9Db3WBXkS1vdztA== 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=Bx8wiCcpXIpMJARd7cjLJnMKC9M8ssqt41XbDN4ZHIw=; b=ZmlVEaa/3Uw1IgOWBbSfDBDmJWBiFtHmMenA8+Abn2s9Bp4EDg8tXdXZYkv6PdY6hs2V32H5Z499xeVvGNCgT16CwefY1HA8KBCBjA84Jt9vG+IH1bImZBOkjz9Wslpfz3Tk3vqXROrhPDp2zAGj/ZkjAF9t3fTA7VF96tfhT24nkBgy2CWFMBXn26W+JzPSxu22A99W/sP1z4p4N5Lnwi78/u87+BOpvkocQGNNIWFr+zEee/VHktTK7YD3R4ootXqDjKDJZRouvH1WaeWIChNPCpvM++LzCUegPl4b6OGs1RVAFg6ls3GIfO/fE6Xz3gEhGOqGdYzdlwzrnA3IGw== 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=Bx8wiCcpXIpMJARd7cjLJnMKC9M8ssqt41XbDN4ZHIw=; b=GwSkSYcA72C6BJF9jxJSC3EOQCweMpkvKuOEXfNB6Nw3XiROyMursQTooH6RaCSz+VlHELgHLI2EtAgtI0rFyNA3RJs1KPVbl59lszpw0kJtXR5RDFzeA8uehg7DfHzVDGQIofvlp9NzYl58T7SuDiujxTslgCBEXkGtip7EqXc= Received: from CO1PR11MB4929.namprd11.prod.outlook.com (2603:10b6:303:6d::19) by CO1PR11MB5124.namprd11.prod.outlook.com (2603:10b6:303:94::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4065.20; Mon, 26 Apr 2021 15:57:03 +0000 Received: from CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::59e2:f389:5f8b:2f08]) by CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::59e2:f389:5f8b:2f08%4]) with mapi id 15.20.4065.027; Mon, 26 Apr 2021 15:57:03 +0000 From: "Michael D Kinney" To: "devel@edk2.groups.io" , "sughosh.ganu@linaro.org" , "Kinney, Michael D" CC: Michal Simek Subject: Re: [edk2-devel] [PATCH v2] BaseTools: Add support for version 3 of FMP Image Header structure Thread-Topic: [edk2-devel] [PATCH v2] BaseTools: Add support for version 3 of FMP Image Header structure Thread-Index: AQHXODPfy0OMYbVqnk6GMLYzXwE1IarG+Q9w Date: Mon, 26 Apr 2021 15:57:03 +0000 Message-ID: References: <20210423112842.10739-1-sughosh.ganu@linaro.org> In-Reply-To: <20210423112842.10739-1-sughosh.ganu@linaro.org> 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: edk2.groups.io; dkim=none (message not signed) header.d=none;edk2.groups.io; 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: 5efe366b-6cf5-45b6-378d-08d908cbef87 x-ms-traffictypediagnostic: CO1PR11MB5124: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:5516; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: Zh0I/tKCPqGt5Hii800t3Pm3EX4fHjM74Uk/kIODYjlupOYnHqbvMuFCpTbTiQxW1f0gnY7WQUboPQ17Ic2W61Q/G0Z0CpblrF++K3SCQjn8kSQlG9Sin8I3ULo5CwAeJ9xmz7VMBIvEn3lhs9pvHFiL0Y7jhsAEfojSlvbkgpZs/LIsMfhy7eo4/ETqFqpSGjOcLMGvIGziE8gZiGMM/lhuKrtzIYcSJo7YaBt/uTxh6RXaPfouF+EFNjtfHeWPM0QsG98nOHXadQHDRtJ2Xpn+xyVbK0ubzEA3vNlre72+zrNgl++AFuIU5ISjt/mxS+QloKNj9jsKzOCR3rbObOaUjune6Fpx9eLpOeD+zTdkRTA182YSkJehOjA2vMMzywgGT15vu1qpDkuyhu2Pjx5Xle6H+Afowq2yPztPEQPsB9Pswubos+q54SOTY2i49cKi6CT118ynoKlD4OIKyGW1p1IMRkb/DR5JdlgoJoBKMytc01RSSNmsJlk2aJuvEb4xzkO5e0pH1HC+gdeZ8eWTsXQIiOX6ABjIfYC/rrxVvwGndBeqUlDTdNgS3SwMM6r/dVTMi0kaMnheC85DFPQv+GjE9z0BU/H8iE/f+gkQEKEOZ1MrmfEFMyi4x2B+sb09srI66njeNpmWycj2B4LYQCa9CECEbhlebl4rGWGqPhjZROMKCHALFkvtO6gT 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)(136003)(396003)(376002)(39860400002)(366004)(55016002)(76116006)(9686003)(966005)(7696005)(122000001)(8676002)(53546011)(6506007)(52536014)(5660300002)(86362001)(2906002)(64756008)(83380400001)(66446008)(66476007)(66556008)(66946007)(8936002)(38100700002)(316002)(110136005)(186003)(26005)(71200400001)(4326008)(478600001)(33656002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: =?utf-8?B?OVVMdkpXMmdLbUhpOTJ1Q3htTVlpNFJzN0xpb2t5VUlxQk5POVpkZlI3eFlT?= =?utf-8?B?WThjUXdKSGdMMjBhc1dHNVdZM3ppc2o5T1N4bWt6bmRQVTE3a045ZmN0alJD?= =?utf-8?B?R0Z2ZVFRYmR0djJuUWdSMzJNZDVjd1JhblBNN0I1UXhJQmRWVXR4N24rSS9Z?= =?utf-8?B?V1BVRDVLWkJOSlFBbjVHaFVZQzdMekFtakgwdVB1RW9vZ3RZK21Rb3Y2cWdX?= =?utf-8?B?TDFadDZGS3JKaUJCK0dPTGlrOXVBWEY3ZzVxenhYQmFlejNWZjNEMlRQd2Rl?= =?utf-8?B?WFU3cXRhNW0wczJmaHpaT1VCQVcyUVM0cXdEcUd5bVZHS3RteTRQRHZOQXlM?= =?utf-8?B?b0p3ZENHcXVXTWFnRkNDSHFaZkhaSEU0SENFTGlwK2JybHVoRCtUTWh2VEtk?= =?utf-8?B?MjdYallTNStIN2g2YVA3QlhVMk9jckd2NjNjN2xpSnlQb0RmTWtHalM0MENz?= =?utf-8?B?Q09LcGU3N1k5bW8za1Z5UnRVejFncGdMMlRXNzU5SWRiWWN6TjZaQUd0UDZn?= =?utf-8?B?a2g4SDNaV1ZSYjUzRE0rNkt0TXhSLzVpMlZvNmdqWmw0UG5MVTBVRy94REhK?= =?utf-8?B?V1dBQ01aWXFlMVN0a1B4VmhiZVVNSHd2UFFNa0xLdjBiR2FhSWFVS1hKdnYz?= =?utf-8?B?SDZxT3lMU2NKT1hSa2E0L29wR1FmdmdtWnBxTnQ2RDRrdzBZMjZKbkZOTTRr?= =?utf-8?B?eFd0UEU2VHk2QXE2NU9sSUdHd1hqSVQ3ZGZoa1lDSklZMEtyM3IwZ1VXVU1u?= =?utf-8?B?RGllNDVQWllOZ21wZWZOaGpsOThiU0daQXBCNmxwRm5BY09BeW5aRThRTXZu?= =?utf-8?B?TjBHcWE4S0x4UnN5dVJTbUE3WXZmNDY4Qm43STRleWozTEJmVE84cUx3TlBD?= =?utf-8?B?WVNnMmIwMTRHemlNN2FqU2xDRzVjT1VGeVpJL3loWjI0LzlTdkN4THJuNWtI?= =?utf-8?B?RlZiWU9WdW1IcVFhSkJGbW1Cb3V2NjYvZitzVDVuMEVsR0FMcEczYlJKbHV0?= =?utf-8?B?MHJJM211bXFOWjJyNENxcjJiVUtFRmFjKzRUSTBXQ2ZmRks5V3hDUktDanM3?= =?utf-8?B?WVJvbVVhK3NPYW1sVEl4Q0xqZ3ZsZW44SVhNOXZUdW1ZcElWbnFBc2tBOE9W?= =?utf-8?B?TmpkZWcxR1NlbXdUSU5WWHZYVjhWK0Q2WVZIZmR0OWFpc0VpazdWVGR6aFpL?= =?utf-8?B?RmI5Si9qV0h2MkI0NDVMNTluTGJERXRlYS9uNWhYMEt2cXgxQk5KQ2NoYUd0?= =?utf-8?B?aFZyZ01EbVBNOW9MQ3FZYjBCT3p4QXlFdmZaUXp6RFMvdFpsYU9DT0JIY2tn?= =?utf-8?B?TW83QllTbkZ0KzlRbVp5TkRybW45UHRmMnNTYXJNQ2hDSldObVRoUUZCL01Q?= =?utf-8?B?MG9wRWJBMTM0UlBmcEllN1MxQmovcW8zb2NCblcwdGhrZWRGMG5Da3lldXhK?= =?utf-8?B?SHUrZk1jdmRCTitKZVJYVm9ha0twWXR1WllJcmppRk9xN0lOQVNDQ1FuL3FI?= =?utf-8?B?bFVGakFNcnZmQUpBMHJ4MTJhNmhoN1FjU05rcVloSlhVb2YvT1k3bmlkTTdh?= =?utf-8?B?aDVNVTk4S2xRVDNncGhNOER2aVRuOUZGMzFLNjROcFFHVjU3emkwRUZWVW1p?= =?utf-8?B?UFVWMk9zTU1Ka0xja0ZseDg3VDVXYW5Fd2RFZ2VtUlA3OXZjL2NGNkxCWVVl?= =?utf-8?B?dVNyS3MvK3c2bUpXT1hwUVdkSG1RZWpIYXF4WFlFd2pKODY2WXJ3U1NWV21H?= =?utf-8?Q?zJ2inLZpqetxn89yGY=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: 5efe366b-6cf5-45b6-378d-08d908cbef87 X-MS-Exchange-CrossTenant-originalarrivaltime: 26 Apr 2021 15:57:03.8201 (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: Q7ebHopCeZbSTAksciHmxuFlMSZVvUgfrvIVCQd/VfxrR/hLhUlWVOhG4GClNNtU5PB63BpYIvOSDlvqB+/+W5gQuIn1hzgKku0uYRR73Oc= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR11MB5124 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 UmV2aWV3ZWQtYnk6IE1pY2hhZWwgRCBLaW5uZXkgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29t Pg0KDQpNaWtlDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogZGV2ZWxA ZWRrMi5ncm91cHMuaW8gPGRldmVsQGVkazIuZ3JvdXBzLmlvPiBPbiBCZWhhbGYgT2YgU3VnaG9z aCBHYW51DQo+IFNlbnQ6IEZyaWRheSwgQXByaWwgMjMsIDIwMjEgNDoyOSBBTQ0KPiBUbzogZGV2 ZWxAZWRrMi5ncm91cHMuaW8NCj4gQ2M6IE1pY2hhbCBTaW1layA8bWljaGFsLnNpbWVrQHhpbGlu eC5jb20+OyBTdWdob3NoIEdhbnUgPHN1Z2hvc2guZ2FudUBsaW5hcm8ub3JnPg0KPiBTdWJqZWN0 OiBbZWRrMi1kZXZlbF0gW1BBVENIIHYyXSBCYXNlVG9vbHM6IEFkZCBzdXBwb3J0IGZvciB2ZXJz aW9uIDMgb2YgRk1QIEltYWdlIEhlYWRlciBzdHJ1Y3R1cmUNCj4gDQo+IEFkZCBzdXBwb3J0IGZv ciB0aGUgSW1hZ2VDYXBzdWxlU3VwcG9ydCBmaWVsZCwgaW50cm9kdWNlZCBpbiB2ZXJzaW9uIDMN Cj4gb2YgdGhlIEVGSV9GSVJNV0FSRV9NQU5BR0VNRU5UX0NBUFNVTEVfSU1BR0VfSEVBREVSIHN0 cnVjdHVyZS4gVGhpcw0KPiBzdHJ1Y3R1cmUgbWVtYmVyIGlzIHVzZWQgdG8gaW5kaWNhdGUgaWYg dGhlIGNvcnJlc3BvbmRpbmcgcGF5bG9hZCBoYXMNCj4gc3VwcG9ydCBmb3IgYXV0aGVudGljYXRp b24gYW5kIGRlcGVuZGVuY3kuDQo+IA0KPiBTaWduZWQtb2ZmLWJ5OiBTdWdob3NoIEdhbnUgPHN1 Z2hvc2guZ2FudUBsaW5hcm8ub3JnPg0KPiAtLS0NCj4gDQo+IENoYW5nZXMgc2luY2UgdjE6DQo+ IC0gUmV3b3JkIHRoZSBwYXRjaCBoZWFkZXIgdG8gZ2V0IHJpZCBvZiB0aGUgUGF0Y2hDaGVjayB3 YXJuaW5nDQo+IC0gTWFrZSBwYXNzaW5nIG9mIEltYWdlQ2Fwc3VsZVN1cHBvcnQgcGFyYW1ldGVy IHRvIHRoZSBBZGRQYXlsb2FkDQo+ICAgZnVuY3Rpb24gYXMgYW4gb3B0aW9uYWwgcGFyYW1ldGVy IHRvIG1haW50YWluIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkNCj4gLSBEZWNsYXJlIHRoZSB2YWx1 ZXMgb2YgQ0FQU1VMRV9TVVBQT1JUX0RFUEVOREVOQ1kgYW5kDQo+ICAgQ0FQU1VMRV9TVVBQT1JU X0FVVEhFTlRJQ0FUSU9OIGluIHRoZSBGbXBDYXBzdWxlSGVhZGVyQ2xhc3MgYW5kIHVzZQ0KPiAg IHRob3NlIGluIHRoZSBHZW5lcmF0ZUNhcHN1bGUgc2NyaXB0DQo+IA0KPiAgLi4uL1NvdXJjZS9Q eXRob24vQ2Fwc3VsZS9HZW5lcmF0ZUNhcHN1bGUucHkgIHwgIDUgKysrLQ0KPiAgLi4uL0NvbW1v bi9VZWZpL0NhcHN1bGUvRm1wQ2Fwc3VsZUhlYWRlci5weSAgIHwgMjggKysrKysrKysrKysrKy0t LS0tLQ0KPiAgMiBmaWxlcyBjaGFuZ2VkLCAyNCBpbnNlcnRpb25zKCspLCA5IGRlbGV0aW9ucygt KQ0KPiANCj4gZGlmZiAtLWdpdCBhL0Jhc2VUb29scy9Tb3VyY2UvUHl0aG9uL0NhcHN1bGUvR2Vu ZXJhdGVDYXBzdWxlLnB5IGIvQmFzZVRvb2xzL1NvdXJjZS9QeXRob24vQ2Fwc3VsZS9HZW5lcmF0 ZUNhcHN1bGUucHkNCj4gaW5kZXggYThkZTk4ODI1My4uYjgwMzlkYjg3OCAxMDA2NDQNCj4gLS0t IGEvQmFzZVRvb2xzL1NvdXJjZS9QeXRob24vQ2Fwc3VsZS9HZW5lcmF0ZUNhcHN1bGUucHkNCj4g KysrIGIvQmFzZVRvb2xzL1NvdXJjZS9QeXRob24vQ2Fwc3VsZS9HZW5lcmF0ZUNhcHN1bGUucHkN Cj4gQEAgLTU2MSw2ICs1NjEsNyBAQCBpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOg0KPiAgICAg ICAgICAgICAgICAgIHByaW50ICgnR2VuZXJhdGVDYXBzdWxlOiBlcnJvcjonICsgc3RyKE1zZykp DQo+ICAgICAgICAgICAgICAgICAgc3lzLmV4aXQgKDEpDQo+ICAgICAgICAgIGZvciBTaW5nbGVQ YXlsb2FkRGVzY3JpcHRvciBpbiBQYXlsb2FkRGVzY3JpcHRvckxpc3Q6DQo+ICsgICAgICAgICAg ICBJbWFnZUNhcHN1bGVTdXBwb3J0ID0gMHgwMDAwMDAwMDAwMDAwMDAwDQo+ICAgICAgICAgICAg ICBSZXN1bHQgPSBTaW5nbGVQYXlsb2FkRGVzY3JpcHRvci5QYXlsb2FkDQo+ICAgICAgICAgICAg ICB0cnk6DQo+ICAgICAgICAgICAgICAgICAgRm1wUGF5bG9hZEhlYWRlci5Gd1ZlcnNpb24gICAg ICAgICAgICAgID0gU2luZ2xlUGF5bG9hZERlc2NyaXB0b3IuRndWZXJzaW9uDQo+IEBAIC01NzUs NiArNTc2LDcgQEAgaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoNCj4gICAgICAgICAgICAgIGlm IFNpbmdsZVBheWxvYWREZXNjcmlwdG9yLlVzZURlcGVuZGVuY3k6DQo+ICAgICAgICAgICAgICAg ICAgQ2Fwc3VsZURlcGVuZGVuY3kuUGF5bG9hZCA9IFJlc3VsdA0KPiAgICAgICAgICAgICAgICAg IENhcHN1bGVEZXBlbmRlbmN5LkRlcGV4RXhwID0gU2luZ2xlUGF5bG9hZERlc2NyaXB0b3IuRGVw ZXhFeHANCj4gKyAgICAgICAgICAgICAgICBJbWFnZUNhcHN1bGVTdXBwb3J0ICAgICAgICB8PSBG bXBDYXBzdWxlSGVhZGVyLkNBUFNVTEVfU1VQUE9SVF9ERVBFTkRFTkNZDQo+ICAgICAgICAgICAg ICAgICAgUmVzdWx0ID0gQ2Fwc3VsZURlcGVuZGVuY3kuRW5jb2RlICgpDQo+ICAgICAgICAgICAg ICAgICAgaWYgYXJncy5WZXJib3NlOg0KPiAgICAgICAgICAgICAgICAgICAgICBDYXBzdWxlRGVw ZW5kZW5jeS5EdW1wSW5mbyAoKQ0KPiBAQCAtNjA3LDEzICs2MDksMTQgQEAgaWYgX19uYW1lX18g PT0gJ19fbWFpbl9fJzoNCj4gICAgICAgICAgICAgICAgICAgICAgRm1wQXV0aEhlYWRlci5Nb25v dG9uaWNDb3VudCA9IFNpbmdsZVBheWxvYWREZXNjcmlwdG9yLk1vbm90b25pY0NvdW50DQo+ICAg ICAgICAgICAgICAgICAgICAgIEZtcEF1dGhIZWFkZXIuQ2VydERhdGEgICAgICAgPSBDZXJ0RGF0 YQ0KPiAgICAgICAgICAgICAgICAgICAgICBGbXBBdXRoSGVhZGVyLlBheWxvYWQgICAgICAgID0g UmVzdWx0DQo+ICsgICAgICAgICAgICAgICAgICAgIEltYWdlQ2Fwc3VsZVN1cHBvcnQgICAgICAg ICAgfD0gRm1wQ2Fwc3VsZUhlYWRlci5DQVBTVUxFX1NVUFBPUlRfQVVUSEVOVElDQVRJT04NCj4g ICAgICAgICAgICAgICAgICAgICAgUmVzdWx0ID0gRm1wQXV0aEhlYWRlci5FbmNvZGUgKCkNCj4g ICAgICAgICAgICAgICAgICAgICAgaWYgYXJncy5WZXJib3NlOg0KPiAgICAgICAgICAgICAgICAg ICAgICAgICAgRm1wQXV0aEhlYWRlci5EdW1wSW5mbyAoKQ0KPiAgICAgICAgICAgICAgICAgIGV4 Y2VwdDoNCj4gICAgICAgICAgICAgICAgICAgICAgcHJpbnQgKCdHZW5lcmF0ZUNhcHN1bGU6IGVy cm9yOiBjYW4gbm90IGVuY29kZSBGTVAgQXV0aCBIZWFkZXInKQ0KPiAgICAgICAgICAgICAgICAg ICAgICBzeXMuZXhpdCAoMSkNCj4gLSAgICAgICAgICAgIEZtcENhcHN1bGVIZWFkZXIuQWRkUGF5 bG9hZCAoU2luZ2xlUGF5bG9hZERlc2NyaXB0b3IuR3VpZCwgUmVzdWx0LCBIYXJkd2FyZUluc3Rh bmNlID0NCj4gU2luZ2xlUGF5bG9hZERlc2NyaXB0b3IuSGFyZHdhcmVJbnN0YW5jZSwgVXBkYXRl SW1hZ2VJbmRleCA9IFNpbmdsZVBheWxvYWREZXNjcmlwdG9yLlVwZGF0ZUltYWdlSW5kZXgpDQo+ ICsgICAgICAgICAgICBGbXBDYXBzdWxlSGVhZGVyLkFkZFBheWxvYWQgKFNpbmdsZVBheWxvYWRE ZXNjcmlwdG9yLkd1aWQsIFJlc3VsdCwgSGFyZHdhcmVJbnN0YW5jZSA9DQo+IFNpbmdsZVBheWxv YWREZXNjcmlwdG9yLkhhcmR3YXJlSW5zdGFuY2UsIFVwZGF0ZUltYWdlSW5kZXggPSBTaW5nbGVQ YXlsb2FkRGVzY3JpcHRvci5VcGRhdGVJbWFnZUluZGV4LCBDYXBzdWxlU3VwcG9ydCA9DQo+IElt YWdlQ2Fwc3VsZVN1cHBvcnQpDQo+ICAgICAgICAgIHRyeToNCj4gICAgICAgICAgICAgIGZvciBF bWJlZGRlZERyaXZlciBpbiBFbWJlZGRlZERyaXZlckRlc2NyaXB0b3JMaXN0Og0KPiAgICAgICAg ICAgICAgICAgIEZtcENhcHN1bGVIZWFkZXIuQWRkRW1iZWRkZWREcml2ZXIoRW1iZWRkZWREcml2 ZXIpDQo+IGRpZmYgLS1naXQgYS9CYXNlVG9vbHMvU291cmNlL1B5dGhvbi9Db21tb24vVWVmaS9D YXBzdWxlL0ZtcENhcHN1bGVIZWFkZXIucHkNCj4gYi9CYXNlVG9vbHMvU291cmNlL1B5dGhvbi9D b21tb24vVWVmaS9DYXBzdWxlL0ZtcENhcHN1bGVIZWFkZXIucHkNCj4gaW5kZXggOTFkMjQ5MTlj NC4uOGFiYjQ0OWM2ZiAxMDA2NDQNCj4gLS0tIGEvQmFzZVRvb2xzL1NvdXJjZS9QeXRob24vQ29t bW9uL1VlZmkvQ2Fwc3VsZS9GbXBDYXBzdWxlSGVhZGVyLnB5DQo+ICsrKyBiL0Jhc2VUb29scy9T b3VyY2UvUHl0aG9uL0NvbW1vbi9VZWZpL0NhcHN1bGUvRm1wQ2Fwc3VsZUhlYWRlci5weQ0KPiBA QCAtNDcsMTQgKzQ3LDE5IEBAIGNsYXNzIEZtcENhcHN1bGVJbWFnZUhlYWRlckNsYXNzIChvYmpl Y3QpOg0KPiAgICAgICMgICAvLy8gdGhlcmVmb3JlIGNhbiBiZSBtb2RpZmllZCB3aXRob3V0IGNo YW5naW5nIHRoZSBBdXRoIGRhdGEuDQo+ICAgICAgIyAgIC8vLw0KPiAgICAgICMgICBVSU5UNjQg ICBVcGRhdGVIYXJkd2FyZUluc3RhbmNlOw0KPiArICAgICMNCj4gKyAgICAjICAgLy8vDQo+ICsg ICAgIyAgIC8vLyBCaXRzIHdoaWNoIGluZGljYXRlIGF1dGhlbnRpY2F0aW9uIGFuZCBkZXBleCBp bmZvcm1hdGlvbiBmb3IgdGhlIGltYWdlIHRoYXQgZm9sbG93cyB0aGlzIHN0cnVjdHVyZQ0KPiAr ICAgICMgICAvLy8NCj4gKyAgICAjICAgVUlOVDY0ICAgSW1hZ2VDYXBzdWxlU3VwcG9ydA0KPiAg ICAgICMgfSBFRklfRklSTVdBUkVfTUFOQUdFTUVOVF9DQVBTVUxFX0lNQUdFX0hFQURFUjsNCj4g ICAgICAjDQo+IC0gICAgIyAgI2RlZmluZSBFRklfRklSTVdBUkVfTUFOQUdFTUVOVF9DQVBTVUxF X0lNQUdFX0hFQURFUl9JTklUX1ZFUlNJT04gMHgwMDAwMDAwMg0KPiArICAgICMgICNkZWZpbmUg RUZJX0ZJUk1XQVJFX01BTkFHRU1FTlRfQ0FQU1VMRV9JTUFHRV9IRUFERVJfSU5JVF9WRVJTSU9O IDB4MDAwMDAwMDMNCj4gDQo+IC0gICAgX1N0cnVjdEZvcm1hdCA9ICc8STE2c0IzQklJUScNCj4g KyAgICBfU3RydWN0Rm9ybWF0ID0gJzxJMTZzQjNCSUlRUScNCj4gICAgICBfU3RydWN0U2l6ZSAg ID0gc3RydWN0LmNhbGNzaXplIChfU3RydWN0Rm9ybWF0KQ0KPiANCj4gLSAgICBFRklfRklSTVdB UkVfTUFOQUdFTUVOVF9DQVBTVUxFX0lNQUdFX0hFQURFUl9JTklUX1ZFUlNJT04gPSAweDAwMDAw MDAyDQo+ICsgICAgRUZJX0ZJUk1XQVJFX01BTkFHRU1FTlRfQ0FQU1VMRV9JTUFHRV9IRUFERVJf SU5JVF9WRVJTSU9OID0gMHgwMDAwMDAwMw0KPiANCj4gICAgICBkZWYgX19pbml0X18gKHNlbGYp Og0KPiAgICAgICAgICBzZWxmLl9WYWxpZCAgICAgICAgICAgICAgICAgPSBGYWxzZQ0KPiBAQCAt NjQsNiArNjksNyBAQCBjbGFzcyBGbXBDYXBzdWxlSW1hZ2VIZWFkZXJDbGFzcyAob2JqZWN0KToN Cj4gICAgICAgICAgc2VsZi5VcGRhdGVJbWFnZVNpemUgICAgICAgID0gMA0KPiAgICAgICAgICBz ZWxmLlVwZGF0ZVZlbmRvckNvZGVTaXplICAgPSAwDQo+ICAgICAgICAgIHNlbGYuVXBkYXRlSGFy ZHdhcmVJbnN0YW5jZSA9IDB4MDAwMDAwMDAwMDAwMDAwMA0KPiArICAgICAgICBzZWxmLkltYWdl Q2Fwc3VsZVN1cHBvcnQgICAgPSAweDAwMDAwMDAwMDAwMDAwMDANCj4gICAgICAgICAgc2VsZi5Q YXlsb2FkICAgICAgICAgICAgICAgID0gYicnDQo+ICAgICAgICAgIHNlbGYuVmVuZG9yQ29kZUJ5 dGVzICAgICAgICA9IGInJw0KPiANCj4gQEAgLTc4LDcgKzg0LDggQEAgY2xhc3MgRm1wQ2Fwc3Vs ZUltYWdlSGVhZGVyQ2xhc3MgKG9iamVjdCk6DQo+ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIDAsMCwwLA0KPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBzZWxmLlVwZGF0ZUltYWdlU2l6ZSwNCj4gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgc2VsZi5VcGRhdGVWZW5kb3JDb2RlU2l6ZSwNCj4gLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5VcGRhdGVIYXJkd2FyZUlu c3RhbmNlDQo+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYu VXBkYXRlSGFyZHdhcmVJbnN0YW5jZSwNCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgc2VsZi5JbWFnZUNhcHN1bGVTdXBwb3J0DQo+ICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICkNCj4gICAgICAgICAgc2VsZi5fVmFsaWQgPSBUcnVl DQo+ICAgICAgICAgIHJldHVybiBGbXBDYXBzdWxlSW1hZ2VIZWFkZXIgKyBzZWxmLlBheWxvYWQg KyBzZWxmLlZlbmRvckNvZGVCeXRlcw0KPiBAQCAtODYsNyArOTMsNyBAQCBjbGFzcyBGbXBDYXBz dWxlSW1hZ2VIZWFkZXJDbGFzcyAob2JqZWN0KToNCj4gICAgICBkZWYgRGVjb2RlIChzZWxmLCBC dWZmZXIpOg0KPiAgICAgICAgICBpZiBsZW4gKEJ1ZmZlcikgPCBzZWxmLl9TdHJ1Y3RTaXplOg0K PiAgICAgICAgICAgICAgcmFpc2UgVmFsdWVFcnJvcg0KPiAtICAgICAgICAoVmVyc2lvbiwgVXBk YXRlSW1hZ2VUeXBlSWQsIFVwZGF0ZUltYWdlSW5kZXgsIHIwLCByMSwgcjIsIFVwZGF0ZUltYWdl U2l6ZSwgVXBkYXRlVmVuZG9yQ29kZVNpemUsDQo+IFVwZGF0ZUhhcmR3YXJlSW5zdGFuY2UpID0g XA0KPiArICAgICAgICAoVmVyc2lvbiwgVXBkYXRlSW1hZ2VUeXBlSWQsIFVwZGF0ZUltYWdlSW5k ZXgsIHIwLCByMSwgcjIsIFVwZGF0ZUltYWdlU2l6ZSwgVXBkYXRlVmVuZG9yQ29kZVNpemUsDQo+ IFVwZGF0ZUhhcmR3YXJlSW5zdGFuY2UsIEltYWdlQ2Fwc3VsZVN1cHBvcnQpID0gXA0KPiAgICAg ICAgICAgICAgc3RydWN0LnVucGFjayAoDQo+ICAgICAgICAgICAgICAgICAgICAgICBzZWxmLl9T dHJ1Y3RGb3JtYXQsDQo+ICAgICAgICAgICAgICAgICAgICAgICBCdWZmZXJbMDpzZWxmLl9TdHJ1 Y3RTaXplXQ0KPiBAQCAtMTA1LDYgKzExMiw3IEBAIGNsYXNzIEZtcENhcHN1bGVJbWFnZUhlYWRl ckNsYXNzIChvYmplY3QpOg0KPiAgICAgICAgICBzZWxmLlVwZGF0ZUltYWdlU2l6ZSAgICAgICAg PSBVcGRhdGVJbWFnZVNpemUNCj4gICAgICAgICAgc2VsZi5VcGRhdGVWZW5kb3JDb2RlU2l6ZSAg ID0gVXBkYXRlVmVuZG9yQ29kZVNpemUNCj4gICAgICAgICAgc2VsZi5VcGRhdGVIYXJkd2FyZUlu c3RhbmNlID0gVXBkYXRlSGFyZHdhcmVJbnN0YW5jZQ0KPiArICAgICAgICBzZWxmLkltYWdlQ2Fw c3VsZVN1cHBvcnQgICAgPSBJbWFnZUNhcHN1bGVTdXBwb3J0DQo+ICAgICAgICAgIHNlbGYuUGF5 bG9hZCAgICAgICAgICAgICAgICA9IEJ1ZmZlcltzZWxmLl9TdHJ1Y3RTaXplOnNlbGYuX1N0cnVj dFNpemUgKyBVcGRhdGVJbWFnZVNpemVdDQo+ICAgICAgICAgIHNlbGYuVmVuZG9yQ29kZUJ5dGVz ICAgICAgICA9IEJ1ZmZlcltzZWxmLl9TdHJ1Y3RTaXplICsgVXBkYXRlSW1hZ2VTaXplOl0NCj4g ICAgICAgICAgc2VsZi5fVmFsaWQgICAgICAgICAgICAgICAgID0gVHJ1ZQ0KPiBAQCAtMTE5LDYg KzEyNyw3IEBAIGNsYXNzIEZtcENhcHN1bGVJbWFnZUhlYWRlckNsYXNzIChvYmplY3QpOg0KPiAg ICAgICAgICBwcmludCAoJ0VGSV9GSVJNV0FSRV9NQU5BR0VNRU5UX0NBUFNVTEVfSU1BR0VfSEVB REVSLlVwZGF0ZUltYWdlU2l6ZSAgICAgICAgPSB7VXBkYXRlSW1hZ2VTaXplOjA4WH0nLmZvcm1h dA0KPiAoVXBkYXRlSW1hZ2VTaXplID0gc2VsZi5VcGRhdGVJbWFnZVNpemUpKQ0KPiAgICAgICAg ICBwcmludCAoJ0VGSV9GSVJNV0FSRV9NQU5BR0VNRU5UX0NBUFNVTEVfSU1BR0VfSEVBREVSLlVw ZGF0ZVZlbmRvckNvZGVTaXplICAgPSB7VXBkYXRlVmVuZG9yQ29kZVNpemU6MDhYfScuZm9ybWF0 DQo+IChVcGRhdGVWZW5kb3JDb2RlU2l6ZSA9IHNlbGYuVXBkYXRlVmVuZG9yQ29kZVNpemUpKQ0K PiAgICAgICAgICBwcmludCAoJ0VGSV9GSVJNV0FSRV9NQU5BR0VNRU5UX0NBUFNVTEVfSU1BR0Vf SEVBREVSLlVwZGF0ZUhhcmR3YXJlSW5zdGFuY2UgPQ0KPiB7VXBkYXRlSGFyZHdhcmVJbnN0YW5j ZTowMTZYfScuZm9ybWF0IChVcGRhdGVIYXJkd2FyZUluc3RhbmNlID0gc2VsZi5VcGRhdGVIYXJk d2FyZUluc3RhbmNlKSkNCj4gKyAgICAgICAgcHJpbnQgKCdFRklfRklSTVdBUkVfTUFOQUdFTUVO VF9DQVBTVUxFX0lNQUdFX0hFQURFUi5JbWFnZUNhcHN1bGVTdXBwb3J0ICAgID0ge0ltYWdlQ2Fw c3VsZVN1cHBvcnQ6MDE2WH0nLmZvcm1hdA0KPiAoSW1hZ2VDYXBzdWxlU3VwcG9ydCA9IHNlbGYu SW1hZ2VDYXBzdWxlU3VwcG9ydCkpDQo+ICAgICAgICAgIHByaW50ICgnc2l6ZW9mIChQYXlsb2Fk KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA9IHtT aXplOjA4WH0nLmZvcm1hdCAoU2l6ZSA9IGxlbg0KPiAoc2VsZi5QYXlsb2FkKSkpDQo+ICAgICAg ICAgIHByaW50ICgnc2l6ZW9mIChWZW5kb3JDb2RlQnl0ZXMpICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICA9IHtTaXplOjA4WH0nLmZvcm1hdCAoU2l6ZSA9IGxlbg0K PiAoc2VsZi5WZW5kb3JDb2RlQnl0ZXMpKSkNCj4gDQo+IEBAIC0xNTMsNiArMTYyLDggQEAgY2xh c3MgRm1wQ2Fwc3VsZUhlYWRlckNsYXNzIChvYmplY3QpOg0KPiAgICAgIF9JdGVtT2Zmc2V0U2l6 ZSAgID0gc3RydWN0LmNhbGNzaXplIChfSXRlbU9mZnNldEZvcm1hdCkNCj4gDQo+ICAgICAgRUZJ X0ZJUk1XQVJFX01BTkFHRU1FTlRfQ0FQU1VMRV9IRUFERVJfSU5JVF9WRVJTSU9OID0gMHgwMDAw MDAwMQ0KPiArICAgIENBUFNVTEVfU1VQUE9SVF9BVVRIRU5USUNBVElPTiA9IDB4MDAwMDAwMDAw MDAwMDAwMQ0KPiArICAgIENBUFNVTEVfU1VQUE9SVF9ERVBFTkRFTkNZICAgICA9IDB4MDAwMDAw MDAwMDAwMDAwMg0KPiANCj4gICAgICBkZWYgX19pbml0X18gKHNlbGYpOg0KPiAgICAgICAgICBz ZWxmLl9WYWxpZCAgICAgICAgICAgICAgICAgICAgID0gRmFsc2UNCj4gQEAgLTE3Miw4ICsxODMs OCBAQCBjbGFzcyBGbXBDYXBzdWxlSGVhZGVyQ2xhc3MgKG9iamVjdCk6DQo+ICAgICAgICAgICAg ICByYWlzZSBWYWx1ZUVycm9yDQo+ICAgICAgICAgIHJldHVybiBzZWxmLl9FbWJlZGRlZERyaXZl ckxpc3RbSW5kZXhdDQo+IA0KPiAtICAgIGRlZiBBZGRQYXlsb2FkIChzZWxmLCBVcGRhdGVJbWFn ZVR5cGVJZCwgUGF5bG9hZCA9IGInJywgVmVuZG9yQ29kZUJ5dGVzID0gYicnLCBIYXJkd2FyZUlu c3RhbmNlID0gMCwgVXBkYXRlSW1hZ2VJbmRleA0KPiA9IDEpOg0KPiAtICAgICAgICBzZWxmLl9Q YXlsb2FkTGlzdC5hcHBlbmQgKChVcGRhdGVJbWFnZVR5cGVJZCwgUGF5bG9hZCwgVmVuZG9yQ29k ZUJ5dGVzLCBIYXJkd2FyZUluc3RhbmNlLCBVcGRhdGVJbWFnZUluZGV4KSkNCj4gKyAgICBkZWYg QWRkUGF5bG9hZCAoc2VsZiwgVXBkYXRlSW1hZ2VUeXBlSWQsIFBheWxvYWQgPSBiJycsIFZlbmRv ckNvZGVCeXRlcyA9IGInJywgSGFyZHdhcmVJbnN0YW5jZSA9IDAsIFVwZGF0ZUltYWdlSW5kZXgN Cj4gPSAxLCBDYXBzdWxlU3VwcG9ydCA9IDApOg0KPiArICAgICAgICBzZWxmLl9QYXlsb2FkTGlz dC5hcHBlbmQgKChVcGRhdGVJbWFnZVR5cGVJZCwgUGF5bG9hZCwgVmVuZG9yQ29kZUJ5dGVzLCBI YXJkd2FyZUluc3RhbmNlLCBVcGRhdGVJbWFnZUluZGV4LA0KPiBDYXBzdWxlU3VwcG9ydCkpDQo+ IA0KPiAgICAgIGRlZiBHZXRGbXBDYXBzdWxlSW1hZ2VIZWFkZXIgKHNlbGYsIEluZGV4KToNCj4g ICAgICAgICAgaWYgSW5kZXggPj0gbGVuIChzZWxmLl9GbXBDYXBzdWxlSW1hZ2VIZWFkZXJMaXN0 KToNCj4gQEAgLTE5OCwxMyArMjA5LDE0IEBAIGNsYXNzIEZtcENhcHN1bGVIZWFkZXJDbGFzcyAo b2JqZWN0KToNCj4gICAgICAgICAgICAgIHNlbGYuX0l0ZW1PZmZzZXRMaXN0LmFwcGVuZCAoT2Zm c2V0KQ0KPiAgICAgICAgICAgICAgT2Zmc2V0ID0gT2Zmc2V0ICsgbGVuIChFbWJlZGRlZERyaXZl cikNCj4gICAgICAgICAgSW5kZXggPSAxDQo+IC0gICAgICAgIGZvciAoVXBkYXRlSW1hZ2VUeXBl SWQsIFBheWxvYWQsIFZlbmRvckNvZGVCeXRlcywgSGFyZHdhcmVJbnN0YW5jZSwgVXBkYXRlSW1h Z2VJbmRleCkgaW4gc2VsZi5fUGF5bG9hZExpc3Q6DQo+ICsgICAgICAgIGZvciAoVXBkYXRlSW1h Z2VUeXBlSWQsIFBheWxvYWQsIFZlbmRvckNvZGVCeXRlcywgSGFyZHdhcmVJbnN0YW5jZSwgVXBk YXRlSW1hZ2VJbmRleCwgQ2Fwc3VsZVN1cHBvcnQpIGluDQo+IHNlbGYuX1BheWxvYWRMaXN0Og0K PiAgICAgICAgICAgICAgRm1wQ2Fwc3VsZUltYWdlSGVhZGVyID0gRm1wQ2Fwc3VsZUltYWdlSGVh ZGVyQ2xhc3MgKCkNCj4gICAgICAgICAgICAgIEZtcENhcHN1bGVJbWFnZUhlYWRlci5VcGRhdGVJ bWFnZVR5cGVJZCAgICAgID0gVXBkYXRlSW1hZ2VUeXBlSWQNCj4gICAgICAgICAgICAgIEZtcENh cHN1bGVJbWFnZUhlYWRlci5VcGRhdGVJbWFnZUluZGV4ICAgICAgID0gVXBkYXRlSW1hZ2VJbmRl eA0KPiAgICAgICAgICAgICAgRm1wQ2Fwc3VsZUltYWdlSGVhZGVyLlBheWxvYWQgICAgICAgICAg ICAgICAgPSBQYXlsb2FkDQo+ICAgICAgICAgICAgICBGbXBDYXBzdWxlSW1hZ2VIZWFkZXIuVmVu ZG9yQ29kZUJ5dGVzICAgICAgICA9IFZlbmRvckNvZGVCeXRlcw0KPiAgICAgICAgICAgICAgRm1w Q2Fwc3VsZUltYWdlSGVhZGVyLlVwZGF0ZUhhcmR3YXJlSW5zdGFuY2UgPSBIYXJkd2FyZUluc3Rh bmNlDQo+ICsgICAgICAgICAgICBGbXBDYXBzdWxlSW1hZ2VIZWFkZXIuSW1hZ2VDYXBzdWxlU3Vw cG9ydCAgICA9IENhcHN1bGVTdXBwb3J0DQo+ICAgICAgICAgICAgICBGbXBDYXBzdWxlSW1hZ2Ug PSBGbXBDYXBzdWxlSW1hZ2VIZWFkZXIuRW5jb2RlICgpDQo+ICAgICAgICAgICAgICBGbXBDYXBz dWxlRGF0YSA9IEZtcENhcHN1bGVEYXRhICsgRm1wQ2Fwc3VsZUltYWdlDQo+IA0KPiAtLQ0KPiAy LjE3LjENCj4gDQo+IA0KPiANCj4gDQo+IA0KDQo=