From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2047.outbound.protection.outlook.com [40.107.20.47]) by sourceware.org (Postfix) with ESMTPS id 4A2DE3858C74 for ; Wed, 27 Sep 2023 02:40:48 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 4A2DE3858C74 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=arm.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=zRQkRtgoCGQ2oY3ZZy/Jfbx+eZr2kZqVYhFYN1OQAW0=; b=SXEDHW6Sr6EdO9WjKFdj7vGlhLZErTOHsIqpNGQ61WECPMGXSC8MX8Y1fP1a/CwgTrJ0ZmvZ9xsjf18P9wq8qFX3XRFNU+TatUkR24mNkfP8pAGt/Jji9IZnpaEDqq6g2NpJsE9tvkTnYUdKah2i05l10ttAKAQUxCFSx+dweic= Received: from AS9PR06CA0093.eurprd06.prod.outlook.com (2603:10a6:20b:465::22) by PAXPR08MB6589.eurprd08.prod.outlook.com (2603:10a6:102:159::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6813.28; Wed, 27 Sep 2023 02:40:41 +0000 Received: from AM7EUR03FT009.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:465:cafe::8d) by AS9PR06CA0093.outlook.office365.com (2603:10a6:20b:465::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6792.35 via Frontend Transport; Wed, 27 Sep 2023 02:40:41 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM7EUR03FT009.mail.protection.outlook.com (100.127.140.130) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21 via Frontend Transport; Wed, 27 Sep 2023 02:40:40 +0000 Received: ("Tessian outbound 5c548696a0e7:v175"); Wed, 27 Sep 2023 02:40:40 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: ac1e1c16d56d2140 X-CR-MTA-TID: 64aa7808 Received: from ecc319397dc7.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 326BE39E-64F3-4748-87BD-C84249D08124.1; Wed, 27 Sep 2023 02:40:34 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id ecc319397dc7.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Wed, 27 Sep 2023 02:40:34 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=RTBZsw8LG4FSzJjAeuv8wJRswC+F1zdv6kzvgjrvBf3U878Rsy5dM8D2X9SrgQRYUXzRrooc/kSua5C/gW0brsuATd9nTbNud6a3roRz0rYiw/NxgzJFc9Iamb2b4HqY+GshDhC2OquiONU6SfJwONvxw6p9pk75wFIJUFQk0ZVRzk1cqF8VRMq6WozrX53pRNNdgvPc6eaY596RPL3BZ461VOu39fIsOl8bp10YVrAcfUfaictUurUOwXqubL3HaJ1YDTX9Ns948fn1hNLN932zElaUOxjDdtlxAOVG2n3KVndzaYXLSmpYunEWigtTqFl4NQGXX1hZtLW6C34oNw== 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=zRQkRtgoCGQ2oY3ZZy/Jfbx+eZr2kZqVYhFYN1OQAW0=; b=YzgP9gTFeecVuXomD408pa8m2G9kRfCh69YBHK7PLtIhBgFRaBR6fLOB9E1fz5ghYK6u2e5bhS7y4ZL/3opaIvHm41O/jznPo6fD1EYbmBaLJtaPOxOOD9h65v/9Pabf7ps5K2td+4GeoSf85UukJTUHZZo4HST7vtI7GxeUlMei0WRreRO8ttoXYHL6Bo9gngvOaGrxfvhNwABxyT+5OetSfsMwqHTkSuDr9yJ2LeQFru/5QfO4thzS0UO2+ELz+s45p/IEJNvm9MfdvBPeuKkuxGmRLd+26jxcKjjWbqqbl4+N4NtBoYX86SmH8Q0Zr6vl3pCJKnJZam/QG51WYw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=zRQkRtgoCGQ2oY3ZZy/Jfbx+eZr2kZqVYhFYN1OQAW0=; b=SXEDHW6Sr6EdO9WjKFdj7vGlhLZErTOHsIqpNGQ61WECPMGXSC8MX8Y1fP1a/CwgTrJ0ZmvZ9xsjf18P9wq8qFX3XRFNU+TatUkR24mNkfP8pAGt/Jji9IZnpaEDqq6g2NpJsE9tvkTnYUdKah2i05l10ttAKAQUxCFSx+dweic= Received: from VI1PR08MB5325.eurprd08.prod.outlook.com (2603:10a6:803:13e::17) by AS8PR08MB8828.eurprd08.prod.outlook.com (2603:10a6:20b:5b9::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6838.21; Wed, 27 Sep 2023 02:40:32 +0000 Received: from VI1PR08MB5325.eurprd08.prod.outlook.com ([fe80::662f:8e26:1bf8:aaa1]) by VI1PR08MB5325.eurprd08.prod.outlook.com ([fe80::662f:8e26:1bf8:aaa1%7]) with mapi id 15.20.6813.027; Wed, 27 Sep 2023 02:40:32 +0000 From: Tamar Christina To: Ramana Radhakrishnan CC: "gcc-patches@gcc.gnu.org" , nd , Richard Earnshaw , Marcus Shawcroft , Kyrylo Tkachov , Richard Sandiford Subject: RE: [PATCH]AArch64 Rewrite simd move immediate patterns to new syntax Thread-Topic: [PATCH]AArch64 Rewrite simd move immediate patterns to new syntax Thread-Index: AQHZ8Nz2+Q9O47/TTU6zRZ3UuuUoQrAt4d8AgAAShgA= Date: Wed, 27 Sep 2023 02:40:32 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; x-ms-traffictypediagnostic: VI1PR08MB5325:EE_|AS8PR08MB8828:EE_|AM7EUR03FT009:EE_|PAXPR08MB6589:EE_ X-MS-Office365-Filtering-Correlation-Id: ecbe08f7-ff12-48b4-658a-08dbbf0323d3 x-checkrecipientrouted: true nodisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: qSevv95RRkCcF3VE5d/dI6n0MryAxyaoNl9eSJGJ+20Y5zu39BtZXnU4es3BVirPQLOWksMoNi8GY4/4/1h1Kq6rlEOuLOlwtxwmsEJj6svU3SHo3sdNYw0wfuVq/oUG/Pz03anFMtYNAVPaLASslEn1jtTb3cWbYqVxgjvmdqqYHieUZxWRrHLQBFDbvLnbNSbb+OcEmAgGWVCk295FlsSwHSsAxQGqNfzrKAxWaiGUXhYUv3TM7OjoqpwQTzYxS8MQm7QkkjcgT9LS8V91B4wySW2JVZBMhPWgHUEZpO0jbvYWJ1Ud74UF8EwayMj6H4JnchQKCTMftuKgn5DM5pmJVkGU3SiZNYy7W8/uY+skphBPf747BtrE51JzhDQSQcbLDia6uaAGTOeiSlFjt//oiOgKRsvOEBrM7TCFfenQSbJgpMXyG50FsyZnkBCencvCuVqYFUqd9mt/uSx4LdUa0NiuLViRJzTIEXfpAnePDlJMguRdMN6lAGDRh3V01i8U0jEzYV+exPGV1vUDamGL/qYjVvMYb2Mv67b042M7DzC2Nd+pdZfF2aK+ViHN6c3nC2Rf16L3nLvieYQmP7B/FZfui/8s9BDF7DLo6sy8aKa+Evzjs4f8wP0k8+17xZYKWjaGXHgqL0Y82USd4w== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:VI1PR08MB5325.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(366004)(39860400002)(396003)(136003)(346002)(230922051799003)(451199024)(1800799009)(186009)(38070700005)(38100700002)(122000001)(14773004)(33656002)(86362001)(66946007)(7696005)(2906002)(478600001)(53546011)(55016003)(6506007)(8936002)(5660300002)(4326008)(52536014)(8676002)(76116006)(41300700001)(71200400001)(9686003)(83380400001)(26005)(66446008)(66556008)(66476007)(316002)(54906003)(6916009)(64756008);DIR:OUT;SFP:1101; Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB8828 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM7EUR03FT009.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 38286aef-378d-4b30-d40a-08dbbf031ea7 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: v+NAa/0YfvGLGQeIC3B57iRpAlu3gKGxf0vfOINga6CzQ2R0ivovr8wRqXrcL6AvoUMeoNfHiuRaedu7sp7NYULq9JLCSe68jPEIyC5/fZn6GfHlnuUwAwmD4OOPWgGsaogp8+0xBPnYnxAhVcLl2hqxUfrGuunIpw+Wg+u0Iiju/RgePAtrTLTViCd7ecc/t8pkzdjUDNnM/ftwTP+nVrVqoQEMyS7MPCwkqRjyyFYlrz0ufiMiCl4D0vqfdIV1/cUpEMHatEXil4IuGSCn09DsR/6mP5b/ZPACsf9BfjRfDRCWsLFMAV9m8IbNdVMrtVFRBoip1n3PK2R3mopmYiF2LwAVqmxHJQAD/MPoIFXWGBOttM7B5H3EzvXT9xT0eG7RBl4WuYgbNUuDG2Vi2J9mm3luJ7LAS+KrUIkycbytehn3jU4UPSup6VCTnrbo3G2xg7DUfBKVdcQV7IdDoCt0TCWZ0UuWy5DwKO4x6mnkA7jdSMjg22b5ixW6fAYeSHUvu3vx0XrTdmoSn1KYcwwe7hTQ8SPG1E2qh32P9jEBO9k6/Hp9t6+tKGewSRESM86VCjR5H5sgRKmzADntlneNBJVwUVOfd35M2+3YjUFTzJ9Zk62jMu1U1pSUceNOHHpw4rG3Gry2ssHjjM/HsUkI4TqCGbjemGo2NKvJ+H8zIo304KZzga1Mhe/ReOI6SLiFXI9obRQhDG3+pSebYVJ11MY4qgW4SW9XYpwtuv/WWCnGN+7Fz+6lPiiFqBLsQDLFD6ANth4PvoLYow7i8g== X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(136003)(396003)(39860400002)(376002)(346002)(230922051799003)(1800799009)(451199024)(186009)(82310400011)(46966006)(40470700004)(36840700001)(9686003)(40480700001)(316002)(70206006)(70586007)(2906002)(54906003)(41300700001)(52536014)(8676002)(4326008)(6862004)(8936002)(478600001)(40460700003)(36860700001)(5660300002)(47076005)(55016003)(33656002)(7696005)(53546011)(6506007)(83380400001)(82740400003)(336012)(356005)(26005)(14773004)(81166007)(86362001);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Sep 2023 02:40:40.9139 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: ecbe08f7-ff12-48b4-658a-08dbbf0323d3 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM7EUR03FT009.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB6589 X-Spam-Status: No, score=-12.1 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,FORGED_SPF_HELO,GIT_PATCH_0,KAM_DMARC_NONE,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_NONE,TXREP,UNPARSEABLE_RELAY 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: PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiBGcm9tOiBSYW1hbmEgUmFkaGFrcmlzaG5h biA8cmFtYW5hLmdjY0Bnb29nbGVtYWlsLmNvbT4NCj4gU2VudDogV2VkbmVzZGF5LCBTZXB0ZW1i ZXIgMjcsIDIwMjMgMjoyOCBBTQ0KPiBUbzogVGFtYXIgQ2hyaXN0aW5hIDxUYW1hci5DaHJpc3Rp bmFAYXJtLmNvbT4NCj4gQ2M6IGdjYy1wYXRjaGVzQGdjYy5nbnUub3JnOyBuZCA8bmRAYXJtLmNv bT47IFJpY2hhcmQgRWFybnNoYXcNCj4gPFJpY2hhcmQuRWFybnNoYXdAYXJtLmNvbT47IE1hcmN1 cyBTaGF3Y3JvZnQNCj4gPE1hcmN1cy5TaGF3Y3JvZnRAYXJtLmNvbT47IEt5cnlsbyBUa2FjaG92 IDxLeXJ5bG8uVGthY2hvdkBhcm0uY29tPjsNCj4gUmljaGFyZCBTYW5kaWZvcmQgPFJpY2hhcmQu U2FuZGlmb3JkQGFybS5jb20+DQo+IFN1YmplY3Q6IFJlOiBbUEFUQ0hdQUFyY2g2NCBSZXdyaXRl IHNpbWQgbW92ZSBpbW1lZGlhdGUgcGF0dGVybnMgdG8gbmV3DQo+IHN5bnRheA0KPiANCj4gT24g V2VkLCBTZXAgMjcsIDIwMjMgYXQgMTo1M+KAr0FNIFRhbWFyIENocmlzdGluYQ0KPiA8dGFtYXIu Y2hyaXN0aW5hQGFybS5jb20+IHdyb3RlOg0KPiA+DQo+ID4gSGkgQWxsLA0KPiA+DQo+ID4gVGhp cyByZXdyaXRlcyB0aGUgc2ltZCBNT1YgcGF0dGVybnMgdG8gdXNlIHRoZSBuZXcgY29tcGFjdCBz eW50YXguDQo+ID4gTm8gY2hhbmdlIGluIHNlbWFudGljcyBpcyBleHBlY3RlZC4gIFRoaXMgd2ls bCBiZSBuZWVkZWQgaW4gZm9sbG93IG9uIHBhdGNoZXMuDQo+ID4NCj4gPiBUaGlzIGFsc28gbWVy Z2VzIHRoZSBzcGxpdHMgaW50byB0aGUgZGVmaW5lX2luc24gd2hpY2ggd2lsbCBhbHNvIGJlIG5l ZWRlZA0KPiBzb29uLg0KPiA+DQo+ID4gQm9vdHN0cmFwcGVkIFJlZ3Rlc3RlZCBvbiBhYXJjaDY0 LW5vbmUtbGludXgtZ251IGFuZCBubyBpc3N1ZXMuDQo+ID4NCj4gPiBPayBmb3IgbWFzdGVyPw0K PiA+DQo+ID4gVGhhbmtzLA0KPiA+IFRhbWFyDQo+ID4NCj4gPiBnY2MvQ2hhbmdlTG9nOg0KPiA+ DQo+ID4gICAgICAgICBQUiB0cmVlLW9wdGltaXphdGlvbi8xMDkxNTQNCj4gPiAgICAgICAgICog Y29uZmlnL2FhcmNoNjQvYWFyY2g2NC1zaW1kLm1kDQo+ICgqYWFyY2g2NF9zaW1kX21vdjxWRE1P Vjptb2RlPik6DQo+ID4gICAgICAgICBSZXdyaXRlIHRvIG5ldyBzeW50YXguDQo+ID4gICAgICAg ICAoKmFhcmNoNjRfc2ltZF9tb3Y8VlFNT1Y6bW9kZSk6IFJld3JpdGUgdG8gbmV3IHN5bnRheCBh bmQNCj4gbWVyZ2UgaW4NCj4gPiAgICAgICAgIHNwbGl0cy4NCj4gPg0KPiA+IC0tLSBpbmxpbmUg Y29weSBvZiBwYXRjaCAtLQ0KPiA+IGRpZmYgLS1naXQgYS9nY2MvY29uZmlnL2FhcmNoNjQvYWFy Y2g2NC1zaW1kLm1kDQo+ID4gYi9nY2MvY29uZmlnL2FhcmNoNjQvYWFyY2g2NC1zaW1kLm1kDQo+ ID4gaW5kZXgNCj4gPg0KPiBlOTU1NjkxZjFiZTg4MzBlZmFjYzIzNzQ2NTExOTc2NGNlMmE0OTQy Li43YjRkNWEzN2E5Nzk1ZmVmZGE3ODUNCj4gYWFhY2MyNA0KPiA+IDY5MTg4MjZlZDBhMiAxMDA2 NDQNCj4gPiAtLS0gYS9nY2MvY29uZmlnL2FhcmNoNjQvYWFyY2g2NC1zaW1kLm1kDQo+ID4gKysr IGIvZ2NjL2NvbmZpZy9hYXJjaDY0L2FhcmNoNjQtc2ltZC5tZA0KPiA+IEBAIC0xNDMsNTQgKzE0 Myw1NyBAQCAoZGVmaW5lX2luc24NCj4gImFhcmNoNjRfZHVwX2xhbmVfPHZzd2FwX3dpZHRoX25h bWU+PG1vZGU+Ig0KPiA+ICApDQo+ID4NCj4gPiAgKGRlZmluZV9pbnNuICIqYWFyY2g2NF9zaW1k X21vdjxWRE1PVjptb2RlPiINCj4gPiAtICBbKHNldCAobWF0Y2hfb3BlcmFuZDpWRE1PViAwICJu b25pbW1lZGlhdGVfb3BlcmFuZCINCj4gPiAtICAgICAgICAgICAgICAgIj13LCByLCBtLCAgbSwg bSwgIHcsID9yLCA/dywgP3IsICB3LCAgdyIpDQo+ID4gLSAgICAgICAobWF0Y2hfb3BlcmFuZDpW RE1PViAxICJnZW5lcmFsX29wZXJhbmQiDQo+ID4gLSAgICAgICAgICAgICAgICJtLCAgbSwgRHos IHcsIHIsICB3LCAgdywgIHIsICByLCBEbiwgRHoiKSldDQo+ID4gKyAgWyhzZXQgKG1hdGNoX29w ZXJhbmQ6VkRNT1YgMCAibm9uaW1tZWRpYXRlX29wZXJhbmQiKQ0KPiA+ICsgICAgICAgKG1hdGNo X29wZXJhbmQ6VkRNT1YgMSAiZ2VuZXJhbF9vcGVyYW5kIikpXQ0KPiA+ICAgICJUQVJHRVRfRkxP QVQNCj4gPiAgICAgJiYgKHJlZ2lzdGVyX29wZXJhbmQgKG9wZXJhbmRzWzBdLCA8TU9ERT5tb2Rl KQ0KPiA+ICAgICAgICAgfHwgYWFyY2g2NF9zaW1kX3JlZ19vcl96ZXJvIChvcGVyYW5kc1sxXSwg PE1PREU+bW9kZSkpIg0KPiA+IC0gICJADQo+ID4gLSAgIGxkclx0JWQwLCAlMQ0KPiA+IC0gICBs ZHJcdCV4MCwgJTENCj4gPiAtICAgc3RyXHR4enIsICUwDQo+ID4gLSAgIHN0clx0JWQxLCAlMA0K PiA+IC0gICBzdHJcdCV4MSwgJTANCj4gPiAtICAgKiByZXR1cm4gVEFSR0VUX1NJTUQgPyBcIm1v dlx0JTAuPFZidHlwZT4sICUxLjxWYnR5cGU+XCIgOg0KPiBcImZtb3ZcdCVkMCwgJWQxXCI7DQo+ ID4gLSAgICogcmV0dXJuIFRBUkdFVF9TSU1EID8gXCJ1bW92XHQlMCwgJTEuZFswXVwiIDogXCJm bW92XHQleDAsICVkMVwiOw0KPiA+IC0gICBmbW92XHQlZDAsICUxDQo+ID4gLSAgIG1vdlx0JTAs ICUxDQo+ID4gLSAgICogcmV0dXJuIGFhcmNoNjRfb3V0cHV0X3NpbWRfbW92X2ltbWVkaWF0ZSAo b3BlcmFuZHNbMV0sIDY0KTsNCj4gPiAtICAgZm1vdlx0JWQwLCB4enIiDQo+ID4gLSAgWyhzZXRf YXR0ciAidHlwZSIgIm5lb25fbG9hZDFfMXJlZzxxPiwgbG9hZF84LCBzdG9yZV84LA0KPiBuZW9u X3N0b3JlMV8xcmVnPHE+LFwNCj4gPiAtICAgICAgICAgICAgICAgICAgICBzdG9yZV84LCBuZW9u X2xvZ2ljPHE+LCBuZW9uX3RvX2dwPHE+LCBmX21jcixcDQo+ID4gLSAgICAgICAgICAgICAgICAg ICAgbW92X3JlZywgbmVvbl9tb3ZlPHE+LCBmX21jciIpDQo+ID4gLSAgIChzZXRfYXR0ciAiYXJj aCIgIiosKiwqLCosKiwqLCosKiwqLHNpbWQsKiIpXQ0KPiA+IC0pDQo+ID4gLQ0KPiA+IC0oZGVm aW5lX2luc24gIiphYXJjaDY0X3NpbWRfbW92PFZRTU9WOm1vZGU+Ig0KPiA+IC0gIFsoc2V0ICht YXRjaF9vcGVyYW5kOlZRTU9WIDAgIm5vbmltbWVkaWF0ZV9vcGVyYW5kIg0KPiA+IC0gICAgICAg ICAgICAgICAiPXcsIFVtbiwgIG0sICB3LCA/ciwgP3csID9yLCB3LCAgdyIpDQo+ID4gLSAgICAg ICAobWF0Y2hfb3BlcmFuZDpWUU1PViAxICJnZW5lcmFsX29wZXJhbmQiDQo+ID4gLSAgICAgICAg ICAgICAgICJtLCAgRHosIHcsICB3LCAgdywgIHIsICByLCBEbiwgRHoiKSldDQo+ID4gKyAge0Ag W2NvbnM6ID0wLCAxOyBhdHRyczogdHlwZSwgYXJjaF0NCj4gPiArICAgICBbdyAsIG0gOyBuZW9u X2xvYWQxXzFyZWc8cT4gLCAqICAgXSBsZHJcdCVkMCwgJTENCj4gPiArICAgICBbciAsIG0gOyBs b2FkXzggICAgICAgICAgICAgLCAqICAgXSBsZHJcdCV4MCwgJTENCj4gPiArICAgICBbbSAsIER6 OyBzdG9yZV84ICAgICAgICAgICAgLCAqICAgXSBzdHJcdHh6ciwgJTANCj4gPiArICAgICBbbSAs IHcgOyBuZW9uX3N0b3JlMV8xcmVnPHE+LCAqICAgXSBzdHJcdCVkMSwgJTANCj4gPiArICAgICBb bSAsIHIgOyBzdG9yZV84ICAgICAgICAgICAgLCAqICAgXSBzdHJcdCV4MSwgJTANCj4gDQo+IFRo aXMgaHVuayBzdGFydGluZyBoZXJlLg0KPiANCj4gPiArICAgICBbdyAsIHcgOyBuZW9uX2xvZ2lj PHE+ICAgICAgLCBzaW1kXSBtb3ZcdCUwLjxWYnR5cGU+LCAlMS48VmJ0eXBlPg0KPiA+ICsgICAg IFt3ICwgdyA7IG5lb25fbG9naWM8cT4gICAgICAsICogICBdIGZtb3ZcdCVkMCwgJWQxDQo+IA0K PiBDYW4geW91IGV4cGxhaW4gaG93IHRoaXMgaHVuayBpcyBlcXVpdmFsZW50IHRvDQo+IA0KPiBy ZXR1cm4gVEFSR0VUX1NJTUQgPyBcIm1vdlx0JTAuPFZidHlwZT4sICUxLjxWYnR5cGU+XCIgOiBc ImZtb3ZcdCVkMCwNCj4gJWQxXCI7ID8NCj4gDQoNCkxSQSBtYXRjaGVzIGNvbnN0cmFpbnRzIGZy b20gbGVmdCB0byByaWdodCwgb3Igd2l0aCB0aGUgbmV3IHBhdHRlcm5zIGZyb20gdG9wIHRvIGJv dHRvbS4NClNvIHNpbmNlIGJvdGggYWx0ZXJuYXRpdmVzIGFyZSB3LCB3LCB0aGVpciBjb3N0cyB3 b3VsZCBhbHdheXMgYmUgdGhlIHNhbWUuICBJbiB3aGljaCBjYXNlDQpMUkEgd2lsbCBwaWNrIHRo ZSBmaXJzdCBtYXRjaGluZyBvbmUuICBJZiBTSU1EIGlzIGVuYWJsZWQgdGhhdCB3b3VsZCBiZSB0 aGUgZmlyc3Qgb25lLCB3aGljaA0KY29ycmVzcG9uZHMgdG8gVEFSR0VUX1NJTUQuICBJZiBpdCdz IG5vdCBlbmFibGVkIHRoZSBzZWNvbmQgYWx0ZXJuYXRpdmUgd291bGQgYmUgY2hvc2VuLg0KDQpJ biBmYWN0IHNpbmNlIHcsIHcgd291bGQgaGF2ZSBubyBsb3NlcnMgdGhlIHNlY29uZCBhbHRlcm5h dGl2ZSB3b3VsZCBub3QgZXZlbiBiZSBpbnNwZWN0ZWQNCklmIHRoZSBmaXJzdCBvbmUgaXMgZW5h YmxlZC4gIFNvIHRoZSBlcXVpdmFsZW5jZSBpcyBtYWludGFpbmVkIGJ5IHRoZSBvcmRlciBvZiB3 aGljaCBhbHRlcm5hdGl2ZXMNCmFyZSBwcm9jZXNzZWQuDQoNCj4gPiArICAgICBbP3IsIHcgOyBu ZW9uX3RvX2dwPHE+ICAgICAgLCBzaW1kXSB1bW92XHQlMCwgJTEuZFswXQ0KPiA+ICsgICAgIFs/ ciwgdyA7IG5lb25fdG9fZ3A8cT4gICAgICAsICogICBdIGZtb3ZcdCV4MCwgJWQxDQo+ID4gKyAg ICAgWz93LCByIDsgZl9tY3IgICAgICAgICAgICAgICwgKiAgIF0gZm1vdlx0JWQwLCAlMQ0KPiA+ ICsgICAgIFs/ciwgciA7IG1vdl9yZWcgICAgICAgICAgICAsICogICBdIG1vdlx0JTAsICUxDQo+ ID4gKyAgICAgW3cgLCBEbjsgbmVvbl9tb3ZlPHE+ICAgICAgICwgc2ltZF0gPDwNCj4gYWFyY2g2 NF9vdXRwdXRfc2ltZF9tb3ZfaW1tZWRpYXRlIChvcGVyYW5kc1sxXSwgNjQpOw0KPiA+ICsgICAg IFt3ICwgRHo7IGZfbWNyICAgICAgICAgICAgICAsICogICBdIGZtb3ZcdCVkMCwgeHpyDQo+ID4g KyAgfQ0KPiA+ICspDQo+ID4gKw0KPiA+ICsoZGVmaW5lX2luc25fYW5kX3NwbGl0ICIqYWFyY2g2 NF9zaW1kX21vdjxWUU1PVjptb2RlPiINCj4gPiArICBbKHNldCAobWF0Y2hfb3BlcmFuZDpWUU1P ViAwICJub25pbW1lZGlhdGVfb3BlcmFuZCIpDQo+ID4gKyAgICAgICAobWF0Y2hfb3BlcmFuZDpW UU1PViAxICJnZW5lcmFsX29wZXJhbmQiKSldDQo+ID4gICAgIlRBUkdFVF9GTE9BVA0KPiA+ICAg ICAmJiAocmVnaXN0ZXJfb3BlcmFuZCAob3BlcmFuZHNbMF0sIDxNT0RFPm1vZGUpDQo+ID4gICAg ICAgICB8fCBhYXJjaDY0X3NpbWRfcmVnX29yX3plcm8gKG9wZXJhbmRzWzFdLCA8TU9ERT5tb2Rl KSkiDQo+ID4gLSAgIkANCj4gPiAtICAgbGRyXHQlcTAsICUxDQo+ID4gLSAgIHN0cFx0eHpyLCB4 enIsICUwDQo+ID4gLSAgIHN0clx0JXExLCAlMA0KPiA+IC0gICBtb3ZcdCUwLjxWYnR5cGU+LCAl MS48VmJ0eXBlPg0KPiA+IC0gICAjDQo+ID4gLSAgICMNCj4gPiAtICAgIw0KPiA+IC0gICAqIHJl dHVybiBhYXJjaDY0X291dHB1dF9zaW1kX21vdl9pbW1lZGlhdGUgKG9wZXJhbmRzWzFdLCAxMjgp Ow0KPiA+IC0gICBmbW92XHQlZDAsIHh6ciINCj4gPiAtICBbKHNldF9hdHRyICJ0eXBlIiAibmVv bl9sb2FkMV8xcmVnPHE+LCBzdG9yZV8xNiwgbmVvbl9zdG9yZTFfMXJlZzxxPixcDQo+ID4gLSAg ICAgICAgICAgICAgICAgICAgbmVvbl9sb2dpYzxxPiwgbXVsdGlwbGUsIG11bHRpcGxlLFwNCj4g PiAtICAgICAgICAgICAgICAgICAgICBtdWx0aXBsZSwgbmVvbl9tb3ZlPHE+LCBmbW92IikNCj4g PiAtICAgKHNldF9hdHRyICJsZW5ndGgiICI0LDQsNCw0LDgsOCw4LDQsNCIpDQo+ID4gLSAgIChz ZXRfYXR0ciAiYXJjaCIgIiosKiwqLHNpbWQsKiwqLCosc2ltZCwqIildDQo+ID4gKyAge0AgW2Nv bnM6ID0wLCAxOyBhdHRyczogdHlwZSwgYXJjaCwgbGVuZ3RoXQ0KPiA+ICsgICAgIFt3ICAsIG0g OyBuZW9uX2xvYWQxXzFyZWc8cT4gLCAqICAgLCA0XSBsZHJcdCVxMCwgJTENCj4gPiArICAgICBb VW1uLCBEejsgc3RvcmVfMTYgICAgICAgICAgICwgKiAgICwgNF0gc3RwXHR4enIsIHh6ciwgJTAN Cj4gPiArICAgICBbbSAgLCB3IDsgbmVvbl9zdG9yZTFfMXJlZzxxPiwgKiAgICwgNF0gc3RyXHQl cTEsICUwDQo+ID4gKyAgICAgW3cgICwgdyA7IG5lb25fbG9naWM8cT4gICAgICAsIHNpbWQsIDRd IG1vdlx0JTAuPFZidHlwZT4sICUxLjxWYnR5cGU+DQo+ID4gKyAgICAgWz9yICwgdyA7IG11bHRp cGxlICAgICAgICAgICAsICogICAsIDhdICMNCj4gPiArICAgICBbP3cgLCByIDsgbXVsdGlwbGUg ICAgICAgICAgICwgKiAgICwgOF0gIw0KPiA+ICsgICAgIFs/ciAsIHIgOyBtdWx0aXBsZSAgICAg ICAgICAgLCAqICAgLCA4XSAjDQo+ID4gKyAgICAgW3cgICwgRG47IG5lb25fbW92ZTxxPiAgICAg ICAsIHNpbWQsIDRdIDw8DQo+IGFhcmNoNjRfb3V0cHV0X3NpbWRfbW92X2ltbWVkaWF0ZSAob3Bl cmFuZHNbMV0sIDEyOCk7DQo+ID4gKyAgICAgW3cgICwgRHo7IGZtb3YgICAgICAgICAgICAgICAs ICogICAsIDRdIGZtb3ZcdCVkMCwgeHpyDQo+ID4gKyAgfQ0KPiA+ICsgICImJiByZWxvYWRfY29t cGxldGVkDQo+ID4gKyAgICYmICEoRlBfUkVHTlVNX1AgKFJFR05PIChvcGVyYW5kc1swXSkpDQo+ ID4gKyAgICAgICAmJiBGUF9SRUdOVU1fUCAoUkVHTk8gKG9wZXJhbmRzWzFdKSkpIg0KPiA+ICsg IFsoY29uc3RfaW50IDApXQ0KPiA+ICsgIHsNCj4gPiArICAgIGlmIChHUF9SRUdOVU1fUCAoUkVH Tk8gKG9wZXJhbmRzWzBdKSkNCj4gPiArICAgICAgICYmIEdQX1JFR05VTV9QIChSRUdOTyAob3Bl cmFuZHNbMV0pKSkNCj4gPiArICAgICAgYWFyY2g2NF9zaW1kX2VtaXRfcmVnX3JlZ19tb3ZlIChv cGVyYW5kcywgREltb2RlLCAyKTsNCj4gPiArICAgIGVsc2UNCj4gPiArICAgICAgYWFyY2g2NF9z cGxpdF9zaW1kX21vdmUgKG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSk7DQo+ID4gKyAgICBET05F Ow0KPiA+ICsgIH0NCj4gPiAgKQ0KPiA+DQo+IA0KPiANCj4gUmVhZHMgY29ycmVjdGx5IGF0IGZp cnN0IGdsYW5jZS4gUGVyaGFwcyBhIHNhbml0eSBjaGVjayB3aXRoIHRoZQ0KPiBhYXJjaDY0IHNp bWQgaW50cmluc2ljcyBzdWl0ZSwgdmVjdC5leHAgb3IgdHN2YyB1bmRlciBhIHN1aXRhYmxlIG11 bHRpbGliIHRvIGdpdmUNCj4gc29tZSBjb25maWRlbmNlIGFzIHRvIG5vIGNvZGUgY2hhbmdlcy4g Pw0KDQpIbW0gd2hhdCBtdWx0aWxpYiBkaWQgeW91IGhhdmUgaW4gbWluZD8gQUFyY2g2NCBvbmx5 IGhhcyBJTFAzMiBhcyBhZGRpdGlvbmFsDQptdWx0aWxpYnMuDQoNClJlZ2FyZHMsDQpUYW1hcg0K DQo+IA0KPiBSZXZpZXdlZC1ieTogICBSYW1hbmEgUmFkaGFrcmlzaG5hbiAgPHJhbWFuYUBnY2Mu Z251Lm9yZz4NCj4gDQo+IHJlZ2FyZHMNCj4gUmFtYW5hDQo+IA0KPiBSYW1hbmENCj4gDQo+IA0K PiANCj4gDQo+ID4gIDs7IFdoZW4gc3RvcmluZyBsYW5lIHplcm8gd2UgY2FuIHVzZSB0aGUgbm9y bWFsIFNUUiBhbmQgaXRzIG1vcmUNCj4gPiBwZXJtaXNzaXZlIEBAIC0yNzYsMzMgKzI3OSw2IEBA IChkZWZpbmVfaW5zbg0KPiAidmVjX3N0b3JlX3BhaXI8VlE6bW9kZT48VlEyOm1vZGU+Ig0KPiA+ ICAgIFsoc2V0X2F0dHIgInR5cGUiICJuZW9uX3N0cF9xIildDQo+ID4gICkNCj4gPg0KPiA+IC0N Cj4gPiAtKGRlZmluZV9zcGxpdA0KPiA+IC0gIFsoc2V0IChtYXRjaF9vcGVyYW5kOlZRTU9WIDAg InJlZ2lzdGVyX29wZXJhbmQiICIiKQ0KPiA+IC0gICAgICAgKG1hdGNoX29wZXJhbmQ6VlFNT1Yg MSAicmVnaXN0ZXJfb3BlcmFuZCIgIiIpKV0NCj4gPiAtICAiVEFSR0VUX0ZMT0FUDQo+ID4gLSAg ICYmIHJlbG9hZF9jb21wbGV0ZWQNCj4gPiAtICAgJiYgR1BfUkVHTlVNX1AgKFJFR05PIChvcGVy YW5kc1swXSkpDQo+ID4gLSAgICYmIEdQX1JFR05VTV9QIChSRUdOTyAob3BlcmFuZHNbMV0pKSIN Cj4gPiAtICBbKGNvbnN0X2ludCAwKV0NCj4gPiAtew0KPiA+IC0gIGFhcmNoNjRfc2ltZF9lbWl0 X3JlZ19yZWdfbW92ZSAob3BlcmFuZHMsIERJbW9kZSwgMik7DQo+ID4gLSAgRE9ORTsNCj4gPiAt fSkNCj4gPiAtDQo+ID4gLShkZWZpbmVfc3BsaXQNCj4gPiAtICBbKHNldCAobWF0Y2hfb3BlcmFu ZDpWUU1PViAwICJyZWdpc3Rlcl9vcGVyYW5kIiAiIikNCj4gPiAtICAgICAgICAobWF0Y2hfb3Bl cmFuZDpWUU1PViAxICJyZWdpc3Rlcl9vcGVyYW5kIiAiIikpXQ0KPiA+IC0gICJUQVJHRVRfRkxP QVQNCj4gPiAtICAgJiYgcmVsb2FkX2NvbXBsZXRlZA0KPiA+IC0gICAmJiAoKEZQX1JFR05VTV9Q IChSRUdOTyAob3BlcmFuZHNbMF0pKSAmJiBHUF9SRUdOVU1fUCAoUkVHTk8NCj4gKG9wZXJhbmRz WzFdKSkpDQo+ID4gLSAgICAgICB8fCAoR1BfUkVHTlVNX1AgKFJFR05PIChvcGVyYW5kc1swXSkp ICYmIEZQX1JFR05VTV9QDQo+IChSRUdOTyAob3BlcmFuZHNbMV0pKSkpIg0KPiA+IC0gIFsoY29u c3RfaW50IDApXQ0KPiA+IC17DQo+ID4gLSAgYWFyY2g2NF9zcGxpdF9zaW1kX21vdmUgKG9wZXJh bmRzWzBdLCBvcGVyYW5kc1sxXSk7DQo+ID4gLSAgRE9ORTsNCj4gPiAtfSkNCj4gPiAtDQo+ID4g IChkZWZpbmVfZXhwYW5kICJAYWFyY2g2NF9zcGxpdF9zaW1kX21vdjxtb2RlPiINCj4gPiAgICBb KHNldCAobWF0Y2hfb3BlcmFuZDpWUU1PViAwKQ0KPiA+ICAgICAgICAgKG1hdGNoX29wZXJhbmQ6 VlFNT1YgMSkpXQ0KPiA+DQo+ID4NCj4gPg0KPiA+DQo+ID4gLS0NCg==