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 E41193858D1E for ; Sat, 12 Aug 2023 00:38:02 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org E41193858D1E Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=intel.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1691800682; x=1723336682; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=q1P717bmoHxl2T2hnPQSirgpq2Sme5phCSlwPDBEzQA=; b=T5IPE8Pkil9dQJ1QvOIwke62g0d2ltilcu9tRDoEgeKh+u9fm/LMusi5 y4fN+rR492iEEHBTiLNSv4MfJ/XILy2FDErtUWaFJXvEWbZTuIPGfGM04 bIVcKLIStVC6kM8asgA04UP4VsMeL/LBAUXgdUFA2tPW1E1IxGW3k8vkc CCfxgv8QekIkVrgvqecua9NTOlfJSV6/8PjPQ3UjwJcNjQhzmPivtShgm AFyWwl8+tdmJ04Dbi/bfzsLGDG5NcEIDDwGtPBS9j94YCq6t7aDlTzgcL 2att8WFtz9D+NzEcsh64dHbXBguIT22+DSl82aWxeJqUSYnYC1ufm6xUE w==; X-IronPort-AV: E=McAfee;i="6600,9927,10799"; a="356750809" X-IronPort-AV: E=Sophos;i="6.01,166,1684825200"; d="scan'208";a="356750809" Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 11 Aug 2023 17:38:01 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.01,202,1684825200"; d="scan'208";a="876349992" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by fmsmga001.fm.intel.com with ESMTP; 11 Aug 2023 17:38:04 -0700 Received: from fmsmsx612.amr.corp.intel.com (10.18.126.92) 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.27; Fri, 11 Aug 2023 17:38:01 -0700 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx612.amr.corp.intel.com (10.18.126.92) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27 via Frontend Transport; Fri, 11 Aug 2023 17:38:01 -0700 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (104.47.58.168) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.27; Fri, 11 Aug 2023 17:38:00 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AR7bwYIfg5TLni3/YfdM+wJoF1IBcCZvKfjjchKRV9wudRzC4evHcZ15neari6f/i0SfhlxqmtzNsiP/ok7EAfpx6/GtCDNAAmCVUAcfWwBcTo/k6Y+fp6xs0Vt8kXFOrVTcyp8yC4tpVVRXdvPU9HjJfDoUPZeHcBPC/F6aQNIY6QBQhxeHw1b1kB+LwgQrUhN8MYuf9m1XqbPfsjTLmK/ggvafafjCX5xXao7QEmwh0GxZp93X/zUgZ2ouxyMJo5kJuslCoDfHS6v3zSNM5cyJkN/YgcSXwQaYz7ESJX1csuwIixTe9Vtk1gLNDVgkm9Ywyv62T/QFIFxE7pgucg== 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=q1P717bmoHxl2T2hnPQSirgpq2Sme5phCSlwPDBEzQA=; b=dXygIyK3uy9BBDWNFxBDo1qRZg2rCf9OvzCOC4FI0b/ExnSWvMEvGyLzNyNzGe5c4L1xTPdW5mIu/dCoBD8aJX/TMiY4KYOAQxWX9v0Hx22FMTEQXofo1heZzg2edD5uZunBGvAiHYbxa1SydW4wgoMdNA/YdN8FIzwhl6YG4QzvdcMgITKrkuq+L0A6CMzMW7jCSJKfAm1U74ezHVb9QVThj4B19n/W9EL15FAoTyHQpAOcGbT7ri7NS2cBmt7F1A+5ttEcmy6Na4ZJ49GPugA4DkVe8L8+5JMwqSkugv1ipehv7FBdKsFUPNJ73MgkfSpdhY9IUEXlSIuC++60Ww== 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 SA0PR11MB4669.namprd11.prod.outlook.com (2603:10b6:806:99::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6652.30; Sat, 12 Aug 2023 00:37:53 +0000 Received: from MW5PR11MB5908.namprd11.prod.outlook.com ([fe80::6ff9:5a3d:4981:3476]) by MW5PR11MB5908.namprd11.prod.outlook.com ([fe80::6ff9:5a3d:4981:3476%4]) with mapi id 15.20.6652.029; Sat, 12 Aug 2023 00:37:53 +0000 From: "Li, Pan2" To: Kito Cheng , Juzhe-Zhong CC: GCC Patches , Kito Cheng , Jeff Law , Robin Dapp Subject: RE: [PATCH V2] RISC-V: Allow CONST_VECTOR for VLS modes Thread-Topic: [PATCH V2] RISC-V: Allow CONST_VECTOR for VLS modes Thread-Index: AQHZzEHjZHuSbaqB/UqqlJH//uskF6/k3LeAgAD1LlA= Date: Sat, 12 Aug 2023 00:37:53 +0000 Message-ID: References: <20230811095601.216255-1-juzhe.zhong@rivai.ai> 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_|SA0PR11MB4669:EE_ x-ms-office365-filtering-correlation-id: 1267e69b-0035-451f-2c5b-08db9acc5d5b x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: v7GBFPHeZDVXn1lD5wuGaSRauoohOxqA5fmQUFzp9/Ym7HyW/7ULfF8QViwnzj6y+xio1CkfluWnXhPSF72Vmg6sKvf7hPb+00g45iHBs2r9tSYHohIILortEga3+ONASB6RydIx+fXVkdbrZSeqOki+j94WAkQXfele1k5ZwYvGdSoHW5ajA9jPwQwkuh8caqOxsmbFHob/re4pw6ipfB/DQ+94RBl2qnQaCjdxHCfy3lMFofzq6b0fB/V2QcIgWll2Y9metT/zSWX9h0x+uB6Tw7y7veN4Lo1LJLblrpTag8E+eYPZd7LsfPHw4nyNZVCypEURrmf0kCrj+YQBCn8fuQWxDG8uiRBUWvhH3ZNYjCbiRgmiErf7BmDBbxVrydRPuBEQocco1/hKcMqGuO9t7QpIyBBrDelwq+IEQMwRFJ+g13axbbZktjeIG3XJwxqX0VaT7N5KzzqJkc6ASIOgCeag499yoKIQkyYrBJOT0hjgDDr5VYgBc8GHlKbFY1C07uYXpZm9pgfO6SfJrz3JdQvxLxHLlskazIOuiTh1ACXFasjNPkntwvXAAoPizfZ7C52gNY47Z2E7GeraRFrRXOE23RrTVCYPI+uAqQEntf8eLneW5rRpUUIS464g 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:(13230028)(39860400002)(376002)(346002)(366004)(136003)(396003)(186006)(451199021)(1800799006)(71200400001)(316002)(55016003)(86362001)(478600001)(122000001)(82960400001)(52536014)(33656002)(53546011)(26005)(6506007)(38070700005)(5660300002)(8676002)(8936002)(41300700001)(9686003)(66476007)(7696005)(2906002)(54906003)(66556008)(110136005)(30864003)(66446008)(64756008)(83380400001)(66946007)(4326008)(38100700002)(76116006)(84970400001)(461764006)(579004);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?SlhoWnFVMXQxcktmOHVIY3ZQNEdEQTJoU1lybkhDaDM3VkNJUUE4d1J3MjRR?= =?utf-8?B?Smw1VlRzaHFDSWt6K2ZKUy9SejdSbW9JRkpQdEcvK3ZndjNjeHhaQmdVcXNV?= =?utf-8?B?MzBkVWIrN0ZYU3c5TFZOM3dqRnNoVEdFeHcxSzU3UDBxbnVwOUFqeXdNa3ZS?= =?utf-8?B?cGw4UzduUGUwU0Fab1BFMGplSFVpekZ1OTcxT242NDdHSDhRcnZmazBHNWdV?= =?utf-8?B?TDkzQmJIYTE1N0NQcHFvYTVyMHNOV1lhbmNDbVRHMFlCRzUvdHJFc004aUhk?= =?utf-8?B?SUU1RHRrQ1FCYzdBT054SWYxdHlHUzNDdUZaQTF4VFFKcTZ5bW1Va3FXYlVp?= =?utf-8?B?Z1RXakdMSzlxbjhSNGxZN1dqVVoxS1NZcFdYeFFURm1GL0tnWXdPd200RkRR?= =?utf-8?B?eUt6Yk9PQjNMcnNKMXQ1Skk4M2ZvN2xjZE9lanFRazZCbDdtTHdDL3ZaWkIx?= =?utf-8?B?Q1NvK1lJTzJEZ0FzRTBlYTJram5zamxsakdwL2dPME9pcVNCZUZSNjZLZnVu?= =?utf-8?B?RGF6cVUzU1lsdmJzeXBremFqV3NxdEc5QzNlUE9QZHlkYUtlQ05abk0yMGk5?= =?utf-8?B?NmtLNUt1OTdxbDNJUGcwV2tsWTZQSXkvV1NodzNYOGdndXE2TlJoTyt0dTI5?= =?utf-8?B?TWJFUEhDN0M2UWlHSWpWdjBBUHpmUFM4dTZyUWYwTkVZZUx4R0t1OUJVTkZi?= =?utf-8?B?Y3ZjVWVpUm9ocHQvOFRnZGhCNjZONUltZFBTNi9Jcy9VeXN1amdUZzdkcHVL?= =?utf-8?B?TXF4U3htUFBUalRwRWFNRUx6aElMdDFQcjlTY0hRVjh4SmFPUjl5bmdaaFdI?= =?utf-8?B?K3VWN216MjgrVWw0bzFYbXVCNkJrNW5Walp6cTVteHF0dEpHRWp2V2Y4U1BW?= =?utf-8?B?aHFWVDdRUzBTbmMzL3MwbWZaWDJrejRhdmVLNDJzdUVRMkhZMFdjSDY0bFVF?= =?utf-8?B?WWV2OC80UGxzOXVGeWdLdGNRSlA4eTQ3cUJjaHpkMUNxVmo4a01TWUord1FF?= =?utf-8?B?aUI4Mk5nNk5pamxWeHd0ZDdNRXp6ZHI2WVB0VzNPYm04RE8yVkM4ZnZtaVhV?= =?utf-8?B?dkg0RlRjZE5XQmVNVDhBT2tmdklLMElQZkQ4QmNoZkxud0RqTHpRb2wrSDBn?= =?utf-8?B?MkxObDQ3UWdWTkdCV3N1TlNsQ2RlWjZVSlpZemJjZVRFOFE3WmVYT2RKYk1R?= =?utf-8?B?WWVjWEFZZDg1WnorNHRVRlBRejVaYnNSbk9IODM2YmtFL2hXR0oyZmV5b016?= =?utf-8?B?a2tGYStCNEJxVjJOcW9USCtaaVJPYlFKVllmejlUbFIyQ1RLYTh5OHYrbE52?= =?utf-8?B?ZjVQRHZZTHFTWFU1bTE5MVl1d3RETlN6SGxWMUx1TFR4Nm5MLzgrN05UTG5p?= =?utf-8?B?TzZveEV6Z3NHS1B5WHgxWEpITTlIbVlBWEVMdm9ydHU3WE1HVFFJQUZ1d0k4?= =?utf-8?B?bUdFeDdmdFU2YjFwRkJ6dGJuelFSME9SZzNlT2pvM1BzaXM5YjFSbTN4QUdo?= =?utf-8?B?cXJLVmJZTWJwQnRvSzJ2VTgxMXJERXFobS9BbGRDeC8vS1VheVFNblJNK3dv?= =?utf-8?B?Y1VwRlh5bnJ6Mk1hcXFadWRoYUN1QURvaEh2QUI5UFNWYVVzdS9sU3dIcHp4?= =?utf-8?B?b3NCTytJenFYU2liUFJuU29tNktEcys1M0lRZGp6WkFaOGVGaTVlSUdZRWM0?= =?utf-8?B?ZFBiWXRPd2hJVEZCMUJLY24zYmVjV3pNbjFzcWc3OVNNVHZPTXVjeGphL2ZT?= =?utf-8?B?OGl2OWVmNDB4dEp1MzYzYlhwWjRrU0FJMTk1UGRJd3IwWGdQNjZRVk43aTM3?= =?utf-8?B?LzRFM3ZJc2k2RTdWcVA2ZU5yRzFjcU16cWxWelNCbUN2TUI1NE0vYmVndUNh?= =?utf-8?B?THFUTmNoOTlFbklDb1Y3ZVpDQXVBdU1VdlNnSjhaRGd3Z2NIMENPdlZwK1hn?= =?utf-8?B?bEozNUNJSDJCdG91QnVveXFuWkRFNSs0NnFsalEyOW96Z1hMUHF1d2ltNTU2?= =?utf-8?B?MnFSVmRONllQeDNBZTFXdG9jbDJiVzU0a0kwZmFmODNSbC81MTVtQ0tXcWJR?= =?utf-8?B?NHprdnA5VS9tTUIrQTJaTFExNC9iUHNHTFBvYXRWTWxJSHJidGd0Sit1NEpO?= =?utf-8?Q?dRfg=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: 1267e69b-0035-451f-2c5b-08db9acc5d5b X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Aug 2023 00:37:53.2963 (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: sZrmLpp0trWrlI3F/mTt/F104lKjVoshD6MtJbUub9feR54jFqhjAHzBpGritO+Vo9g8N+4c7sG3hMPUcfea8g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR11MB4669 X-OriginatorOrg: intel.com X-Spam-Status: No, score=-10.5 required=5.0 tests=BAYES_00,BODY_8BITS,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,KAM_SHORT,SPF_HELO_NONE,SPF_NONE,TXREP 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: Q29tbWl0dGVkLCB0aGFua3MgS2l0by4NCg0KUGFuDQoNCi0tLS0tT3JpZ2luYWwgTWVzc2FnZS0t LS0tDQpGcm9tOiBHY2MtcGF0Y2hlcyA8Z2NjLXBhdGNoZXMtYm91bmNlcytwYW4yLmxpPWludGVs LmNvbUBnY2MuZ251Lm9yZz4gT24gQmVoYWxmIE9mIEtpdG8gQ2hlbmcgdmlhIEdjYy1wYXRjaGVz DQpTZW50OiBGcmlkYXksIEF1Z3VzdCAxMSwgMjAyMyA2OjAwIFBNDQpUbzogSnV6aGUtWmhvbmcg PGp1emhlLnpob25nQHJpdmFpLmFpPg0KQ2M6IEdDQyBQYXRjaGVzIDxnY2MtcGF0Y2hlc0BnY2Mu Z251Lm9yZz47IEtpdG8gQ2hlbmcgPGtpdG8uY2hlbmdAc2lmaXZlLmNvbT47IEplZmYgTGF3IDxq ZWZmcmV5YWxhd0BnbWFpbC5jb20+OyBSb2JpbiBEYXBwIDxyZGFwcC5nY2NAZ21haWwuY29tPg0K U3ViamVjdDogUmU6IFtQQVRDSCBWMl0gUklTQy1WOiBBbGxvdyBDT05TVF9WRUNUT1IgZm9yIFZM UyBtb2Rlcw0KDQpMR1RNDQoNCkp1emhlLVpob25nIDxqdXpoZS56aG9uZ0ByaXZhaS5haT4g5pa8 IDIwMjPlubQ45pyIMTHml6Ug6YCx5LqUIDE3OjU2IOWvq+mBk++8mg0KDQo+IFRoaXMgcGF0Y2gg ZW5hYmxlcyBDT1NOVF9WRUNUT1IgZm9yIFZMUyBtb2Rlcy4NCj4NCj4gdm9pZCBmb28xIChpbnQg KiBfX3Jlc3RyaWN0IGEpDQo+IHsNCj4gICAgIGZvciAoaW50IGkgPSAwOyBpIDwgMTY7IGkrKykN Cj4gICAgICAgYVtpXSA9IDg7DQo+IH0NCj4NCj4gdm9pZCBmb28yIChpbnQgKiBfX3Jlc3RyaWN0 IGEpDQo+IHsNCj4gICAgIGZvciAoaW50IGkgPSAwOyBpIDwgMTY7IGkrKykNCj4gICAgICAgYVtp XSA9IGk7DQo+IH0NCj4NCj4gQ29tcGlsZSBvcHRpb246IC1PMyAtLXBhcmFtPXJpc2N2LWF1dG92 ZWMtcHJlZmVyZW5jZT1zY2FsYWJsZQ0KPg0KPiBCZWZvcmUgdGhpcyBwYXRjaDoNCj4NCj4gZm9v MToNCj4gICAgICAgICBsdWkgICAgIGE1LCVoaSguTEMwKQ0KPiAgICAgICAgIGFkZGkgICAgYTUs YTUsJWxvKC5MQzApDQo+ICAgICAgICAgdnNldGl2bGkgICAgICAgIHplcm8sNCxlMzIsbTEsdGEs bWENCj4gICAgICAgICBhZGRpICAgIGE0LGEwLDE2DQo+ICAgICAgICAgdmxlMzIudiB2MSwwKGE1 KQ0KPiAgICAgICAgIHZzZTMyLnYgdjEsMChhMCkNCj4gICAgICAgICB2c2UzMi52IHYxLDAoYTQp DQo+ICAgICAgICAgYWRkaSAgICBhNCxhMCwzMg0KPiAgICAgICAgIHZzZTMyLnYgdjEsMChhNCkN Cj4gICAgICAgICBhZGRpICAgIGEwLGEwLDQ4DQo+ICAgICAgICAgdnNlMzIudiB2MSwwKGEwKQ0K PiAgICAgICAgIHJldA0KPiBmb28yOg0KPiAgICAgICAgIGx1aSAgICAgYTUsJWhpKC5MQzEpDQo+ ICAgICAgICAgYWRkaSAgICBhNSxhNSwlbG8oLkxDMSkNCj4gICAgICAgICB2c2V0aXZsaSAgICAg ICAgemVybyw0LGUzMixtMSx0YSxtYQ0KPiAgICAgICAgIHZsZTMyLnYgdjEsMChhNSkNCj4gICAg ICAgICBsdWkgICAgIGE1LCVoaSguTEMyKQ0KPiAgICAgICAgIGFkZGkgICAgYTUsYTUsJWxvKC5M QzIpDQo+ICAgICAgICAgdnNlMzIudiB2MSwwKGEwKQ0KPiAgICAgICAgIHZsZTMyLnYgdjEsMChh NSkNCj4gICAgICAgICBsdWkgICAgIGE1LCVoaSguTEMzKQ0KPiAgICAgICAgIGFkZGkgICAgYTQs YTAsMTYNCj4gICAgICAgICBhZGRpICAgIGE1LGE1LCVsbyguTEMzKQ0KPiAgICAgICAgIHZzZTMy LnYgdjEsMChhNCkNCj4gICAgICAgICB2bGUzMi52IHYxLDAoYTUpDQo+ICAgICAgICAgYWRkaSAg ICBhNCxhMCwzMg0KPiAgICAgICAgIGx1aSAgICAgYTUsJWhpKC5MQzQpDQo+ICAgICAgICAgdnNl MzIudiB2MSwwKGE0KQ0KPiAgICAgICAgIGFkZGkgICAgYTAsYTAsNDgNCj4gICAgICAgICBhZGRp ICAgIGE1LGE1LCVsbyguTEM0KQ0KPiAgICAgICAgIHZsZTMyLnYgdjEsMChhNSkNCj4gICAgICAg ICB2c2UzMi52IHYxLDAoYTApDQo+ICAgICAgICAgcmV0DQo+DQo+IEFmdGVyIHRoaXMgcGF0Y2g6 DQo+DQo+IGZvbzE6DQo+ICAgICAgICAgdnNldGl2bGkgICAgICAgIHplcm8sMTYsZTMyLG1mMix0 YSxtYQ0KPiAgICAgICAgIHZtdi52LmkgdjEsOA0KPiAgICAgICAgIHZzZTMyLnYgdjEsMChhMCkN Cj4gICAgICAgICByZXQNCj4gICAgICAgICAuc2l6ZSAgIGZvbzEsIC4tZm9vMQ0KPiAgICAgICAg IC5hbGlnbiAgMQ0KPiAgICAgICAgIC5nbG9ibCAgZm9vMg0KPiAgICAgICAgIC50eXBlICAgZm9v MiwgQGZ1bmN0aW9uDQo+IGZvbzI6DQo+ICAgICAgICAgdnNldGl2bGkgICAgICAgIHplcm8sMTYs ZTMyLG1mMix0YSxtYQ0KPiAgICAgICAgIHZpZC52ICAgdjENCj4gICAgICAgICB2c2UzMi52IHYx LDAoYTApDQo+ICAgICAgICAgcmV0DQo+DQo+IGdjYy9DaGFuZ2VMb2c6DQo+DQo+ICAgICAgICAg KiBjb25maWcvcmlzY3YvYXV0b3ZlYy5tZDogQWRkIFZMUyBDT05TVF9WRUNUT1IuDQo+ICAgICAg ICAgKiBjb25maWcvcmlzY3YvcmlzY3YuY2MgKHJpc2N2X2NvbnN0X2luc25zKTogRGl0dG8uDQo+ ICAgICAgICAgKiBjb25maWcvcmlzY3YvdmVjdG9yLm1kOiBEaXR0by4NCj4NCj4gZ2NjL3Rlc3Rz dWl0ZS9DaGFuZ2VMb2c6DQo+DQo+ICAgICAgICAgKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRv dmVjL3Zscy9kZWYuaDogQWRkIFZMUyBDT05TVF9WRUNUT1INCj4gdGVzdHMuDQo+ICAgICAgICAg KiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3Zscy9jb25zdC0xLmM6IE5ldyB0ZXN0Lg0K PiAgICAgICAgICogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy92bHMvY29uc3QtMi5jOiBO ZXcgdGVzdC4NCj4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvdmxzL2Nv bnN0LTMuYzogTmV3IHRlc3QuDQo+ICAgICAgICAgKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRv dmVjL3Zscy9jb25zdC00LmM6IE5ldyB0ZXN0Lg0KPiAgICAgICAgICogZ2NjLnRhcmdldC9yaXNj di9ydnYvYXV0b3ZlYy92bHMvY29uc3QtNS5jOiBOZXcgdGVzdC4NCj4gICAgICAgICAqIGdjYy50 YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvdmxzL3Nlcmllcy0xLmM6IE5ldyB0ZXN0Lg0KPiAgICAg ICAgICogZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy92bHMvc2VyaWVzLTIuYzogTmV3IHRl c3QuDQo+ICAgICAgICAgKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3Zscy9zZXJpZXMt My5jOiBOZXcgdGVzdC4NCj4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMv dmxzL3Nlcmllcy00LmM6IE5ldyB0ZXN0Lg0KPg0KPiAtLS0NCj4gIGdjYy9jb25maWcvcmlzY3Yv YXV0b3ZlYy5tZCAgICAgICAgICAgICAgICAgICB8ICAyICstDQo+ICBnY2MvY29uZmlnL3Jpc2N2 L3Jpc2N2LmNjICAgICAgICAgICAgICAgICAgICAgfCAgMiArLQ0KPiAgZ2NjL2NvbmZpZy9yaXNj di92ZWN0b3IubWQgICAgICAgICAgICAgICAgICAgIHwgIDggKystLQ0KPiAgLi4uL3Jpc2N2L3J2 di9hdXRvdmVjL3Zscy9jb25zdC0xLmMgICAgICAgICAgIHwgNDAgKysrKysrKysrKysrKysrKysr Kw0KPiAgLi4uL3Jpc2N2L3J2di9hdXRvdmVjL3Zscy9jb25zdC0yLmMgICAgICAgICAgIHwgNDAg KysrKysrKysrKysrKysrKysrKw0KPiAgLi4uL3Jpc2N2L3J2di9hdXRvdmVjL3Zscy9jb25zdC0z LmMgICAgICAgICAgIHwgNDAgKysrKysrKysrKysrKysrKysrKw0KPiAgLi4uL3Jpc2N2L3J2di9h dXRvdmVjL3Zscy9jb25zdC00LmMgICAgICAgICAgIHwgNDAgKysrKysrKysrKysrKysrKysrKw0K PiAgLi4uL3Jpc2N2L3J2di9hdXRvdmVjL3Zscy9jb25zdC01LmMgICAgICAgICAgIHwgNDAgKysr KysrKysrKysrKysrKysrKw0KPiAgLi4uL2djYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvdmxz L2RlZi5oICAgIHwgMTQgKysrKysrKw0KPiAgLi4uL3Jpc2N2L3J2di9hdXRvdmVjL3Zscy9zZXJp ZXMtMS5jICAgICAgICAgIHwgNDAgKysrKysrKysrKysrKysrKysrKw0KPiAgLi4uL3Jpc2N2L3J2 di9hdXRvdmVjL3Zscy9zZXJpZXMtMi5jICAgICAgICAgIHwgNDAgKysrKysrKysrKysrKysrKysr Kw0KPiAgLi4uL3Jpc2N2L3J2di9hdXRvdmVjL3Zscy9zZXJpZXMtMy5jICAgICAgICAgIHwgNDAg KysrKysrKysrKysrKysrKysrKw0KPiAgLi4uL3Jpc2N2L3J2di9hdXRvdmVjL3Zscy9zZXJpZXMt NC5jICAgICAgICAgIHwgNDAgKysrKysrKysrKysrKysrKysrKw0KPiAgMTMgZmlsZXMgY2hhbmdl ZCwgMzgwIGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pDQo+ICBjcmVhdGUgbW9kZSAxMDA2 NDQNCj4gZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3Zscy9jb25z dC0xLmMNCj4gIGNyZWF0ZSBtb2RlIDEwMDY0NA0KPiBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQv cmlzY3YvcnZ2L2F1dG92ZWMvdmxzL2NvbnN0LTIuYw0KPiAgY3JlYXRlIG1vZGUgMTAwNjQ0DQo+ IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy92bHMvY29uc3QtMy5j DQo+ICBjcmVhdGUgbW9kZSAxMDA2NDQNCj4gZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2 L3J2di9hdXRvdmVjL3Zscy9jb25zdC00LmMNCj4gIGNyZWF0ZSBtb2RlIDEwMDY0NA0KPiBnY2Mv dGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvdmxzL2NvbnN0LTUuYw0KPiAg Y3JlYXRlIG1vZGUgMTAwNjQ0DQo+IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYv YXV0b3ZlYy92bHMvc2VyaWVzLTEuYw0KPiAgY3JlYXRlIG1vZGUgMTAwNjQ0DQo+IGdjYy90ZXN0 c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy92bHMvc2VyaWVzLTIuYw0KPiAgY3Jl YXRlIG1vZGUgMTAwNjQ0DQo+IGdjYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0 b3ZlYy92bHMvc2VyaWVzLTMuYw0KPiAgY3JlYXRlIG1vZGUgMTAwNjQ0DQo+IGdjYy90ZXN0c3Vp dGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy92bHMvc2VyaWVzLTQuYw0KPg0KPiBkaWZm IC0tZ2l0IGEvZ2NjL2NvbmZpZy9yaXNjdi9hdXRvdmVjLm1kIGIvZ2NjL2NvbmZpZy9yaXNjdi9h dXRvdmVjLm1kDQo+IGluZGV4IDNiMzk2YTlhOTkwLi5jZjRlZmJhZTQ0ZiAxMDA2NDQNCj4gLS0t IGEvZ2NjL2NvbmZpZy9yaXNjdi9hdXRvdmVjLm1kDQo+ICsrKyBiL2djYy9jb25maWcvcmlzY3Yv YXV0b3ZlYy5tZA0KPiBAQCAtMzE4LDcgKzMxOCw3IEBADQo+ICA7Ow0KPiAtLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tDQo+DQo+ICAoZGVmaW5lX2V4cGFuZCAiQHZlY19zZXJpZXM8bW9kZT4iDQo+IC0gIFsobWF0 Y2hfb3BlcmFuZDpWSSAwICJyZWdpc3Rlcl9vcGVyYW5kIikNCj4gKyAgWyhtYXRjaF9vcGVyYW5k OlZfVkxTSSAwICJyZWdpc3Rlcl9vcGVyYW5kIikNCj4gICAgIChtYXRjaF9vcGVyYW5kOjxWRUw+ IDEgInJlZ19vcl9pbnRfb3BlcmFuZCIpDQo+ICAgICAobWF0Y2hfb3BlcmFuZDo8VkVMPiAyICJy ZWdfb3JfaW50X29wZXJhbmQiKV0NCj4gICAgIlRBUkdFVF9WRUNUT1IiDQo+IGRpZmYgLS1naXQg YS9nY2MvY29uZmlnL3Jpc2N2L3Jpc2N2LmNjIGIvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi5jYw0K PiBpbmRleCA1ZGMxOWVjZDM3Ny4uZjliN2E5ZWU3NDkgMTAwNjQ0DQo+IC0tLSBhL2djYy9jb25m aWcvcmlzY3YvcmlzY3YuY2MNCj4gKysrIGIvZ2NjL2NvbmZpZy9yaXNjdi9yaXNjdi5jYw0KPiBA QCAtMTMzNiw3ICsxMzM2LDcgQEAgcmlzY3ZfY29uc3RfaW5zbnMgKHJ0eCB4KQ0KPiAgICAgICAg ICAgICAgICBvdXQgcmFuZ2Ugb2YgWy0xNiwgMTVdLg0KPiAgICAgICAgICAgLSAzLiBjb25zdCBz ZXJpZXMgdmVjdG9yLg0KPiAgICAgICAgICAgLi4uZXRjLiAgKi8NCj4gLSAgICAgICBpZiAocmlz Y3Zfdl9leHRfdmVjdG9yX21vZGVfcCAoR0VUX01PREUgKHgpKSkNCj4gKyAgICAgICBpZiAocmlz Y3Zfdl9leHRfbW9kZV9wIChHRVRfTU9ERSAoeCkpKQ0KPiAgICAgICAgICAgew0KPiAgICAgICAg ICAgICAvKiBjb25zdCBzZXJpZXMgdmVjdG9yLiAgKi8NCj4gICAgICAgICAgICAgcnR4IGJhc2Us IHN0ZXA7DQo+IGRpZmYgLS1naXQgYS9nY2MvY29uZmlnL3Jpc2N2L3ZlY3Rvci5tZCBiL2djYy9j b25maWcvcmlzY3YvdmVjdG9yLm1kDQo+IGluZGV4IGNmMzdiNDcyOTMwLi4yNTUwZmM5YTYzMCAx MDA2NDQNCj4gLS0tIGEvZ2NjL2NvbmZpZy9yaXNjdi92ZWN0b3IubWQNCj4gKysrIGIvZ2NjL2Nv bmZpZy9yaXNjdi92ZWN0b3IubWQNCj4gQEAgLTU5NTYsOCArNTk1Niw4IEBADQo+ICAgICAoc2V0 X2F0dHIgIm1vZGUiICI8TU9ERT4iKV0pDQo+DQo+ICAoZGVmaW5lX2luc24gIkBwcmVkX3Nlcmll czxtb2RlPiINCj4gLSAgWyhzZXQgKG1hdGNoX29wZXJhbmQ6VkkgMCAicmVnaXN0ZXJfb3BlcmFu ZCIgICAgICAgICAgICI9dmQsIHZkLCB2ciwNCj4gdnIiKQ0KPiAtICAgICAgIChpZl90aGVuX2Vs c2U6VkkNCj4gKyAgWyhzZXQgKG1hdGNoX29wZXJhbmQ6Vl9WTFNJIDAgInJlZ2lzdGVyX29wZXJh bmQiICAgICAgICAgICAiPXZkLCB2ZCwNCj4gdnIsIHZyIikNCj4gKyAgICAgICAoaWZfdGhlbl9l bHNlOlZfVkxTSQ0KPiAgICAgICAgICAgKHVuc3BlYzo8Vk0+DQo+ICAgICAgICAgICAgIFsobWF0 Y2hfb3BlcmFuZDo8Vk0+IDEgInZlY3Rvcl9tYXNrX29wZXJhbmQiICIgdm0sIHZtLFdjMSxXYzEi KQ0KPiAgICAgICAgICAgICAgKG1hdGNoX29wZXJhbmQgMyAidmVjdG9yX2xlbmd0aF9vcGVyYW5k IiAgICAiIHJLLCBySywgckssIHJLIikNCj4gQEAgLTU5NjYsOCArNTk2Niw4IEBADQo+ICAgICAg ICAgICAgICAobWF0Y2hfb3BlcmFuZCA2ICJjb25zdF9pbnRfb3BlcmFuZCIgICAgICAgICIgIGks ICBpLCAgaSwgIGkiKQ0KPiAgICAgICAgICAgICAgKHJlZzpTSSBWTF9SRUdOVU0pDQo+ICAgICAg ICAgICAgICAocmVnOlNJIFZUWVBFX1JFR05VTSldIFVOU1BFQ19WUFJFRElDQVRFKQ0KPiAtICAg ICAgICAgKHZlY19zZXJpZXM6VkkgKGNvbnN0X2ludCAwKSAoY29uc3RfaW50IDEpKQ0KPiAtICAg ICAgICAgKG1hdGNoX29wZXJhbmQ6VkkgMiAidmVjdG9yX21lcmdlX29wZXJhbmQiICAgICAiIHZ1 LCAgMCwgdnUsDQo+IDAiKSkpXQ0KPiArICAgICAgICAgKHZlY19zZXJpZXM6Vl9WTFNJIChjb25z dF9pbnQgMCkgKGNvbnN0X2ludCAxKSkNCj4gKyAgICAgICAgIChtYXRjaF9vcGVyYW5kOlZfVkxT SSAyICJ2ZWN0b3JfbWVyZ2Vfb3BlcmFuZCIgICAgICIgdnUsICAwLA0KPiB2dSwgIDAiKSkpXQ0K PiAgICAiVEFSR0VUX1ZFQ1RPUiINCj4gICAgInZpZC52XHQlMCVwMSINCj4gICAgWyhzZXRfYXR0 ciAidHlwZSIgInZtaWR4IikNCj4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdl dC9yaXNjdi9ydnYvYXV0b3ZlYy92bHMvY29uc3QtMS5jDQo+IGIvZ2NjL3Rlc3RzdWl0ZS9nY2Mu dGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3Zscy9jb25zdC0xLmMNCj4gbmV3IGZpbGUgbW9kZSAx MDA2NDQNCj4gaW5kZXggMDAwMDAwMDAwMDAuLmYzMjE3ZTYwNjNlDQo+IC0tLSAvZGV2L251bGwN Cj4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3Zscy9j b25zdC0xLmMNCj4gQEAgLTAsMCArMSw0MCBAQA0KPiArLyogeyBkZy1kbyBjb21waWxlIH0gKi8N Cj4gKy8qIHsgZGctb3B0aW9ucyAiLW1hcmNoPXJ2NjRnY3ZfenZmaF96dmw0MDk2YiAtbWFiaT1s cDY0ZCAtTzMNCj4gLWZuby1zY2hlZHVsZS1pbnNucyAtZm5vLXNjaGVkdWxlLWluc25zMiAtLXBh cmFtPXJpc2N2LWF1dG92ZWMtbG11bD1tOA0KPiAtZm5vLWJ1aWx0aW4iIH0gKi8NCj4gKw0KPiAr I2luY2x1ZGUgImRlZi5oIg0KPiArDQo+ICtERUZfQ09OU1QgKGludDE2X3QsIC0xNiwgMikNCj4g K0RFRl9DT05TVCAoaW50MTZfdCwgLTE2LCA0KQ0KPiArREVGX0NPTlNUIChpbnQxNl90LCAtMTYs IDgpDQo+ICtERUZfQ09OU1QgKGludDE2X3QsIC0xNiwgMTYpDQo+ICtERUZfQ09OU1QgKGludDE2 X3QsIC0xNiwgMzIpDQo+ICtERUZfQ09OU1QgKGludDE2X3QsIC0xNiwgNjQpDQo+ICtERUZfQ09O U1QgKGludDE2X3QsIC0xNiwgMTI4KQ0KPiArREVGX0NPTlNUIChpbnQxNl90LCAtMTYsIDI1NikN Cj4gK0RFRl9DT05TVCAoaW50MTZfdCwgLTE2LCA1MTIpDQo+ICtERUZfQ09OU1QgKGludDE2X3Qs IC0xNiwgMTAyNCkNCj4gK0RFRl9DT05TVCAoaW50MTZfdCwgLTE2LCAyMDQ4KQ0KPiArDQo+ICtE RUZfQ09OU1QgKGludDMyX3QsIC0xNiwgMikNCj4gK0RFRl9DT05TVCAoaW50MzJfdCwgLTE2LCA0 KQ0KPiArREVGX0NPTlNUIChpbnQzMl90LCAtMTYsIDgpDQo+ICtERUZfQ09OU1QgKGludDMyX3Qs IC0xNiwgMTYpDQo+ICtERUZfQ09OU1QgKGludDMyX3QsIC0xNiwgMzIpDQo+ICtERUZfQ09OU1Qg KGludDMyX3QsIC0xNiwgNjQpDQo+ICtERUZfQ09OU1QgKGludDMyX3QsIC0xNiwgMTI4KQ0KPiAr REVGX0NPTlNUIChpbnQzMl90LCAtMTYsIDI1NikNCj4gK0RFRl9DT05TVCAoaW50MzJfdCwgLTE2 LCA1MTIpDQo+ICtERUZfQ09OU1QgKGludDMyX3QsIC0xNiwgMTAyNCkNCj4gKw0KPiArREVGX0NP TlNUIChpbnQ2NF90LCAtMTYsIDIpDQo+ICtERUZfQ09OU1QgKGludDY0X3QsIC0xNiwgNCkNCj4g K0RFRl9DT05TVCAoaW50NjRfdCwgLTE2LCA4KQ0KPiArREVGX0NPTlNUIChpbnQ2NF90LCAtMTYs IDE2KQ0KPiArREVGX0NPTlNUIChpbnQ2NF90LCAtMTYsIDMyKQ0KPiArREVGX0NPTlNUIChpbnQ2 NF90LCAtMTYsIDY0KQ0KPiArREVGX0NPTlNUIChpbnQ2NF90LCAtMTYsIDEyOCkNCj4gK0RFRl9D T05TVCAoaW50NjRfdCwgLTE2LCAyNTYpDQo+ICtERUZfQ09OU1QgKGludDY0X3QsIC0xNiwgNTEy KQ0KPiArDQo+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3Ztdlwudlwu aVxzK3ZbMC05XSssXHMqLTE2fSAzMCB9IH0NCj4gKi8NCj4gKy8qIHsgZGctZmluYWwgeyBzY2Fu LWFzc2VtYmxlci1ub3Qge2NzcnJ9IH0gfSAqLw0KPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0 ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3Zscy9jb25zdC0yLmMNCj4gYi9nY2MvdGVz dHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvdmxzL2NvbnN0LTIuYw0KPiBuZXcg ZmlsZSBtb2RlIDEwMDY0NA0KPiBpbmRleCAwMDAwMDAwMDAwMC4uOTkyNTVlYzVhYTYNCj4gLS0t IC9kZXYvbnVsbA0KPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2F1 dG92ZWMvdmxzL2NvbnN0LTIuYw0KPiBAQCAtMCwwICsxLDQwIEBADQo+ICsvKiB7IGRnLWRvIGNv bXBpbGUgfSAqLw0KPiArLyogeyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdjdl96dmZoX3p2bDQw OTZiIC1tYWJpPWxwNjRkIC1PMw0KPiAtZm5vLXNjaGVkdWxlLWluc25zIC1mbm8tc2NoZWR1bGUt aW5zbnMyIC0tcGFyYW09cmlzY3YtYXV0b3ZlYy1sbXVsPW04DQo+IC1mbm8tYnVpbHRpbiIgfSAq Lw0KPiArDQo+ICsjaW5jbHVkZSAiZGVmLmgiDQo+ICsNCj4gK0RFRl9DT05TVCAoaW50MTZfdCwg MTUsIDIpDQo+ICtERUZfQ09OU1QgKGludDE2X3QsIDE1LCA0KQ0KPiArREVGX0NPTlNUIChpbnQx Nl90LCAxNSwgOCkNCj4gK0RFRl9DT05TVCAoaW50MTZfdCwgMTUsIDE2KQ0KPiArREVGX0NPTlNU IChpbnQxNl90LCAxNSwgMzIpDQo+ICtERUZfQ09OU1QgKGludDE2X3QsIDE1LCA2NCkNCj4gK0RF Rl9DT05TVCAoaW50MTZfdCwgMTUsIDEyOCkNCj4gK0RFRl9DT05TVCAoaW50MTZfdCwgMTUsIDI1 NikNCj4gK0RFRl9DT05TVCAoaW50MTZfdCwgMTUsIDUxMikNCj4gK0RFRl9DT05TVCAoaW50MTZf dCwgMTUsIDEwMjQpDQo+ICtERUZfQ09OU1QgKGludDE2X3QsIDE1LCAyMDQ4KQ0KPiArDQo+ICtE RUZfQ09OU1QgKGludDMyX3QsIDE1LCAyKQ0KPiArREVGX0NPTlNUIChpbnQzMl90LCAxNSwgNCkN Cj4gK0RFRl9DT05TVCAoaW50MzJfdCwgMTUsIDgpDQo+ICtERUZfQ09OU1QgKGludDMyX3QsIDE1 LCAxNikNCj4gK0RFRl9DT05TVCAoaW50MzJfdCwgMTUsIDMyKQ0KPiArREVGX0NPTlNUIChpbnQz Ml90LCAxNSwgNjQpDQo+ICtERUZfQ09OU1QgKGludDMyX3QsIDE1LCAxMjgpDQo+ICtERUZfQ09O U1QgKGludDMyX3QsIDE1LCAyNTYpDQo+ICtERUZfQ09OU1QgKGludDMyX3QsIDE1LCA1MTIpDQo+ ICtERUZfQ09OU1QgKGludDMyX3QsIDE1LCAxMDI0KQ0KPiArDQo+ICtERUZfQ09OU1QgKGludDY0 X3QsIDE1LCAyKQ0KPiArREVGX0NPTlNUIChpbnQ2NF90LCAxNSwgNCkNCj4gK0RFRl9DT05TVCAo aW50NjRfdCwgMTUsIDgpDQo+ICtERUZfQ09OU1QgKGludDY0X3QsIDE1LCAxNikNCj4gK0RFRl9D T05TVCAoaW50NjRfdCwgMTUsIDMyKQ0KPiArREVGX0NPTlNUIChpbnQ2NF90LCAxNSwgNjQpDQo+ ICtERUZfQ09OU1QgKGludDY0X3QsIDE1LCAxMjgpDQo+ICtERUZfQ09OU1QgKGludDY0X3QsIDE1 LCAyNTYpDQo+ICtERUZfQ09OU1QgKGludDY0X3QsIDE1LCA1MTIpDQo+ICsNCj4gKy8qIHsgZGct ZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dm12XC52XC5pXHMrdlswLTldKyxccyoxNX0g MzAgfSB9ICovDQo+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItbm90IHtjc3JyfSB9 IH0gKi8NCj4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYv YXV0b3ZlYy92bHMvY29uc3QtMy5jDQo+IGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2 L3J2di9hdXRvdmVjL3Zscy9jb25zdC0zLmMNCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gaW5k ZXggMDAwMDAwMDAwMDAuLmE5YzhhZTM0YmE3DQo+IC0tLSAvZGV2L251bGwNCj4gKysrIGIvZ2Nj L3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3Zscy9jb25zdC0zLmMNCj4g QEAgLTAsMCArMSw0MCBAQA0KPiArLyogeyBkZy1kbyBjb21waWxlIH0gKi8NCj4gKy8qIHsgZGct b3B0aW9ucyAiLW1hcmNoPXJ2NjRnY3ZfenZmaF96dmw0MDk2YiAtbWFiaT1scDY0ZCAtTzMNCj4g LWZuby1zY2hlZHVsZS1pbnNucyAtZm5vLXNjaGVkdWxlLWluc25zMiAtLXBhcmFtPXJpc2N2LWF1 dG92ZWMtbG11bD1tOA0KPiAtZm5vLWJ1aWx0aW4iIH0gKi8NCj4gKw0KPiArI2luY2x1ZGUgImRl Zi5oIg0KPiArDQo+ICtERUZfQ09OU1QgKF9GbG9hdDE2LCAwLCAyKQ0KPiArREVGX0NPTlNUIChf RmxvYXQxNiwgMCwgNCkNCj4gK0RFRl9DT05TVCAoX0Zsb2F0MTYsIDAsIDgpDQo+ICtERUZfQ09O U1QgKF9GbG9hdDE2LCAwLCAxNikNCj4gK0RFRl9DT05TVCAoX0Zsb2F0MTYsIDAsIDMyKQ0KPiAr REVGX0NPTlNUIChfRmxvYXQxNiwgMCwgNjQpDQo+ICtERUZfQ09OU1QgKF9GbG9hdDE2LCAwLCAx MjgpDQo+ICtERUZfQ09OU1QgKF9GbG9hdDE2LCAwLCAyNTYpDQo+ICtERUZfQ09OU1QgKF9GbG9h dDE2LCAwLCA1MTIpDQo+ICtERUZfQ09OU1QgKF9GbG9hdDE2LCAwLCAxMDI0KQ0KPiArREVGX0NP TlNUIChfRmxvYXQxNiwgMCwgMjA0OCkNCj4gKw0KPiArREVGX0NPTlNUIChmbG9hdCwgMCwgMikN Cj4gK0RFRl9DT05TVCAoZmxvYXQsIDAsIDQpDQo+ICtERUZfQ09OU1QgKGZsb2F0LCAwLCA4KQ0K PiArREVGX0NPTlNUIChmbG9hdCwgMCwgMTYpDQo+ICtERUZfQ09OU1QgKGZsb2F0LCAwLCAzMikN Cj4gK0RFRl9DT05TVCAoZmxvYXQsIDAsIDY0KQ0KPiArREVGX0NPTlNUIChmbG9hdCwgMCwgMTI4 KQ0KPiArREVGX0NPTlNUIChmbG9hdCwgMCwgMjU2KQ0KPiArREVGX0NPTlNUIChmbG9hdCwgMCwg NTEyKQ0KPiArREVGX0NPTlNUIChmbG9hdCwgMCwgMTAyNCkNCj4gKw0KPiArREVGX0NPTlNUIChk b3VibGUsIDAsIDIpDQo+ICtERUZfQ09OU1QgKGRvdWJsZSwgMCwgNCkNCj4gK0RFRl9DT05TVCAo ZG91YmxlLCAwLCA4KQ0KPiArREVGX0NPTlNUIChkb3VibGUsIDAsIDE2KQ0KPiArREVGX0NPTlNU IChkb3VibGUsIDAsIDMyKQ0KPiArREVGX0NPTlNUIChkb3VibGUsIDAsIDY0KQ0KPiArREVGX0NP TlNUIChkb3VibGUsIDAsIDEyOCkNCj4gK0RFRl9DT05TVCAoZG91YmxlLCAwLCAyNTYpDQo+ICtE RUZfQ09OU1QgKGRvdWJsZSwgMCwgNTEyKQ0KPiArDQo+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1h c3NlbWJsZXItdGltZXMge3ZtdlwudlwuaVxzK3ZbMC05XSssXHMqMH0gMzAgfSB9ICovDQo+ICsv KiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItbm90IHtjc3JyfSB9IH0gKi8NCj4gZGlmZiAt LWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy92bHMvY29u c3QtNC5jDQo+IGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3Zs cy9jb25zdC00LmMNCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gaW5kZXggMDAwMDAwMDAwMDAu LjUwZDE1MTVhZmY2DQo+IC0tLSAvZGV2L251bGwNCj4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2Mu dGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3Zscy9jb25zdC00LmMNCj4gQEAgLTAsMCArMSw0MCBA QA0KPiArLyogeyBkZy1kbyBjb21waWxlIH0gKi8NCj4gKy8qIHsgZGctb3B0aW9ucyAiLW1hcmNo PXJ2NjRnY3ZfenZmaF96dmw0MDk2YiAtbWFiaT1scDY0ZCAtTzMNCj4gLWZuby1zY2hlZHVsZS1p bnNucyAtZm5vLXNjaGVkdWxlLWluc25zMiAtLXBhcmFtPXJpc2N2LWF1dG92ZWMtbG11bD1tOA0K PiAtZm5vLWJ1aWx0aW4iIH0gKi8NCj4gKw0KPiArI2luY2x1ZGUgImRlZi5oIg0KPiArDQo+ICtE RUZfQ09OU1QgKF9GbG9hdDE2LCA4Ljg4LCAyKQ0KPiArREVGX0NPTlNUIChfRmxvYXQxNiwgOC44 OCwgNCkNCj4gK0RFRl9DT05TVCAoX0Zsb2F0MTYsIDguODgsIDgpDQo+ICtERUZfQ09OU1QgKF9G bG9hdDE2LCA4Ljg4LCAxNikNCj4gK0RFRl9DT05TVCAoX0Zsb2F0MTYsIDguODgsIDMyKQ0KPiAr REVGX0NPTlNUIChfRmxvYXQxNiwgOC44OCwgNjQpDQo+ICtERUZfQ09OU1QgKF9GbG9hdDE2LCA4 Ljg4LCAxMjgpDQo+ICtERUZfQ09OU1QgKF9GbG9hdDE2LCA4Ljg4LCAyNTYpDQo+ICtERUZfQ09O U1QgKF9GbG9hdDE2LCA4Ljg4LCA1MTIpDQo+ICtERUZfQ09OU1QgKF9GbG9hdDE2LCA4Ljg4LCAx MDI0KQ0KPiArREVGX0NPTlNUIChfRmxvYXQxNiwgOC44OCwgMjA0OCkNCj4gKw0KPiArREVGX0NP TlNUIChmbG9hdCwgOC44OCwgMikNCj4gK0RFRl9DT05TVCAoZmxvYXQsIDguODgsIDQpDQo+ICtE RUZfQ09OU1QgKGZsb2F0LCA4Ljg4LCA4KQ0KPiArREVGX0NPTlNUIChmbG9hdCwgOC44OCwgMTYp DQo+ICtERUZfQ09OU1QgKGZsb2F0LCA4Ljg4LCAzMikNCj4gK0RFRl9DT05TVCAoZmxvYXQsIDgu ODgsIDY0KQ0KPiArREVGX0NPTlNUIChmbG9hdCwgOC44OCwgMTI4KQ0KPiArREVGX0NPTlNUIChm bG9hdCwgOC44OCwgMjU2KQ0KPiArREVGX0NPTlNUIChmbG9hdCwgOC44OCwgNTEyKQ0KPiArREVG X0NPTlNUIChmbG9hdCwgOC44OCwgMTAyNCkNCj4gKw0KPiArREVGX0NPTlNUIChkb3VibGUsIDgu ODgsIDIpDQo+ICtERUZfQ09OU1QgKGRvdWJsZSwgOC44OCwgNCkNCj4gK0RFRl9DT05TVCAoZG91 YmxlLCA4Ljg4LCA4KQ0KPiArREVGX0NPTlNUIChkb3VibGUsIDguODgsIDE2KQ0KPiArREVGX0NP TlNUIChkb3VibGUsIDguODgsIDMyKQ0KPiArREVGX0NPTlNUIChkb3VibGUsIDguODgsIDY0KQ0K PiArREVGX0NPTlNUIChkb3VibGUsIDguODgsIDEyOCkNCj4gK0RFRl9DT05TVCAoZG91YmxlLCA4 Ljg4LCAyNTYpDQo+ICtERUZfQ09OU1QgKGRvdWJsZSwgOC44OCwgNTEyKQ0KPiArDQo+ICsvKiB7 IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZmbXZcLnZcLmZccyt2WzAtOV0rLFxz KlthLXgwLTldK30NCj4gMzAgfSB9ICovDQo+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJs ZXItbm90IHtjc3JyfSB9IH0gKi8NCj4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRh cmdldC9yaXNjdi9ydnYvYXV0b3ZlYy92bHMvY29uc3QtNS5jDQo+IGIvZ2NjL3Rlc3RzdWl0ZS9n Y2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3Zscy9jb25zdC01LmMNCj4gbmV3IGZpbGUgbW9k ZSAxMDA2NDQNCj4gaW5kZXggMDAwMDAwMDAwMDAuLmFmYzJhODc3NzE4DQo+IC0tLSAvZGV2L251 bGwNCj4gKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3Zs cy9jb25zdC01LmMNCj4gQEAgLTAsMCArMSw0MCBAQA0KPiArLyogeyBkZy1kbyBjb21waWxlIH0g Ki8NCj4gKy8qIHsgZGctb3B0aW9ucyAiLW1hcmNoPXJ2NjRnY3ZfenZmaF96dmw0MDk2YiAtbWFi aT1scDY0ZCAtTzMNCj4gLWZuby1zY2hlZHVsZS1pbnNucyAtZm5vLXNjaGVkdWxlLWluc25zMiAt LXBhcmFtPXJpc2N2LWF1dG92ZWMtbG11bD1tOA0KPiAtZm5vLWJ1aWx0aW4iIH0gKi8NCj4gKw0K PiArI2luY2x1ZGUgImRlZi5oIg0KPiArDQo+ICtERUZfQ09OU1QgKGludDE2X3QsIDExNiwgMikN Cj4gK0RFRl9DT05TVCAoaW50MTZfdCwgMTE2LCA0KQ0KPiArREVGX0NPTlNUIChpbnQxNl90LCAx MTYsIDgpDQo+ICtERUZfQ09OU1QgKGludDE2X3QsIDExNiwgMTYpDQo+ICtERUZfQ09OU1QgKGlu dDE2X3QsIDExNiwgMzIpDQo+ICtERUZfQ09OU1QgKGludDE2X3QsIDExNiwgNjQpDQo+ICtERUZf Q09OU1QgKGludDE2X3QsIDExNiwgMTI4KQ0KPiArREVGX0NPTlNUIChpbnQxNl90LCAxMTYsIDI1 NikNCj4gK0RFRl9DT05TVCAoaW50MTZfdCwgMTE2LCA1MTIpDQo+ICtERUZfQ09OU1QgKGludDE2 X3QsIDExNiwgMTAyNCkNCj4gK0RFRl9DT05TVCAoaW50MTZfdCwgMTE2LCAyMDQ4KQ0KPiArDQo+ ICtERUZfQ09OU1QgKGludDMyX3QsIDExNiwgMikNCj4gK0RFRl9DT05TVCAoaW50MzJfdCwgMTE2 LCA0KQ0KPiArREVGX0NPTlNUIChpbnQzMl90LCAxMTYsIDgpDQo+ICtERUZfQ09OU1QgKGludDMy X3QsIDExNiwgMTYpDQo+ICtERUZfQ09OU1QgKGludDMyX3QsIDExNiwgMzIpDQo+ICtERUZfQ09O U1QgKGludDMyX3QsIDExNiwgNjQpDQo+ICtERUZfQ09OU1QgKGludDMyX3QsIDExNiwgMTI4KQ0K PiArREVGX0NPTlNUIChpbnQzMl90LCAxMTYsIDI1NikNCj4gK0RFRl9DT05TVCAoaW50MzJfdCwg MTE2LCA1MTIpDQo+ICtERUZfQ09OU1QgKGludDMyX3QsIDExNiwgMTAyNCkNCj4gKw0KPiArREVG X0NPTlNUIChpbnQ2NF90LCAxMTYsIDIpDQo+ICtERUZfQ09OU1QgKGludDY0X3QsIDExNiwgNCkN Cj4gK0RFRl9DT05TVCAoaW50NjRfdCwgMTE2LCA4KQ0KPiArREVGX0NPTlNUIChpbnQ2NF90LCAx MTYsIDE2KQ0KPiArREVGX0NPTlNUIChpbnQ2NF90LCAxMTYsIDMyKQ0KPiArREVGX0NPTlNUIChp bnQ2NF90LCAxMTYsIDY0KQ0KPiArREVGX0NPTlNUIChpbnQ2NF90LCAxMTYsIDEyOCkNCj4gK0RF Rl9DT05TVCAoaW50NjRfdCwgMTE2LCAyNTYpDQo+ICtERUZfQ09OU1QgKGludDY0X3QsIDExNiwg NTEyKQ0KPiArDQo+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3Ztdlwu dlwueFxzK3ZbMC05XSssXHMqW2EteDAtOV0rfQ0KPiAzMCB9IH0gKi8NCj4gKy8qIHsgZGctZmlu YWwgeyBzY2FuLWFzc2VtYmxlci1ub3Qge2NzcnJ9IH0gfSAqLw0KPiBkaWZmIC0tZ2l0IGEvZ2Nj L3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3Zscy9kZWYuaA0KPiBiL2dj Yy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy92bHMvZGVmLmgNCj4gaW5k ZXggMmE1YmFlZjc0N2IuLjAwYThhOGQyODQ5IDEwMDY0NA0KPiAtLS0gYS9nY2MvdGVzdHN1aXRl L2djYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvdmxzL2RlZi5oDQo+ICsrKyBiL2djYy90ZXN0 c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy92bHMvZGVmLmgNCj4gQEAgLTE1MCwz ICsxNTAsMTcgQEAgdHlwZWRlZiBkb3VibGUgdjUxMmRmIF9fYXR0cmlidXRlX18gKCh2ZWN0b3Jf c2l6ZQ0KPiAoNDA5NikpKTsNCj4gICAgICBmb3IgKGludCBpID0gMDsgaSA8IE5VTTsgKytpKQ0K PiAgICAgICBcDQo+ICAgICAgICBhW2ldID0gT1AgYltpXTsNCj4gICAgICAgXA0KPiAgICB9DQo+ ICsNCj4gKyNkZWZpbmUgREVGX0NPTlNUKFRZUEUsIFZBTCwgTlVNKQ0KPiAgICAgICBcDQo+ICsg IHZvaWQgY29uc3RfIyNUWVBFIyNfIyNOVU0gKFRZUEUgKnJlc3RyaWN0IGEpDQo+ICAgICAgXA0K PiArICB7DQo+ICAgICAgIFwNCj4gKyAgICBmb3IgKGludCBpID0gMDsgaSA8IE5VTTsgKytpKQ0K PiAgICAgICBcDQo+ICsgICAgICBhW2ldID0gVkFMOw0KPiAgICAgICBcDQo+ICsgIH0NCj4gKw0K PiArI2RlZmluZSBERUZfU0VSSUVTKFRZUEUsIEJBU0UsIFNURVAsIE5VTSwgU1VGRklYKQ0KPiAg ICAgICBcDQo+ICsgIHZvaWQgc2VyaWVzXyMjVFlQRSMjXyMjU1VGRklYIChUWVBFICpyZXN0cmlj dCBhKQ0KPiAgICAgIFwNCj4gKyAgew0KPiAgICAgICBcDQo+ICsgICAgZm9yIChUWVBFIGkgPSAw OyBpIDwgTlVNOyArK2kpDQo+ICAgICAgXA0KPiArICAgICAgYVtpXSA9IChCQVNFKSArIGkgKiAo U1RFUCk7DQo+ICAgICAgIFwNCj4gKyAgfQ0KPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9n Y2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3Zscy9zZXJpZXMtMS5jDQo+IGIvZ2NjL3Rlc3Rz dWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3Zscy9zZXJpZXMtMS5jDQo+IG5ldyBm aWxlIG1vZGUgMTAwNjQ0DQo+IGluZGV4IDAwMDAwMDAwMDAwLi5iNTc1YmI5ZTYwYg0KPiAtLS0g L2Rldi9udWxsDQo+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0 b3ZlYy92bHMvc2VyaWVzLTEuYw0KPiBAQCAtMCwwICsxLDQwIEBADQo+ICsvKiB7IGRnLWRvIGNv bXBpbGUgfSAqLw0KPiArLyogeyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdjdl96dmZoX3p2bDQw OTZiIC1tYWJpPWxwNjRkIC1PMw0KPiAtZm5vLXNjaGVkdWxlLWluc25zIC1mbm8tc2NoZWR1bGUt aW5zbnMyIC0tcGFyYW09cmlzY3YtYXV0b3ZlYy1sbXVsPW04DQo+IC1mbm8tYnVpbHRpbiIgfSAq Lw0KPiArDQo+ICsjaW5jbHVkZSAiZGVmLmgiDQo+ICsNCj4gK0RFRl9TRVJJRVMgKGludDE2X3Qs IDAsIDEsIDIsIGIwczFuMikNCj4gK0RFRl9TRVJJRVMgKGludDE2X3QsIDAsIDEsIDQsIGIwczFu NCkNCj4gK0RFRl9TRVJJRVMgKGludDE2X3QsIDAsIDEsIDgsIGIwczFuOCkNCj4gK0RFRl9TRVJJ RVMgKGludDE2X3QsIDAsIDEsIDE2LCBiMHMxbjE2KQ0KPiArREVGX1NFUklFUyAoaW50MTZfdCwg MCwgMSwgMzIsIGIwczFuMzIpDQo+ICtERUZfU0VSSUVTIChpbnQxNl90LCAwLCAxLCA2NCwgYjBz MW42NCkNCj4gK0RFRl9TRVJJRVMgKGludDE2X3QsIDAsIDEsIDEyOCwgYjBzMW4xMjgpDQo+ICtE RUZfU0VSSUVTIChpbnQxNl90LCAwLCAxLCAyNTYsIGIwczFuMjU2KQ0KPiArREVGX1NFUklFUyAo aW50MTZfdCwgMCwgMSwgNTEyLCBiMHMxbjUxMikNCj4gK0RFRl9TRVJJRVMgKGludDE2X3QsIDAs IDEsIDEwMjQsIGIwczFuMTAyNCkNCj4gK0RFRl9TRVJJRVMgKGludDE2X3QsIDAsIDEsIDIwNDgs IGIwczFuMjA0OCkNCj4gKw0KPiArREVGX1NFUklFUyAoaW50MzJfdCwgMCwgMSwgMiwgYjBzMW4y KQ0KPiArREVGX1NFUklFUyAoaW50MzJfdCwgMCwgMSwgNCwgYjBzMW40KQ0KPiArREVGX1NFUklF UyAoaW50MzJfdCwgMCwgMSwgOCwgYjBzMW44KQ0KPiArREVGX1NFUklFUyAoaW50MzJfdCwgMCwg MSwgMTYsIGIwczFuMTYpDQo+ICtERUZfU0VSSUVTIChpbnQzMl90LCAwLCAxLCAzMiwgYjBzMW4z MikNCj4gK0RFRl9TRVJJRVMgKGludDMyX3QsIDAsIDEsIDY0LCBiMHMxbjY0KQ0KPiArREVGX1NF UklFUyAoaW50MzJfdCwgMCwgMSwgMTI4LCBiMHMxbjEyOCkNCj4gK0RFRl9TRVJJRVMgKGludDMy X3QsIDAsIDEsIDI1NiwgYjBzMW4yNTYpDQo+ICtERUZfU0VSSUVTIChpbnQzMl90LCAwLCAxLCA1 MTIsIGIwczFuNTEyKQ0KPiArREVGX1NFUklFUyAoaW50MzJfdCwgMCwgMSwgMTAyNCwgYjBzMW4x MDI0KQ0KPiArDQo+ICtERUZfU0VSSUVTIChpbnQ2NF90LCAwLCAxLCAyLCBiMHMxbjIpDQo+ICtE RUZfU0VSSUVTIChpbnQ2NF90LCAwLCAxLCA0LCBiMHMxbjQpDQo+ICtERUZfU0VSSUVTIChpbnQ2 NF90LCAwLCAxLCA4LCBiMHMxbjgpDQo+ICtERUZfU0VSSUVTIChpbnQ2NF90LCAwLCAxLCAxNiwg YjBzMW4xNikNCj4gK0RFRl9TRVJJRVMgKGludDY0X3QsIDAsIDEsIDMyLCBiMHMxbjMyKQ0KPiAr REVGX1NFUklFUyAoaW50NjRfdCwgMCwgMSwgNjQsIGIwczFuNjQpDQo+ICtERUZfU0VSSUVTIChp bnQ2NF90LCAwLCAxLCAxMjgsIGIwczFuMTI4KQ0KPiArREVGX1NFUklFUyAoaW50NjRfdCwgMCwg MSwgMjU2LCBiMHMxbjI1NikNCj4gK0RFRl9TRVJJRVMgKGludDY0X3QsIDAsIDEsIDUxMiwgYjBz MW41MTIpDQo+ICsNCj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dmlk XC52XHMrdlswLTldK30gMzAgfSB9ICovDQo+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJs ZXItbm90IHtjc3JyfSB9IH0gKi8NCj4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRh cmdldC9yaXNjdi9ydnYvYXV0b3ZlYy92bHMvc2VyaWVzLTIuYw0KPiBiL2djYy90ZXN0c3VpdGUv Z2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy92bHMvc2VyaWVzLTIuYw0KPiBuZXcgZmlsZSBt b2RlIDEwMDY0NA0KPiBpbmRleCAwMDAwMDAwMDAwMC4uYzg0ZWVkMTU4ZTUNCj4gLS0tIC9kZXYv bnVsbA0KPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMv dmxzL3Nlcmllcy0yLmMNCj4gQEAgLTAsMCArMSw0MCBAQA0KPiArLyogeyBkZy1kbyBjb21waWxl IH0gKi8NCj4gKy8qIHsgZGctb3B0aW9ucyAiLW1hcmNoPXJ2NjRnY3ZfenZmaF96dmw0MDk2YiAt bWFiaT1scDY0ZCAtTzMNCj4gLWZuby1zY2hlZHVsZS1pbnNucyAtZm5vLXNjaGVkdWxlLWluc25z MiAtLXBhcmFtPXJpc2N2LWF1dG92ZWMtbG11bD1tOA0KPiAtZm5vLWJ1aWx0aW4iIH0gKi8NCj4g Kw0KPiArI2luY2x1ZGUgImRlZi5oIg0KPiArDQo+ICtERUZfU0VSSUVTIChpbnQxNl90LCAxLCAt MSwgMiwgYjFzbTFuMikNCj4gK0RFRl9TRVJJRVMgKGludDE2X3QsIDMsIC0xLCA0LCBiM3NtMW40 KQ0KPiArREVGX1NFUklFUyAoaW50MTZfdCwgNywgLTEsIDgsIGI3c20xbjgpDQo+ICtERUZfU0VS SUVTIChpbnQxNl90LCAxNSwgLTEsIDE2LCBiMTVzbTFuMTYpDQo+ICtERUZfU0VSSUVTIChpbnQx Nl90LCAzMSwgLTEsIDMyLCBiMzFzbTFuMzIpDQo+ICtERUZfU0VSSUVTIChpbnQxNl90LCA2Mywg LTEsIDY0LCBiNjNzbTFuNjQpDQo+ICtERUZfU0VSSUVTIChpbnQxNl90LCAxMjcsIC0xLCAxMjgs IGIxMjdzbTFuMTI4KQ0KPiArREVGX1NFUklFUyAoaW50MTZfdCwgMjU1LCAtMSwgMjU2LCBiMjU1 c20xbjI1NikNCj4gK0RFRl9TRVJJRVMgKGludDE2X3QsIDUxMSwgLTEsIDUxMiwgYjUxMXNtMW41 MTIpDQo+ICtERUZfU0VSSUVTIChpbnQxNl90LCAxMDIzLCAtMSwgMTAyNCwgYjEwMjNzbTFuMTAy NCkNCj4gK0RFRl9TRVJJRVMgKGludDE2X3QsIDIwNDcsIC0xLCAyMDQ4LCBiMjA0N3NtMW4yMDQ4 KQ0KPiArDQo+ICtERUZfU0VSSUVTIChpbnQzMl90LCAxLCAtMSwgMiwgYjBzbTFuMikNCj4gK0RF Rl9TRVJJRVMgKGludDMyX3QsIDMsIC0xLCA0LCBiMHNtMW40KQ0KPiArREVGX1NFUklFUyAoaW50 MzJfdCwgNywgLTEsIDgsIGIwc20xbjgpDQo+ICtERUZfU0VSSUVTIChpbnQzMl90LCAxNSwgLTEs IDE2LCBiMHNtMW4xNikNCj4gK0RFRl9TRVJJRVMgKGludDMyX3QsIDMxLCAtMSwgMzIsIGIwc20x bjMyKQ0KPiArREVGX1NFUklFUyAoaW50MzJfdCwgNjMsIC0xLCA2NCwgYjBzbTFuNjQpDQo+ICtE RUZfU0VSSUVTIChpbnQzMl90LCAxMjcsIC0xLCAxMjgsIGIwc20xbjEyOCkNCj4gK0RFRl9TRVJJ RVMgKGludDMyX3QsIDI1NSwgLTEsIDI1NiwgYjBzbTFuMjU2KQ0KPiArREVGX1NFUklFUyAoaW50 MzJfdCwgNTExLCAtMSwgNTEyLCBiMHNtMW41MTIpDQo+ICtERUZfU0VSSUVTIChpbnQzMl90LCAx MDIzLCAtMSwgMTAyNCwgYjBzbTFuMTAyNCkNCj4gKw0KPiArREVGX1NFUklFUyAoaW50NjRfdCwg MSwgLTEsIDIsIGIwc20xbjIpDQo+ICtERUZfU0VSSUVTIChpbnQ2NF90LCAzLCAtMSwgNCwgYjBz bTFuNCkNCj4gK0RFRl9TRVJJRVMgKGludDY0X3QsIDcsIC0xLCA4LCBiMHNtMW44KQ0KPiArREVG X1NFUklFUyAoaW50NjRfdCwgMTUsIC0xLCAxNiwgYjBzbTFuMTYpDQo+ICtERUZfU0VSSUVTIChp bnQ2NF90LCAzMSwgLTEsIDMyLCBiMHNtMW4zMikNCj4gK0RFRl9TRVJJRVMgKGludDY0X3QsIDYz LCAtMSwgNjQsIGIwc20xbjY0KQ0KPiArREVGX1NFUklFUyAoaW50NjRfdCwgMTI3LCAtMSwgMTI4 LCBiMHNtMW4xMjgpDQo+ICtERUZfU0VSSUVTIChpbnQ2NF90LCAyNTUsIC0xLCAyNTYsIGIwc20x bjI1NikNCj4gK0RFRl9TRVJJRVMgKGludDY0X3QsIDUxMSwgLTEsIDUxMiwgYjBzbTFuNTEyKQ0K PiArDQo+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItdGltZXMge3ZpZFwudlxzK3Zb MC05XSt9IDMwIH0gfSAqLw0KPiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLW5vdCB7 Y3Nycn0gfSB9ICovDQo+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlz Y3YvcnZ2L2F1dG92ZWMvdmxzL3Nlcmllcy0zLmMNCj4gYi9nY2MvdGVzdHN1aXRlL2djYy50YXJn ZXQvcmlzY3YvcnZ2L2F1dG92ZWMvdmxzL3Nlcmllcy0zLmMNCj4gbmV3IGZpbGUgbW9kZSAxMDA2 NDQNCj4gaW5kZXggMDAwMDAwMDAwMDAuLjE2Y2NlNzZkY2Y0DQo+IC0tLSAvZGV2L251bGwNCj4g KysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3Zscy9zZXJp ZXMtMy5jDQo+IEBAIC0wLDAgKzEsNDAgQEANCj4gKy8qIHsgZGctZG8gY29tcGlsZSB9ICovDQo+ ICsvKiB7IGRnLW9wdGlvbnMgIi1tYXJjaD1ydjY0Z2N2X3p2ZmhfenZsNDA5NmIgLW1hYmk9bHA2 NGQgLU8zDQo+IC1mbm8tc2NoZWR1bGUtaW5zbnMgLWZuby1zY2hlZHVsZS1pbnNuczIgLS1wYXJh bT1yaXNjdi1hdXRvdmVjLWxtdWw9bTgNCj4gLWZuby1idWlsdGluIiB9ICovDQo+ICsNCj4gKyNp bmNsdWRlICJkZWYuaCINCj4gKw0KPiArREVGX1NFUklFUyAoaW50MTZfdCwgMCwgOCwgMiwgYjBz OG4yKQ0KPiArREVGX1NFUklFUyAoaW50MTZfdCwgMCwgOCwgNCwgYjBzOG40KQ0KPiArREVGX1NF UklFUyAoaW50MTZfdCwgMCwgOCwgOCwgYjBzOG44KQ0KPiArREVGX1NFUklFUyAoaW50MTZfdCwg MCwgOCwgMTYsIGIwczhuMTYpDQo+ICtERUZfU0VSSUVTIChpbnQxNl90LCAwLCA4LCAzMiwgYjBz OG4zMikNCj4gK0RFRl9TRVJJRVMgKGludDE2X3QsIDAsIDgsIDY0LCBiMHM4bjY0KQ0KPiArREVG X1NFUklFUyAoaW50MTZfdCwgMCwgOCwgMTI4LCBiMHM4bjEyOCkNCj4gK0RFRl9TRVJJRVMgKGlu dDE2X3QsIDAsIDgsIDI1NiwgYjBzOG4yNTYpDQo+ICtERUZfU0VSSUVTIChpbnQxNl90LCAwLCA4 LCA1MTIsIGIwczhuNTEyKQ0KPiArREVGX1NFUklFUyAoaW50MTZfdCwgMCwgOCwgMTAyNCwgYjBz OG4xMDI0KQ0KPiArREVGX1NFUklFUyAoaW50MTZfdCwgMCwgOCwgMjA0OCwgYjBzOG4yMDQ4KQ0K PiArDQo+ICtERUZfU0VSSUVTIChpbnQzMl90LCAwLCA4LCAyLCBiMHM4bjIpDQo+ICtERUZfU0VS SUVTIChpbnQzMl90LCAwLCA4LCA0LCBiMHM4bjQpDQo+ICtERUZfU0VSSUVTIChpbnQzMl90LCAw LCA4LCA4LCBiMHM4bjgpDQo+ICtERUZfU0VSSUVTIChpbnQzMl90LCAwLCA4LCAxNiwgYjBzOG4x NikNCj4gK0RFRl9TRVJJRVMgKGludDMyX3QsIDAsIDgsIDMyLCBiMHM4bjMyKQ0KPiArREVGX1NF UklFUyAoaW50MzJfdCwgMCwgOCwgNjQsIGIwczhuNjQpDQo+ICtERUZfU0VSSUVTIChpbnQzMl90 LCAwLCA4LCAxMjgsIGIwczhuMTI4KQ0KPiArREVGX1NFUklFUyAoaW50MzJfdCwgMCwgOCwgMjU2 LCBiMHM4bjI1NikNCj4gK0RFRl9TRVJJRVMgKGludDMyX3QsIDAsIDgsIDUxMiwgYjBzOG41MTIp DQo+ICtERUZfU0VSSUVTIChpbnQzMl90LCAwLCA4LCAxMDI0LCBiMHM4bjEwMjQpDQo+ICsNCj4g K0RFRl9TRVJJRVMgKGludDY0X3QsIDAsIDgsIDIsIGIwczhuMikNCj4gK0RFRl9TRVJJRVMgKGlu dDY0X3QsIDAsIDgsIDQsIGIwczhuNCkNCj4gK0RFRl9TRVJJRVMgKGludDY0X3QsIDAsIDgsIDgs IGIwczhuOCkNCj4gK0RFRl9TRVJJRVMgKGludDY0X3QsIDAsIDgsIDE2LCBiMHM4bjE2KQ0KPiAr REVGX1NFUklFUyAoaW50NjRfdCwgMCwgOCwgMzIsIGIwczhuMzIpDQo+ICtERUZfU0VSSUVTIChp bnQ2NF90LCAwLCA4LCA2NCwgYjBzOG42NCkNCj4gK0RFRl9TRVJJRVMgKGludDY0X3QsIDAsIDgs IDEyOCwgYjBzOG4xMjgpDQo+ICtERUZfU0VSSUVTIChpbnQ2NF90LCAwLCA4LCAyNTYsIGIwczhu MjU2KQ0KPiArREVGX1NFUklFUyAoaW50NjRfdCwgMCwgOCwgNTEyLCBiMHM4bjUxMikNCj4gKw0K PiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHt2aWRcLnZccyt2WzAtOV0r fSAzMCB9IH0gKi8NCj4gKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci1ub3Qge2NzcnJ9 IH0gfSAqLw0KPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2 di9hdXRvdmVjL3Zscy9zZXJpZXMtNC5jDQo+IGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jp c2N2L3J2di9hdXRvdmVjL3Zscy9zZXJpZXMtNC5jDQo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+ IGluZGV4IDAwMDAwMDAwMDAwLi45NjYzOTFlMWY1Yw0KPiAtLS0gL2Rldi9udWxsDQo+ICsrKyBi L2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy92bHMvc2VyaWVzLTQu Yw0KPiBAQCAtMCwwICsxLDQwIEBADQo+ICsvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiArLyog eyBkZy1vcHRpb25zICItbWFyY2g9cnY2NGdjdl96dmZoX3p2bDQwOTZiIC1tYWJpPWxwNjRkIC1P Mw0KPiAtZm5vLXNjaGVkdWxlLWluc25zIC1mbm8tc2NoZWR1bGUtaW5zbnMyIC0tcGFyYW09cmlz Y3YtYXV0b3ZlYy1sbXVsPW04DQo+IC1mbm8tYnVpbHRpbiIgfSAqLw0KPiArDQo+ICsjaW5jbHVk ZSAiZGVmLmgiDQo+ICsNCj4gK0RFRl9TRVJJRVMgKGludDE2X3QsIDY3LCA3LCAyLCBiOTlzN24y KQ0KPiArREVGX1NFUklFUyAoaW50MTZfdCwgNjcsIDcsIDQsIGI5OXM3bjQpDQo+ICtERUZfU0VS SUVTIChpbnQxNl90LCA2NywgNywgOCwgYjk5czduOCkNCj4gK0RFRl9TRVJJRVMgKGludDE2X3Qs IDY3LCA3LCAxNiwgYjk5czduMTYpDQo+ICtERUZfU0VSSUVTIChpbnQxNl90LCA2NywgNywgMzIs IGI5OXM3bjMyKQ0KPiArREVGX1NFUklFUyAoaW50MTZfdCwgNjcsIDcsIDY0LCBiOTlzN242NCkN Cj4gK0RFRl9TRVJJRVMgKGludDE2X3QsIDY3LCA3LCAxMjgsIGI5OXM3bjEyOCkNCj4gK0RFRl9T RVJJRVMgKGludDE2X3QsIDY3LCA3LCAyNTYsIGI5OXM3bjI1NikNCj4gK0RFRl9TRVJJRVMgKGlu dDE2X3QsIDY3LCA3LCA1MTIsIGI5OXM3bjUxMikNCj4gK0RFRl9TRVJJRVMgKGludDE2X3QsIDY3 LCA3LCAxMDI0LCBiOTlzN24xMDI0KQ0KPiArREVGX1NFUklFUyAoaW50MTZfdCwgNjcsIDcsIDIw NDgsIGI5OXM3bjIwNDgpDQo+ICsNCj4gK0RFRl9TRVJJRVMgKGludDMyX3QsIDc2LCA3LCAyLCBi OTlzN24yKQ0KPiArREVGX1NFUklFUyAoaW50MzJfdCwgNzYsIDcsIDQsIGI5OXM3bjQpDQo+ICtE RUZfU0VSSUVTIChpbnQzMl90LCA3NiwgNywgOCwgYjk5czduOCkNCj4gK0RFRl9TRVJJRVMgKGlu dDMyX3QsIDc2LCA3LCAxNiwgYjk5czduMTYpDQo+ICtERUZfU0VSSUVTIChpbnQzMl90LCA3Niwg NywgMzIsIGI5OXM3bjMyKQ0KPiArREVGX1NFUklFUyAoaW50MzJfdCwgNzYsIDcsIDY0LCBiOTlz N242NCkNCj4gK0RFRl9TRVJJRVMgKGludDMyX3QsIDc2LCA3LCAxMjgsIGI5OXM3bjEyOCkNCj4g K0RFRl9TRVJJRVMgKGludDMyX3QsIDc2LCA3LCAyNTYsIGI5OXM3bjI1NikNCj4gK0RFRl9TRVJJ RVMgKGludDMyX3QsIDc2LCA3LCA1MTIsIGI5OXM3bjUxMikNCj4gK0RFRl9TRVJJRVMgKGludDMy X3QsIDc2LCA3LCAxMDI0LCBiOTlzN24xMDI0KQ0KPiArDQo+ICtERUZfU0VSSUVTIChpbnQ2NF90 LCA5OSwgNywgMiwgYjk5czduMikNCj4gK0RFRl9TRVJJRVMgKGludDY0X3QsIDk5LCA3LCA0LCBi OTlzN240KQ0KPiArREVGX1NFUklFUyAoaW50NjRfdCwgOTksIDcsIDgsIGI5OXM3bjgpDQo+ICtE RUZfU0VSSUVTIChpbnQ2NF90LCA5OSwgNywgMTYsIGI5OXM3bjE2KQ0KPiArREVGX1NFUklFUyAo aW50NjRfdCwgOTksIDcsIDMyLCBiOTlzN24zMikNCj4gK0RFRl9TRVJJRVMgKGludDY0X3QsIDk5 LCA3LCA2NCwgYjk5czduNjQpDQo+ICtERUZfU0VSSUVTIChpbnQ2NF90LCA5OSwgNywgMTI4LCBi OTlzN24xMjgpDQo+ICtERUZfU0VSSUVTIChpbnQ2NF90LCA5OSwgNywgMjU2LCBiOTlzN24yNTYp DQo+ICtERUZfU0VSSUVTIChpbnQ2NF90LCA5OSwgNywgNTEyLCBiOTlzN241MTIpDQo+ICsNCj4g Ky8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7dmlkXC52XHMrdlswLTldK30g MzAgfSB9ICovDQo+ICsvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXItbm90IHtjc3JyfSB9 IH0gKi8NCj4gLS0NCj4gMi4zNi4xDQo+DQo+DQo=