From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga06.intel.com (mga06b.intel.com [134.134.136.31]) by sourceware.org (Postfix) with ESMTPS id D53C53853567 for ; Wed, 28 Jun 2023 08:49:06 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org D53C53853567 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=1687942146; x=1719478146; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=LpK05DcII/3wVosssnKtBYv7IWeSaeSsFsmPTVUS7fg=; b=bTSsD4LKAs9bI+JBhwAOFZI3ZOFBuv2DOxAppGBTpArdC+Cu5KY0tStr pNJxWJPnNtfES2rtKpP3cH6Fqb/wXOPISrba82N0GZNCxSUwVpc5C2QjP S7L9mBckITVqCXL3VA3EzH6z0SVU3CXp4sG/xFtpCln9KP92FQIS4NCX3 rtPPRT8VlfkzKuwhvenFtW29iqmstr9w59+ASwYE5WUqL1ZtaquDUCZ74 CK4d2pUMP+pu/s9W28emUydSvgwMOUgdY6mEoT4i7Be2MWOuT+vLpvDYr URaTVlMnNMjXz94QT6J/UOqtq/0Y6LpDJUxJW3+SJ3OWMZ3ia1L3DJAEV A==; X-IronPort-AV: E=McAfee;i="6600,9927,10754"; a="425460311" X-IronPort-AV: E=Sophos;i="6.01,165,1684825200"; d="scan'208";a="425460311" Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 28 Jun 2023 01:49:05 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10754"; a="786979134" X-IronPort-AV: E=Sophos;i="6.01,165,1684825200"; d="scan'208";a="786979134" Received: from fmsmsx601.amr.corp.intel.com ([10.18.126.81]) by fmsmga004.fm.intel.com with ESMTP; 28 Jun 2023 01:49:04 -0700 Received: from fmsmsx610.amr.corp.intel.com (10.18.126.90) by fmsmsx601.amr.corp.intel.com (10.18.126.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Wed, 28 Jun 2023 01:49:04 -0700 Received: from fmsedg601.ED.cps.intel.com (10.1.192.135) 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.27 via Frontend Transport; Wed, 28 Jun 2023 01:49:04 -0700 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (104.47.55.103) 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.27; Wed, 28 Jun 2023 01:49:04 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kXzssJzEZ7y/zmuAHz00/oBTTeGwMLFzB+DUv8D93rpbLF0NhX/wUbKJs68zHHtpT1P6RxX4zSo/9FU4qpPVeOD+PUQG+q64n8SNSgj2B9UoxT2MEfwX93tNKZjeBydrnYQkOBFCwpNDmCiP7GgAtwUCluJMTEpqc42LbJM6gmp3CVCSu32IMvZlqFse3+PaWaCqsTEV3FsQLpnYNp1qPJDwLsCeUotzVieJse1gp3lIePSiX9yH6i6kdymGIpnQPrbDx/2PIQ+48s4Q/ABVO3j2XZL6QpIlE2SNMvjJhUigB5bCJlamfeeCEIAr/zBAFK4hlqkP5wUvTwh6BhbxOA== 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=LpK05DcII/3wVosssnKtBYv7IWeSaeSsFsmPTVUS7fg=; b=C8vd0YG66nx74BEEMuXwezDT5Z9bbs0WVRG9XE1WMjLaSKVYsJevLCTs0xZkyyF3jdm2ip08pR45r1/+nFEMvOOWa7iGy1X32S/DJkBuM2AIaKroHV8LAAQkX8VA/VwkuuB9QEib8b++JcyQgXzqPs5cTEWh5Z5NYy4BrKKlXO3jpcSS/GqUUaQUXDU6irctNdwwK4ERsITKTXJrl7Rj2OIg84JL1MqMHbcCF8Wy9HbWPKKdY56tsar32CquwOJfG3jqCfJadvAlXvaH5yifFC5EIsfrwvdxwmtubf2fTxox1AIvkP7LxuVT2BL2hZLIw3o8dlvG81+tVHV1pBFmug== 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 PH0PR11MB5062.namprd11.prod.outlook.com (2603:10b6:510:3e::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6544.15; Wed, 28 Jun 2023 08:49:02 +0000 Received: from MW5PR11MB5908.namprd11.prod.outlook.com ([fe80::127c:f4cc:e699:8f73]) by MW5PR11MB5908.namprd11.prod.outlook.com ([fe80::127c:f4cc:e699:8f73%6]) with mapi id 15.20.6521.023; Wed, 28 Jun 2023 08:49:02 +0000 From: "Li, Pan2" To: Kito Cheng , Juzhe-Zhong CC: "gcc-patches@gcc.gnu.org" , "kito.cheng@sifive.com" , "palmer@dabbelt.com" , "palmer@rivosinc.com" , "jeffreyalaw@gmail.com" , "rdapp.gcc@gmail.com" Subject: RE: [PATCH] RISC-V: Support vfwmacc combine lowering Thread-Topic: [PATCH] RISC-V: Support vfwmacc combine lowering Thread-Index: AQHZqZqVgo6QZFUHekquuomNstXn1a+f4p2AgAADmRA= Date: Wed, 28 Jun 2023 08:49:02 +0000 Message-ID: References: <20230628082707.256024-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_|PH0PR11MB5062:EE_ x-ms-office365-filtering-correlation-id: 830baae9-544a-41ac-d057-08db77b48587 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 2Aiw6CepYPmUTRDEOUdR2jp5Y4Ja0W3bWTcg1hD7uCOuuYeN13bGm6/rAOZ9lw2uNGDybO3SKYg/g2p5mEgThmyyvU6wNRgD1/2SkemgRnGabRHxfBXmHC9IIHY+9OCwgpOC6Fk/pwMYHVcTSM7tTwYUQu5yFOgJkeouYxF1QWkzqNDvQ7n/xacufLrDZZQ5MONGQwxGcg66ms0c1vm9qA9G5x4hVvCCzgDA2jbF9VyTdBXHZrscnY/NlN8kCEkBAtebsZOs0u2eD6hqQoTeJn0cCm8W3ylgfgnSiwD6/EZKQgGumnQIzZztZJJROmIiHoObWWV9ZU5eQf8RE5rX/x8kBqLyoGEuzY1Kem33JpxYN3kt+IGWJld7wjJjI+UVsI2m8PGXJBCebaGTwMJ8HbZYObRf8dKbToCu975Ua97mJNiP/Z1Md23cE9yATjBDX3dml9vzNs3xNxPQga4IkRUNT2VEYEwu5xJEi8NuNXFiRHIiJiIjWopgGCIzzaTOfZTAOHibIT9DveaE6mUmyLigCb/eXYQwufsl5/fE4ZCJkf3YkfPkMph069WjiRTacygy9T0a/d+LEiQSy37V4BZbQ7shNVdZl0p9gqt6z8k= 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)(376002)(136003)(396003)(39860400002)(346002)(366004)(451199021)(7696005)(38100700002)(71200400001)(82960400001)(122000001)(83380400001)(6506007)(26005)(53546011)(186003)(9686003)(55016003)(86362001)(110136005)(41300700001)(38070700005)(54906003)(478600001)(316002)(2906002)(66556008)(66476007)(64756008)(66446008)(66946007)(76116006)(33656002)(4326008)(84970400001)(5660300002)(52536014)(8676002)(8936002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?UDgxUCtDSjh5V0NkT2tIc1lHUG1YN3ZlaFdWTGk3ZFVhOFVhZTRGZm9jQ3JL?= =?utf-8?B?QnNCTkp0UkVlcjFrQXdONmUwTHJiSHBCZEVOczdzL2lvZ1lKR29YT21MMnVT?= =?utf-8?B?N3BJS2dKUk54K1d2UkJiN0Z4VlZwdUlSLzZFTHEwTkRQOUM5aWEvS05YQnI3?= =?utf-8?B?Y2Y2WFZDMkQrMkxvK0JzQktzZzZsNmdjWDc5a3pwbFdNUFlnaXF4U2ZtRmxu?= =?utf-8?B?L1B3VVNMU2ZYOHBxWnIwMUEyYk0yRlAxUnZMT1VQSGR0S2liT0VtQ3RzSzdO?= =?utf-8?B?eVRQRzlYMTIxYkRGN1ZEa3RyN1dFNHlHTjFlUXR1L0hGRUdVTmlkVFBaMWpC?= =?utf-8?B?bTRuT2Yya3FoVm05ZnJITWFUNm9nRVMzSW5KWjdPdWNUakVjR21hdGFIVkZt?= =?utf-8?B?SDhlMlJPRXloQXRyTEhucWd3MTVsdndiWlBXcXlqSVNLQUNrM1RRZEpFWSsz?= =?utf-8?B?UzdZZUhsTUhVdTBSQTBkWFJ2TFJNN2ZVa0NoeG80RSs4elpZK1hZL01VTnJE?= =?utf-8?B?cm1DVW9XeWM4eWpzWXhFdUllbFBkZjFnMiszRDFiU3F0dlFsYTk2QXcwbEN0?= =?utf-8?B?Tk5jdHVLWVBKZFVrM1BwYzdKR1U1QzgrZ1Y0NVhtMHFuTmoySE9tdWsyVHJD?= =?utf-8?B?cDlNZ0Yvdi83cWEyWlY4d3JaczhWcXh3aUNLQ2JPR1RNbFAwRGNxbjlPemNQ?= =?utf-8?B?OGxYNEtldWRjVnc0aVdtRmh2SVpyT1hHOUF4Qkp3NjBrT1hldVl1NDJDa3V2?= =?utf-8?B?UHdEc0NDdEkvc2lheVYyZlZxSEdZMktua2s1anlqT3JWK3BtOGRKcHUzWGVK?= =?utf-8?B?eFU3eGNDMkRuWjBXSGtmaG5jU1JQdkRhbEhKWHgzVWNZWmR3emFIOGkyMVdl?= =?utf-8?B?UEJzaXJWcERVMFQzUlBxaWxkN3AwYWtYUjFZbVdoamFIZktjM0RFRmxWOE50?= =?utf-8?B?a1EwSDVWOFVrOHZXVUR6WlAydXBaQUtXUHBpaE4rWGVDdlhIczVsWTJRUnNO?= =?utf-8?B?N2xvdzh2Z1B0WUhSQ3BidVpyR21ab1lMZXN6Q2w5blRqY1ozWWRpSnlualdK?= =?utf-8?B?ZFhkK2pvY0hxWW5QZ01RNGxpYThhbGlyVUZ2UzBxemVTa3FNZjdWb29DclM2?= =?utf-8?B?YVJxL0FzSnQ5QXVYeHlOMDFwUzJCQktWWHdLbzZDZkF4TkM3T3gxMHNXTVF6?= =?utf-8?B?WnRVWThZVkdTcEYrRFgyZlVkSDNPM1NWNjh2cWVMVjB1My90bmZpTWZPTlNG?= =?utf-8?B?aFJrbzVpcURWZkdGdnl4OUVBUTRoNjJ0djlRaGtoYUxYamhqdXdXTkxOMDYw?= =?utf-8?B?OUtkQnVERXRGbTY2SDBCZWo2MEJtYjhiY08xczQ4bUx4R2d1djJwZ21peURi?= =?utf-8?B?ekZRSUw3VDdPZ25RS3BiMUdTb0ZIa1NjbXh3N0hTY1FiZnVqV1hhSm1VQ3ZS?= =?utf-8?B?R3V1MUtwckdIakpseGRvZjhJemtyOVlkSnVENzVCUm5uUXFjOGJxMENEcWU4?= =?utf-8?B?ZTVFUlNTLzhNZmlrMGozaTZqMG5za3FheUxCVW92bWszL0w2QkR1MC85d2xJ?= =?utf-8?B?c3o4Mzk0ek5YNWRzNHJZZG9lNzR5TzdpVVFTZU4zYU1pSFkxZ2N3Wm1EQThO?= =?utf-8?B?V1p3eUNCRDNBUW5yb28wS3VMZlpjaGdwcEhBa1FSd3NRYTZUUm10bGxUTG12?= =?utf-8?B?OElHSEEra2pvYlhoSTl4b3pxa0dXbzRtZkIyR1hXNjlPUjBSZkxrYXhYaVZW?= =?utf-8?B?RWFOaTJVMVpaeXdyd29ITGxOZDU5QjFYWXBDU09ucm9qb1hqbnFHMHFuN056?= =?utf-8?B?aVMyQkEzRTZkcjhVYXlrcm85VHREN0RHVGZYbU5uUXphZndYM0t5ZG52ZnNO?= =?utf-8?B?ZmwzUFFiOWEvbEo5aHd3TytpZ29NUHl2U2RzYU81VnNLZGJML3N6NDNBOUtn?= =?utf-8?B?NitDcmlYdnVRdzVqZlZJa0NqSitLbTdSWmRGNmlvSlZ5eFFESGdIbjBOQlpC?= =?utf-8?B?MnFmTUNWdGQ5SnNSeWhhS2h1ZEhoL0Y5eFZEdXNwaEh6YVlKbWxmK21ZR3do?= =?utf-8?B?bW5CWDRkb3FrWjEwMlpjNThoVmpnd0l0NFNhSDVWUmpHL2piclRPanArNnF0?= =?utf-8?Q?KRAA=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: 830baae9-544a-41ac-d057-08db77b48587 X-MS-Exchange-CrossTenant-originalarrivaltime: 28 Jun 2023 08:49:02.0605 (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: +ARJ8VIzP2P9eokR1NTqWU/GbEDyBBoaX7oRjFNFc4kAFtxXiI6rZGarF7TPq1pd6olDVo2SmqYIXKJWQii7iw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB5062 X-OriginatorOrg: intel.com X-Spam-Status: No, score=-11.5 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,KAM_ASCII_DIVIDERS,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: Q29tbWl0dGVkLCB0aGFua3MgS2l0by4NCg0KUGFuDQoNCi0tLS0tT3JpZ2luYWwgTWVzc2FnZS0t LS0tDQpGcm9tOiBHY2MtcGF0Y2hlcyA8Z2NjLXBhdGNoZXMtYm91bmNlcytwYW4yLmxpPWludGVs LmNvbUBnY2MuZ251Lm9yZz4gT24gQmVoYWxmIE9mIEtpdG8gQ2hlbmcgdmlhIEdjYy1wYXRjaGVz DQpTZW50OiBXZWRuZXNkYXksIEp1bmUgMjgsIDIwMjMgNDozMSBQTQ0KVG86IEp1emhlLVpob25n IDxqdXpoZS56aG9uZ0ByaXZhaS5haT4NCkNjOiBnY2MtcGF0Y2hlc0BnY2MuZ251Lm9yZzsga2l0 by5jaGVuZ0BzaWZpdmUuY29tOyBwYWxtZXJAZGFiYmVsdC5jb207IHBhbG1lckByaXZvc2luYy5j b207IGplZmZyZXlhbGF3QGdtYWlsLmNvbTsgcmRhcHAuZ2NjQGdtYWlsLmNvbQ0KU3ViamVjdDog UmU6IFtQQVRDSF0gUklTQy1WOiBTdXBwb3J0IHZmd21hY2MgY29tYmluZSBsb3dlcmluZw0KDQpM R1RNDQoNCk9uIFdlZCwgSnVuIDI4LCAyMDIzIGF0IDQ6MjjigK9QTSBKdXpoZS1aaG9uZyA8anV6 aGUuemhvbmdAcml2YWkuYWk+IHdyb3RlOg0KPg0KPiBUaGlzIHBhdGNoIGFkZHMgY29tYmluZSBw YXR0ZXJuIGFzIGZvbGxvd3M6DQo+DQo+IDEuIChzZXQgKHJlZykgKGZtYSAoZmxvYXRfZXh0ZW5k OnJlZykoZmxvYXRfZXh0ZW5kOnJlZykocmVnKSkpDQo+ICAgIFRoaXMgcGF0dGVybiBhbGxvd3Mg Y29tYmluZTogdmZ3Y3Z0ICsgdmZ3Y3Z0ICsgdmZtYWNjID09PiB2d2ZtYWNjLg0KPg0KPiAyLiAo c2V0IChyZWcpIChmbWEgKGZsb2F0X2V4dGVuZDpyZWcpKHJlZykocmVnKSkpDQo+ICAgIFRoaXMg cGF0dGVybiBpcyB0aGUgaW50ZXJtZWRpYXRlIElSIHRoYXQgZW5oYW5jZXMgdGhlIGNvbWJpbmUg b3B0aW1pemF0aW9ucy4NCj4gICAgU2luY2UgZm9yIHRoZSBjb21wbGljYXRlIHNpdHVhdGlvbiwg Y29tYmluZSBwYXNzIGNhbiBub3QgY29tYmluZSBib3RoIG9wZXJhbmRzDQo+ICAgIG9mIG11bHRp cGxpY2F0aW9uIGF0IHRoZSBmaXJzdCB0aW1lLCBpdCB3aWxsIHRyeSB0byBmaXJzdCBjb21iaW5l IGF0IHRoZSBmaXJzdA0KPiAgICBzdGFnZTogKHNldCAocmVnKSAoZm1hIChmbG9hdF9leHRlbmQ6 cmVnKShyZWcpKHJlZykpKS4gVGhlbiBjb21iaW5lIGFub3RoZXINCj4gICAgZXh0ZW5zaW9uIG9m IHRoZSBvdGhlciBvcGVyYW5kIGF0IHRoZSBzZWNvbmQgc3RhZ2UuDQo+DQo+ICAgIFRoaXMgY2Fu IGVuaGFuY2UgY29tYmluZSBvcHRpbWl6YXRpb24gZm9yIHRoZSBmb2xsb3dpbmcgY2FzZToNCj4g ICAgI2RlZmluZSBURVNUX1RZUEUoVFlQRTEsIFRZUEUyKSAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gICBfX2F0dHJpYnV0ZV9fICgobm9pcGEpKSB2 b2lkIHZ3YWRkXyMjVFlQRTFfIyNUWVBFMiAoICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4g ICAgIFRZUEUxICpfX3Jlc3RyaWN0IGRzdCwgVFlQRTEgKl9fcmVzdHJpY3QgZHN0MiwgVFlQRTEg Kl9fcmVzdHJpY3QgZHN0MywgICAgIFwNCj4gICAgIFRZUEUxICpfX3Jlc3RyaWN0IGRzdDQsIFRZ UEUyICpfX3Jlc3RyaWN0IGEsIFRZUEUyICpfX3Jlc3RyaWN0IGIsICAgICAgICAgIFwNCj4gICAg IFRZUEUyICpfX3Jlc3RyaWN0IGEyLCBUWVBFMiAqX19yZXN0cmljdCBiMiwgaW50IG4pICAgICAg ICAgICAgICAgICAgICAgICAgIFwNCj4gICB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gICAgIGZv ciAoaW50IGkgPSAwOyBpIDwgbjsgaSsrKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFwNCj4gICAgICAgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gICAgICAgICBk c3RbaV0gKz0gKFRZUEUxKSBhW2ldICogKFRZUEUxKSBiW2ldOyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIFwNCj4gICAgICAgICBkc3QyW2ldICs9IChUWVBFMSkgYTJbaV0gKiAoVFlQ RTEpIGJbaV07ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gICAgICAgICBkc3Qz W2ldICs9IChUWVBFMSkgYTJbaV0gKiAoVFlQRTEpIGFbaV07ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFwNCj4gICAgICAgICBkc3Q0W2ldICs9IChUWVBFMSkgYVtpXSAqIChUWVBFMSkg YjJbaV07ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gICAgICAgfSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFwNCj4gICB9DQo+DQo+ICNkZWZpbmUgVEVTVF9BTEwoKSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ICAgVEVTVF9U WVBFIChpbnQxNl90LCBpbnQ4X3QpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBcDQo+ICAgVEVTVF9UWVBFICh1aW50MTZfdCwgdWludDhfdCkgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ICAgVEVTVF9UWVBF IChpbnQzMl90LCBpbnQxNl90KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBcDQo+ICAgVEVTVF9UWVBFICh1aW50MzJfdCwgdWludDE2X3QpICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ICAgVEVTVF9UWVBFIChp bnQ2NF90LCBpbnQzMl90KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBcDQo+ICAgVEVTVF9UWVBFICh1aW50NjRfdCwgdWludDMyX3QpICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ICAgVEVTVF9UWVBFIChmbG9h dCwgX0Zsb2F0MTYpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBcDQo+ICAgVEVTVF9UWVBFIChkb3VibGUsIGZsb2F0KQ0KPg0KPiBURVNUX0FMTCAoKQ0K Pg0KPiBnY2MvQ2hhbmdlTG9nOg0KPg0KPiAgICAgICAgICogY29uZmlnL3Jpc2N2L2F1dG92ZWMt b3B0Lm1kICgqZG91YmxlX3dpZGVuX2ZtYTxtb2RlPik6IE5ldyBwYXR0ZXJuLg0KPiAgICAgICAg ICgqc2luZ2xlX3dpZGVuX2ZtYTxtb2RlPik6IERpdHRvLg0KPg0KPiBnY2MvdGVzdHN1aXRlL0No YW5nZUxvZzoNCj4NCj4gICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvd2lk ZW4vd2lkZW4tOC5jOiBBZGQgZmxvYXRpbmctcG9pbnQuDQo+ICAgICAgICAgKiBnY2MudGFyZ2V0 L3Jpc2N2L3J2di9hdXRvdmVjL3dpZGVuL3dpZGVuLWNvbXBsaWNhdGUtNS5jOiBEaXR0by4NCj4g ICAgICAgICAqIGdjYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvd2lkZW4vd2lkZW5fcnVuLTgu YzogRGl0dG8uDQo+ICAgICAgICAgKiBnY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3dpZGVu L3dpZGVuX3J1bl96dmZoLTguYzogTmV3IHRlc3QuDQo+DQo+IC0tLQ0KPiAgZ2NjL2NvbmZpZy9y aXNjdi9hdXRvdmVjLW9wdC5tZCAgICAgICAgICAgICAgIHwgNTggKysrKysrKysrKysrKysrKysr Kw0KPiAgLi4uL3Jpc2N2L3J2di9hdXRvdmVjL3dpZGVuL3dpZGVuLTguYyAgICAgICAgIHwgIDcg KystDQo+ICAuLi4vcnZ2L2F1dG92ZWMvd2lkZW4vd2lkZW4tY29tcGxpY2F0ZS01LmMgICAgfCAg NyArKy0NCj4gIC4uLi9yaXNjdi9ydnYvYXV0b3ZlYy93aWRlbi93aWRlbl9ydW4tOC5jICAgICB8 ICA1ICstDQo+ICAuLi4vcnZ2L2F1dG92ZWMvd2lkZW4vd2lkZW5fcnVuX3p2ZmgtOC5jICAgICAg fCAzMiArKysrKysrKysrDQo+ICA1IGZpbGVzIGNoYW5nZWQsIDEwMyBpbnNlcnRpb25zKCspLCA2 IGRlbGV0aW9ucygtKQ0KPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGdjYy90ZXN0c3VpdGUvZ2NjLnRh cmdldC9yaXNjdi9ydnYvYXV0b3ZlYy93aWRlbi93aWRlbl9ydW5fenZmaC04LmMNCj4NCj4gZGlm ZiAtLWdpdCBhL2djYy9jb25maWcvcmlzY3YvYXV0b3ZlYy1vcHQubWQgYi9nY2MvY29uZmlnL3Jp c2N2L2F1dG92ZWMtb3B0Lm1kDQo+IGluZGV4IDFmY2Q1NWFjMmEwLi4xYTFjZWYwZWFhNSAxMDA2 NDQNCj4gLS0tIGEvZ2NjL2NvbmZpZy9yaXNjdi9hdXRvdmVjLW9wdC5tZA0KPiArKysgYi9nY2Mv Y29uZmlnL3Jpc2N2L2F1dG92ZWMtb3B0Lm1kDQo+IEBAIC00NDQsMyArNDQ0LDYxIEBADQo+ICAg IH0NCj4gICAgWyhzZXRfYXR0ciAidHlwZSIgInZmd211bCIpDQo+ICAgICAoc2V0X2F0dHIgIm1v ZGUiICI8TU9ERT4iKV0pDQo+ICsNCj4gKzs7IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gKzs7IC0tLS0g W0ZQXSBWRldNQUNDDQo+ICs7OyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+ICs7OyBJbmNsdWRlczoNCj4g Kzs7IC0gdmZ3bWFjYy52dg0KPiArOzsgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiArDQo+ICs7OyBDb21i aW5lIGV4dCArIGV4dCArIGZtYSA9PT0+IHdpZGVuIGZtYS4NCj4gKzs7IE1vc3Qgb2YgY2lyY3Vt c3RhbnRjZXMsIExvb3BWZWN0b3JpemVyIHdpbGwgZ2VuZXJhdGUgdGhlIGZvbGxvd2luZyBJUjoN Cj4gKzs7IHZlY3RfXzguMTc2XzQwID0gKHZlY3RvcihbMiwyXSkgZG91YmxlKSB2ZWN0X183LjE3 NV80MTsNCj4gKzs7IHZlY3RfXzExLjE4MF8zNSA9ICh2ZWN0b3IoWzIsMl0pIGRvdWJsZSkgdmVj dF9fMTAuMTc5XzM2Ow0KPiArOzsgdmVjdF9fMTMuMTgyXzMzID0gLkZNQSAodmVjdF9fMTEuMTgw XzM1LCB2ZWN0X184LjE3Nl80MCwgdmVjdF9fNC4xNzJfNDUpOw0KPiArKGRlZmluZV9pbnNuX2Fu ZF9zcGxpdCAiKmRvdWJsZV93aWRlbl9mbWE8bW9kZT4iDQo+ICsgIFsoc2V0IChtYXRjaF9vcGVy YW5kOlZXRVhURiAwICJyZWdpc3Rlcl9vcGVyYW5kIikNCj4gKyAgICAgICAoZm1hOlZXRVhURg0K PiArICAgICAgICAgKGZsb2F0X2V4dGVuZDpWV0VYVEYNCj4gKyAgICAgICAgICAgKG1hdGNoX29w ZXJhbmQ6PFZfRE9VQkxFX1RSVU5DPiAyICJyZWdpc3Rlcl9vcGVyYW5kIikpDQo+ICsgICAgICAg ICAoZmxvYXRfZXh0ZW5kOlZXRVhURg0KPiArICAgICAgICAgICAobWF0Y2hfb3BlcmFuZDo8Vl9E T1VCTEVfVFJVTkM+IDMgInJlZ2lzdGVyX29wZXJhbmQiKSkNCj4gKyAgICAgICAgIChtYXRjaF9v cGVyYW5kOlZXRVhURiAxICJyZWdpc3Rlcl9vcGVyYW5kIikpKV0NCj4gKyAgIlRBUkdFVF9WRUNU T1IgJiYgY2FuX2NyZWF0ZV9wc2V1ZG9fcCAoKSINCj4gKyAgIiMiDQo+ICsgICImJiAxIg0KPiAr ICBbKGNvbnN0X2ludCAwKV0NCj4gKyAgew0KPiArICAgIHJpc2N2X3ZlY3Rvcjo6ZW1pdF92bG1h eF9mcF90ZXJuYXJ5X2luc24gKGNvZGVfZm9yX3ByZWRfd2lkZW5fbXVsIChQTFVTLCA8TU9ERT5t b2RlKSwNCj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJp c2N2X3ZlY3Rvcjo6UlZWX1dJREVOX1RFUk5PUCwgb3BlcmFuZHMpOw0KPiArICAgIERPTkU7DQo+ ICsgIH0NCj4gKyAgWyhzZXRfYXR0ciAidHlwZSIgInZmd211bGFkZCIpDQo+ICsgICAoc2V0X2F0 dHIgIm1vZGUiICI8Vl9ET1VCTEVfVFJVTkM+IildKQ0KPiArDQo+ICs7OyBUaGlzIGhlbHBzIHRv IG1hdGNoIGV4dCArIGZtYS4NCj4gKyhkZWZpbmVfaW5zbl9hbmRfc3BsaXQgIipzaW5nbGVfd2lk ZW5fZm1hPG1vZGU+Ig0KPiArICBbKHNldCAobWF0Y2hfb3BlcmFuZDpWV0VYVEYgMCAicmVnaXN0 ZXJfb3BlcmFuZCIpDQo+ICsgICAgICAgKGZtYTpWV0VYVEYNCj4gKyAgICAgICAgIChmbG9hdF9l eHRlbmQ6VldFWFRGDQo+ICsgICAgICAgICAgIChtYXRjaF9vcGVyYW5kOjxWX0RPVUJMRV9UUlVO Qz4gMiAicmVnaXN0ZXJfb3BlcmFuZCIpKQ0KPiArICAgICAgICAgKG1hdGNoX29wZXJhbmQ6VldF WFRGIDMgInJlZ2lzdGVyX29wZXJhbmQiKQ0KPiArICAgICAgICAgKG1hdGNoX29wZXJhbmQ6VldF WFRGIDEgInJlZ2lzdGVyX29wZXJhbmQiKSkpXQ0KPiArICAiVEFSR0VUX1ZFQ1RPUiAmJiBjYW5f Y3JlYXRlX3BzZXVkb19wICgpIg0KPiArICAiIyINCj4gKyAgIiYmIDEiDQo+ICsgIFsoY29uc3Rf aW50IDApXQ0KPiArICB7DQo+ICsgICAgaW5zbl9jb2RlIGljb2RlID0gY29kZV9mb3JfcHJlZF9l eHRlbmQgKDxNT0RFPm1vZGUpOw0KPiArICAgIHJ0eCB0bXAgPSBnZW5fcmVnX3J0eCAoPE1PREU+ bW9kZSk7DQo+ICsgICAgcnR4IGV4dF9vcHNbXSA9IHt0bXAsIG9wZXJhbmRzWzJdfTsNCj4gKyAg ICByaXNjdl92ZWN0b3I6OmVtaXRfdmxtYXhfaW5zbiAoaWNvZGUsIHJpc2N2X3ZlY3Rvcjo6UlZW X1VOT1AsIGV4dF9vcHMpOw0KPiArDQo+ICsgICAgcnR4IGRzdCA9IGV4cGFuZF90ZXJuYXJ5X29w ICg8TU9ERT5tb2RlLCBmbWFfb3B0YWIsIHRtcCwgb3BlcmFuZHNbM10sDQo+ICsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIG9wZXJhbmRzWzFdLCBvcGVyYW5kc1swXSwgMCk7DQo+ICsg ICAgZW1pdF9tb3ZlX2luc24gKG9wZXJhbmRzWzBdLCBkc3QpOw0KPiArICAgIERPTkU7DQo+ICsg IH0NCj4gKyAgWyhzZXRfYXR0ciAidHlwZSIgInZmd211bGFkZCIpDQo+ICsgICAoc2V0X2F0dHIg Im1vZGUiICI8Vl9ET1VCTEVfVFJVTkM+IildKQ0KPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0 ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3dpZGVuL3dpZGVuLTguYyBiL2djYy90ZXN0 c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy93aWRlbi93aWRlbi04LmMNCj4gaW5k ZXggZjNjYTA3YzAyZTAuLjhmNDFiZGZkZWMyIDEwMDY0NA0KPiAtLS0gYS9nY2MvdGVzdHN1aXRl L2djYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvd2lkZW4vd2lkZW4tOC5jDQo+ICsrKyBiL2dj Yy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYvYXV0b3ZlYy93aWRlbi93aWRlbi04LmMN Cj4gQEAgLTEsNSArMSw1IEBADQo+ICAvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KPiAtLyogeyBk Zy1hZGRpdGlvbmFsLW9wdGlvbnMgIi1tYXJjaD1ydjMyZ2N2IC1tYWJpPWlscDMyZCAtLXBhcmFt PXJpc2N2LWF1dG92ZWMtcHJlZmVyZW5jZT1zY2FsYWJsZSIgfSAqLw0KPiArLyogeyBkZy1hZGRp dGlvbmFsLW9wdGlvbnMgIi1tYXJjaD1ydjMyZ2N2X3p2ZmggLW1hYmk9aWxwMzJkIC0tcGFyYW09 cmlzY3YtYXV0b3ZlYy1wcmVmZXJlbmNlPXNjYWxhYmxlIC1mZmFzdC1tYXRoIiB9ICovDQo+DQo+ ICAjaW5jbHVkZSA8c3RkaW50LWdjYy5oPg0KPg0KPiBAQCAtMTksOSArMTksMTIgQEANCj4gICAg VEVTVF9UWVBFIChpbnQzMl90LCBpbnQxNl90KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBcDQo+ICAgIFRFU1RfVFlQRSAodWludDMyX3QsIHVpbnQxNl90 KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KPiAgICBU RVNUX1RZUEUgKGludDY0X3QsIGludDMyX3QpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIFwNCj4gLSAgVEVTVF9UWVBFICh1aW50NjRfdCwgdWludDMyX3Qp DQo+ICsgIFRFU1RfVFlQRSAodWludDY0X3QsIHVpbnQzMl90KSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KPiArICBURVNUX1RZUEUgKGZsb2F0LCBfRmxv YXQxNikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwN Cj4gKyAgVEVTVF9UWVBFIChkb3VibGUsIGZsb2F0KQ0KPg0KPiAgVEVTVF9BTEwgKCkNCj4NCj4g IC8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7XHR2d21hY2NcLnZ2fSAzIH0g fSAqLw0KPiAgLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHtcdHZ3bWFjY3Vc LnZ2fSAzIH0gfSAqLw0KPiArLyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHtc dHZmd21hY2NcLnZ2fSAyIH0gfSAqLw0KPiBkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0ZS9nY2Mu dGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3dpZGVuL3dpZGVuLWNvbXBsaWNhdGUtNS5jIGIvZ2Nj L3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3dpZGVuL3dpZGVuLWNvbXBs aWNhdGUtNS5jDQo+IGluZGV4IDE4N2I2ZGIyMWZkLi4zZmY4NDgzY2RlNCAxMDA2NDQNCj4gLS0t IGEvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3dpZGVuL3dpZGVu LWNvbXBsaWNhdGUtNS5jDQo+ICsrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9y dnYvYXV0b3ZlYy93aWRlbi93aWRlbi1jb21wbGljYXRlLTUuYw0KPiBAQCAtMSw1ICsxLDUgQEAN Cj4gIC8qIHsgZGctZG8gY29tcGlsZSB9ICovDQo+IC0vKiB7IGRnLWFkZGl0aW9uYWwtb3B0aW9u cyAiLW1hcmNoPXJ2MzJnY3YgLW1hYmk9aWxwMzJkIC0tcGFyYW09cmlzY3YtYXV0b3ZlYy1wcmVm ZXJlbmNlPXNjYWxhYmxlIiB9ICovDQo+ICsvKiB7IGRnLWFkZGl0aW9uYWwtb3B0aW9ucyAiLW1h cmNoPXJ2MzJnY3ZfenZmaCAtbWFiaT1pbHAzMmQgLS1wYXJhbT1yaXNjdi1hdXRvdmVjLXByZWZl cmVuY2U9c2NhbGFibGUgLWZmYXN0LW1hdGgiIH0gKi8NCj4NCj4gICNpbmNsdWRlIDxzdGRpbnQt Z2NjLmg+DQo+DQo+IEBAIC0yNCw5ICsyNCwxMiBAQA0KPiAgICBURVNUX1RZUEUgKGludDMyX3Qs IGludDE2X3QpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IFwNCj4gICAgVEVTVF9UWVBFICh1aW50MzJfdCwgdWludDE2X3QpICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ICAgIFRFU1RfVFlQRSAoaW50NjRfdCwg aW50MzJfdCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg XA0KPiAtICBURVNUX1RZUEUgKHVpbnQ2NF90LCB1aW50MzJfdCkNCj4gKyAgVEVTVF9UWVBFICh1 aW50NjRfdCwgdWludDMyX3QpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBcDQo+ICsgIFRFU1RfVFlQRSAoZmxvYXQsIF9GbG9hdDE2KSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KPiArICBURVNUX1RZUEUgKGRv dWJsZSwgZmxvYXQpDQo+DQo+ICBURVNUX0FMTCAoKQ0KPg0KPiAgLyogeyBkZy1maW5hbCB7IHNj YW4tYXNzZW1ibGVyLXRpbWVzIHtcdHZ3bWFjY1wudnZ9IDEyIH0gfSAqLw0KPiAgLyogeyBkZy1m aW5hbCB7IHNjYW4tYXNzZW1ibGVyLXRpbWVzIHtcdHZ3bWFjY3VcLnZ2fSAxMiB9IH0gKi8NCj4g Ky8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1lcyB7XHR2ZndtYWNjXC52dn0gOCB9 IH0gKi8NCj4gZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9yaXNjdi9ydnYv YXV0b3ZlYy93aWRlbi93aWRlbl9ydW4tOC5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L3Jp c2N2L3J2di9hdXRvdmVjL3dpZGVuL3dpZGVuX3J1bi04LmMNCj4gaW5kZXggZjQ4NDBkMzBkYzIu LjE1MDk1MDAyMTU0IDEwMDY0NA0KPiAtLS0gYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlz Y3YvcnZ2L2F1dG92ZWMvd2lkZW4vd2lkZW5fcnVuLTguYw0KPiArKysgYi9nY2MvdGVzdHN1aXRl L2djYy50YXJnZXQvcmlzY3YvcnZ2L2F1dG92ZWMvd2lkZW4vd2lkZW5fcnVuLTguYw0KPiBAQCAt MSw1ICsxLDUgQEANCj4gIC8qIHsgZGctZG8gcnVuIHsgdGFyZ2V0IHsgcmlzY3ZfdmVjdG9yIH0g fSB9ICovDQo+IC0vKiB7IGRnLWFkZGl0aW9uYWwtb3B0aW9ucyAiLS1wYXJhbT1yaXNjdi1hdXRv dmVjLXByZWZlcmVuY2U9c2NhbGFibGUiIH0gKi8NCj4gKy8qIHsgZGctYWRkaXRpb25hbC1vcHRp b25zICItLXBhcmFtPXJpc2N2LWF1dG92ZWMtcHJlZmVyZW5jZT1zY2FsYWJsZSAtZmZhc3QtbWF0 aCIgfSAqLw0KPg0KPiAgI2luY2x1ZGUgPGFzc2VydC5oPg0KPiAgI2luY2x1ZGUgIndpZGVuLTgu YyINCj4gQEAgLTI5LDcgKzI5LDggQEANCj4gICAgUlVOIChpbnQzMl90LCBpbnQxNl90LCAtMzI3 NjgpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ICAg IFJVTiAodWludDMyX3QsIHVpbnQxNl90LCA2NTUzNSkgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgXA0KPiAgICBSVU4gKGludDY0X3QsIGludDMyX3QsIC0yMTQ3 NDgzNjQ4KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gLSAg UlVOICh1aW50NjRfdCwgdWludDMyX3QsIDQyOTQ5NjcyOTUpDQo+ICsgIFJVTiAodWludDY0X3Qs IHVpbnQzMl90LCA0Mjk0OTY3Mjk1KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgXA0KPiArICBSVU4gKGRvdWJsZSwgZmxvYXQsIC0yMTQ3NDgzNjQ4KQ0KPg0KPiAgaW50 DQo+ICBtYWluICgpDQo+IGRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlz Y3YvcnZ2L2F1dG92ZWMvd2lkZW4vd2lkZW5fcnVuX3p2ZmgtOC5jIGIvZ2NjL3Rlc3RzdWl0ZS9n Y2MudGFyZ2V0L3Jpc2N2L3J2di9hdXRvdmVjL3dpZGVuL3dpZGVuX3J1bl96dmZoLTguYw0KPiBu ZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiBpbmRleCAwMDAwMDAwMDAwMC4uNjM1NjNiODZlN2MNCj4g LS0tIC9kZXYvbnVsbA0KPiArKysgYi9nY2MvdGVzdHN1aXRlL2djYy50YXJnZXQvcmlzY3YvcnZ2 L2F1dG92ZWMvd2lkZW4vd2lkZW5fcnVuX3p2ZmgtOC5jDQo+IEBAIC0wLDAgKzEsMzIgQEANCj4g Ky8qIHsgZGctZG8gcnVuIHsgdGFyZ2V0IHsgcmlzY3ZfdmVjdG9yICYmIHJpc2N2X3p2ZmhfaHcg fSB9IH0gKi8NCj4gKy8qIHsgZGctYWRkaXRpb25hbC1vcHRpb25zICItLXBhcmFtPXJpc2N2LWF1 dG92ZWMtcHJlZmVyZW5jZT1zY2FsYWJsZSAtZmZhc3QtbWF0aCIgfSAqLw0KPiArDQo+ICsjaW5j bHVkZSA8YXNzZXJ0Lmg+DQo+ICsjaW5jbHVkZSAid2lkZW4tOC5jIg0KPiArDQo+ICsjZGVmaW5l IFNaIDUxMg0KPiArDQo+ICsjZGVmaW5lIFJVTihUWVBFMSwgVFlQRTIsIExJTUlUKSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KPiArICBUWVBFMiBhIyNU WVBFMltTWl07ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIFwNCj4gKyAgVFlQRTIgYiMjVFlQRTJbU1pdOyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ICsgIFRZUEUxIGRzdCMj VFlQRTFbU1pdOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgXA0KPiArICBUWVBFMSBkc3QyIyNUWVBFMVtTWl07ICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gKyAgZm9yIChpbnQgaSA9 IDA7IGkgPCBTWjsgaSsrKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBcDQo+ICsgICAgeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXA0KPiArICAgICAgYSMjVFlQRTJb aV0gPSBMSU1JVCArIGkgJSA4NzIzOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIFwNCj4gKyAgICAgIGIjI1RZUEUyW2ldID0gTElNSVQgKyBpICYgMTk2NDsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ICsgICAgICBkc3QjI1RZUEUx W2ldID0gTElNSVQgKyBpICYgNjI4OyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgXA0KPiArICAgICAgZHN0MiMjVFlQRTFbaV0gPSBMSU1JVCArIGkgJiA2Mjg7ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwNCj4gKyAgICB9ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBcDQo+ICsgIHZ3bWFjY18jI1RZUEUxXyMjVFlQRTIgKGRzdCMjVFlQRTEsIGEjI1RZUEUy LCBiIyNUWVBFMiwgU1opOyAgICAgICAgICAgICAgICAgXA0KPiArICBmb3IgKGludCBpID0gMDsg aSA8IFNaOyBpKyspICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIFwNCj4gKyAgICBhc3NlcnQgKGRzdCMjVFlQRTFbaV0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcDQo+ICsgICAgICAgICAgID09ICgoVFlQ RTEpIGEjI1RZUEUyW2ldICogKFRZUEUxKSBiIyNUWVBFMltpXSkgKyBkc3QyIyNUWVBFMVtpXSk7 DQo+ICsNCj4gKyNkZWZpbmUgUlVOX0FMTCgpIFJVTiAoZmxvYXQsIF9GbG9hdDE2LCAtMzI3Njgp DQo+ICsNCj4gK2ludA0KPiArbWFpbiAoKQ0KPiArew0KPiArICBSVU5fQUxMICgpDQo+ICt9DQo+ IC0tDQo+IDIuMzYuMQ0KPg0K