From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from na01-obe.outbound.protection.outlook.com (mail-eastusazon11020020.outbound.protection.outlook.com [52.101.51.20]) by sourceware.org (Postfix) with ESMTPS id 8462838A2853 for ; Fri, 7 Oct 2022 03:50:55 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 8462838A2853 Authentication-Results: sourceware.org; dmarc=pass (p=reject dis=none) header.from=microsoft.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=microsoft.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=VSX7JGT3J0hkyzdVKuknwvSiOgS9SywTBuaFP62TJqMhjCxAzuAhueQGgEfTRgj1gmHuPaybyGqyC9aouCtOOpmznDWQeUeMc5Ly0upkdfJcO7jCLDdPh2C/s8mhBTpS4UWXpqOkYFbws7EFH3dYJDxi5EYJjjItlslsTgiQpSKwXePTZQqABnHfCFw+JP46/pqRhddtjF5L0HINizChOQr9tt+cfy+FEJNKWVBrkk+4F7aAXxg7jJb6AkAzikBzEcLVJbA4TkyEZJxWKDFvSfmhFM+1W930tXqm409dgEbmSL/DrQJJiJo5F6F7pToXppEb8EZbT6/raXuQUv8jXA== 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=uwW4sg90V+UXEw7Py5AwG4EiXG7bLHnwjA36Nl9ngzE=; b=kY0YYKH992FvDv4yGo/5WUjd0u70BxaV37aqCaNMxy3Zo8rcVr8r3r78f4y/qpZ9lyKTSkEW27RixEUsZOzjr7COB/fErh7CCoQFpDFu5QGw5K/FKsbo94UMJW35W3Gk3/EEzzPlMw9INveyxgk3swaPnJfiXu9EhjMnGn7dXDSGePY0fcW7jiSByMr+v6yWdU5jeKIbShu332RFkuks2VPZFgukzD/hqpmqONK1H+YcbrsuZCNWW3AnspUh0T4TA8qp7XYKQhbaJ23xO1AosPckId8kp5/wav3F+AKNxi5ek1/jIeGje7FZYWOQ20DnRJctFC0VMNHiSUGnQwM4wQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=microsoft.com; dmarc=pass action=none header.from=microsoft.com; dkim=pass header.d=microsoft.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=uwW4sg90V+UXEw7Py5AwG4EiXG7bLHnwjA36Nl9ngzE=; b=EvONDklYG44DxKDb2jq5N2A6ffmDZNiFb1fzrBanJFjPCcYFWdZG28CyHcTYyq/tFuPmE+l8X69MY0Ke+X0CBRv5qbTaHgHlbJJD7bQRtlD9XME552JNLAUnESrpDIjH64XJpvkXpTC5Vrxx82/L33Cm7Hb4a5w6aJffRKTn/p0= Received: from CY5PR21MB3542.namprd21.prod.outlook.com (2603:10b6:930:d::7) by MN2PR21MB1456.namprd21.prod.outlook.com (2603:10b6:208:20b::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5723.9; Fri, 7 Oct 2022 03:50:53 +0000 Received: from CY5PR21MB3542.namprd21.prod.outlook.com ([fe80::38ea:b9c1:41a7:b0ec]) by CY5PR21MB3542.namprd21.prod.outlook.com ([fe80::38ea:b9c1:41a7:b0ec%3]) with mapi id 15.20.5709.009; Fri, 7 Oct 2022 03:50:53 +0000 From: Eugene Rozenfeld To: Jason Merrill , "gcc-patches@gcc.gnu.org" Subject: Re: [PATCH] Set discriminators for call stmts on the same line within the same basic block Thread-Topic: [PATCH] Set discriminators for call stmts on the same line within the same basic block Thread-Index: AQHY2f//XmpXA3f4t0abItkoyf7ROw== Date: Fri, 7 Oct 2022 03:50:53 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_ActionId=31fa24a1-6fb9-489f-94a6-2569e0044028;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_ContentBits=0;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Enabled=true;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Method=Standard;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Name=Internal;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_SetDate=2022-10-07T03:38:23Z;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_SiteId=72f988bf-86f1-41af-91ab-2d7cd011db47; authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=microsoft.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CY5PR21MB3542:EE_|MN2PR21MB1456:EE_ x-ms-office365-filtering-correlation-id: 39d9599c-8140-4fca-7702-08daa81721fb x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: ji/W5k0L9XhahAGKPdBh/mKKav4XeLAwfsloQpNY8js5i17JC9VWyZoGUI+bpCSyvnSB42T2YWSSVaHXsTYzIzvO1q1G0N8b+6x7qZMwq5Fjfb0fRZU2yb0Xht+oCNlrhOLcQUqh+cJAUvKO583L89eurWDQCa9+pds2COAmIOB/o45/w1jTzSVUolwgK83Nv8kdGE0eHUMURz4hn+aMxFAFvow9gqwLg6PgHoyXZjEufUOlQhe4ywXKNYHmydADlC8pgkxMYy5ZPBlIzy68gnKxpy6UDCtFsJnLmNhuyHP33DzEdK4j35BDhOulOMOOaruZAZofgZVPZXTXsLPT96XU6JnEdbFNMjGYhasRLEUZDMrvp6gHLX9STe2xO7UujZu+G8ClH+63hBACbWhtJL5mfbK1SHHnRa0pDYQn29wEiSKysDqn0rtQd0b7vIti4WPS++GswnRQ7JDaqIlYQO0j2Rd3qi0lNEsMHFAljm+pMJZ5d3ZaED+fmUChVguOPhJknaOsgncBR24B8Lh2ACT3S3NMjoXyg9zvJq3hmIEtkM3DhW/cp66X+E1HdCmQK+vJHu9XEk12RZMpcn9WC36UCW4g7zbO95tGhBSQuUo69gJqKc5qwrt5cCN+nY4FK0DXYjoVDlb4B7pO43FUPc8AJUnbVkTKAmOwcuA1yp8ng9D/ccbbq104w9PyzwbqzvfBvD97cksFg84wvJZDXsqf0fDmdXEFjAY+h2cknkckQCTjH2G69bLMl0rKGeBecfyc+fWgSNPgMKKvpbEP5RmIruHtkf1eXXucWgqxqlCvLN702K6Sp818/faHGxGQ x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CY5PR21MB3542.namprd21.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(4636009)(366004)(346002)(396003)(376002)(136003)(39860400002)(451199015)(10290500003)(110136005)(7696005)(66946007)(64756008)(66476007)(66446008)(8676002)(66556008)(76116006)(33656002)(55016003)(53546011)(41300700001)(122000001)(478600001)(82950400001)(82960400001)(38070700005)(38100700002)(83380400001)(26005)(9686003)(6506007)(52536014)(86362001)(8936002)(5660300002)(316002)(8990500004)(2906002)(186003)(71200400001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?U1FEUHVJTG04dmRyQWZ1RE1LNXZvWk1mSGtUWUxza2RQckpjMUozQ3h4QkM2?= =?utf-8?B?ZmlkQkxXYUw5cUhWSjY2NkN1aGxjZFlONE00MTJEbW9oMXZvV0tqQXd4dFI5?= =?utf-8?B?ZjV1c1pXMlI5VVpwN2h0SmIzeGdsR1ZueUtXOHNmSFhRWXB2cjFTZDZYZXI0?= =?utf-8?B?eS9ReWtpNnlTd2pHbk5ob1Zvek8yOXdJODlleVhkUEh1SzJwdTA0b0l3dlZ3?= =?utf-8?B?NDY0SGxCak93TjlmYzFrL0NmUzdHOEcyK1RXbWZmODV2MTVwOHB4emg3MXBa?= =?utf-8?B?NklHSHNpVVJ1bitnWGwyYjBqNXhySUxLSFY5Z0ZBeUw1NFpuYU5zVis1aG10?= =?utf-8?B?cWExSU1jaTVtb1hGWFhYRjBiWjNJcSsvM1o2WVh1ZG9ycjRFNmRZQWQvTG9s?= =?utf-8?B?cE4rYkEwcENYRndDUVZpUU94eXYrdENxQXZVc1VCSDIzZWhqdXNld1J6eVZL?= =?utf-8?B?OVIyZ0lMRUhjZHVMTCtIdUlzQkd4c1ZwaWl2QmV5cDlKazhSdmNRMnBxcFdq?= =?utf-8?B?eUlWUG1BdDl4akJkV2s4L25KbTdYbHBPdUFCTE1HclR4L0JoWTRXUGJTSzRW?= =?utf-8?B?MzBWTGZMemkxQ3ZITEs1a0xITS9OamFWcUtRYmIveTROVmxrdGkxeU9yR3U3?= =?utf-8?B?T3c0Nnl1QVRFS1lCbFQ3ajhYWDQ4eHMvdTE2MWlNVU05U3JCeCs4OEFCTDBM?= =?utf-8?B?SzlQcTd6M2FsVjlSOGpNMHV0UlUvOUZSQUhucVJ4RTJQNURiaEJFNG04aG9O?= =?utf-8?B?K3o1blZMNnd0SFZLT2RjUEZQUW5iQ3BzWGlEYlVhL0FZbEVIVFhtUlQwQndI?= =?utf-8?B?THZpK1pPUnFSL0RXTDJ6RkhFRldtSlI5NCtlN2Fzekg1NytGRUtUVGQ0ZnBM?= =?utf-8?B?N3g4Zy9LS0FVZ1dSc01vM2JBblB4WFpMVFNrMnFMR0E5UlF2T3QzdDNNbVZZ?= =?utf-8?B?T0RlRzBMMXVuY0p3UUtCRlFPaGhyakJQcFdGMkdXblRHNFFISlFVcFpQOFV3?= =?utf-8?B?ZS9IU1U4ZlBSb0RJcHUxN1V3bGNWMkN6anFHVHpsNkxPNkpXQXZPMGZqVjJ0?= =?utf-8?B?WTNnbVFYb3hsSHcrSE9JbEdxSVNhRHM4U1c0S2s5NVBEK2pzZ0tJZEVlNDYw?= =?utf-8?B?MmdnVzJtV2ZnOE51TXA4UUZMamFRckZMQ3c4RCtmWEQyeWZNekY1YWQyUzB6?= =?utf-8?B?YWZwWkZRckhIR0tmdFFoNFQ3REgybkkvbHVuUEJyZ3lyZjJHL1lNUXZ1Z204?= =?utf-8?B?STdHcUNZWkxlQUk0VTVwNU1EeDlKZFlySU45SnNvRjdwSm5vcDlIaDRMU2pj?= =?utf-8?B?cmFZdWFYZDZKSDRDVWx0b1Uzd0JaK1BXb1VPZmcyY3MxNm5jcTBhTTFkYUhH?= =?utf-8?B?MjJPN0FzbFVQNnBlRVZEalRGYW90SUhBbjc3YUpuUVQ3NnBOUUlBanFxUkE1?= =?utf-8?B?WWlWRTRwSmNndWpJQUNWeWhKNFpKOEhLYXp5bFRLbTQxeHhCMnBHLzhMYnFC?= =?utf-8?B?aUVqWG0xaEFoQmk3YUFGWlBlcGFKbitRS3hEQ0VVeThQZzlSTTE2ZCt0K3Za?= =?utf-8?B?NUpZUmhsekNEOUI3MGw5QnJOVk40RmdNTVZZYzNQcXVyY3ZBQXBrMmJ0ZUpB?= =?utf-8?B?TkVzYlFIWnR2T3J1ODM4bENhY0ljM1pBZkVRUHlRSjVMTnZQVjFXU05uNmRQ?= =?utf-8?B?QmJjWHZaNmpuR0FXeHZFd0xOUTZ6c1cwZ2xCM01XQnVCaFZIdFZoakdWZVdV?= =?utf-8?B?Z1U2UDhSSHM5RVA3WE4wMjNSMzRVYW9FckxGbFFjVDFuYjhlL3BsMmV2SnVO?= =?utf-8?B?eHFlRUlSbjNrRk5IenZBK0FHUmpBZmN6b0hicnpkd2pvSWY4MU9KajBqSEd6?= =?utf-8?B?Yk9vZytMNTVGYjJaeURucDN6ejVXa0pTUUtCcGJmQmFIRFVhM2RySzNjTjc5?= =?utf-8?B?TkFXU0Y5ckYzSU5RK01mYXZ1cTRWcUhTSjNyMlFLUmxIRGk3dDExUkFlMlMz?= =?utf-8?B?N25FZ0YrODZ0YzJKcVM4WHRyRkJ5eDVQenhzSGFYeng1akJKK3BOUm9mY2ZG?= =?utf-8?B?NUE1aU93cjZQNzlBWHJYMnlkanZHUW5iTnprNTc0YVRlUVNmYjM5NFBkd2ls?= =?utf-8?Q?NhqdsMWTuY/YembOlLm09ufjk?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-OriginatorOrg: microsoft.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CY5PR21MB3542.namprd21.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 39d9599c-8140-4fca-7702-08daa81721fb X-MS-Exchange-CrossTenant-originalarrivaltime: 07 Oct 2022 03:50:53.3563 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 72f988bf-86f1-41af-91ab-2d7cd011db47 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: LxaWYPh8zKpUrhz7flad1g6mADl92mRhD41o1nv7lNiIc6MjE5NhxVmgpFtjEjTKfK//atto0+M+Ma4NlBzwRA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR21MB1456 X-Spam-Status: No, score=-9.9 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FORGED_SPF_HELO,GIT_PATCH_0,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS,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: VGhhbmsgeW91IGZvciB0aGUgcmV2aWV3IEphc29uLg0KDQpJIGZpeGVkIGZvcm1hdHRpbmcgYW5k IHVwZGF0ZWQgdGhlIGNvbW1pdCBkZXNjcmlwdGlvbjoNCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0NCg0KQ2FsbCBzdGF0ZW1lbnRzIGFyZSBwb3NzaWJsZSBzcGxpdCBwb2ludHMgb2YgYSBi YXNpYyBibG9jayBzbyB0aGV5IG1heSBlbmQgdXANCmluIGRpZmZlcmVudCBiYXNpYyBibG9ja3Mg YnkgdGhlIHRpbWUgcGFzc19pcGFfYXV0b19wcm9maWxlIGV4ZWN1dGVzLg0KDQpUaGlzIGNoYW5n ZSB3aWxsIGFsc28gc2ltcGxpZnkgY2FsbCBzaXRlIGxvb2t1cHMgc2luY2Ugbm93IGxvY2F0aW9u IHdpdGggZGlzY3JpbWluYXRvcg0Kd2lsbCB1bmlxdWVseSBpZGVudGlmeSB0aGUgY2FsbCBzaXRl IChubyBjYWxsZWUgZnVuY3Rpb24gbmFtZSBpcyBuZWVkZWQpLg0KDQpUaGlzIGNoYW5nZSBpcyBi YXNlZCBvbiBjb21taXQgMWU2YzRhN2E4ZmI4ZTIwNTQ1YmI5ZjkwMzJkMzg1NGYzZjc5NGMxOA0K YnkgRGVoYW8gQ2hlbiBpbiB2ZW5kb3JzL2dvb2dsZS9oZWFkcy9nY2MtNF84Lg0KDQpUZXN0ZWQg b24geDg2XzY0LXBjLWxpbnV4LWdudS4NCg0KZ2NjL0NoYW5nZUxvZzoNCgkqIHRyZWUtY2ZnLmNj IChhc3NpZ25fZGlzY3JpbWluYXRvcnMpOiBTZXQgZGlzY3JpbWluYXRvcnMgZm9yIGNhbGwgc3Rt dHMNCglvbiB0aGUgc2FtZSBsaW5lIHdpdGhpbiB0aGUgc2FtZSBiYXNpYyBibG9jay4NCi0tLQ0K IGdjYy90cmVlLWNmZy5jYyB8IDMyICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrDQog MSBmaWxlIGNoYW5nZWQsIDMyIGluc2VydGlvbnMoKykNCg0KZGlmZiAtLWdpdCBhL2djYy90cmVl LWNmZy5jYyBiL2djYy90cmVlLWNmZy5jYw0KaW5kZXggYWRlNjZjNTQ0OTkuLmY2YTQ2NWY0Yzkx IDEwMDY0NA0KLS0tIGEvZ2NjL3RyZWUtY2ZnLmNjDQorKysgYi9nY2MvdHJlZS1jZmcuY2MNCkBA IC0xMjAzLDggKzEyMDMsNDAgQEAgYXNzaWduX2Rpc2NyaW1pbmF0b3JzICh2b2lkKQ0KICAgICB7 DQogICAgICAgZWRnZSBlOw0KICAgICAgIGVkZ2VfaXRlcmF0b3IgZWk7DQorICAgICAgZ2ltcGxl X3N0bXRfaXRlcmF0b3IgZ3NpOw0KICAgICAgIGdpbXBsZSAqbGFzdCA9IGxhc3Rfc3RtdCAoYmIp Ow0KICAgICAgIGxvY2F0aW9uX3QgbG9jdXMgPSBsYXN0ID8gZ2ltcGxlX2xvY2F0aW9uIChsYXN0 KSA6IFVOS05PV05fTE9DQVRJT047DQorICAgICAgbG9jYXRpb25fdCBjdXJyX2xvY3VzID0gVU5L Tk9XTl9MT0NBVElPTjsNCisgICAgICBpbnQgY3Vycl9kaXNjciA9IDA7DQorDQorICAgICAgLyog VHJhdmVyc2UgdGhlIGJhc2ljIGJsb2NrLCBpZiB0d28gZnVuY3Rpb24gY2FsbHMgd2l0aGluIGEg YmFzaWMgYmxvY2sNCisJYXJlIG1hcHBlZCB0byB0aGUgc2FtZSBsaW5lLCBhc3NpZ24gYSBuZXcg ZGlzY3JpbWluYXRvciBiZWNhdXNlIGEgY2FsbA0KKwlzdG10IGNvdWxkIGJlIGEgc3BsaXQgcG9p bnQgb2YgYSBiYXNpYyBibG9jay4gICovDQorICAgICAgZm9yIChnc2kgPSBnc2lfc3RhcnRfYmIg KGJiKTsgIWdzaV9lbmRfcCAoZ3NpKTsgZ3NpX25leHQgKCZnc2kpKQ0KKwl7DQorCSAgZ2ltcGxl ICpzdG10ID0gZ3NpX3N0bXQgKGdzaSk7DQorCSAgZXhwYW5kZWRfbG9jYXRpb24gY3Vycl9sb2N1 c19lOw0KKwkgIGlmIChjdXJyX2xvY3VzID09IFVOS05PV05fTE9DQVRJT04pDQorCSAgICB7DQor CSAgICAgIGN1cnJfbG9jdXMgPSBnaW1wbGVfbG9jYXRpb24gKHN0bXQpOw0KKwkgICAgICBjdXJy X2xvY3VzX2UgPSBleHBhbmRfbG9jYXRpb24gKGN1cnJfbG9jdXMpOw0KKwkgICAgfQ0KKwkgIGVs c2UgaWYgKCFzYW1lX2xpbmVfcCAoY3Vycl9sb2N1cywgJmN1cnJfbG9jdXNfZSwgZ2ltcGxlX2xv Y2F0aW9uIChzdG10KSkpDQorCSAgICB7DQorCSAgICAgIGN1cnJfbG9jdXMgPSBnaW1wbGVfbG9j YXRpb24gKHN0bXQpOw0KKwkgICAgICBjdXJyX2xvY3VzX2UgPSBleHBhbmRfbG9jYXRpb24gKGN1 cnJfbG9jdXMpOw0KKwkgICAgICBjdXJyX2Rpc2NyID0gMDsNCisJICAgIH0NCisJICBlbHNlIGlm IChjdXJyX2Rpc2NyICE9IDApDQorCSAgICB7DQorCSAgICAgIGxvY2F0aW9uX3QgbG9jID0gZ2lt cGxlX2xvY2F0aW9uIChzdG10KTsNCisJICAgICAgbG9jYXRpb25fdCBkbG9jID0gbG9jYXRpb25f d2l0aF9kaXNjcmltaW5hdG9yIChsb2MsIGN1cnJfZGlzY3IpOw0KKwkgICAgICBnaW1wbGVfc2V0 X2xvY2F0aW9uIChzdG10LCBkbG9jKTsNCisJICAgIH0NCisJICAvKiBBbGxvY2F0ZSBhIG5ldyBk aXNjcmltaW5hdG9yIGZvciBDQUxMIHN0bXQuICAqLw0KKwkgIGlmIChnaW1wbGVfY29kZSAoc3Rt dCkgPT0gR0lNUExFX0NBTEwpDQorCSAgICBjdXJyX2Rpc2NyID0gbmV4dF9kaXNjcmltaW5hdG9y X2Zvcl9sb2N1cyAoY3Vycl9sb2N1cyk7DQorCX0NCiANCiAgICAgICBpZiAobG9jdXMgPT0gVU5L Tk9XTl9MT0NBVElPTikNCiAJY29udGludWU7DQotLSANCjIuMjUuMQ0KDQotLS0tLU9yaWdpbmFs IE1lc3NhZ2UtLS0tLQ0KRnJvbTogSmFzb24gTWVycmlsbCA8amFzb25AcmVkaGF0LmNvbT4gDQpT ZW50OiBUdWVzZGF5LCBPY3RvYmVyIDA0LCAyMDIyIDM6MjEgUE0NClRvOiBFdWdlbmUgUm96ZW5m ZWxkIDxFdWdlbmUuUm96ZW5mZWxkQG1pY3Jvc29mdC5jb20+OyBnY2MtcGF0Y2hlc0BnY2MuZ251 Lm9yZw0KU3ViamVjdDogW0VYVEVSTkFMXSBSZTogW1BBVENIXSBTZXQgZGlzY3JpbWluYXRvcnMg Zm9yIGNhbGwgc3RtdHMgb24gdGhlIHNhbWUgbGluZSB3aXRoaW4gdGhlIHNhbWUgYmFzaWMgYmxv Y2sNCg0KT24gMTAvMy8yMiAwMjowOCwgRXVnZW5lIFJvemVuZmVsZCB3cm90ZToNCj4gVGhpcyBj aGFuZ2UgaXMgYmFzZWQgb24gY29tbWl0IA0KPiAxZTZjNGE3YThmYjhlMjA1NDViYjlmOTAzMmQz ODU0ZjNmNzk0YzE4DQo+IGJ5IERlaGFvIENoZW4gaW4gdmVuZG9ycy9nb29nbGUvaGVhZHMvZ2Nj LTRfOC4NCj4gDQo+IFRlc3RlZCBvbiB4ODZfNjQtcGMtbGludXgtZ251Lg0KDQpCcmllZiByYXRp b25hbGUgZm9yIHRoZSBjaGFuZ2U/DQoNCj4gZ2NjL0NoYW5nZUxvZzoNCj4gICAgICAgICAgKiB0 cmVlLWNmZy5jYyAoYXNzaWduX2Rpc2NyaW1pbmF0b3JzKTogU2V0IGRpc2NyaW1pbmF0b3JzIGZv ciBjYWxsIHN0bXRzDQo+ICAgICAgICAgIG9uIHRoZSBzYW1lIGxpbmUgd2l0aGluIHRoZSBzYW1l IGJhc2ljIGJsb2NrLg0KPiAtLS0NCj4gICBnY2MvdHJlZS1jZmcuY2MgfCAzMSArKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrDQo+ICAgMSBmaWxlIGNoYW5nZWQsIDMxIGluc2VydGlvbnMo KykNCj4gDQo+IGRpZmYgLS1naXQgYS9nY2MvdHJlZS1jZmcuY2MgYi9nY2MvdHJlZS1jZmcuY2Mg aW5kZXggDQo+IGFkZTY2YzU0NDk5Li44ZTJhM2E1ZjZjNiAxMDA2NDQNCj4gLS0tIGEvZ2NjL3Ry ZWUtY2ZnLmNjDQo+ICsrKyBiL2djYy90cmVlLWNmZy5jYw0KPiBAQCAtMTIwMyw4ICsxMjAzLDM5 IEBAIGFzc2lnbl9kaXNjcmltaW5hdG9ycyAodm9pZCkNCj4gICAgICAgew0KPiAgICAgICAgIGVk Z2UgZTsNCj4gICAgICAgICBlZGdlX2l0ZXJhdG9yIGVpOw0KPiArICAgICAgZ2ltcGxlX3N0bXRf aXRlcmF0b3IgZ3NpOw0KPiAgICAgICAgIGdpbXBsZSAqbGFzdCA9IGxhc3Rfc3RtdCAoYmIpOw0K PiAgICAgICAgIGxvY2F0aW9uX3QgbG9jdXMgPSBsYXN0ID8gZ2ltcGxlX2xvY2F0aW9uIChsYXN0 KSA6IA0KPiBVTktOT1dOX0xPQ0FUSU9OOw0KPiArICAgICAgbG9jYXRpb25fdCBjdXJyX2xvY3Vz ID0gVU5LTk9XTl9MT0NBVElPTjsNCj4gKyAgICAgIGludCBjdXJyX2Rpc2NyID0gMDsNCj4gKw0K PiArICAgICAgLyogVHJhdmVyc2UgdGhlIGJhc2ljIGJsb2NrLCBpZiB0d28gZnVuY3Rpb24gY2Fs bHMgd2l0aGluIGEgYmFzaWMgYmxvY2sNCj4gKyAgICAgICBhcmUgbWFwcGVkIHRvIHRoZSBzYW1l IGxpbmUsIGFzc2lnbiBhIG5ldyBkaXNjcmltaW5hdG9yIGJlY2F1c2UgYSBjYWxsDQo+ICsgICAg ICAgc3RtdCBjb3VsZCBiZSBhIHNwbGl0IHBvaW50IG9mIGEgYmFzaWMgYmxvY2suICAqLw0KPiAr ICAgICAgZm9yIChnc2kgPSBnc2lfc3RhcnRfYmIgKGJiKTsgIWdzaV9lbmRfcCAoZ3NpKTsgZ3Np X25leHQgKCZnc2kpKQ0KPiArICAgICAgIHsNCj4gKyAgICAgICAgIGdpbXBsZSAqc3RtdCA9IGdz aV9zdG10IChnc2kpOw0KPiArICAgICAgICAgZXhwYW5kZWRfbG9jYXRpb24gY3Vycl9sb2N1c19l Ow0KPiArICAgICAgICAgaWYgKGN1cnJfbG9jdXMgPT0gVU5LTk9XTl9MT0NBVElPTikNCj4gKyAg ICAgICAgICAgew0KPiArICAgICAgICAgICAgIGN1cnJfbG9jdXMgPSBnaW1wbGVfbG9jYXRpb24g KHN0bXQpOw0KPiArICAgICAgICAgICAgIGN1cnJfbG9jdXNfZSA9IGV4cGFuZF9sb2NhdGlvbiAo Y3Vycl9sb2N1cyk7DQo+ICsgICAgICAgICAgIH0NCj4gKyAgICAgICAgIGVsc2UgaWYgKCFzYW1l X2xpbmVfcCAoY3Vycl9sb2N1cywgJmN1cnJfbG9jdXNfZSwgZ2ltcGxlX2xvY2F0aW9uIChzdG10 KSkpDQo+ICsgICAgICAgICAgIHsNCj4gKyAgICAgICAgICAgICBjdXJyX2xvY3VzID0gZ2ltcGxl X2xvY2F0aW9uIChzdG10KTsNCj4gKyAgICAgICAgICAgICBjdXJyX2xvY3VzX2UgPSBleHBhbmRf bG9jYXRpb24gKGN1cnJfbG9jdXMpOw0KPiArICAgICAgICAgICAgIGN1cnJfZGlzY3IgPSAwOw0K PiArICAgICAgICAgICB9DQo+ICsgICAgICAgICBlbHNlIGlmIChjdXJyX2Rpc2NyICE9IDApDQo+ ICsgICAgICAgICAgIHsNCj4gKyAgICAgICAgICAgICBnaW1wbGVfc2V0X2xvY2F0aW9uIChzdG10 LCBsb2NhdGlvbl93aXRoX2Rpc2NyaW1pbmF0b3IgKA0KPiArICAgICAgICAgICAgICAgICBnaW1w bGVfbG9jYXRpb24gKHN0bXQpLCBjdXJyX2Rpc2NyKSk7DQoNClRoaXMgaW5kZW50YXRpb24gaXMg d29ua3ksIHdpdGggYW4gb3BlbiBwYXJlbiBhdCB0aGUgZW5kIG9mIHRoZSBsaW5lOyBJJ2Qgc3Vn Z2VzdCByZWZvcm1hdHRpbmcgdG8NCg0KPiAgICAgICAgICAgICAgbG9jYXRpb25fdCBkbG9jID0g KGxvY2F0aW9uX3dpdGhfZGlzY3JpbWluYXRvciA+ICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgKGdpbXBsZV9sb2NhdGlvbiAoc3RtdCksIA0KY3Vycl9kaXNjcikpOz4gICAgICAgICAg ICAgIGdpbXBsZV9zZXRfbG9jYXRpb24gKHN0bXQsIGRsb2MpOw0KDQpKYXNvbg0KDQo=