From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mgamail.intel.com (mgamail.intel.com [134.134.136.126]) by sourceware.org (Postfix) with ESMTPS id 9CC1E3858D37 for ; Mon, 23 Oct 2023 02:57:42 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 9CC1E3858D37 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 9CC1E3858D37 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=134.134.136.126 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1698029864; cv=pass; b=oaAAKCDBuPeBqMnwrONhF8pnkCotNn8ofb/qpPV2QQog6j8j+n1DiD4QiatzwkuABlCDaYnhYTHG+Jdk/3UheqabJkr70Ym+8ato1/vdA1+ZNyrZzH45ZJqStrVggqVkl7diW8VVf3L5K8j16HX+OQg4hjwksywGxkQ1hwqRBGw= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1698029864; c=relaxed/simple; bh=+dXAd/F6pH/PPeg2svZSY9F2Fsb9t+XVeQ7kWbuNuGA=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=sc9f83S36V3zSe2Yoq6/WdKL99XNimM7adfo+gQZWUoGbgy25VswtNXtv3anA5TWBXrz7ITOHh3t/BnJAq/eEZF5tTTuQzIluLG55TnbyXVWi04AsT6sJ0Thy7euY57ZqFA+sRnh9XZdIdf9X5xXY9Tc8zDM+KumYjr1/dbOT5w= 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=1698029862; x=1729565862; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=+dXAd/F6pH/PPeg2svZSY9F2Fsb9t+XVeQ7kWbuNuGA=; b=R2KJcOI+VzMLvsLlcok/UIxFjFxtpI2lGrQvV9UtizveNBC4To9EzcpY M6yjCxujg8VdneHzGa24OVvMGNU1gCPClYIvezJYkicNnEMxt7091KtxJ q5UjF16kvh0qaCz2ZH+vgfJ2bq6LICJCJCg4pgLDg+KD5svKE/CMCMyOB 2pqKoQa+IxMx5834tcfS1C/Jk7T6dbXvurbPmG1D0iZuceU+9LZi8iyiW 40NiJCeKLxzeUL1BBHqjeB5L104lH5vab+Ztm+gzmD//RyJ8DWU4Qg9Px pN3nUgKPjdSmovbXV3x0Ak7j2axUe/z/ij0VmWdT8nMYVsMJEy0NgfyFi Q==; X-IronPort-AV: E=McAfee;i="6600,9927,10871"; a="371822395" X-IronPort-AV: E=Sophos;i="6.03,244,1694761200"; d="scan'208";a="371822395" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 Oct 2023 19:57:39 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10871"; a="901663560" X-IronPort-AV: E=Sophos;i="6.03,244,1694761200"; d="scan'208";a="901663560" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by fmsmga001.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 22 Oct 2023 19:55:18 -0700 Received: from fmsmsx601.amr.corp.intel.com (10.18.126.81) 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.32; Sun, 22 Oct 2023 19:57:34 -0700 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.32 via Frontend Transport; Sun, 22 Oct 2023 19:57:34 -0700 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (104.47.56.169) 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.32; Sun, 22 Oct 2023 19:57:34 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=epu+cQ58bOYhkshY/HpQMWSg6b+aV0hUhooPS3k/JGBwKkua88TYthnY6Fjw3IeBbe4EkOnbSMCNGyXNirSU+U7VoyIkmaUBRO+jlG2HAE6ktsz8llREbsccy+vR8zCT7JLyq5YouCP9P6VIYu2or4tiM/bqxGORh86iKvWDeeiOTy8/V/sc4Fy/h9oUKMmFo2+DH+rQjXPt6Zgag+rFkGPitGDMCYetYHmSrjKa9SKkgOeUdxUWHnO15N+M4qenPvBXmK9h03jQSJaBFfCNC9RjQ5sLxRQxw0AjpPsiys2LZFoytg0Z1Mcx9cQcUeNB4QQlBmcnidglRICirXU5Lg== 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=+dXAd/F6pH/PPeg2svZSY9F2Fsb9t+XVeQ7kWbuNuGA=; b=lGVRRmMd9pxE9rnyEZyAhRzSywPQW2lPSRSNUYd+CiSm0wxPl/O5mGBvoC2XIS2g5vWb5C5QiBNb0Gc/H34DJIWyTwxIaasmJxpnKN3Arm4z25iua6I7e9eXRyib/qNWl0w+UFOD+IDm/TQtGyiyJoymiCGcZ0Nmt1RDJ77EXZ3BbmHQl8d74JLoe/kB3dneQyf41x6vYx/KYd9s5JhhLcrmITLH/l8esLQPhOfWE6LZa6KTa3HQeNKRX+440F+u4+KeFsdN08rOY8FHQSFWAIGtRI6c5M4rEs9VrE6lhuC3CQDJ8u/dZuB86fMUnouQyu8vvZyowPxDqNJ3FL3rRw== 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 SJ0PR11MB5940.namprd11.prod.outlook.com (2603:10b6:a03:42f::18) by PH0PR11MB5829.namprd11.prod.outlook.com (2603:10b6:510:140::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.24; Mon, 23 Oct 2023 02:57:32 +0000 Received: from SJ0PR11MB5940.namprd11.prod.outlook.com ([fe80::8a10:338f:c17e:dd7f]) by SJ0PR11MB5940.namprd11.prod.outlook.com ([fe80::8a10:338f:c17e:dd7f%6]) with mapi id 15.20.6907.030; Mon, 23 Oct 2023 02:57:32 +0000 From: "Hu, Lin1" To: "Beulich, Jan" , "Cui, Lili" CC: "Lu, Hongjiu" , "binutils@sourceware.org" Subject: RE: [PATCH 5/8] Support APX NDD optimized encoding. Thread-Topic: [PATCH 5/8] Support APX NDD optimized encoding. Thread-Index: AQHZ6w2Wl7wY8MNeR0exGf3fHH1tXbAwBooAgCbbQYA= Date: Mon, 23 Oct 2023 02:57:32 +0000 Message-ID: References: <20230919152527.497773-1-lili.cui@intel.com> <20230919152527.497773-6-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: SJ0PR11MB5940:EE_|PH0PR11MB5829:EE_ x-ms-office365-filtering-correlation-id: e52d6f70-a147-46e8-3f08-08dbd373cd6d 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: McqDETiPYTGLuni3hZbbLABWAemDw5J3rXZpkmtdwe2Qwb26b8wAiX2ftKLGh8Z4yGfmMYULgYUNlP7TTStAQz5PBU+Hjm3t+XBELQ5uKLvIPDPLk8zFyS8biRdQZ9V9M5v4H73zdQYNJQ9iUmzGU2+t4EBPWQMl8lHIMZkW3AgcgF58RZC56nfh8Ke6QooZOWsPTaUrka+j4jNMh/w8OYVee6mXOETeaRTsadz/DIeecDFpkA63a9MhPf4r1dFWiFk+L6rCRNBBfkA2uU2uKdoe41UwIGxh8ft1TOavs1rHLPf0LNKchC96hkljINeCkPHTmzT2aUzPm7cq1ZKeK8erkONFXgv0uZD8gKdh1Ugpm789xyohF/Ca1RAgH3ZmDNvsadYUGmp5yqAJlZiZFVPhKHWBXmCXQ1x15MEcRd6/6cMcx7ubzXGQsZztnRaMoafS9fuUwVfhuzv9+iQ3LUfsTiZZRAqfwgQfjfZCkD0U043Z9NVIkvhJvish5SK1ObuzqnRy85QlJKvWe3IKn2e7u9dP8HhFd67phkoPYSNTSuVUahkKHRyogB40S4VbHfCliwfZoP/uKu787vEj6Vm8q8OzX3xX4PF/Rq5hr/QFPwMrxBkQRUM2mUEYgnAW x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR11MB5940.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(396003)(376002)(346002)(136003)(39860400002)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(26005)(38070700009)(55016003)(4326008)(38100700002)(8676002)(71200400001)(110136005)(478600001)(6636002)(53546011)(316002)(76116006)(66946007)(64756008)(66556008)(52536014)(5660300002)(7696005)(6506007)(54906003)(66476007)(41300700001)(8936002)(66446008)(2906002)(86362001)(9686003)(122000001)(82960400001)(83380400001)(33656002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?NGlEOFpsTzNsNDdWek0rYi96d2lMMEZvOFQxZ1lkMWVQYm9DOWxVT2M4SXBD?= =?utf-8?B?aENCTExyK0tlZ2dtTWtBeTdCTWdTclBnWXZYT1pNVVRSM0ZwVDY1T1RiSWVV?= =?utf-8?B?ZjI4REkwS0M3Z0xLeUdKaGU3M3NOSWo5dVcwRklTb2p4eURhcjVxUTdGeFRt?= =?utf-8?B?Q0d2ZEpPTGk3ZjZXby9vVzF5YlZQS2R3Ui9ZeDVzZWhFNHVpbWdtcWMyR0Zx?= =?utf-8?B?U0NRMURSUms4N2RIMk1XNkRIZ2ZNczFwczNqTWc1UXloUXBUQUU4bUFBVE1Y?= =?utf-8?B?c2FGZzlkZkVnNUp5bjBEWUJDa3Jxc2I2ZXltRkY1czBLd2JUSVJUYXRNOUFC?= =?utf-8?B?bmNwZ1RpNnRUd0hzZVVCVUExbVN5NHZIN1BwNVY3dnE2cXVVcFhxUW9XMlNG?= =?utf-8?B?N0YxNzUvclRzTXc1djJLU1gvTXNsaHJvVXlkOWJTclB2d0x2dzhRS01PUSs1?= =?utf-8?B?Yzd2UDVCeVdlbk1NdHZKejF2ZkFOd2QzRDZLQ3p2b3Z4Umd2V3RyVDF4T01v?= =?utf-8?B?NnFEQmZwYWVQT1NXaWxzQ0t2K01Ud3JSRk9hY3lXZlYwZGM3cUR4bE1zNXk0?= =?utf-8?B?L1Fmc1Y5cVZyTFhvMkw3enJFUU55cGphQjdVZjM5b2RCeGtmc1NDRkhwdHpD?= =?utf-8?B?MVkvMkpHY0V6bGdvM1pPUWZzSGxBb254WWxra1hMUDBxSjBlbWkwMnlMTXVB?= =?utf-8?B?QTVNcEVOVWd2R3BrOEFmdEQ3MjZqRWw5RlRHOEJIaHlmdGVqejE5bjhITElj?= =?utf-8?B?RW1rc1hHeE9sck44WDNKWkxVMmVvazRoVllDTmx2WXZpNG1xbXdCWDdTT3lS?= =?utf-8?B?QXBIN3d6clkvTWg0bnAwRGI4aEdqaXNHOW80dGZZMDhmWW9nZHRwTmFHMDFm?= =?utf-8?B?TmdhektDQkhhUnFFaERyMjlvaStHSGFSeVRkZ1hvRGhOZXNCa3ZyeU05c0hi?= =?utf-8?B?Z0UybHlNeTRzcGc0TG5vdjB0WDlySkhPbVlFNDBLQ1ZEVWhNSkFoM3JaWmxG?= =?utf-8?B?Z0ljSmdaTnFKakFRTUd3Rnh6bGl2MGtoS1k0M2NyTlVNQ0lKdWYybkNRT29n?= =?utf-8?B?TktveGtCdHhTNXQxSldwaHBzNDA2a1VBR1hkWEdhajFtZDlqZGlVemFmVEF1?= =?utf-8?B?Y1ZTa3Foa1F0TWFFODg2SUZiOGZRV0xDMmxrVWtJZzFHSnllQnMweWFXMjFX?= =?utf-8?B?Z2tJZENxeWtVRlZJWEF2Z29vMW9yMHRqWlljTkt5bWYxK25QbXNKd3ArTHNv?= =?utf-8?B?czFya2tsUmhHcXFEeTBkb01tTXo5VmtzM3ZQUEY5S2hESmZIQXVjTDd0U0NC?= =?utf-8?B?cFZzaFl6VGhSWVgzMmI3Q3N5L2hZaHNMWXJSTHh2ek92STMzdSsweFpYS3hP?= =?utf-8?B?RlBqOW0vWW9MN2pORXRYOTduZ1pWejlRbDdHNHhZdW5IRmViK0d5ZFI3ZzZj?= =?utf-8?B?ZGhpM0pWSjVUMDFPSHFGN3AvVnQ2S1lOVkNzY3R6dnByK2JIWlEyYWdSVCtN?= =?utf-8?B?ZjZRalYrMnJBZjdZQjdyRlVGd3NWMXh2SUQ5c1g4Ny9BdWVnRDkxQVpxNjh4?= =?utf-8?B?cCtXUjZ5dDFDaTUrUTlmMmF5RmJ4OHR5NXlNU0s2eUFRSlJhVUZ0Q3pwdkQ5?= =?utf-8?B?VjBUVWVvRi96NVlhcHc3TjRxczQ3OGxob2VtQUMxeTFBMEptdGMrc1Bab05a?= =?utf-8?B?T1JtMUhUeE9sNTduUG1TWFRBOVdJelozeWRQNmREWllFVHhQQWR3UFZXTlEx?= =?utf-8?B?VGNKdjdHdTlqOEYrcm43WmF2cWcwT09sc2N5SnFKa1BpMlNIaDhMU3RQQ1k3?= =?utf-8?B?OWJUaG1wSytBTnV6REVZM21qOUFvVmpnOVhXbFdiVm80VWdBS282T2ZtOXNZ?= =?utf-8?B?ZjRmc1pmaVdyVWc4dHpkTkpUZTlwN3dLanZ3bDJNRXptUS9yVVhNUTJsNWlh?= =?utf-8?B?c0x6YW9McmR6Y2ZENG0vYU5kWVQ0bElxS1BITjgzOG9VcEtKTlFYNW10dnRs?= =?utf-8?B?emNhTGpJeXpsNjM5TENtNGdlblgwbHJOTStOSnVqblpDMGIxbUMvODA3cWZM?= =?utf-8?B?clJSUlluM2pBSm9YMVdQYjNYRlU0SUFQUUxPTm1WVG15STBtMVRpVFlVVnYr?= =?utf-8?Q?Bqio=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: SJ0PR11MB5940.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: e52d6f70-a147-46e8-3f08-08dbd373cd6d X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Oct 2023 02:57:32.3782 (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: h3h2DaK3/7aSWF7PCS6bzTLiZFzqr5IUoUj+fYKoJ78vV5PiEwZ+Vko+ijb48/HadQpBjKabOd/nj/OQvXD3Ag== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB5829 X-OriginatorOrg: intel.com X-Spam-Status: No, score=-4.8 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,SCC_10_SHORT_WORD_LINES,SCC_5_SHORT_WORD_LINES,SPF_HELO_NONE,SPF_NONE,TXREP autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: VGhhbmtzIGZvciB5b3VyIHJldmlld3MsIEkgaGF2ZSByZXNwb25kZWQgdG8geW91ciBjb21tZW50 cy4gVGhlIG5ldyBwYXRjaCB3aWxsIGJlIGF0dGFjaGVkIHRvIGEgc3Vic2VxdWVudCBlbWFpbC4N Cg0KQlJzLA0KTGluDQoNCi0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQpGcm9tOiBKYW4gQmV1 bGljaCA8amJldWxpY2hAc3VzZS5jb20+IA0KU2VudDogVGh1cnNkYXksIFNlcHRlbWJlciAyOCwg MjAyMyA1OjMwIFBNDQpUbzogQ3VpLCBMaWxpIDxsaWxpLmN1aUBpbnRlbC5jb20+DQpDYzogTHUs IEhvbmdqaXUgPGhvbmdqaXUubHVAaW50ZWwuY29tPjsgSHUsIExpbjEgPGxpbjEuaHVAaW50ZWwu Y29tPjsgYmludXRpbHNAc291cmNld2FyZS5vcmcNClN1YmplY3Q6IFJlOiBbUEFUQ0ggNS84XSBT dXBwb3J0IEFQWCBOREQgb3B0aW1pemVkIGVuY29kaW5nLg0KDQpPbiAxOS4wOS4yMDIzIDE3OjI1 LCBDdWksIExpbGkgd3JvdGU6DQo+IC0tLSBhL2dhcy9jb25maWcvdGMtaTM4Ni5jDQo+ICsrKyBi L2dhcy9jb25maWcvdGMtaTM4Ni5jDQo+IEBAIC03MDkxLDYgKzcwOTEsNDYgQEAgY2hlY2tfRWdw ck9wZXJhbmRzIChjb25zdCBpbnNuX3RlbXBsYXRlICp0KQ0KPiAgICByZXR1cm4gMDsNCj4gIH0N Cj4gIA0KPiArLyogT3B0aW1pemUgQVBYIE5ERCBpbnNucyB0byBub24tTkREIGluc25zLiAgKi8N Cj4gKw0KPiArc3RhdGljIGludA0KDQoiYm9vbCIgcGxlYXNlIHdoZW4gdGhlIGZ1bmN0aW9uIG1l cmVseSByZXR1cm5zIGEgeWVzL25vIGluZGljYXRvci4NCg0KKiBIYXZlIG1vZGlmaWVkLg0KDQo+ ICtvcHRpbWl6ZV9ORERfdG9fbm9uTkREIChjb25zdCBpbnNuX3RlbXBsYXRlICp0KSB7DQo+ICsg IGlmICh0LT5vcGNvZGVfbW9kaWZpZXIudmV4dnZ2dg0KPiArICAgICAgJiYgdC0+b3Bjb2RlX3Nw YWNlID09IFNQQUNFX0VWRVhNQVA0DQo+ICsgICAgICAmJiBpLnJlZ19vcGVyYW5kcyA+PSAyDQoN ClNlZSB0aGUgcmVtYXJrIG5lYXIgdGhlIGJvdHRvbSBvZiB0aGUgY2hhbmdlcyB0byB0aGlzIGZp bGU6IFRoaXMgY29uZGl0aW9uIGlzIGxpa2VseSBpbnN1ZmZpY2llbnQsIGFzDQotIGZ1cnRoZXIg aW5zbnMgYWxsb3dpbmcgTkQgbWF5IG5vdCBiZSB0cmVhdGVkIHRoaXMgd2F5IChDQ01Qc2NjLA0K ICBDVEVTVHNjYywgYW5kIG9uZSBvZiB0aGUgQ0ZDTU9WY2MgZm9ybXMgYXQgdGhlIHZlcnkgbGVh c3QpLA0KLSB7bmZ9IHVzZXMgd2lsbCB3YW50IGV4Y2x1ZGluZywgYXMgaXQgd291bGQgYmUgbWVy ZWx5IGEgd2FzdGUgb2YNCiAgdGltZSB0byB0cnkgdG8gcmUtbWF0Y2ggd2l0aCBmZXdlciBvcGVy YW5kcy4NCg0KKiBDQ01QU0NDIGFuZCBDVEVTVFNDQ+KAmXMgdmV4dnZ2diB3aWxsIGJlIGZhbHNl LiBJIHRoaW5rIG9uZSBvZiB0aGUgQ0ZDTU9WQ0MgZm9ybXMgaXMgc2FtZS4NCg0KPiArICAgICAg JiYgKGkudHlwZXNbaS5vcGVyYW5kcyAtIDFdLmJpdGZpZWxkLmR3b3JkDQo+ICsJICB8fCBpLnR5 cGVzW2kub3BlcmFuZHMgLSAxXS5iaXRmaWVsZC5xd29yZCkpDQoNCldoeSBkbyB5b3UgZXhjbHVk ZSBieXRlIGFuZCB3b3JkIG9wZXJhdGlvbnM/IEltbyB3aGF0IHlvdSB3YW50IHRvIGNoZWNrIGlz IGNsYXNzIGJlaW5nIFJlZy4NCg0KKiBJdCBsb29rcyBsaWtlIEkgbWlzdW5kZXJzdG9vZCB0aGUg cmVxdWlyZW1lbnRzLCBJJ3ZlIHJlbW92ZWQgaXQuDQoNCj4gKyAgICB7DQo+ICsgICAgICBpbnQg dG1wX2ZsYWcgPSAtMTsNCg0KRWl0aGVyIHR5cGUgb3IgbmFtZSBuZWVkIHRvIGNoYW5nZTogQSB2 YXJpYWJsZSBvZiB0aGlzIG5hbWUgd2FudHMgdG8gYmUgImJvb2wiLiBJIHdvdWxkIGhhdmUgc3Vn Z2VzdGVkICJkdXBsIiBhcyB0aGUgbmFtZSwgYnV0IHRoYXQgaG93IGRvZXNuJ3QgZml0IGhvdyB0 aGUgdmFyaWFibGUgaXMgdXNlZCBiZWxvdy4NCg0KKE9mIGNvdXJzZSBJJ20gYWxzbyBub3QgaGFw cHkgd2l0aCB0aGUgdXNlIG9mIHBsYWluIGludCBoZXJlIGFuZCBiZWxvdywgYnV0IHRoYXQncyBh IHdpZGVyIGlzc3VlIHRocm91Z2hvdXQgdGhlIHNvdXJjZSBmaWxlLiBTdGlsbCBpdCB3b3VsZCBi ZSBuaWNlIGlmIG5ldyBjb2RlIHByb3Blcmx5IHVzZWQgdW5zaWduZWQgaW50IHdoZW5ldmVyIG9u bHkgbm9uLW5lZ2F0aXZlIHZhbHVlcyBhcmUgdG8gYmUgaGVsZC4pDQoNCiogSGF2ZSBjaGFuZ2Vk IHZhciBuYW1lIGFuZCB0eXBlLg0KDQo+ICsgICAgICBpbnQgZGVzdCA9IGkub3BlcmFuZHMgLSAx Ow0KPiArICAgICAgaW50IHNyYzEgPSAoaS5vcGVyYW5kcyA+IDIpID8gaS5vcGVyYW5kcyAtIDIg OiAwOw0KPiArICAgICAgaW50IHNyYzIgPSAoaS5vcGVyYW5kcyA+IDMpID8gaS5vcGVyYW5kcyAt IDMgOiAwOw0KPiArDQo+ICsgICAgICBpZiAoaS5vcFtzcmMxXS5yZWdzID09IGkub3BbZGVzdF0u cmVncykNCj4gKwl0bXBfZmxhZyA9IHNyYzI7DQo+ICsgICAgICAvKiBhZGN4IGFuZCBhZG94IGRv bid0IGhhdmUgRCBiaXQuICAqLw0KDQpJTVVMIGRvZXNuJ3QgZWl0aGVyLCB5ZXQgb3VnaHQgdG8g YWxzbyBiZSBlbGlnaWJsZT8gV2UgaGF2ZSBhICJjb21tdXRhdGl2ZSINCmZsYWcgYWxyZWFkeSAt IGNhbid0IHlvdSBleHRlbmQgaXRzIHVzZSB0byB0aGUgcHVycG9zZXMgeW91IGhhdmUgaGVyZT8g SSBleHBlY3QgdGhpcyB3b3VsZCBzaW1wbGlmeSAuLi4NCg0KPiArICAgICAgZWxzZSBpZiAoaS5v cFtzcmMyXS5yZWdzID09IGkub3BbZGVzdF0ucmVncw0KDQpKdXN0IHRvIG1lbnRpb24gaXQ6IEJv dGggdGhpcyBhbmQgdGhlIGVhcmxpZXIgc2ltaWxhciBlcXVhbGl0eSBjaGVjayBhcmVuJ3QgZW50 aXJlbHkgbGVnYWwsIGFzIHlvdSBoYXZlbid0IHByZXZpb3VzbHkgY2hlY2tlZCB0aGF0IHRoZSBy ZXNwZWN0aXZlIG9wZXJhbmRzIGFjdHVhbGx5IGFyZSByZWdpc3RlciBvbmVzLiBBbmFseXNpcyB0 b29scyAobGlrZSB0aGUgVUINCnNhbml0aXplcikgbWF5IGNob2tlIG9uIHRoaXMsIGV2ZW4gaWYg b3RoZXJ3aXNlIHRoaXMgc2hvdWxkbid0IGJlIGEgcHJvYmxlbSBmcm9tIHdoYXQgSSBjYW4gdGVs bC4NCg0KKiBUeXBlIGNoZWNraW5nIGhhcyBiZWVuIGFkZGVkLg0KDQo+ICsJICAgICAgICYmICh0 LT5vcGNvZGVfbW9kaWZpZXIuZA0KPiArCQkgICB8fCB0LT5tbmVtX29mZiA9PSBNTl9hZGN4DQo+ ICsJCSAgIHx8IHQtPm1uZW1fb2ZmID09IE1OX2Fkb3gpDQo+ICsJICAgICAgICYmICh0LT5tbmVt X29mZiAhPSBNTl9zdWIpDQo+ICsJICAgICAgICYmICh0LT5tbmVtX29mZiAhPSBNTl9zYmIpKQ0K DQouLi4gdGhpcyBjb25kaXRpb24uDQoNCiogSSBkaWRuJ3Qgbm90aWNlIHRoZSBpbXVsLCBhbHJl YWR5IGFkZGVkIGl0LiBIYXZlIHVzZWQg4oCcY29tbXV0YXRpdmXigJ0gdG8gbWFyayBpbnNucyB0 aGF0IGNhbiBzd2FwIHNvdXJjZSBvcGVyYW5kcyBmb3Igb3B0aW1pemF0aW9uLg0KDQo+ICsJdG1w X2ZsYWcgPSBzcmMxOw0KPiArICAgICAgaWYgKHRtcF9mbGFnICE9IC0xKQ0KPiArCXsNCj4gKwkg IC0taS5vcGVyYW5kczsNCj4gKwkgIC0taS5yZWdfb3BlcmFuZHM7DQo+ICsJICAtLWkudG0ub3Bl cmFuZHM7DQo+ICsNCj4gKwkgIGlmICh0bXBfZmxhZyAhPSBzcmMyKQ0KPiArCSAgICAgIHN3YXBf Ml9vcGVyYW5kcyAodG1wX2ZsYWcsIHNyYzIpOw0KDQpOaXQ6IFRoZXJlJ3Mgb25jZSBhZ2FpbiBz b21ldGhpbmcgd3Jvbmcgd2l0aCBpbmRlbnRhdGlvbiBoZXJlLg0KDQo+ICsJICByZXR1cm4gMTsN Cj4gKwl9DQo+ICsgICAgfQ0KPiArICByZXR1cm4gMDsNCj4gK30NCj4gKw0KPiAgLyogSGVscGVy IGZ1bmN0aW9uIGZvciB0aGUgcHJvZ3Jlc3MoKSBtYWNybyBpbiBtYXRjaF90ZW1wbGF0ZSgpLiAg Ki8gIA0KPiBzdGF0aWMgSU5MSU5FIGVudW0gaTM4Nl9lcnJvciBwcm9ncmVzcyAoZW51bSBpMzg2 X2Vycm9yIG5ldywNCj4gIAkJCQkJZW51bSBpMzg2X2Vycm9yIGxhc3QsDQo+IEBAIC03NTYyLDYg Kzc2MDIsMTUgQEAgbWF0Y2hfdGVtcGxhdGUgKGNoYXIgbW5lbV9zdWZmaXgpDQo+ICAJICAgICBz bGlwIHRocm91Z2ggdG8gYnJlYWsuICAqLw0KPiAgCX0NCj4gIA0KPiArICAgICAgLyogSWYgd2Ug Y2FuIG9wdGltaXplIGEgTkREIGluc24gdG8gbm9uLU5ERCBpbnNuLCBsaWtlDQo+ICsJIGFkZCAl cjE2LCAlcjgsICVyOCAtPiBhZGQgJXIxNiwgJXI4LCB0aGVuIHJlbWF0Y2ggdGVtcGxhdGUuICAq Lw0KPiArICAgICAgaWYgKG9wdGltaXplX05ERF90b19ub25OREQgKHQpKQ0KDQpJIGRvbid0IHRo aW5rIHN1Y2ggYW4gb3B0aW1pemF0aW9uIHNob3VsZCBiZSBkb25lIHdpdGhvdXQgYW55IGZvcm0g b2YgLU8uDQoNCkFzIHRvIHRoZSBmdW5jdGlvbiBuYW1lLCBtYXliZSBiZXR0ZXIgb3B0aW1pemVf TkREX3RvX1JFWDIoKT8NCg0KKiBSZWZlciB0byB0aGUgb3B0aW1pemF0aW9uIG9mIFZPUCwgdGVt cG9yYXJpbHkgc2V0IHRvIE8xIHdpbGwgYmUgb3B0aW1pemVkLiAgSWYgd2UgdXNlIDMyYml0IHJl Z2lzdGVyLCBzb21lIGluc3RydWN0aW9ucyB3aWxsIGJlIG9wdGltaXplZCBmcm9tIE5ERCB0byBy ZXggb3IgbGVnYWN5LiBMaWtlIGNtb3ZnICAweDkwOTA5MDkwKCVlYXgpLCVlZHgsJWVkeCwgaW11 bCAgICVyZHgsJXJheCwlcmR4IGluIG91ciB0ZXN0Lg0KDQo+ICsJew0KPiArCSAgdCA9IGN1cnJl bnRfdGVtcGxhdGVzLT5zdGFydDsNCj4gKwkgIC0tdDsNCj4gKwkgIGNvbnRpbnVlOw0KDQpTbyB0 aGUgZGVjcmVtZW50IGlzIHRvIGNvbXBlbnNhdGUgdGhlIGxvb3AgY29udGludWF0aW9uLiBOZXZl cnRoZWxlc3MgaW1vIHRoaXMgd2FudHMgc3BlbGxpbmcgInQgPSBjdXJyZW50X3RlbXBsYXRlcy0+ c3RhcnQgLSAxIi4gWWV0IGxpa2UgYWJvdmUgbm90ZSB0aGF0IGEgZ29vZCBVQiBjaGVja2VyIG1h eSBvYmplY3QgdG8gdGhpcyBzdWJ0cmFjdGlvbiBvZiAxLCB1bmxlc3MgeW91IGJ1aWxkIHVwb24g dGVtcGxhdGVzIG1ha2luZyBpdCBoZXJlIG5vdCBiZWluZyBwYXJ0IG9mIHRoZSBmaXJzdCBncm91 cCBpbiBpMzg2X29wdGFiW10uIChJZiBhbnkgc3VjaCBkZXBlbmRlbmN5IGV4aXN0cywgaXQgbmVl ZHMgc3BlbGxpbmcgb3V0IGluIGEgc3VpdGFibGUgcGxhY2UsIGkuZS4gaW4gcGFydGljdWxhciBv bmUgdGhhdCdzIGhhcmQgdG8gb3Zlcmxvb2sgd2hlbiBkb2luZyByZS1hcnJhbmdlbWVudHMuKQ0K DQoqIEkgdGhpbmsgaXTigJlzIG9rIGF0IHRoZSBtb21lbnQsIGJlY2F1c2UgdGhlIGZpcnN0IGdy b3VwIGluIGkzODZfb3B0YWIgaXMgYSBsZWdhY3kgbW92LiBJIHdpbGwgYWRkIGEgY29tbWVudCBp biB0aGUgaTM4Nl9vcGMudGJsLg0KDQo+ICsJfQ0KPiArDQo+ICAgICAgICAvKiBDaGVjayBpZiBW RVgvRVZFWCBlbmNvZGluZyByZXF1aXJlbWVudHMgY2FuIGJlIHNhdGlzZmllZC4gICovDQo+ICAg ICAgICBpZiAoVkVYX2NoZWNrX2VuY29kaW5nICh0KSkNCj4gIAl7DQoNCkkgYWxzbyB3b25kZXIg d2hldGhlciB0aGlzIGRvZXNuJ3QgbmVlZCBtb3ZpbmcgZnVydGhlciBkb3duLiBJIGV4cGVjdCBh dCBsZWFzdCBWRVhfY2hlY2tfZW5jb2RpbmcoKSBtYXkgbmVlZCBydW5uaW5nIGZpcnN0Lg0KDQpC dXQgSSdtIHdvcnJpZWQgYW55d2F5IHRoYXQgdGhpcyBwYXRjaCBjb21lcyB0b28gZWFybHkgaW4g dGhlIHNlcmllcy4NCntldmV4fSBwcmVmaXhlcyBvciB1c2Ugb2Yge25mfSB3b3VsZCBuZWVkIHNr aXBwaW5nIHRoZSBvcHRpbWl6YXRpb24gYXR0ZW1wdCwgYW5kIGdldHRpbmcgYWxsIHRoZSBjb25k aXRpb25zIHJpZ2h0IGlzIGxpa2VseSBlYXNpZXIgdG8gc2VlIHdoZW4gYWxsIHRoZSByZXN0IG9m IHRoZSBpbmZyYXN0cnVjdHVyZSBpcyBpbiBwbGFjZS4NCg0KKiBIYXZlIHJlb3JkZXJlZC4NCg0K PiAtLS0gL2Rldi9udWxsDQo+ICsrKyBiL2dhcy90ZXN0c3VpdGUvZ2FzL2kzODYveDg2LTY0LWFw eC1uZGQtb3B0aW1pemUucw0KPiBAQCAtMCwwICsxLDExNSBAQA0KPiArIyBDaGVjayA2NGJpdCBB UFggTkREIGluc3RydWN0aW9ucyB3aXRoIG9wdGltaXplZCBlbmNvZGluZw0KPiArDQo+ICsJLmFs bG93X2luZGV4X3JlZw0KPiArCS50ZXh0DQo+ICtfc3RhcnQ6DQo+ICtpbmMgICAgJWF4LCVheA0K PiAraW5jICAgICVlYXgsJWVheA0KPiAraW5jICAgICVyYXgsJXJheA0KPiAraW5jICAgICVyMTYs JXIxNg0KPiArYWRkICAgICVyMzFiLCVyOGIsJXI4Yg0KPiArYWRkICAgICVyMzFiLCVyOGIsJXIz MWINCj4gK2FkZGIgICAgJXIzMWIsJXI4YiwlcjhiDQo+ICthZGQgICAgJXIzMSwlcjgsJXI4DQo+ ICthZGRxICAgICVyMzEsJXI4LCVyOA0KPiArYWRkICAgICVyMzFkLCVyOGQsJXI4ZA0KPiArYWRk bCAgICAlcjMxZCwlcjhkLCVyOGQNCj4gK2FkZCAgICAlcjMxdywlcjh3LCVyOHcNCj4gK2FkZHcg ICAgJXIzMXcsJXI4dywlcjh3DQo+ICt7c3RvcmV9IGFkZCAgICAlcjMxLCVyOCwlcjgNCj4gK3ts b2FkfSAgYWRkICAgICVyMzEsJXI4LCVyOA0KPiArYWRkICAgICVyMzEsKCVyOCksJXIzMQ0KPiAr YWRkICAgICglcjMxKSwlcjgsJXI4DQo+ICthZGQgICAgJDB4MTIzNDQ0MzMsJXIxNSwlcjE1DQo+ ICthZGQgICAgJDB4ZmZmZmZmZmZmNDMzMjIxMSwlcjgsJXI4DQo+ICtkZWMgICAgJXIxNywlcjE3 DQo+ICtub3QgICAgJXIxNywlcjE3DQo+ICtuZWcgICAgJXIxNywlcjE3DQo+ICtzdWIgICAgJXIx NSwlcjE3LCVyMTcNCj4gK3N1YiAgICAlcjE1ZCwoJXI4KSwlcjE1ZA0KPiArc3ViICAgICglcjE1 LCVyYXgsMSksJXIxNiwlcjE2DQo+ICtzdWIgICAgJDB4MTIzNCwlcjMwLCVyMzANCj4gK3NiYiAg ICAlcjE1LCVyMTcsJXIxNw0KPiArc2JiICAgICVyMTUsKCVyOCksJXIxNQ0KPiArc2JiICAgICgl cjE1LCVyYXgsMSksJXIxNiwlcjE2DQo+ICtzYmIgICAgJDB4MTIzNCwlcjMwLCVyMzANCj4gK2Fk YyAgICAlcjE1LCVyMTcsJXIxNw0KPiArYWRjICAgICVyMTVkLCglcjgpLCVyMTVkDQo+ICthZGMg ICAgKCVyMTUsJXJheCwxKSwlcjE2LCVyMTYNCj4gK2FkYyAgICAkMHgxMjM0LCVyMzAsJXIzMA0K PiArb3IgICAgJXIxNSwlcjE3LCVyMTcNCj4gK29yICAgICVyMTVkLCglcjgpLCVyMTVkDQo+ICtv ciAgICAoJXIxNSwlcmF4LDEpLCVyMTYsJXIxNg0KPiArb3IgICAgJDB4MTIzNCwlcjMwLCVyMzAN Cj4gK3hvciAgICAlcjE1LCVyMTcsJXIxNw0KPiAreG9yICAgICVyMTVkLCglcjgpLCVyMTVkDQo+ ICt4b3IgICAgKCVyMTUsJXJheCwxKSwlcjE2LCVyMTYNCj4gK3hvciAgICAkMHgxMjM0LCVyMzAs JXIzMA0KPiArYW5kICAgICVyMTUsJXIxNywlcjE3DQo+ICthbmQgICAgJXIxNWQsKCVyOCksJXIx NWQNCj4gK2FuZCAgICAoJXIxNSwlcmF4LDEpLCVyMTYsJXIxNg0KPiArYW5kICAgICQweDEyMzQs JXIzMCwlcjMwDQo+ICthbmQgICAgJDB4MTIzNCwlcjMwDQo+ICtyb3IgICAgJXIzMSwlcjMxDQo+ ICtyb3JiICAgJXIzMWIsJXIzMWINCg0KUGxlYXNlIGJlIGNvbnNpc3RlbnQgd2l0aCBvbWl0dGlu ZyAob3IgaGF2aW5nKSBzdWZmaXhlcyAoZnVydGhlciB1cCB5b3Ugc2ltcGx5IHRlc3QgYm90aCB2 YXJpYW50cywgYnV0IHRoYXQncyBub3QgdGhlIGNhc2UgdGhyb3VnaG91dCAuLi4NCg0KPiArcm9y ICAgICQweDIsJXIxMiwlcjEyDQo+ICtyb2wgICAgJXIzMSwlcjMxDQo+ICtyb2xiICAgJXIzMWIs JXIzMWINCj4gK3JvbCAgICAkMHgyLCVyMTIsJXIxMg0KPiArcmNyICAgICVyMzEsJXIzMQ0KPiAr cmNyYiAgICVyMzFiLCVyMzFiDQo+ICtyY3IgICAgJDB4MiwlcjEyYiwlcjEyYg0KPiArcmNyICAg ICQweDIsJXIxMiwlcjEyDQo+ICtyY2wgICAgJXIzMSwlcjMxDQo+ICtyY2xiICAgJXIzMWIsJXIz MWINCj4gK3JjbCAgICAkMHgyLCVyMTJiLCVyMTJiDQo+ICtyY2wgICAgJDB4MiwlcjEyLCVyMTIN Cj4gK3NobCAgICAlcjMxLCVyMzENCj4gK3NobGIgICAlcjMxYiwlcjMxYg0KPiArc2hsICAgICQw eDIsJXIxMmIsJXIxMmINCj4gK3NobCAgICAkMHgyLCVyMTIsJXIxMg0KPiArc2FyICAgICVyMzEs JXIzMQ0KPiArc2FyYiAgICVyMzFiLCVyMzFiDQo+ICtzYXIgICAgJDB4MiwlcjEyYiwlcjEyYg0K PiArc2FyICAgICQweDIsJXIxMiwlcjEyDQo+ICtzaGwgICAgJXIzMSwlcjMxDQo+ICtzaGxiICAg JXIzMWIsJXIzMWINCj4gK3NobCAgICAkMHgyLCVyMTJiLCVyMTJiDQo+ICtzaGwgICAgJDB4Miwl cjEyLCVyMTINCj4gK3NociAgICAlcjMxLCVyMzENCj4gK3NocmIgICAlcjMxYiwlcjMxYg0KDQou Li4gaGVyZS4NCg0KKiBBZGRlZCBzdWZmaXhlcyB0byB0aGUgY29tbWFuZCBuYW1lcywgSSBkb24n dCB1bmRlcnN0YW5kIHZlcnkgd2VsbCB3aGF0IGlzIHN1Z2dlc3RlZCBpbnNpZGUgdGhlIHBhcmVu dGhlc2VzLCBJIGp1c3QgYWxpZ25lZCBtb3N0IG9mIHRoZSBpbnNucycgdGVzdCBpdGVtcy4NCg0K SmFuDQo=