From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.10]) by sourceware.org (Postfix) with ESMTPS id 39AF8386181F for ; Wed, 5 Jun 2024 07:50:07 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 39AF8386181F 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 39AF8386181F Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=198.175.65.10 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1717573810; cv=pass; b=KGn/A1O1cD72FkSFQB+5NYZD3VsJ1QBZdfqlXMAA/bannRvIyuskwoCfGmkADlRto/E/OLnZ1DDUo92PhaEg7N+pN8ReGSZ2hUQDvchE9wgKFm/VsunACHxoT610mk5BH/TjPzsS4Q6JyLaCReZJYo9lJzlcEkb7GX0PfwQTxCw= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1717573810; c=relaxed/simple; bh=2WCB/iBMBH7pRqAx/OUJbM1EV9PEL64uS0CJgiane+o=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=rcIAez7l1RAoRf6quLuN7YqBMpFzSKD7VbsQCTfSUvR8yMzbIRFsUC9YeDgvkQpMMI3hDWUfNLEjeMwBTLzB3ktZ3rDdqwISkMbvLSLP0K28VVsDDi+LL/xD8SlPNIq7Lu8wkH8YqTfKJgqREsXLijo2K3doVlU2UO7R+vaf2HU= 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=1717573807; x=1749109807; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=2WCB/iBMBH7pRqAx/OUJbM1EV9PEL64uS0CJgiane+o=; b=VAMdhObOAKE1KfjePqRAixny5XtCpMfTOcJoEqh9IJSWlFscaW7JqyT4 DEhSU4LLOgjMPJdG9bfDQX2CxtlCRSEfQRVizVkUzs89Y4quNx7Tlx7g4 AJylO0whLY3lzL0ghSwpfZPCz4fLvZox64Nqol4GingKmpWiE8dxbGMX1 icV+VSH9oh2NcWqWiu3SlHBoNyuuBunORnrjS32xKUvuMWz8FAEzTRo9b a753i9MhIvf6pWUls2SRSYWv4e0QOT9JzRBU7HAxPDudOMP7yROsX1jUg 8C+zD3O2qivaeIvvcjbBh/1GLZ0LEG1pLb2x97Uel/42gkIAvxVWXTcPi Q==; X-CSE-ConnectionGUID: 4QZhSc3uQte/CPJPGK2WSg== X-CSE-MsgGUID: UUfci1m0SJunL7bUQfXxOQ== X-IronPort-AV: E=McAfee;i="6600,9927,11093"; a="31655504" X-IronPort-AV: E=Sophos;i="6.08,216,1712646000"; d="scan'208";a="31655504" Received: from fmviesa003.fm.intel.com ([10.60.135.143]) by orvoesa102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 Jun 2024 00:50:05 -0700 X-CSE-ConnectionGUID: UC5drLr9QUi/RMt3du+aeg== X-CSE-MsgGUID: HvOlOQYaSZWsjTfMOH3cRg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.08,216,1712646000"; d="scan'208";a="41941558" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by fmviesa003.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 05 Jun 2024 00:50:04 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Wed, 5 Jun 2024 00:50:04 -0700 Received: from fmsmsx611.amr.corp.intel.com (10.18.126.91) by fmsmsx610.amr.corp.intel.com (10.18.126.90) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Wed, 5 Jun 2024 00:50:03 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) by fmsmsx611.amr.corp.intel.com (10.18.126.91) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39 via Frontend Transport; Wed, 5 Jun 2024 00:50:03 -0700 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (104.47.55.42) 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.39; Wed, 5 Jun 2024 00:50:03 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gYJxZuSRhP2K+i0x9OAYvNyKvGqTFlfMliq8Ip/rXdDFCgYoHORjAEhPCyftxJzdjAcwCnE61bVWeaWB/9CMyTsR0NSGqGVuAYhfKM/3aNGcyIFa+LR8TzTzgUZAG7gD5Uu4FBE5tt68WJ4vwRt8jkmzdRJ4PbesxZDzk6RvtSKSkXi9rRdI4PQJm6CeAPnB9xskE4qMdXpFXz84ar/IR3C47UgsuDq0rF6Fo2KI/4XrwuBj0vwNf7IeGWQsj60d/H6QsgwV3DlyzCLCyibmhvkpOmN8hrnORD93gqIDqc0aro4vgbHmYnln5hYMY05NCnRbx7y9YuM1VgOSyqvdEw== 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=2WCB/iBMBH7pRqAx/OUJbM1EV9PEL64uS0CJgiane+o=; b=NfGDwEWq923FMgv/o5QNZv+3KNetAVE9x1Mn9EV6PL9/mEKCour1SoGkyYi7kZxoCnDObxaFym35s8MSKhiz5bVo4tePnwN2eMGkIZmNiPsLMAK5ZSYCBNf9XaFCOSatlkzdmsO7YYTOtEI83Z8ZcTYVxTJLw+Aro1/SLnliPZhyv3E8JJOalGrlskpjGiLG39mVYHU1HNLOoTIeQDSVbbjd78VAhTVFzw0WASmhgDXjIeqC2EasHsdFhn+7sSedpwfHJlK5Gk5auLwHGKBLg1X6kdjzKkaQx9vy2T+mGHmRnmK5KP1JQSal5X9iRv45IVKTcOA6CcunI93odkD9Gg== 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 MW5PR11MB5908.namprd11.prod.outlook.com (2603:10b6:303:194::10) by DS0PR11MB7788.namprd11.prod.outlook.com (2603:10b6:8:f5::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7633.27; Wed, 5 Jun 2024 07:50:01 +0000 Received: from MW5PR11MB5908.namprd11.prod.outlook.com ([fe80::c798:ab3c:1a03:af59]) by MW5PR11MB5908.namprd11.prod.outlook.com ([fe80::c798:ab3c:1a03:af59%3]) with mapi id 15.20.7633.021; Wed, 5 Jun 2024 07:50:01 +0000 From: "Li, Pan2" To: Richard Biener , Richard Sandiford CC: "gcc-patches@gcc.gnu.org" , "juzhe.zhong@rivai.ai" , "kito.cheng@gmail.com" , "tamar.christina@arm.com" Subject: RE: [PATCH v1] Internal-fn: Add new IFN mask_len_strided_load/store Thread-Topic: [PATCH v1] Internal-fn: Add new IFN mask_len_strided_load/store Thread-Index: AQHasK1BKSpnnAOTCUSk0PKn5X6GSbG3owIAgADHfNCAAGw0sA== Date: Wed, 5 Jun 2024 07:50:01 +0000 Message-ID: References: <20240528031452.2706461-1-pan2.li@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: MW5PR11MB5908:EE_|DS0PR11MB7788:EE_ x-ms-office365-filtering-correlation-id: 546573b8-78ab-49b2-9f72-08dc85341aa7 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230031|376005|1800799015|366007|38070700009; x-microsoft-antispam-message-info: =?utf-8?B?RXNmQTQ3MXI4NjE4clhGZ2tJN0xWblNOb2xMQWtWUUdLZXFhMzNQZkQ1Uzcv?= =?utf-8?B?RndwN0Z5SytpSHR4VFhMa0xQSlZEQXBjODZJdXNmRkprZ0JKQXdOY1BteWVv?= =?utf-8?B?d2JGUGc0Zk9kRm9ZTEM3cEpNYmZiTGNnV3prRVFZaDZXK3lwbVJlZXowZXBh?= =?utf-8?B?Sk03czl3UDdveTFWZ1lLMk5talkxOWxqMVBRQlFmNGpCejgraUZodUdNUmRv?= =?utf-8?B?N0o4UWZVZGNOZ1ZMa0NXcE5Nam5lU0ZpRVd3K291b0ZmNlNZTnREOVVTWkxk?= =?utf-8?B?Rmk2dFoxNzByOW9GTzVhUjNNQ3JZb1hqUVJNcVZoUnpHbzBuTGpFQlJ3YWov?= =?utf-8?B?bFJMR3lFakpucXQ2cGZIREUxVzEzUHk2cEN3cWFjbFlWV3A4Y09XNHVleCtU?= =?utf-8?B?NU9HYVBRZEN4anpiZ2RoV3laSVRqMWloY004aE9DOS91OXRyNkIwam1DalJ1?= =?utf-8?B?YVp0aFFhcDZYTC82RHBKUVBKb0FaMGJsTTZTWGIwcGVlVEluU0RLVFhVbkd3?= =?utf-8?B?aGNLNGYwZkZIdnVUVUp1MXp1TlJ4bWdZWklHZHlzMWhWYlVGd05KbXF4cy81?= =?utf-8?B?alpnSE5YRVA5NUZaVDFkL1FnWko2TTZOUWRlUWV0ZXhWVkhVVmhuNC9YZWp1?= =?utf-8?B?OHdyQTYyY3Vua0JWUVo5ZXF5TGpCQjJmdjljcU5meWIzTmJyV00vaVJTVFgw?= =?utf-8?B?RTl5bVlHWUQ3dVpiUkNzWWhGZnEwdVV0Qk9ISEhmaGVXNHJoUjRQVjZmUUQv?= =?utf-8?B?Q1luaTJnTFkrdkZyeGIwa2xML1NvcUo4a1dvdFkvRE03NVZHU2JqNkxkNmVS?= =?utf-8?B?cExPY0F1eU1INnVRcTZQVGJ4c082b3RMSUkwVmdhMVJaWUhad2hPd21qdGQ2?= =?utf-8?B?TFNtaEdzUTlNSUVJY2c5ZEpjUnNWakdvSDB5bmh1TUlUSXZMR2JtN0svZjhZ?= =?utf-8?B?eVdqM0ZCQnh6Qno0bGVWYUtJWmdTeEt5MzVlMDV4b3haZnlZYU1kVFJJOTla?= =?utf-8?B?ZW1sL0Zwb0R3M3ZJZk4rK2h0V0JuODIzTjJTalQ2QVdmUnIwODZuejlNNjJl?= =?utf-8?B?UzZIWTlUcDRGUnVLSXdTbENpSC9FakZ6TERCSzhMYmRjR016c0J4bVU2NWZF?= =?utf-8?B?VFpMT2RJK2hMTjBzLzczalg5Y2poenhSU05yUVB4UWl6R3lpQU1hc1VaeXFx?= =?utf-8?B?THdRZTE0YWsrdFpnVDgvMXA2eE4rQndKRGEwWlA3YmJhS3cwQWI1SUlpcUMw?= =?utf-8?B?Nk5OV2p4RnFWOEhkMDMrQnhHS0ovakh2YktNUnQ0TURsaEVEUzUzTWwveWlZ?= =?utf-8?B?eUFjZ1lYaTJzMUdTZEZ5dmdOMllTcnp0NkNXdTJKYXRpYVFKR1dpUnJ5MlN4?= =?utf-8?B?b0JrMVBMZWRXbXBFOG96V01iYy9BV3dySXdkTVk0ckRoZk5rK0FSNUhmV3Zr?= =?utf-8?B?THVvdDRJTzBGMTZub05PTENsZEZBa0RSZzFxTEVHZXcxUmZ6QnQ1NUxjekxX?= =?utf-8?B?UDhLUmlPM2R2aWhZdHJYcFlzQWlPS1hjT3NhZDA3YUV5VnNkK1JYemtna3gv?= =?utf-8?B?VUxzSCtacDQxVU5sd3FmV1FvOUZSc0dBTk11MWJTb2xEUHRzMVpxL0JtMDhw?= =?utf-8?B?bGpURHVubVlkYXZ3VjJycnkyczdMM0VTVHBrRmZPVjBHRUg2SDJ4SDBJUlJG?= =?utf-8?B?R0xRQkE1cjF6STZ2b3dqYk0wUVZHQ2ppN0Q0ZDBpSzlTdFZ2M1pMNXk1N05C?= =?utf-8?Q?vovn/qtvmFEpmROE4d+DOyL753xv6pGCOE/+6/I?= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW5PR11MB5908.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376005)(1800799015)(366007)(38070700009);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?UXdLTG1sNkFLMzNiYnQvYk9WQWIwQy85QldsSjhUbDQzWCtHUWRLdEwwcDhC?= =?utf-8?B?Q3QyeDFwVEFOQ2JCTDVnZ0tISHNDRTFLK3FIbHoyKzZFZjlyRmY2NU41N01v?= =?utf-8?B?M3FuejJUT3pyTzMzbUYxMHdleUJ4TGU5SjNNUm5HRCthM3ZleFdVcHNLRXY2?= =?utf-8?B?MGxPN1hva0psOXJmWHV2ZTYrb0NKT0hram1HaHFrSE9VeDRuYnN5WFVjODZa?= =?utf-8?B?UDEzRlpaQW41dlBvamRXNUZoeTZONHRVTTlOZ3BKYUg0dFB0ZUZsSGlKWlJ2?= =?utf-8?B?bGJXVXpEUTFhVUdxbmpiSUJnQ21rcmF1cFIxcEJRNUU5UlFWNllzZjJOSXJR?= =?utf-8?B?d2J6UDR3Qm45aGJZQmhhL3h0WEI4cCs4RitaQ1VreFMzNUtOYWJndzMyRE5z?= =?utf-8?B?UzYrTVBTZllrWENabCthVXl6eEswSnU5ZkJzRkxUSjczY3h0ZEtqSkRBVm43?= =?utf-8?B?alB4OGlhN3VMbHMvTldrdWRjL1BNbnJtbDN1Q3hhZjZBNnZ4US9FcGtUOElP?= =?utf-8?B?MTFIUDJpcDVXaGxKR3VlSUhQNjhDZWpBYiswY0l2RlREcVVZenhWbkJYeVNQ?= =?utf-8?B?M01hMnJsbUF2elBWOURzUlhQdTFzNC9YZFNQNzBCY2NrSzUwd00ydWZlWC9n?= =?utf-8?B?Tk95SU1PY2tGcHl2K1pCci90R3J3QmxqS3U4ZkFyRU5lM3Ribk1JSmNHWE96?= =?utf-8?B?dXNsUVRkTFZ5QmJRZ3kzeXVWR3cxaEgrdEpDYVh4Z1BJSG90ZjFidUhWTHJF?= =?utf-8?B?Ymtmczc5cWE0SEZrb1JyMTlKYU8vVHhxQlBLd25ka3RWVWlHbkVLVGZ5cFRq?= =?utf-8?B?NkNaZHFDQ2tHNlBxaGU4MVN0cGRzUEgxbU0yRUpsY0xoU0d2TzJRTlZ0b0li?= =?utf-8?B?dVVYU0VIWENyVHJCQ210OVY3TVZ6MnNWQ1dzTVcrNzR3VHVHb0kvUzB1REYx?= =?utf-8?B?dFd0djdyK2pWalRWOUJkYVBtcWxhWm43MTNWRzJhVGZydTliWlg4OHdORXgy?= =?utf-8?B?K0NPY2lwMXBUMlpYL0k1QSt6Yk1uZVg3WnhnK0lNTzlmbGRSME95ZC9FUXRX?= =?utf-8?B?WmlMbW41NWU0d1FoeGVDZFl4TU5wdlpTWEFVbFFHWUdoWktrQktzQmJvYUZa?= =?utf-8?B?ZE1OaTN0YkhuZHJpZlRJYjBTWi9HUk9GeEtnYkg3MVNHSDBYWFJqbjRPZEdt?= =?utf-8?B?b2RrZ3VpZ2s5am1reFhtaUZQaVJORVFpc1VFaU9vaU5wd1dlcFNBM1lIeDFV?= =?utf-8?B?MlBhdEVNeWZtYmtXaTRnRUcyekVpSUlwdnVRYVhVVW1pWWthc0hndjFPaFhR?= =?utf-8?B?VzgwWFNrL2M4S2NRbU54a2hLMzNoZVRNYVlWd04vUnJJb1A1T2ZpZ2pCZ1Zn?= =?utf-8?B?MnpKMXBodU1kQVFtcXppS1lpYWVhK0pKdlBRdVl4bjgwYmlkclFINC9SK0dE?= =?utf-8?B?eStiZ2JFNjZLbVZnRTRQYjBnUE5UanpHN2pvR01sM1NWWDFmYThMQzZUUjJ0?= =?utf-8?B?NExNNFduYmxhbHRLUFBnN2RkY2ZsSDgyWnlhMmd5MkxibUpXNkFHM0k1ekpE?= =?utf-8?B?ZnFtU0YveDdkcnFySFBWZG9nYW9Tak1vb3B4K0Q3U2ptZHFyS243b3Y0TjRv?= =?utf-8?B?RWR6Ykw0emMwS0NxREFoamRNVWZYQlNNZGRIdldWL2M0Qkh1RDNyRS9FOXVi?= =?utf-8?B?NXRnQW4rRDgyN2J3dHpQRk9EUWEwekVTUE0ybDJXTEVxUk94WXVMdWNuS3hM?= =?utf-8?B?YncxVkpMM0x0Zml4dk1IclNiK05lQXNaejlkdWVXY0tnQkFSTXJiUzlMVHAr?= =?utf-8?B?eVBGdDdUQmZvQUdMNFF0TzBrSlBzUjlGaFRCWVU5OXFPWHNrcUxpdi9FbXJM?= =?utf-8?B?T1BxRWxOQmQrMHBYYWVzRTYzb0pLdnZGdDBDOGFRMTJGWk5idDkyQ1poYTg5?= =?utf-8?B?M2RDVUNPUWV6VXVweTFjWXB3UnNHVTYxd0lMUWJqOGQrcVV2ZVpZN3loL3E5?= =?utf-8?B?cXhXNkRpY2p1TVZTRHRnRUdPOHFCaVJ3MEdHMFI3Rzd1K2Jza0lnWjdiYXFS?= =?utf-8?B?NUJmbDgxcjdsQUdRZzE1bFFvcVY1ZU1GVUs3bXEvN2w3TElEY2lxdTBicEhv?= =?utf-8?Q?iLCA=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: MW5PR11MB5908.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 546573b8-78ab-49b2-9f72-08dc85341aa7 X-MS-Exchange-CrossTenant-originalarrivaltime: 05 Jun 2024 07:50:01.1495 (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: CRtE/U1er7mj135DLZsHuZKjElZvN2mO9WPd7nYjIfN1MWylOtYnfj3J7jKrSrqlaMK10PQW12jKPNr5pOpcmA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR11MB7788 X-OriginatorOrg: intel.com X-Spam-Status: No, score=-12.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,KAM_SHORT,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: TG9va3Mgbm90IGVhc3kgdG8gZ2V0IHRoZSBvcmlnaW5hbCBjb250ZXh0L2hpc3RvcnksIG9ubHkg Y2F0Y2ggc29tZSBzaGFkb3cgZnJvbSBiZWxvdyBwYXRjaCBidXQgbm90IHRoZSBmdWxseSBwaWN0 dXJlLg0KDQpodHRwczovL2djYy5nbnUub3JnL3BpcGVybWFpbC9nY2MtcGF0Y2hlcy8yMDIzLU9j dG9iZXIvNjM0NjgzLmh0bWwNCg0KSXQgaXMgcmVhc29uYWJsZSB0byBtZSB0aGF0IHVzaW5nIGdh dGhlci9zY2F0dGVyIHdpdGggYSBWRUNfU0VSSUNFUywgZm9yIGV4YW1wbGUgYXMgYmxvdywgd2ls bCBoYXZlIGEgdHJ5IGZvciB0aGlzLg0KDQpvcGVyYW5kXzAgPSBtYXNrX2dhdGhlcl9sb2FkbW4g KHB0ciwgb2Zmc2V0LCAxLzAoc2lnbi91bnNpZ24pLCBtdWx0aXBseSwgbWFzaykNCiAgb2Zmc2V0 ID0gKHZlY19zZXJpZXM6bSBiYXNlIHN0ZXApID0+IGJhc2UgKyBpICogc3RlcA0KICBvcF8wW2ld ID0gbWVtb3J5W3B0ciArIG9mZnNldFtpXSAqIG11bHRpcGx5XSAmJiBtYXNrW2ldDQoNCm9wZXJh bmRfMCA9IG1hc2tfbGVuX3N0cmlkZWRfbG9hZCAocHRyLCBzdHJpZGUsIG1hc2ssIGxlbiwgYmlh cykuDQogIG9wXzBbaV0gPSBtZW1vcnlbcHJ0ICsgc3RyaWRlICogaV0gJiYgbWFza1tpXSAmJiBp IDwgKGxlbiArIGJpYXMpDQoNClBhbg0KDQotLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KRnJv bTogTGksIFBhbjIgDQpTZW50OiBXZWRuZXNkYXksIEp1bmUgNSwgMjAyNCA5OjE4IEFNDQpUbzog UmljaGFyZCBCaWVuZXIgPHJpY2hhcmQuZ3VlbnRoZXJAZ21haWwuY29tPjsgUmljaGFyZCBTYW5k aWZvcmQgPHJpY2hhcmQuc2FuZGlmb3JkQGFybS5jb20+DQpDYzogZ2NjLXBhdGNoZXNAZ2NjLmdu dS5vcmc7IGp1emhlLnpob25nQHJpdmFpLmFpOyBraXRvLmNoZW5nQGdtYWlsLmNvbTsgdGFtYXIu Y2hyaXN0aW5hQGFybS5jb20NClN1YmplY3Q6IFJFOiBbUEFUQ0ggdjFdIEludGVybmFsLWZuOiBB ZGQgbmV3IElGTiBtYXNrX2xlbl9zdHJpZGVkX2xvYWQvc3RvcmUNCg0KPiBTb3JyeSBpZiB3ZSBo YXZlIGRpc2N1c3NlZCB0aGlzIGxhc3QgeWVhciBhbHJlYWR5IC0gaXMgdGhlcmUgYW55dGhpbmcg d3JvbmcNCj4gd2l0aCB1c2luZyBhIGdhdGhlci9zY2F0dGVyIHdpdGggYSBWRUNfU0VSSUVTIGdp bXBsZS9ydGwgZGVmIGZvciB0aGUgb2Zmc2V0Pw0KDQpUaGFua3MgZm9yIGNvbW1lbnRzLCBpdCBp cyBxdWl0IGEgd2hpbGUgc2luY2UgbGFzdCBkaXNjdXNzaW9uLiBMZXQgbWUgcmVjYWxsIGEgbGl0 dGxlIGFib3V0IGl0IGFuZCBrZWVwIHlvdSBwb3N0ZWQuDQoNClBhbg0KDQotLS0tLU9yaWdpbmFs IE1lc3NhZ2UtLS0tLQ0KRnJvbTogUmljaGFyZCBCaWVuZXIgPHJpY2hhcmQuZ3VlbnRoZXJAZ21h aWwuY29tPiANClNlbnQ6IFR1ZXNkYXksIEp1bmUgNCwgMjAyNCA5OjIyIFBNDQpUbzogTGksIFBh bjIgPHBhbjIubGlAaW50ZWwuY29tPjsgUmljaGFyZCBTYW5kaWZvcmQgPHJpY2hhcmQuc2FuZGlm b3JkQGFybS5jb20+DQpDYzogZ2NjLXBhdGNoZXNAZ2NjLmdudS5vcmc7IGp1emhlLnpob25nQHJp dmFpLmFpOyBraXRvLmNoZW5nQGdtYWlsLmNvbTsgdGFtYXIuY2hyaXN0aW5hQGFybS5jb20NClN1 YmplY3Q6IFJlOiBbUEFUQ0ggdjFdIEludGVybmFsLWZuOiBBZGQgbmV3IElGTiBtYXNrX2xlbl9z dHJpZGVkX2xvYWQvc3RvcmUNCg0KT24gVHVlLCBNYXkgMjgsIDIwMjQgYXQgNToxNeKAr0FNIDxw YW4yLmxpQGludGVsLmNvbT4gd3JvdGU6DQo+DQo+IEZyb206IFBhbiBMaSA8cGFuMi5saUBpbnRl bC5jb20+DQo+DQo+IFRoaXMgcGF0Y2ggd291bGQgbGlrZSB0byBhZGQgbmV3IGludGVybmFsIGZ1 biBmb3IgdGhlIGJlbG93IDIgSUZOLg0KPiAqIG1hc2tfbGVuX3N0cmlkZWRfbG9hZA0KPiAqIG1h c2tfbGVuX3N0cmlkZWRfc3RvcmUNCj4NCj4gVGhlIEdJTVBMRSB2ID0gTUFTS19MRU5fU1RSSURF RF9MT0FEIChwdHIsIHN0cmlkZSwgbWFzaywgbGVuLCBiaWFzKSB3aWxsDQo+IGJlIGV4cGFuZGVk IGludG8gdiA9IG1hc2tfbGVuX3N0cmlkZWRfbG9hZCAocHRyLCBzdHJpZWQsIG1hc2ssIGxlbiwg YmlhcykuDQo+DQo+IFRoZSBHSU1QTEUgTUFTS19MRU5fU1RSSUVEX1NUT1JFIChwdHIsIHN0cmlk ZSwgdiwgbWFzaywgbGVuLCBiaWFzKQ0KPiBiZSBleHBhbmRlZCBpbnRvIG1hc2tfbGVuX3N0cmll ZF9zdG9yZSAocHRyLCBzdHJpZGUsIHYsIG1hc2ssIGxlbiwgYmlhcykuDQo+DQo+IFRoZSBiZWxv dyB0ZXN0IHN1aXRlcyBhcmUgcGFzc2VkIGZvciB0aGlzIHBhdGNoOg0KPiAqIFRoZSB4ODYgYm9v dHN0cmFwIHRlc3QuDQo+ICogVGhlIHg4NiBmdWxseSByZWdyZXNzaW9uIHRlc3QuDQo+ICogVGhl IHJpc2N2IGZ1bGx5IHJlZ3Jlc3Npb24gdGVzdC4NCg0KU29ycnkgaWYgd2UgaGF2ZSBkaXNjdXNz ZWQgdGhpcyBsYXN0IHllYXIgYWxyZWFkeSAtIGlzIHRoZXJlIGFueXRoaW5nIHdyb25nDQp3aXRo IHVzaW5nIGEgZ2F0aGVyL3NjYXR0ZXIgd2l0aCBhIFZFQ19TRVJJRVMgZ2ltcGxlL3J0bCBkZWYg Zm9yIHRoZSBvZmZzZXQ/DQoNClJpY2hhcmQuDQoNCj4gZ2NjL0NoYW5nZUxvZzoNCj4NCj4gICAg ICAgICAqIGRvYy9tZC50ZXhpOiBBZGQgZGVzY3JpcHRpb24gZm9yIG1hc2tfbGVuX3N0cmlkZWRf bG9hZC9zdG9yZS4NCj4gICAgICAgICAqIGludGVybmFsLWZuLmNjIChzdHJpZGVkX2xvYWRfZGly ZWN0KTogTmV3IGludGVybmFsX2ZuIGRlZmluZQ0KPiAgICAgICAgIGZvciBzdHJpZGVkX2xvYWRf ZGlyZWN0Lg0KPiAgICAgICAgIChzdHJpZGVkX3N0b3JlX2RpcmVjdCk6IERpdHRvIGJ1dCBmb3Ig c3RvcmUuDQo+ICAgICAgICAgKGV4cGFuZF9zdHJpZGVkX2xvYWRfb3B0YWJfZm4pOiBOZXcgZXhw YW5kIGZ1bmMgZm9yDQo+ICAgICAgICAgbWFza19sZW5fc3RyaWRlZF9sb2FkLg0KPiAgICAgICAg IChleHBhbmRfc3RyaWRlZF9zdG9yZV9vcHRhYl9mbik6IERpdHRvIGJ1dCBmb3Igc3RvcmUuDQo+ ICAgICAgICAgKGRpcmVjdF9zdHJpZGVkX2xvYWRfb3B0YWJfc3VwcG9ydGVkX3ApOiBOZXcgZGVm aW5lIGZvciBsb2FkDQo+ICAgICAgICAgZGlyZWN0IG9wdGFiIHN1cHBvcnRlZC4NCj4gICAgICAg ICAoZGlyZWN0X3N0cmlkZWRfc3RvcmVfb3B0YWJfc3VwcG9ydGVkX3ApOiBEaXR0byBidXQgZm9y IHN0b3JlLg0KPiAgICAgICAgIChpbnRlcm5hbF9mbl9sZW5faW5kZXgpOiBBZGQgbGVuIGluZGV4 IGZvciBib3RoIGxvYWQgYW5kIHN0b3JlLg0KPiAgICAgICAgIChpbnRlcm5hbF9mbl9tYXNrX2lu ZGV4KTogRGl0dG8gYnV0IGZvciBtYXNrIGluZGV4Lg0KPiAgICAgICAgIChpbnRlcm5hbF9mbl9z dG9yZWRfdmFsdWVfaW5kZXgpOiBBZGQgc3RvcmVkIGluZGV4Lg0KPiAgICAgICAgICogaW50ZXJu YWwtZm4uZGVmIChNQVNLX0xFTl9TVFJJREVEX0xPQUQpOiBOZXcgZGlyZWN0IGZuIGRlZmluZQ0K PiAgICAgICAgIGZvciBzdHJpZGVkX2xvYWQuDQo+ICAgICAgICAgKE1BU0tfTEVOX1NUUklERURf U1RPUkUpOiBEaXR0byBidXQgZm9yIHN0cmlkZV9zdG9yZS4NCj4gICAgICAgICAqIG9wdGFicy5k ZWYgKE9QVEFCX0QpOiBOZXcgb3B0YWIgZGVmaW5lIGZvciBsb2FkIGFuZCBzdG9yZS4NCj4NCj4g U2lnbmVkLW9mZi1ieTogUGFuIExpIDxwYW4yLmxpQGludGVsLmNvbT4NCj4gQ28tQXV0aG9yZWQt Qnk6IEp1emhlLVpob25nIDxqdXpoZS56aG9uZ0ByaXZhaS5haT4NCj4gLS0tDQo+ICBnY2MvZG9j L21kLnRleGkgICAgIHwgMjcgKysrKysrKysrKysrKysrKw0KPiAgZ2NjL2ludGVybmFsLWZuLmNj ICB8IDc1ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKw0KPiAg Z2NjL2ludGVybmFsLWZuLmRlZiB8ICA2ICsrKysNCj4gIGdjYy9vcHRhYnMuZGVmICAgICAgfCAg MiArKw0KPiAgNCBmaWxlcyBjaGFuZ2VkLCAxMTAgaW5zZXJ0aW9ucygrKQ0KPg0KPiBkaWZmIC0t Z2l0IGEvZ2NjL2RvYy9tZC50ZXhpIGIvZ2NjL2RvYy9tZC50ZXhpDQo+IGluZGV4IDU3MzBiZGE4 MGRjLi4zZDI0MjY3NWM2MyAxMDA2NDQNCj4gLS0tIGEvZ2NjL2RvYy9tZC50ZXhpDQo+ICsrKyBi L2djYy9kb2MvbWQudGV4aQ0KPiBAQCAtNTEzOCw2ICs1MTM4LDIwIEBAIEJpdCBAdmFye2l9IG9m IHRoZSBtYXNrIGlzIHNldCBpZiBlbGVtZW50IEB2YXJ7aX0gb2YgdGhlIHJlc3VsdCBzaG91bGQN Cj4gIGJlIGxvYWRlZCBmcm9tIG1lbW9yeSBhbmQgY2xlYXIgaWYgZWxlbWVudCBAdmFye2l9IG9m IHRoZSByZXN1bHQgc2hvdWxkIGJlIHVuZGVmaW5lZC4NCj4gIE1hc2sgZWxlbWVudHMgQHZhcntp fSB3aXRoIEB2YXJ7aX0gPiAob3BlcmFuZCA2ICsgb3BlcmFuZCA3KSBhcmUgaWdub3JlZC4NCj4N Cj4gK0BjaW5kZXggQGNvZGV7bWFza19sZW5fc3RyaWRlZF9sb2FkQHZhcnttfX0gaW5zdHJ1Y3Rp b24gcGF0dGVybg0KPiArQGl0ZW0gQHNhbXB7bWFza19sZW5fc3RyaWRlZF9sb2FkQHZhcnttfX0N Cj4gK0xvYWQgc2V2ZXJhbCBzZXBhcmF0ZSBtZW1vcnkgbG9jYXRpb25zIGludG8gYSBkZXN0aW5h dGlvbiB2ZWN0b3Igb2YgbW9kZSBAdmFye219Lg0KPiArT3BlcmFuZCAwIGlzIGEgZGVzdGluYXRp b24gdmVjdG9yIG9mIG1vZGUgQHZhcnttfS4NCj4gK09wZXJhbmQgMSBpcyBhIHNjYWxhciBiYXNl IGFkZHJlc3MgYW5kIG9wZXJhbmQgMiBpcyBhIHNjYWxhciBzdHJpZGUgb2YgUG1vZGUuDQo+ICtv cGVyYW5kIDMgaXMgbWFzayBvcGVyYW5kLCBvcGVyYW5kIDQgaXMgbGVuZ3RoIG9wZXJhbmQgYW5k IG9wZXJhbmQgNSBpcyBiaWFzIG9wZXJhbmQuDQo+ICtUaGUgaW5zdHJ1Y3Rpb24gY2FuIGJlIHNl ZW4gYXMgYSBzcGVjaWFsIGNhc2Ugb2YgQGNvZGV7bWFza19sZW5fZ2F0aGVyX2xvYWRAdmFye219 QHZhcntufX0NCj4gK3dpdGggYW4gb2Zmc2V0IHZlY3RvciB0aGF0IGlzIGEgQGNvZGV7dmVjX3Nl cmllc30gd2l0aCBvcGVyYW5kIDEgYXMgYmFzZSBhbmQgb3BlcmFuZCAyIGFzIHN0ZXAuDQo+ICtG b3IgZWFjaCBlbGVtZW50IGluZGV4IGkgbG9hZCBhZGRyZXNzIGlzIG9wZXJhbmQgMSArIEB2YXJ7 aX0gKiBvcGVyYW5kIDIuDQo+ICtTaW1pbGFyIHRvIG1hc2tfbGVuX2xvYWQsIHRoZSBpbnN0cnVj dGlvbiBsb2FkcyBhdCBtb3N0IChvcGVyYW5kIDQgKyBvcGVyYW5kIDUpIGVsZW1lbnRzIGZyb20g bWVtb3J5Lg0KPiArRWxlbWVudCBAdmFye2l9IG9mIHRoZSBtYXNrIChvcGVyYW5kIDMpIGlzIHNl dCBpZiBlbGVtZW50IEB2YXJ7aX0gb2YgdGhlIHJlc3VsdCBzaG91bGQNCj4gK2JlIGxvYWRlZCBm cm9tIG1lbW9yeSBhbmQgY2xlYXIgaWYgZWxlbWVudCBAdmFye2l9IG9mIHRoZSByZXN1bHQgc2hv dWxkIGJlIHplcm8uDQo+ICtNYXNrIGVsZW1lbnRzIEB2YXJ7aX0gd2l0aCBAdmFye2l9ID4gKG9w ZXJhbmQgNCArIG9wZXJhbmQgNSkgYXJlIGlnbm9yZWQuDQo+ICsNCj4gIEBjaW5kZXggQGNvZGV7 c2NhdHRlcl9zdG9yZUB2YXJ7bX1AdmFye259fSBpbnN0cnVjdGlvbiBwYXR0ZXJuDQo+ICBAaXRl bSBAc2FtcHtzY2F0dGVyX3N0b3JlQHZhcnttfUB2YXJ7bn19DQo+ICBTdG9yZSBhIHZlY3RvciBv ZiBtb2RlIEB2YXJ7bX0gaW50byBzZXZlcmFsIGRpc3RpbmN0IG1lbW9yeSBsb2NhdGlvbnMuDQo+ IEBAIC01MTc1LDYgKzUxODksMTkgQEAgYXQgbW9zdCAob3BlcmFuZCA2ICsgb3BlcmFuZCA3KSBl bGVtZW50cyBvZiAob3BlcmFuZCA0KSB0byBtZW1vcnkuDQo+ICBCaXQgQHZhcntpfSBvZiB0aGUg bWFzayBpcyBzZXQgaWYgZWxlbWVudCBAdmFye2l9IG9mIChvcGVyYW5kIDQpIHNob3VsZCBiZSBz dG9yZWQuDQo+ICBNYXNrIGVsZW1lbnRzIEB2YXJ7aX0gd2l0aCBAdmFye2l9ID4gKG9wZXJhbmQg NiArIG9wZXJhbmQgNykgYXJlIGlnbm9yZWQuDQo+DQo+ICtAY2luZGV4IEBjb2Rle21hc2tfbGVu X3N0cmlkZWRfc3RvcmVAdmFye219fSBpbnN0cnVjdGlvbiBwYXR0ZXJuDQo+ICtAaXRlbSBAc2Ft cHttYXNrX2xlbl9zdHJpZGVkX3N0b3JlQHZhcnttfX0NCj4gK1N0b3JlIGEgdmVjdG9yIG9mIG1v ZGUgbSBpbnRvIHNldmVyYWwgZGlzdGluY3QgbWVtb3J5IGxvY2F0aW9ucy4NCj4gK09wZXJhbmQg MCBpcyBhIHNjYWxhciBiYXNlIGFkZHJlc3MgYW5kIG9wZXJhbmQgMSBpcyBzY2FsYXIgc3RyaWRl IG9mIFBtb2RlLg0KPiArT3BlcmFuZCAyIGlzIHRoZSB2ZWN0b3Igb2YgdmFsdWVzIHRoYXQgc2hv dWxkIGJlIHN0b3JlZCwgd2hpY2ggaXMgb2YgbW9kZSBAdmFye219Lg0KPiArb3BlcmFuZCAzIGlz IG1hc2sgb3BlcmFuZCwgb3BlcmFuZCA0IGlzIGxlbmd0aCBvcGVyYW5kIGFuZCBvcGVyYW5kIDUg aXMgYmlhcyBvcGVyYW5kLg0KPiArVGhlIGluc3RydWN0aW9uIGNhbiBiZSBzZWVuIGFzIGEgc3Bl Y2lhbCBjYXNlIG9mIEBjb2Rle21hc2tfbGVuX3NjYXR0ZXJfc3RvcmVAdmFye219QHZhcntufX0N Cj4gK3dpdGggYW4gb2Zmc2V0IHZlY3RvciB0aGF0IGlzIGEgQGNvZGV7dmVjX3Nlcmllc30gd2l0 aCBvcGVyYW5kIDEgYXMgYmFzZSBhbmQgb3BlcmFuZCAxIGFzIHN0ZXAuDQo+ICtGb3IgZWFjaCBl bGVtZW50IGluZGV4IGkgc3RvcmUgYWRkcmVzcyBpcyBvcGVyYW5kIDAgKyBAdmFye2l9ICogb3Bl cmFuZCAxLg0KPiArU2ltaWxhciB0byBtYXNrX2xlbl9zdG9yZSwgdGhlIGluc3RydWN0aW9uIHN0 b3JlcyBhdCBtb3N0IChvcGVyYW5kIDQgKyBvcGVyYW5kIDUpIGVsZW1lbnRzIG9mIG1hc2sgKG9w ZXJhbmQgMykgdG8gbWVtb3J5Lg0KPiArRWxlbWVudCBAdmFye2l9IG9mIHRoZSBtYXNrIGlzIHNl dCBpZiBlbGVtZW50IEB2YXJ7aX0gb2YgKG9wZXJhbmQgMykgc2hvdWxkIGJlIHN0b3JlZC4NCj4g K01hc2sgZWxlbWVudHMgQHZhcntpfSB3aXRoIEB2YXJ7aX0gPiAob3BlcmFuZCA0ICsgb3BlcmFu ZCA1KSBhcmUgaWdub3JlZC4NCj4gKw0KPiAgQGNpbmRleCBAY29kZXt2ZWNfc2V0QHZhcnttfX0g aW5zdHJ1Y3Rpb24gcGF0dGVybg0KPiAgQGl0ZW0gQHNhbXB7dmVjX3NldEB2YXJ7bX19DQo+ICBT ZXQgZ2l2ZW4gZmllbGQgaW4gdGhlIHZlY3RvciB2YWx1ZS4gIE9wZXJhbmQgMCBpcyB0aGUgdmVj dG9yIHRvIG1vZGlmeSwNCj4gZGlmZiAtLWdpdCBhL2djYy9pbnRlcm5hbC1mbi5jYyBiL2djYy9p bnRlcm5hbC1mbi5jYw0KPiBpbmRleCA5YzA5MDI2NzkzZi4uZjZlNTMyOWNkODQgMTAwNjQ0DQo+ IC0tLSBhL2djYy9pbnRlcm5hbC1mbi5jYw0KPiArKysgYi9nY2MvaW50ZXJuYWwtZm4uY2MNCj4g QEAgLTE1OSw2ICsxNTksNyBAQCBpbml0X2ludGVybmFsX2ZucyAoKQ0KPiAgI2RlZmluZSBsb2Fk X2xhbmVzX2RpcmVjdCB7IC0xLCAtMSwgZmFsc2UgfQ0KPiAgI2RlZmluZSBtYXNrX2xvYWRfbGFu ZXNfZGlyZWN0IHsgLTEsIC0xLCBmYWxzZSB9DQo+ICAjZGVmaW5lIGdhdGhlcl9sb2FkX2RpcmVj dCB7IDMsIDEsIGZhbHNlIH0NCj4gKyNkZWZpbmUgc3RyaWRlZF9sb2FkX2RpcmVjdCB7IC0xLCAt MSwgZmFsc2UgfQ0KPiAgI2RlZmluZSBsZW5fbG9hZF9kaXJlY3QgeyAtMSwgLTEsIGZhbHNlIH0N Cj4gICNkZWZpbmUgbWFza19sZW5fbG9hZF9kaXJlY3QgeyAtMSwgNCwgZmFsc2UgfQ0KPiAgI2Rl ZmluZSBtYXNrX3N0b3JlX2RpcmVjdCB7IDMsIDIsIGZhbHNlIH0NCj4gQEAgLTE2OCw2ICsxNjks NyBAQCBpbml0X2ludGVybmFsX2ZucyAoKQ0KPiAgI2RlZmluZSB2ZWNfY29uZF9tYXNrX2xlbl9k aXJlY3QgeyAxLCAxLCBmYWxzZSB9DQo+ICAjZGVmaW5lIHZlY19jb25kX2RpcmVjdCB7IDIsIDAs IGZhbHNlIH0NCj4gICNkZWZpbmUgc2NhdHRlcl9zdG9yZV9kaXJlY3QgeyAzLCAxLCBmYWxzZSB9 DQo+ICsjZGVmaW5lIHN0cmlkZWRfc3RvcmVfZGlyZWN0IHsgMSwgMSwgZmFsc2UgfQ0KPiAgI2Rl ZmluZSBsZW5fc3RvcmVfZGlyZWN0IHsgMywgMywgZmFsc2UgfQ0KPiAgI2RlZmluZSBtYXNrX2xl bl9zdG9yZV9kaXJlY3QgeyA0LCA1LCBmYWxzZSB9DQo+ICAjZGVmaW5lIHZlY19zZXRfZGlyZWN0 IHsgMywgMywgZmFsc2UgfQ0KPiBAQCAtMzY2OCw2ICszNjcwLDY4IEBAIGV4cGFuZF9nYXRoZXJf bG9hZF9vcHRhYl9mbiAoaW50ZXJuYWxfZm4sIGdjYWxsICpzdG10LCBkaXJlY3Rfb3B0YWIgb3B0 YWIpDQo+ICAgICAgZW1pdF9tb3ZlX2luc24gKGxoc19ydHgsIG9wc1swXS52YWx1ZSk7DQo+ICB9 DQo+DQo+ICsvKiBFeHBhbmQgTUFTS19MRU5fU1RSSURFRF9MT0FEIGNhbGwgQ0FMTCBieSBvcHRh YiBPUFRBQi4gICovDQo+ICsNCj4gK3N0YXRpYyB2b2lkDQo+ICtleHBhbmRfc3RyaWRlZF9sb2Fk X29wdGFiX2ZuIChBVFRSSUJVVEVfVU5VU0VEIGludGVybmFsX2ZuLCBnY2FsbCAqc3RtdCwNCj4g KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlyZWN0X29wdGFiIG9wdGFiKQ0KPiArew0K PiArICB0cmVlIGxocyA9IGdpbXBsZV9jYWxsX2xocyAoc3RtdCk7DQo+ICsgIHRyZWUgYmFzZSA9 IGdpbXBsZV9jYWxsX2FyZyAoc3RtdCwgMCk7DQo+ICsgIHRyZWUgc3RyaWRlID0gZ2ltcGxlX2Nh bGxfYXJnIChzdG10LCAxKTsNCj4gKw0KPiArICBydHggbGhzX3J0eCA9IGV4cGFuZF9leHByIChs aHMsIE5VTExfUlRYLCBWT0lEbW9kZSwgRVhQQU5EX1dSSVRFKTsNCj4gKyAgcnR4IGJhc2VfcnR4 ID0gZXhwYW5kX25vcm1hbCAoYmFzZSk7DQo+ICsgIHJ0eCBzdHJpZGVfcnR4ID0gZXhwYW5kX25v cm1hbCAoc3RyaWRlKTsNCj4gKw0KPiArICB1bnNpZ25lZCBpID0gMDsNCj4gKyAgY2xhc3MgZXhw YW5kX29wZXJhbmQgb3BzWzZdOw0KPiArICBtYWNoaW5lX21vZGUgbW9kZSA9IFRZUEVfTU9ERSAo VFJFRV9UWVBFIChsaHMpKTsNCj4gKw0KPiArICBjcmVhdGVfb3V0cHV0X29wZXJhbmQgKCZvcHNb aSsrXSwgbGhzX3J0eCwgbW9kZSk7DQo+ICsgIGNyZWF0ZV9hZGRyZXNzX29wZXJhbmQgKCZvcHNb aSsrXSwgYmFzZV9ydHgpOw0KPiArICBjcmVhdGVfYWRkcmVzc19vcGVyYW5kICgmb3BzW2krK10s IHN0cmlkZV9ydHgpOw0KPiArDQo+ICsgIGluc25fY29kZSBpY29kZSA9IGRpcmVjdF9vcHRhYl9o YW5kbGVyIChvcHRhYiwgbW9kZSk7DQo+ICsNCj4gKyAgaSA9IGFkZF9tYXNrX2FuZF9sZW5fYXJn cyAob3BzLCBpLCBzdG10KTsNCj4gKyAgZXhwYW5kX2luc24gKGljb2RlLCBpLCBvcHMpOw0KPiAr DQo+ICsgIGlmICghcnR4X2VxdWFsX3AgKGxoc19ydHgsIG9wc1swXS52YWx1ZSkpDQo+ICsgICAg ZW1pdF9tb3ZlX2luc24gKGxoc19ydHgsIG9wc1swXS52YWx1ZSk7DQo+ICt9DQo+ICsNCj4gKy8q IEV4cGFuZCBNQVNLX0xFTl9TVFJJREVEX1NUT1JFIGNhbGwgQ0FMTCBieSBvcHRhYiBPUFRBQi4g ICovDQo+ICsNCj4gK3N0YXRpYyB2b2lkDQo+ICtleHBhbmRfc3RyaWRlZF9zdG9yZV9vcHRhYl9m biAoQVRUUklCVVRFX1VOVVNFRCBpbnRlcm5hbF9mbiwgZ2NhbGwgKnN0bXQsDQo+ICsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBkaXJlY3Rfb3B0YWIgb3B0YWIpDQo+ICt7DQo+ICsgIGlu dGVybmFsX2ZuIGZuID0gZ2ltcGxlX2NhbGxfaW50ZXJuYWxfZm4gKHN0bXQpOw0KPiArICBpbnQg cmhzX2luZGV4ID0gaW50ZXJuYWxfZm5fc3RvcmVkX3ZhbHVlX2luZGV4IChmbik7DQo+ICsNCj4g KyAgdHJlZSBiYXNlID0gZ2ltcGxlX2NhbGxfYXJnIChzdG10LCAwKTsNCj4gKyAgdHJlZSBzdHJp ZGUgPSBnaW1wbGVfY2FsbF9hcmcgKHN0bXQsIDEpOw0KPiArICB0cmVlIHJocyA9IGdpbXBsZV9j YWxsX2FyZyAoc3RtdCwgcmhzX2luZGV4KTsNCj4gKw0KPiArICBydHggYmFzZV9ydHggPSBleHBh bmRfbm9ybWFsIChiYXNlKTsNCj4gKyAgcnR4IHN0cmlkZV9ydHggPSBleHBhbmRfbm9ybWFsIChz dHJpZGUpOw0KPiArICBydHggcmhzX3J0eCA9IGV4cGFuZF9ub3JtYWwgKHJocyk7DQo+ICsNCj4g KyAgdW5zaWduZWQgaSA9IDA7DQo+ICsgIGNsYXNzIGV4cGFuZF9vcGVyYW5kIG9wc1s2XTsNCj4g KyAgbWFjaGluZV9tb2RlIG1vZGUgPSBUWVBFX01PREUgKFRSRUVfVFlQRSAocmhzKSk7DQo+ICsN Cj4gKyAgY3JlYXRlX2FkZHJlc3Nfb3BlcmFuZCAoJm9wc1tpKytdLCBiYXNlX3J0eCk7DQo+ICsg IGNyZWF0ZV9hZGRyZXNzX29wZXJhbmQgKCZvcHNbaSsrXSwgc3RyaWRlX3J0eCk7DQo+ICsgIGNy ZWF0ZV9pbnB1dF9vcGVyYW5kICgmb3BzW2krK10sIHJoc19ydHgsIG1vZGUpOw0KPiArDQo+ICsg IGluc25fY29kZSBpY29kZSA9IGRpcmVjdF9vcHRhYl9oYW5kbGVyIChvcHRhYiwgbW9kZSk7DQo+ ICsgIGkgPSBhZGRfbWFza19hbmRfbGVuX2FyZ3MgKG9wcywgaSwgc3RtdCk7DQo+ICsNCj4gKyAg ZXhwYW5kX2luc24gKGljb2RlLCBpLCBvcHMpOw0KPiArfQ0KPiArDQo+ICAvKiBIZWxwZXIgZm9y IGV4cGFuZF9ESVZNT0QuICBSZXR1cm4gdHJ1ZSBpZiB0aGUgc2VxdWVuY2Ugc3RhcnRpbmcgd2l0 aA0KPiAgICAgSU5TTiBjb250YWlucyBhbnkgY2FsbCBpbnNucyBvciBpbnNucyB3aXRoIHssVX17 RElWLE1PRH0gcnR4ZXMuICAqLw0KPg0KPiBAQCAtNDA1OCw2ICs0MTIyLDcgQEAgbXVsdGlfdmVj dG9yX29wdGFiX3N1cHBvcnRlZF9wIChjb252ZXJ0X29wdGFiIG9wdGFiLCB0cmVlX3BhaXIgdHlw ZXMsDQo+ICAjZGVmaW5lIGRpcmVjdF9sb2FkX2xhbmVzX29wdGFiX3N1cHBvcnRlZF9wIG11bHRp X3ZlY3Rvcl9vcHRhYl9zdXBwb3J0ZWRfcA0KPiAgI2RlZmluZSBkaXJlY3RfbWFza19sb2FkX2xh bmVzX29wdGFiX3N1cHBvcnRlZF9wIG11bHRpX3ZlY3Rvcl9vcHRhYl9zdXBwb3J0ZWRfcA0KPiAg I2RlZmluZSBkaXJlY3RfZ2F0aGVyX2xvYWRfb3B0YWJfc3VwcG9ydGVkX3AgY29udmVydF9vcHRh Yl9zdXBwb3J0ZWRfcA0KPiArI2RlZmluZSBkaXJlY3Rfc3RyaWRlZF9sb2FkX29wdGFiX3N1cHBv cnRlZF9wIGRpcmVjdF9vcHRhYl9zdXBwb3J0ZWRfcA0KPiAgI2RlZmluZSBkaXJlY3RfbGVuX2xv YWRfb3B0YWJfc3VwcG9ydGVkX3AgZGlyZWN0X29wdGFiX3N1cHBvcnRlZF9wDQo+ICAjZGVmaW5l IGRpcmVjdF9tYXNrX2xlbl9sb2FkX29wdGFiX3N1cHBvcnRlZF9wIGNvbnZlcnRfb3B0YWJfc3Vw cG9ydGVkX3ANCj4gICNkZWZpbmUgZGlyZWN0X21hc2tfc3RvcmVfb3B0YWJfc3VwcG9ydGVkX3Ag Y29udmVydF9vcHRhYl9zdXBwb3J0ZWRfcA0KPiBAQCAtNDA2Niw2ICs0MTMxLDcgQEAgbXVsdGlf dmVjdG9yX29wdGFiX3N1cHBvcnRlZF9wIChjb252ZXJ0X29wdGFiIG9wdGFiLCB0cmVlX3BhaXIg dHlwZXMsDQo+ICAjZGVmaW5lIGRpcmVjdF92ZWNfY29uZF9tYXNrX29wdGFiX3N1cHBvcnRlZF9w IGNvbnZlcnRfb3B0YWJfc3VwcG9ydGVkX3ANCj4gICNkZWZpbmUgZGlyZWN0X3ZlY19jb25kX29w dGFiX3N1cHBvcnRlZF9wIGNvbnZlcnRfb3B0YWJfc3VwcG9ydGVkX3ANCj4gICNkZWZpbmUgZGly ZWN0X3NjYXR0ZXJfc3RvcmVfb3B0YWJfc3VwcG9ydGVkX3AgY29udmVydF9vcHRhYl9zdXBwb3J0 ZWRfcA0KPiArI2RlZmluZSBkaXJlY3Rfc3RyaWRlZF9zdG9yZV9vcHRhYl9zdXBwb3J0ZWRfcCBk aXJlY3Rfb3B0YWJfc3VwcG9ydGVkX3ANCj4gICNkZWZpbmUgZGlyZWN0X2xlbl9zdG9yZV9vcHRh Yl9zdXBwb3J0ZWRfcCBkaXJlY3Rfb3B0YWJfc3VwcG9ydGVkX3ANCj4gICNkZWZpbmUgZGlyZWN0 X21hc2tfbGVuX3N0b3JlX29wdGFiX3N1cHBvcnRlZF9wIGNvbnZlcnRfb3B0YWJfc3VwcG9ydGVk X3ANCj4gICNkZWZpbmUgZGlyZWN0X3doaWxlX29wdGFiX3N1cHBvcnRlZF9wIGNvbnZlcnRfb3B0 YWJfc3VwcG9ydGVkX3ANCj4gQEAgLTQ3MjMsNiArNDc4OSw4IEBAIGludGVybmFsX2ZuX2xlbl9p bmRleCAoaW50ZXJuYWxfZm4gZm4pDQo+ICAgICAgY2FzZSBJRk5fQ09ORF9MRU5fWE9SOg0KPiAg ICAgIGNhc2UgSUZOX0NPTkRfTEVOX1NITDoNCj4gICAgICBjYXNlIElGTl9DT05EX0xFTl9TSFI6 DQo+ICsgICAgY2FzZSBJRk5fTUFTS19MRU5fU1RSSURFRF9MT0FEOg0KPiArICAgIGNhc2UgSUZO X01BU0tfTEVOX1NUUklERURfU1RPUkU6DQo+ICAgICAgICByZXR1cm4gNDsNCj4NCj4gICAgICBj YXNlIElGTl9DT05EX0xFTl9ORUc6DQo+IEBAIC00ODE3LDYgKzQ4ODUsMTAgQEAgaW50ZXJuYWxf Zm5fbWFza19pbmRleCAoaW50ZXJuYWxfZm4gZm4pDQo+ICAgICAgY2FzZSBJRk5fTUFTS19MRU5f U1RPUkU6DQo+ICAgICAgICByZXR1cm4gMjsNCj4NCj4gKyAgICBjYXNlIElGTl9NQVNLX0xFTl9T VFJJREVEX0xPQUQ6DQo+ICsgICAgY2FzZSBJRk5fTUFTS19MRU5fU1RSSURFRF9TVE9SRToNCj4g KyAgICAgIHJldHVybiAzOw0KPiArDQo+ICAgICAgY2FzZSBJRk5fTUFTS19HQVRIRVJfTE9BRDoN Cj4gICAgICBjYXNlIElGTl9NQVNLX1NDQVRURVJfU1RPUkU6DQo+ICAgICAgY2FzZSBJRk5fTUFT S19MRU5fR0FUSEVSX0xPQUQ6DQo+IEBAIC00ODQwLDYgKzQ5MTIsOSBAQCBpbnRlcm5hbF9mbl9z dG9yZWRfdmFsdWVfaW5kZXggKGludGVybmFsX2ZuIGZuKQ0KPiAgew0KPiAgICBzd2l0Y2ggKGZu KQ0KPiAgICAgIHsNCj4gKyAgICBjYXNlIElGTl9NQVNLX0xFTl9TVFJJREVEX1NUT1JFOg0KPiAr ICAgICAgcmV0dXJuIDI7DQo+ICsNCj4gICAgICBjYXNlIElGTl9NQVNLX1NUT1JFOg0KPiAgICAg IGNhc2UgSUZOX01BU0tfU1RPUkVfTEFORVM6DQo+ICAgICAgY2FzZSBJRk5fU0NBVFRFUl9TVE9S RToNCj4gZGlmZiAtLWdpdCBhL2djYy9pbnRlcm5hbC1mbi5kZWYgYi9nY2MvaW50ZXJuYWwtZm4u ZGVmDQo+IGluZGV4IDI1YmFkYmI4NmU1Li5iMzBhN2E1YjAwOSAxMDA2NDQNCj4gLS0tIGEvZ2Nj L2ludGVybmFsLWZuLmRlZg0KPiArKysgYi9nY2MvaW50ZXJuYWwtZm4uZGVmDQo+IEBAIC01Niw2 ICs1Niw3IEBAIGFsb25nIHdpdGggR0NDOyBzZWUgdGhlIGZpbGUgQ09QWUlORzMuICBJZiBub3Qg c2VlDQo+ICAgICAtIG1hc2tfbG9hZF9sYW5lczogY3VycmVudGx5IGp1c3QgdmVjX21hc2tfbG9h ZF9sYW5lcw0KPiAgICAgLSBtYXNrX2xlbl9sb2FkX2xhbmVzOiBjdXJyZW50bHkganVzdCB2ZWNf bWFza19sZW5fbG9hZF9sYW5lcw0KPiAgICAgLSBnYXRoZXJfbG9hZDogdXNlZCBmb3Ige21hc2tf LG1hc2tfbGVuXyx9Z2F0aGVyX2xvYWQNCj4gKyAgIC0gc3RyaWRlZF9sb2FkOiBjdXJyZW50bHkg anVzdCBtYXNrX2xlbl9zdHJpZGVkX2xvYWQNCj4gICAgIC0gbGVuX2xvYWQ6IGN1cnJlbnRseSBq dXN0IGxlbl9sb2FkDQo+ICAgICAtIG1hc2tfbGVuX2xvYWQ6IGN1cnJlbnRseSBqdXN0IG1hc2tf bGVuX2xvYWQNCj4NCj4gQEAgLTY0LDYgKzY1LDcgQEAgYWxvbmcgd2l0aCBHQ0M7IHNlZSB0aGUg ZmlsZSBDT1BZSU5HMy4gIElmIG5vdCBzZWUNCj4gICAgIC0gbWFza19zdG9yZV9sYW5lczogY3Vy cmVudGx5IGp1c3QgdmVjX21hc2tfc3RvcmVfbGFuZXMNCj4gICAgIC0gbWFza19sZW5fc3RvcmVf bGFuZXM6IGN1cnJlbnRseSBqdXN0IHZlY19tYXNrX2xlbl9zdG9yZV9sYW5lcw0KPiAgICAgLSBz Y2F0dGVyX3N0b3JlOiB1c2VkIGZvciB7bWFza18sbWFza19sZW5fLH1zY2F0dGVyX3N0b3JlDQo+ ICsgICAtIHN0cmlkZWRfc3RvcmU6IGN1cnJlbnRseSBqdXN0IG1hc2tfbGVuX3N0cmlkZWRfc3Rv cmUNCj4gICAgIC0gbGVuX3N0b3JlOiBjdXJyZW50bHkganVzdCBsZW5fc3RvcmUNCj4gICAgIC0g bWFza19sZW5fc3RvcmU6IGN1cnJlbnRseSBqdXN0IG1hc2tfbGVuX3N0b3JlDQo+DQo+IEBAIC0y MTIsNiArMjE0LDggQEAgREVGX0lOVEVSTkFMX09QVEFCX0ZOIChNQVNLX0dBVEhFUl9MT0FELCBF Q0ZfUFVSRSwNCj4gICAgICAgICAgICAgICAgICAgICAgICBtYXNrX2dhdGhlcl9sb2FkLCBnYXRo ZXJfbG9hZCkNCj4gIERFRl9JTlRFUk5BTF9PUFRBQl9GTiAoTUFTS19MRU5fR0FUSEVSX0xPQUQs IEVDRl9QVVJFLA0KPiAgICAgICAgICAgICAgICAgICAgICAgIG1hc2tfbGVuX2dhdGhlcl9sb2Fk LCBnYXRoZXJfbG9hZCkNCj4gK0RFRl9JTlRFUk5BTF9PUFRBQl9GTiAoTUFTS19MRU5fU1RSSURF RF9MT0FELCBFQ0ZfUFVSRSwNCj4gKyAgICAgICAgICAgICAgICAgICAgICBtYXNrX2xlbl9zdHJp ZGVkX2xvYWQsIHN0cmlkZWRfbG9hZCkNCj4NCj4gIERFRl9JTlRFUk5BTF9PUFRBQl9GTiAoTEVO X0xPQUQsIEVDRl9QVVJFLCBsZW5fbG9hZCwgbGVuX2xvYWQpDQo+ICBERUZfSU5URVJOQUxfT1BU QUJfRk4gKE1BU0tfTEVOX0xPQUQsIEVDRl9QVVJFLCBtYXNrX2xlbl9sb2FkLCBtYXNrX2xlbl9s b2FkKQ0KPiBAQCAtMjIxLDYgKzIyNSw4IEBAIERFRl9JTlRFUk5BTF9PUFRBQl9GTiAoTUFTS19T Q0FUVEVSX1NUT1JFLCAwLA0KPiAgICAgICAgICAgICAgICAgICAgICAgIG1hc2tfc2NhdHRlcl9z dG9yZSwgc2NhdHRlcl9zdG9yZSkNCj4gIERFRl9JTlRFUk5BTF9PUFRBQl9GTiAoTUFTS19MRU5f U0NBVFRFUl9TVE9SRSwgMCwNCj4gICAgICAgICAgICAgICAgICAgICAgICBtYXNrX2xlbl9zY2F0 dGVyX3N0b3JlLCBzY2F0dGVyX3N0b3JlKQ0KPiArREVGX0lOVEVSTkFMX09QVEFCX0ZOIChNQVNL X0xFTl9TVFJJREVEX1NUT1JFLCAwLA0KPiArICAgICAgICAgICAgICAgICAgICAgIG1hc2tfbGVu X3N0cmlkZWRfc3RvcmUsIHN0cmlkZWRfc3RvcmUpDQo+DQo+ICBERUZfSU5URVJOQUxfT1BUQUJf Rk4gKE1BU0tfU1RPUkUsIDAsIG1hc2tzdG9yZSwgbWFza19zdG9yZSkNCj4gIERFRl9JTlRFUk5B TF9PUFRBQl9GTiAoU1RPUkVfTEFORVMsIEVDRl9DT05TVCwgdmVjX3N0b3JlX2xhbmVzLCBzdG9y ZV9sYW5lcykNCj4gZGlmZiAtLWdpdCBhL2djYy9vcHRhYnMuZGVmIGIvZ2NjL29wdGFicy5kZWYN Cj4gaW5kZXggM2YyY2I0NmFmZjguLjYzMGIxZGU4Zjk3IDEwMDY0NA0KPiAtLS0gYS9nY2Mvb3B0 YWJzLmRlZg0KPiArKysgYi9nY2Mvb3B0YWJzLmRlZg0KPiBAQCAtNTM5LDQgKzUzOSw2IEBAIE9Q VEFCX0RDICh2ZWNfc2VyaWVzX29wdGFiLCAidmVjX3NlcmllcyRhIiwgVkVDX1NFUklFUykNCj4g IE9QVEFCX0QgKHZlY19zaGxfaW5zZXJ0X29wdGFiLCAidmVjX3NobF9pbnNlcnRfJGEiKQ0KPiAg T1BUQUJfRCAobGVuX2xvYWRfb3B0YWIsICJsZW5fbG9hZF8kYSIpDQo+ICBPUFRBQl9EIChsZW5f c3RvcmVfb3B0YWIsICJsZW5fc3RvcmVfJGEiKQ0KPiArT1BUQUJfRCAobWFza19sZW5fc3RyaWRl ZF9sb2FkX29wdGFiLCAibWFza19sZW5fc3RyaWRlZF9sb2FkXyRhIikNCj4gK09QVEFCX0QgKG1h c2tfbGVuX3N0cmlkZWRfc3RvcmVfb3B0YWIsICJtYXNrX2xlbl9zdHJpZGVkX3N0b3JlXyRhIikN Cj4gIE9QVEFCX0QgKHNlbGVjdF92bF9vcHRhYiwgInNlbGVjdF92bCRhIikNCj4gLS0NCj4gMi4z NC4xDQo+DQo=