From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.93]) by sourceware.org (Postfix) with ESMTPS id 7AF863858C98 for ; Mon, 25 Dec 2023 06:14:40 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 7AF863858C98 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=intel.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 7AF863858C98 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=192.55.52.93 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1703484883; cv=pass; b=kNFxPeyMJH1XuzxDmoFrqjPrZhouBf4CKitVnnL08F45ADoDO3/c3oS95BCguY+ezkUdPi9fBJJAEzCD4zyJI5kwRkNNW+I6CyEhJ5inGO0SUpY7fkbAauLMF9B/sWTsVZsqLOvVPdpzPBg8UqKJvgaa1YPih2kD5ecCCPuhBmI= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1703484883; c=relaxed/simple; bh=CXSqx49oWKRwXfelqAFAFgF1ieQEh3jH1VtUH59DpTU=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=CewyEO4Ybb5ctXX3PU9BP5IpGtuHeLYqWWHKqKKCd/8aiQlBNo8ZzHcmrubwNIXNDVaPVlCE0TeJFIt2ttFHrarfZU2OBTx1uGPwKQ/UOQ7VW8KdKhNvBfvbl/EdFsOINQbJqcB4XDXhhiy9I/wgeN089t9zbE52Z7g+pxqlLpU= ARC-Authentication-Results: i=2; server2.sourceware.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1703484880; x=1735020880; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=CXSqx49oWKRwXfelqAFAFgF1ieQEh3jH1VtUH59DpTU=; b=Y9biYMjnGZ7DjQSCaiSQbK6DdYmH7fG30Aszppk0IpULe9E48Rv4CDrg fEynwPXtRMbNAMNmNKCPdZs2xaSyl5y7MqAGNLqQbZfpPKwqKim67OZOR LtPOR6mAWxqGq6HWu0KUFnPVsUJBzH2DWIz0Z/Sjei4Lrn7go8lEACeV8 BEkPBCJc03FMa8769g4t5PQmYTLYuisJUw0gXBXDZ/IWaKvu9vxZoYijl LULdMgTTceOxew1umM2l+tGQLiv0D5+aIdhZQFsiWVSz8fAhYprEgRSQ0 iTbmo8F1M3foT/K9el/BzsF4QBLrxC039AQsn6tbO/MEC+dpEB+P9jobi w==; X-IronPort-AV: E=McAfee;i="6600,9927,10934"; a="393430375" X-IronPort-AV: E=Sophos;i="6.04,302,1695711600"; d="scan'208";a="393430375" Received: from orviesa001.jf.intel.com ([10.64.159.141]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 24 Dec 2023 22:14:38 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.04,302,1695711600"; d="scan'208";a="25989214" Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by orviesa001.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 24 Dec 2023 22:14:38 -0800 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) 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.2507.35; Sun, 24 Dec 2023 22:14:37 -0800 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by ORSMSX610.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35; Sun, 24 Dec 2023 22:14:37 -0800 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx610.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.35 via Frontend Transport; Sun, 24 Dec 2023 22:14:37 -0800 Received: from NAM02-SN1-obe.outbound.protection.outlook.com (104.47.57.41) 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.2507.35; Sun, 24 Dec 2023 22:14:31 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RJbaydUqNp7h4mrmMghlz74lUhQIaeQun+Q6YcwIDJN42Eq07q2x9LBxVgtaAGq/K2Odv9oOCNU2V3n8goG/E6corlx046c5/XOtpBIhYuBCNg/HsSHeIo8U0yrJMvLX9TV6Rs37LIU14JZSpxHb9Oyot6KSlK2EGrsnAVQP1z7J4wdfCuH+ePjTI08TTZxYeuIJRnPDV8yid2e2szAEmn7nvch5ebSfRaObFz+qUCJYbhoxtqJ82BH+yjjiEN+zcBoiRLhlMhTVK+wKSa2Ig+bFTn2mlsu8O9khgZD5qzhCg9s0TSfRo5Rs8xTb8+6uVdHBnmyMJcxYdSxfwv/HDA== 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=CXSqx49oWKRwXfelqAFAFgF1ieQEh3jH1VtUH59DpTU=; b=lEOd/u152slnlhG3t2d01sUXlHdhqACjQYvQAhvwoFyUgaXNIASFnbZyUSkG1c0j+K9AeARRuOtGJsCwe2d18SHU3Y5i8VRkScpNJO5YRnbI2G6x2qnQsm+101vnUNTSLdz2CJNni9P9NjFHQlsKtraeKtAX00qFkwGcticuY040+E4zmqIcm/2yxaUCSzRI1BehjppdmOUaa8exonXlbh5moIXSfj8mpejDitsf6v1c4jlHbHplIQ7XL3cqZFtCbBnKcRsdvcfPqqdMGZew3CwSjxKu0S0syquEXqVRiVZxejJOvj15DJH49EQw5Vp8KySTAR1oiGeQqajb2ygSCw== 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 SJ0PR11MB5600.namprd11.prod.outlook.com (2603:10b6:a03:3ab::16) by SN7PR11MB6850.namprd11.prod.outlook.com (2603:10b6:806:2a2::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7113.26; Mon, 25 Dec 2023 06:14:29 +0000 Received: from SJ0PR11MB5600.namprd11.prod.outlook.com ([fe80::f925:7c4b:8747:4549]) by SJ0PR11MB5600.namprd11.prod.outlook.com ([fe80::f925:7c4b:8747:4549%3]) with mapi id 15.20.7113.026; Mon, 25 Dec 2023 06:14:28 +0000 From: "Cui, Lili" To: "Beulich, Jan" CC: "Lu, Hongjiu" , "binutils@sourceware.org" Subject: RE: [PATCH v4 1/9] Support APX GPR32 with rex2 prefix Thread-Topic: [PATCH v4 1/9] Support APX GPR32 with rex2 prefix Thread-Index: AQHaMnTdAIV4vMtoGka1SE1LjtnvVLC1St6AgAP0GEA= Date: Mon, 25 Dec 2023 06:14:28 +0000 Message-ID: References: <20231219121218.974012-1-lili.cui@intel.com> <20231219121218.974012-2-lili.cui@intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: SJ0PR11MB5600:EE_|SN7PR11MB6850:EE_ x-ms-office365-filtering-correlation-id: a797b18e-30e4-4abf-320b-08dc0510c01c 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: xz6/iQLmIZNqVh8+SmxlrI1h4Tu1qakuWzAJXeRoyBrsfc7SvZQd1H7YMPJa2+ANAW9eG7DZsNOlJMfsCAJ1ELcz6dAxSHuY8AxoX0NunM1IAmJCHYcldwx1FUx9W567FZ9TsM+ZGQarH1gNmKbULQYIPUn8CescZnadlMWsn8nRI9RGsnmKJSvoWpbMmfp7I4Tkse894w6j/U4NRYUJmrB+zMgzJ+mqTlwmq+hi6Q2zM54zdn95SdP77Y8nwWVQv88cEraiisSe7txh/O2BR0F2945IG3pv5/ifdlX+C8fUQ2kSX7IAGESCHtUyZBosJIRxzHUFCPLw4fR0eLWS/KM0Uj/MN5bcJDgvSDY7dSvQ2iDeXQYvcChF9CVZzff5kWa7XqfQRaHbNfZskOCbt7W5w0kRRAtAws7Xyp/0KcFiluxoTDw6qcfVMhKUOnT3I7dY//tVXVCziR3gQA5Espi5PsCBd3/grkf30j/JD0svAwwTsDJKs4bj3R+oTzTI4EzzLiFGlQuZ5JOOLYHYShgI7LajXUYSL9SRqOwOTJVEGjSzu/CedGPm+m0YXESooB9R85B6xnXavp/roZgabCkljYCSUw2KAdJmcayEpb2X3XFMRcMy15iso04unYLT x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR11MB5600.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(396003)(39860400002)(376002)(366004)(136003)(346002)(230922051799003)(64100799003)(451199024)(1800799012)(186009)(76116006)(86362001)(53546011)(9686003)(6506007)(478600001)(7696005)(71200400001)(26005)(6916009)(2906002)(64756008)(66446008)(66476007)(66556008)(66946007)(52536014)(8676002)(8936002)(316002)(54906003)(4326008)(5660300002)(66899024)(122000001)(41300700001)(82960400001)(38100700002)(33656002)(38070700009)(55016003);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?VE1MMUVySWpaQ0lVb1M2cWdKMTlWc1h2VlVMdUNjUWVpT2Vjd0JQRjZ1SW1p?= =?utf-8?B?NXJYNEtSa25MYnU3RCtDMDQwMlhrQ3FBZDVQQkszV1ZSNEFKN2xJQW5tZFBG?= =?utf-8?B?NjMrUVRJSzlHcW5yOU1MUm9Wa3o3NlpvMHcyN2ZaZi9EWC9rMW9BYmxUbXNa?= =?utf-8?B?QmlMMzRRNENKOXhQTDJ0RFdzZzdpQ0R1QWVaZzEzRG9MemMvcXhmWmhTcVhk?= =?utf-8?B?UGpZR1IxZ1JEZGZjbDZFMlhNK1N5K09kZkR4T09YblYyME5DSVZMSjl0amF4?= =?utf-8?B?Q1lmZ0YzeTdvUmJFUkNXL1hKWUhpM3J3T1hsL0orcjhPcVB3NEQrbzNiM1p1?= =?utf-8?B?emw2QnpDTEduRThSRHlaM2M4cGdLQTBxYTNMWTRWRkJpTjVSVHJGdTluSklD?= =?utf-8?B?L3VDTnk2anh4azJSVmxybGw3Q1ZQZXM1a1BkSEsyOWpqZnk5TmU4VXA3SS9v?= =?utf-8?B?S3pySmQ5bXF0WGJJNk5BS3FJVXI3eEh5QWh6K0REMFN1WG9sVFNoZ2FoQm1C?= =?utf-8?B?QVFBZHFWb3N5ZU5SREdUb2RxVEtzY3JyanFjYzNYdlg4Y1VwdXQxT08rVjNv?= =?utf-8?B?UVp4Z2crTlhvWDVqcjBFUHl6b2FBU250SHdROEMxVU9zaVpsN2ZYb3JpSjI3?= =?utf-8?B?VDZ4d3lVQm9jWkR1UDc1MFYvUG9KOVI1NGxCQ25VMUZwc3FFU2Vtcmk1d0ZZ?= =?utf-8?B?YWNvVmtVcDhxV0tXRFZPamlLcGVwb0U0RDEzelBjT3EzWE1zY3FBYW1HRUFK?= =?utf-8?B?UkFjUWM4RjhURVBjS1Mrdllrc3R5cE9KVnovbDVkNVBka3ZLNzd6cmdKN3cv?= =?utf-8?B?Mis5Z2xCalVGRmh6SjNuZWhYd25DRXc5SUNLVWoxemVzcXdXN1A2VE9kdVkz?= =?utf-8?B?dWN1MU41VDk0TW1zb3dlU3YySkVmVlMyY1MyK1p0MHdaUU1QUXZ5UFlUeHND?= =?utf-8?B?dTBDVWM3T1lBVkdQb21Ec0xHN3JJbEFQbXM2eWNjUlp1TVFDQ1ZXM0tVR1Fz?= =?utf-8?B?ZFA4STJleGFiNCtIUVBESERVL1ZINHF5MFZNWEhMekxJUXR1K3ZjM2VzRDZP?= =?utf-8?B?N0c5MUdKU1pnazJVQzdwOC9FdmFmUE1zRi9EUnBKVVFJajZ6QmRPUnRzSUp5?= =?utf-8?B?U0lLQVZEYUYxNGMxVE9NT0ljZzdNVDVsbEM0V3lZV1V2QWNXTkJuMmNSM2ZO?= =?utf-8?B?U3cxL0d4QTZmVmp4L2drR2IxMjZ1dnAvbTNPVE9MQkxNRUhaMzRhZmx1K3Mx?= =?utf-8?B?clk1aTdxREtGajBXazZ4TUlXSlROa2poMHIvNGJUczB4c2dWemtBV3I3WEVS?= =?utf-8?B?UU9xUFFKcDZoNlh1NmE3dGZYWlA0eDNKQkZERGVCUjdrM0l1RmhubFpYdndC?= =?utf-8?B?MTREVHB1cHp1eUt6ckhQaHRlN3dLRkpXamVTeUFjdzg1VEVwWklzWFEva04v?= =?utf-8?B?cjZGbktxcUNwZjJPaWd3blhQQmluMG1JMWxNYVU1YXZKK00wK0QyZTNrVFhO?= =?utf-8?B?L0I2Z0FiRDhTalVpQ0pTSmpjWUU5YXh5ZHZKS0kyQVFhdHVVTEdSbkd1UUwy?= =?utf-8?B?M0s3NEdxZUY0Ly82YytIOG03Y2d6L2x3Kzd5YnliUUJnMk5OclpPYXg5TWZ4?= =?utf-8?B?WFlCcGRKV1BKNklkdDZwVUEwRHdKa0R1bFBGNXR3WEc2SzZpcXBNeW1iRVBT?= =?utf-8?B?STc3dnpOUUcxTEFlRGQ1Nk9CMDc1d1l0OXVRcGJySHVJdURmRFdrQS9obDVB?= =?utf-8?B?Zk9aZEJFU2h1UVpSVDRSVURSaGxWa3NUbml5WGdsVkw5NjMxZ3l1UWF1Qisr?= =?utf-8?B?c0NIemZvTXJYbXU0bVlZUklQd0pWMzQ1MUFsMVd2R1F5OXBjNzJYMHhLWVlX?= =?utf-8?B?ek5TTXl1aU0ySFRNUjRVSmRBQUhhaTV6Q2JSVU5BOWxUVTRZMTRwZE9tSXNs?= =?utf-8?B?NEM0MTNBd0h4VmdOZDd5Mk00UEhJZG1Sa1J5Yk93dFBmVHlwb09zZlc3QUE3?= =?utf-8?B?Z2pWK2ZCTFA0eW1FbEhGZllsQnNpR2pJYXpuZHBEaCtYam1XdnJObExDTjV2?= =?utf-8?B?eWtQT1FRcmlDTzlmQ0kxTFcrMURwdXRLUTVvOGkvYUMrS0kxbVNXVXFNY2FE?= =?utf-8?Q?RwsI=3D?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: SJ0PR11MB5600.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a797b18e-30e4-4abf-320b-08dc0510c01c X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Dec 2023 06:14:28.0370 (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: LuTy6XnGarB1BA4/F/phgNdioYozZF0eJXzn8LiesVxbtvCZO630uUxyVWnNJS02gFwVGqNYHvNdWI//QADKYw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR11MB6850 X-OriginatorOrg: intel.com X-Spam-Status: No, score=-6.0 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SPF_HELO_NONE,SPF_NONE,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: PiBPbiAxOS4xMi4yMDIzIDEzOjEyLCBDdWksIExpbGkgd3JvdGU6DQo+ID4gQEAgLTUyODMsNiAr NTMyMSw5IEBAIG1kX2Fzc2VtYmxlIChjaGFyICpsaW5lKQ0KPiA+ICAJY2FzZSB1bnN1cHBvcnRl ZF9zeW50YXg6DQo+ID4gIAkgIGVycl9tc2cgPSBfKCJ1bnN1cHBvcnRlZCBzeW50YXgiKTsNCj4g PiAgCSAgYnJlYWs7DQo+ID4gKwljYXNlIHVuc3VwcG9ydGVkX0VHUFJfZm9yX2FkZHJlc3Npbmc6 DQo+ID4gKwkgIGVycl9tc2cgPSBfKCJleHRlbmRlZCBHUFIgY2Fubm90IGJlIHVzZWQgYXMgYmFz ZS9pbmRleCIpOw0KPiA+ICsJICBicmVhazsNCj4gDQo+IFdoaWxlIHRoaXMgb25lJ3Mgbm93IHN1 aXRhYmxlIGZvciB0aGUgYXNfYmFkKCkgYmVsb3cgdGhlIHN3aXRjaCwgLi4uDQo+IA0KPiA+IEBA IC01MzM2LDYgKzUzNzcsOSBAQCBtZF9hc3NlbWJsZSAoY2hhciAqbGluZSkNCj4gPiAgCWNhc2Ug aW52YWxpZF9kZXN0X2FuZF9zcmNfcmVnaXN0ZXJfc2V0Og0KPiA+ICAJICBlcnJfbXNnID0gXygi ZGVzdGluYXRpb24gYW5kIHNvdXJjZSByZWdpc3RlcnMgbXVzdCBiZSBkaXN0aW5jdCIpOw0KPiA+ ICAJICBicmVhazsNCj4gPiArCWNhc2UgaW52YWxpZF9wc2V1ZG9fcHJlZml4Og0KPiA+ICsJICBl cnJfbXNnID0gXygicmV4MiBwc2V1ZG8gcHJlZml4IGNhbm5vdCBiZSB1c2VkIGhlcmUiKTsNCj4g PiArCSAgYnJlYWs7DQo+IA0KPiAuLi4gdGhpcyBvbmUgc3RpbGwgZG9lc24ndCByZWFsbHkgZml0 IHRoZSAiLi4uIGZvciBgPGluc24+JyIgdGhlcmUuIEF0IGxlYXN0IHRoZSAiaGVyZSINCj4gbmVl ZHMgZHJvcHBpbmcuDQo+IA0KQ2hhbmdlZCB0byA6DQoNCiJyZXgyIHBzZXVkbyBwcmVmaXggY2Fu bm90IGJlIHVzZWQiDQoNCj4gPiBAQCAtNTYzMCwxMSArNTY4MSwxMiBAQCBtZF9hc3NlbWJsZSAo Y2hhciAqbGluZSkNCj4gPiAgCSAgJiYgKGkub3BbMV0ucmVncy0+cmVnX2ZsYWdzICYgUmVnUmV4 NjQpICE9IDApDQo+ID4gICAgICAgIHx8ICgoKGkudHlwZXNbMF0uYml0ZmllbGQuY2xhc3MgPT0g UmVnICYmIGkudHlwZXNbMF0uYml0ZmllbGQuYnl0ZSkNCj4gPiAgCSAgIHx8IChpLnR5cGVzWzFd LmJpdGZpZWxkLmNsYXNzID09IFJlZyAmJiBpLnR5cGVzWzFdLmJpdGZpZWxkLmJ5dGUpKQ0KPiA+ IC0JICAmJiBpLnJleCAhPSAwKSkNCj4gPiArCSAgJiYgKGkucmV4ICE9IDAgfHwgaS5yZXgyICE9 IDApKSkNCj4gPiAgICAgIHsNCj4gPiAgICAgICAgaW50IHg7DQo+ID4NCj4gPiAtICAgICAgaS5y ZXggfD0gUkVYX09QQ09ERTsNCj4gPiArICAgICAgaWYgKCFpc19hcHhfcmV4Ml9lbmNvZGluZyAo KSAmJiAhaXNfYW55X3ZleF9lbmNvZGluZygmaS50bSkpDQo+ID4gKwlpLnJleCB8PSBSRVhfT1BD T0RFOw0KPiA+ICAgICAgICBmb3IgKHggPSAwOyB4IDwgMjsgeCsrKQ0KPiA+ICAJew0KPiA+ICAJ ICAvKiBMb29rIGZvciA4IGJpdCBvcGVyYW5kIHRoYXQgdXNlcyBvbGQgcmVnaXN0ZXJzLiAgKi8g QEAgLTU2NDUsNw0KPiA+ICs1Njk3LDcgQEAgbWRfYXNzZW1ibGUgKGNoYXIgKmxpbmUpDQo+ID4g IAkgICAgICAvKiBJbiBjYXNlIGl0IGlzICJoaSIgcmVnaXN0ZXIsIGdpdmUgdXAuICAqLw0KPiA+ ICAJICAgICAgaWYgKGkub3BbeF0ucmVncy0+cmVnX251bSA+IDMpDQo+ID4gIAkJYXNfYmFkIChf KCJjYW4ndCBlbmNvZGUgcmVnaXN0ZXIgJyVzJXMnIGluIGFuICINCj4gPiAtCQkJICAiaW5zdHJ1 Y3Rpb24gcmVxdWlyaW5nIFJFWCBwcmVmaXguIiksDQo+ID4gKwkJCSAgImluc3RydWN0aW9uIHJl cXVpcmluZyBSRVgvUkVYMiBwcmVmaXguIiksDQo+ID4gIAkJCXJlZ2lzdGVyX3ByZWZpeCwgaS5v cFt4XS5yZWdzLT5yZWdfbmFtZSk7DQo+ID4NCj4gPiAgCSAgICAgIC8qIE90aGVyd2lzZSBpdCBp cyBlcXVpdmFsZW50IHRvIHRoZSBleHRlbmRlZCByZWdpc3Rlci4NCj4gPiBAQCAtNTY1NywxMSAr NTcwOSwxMSBAQCBtZF9hc3NlbWJsZSAoY2hhciAqbGluZSkNCj4gPiAgCX0NCj4gPiAgICAgIH0N Cj4gPg0KPiA+IC0gIGlmIChpLnJleCA9PSAwICYmIGkucmV4X2VuY29kaW5nKQ0KPiA+ICsgIGlm IChpLnJleCA9PSAwICYmIGkucmV4MiA9PSAwICYmIChpLnJleF9lbmNvZGluZyB8fA0KPiA+ICsg aS5yZXgyX2VuY29kaW5nKSkNCj4gPiAgICAgIHsNCj4gPiAgICAgICAgLyogQ2hlY2sgaWYgd2Ug Y2FuIGFkZCBhIFJFWF9PUENPREUgYnl0ZS4gIExvb2sgZm9yIDggYml0IG9wZXJhbmQNCj4gPiAg CSB0aGF0IHVzZXMgbGVnYWN5IHJlZ2lzdGVyLiAgSWYgaXQgaXMgImhpIiByZWdpc3RlciwgZG9u J3QgYWRkDQo+ID4gLQkgdGhlIFJFWF9PUENPREUgYnl0ZS4gICovDQo+ID4gKwkgcmV4IGFuZCBy ZXgyIHByZWZpeC4gICovDQo+ID4gICAgICAgIGludCB4Ow0KPiA+ICAgICAgICBmb3IgKHggPSAw OyB4IDwgMjsgeCsrKQ0KPiA+ICAJaWYgKGkudHlwZXNbeF0uYml0ZmllbGQuY2xhc3MgPT0gUmVn IEBAIC01NjcxLDYgKzU3MjMsNyBAQA0KPiA+IG1kX2Fzc2VtYmxlIChjaGFyICpsaW5lKQ0KPiA+ ICAJICB7DQo+ID4gIAkgICAgZ2FzX2Fzc2VydCAoIShpLm9wW3hdLnJlZ3MtPnJlZ19mbGFncyAm IFJlZ1JleCkpOw0KPiA+ICAJICAgIGkucmV4X2VuY29kaW5nID0gZmFsc2U7DQo+ID4gKwkgICAg aS5yZXgyX2VuY29kaW5nID0gZmFsc2U7DQo+ID4gIAkgICAgYnJlYWs7DQo+ID4gIAkgIH0NCj4g Pg0KPiA+IEBAIC01Njc4LDcgKzU3MzEsMTMgQEAgbWRfYXNzZW1ibGUgKGNoYXIgKmxpbmUpDQo+ ID4gIAlpLnJleCA9IFJFWF9PUENPREU7DQo+ID4gICAgICB9DQo+ID4NCj4gPiAtICBpZiAoaS5y ZXggIT0gMCkNCj4gPiArICBpZiAoaXNfYXB4X3JleDJfZW5jb2RpbmcgKCkpDQo+ID4gKyAgICB7 DQo+ID4gKyAgICAgIGJ1aWxkX3JleDJfcHJlZml4ICgpOw0KPiA+ICsgICAgICAvKiBUaGUgaW5k aXZpZHVhbCBSRVguUlhCVyBiaXRzIGdvdCBjb25zdW1lZC4gICovDQo+ID4gKyAgICAgIGkucmV4 ICY9IFJFWF9PUENPREU7DQo+ID4gKyAgICB9DQo+ID4gKyAgZWxzZSBpZiAoaS5yZXggIT0gMCkN Cj4gPiAgICAgIGFkZF9wcmVmaXggKFJFWF9PUENPREUgfCBpLnJleCk7DQo+ID4NCj4gPiAgICBp bnNlcnRfbGZlbmNlX2JlZm9yZSAobGFzdF9pbnNuKTsNCj4gDQo+IEFsbCBvZiB0aGlzIHdpbGwg bmVlZCByZS1iYXNpbmcgb3ZlciAieDg2OiBwcm9wZXJseSByZXNwZWN0IHJleC97cmV4fSIsIHdp dGggdGhlDQo+IHJlc3VsdCAoSSBob3BlKSB0aGF0IC5pbnNuIHdpbGwgdGhlbiBhbHNvIGJlIGNv dmVyZWQgUkVYMi13aXNlLg0KPiANCkRvbmUuDQoNCj4gPiBAQCAtNTc1Miw2ICs1ODExLDIwIEBA IHBhcnNlX2luc24gKGNvbnN0IGNoYXIgKmxpbmUsIGNoYXIgKm1uZW1vbmljLA0KPiBib29sIHBy ZWZpeF9vbmx5KQ0KPiA+ICAJICAgIGdvdG8gdG9vX2xvbmc7DQo+ID4gIAkgICptbmVtX3AgPSAn XDAnOw0KPiA+DQo+ID4gKwkgIC8qIFBvaW50IGwgYXQgdGhlIGNsb3NpbmcgYnJhY2UgaWYgdGhl cmUncyBubyBvdGhlciBzZXBhcmF0b3IuICAqLw0KPiA+ICsJICBpZiAoKmwgIT0gRU5EX09GX0lO U04gJiYgIWlzX3NwYWNlX2NoYXIgKCpsKQ0KPiA+ICsJICAgICAgJiYgKmwgIT0gUFJFRklYX1NF UEFSQVRPUikNCj4gPiArCSAgICAtLWw7DQo+ID4gKwl9DQo+ID4gKyAgICAgIC8qIFNraXAgdGhl IGltbWVkaWF0ZSAweCoqIG9mIHtyZXgyIDB4MDB9IHByZWZpeC4gICovDQo+ID4gKyAgICAgIGVs c2UgaWYgKCptbmVtb25pYyA9PSAneycmJiBpc19zcGFjZV9jaGFyICgqbCkpDQo+IA0KPiBOaXQ6 IE1pc3NpbmcgYmxhbmsuDQo+IA0KPiA+ICsJew0KPiA+ICsJICB3aGlsZSAoICpsICE9ICd9JykN Cj4gDQo+IE5pdDogU3RyYXkgYmxhbmsuDQo+IA0KPiA+ICsJICAgICsrbDsNCj4gDQo+IFdoYXQg aWYgdGhlcmUncyBubyAnfScgb24gdGhlIGxpbmU/DQo+IA0KPiA+ICsJICAqbW5lbV9wKysgPSAq bCsrOw0KPiA+ICsJICBpZiAobW5lbV9wID49IG1uZW1vbmljICsgTUFYX01ORU1fU0laRSkNCj4g PiArCSAgICBnb3RvIHRvb19sb25nOw0KPiA+ICsJICAqbW5lbV9wID0gJ1wwJzsNCj4gDQo+IFlv dSBza2lwIGV2ZXJ5dGhpbmcsIG5vdCBqdXN0IDB4Tk4uIFlvdSBhbHNvIHNraXAgc3R1ZmYgYWZ0 ZXIgb3RoZXIgcHNldWRvDQo+IHByZWZpeGVzLCBpZiBJJ20gbm90IG1pc3Rha2VuLiBUaGF0J3Mg Ym90aCB0b28gbGF4LiBIb3dldmVyLCBza2lwcGluZyBpc24ndCBhbg0KPiBvcHRpb24gaGVyZSBh bnl3YXkuIEVpdGhlciB3ZSBhY3R1YWxseSByZXNwZWN0IHdoYXQgdGhlIHVzZXIgaGFzIHdyaXR0 ZW4sIG9yDQo+IHdlIGVycm9yIG91dC4gU2tpcHBpbmcgdGhlcmVmb3JlIGlzIGFuIG9wdGlvbiBv bmx5IGlmIHRoZSBwcm92aWRlZCBleHByZXNzaW9uDQo+IChub3QganVzdCBwbGFpbiBudW1iZXIh KSBldmFsdWF0ZXMgdG8gMC4gSSBkb24ndCB1bmRlcnN0YW5kIGFueXdheSB3aHkgdGhpcw0KPiBj b2RlIHdhcyBhZGRlZDogV2hlbiBJIGFza2VkIGFib3V0IHRoZSBzcGVjaWZpYyBwbGFucywgSC5K LiBjbGVhcmx5IHNhaWQgdGhlDQo+IGZvcm0gd2l0aCBhIGNvbnN0YW50IHdvdWxkIGJlIGEgZGlz YXNzZW1ibGVyLSBvbmx5IHRoaW5nIGZvciBub3cuDQo+IA0KDQpJdCBzaG91bGQgYmUgb25seSBz dXBwb3J0ZWQgaW4gZGlzYXNzZW1ibGVyLCBJIHdpbGwgZHJvcCBpdCBpbiBhc3NlbWJsZXIuDQoN Cj4gPiBAQCAtNzAwNSw2ICs3MDgyLDQzIEBAIFZFWF9jaGVja19lbmNvZGluZyAoY29uc3QgaW5z bl90ZW1wbGF0ZSAqdCkNCj4gPiAgICByZXR1cm4gMDsNCj4gPiAgfQ0KPiA+DQo+ID4gKy8qIENo ZWNrIGlmIEVncHJzIG9wZXJhbmRzIGFyZSB2YWxpZCBmb3IgdGhlIGluc3RydWN0aW9uLiAgKi8N Cj4gPiArDQo+ID4gK3N0YXRpYyBpbnQNCj4gPiArY2hlY2tfRWdwck9wZXJhbmRzIChjb25zdCBp bnNuX3RlbXBsYXRlICp0KQ0KPiANCj4gSG1tLCBJIHRob3VnaHQgSSBoYWQgYXNrZWQgYmVmb3Jl IHRvIG1ha2UgZnVuY3Rpb25zIHdpdGggYm9vbGVhbiByZXR1cm4NCj4gdmFsdWVzIGhhdmUgYSBy ZXR1cm4gdHlwZSBvZiBib29sLCBhbmQgdGhlbiB1c2UgInRydWUiIGZvciBzdWNjZXNzLiBBbg0K PiBhbHRlcm5hdGl2ZSB3b3VsZCBiZSB0byByZXR1cm4gdGhlIGVycm9yIGluZGljYXRvciwgcmF0 aGVyIHRoYW4gcHV0dGluZyBpdCBpbg0KPiBpLmVycm9yIGhlcmUuDQo+IA0KPiBUaGVuIGFnYWlu IEkgcmVhbGl6ZSB0aGlzIGlzIGluIGxpbmUgd2l0aCBWRVhfY2hlY2tfZW5jb2RpbmcoKSBhbmQN Cj4gY2hlY2tfVmVjT3BlcmFuZHMoKSAod2hpY2ggSSB0aGluayB3b3VsZCBiZXR0ZXIgYmUgY2hh bmdlZCwgYnV0IGFueXdheSkuDQo+IA0KDQpDaGFuZ2VkIGl0IHRvIGJvb2wuIEZvciB0aGUgcmVz dCwgaXQncyBhIGJpdCBzdHJhbmdlIHRvIG9ubHkgY2hhbmdlIGNoZWNrX0VncHJPcGVyYW5kcy4g Q2FuIHRoaXMgcGxhY2UgYmUgbGVmdCB1bmNoYW5nZWQ/IE9yIHNob3VsZCBJIHN1Ym1pdCBhIG5l dyBwYXRjaCBhbmQgY2hhbmdlIHRoZSBvbGQgb25lIGZpcnN0Pw0KDQo+ID4gQEAgLTcxNDksNiAr NzI2MywxNCBAQCBtYXRjaF90ZW1wbGF0ZSAoY2hhciBtbmVtX3N1ZmZpeCkNCj4gPiAgCSAgICAg IGNvbnRpbnVlOw0KPiA+ICAJICAgIH0NCj4gPg0KPiA+ICsJICAvKiBDaGVjayBpZiBwc2V1ZG8g cHJlZml4IHtyZXgyfSBpcyB2YWxpZC4gICovDQo+ID4gKwkgIGlmICh0LT5vcGNvZGVfbW9kaWZp ZXIubm9lZ3ByICYmIGkucmV4Ml9lbmNvZGluZykNCj4gPiArCSAgICB7DQo+ID4gKwkgICAgICBp LmVycm9yID0gaW52YWxpZF9wc2V1ZG9fcHJlZml4Ow0KPiANCj4gV2hhdCBpcyB0aGlzIG5lZWRl ZCBmb3I/IEkuZS4gd2h5IGNhbid0IHlvdSBwYXNzIHRoZSB2YWx1ZSAuLi4NCj4gDQo+ID4gKwkg ICAgICBzcGVjaWZpY19lcnJvciA9IHByb2dyZXNzIChpLmVycm9yKTsNCj4gDQo+IC4uLiBpbiBo ZXJlIGRpcmVjdGx5IChhcyBpcyBkb25lIGVsc2V3aGVyZSBhcyB3ZWxsKT8NCj4gDQoNCkRvbmUu DQoNCj4gPiAtLS0gL2Rldi9udWxsDQo+ID4gKysrIGIvZ2FzL3Rlc3RzdWl0ZS9nYXMvaTM4Ni94 ODYtNjQtYXB4LXJleDIucw0KPiA+IEBAIC0wLDAgKzEsODYgQEANCj4gPiArIyMgUkVYMi5CMyBi aXQNCj4gPiArCSBzdWIgICAoJXIxMCksICVyMzENCj4gPiArCSBzdWIgICAoJXIxMyksICVyMzEN Cj4gDQo+IE5pdDogVGhlcmUncyBzdGlsbCBhbiBpbmRlbnRhdGlvbiBhbm9tYWx5IGhlcmUuDQo+ IA0KRG9uZS4NCg0KPiA+IC0tLSBhL2dhcy90ZXN0c3VpdGUvZ2FzL2kzODYveDg2LTY0LWludmFs LXBzZXVkby5zDQo+ID4gKysrIGIvZ2FzL3Rlc3RzdWl0ZS9nYXMvaTM4Ni94ODYtNjQtaW52YWwt cHNldWRvLnMNCj4gPiBAQCAtMSw0ICsxLDggQEANCj4gPiAgCS50ZXh0DQo+ID4gIAl7ZGlzcDE2 fSBtb3ZiICglZWJwKSwlYWwNCj4gPiAgCXtkaXNwMTZ9IG1vdmIgKCVyYnApLCVhbA0KPiA+ICsN Cj4gPiArCS8qIEluc3RydWN0aW9uIG5vdCBzdXBwb3J0IEFQWC4gICovDQo+ID4gKwl7cmV4Mn0g eHNhdmUgKCVyMTUsICVyYngpDQo+ID4gKwl7cmV4Mn0geHNhdmU2NCAoJXIxNSwgJXJieCkNCj4g PiAgCS5wMmFsaWduIDQsMA0KPiANCj4gQXJlbid0IHRoZXNlIGRlYWx0IHdpdGggKGluIGEgbW9y ZSBjb21wbGV0ZSBmYXNoaW9uKSBpbiB4ODYtNjQtcHNldWRvcy0NCj4gYmFkLnM/DQo+IA0KUmVt b3ZlZC4NCg0KPiA+IC0tLSBhL2dhcy90ZXN0c3VpdGUvZ2FzL2kzODYveDg2LTY0LXBzZXVkb3Mt YmFkLnMNCj4gPiArKysgYi9nYXMvdGVzdHN1aXRlL2dhcy9pMzg2L3g4Ni02NC1wc2V1ZG9zLWJh ZC5zDQo+ID4gQEAgLTUsMyArNSw3NyBAQCBwc2V1ZG9zOg0KPiA+ICAJe3JleH0gdm1vdmFwcyAl eG1tNywleG1tMg0KPiA+ICAJe3JleH0gdm1vdmFwcyAleG1tMTcsJXhtbTINCj4gPiAgCXtyZXh9 IHJvcnggJDcsJWVheCwlZWJ4DQo+ID4gKwl7cmV4Mn0gdm1vdmFwcyAleG1tNywleG1tMg0KPiA+ ICsJe3JleDJ9IHhzYXZlICglcmF4KQ0KPiA+ICsJe3JleDJ9IHhzYXZlcyAoJWVjeCkNCj4gPiAr CXtyZXgyfSB4c2F2ZXM2NCAoJWVjeCkNCj4gPiArCXtyZXgyfSB4c2F2ZWMgKCVlY3gpDQo+ID4g Kwl7cmV4Mn0geHJzdG9ycyAoJWVjeCkNCj4gPiArCXtyZXgyfSB4cnN0b3JzNjQgKCVlY3gpDQo+ IA0KPiBIZXJlLg0KPiANCj4gPiAtLS0gYS9vcGNvZGVzL2kzODYtZGlzLmMNCj4gPiArKysgYi9v cGNvZGVzL2kzODYtZGlzLmMNCj4gPiBAQCAtMTQ0LDYgKzE0NCwxMiBAQCBzdHJ1Y3QgaW5zdHJf aW5mbw0KPiA+ICAgIC8qIEJpdHMgb2YgUkVYIHdlJ3ZlIGFscmVhZHkgdXNlZC4gICovDQo+ID4g ICAgdWludDhfdCByZXhfdXNlZDsNCj4gPg0KPiA+ICsgIC8qIFJlY29yZCBXIFI0IFg0IEI0IGJp dHMgZm9yIHJleDIuICAqLyAgdW5zaWduZWQgY2hhciByZXgyOw0KPiA+ICsgIC8qIEJpdHMgb2Yg UkVYMiB3ZSd2ZSBhbHJlYWR5IHVzZWQuICAqLyAgdW5zaWduZWQgY2hhciByZXgyX3VzZWQ7DQo+ IA0KPiBXaGVuIHlvdSBzYXkgUkVYMiwgb25lIG91Z2h0IHRvIGJlIHBlcm1pdHRlZCB0byBpbXBs eSB5b3UgbWVhbiB0aGUgcHJlZml4LA0KPiBub3QgdGhlIHN0cnVjdCBmaWVsZC4gVGhhdCdzIGFt YmlndW91cyBoZXJlLCB0aG91Z2ggLSBiaXQgcG9zaXRpb25zIHVzZWQgbWF0Y2gNCj4gdGhvc2Ug aW4gcmV4Miwgbm90IHRob3NlIGluIHRoZSBSRVgyIHBheWxvYWQuDQo+IElPVyBlaXRoZXIgeW91 IHVzZSBsb3dlciBjYXNlIHRvIG1ha2UgbW9yZSBvYnZpb3VzIHRoYXQgeW91IG1lYW4gdGhlIG90 aGVyDQo+IHN0cnVjdCBmaWVsZCwgb3IgeW91IHNheSBlLmcuICJSRVgyIHByZWZpeCBiaXRzIHdl J3ZlIGFscmVhZHkgdXNlZC4iIEFsYmVpdCB0aGF0DQo+IHdvdWxkIHN0aWxsIGJlIGltcHJlY2lz ZSwgYXMgb3RoZXIgUkVYMiBwcmVmaXggYml0cycgdXNlIGlzIHJlY29yZGVkIGluIHJleF91c2Vk Lg0KPiANCg0KQ2hhbmdlZCB0byANCg0KICAvKiBCaXRzIG9mIHJleDIgd2UndmUgYWxyZWFkeSB1 c2VkLiAgKi8NCiAgdW5zaWduZWQgY2hhciByZXgyX3VzZWQ7DQoNCj4gPiBAQCAtMjY1LDggKzI3 MiwxMyBAQCBzdHJ1Y3QgZGlzX3ByaXZhdGUgew0KPiA+ICAgIHsJCQkJCQkJXA0KPiA+ICAgICAg aWYgKHZhbHVlKQkJCQkJCVwNCj4gPiAgICAgICAgewkJCQkJCQlcDQo+ID4gLQlpZiAoKGlucy0+ cmV4ICYgdmFsdWUpKQkJCQlcDQo+ID4gKwlpZiAoaW5zLT5yZXggJiB2YWx1ZSkJCQkJXA0KPiA+ ICAJICBpbnMtPnJleF91c2VkIHw9ICh2YWx1ZSkgfCBSRVhfT1BDT0RFOwlcDQo+IA0KPiBMaWtl IGlzIGRvbmUgaGVyZSwgLi4uDQo+IA0KPiA+ICsJaWYgKGlucy0+cmV4MiAmIHZhbHVlKQkJCQlc DQo+ID4gKwkgIHsJCQkJCQlcDQo+ID4gKwkgICAgaW5zLT5yZXgyX3VzZWQgfD0gdmFsdWU7CQkJ XA0KPiANCj4gb3RoZXIgdXNlcyBvZiAidmFsdWUiIGFsc28gd2FudCBwYXJlbnRoZXNpemluZywg dW5sZXNzIG5vdCB1c2VkIHdpdGggYW55IGtpbmQNCj4gb2Ygb3BlcmF0b3IgKGUuZy4gaW4gdGhl IGlmKCkgYWJvdmUpLg0KPiANCkRvbmUuDQoNCj4gPiBAQCAtMjc2LDYgKzI4OCw5IEBAIHN0cnVj dCBkaXNfcHJpdmF0ZSB7ICAjZGVmaW5lIEVWRVhfYl91c2VkIDENCj4gPiAjZGVmaW5lIEVWRVhf bGVuX3VzZWQgMg0KPiA+DQo+ID4gKy8qIE0wIGluIHJleDIgcHJlZml4IHJlcHJlc2VudHMgbWFw MCBvciBtYXAxLiAgKi8gI2RlZmluZSBSRVgyX00gMHg4DQo+IA0KPiBFeHRlbmRpbmcgYW4gZWFy bGllciBjb21tZW50OiBUaGlzIHJlYWxseSBzaG91bGQgZ28gbmV4dCB0byBSRVhfVyBhbmQNCj4g ZnJpZW5kcy4gSW4gcHJpbmNpcGxlIHRoZSBhc3NlbWJsZXIgY291bGQgd2FudCB0byB1c2UgdGhp cyBjb25zdGFudCBhcyB3ZWxsLA0KPiBoZW5jZSB3aHkgaXQgd291bGQgYmV0dGVyIGdvIHRoZSBv cGNvZGUvaTM4Ni5oIGFueXdheS4NCj4gDQpEb25lLg0KDQo+ID4gQEAgLTQxOTYsMTkgKzQyMjEs MTkgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBkaXMzODYgeDg2XzY0X3RhYmxlW11bMl0gPQ0KPiA+ IHsNCj4gPg0KPiA+ICAgIC8qIFg4Nl82NF9FOCAqLw0KPiA+ICAgIHsNCj4gPiAtICAgIHsgImNh bGxQIiwJCXsgSnYsIEJORCB9LCAwIH0sDQo+ID4gLSAgICB7ICJjYWxsQCIsCQl7IEp2LCBCTkQg fSwgMCB9DQo+ID4gKyAgICB7ICJjYWxsUCIsCQl7IEp2LCBCTkQgfSwgUFJFRklYX1JFWDJfSUxM RUdBTCB9LA0KPiANCj4gVGhpcywgLi4uDQo+IA0KPiA+ICsgICAgeyAiY2FsbEAiLAkJeyBKdiwg Qk5EIH0sIFBSRUZJWF9SRVgyX0lMTEVHQUwgfQ0KPiA+ICAgIH0sDQo+ID4NCj4gPiAgICAvKiBY ODZfNjRfRTkgKi8NCj4gPiAgICB7DQo+ID4gLSAgICB7ICJqbXBQIiwJCXsgSnYsIEJORCB9LCAw IH0sDQo+ID4gLSAgICB7ICJqbXBAIiwJCXsgSnYsIEJORCB9LCAwIH0NCj4gPiArICAgIHsgImpt cFAiLAkJeyBKdiwgQk5EIH0sIFBSRUZJWF9SRVgyX0lMTEVHQUwgfSwNCj4gDQo+IC4uLiB0aGlz LCBhbmQgLi4uDQo+IA0KPiA+ICsgICAgeyAiam1wQCIsCQl7IEp2LCBCTkQgfSwgUFJFRklYX1JF WDJfSUxMRUdBTCB9DQo+ID4gICAgfSwNCj4gPg0KPiA+ICAgIC8qIFg4Nl82NF9FQSAqLw0KPiA+ ICAgIHsNCj4gPiAtICAgIHsgIntsfH1qbXB7UHx9IiwgeyBBcCB9LCAwIH0sDQo+ID4gKyAgICB7 ICJ7bHx9am1we1B8fSIsIHsgQXAgfSwgUFJFRklYX1JFWDJfSUxMRUdBTCB9LA0KPiA+ICAgIH0s DQo+IA0KPiAuLi4gdGhpcyBjaGFuZ2UgaXNuJ3QgcmVhbGx5IG5lZWRlZCwgaXMgaXQ/IFRoZSBt YXJrZXIgaXMgb25seSBuZWVkZWQgb24gNjQtYml0DQo+IGluc25zIChpLmUuIHJlc3BlY3RpdmUg c2xvdHMgMiBvZiB4ODZfNjRfdGFibGVbXSBlbnRyaWVzKS4NCj4gDQpEb25lLg0KDQpUaGFua3Ms DQpMaWxpLg0K