From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.7]) by sourceware.org (Postfix) with ESMTPS id C8ABD3858D20 for ; Wed, 15 Nov 2023 00:19:02 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org C8ABD3858D20 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 C8ABD3858D20 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=192.198.163.7 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1700007562; cv=pass; b=taYSDVo7oVf5GgYX9sdWbEq8YhfDvcL+fFN79eYeA1hlahn9+3Yvw47mpt6pN867YtMu1uU3yAdYgVrg+LWQklnfLSeuLw/86lm6J8urnRUn/J24X3dlr8uaFWAQMx+0/ToCMz/G1ZV50L/laDSF/C+gL+8mtZ0uXtcTHw07qu4= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1700007562; c=relaxed/simple; bh=z5JS8uwGohPEj4vKN04R2shdMD64uhCCflMkt6h2MPE=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=MkmeQo7j1o+R3klKwwog1RFQSeM+sFqjYTmhywRn2X1ZnPs+3mvVQFBXMDxab1VmoDx7L6pd7rtU8dyHZR5Jgme7d85z79EBAIgZb1vJGc5+CuJSMER7P/c3aVhf39DQh4YY0cLVrqAIK5LQeAinKGxt4W1tz/pMEedifCoj9dA= 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=1700007543; x=1731543543; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=z5JS8uwGohPEj4vKN04R2shdMD64uhCCflMkt6h2MPE=; b=E5KR11SeqLA7Wh/COfC43TZI7vBOXG1zPalk1qY6eboNlwZ7+mxR37yf 0VvuRqWxqTo1R1+pUOGizr7HWGQy88QspUweS/1g0k94CoI2OaMoVeKtZ GtRtsUs6LPQfkU1S/5AldIEZHQU430LUe2Kq7A5D2+DzXboqb3LUTIGZV w8L/2tTRCC28HZ2A1wBmRV9qtdkgF/9cIxp0WXV/mqLzcGijR4bgWtKU5 qXD1ZFG7agDzm2+pCXZ/FvSQwaoos76OTLCgklUXZK8mxTuiQv0PE581g dxkkPdoQK6txenyJGiPa36vlyZo7QEgtlYvV5PO53BMY3bh2e6bPScj9I Q==; X-IronPort-AV: E=McAfee;i="6600,9927,10894"; a="12319811" X-IronPort-AV: E=Sophos;i="6.03,303,1694761200"; d="scan'208";a="12319811" Received: from orsmga007.jf.intel.com ([10.7.209.58]) by fmvoesa101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 14 Nov 2023 16:18:33 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10894"; a="758329477" X-IronPort-AV: E=Sophos;i="6.03,303,1694761200"; d="scan'208";a="758329477" Received: from orsmsx601.amr.corp.intel.com ([10.22.229.14]) by orsmga007.jf.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 14 Nov 2023 16:18:19 -0800 Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) by ORSMSX601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.34; Tue, 14 Nov 2023 16:18:18 -0800 Received: from ORSEDG601.ED.cps.intel.com (10.7.248.6) by orsmsx612.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.34 via Frontend Transport; Tue, 14 Nov 2023 16:18:18 -0800 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (104.47.55.168) by edgegateway.intel.com (134.134.137.102) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.34; Tue, 14 Nov 2023 16:18:18 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=XBPhVnZJme8hpmKCaBmjRD1eD5LPYCOnXbD+lUk0rguqfkcR7usX7t2fQqA59HNbYocs7l/9dcx8rmAwpopp9aYVA76cNR+jTRCtghp92HceT0LwTZU5MhPWItYblpG3tBWXTTNr5h8ziZjwDTY9IHw42+GbZy/syB8HnnwBw76i/Bzq0lT628oA3av980gdYduJp4dqbIlfNUU4HmNlXavUDorCR3lXJodhhEHvP21kiiIWPSDs3jZ7nZEkjJzl76dah/gAnpsdO+Ql7VmHRLxVc+XpkwZ6STrF7oXbrAXaiJcAeSIiTOKfNDi+63nzEcqrg+JriPL+tst7g8jZIw== 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=z5JS8uwGohPEj4vKN04R2shdMD64uhCCflMkt6h2MPE=; b=atPDKXNn8Sg4uRUrixrUeR3+vlAHcjs6e14fzSYqHmVz3+uuvEFqdQ4BMnao65zUP8e6FEhuCoD03NDTI1zNMQIniknCX6ovBhKOKn7eZiE02hpPJ626jIoCdFf5XpfC7D1KZ/QnfCIKb4CxQWcdzapBViCckDYsBzmv+UnPbyftEB7RBpAR68EvTHxL6cN9Eiu+ymHhIYwXp4UE2gMxpbrQW0ox33B6251J3OHQ2gfOoW3oNMYKUgd5+RlVGZ7Thwt30QTN4RcRNLbzp34hUPqzGCqTMvcc66zQ5zw7UzTm9v0kqCs50gvVPZbYycTFYjCZC14LWStEY8tNcLpmfw== 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 PH8PR11MB7047.namprd11.prod.outlook.com (2603:10b6:510:215::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6977.29; Wed, 15 Nov 2023 00:18:16 +0000 Received: from MW5PR11MB5908.namprd11.prod.outlook.com ([fe80::4317:53a0:2638:358c]) by MW5PR11MB5908.namprd11.prod.outlook.com ([fe80::4317:53a0:2638:358c%5]) with mapi id 15.20.6977.029; Wed, 15 Nov 2023 00:18:16 +0000 From: "Li, Pan2" To: Jeff Law , "gcc-patches@gcc.gnu.org" CC: "juzhe.zhong@rivai.ai" , "Wang, Yanzhang" , "kito.cheng@gmail.com" , "richard.guenther@gmail.com" , "richard.sandiford@arm.com2" Subject: RE: [PATCH v4] DSE: Allow vector type for get_stored_val when read < store Thread-Topic: [PATCH v4] DSE: Allow vector type for get_stored_val when read < store Thread-Index: AQHaFeCtiILIvA/cUE6pVff5ehr+7bB4r4EAgAHWGDA= Date: Wed, 15 Nov 2023 00:18:16 +0000 Message-ID: References: <20231102031423.3751965-1-pan2.li@intel.com> <20231113032237.1379330-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_|PH8PR11MB7047:EE_ x-ms-office365-filtering-correlation-id: 49cedf34-5622-4fd6-cd28-08dbe5705cf4 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: L+4L/IuoCR1eMmgQYIHUrpcj+ap8aZ0FTk/cNdOzGOwudcmctj5ZE9hbMQpjwVIKT5MM0RK8tqKHW977/mdGKhbjsa7cTCbSbpUhYyXIC6cGVsIxamPUvuvKmsdOjhNdnIv4zjBU303qah+GDHPn+MF2GQN0w14Yaulh6HE2X6aaHXDJhXP8T8AvfNEgQf9/V1s3PopjD4GARAUPJzwbeovfkK02qKWzZIPk9675E5iFTC5ddYG51oGku3Xqn7vK1TAfAKCWXUimHX1sKv5x5IMZSXySWgWHxVn21ssZIppSIme+P2A2Wv0fE+id2MKVWCGV+j8claN2/o6bBw6PAYxJlANmmE65BRxomXn2m59XVARxbus+z43NhXzXe1CHJ8fv6HjdpcgsqJmgUn7Oko1SYnDEW9Fj55WqJD2iGI4LWRcqO5d5dD7L2HhKeCXQQ7+lM0e7I/isgmAp1JyfPhmZKutAVzuY0Nmd5LkkAz/Cw88LBpM42bvJtTqbtu+IUy0phOsuQB2KDCuVg56Xo4LXbzEwcbrc+yD7w7c5LrTdCnFYj47pn/Ik73WTS5byNERtAHTXNqrGitQh3f6CicZLm8U8seAQaU+PVMoQG/uOhn/wK9YcuURdOXyI35lIlDdEZtqweyetFVVrjeEScg== 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)(376002)(346002)(396003)(136003)(366004)(39860400002)(230922051799003)(64100799003)(451199024)(1800799009)(186009)(84970400001)(66476007)(54906003)(55016003)(66446008)(76116006)(316002)(66946007)(9686003)(38100700002)(83380400001)(64756008)(66556008)(110136005)(82960400001)(8676002)(8936002)(4326008)(122000001)(478600001)(6506007)(7696005)(53546011)(52536014)(86362001)(5660300002)(71200400001)(38070700009)(2906002)(26005)(33656002)(41300700001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?RUgwU2E0VzU1Q2VjUEM4QzA5blBRRTlrciswcktGQmRWRnZhR2pPOEUzeW9M?= =?utf-8?B?Y3JraDZKelNmdUZjdXA3NFRERkRYU0VmZkg4WEMrTVhvZ3VlQTFCY0tPeW4y?= =?utf-8?B?VUdDVlNnMmRrM0g5OU5zNHgyK01ZVytGZHBCbWozZ29WdzlwTHNnNFJPNlov?= =?utf-8?B?dk9aYi9rdjhheHFIaXYrVEF1NHdBRmR5MWZEdHkrYk5QTStRVjJxbmNENytJ?= =?utf-8?B?OWRHYmw5bTd3Q1NscnRGYjBrdSt6Q05oQlIzTjhQeEcvcDF6bDNGeGt4MkM1?= =?utf-8?B?RDBia0hKQUd3R2V1cGZ3MUU1T0xHeCs5NmZ4QXJ6ck0zd3pJUytZdllBcW5F?= =?utf-8?B?Y2RPTlVUNjRLaGViNGlwMlZOVEZpcFNmTk1WWUpzSW9lbUVuVUswZStxNjVu?= =?utf-8?B?TTRHRFpZRFJMalhEV3RLRlgxZWljWERic2NJT2QvYjF2ZG42NXlpZm91Wkoy?= =?utf-8?B?NkR6WXhoTFZ0ZVhQcVdKYmhoTmN1WXdKV0dEQjUwUTBGYmsrWXE5STEzc3Zv?= =?utf-8?B?ZEgvME5XVVo0QnRNempMNEw0eURucy9kbzlCN3EwU1l3eGpLb0xiRlJzeTRC?= =?utf-8?B?cGRKYUQzUHEvVldLSUtrbUJnamw1YTR3Q1FKU3NrUDBtazFCOEFNeGZ0UUxz?= =?utf-8?B?UEFwNEtJQ2ZaaGd6YUVMekpHL09pSUlWMDBlVE85WmVKV0YyNVozNUYrdlpn?= =?utf-8?B?UTlmTFJ0b0txSm1RWHJDd01oTnFROWVHNi9jRE9wQ1QwMHloTzZDSGVhd1Nl?= =?utf-8?B?bnZKL1R2SmFnU24wNzJDL05MQk5rN3BxWGtRYzkycnVhSnFMbkZhMUxuOUJu?= =?utf-8?B?dzhaV0hIWUpBWTc3T1NUeUlSaWRlQVRPYnBENnh2WGFnak53aFBra3VRYlFT?= =?utf-8?B?YU9UVjJMc2ZmenQ0K1NnUlhuSGh3a3VXN3c1UVFlc1ZJaUtMcnFESE1LbVkv?= =?utf-8?B?WDNQbTUrWjZsdGlYYStNem1BS0ZTeU0waW05U1J5RjBhc2JtbU5KbWs5NlNK?= =?utf-8?B?NWhKb3hJTnBVTTJtamJrbGtRcTl4NWRpdjJWVHpEWWU1ZjBHcHI0TGkwbEcw?= =?utf-8?B?TjdFOGFveXlaRFRtVHlzbnhlQkp1RzNmclRObldUempBMXBvQUF0N2FZczdz?= =?utf-8?B?a2thcTFHckNpRnNFaC9uZnRmTXVJb3ZpaTVyQ2VrRGNKTWdBS2FKd1NjTzRx?= =?utf-8?B?V0J6QVBHVStuUlpWYm5maTgwQTlSRlUzOVN0c29iM3c3MDJlSmJZdkh5bmZy?= =?utf-8?B?M1dyaGxYWHFKWGRHem43VStud0ozNU5VSUd4S2F1RkJKNXVTRjVNNDdSZ0Ex?= =?utf-8?B?czk2TmVUUFZvaGJxeWNsb29OWHVrUk1sRHpOMHgyZ3FaSWxLaU5GU1Q0eFIr?= =?utf-8?B?czQvNnFycFRzNkc4bFB5ZGxNclYyTWNVOCsvNzhkZTFORk5tckJOSElTZmht?= =?utf-8?B?TkxsQ0FzTElWWjNGajBQV3o1Yk5CWG5POCs1eHg3WCt0ZmVFRlVtMTk0OUth?= =?utf-8?B?ZVRka0lCQXYrSUhPdldnWjAvK3JYN3FRdnFORlhXM0Z4TzI4SDBQOVhPdTFu?= =?utf-8?B?TC9ldzRWdnNNTmlPQkRoZ1FTaUovWW9idGtvQStDbEJZcUtBQThrblBxZHFG?= =?utf-8?B?U2VRcXNIVFd5ZDlHNmk2cDNFb3lqdjhueTlxS0E5UkxrME1wQ1ZlZ3V1UWFJ?= =?utf-8?B?MEFtaXdkVUxUeHBxSmtYRmw1eXArS21JRDZRSTUxOGpISG1yVWdtZjNqeUQ5?= =?utf-8?B?ZEtvOUFsRHV6eW9SQ2dvSjcvem1LMGkrM052VmY3RVFsUW1zTVplVEZiY0ZE?= =?utf-8?B?dEtOZUgrOVhhemZUN29lNmdUeGpIVWsvNlEvRzdEb054MFJadEljZjI3Rjlx?= =?utf-8?B?UllnVXlBRDRGakdWNTFhS1diTnlLRU01RndVTFR4R052OENnVlZNNmhZVTR6?= =?utf-8?B?RVZWL25mdEpVdE5HaTJhMUVWVWNVQ1ByMVNoVk5uclZybjNFbCs4amdDdkhy?= =?utf-8?B?Q0YycHNxQk0xMFFiUXBxbGhHQjdpM1IxSTd6RExNTFVFQURaUXdSV1piZ2lm?= =?utf-8?B?ZGFsQjZUOFU4RzRmWmZkTzZnME5ScjZOVzMyczM2cTRKWEt6b3dGZFB6Tmtr?= =?utf-8?Q?XshA=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: 49cedf34-5622-4fd6-cd28-08dbe5705cf4 X-MS-Exchange-CrossTenant-originalarrivaltime: 15 Nov 2023 00:18:16.1694 (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: 4fAVL2GJcbbB6bS2HotdwLqiWrdLMMqgd+OSdUo38vZgQdSVpxBhQ16BdFyCufmByzw54qUbjwF3I2QcE7gukQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH8PR11MB7047 X-OriginatorOrg: intel.com X-Spam-Status: No, score=-6.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,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: PiBJIHdvdWxkbid0IHRyeSB0byBoYW5kbGUgdGhhdCBjYXNlIHVubGVzcyB3ZSBoYWQgYWN0dWFs IGV2aWRlbmNlIGl0IHdhcyANCj4gdXNlZnVsIHRvIGRvIHNvLiAgSnVzdCB3YW50ZWQgdG8gcG9p bnQgb3V0IHRoYXQgdW5saWtlIHBzZXVkb3Mgd2UgY2FuIA0KPiBoYXZlIG11bHRpcGxlIG1vZGVz IHJlZmVyZW5jaW5nIHRoZSBzYW1lIG1lbW9yeSBsb2NhdGlvbi4NCg0KR290IHRoZSBwb2ludCBo ZXJlLCB0aGFua3MgSmVmZiBmb3IgZW1waGFzaXppbmcgdGhpcywg8J+YiS4NCg0KUGFuDQoNCi0t LS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQpGcm9tOiBKZWZmIExhdyA8amVmZnJleWFsYXdAZ21h aWwuY29tPiANClNlbnQ6IFR1ZXNkYXksIE5vdmVtYmVyIDE0LCAyMDIzIDQ6MTIgQU0NClRvOiBM aSwgUGFuMiA8cGFuMi5saUBpbnRlbC5jb20+OyBnY2MtcGF0Y2hlc0BnY2MuZ251Lm9yZw0KQ2M6 IGp1emhlLnpob25nQHJpdmFpLmFpOyBXYW5nLCBZYW56aGFuZyA8eWFuemhhbmcud2FuZ0BpbnRl bC5jb20+OyBraXRvLmNoZW5nQGdtYWlsLmNvbTsgcmljaGFyZC5ndWVudGhlckBnbWFpbC5jb207 IHJpY2hhcmQuc2FuZGlmb3JkQGFybS5jb20yDQpTdWJqZWN0OiBSZTogW1BBVENIIHY0XSBEU0U6 IEFsbG93IHZlY3RvciB0eXBlIGZvciBnZXRfc3RvcmVkX3ZhbCB3aGVuIHJlYWQgPCBzdG9yZQ0K DQoNCg0KT24gMTEvMTIvMjMgMjA6MjIsIHBhbjIubGlAaW50ZWwuY29tIHdyb3RlOg0KPiBGcm9t OiBQYW4gTGkgPHBhbjIubGlAaW50ZWwuY29tPg0KPiANCj4gVXBkYXRlIGluIHY0Og0KPiAqIE1l cmdlIHVwc3RyZWFtIGFuZCByZW1vdmVkIHNvbWUgaW5kZXBlbmRlbnQgY2hhbmdlcy4NCj4gDQo+ IFVwZGF0ZSBpbiB2MzoNCj4gKiBUYWtlIGtub3duX2xlIGluc3RlYWQgb2Yga25vd25fbHQgZm9y IHZlY3RvciBzaXplLg0KPiAqIFJldHVybiBOVUxMX1JUWCB3aGVuIGdhcCBpcyBub3QgZXF1YWwg MCBhbmQgbm90IGNvbnN0YW50Lg0KPiANCj4gVXBkYXRlIGluIHYyOg0KPiAqIE1vdmUgdmVjdG9y IHR5cGUgc3VwcG9ydCB0byBnZXRfc3RvcmVkX3ZhbC4NCj4gDQo+IE9yaWdpbmFsIGxvZzoNCj4g DQo+IFRoaXMgcGF0Y2ggd291bGQgbGlrZSB0byBhbGxvdyB0aGUgdmVjdG9yIG1vZGUgaW4gdGhl DQo+IGdldF9zdG9yZWRfdmFsIGluIHRoZSBEU0UuIEl0IGlzIHZhbGlkIGZvciB0aGUgcmVhZA0K PiBydHggaWYgYW5kIG9ubHkgaWYgdGhlIHJlYWQgYml0c2l6ZSBpcyBsZXNzIHRoYW4gdGhlDQo+ IHN0b3JlZCBiaXRzaXplLg0KPiANCj4gR2l2ZW4gYmVsb3cgZXhhbXBsZSBjb2RlIHdpdGgNCj4g LS1wYXJhbT1yaXNjdi1hdXRvdmVjLXByZWZlcmVuY2U9Zml4ZWQtdmxtYXguDQo+IA0KPiB2dWlu dDhtMV90IHRlc3QgKCkgew0KPiAgICB1aW50OF90IGFyclszMl0gPSB7DQo+ICAgICAgMSwgMiwg NywgMSwgMywgNCwgNSwgMywgMSwgMCwgMSwgMiwgNCwgNCwgOSwgOSwNCj4gICAgICAxLCAyLCA3 LCAxLCAzLCA0LCA1LCAzLCAxLCAwLCAxLCAyLCA0LCA0LCA5LCA5LA0KPiAgICB9Ow0KPiANCj4g ICAgcmV0dXJuIF9fcmlzY3ZfdmxlOF92X3U4bTEoYXJyLCAzMik7DQo+IH0NCj4gDQo+IEJlZm9y ZSB0aGlzIHBhdGNoOg0KPiB0ZXN0Og0KPiAgICBsdWkgICAgIGE1LCVoaSguTEFOQ0hPUjApDQo+ ICAgIGFkZGkgICAgc3Asc3AsLTMyDQo+ICAgIGFkZGkgICAgYTUsYTUsJWxvKC5MQU5DSE9SMCkN Cj4gICAgbGkgICAgICBhMywzMg0KPiAgICB2bDJyZTY0LnYgICAgICAgdjIsMChhNSkNCj4gICAg dnNldHZsaSB6ZXJvLGEzLGU4LG0xLHRhLG1hDQo+ICAgIHZzMnIudiAgdjIsMChzcCkgICAgICAg ICAgICAgPD09IFVubmVjZXNzYXJ5IHN0b3JlIHRvIHN0YWNrDQo+ICAgIHZsZTgudiAgdjEsMChz cCkgICAgICAgICAgICAgPD09IERpdHRvDQo+ICAgIHZzMXIudiAgdjEsMChhMCkNCj4gICAgYWRk aSAgICBzcCxzcCwzMg0KPiAgICBqciAgICAgIHJhDQo+IA0KPiBBZnRlciB0aGlzIHBhdGNoOg0K PiB0ZXN0Og0KPiAgICBsdWkgICAgIGE1LCVoaSguTEFOQ0hPUjApDQo+ICAgIGFkZGkgICAgYTUs YTUsJWxvKC5MQU5DSE9SMCkNCj4gICAgbGkgICAgICBhNCwzMg0KPiAgICBhZGRpICAgIHNwLHNw LC0zMg0KPiAgICB2c2V0dmxpIHplcm8sYTQsZTgsbTEsdGEsbWENCj4gICAgdmxlOC52ICB2MSww KGE1KQ0KPiAgICB2czFyLnYgIHYxLDAoYTApDQo+ICAgIGFkZGkgICAgc3Asc3AsMzINCj4gICAg anIgICAgICByYQ0KPiANCj4gQmVsb3cgdGVzdHMgYXJlIHBhc3NlZCB3aXRoaW4gdGhpcyBwYXRj aDoNCj4gKiBUaGUgcmlzYy12IHJlZ3Jlc3Npb24gdGVzdC4NCj4gKiBUaGUgeDg2IGJvb3RzdHJh cCBhbmQgcmVncmVzc2lvbiB0ZXN0Lg0KPiAqIFRoZSBhYXJjaDY0IHJlZ3Jlc3Npb24gdGVzdC4N Cj4gDQo+IAlQUiB0YXJnZXQvMTExNzIwDQo+IA0KPiBnY2MvQ2hhbmdlTG9nOg0KPiANCj4gCSog ZHNlLmNjIChnZXRfc3RvcmVkX3ZhbCk6IEFsbG93IHZlY3RvciBtb2RlIGlmIHJlYWQgc2l6ZSBp cw0KPiAJbGVzcyB0aGFuIG9yIGVxdWFsIHRvIHN0b3JlZCBzaXplLg0KPiANCj4gZ2NjL3Rlc3Rz dWl0ZS9DaGFuZ2VMb2c6DQo+IA0KPiAJKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3ByMTEx NzIwLTAuYzogTmV3IHRlc3QuDQo+IAkqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvcHIxMTE3 MjAtMS5jOiBOZXcgdGVzdC4NCj4gCSogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS9wcjExMTcy MC0xMC5jOiBOZXcgdGVzdC4NCj4gCSogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS9wcjExMTcy MC0yLmM6IE5ldyB0ZXN0Lg0KPiAJKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3ByMTExNzIw LTMuYzogTmV3IHRlc3QuDQo+IAkqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvcHIxMTE3MjAt NC5jOiBOZXcgdGVzdC4NCj4gCSogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS9wcjExMTcyMC01 LmM6IE5ldyB0ZXN0Lg0KPiAJKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3ByMTExNzIwLTYu YzogTmV3IHRlc3QuDQo+IAkqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2Jhc2UvcHIxMTE3MjAtNy5j OiBOZXcgdGVzdC4NCj4gCSogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYmFzZS9wcjExMTcyMC04LmM6 IE5ldyB0ZXN0Lg0KPiAJKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9iYXNlL3ByMTExNzIwLTkuYzog TmV3IHRlc3QuDQpPSyBmb3IgdGhlIHRydW5rLg0KDQoNCj4gDQoNCj4gKyAgZWxzZSBpZiAoVkVD VE9SX01PREVfUCAocmVhZF9tb2RlKSAmJiBWRUNUT1JfTU9ERV9QIChzdG9yZV9tb2RlKQ0KPiAr ICAgICYmIGtub3duX2xlIChHRVRfTU9ERV9CSVRTSVpFIChyZWFkX21vZGUpLCBHRVRfTU9ERV9C SVRTSVpFIChzdG9yZV9tb2RlKSkNCj4gKyAgICAmJiB0YXJnZXRtLm1vZGVzX3RpZWFibGVfcCAo cmVhZF9tb2RlLCBzdG9yZV9tb2RlKSkNCj4gKyAgICByZWFkX3JlZyA9IGdlbl9sb3dwYXJ0IChy ZWFkX21vZGUsIGNvcHlfcnR4IChzdG9yZV9pbmZvLT5yaHMpKTsNCj4gICAgIGVsc2UNCj4gICAg ICAgcmVhZF9yZWcgPSBleHRyYWN0X2xvd19iaXRzIChyZWFkX21vZGUsIHN0b3JlX21vZGUsDQo+ ICAgCQkJCSBjb3B5X3J0eCAoc3RvcmVfaW5mby0+cmhzKSk7DQpJdCBtYXkgbm90IG1hdHRlciwg ZXNwZWNpYWxseSBmb3IgUlYsIGJ1dCB3ZSBjb3VsZCBwb3NzaWJseSBoYXZlIGEgDQptaXh0dXJl IG9mIHNjYWxhciBhbmQgdmVjdG9yIG1vZGVzIGluIHRoZSBSVEwuICBTYXkgYSB2ZWN0b3Igc3Rv cmUgDQpmb2xsb3dlZCBieSBhIHNjYWxhciByZWFkIG9yIHZpY2UtdmVyc2EuDQoNCkkgd291bGRu J3QgdHJ5IHRvIGhhbmRsZSB0aGF0IGNhc2UgdW5sZXNzIHdlIGhhZCBhY3R1YWwgZXZpZGVuY2Ug aXQgd2FzIA0KdXNlZnVsIHRvIGRvIHNvLiAgSnVzdCB3YW50ZWQgdG8gcG9pbnQgb3V0IHRoYXQg dW5saWtlIHBzZXVkb3Mgd2UgY2FuIA0KaGF2ZSBtdWx0aXBsZSBtb2RlcyByZWZlcmVuY2luZyB0 aGUgc2FtZSBtZW1vcnkgbG9jYXRpb24uDQoNCkplZmYNCg==