From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR02-VE1-obe.outbound.protection.outlook.com (mail-eopbgr20052.outbound.protection.outlook.com [40.107.2.52]) by sourceware.org (Postfix) with ESMTPS id CA44C398B8B6 for ; Thu, 17 Sep 2020 16:10:27 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org CA44C398B8B6 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=arm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=Vaseeharan.Vinayagamoorthy@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=hs1sH7q42Kssa5gDPnpCseqBS9PRaRMrv/zMsorgqhw=; b=9bZqslyZA0wbaVX9kePZkS/lH+uIcQngGEjLSJ6v6XROhbWZ2wMD+YNdkHRW52TUfWfZ8OwI5WcS6Rqi7RC6QjWp2mmlu+XXYUbzNKudIt/sM8vGv7NgDthA09GAQ+jB6RSCrdZO2G+2elkRgCDp2zSHVioD+wE0DhHFVbXLY4U= Received: from DB6PR07CA0102.eurprd07.prod.outlook.com (2603:10a6:6:2c::16) by VE1PR08MB5663.eurprd08.prod.outlook.com (2603:10a6:800:1a4::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3391.14; Thu, 17 Sep 2020 16:10:25 +0000 Received: from DB5EUR03FT004.eop-EUR03.prod.protection.outlook.com (2603:10a6:6:2c:cafe::6) by DB6PR07CA0102.outlook.office365.com (2603:10a6:6:2c::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3412.4 via Frontend Transport; Thu, 17 Sep 2020 16:10:25 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; sourceware.org; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; sourceware.org; dmarc=bestguesspass 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 DB5EUR03FT004.mail.protection.outlook.com (10.152.20.128) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3391.15 via Frontend Transport; Thu, 17 Sep 2020 16:10:25 +0000 Received: ("Tessian outbound 7161e0c2a082:v64"); Thu, 17 Sep 2020 16:10:25 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 381f7ed168f79733 X-CR-MTA-TID: 64aa7808 Received: from b654cfc579f7.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id FE0E514E-AA9C-4101-AEA9-A866684460E4.1; Thu, 17 Sep 2020 16:10:19 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id b654cfc579f7.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 17 Sep 2020 16:10:19 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=eqLaWi7C1HFx9Lva4u4eUKYXlYwBuZ4Nf3shoLDsYMGsooBtbKZhcZhAZdSoVb8WRME4vOeGLOg5U+ajuQWlm72c3Si2kcKjhmaxLEOOC8GisKPfzjNAQ5lh9Et9KFaynRkKQLFc16xV9kL6FDCCqgLjPSulIy/SxRV5jaG+J4LS2ZTQagvvb0e1SDFcnTp06+dd0MIgTBiYjg+RIFbts/qdbNHTH2RbcwjJhoa0gLtjHohM4FGgO2NN3EQEd/mI8sfDTUSqMFclU+RbOjclDakf3+eE1ZOsOBQOzvOqvTYquuEqJ8MlGqbbnzPqKXI3AQpkqEQ0z2qs5AQc4yMWGw== 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=hs1sH7q42Kssa5gDPnpCseqBS9PRaRMrv/zMsorgqhw=; b=Jz4m4d3cXM/ROJlZt59jIp3ZJSYPBoSzNJ3kMrfW2X2KIA4eGYgFlmip6/Q6fZ80qZeTVLO9Ua6rlta6kmmpHpkWwnhaGIabOOkoPeC0fW7lZAZdimf2brI+C3YomkCtYkTV01GHNOcV/BMT6uYK0510UjHY1Xe31Mp4sE45RPKOYz9ec2kuyqs4R3OPx3QWD7KWHMYRZ/9WKOBLOs18BCgdFczuXIZCmOHuOqInmofbfxZlNOmDyqf8d3HgnfAnLrngtD6NM2BFM1I5kKoV5UrBKMduvQeHsQP4OIXuOzB1yFU//+FQCEB3agaX02JivGbUfb6LhQAX/FO9YC5FbA== 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=hs1sH7q42Kssa5gDPnpCseqBS9PRaRMrv/zMsorgqhw=; b=9bZqslyZA0wbaVX9kePZkS/lH+uIcQngGEjLSJ6v6XROhbWZ2wMD+YNdkHRW52TUfWfZ8OwI5WcS6Rqi7RC6QjWp2mmlu+XXYUbzNKudIt/sM8vGv7NgDthA09GAQ+jB6RSCrdZO2G+2elkRgCDp2zSHVioD+wE0DhHFVbXLY4U= Received: from VI1PR08MB3615.eurprd08.prod.outlook.com (2603:10a6:803:79::25) by VI1PR0801MB2125.eurprd08.prod.outlook.com (2603:10a6:800:5b::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3391.15; Thu, 17 Sep 2020 16:10:17 +0000 Received: from VI1PR08MB3615.eurprd08.prod.outlook.com ([fe80::84ae:5a76:383f:eb9f]) by VI1PR08MB3615.eurprd08.prod.outlook.com ([fe80::84ae:5a76:383f:eb9f%3]) with mapi id 15.20.3391.015; Thu, 17 Sep 2020 16:10:17 +0000 From: Vaseeharan Vinayagamoorthy To: Pedro Alves , "gdb-patches@sourceware.org" , Luis Machado Subject: Re: [pushed v2 3/4] Rewrite valid-expr.h's internals in terms of the detection idiom (C++17/N4502) Thread-Topic: [pushed v2 3/4] Rewrite valid-expr.h's internals in terms of the detection idiom (C++17/N4502) Thread-Index: AQHWit5zuXykT4ucQUOywT/5hSl4valsvcyAgABXSgA= Date: Thu, 17 Sep 2020 16:10:17 +0000 Message-ID: <6E9EDA4F-A4F7-4A0D-8E06-3CBA7752F695@arm.com> References: <20200914213112.19593-1-pedro@palves.net> <20200914213112.19593-4-pedro@palves.net> <63D23DB1-0CE4-44B5-A074-F64C2DE53109@arm.com> In-Reply-To: <63D23DB1-0CE4-44B5-A074-F64C2DE53109@arm.com> Accept-Language: en-GB, en-US Content-Language: en-GB X-MS-Has-Attach: X-MS-TNEF-Correlator: user-agent: Microsoft-MacOutlook/16.41.20091302 Authentication-Results-Original: palves.net; dkim=none (message not signed) header.d=none;palves.net; dmarc=none action=none header.from=arm.com; x-originating-ip: [217.140.99.251] x-ms-publictraffictype: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 5b076bb1-f7e6-4a26-2f50-08d85b243004 x-ms-traffictypediagnostic: VI1PR0801MB2125:|VE1PR08MB5663: X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true nodisclaimer: true x-ms-oob-tlc-oobclassifiers: OLM:10000;OLM:10000; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: DEO72b1ctcM9LT2b/+9S3DbLKTXt+BhyAFdOtRzxSxX6i9V6GRhqV93lLzzjN2YykNx/XhdERFY2/LIme0HBQiYMGIXZHLuOKSRkl7YkP5PO410e15GWTbCYyO8ikEBqZBAxe//iunL35INzH7DbJ1SgjQqtOtcwJCAZEUpWMWwjTvypgjBaRUtW27y1iVHW/1lb8HZKt+TSYWysVbxvRfDwUdJMwCa9n3yycikIml28ZIe6lFopoeAV7JN2Q+7o69fLQjawFenGCjl2uBBsBvVg2kr/BE+y3ekJqCgNOt1DgbkOqZpnpbEbQOdU37Bim/AeBm696SB63Jo8gXpcrXytLwNQ2+v795SMeG2pwaAO7jUjkn3u2984f/UfSBItpri7dyQaMNv+/o6Gj5X6rA== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:VI1PR08MB3615.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(39860400002)(136003)(396003)(346002)(376002)(366004)(53546011)(6506007)(91956017)(76116006)(8936002)(186003)(83380400001)(5660300002)(8676002)(6512007)(33656002)(66446008)(66946007)(26005)(36756003)(64756008)(66556008)(66476007)(2906002)(6486002)(71200400001)(2616005)(966005)(86362001)(478600001)(110136005)(316002); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: w1Dy4f0jvrYybiKWz2UtMlxVWnSGNlvRnhMcNp0sKbJ62SYgbtNQb6idAYUiZ8TmAksLoBuTX8b124C4Y7IvNgo2LyxWgBfFxZidt+EyXELguJqUWYa3BoGrrmSkxXwhTbypvJQihOdgoXYyeQfGEzwCxf0RFxfQQQiUK579fQSpnp7DI4pTtaDMsYgyzfU5WXhED7Yjo62C0r4B6lE+i5Jajdu6dTAeVopbZK3UhJYmNZe/fRiJ6qu5eNWdfNrWCY/xGspv8J96bx+tUdXgdDuxS0Gau5MJK2B6qhB9Zx9o0f9BAr3lZ+bAv9DOrD0jYgk8eLj4K7kzXkgmJko9sIUyf5RUriaJWlBA7fmqw9kdsNOxvZsYILqAtunGrNz+1ELqikRJm1qr8Zdu/jyvKfxJ9Fic3Qoxnz+SfZu9Q0OnN0Gnigy2AEDFmjrZlkkzq9il+WnYCZgayo0yebf1dmxtOIwUkbNxi2xdpSdsAqWOeBP5seFoMsvV1e8FfWEMH4VSWuAc8dAeL0cNS+/qXfvLOcSW/ZwQaHgcFhO8ODBH728nhps9qq0Sie59IFaRBhBQPVz28uPiNJ3vuOWxUO8pzZaeoBjPzyYj+vgzllkZLbP6TZX1OpN1BB23kr56eTSibbeI9TblJAMa4unBig== x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="utf-8" Content-ID: <3040CCCD58AA0B49A945FA150AFA0B02@eurprd08.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0801MB2125 Original-Authentication-Results: palves.net; dkim=none (message not signed) header.d=none;palves.net; dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DB5EUR03FT004.eop-EUR03.prod.protection.outlook.com X-MS-Office365-Filtering-Correlation-Id-Prvs: af640ea3-3bbf-4bff-3d71-08d85b242b40 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: JFr0/Son4iuQoWSzRjA2zb56UQAEw1HluDqIRzVxN7dq33cOi7vBr2qvnYwDnQTqWek3GZulH3fsNSGPLs0Pkhtf7CEisslTUAetlacHxDzeJjDgZqMP8+DMD4zFEli1q/rrG7QqZvX0oAkdZN4XYlICmba1J/XWojSpt0He6P8X5JmzZcfQ96YGHGKzt0n26M20Ar27htRbVSkHLFQujqktROAn2khM2m05c4Oi0o8F/Nx96CNELCQ524Mcx8QVyPXdulS2heHFgqaHRr3yx5Y0nvC5dbGjgHtaSUDYUJC0POuh4oSYbyKkxj4xssVDcpYb60tzd9GHB2AQPMTW+w6udTju7ffn8i3qBVlUwt0xnaeOIQR4M1t3ycD5tzDZUIm+sANCItiToDV/AMUcATy20b+3y1VjwHCojrIiuuRJpeOTl58BvetiDzJyTapK79ScH0E0tjQvZ6LLoN4vQ528m7dZNu0XsMzhb06udJcOyyu17RjV4AtPs4AkGBL+P6xKrxBK+NkAgZXKiaZAWIiTasg3c/gOvQql4JTseF0= 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)(396003)(376002)(39850400004)(136003)(346002)(46966005)(70586007)(70206006)(82310400003)(110136005)(6506007)(5660300002)(336012)(2906002)(6486002)(83380400001)(8936002)(2616005)(356005)(186003)(8676002)(81166007)(966005)(316002)(82740400003)(47076004)(478600001)(26005)(36756003)(6512007)(86362001)(33656002)(518174003); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Sep 2020 16:10:25.5366 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 5b076bb1-f7e6-4a26-2f50-08d85b243004 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: DB5EUR03FT004.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB5663 X-Spam-Status: No, score=-14.6 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, GIT_PATCH_0, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H2, 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: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 17 Sep 2020 16:10:32 -0000 SSBvYnNlcnZlIHRoaXMgZXJyb3Igd2hlbiBidWlsZGluZyBvbiBhbiBhYXJjaDY0LW5vbmUtbGlu dXgtZ251IG1hY2hpbmUsIHJ1bm5pbmcgdWJ1bnR1IDE0LjA0LjUuDQpUaGUgY29tcGlsZXIgaXQg aXMgdXNpbmcgaXMgYWFyY2g2NC1ub25lLWxpbnV4LWdudS1nY2MgdmVyc2lvbiA2LjQuMS4NCg0K DQrvu79PbiAxNy8wOS8yMDIwLCAxMTo1OCwgIkdkYi1wYXRjaGVzIG9uIGJlaGFsZiBvZiBWYXNl ZWhhcmFuIFZpbmF5YWdhbW9vcnRoeSIgPGdkYi1wYXRjaGVzLWJvdW5jZXNAc291cmNld2FyZS5v cmcgb24gYmVoYWxmIG9mIFZhc2VlaGFyYW4uVmluYXlhZ2Ftb29ydGh5QGFybS5jb20+IHdyb3Rl Og0KDQogICAgUmVsZXZhbnQgdG8gdGhpcyBwYXRjaCwgSSBhbSBzZWVpbmcgZXJyb3I6IHR5cGUv dmFsdWUgbWlzbWF0Y2ggZnJvbSB2YWxpZC1leHByLmg6NjU6MjAgd2hlbiBidWlsZGluZyBHREIg d2l0aDoNCiAgICBCdWlsZDogYWFyY2g2NC1ub25lLWxpbnV4LWdudQ0KICAgIEhvc3Q6IGFhcmNo NjQtbm9uZS1saW51eC1nbnUNCiAgICBUYXJnZXQ6IGFhcmNoNjQtbm9uZS1saW51eC1nbnUNCg0K DQogICAgSW4gZmlsZSBpbmNsdWRlZCBmcm9tIGJpbnV0aWxzLWdkYi0tZ2RiL2dkYi91bml0dGVz dHMvb2Zmc2V0LXR5cGUtc2VsZnRlc3RzLmM6MjQ6MDoNCiAgICAvYmludXRpbHMtZ2RiLS1nZGIv Z2RiL3VuaXR0ZXN0cy9vZmZzZXQtdHlwZS1zZWxmdGVzdHMuYzogSW4gc3Vic3RpdHV0aW9uIG9m ICd0ZW1wbGF0ZTxjbGFzcyBFeHBlY3RlZCwgdGVtcGxhdGU8Y2xhc3MgLi4uPiBjbGFzcyBPcCwg Y2xhc3MgLi4uIEFyZ3M+IHVzaW5nIGlzX2RldGVjdGVkX2V4YWN0ID0gc3RkOjppc19zYW1lPEV4 cGVjdGVkLCB0eXBlbmFtZSBnZGI6OmRldGVjdGlvbl9kZXRhaWw6OmRldGVjdG9yPGdkYjo6bm9u ZXN1Y2gsIHZvaWQsIE9wLCBBcmdzIC4uLj46OnR5cGU+IFt3aXRoIEV4cGVjdGVkID0gc2VsZnRl c3RzOjpvZmZzZXRfdHlwZTo6b2ZmX0EmOyBPcCA9IHNlbGZ0ZXN0czo6b2Zmc2V0X3R5cGU6OmNo ZWNrX3ZhbGlkX2V4cHI3NTo6YXJjaGV0eXBlOyBBcmdzID0ge3NlbGZ0ZXN0czo6b2Zmc2V0X3R5 cGU6Om9mZl9BLCBzZWxmdGVzdHM6Om9mZnNldF90eXBlOjpvZmZfQn1dJzoNCg0KICAgIC9iaW51 dGlscy1nZGItLWdkYi9nZGIvdW5pdHRlc3RzL29mZnNldC10eXBlLXNlbGZ0ZXN0cy5jOjc1OjE6 ICAgcmVxdWlyZWQgZnJvbSBoZXJlDQogICAgL2JpbnV0aWxzLWdkYi0tZ2RiL2dkYi8uLi9nZGJz dXBwb3J0L3ZhbGlkLWV4cHIuaDo2NToyMDogZXJyb3I6IHR5cGUvdmFsdWUgbWlzbWF0Y2ggYXQg YXJndW1lbnQgMiBpbiB0ZW1wbGF0ZSBwYXJhbWV0ZXIgbGlzdCBmb3IgJ3RlbXBsYXRlPGNsYXNz IEV4cGVjdGVkLCB0ZW1wbGF0ZTxjbGFzcyAuLi4+IGNsYXNzIE9wLCBjbGFzcyAuLi4gQXJncz4g dXNpbmcgaXNfZGV0ZWN0ZWRfZXhhY3QgPSBzdGQ6OmlzX3NhbWU8RXhwZWN0ZWQsIHR5cGVuYW1l IGdkYjo6ZGV0ZWN0aW9uX2RldGFpbDo6ZGV0ZWN0b3I8Z2RiOjpub25lc3VjaCwgdm9pZCwgT3As IEFyZ3MgLi4uPjo6dHlwZT4nDQogICAgICAgIGFyY2hldHlwZSwgVFlQRVM+Ojp2YWx1ZSA9PSBW QUxJRCwgICBcDQogICAgICAgICAgICAgICAgICAgICAgICBeDQogICAgL2JpbnV0aWxzLWdkYi0t Z2RiL2dkYi8uLi9nZGJzdXBwb3J0L3ZhbGlkLWV4cHIuaDo3OTozOiBub3RlOiBpbiBleHBhbnNp b24gb2YgbWFjcm8gJ0NIRUNLX1ZBTElEX0VYUFJfSU5UJw0KICAgICAgIENIRUNLX1ZBTElEX0VY UFJfSU5UIChFU0NfUEFSRU5TKHR5cGVuYW1lIFQxLCB0eXBlbmFtZSBUMiksICBcDQogICAgICAg Xn5+fn5+fn5+fn5+fn5+fn5+fn4NCiAgICAvYmludXRpbHMtZ2RiLS1nZGIvZ2RiL3VuaXR0ZXN0 cy9vZmZzZXQtdHlwZS1zZWxmdGVzdHMuYzo0MjozOiBub3RlOiBpbiBleHBhbnNpb24gb2YgbWFj cm8gJ0NIRUNLX1ZBTElEX0VYUFJfMicNCiAgICAgICBDSEVDS19WQUxJRF9FWFBSXzIgKG9mZl9B LCBvZmZfQiwgVkFMSUQsIEVYUFJfVFlQRSwgRVhQUikNCiAgICAgICBefn5+fn5+fn5+fn5+fn5+ fn4NCg0KDQoNCiAgICBSZWdhcmRzLA0KICAgIFZhc2VlDQoNCg0KDQoNCiAgICBPbiAxNC8wOS8y MDIwLCAyMjozMSwgIkdkYi1wYXRjaGVzIG9uIGJlaGFsZiBvZiBQZWRybyBBbHZlcyIgPGdkYi1w YXRjaGVzLWJvdW5jZXNAc291cmNld2FyZS5vcmcgb24gYmVoYWxmIG9mIHBlZHJvQHBhbHZlcy5u ZXQ+IHdyb3RlOg0KDQogICAgICAgIEFuIGVhcmxpZXIgYXR0ZW1wdCBhdCBkb2luZyB0aGlzIGhh ZCBmYWlsZWQgKHdvdWxkbid0IHdvcmsgaW4gR0NDcw0KICAgICAgICBhcm91bmQgNC44LCBJSVJD KSwgYnV0IG5vdyB0aGF0IEkgdHJ5IGFnYWluLCBpdCB3b3Jrcy4gIEkgc3VzcGVjdCB0aGF0DQog ICAgICAgIG15IHByZXZpb3VzIGF0dGVtcHQgZGlkIG5vdCB1c2UgdGhlIHByZSBDKysxNC1zYWZl IHZvaWRfdCAoaW4NCiAgICAgICAgdHJhaXRzLmgpLg0KDQogICAgICAgIEkgd2FudCB0byBzd2l0 Y2ggdG8gdGhpcyBtb2RlbCBiZWNhdXNlOg0KDQogICAgICAgICAtIEl0J3MgdGhlIHN0YW5kYXJk IGRldGVjdGlvbiBpZGlvbSB0aGF0IGZvbGtzIHdpbGwgbGVhcm4gc3RhcnRpbmcNCiAgICAgICAg ICAgd2l0aCBDKysxNy4NCg0KICAgICAgICAgLSBJbiB0aGUgZW51bV9mbGFncyB1bml0IHRlc3Rz LCBJIGhhdmUgYSBzdGF0aWNfYXNzZXJ0IHRoYXQgdHJpZ2dlcnMNCiAgICAgICAgICAgYSB3YXJu aW5nIChyZXN1bHRpbmcgaW4gYnVpbGQgZXJyb3IpLCB3aGljaCBHQ0MgZG9lcyBub3Qgc3VwcHJl c3MNCiAgICAgICAgICAgYmVjYXVzZSB0aGUgd2FybmluZyBpcyBub3QgYmVpbmcgdHJpZ2dlcmVk IGluIHRoZSBTRklOQUUgY29udGV4dC4NCiAgICAgICAgICAgU3dpdGNoaW5nIHRvIHRoZSBkZXRl Y3Rpb24gaWRpb20gZml4ZXMgdGhhdC4gIEFsdGVybmF0aXZlbHksDQogICAgICAgICAgIHN3aXRj aGluZyB0byB0aGUgQysrMDMtc3R5bGUgZXhwcmVzc2lvbi12YWxpZGl0eSBjaGVja2luZyB3aXRo IGENCiAgICAgICAgICAgdmFyYXJncyBvdmVybG9hZCB3b3VsZCBhbGxvdyBhZGRyZXNzaW5nIHRo YXQsIGJ1dCBJIHRoaW5rIHRoYXQNCiAgICAgICAgICAgd291bGQgYmUgZ29pbmcgYmFja3dhcmRz IGlkaW9tYXRpY2FsbHkgc3BlYWtpbmcuDQoNCiAgICAgICAgIC0gV2hpbGUgdGhpcyBwYXRjaCBz aG93cyBhIG5ldCBpbmNyZWFzZSBvZiBsaW5lcyBvZiBjb2RlLCB0aGUgbWFnaWMNCiAgICAgICAg ICAgYmVpbmcgYWRkZWQgdG8gdHJhaXRzLmggY2FuIGJlIHJlbW92ZWQgaW4gYSBmZXcgeWVhcnMg d2hlbiB3ZSBzdGFydA0KICAgICAgICAgICByZXF1aXJpbmcgQysrMTcuDQoNCiAgICAgICAgZ2Ri c3VwcG9ydC9DaGFuZ2VMb2c6DQoNCiAgICAgICAgCSogdHJhaXRzLmggKHN0cnVjdCBub25lc3Vj aCwgc3RydWN0IGRldGVjdG9yLCBkZXRlY3RlZF9vcikNCiAgICAgICAgCShkZXRlY3RlZF9vcl90 LCBpc19kZXRlY3RlZCwgZGV0ZWN0ZWRfdCwgZGV0ZWN0ZWRfb3IpDQogICAgICAgIAkoZGV0ZWN0 ZWRfb3JfdCwgaXNfZGV0ZWN0ZWRfZXhhY3QsIGlzX2RldGVjdGVkX2NvbnZlcnRpYmxlKTogTmV3 Lg0KICAgICAgICAJKiB2YWxpZC1leHByLmggKENIRUNLX1ZBTElEX0VYUFJfSU5UKTogVXNlIGdk Yjo6aXNfZGV0ZWN0ZWRfZXhhY3QuDQogICAgICAgIC0tLQ0KICAgICAgICAgZ2Ric3VwcG9ydC9D aGFuZ2VMb2cgICAgfCAgNyArKysrKysNCiAgICAgICAgIGdkYnN1cHBvcnQvdHJhaXRzLmggICAg IHwgNjcgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKw0K ICAgICAgICAgZ2Ric3VwcG9ydC92YWxpZC1leHByLmggfCAyMCArKystLS0tLS0tLS0tLS0NCiAg ICAgICAgIDMgZmlsZXMgY2hhbmdlZCwgNzcgaW5zZXJ0aW9ucygrKSwgMTcgZGVsZXRpb25zKC0p DQoNCiAgICAgICAgZGlmZiAtLWdpdCBhL2dkYnN1cHBvcnQvQ2hhbmdlTG9nIGIvZ2Ric3VwcG9y dC9DaGFuZ2VMb2cNCiAgICAgICAgaW5kZXggNmNkYTYwNTBmOS4uNDg1OGNjNmI1NiAxMDA2NDQN CiAgICAgICAgLS0tIGEvZ2Ric3VwcG9ydC9DaGFuZ2VMb2cNCiAgICAgICAgKysrIGIvZ2Ric3Vw cG9ydC9DaGFuZ2VMb2cNCiAgICAgICAgQEAgLTEsMyArMSwxMCBAQA0KICAgICAgICArMjAyMC0w OS0xNCAgUGVkcm8gQWx2ZXMgIDxwZWRyb0BwYWx2ZXMubmV0Pg0KICAgICAgICArDQogICAgICAg ICsJKiB0cmFpdHMuaCAoc3RydWN0IG5vbmVzdWNoLCBzdHJ1Y3QgZGV0ZWN0b3IsIGRldGVjdGVk X29yKQ0KICAgICAgICArCShkZXRlY3RlZF9vcl90LCBpc19kZXRlY3RlZCwgZGV0ZWN0ZWRfdCwg ZGV0ZWN0ZWRfb3IpDQogICAgICAgICsJKGRldGVjdGVkX29yX3QsIGlzX2RldGVjdGVkX2V4YWN0 LCBpc19kZXRlY3RlZF9jb252ZXJ0aWJsZSk6IE5ldy4NCiAgICAgICAgKwkqIHZhbGlkLWV4cHIu aCAoQ0hFQ0tfVkFMSURfRVhQUl9JTlQpOiBVc2UgZ2RiOjppc19kZXRlY3RlZF9leGFjdC4NCiAg ICAgICAgKw0KICAgICAgICAgMjAyMC0wOS0xMCAgS2FtaWwgUnl0YXJvd3NraSAgPG41NEBnbXgu Y29tPg0KDQogICAgICAgICAJKiBlaW50ci5oOiBOZXcgZmlsZS4NCiAgICAgICAgZGlmZiAtLWdp dCBhL2dkYnN1cHBvcnQvdHJhaXRzLmggYi9nZGJzdXBwb3J0L3RyYWl0cy5oDQogICAgICAgIGlu ZGV4IDJhNmYwMDY1NGMuLjkzYjYwOWFjMTAgMTAwNjQ0DQogICAgICAgIC0tLSBhL2dkYnN1cHBv cnQvdHJhaXRzLmgNCiAgICAgICAgKysrIGIvZ2Ric3VwcG9ydC90cmFpdHMuaA0KICAgICAgICBA QCAtNTIsNiArNTIsNzMgQEAgc3RydWN0IG1ha2Vfdm9pZCB7IHR5cGVkZWYgdm9pZCB0eXBlOyB9 Ow0KICAgICAgICAgdGVtcGxhdGU8dHlwZW5hbWUuLi4gVHM+DQogICAgICAgICB1c2luZyB2b2lk X3QgPSB0eXBlbmFtZSBtYWtlX3ZvaWQ8VHMuLi4+Ojp0eXBlOw0KDQogICAgICAgICsvKiBJbXBs ZW1lbnRhdGlvbiBvZiB0aGUgZGV0ZWN0aW9uIGlkaW9tOg0KICAgICAgICArDQogICAgICAgICsg ICAtIGh0dHA6Ly93d3cub3Blbi1zdGQub3JnL2p0YzEvc2MyMi93ZzIxL2RvY3MvcGFwZXJzLzIw MTUvbjQ1MDIucGRmDQogICAgICAgICsgICAtIGh0dHA6Ly9lbi5jcHByZWZlcmVuY2UuY29tL3cv Y3BwL2V4cGVyaW1lbnRhbC9pc19kZXRlY3RlZA0KICAgICAgICArDQogICAgICAgICsqLw0KICAg ICAgICArDQogICAgICAgICtzdHJ1Y3Qgbm9uZXN1Y2gNCiAgICAgICAgK3sNCiAgICAgICAgKyAg bm9uZXN1Y2ggKCkgPSBkZWxldGU7DQogICAgICAgICsgIH5ub25lc3VjaCAoKSA9IGRlbGV0ZTsN CiAgICAgICAgKyAgbm9uZXN1Y2ggKGNvbnN0IG5vbmVzdWNoICYpID0gZGVsZXRlOw0KICAgICAg ICArICB2b2lkIG9wZXJhdG9yPSAoY29uc3Qgbm9uZXN1Y2ggJikgPSBkZWxldGU7DQogICAgICAg ICt9Ow0KICAgICAgICArDQogICAgICAgICtuYW1lc3BhY2UgZGV0ZWN0aW9uX2RldGFpbCB7DQog ICAgICAgICsvKiBJbXBsZW1lbnRhdGlvbiBvZiB0aGUgZGV0ZWN0aW9uIGlkaW9tIChuZWdhdGl2 ZSBjYXNlKS4gICovDQogICAgICAgICt0ZW1wbGF0ZTx0eXBlbmFtZSBEZWZhdWx0LCB0eXBlbmFt ZSBBbHdheXNWb2lkLA0KICAgICAgICArCSB0ZW1wbGF0ZTx0eXBlbmFtZS4uLj4gY2xhc3MgT3As IHR5cGVuYW1lLi4uIEFyZ3M+DQogICAgICAgICtzdHJ1Y3QgZGV0ZWN0b3INCiAgICAgICAgK3sN CiAgICAgICAgKyAgdXNpbmcgdmFsdWVfdCA9IHN0ZDo6ZmFsc2VfdHlwZTsNCiAgICAgICAgKyAg dXNpbmcgdHlwZSA9IERlZmF1bHQ7DQogICAgICAgICt9Ow0KICAgICAgICArDQogICAgICAgICsv KiBJbXBsZW1lbnRhdGlvbiBvZiB0aGUgZGV0ZWN0aW9uIGlkaW9tIChwb3NpdGl2ZSBjYXNlKS4g ICovDQogICAgICAgICt0ZW1wbGF0ZTx0eXBlbmFtZSBEZWZhdWx0LCB0ZW1wbGF0ZTx0eXBlbmFt ZS4uLj4gY2xhc3MgT3AsIHR5cGVuYW1lLi4uIEFyZ3M+DQogICAgICAgICtzdHJ1Y3QgZGV0ZWN0 b3I8RGVmYXVsdCwgdm9pZF90PE9wPEFyZ3MuLi4+PiwgT3AsIEFyZ3MuLi4+DQogICAgICAgICt7 DQogICAgICAgICsgIHVzaW5nIHZhbHVlX3QgPSBzdGQ6OnRydWVfdHlwZTsNCiAgICAgICAgKyAg dXNpbmcgdHlwZSA9IE9wPEFyZ3MuLi4+Ow0KICAgICAgICArfTsNCiAgICAgICAgKw0KICAgICAg ICArLyogRGV0ZWN0IHdoZXRoZXIgT3A8QXJncy4uLj4gaXMgYSB2YWxpZCB0eXBlLCB1c2UgRGVm YXVsdCBpZiBub3QuICAqLw0KICAgICAgICArdGVtcGxhdGU8dHlwZW5hbWUgRGVmYXVsdCwgdGVt cGxhdGU8dHlwZW5hbWUuLi4+IGNsYXNzIE9wLA0KICAgICAgICArCSB0eXBlbmFtZS4uLiBBcmdz Pg0KICAgICAgICArdXNpbmcgZGV0ZWN0ZWRfb3IgPSBkZXRlY3RvcjxEZWZhdWx0LCB2b2lkLCBP cCwgQXJncy4uLj47DQogICAgICAgICsNCiAgICAgICAgKy8qIE9wPEFyZ3MuLi4+IGlmIHRoYXQg aXMgYSB2YWxpZCB0eXBlLCBvdGhlcndpc2UgRGVmYXVsdC4gICovDQogICAgICAgICt0ZW1wbGF0 ZTx0eXBlbmFtZSBEZWZhdWx0LCB0ZW1wbGF0ZTx0eXBlbmFtZS4uLj4gY2xhc3MgT3AsDQogICAg ICAgICsJIHR5cGVuYW1lLi4uIEFyZ3M+DQogICAgICAgICt1c2luZyBkZXRlY3RlZF9vcl90DQog ICAgICAgICsgID0gdHlwZW5hbWUgZGV0ZWN0ZWRfb3I8RGVmYXVsdCwgT3AsIEFyZ3MuLi4+Ojp0 eXBlOw0KICAgICAgICArDQogICAgICAgICt9IC8qIGRldGVjdGlvbl9kZXRhaWwgKi8NCiAgICAg ICAgKw0KICAgICAgICArdGVtcGxhdGU8dGVtcGxhdGU8dHlwZW5hbWUuLi4+IGNsYXNzIE9wLCB0 eXBlbmFtZS4uLiBBcmdzPg0KICAgICAgICArdXNpbmcgaXNfZGV0ZWN0ZWQNCiAgICAgICAgKyAg PSB0eXBlbmFtZSBkZXRlY3Rpb25fZGV0YWlsOjpkZXRlY3Rvcjxub25lc3VjaCwgdm9pZCwgT3As IEFyZ3MuLi4+Ojp2YWx1ZV90Ow0KICAgICAgICArDQogICAgICAgICt0ZW1wbGF0ZTx0ZW1wbGF0 ZTx0eXBlbmFtZS4uLj4gY2xhc3MgT3AsIHR5cGVuYW1lLi4uIEFyZ3M+DQogICAgICAgICt1c2lu ZyBkZXRlY3RlZF90DQogICAgICAgICsgID0gdHlwZW5hbWUgZGV0ZWN0aW9uX2RldGFpbDo6ZGV0 ZWN0b3I8bm9uZXN1Y2gsIHZvaWQsIE9wLCBBcmdzLi4uPjo6dHlwZTsNCiAgICAgICAgKw0KICAg ICAgICArdGVtcGxhdGU8dHlwZW5hbWUgRGVmYXVsdCwgdGVtcGxhdGU8dHlwZW5hbWUuLi4+IGNs YXNzIE9wLCB0eXBlbmFtZS4uLiBBcmdzPg0KICAgICAgICArdXNpbmcgZGV0ZWN0ZWRfb3IgPSBk ZXRlY3Rpb25fZGV0YWlsOjpkZXRlY3RlZF9vcjxEZWZhdWx0LCBPcCwgQXJncy4uLj47DQogICAg ICAgICsNCiAgICAgICAgK3RlbXBsYXRlPHR5cGVuYW1lIERlZmF1bHQsIHRlbXBsYXRlPHR5cGVu YW1lLi4uPiBjbGFzcyBPcCwgdHlwZW5hbWUuLi4gQXJncz4NCiAgICAgICAgK3VzaW5nIGRldGVj dGVkX29yX3QgPSB0eXBlbmFtZSBkZXRlY3RlZF9vcjxEZWZhdWx0LCBPcCwgQXJncy4uLj46OnR5 cGU7DQogICAgICAgICsNCiAgICAgICAgK3RlbXBsYXRlPHR5cGVuYW1lIEV4cGVjdGVkLCB0ZW1w bGF0ZTx0eXBlbmFtZS4uLj4gY2xhc3MgT3AsIHR5cGVuYW1lLi4uIEFyZ3M+DQogICAgICAgICt1 c2luZyBpc19kZXRlY3RlZF9leGFjdCA9IHN0ZDo6aXNfc2FtZTxFeHBlY3RlZCwgZGV0ZWN0ZWRf dDxPcCwgQXJncy4uLj4+Ow0KICAgICAgICArDQogICAgICAgICt0ZW1wbGF0ZTx0eXBlbmFtZSBU bywgdGVtcGxhdGU8dHlwZW5hbWUuLi4+IGNsYXNzIE9wLCB0eXBlbmFtZS4uLiBBcmdzPg0KICAg ICAgICArdXNpbmcgaXNfZGV0ZWN0ZWRfY29udmVydGlibGUNCiAgICAgICAgKyAgPSBzdGQ6Omlz X2NvbnZlcnRpYmxlPGRldGVjdGVkX3Q8T3AsIEFyZ3MuLi4+LCBUbz47DQogICAgICAgICsNCiAg ICAgICAgIC8qIEEgZmV3IHRyYWl0IGhlbHBlcnMsIG1haW5seSBzdG9sZW4gZnJvbSBsaWJzdGRj KysuICBVcHBlcmNhc2UNCiAgICAgICAgICAgIGJlY2F1c2UgImFuZC9vciIsIGV0Yy4gYXJlIHJl c2VydmVkIGtleXdvcmRzLiAgKi8NCg0KICAgICAgICBkaWZmIC0tZ2l0IGEvZ2Ric3VwcG9ydC92 YWxpZC1leHByLmggYi9nZGJzdXBwb3J0L3ZhbGlkLWV4cHIuaA0KICAgICAgICBpbmRleCBiMWM4 NDQ2ODE0Li5hMjJmYTYxMTM0IDEwMDY0NA0KICAgICAgICAtLS0gYS9nZGJzdXBwb3J0L3ZhbGlk LWV4cHIuaA0KICAgICAgICArKysgYi9nZGJzdXBwb3J0L3ZhbGlkLWV4cHIuaA0KICAgICAgICBA QCAtNTgsMjYgKzU4LDEyIEBADQogICAgICAgICAjZGVmaW5lIENIRUNLX1ZBTElEX0VYUFJfSU5U KFRZUEVOQU1FUywgVFlQRVMsIFZBTElELCBFWFBSX1RZUEUsIEVYUFIpCVwNCiAgICAgICAgICAg bmFtZXNwYWNlIENPTkNBVCAoY2hlY2tfdmFsaWRfZXhwciwgX19MSU5FX18pIHsJCQlcDQogICAg ICAgICAJCQkJCQkJCQlcDQogICAgICAgIC0gIHRlbXBsYXRlPHR5cGVuYW1lLCB0eXBlbmFtZSwg dHlwZW5hbWUgPSB2b2lkPgkJCQlcDQogICAgICAgIC0gIHN0cnVjdCBpc192YWxpZF9leHByZXNz aW9uCQkJCQkJXA0KICAgICAgICAtICAgIDogc3RkOjpmYWxzZV90eXBlIHt9OwkJCQkJCVwNCiAg ICAgICAgLQkJCQkJCQkJCVwNCiAgICAgICAgICAgdGVtcGxhdGUgPFRZUEVOQU1FUz4JCQkJCQkJ XA0KICAgICAgICAtICAgIHN0cnVjdCBpc192YWxpZF9leHByZXNzaW9uPFRZUEVTLCBnZGI6OnZv aWRfdDxkZWNsdHlwZSAoRVhQUik+PglcDQogICAgICAgIC0gICAgOiBzdGQ6OnRydWVfdHlwZSB7 fTsJCQkJCQlcDQogICAgICAgICsgICAgdXNpbmcgYXJjaGV0eXBlID0gZGVjbHR5cGUgKEVYUFIp OwkJCQkJXA0KICAgICAgICAgCQkJCQkJCQkJXA0KICAgICAgICAtICBzdGF0aWNfYXNzZXJ0IChp c192YWxpZF9leHByZXNzaW9uPFRZUEVTPjo6dmFsdWUgPT0gVkFMSUQsCQlcDQogICAgICAgICsg IHN0YXRpY19hc3NlcnQgKGdkYjo6aXNfZGV0ZWN0ZWRfZXhhY3Q8RVhQUl9UWVBFLAkJCVwNCiAg ICAgICAgKwkJIGFyY2hldHlwZSwgVFlQRVM+Ojp2YWx1ZSA9PSBWQUxJRCwJCQlcDQogICAgICAg ICAJCSAiIik7CQkJCQkJCVwNCiAgICAgICAgLQkJCQkJCQkJCVwNCiAgICAgICAgLSAgdGVtcGxh dGU8VFlQRU5BTUVTLCB0eXBlbmFtZSA9IHZvaWQ+CQkJCQlcDQogICAgICAgIC0gIHN0cnVjdCBp c19zYW1lX3R5cGUJCQkJCQkJXA0KICAgICAgICAtICAgIDogc3RkOjppc19zYW1lPEVYUFJfVFlQ RSwgdm9pZD4ge307CQkJCQlcDQogICAgICAgIC0JCQkJCQkJCQlcDQogICAgICAgIC0gIHRlbXBs YXRlIDxUWVBFTkFNRVM+CQkJCQkJCVwNCiAgICAgICAgLSAgICBzdHJ1Y3QgaXNfc2FtZV90eXBl PFRZUEVTLCBnZGI6OnZvaWRfdDxkZWNsdHlwZSAoRVhQUik+PgkJXA0KICAgICAgICAtICAgIDog c3RkOjppc19zYW1lPEVYUFJfVFlQRSwgZGVjbHR5cGUgKEVYUFIpPiB7fTsJCQlcDQogICAgICAg IC0JCQkJCQkJCQlcDQogICAgICAgIC0gIHN0YXRpY19hc3NlcnQgKGlzX3NhbWVfdHlwZTxUWVBF Uz46OnZhbHVlLCAiIik7CQkJXA0KICAgICAgICAgICB9IC8qIG5hbWVzcGFjZSAqLw0KDQogICAg ICAgICAvKiBBIGZldyBjb252ZW5pZW5jZSBtYWNyb3MgdGhhdCBzdXBwb3J0IGV4cHJlc3Npb25z IGludm9sdmluZyBhDQogICAgICAgIC0tIA0KICAgICAgICAyLjE0LjUNCg0KDQoNCg==