From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 0B5C542C39; Tue, 6 Jun 2023 05:16:49 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 8C49740A84; Tue, 6 Jun 2023 05:16:48 +0200 (CEST) Received: from EUR03-AM7-obe.outbound.protection.outlook.com (mail-am7eur03on2047.outbound.protection.outlook.com [40.107.105.47]) by mails.dpdk.org (Postfix) with ESMTP id 5EE56406B7 for ; Tue, 6 Jun 2023 05:16:47 +0200 (CEST) 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=It0ISbAEEJFiyXBudD8lPxSifqb08wgUzKsi6pFN0Ks=; b=ucQF7vcg3KqfaoXPgvLDPnVmDqsR/n+QczFItqypMoZpnULnTULINnBK7udjHjywyMGLm06HeauyABb7P6nMy1XAKv6jFNCvz70nxbE4qvm95lfPwJQL7WPD9/0MHWFXZyWAnQplUZlScUR1Wbr5+WqqtHiFPGHn/zYFPM5bKWs= Received: from AS9PR05CA0167.eurprd05.prod.outlook.com (2603:10a6:20b:496::26) by PAXPR08MB6413.eurprd08.prod.outlook.com (2603:10a6:102:de::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Tue, 6 Jun 2023 03:16:44 +0000 Received: from AM7EUR03FT045.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:496:cafe::32) by AS9PR05CA0167.outlook.office365.com (2603:10a6:20b:496::26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32 via Frontend Transport; Tue, 6 Jun 2023 03:16:44 +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 AM7EUR03FT045.mail.protection.outlook.com (100.127.140.150) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6477.19 via Frontend Transport; Tue, 6 Jun 2023 03:16:44 +0000 Received: ("Tessian outbound 3a01b65b5aad:v136"); Tue, 06 Jun 2023 03:16:44 +0000 X-CR-MTA-TID: 64aa7808 Received: from 6094e2d8a0d2.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id C1CC43C2-83B4-41F3-A7FE-EA8BD0A6F63A.1; Tue, 06 Jun 2023 03:16:38 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id 6094e2d8a0d2.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Tue, 06 Jun 2023 03:16:38 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KvbRh7fsxyBDajccH3NeUv5Bn7zNP3Z578Bugk5qdxy5FVWsD/wGMVY+CxI23SBYrTkR+BfC36PaPIToADm4IUuKXJoAXcroSjE046BvhuYsZPjAYe4yZz3oXHRTWBKS0cID6xPyeDLMwPR67+BE4DmmlK33KuEsT3TG25opCsbWlsuoTdotLurV/w32Xvy3v/dy2Ou8JlxAmBaKGuX51SNMX8Uic8wCkXjLOAaOOozC9tdPKWH4zZYfQZ7cVbrygSwWxjv14wWfX9cQfKCfEwicZS0A4bD5jqW83XVwf5oeTmmoFQ5oXzj6tU2w2EqVwAGrpjCk6fURUlzvqqJJPg== 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=It0ISbAEEJFiyXBudD8lPxSifqb08wgUzKsi6pFN0Ks=; b=TR78+teShC3ei1+fKp5nIr7nmbpiEU7uwqWkI04yD+GWvYTj2HVn859DKHjoaVTuEpmO3ogsjt3/MkurpSwI0ToFgkYy28TAyDX/bVO2dsc18U4ZVemavjVGVCi+i7ARKzHdAWwQMRgQRGdtJXvT4dRrNnueYj1JjD6PROJdNn8ha0jVY4BmKNR2oIzXumEAioSiW8q0pwgJb2Oi8ujVIzDgyV0V7HuEvPliFcy7OLZSrZJSvVxc7Cbi3JszPAWLjfe5ypId3W98PdE/BEogICsx6gwzIL68hbDLIcpOXCEurWjAWS7hcjs/H8CFpv8nyO/vMRqDs1FBzKYwdwDILw== 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=It0ISbAEEJFiyXBudD8lPxSifqb08wgUzKsi6pFN0Ks=; b=ucQF7vcg3KqfaoXPgvLDPnVmDqsR/n+QczFItqypMoZpnULnTULINnBK7udjHjywyMGLm06HeauyABb7P6nMy1XAKv6jFNCvz70nxbE4qvm95lfPwJQL7WPD9/0MHWFXZyWAnQplUZlScUR1Wbr5+WqqtHiFPGHn/zYFPM5bKWs= Received: from AS8PR08MB7718.eurprd08.prod.outlook.com (2603:10a6:20b:50a::22) by AS8PR08MB7306.eurprd08.prod.outlook.com (2603:10a6:20b:441::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6455.32; Tue, 6 Jun 2023 03:16:36 +0000 Received: from AS8PR08MB7718.eurprd08.prod.outlook.com ([fe80::7878:ff5f:b10:d4a6]) by AS8PR08MB7718.eurprd08.prod.outlook.com ([fe80::7878:ff5f:b10:d4a6%7]) with mapi id 15.20.6455.030; Tue, 6 Jun 2023 03:16:35 +0000 From: Feifei Wang To: =?utf-8?B?0JrQvtC90YHRgtCw0L3RgtC40L0g0JDQvdCw0L3RjNC10LI=?= , Yuying Zhang , Beilei Xing CC: "dev@dpdk.org" , nd , Honnappa Nagarahalli , Ruifeng Wang , nd Subject: RE: [PATCH v6 2/4] net/i40e: implement mbufs recycle mode Thread-Topic: [PATCH v6 2/4] net/i40e: implement mbufs recycle mode Thread-Index: AQHZju26BCWN8yrWhUufQwrmL+nGkq98PjcAgADrXGA= Date: Tue, 6 Jun 2023 03:16:35 +0000 Message-ID: References: <20211224164613.32569-1-feifei.wang2@arm.com> <20230525094541.331338-1-feifei.wang2@arm.com> <20230525094541.331338-3-feifei.wang2@arm.com> <1580121685969644@mail.yandex.ru> In-Reply-To: <1580121685969644@mail.yandex.ru> Accept-Language: zh-CN, en-US Content-Language: zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ts-tracking-id: 3CFCF3A4C394AC459B1B0BC65BF9D219.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-traffictypediagnostic: AS8PR08MB7718:EE_|AS8PR08MB7306:EE_|AM7EUR03FT045:EE_|PAXPR08MB6413:EE_ X-MS-Office365-Filtering-Correlation-Id: 06f567bf-c911-4d3b-cec9-08db663c7499 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: xYcISgT68ormobA1w2BZLDEyEVbtSbPf3Dy8CpZOkf5+bq8sjH2dRlAzNsgeAwCR9jaIJicva4cK/Ic8GY/S0FPLEYLsfU/ELcy0ImmaicreYnjbslSX7XfBqQt7i2NbTNTFmjCeCPYZb+GUo/GL2wswTWTxrYrQ0NzLY33IVdRDf7RaeTce/vjXXgmksbZ1PmA3NyawYLR1XYoEUjxv/2Aw2UKTyGpWwd9DTb/Q65UJRi/QDNH7ZG3AgGOcj/76BTIjc5zn+lYqZn7jEPWYWC+gzcvAVsfdCdqsGcupYI8lajucFQltDAvxAQKabs2TwDD7wZzdiXrktg+89ZIBYFBZ+ZquA40n9QMwWuxgwOD8Xney4rjsPG71VycXKz5Qzv3+sn7Kheo8MVxkgDS/jFMce4q7qEFEpkU2BmBqsyP/BA7lWi8xlZ88mClgYRAsqqKgA8Ip1EnMGnanmKUeborFe+2wSb4tlQYCDr3Bg/fP62mOA7JAfkpBhWpw2u8nTPcHOWbuTYpt95o8Q1pvOGXou1+pnb0+iWH70qgdqU6pCjeVPNuwLV8EppDJhazy+ggyhpICkkaI+5PKOworaDB2dZI7yfb3BqyE3pJjTKFc9sv10IcJ98Hxxlts1XWzqmYD0/+6LqpVKRlBUFc4mQ== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AS8PR08MB7718.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230028)(4636009)(39860400002)(376002)(366004)(136003)(346002)(396003)(451199021)(53546011)(9686003)(26005)(66446008)(66946007)(6506007)(316002)(83380400001)(66556008)(4326008)(66476007)(122000001)(76116006)(64756008)(7696005)(186003)(38070700005)(33656002)(478600001)(71200400001)(54906003)(110136005)(2906002)(30864003)(5660300002)(8936002)(8676002)(55016003)(86362001)(52536014)(41300700001)(38100700002)(23180200003); DIR:OUT; SFP:1101; Content-Type: multipart/alternative; boundary="_000_AS8PR08MB7718CC0E3296731322F0FFF2C852AAS8PR08MB7718eurp_" MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB7306 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: AM7EUR03FT045.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 58f99e52-248d-4aa4-40da-08db663c6f91 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: IYISM71Pm3PjPA2HzoOdAgefPTdEbM0BErgEEiJY8lMSF+SGbSzJ7dJDPaJ5DS6aikfOGAH3RH9hA0qMy/byN0xdf2MLWQEhqqyUKsbqHZV0iucBJd439CHz2uB0LDWWbFTzyo4e4RIDxG8ZW6kji+WntrAjKUdEwCN/TI4FnDI+xGbwarJ6RbR8vODVCQLriMwTTn8CdIgrGIUuxJA0gnAbELYw1AQvn9PTpxUFVqqc0tRVFavsKOtoAkrU/KtI1V/n5FRzaL1/UVOmUnCJQYDuUjBTU7J8r5qgoDC68/VXXmZZf4jAFPJ8jCT4wM1D3ENg7L4IvdeJD7+tspKCUeLfP4vulj/H+JhFgooiOndvkn51kEzew0W0ckEoHP5/2oqKz6YVEfZQJbncFVxZ0yekFK9/3dfMi1yEWKE271a+iYSVerg5JyqEZn3f2z6W1wR5cTh6xTuoRYRP3WaqW/4/i/F+YOZH1UjTeSX6f2GJljIFcCDXxedarrstONSPOmZUmpiicWEBq405EcjkqgaSAFrrc+rT6ajOKz9o/tJRD3+G21PLBR/ZardIaO/TA1PNZcjqXx5VAwe4X5BkkaZ1JAlaAec8HtZV0zXIJiNXkXKiiAz6tOeniqcKukKb7fJ2CUi2gTnWF59FQGelIlj7o07mhVxjzgsUEZZDoGP69xSMzlcxbyCGmDCqw87zD/955X1tct18QfT1bvK0d4Y6u4Bq8CC62Q6s8hcODauxKoBLyC4kXL7aovCx8ixgIo4WY30/1LQ1vxgXlaXBOg== 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:(13230028)(4636009)(39860400002)(396003)(136003)(346002)(376002)(451199021)(36840700001)(40470700004)(46966006)(186003)(83380400001)(40460700003)(47076005)(336012)(30864003)(2906002)(86362001)(82310400005)(33656002)(81166007)(82740400003)(356005)(36860700001)(40480700001)(55016003)(316002)(33964004)(52536014)(41300700001)(5660300002)(8936002)(8676002)(54906003)(110136005)(7696005)(478600001)(4326008)(70206006)(70586007)(6506007)(53546011)(9686003)(26005)(23180200003); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Jun 2023 03:16:44.2583 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 06f567bf-c911-4d3b-cec9-08db663c7499 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: AM7EUR03FT045.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAXPR08MB6413 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org --_000_AS8PR08MB7718CC0E3296731322F0FFF2C852AAS8PR08MB7718eurp_ Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 DQoNCkZyb206INCa0L7QvdGB0YLQsNC90YLQuNC9INCQ0L3QsNC90YzQtdCyIDxrb25zdGFudGlu LnYuYW5hbnlldkB5YW5kZXgucnU+DQpTZW50OiBNb25kYXksIEp1bmUgNSwgMjAyMyA5OjAzIFBN DQpUbzogRmVpZmVpIFdhbmcgPEZlaWZlaS5XYW5nMkBhcm0uY29tPjsgWXV5aW5nIFpoYW5nIDx5 dXlpbmcuemhhbmdAaW50ZWwuY29tPjsgQmVpbGVpIFhpbmcgPGJlaWxlaS54aW5nQGludGVsLmNv bT4NCkNjOiBkZXZAZHBkay5vcmc7IG5kIDxuZEBhcm0uY29tPjsgSG9ubmFwcGEgTmFnYXJhaGFs bGkgPEhvbm5hcHBhLk5hZ2FyYWhhbGxpQGFybS5jb20+OyBSdWlmZW5nIFdhbmcgPFJ1aWZlbmcu V2FuZ0Bhcm0uY29tPg0KU3ViamVjdDogUmU6IFtQQVRDSCB2NiAyLzRdIG5ldC9pNDBlOiBpbXBs ZW1lbnQgbWJ1ZnMgcmVjeWNsZSBtb2RlDQoNCg0KDQoNCg0KRGVmaW5lIHNwZWNpZmljIGZ1bmN0 aW9uIGltcGxlbWVudGF0aW9uIGZvciBpNDBlIGRyaXZlci4NCkN1cnJlbnRseSwgbWJ1ZnMgcmVj eWNsZSBtb2RlIGNhbiBzdXBwb3J0IDEyOGJpdA0KdmVjdG9yIHBhdGggYW5kIGF2eDIgcGF0aC4g QW5kIGNhbiBiZSBlbmFibGVkIGJvdGggaW4NCmZhc3QgZnJlZSBhbmQgbm8gZmFzdCBmcmVlIG1v ZGUuDQoNClN1Z2dlc3RlZC1ieTogSG9ubmFwcGEgTmFnYXJhaGFsbGkgPGhvbm5hcHBhLm5hZ2Fy YWhhbGxpQGFybS5jb208bWFpbHRvOmhvbm5hcHBhLm5hZ2FyYWhhbGxpQGFybS5jb20+Pg0KU2ln bmVkLW9mZi1ieTogRmVpZmVpIFdhbmcgPGZlaWZlaS53YW5nMkBhcm0uY29tPG1haWx0bzpmZWlm ZWkud2FuZzJAYXJtLmNvbT4+DQpSZXZpZXdlZC1ieTogUnVpZmVuZyBXYW5nIDxydWlmZW5nLndh bmdAYXJtLmNvbTxtYWlsdG86cnVpZmVuZy53YW5nQGFybS5jb20+Pg0KUmV2aWV3ZWQtYnk6IEhv bm5hcHBhIE5hZ2FyYWhhbGxpIDxob25uYXBwYS5uYWdhcmFoYWxsaUBhcm0uY29tPG1haWx0bzpo b25uYXBwYS5uYWdhcmFoYWxsaUBhcm0uY29tPj4NCi0tLQ0KIGRyaXZlcnMvbmV0L2k0MGUvaTQw ZV9ldGhkZXYuYyB8IDEgKw0KIGRyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuaCB8IDIgKw0K IC4uLi9uZXQvaTQwZS9pNDBlX3JlY3ljbGVfbWJ1ZnNfdmVjX2NvbW1vbi5jIHwgMTQwICsrKysr KysrKysrKysrKysrKw0KIGRyaXZlcnMvbmV0L2k0MGUvaTQwZV9yeHR4LmMgfCAzMiArKysrDQog ZHJpdmVycy9uZXQvaTQwZS9pNDBlX3J4dHguaCB8IDQgKw0KIGRyaXZlcnMvbmV0L2k0MGUvbWVz b24uYnVpbGQgfCAyICsNCiA2IGZpbGVzIGNoYW5nZWQsIDE4MSBpbnNlcnRpb25zKCspDQogY3Jl YXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvbmV0L2k0MGUvaTQwZV9yZWN5Y2xlX21idWZzX3ZlY19j b21tb24uYw0KDQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jIGIv ZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jDQppbmRleCBmOWQ4Zjk3OTFmLi5kNGVlY2Qx NmNmIDEwMDY0NA0KLS0tIGEvZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jDQorKysgYi9k cml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmMNCkBAIC00OTYsNiArNDk2LDcgQEAgc3RhdGlj IGNvbnN0IHN0cnVjdCBldGhfZGV2X29wcyBpNDBlX2V0aF9kZXZfb3BzID0gew0KICAgICAgICAg LmZsb3dfb3BzX2dldCA9IGk0MGVfZGV2X2Zsb3dfb3BzX2dldCwNCiAgICAgICAgIC5yeHFfaW5m b19nZXQgPSBpNDBlX3J4cV9pbmZvX2dldCwNCiAgICAgICAgIC50eHFfaW5mb19nZXQgPSBpNDBl X3R4cV9pbmZvX2dldCwNCisgLnJlY3ljbGVfcnhxX2luZm9fZ2V0ID0gaTQwZV9yZWN5Y2xlX3J4 cV9pbmZvX2dldCwNCiAgICAgICAgIC5yeF9idXJzdF9tb2RlX2dldCA9IGk0MGVfcnhfYnVyc3Rf bW9kZV9nZXQsDQogICAgICAgICAudHhfYnVyc3RfbW9kZV9nZXQgPSBpNDBlX3R4X2J1cnN0X21v ZGVfZ2V0LA0KICAgICAgICAgLnRpbWVzeW5jX2VuYWJsZSA9IGk0MGVfdGltZXN5bmNfZW5hYmxl LA0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuaCBiL2RyaXZlcnMv bmV0L2k0MGUvaTQwZV9ldGhkZXYuaA0KaW5kZXggOWI4MDZkMTMwZS4uYjViMmQ2Y2YyYiAxMDA2 NDQNCi0tLSBhL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuaA0KKysrIGIvZHJpdmVycy9u ZXQvaTQwZS9pNDBlX2V0aGRldi5oDQpAQCAtMTM1NSw2ICsxMzU1LDggQEAgdm9pZCBpNDBlX3J4 cV9pbmZvX2dldChzdHJ1Y3QgcnRlX2V0aF9kZXYgKmRldiwgdWludDE2X3QgcXVldWVfaWQsDQog ICAgICAgICBzdHJ1Y3QgcnRlX2V0aF9yeHFfaW5mbyAqcWluZm8pOw0KIHZvaWQgaTQwZV90eHFf aW5mb19nZXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYsIHVpbnQxNl90IHF1ZXVlX2lkLA0KICAg ICAgICAgc3RydWN0IHJ0ZV9ldGhfdHhxX2luZm8gKnFpbmZvKTsNCit2b2lkIGk0MGVfcmVjeWNs ZV9yeHFfaW5mb19nZXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYsIHVpbnQxNl90IHF1ZXVlX2lk LA0KKyBzdHJ1Y3QgcnRlX2V0aF9yZWN5Y2xlX3J4cV9pbmZvICpyZWN5Y2xlX3J4cV9pbmZvKTsN CiBpbnQgaTQwZV9yeF9idXJzdF9tb2RlX2dldChzdHJ1Y3QgcnRlX2V0aF9kZXYgKmRldiwgdWlu dDE2X3QgcXVldWVfaWQsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RydWN0IHJ0ZV9l dGhfYnVyc3RfbW9kZSAqbW9kZSk7DQogaW50IGk0MGVfdHhfYnVyc3RfbW9kZV9nZXQoc3RydWN0 IHJ0ZV9ldGhfZGV2ICpkZXYsIHVpbnQxNl90IHF1ZXVlX2lkLA0KZGlmZiAtLWdpdCBhL2RyaXZl cnMvbmV0L2k0MGUvaTQwZV9yZWN5Y2xlX21idWZzX3ZlY19jb21tb24uYyBiL2RyaXZlcnMvbmV0 L2k0MGUvaTQwZV9yZWN5Y2xlX21idWZzX3ZlY19jb21tb24uYw0KbmV3IGZpbGUgbW9kZSAxMDA2 NDQNCmluZGV4IDAwMDAwMDAwMDAuLjA4ZDcwOGZkN2QNCi0tLSAvZGV2L251bGwNCisrKyBiL2Ry aXZlcnMvbmV0L2k0MGUvaTQwZV9yZWN5Y2xlX21idWZzX3ZlY19jb21tb24uYw0KQEAgLTAsMCAr MSwxNDAgQEANCisvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlDQorICog Q29weXJpZ2h0IChjKSAyMDIzIEFybSBMaW1pdGVkLg0KKyAqLw0KKw0KKyNpbmNsdWRlIDxzdGRp bnQuaD4NCisjaW5jbHVkZSA8ZXRoZGV2X2RyaXZlci5oPg0KKw0KKyNpbmNsdWRlICJiYXNlL2k0 MGVfcHJvdG90eXBlLmgiDQorI2luY2x1ZGUgImJhc2UvaTQwZV90eXBlLmgiDQorI2luY2x1ZGUg Imk0MGVfZXRoZGV2LmgiDQorI2luY2x1ZGUgImk0MGVfcnh0eC5oIg0KKw0KKyNwcmFnbWEgR0ND IGRpYWdub3N0aWMgaWdub3JlZCAiLVdjYXN0LXF1YWwiDQorDQordm9pZA0KK2k0MGVfcmVjeWNs ZV9yeF9kZXNjcmlwdG9yc19yZWZpbGxfdmVjKHZvaWQgKnJ4X3F1ZXVlLCB1aW50MTZfdCBuYl9t YnVmcykNCit7DQorIHN0cnVjdCBpNDBlX3J4X3F1ZXVlICpyeHEgPSByeF9xdWV1ZTsNCisgc3Ry dWN0IGk0MGVfcnhfZW50cnkgKnJ4ZXA7DQorIHZvbGF0aWxlIHVuaW9uIGk0MGVfcnhfZGVzYyAq cnhkcDsNCisgdWludDE2X3QgcnhfaWQ7DQorIHVpbnQ2NF90IHBhZGRyOw0KKyB1aW50NjRfdCBk bWFfYWRkcjsNCisgdWludDE2X3QgaTsNCisNCisgcnhkcCA9IHJ4cS0+cnhfcmluZyArIHJ4cS0+ cnhyZWFybV9zdGFydDsNCisgcnhlcCA9ICZyeHEtPnN3X3JpbmdbcnhxLT5yeHJlYXJtX3N0YXJ0 XTsNCisNCisgZm9yIChpID0gMDsgaSA8IG5iX21idWZzOyBpKyspIHsNCisgLyogSW5pdGlhbGl6 ZSByeGRwIGRlc2NzLiAqLw0KKyBwYWRkciA9IChyeGVwW2ldLm1idWYpLT5idWZfaW92YSArIFJU RV9QS1RNQlVGX0hFQURST09NOw0KKyBkbWFfYWRkciA9IHJ0ZV9jcHVfdG9fbGVfNjQocGFkZHIp Ow0KKyAvKiBmbHVzaCBkZXNjIHdpdGggcGEgZG1hX2FkZHIgKi8NCisgcnhkcFtpXS5yZWFkLmhk cl9hZGRyID0gMDsNCisgcnhkcFtpXS5yZWFkLnBrdF9hZGRyID0gZG1hX2FkZHI7DQorIH0NCisN CisgLyogVXBkYXRlIHRoZSBkZXNjcmlwdG9yIGluaXRpYWxpemVyIGluZGV4ICovDQorIHJ4cS0+ cnhyZWFybV9zdGFydCArPSBuYl9tYnVmczsNCisgcnhfaWQgPSByeHEtPnJ4cmVhcm1fc3RhcnQg LSAxOw0KKw0KKyBpZiAodW5saWtlbHkocnhxLT5yeHJlYXJtX3N0YXJ0ID49IHJ4cS0+bmJfcnhf ZGVzYykpIHsNCisgcnhxLT5yeHJlYXJtX3N0YXJ0ID0gMDsNCisgcnhfaWQgPSByeHEtPm5iX3J4 X2Rlc2MgLSAxOw0KKyB9DQorDQorIHJ4cS0+cnhyZWFybV9uYiAtPSBuYl9tYnVmczsNCisNCisg cnRlX2lvX3dtYigpOw0KKyAvKiBVcGRhdGUgdGhlIHRhaWwgcG9pbnRlciBvbiB0aGUgTklDICov DQorIEk0MEVfUENJX1JFR19XUklURV9SRUxBWEVEKHJ4cS0+cXJ4X3RhaWwsIHJ4X2lkKTsNCit9 DQorDQordWludDE2X3QNCitpNDBlX3JlY3ljbGVfdHhfbWJ1ZnNfcmV1c2VfdmVjKHZvaWQgKnR4 X3F1ZXVlLA0KKyBzdHJ1Y3QgcnRlX2V0aF9yZWN5Y2xlX3J4cV9pbmZvICpyZWN5Y2xlX3J4cV9p bmZvKQ0KK3sNCisgc3RydWN0IGk0MGVfdHhfcXVldWUgKnR4cSA9IHR4X3F1ZXVlOw0KKyBzdHJ1 Y3QgaTQwZV90eF9lbnRyeSAqdHhlcDsNCisgc3RydWN0IHJ0ZV9tYnVmICoqcnhlcDsNCisgc3Ry dWN0IHJ0ZV9tYnVmICptW1JURV9JNDBFX1RYX01BWF9GUkVFX0JVRl9TWl07DQorIGludCBpLCBq LCBuOw0KKyB1aW50MTZfdCBhdmFpbCA9IDA7DQorIHVpbnQxNl90IG1idWZfcmluZ19zaXplID0g cmVjeWNsZV9yeHFfaW5mby0+bWJ1Zl9yaW5nX3NpemU7DQorIHVpbnQxNl90IG1hc2sgPSByZWN5 Y2xlX3J4cV9pbmZvLT5tYnVmX3Jpbmdfc2l6ZSAtIDE7DQorIHVpbnQxNl90IHJlZmlsbF9yZXF1 aXJlbWVudCA9IHJlY3ljbGVfcnhxX2luZm8tPnJlZmlsbF9yZXF1aXJlbWVudDsNCisgdWludDE2 X3QgcmVmaWxsX2hlYWQgPSAqcmVjeWNsZV9yeHFfaW5mby0+cmVmaWxsX2hlYWQ7DQorIHVpbnQx Nl90IHJlY2VpdmVfdGFpbCA9ICpyZWN5Y2xlX3J4cV9pbmZvLT5yZWNlaXZlX3RhaWw7DQorDQor IC8qIEdldCBhdmFpbGFibGUgcmVjeWNsaW5nIFJ4IGJ1ZmZlcnMuICovDQorIGF2YWlsID0gKG1i dWZfcmluZ19zaXplIC0gKHJlZmlsbF9oZWFkIC0gcmVjZWl2ZV90YWlsKSkgJiBtYXNrOw0KKw0K KyAvKiBDaGVjayBUeCBmcmVlIHRocmVzaCBhbmQgUnggYXZhaWxhYmxlIHNwYWNlLiAqLw0KKyBp ZiAodHhxLT5uYl90eF9mcmVlID4gdHhxLT50eF9mcmVlX3RocmVzaCB8fCBhdmFpbCA8PSB0eHEt PnR4X3JzX3RocmVzaCkNCisgcmV0dXJuIDA7DQorDQorIC8qIGNoZWNrIEREIGJpdHMgb24gdGhy ZXNob2xkIGRlc2NyaXB0b3IgKi8NCisgaWYgKCh0eHEtPnR4X3JpbmdbdHhxLT50eF9uZXh0X2Rk XS5jbWRfdHlwZV9vZmZzZXRfYnN6ICYNCisgcnRlX2NwdV90b19sZV82NChJNDBFX1RYRF9RVzFf RFRZUEVfTUFTSykpICE9DQorIHJ0ZV9jcHVfdG9fbGVfNjQoSTQwRV9UWF9ERVNDX0RUWVBFX0RF U0NfRE9ORSkpDQorIHJldHVybiAwOw0KKw0KKyBuID0gdHhxLT50eF9yc190aHJlc2g7DQorDQor IC8qIE1idWZzIHJlY3ljbGUgbW9kZSBjYW4gb25seSBzdXBwb3J0IG5vIHJpbmcgYnVmZmVyIHdy YXBwaW5nIGFyb3VuZC4NCisgKiBUd28gY2FzZSBmb3IgdGhpczoNCisgKg0KKyAqIGNhc2UgMTog VGhlIHJlZmlsbCBoZWFkIG9mIFJ4IGJ1ZmZlciByaW5nIG5lZWRzIHRvIGJlIGFsaWduZWQgd2l0 aA0KKyAqIG1idWYgcmluZyBzaXplLiBJbiB0aGlzIGNhc2UsIHRoZSBudW1iZXIgb2YgVHggZnJl ZWluZyBidWZmZXJzDQorICogc2hvdWxkIGJlIGVxdWFsIHRvIHJlZmlsbF9yZXF1aXJlbWVudC4N CisgKg0KKyAqIGNhc2UgMjogVGhlIHJlZmlsbCBoZWFkIG9mIFJ4IHJpbmcgYnVmZmVyIGRvZXMg bm90IG5lZWQgdG8gYmUgYWxpZ25lZA0KKyAqIHdpdGggbWJ1ZiByaW5nIHNpemUuIEluIHRoaXMg Y2FzZSwgdGhlIHVwZGF0ZSBvZiByZWZpbGwgaGVhZCBjYW4gbm90DQorICogZXhjZWVkIHRoZSBS eCBtYnVmIHJpbmcgc2l6ZS4NCisgKi8NCisgaWYgKHJlZmlsbF9yZXF1aXJlbWVudCAhPSBuIHx8 DQorICghcmVmaWxsX3JlcXVpcmVtZW50ICYmIChyZWZpbGxfaGVhZCArIG4gPiBtYnVmX3Jpbmdf c2l6ZSkpKQ0KKyByZXR1cm4gMDsNCisNCisgLyogRmlyc3QgYnVmZmVyIHRvIGZyZWUgZnJvbSBT L1cgcmluZyBpcyBhdCBpbmRleA0KKyAqIHR4X25leHRfZGQgLSAodHhfcnNfdGhyZXNoLTEpLg0K KyAqLw0KKyB0eGVwID0gJnR4cS0+c3dfcmluZ1t0eHEtPnR4X25leHRfZGQgLSAobiAtIDEpXTsN CisgcnhlcCA9IHJlY3ljbGVfcnhxX2luZm8tPm1idWZfcmluZzsNCisgcnhlcCArPSByZWZpbGxf aGVhZDsNCisNCisgaWYgKHR4cS0+b2ZmbG9hZHMgJiBSVEVfRVRIX1RYX09GRkxPQURfTUJVRl9G QVNUX0ZSRUUpIHsNCisgLyogRGlyZWN0bHkgcHV0IG1idWZzIGZyb20gVHggdG8gUnguICovDQor IGZvciAoaSA9IDA7IGkgPCBuOyBpKyssIHJ4ZXArKywgdHhlcCsrKQ0KKyAqcnhlcCA9IHR4ZXBb MF0ubWJ1ZjsNCisgfSBlbHNlIHsNCisgZm9yIChpID0gMCwgaiA9IDA7IGkgPCBuOyBpKyspIHsN CisgLyogQXZvaWQgdHhxIGNvbnRhaW5zIGJ1ZmZlcnMgZnJvbSBleHBlY3RlZCBtZW1wb29sLiAq Lw0KKyBpZiAodW5saWtlbHkocmVjeWNsZV9yeHFfaW5mby0+bXANCisgIT0gdHhlcFtpXS5tYnVm LT5wb29sKSkNCisgcmV0dXJuIDA7DQpJIGRvbid0IHRoaW5rIHRoYXQgaXQgaXMgcG9zc2libGUg dG8gc2ltcGx5IHJldHVybiAwIGhlcmU6DQp3ZSBtaWdodCBhbHJlYWR5IGhhdmUgc29tZSBtYnVm cyBpbnNpZGUgcnhlcFtdLCBzbyB3ZSBwcm9iYWJseSBuZWVkDQp0byByZXR1cm4gdGhhdCBudW1i ZXIgKGopLg0KDQpObywgaGVyZSBpcyBqdXN0IHByZS1mcmVlLCBub3QgYWN0dWFsbHkgcHV0IG1i dWZzIGludG8gcnhlcS4NCkFmdGVyIHJ1biBvdXQgb2YgdGhlIGxvb3AsIHdlIGNhbGwgcnRlX21l bWNweSB0byBhY3R1YWxseSBjb3B5DQptYnVmcyBpbnRvIHJ4ZXAuDQoNCisNCisgbVtqXSA9IHJ0 ZV9wa3RtYnVmX3ByZWZyZWVfc2VnKHR4ZXBbaV0ubWJ1Zik7DQorDQorIC8qIEluIGNhc2UgMSwg ZWFjaCBvZiBUeCBidWZmZXJzIHNob3VsZCBiZSB0aGUNCisgKiBsYXN0IHJlZmVyZW5jZS4NCisg Ki8NCisgaWYgKHVubGlrZWx5KG1bal0gPT0gTlVMTCAmJiByZWZpbGxfcmVxdWlyZW1lbnQpKQ0K KyByZXR1cm4gMDsNCg0Kc2FtZSBoZXJlLCB3ZSBjYW4ndCBzaW1wbHkgcmV0dXJuIDAsIGl0IHdp bGwgaW50cm9kdWNlIG1idWYgbGVha2FnZS4NCg0KKyAvKiBJbiBjYXNlIDIsIHRoZSBudW1iZXIg b2YgdmFsaWQgVHggZnJlZQ0KKyAqIGJ1ZmZlcnMgc2hvdWxkIGJlIHJlY29yZGVkLg0KKyAqLw0K KyBqKys7DQorIH0NCisgcnRlX21lbWNweShyeGVwLCBtLCBzaXplb2Yodm9pZCAqKSAqIGopOw0K V29uZGVyIHdoeSBkbyB5b3UgbmVlZCBpbnRlcm1lZGlhdGUgYnVmZmVyIGZvciByZWxlYXNlZCBt YnVmcz8NCldoeSBjYW4ndCBqdXN0Og0KLi4uDQptID0gcnRlX3BrdG1idWZfcHJlZnJlZV9zZWco dHhlcFtpXS5tYnVmKTsNCi4uLg0KcnhlcFtqKytdID0gbTsNCj8NCk1pZ2h0IHNhdmUgeW91IGZl dyBleHRyYSBjeWNsZXMuDQpTb21ldGltZXMg4oCYcnRlX3BrdG1idWZfcHJlZnJlZV9zZWfigJkg Y2FuIHJldHVybiBOVUxMIGR1ZSB0bw0KbWJ1Zi0+cmVmY250ID4gMS4gU28gd2Ugc2hvdWxkIGZp cnN0bHkgZW5zdXJlIGFsbCDigJht4oCZIGFyZSB2YWxpZCBhbmQNCnRoZW4gY29weSB0aGVtIGlu dG8gcnhlcC4NCg0KKyB9DQorDQorIC8qIFVwZGF0ZSBjb3VudGVycyBmb3IgVHguICovDQorIHR4 cS0+bmJfdHhfZnJlZSA9ICh1aW50MTZfdCkodHhxLT5uYl90eF9mcmVlICsgdHhxLT50eF9yc190 aHJlc2gpOw0KKyB0eHEtPnR4X25leHRfZGQgPSAodWludDE2X3QpKHR4cS0+dHhfbmV4dF9kZCAr IHR4cS0+dHhfcnNfdGhyZXNoKTsNCisgaWYgKHR4cS0+dHhfbmV4dF9kZCA+PSB0eHEtPm5iX3R4 X2Rlc2MpDQorIHR4cS0+dHhfbmV4dF9kZCA9ICh1aW50MTZfdCkodHhxLT50eF9yc190aHJlc2gg LSAxKTsNCisNCisgcmV0dXJuIG47DQorfQ0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2k0MGUv aTQwZV9yeHR4LmMgYi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfcnh0eC5jDQppbmRleCA3ODhmZmI1 MWMyLi41M2NmNzg3ZjA0IDEwMDY0NA0KLS0tIGEvZHJpdmVycy9uZXQvaTQwZS9pNDBlX3J4dHgu Yw0KKysrIGIvZHJpdmVycy9uZXQvaTQwZS9pNDBlX3J4dHguYw0KQEAgLTMxOTcsNiArMzE5Nywz MCBAQCBpNDBlX3R4cV9pbmZvX2dldChzdHJ1Y3QgcnRlX2V0aF9kZXYgKmRldiwgdWludDE2X3Qg cXVldWVfaWQsDQogICAgICAgICBxaW5mby0+Y29uZi5vZmZsb2FkcyA9IHR4cS0+b2ZmbG9hZHM7 DQogfQ0KDQordm9pZA0KK2k0MGVfcmVjeWNsZV9yeHFfaW5mb19nZXQoc3RydWN0IHJ0ZV9ldGhf ZGV2ICpkZXYsIHVpbnQxNl90IHF1ZXVlX2lkLA0KKyBzdHJ1Y3QgcnRlX2V0aF9yZWN5Y2xlX3J4 cV9pbmZvICpyZWN5Y2xlX3J4cV9pbmZvKQ0KK3sNCisgc3RydWN0IGk0MGVfcnhfcXVldWUgKnJ4 cTsNCisgc3RydWN0IGk0MGVfYWRhcHRlciAqYWQgPQ0KKyBJNDBFX0RFVl9QUklWQVRFX1RPX0FE QVBURVIoZGV2LT5kYXRhLT5kZXZfcHJpdmF0ZSk7DQorDQorIHJ4cSA9IGRldi0+ZGF0YS0+cnhf cXVldWVzW3F1ZXVlX2lkXTsNCisNCisgcmVjeWNsZV9yeHFfaW5mby0+bWJ1Zl9yaW5nID0gKHZv aWQgKilyeHEtPnN3X3Jpbmc7DQorIHJlY3ljbGVfcnhxX2luZm8tPm1wID0gcnhxLT5tcDsNCisg cmVjeWNsZV9yeHFfaW5mby0+bWJ1Zl9yaW5nX3NpemUgPSByeHEtPm5iX3J4X2Rlc2M7DQorIHJl Y3ljbGVfcnhxX2luZm8tPnJlY2VpdmVfdGFpbCA9ICZyeHEtPnJ4X3RhaWw7DQorDQorIGlmIChh ZC0+cnhfdmVjX2FsbG93ZWQpIHsNCisgcmVjeWNsZV9yeHFfaW5mby0+cmVmaWxsX3JlcXVpcmVt ZW50ID0gUlRFX0k0MEVfUlhRX1JFQVJNX1RIUkVTSDsNCisgcmVjeWNsZV9yeHFfaW5mby0+cmVm aWxsX2hlYWQgPSAmcnhxLT5yeHJlYXJtX3N0YXJ0Ow0KKyB9IGVsc2Ugew0KKyByZWN5Y2xlX3J4 cV9pbmZvLT5yZWZpbGxfcmVxdWlyZW1lbnQgPSByeHEtPnJ4X2ZyZWVfdGhyZXNoOw0KKyByZWN5 Y2xlX3J4cV9pbmZvLT5yZWZpbGxfaGVhZCA9ICZyeHEtPnJ4X2ZyZWVfdHJpZ2dlcjsNCisgfQ0K K30NCisNCiAjaWZkZWYgUlRFX0FSQ0hfWDg2DQogc3RhdGljIGlubGluZSBib29sDQogZ2V0X2F2 eF9zdXBwb3J0ZWQoYm9vbCByZXF1ZXN0X2F2eDUxMikNCkBAIC0zMjkxLDYgKzMzMTUsOCBAQCBp NDBlX3NldF9yeF9mdW5jdGlvbihzdHJ1Y3QgcnRlX2V0aF9kZXYgKmRldikNCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGRldi0+cnhfcGt0X2J1cnN0ID0gYWQtPnJ4X3VzZV9hdngy ID8NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaTQwZV9yZWN2X3Nj YXR0ZXJlZF9wa3RzX3ZlY19hdngyIDoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgaTQwZV9yZWN2X3NjYXR0ZXJlZF9wa3RzX3ZlYzsNCisgZGV2LT5yZWN5Y2xlX3J4 X2Rlc2NyaXB0b3JzX3JlZmlsbCA9DQorIGk0MGVfcmVjeWNsZV9yeF9kZXNjcmlwdG9yc19yZWZp bGxfdmVjOw0KICAgICAgICAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAgfSBl bHNlIHsNCiAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoYWQtPnJ4X3VzZV9hdng1MTIpIHsN CkBAIC0zMzA5LDkgKzMzMzUsMTIgQEAgaTQwZV9zZXRfcnhfZnVuY3Rpb24oc3RydWN0IHJ0ZV9l dGhfZGV2ICpkZXYpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXYtPnJ4X3Br dF9idXJzdCA9IGFkLT5yeF91c2VfYXZ4MiA/DQogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGk0MGVfcmVjdl9wa3RzX3ZlY19hdngyIDoNCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgaTQwZV9yZWN2X3BrdHNfdmVjOw0KKyBkZXYtPnJlY3lj bGVfcnhfZGVzY3JpcHRvcnNfcmVmaWxsID0NCisgaTQwZV9yZWN5Y2xlX3J4X2Rlc2NyaXB0b3Jz X3JlZmlsbF92ZWM7DQogICAgICAgICAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAg ICB9DQogI2Vsc2UgLyogUlRFX0FSQ0hfWDg2ICovDQorIGRldi0+cmVjeWNsZV9yeF9kZXNjcmlw dG9yc19yZWZpbGwgPSBpNDBlX3JlY3ljbGVfcnhfZGVzY3JpcHRvcnNfcmVmaWxsX3ZlYzsNCiAg ICAgICAgICAgICAgICAgaWYgKGRldi0+ZGF0YS0+c2NhdHRlcmVkX3J4KSB7DQogICAgICAgICAg ICAgICAgICAgICAgICAgUE1EX0lOSVRfTE9HKERFQlVHLA0KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAiVXNpbmcgVmVjdG9yIFNjYXR0ZXJlZCBSeCAocG9ydCAlZCkuIiwN CkBAIC0zNDc5LDE1ICszNTA4LDE4IEBAIGk0MGVfc2V0X3R4X2Z1bmN0aW9uKHN0cnVjdCBydGVf ZXRoX2RldiAqZGV2KQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV2LT50eF9w a3RfYnVyc3QgPSBhZC0+dHhfdXNlX2F2eDIgPw0KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBpNDBlX3htaXRfcGt0c192ZWNfYXZ4MiA6DQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGk0MGVfeG1p dF9wa3RzX3ZlYzsNCisgZGV2LT5yZWN5Y2xlX3R4X21idWZzX3JldXNlID0gaTQwZV9yZWN5Y2xl X3R4X21idWZzX3JldXNlX3ZlYzsNCiAgICAgICAgICAgICAgICAgICAgICAgICB9DQogI2Vsc2Ug LyogUlRFX0FSQ0hfWDg2ICovDQogICAgICAgICAgICAgICAgICAgICAgICAgUE1EX0lOSVRfTE9H KERFQlVHLCAiVXNpbmcgVmVjdG9yIFR4IChwb3J0ICVkKS4iLA0KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBkZXYtPmRhdGEtPnBvcnRfaWQpOw0KICAgICAgICAgICAgICAg ICAgICAgICAgIGRldi0+dHhfcGt0X2J1cnN0ID0gaTQwZV94bWl0X3BrdHNfdmVjOw0KKyBkZXYt PnJlY3ljbGVfdHhfbWJ1ZnNfcmV1c2UgPSBpNDBlX3JlY3ljbGVfdHhfbWJ1ZnNfcmV1c2VfdmVj Ow0KICNlbmRpZiAvKiBSVEVfQVJDSF9YODYgKi8NCiAgICAgICAgICAgICAgICAgfSBlbHNlIHsN CiAgICAgICAgICAgICAgICAgICAgICAgICBQTURfSU5JVF9MT0coREVCVUcsICJTaW1wbGUgdHgg ZmluYWxseSBiZSB1c2VkLiIpOw0KICAgICAgICAgICAgICAgICAgICAgICAgIGRldi0+dHhfcGt0 X2J1cnN0ID0gaTQwZV94bWl0X3BrdHNfc2ltcGxlOw0KKyBkZXYtPnJlY3ljbGVfdHhfbWJ1ZnNf cmV1c2UgPSBpNDBlX3JlY3ljbGVfdHhfbWJ1ZnNfcmV1c2VfdmVjOw0KICAgICAgICAgICAgICAg ICB9DQogICAgICAgICAgICAgICAgIGRldi0+dHhfcGt0X3ByZXBhcmUgPSBpNDBlX3NpbXBsZV9w cmVwX3BrdHM7DQogICAgICAgICB9IGVsc2Ugew0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2k0 MGUvaTQwZV9yeHR4LmggYi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfcnh0eC5oDQppbmRleCA1ZTZl ZWNjNTAxLi5lZDg5MjFkZGMwIDEwMDY0NA0KLS0tIGEvZHJpdmVycy9uZXQvaTQwZS9pNDBlX3J4 dHguaA0KKysrIGIvZHJpdmVycy9uZXQvaTQwZS9pNDBlX3J4dHguaA0KQEAgLTIzMyw2ICsyMzMs MTAgQEAgdWludDMyX3QgaTQwZV9kZXZfcnhfcXVldWVfY291bnQodm9pZCAqcnhfcXVldWUpOw0K IGludCBpNDBlX2Rldl9yeF9kZXNjcmlwdG9yX3N0YXR1cyh2b2lkICpyeF9xdWV1ZSwgdWludDE2 X3Qgb2Zmc2V0KTsNCiBpbnQgaTQwZV9kZXZfdHhfZGVzY3JpcHRvcl9zdGF0dXModm9pZCAqdHhf cXVldWUsIHVpbnQxNl90IG9mZnNldCk7DQoNCit1aW50MTZfdCBpNDBlX3JlY3ljbGVfdHhfbWJ1 ZnNfcmV1c2VfdmVjKHZvaWQgKnR4X3F1ZXVlLA0KKyBzdHJ1Y3QgcnRlX2V0aF9yZWN5Y2xlX3J4 cV9pbmZvICpyZWN5Y2xlX3J4cV9pbmZvKTsNCit2b2lkIGk0MGVfcmVjeWNsZV9yeF9kZXNjcmlw dG9yc19yZWZpbGxfdmVjKHZvaWQgKnJ4X3F1ZXVlLCB1aW50MTZfdCBuYl9tYnVmcyk7DQorDQog dWludDE2X3QgaTQwZV9yZWN2X3BrdHNfdmVjKHZvaWQgKnJ4X3F1ZXVlLCBzdHJ1Y3QgcnRlX21i dWYgKipyeF9wa3RzLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MTZfdCBuYl9w a3RzKTsNCiB1aW50MTZfdCBpNDBlX3JlY3Zfc2NhdHRlcmVkX3BrdHNfdmVjKHZvaWQgKnJ4X3F1 ZXVlLA0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L2k0MGUvbWVzb24uYnVpbGQgYi9kcml2ZXJz L25ldC9pNDBlL21lc29uLmJ1aWxkDQppbmRleCA4ZTUzYjg3YTY1Li41OGViNjI3YWJjIDEwMDY0 NA0KLS0tIGEvZHJpdmVycy9uZXQvaTQwZS9tZXNvbi5idWlsZA0KKysrIGIvZHJpdmVycy9uZXQv aTQwZS9tZXNvbi5idWlsZA0KQEAgLTQyLDYgKzQyLDggQEAgdGVzdHBtZF9zb3VyY2VzID0gZmls ZXMoJ2k0MGVfdGVzdHBtZC5jJykNCiBkZXBzICs9IFsnaGFzaCddDQogaW5jbHVkZXMgKz0gaW5j bHVkZV9kaXJlY3RvcmllcygnYmFzZScpDQoNCitzb3VyY2VzICs9IGZpbGVzKCdpNDBlX3JlY3lj bGVfbWJ1ZnNfdmVjX2NvbW1vbi5jJykNCisNCiBpZiBhcmNoX3N1YmRpciA9PSAneDg2Jw0KICAg ICBzb3VyY2VzICs9IGZpbGVzKCdpNDBlX3J4dHhfdmVjX3NzZS5jJykNCg0KLS0NCjIuMjUuMQ0K DQo= --_000_AS8PR08MB7718CC0E3296731322F0FFF2C852AAS8PR08MB7718eurp_ Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: base64 PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv VFIvUkVDLWh0bWw0MCI+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIg Y29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxtZXRhIG5hbWU9IkdlbmVyYXRv ciIgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTUgKGZpbHRlcmVkIG1lZGl1bSkiPg0KPHN0eWxl PjwhLS0NCi8qIEZvbnQgRGVmaW5pdGlvbnMgKi8NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6 IkNhbWJyaWEgTWF0aCI7DQoJcGFub3NlLTE6MiA0IDUgMyA1IDQgNiAzIDIgNDt9DQpAZm9udC1m YWNlDQoJe2ZvbnQtZmFtaWx5OkRlbmdYaWFuOw0KCXBhbm9zZS0xOjIgMSA2IDAgMyAxIDEgMSAx IDE7fQ0KQGZvbnQtZmFjZQ0KCXtmb250LWZhbWlseTpDYWxpYnJpOw0KCXBhbm9zZS0xOjIgMTUg NSAyIDIgMiA0IDMgMiA0O30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6IlxARGVuZ1hpYW4i Ow0KCXBhbm9zZS0xOjIgMSA2IDAgMyAxIDEgMSAxIDE7fQ0KLyogU3R5bGUgRGVmaW5pdGlvbnMg Ki8NCnAuTXNvTm9ybWFsLCBsaS5Nc29Ob3JtYWwsIGRpdi5Nc29Ob3JtYWwNCgl7bWFyZ2luOjBp bjsNCglmb250LXNpemU6MTEuMHB0Ow0KCWZvbnQtZmFtaWx5OiJDYWxpYnJpIixzYW5zLXNlcmlm O30NCmE6bGluaywgc3Bhbi5Nc29IeXBlcmxpbmsNCgl7bXNvLXN0eWxlLXByaW9yaXR5Ojk5Ow0K CWNvbG9yOmJsdWU7DQoJdGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTt9DQpzcGFuLkVtYWlsU3R5 bGUxOQ0KCXttc28tc3R5bGUtdHlwZTpwZXJzb25hbC1yZXBseTsNCglmb250LWZhbWlseToiQ2Fs aWJyaSIsc2Fucy1zZXJpZjsNCgljb2xvcjp3aW5kb3d0ZXh0O30NCi5Nc29DaHBEZWZhdWx0DQoJ e21zby1zdHlsZS10eXBlOmV4cG9ydC1vbmx5Ow0KCWZvbnQtZmFtaWx5OiJDYWxpYnJpIixzYW5z LXNlcmlmO30NCkBwYWdlIFdvcmRTZWN0aW9uMQ0KCXtzaXplOjguNWluIDExLjBpbjsNCgltYXJn aW46MS4waW4gMS4waW4gMS4waW4gMS4waW47fQ0KZGl2LldvcmRTZWN0aW9uMQ0KCXtwYWdlOldv cmRTZWN0aW9uMTt9DQotLT48L3N0eWxlPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPg0KPG86c2hh cGVkZWZhdWx0cyB2OmV4dD0iZWRpdCIgc3BpZG1heD0iMTAyNiIgLz4NCjwveG1sPjwhW2VuZGlm XS0tPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPg0KPG86c2hhcGVsYXlvdXQgdjpleHQ9ImVkaXQi Pg0KPG86aWRtYXAgdjpleHQ9ImVkaXQiIGRhdGE9IjEiIC8+DQo8L286c2hhcGVsYXlvdXQ+PC94 bWw+PCFbZW5kaWZdLS0+DQo8L2hlYWQ+DQo8Ym9keSBsYW5nPSJFTi1VUyIgbGluaz0iYmx1ZSIg dmxpbms9InB1cnBsZSIgc3R5bGU9IndvcmQtd3JhcDpicmVhay13b3JkIj4NCjxkaXYgY2xhc3M9 IldvcmRTZWN0aW9uMSI+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpwPjwv cD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPGRpdiBzdHls ZT0iYm9yZGVyOm5vbmU7Ym9yZGVyLWxlZnQ6c29saWQgYmx1ZSAxLjVwdDtwYWRkaW5nOjBpbiAw aW4gMGluIDQuMHB0Ij4NCjxkaXY+DQo8ZGl2IHN0eWxlPSJib3JkZXI6bm9uZTtib3JkZXItdG9w OnNvbGlkICNFMUUxRTEgMS4wcHQ7cGFkZGluZzozLjBwdCAwaW4gMGluIDBpbiI+DQo8cCBjbGFz cz0iTXNvTm9ybWFsIj48Yj5Gcm9tOjwvYj4g0JrQvtC90YHRgtCw0L3RgtC40L0g0JDQvdCw0L3R jNC10LIgJmx0O2tvbnN0YW50aW4udi5hbmFueWV2QHlhbmRleC5ydSZndDsNCjxicj4NCjxiPlNl bnQ6PC9iPiBNb25kYXksIEp1bmUgNSwgMjAyMyA5OjAzIFBNPGJyPg0KPGI+VG86PC9iPiBGZWlm ZWkgV2FuZyAmbHQ7RmVpZmVpLldhbmcyQGFybS5jb20mZ3Q7OyBZdXlpbmcgWmhhbmcgJmx0O3l1 eWluZy56aGFuZ0BpbnRlbC5jb20mZ3Q7OyBCZWlsZWkgWGluZyAmbHQ7YmVpbGVpLnhpbmdAaW50 ZWwuY29tJmd0Ozxicj4NCjxiPkNjOjwvYj4gZGV2QGRwZGsub3JnOyBuZCAmbHQ7bmRAYXJtLmNv bSZndDs7IEhvbm5hcHBhIE5hZ2FyYWhhbGxpICZsdDtIb25uYXBwYS5OYWdhcmFoYWxsaUBhcm0u Y29tJmd0OzsgUnVpZmVuZyBXYW5nICZsdDtSdWlmZW5nLldhbmdAYXJtLmNvbSZndDs8YnI+DQo8 Yj5TdWJqZWN0OjwvYj4gUmU6IFtQQVRDSCB2NiAyLzRdIG5ldC9pNDBlOiBpbXBsZW1lbnQgbWJ1 ZnMgcmVjeWNsZSBtb2RlPG86cD48L286cD48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPHAgY2xhc3M9 Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05v cm1hbCI+Jm5ic3A7PG86cD48L286cD48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNv Tm9ybWFsIj4mbmJzcDs8bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJN c29Ob3JtYWwiPiZuYnNwOzxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8YmxvY2txdW90ZSBzdHls ZT0ibWFyZ2luLXRvcDo1LjBwdDttYXJnaW4tYm90dG9tOjUuMHB0Ij4NCjxwPkRlZmluZSBzcGVj aWZpYyBmdW5jdGlvbiBpbXBsZW1lbnRhdGlvbiBmb3IgaTQwZSBkcml2ZXIuPGJyPg0KQ3VycmVu dGx5LCBtYnVmcyByZWN5Y2xlIG1vZGUgY2FuIHN1cHBvcnQgMTI4Yml0PGJyPg0KdmVjdG9yIHBh dGggYW5kIGF2eDIgcGF0aC4gQW5kIGNhbiBiZSBlbmFibGVkIGJvdGggaW48YnI+DQpmYXN0IGZy ZWUgYW5kIG5vIGZhc3QgZnJlZSBtb2RlLjxicj4NCjxicj4NClN1Z2dlc3RlZC1ieTogSG9ubmFw cGEgTmFnYXJhaGFsbGkgJmx0OzxhIGhyZWY9Im1haWx0bzpob25uYXBwYS5uYWdhcmFoYWxsaUBh cm0uY29tIj5ob25uYXBwYS5uYWdhcmFoYWxsaUBhcm0uY29tPC9hPiZndDs8YnI+DQpTaWduZWQt b2ZmLWJ5OiBGZWlmZWkgV2FuZyAmbHQ7PGEgaHJlZj0ibWFpbHRvOmZlaWZlaS53YW5nMkBhcm0u Y29tIj5mZWlmZWkud2FuZzJAYXJtLmNvbTwvYT4mZ3Q7PGJyPg0KUmV2aWV3ZWQtYnk6IFJ1aWZl bmcgV2FuZyAmbHQ7PGEgaHJlZj0ibWFpbHRvOnJ1aWZlbmcud2FuZ0Bhcm0uY29tIj5ydWlmZW5n LndhbmdAYXJtLmNvbTwvYT4mZ3Q7PGJyPg0KUmV2aWV3ZWQtYnk6IEhvbm5hcHBhIE5hZ2FyYWhh bGxpICZsdDs8YSBocmVmPSJtYWlsdG86aG9ubmFwcGEubmFnYXJhaGFsbGlAYXJtLmNvbSI+aG9u bmFwcGEubmFnYXJhaGFsbGlAYXJtLmNvbTwvYT4mZ3Q7PGJyPg0KLS0tPGJyPg0KJm5ic3A7ZHJp dmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jIHwgMSArPGJyPg0KJm5ic3A7ZHJpdmVycy9uZXQv aTQwZS9pNDBlX2V0aGRldi5oIHwgMiArPGJyPg0KJm5ic3A7Li4uL25ldC9pNDBlL2k0MGVfcmVj eWNsZV9tYnVmc192ZWNfY29tbW9uLmMgfCAxNDAgKysrKysrKysrKysrKysrKysrPGJyPg0KJm5i c3A7ZHJpdmVycy9uZXQvaTQwZS9pNDBlX3J4dHguYyB8IDMyICsrKys8YnI+DQombmJzcDtkcml2 ZXJzL25ldC9pNDBlL2k0MGVfcnh0eC5oIHwgNCArPGJyPg0KJm5ic3A7ZHJpdmVycy9uZXQvaTQw ZS9tZXNvbi5idWlsZCB8IDIgKzxicj4NCiZuYnNwOzYgZmlsZXMgY2hhbmdlZCwgMTgxIGluc2Vy dGlvbnMoKyk8YnI+DQombmJzcDtjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9uZXQvaTQwZS9p NDBlX3JlY3ljbGVfbWJ1ZnNfdmVjX2NvbW1vbi5jPGJyPg0KPGJyPg0KZGlmZiAtLWdpdCBhL2Ry aXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuYyBiL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhk ZXYuYzxicj4NCmluZGV4IGY5ZDhmOTc5MWYuLmQ0ZWVjZDE2Y2YgMTAwNjQ0PGJyPg0KLS0tIGEv ZHJpdmVycy9uZXQvaTQwZS9pNDBlX2V0aGRldi5jPGJyPg0KKysrIGIvZHJpdmVycy9uZXQvaTQw ZS9pNDBlX2V0aGRldi5jPGJyPg0KQEAgLTQ5Niw2ICs0OTYsNyBAQCBzdGF0aWMgY29uc3Qgc3Ry dWN0IGV0aF9kZXZfb3BzIGk0MGVfZXRoX2Rldl9vcHMgPSB7PGJyPg0KJm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LmZsb3dfb3BzX2dldCA9IGk0 MGVfZGV2X2Zsb3dfb3BzX2dldCw8YnI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsucnhxX2luZm9fZ2V0ID0gaTQwZV9yeHFfaW5mb19nZXQs PGJyPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7LnR4cV9pbmZvX2dldCA9IGk0MGVfdHhxX2luZm9fZ2V0LDxicj4NCisgLnJlY3ljbGVfcnhx X2luZm9fZ2V0ID0gaTQwZV9yZWN5Y2xlX3J4cV9pbmZvX2dldCw8YnI+DQombmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsucnhfYnVyc3RfbW9kZV9n ZXQgPSBpNDBlX3J4X2J1cnN0X21vZGVfZ2V0LDxicj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOy50eF9idXJzdF9tb2RlX2dldCA9IGk0MGVf dHhfYnVyc3RfbW9kZV9nZXQsPGJyPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7LnRpbWVzeW5jX2VuYWJsZSA9IGk0MGVfdGltZXN5bmNfZW5h YmxlLDxicj4NCmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2LmggYi9k cml2ZXJzL25ldC9pNDBlL2k0MGVfZXRoZGV2Lmg8YnI+DQppbmRleCA5YjgwNmQxMzBlLi5iNWIy ZDZjZjJiIDEwMDY0NDxicj4NCi0tLSBhL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuaDxi cj4NCisrKyBiL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9ldGhkZXYuaDxicj4NCkBAIC0xMzU1LDYg KzEzNTUsOCBAQCB2b2lkIGk0MGVfcnhxX2luZm9fZ2V0KHN0cnVjdCBydGVfZXRoX2RldiAqZGV2 LCB1aW50MTZfdCBxdWV1ZV9pZCw8YnI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtzdHJ1Y3QgcnRlX2V0aF9yeHFfaW5mbyAqcWluZm8pOzxi cj4NCiZuYnNwO3ZvaWQgaTQwZV90eHFfaW5mb19nZXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYs IHVpbnQxNl90IHF1ZXVlX2lkLDxicj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwO3N0cnVjdCBydGVfZXRoX3R4cV9pbmZvICpxaW5mbyk7PGJy Pg0KK3ZvaWQgaTQwZV9yZWN5Y2xlX3J4cV9pbmZvX2dldChzdHJ1Y3QgcnRlX2V0aF9kZXYgKmRl diwgdWludDE2X3QgcXVldWVfaWQsPGJyPg0KKyBzdHJ1Y3QgcnRlX2V0aF9yZWN5Y2xlX3J4cV9p bmZvICpyZWN5Y2xlX3J4cV9pbmZvKTs8YnI+DQombmJzcDtpbnQgaTQwZV9yeF9idXJzdF9tb2Rl X2dldChzdHJ1Y3QgcnRlX2V0aF9kZXYgKmRldiwgdWludDE2X3QgcXVldWVfaWQsPGJyPg0KJm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7c3RydWN0 IHJ0ZV9ldGhfYnVyc3RfbW9kZSAqbW9kZSk7PGJyPg0KJm5ic3A7aW50IGk0MGVfdHhfYnVyc3Rf bW9kZV9nZXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYsIHVpbnQxNl90IHF1ZXVlX2lkLDxicj4N CmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9pNDBlL2k0MGVfcmVjeWNsZV9tYnVmc192ZWNfY29t bW9uLmMgYi9kcml2ZXJzL25ldC9pNDBlL2k0MGVfcmVjeWNsZV9tYnVmc192ZWNfY29tbW9uLmM8 YnI+DQpuZXcgZmlsZSBtb2RlIDEwMDY0NDxicj4NCmluZGV4IDAwMDAwMDAwMDAuLjA4ZDcwOGZk N2Q8YnI+DQotLS0gL2Rldi9udWxsPGJyPg0KKysrIGIvZHJpdmVycy9uZXQvaTQwZS9pNDBlX3Jl Y3ljbGVfbWJ1ZnNfdmVjX2NvbW1vbi5jPGJyPg0KQEAgLTAsMCArMSwxNDAgQEA8YnI+DQorLyog U1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZTxicj4NCisgKiBDb3B5cmlnaHQg KGMpIDIwMjMgQXJtIExpbWl0ZWQuPGJyPg0KKyAqLzxicj4NCis8YnI+DQorI2luY2x1ZGUgJmx0 O3N0ZGludC5oJmd0Ozxicj4NCisjaW5jbHVkZSAmbHQ7ZXRoZGV2X2RyaXZlci5oJmd0Ozxicj4N Cis8YnI+DQorI2luY2x1ZGUgJnF1b3Q7YmFzZS9pNDBlX3Byb3RvdHlwZS5oJnF1b3Q7PGJyPg0K KyNpbmNsdWRlICZxdW90O2Jhc2UvaTQwZV90eXBlLmgmcXVvdDs8YnI+DQorI2luY2x1ZGUgJnF1 b3Q7aTQwZV9ldGhkZXYuaCZxdW90Ozxicj4NCisjaW5jbHVkZSAmcXVvdDtpNDBlX3J4dHguaCZx dW90Ozxicj4NCis8YnI+DQorI3ByYWdtYSBHQ0MgZGlhZ25vc3RpYyBpZ25vcmVkICZxdW90Oy1X Y2FzdC1xdWFsJnF1b3Q7PGJyPg0KKzxicj4NCit2b2lkPGJyPg0KK2k0MGVfcmVjeWNsZV9yeF9k ZXNjcmlwdG9yc19yZWZpbGxfdmVjKHZvaWQgKnJ4X3F1ZXVlLCB1aW50MTZfdCBuYl9tYnVmcyk8 YnI+DQorezxicj4NCisgc3RydWN0IGk0MGVfcnhfcXVldWUgKnJ4cSA9IHJ4X3F1ZXVlOzxicj4N Cisgc3RydWN0IGk0MGVfcnhfZW50cnkgKnJ4ZXA7PGJyPg0KKyB2b2xhdGlsZSB1bmlvbiBpNDBl X3J4X2Rlc2MgKnJ4ZHA7PGJyPg0KKyB1aW50MTZfdCByeF9pZDs8YnI+DQorIHVpbnQ2NF90IHBh ZGRyOzxicj4NCisgdWludDY0X3QgZG1hX2FkZHI7PGJyPg0KKyB1aW50MTZfdCBpOzxicj4NCis8 YnI+DQorIHJ4ZHAgPSByeHEtJmd0O3J4X3JpbmcgKyByeHEtJmd0O3J4cmVhcm1fc3RhcnQ7PGJy Pg0KKyByeGVwID0gJmFtcDtyeHEtJmd0O3N3X3JpbmdbcnhxLSZndDtyeHJlYXJtX3N0YXJ0XTs8 YnI+DQorPGJyPg0KKyBmb3IgKGkgPSAwOyBpICZsdDsgbmJfbWJ1ZnM7IGkrKykgezxicj4NCisg LyogSW5pdGlhbGl6ZSByeGRwIGRlc2NzLiAqLzxicj4NCisgcGFkZHIgPSAocnhlcFtpXS5tYnVm KS0mZ3Q7YnVmX2lvdmEgKyBSVEVfUEtUTUJVRl9IRUFEUk9PTTs8YnI+DQorIGRtYV9hZGRyID0g cnRlX2NwdV90b19sZV82NChwYWRkcik7PGJyPg0KKyAvKiBmbHVzaCBkZXNjIHdpdGggcGEgZG1h X2FkZHIgKi88YnI+DQorIHJ4ZHBbaV0ucmVhZC5oZHJfYWRkciA9IDA7PGJyPg0KKyByeGRwW2ld LnJlYWQucGt0X2FkZHIgPSBkbWFfYWRkcjs8YnI+DQorIH08YnI+DQorPGJyPg0KKyAvKiBVcGRh dGUgdGhlIGRlc2NyaXB0b3IgaW5pdGlhbGl6ZXIgaW5kZXggKi88YnI+DQorIHJ4cS0mZ3Q7cnhy ZWFybV9zdGFydCArPSBuYl9tYnVmczs8YnI+DQorIHJ4X2lkID0gcnhxLSZndDtyeHJlYXJtX3N0 YXJ0IC0gMTs8YnI+DQorPGJyPg0KKyBpZiAodW5saWtlbHkocnhxLSZndDtyeHJlYXJtX3N0YXJ0 ICZndDs9IHJ4cS0mZ3Q7bmJfcnhfZGVzYykpIHs8YnI+DQorIHJ4cS0mZ3Q7cnhyZWFybV9zdGFy dCA9IDA7PGJyPg0KKyByeF9pZCA9IHJ4cS0mZ3Q7bmJfcnhfZGVzYyAtIDE7PGJyPg0KKyB9PGJy Pg0KKzxicj4NCisgcnhxLSZndDtyeHJlYXJtX25iIC09IG5iX21idWZzOzxicj4NCis8YnI+DQor IHJ0ZV9pb193bWIoKTs8YnI+DQorIC8qIFVwZGF0ZSB0aGUgdGFpbCBwb2ludGVyIG9uIHRoZSBO SUMgKi88YnI+DQorIEk0MEVfUENJX1JFR19XUklURV9SRUxBWEVEKHJ4cS0mZ3Q7cXJ4X3RhaWws IHJ4X2lkKTs8YnI+DQorfTxicj4NCis8YnI+DQordWludDE2X3Q8YnI+DQoraTQwZV9yZWN5Y2xl X3R4X21idWZzX3JldXNlX3ZlYyh2b2lkICp0eF9xdWV1ZSw8YnI+DQorIHN0cnVjdCBydGVfZXRo X3JlY3ljbGVfcnhxX2luZm8gKnJlY3ljbGVfcnhxX2luZm8pPGJyPg0KK3s8YnI+DQorIHN0cnVj dCBpNDBlX3R4X3F1ZXVlICp0eHEgPSB0eF9xdWV1ZTs8YnI+DQorIHN0cnVjdCBpNDBlX3R4X2Vu dHJ5ICp0eGVwOzxicj4NCisgc3RydWN0IHJ0ZV9tYnVmICoqcnhlcDs8YnI+DQorIHN0cnVjdCBy dGVfbWJ1ZiAqbVtSVEVfSTQwRV9UWF9NQVhfRlJFRV9CVUZfU1pdOzxicj4NCisgaW50IGksIGos IG47PGJyPg0KKyB1aW50MTZfdCBhdmFpbCA9IDA7PGJyPg0KKyB1aW50MTZfdCBtYnVmX3Jpbmdf c2l6ZSA9IHJlY3ljbGVfcnhxX2luZm8tJmd0O21idWZfcmluZ19zaXplOzxicj4NCisgdWludDE2 X3QgbWFzayA9IHJlY3ljbGVfcnhxX2luZm8tJmd0O21idWZfcmluZ19zaXplIC0gMTs8YnI+DQor IHVpbnQxNl90IHJlZmlsbF9yZXF1aXJlbWVudCA9IHJlY3ljbGVfcnhxX2luZm8tJmd0O3JlZmls bF9yZXF1aXJlbWVudDs8YnI+DQorIHVpbnQxNl90IHJlZmlsbF9oZWFkID0gKnJlY3ljbGVfcnhx X2luZm8tJmd0O3JlZmlsbF9oZWFkOzxicj4NCisgdWludDE2X3QgcmVjZWl2ZV90YWlsID0gKnJl Y3ljbGVfcnhxX2luZm8tJmd0O3JlY2VpdmVfdGFpbDs8YnI+DQorPGJyPg0KKyAvKiBHZXQgYXZh aWxhYmxlIHJlY3ljbGluZyBSeCBidWZmZXJzLiAqLzxicj4NCisgYXZhaWwgPSAobWJ1Zl9yaW5n X3NpemUgLSAocmVmaWxsX2hlYWQgLSByZWNlaXZlX3RhaWwpKSAmYW1wOyBtYXNrOzxicj4NCis8 YnI+DQorIC8qIENoZWNrIFR4IGZyZWUgdGhyZXNoIGFuZCBSeCBhdmFpbGFibGUgc3BhY2UuICov PGJyPg0KKyBpZiAodHhxLSZndDtuYl90eF9mcmVlICZndDsgdHhxLSZndDt0eF9mcmVlX3RocmVz aCB8fCBhdmFpbCAmbHQ7PSB0eHEtJmd0O3R4X3JzX3RocmVzaCk8YnI+DQorIHJldHVybiAwOzxi cj4NCis8YnI+DQorIC8qIGNoZWNrIEREIGJpdHMgb24gdGhyZXNob2xkIGRlc2NyaXB0b3IgKi88 YnI+DQorIGlmICgodHhxLSZndDt0eF9yaW5nW3R4cS0mZ3Q7dHhfbmV4dF9kZF0uY21kX3R5cGVf b2Zmc2V0X2JzeiAmYW1wOzxicj4NCisgcnRlX2NwdV90b19sZV82NChJNDBFX1RYRF9RVzFfRFRZ UEVfTUFTSykpICE9PGJyPg0KKyBydGVfY3B1X3RvX2xlXzY0KEk0MEVfVFhfREVTQ19EVFlQRV9E RVNDX0RPTkUpKTxicj4NCisgcmV0dXJuIDA7PGJyPg0KKzxicj4NCisgbiA9IHR4cS0mZ3Q7dHhf cnNfdGhyZXNoOzxicj4NCis8YnI+DQorIC8qIE1idWZzIHJlY3ljbGUgbW9kZSBjYW4gb25seSBz dXBwb3J0IG5vIHJpbmcgYnVmZmVyIHdyYXBwaW5nIGFyb3VuZC48YnI+DQorICogVHdvIGNhc2Ug Zm9yIHRoaXM6PGJyPg0KKyAqPGJyPg0KKyAqIGNhc2UgMTogVGhlIHJlZmlsbCBoZWFkIG9mIFJ4 IGJ1ZmZlciByaW5nIG5lZWRzIHRvIGJlIGFsaWduZWQgd2l0aDxicj4NCisgKiBtYnVmIHJpbmcg c2l6ZS4gSW4gdGhpcyBjYXNlLCB0aGUgbnVtYmVyIG9mIFR4IGZyZWVpbmcgYnVmZmVyczxicj4N CisgKiBzaG91bGQgYmUgZXF1YWwgdG8gcmVmaWxsX3JlcXVpcmVtZW50Ljxicj4NCisgKjxicj4N CisgKiBjYXNlIDI6IFRoZSByZWZpbGwgaGVhZCBvZiBSeCByaW5nIGJ1ZmZlciBkb2VzIG5vdCBu ZWVkIHRvIGJlIGFsaWduZWQ8YnI+DQorICogd2l0aCBtYnVmIHJpbmcgc2l6ZS4gSW4gdGhpcyBj YXNlLCB0aGUgdXBkYXRlIG9mIHJlZmlsbCBoZWFkIGNhbiBub3Q8YnI+DQorICogZXhjZWVkIHRo ZSBSeCBtYnVmIHJpbmcgc2l6ZS48YnI+DQorICovPGJyPg0KKyBpZiAocmVmaWxsX3JlcXVpcmVt ZW50ICE9IG4gfHw8YnI+DQorICghcmVmaWxsX3JlcXVpcmVtZW50ICZhbXA7JmFtcDsgKHJlZmls bF9oZWFkICsgbiAmZ3Q7IG1idWZfcmluZ19zaXplKSkpPGJyPg0KKyByZXR1cm4gMDs8YnI+DQor PGJyPg0KKyAvKiBGaXJzdCBidWZmZXIgdG8gZnJlZSBmcm9tIFMvVyByaW5nIGlzIGF0IGluZGV4 PGJyPg0KKyAqIHR4X25leHRfZGQgLSAodHhfcnNfdGhyZXNoLTEpLjxicj4NCisgKi88YnI+DQor IHR4ZXAgPSAmYW1wO3R4cS0mZ3Q7c3dfcmluZ1t0eHEtJmd0O3R4X25leHRfZGQgLSAobiAtIDEp XTs8YnI+DQorIHJ4ZXAgPSByZWN5Y2xlX3J4cV9pbmZvLSZndDttYnVmX3Jpbmc7PGJyPg0KKyBy eGVwICs9IHJlZmlsbF9oZWFkOzxicj4NCis8YnI+DQorIGlmICh0eHEtJmd0O29mZmxvYWRzICZh bXA7IFJURV9FVEhfVFhfT0ZGTE9BRF9NQlVGX0ZBU1RfRlJFRSkgezxicj4NCisgLyogRGlyZWN0 bHkgcHV0IG1idWZzIGZyb20gVHggdG8gUnguICovPGJyPg0KKyBmb3IgKGkgPSAwOyBpICZsdDsg bjsgaSsrLCByeGVwKyssIHR4ZXArKyk8YnI+DQorICpyeGVwID0gdHhlcFswXS5tYnVmOzxicj4N CisgfSBlbHNlIHs8YnI+DQorIGZvciAoaSA9IDAsIGogPSAwOyBpICZsdDsgbjsgaSsrKSB7PGJy Pg0KKyAvKiBBdm9pZCB0eHEgY29udGFpbnMgYnVmZmVycyBmcm9tIGV4cGVjdGVkIG1lbXBvb2wu ICovPGJyPg0KKyBpZiAodW5saWtlbHkocmVjeWNsZV9yeHFfaW5mby0mZ3Q7bXA8YnI+DQorICE9 IHR4ZXBbaV0ubWJ1Zi0mZ3Q7cG9vbCkpPGJyPg0KKyByZXR1cm4gMDs8bzpwPjwvbzpwPjwvcD4N CjwvYmxvY2txdW90ZT4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5JIGRvbid0IHRoaW5r IHRoYXQgaXQgaXMgcG9zc2libGUgdG8gc2ltcGx5IHJldHVybiAwIGhlcmU6PG86cD48L286cD48 L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj53ZSBtaWdodCBhbHJlYWR5 IGhhdmUgc29tZSBtYnVmcyBpbnNpZGUgcnhlcFtdLCBzbyB3ZSBwcm9iYWJseSBuZWVkPG86cD48 L286cD48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj50byByZXR1cm4g dGhhdCBudW1iZXIgKGopLjxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9 Ik1zb05vcm1hbCI+Jm5ic3A7PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5O bywgaGVyZSBpcyBqdXN0IHByZS1mcmVlLCBub3QgYWN0dWFsbHkgcHV0IG1idWZzIGludG8gcnhl cS48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPkFmdGVyIHJ1biBvdXQgb2Yg dGhlIGxvb3AsIHdlIGNhbGwgcnRlX21lbWNweSB0byBhY3R1YWxseSBjb3B5PG86cD48L286cD48 L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5tYnVmcyBpbnRvIHJ4ZXAuPG86cD48L286cD48L3A+ DQo8L2Rpdj4NCjxibG9ja3F1b3RlIHN0eWxlPSJtYXJnaW4tdG9wOjUuMHB0O21hcmdpbi1ib3R0 b206NS4wcHQiPg0KPHA+Kzxicj4NCisgbVtqXSA9IHJ0ZV9wa3RtYnVmX3ByZWZyZWVfc2VnKHR4 ZXBbaV0ubWJ1Zik7PGJyPg0KKzxicj4NCisgLyogSW4gY2FzZSAxLCBlYWNoIG9mIFR4IGJ1ZmZl cnMgc2hvdWxkIGJlIHRoZTxicj4NCisgKiBsYXN0IHJlZmVyZW5jZS48YnI+DQorICovPGJyPg0K KyBpZiAodW5saWtlbHkobVtqXSA9PSBOVUxMICZhbXA7JmFtcDsgcmVmaWxsX3JlcXVpcmVtZW50 KSk8YnI+DQorIHJldHVybiAwOzxvOnA+PC9vOnA+PC9wPg0KPC9ibG9ja3F1b3RlPg0KPGRpdj4N CjxwIGNsYXNzPSJNc29Ob3JtYWwiPiZuYnNwOzxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2 Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+c2FtZSBoZXJlLCB3ZSBjYW4ndCBzaW1wbHkgcmV0dXJu IDAsIGl0IHdpbGwgaW50cm9kdWNlIG1idWYgbGVha2FnZS48bzpwPjwvbzpwPjwvcD4NCjwvZGl2 Pg0KPGJsb2NrcXVvdGUgc3R5bGU9Im1hcmdpbi10b3A6NS4wcHQ7bWFyZ2luLWJvdHRvbTo1LjBw dCI+DQo8cD4rIC8qIEluIGNhc2UgMiwgdGhlIG51bWJlciBvZiB2YWxpZCBUeCBmcmVlPGJyPg0K KyAqIGJ1ZmZlcnMgc2hvdWxkIGJlIHJlY29yZGVkLjxicj4NCisgKi88YnI+DQorIGorKzs8YnI+ DQorIH08YnI+DQorIHJ0ZV9tZW1jcHkocnhlcCwgbSwgc2l6ZW9mKHZvaWQgKikgKiBqKTs8bzpw PjwvbzpwPjwvcD4NCjwvYmxvY2txdW90ZT4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5X b25kZXIgd2h5IGRvIHlvdSBuZWVkIGludGVybWVkaWF0ZSBidWZmZXIgZm9yIHJlbGVhc2VkIG1i dWZzPzxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+ V2h5IGNhbid0IGp1c3Q6PG86cD48L286cD48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0i TXNvTm9ybWFsIj4uLi48bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJN c29Ob3JtYWwiPm0gPSBydGVfcGt0bWJ1Zl9wcmVmcmVlX3NlZyh0eGVwW2ldLm1idWYpOzxvOnA+ PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+Li4uPG86cD48 L286cD48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5yeGVwW2orK10g PSBtOzxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+ PzxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+TWln aHQgc2F2ZSB5b3UgZmV3IGV4dHJhIGN5Y2xlcy48bzpwPjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRp dj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPlNvbWV0aW1lcyDigJhydGVfcGt0bWJ1Zl9wcmVmcmVl X3NlZ+KAmSBjYW4gcmV0dXJuIE5VTEwgZHVlIHRvPG86cD48L286cD48L3A+DQo8cCBjbGFzcz0i TXNvTm9ybWFsIj5tYnVmLSZndDtyZWZjbnQgJmd0OyAxLiBTbyB3ZSBzaG91bGQgZmlyc3RseSBl bnN1cmUgYWxsIOKAmG3igJkgYXJlIHZhbGlkIGFuZDxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9 Ik1zb05vcm1hbCI+dGhlbiBjb3B5IHRoZW0gaW50byByeGVwLjxvOnA+PC9vOnA+PC9wPg0KPC9k aXY+DQo8YmxvY2txdW90ZSBzdHlsZT0ibWFyZ2luLXRvcDo1LjBwdDttYXJnaW4tYm90dG9tOjUu MHB0Ij4NCjxwPisgfTxicj4NCis8YnI+DQorIC8qIFVwZGF0ZSBjb3VudGVycyBmb3IgVHguICov PGJyPg0KKyB0eHEtJmd0O25iX3R4X2ZyZWUgPSAodWludDE2X3QpKHR4cS0mZ3Q7bmJfdHhfZnJl ZSArIHR4cS0mZ3Q7dHhfcnNfdGhyZXNoKTs8YnI+DQorIHR4cS0mZ3Q7dHhfbmV4dF9kZCA9ICh1 aW50MTZfdCkodHhxLSZndDt0eF9uZXh0X2RkICsgdHhxLSZndDt0eF9yc190aHJlc2gpOzxicj4N CisgaWYgKHR4cS0mZ3Q7dHhfbmV4dF9kZCAmZ3Q7PSB0eHEtJmd0O25iX3R4X2Rlc2MpPGJyPg0K KyB0eHEtJmd0O3R4X25leHRfZGQgPSAodWludDE2X3QpKHR4cS0mZ3Q7dHhfcnNfdGhyZXNoIC0g MSk7PGJyPg0KKzxicj4NCisgcmV0dXJuIG47PGJyPg0KK308YnI+DQpkaWZmIC0tZ2l0IGEvZHJp dmVycy9uZXQvaTQwZS9pNDBlX3J4dHguYyBiL2RyaXZlcnMvbmV0L2k0MGUvaTQwZV9yeHR4LmM8 YnI+DQppbmRleCA3ODhmZmI1MWMyLi41M2NmNzg3ZjA0IDEwMDY0NDxicj4NCi0tLSBhL2RyaXZl cnMvbmV0L2k0MGUvaTQwZV9yeHR4LmM8YnI+DQorKysgYi9kcml2ZXJzL25ldC9pNDBlL2k0MGVf cnh0eC5jPGJyPg0KQEAgLTMxOTcsNiArMzE5NywzMCBAQCBpNDBlX3R4cV9pbmZvX2dldChzdHJ1 Y3QgcnRlX2V0aF9kZXYgKmRldiwgdWludDE2X3QgcXVldWVfaWQsPGJyPg0KJm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7cWluZm8tJmd0O2NvbmYu b2ZmbG9hZHMgPSB0eHEtJmd0O29mZmxvYWRzOzxicj4NCiZuYnNwO308YnI+DQombmJzcDs8YnI+ DQordm9pZDxicj4NCitpNDBlX3JlY3ljbGVfcnhxX2luZm9fZ2V0KHN0cnVjdCBydGVfZXRoX2Rl diAqZGV2LCB1aW50MTZfdCBxdWV1ZV9pZCw8YnI+DQorIHN0cnVjdCBydGVfZXRoX3JlY3ljbGVf cnhxX2luZm8gKnJlY3ljbGVfcnhxX2luZm8pPGJyPg0KK3s8YnI+DQorIHN0cnVjdCBpNDBlX3J4 X3F1ZXVlICpyeHE7PGJyPg0KKyBzdHJ1Y3QgaTQwZV9hZGFwdGVyICphZCA9PGJyPg0KKyBJNDBF X0RFVl9QUklWQVRFX1RPX0FEQVBURVIoZGV2LSZndDtkYXRhLSZndDtkZXZfcHJpdmF0ZSk7PGJy Pg0KKzxicj4NCisgcnhxID0gZGV2LSZndDtkYXRhLSZndDtyeF9xdWV1ZXNbcXVldWVfaWRdOzxi cj4NCis8YnI+DQorIHJlY3ljbGVfcnhxX2luZm8tJmd0O21idWZfcmluZyA9ICh2b2lkICopcnhx LSZndDtzd19yaW5nOzxicj4NCisgcmVjeWNsZV9yeHFfaW5mby0mZ3Q7bXAgPSByeHEtJmd0O21w Ozxicj4NCisgcmVjeWNsZV9yeHFfaW5mby0mZ3Q7bWJ1Zl9yaW5nX3NpemUgPSByeHEtJmd0O25i X3J4X2Rlc2M7PGJyPg0KKyByZWN5Y2xlX3J4cV9pbmZvLSZndDtyZWNlaXZlX3RhaWwgPSAmYW1w O3J4cS0mZ3Q7cnhfdGFpbDs8YnI+DQorPGJyPg0KKyBpZiAoYWQtJmd0O3J4X3ZlY19hbGxvd2Vk KSB7PGJyPg0KKyByZWN5Y2xlX3J4cV9pbmZvLSZndDtyZWZpbGxfcmVxdWlyZW1lbnQgPSBSVEVf STQwRV9SWFFfUkVBUk1fVEhSRVNIOzxicj4NCisgcmVjeWNsZV9yeHFfaW5mby0mZ3Q7cmVmaWxs X2hlYWQgPSAmYW1wO3J4cS0mZ3Q7cnhyZWFybV9zdGFydDs8YnI+DQorIH0gZWxzZSB7PGJyPg0K KyByZWN5Y2xlX3J4cV9pbmZvLSZndDtyZWZpbGxfcmVxdWlyZW1lbnQgPSByeHEtJmd0O3J4X2Zy ZWVfdGhyZXNoOzxicj4NCisgcmVjeWNsZV9yeHFfaW5mby0mZ3Q7cmVmaWxsX2hlYWQgPSAmYW1w O3J4cS0mZ3Q7cnhfZnJlZV90cmlnZ2VyOzxicj4NCisgfTxicj4NCit9PGJyPg0KKzxicj4NCiZu YnNwOyNpZmRlZiBSVEVfQVJDSF9YODY8YnI+DQombmJzcDtzdGF0aWMgaW5saW5lIGJvb2w8YnI+ DQombmJzcDtnZXRfYXZ4X3N1cHBvcnRlZChib29sIHJlcXVlc3RfYXZ4NTEyKTxicj4NCkBAIC0z MjkxLDYgKzMzMTUsOCBAQCBpNDBlX3NldF9yeF9mdW5jdGlvbihzdHJ1Y3QgcnRlX2V0aF9kZXYg KmRldik8YnI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtkZXYtJmd0O3J4X3BrdF9idXJz dCA9IGFkLSZndDtyeF91c2VfYXZ4MiA/PGJyPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7aTQwZV9yZWN2 X3NjYXR0ZXJlZF9wa3RzX3ZlY19hdngyIDo8YnI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtpNDBlX3Jl Y3Zfc2NhdHRlcmVkX3BrdHNfdmVjOzxicj4NCisgZGV2LSZndDtyZWN5Y2xlX3J4X2Rlc2NyaXB0 b3JzX3JlZmlsbCA9PGJyPg0KKyBpNDBlX3JlY3ljbGVfcnhfZGVzY3JpcHRvcnNfcmVmaWxsX3Zl Yzs8YnI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDt9PGJyPg0KJm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7fSBlbHNlIHs8YnI+DQombmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtpZiAoYWQtJmd0O3J4X3VzZV9hdng1MTIp IHs8YnI+DQpAQCAtMzMwOSw5ICszMzM1LDEyIEBAIGk0MGVfc2V0X3J4X2Z1bmN0aW9uKHN0cnVj dCBydGVfZXRoX2RldiAqZGV2KTxicj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO2Rldi0m Z3Q7cnhfcGt0X2J1cnN0ID0gYWQtJmd0O3J4X3VzZV9hdngyID88YnI+DQombmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDtpNDBlX3JlY3ZfcGt0c192ZWNfYXZ4MiA6PGJyPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7aTQw ZV9yZWN2X3BrdHNfdmVjOzxicj4NCisgZGV2LSZndDtyZWN5Y2xlX3J4X2Rlc2NyaXB0b3JzX3Jl ZmlsbCA9PGJyPg0KKyBpNDBlX3JlY3ljbGVfcnhfZGVzY3JpcHRvcnNfcmVmaWxsX3ZlYzs8YnI+ DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDt9PGJyPg0KJm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7fTxicj4NCiZuYnNwOyNlbHNlIC8qIFJU RV9BUkNIX1g4NiAqLzxicj4NCisgZGV2LSZndDtyZWN5Y2xlX3J4X2Rlc2NyaXB0b3JzX3JlZmls bCA9IGk0MGVfcmVjeWNsZV9yeF9kZXNjcmlwdG9yc19yZWZpbGxfdmVjOzxicj4NCiZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO2lmIChkZXYtJmd0O2RhdGEtJmd0 O3NjYXR0ZXJlZF9yeCkgezxicj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw O1BNRF9JTklUX0xPRyhERUJVRyw8YnI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmcXVvdDtVc2luZyBWZWN0b3IgU2NhdHRlcmVkIFJ4 IChwb3J0ICVkKS4mcXVvdDssPGJyPg0KQEAgLTM0NzksMTUgKzM1MDgsMTggQEAgaTQwZV9zZXRf dHhfZnVuY3Rpb24oc3RydWN0IHJ0ZV9ldGhfZGV2ICpkZXYpPGJyPg0KJm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7ZGV2LSZndDt0eF9wa3RfYnVyc3QgPSBhZC0mZ3Q7dHhfdXNlX2F2eDIgPzxi cj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO2k0MGVfeG1pdF9wa3RzX3ZlY19h dngyIDo8YnI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtpNDBlX3htaXRfcGt0 c192ZWM7PGJyPg0KKyBkZXYtJmd0O3JlY3ljbGVfdHhfbWJ1ZnNfcmV1c2UgPSBpNDBlX3JlY3lj bGVfdHhfbWJ1ZnNfcmV1c2VfdmVjOzxicj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwO308YnI+DQombmJzcDsjZWxzZSAvKiBSVEVfQVJDSF9YODYgKi88YnI+DQombmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtQTURfSU5JVF9MT0coREVCVUcsICZxdW90O1Vz aW5nIFZlY3RvciBUeCAocG9ydCAlZCkuJnF1b3Q7LDxicj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO2Rldi0mZ3Q7ZGF0YS0mZ3Q7cG9y dF9pZCk7PGJyPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ZGV2LSZndDt0 eF9wa3RfYnVyc3QgPSBpNDBlX3htaXRfcGt0c192ZWM7PGJyPg0KKyBkZXYtJmd0O3JlY3ljbGVf dHhfbWJ1ZnNfcmV1c2UgPSBpNDBlX3JlY3ljbGVfdHhfbWJ1ZnNfcmV1c2VfdmVjOzxicj4NCiZu YnNwOyNlbmRpZiAvKiBSVEVfQVJDSF9YODYgKi88YnI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDt9IGVsc2Ugezxicj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwO1BNRF9JTklUX0xPRyhERUJVRywgJnF1b3Q7U2ltcGxlIHR4IGZpbmFs bHkgYmUgdXNlZC4mcXVvdDspOzxicj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwO2Rldi0mZ3Q7dHhfcGt0X2J1cnN0ID0gaTQwZV94bWl0X3BrdHNfc2ltcGxlOzxicj4NCisg ZGV2LSZndDtyZWN5Y2xlX3R4X21idWZzX3JldXNlID0gaTQwZV9yZWN5Y2xlX3R4X21idWZzX3Jl dXNlX3ZlYzs8YnI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDt9PGJyPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ZGV2 LSZndDt0eF9wa3RfcHJlcGFyZSA9IGk0MGVfc2ltcGxlX3ByZXBfcGt0czs8YnI+DQombmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDt9IGVsc2Ugezxi cj4NCmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC9pNDBlL2k0MGVfcnh0eC5oIGIvZHJpdmVycy9u ZXQvaTQwZS9pNDBlX3J4dHguaDxicj4NCmluZGV4IDVlNmVlY2M1MDEuLmVkODkyMWRkYzAgMTAw NjQ0PGJyPg0KLS0tIGEvZHJpdmVycy9uZXQvaTQwZS9pNDBlX3J4dHguaDxicj4NCisrKyBiL2Ry aXZlcnMvbmV0L2k0MGUvaTQwZV9yeHR4Lmg8YnI+DQpAQCAtMjMzLDYgKzIzMywxMCBAQCB1aW50 MzJfdCBpNDBlX2Rldl9yeF9xdWV1ZV9jb3VudCh2b2lkICpyeF9xdWV1ZSk7PGJyPg0KJm5ic3A7 aW50IGk0MGVfZGV2X3J4X2Rlc2NyaXB0b3Jfc3RhdHVzKHZvaWQgKnJ4X3F1ZXVlLCB1aW50MTZf dCBvZmZzZXQpOzxicj4NCiZuYnNwO2ludCBpNDBlX2Rldl90eF9kZXNjcmlwdG9yX3N0YXR1cyh2 b2lkICp0eF9xdWV1ZSwgdWludDE2X3Qgb2Zmc2V0KTs8YnI+DQombmJzcDs8YnI+DQordWludDE2 X3QgaTQwZV9yZWN5Y2xlX3R4X21idWZzX3JldXNlX3ZlYyh2b2lkICp0eF9xdWV1ZSw8YnI+DQor IHN0cnVjdCBydGVfZXRoX3JlY3ljbGVfcnhxX2luZm8gKnJlY3ljbGVfcnhxX2luZm8pOzxicj4N Cit2b2lkIGk0MGVfcmVjeWNsZV9yeF9kZXNjcmlwdG9yc19yZWZpbGxfdmVjKHZvaWQgKnJ4X3F1 ZXVlLCB1aW50MTZfdCBuYl9tYnVmcyk7PGJyPg0KKzxicj4NCiZuYnNwO3VpbnQxNl90IGk0MGVf cmVjdl9wa3RzX3ZlYyh2b2lkICpyeF9xdWV1ZSwgc3RydWN0IHJ0ZV9tYnVmICoqcnhfcGt0cyw8 YnI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDt1aW50MTZfdCBuYl9wa3RzKTs8YnI+DQombmJzcDt1aW50MTZfdCBpNDBlX3JlY3Zf c2NhdHRlcmVkX3BrdHNfdmVjKHZvaWQgKnJ4X3F1ZXVlLDxicj4NCmRpZmYgLS1naXQgYS9kcml2 ZXJzL25ldC9pNDBlL21lc29uLmJ1aWxkIGIvZHJpdmVycy9uZXQvaTQwZS9tZXNvbi5idWlsZDxi cj4NCmluZGV4IDhlNTNiODdhNjUuLjU4ZWI2MjdhYmMgMTAwNjQ0PGJyPg0KLS0tIGEvZHJpdmVy cy9uZXQvaTQwZS9tZXNvbi5idWlsZDxicj4NCisrKyBiL2RyaXZlcnMvbmV0L2k0MGUvbWVzb24u YnVpbGQ8YnI+DQpAQCAtNDIsNiArNDIsOCBAQCB0ZXN0cG1kX3NvdXJjZXMgPSBmaWxlcygnaTQw ZV90ZXN0cG1kLmMnKTxicj4NCiZuYnNwO2RlcHMgKz0gWydoYXNoJ108YnI+DQombmJzcDtpbmNs dWRlcyArPSBpbmNsdWRlX2RpcmVjdG9yaWVzKCdiYXNlJyk8YnI+DQombmJzcDs8YnI+DQorc291 cmNlcyArPSBmaWxlcygnaTQwZV9yZWN5Y2xlX21idWZzX3ZlY19jb21tb24uYycpPGJyPg0KKzxi cj4NCiZuYnNwO2lmIGFyY2hfc3ViZGlyID09ICd4ODYnPGJyPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7c291cmNlcyArPSBmaWxlcygnaTQwZV9yeHR4X3ZlY19zc2UuYycpPGJyPg0K Jm5ic3A7PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj4tLTxicj4NCjIuMjUu MTxicj4NCiZuYnNwOzxvOnA+PC9vOnA+PC9wPg0KPC9ibG9ja3F1b3RlPg0KPC9kaXY+DQo8L2Rp dj4NCjwvYm9keT4NCjwvaHRtbD4NCg== --_000_AS8PR08MB7718CC0E3296731322F0FFF2C852AAS8PR08MB7718eurp_--