From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by mx.groups.io with SMTP id smtpd.web10.2884.1610507072537941937 for ; Tue, 12 Jan 2021 19:04:32 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=wfrCKATr; spf=pass (domain: intel.com, ip: 192.55.52.43, mailfrom: zhichao.gao@intel.com) IronPort-SDR: W9RSaN+MxInwmnjjIM9tdq8PNoH5K+zz3/3UefvNdSqXn4MZxHGvxHhI4BkKKok4TilyWrCb+F /cpc4YvlvELg== X-IronPort-AV: E=McAfee;i="6000,8403,9862"; a="262927384" X-IronPort-AV: E=Sophos;i="5.79,343,1602572400"; d="scan'208";a="262927384" Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Jan 2021 19:04:31 -0800 IronPort-SDR: e0d1lwp6vPwhJWRRQmtMiVYazd3Mep21EbT5/Zfy/PDIBDP1FeJhJnUbvzKJWzenQA1iyeQ0Bp CSDNjqRJG/Yw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.79,343,1602572400"; d="scan'208";a="400390903" Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83]) by fmsmga002.fm.intel.com with ESMTP; 12 Jan 2021 19:04:29 -0800 Received: from fmsmsx608.amr.corp.intel.com (10.18.126.88) 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.1713.5; Tue, 12 Jan 2021 19:04:28 -0800 Received: from fmsmsx601.amr.corp.intel.com (10.18.126.81) by fmsmsx608.amr.corp.intel.com (10.18.126.88) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Tue, 12 Jan 2021 19:04:28 -0800 Received: from fmsedg602.ED.cps.intel.com (10.1.192.136) 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.1713.5 via Frontend Transport; Tue, 12 Jan 2021 19:04:28 -0800 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (104.47.70.100) by edgegateway.intel.com (192.55.55.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.1713.5; Tue, 12 Jan 2021 19:04:27 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=eo1giZswkugp1VdiQqBTSzC5m92M/l2TiBI/Hbm00Xl/5Jpx2WrY8Vr1KOr0+vReWNqIfZjcaNkQzTIHJ+2AQtET9EyLLvS1JI9oL0GapeDfXOOcI9UUyfCO0S09rkS8dGc6L5NNq0bmxNgUn3IF57kicyqsNq2/wVfJ/aXz0puSn6pXTUT8laHy4IdzuGouUFC0f5FXqlQ7Eb2U1KK147s5fYi5MaJ2MD4x/rIUbGOAm0p2KDr7/Uh2VgGHaQ0CJAe+WYT6L4EREXAXljXRSNrFkfMc6TguCKE4v5LgULLdoFXRJdrAZLQDvq9YamtII+zDEj3V6l6r4gy5e6z6vA== 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=bQtTlqEWWbMhuIe+2vyx0mq9eD93dUkLyO2h29fZOiI=; b=fEWOUmqSFkeQwLil/LPQ7AOZ79hb/LJPukhw3HNIr1MkrO9LI+vKv/Eo/a4e+QJu8iVJFQamkKnPlDFcB6sv1uBgUcEym0Wi/iaryl05AGZ5MhKHCZbWlsSTH6sIGuFAprSMM+rzv+PSg0Nx1BilTonibHrCg/xcGTV2bN0s+EbjC+Mc8dXfx9kAz+53qWKJwOj2wzbuyg6f/RLTwjmIP/zKOh9nOWXzPu0ATpdXKcZtku4VXGQzu6mPH1lGBVJvMGXzjUKaOFr39+bnooNQ0uF7086unOFP9eRI2bHqgZF2yj0eTu1kX86AINvVil2rl9tGiZ4v290Bs2qiNVUjXg== 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=bQtTlqEWWbMhuIe+2vyx0mq9eD93dUkLyO2h29fZOiI=; b=wfrCKATrOIaZjgFw1sz1P23WopMkbT4302ykVYeowB2YfJQwfuEmMQWx99gH/coGMLblr4OdajrtnRkUxaQYMazW9nVWJgbkBnpY3sB882fGvuPh3d6phAKMaKI6YEfYQStTaKKB7+N7TpxNRimE+IL2qwPxRD+4IFjue1xlLJo= Received: from MWHPR11MB1647.namprd11.prod.outlook.com (2603:10b6:301:d::12) by MW3PR11MB4748.namprd11.prod.outlook.com (2603:10b6:303:2e::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3742.6; Wed, 13 Jan 2021 03:04:26 +0000 Received: from MWHPR11MB1647.namprd11.prod.outlook.com ([fe80::c861:b9c1:b082:7c77]) by MWHPR11MB1647.namprd11.prod.outlook.com ([fe80::c861:b9c1:b082:7c77%8]) with mapi id 15.20.3742.012; Wed, 13 Jan 2021 03:04:26 +0000 From: "Gao, Zhichao" To: Laszlo Ersek , edk2-devel-groups-io CC: =?utf-8?B?UGhpbGlwcGUgTWF0aGlldS1EYXVkw6k=?= , "Ni, Ray" Subject: Re: [PATCH 6/8] ShellPkg/ShellProtocol: sort files by FullName in RemoveDupInFileList() Thread-Topic: [PATCH 6/8] ShellPkg/ShellProtocol: sort files by FullName in RemoveDupInFileList() Thread-Index: AQHW4rBUPkjrJbdGcEu5HxNJmawNgaok7DBQ Date: Wed, 13 Jan 2021 03:04:26 +0000 Message-ID: References: <20210104154235.31785-1-lersek@redhat.com> <20210104154235.31785-7-lersek@redhat.com> In-Reply-To: <20210104154235.31785-7-lersek@redhat.com> 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: redhat.com; dkim=none (message not signed) header.d=none;redhat.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.198.147.213] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 3939c81f-00f6-44a9-60ea-08d8b76ff004 x-ms-traffictypediagnostic: MW3PR11MB4748: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:3968; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: pUz34Y482x1Eo9u0ZFnvNAM1YDv9rHVvQfxvPZB/MhsttvrPsu8yVNflsVTu//bFSeU5yetHq+9EWTsXMDcQo0i8qCHlPrCVqenNySV+ecXpoyYOY1BdR2XRnRLa7X4K4R02+5KV4JAnbg8U8L/9xlT+q4njsz9nE8c+lwodLueoI4y/gDJT8oJDp9c6Isbsgs5Pn0Vpk7RNxPvocxBXsO6XzjK+dN1rnt+qds+bE8oDyOR/71BvBWtT7sjByqD/gGIZ2+ci+c8Syi/pcJoPfAQ+v22RyiobBMh8T+ZCnBOgwHZ1He1iYAV+M3qbQ0GPU/KIhSrScKo1csjQkv8otpguxksZwdZ7vDpiheXSqtELlw+BWWBpDSmnChXg/wTXevQ3QnkecsBm/qLd6c0BVexmevjtwWDvxMOFVfb0hJlCyVpasMHBDffn3XpfyRAo52+WPbBsNgX8ChrDD4M8LkxOMMIrIyQxDmA26S1KtNSn8G3WB73EYXx5ltzSvipIAfqYIah3s2hBj0QTE0/Aqw== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MWHPR11MB1647.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(6029001)(4636009)(366004)(376002)(396003)(346002)(39860400002)(136003)(4326008)(8676002)(55016002)(9686003)(71200400001)(107886003)(478600001)(66556008)(76116006)(54906003)(64756008)(316002)(966005)(7696005)(86362001)(66946007)(66446008)(186003)(26005)(66476007)(52536014)(83380400001)(2906002)(53546011)(110136005)(6506007)(5660300002)(8936002)(33656002)(403724002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: =?utf-8?B?QjUyNGFCRjlrRmFDVHpPaEZIZGEyOWMrV3lCdmQ4dFU3akg3U1Rmb25aRlpJ?= =?utf-8?B?VUtlR0lqK1d5ekl6bWNhQ1J0dDN6aCtwck1oN3hEeXRVbzI3QlJ6N3JFTExw?= =?utf-8?B?bmdOV1czL0pvRVVxR1lPaHkyWmdrRktUbGE1Q1B2RFRJc0RnVzAxN2VKZVE4?= =?utf-8?B?d2RuRzYxcy84MUk2Q29KaUdGMnhSUStZUjg0YlRBZ2hIcFAxWFZsV3V2T0RM?= =?utf-8?B?empaalVPVGV1RXViUzQzZVY3MFpzdjZiNi9DN3JWTTcxR01JRGRPeTJPWXZG?= =?utf-8?B?RzcyRE5MVHdjY1gyL21kVlFvK2NXVmlJSVlSQkpLUUlMUy9kcjB0L1MyYnQ4?= =?utf-8?B?dUc2TDM4eTVQVjVYSTFUN3dyaFpzZkxEUlNnSFlDbk0yYjAwU0E2Zitzek1N?= =?utf-8?B?S3VGQkxSVVk2emJycHpmR2MxMis5NkxsVW12OGlZdVFIb3pleGNrR2tmVXZ6?= =?utf-8?B?RTFFdS9KTXB4bXF5UnVsczBSemZydGdXR09ReU9BN2pVQ2p1UGIzQ20ycG9O?= =?utf-8?B?U2ZmZFhnL3JFbkNjT3lvV21KelBtTk5FbEd6d1Y2ZkwwcjFueGhJd3NqSUgr?= =?utf-8?B?VkRyRlh6TjZQMmZSSGhCMERDaEpBSnNSenQ3RmpUN1BJNEY0am94anU3RzRr?= =?utf-8?B?MG9QU2xFNXZqNEdoRDlZVzRzdXF6WkVCSVVMOEZ4SzlOL3JtZXBCZkMxckxr?= =?utf-8?B?MnRoUmNnV3p2SWdSeFNBTzJPZkRzd0hiVzlDZjVVZzhlTWxYMUQwc25RaGc5?= =?utf-8?B?Yjg1VEdESGE3WEp4RHJnY1lsbys3NVFtVTJXSTJLUUtRTU9ISnZ3OGwxSVZt?= =?utf-8?B?Szc3cVI1QkhyYm5PK1Nob3dNa01VQnZQSmY2RmVIZjQzRHl3QysxUXpoMXhk?= =?utf-8?B?Tm9ETWpxVTdUUWVJMVRSRWpXL2lzdXgzdGRla2RjRnFIWWFtT1JrSnF6N2RP?= =?utf-8?B?S1V4aHhGeDZqMFBKMnZxeHc1WlZrYVhEWDZsOVVnb0NScnorMFY5KzkxTFVJ?= =?utf-8?B?dUlGU211MDVRU1NHUDlIc3NGYkxTSWdwbXJWcU9aNUVjTDZNQ3ZxQ1lzc0Zw?= =?utf-8?B?N2tEOTB2Mi9Na0k2Rmg1QkdSQUo4N2FlWG9zMkR3TnRFYTQ0TlMxZkxKa0tv?= =?utf-8?B?RWZmR0tRbWh4VjJoUmlLbWdJbjdxVTlvemJ1azRBRytvYllpRFY1cm1RSVhu?= =?utf-8?B?ck9HTzU2SzVJMnYzOFBkRFl3TW1JeG5KUEpMVHFXRlpwSFkzYTdvTU5aWUFk?= =?utf-8?B?VlFOTHRwQk5XWGNVbFRxVG9uTlVvcmRSaGtNWVY4NXRBRTN0d3BNSHBwK2dW?= =?utf-8?Q?7v6KD8kk0jAwo=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MWHPR11MB1647.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3939c81f-00f6-44a9-60ea-08d8b76ff004 X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Jan 2021 03:04:26.8007 (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: pIpWiq4vsRD9I9ajg8DFCrEXvG3vgWKFX7HOzghhsWlF5BzT9ydIDY3hqxASRv7pNV418wEguiW+tGaN/G0w3Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW3PR11MB4748 Return-Path: zhichao.gao@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 UmV2aWV3ZWQtYnk6IFpoaWNoYW8gR2FvIDx6aGljaGFvLmdhb0BpbnRlbC5jb20+DQoNClRoYW5r cywNClpoaWNoYW8NCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBMYXN6 bG8gRXJzZWsgPGxlcnNla0ByZWRoYXQuY29tPg0KPiBTZW50OiBNb25kYXksIEphbnVhcnkgNCwg MjAyMSAxMTo0MyBQTQ0KPiBUbzogZWRrMi1kZXZlbC1ncm91cHMtaW8gPGRldmVsQGVkazIuZ3Jv dXBzLmlvPg0KPiBDYzogUGhpbGlwcGUgTWF0aGlldS1EYXVkw6kgPHBoaWxtZEByZWRoYXQuY29t PjsgTmksIFJheSA8cmF5Lm5pQGludGVsLmNvbT47DQo+IEdhbywgWmhpY2hhbyA8emhpY2hhby5n YW9AaW50ZWwuY29tPg0KPiBTdWJqZWN0OiBbUEFUQ0ggNi84XSBTaGVsbFBrZy9TaGVsbFByb3Rv Y29sOiBzb3J0IGZpbGVzIGJ5IEZ1bGxOYW1lIGluDQo+IFJlbW92ZUR1cEluRmlsZUxpc3QoKQ0K PiANCj4gVGhlIGN1cnJlbnQgaW1wbGVtZW50YXRpb24gb2YgRWZpU2hlbGxSZW1vdmVEdXBJbkZp bGVMaXN0KCk6DQo+IC0gaGFzIHF1YWRyYXRpYyB0aW1lIGNvbXBsZXhpdHksIGFzIGEgZGlzYWR2 YW50YWdlLCBhbmQNCj4gLSBuZWVkcyBubyBkeW5hbWljIG1lbW9yeSwgYXMgYW4gYWR2YW50YWdl Lg0KPiANCj4gQmVjYXVzZSB0aGUgVUVGSSBTaGVsbCBTcGVjIHJlcXVpcmVzDQo+IEVGSV9TSEVM TF9QUk9UT0NPTC5SZW1vdmVEdXBJbkZpbGVMaXN0KCkgdG8gc3VjY2VlZCBhdCBhbGwgdGltZXMs IGtlZXAgdGhlDQo+IGN1cnJlbnQgbWV0aG9kIGFzIGEgZmFsbGJhY2sgKGl0IGNhbm5vdCBmYWls IGR1ZSB0byBuZWVkaW5nIG5vIGR5bmFtaWMgbWVtb3J5KS4NCj4gDQo+IEhvd2V2ZXIsIGFzIGEg aGlnaGVyIHByaW9yaXR5IG9wdGlvbiwgY2FsbCB0aGUgbmV3IFNoZWxsU29ydEZpbGVMaXN0KCkg ZnVuY3Rpb24gYXQNCj4gZmlyc3QsIHNlcGFyYXRpbmcgb3V0IGFuZCByZWxlYXNpbmcgZHVwbGlj YXRlcy4NCj4gKFNoZWxsU29ydEZpbGVMaXN0KCkgY2FuIGZhaWwgZHVlIHRvIEVGSV9PVVRfT0Zf UkVTT1VSQ0VTLikNCj4gDQo+IEJleW9uZCBpbXByb3ZpbmcgdGhlIHJ1bnRpbWUgb2YgRWZpU2hl bGxSZW1vdmVEdXBJbkZpbGVMaXN0KCksIHRoaXMgY2hhbmdlIGhhcw0KPiB0aGUgZXh0cmVtZWx5 IGRlc2lyYWJsZSBlZmZlY3QgdGhhdCB0aGUgU2hlbGxPcGVuRmlsZU1ldGFBcmcoKSBmdW5jdGlv biBpbiB0aGUNCj4gU2hlbGxQa2cvTGlicmFyeS9VZWZpU2hlbGxMaWIgaW5zdGFuY2Ugd2lsbCBw cm9kdWNlIGZpbGUgbGlzdHMgdGhhdCBhcmUgc29ydGVkIGJ5DQo+IEZ1bGxOYW1lLg0KPiANCj4g Q29uc2VxdWVudGx5LCB3aGVuIHVzZWQgd2l0aCB3aWxkY2FyZHMsIHRoZSBBVFRSSUIsIENQLCBG T1IsIExPQUQsDQo+IExPQURQQ0lST00sIExTLCBNViwgUk0sIFRPVUNILCBUWVBFIGNvbW1hbmRz IHdpbGwgcHJvY2VzcyBmaWxlcyBpbg0KPiBGdWxsTmFtZSBvcmRlci4gKExTIGluIHJlY3Vyc2l2 ZSBtb2RlIHVzZXMgd2lsZGNhcmRzIGludGVybmFsbHkuKQ0KPiANCj4gQmVmb3JlOg0KPiANCj4g PiBGUzI6XD4gZGlyIC1yIC1zZm8gYXBwcw0KPiA+IFsuLi5dDQo+ID4gRmlsZUluZm8sIkZTMjpc YXBwc1wiDQo+ID4gRmlsZUluZm8sIkZTMjpcYXBwc1xYNjQiDQo+ID4gRmlsZUluZm8sIkZTMjpc YXBwc1xBQVJDSDY0Ig0KPiA+IEZpbGVJbmZvLCJGUzI6XCINCj4gPiBGaWxlSW5mbywiRlMyOlxh cHBzXElBMzIiDQo+ID4gRmlsZUluZm8sIkZTMjpcYXBwc1xYNjRcRHVtcER5blBjZC5lZmkiDQo+ ID4gRmlsZUluZm8sIkZTMjpcYXBwc1xYNjRcU21pSGFuZGxlclByb2ZpbGVJbmZvLmVmaSINCj4g PiBGaWxlSW5mbywiRlMyOlxhcHBzXFg2NFwiDQo+ID4gRmlsZUluZm8sIkZTMjpcYXBwc1xYNjRc VmFyaWFibGVJbmZvLmVmaSINCj4gPiBGaWxlSW5mbywiRlMyOlxhcHBzXFg2NFxNZW1vcnlQcm9m aWxlSW5mby5lZmkiDQo+ID4gRmlsZUluZm8sIkZTMjpcYXBwc1xYNjRcQWNwaVZpZXdBcHAuZWZp Ig0KPiA+IEZpbGVJbmZvLCJGUzI6XGFwcHNcWDY0XENwdWlkLmVmaSINCj4gPiBGaWxlSW5mbywi RlMyOlxhcHBzXCINCj4gPiBGaWxlSW5mbywiRlMyOlxhcHBzXEFBUkNINjRcRHVtcER5blBjZC5l ZmkiDQo+ID4gRmlsZUluZm8sIkZTMjpcYXBwc1xBQVJDSDY0XCINCj4gPiBGaWxlSW5mbywiRlMy OlxhcHBzXEFBUkNINjRcVmFyaWFibGVJbmZvLmVmaSINCj4gPiBGaWxlSW5mbywiRlMyOlxhcHBz XEFBUkNINjRcTWVtb3J5UHJvZmlsZUluZm8uZWZpIg0KPiA+IEZpbGVJbmZvLCJGUzI6XGFwcHNc QUFSQ0g2NFxBY3BpVmlld0FwcC5lZmkiDQo+ID4gRmlsZUluZm8sIkZTMjpcYXBwc1wiDQo+ID4g RmlsZUluZm8sIkZTMjpcYXBwc1xJQTMyXER1bXBEeW5QY2QuZWZpIg0KPiA+IEZpbGVJbmZvLCJG UzI6XGFwcHNcSUEzMlxTbWlIYW5kbGVyUHJvZmlsZUluZm8uZWZpIg0KPiA+IEZpbGVJbmZvLCJG UzI6XGFwcHNcSUEzMlwiDQo+ID4gRmlsZUluZm8sIkZTMjpcYXBwc1xJQTMyXFZhcmlhYmxlSW5m by5lZmkiDQo+ID4gRmlsZUluZm8sIkZTMjpcYXBwc1xJQTMyXE1lbW9yeVByb2ZpbGVJbmZvLmVm aSINCj4gPiBGaWxlSW5mbywiRlMyOlxhcHBzXElBMzJcQWNwaVZpZXdBcHAuZWZpIg0KPiA+IEZp bGVJbmZvLCJGUzI6XGFwcHNcSUEzMlxDcHVpZC5lZmkiDQo+ID4gRmlsZUluZm8sIkZTMjpcYXBw c1wiDQo+IA0KPiBBZnRlcjoNCj4gDQo+ID4gRlMyOlw+IGRpciAtciAtc2ZvIGFwcHMNCj4gPiBb Li4uXQ0KPiA+IEZpbGVJbmZvLCJGUzI6XCINCj4gPiBGaWxlSW5mbywiRlMyOlxhcHBzXCINCj4g PiBGaWxlSW5mbywiRlMyOlxhcHBzXEFBUkNINjQiDQo+ID4gRmlsZUluZm8sIkZTMjpcYXBwc1xJ QTMyIg0KPiA+IEZpbGVJbmZvLCJGUzI6XGFwcHNcWDY0Ig0KPiA+IEZpbGVJbmZvLCJGUzI6XGFw cHNcIg0KPiA+IEZpbGVJbmZvLCJGUzI6XGFwcHNcQUFSQ0g2NFwiDQo+ID4gRmlsZUluZm8sIkZT MjpcYXBwc1xBQVJDSDY0XEFjcGlWaWV3QXBwLmVmaSINCj4gPiBGaWxlSW5mbywiRlMyOlxhcHBz XEFBUkNINjRcRHVtcER5blBjZC5lZmkiDQo+ID4gRmlsZUluZm8sIkZTMjpcYXBwc1xBQVJDSDY0 XE1lbW9yeVByb2ZpbGVJbmZvLmVmaSINCj4gPiBGaWxlSW5mbywiRlMyOlxhcHBzXEFBUkNINjRc VmFyaWFibGVJbmZvLmVmaSINCj4gPiBGaWxlSW5mbywiRlMyOlxhcHBzXCINCj4gPiBGaWxlSW5m bywiRlMyOlxhcHBzXElBMzJcIg0KPiA+IEZpbGVJbmZvLCJGUzI6XGFwcHNcSUEzMlxBY3BpVmll d0FwcC5lZmkiDQo+ID4gRmlsZUluZm8sIkZTMjpcYXBwc1xJQTMyXENwdWlkLmVmaSINCj4gPiBG aWxlSW5mbywiRlMyOlxhcHBzXElBMzJcRHVtcER5blBjZC5lZmkiDQo+ID4gRmlsZUluZm8sIkZT MjpcYXBwc1xJQTMyXE1lbW9yeVByb2ZpbGVJbmZvLmVmaSINCj4gPiBGaWxlSW5mbywiRlMyOlxh cHBzXElBMzJcU21pSGFuZGxlclByb2ZpbGVJbmZvLmVmaSINCj4gPiBGaWxlSW5mbywiRlMyOlxh cHBzXElBMzJcVmFyaWFibGVJbmZvLmVmaSINCj4gPiBGaWxlSW5mbywiRlMyOlxhcHBzXCINCj4g PiBGaWxlSW5mbywiRlMyOlxhcHBzXFg2NFwiDQo+ID4gRmlsZUluZm8sIkZTMjpcYXBwc1xYNjRc QWNwaVZpZXdBcHAuZWZpIg0KPiA+IEZpbGVJbmZvLCJGUzI6XGFwcHNcWDY0XENwdWlkLmVmaSIN Cj4gPiBGaWxlSW5mbywiRlMyOlxhcHBzXFg2NFxEdW1wRHluUGNkLmVmaSINCj4gPiBGaWxlSW5m bywiRlMyOlxhcHBzXFg2NFxNZW1vcnlQcm9maWxlSW5mby5lZmkiDQo+ID4gRmlsZUluZm8sIkZT MjpcYXBwc1xYNjRcU21pSGFuZGxlclByb2ZpbGVJbmZvLmVmaSINCj4gPiBGaWxlSW5mbywiRlMy OlxhcHBzXFg2NFxWYXJpYWJsZUluZm8uZWZpIg0KPiANCj4gUmVnYXJkaW5nIExTIGluIG5vbi1T Rk8gbW9kZSwgdGhlIHN0YWJpbGl0eSBvZiBTaGVsbFNvcnRGaWxlTGlzdCgpIHNob3dzLg0KPiBU aGUgU2hlbGxTb3J0RmlsZUxpc3QoKSBjYWxsIGFkZGVkIHRvIExTIGluIHRoZSBwcmV2aW91cyBw YXRjaCByZS1zb3J0cyB0aGUgb3V0cHV0IG9mDQo+IFNoZWxsT3BlbkZpbGVNZXRhQXJnKCk7IGFu ZCBzbyB0aGlzIHBhdGNoIGltcHJvdmVzIHRoZSBvcmRlcmluZyBiZXR3ZWVuDQo+IGlkZW50aWNh bCBGaWxlTmFtZXM6DQo+IA0KPiBCZWZvcmU6DQo+IA0KPiA+IEZTMjpcPiBkaXIgLXIgYXBwcw0K PiA+IERpcmVjdG9yeSBvZjogRlMyOlxhcHBzXA0KPiA+IDAxLzAxLzE5NzAgIDAxOjAwIDxESVI+ IHIgICAgICAgICAgIDAgIC4NCj4gPiAwMS8wMS8xOTcwICAwMTowMCA8RElSPiByICAgICAgICAg ICAwICAuLg0KPiA+IDEyLzIyLzIwMjAgIDE3OjUzIDxESVI+ICAgICAgICAgNCwwOTYgIEFBUkNI NjQNCj4gPiAxMi8yMi8yMDIwICAxNzo1MyA8RElSPiAgICAgICAgIDQsMDk2ICBJQTMyDQo+ID4g MTIvMjIvMjAyMCAgMTc6NTMgPERJUj4gICAgICAgICA0LDA5NiAgWDY0DQo+ID4gICAgICAgICAg IDAgRmlsZShzKSAgICAgICAgICAgMCBieXRlcw0KPiA+ICAgICAgICAgICA1IERpcihzKQ0KPiA+ IERpcmVjdG9yeSBvZjogRlMyOlxhcHBzXFg2NFwNCj4gPiAwMS8wMS8xOTcwICAwMTowMCA8RElS PiByICAgICAgICAgICAwICAuDQo+ID4gMDEvMDEvMTk3MCAgMDE6MDAgPERJUj4gciAgICAgICAg ICAgMCAgLi4NCj4gPiAxMi8yMi8yMDIwICAxNzo1MyAgICAgICAgICAgICAxMjYsNjU2ICBBY3Bp Vmlld0FwcC5lZmkNCj4gPiAxMi8yMi8yMDIwICAxNzo1MyAgICAgICAgICAgICAgMzgsNzg0ICBD cHVpZC5lZmkNCj4gPiAxMi8yMi8yMDIwICAxNzo1MiAgICAgICAgICAgICAgMTgsNzUyICBEdW1w RHluUGNkLmVmaQ0KPiA+IDEyLzIyLzIwMjAgIDE3OjUyICAgICAgICAgICAgICAyNiwzMDQgIE1l bW9yeVByb2ZpbGVJbmZvLmVmaQ0KPiA+IDEyLzIyLzIwMjAgIDE3OjUyICAgICAgICAgICAgICAz NCwyNDAgIFNtaUhhbmRsZXJQcm9maWxlSW5mby5lZmkNCj4gPiAxMi8yMi8yMDIwICAxNzo1MiAg ICAgICAgICAgICAgMTEsNDU2ICBWYXJpYWJsZUluZm8uZWZpDQo+ID4gICAgICAgICAgIDYgRmls ZShzKSAgICAgMjU2LDE5MiBieXRlcw0KPiA+ICAgICAgICAgICAyIERpcihzKQ0KPiA+IERpcmVj dG9yeSBvZjogRlMyOlxhcHBzXEFBUkNINjRcDQo+ID4gMDEvMDEvMTk3MCAgMDE6MDAgPERJUj4g ciAgICAgICAgICAgMCAgLg0KPiA+IDAxLzAxLzE5NzAgIDAxOjAwIDxESVI+IHIgICAgICAgICAg IDAgIC4uDQo+ID4gMTIvMjIvMjAyMCAgMTc6NTMgICAgICAgICAgICAgMTM5LDI2NCAgQWNwaVZp ZXdBcHAuZWZpDQo+ID4gMTIvMjIvMjAyMCAgMTc6NTIgICAgICAgICAgICAgIDMyLDc2OCAgRHVt cER5blBjZC5lZmkNCj4gPiAxMi8yMi8yMDIwICAxNzo1MiAgICAgICAgICAgICAgNDAsOTYwICBN ZW1vcnlQcm9maWxlSW5mby5lZmkNCj4gPiAxMi8yMi8yMDIwICAxNzo1MiAgICAgICAgICAgICAg MjAsNDgwICBWYXJpYWJsZUluZm8uZWZpDQo+ID4gICAgICAgICAgIDQgRmlsZShzKSAgICAgMjMz LDQ3MiBieXRlcw0KPiA+ICAgICAgICAgICAyIERpcihzKQ0KPiA+IERpcmVjdG9yeSBvZjogRlMy OlxhcHBzXElBMzJcDQo+ID4gMDEvMDEvMTk3MCAgMDE6MDAgPERJUj4gciAgICAgICAgICAgMCAg Lg0KPiA+IDAxLzAxLzE5NzAgIDAxOjAwIDxESVI+IHIgICAgICAgICAgIDAgIC4uDQo+ID4gMTIv MjIvMjAyMCAgMTc6NTMgICAgICAgICAgICAgMTA1LDUzNiAgQWNwaVZpZXdBcHAuZWZpDQo+ID4g MTIvMjIvMjAyMCAgMTc6NTMgICAgICAgICAgICAgIDM2LDA5NiAgQ3B1aWQuZWZpDQo+ID4gMTIv MjIvMjAyMCAgMTc6NTIgICAgICAgICAgICAgIDE3LDM0NCAgRHVtcER5blBjZC5lZmkNCj4gPiAx Mi8yMi8yMDIwICAxNzo1MiAgICAgICAgICAgICAgMjQsMTkyICBNZW1vcnlQcm9maWxlSW5mby5l ZmkNCj4gPiAxMi8yMi8yMDIwICAxNzo1MiAgICAgICAgICAgICAgMzAsNzIwICBTbWlIYW5kbGVy UHJvZmlsZUluZm8uZWZpDQo+ID4gMTIvMjIvMjAyMCAgMTc6NTIgICAgICAgICAgICAgIDEwLDg4 MCAgVmFyaWFibGVJbmZvLmVmaQ0KPiA+ICAgICAgICAgICA2IEZpbGUocykgICAgIDIyNCw3Njgg Ynl0ZXMNCj4gPiAgICAgICAgICAgMiBEaXIocykNCj4gPg0KPiA+IEZTMjpcPiBkaXIgYXBwc1wq XCouZWZpDQo+ID4gRGlyZWN0b3J5IG9mOiBGUzI6XGFwcHNcKlwNCj4gPiAxMi8yMi8yMDIwICAx Nzo1MyAgICAgICAgICAgICAxMjYsNjU2ICBBY3BpVmlld0FwcC5lZmkNCj4gPiAxMi8yMi8yMDIw ICAxNzo1MyAgICAgICAgICAgICAxMzksMjY0ICBBY3BpVmlld0FwcC5lZmkNCj4gPiAxMi8yMi8y MDIwICAxNzo1MyAgICAgICAgICAgICAxMDUsNTM2ICBBY3BpVmlld0FwcC5lZmkNCj4gPiAxMi8y Mi8yMDIwICAxNzo1MyAgICAgICAgICAgICAgMzgsNzg0ICBDcHVpZC5lZmkNCj4gPiAxMi8yMi8y MDIwICAxNzo1MyAgICAgICAgICAgICAgMzYsMDk2ICBDcHVpZC5lZmkNCj4gPiAxMi8yMi8yMDIw ICAxNzo1MiAgICAgICAgICAgICAgMTgsNzUyICBEdW1wRHluUGNkLmVmaQ0KPiA+IDEyLzIyLzIw MjAgIDE3OjUyICAgICAgICAgICAgICAzMiw3NjggIER1bXBEeW5QY2QuZWZpDQo+ID4gMTIvMjIv MjAyMCAgMTc6NTIgICAgICAgICAgICAgIDE3LDM0NCAgRHVtcER5blBjZC5lZmkNCj4gPiAxMi8y Mi8yMDIwICAxNzo1MiAgICAgICAgICAgICAgMjYsMzA0ICBNZW1vcnlQcm9maWxlSW5mby5lZmkN Cj4gPiAxMi8yMi8yMDIwICAxNzo1MiAgICAgICAgICAgICAgNDAsOTYwICBNZW1vcnlQcm9maWxl SW5mby5lZmkNCj4gPiAxMi8yMi8yMDIwICAxNzo1MiAgICAgICAgICAgICAgMjQsMTkyICBNZW1v cnlQcm9maWxlSW5mby5lZmkNCj4gPiAxMi8yMi8yMDIwICAxNzo1MiAgICAgICAgICAgICAgMzQs MjQwICBTbWlIYW5kbGVyUHJvZmlsZUluZm8uZWZpDQo+ID4gMTIvMjIvMjAyMCAgMTc6NTIgICAg ICAgICAgICAgIDMwLDcyMCAgU21pSGFuZGxlclByb2ZpbGVJbmZvLmVmaQ0KPiA+IDEyLzIyLzIw MjAgIDE3OjUyICAgICAgICAgICAgICAxMSw0NTYgIFZhcmlhYmxlSW5mby5lZmkNCj4gPiAxMi8y Mi8yMDIwICAxNzo1MiAgICAgICAgICAgICAgMjAsNDgwICBWYXJpYWJsZUluZm8uZWZpDQo+ID4g MTIvMjIvMjAyMCAgMTc6NTIgICAgICAgICAgICAgIDEwLDg4MCAgVmFyaWFibGVJbmZvLmVmaQ0K PiA+ICAgICAgICAgIDE2IEZpbGUocykgICAgIDcxNCw0MzIgYnl0ZXMNCj4gPiAgICAgICAgICAg MCBEaXIocykNCj4gDQo+IEFmdGVyOg0KPiANCj4gPiBGUzI6XD4gZGlyIC1yIGFwcHMNCj4gPiBE aXJlY3Rvcnkgb2Y6IEZTMjpcYXBwc1wNCj4gPiAwMS8wMS8xOTcwICAwMTowMCA8RElSPiByICAg ICAgICAgICAwICAuDQo+ID4gMDEvMDEvMTk3MCAgMDE6MDAgPERJUj4gciAgICAgICAgICAgMCAg Li4NCj4gPiAxMi8yMi8yMDIwICAxNzo1MyA8RElSPiAgICAgICAgIDQsMDk2ICBBQVJDSDY0DQo+ ID4gMTIvMjIvMjAyMCAgMTc6NTMgPERJUj4gICAgICAgICA0LDA5NiAgSUEzMg0KPiA+IDEyLzIy LzIwMjAgIDE3OjUzIDxESVI+ICAgICAgICAgNCwwOTYgIFg2NA0KPiA+ICAgICAgICAgICAwIEZp bGUocykgICAgICAgICAgIDAgYnl0ZXMNCj4gPiAgICAgICAgICAgNSBEaXIocykNCj4gPiBEaXJl Y3Rvcnkgb2Y6IEZTMjpcYXBwc1xBQVJDSDY0XA0KPiA+IDAxLzAxLzE5NzAgIDAxOjAwIDxESVI+ IHIgICAgICAgICAgIDAgIC4NCj4gPiAwMS8wMS8xOTcwICAwMTowMCA8RElSPiByICAgICAgICAg ICAwICAuLg0KPiA+IDEyLzIyLzIwMjAgIDE3OjUzICAgICAgICAgICAgIDEzOSwyNjQgIEFjcGlW aWV3QXBwLmVmaQ0KPiA+IDEyLzIyLzIwMjAgIDE3OjUyICAgICAgICAgICAgICAzMiw3NjggIER1 bXBEeW5QY2QuZWZpDQo+ID4gMTIvMjIvMjAyMCAgMTc6NTIgICAgICAgICAgICAgIDQwLDk2MCAg TWVtb3J5UHJvZmlsZUluZm8uZWZpDQo+ID4gMTIvMjIvMjAyMCAgMTc6NTIgICAgICAgICAgICAg IDIwLDQ4MCAgVmFyaWFibGVJbmZvLmVmaQ0KPiA+ICAgICAgICAgICA0IEZpbGUocykgICAgIDIz Myw0NzIgYnl0ZXMNCj4gPiAgICAgICAgICAgMiBEaXIocykNCj4gPiBEaXJlY3Rvcnkgb2Y6IEZT MjpcYXBwc1xJQTMyXA0KPiA+IDAxLzAxLzE5NzAgIDAxOjAwIDxESVI+IHIgICAgICAgICAgIDAg IC4NCj4gPiAwMS8wMS8xOTcwICAwMTowMCA8RElSPiByICAgICAgICAgICAwICAuLg0KPiA+IDEy LzIyLzIwMjAgIDE3OjUzICAgICAgICAgICAgIDEwNSw1MzYgIEFjcGlWaWV3QXBwLmVmaQ0KPiA+ IDEyLzIyLzIwMjAgIDE3OjUzICAgICAgICAgICAgICAzNiwwOTYgIENwdWlkLmVmaQ0KPiA+IDEy LzIyLzIwMjAgIDE3OjUyICAgICAgICAgICAgICAxNywzNDQgIER1bXBEeW5QY2QuZWZpDQo+ID4g MTIvMjIvMjAyMCAgMTc6NTIgICAgICAgICAgICAgIDI0LDE5MiAgTWVtb3J5UHJvZmlsZUluZm8u ZWZpDQo+ID4gMTIvMjIvMjAyMCAgMTc6NTIgICAgICAgICAgICAgIDMwLDcyMCAgU21pSGFuZGxl clByb2ZpbGVJbmZvLmVmaQ0KPiA+IDEyLzIyLzIwMjAgIDE3OjUyICAgICAgICAgICAgICAxMCw4 ODAgIFZhcmlhYmxlSW5mby5lZmkNCj4gPiAgICAgICAgICAgNiBGaWxlKHMpICAgICAyMjQsNzY4 IGJ5dGVzDQo+ID4gICAgICAgICAgIDIgRGlyKHMpDQo+ID4gRGlyZWN0b3J5IG9mOiBGUzI6XGFw cHNcWDY0XA0KPiA+IDAxLzAxLzE5NzAgIDAxOjAwIDxESVI+IHIgICAgICAgICAgIDAgIC4NCj4g PiAwMS8wMS8xOTcwICAwMTowMCA8RElSPiByICAgICAgICAgICAwICAuLg0KPiA+IDEyLzIyLzIw MjAgIDE3OjUzICAgICAgICAgICAgIDEyNiw2NTYgIEFjcGlWaWV3QXBwLmVmaQ0KPiA+IDEyLzIy LzIwMjAgIDE3OjUzICAgICAgICAgICAgICAzOCw3ODQgIENwdWlkLmVmaQ0KPiA+IDEyLzIyLzIw MjAgIDE3OjUyICAgICAgICAgICAgICAxOCw3NTIgIER1bXBEeW5QY2QuZWZpDQo+ID4gMTIvMjIv MjAyMCAgMTc6NTIgICAgICAgICAgICAgIDI2LDMwNCAgTWVtb3J5UHJvZmlsZUluZm8uZWZpDQo+ ID4gMTIvMjIvMjAyMCAgMTc6NTIgICAgICAgICAgICAgIDM0LDI0MCAgU21pSGFuZGxlclByb2Zp bGVJbmZvLmVmaQ0KPiA+IDEyLzIyLzIwMjAgIDE3OjUyICAgICAgICAgICAgICAxMSw0NTYgIFZh cmlhYmxlSW5mby5lZmkNCj4gPiAgICAgICAgICAgNiBGaWxlKHMpICAgICAyNTYsMTkyIGJ5dGVz DQo+ID4gICAgICAgICAgIDIgRGlyKHMpDQo+ID4NCj4gPiBGUzI6XD4gZGlyIGFwcHNcKlwqLmVm aQ0KPiA+IERpcmVjdG9yeSBvZjogRlMyOlxhcHBzXCpcDQo+ID4gMTIvMjIvMjAyMCAgMTc6NTMg ICAgICAgICAgICAgMTM5LDI2NCAgQWNwaVZpZXdBcHAuZWZpDQo+ID4gMTIvMjIvMjAyMCAgMTc6 NTMgICAgICAgICAgICAgMTA1LDUzNiAgQWNwaVZpZXdBcHAuZWZpDQo+ID4gMTIvMjIvMjAyMCAg MTc6NTMgICAgICAgICAgICAgMTI2LDY1NiAgQWNwaVZpZXdBcHAuZWZpDQo+ID4gMTIvMjIvMjAy MCAgMTc6NTMgICAgICAgICAgICAgIDM2LDA5NiAgQ3B1aWQuZWZpDQo+ID4gMTIvMjIvMjAyMCAg MTc6NTMgICAgICAgICAgICAgIDM4LDc4NCAgQ3B1aWQuZWZpDQo+ID4gMTIvMjIvMjAyMCAgMTc6 NTIgICAgICAgICAgICAgIDMyLDc2OCAgRHVtcER5blBjZC5lZmkNCj4gPiAxMi8yMi8yMDIwICAx Nzo1MiAgICAgICAgICAgICAgMTcsMzQ0ICBEdW1wRHluUGNkLmVmaQ0KPiA+IDEyLzIyLzIwMjAg IDE3OjUyICAgICAgICAgICAgICAxOCw3NTIgIER1bXBEeW5QY2QuZWZpDQo+ID4gMTIvMjIvMjAy MCAgMTc6NTIgICAgICAgICAgICAgIDQwLDk2MCAgTWVtb3J5UHJvZmlsZUluZm8uZWZpDQo+ID4g MTIvMjIvMjAyMCAgMTc6NTIgICAgICAgICAgICAgIDI0LDE5MiAgTWVtb3J5UHJvZmlsZUluZm8u ZWZpDQo+ID4gMTIvMjIvMjAyMCAgMTc6NTIgICAgICAgICAgICAgIDI2LDMwNCAgTWVtb3J5UHJv ZmlsZUluZm8uZWZpDQo+ID4gMTIvMjIvMjAyMCAgMTc6NTIgICAgICAgICAgICAgIDMwLDcyMCAg U21pSGFuZGxlclByb2ZpbGVJbmZvLmVmaQ0KPiA+IDEyLzIyLzIwMjAgIDE3OjUyICAgICAgICAg ICAgICAzNCwyNDAgIFNtaUhhbmRsZXJQcm9maWxlSW5mby5lZmkNCj4gPiAxMi8yMi8yMDIwICAx Nzo1MiAgICAgICAgICAgICAgMjAsNDgwICBWYXJpYWJsZUluZm8uZWZpDQo+ID4gMTIvMjIvMjAy MCAgMTc6NTIgICAgICAgICAgICAgIDEwLDg4MCAgVmFyaWFibGVJbmZvLmVmaQ0KPiA+IDEyLzIy LzIwMjAgIDE3OjUyICAgICAgICAgICAgICAxMSw0NTYgIFZhcmlhYmxlSW5mby5lZmkNCj4gPiAg ICAgICAgICAxNiBGaWxlKHMpICAgICA3MTQsNDMyIGJ5dGVzDQo+ID4gICAgICAgICAgIDAgRGly KHMpDQo+IA0KPiBDYzogUGhpbGlwcGUgTWF0aGlldS1EYXVkw6kgPHBoaWxtZEByZWRoYXQuY29t Pg0KPiBDYzogUmF5IE5pIDxyYXkubmlAaW50ZWwuY29tPg0KPiBDYzogWmhpY2hhbyBHYW8gPHpo aWNoYW8uZ2FvQGludGVsLmNvbT4NCj4gUmVmOiBodHRwczovL2J1Z3ppbGxhLnRpYW5vY29yZS5v cmcvc2hvd19idWcuY2dpP2lkPTMxNTENCj4gU2lnbmVkLW9mZi1ieTogTGFzemxvIEVyc2VrIDxs ZXJzZWtAcmVkaGF0LmNvbT4NCj4gLS0tDQo+ICBTaGVsbFBrZy9BcHBsaWNhdGlvbi9TaGVsbC9T aGVsbFByb3RvY29sLmMgfCAxNiArKysrKysrKysrKysrKysrDQo+ICAxIGZpbGUgY2hhbmdlZCwg MTYgaW5zZXJ0aW9ucygrKQ0KPiANCj4gZGlmZiAtLWdpdCBhL1NoZWxsUGtnL0FwcGxpY2F0aW9u L1NoZWxsL1NoZWxsUHJvdG9jb2wuYw0KPiBiL1NoZWxsUGtnL0FwcGxpY2F0aW9uL1NoZWxsL1No ZWxsUHJvdG9jb2wuYw0KPiBpbmRleCA0ZTYzOWZlMzVlNGYuLmU3OWMzOTA1OGIzZSAxMDA2NDQN Cj4gLS0tIGEvU2hlbGxQa2cvQXBwbGljYXRpb24vU2hlbGwvU2hlbGxQcm90b2NvbC5jDQo+ICsr KyBiL1NoZWxsUGtnL0FwcGxpY2F0aW9uL1NoZWxsL1NoZWxsUHJvdG9jb2wuYw0KPiBAQCAtMTg1 NSw2ICsxODU1LDggQEAgRWZpU2hlbGxSZW1vdmVEdXBJbkZpbGVMaXN0KA0KPiAgICBJTiBFRklf U0hFTExfRklMRV9JTkZPICoqRmlsZUxpc3QNCj4gICAgKQ0KPiAgew0KPiArICBFRklfU1RBVFVT ICAgICAgICAgIFN0YXR1czsNCj4gKyAgRUZJX1NIRUxMX0ZJTEVfSU5GTyAqRHVwbGljYXRlczsN Cj4gICAgRUZJX1NIRUxMX0ZJTEVfSU5GTyAqU2hlbGxGaWxlTGlzdEl0ZW07DQo+ICAgIEVGSV9T SEVMTF9GSUxFX0lORk8gKlNoZWxsRmlsZUxpc3RJdGVtMjsNCj4gICAgRUZJX1NIRUxMX0ZJTEVf SU5GTyAqVGVtcE5vZGU7DQo+IEBAIC0xODYyLDYgKzE4NjQsMjAgQEAgRWZpU2hlbGxSZW1vdmVE dXBJbkZpbGVMaXN0KA0KPiAgICBpZiAoRmlsZUxpc3QgPT0gTlVMTCB8fCAqRmlsZUxpc3QgPT0g TlVMTCkgew0KPiAgICAgIHJldHVybiAoRUZJX0lOVkFMSURfUEFSQU1FVEVSKTsNCj4gICAgfQ0K PiArDQo+ICsgIFN0YXR1cyA9IFNoZWxsU29ydEZpbGVMaXN0ICgNCj4gKyAgICAgICAgICAgICBG aWxlTGlzdCwNCj4gKyAgICAgICAgICAgICAmRHVwbGljYXRlcywNCj4gKyAgICAgICAgICAgICBT aGVsbFNvcnRGaWxlTGlzdEJ5RnVsbE5hbWUNCj4gKyAgICAgICAgICAgICApOw0KPiArICBpZiAo IUVGSV9FUlJPUiAoU3RhdHVzKSkgew0KPiArICAgIEVmaVNoZWxsRnJlZUZpbGVMaXN0ICgmRHVw bGljYXRlcyk7DQo+ICsgICAgcmV0dXJuIEVGSV9TVUNDRVNTOw0KPiArICB9DQo+ICsgIC8vDQo+ ICsgIC8vIEZhbGwgYmFjayB0byB0aGUgc2xvdyBtZXRob2QgdGhhdCBuZWVkcyBubyBleHRyYSBt ZW1vcnksIGFuZCBzbw0KPiArIGNhbm5vdCAgLy8gZmFpbC4NCj4gKyAgLy8NCj4gICAgZm9yICgg U2hlbGxGaWxlTGlzdEl0ZW0gPSAoRUZJX1NIRUxMX0ZJTEVfSU5GTyopR2V0Rmlyc3ROb2RlKCYo KkZpbGVMaXN0KS0+TGluaykNCj4gICAgICAgIDsgIUlzTnVsbCgmKCpGaWxlTGlzdCktPkxpbmss ICZTaGVsbEZpbGVMaXN0SXRlbS0+TGluaykNCj4gICAgICAgIDsgU2hlbGxGaWxlTGlzdEl0ZW0g PSAoRUZJX1NIRUxMX0ZJTEVfSU5GTyopR2V0TmV4dE5vZGUoJigqRmlsZUxpc3QpLT5MaW5rLA0K PiAmU2hlbGxGaWxlTGlzdEl0ZW0tPkxpbmspDQo+IC0tDQo+IDIuMTkuMS4zLmczMDI0N2FhNWQy MDENCj4gDQoNCg==