From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR03-DB5-obe.outbound.protection.outlook.com (mail-db5eur03on0607.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe0a::607]) by sourceware.org (Postfix) with ESMTPS id D49FC394AC17 for ; Mon, 28 Jun 2021 08:40:25 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org D49FC394AC17 Received: from DB9PR06CA0017.eurprd06.prod.outlook.com (2603:10a6:10:1db::22) by AS8PR08MB6599.eurprd08.prod.outlook.com (2603:10a6:20b:332::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4264.22; Mon, 28 Jun 2021 08:40:23 +0000 Received: from DB5EUR03FT061.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:1db:cafe::1e) by DB9PR06CA0017.outlook.office365.com (2603:10a6:10:1db::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4264.18 via Frontend Transport; Mon, 28 Jun 2021 08:40:23 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; gcc.gnu.org; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;gcc.gnu.org; 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; Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DB5EUR03FT061.mail.protection.outlook.com (10.152.21.234) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4264.18 via Frontend Transport; Mon, 28 Jun 2021 08:40:23 +0000 Received: ("Tessian outbound 37244c598b85:v97"); Mon, 28 Jun 2021 08:40:23 +0000 X-CR-MTA-TID: 64aa7808 Received: from 71c15f21da98.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 73BF2DE3-26F2-48CC-9BC9-8527A69B1177.1; Mon, 28 Jun 2021 08:40:17 +0000 Received: from FRA01-PR2-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 71c15f21da98.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 28 Jun 2021 08:40:17 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=M6unFapN36Hy7dyzdOXkC7KZCAXFpQ+d18jeoEL4IqfeNxCANJVSPA+Lesc6R1LxYfT9qIywqsyOxgVMmI+X4zD5H3EsbSMtvwE4Az1pbHODAhOWE3I+khqmFCD2GAP633kqWPKzD3CujD7kaIgzJ+QBwTtSABDl0E20vI11wethXnbUJ8lPlw1KsL4PUIaPNlu676EyEggWHOwxYogh+m1czo4pT4X8PQffyElY+MlMU2PfEhBU88ddp7D4XNJdH3LLmAAAf4jLe4CqHRM4JsX0nWRjk1cECDKCt2qn/iDBUDBEfcJPpr1izcWnGJyj2dtTfJVFPnY0d4SkJ5Bt7A== 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-SenderADCheck; bh=cD7GgC9HbtMpIYfFqXQ0reapu9sQ9Uior2248loKeIA=; b=appgA3cWxPasnmF1G7QpKDxg2gM5Oux+HnmPcSFbWsUgJ/MhzFsa0dwpZznEfd6wccHa1egm+aKxVInAZJF8TIAfsJa8tym5hvXRdE8ep+hKAm6J0Lp+O5K5qQ9ZjWZWUwpj2Ea+gYVq1Q8LatFvUBteNzskpELy0LhSitc9f4ar/8qSMElezN4p+oJAET+weQ5CREDvQpHbVpRmZAfZ4RmKAG7ZqqJPDLii4XcDipTxIFUEUPOxjFEkKSx8e506Hix8wFMhO44A6n3Mq45qNEQQrxvflGGkTQ5Hl8LPxp5sYUtZSchvHzf0PMpAEo8r43hC7OcZftUCaJtZGn/XnQ== 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 Received: from PAXPR08MB6926.eurprd08.prod.outlook.com (2603:10a6:102:138::24) by PR2PR08MB4716.eurprd08.prod.outlook.com (2603:10a6:101:28::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4264.18; Mon, 28 Jun 2021 08:40:16 +0000 Received: from PAXPR08MB6926.eurprd08.prod.outlook.com ([fe80::842d:9c78:f6df:c267]) by PAXPR08MB6926.eurprd08.prod.outlook.com ([fe80::842d:9c78:f6df:c267%4]) with mapi id 15.20.4264.026; Mon, 28 Jun 2021 08:40:16 +0000 From: Kyrylo Tkachov To: Prathamesh Kulkarni CC: Christophe Lyon , gcc Patches Subject: RE: [ARM] PR98435: Missed optimization in expanding vector constructor Thread-Topic: [ARM] PR98435: Missed optimization in expanding vector constructor Thread-Index: AQHXWRLyJygokSmMF0CR9NG1rePGzqsDeP8AgAgJIgCAB7LIAIAQRO5QgAXFzgCAAACLoA== Date: Mon, 28 Jun 2021 08:40:16 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 391C14E029B6FB44A879D185FB50732A.0 x-checkrecipientchecked: true Authentication-Results-Original: linaro.org; dkim=none (message not signed) header.d=none;linaro.org; dmarc=none action=none header.from=arm.com; x-originating-ip: [86.31.103.53] x-ms-publictraffictype: Email X-MS-Office365-Filtering-Correlation-Id: 9e4170fc-5e39-4ed5-df7e-08d93a105ee6 x-ms-traffictypediagnostic: PR2PR08MB4716:|AS8PR08MB6599: X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true nodisclaimer: true x-ms-oob-tlc-oobclassifiers: OLM:2331;OLM:2331; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: PytOCBJ03xwuK5PAHE36Gyh7y1SAqyCQ6lKTlrD1k9aUyyI9BjxhyVmdhYIUCtYUdmjUFBvLQlnM24TWUlfR20iwZvS1Q7Dyyp30JLaB3iZhKSo7kFnK168tqzMn0Pldyyz0JUTsA3IoxQcKyfveEgftC8m+igYKmrqoPXjQ0vcFzBdBnVU5nga28YrmsBZY2ClWa0v9vqCDXb8jesx3FkukYNkC6NK0HWyH8flBEGg9K4EIhxCw/nJejI2KAoqHvFTUb/Xpqu9MqXxVhhHy7VqSse9CYezC1nb69fGjwBTcTO6kNACoLAwj9F39aH6vkVbSTiAnEKcHK83KxwXmhEPtiVwao3nz4GxF4eBPEnOTDGl2GGf00QjWQVg4YJJlv5H0Y3/0+GXBArVJxufvfyplOahFQbRilLw4oYQLF5vrrexzyZ5j3iSkFDMHU+nSvm5lyTQNX04pR/K0fER0WJKddHRjlGfzLCk/3n3MVApqza26GP29wFTjWRxHAMgSNXviTm/cWqfm1mA7dT/ulwM4kEe0mWsUXnchhE7C/s7gk8FbmFx46IyjKKHGsa8x/PwykwIIYnHC9CnROpYQWvfzw539+LBf+cYdB/nD7vEd9gseNUlcL6bVohCwpXIiRYVGR628CNewXCCINzP99DI8gJGjBYz0sydJNOJ0XuMaEVplPH4EVvefKCWsKebsuGZFeZ3dUp7R5w7RtVlYZg== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PAXPR08MB6926.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(39850400004)(396003)(376002)(136003)(346002)(366004)(316002)(9686003)(26005)(2906002)(83380400001)(186003)(8936002)(66946007)(55016002)(966005)(54906003)(8676002)(33656002)(76116006)(5660300002)(66556008)(64756008)(66446008)(66476007)(4326008)(71200400001)(38100700002)(6506007)(53546011)(7696005)(6916009)(86362001)(122000001)(478600001)(52536014)(55236004); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?OUZTdWdLV1dNWnJzQzA4VTRFa3JqVFZ3SmJncTZDdWs5cGZKcTlTVjhmUDdT?= =?utf-8?B?ZUw5N3BYUm41NnluTkk2a0Q2WDdsYWFneEVwVHJSR3c3dmU3YXFwczFVaVZT?= =?utf-8?B?VGxLK3Jtd1p3M0o1bHgzZnhDU0laS3c0RFFLUEVEbDlXRExXUkxZQ0dQL1BG?= =?utf-8?B?eForcGI1SHZ4b21wU1A0OXhnMnNBcG9TRW10Zk4yZk0zdmhZOFZsZGZ2Zkth?= =?utf-8?B?N1ZSamlJbCtnSkhxL0xEVURvWWpHVThYNnorcGdUaGl6eHBtb1VDV0dpUEtx?= =?utf-8?B?a2dXM1dxaERyNk5HcDN1OTF3WnYrRmRZQkM3MngvM3RmcGY2ZnF0b2NTczNz?= =?utf-8?B?cjlCSTNhdS82anUzL09YZ2tZSVJORXBiMmxLN2duREdpT09wTHlNcEQzNGFC?= =?utf-8?B?VjVZemYzbUU5Z0lnMENTZVM0TGUrQ042OENhSnIyYXNtbXd2YVBQTkFIQ1JN?= =?utf-8?B?djRhU1Z3NllyV3hKaVdER3RZUGJ6VWZrcjF2V3lndUZ3QzFZRW1td2FXeExZ?= =?utf-8?B?THVIT3hEUEVuMWRMQ0d0SHVxZlVXYWNMRlJ0OHBNSHkyY2RmNXRFSmk5UkJa?= =?utf-8?B?YmZVaDJtUHBTRndlUS9mSnh2aFp0SnFpM2lMN1k1R3MwQ0hUd1NWdDVUZ20y?= =?utf-8?B?Y1V5M1RIMjRpOWVvMkpZWFNvTHVKcUV2Mi80ektWMUdnVXRJdGRNaHVYbVkz?= =?utf-8?B?YloxQXJFbEttVVFNNVc3ZlBEd1NsMG5RWXZqZ2hOVWRrdjdtOWZRNlZFd05t?= =?utf-8?B?RVNRN01JWjFnSndzNHp5ZWJXT3ZNZTRVMUE3K1F3ZXRFZGdINit3alRoMFEx?= =?utf-8?B?WFNlZ3prVFQxMmJxTWFMNi9EQjNhY05LYmhtRk1SbXE0aXR5VXlTU1VySFc4?= =?utf-8?B?cmlITEFjV1U0Ync0eTlsYXZQaDQ5L1BldVd1bTZ4MWZ0Q2FPdGwwVWUwdlVo?= =?utf-8?B?WkFXOUl6Sk01MGxQRG5tamo1VXBDRkJWcUNHOFAvU2VudkI5SlhxUG81SFYv?= =?utf-8?B?SG5XeTNXUXJEL1EwTWpBckhZSTd0VGF1OTl5b3d3SWVlOUVmdXlxUXJBYXVQ?= =?utf-8?B?dGNwLytvR05xWVpaSXNSSG43bkJ1d3JTOHNrSlc2bXhSSFREenljN3hSMjlh?= =?utf-8?B?ZGpRUG0zM1JlRUhnM0tIT2txQ2p0bk9xWmdFdmswNkJ1Ky9sWW9ScWpFdjlB?= =?utf-8?B?RTgrTFY0SC9WeFBzZ05kMGxhUG5yUUR2R09GdldIZzdoYXlzbmFHbk1UMkQ5?= =?utf-8?B?eHp6WHdnbVkyYjJNckdSL3gzV2FIdzlkdzhkMWhNUFlvOC9IZWwwTXU3WGdX?= =?utf-8?B?QlEvRS9jdTRlYWZIMGpLYkcrQlVLdFEvS0xzTlp1NnNZMGtEdi83cFZNWjVT?= =?utf-8?B?VndaUWwzaXV1emw0WnhWcS9NMkZ4SzFSbzdMWmZGNUQ1aGFRbS9zSjcvTHU5?= =?utf-8?B?aERGTVpTRXdzVlVJeGxVZlF5MlVuRkNCc0lIajlaWkROL05LdUJsRXM0d3Rw?= =?utf-8?B?QzFaZ0JTamhVYmZBRkd3d1NYL0VwbVhOYUx0QWlyRmxFT2Z1b3FOT1ZSZjdK?= =?utf-8?B?a01JMGd2Y2h1TlZabHFiNlpubUU3cE1McVRDekpCVnRWZSs0ZGo3czYyUnhq?= =?utf-8?B?dU5Mb1NKUTdiemFzbjJRUmJrcDZJWDlyM3NZRHlqRkVpTDlRRk5GVlJWL0tL?= =?utf-8?B?TzB2N0FLaEhYQ1VyNW9zL2JvRlo1bS94eFoxLy9kYTZRc24rRVh3VHdlMXA2?= =?utf-8?Q?oeX4RdnwPt9GQWRamI=3D?= x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR2PR08MB4716 Original-Authentication-Results: linaro.org; dkim=none (message not signed) header.d=none;linaro.org; dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DB5EUR03FT061.eop-EUR03.prod.protection.outlook.com X-MS-Office365-Filtering-Correlation-Id-Prvs: a24ab300-0374-451c-7840-08d93a105a8b X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: DNGyk4IWnG7hNPDFzqFY7YUVTTUQaGpTLCLy32/y87/XNGpHNNvi+MNT6f3vQwH8TWt71yExis95FUtSWGhUCDAzKBpGN7Ywp7EkYJ7TIs0/tzN2IbqHuij30zFj6AxLuyPG/ZPedb+YRMHw+tQuSe1BWFgLZXdceI5CkviTjnGVNG+6twAT3GWcWpCwi2gWAaf5eE9YMwl842QvMN23r2fZB2i4TQndbd0RHhGGInNmw66X9I8JfhxTqeW6qcAJxiY6gUD7PDdNiiFauMUAXAHb6VkiSw9UDDgSCAdswjr+U1U/eafT5rYJlTJ8wpCm2hYu04zZE0C0sJJk73jdHTF7/PQ5pn0Is7L58rAjlF67TYqqbV994kwMA9uQokyZJjQEJ5lZ1IsgabeuUDGgGYpn9DfSMfye2cdmF2UCgaIamsI5Cj7/WhShZcGzaFtw51iQAiIXU7a/w+cVgmtlH525092Bl0u1dfBUfPGnM41UrWO9mAyCHvDy14RaKzyzb/naRJMGEoGizWz0jRLo4b12pBab/i2I9fHowJ7Mj7MFZyWLImeZ2plA4gjTBXgSuOlnUYFMdLhWcV+3HG5KBUsRb4Jts+Uexufcg+bMUFodVuvdgTxFR7wMBk/rRxqy3V/8ALDt+epoPubOgvOawvAarQlGIJdCWhfC07pR2FygmhytYncgr+0EWxc9rq5hBl26/D6xHlE7wHPHwXXpB2f+5cKpI5ev5MUyAg2CGvW6R8m6K5bJQuAZ8DmDApxe470Y3UwW77n4jgacmLhGhCyBkjLQ5lyGjny5sEK9jr7QcQPsJ2RV5xQrwv0k5qTP 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:(4636009)(136003)(376002)(346002)(396003)(39860400002)(36840700001)(46966006)(8676002)(33656002)(81166007)(83380400001)(82740400003)(8936002)(36860700001)(7696005)(55016002)(54906003)(356005)(82310400003)(9686003)(86362001)(47076005)(2906002)(53546011)(5660300002)(52536014)(186003)(336012)(70586007)(26005)(4326008)(70206006)(6862004)(966005)(316002)(55236004)(478600001)(6506007); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Jun 2021 08:40:23.5632 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 9e4170fc-5e39-4ed5-df7e-08d93a105ee6 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: DB5EUR03FT061.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB6599 X-Spam-Status: No, score=-6.9 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, KAM_SHORT, SPF_HELO_PASS, SPF_PASS, TXREP, UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 28 Jun 2021 08:40:28 -0000 DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogUHJhdGhhbWVzaCBLdWxr YXJuaSA8cHJhdGhhbWVzaC5rdWxrYXJuaUBsaW5hcm8ub3JnPg0KPiBTZW50OiAyOCBKdW5lIDIw MjEgMDk6MzgNCj4gVG86IEt5cnlsbyBUa2FjaG92IDxLeXJ5bG8uVGthY2hvdkBhcm0uY29tPg0K PiBDYzogQ2hyaXN0b3BoZSBMeW9uIDxjaHJpc3RvcGhlLmx5b25AbGluYXJvLm9yZz47IGdjYyBQ YXRjaGVzIDxnY2MtDQo+IHBhdGNoZXNAZ2NjLmdudS5vcmc+DQo+IFN1YmplY3Q6IFJlOiBbQVJN XSBQUjk4NDM1OiBNaXNzZWQgb3B0aW1pemF0aW9uIGluIGV4cGFuZGluZyB2ZWN0b3INCj4gY29u c3RydWN0b3INCj4gDQo+IE9uIFRodSwgMjQgSnVuIDIwMjEgYXQgMjI6MDEsIEt5cnlsbyBUa2Fj aG92IDxLeXJ5bG8uVGthY2hvdkBhcm0uY29tPg0KPiB3cm90ZToNCj4gPg0KPiA+DQo+ID4NCj4g PiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gPiBGcm9tOiBQcmF0aGFtZXNoIEt1 bGthcm5pIDxwcmF0aGFtZXNoLmt1bGthcm5pQGxpbmFyby5vcmc+DQo+ID4gPiBTZW50OiAxNCBK dW5lIDIwMjEgMDk6MDINCj4gPiA+IFRvOiBDaHJpc3RvcGhlIEx5b24gPGNocmlzdG9waGUubHlv bkBsaW5hcm8ub3JnPg0KPiA+ID4gQ2M6IGdjYyBQYXRjaGVzIDxnY2MtcGF0Y2hlc0BnY2MuZ251 Lm9yZz47IEt5cnlsbyBUa2FjaG92DQo+ID4gPiA8S3lyeWxvLlRrYWNob3ZAYXJtLmNvbT4NCj4g PiA+IFN1YmplY3Q6IFJlOiBbQVJNXSBQUjk4NDM1OiBNaXNzZWQgb3B0aW1pemF0aW9uIGluIGV4 cGFuZGluZyB2ZWN0b3INCj4gPiA+IGNvbnN0cnVjdG9yDQo+ID4gPg0KPiA+ID4gT24gV2VkLCA5 IEp1biAyMDIxIGF0IDE1OjU4LCBQcmF0aGFtZXNoIEt1bGthcm5pDQo+ID4gPiA8cHJhdGhhbWVz aC5rdWxrYXJuaUBsaW5hcm8ub3JnPiB3cm90ZToNCj4gPiA+ID4NCj4gPiA+ID4gT24gRnJpLCA0 IEp1biAyMDIxIGF0IDEzOjE1LCBDaHJpc3RvcGhlIEx5b24NCj4gPGNocmlzdG9waGUubHlvbkBs aW5hcm8ub3JnPg0KPiA+ID4gd3JvdGU6DQo+ID4gPiA+ID4NCj4gPiA+ID4gPiBPbiBGcmksIDQg SnVuIDIwMjEgYXQgMDk6MjcsIFByYXRoYW1lc2ggS3Vsa2FybmkgdmlhIEdjYy1wYXRjaGVzDQo+ ID4gPiA+ID4gPGdjYy1wYXRjaGVzQGdjYy5nbnUub3JnPiB3cm90ZToNCj4gPiA+ID4gPiA+DQo+ ID4gPiA+ID4gPiBIaSwNCj4gPiA+ID4gPiA+IEFzIG1lbnRpb25lZCBpbiBQUiwgZm9yIHRoZSBm b2xsb3dpbmcgdGVzdC1jYXNlOg0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+ICNpbmNsdWRlIDxh cm1fbmVvbi5oPg0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+IGJmbG9hdDE2eDRfdCBmMSAoYmZs b2F0MTZfdCBhKQ0KPiA+ID4gPiA+ID4gew0KPiA+ID4gPiA+ID4gICByZXR1cm4gdmR1cF9uX2Jm MTYgKGEpOw0KPiA+ID4gPiA+ID4gfQ0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+IGJmbG9hdDE2 eDRfdCBmMiAoYmZsb2F0MTZfdCBhKQ0KPiA+ID4gPiA+ID4gew0KPiA+ID4gPiA+ID4gICByZXR1 cm4gKGJmbG9hdDE2eDRfdCkge2EsIGEsIGEsIGF9Ow0KPiA+ID4gPiA+ID4gfQ0KPiA+ID4gPiA+ ID4NCj4gPiA+ID4gPiA+IENvbXBpbGluZyB3aXRoIGFybS1saW51eC1nbnVlYWJpIC1PMyAtbWZw dT1uZW9uIC1tZmxvYXQtDQo+IGFiaT1zb2Z0ZnANCj4gPiA+ID4gPiA+IC1tYXJjaD1hcm12OC4y LWErYmYxNitmcDE2IHJlc3VsdHMgaW4gZjIgbm90IGJlaW5nIHZlY3Rvcml6ZWQ6DQo+ID4gPiA+ ID4gPg0KPiA+ID4gPiA+ID4gZjE6DQo+ID4gPiA+ID4gPiAgICAgICAgIHZkdXAuMTYgZDE2LCBy MA0KPiA+ID4gPiA+ID4gICAgICAgICB2bW92ICAgIHIwLCByMSwgZDE2ICBAIHY0YmYNCj4gPiA+ ID4gPiA+ICAgICAgICAgYnggICAgICBscg0KPiA+ID4gPiA+ID4NCj4gPiA+ID4gPiA+IGYyOg0K PiA+ID4gPiA+ID4gICAgICAgICBtb3YgICAgIHIzLCByMCAgQCBfX2JmMTYNCj4gPiA+ID4gPiA+ ICAgICAgICAgYWRyICAgICByMSwgLkw0DQo+ID4gPiA+ID4gPiAgICAgICAgIGxkcmQgICAgcjAs IFtyMV0NCj4gPiA+ID4gPiA+ICAgICAgICAgbW92ICAgICByMiwgcjMgIEAgX19iZjE2DQo+ID4g PiA+ID4gPiAgICAgICAgIG1vdiAgICAgaXAsIHIzICBAIF9fYmYxNg0KPiA+ID4gPiA+ID4gICAg ICAgICBiZmkgICAgIHIxLCByMiwgIzAsICMxNg0KPiA+ID4gPiA+ID4gICAgICAgICBiZmkgICAg IHIwLCBpcCwgIzAsICMxNg0KPiA+ID4gPiA+ID4gICAgICAgICBiZmkgICAgIHIxLCByMywgIzE2 LCAjMTYNCj4gPiA+ID4gPiA+ICAgICAgICAgYmZpICAgICByMCwgcjIsICMxNiwgIzE2DQo+ID4g PiA+ID4gPiAgICAgICAgIGJ4ICAgICAgbHINCj4gPiA+ID4gPiA+DQo+ID4gPiA+ID4gPiBUaGlz IHNlZW1zIHRvIGhhcHBlbiBiZWNhdXNlIHZlY19pbml0IHBhdHRlcm4gaW4gbmVvbi5tZCBoYXMg VkRRDQo+ID4gPiBtb2RlDQo+ID4gPiA+ID4gPiBpdGVyYXRvciwgd2hpY2ggZG9lc24ndCBpbmNs dWRlIFY0QkYuIEluIGF0dGFjaGVkIHBhdGNoLCBJIGNoYW5nZWQNCj4gPiA+ID4gPiA+IG1vZGUN Cj4gPiA+ID4gPiA+IHRvIFZEUVggd2hpY2ggc2VlbXMgdG8gd29yayBmb3IgdGhlIHRlc3QtY2Fz ZSwgYW5kIHRoZSBjb21waWxlcg0KPiBub3cNCj4gPiA+IGdlbmVyYXRlczoNCj4gPiA+ID4gPiA+ DQo+ID4gPiA+ID4gPiBmMjoNCj4gPiA+ID4gPiA+ICAgICAgICAgdmR1cC4xNiBkMTYsIHIwDQo+ ID4gPiA+ID4gPiAgICAgICAgIHZtb3YgICAgcjAsIHIxLCBkMTYgIEAgdjRiZg0KPiA+ID4gPiA+ ID4gICAgICAgICBieCAgICAgIGxyDQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gSG93ZXZlciwg dGhlIHBhdHRlcm4gaXMgYWxzbyBnYXRlZCBvbiBUQVJHRVRfSEFWRV9NVkUgYW5kIEkgYW0NCj4g PiA+IG5vdA0KPiA+ID4gPiA+ID4gc3VyZSBpZiBlaXRoZXIgVkRRIG9yIFZEUVggYXJlIGNvcnJl Y3QgbW9kZXMgZm9yIE1WRSBzaW5jZSBNVkUNCj4gaGFzDQo+ID4gPiA+ID4gPiBvbmx5IDEyOC1i aXQgdmVjdG9ycyA/DQo+ID4gPiA+ID4gPg0KPiA+ID4gPiA+DQo+ID4gPiA+ID4gSSB0aGluayBw YXR0ZXJucyBjb21tb24gdG8gYm90aCBOZW9uIGFuZCBNVkUgc2hvdWxkIGJlIG1vdmVkIHRvDQo+ ID4gPiA+ID4gdmVjLWNvbW1vbi5tZCwgSSBkb24ndCBrbm93IHdoeSBzdWNoIHBhdHRlcm5zIHdl cmUgbGVmdCBpbg0KPiBuZW9uLm1kLg0KPiA+ID4gPiBTaW5jZSB3ZSBlbmQgdXAgY2FsbGluZyBu ZW9uX2V4cGFuZF92ZWN0b3JfaW5pdCBmb3IgYm90aCBORU9OIGFuZA0KPiBNVkUsDQo+ID4gPiA+ IEkgYW0gbm90IHN1cmUgaWYgd2Ugc2hvdWxkIHNlcGFyYXRlIHRoZSBwYXR0ZXJuID8NCj4gPiA+ ID4gV291bGQgaXQgbWFrZSBzZW5zZSB0byBGQUlMIGlmIHRoZSBtb2RlIHNpemUgaXNuJ3QgMTYg Ynl0ZXMgZm9yIE1WRSBhcw0KPiA+ID4gPiBpbiBhdHRhY2hlZCBwYXRjaCBzbw0KPiA+ID4gPiBp dCB3aWxsIGNhbGwgbmVvbl9leHBhbmRfdmVjdG9yX2luaXQgb25seSBmb3IgMTI4LWJpdCB2ZWN0 b3JzID8NCj4gPiA+ID4gQWx0aG8gaGFyZC1jb2RpbmcgMTYgaW4gdGhlIHBhdHRlcm4gZG9lc24n dCBzZWVtIGEgZ29vZCBpZGVhIHRvIG1lDQo+IGVpdGhlci4NCj4gPiA+IHBpbmcgaHR0cHM6Ly9n Y2MuZ251Lm9yZy9waXBlcm1haWwvZ2NjLXBhdGNoZXMvMjAyMS1KdW5lLzU3MjM0Mi5odG1sDQo+ ID4gPiAoYXR0YWNoaW5nIHBhdGNoIGFzIHRleHQpLg0KPiA+ID4NCj4gPg0KPiA+IC0tLSBhL2dj Yy9jb25maWcvYXJtL25lb24ubWQNCj4gPiArKysgYi9nY2MvY29uZmlnL2FybS9uZW9uLm1kDQo+ ID4gQEAgLTQ1OSwxMCArNDU5LDEyIEBADQo+ID4gICkNCj4gPg0KPiA+ICAoZGVmaW5lX2V4cGFu ZCAidmVjX2luaXQ8bW9kZT48Vl9lbGVtX2w+Ig0KPiA+IC0gIFsobWF0Y2hfb3BlcmFuZDpWRFEg MCAic19yZWdpc3Rlcl9vcGVyYW5kIikNCj4gPiArICBbKG1hdGNoX29wZXJhbmQ6VkRRWCAwICJz X3JlZ2lzdGVyX29wZXJhbmQiKQ0KPiA+ICAgICAobWF0Y2hfb3BlcmFuZCAxICIiICIiKV0NCj4g PiAgICAiVEFSR0VUX05FT04gfHwgVEFSR0VUX0hBVkVfTVZFIg0KPiA+ICB7DQo+ID4gKyAgaWYg KFRBUkdFVF9IQVZFX01WRSAmJiBHRVRfTU9ERV9TSVpFIChHRVRfTU9ERQ0KPiAob3BlcmFuZHNb MF0pKSAhPSAxNikNCj4gPiArICAgIEZBSUw7DQo+ID4gICAgbmVvbl9leHBhbmRfdmVjdG9yX2lu aXQgKG9wZXJhbmRzWzBdLCBvcGVyYW5kc1sxXSk7DQo+ID4gICAgRE9ORTsNCj4gPiAgfSkNCj4g Pg0KPiA+IEkgdGhpbmsgd2Ugc2hvdWxkIG1vdmUgdGhpcyB0byB2ZWMtY29tbW9uLm1kIGxpa2Ug Q2hyaXN0b3BoZSBzYWlkLg0KPiA+IFBlcmhhcHMgcmF0aGVyIHRoYW4gbWFraW5nIGl0IEZBSUwg Zm9yIG5vbi0xNiBNVkUgc2l6ZXMgd2UganVzdCBkaXNhYmxlIGl0IGluDQo+IHRoZSBleHBhbmRl ciBjb25kaXRpb24/DQo+ID4gIlRBUkdFVF9ORU9OIHx8IChUQVJHRVRfSEFWRV9NVkUgJiYgR0VU X01PREVfU0laRSAoPA0KPiBWRFE+bW9kZSkgIT0gMTYpIg0KPiBJcyBpdCBPSyB0byB1c2UgPE1P REU+bW9kZSA/IEJlY2F1c2UgdXNpbmcgPFZEUT5tb2RlIHJlc3VsdGVkIGluIGxvdA0KPiBvZiBi dWlsZCBlcnJvcnMuDQo+IEFsc28sIEkgdGhpbmsgdGhlIGNvbXBhcmlzb24gc2hvdWxkIGJlIGlu dmVydGVkLCBpZSwgR0VUX01PREVfU0laRQ0KPiAoPE1PREU+bW9kZSkgPT0gMTYgc2luY2UNCj4g d2Ugd2FudCB0byBtYWtlIHRoZSBwYXR0ZXJuIHBhc3MgaWYgdGFyZ2V0IGlzIE1WRSBhbmQgdmVj dG9yIHNpemUgaXMgMTYgYnl0ZXMgPw0KPiBEbyB0aGVzZSBjaGFuZ2VzIGluIGF0dGFjaGVkIHBh dGNoIGxvb2sgT0sgPw0KDQpZZXMsIHlvdSdyZSByaWdodC4NCk9rLg0KVGhhbmtzLA0KS3lyaWxs DQoNCg0KPiANCj4gVGhhbmtzLA0KPiBQcmF0aGFtZXNoDQo+ID4NCj4gPiBUaGFua3MsDQo+ID4g S3lyaWxsDQo+ID4NCj4gPiA+IFRoYW5rcywNCj4gPiA+IFByYXRoYW1lc2gNCj4gPiA+ID4NCj4g PiA+ID4gVGhhbmtzLA0KPiA+ID4gPiBQcmF0aGFtZXNoDQo+ID4gPiA+ID4NCj4gPiA+ID4gPiBU aGF0IGJlaW5nIHNhaWQsIEkgc3VnZ2VzdCB5b3UgbG9vayBhdCBvdGhlciBzaW1pbGFyIHBhdHRl cm5zIGluDQo+ID4gPiA+ID4gdmVjLWNvbW1vbi5tZCwgbW9zdCBvZiB3aGljaCBhcmUgZ2F0ZWQg b24NCj4gPiA+ID4gPiBBUk1fSEFWRV88TU9ERT5fQVJJVEgNCj4gPiA+ID4gPiBhbmQgcG9zc2li bHkgYmV3YXJlIG9mIGlzc3VlcyB3aXRoIGl3bW14dCA6LSkNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ IENocmlzdG9waGUNCj4gPiA+ID4gPg0KPiA+ID4gPiA+ID4gVGhhbmtzLA0KPiA+ID4gPiA+ID4g UHJhdGhhbWVzaA0K