From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from EUR03-AM5-obe.outbound.protection.outlook.com (mail-eopbgr30050.outbound.protection.outlook.com [40.107.3.50]) by sourceware.org (Postfix) with ESMTPS id 353D33858C2F for ; Tue, 5 Jul 2022 15:16:11 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 353D33858C2F ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass; b=JMURzlxTM70TRUjg6BOAwLuGlxu+aek/KKmmicw3kCeL9I2OQ2MItV00qPY3XAM+vRJ5TJu/Be2iC4gkbOVAwpsoPO2Rgd7HQYlKhbO+mZtkJDUrpqm8G70MNxJYtwuB6yqbjP9AFqt5R6c4stlSxQ7JZn5KtGX73uU0fHiuA6nuMB9bCwBs9ekkNaKPJhi2H0SZzFl6EOJVv0pFNYrxDcnNViZFqBRj6JuZD4My1AjtbHS5MBBynZfiqVHNeSKYRUyDrRjJFecql3jAu/5Kw2rtG/PTyh+5/DB4vCfQegGz7d9jbASkDmHkedfHAoLgIOcXiS6brjbb3djZWZYkiA== ARC-Message-Signature: i=2; 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=6V5fzlK/2hd0WkBPBObkC7DFPJrBXmzO9il4Gnq64/c=; b=ft4VLEUvzk3e5qshRHAT7Wk7sVQ2G/ehSHhLBrfbXUMuzXsgbXHw7+qIb73o8T/vzte98E2lXkcqvJ2QZ77NCEHkSAS81AHKrOVyAqFDSy279WrCtAorsnUT39lGhaRXQ+eHinvvbfDRTwNjh5wS50TUdFV9PfoxiAB0PrrEZtjv//HS1cbui1RoDX+WqXnwUVBGGoKTM2233XLGm5uFYmRWCw51J2mzOEU3lyjwtzLnXKAlfugqq6HVgVdKoWEWwGUvZjjDvMxAEhGZeZp/ITNfcYzaZIbDMeKszFCFjoGMmJZW/tQvJcxLkDbEn+QaIIv7LtLYfDPV2fkDoTikWg== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 63.35.35.123) smtp.rcpttodomain=gcc.gnu.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) Received: from DB6PR1001CA0010.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:4:b7::20) by HE1PR0802MB2252.eurprd08.prod.outlook.com (2603:10a6:3:c6::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5395.17; Tue, 5 Jul 2022 15:16:07 +0000 Received: from DBAEUR03FT047.eop-EUR03.prod.protection.outlook.com (2603:10a6:4:b7:cafe::a8) by DB6PR1001CA0010.outlook.office365.com (2603:10a6:4:b7::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5395.14 via Frontend Transport; Tue, 5 Jul 2022 15:16:06 +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 DBAEUR03FT047.mail.protection.outlook.com (100.127.143.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5395.14 via Frontend Transport; Tue, 5 Jul 2022 15:16:06 +0000 Received: ("Tessian outbound 9336577968ca:v121"); Tue, 05 Jul 2022 15:16:06 +0000 X-CR-MTA-TID: 64aa7808 Received: from f4e5ea78c5cf.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 501444D7-0483-4B4E-AEA8-CA71EBB51B96.1; Tue, 05 Jul 2022 15:16:00 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id f4e5ea78c5cf.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Tue, 05 Jul 2022 15:16:00 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QPcPNNZfmHEVgcBM1IZSWGBMJGiLXhRzPd+Y67sI5fwcMb7kblVpZ8dHvpEWrcxq48RShZyXJKoP3ctLpsWeEU8Ch8mZo8GUE0+hFdAXahUcTAiqNXF6gdaFCj5+QYBF4R2vPzbFPEdJhL/1GcVirBzvYFIsj1JVGpzFxMvTM9AexUZ8unyNysevg2derQXRVZNNpw4AzJBZgimj1LjKbRk1Yts7jbLLfAVSHLk/pt8UW+CZfz1xC970wjISn5ukI87yxOrflQ60t5bpILJjY3J7tj57GKid9TT9O+t7iIlo+st35bHUzJ0Vn9gQaTWIoJRCBXWuj9lXYi31R807yQ== 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=6V5fzlK/2hd0WkBPBObkC7DFPJrBXmzO9il4Gnq64/c=; b=XCNOFoqlbVgraHdZNdh2qawmXmisOv5yab9yFV4gWmhhVO6uVChTtfAyKirLbYv/3xJykD1wHrEhq4+5H5jYEBt9PNIF20RTcPQfx4mdsgNQaKM6X4WtiJzOI3g8blskF9Wpzb31Hz7y2ZIZo9yNFfwXsIWrURvjIMLz406rSHPpw/JDFsM45lhBx9Nivdia7LYMrHTkzCQ7oL0paMtOU4Cc/tbIDP2S8B8+g8AJxgy7ntssWSmdC4sRrVi0Cpov9y1Bui+33z7tEgQMlBsDSZ8dXQh0VreL2GIfcSYjzcWpQiYklUqc3XzFAcsHNDIRYtLz3TeDglmTFWhgmbQh4A== 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 VI1PR08MB5325.eurprd08.prod.outlook.com (2603:10a6:803:13e::17) by GVXPR08MB7848.eurprd08.prod.outlook.com (2603:10a6:150:16::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5395.15; Tue, 5 Jul 2022 15:15:58 +0000 Received: from VI1PR08MB5325.eurprd08.prod.outlook.com ([fe80::54e5:594b:e5fd:a9b4]) by VI1PR08MB5325.eurprd08.prod.outlook.com ([fe80::54e5:594b:e5fd:a9b4%9]) with mapi id 15.20.5395.021; Tue, 5 Jul 2022 15:15:58 +0000 From: Tamar Christina To: Richard Biener CC: "gcc-patches@gcc.gnu.org" , nd Subject: RE: [PATCH]middle-end simplify complex if expressions where comparisons are inverse of one another. Thread-Topic: [PATCH]middle-end simplify complex if expressions where comparisons are inverse of one another. Thread-Index: AQHYgYV05EjYER2K3U6QUesqLBCP9q1YBFAAgBf6HbA= Date: Tue, 5 Jul 2022 15:15:58 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: yes X-MS-TNEF-Correlator: x-ts-tracking-id: 6A0F8B36F55C0D45829CCCC0090DCDDE.0 x-checkrecipientchecked: true Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-MS-Office365-Filtering-Correlation-Id: 0b71112a-1a82-4f65-e854-08da5e9948b5 x-ms-traffictypediagnostic: GVXPR08MB7848:EE_|DBAEUR03FT047:EE_|HE1PR0802MB2252:EE_ 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: SWV8YmNwjBup+GxbrYKZe2REkAt2eb00q/6O8bUhEKXmMSIgX5fg7DRDwpwQuhqAYo2veAD8qVI2tVbRFQOO7MhNo2d4yt+XMfa2BGY3Iq6EsNLc1IYR1GUS8qP6EQ5dEPmGB5I4TuWR1bU06Wj0DtmSFlZePMTKrLGGBDSyebSQfeJ3IDlc79SrRlSMbUZyq+TlHSTjQH9laq9OsuN/9Ln6pxG6oihWph/o3lvaEMTqggLtS8MYXjwsdHfGhUk0EHseCwEq0JRtgdow2C8LhROAdLorQ+FSNsV1A3zmHM2R5uQZJvUNp9uffYj9lU55UhAYoKdB3YmPHkVsXWFnqY2WQwrSBkkFnjqnS3R7VtKubW4rTUtQTDUfClujTdAIYmCOIyROrRHkJAor46JVcut1gcpiTFuEqRqi8GTTCORRHbbGvnLcnsbRZgD6zNHWpeSbyowS8hG/uGbP4D8g5Wvp257UdOkp1bNvP81vToa6p/W8LsKC6PK4shsu26VHWeosT5vhvTYmN6XvulaJ4yK3xSRrmrlcy3+0JvkeET405BFB+rYkKKQ8mvZ+jWgVB9omNOF0vV1LFwCRmBIj/3MTIyKLD1F1fY/PWboHP89GH5eE7tGloC6Blud58tEW55LL/sWDT3+Vl0BfeOOU7O5sjC++aOhzVtkGTfjjMPFGP/oe7oJJH5/ACFdwU/9jTYovViIDKGYkIO1l9UNzTsIauEhL7JQif0K2cKBILaEmVUrRQfOC6Sq+++azGqsN2K0bnWi2mB98I/Jc4ICCHmvEyeqEFtPnx/CgzyXTlrx1kS4AitnkTmOB1+qE60gvT3xHH8HNhdCnYUciUO8qMvBDhZsOy4TC/ajdmGCMev7SxhqYQY5D0XMPlMdgcVAYfb9z5yQ+ps3hW78EQvhTzA== 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:(13230016)(4636009)(136003)(39860400002)(396003)(376002)(346002)(366004)(41300700001)(2906002)(84970400001)(54906003)(55016003)(6916009)(316002)(9686003)(53546011)(122000001)(30864003)(6506007)(52536014)(86362001)(99936003)(7696005)(38100700002)(478600001)(66446008)(83380400001)(186003)(33656002)(4326008)(8676002)(38070700005)(66556008)(76116006)(26005)(66946007)(8936002)(71200400001)(64756008)(5660300002)(66476007); DIR:OUT; SFP:1101; Content-Type: multipart/mixed; boundary="_002_VI1PR08MB5325D70879A8A0EAC2B3E3A2FF819VI1PR08MB5325eurp_" MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: GVXPR08MB7848 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: DBAEUR03FT047.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: b1448735-5cb8-4e3c-5f21-08da5e994390 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 4bHuZWDz1reHR4F+6lnrjpvBYboz1eNeiOrdKl62WeNI8MB3/0B6NYNpenQfFs1ztPeFlgFqAdG+hjBp8lnl/3uLt4IWnXxfrERRWy4c95genVC94/mYSnA18BiH5NvSAvYGktHPWY/uu2lKrx/sAPNKebHKm0i1ZvrhSWqr/fH24aBBNl14qLMJ6Nyfthrf6PIzp52URq8h/I0UPRnuGHVcyZka9wyc4yJ2yQ9jPRxkRDYRmH+JD+M/DbtSOEgGmdd77OvMW91C78EqKbLg+m63HN12RyUGx5iPt/to8MgIGqjbsnfoUaCfwYWfzKvCRG/QnI41VAJ2H2gok3txxDRZ/VuJ/5Nqn29uN6SYRSHJZrEAQqthxGIvGuQLyxo+NSdpt5TLFGW1XVJFyqubKBpDmGC4++i+W5WH136iKnYWIxBAJ+juuoD8uj+fgXFDCa0f+qtFx0EQn++cdGOK5YV0KICJbe1Ew0BXQHFIifBcQvvtbvsgR5tdo4xZpqUPGFxeTjpwrf8sseLvuf4r/46pS+w/Iky2VoawJct68soxhCnPqaSPC87UvIQYTIV0R9EeJNzgg3/qjde89sbjkETdizEfPgNqTmXptwCEzbClkp6OciEKZHYiFApzs1PqVZgXRxrEQwZyipI8qFcPyPCavZnc2u7hn8J/1XHys3iq3ORxN+DanUrMYLBsAXmcqgNWs3XhIL+0W00czu0T40iDPyo2FTg964cgL0ocOpmOJdpE8IYELQq4mKW3JSQy6kccf0cJHmH3MyYrFQLE9f9+tK+JBH4ZFJVduzNVU/rqVGKO/ibFlnM6d8bN0nIsGogE9a56G1Ydr72Wsgn/TdMKyIMEBcNJdhroPKViMPNExPXpACN9OwYeRB+uXSiBDNizVerqsy7FK/uwMI/XUQ== 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:(13230016)(4636009)(346002)(136003)(396003)(39860400002)(376002)(36840700001)(46966006)(40470700004)(47076005)(9686003)(336012)(40460700003)(26005)(54906003)(82310400005)(186003)(316002)(52536014)(83380400001)(86362001)(5660300002)(235185007)(70586007)(2906002)(99936003)(81166007)(84970400001)(55016003)(53546011)(40480700001)(33964004)(36860700001)(7696005)(478600001)(6862004)(8936002)(6506007)(30864003)(8676002)(4326008)(41300700001)(70206006)(33656002)(82740400003)(356005); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jul 2022 15:16:06.9078 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 0b71112a-1a82-4f65-e854-08da5e9948b5 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: DBAEUR03FT047.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: HE1PR0802MB2252 X-Spam-Status: No, score=-12.6 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, FORGED_SPF_HELO, GIT_PATCH_0, KAM_DMARC_NONE, KAM_LOTSOFHASH, KAM_SHORT, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_NONE, TXREP, T_SCC_BODY_TEXT_LINE, 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 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: Tue, 05 Jul 2022 15:16:14 -0000 --_002_VI1PR08MB5325D70879A8A0EAC2B3E3A2FF819VI1PR08MB5325eurp_ Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogUmljaGFyZCBCaWVuZXIg PHJndWVudGhlckBzdXNlLmRlPg0KPiBTZW50OiBNb25kYXksIEp1bmUgMjAsIDIwMjIgOTo1NyBB TQ0KPiBUbzogVGFtYXIgQ2hyaXN0aW5hIDxUYW1hci5DaHJpc3RpbmFAYXJtLmNvbT4NCj4gQ2M6 IGdjYy1wYXRjaGVzQGdjYy5nbnUub3JnOyBuZCA8bmRAYXJtLmNvbT4NCj4gU3ViamVjdDogUmU6 IFtQQVRDSF1taWRkbGUtZW5kIHNpbXBsaWZ5IGNvbXBsZXggaWYgZXhwcmVzc2lvbnMgd2hlcmUN Cj4gY29tcGFyaXNvbnMgYXJlIGludmVyc2Ugb2Ygb25lIGFub3RoZXIuDQo+IA0KPiBPbiBUaHUs IDE2IEp1biAyMDIyLCBUYW1hciBDaHJpc3RpbmEgd3JvdGU6DQo+IA0KPiA+IEhpIEFsbCwNCj4g Pg0KPiA+IFRoaXMgb3B0aW1pemVzIHRoZSBmb2xsb3dpbmcgc2VxdWVuY2UNCj4gPg0KPiA+ICAg KChhIDwgYikgJiBjKSB8ICgoYSA+PSBiKSAmIGQpDQo+ID4NCj4gPiBpbnRvDQo+ID4NCj4gPiAg IChhIDwgYiA/IGMgOiBkKSAmIDENCj4gPg0KPiA+IGZvciBzY2FsYXIuIE9uIHZlY3RvciB3ZSBj YW4gb21pdCB0aGUgJiAxLg0KPiA+DQo+ID4gVGhpcyBjaGFuZ2VzIHRoZSBjb2RlIGdlbmVyYXRp b24gZnJvbQ0KPiA+DQo+ID4gem9vMjoNCj4gPiAJY21wICAgICB3MCwgdzENCj4gPiAJY3NldCAg ICB3MCwgbHQNCj4gPiAJY3NldCAgICB3MSwgZ2UNCj4gPiAJYW5kICAgICB3MCwgdzAsIHcyDQo+ ID4gCWFuZCAgICAgdzEsIHcxLCB3Mw0KPiA+IAlvcnIgICAgIHcwLCB3MCwgdzENCj4gPiAJcmV0 DQo+ID4NCj4gPiBpbnRvDQo+ID4NCj4gPiAJY21wCXcwLCB3MQ0KPiA+IAljc2VsCXcwLCB3Miwg dzMsIGx0DQo+ID4gCWFuZAl3MCwgdzAsIDENCj4gPiAJcmV0DQo+ID4NCj4gPiBhbmQgc2lnbmlm aWNhbnRseSByZWR1Y2VzIHRoZSBudW1iZXIgb2Ygc2VsZWN0cyB3ZSBoYXZlIHRvIGRvIGluIHRo ZQ0KPiA+IHZlY3RvciBjb2RlLg0KPiA+DQo+ID4gQm9vdHN0cmFwcGVkIFJlZ3Rlc3RlZCBvbiBh YXJjaDY0LW5vbmUtbGludXgtZ251LCB4ODZfNjQtcGMtbGludXgtZ251DQo+ID4gYW5kIG5vIGlz c3Vlcy4NCj4gPg0KPiA+IE9rIGZvciBtYXN0ZXI/DQo+ID4NCj4gPiBUaGFua3MsDQo+ID4gVGFt YXINCj4gPg0KPiA+IGdjYy9DaGFuZ2VMb2c6DQo+ID4NCj4gPiAJKiBmb2xkLWNvbnN0LmNjIChp bnZlcnNlX2NvbmRpdGlvbnNfcCk6IFRyYXZlcnNlIGlmIFNTQV9OQU1FLg0KPiA+IAkqIG1hdGNo LnBkOiBBZGQgbmV3IHJ1bGUuDQo+ID4NCj4gPiBnY2MvdGVzdHN1aXRlL0NoYW5nZUxvZzoNCj4g Pg0KPiA+IAkqIGdjYy50YXJnZXQvYWFyY2g2NC9pZi1jb21wYXJlXzEuYzogTmV3IHRlc3QuDQo+ ID4gCSogZ2NjLnRhcmdldC9hYXJjaDY0L2lmLWNvbXBhcmVfMi5jOiBOZXcgdGVzdC4NCj4gPg0K PiA+IC0tLSBpbmxpbmUgY29weSBvZiBwYXRjaCAtLQ0KPiA+IGRpZmYgLS1naXQgYS9nY2MvZm9s ZC1jb25zdC5jYyBiL2djYy9mb2xkLWNvbnN0LmNjIGluZGV4DQo+ID4NCj4gMzlhNWE1Mjk1OGQ4 NzQ5N2YzMDE4MjZlNzA2ODg2YjI5MDc3MWEyZC4uZjE4MDU5OWI5MDE1MGFjZDNlZDg5NWE2NA0K PiAyODANCj4gPiBhYTMyNTUwNjEyNTYgMTAwNjQ0DQo+ID4gLS0tIGEvZ2NjL2ZvbGQtY29uc3Qu Y2MNCj4gPiArKysgYi9nY2MvZm9sZC1jb25zdC5jYw0KPiA+IEBAIC0yODMzLDE1ICsyODMzLDM4 IEBAIGNvbXBjb2RlX3RvX2NvbXBhcmlzb24gKGVudW0NCj4gY29tcGFyaXNvbl9jb2RlDQo+ID4g Y29kZSkgIGJvb2wgIGludmVyc2VfY29uZGl0aW9uc19wIChjb25zdF90cmVlIGNvbmQxLCBjb25z dF90cmVlIGNvbmQyKQ0KPiA+IHsNCj4gPiAtICByZXR1cm4gKENPTVBBUklTT05fQ0xBU1NfUCAo Y29uZDEpDQo+ID4gLQkgICYmIENPTVBBUklTT05fQ0xBU1NfUCAoY29uZDIpDQo+ID4gLQkgICYm IChpbnZlcnRfdHJlZV9jb21wYXJpc29uDQo+ID4gLQkgICAgICAoVFJFRV9DT0RFIChjb25kMSks DQo+ID4gLQkgICAgICAgSE9OT1JfTkFOUyAoVFJFRV9PUEVSQU5EIChjb25kMSwgMCkpKSA9PSBU UkVFX0NPREUNCj4gKGNvbmQyKSkNCj4gPiAtCSAgJiYgb3BlcmFuZF9lcXVhbF9wIChUUkVFX09Q RVJBTkQgKGNvbmQxLCAwKSwNCj4gPiAtCQkJICAgICAgVFJFRV9PUEVSQU5EIChjb25kMiwgMCks IDApDQo+ID4gLQkgICYmIG9wZXJhbmRfZXF1YWxfcCAoVFJFRV9PUEVSQU5EIChjb25kMSwgMSks DQo+ID4gLQkJCSAgICAgIFRSRUVfT1BFUkFORCAoY29uZDIsIDEpLCAwKSk7DQo+ID4gKyAgaWYg KENPTVBBUklTT05fQ0xBU1NfUCAoY29uZDEpDQo+ID4gKyAgICAgICYmIENPTVBBUklTT05fQ0xB U1NfUCAoY29uZDIpDQo+ID4gKyAgICAgICYmIChpbnZlcnRfdHJlZV9jb21wYXJpc29uDQo+ID4g KwkgICAoVFJFRV9DT0RFIChjb25kMSksDQo+ID4gKwkgICAgSE9OT1JfTkFOUyAoVFJFRV9PUEVS QU5EIChjb25kMSwgMCkpKSA9PSBUUkVFX0NPREUNCj4gKGNvbmQyKSkNCj4gPiArICAgICAgJiYg b3BlcmFuZF9lcXVhbF9wIChUUkVFX09QRVJBTkQgKGNvbmQxLCAwKSwNCj4gPiArCQkJICBUUkVF X09QRVJBTkQgKGNvbmQyLCAwKSwgMCkNCj4gPiArICAgICAgJiYgb3BlcmFuZF9lcXVhbF9wIChU UkVFX09QRVJBTkQgKGNvbmQxLCAxKSwNCj4gPiArCQkJICBUUkVFX09QRVJBTkQgKGNvbmQyLCAx KSwgMCkpDQo+ID4gKyAgICByZXR1cm4gdHJ1ZTsNCj4gPiArDQo+ID4gKyAgaWYgKFRSRUVfQ09E RSAoY29uZDEpID09IFNTQV9OQU1FDQo+ID4gKyAgICAgICYmIFRSRUVfQ09ERSAoY29uZDIpID09 IFNTQV9OQU1FKQ0KPiA+ICsgICAgew0KPiA+ICsgICAgICBnaW1wbGUgKmdjb25kMSA9IFNTQV9O QU1FX0RFRl9TVE1UIChjb25kMSk7DQo+ID4gKyAgICAgIGdpbXBsZSAqZ2NvbmQyID0gU1NBX05B TUVfREVGX1NUTVQgKGNvbmQyKTsNCj4gPiArICAgICAgaWYgKCFpc19naW1wbGVfYXNzaWduIChn Y29uZDEpIHx8ICFpc19naW1wbGVfYXNzaWduIChnY29uZDIpKQ0KPiA+ICsJcmV0dXJuIGZhbHNl Ow0KPiA+ICsNCj4gPiArICAgICAgdHJlZV9jb2RlIGNvZGUxID0gZ2ltcGxlX2Fzc2lnbl9yaHNf Y29kZSAoZ2NvbmQxKTsNCj4gPiArICAgICAgdHJlZV9jb2RlIGNvZGUyID0gZ2ltcGxlX2Fzc2ln bl9yaHNfY29kZSAoZ2NvbmQyKTsNCj4gPiArICAgICAgcmV0dXJuIFRSRUVfQ09ERV9DTEFTUyAo Y29kZTEpID09IHRjY19jb21wYXJpc29uDQo+ID4gKwkgICAgICYmIFRSRUVfQ09ERV9DTEFTUyAo Y29kZTIpID09IHRjY19jb21wYXJpc29uDQo+ID4gKwkgICAgICYmIGludmVydF90cmVlX2NvbXBh cmlzb24gKGNvZGUxLA0KPiA+ICsJCSAgSE9OT1JfTkFOUyAoZ2ltcGxlX2FyZyAoZ2NvbmQxLCAw KSkpID09IGNvZGUyDQo+ID4gKwkgICAgICYmIG9wZXJhbmRfZXF1YWxfcCAoZ2ltcGxlX2FyZyAo Z2NvbmQxLCAwKSwNCj4gPiArCQkJCSBnaW1wbGVfYXJnIChnY29uZDIsIDApLCAwKQ0KPiA+ICsJ ICAgICAmJiBvcGVyYW5kX2VxdWFsX3AgKGdpbXBsZV9hcmcgKGdjb25kMSwgMSksDQo+ID4gKwkJ CQkgZ2ltcGxlX2FyZyAoZ2NvbmQyLCAxKSwgMCk7DQo+ID4gKyAgICB9DQo+ID4gKw0KPiA+ICsg IHJldHVybiBmYWxzZTsNCj4gDQo+IGlmIHdlIGRvIGV4dGVuZCBpbnZlcnNlX2NvbmRpdGlvbl9w IHBsZWFzZSBhZGQgYW4gb3ZlcmxvYWQgbGlrZQ0KDQpEb25lLiANCg0KPiANCj4gYm9vbA0KPiBp bnZlcnNlX2NvbmRpdGlvbl9wIChlbnVtIHRyZWVfY29kZSwgdHJlZSBvcDAwLCB0cmVlIG9wMDEs DQo+ICAgICAgICAgICAgICAgICAgICAgIGVudW0gdHJlZV9jb2RlLCB0cmVlIG9wMTAsIHRyZWUg b3AxMSkNCj4gDQo+IHNvIHlvdSBjYW4gYXZvaWQgc29tZSBjb2RlIGR1cGxpY2F0aW9uIGhlcmUu DQo+IA0KPiA+ICB9DQo+ID4NCj4gPiAgLyogUmV0dXJuIGEgdHJlZSBmb3IgdGhlIGNvbXBhcmlz b24gd2hpY2ggaXMgdGhlIGNvbWJpbmF0aW9uIG9mIGRpZmYNCj4gPiAtLWdpdCBhL2djYy9tYXRj aC5wZCBiL2djYy9tYXRjaC5wZCBpbmRleA0KPiA+DQo+IDZkNjkxZDMwMmIzMzljMGU0NTU2YjQw YWYxNThiNTIwOGMxMmQwOGYuLmJhZDQ5ZGQzNDhhZGQ3NTFkOWVjMWUzMA0KPiAyM2UzDQo+ID4g NGQ5YWMxMjMxOTRmIDEwMDY0NA0KPiA+IC0tLSBhL2djYy9tYXRjaC5wZA0KPiA+ICsrKyBiL2dj Yy9tYXRjaC5wZA0KPiA+IEBAIC0xMTYwLDYgKzExNjAsMzIgQEAgREVGSU5FX0lOVF9BTkRfRkxP QVRfUk9VTkRfRk4gKFJJTlQpDQo+ID4gICAgICAgKGNvbnZlcnQgKGJpdF9hbmQgKG5lZ2F0ZSAo Y29udmVydDp1dHlwZSB7IHBtb3BbMF07IH0pKQ0KPiA+ICAJCSAgICAgICAoY29udmVydDp1dHlw ZSBAMSkpKSkpKSkNCj4gPg0KPiA+ICsvKiBGb2xkICgoKGEgPCBiKSAmIGMpIHwgKChhID49IGIp ICYgZCkpIGludG8gKGEgPCBiID8gYyA6IGQpICYgMS4NCj4gPiArKi8gKHNpbXBsaWZ5ICAoYml0 X2lvcg0KPiA+ICsgIChiaXRfYW5kOmMgKGNvbnZlcnQ/IEAwKSBAMikNCj4gPiArICAoYml0X2Fu ZDpjIChjb252ZXJ0PyBAMSkgQDMpKQ0KPiANCj4gaW4gY2FzZSB0aGUgY29tcGFyaXNvbiByZXR1 cm5zIGEgc2lnbmVkIGJvb2wgdGhpcyBtaWdodCB0dXJuIG91dCB3cm9uZy4NCj4gTWF5YmUgc2lt cGx5IHVzZSB6ZXJvX29uZV92YWx1ZWRfcEAwIGhlcmUgaW5zdGVhZCBvZiAoY29udmVydD8gQDAp Pw0KDQpJIHRoaW5rIEkgc3RpbGwgbmVlZCB0aGUgY29udmVydCBhcyB0aGUgY29tcGFyaXNvbiBn ZXRzIHByb21vdGVkIHRvIGludCBhbmQNCnRoZSBwcmVkaWNhdGUgZG9lc24ndCBoYW5kbGUgZXh0 ZW5zaW9ucy4NCg0KU28gSSBsZWZ0IHRoZSBjb252ZXJ0IGJ1dCBhZGRlZCB0aGUgemVyb19vbmVf dmFsdWVkX3BAMCBzdWNoIHRoYXQgaXQncw0KY2hlY2tpbmcgdGhhdCB0aGUgcmVzdWx0IG9mIHRo ZSBjb21wYXJpc29uIGl0c2VsZiBpcyBhdCBsZWFzdCAwIG9yIDEuDQoNCj4gDQo+ID4gKyAgIChp ZiAoaW52ZXJzZV9jb25kaXRpb25zX3AgKEAwLCBAMSkNCj4gPiArCS8qIFRoZSBzY2FsYXIgdmVy c2lvbiBoYXMgdG8gYmUgY2Fub25pY2FsaXplZCBhZnRlciB2ZWN0b3JpemF0aW9uDQo+ID4gKwkg ICBiZWNhdXNlIGl0IG1ha2VzIHVuY29uZGl0aW9uYWwgbG9hZHMgY29uZGl0aW9uYWwgb25lcywg d2hpY2gNCj4gPiArCSAgIG1lYW5zIHdlIGxvc2UgdmVjdG9yaXphdGlvbiBiZWNhdXNlIHRoZSBs b2FkcyBtYXkgdHJhcC4gICovDQo+ID4gKwkmJiBjYW5vbmljYWxpemVfbWF0aF9hZnRlcl92ZWN0 b3JpemF0aW9uX3AgKCkpDQo+ID4gKyAgICAoYml0X2FuZCAoY29uZCBAMCBAMiBAMykgeyBidWls ZF9lYWNoX29uZV9jc3QgKHR5cGUpOyB9KSkpDQo+IA0KPiBJIHRoaW5rIHlvdSBzaG91bGQgcmVz dHJpY3QgdGhpcyB0byBJTlRFR1JBTF9UWVBFX1AgYW5kIHVzZSBidWlsZF9vbmVfY3N0DQo+ICh0 eXBlKSAoYWxzbyBzZWUgYmVsb3cpLg0KPiANCj4geW91IGNhbiBkbyBpbnZlcnNlX29uZGl0aW9u c19wIHdpdGggbG9jay1zdGVwIGZvciBvdmVyIHRjY19jb21wYXJpc29uIGFuZA0KPiBpbnZlcnRl ZF90Y2NfY29tcGFyaXNvbnssX3dpdGhfbmFuc30gKHNlZSBleGlzdGluZyBleGFtcGxlcykuDQoN CkkgY291bGRuJ3QgZmlndXJlIG91dCBob3cgdG8gY29tYmluZSB0aGlzIGFwcHJvYWNoIHdpdGgg dGhlIHplcm9fb25lX3ZhbHVlZF9wDQpwcmVkaWNhdGUuIFRoZSB6ZXJvX29uZV92YWx1ZWRfcCB3 b3VsZCBuZWVkIHRvIGJlIG9uIChjbXAgQDAgQDEpIGJ1dCBkb24ndA0KdGhpbmsgdGhhdCBpcyBh bGxvd2VkLiAgDQoNCj4gDQo+ID4gKyhzaW1wbGlmeQ0KPiA+ICsgKGJpdF9pb3INCj4gPiArICAo Yml0X2FuZDpjIChjb252ZXJ0PyAodmVjX2NvbmQ6cyBAMCBANCBpbnRlZ2VyX3plcm9wKSkgQDIp DQo+ID4gKyAgKGJpdF9hbmQ6YyAoY29udmVydD8gKHZlY19jb25kOnMgQDEgQDQgaW50ZWdlcl96 ZXJvcCkpIEAzKSkNCj4gPiArICAgKGlmIChpbnZlcnNlX2NvbmRpdGlvbnNfcCAoQDAsIEAxKQ0K PiA+ICsJJiYgaW50ZWdlcl9vbmVwIChANCkpDQo+ID4gKyAgICAoYml0X2FuZCAodmVjX2NvbmQg QDAgQDIgQDMpIEA0KSkpDQo+ID4gKy8qIEZvbGQgKCgoYSA8IGIpICYgYykgfCAoKGEgPj0gYikg JiBkKSkgaW50byBhIDwgYiA/IGMgOiBkLiAgKi8NCj4gPiArKHNpbXBsaWZ5ICAoYml0X2lvcg0K PiA+ICsgIChiaXRfYW5kOmMgKGNvbnZlcnQ/ICh2ZWNfY29uZDpzIEAwIGludGVnZXJfbWludXNf b25lcA0KPiA+ICtpbnRlZ2VyX3plcm9wKSkgQDIpDQo+ID4gKyAgKGJpdF9hbmQ6YyAoY29udmVy dD8gKHZlY19jb25kOnMgQDEgaW50ZWdlcl9taW51c19vbmVwDQo+IGludGVnZXJfemVyb3ApKSBA MykpDQo+ID4gKyAgIChpZiAoaW52ZXJzZV9jb25kaXRpb25zX3AgKEAwLCBAMSkpDQo+ID4gKyAg ICAodmVjX2NvbmQgQDAgQDIgQDMpKSkNCj4gDQo+IEkgdGhpbmsgdGhlIGR1cGxpY2F0aW9uIGlz IHByZS1tYXR1cmUgb3B0aW1pemF0aW9uIC0gd2Ugc2hvdWxkIGdldCB0aGUNCj4gKGJpdF9hbmQg KC4uKSBpbnRlZ2VyX21pbnVzX29uZXApIHNpbXBsaWZpZWQuICBBbHNvIGRpZG4ndCB3ZSBoYXZl ICh2ZWNfY29uZA0KPiBAMCAtMSAwKSAtPiAodmlld19jb252ZXJ0IEAwKSB3aGVuIHRoZSBtb2Rl cyBtYXRjaD8NCg0KVGhpcyB3YXNuJ3QgaW4gbXkgdHJlZSBhdCB0aGUgdGltZSwgSSBjb3VsZCB1 c2UgdGhpcyByZXByZXNlbnRhdGlvbiBpbnN0ZWFkIGJ1dCBpdA0Kd291bGRuJ3Qgc2hvcnRlbiB0 aGUgbWF0Y2ggdHJlZS4gQ29tYmluaW5nIHRoZW0gYXMgeW91IHN1Z2dlc3RlZCBiZWxvdyBzZWVt cw0KbW9zdCBvcHRpbWFsLg0KDQo+IFdlIG1pZ2h0IHdhbnQgdG8gYWRkIChtYXRjaCB6ZXJvX21p bnVzX29uZV92YWx1ZWRfcCkgb3IgdXNlDQo+IHRydXRoX3ZhbHVlZF9wICh3aXRoIGFwcHJvcHJp YXRlIHZlY3RvciBzZW1hbnRpY3MsIHBsdXMgZXh0ZW5kIGl0KS4NCj4gV2h5IGRvIHlvdSBuZWVk IChjb252ZXJ0PyAuLi4pIGZvciB0aGUgdmVjdG9yIGNhc2UgYnR3Pw0KPiANCg0KU2luY2Ugd2Ug aGF2ZSB0byBkZWZlciB0aGUgc2NhbGFyIHZlcnNpb24gdGhlbiB0aGUgdmVjdG9yaXplciB3b24n dCANCg0KPiBJIGd1ZXNzIHRoZSBpbnRlZ3JhbCB0eXBlIGFuZCB2ZWN0b3IgdHlwZSBjYXNlcyBh cmUgc2ltaWxhciBlbm91Z2ggdGhhdCB0aGUNCj4gcGF0dGVybnMgY2FuIGJlIG1lcmdlZCB3aXRo IGNvbmRpdGlvbmFsaXppbmcgb25seSB0aGUgcmVwbGFjZW1lbnQuDQo+IA0KDQpNZXJnZWQuIA0K DQoNCkJvb3RzdHJhcHBlZCBSZWd0ZXN0ZWQgb24gYWFyY2g2NC1ub25lLWxpbnV4LWdudSwNCng4 Nl82NC1wYy1saW51eC1nbnUgYW5kIG5vIGlzc3Vlcy4NCg0KT2sgZm9yIG1hc3Rlcj8NCg0KVGhh bmtzLA0KVGFtYXINCg0KZ2NjL0NoYW5nZUxvZzoNCg0KCSogZm9sZC1jb25zdC5jYyAoaW52ZXJz ZV9jb25kaXRpb25zX3ApOiBUcmF2ZXJzZSBpZiBTU0FfTkFNRS4NCgkoaW52ZXJzZV9jb25kaXRp b25zX3BfMSk6IE5ldy4NCgkqIG1hdGNoLnBkOiBBZGQgbmV3IHJ1bGUuDQoNCmdjYy90ZXN0c3Vp dGUvQ2hhbmdlTG9nOg0KDQoJKiBnY2MudGFyZ2V0L2FhcmNoNjQvaWYtY29tcGFyZV8xLmM6IE5l dyB0ZXN0Lg0KCSogZ2NjLnRhcmdldC9hYXJjaDY0L2lmLWNvbXBhcmVfMi5jOiBOZXcgdGVzdC4N Cg0KLS0tIGlubGluZSBjb3B5IG9mIHBhdGNoIC0tLQ0KDQpkaWZmIC0tZ2l0IGEvZ2NjL2ZvbGQt Y29uc3QuY2MgYi9nY2MvZm9sZC1jb25zdC5jYw0KaW5kZXggOTkwMjFhODJkZjQ5NzdiMTc5YjQ1 ZGIwNGUzMDgzMDEyYzYzMDY3YS4uMDYyOGZmZDM5NTQxNmQ3NGJjMDMxZTNlNGFjODI0Njg5NGNh NTY0ZCAxMDA2NDQNCi0tLSBhL2djYy9mb2xkLWNvbnN0LmNjDQorKysgYi9nY2MvZm9sZC1jb25z dC5jYw0KQEAgLTI4MjksMjAgKzI4MjksNTUgQEAgY29tcGNvZGVfdG9fY29tcGFyaXNvbiAoZW51 bSBjb21wYXJpc29uX2NvZGUgY29kZSkNCiAgICAgfQ0KIH0NCiANCisNCisvKiBIZWxwZXIgb2Yg aW52ZXJzZV9jb25kaXRpb25fcC4gIFJldHVybnMgVFJVRSBpZiBDT0RFMSBpcyB0aGUgaW52ZXJz ZSBvZg0KKyAgIENPREUyIGFuZCBPUDAwID09IE9QMTAgYW5kIE9QMDEgPT0gT1AxMS4gICovDQor DQorc3RhdGljIGJvb2wNCitpbnZlcnNlX2NvbmRpdGlvbnNfcF8xIChlbnVtIHRyZWVfY29kZSBj b2RlMSwgdHJlZSBvcDAwLCB0cmVlIG9wMDEsDQorCQkJZW51bSB0cmVlX2NvZGUgY29kZTIsIHRy ZWUgb3AxMCwgdHJlZSBvcDExKQ0KK3sNCisgIHJldHVybiAoaW52ZXJ0X3RyZWVfY29tcGFyaXNv biAoY29kZTEsIEhPTk9SX05BTlMgKG9wMDApKSA9PSBjb2RlMikNCisgICAgICAmJiBvcGVyYW5k X2VxdWFsX3AgKG9wMDAsIG9wMTAsIDApDQorICAgICAgJiYgb3BlcmFuZF9lcXVhbF9wIChvcDAx LCBvcDExLCAwKTsNCit9DQorDQogLyogUmV0dXJuIHRydWUgaWYgQ09ORDEgdGVzdHMgdGhlIG9w cG9zaXRlIGNvbmRpdGlvbiBvZiBDT05EMi4gICovDQogDQogYm9vbA0KIGludmVyc2VfY29uZGl0 aW9uc19wIChjb25zdF90cmVlIGNvbmQxLCBjb25zdF90cmVlIGNvbmQyKQ0KIHsNCi0gIHJldHVy biAoQ09NUEFSSVNPTl9DTEFTU19QIChjb25kMSkNCi0JICAmJiBDT01QQVJJU09OX0NMQVNTX1Ag KGNvbmQyKQ0KLQkgICYmIChpbnZlcnRfdHJlZV9jb21wYXJpc29uDQotCSAgICAgIChUUkVFX0NP REUgKGNvbmQxKSwNCi0JICAgICAgIEhPTk9SX05BTlMgKFRSRUVfT1BFUkFORCAoY29uZDEsIDAp KSkgPT0gVFJFRV9DT0RFIChjb25kMikpDQotCSAgJiYgb3BlcmFuZF9lcXVhbF9wIChUUkVFX09Q RVJBTkQgKGNvbmQxLCAwKSwNCi0JCQkgICAgICBUUkVFX09QRVJBTkQgKGNvbmQyLCAwKSwgMCkN Ci0JICAmJiBvcGVyYW5kX2VxdWFsX3AgKFRSRUVfT1BFUkFORCAoY29uZDEsIDEpLA0KLQkJCSAg ICAgIFRSRUVfT1BFUkFORCAoY29uZDIsIDEpLCAwKSk7DQorICBpZiAoQ09NUEFSSVNPTl9DTEFT U19QIChjb25kMSkNCisgICAgICAmJiBDT01QQVJJU09OX0NMQVNTX1AgKGNvbmQyKQ0KKyAgICAg ICYmIGludmVyc2VfY29uZGl0aW9uc19wXzEgKFRSRUVfQ09ERSAoY29uZDEpLA0KKwkJCQkgVFJF RV9PUEVSQU5EIChjb25kMSwgMCksDQorCQkJCSBUUkVFX09QRVJBTkQgKGNvbmQxLCAxKSwNCisJ CQkJIFRSRUVfQ09ERSAoY29uZDIpLA0KKwkJCQkgVFJFRV9PUEVSQU5EIChjb25kMiwgMCksDQor CQkJCSBUUkVFX09QRVJBTkQgKGNvbmQyLCAxKSkpDQorICAgIHJldHVybiB0cnVlOw0KKw0KKyAg aWYgKFRSRUVfQ09ERSAoY29uZDEpID09IFNTQV9OQU1FDQorICAgICAgJiYgVFJFRV9DT0RFIChj b25kMikgPT0gU1NBX05BTUUpDQorICAgIHsNCisgICAgICBnaW1wbGUgKmdjb25kMSA9IFNTQV9O QU1FX0RFRl9TVE1UIChjb25kMSk7DQorICAgICAgZ2ltcGxlICpnY29uZDIgPSBTU0FfTkFNRV9E RUZfU1RNVCAoY29uZDIpOw0KKyAgICAgIGlmICghaXNfZ2ltcGxlX2Fzc2lnbiAoZ2NvbmQxKSB8 fCAhaXNfZ2ltcGxlX2Fzc2lnbiAoZ2NvbmQyKSkNCisJcmV0dXJuIGZhbHNlOw0KKw0KKyAgICAg IHRyZWVfY29kZSBjb2RlMSA9IGdpbXBsZV9hc3NpZ25fcmhzX2NvZGUgKGdjb25kMSk7DQorICAg ICAgdHJlZV9jb2RlIGNvZGUyID0gZ2ltcGxlX2Fzc2lnbl9yaHNfY29kZSAoZ2NvbmQyKTsNCisg ICAgICByZXR1cm4gVFJFRV9DT0RFX0NMQVNTIChjb2RlMSkgPT0gdGNjX2NvbXBhcmlzb24NCisJ ICAgICAmJiBUUkVFX0NPREVfQ0xBU1MgKGNvZGUyKSA9PSB0Y2NfY29tcGFyaXNvbg0KKwkgICAg ICYmIGludmVyc2VfY29uZGl0aW9uc19wXzEgKGNvZGUxLA0KKwkJCQkJZ2ltcGxlX2FyZyAoZ2Nv bmQxLCAwKSwNCisJCQkJCWdpbXBsZV9hcmcgKGdjb25kMSwgMSksDQorCQkJCQljb2RlMiwNCisJ CQkJCWdpbXBsZV9hcmcgKGdjb25kMiwgMCksDQorCQkJCQlnaW1wbGVfYXJnIChnY29uZDIsIDEp KTsNCisgICAgfQ0KKw0KKyAgcmV0dXJuIGZhbHNlOw0KIH0NCiANCiAvKiBSZXR1cm4gYSB0cmVl IGZvciB0aGUgY29tcGFyaXNvbiB3aGljaCBpcyB0aGUgY29tYmluYXRpb24gb2YNCmRpZmYgLS1n aXQgYS9nY2MvbWF0Y2gucGQgYi9nY2MvbWF0Y2gucGQNCmluZGV4IDI0Y2JiYmI1YmMxZDcxOGJk MDNhZjc3MTJmYzcyNTUyMTNmMmE3NDIuLjBhNDU5ZjI4MDRlMjk2ZjQzMzZhZWU3MGUzNTFkZGM0 NTQ4NmM4NjcgMTAwNjQ0DQotLS0gYS9nY2MvbWF0Y2gucGQNCisrKyBiL2djYy9tYXRjaC5wZA0K QEAgLTE4NzIsNiArMTg3MiwzMCBAQCBERUZJTkVfSU5UX0FORF9GTE9BVF9ST1VORF9GTiAoUklO VCkNCiAgKGlmIChJTlRFR1JBTF9UWVBFX1AgKHR5cGUpKQ0KICAgKGJpdF9hbmQgQDAgQDEpKSkN CiANCisvKiBGb2xkICgoKGEgPCBiKSAmIGMpIHwgKChhID49IGIpICYgZCkpIGludG8gKGEgPCBi ID8gYyA6IGQpICYgMS4NCisgICBhbmQgdmVjdG9yIEZvbGQgKCgoYSA8IGIpICYgYykgfCAoKGEg Pj0gYikgJiBkKSkgaW50byBhIDwgYiA/IGMgOiBkLiAqLw0KKyhzaW1wbGlmeQ0KKyAoYml0X2lv cg0KKyAgKGJpdF9hbmQ6YyAoY29udmVydD8gemVyb19vbmVfdmFsdWVkX3BAMCkgQDIpDQorICAo Yml0X2FuZDpjIChjb252ZXJ0PyB6ZXJvX29uZV92YWx1ZWRfcEAxKSBAMykpDQorICAgKGlmIChJ TlRFR1JBTF9UWVBFX1AgKHR5cGUpDQorCSYmIGludmVyc2VfY29uZGl0aW9uc19wIChAMCwgQDEp DQorCS8qIFRoZSBzY2FsYXIgdmVyc2lvbiBoYXMgdG8gYmUgY2Fub25pY2FsaXplZCBhZnRlciB2 ZWN0b3JpemF0aW9uDQorCSAgIGJlY2F1c2UgaXQgbWFrZXMgdW5jb25kaXRpb25hbCBsb2FkcyBj b25kaXRpb25hbCBvbmVzLCB3aGljaA0KKwkgICBtZWFucyB3ZSBsb3NlIHZlY3Rvcml6YXRpb24g YmVjYXVzZSB0aGUgbG9hZHMgbWF5IHRyYXAuICAqLw0KKwkmJiBjYW5vbmljYWxpemVfbWF0aF9h ZnRlcl92ZWN0b3JpemF0aW9uX3AgKCkpDQorICAgIChiaXRfYW5kIChjb25kIEAwIEAyIEAzKSB7 IGJ1aWxkX29uZV9jc3QgKHR5cGUpOyB9KSkpDQorKHNpbXBsaWZ5DQorIChiaXRfaW9yDQorICAo Yml0X2FuZDpjICh2ZWNfY29uZDpzIEAwIEA0IGludGVnZXJfemVyb3ApIEAyKQ0KKyAgKGJpdF9h bmQ6YyAodmVjX2NvbmQ6cyBAMSBANCBpbnRlZ2VyX3plcm9wKSBAMykpDQorICAgKGlmIChpbnZl cnNlX2NvbmRpdGlvbnNfcCAoQDAsIEAxKSkNCisgICAgKHN3aXRjaA0KKyAgICAgKGlmIChpbnRl Z2VyX29uZXAgKEA0KSkNCisgICAgICAoYml0X2FuZCAodmVjX2NvbmQgQDAgQDIgQDMpIEA0KSkN CisgICAgIChpZiAoaW50ZWdlcl9taW51c19vbmVwIChANCkpDQorICAgICAgKHZlY19jb25kIEAw IEAyIEAzKSkpKSkNCisNCiAvKiBUcmFuc2Zvcm0gWCAmIC1ZIGludG8gWCAqIFkgd2hlbiBZIGlz IHsgMCBvciAxIH0uICAqLw0KIChzaW1wbGlmeQ0KICAoYml0X2FuZDpjIChjb252ZXJ0PyAobmVn YXRlIHplcm9fb25lX3ZhbHVlZF9wQDApKSBAMSkNCmRpZmYgLS1naXQgYS9nY2MvdGVzdHN1aXRl L2djYy50YXJnZXQvYWFyY2g2NC9pZi1jb21wYXJlXzEuYyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRh cmdldC9hYXJjaDY0L2lmLWNvbXBhcmVfMS5jDQpuZXcgZmlsZSBtb2RlIDEwMDY0NA0KaW5kZXgg MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMDVhMTI5MmZhOTBjNzBi MTRhNzk4NTEyMmY0MzcxMWY1NWQwNDdlYQ0KLS0tIC9kZXYvbnVsbA0KKysrIGIvZ2NjL3Rlc3Rz dWl0ZS9nY2MudGFyZ2V0L2FhcmNoNjQvaWYtY29tcGFyZV8xLmMNCkBAIC0wLDAgKzEsMTYgQEAN CisvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLw0KKy8qIHsgZGctYWRkaXRpb25hbC1vcHRpb25zICIt TyIgfSAqLw0KKy8qIHsgZGctZmluYWwgeyBjaGVjay1mdW5jdGlvbi1ib2RpZXMgIioqIiAiIiAi IiB7IHRhcmdldCB7IGxlIH0gfSB9IH0gKi8NCisNCisvKg0KKyoqem9vMjoNCisqKgljbXAJdzAs IHcxDQorKioJY3NlbAl3MCwgdzIsIHczLCBsdA0KKyoqCWFuZAl3MCwgdzAsIDENCisqKglyZXQN CisqLw0KK2ludCB6b28yIChpbnQgYSwgaW50IGIsIGludCBjLCBpbnQgZCkNCit7DQorICAgcmV0 dXJuICgoYSA8IGIpICYgYykgfCAoKGEgPj0gYikgJiBkKTsNCit9DQorDQpkaWZmIC0tZ2l0IGEv Z2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2FhcmNoNjQvaWYtY29tcGFyZV8yLmMgYi9nY2MvdGVz dHN1aXRlL2djYy50YXJnZXQvYWFyY2g2NC9pZi1jb21wYXJlXzIuYw0KbmV3IGZpbGUgbW9kZSAx MDA2NDQNCmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjM0 YmM2NWY1ZGIxMGVhZTgxYjhkZWUzMzE2ZGZiN2QxMmJmNDcxYzgNCi0tLSAvZGV2L251bGwNCisr KyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9hYXJjaDY0L2lmLWNvbXBhcmVfMi5jDQpAQCAt MCwwICsxLDMyIEBADQorLyogeyBkZy1kbyBjb21waWxlIH0gKi8NCisvKiB7IGRnLWFkZGl0aW9u YWwtb3B0aW9ucyAiLU8zIC1zdGQ9Yzk5IiB9ICovDQorLyogeyBkZy1maW5hbCB7IGNoZWNrLWZ1 bmN0aW9uLWJvZGllcyAiKioiICIiICIiIHsgdGFyZ2V0IHsgbGUgfSB9IH0gfSAqLw0KKw0KK3R5 cGVkZWYgaW50IHY0c2kgX19hdHRyaWJ1dGVfXyAoKHZlY3Rvcl9zaXplICgxNikpKTsNCisNCisv Kg0KKyoqZm9vOg0KKyoqCWNtZ3QJdjAuNHMsIHYxLjRzLCB2MC40cw0KKyoqCWJzbAl2MC4xNmIs IHYyLjE2YiwgdjMuMTZiDQorKioJcmV0DQorKi8NCit2NHNpIGZvbyAodjRzaSBhLCB2NHNpIGIs IHY0c2kgYywgdjRzaSBkKSB7DQorICAgIHJldHVybiAoKGEgPCBiKSAmIGMpIHwgKChhID49IGIp ICYgZCk7DQorfQ0KKw0KKw0KKy8qKg0KKyoqYmFyOg0KKyoqLi4uDQorKioJY21nZQl2WzAtOV0r LjRzLCB2WzAtOV0rLjRzLCB2WzAtOV0rLjRzDQorKioJYnNsCXZbMC05XSsuMTZiLCB2WzAtOV0r LjE2YiwgdlswLTldKy4xNmINCisqKglhbmQJdlswLTldKy4xNmIsIHZbMC05XSsuMTZiLCB2WzAt OV0rLjE2Yg0KKyoqLi4uDQorKi8NCit2b2lkIGJhciAoaW50ICogcmVzdHJpY3QgYSwgaW50ICog cmVzdHJpY3QgYiwgaW50ICogcmVzdHJpY3QgYywNCisJICBpbnQgKiByZXN0cmljdCBkLCBpbnQg KiByZXN0cmljdCByZXMsIGludCBuKQ0KK3sNCisgIGZvciAoaW50IGkgPSAwOyBpIDwgKG4gJiAt NCk7IGkrKykNCisgICAgcmVzW2ldID0gKChhW2ldIDwgYltpXSkgJiBjW2ldKSB8ICgoYVtpXSA+ PSBiW2ldKSAmIGRbaV0pOw0KK30NCisNCg== --_002_VI1PR08MB5325D70879A8A0EAC2B3E3A2FF819VI1PR08MB5325eurp_ Content-Type: application/octet-stream; name="rb15679.patch" Content-Description: rb15679.patch Content-Disposition: attachment; filename="rb15679.patch"; size=5355; creation-date="Tue, 05 Jul 2022 15:06:31 GMT"; modification-date="Tue, 05 Jul 2022 15:15:58 GMT" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL2djYy9mb2xkLWNvbnN0LmNjIGIvZ2NjL2ZvbGQtY29uc3QuY2MKaW5kZXgg OTkwMjFhODJkZjQ5NzdiMTc5YjQ1ZGIwNGUzMDgzMDEyYzYzMDY3YS4uMDYyOGZmZDM5NTQxNmQ3 NGJjMDMxZTNlNGFjODI0Njg5NGNhNTY0ZCAxMDA2NDQKLS0tIGEvZ2NjL2ZvbGQtY29uc3QuY2MK KysrIGIvZ2NjL2ZvbGQtY29uc3QuY2MKQEAgLTI4MjksMjAgKzI4MjksNTUgQEAgY29tcGNvZGVf dG9fY29tcGFyaXNvbiAoZW51bSBjb21wYXJpc29uX2NvZGUgY29kZSkKICAgICB9CiB9CiAKKwor LyogSGVscGVyIG9mIGludmVyc2VfY29uZGl0aW9uX3AuICBSZXR1cm5zIFRSVUUgaWYgQ09ERTEg aXMgdGhlIGludmVyc2Ugb2YKKyAgIENPREUyIGFuZCBPUDAwID09IE9QMTAgYW5kIE9QMDEgPT0g T1AxMS4gICovCisKK3N0YXRpYyBib29sCitpbnZlcnNlX2NvbmRpdGlvbnNfcF8xIChlbnVtIHRy ZWVfY29kZSBjb2RlMSwgdHJlZSBvcDAwLCB0cmVlIG9wMDEsCisJCQllbnVtIHRyZWVfY29kZSBj b2RlMiwgdHJlZSBvcDEwLCB0cmVlIG9wMTEpCit7CisgIHJldHVybiAoaW52ZXJ0X3RyZWVfY29t cGFyaXNvbiAoY29kZTEsIEhPTk9SX05BTlMgKG9wMDApKSA9PSBjb2RlMikKKyAgICAgICYmIG9w ZXJhbmRfZXF1YWxfcCAob3AwMCwgb3AxMCwgMCkKKyAgICAgICYmIG9wZXJhbmRfZXF1YWxfcCAo b3AwMSwgb3AxMSwgMCk7Cit9CisKIC8qIFJldHVybiB0cnVlIGlmIENPTkQxIHRlc3RzIHRoZSBv cHBvc2l0ZSBjb25kaXRpb24gb2YgQ09ORDIuICAqLwogCiBib29sCiBpbnZlcnNlX2NvbmRpdGlv bnNfcCAoY29uc3RfdHJlZSBjb25kMSwgY29uc3RfdHJlZSBjb25kMikKIHsKLSAgcmV0dXJuIChD T01QQVJJU09OX0NMQVNTX1AgKGNvbmQxKQotCSAgJiYgQ09NUEFSSVNPTl9DTEFTU19QIChjb25k MikKLQkgICYmIChpbnZlcnRfdHJlZV9jb21wYXJpc29uCi0JICAgICAgKFRSRUVfQ09ERSAoY29u ZDEpLAotCSAgICAgICBIT05PUl9OQU5TIChUUkVFX09QRVJBTkQgKGNvbmQxLCAwKSkpID09IFRS RUVfQ09ERSAoY29uZDIpKQotCSAgJiYgb3BlcmFuZF9lcXVhbF9wIChUUkVFX09QRVJBTkQgKGNv bmQxLCAwKSwKLQkJCSAgICAgIFRSRUVfT1BFUkFORCAoY29uZDIsIDApLCAwKQotCSAgJiYgb3Bl cmFuZF9lcXVhbF9wIChUUkVFX09QRVJBTkQgKGNvbmQxLCAxKSwKLQkJCSAgICAgIFRSRUVfT1BF UkFORCAoY29uZDIsIDEpLCAwKSk7CisgIGlmIChDT01QQVJJU09OX0NMQVNTX1AgKGNvbmQxKQor ICAgICAgJiYgQ09NUEFSSVNPTl9DTEFTU19QIChjb25kMikKKyAgICAgICYmIGludmVyc2VfY29u ZGl0aW9uc19wXzEgKFRSRUVfQ09ERSAoY29uZDEpLAorCQkJCSBUUkVFX09QRVJBTkQgKGNvbmQx LCAwKSwKKwkJCQkgVFJFRV9PUEVSQU5EIChjb25kMSwgMSksCisJCQkJIFRSRUVfQ09ERSAoY29u ZDIpLAorCQkJCSBUUkVFX09QRVJBTkQgKGNvbmQyLCAwKSwKKwkJCQkgVFJFRV9PUEVSQU5EIChj b25kMiwgMSkpKQorICAgIHJldHVybiB0cnVlOworCisgIGlmIChUUkVFX0NPREUgKGNvbmQxKSA9 PSBTU0FfTkFNRQorICAgICAgJiYgVFJFRV9DT0RFIChjb25kMikgPT0gU1NBX05BTUUpCisgICAg eworICAgICAgZ2ltcGxlICpnY29uZDEgPSBTU0FfTkFNRV9ERUZfU1RNVCAoY29uZDEpOworICAg ICAgZ2ltcGxlICpnY29uZDIgPSBTU0FfTkFNRV9ERUZfU1RNVCAoY29uZDIpOworICAgICAgaWYg KCFpc19naW1wbGVfYXNzaWduIChnY29uZDEpIHx8ICFpc19naW1wbGVfYXNzaWduIChnY29uZDIp KQorCXJldHVybiBmYWxzZTsKKworICAgICAgdHJlZV9jb2RlIGNvZGUxID0gZ2ltcGxlX2Fzc2ln bl9yaHNfY29kZSAoZ2NvbmQxKTsKKyAgICAgIHRyZWVfY29kZSBjb2RlMiA9IGdpbXBsZV9hc3Np Z25fcmhzX2NvZGUgKGdjb25kMik7CisgICAgICByZXR1cm4gVFJFRV9DT0RFX0NMQVNTIChjb2Rl MSkgPT0gdGNjX2NvbXBhcmlzb24KKwkgICAgICYmIFRSRUVfQ09ERV9DTEFTUyAoY29kZTIpID09 IHRjY19jb21wYXJpc29uCisJICAgICAmJiBpbnZlcnNlX2NvbmRpdGlvbnNfcF8xIChjb2RlMSwK KwkJCQkJZ2ltcGxlX2FyZyAoZ2NvbmQxLCAwKSwKKwkJCQkJZ2ltcGxlX2FyZyAoZ2NvbmQxLCAx KSwKKwkJCQkJY29kZTIsCisJCQkJCWdpbXBsZV9hcmcgKGdjb25kMiwgMCksCisJCQkJCWdpbXBs ZV9hcmcgKGdjb25kMiwgMSkpOworICAgIH0KKworICByZXR1cm4gZmFsc2U7CiB9CiAKIC8qIFJl dHVybiBhIHRyZWUgZm9yIHRoZSBjb21wYXJpc29uIHdoaWNoIGlzIHRoZSBjb21iaW5hdGlvbiBv ZgpkaWZmIC0tZ2l0IGEvZ2NjL21hdGNoLnBkIGIvZ2NjL21hdGNoLnBkCmluZGV4IDI0Y2JiYmI1 YmMxZDcxOGJkMDNhZjc3MTJmYzcyNTUyMTNmMmE3NDIuLjBhNDU5ZjI4MDRlMjk2ZjQzMzZhZWU3 MGUzNTFkZGM0NTQ4NmM4NjcgMTAwNjQ0Ci0tLSBhL2djYy9tYXRjaC5wZAorKysgYi9nY2MvbWF0 Y2gucGQKQEAgLTE4NzIsNiArMTg3MiwzMCBAQCBERUZJTkVfSU5UX0FORF9GTE9BVF9ST1VORF9G TiAoUklOVCkKICAoaWYgKElOVEVHUkFMX1RZUEVfUCAodHlwZSkpCiAgIChiaXRfYW5kIEAwIEAx KSkpCiAKKy8qIEZvbGQgKCgoYSA8IGIpICYgYykgfCAoKGEgPj0gYikgJiBkKSkgaW50byAoYSA8 IGIgPyBjIDogZCkgJiAxLgorICAgYW5kIHZlY3RvciBGb2xkICgoKGEgPCBiKSAmIGMpIHwgKChh ID49IGIpICYgZCkpIGludG8gYSA8IGIgPyBjIDogZC4gKi8KKyhzaW1wbGlmeQorIChiaXRfaW9y CisgIChiaXRfYW5kOmMgKGNvbnZlcnQ/IHplcm9fb25lX3ZhbHVlZF9wQDApIEAyKQorICAoYml0 X2FuZDpjIChjb252ZXJ0PyB6ZXJvX29uZV92YWx1ZWRfcEAxKSBAMykpCisgICAoaWYgKElOVEVH UkFMX1RZUEVfUCAodHlwZSkKKwkmJiBpbnZlcnNlX2NvbmRpdGlvbnNfcCAoQDAsIEAxKQorCS8q IFRoZSBzY2FsYXIgdmVyc2lvbiBoYXMgdG8gYmUgY2Fub25pY2FsaXplZCBhZnRlciB2ZWN0b3Jp emF0aW9uCisJICAgYmVjYXVzZSBpdCBtYWtlcyB1bmNvbmRpdGlvbmFsIGxvYWRzIGNvbmRpdGlv bmFsIG9uZXMsIHdoaWNoCisJICAgbWVhbnMgd2UgbG9zZSB2ZWN0b3JpemF0aW9uIGJlY2F1c2Ug dGhlIGxvYWRzIG1heSB0cmFwLiAgKi8KKwkmJiBjYW5vbmljYWxpemVfbWF0aF9hZnRlcl92ZWN0 b3JpemF0aW9uX3AgKCkpCisgICAgKGJpdF9hbmQgKGNvbmQgQDAgQDIgQDMpIHsgYnVpbGRfb25l X2NzdCAodHlwZSk7IH0pKSkKKyhzaW1wbGlmeQorIChiaXRfaW9yCisgIChiaXRfYW5kOmMgKHZl Y19jb25kOnMgQDAgQDQgaW50ZWdlcl96ZXJvcCkgQDIpCisgIChiaXRfYW5kOmMgKHZlY19jb25k OnMgQDEgQDQgaW50ZWdlcl96ZXJvcCkgQDMpKQorICAgKGlmIChpbnZlcnNlX2NvbmRpdGlvbnNf cCAoQDAsIEAxKSkKKyAgICAoc3dpdGNoCisgICAgIChpZiAoaW50ZWdlcl9vbmVwIChANCkpCisg ICAgICAoYml0X2FuZCAodmVjX2NvbmQgQDAgQDIgQDMpIEA0KSkKKyAgICAgKGlmIChpbnRlZ2Vy X21pbnVzX29uZXAgKEA0KSkKKyAgICAgICh2ZWNfY29uZCBAMCBAMiBAMykpKSkpCisKIC8qIFRy YW5zZm9ybSBYICYgLVkgaW50byBYICogWSB3aGVuIFkgaXMgeyAwIG9yIDEgfS4gICovCiAoc2lt cGxpZnkKICAoYml0X2FuZDpjIChjb252ZXJ0PyAobmVnYXRlIHplcm9fb25lX3ZhbHVlZF9wQDAp KSBAMSkKZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9hYXJjaDY0L2lmLWNv bXBhcmVfMS5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2FhcmNoNjQvaWYtY29tcGFyZV8x LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMC4uMDVhMTI5MmZhOTBjNzBiMTRhNzk4NTEyMmY0MzcxMWY1NWQwNDdlYQot LS0gL2Rldi9udWxsCisrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9hYXJjaDY0L2lmLWNv bXBhcmVfMS5jCkBAIC0wLDAgKzEsMTYgQEAKKy8qIHsgZGctZG8gY29tcGlsZSB9ICovCisvKiB7 IGRnLWFkZGl0aW9uYWwtb3B0aW9ucyAiLU8iIH0gKi8KKy8qIHsgZGctZmluYWwgeyBjaGVjay1m dW5jdGlvbi1ib2RpZXMgIioqIiAiIiAiIiB7IHRhcmdldCB7IGxlIH0gfSB9IH0gKi8KKworLyoK Kyoqem9vMjoKKyoqCWNtcAl3MCwgdzEKKyoqCWNzZWwJdzAsIHcyLCB3MywgbHQKKyoqCWFuZAl3 MCwgdzAsIDEKKyoqCXJldAorKi8KK2ludCB6b28yIChpbnQgYSwgaW50IGIsIGludCBjLCBpbnQg ZCkKK3sKKyAgIHJldHVybiAoKGEgPCBiKSAmIGMpIHwgKChhID49IGIpICYgZCk7Cit9CisKZGlm ZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9hYXJjaDY0L2lmLWNvbXBhcmVfMi5j IGIvZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2FhcmNoNjQvaWYtY29tcGFyZV8yLmMKbmV3IGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMC4uMzRiYzY1ZjVkYjEwZWFlODFiOGRlZTMzMTZkZmI3ZDEyYmY0NzFjOAotLS0gL2Rldi9u dWxsCisrKyBiL2djYy90ZXN0c3VpdGUvZ2NjLnRhcmdldC9hYXJjaDY0L2lmLWNvbXBhcmVfMi5j CkBAIC0wLDAgKzEsMzIgQEAKKy8qIHsgZGctZG8gY29tcGlsZSB9ICovCisvKiB7IGRnLWFkZGl0 aW9uYWwtb3B0aW9ucyAiLU8zIC1zdGQ9Yzk5IiB9ICovCisvKiB7IGRnLWZpbmFsIHsgY2hlY2st ZnVuY3Rpb24tYm9kaWVzICIqKiIgIiIgIiIgeyB0YXJnZXQgeyBsZSB9IH0gfSB9ICovCisKK3R5 cGVkZWYgaW50IHY0c2kgX19hdHRyaWJ1dGVfXyAoKHZlY3Rvcl9zaXplICgxNikpKTsKKworLyoK KyoqZm9vOgorKioJY21ndAl2MC40cywgdjEuNHMsIHYwLjRzCisqKglic2wJdjAuMTZiLCB2Mi4x NmIsIHYzLjE2YgorKioJcmV0CisqLwordjRzaSBmb28gKHY0c2kgYSwgdjRzaSBiLCB2NHNpIGMs IHY0c2kgZCkgeworICAgIHJldHVybiAoKGEgPCBiKSAmIGMpIHwgKChhID49IGIpICYgZCk7Cit9 CisKKworLyoqCisqKmJhcjoKKyoqLi4uCisqKgljbWdlCXZbMC05XSsuNHMsIHZbMC05XSsuNHMs IHZbMC05XSsuNHMKKyoqCWJzbAl2WzAtOV0rLjE2YiwgdlswLTldKy4xNmIsIHZbMC05XSsuMTZi CisqKglhbmQJdlswLTldKy4xNmIsIHZbMC05XSsuMTZiLCB2WzAtOV0rLjE2YgorKiouLi4KKyov Cit2b2lkIGJhciAoaW50ICogcmVzdHJpY3QgYSwgaW50ICogcmVzdHJpY3QgYiwgaW50ICogcmVz dHJpY3QgYywKKwkgIGludCAqIHJlc3RyaWN0IGQsIGludCAqIHJlc3RyaWN0IHJlcywgaW50IG4p Cit7CisgIGZvciAoaW50IGkgPSAwOyBpIDwgKG4gJiAtNCk7IGkrKykKKyAgICByZXNbaV0gPSAo KGFbaV0gPCBiW2ldKSAmIGNbaV0pIHwgKChhW2ldID49IGJbaV0pICYgZFtpXSk7Cit9CisK --_002_VI1PR08MB5325D70879A8A0EAC2B3E3A2FF819VI1PR08MB5325eurp_--