From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id CaHnJ6Aee1+oBgAAWB0awg (envelope-from ) for ; Mon, 05 Oct 2020 09:24:48 -0400 Received: by simark.ca (Postfix, from userid 112) id 9467A1EE0F; Mon, 5 Oct 2020 09:24:48 -0400 (EDT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-1.1 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,MAILING_LIST_MULTI,UNPARSEABLE_RELAY,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.2 Received: from sourceware.org (server2.sourceware.org [8.43.85.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPS id 9F2FD1E58C for ; Mon, 5 Oct 2020 09:24:46 -0400 (EDT) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 007F9393C868; Mon, 5 Oct 2020 13:24:46 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 007F9393C868 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1601904286; bh=ty94xh3iRRwVtDEpr0k4Gs5nNtkB6KkU3JYu7ISRcWY=; h=To:Subject:Date:References:In-Reply-To:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc: From; b=HShsriQqOd504TC75Lcm9RceDb6E5NAufVFi49Vc/88ayoqQfRwn95bYQMzdWwiJm I441vEKyWmYRhsHSzCni20cxP4HH3XFVYBGMsJC04BYiyE4jMvzIsXvKWl1YI8fJtY +RE5ExEmtzcL2pgOJ6z+PRxLhHDWSlmqgnBZEvlo= Received: from FRA01-MR2-obe.outbound.protection.outlook.com (mail-eopbgr90083.outbound.protection.outlook.com [40.107.9.83]) by sourceware.org (Postfix) with ESMTPS id 95CDE3861836 for ; Mon, 5 Oct 2020 13:24:22 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 95CDE3861836 Received: from AM6P192CA0069.EURP192.PROD.OUTLOOK.COM (2603:10a6:209:82::46) by PR2PR08MB4842.eurprd08.prod.outlook.com (2603:10a6:101:22::23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3433.39; Mon, 5 Oct 2020 13:24:20 +0000 Received: from AM5EUR03FT018.eop-EUR03.prod.protection.outlook.com (2603:10a6:209:82:cafe::38) by AM6P192CA0069.outlook.office365.com (2603:10a6:209:82::46) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3433.34 via Frontend Transport; Mon, 5 Oct 2020 13:24:20 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; sourceware.org; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;sourceware.org; dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM5EUR03FT018.mail.protection.outlook.com (10.152.16.114) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3433.34 via Frontend Transport; Mon, 5 Oct 2020 13:24:19 +0000 Received: ("Tessian outbound a0bffebca527:v64"); Mon, 05 Oct 2020 13:24:19 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 54ee8c23a2717161 X-CR-MTA-TID: 64aa7808 Received: from e4e1c9f009ac.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 62AA54AA-2647-44A6-B5EC-E158E78D8216.1; Mon, 05 Oct 2020 13:24:12 +0000 Received: from EUR04-HE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id e4e1c9f009ac.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 05 Oct 2020 13:24:12 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=NmD9Erpsp021L/eiW96HiAovec6W4XnnxqsIZdstzJLgqFlWbBZ10uFy0G2q3y7nVr96EzFLSq/+XuNV30CPXMvH6IdqbSToQGQW+X95aWI8DJVLTqDLi8nl763fBRC7/adPBtSOuuIadis17Hpvm0YNsdcrdXmhi4mOHNjo+66J+7tcOPaBnpg4/C9jAwYD6fIea7XfK3Nzh7OoUmyiXeRaB0ZvVirMiS9X+Paty40mWVMTUQPPkQ1jUoa694V7vQ5UzDr5mCYw0KgXb3cTZiXT+gYXsI3UzgVoay4/89JRyzg5PKJ3Ox3YuIuuApRIYbGp7Uv4YuqxK9o/KcqEIQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ty94xh3iRRwVtDEpr0k4Gs5nNtkB6KkU3JYu7ISRcWY=; b=K5r9a7ODBfF3tkRbqfigooI8UbzmY32/iVs1zWxDOaSzCAZYLTpqogRBX5UMlvKziUs8KPu7hF2gnACC640J4gAYEs5CEV+AggtBIbEYvjbF35tR6kakAgd+04l1/gNWkqA+9xpPqyibRcqtLnOHt9mJarK8f9lOJ8kL2+zdivWOUtXU2MAyZ+6eY/3MsMzL7dwzzO5TXhrSnJAorVa5s7wsHGfA5nQiSRklcn6GDJGwhssHB4U/WdLdJFA2WiP9hRYVPT8NevpxFRvJQ9exMq47sf1qCRwfF+mGqDnXFAg0SDvK0gE9/6FyS+H2S9E6/iFv4YV4mkX8JGL6ety9UQ== 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 AM6PR08MB3957.eurprd08.prod.outlook.com (2603:10a6:20b:a2::14) by AM6PR08MB5078.eurprd08.prod.outlook.com (2603:10a6:20b:e7::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3433.38; Mon, 5 Oct 2020 13:24:10 +0000 Received: from AM6PR08MB3957.eurprd08.prod.outlook.com ([fe80::e46d:da11:d7b9:7380]) by AM6PR08MB3957.eurprd08.prod.outlook.com ([fe80::e46d:da11:d7b9:7380%7]) with mapi id 15.20.3433.044; Mon, 5 Oct 2020 13:24:10 +0000 To: Luis Machado Subject: Re: [PATCH v2] gdb: add support for handling core dumps on arm-none-eabi Thread-Topic: [PATCH v2] gdb: add support for handling core dumps on arm-none-eabi Thread-Index: AQHWmbEmyFVTX/OuJ0ePqJcu2aVHNamI+w0AgAAHLYA= Date: Mon, 5 Oct 2020 13:24:10 +0000 Message-ID: <51A99122-BFD3-47E9-BB89-0FD29D1895E3@arm.com> References: <20201003181451.GA2211174@google.com> <5aea0b20-c5e5-8b70-e4ca-d300bdb1100f@linaro.org> In-Reply-To: <5aea0b20-c5e5-8b70-e4ca-d300bdb1100f@linaro.org> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-mailer: Apple Mail (2.3608.120.23.2.1) Authentication-Results-Original: linaro.org; dkim=none (message not signed) header.d=none;linaro.org; dmarc=none action=none header.from=arm.com; x-originating-ip: [82.23.123.38] x-ms-publictraffictype: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 2ced008e-b9a3-4c9a-1ff5-08d86931f78d x-ms-traffictypediagnostic: AM6PR08MB5078:|PR2PR08MB4842: X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true nodisclaimer: true x-ms-oob-tlc-oobclassifiers: OLM:10000;OLM:10000; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: pSiJH/FVoN4bHwoHnc22AigNgfHMR8Chsq3FGVnYyn7YVd0U9Xq5gOXoSX82bbDbABUreogxUsChEhmA66ZHbgIKTFAMEEZaBzjHcoGLb1dmFTdc7knUqsU77qOulTz3wWVhV5La0xzCn833iuVBSPyJlwiZIaQv8flwc6WP6l0BzBKi1+DogWi1kfnS5RrYmcAbGpRJJTkDAfyj0NMz+aVktuywg6tF1Q+wutf2RfblYNQ7sBaYMgqH9wx8CZZAqsvtVktywtwv9xf9U5nGwYi/Hz3+kRWk2yNQEWoZZiLCo3Pp9QsXTI97emaiL5Td/vP6ew/PPomGhHeQKeA0dXHvYnDkuRFm728fzOF8yG04zwH/4NWKRsOdYdH53vdvXQnN+Ih2kIAAFPw+BtHbCgvQX4EEMXeHRTIb+YQUcDhI97SXBzpcqQ8TZBjSlkdz X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM6PR08MB3957.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(39850400004)(366004)(346002)(396003)(136003)(376002)(91956017)(2616005)(76116006)(8676002)(316002)(5660300002)(478600001)(6512007)(6916009)(64756008)(66556008)(53546011)(6486002)(6506007)(66446008)(66476007)(966005)(66946007)(83380400001)(186003)(54906003)(83080400001)(33656002)(86362001)(4326008)(2906002)(36756003)(8936002)(71200400001)(26005)(30864003)(2004002); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: 4ahYOQI2ziqg5nrcejsAjwcIzf/qTmvw/zTdnzg/drh5ui2O6kKh0kRa2NrO3pdBwKP9QLR4KJaK1LtPO8INIoY9yvbqc9+QhTAtCW0HYpQig2yRaWUiMKRbPRNs9IJrFvh6knMfYS5UHdKBpM2TAnZZmEWRzSlHLcUfmvnKKhkfOD/mC/7ZCsNRfuNDquxzQTofn1ejjCFiXFqK6n80uGTX2xXAu80TvXprCFhCX4ZYFnCgEhnG/AMl3tYjVZRrohAmoqLZmZFqGSXT7ehMPBJA6zuRUAZWbeYj66ie0orHeB48+1b9wCXZKeh/2RxH06m/LEF9dZfpei59L7Yq7b41zB692+dx8CBVR2PMFvEEVw5KSyV1ruJ1saJwlPeplf7qtn4Wl7x6kH8815pWUNOLR8AId93axUwprI2vA6V4HCBOvN7jiEKuQDZ0v8vbuUopyEkDKcrvfXWuwqM2LeFwUM3aJH4Gsxn5OID02hVIhH6Fk/h5kDoy17r3mk5fnxUiiE3blk5H4gdSTo4lu457yNWkIBV2EQyK8563FxLSy1WnSWVXas0TZvFI8x9pdppJnRbrH6Pg4NsELILP3vQXwi7Sa+cRZmBdAl/Ktpt/Pu/s2eyz7xTkz0Gg01hrisdVWd4poaefm4Mfo+qkIA== x-ms-exchange-transport-forked: True Content-Type: text/plain; charset="utf-8" Content-ID: <6A14AB831CBCC34AA6FF0F5F11F32DD5@eurprd08.prod.outlook.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM6PR08MB5078 Original-Authentication-Results: linaro.org; dkim=none (message not signed) header.d=none;linaro.org; dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM5EUR03FT018.eop-EUR03.prod.protection.outlook.com X-MS-Office365-Filtering-Correlation-Id-Prvs: 4c0f437e-f4c2-4096-b8fe-08d86931f1f1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: vpvctKydlxfZ7gWtciinNdx5IztfuUqgKKyh1Yptl0QEq3E8o97NZrkoA88vuaMSFoivEq9s2yMwAmrLbsugvaMeHKe9j8rLSHsYDcPsQHeCjLmyFIbf4maT6oc5usRwmvr3MkjEaGjL7NLgDqEkhQdAl0TpbO/MFEaYTM2TgxuIlBhgTgV3bUOaCMO6N30TJAQjXDCkICVdcePVhmLKUVwA7ueYPGzjkAkJmwEFSNc+z7djm0qHAZyS+nB8XJTLBVBtnu5bijgo46du/DfSTTw7BajH/D+le2puXej4MhWTEhcp1jxHma/vIFeL1hsLpHM9vBxCJIEMpLa0f6Y70cbej6fSZJCvYIwLQa6XNo6k/KOjN7I+yOQtS9B/hKjQ0R3FLivQeMmhKAivU59WML1R+KIZ633z+lzFzT0fSex1OSlspaT7TxOh63a/2eVFj4JOHrl2VcfPYtuY3b4Nttg73KXdEgAa120cBN0UTNCXjrM23YJVKha5xG6yh6MA X-Forefront-Antispam-Report: CIP:63.35.35.123; CTRY:IE; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:64aa7808-outbound-1.mta.getcheckrecipient.com; PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; CAT:NONE; SFS:(4636009)(346002)(39860400002)(376002)(396003)(136003)(46966005)(336012)(2616005)(86362001)(8676002)(8936002)(5660300002)(30864003)(82740400003)(316002)(6512007)(47076004)(36906005)(82310400003)(6486002)(6862004)(81166007)(83080400001)(4326008)(478600001)(83380400001)(54906003)(33656002)(356005)(26005)(966005)(186003)(70206006)(36756003)(2906002)(53546011)(6506007)(70586007)(2004002); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Oct 2020 13:24:19.9611 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 2ced008e-b9a3-4c9a-1ff5-08d86931f78d 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: AM5EUR03FT018.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR2PR08MB4842 X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Alan Hayward via Gdb-patches Reply-To: Alan Hayward Cc: nd , "gdb-patches\\@sourceware.org" , Paul Mathieu Errors-To: gdb-patches-bounces@sourceware.org Sender: "Gdb-patches" DQoNCj4gT24gNSBPY3QgMjAyMCwgYXQgMTM6NTgsIEx1aXMgTWFjaGFkbyB2aWEgR2RiLXBhdGNo ZXMgPGdkYi1wYXRjaGVzQHNvdXJjZXdhcmUub3JnPiB3cm90ZToNCj4gDQo+IEhpLA0KPiANCj4g SSdsbCBnbyB0aHJvdWdoIHRoZSBuZXcgcGF0Y2ggc29vbi4gSSB0aGluayB0aGlzIHdhcyBoYXMg YWxyZWFkeSBiZWVuIHNhaWQsIGJ1dCBpdCB3b3VsZCBiZSBuaWNlIHRvIGhhdmUgdGhlIGNvcmUg Zm9ybWF0IGFzIGNsb3NlIGFzIHRoZSBMaW51eCBLZXJuZWwgb25lIGFzIHBvc3NpYmxlLCBidXQg dGhlbiBoYXZlIGEgZGlmZmVyZW50IEFCSSBtYXJrZXIgb3Igc29tZSBvdGhlciBpZGVudGlmaWFi bGUgdGFnIHNvIHdlIGNhbiB0ZWxsIHRob3NlIGFwYXJ0Lg0KPiANCj4gSWYgd2UgYXJlIGFkZGlu ZyBzdXBwb3J0IGZvciB0aGlzLCB3ZSBzaG91bGQgaGF2ZSBpbiBtaW5kIGl0IHNob3VsZCBiZSBm bGV4aWJsZSBlbm91Z2ggdG8gYWNjb21tb2RhdGUgb3RoZXIgdGFyZ2V0cyBhbmQgZnV0dXJlIGNo YW5nZXMsIG5vdCBqdXN0IGEgb25lLW9mZi4NCj4gDQoNCkJlZW4gZ29pbmcgYmFjayBhbmQgdG9v IG9uIG15IG9waW5pb24gaGVyZS4NClNob3VsZCB3ZSBiZSBkZWZpbmluZyBhIGZvcm1hdCBvdXJz ZWx2ZXMgaGVyZSAtIEFuZCBpZiB3ZSBkbywgd2hvIGVsc2Ugd291bGQNCnVzZSBpdC4gQnV0IGhh dmluZyBzb21ldGhpbmcgaXMgYmV0dGVyIHRoYW4gbm90aGluZy4gQW5kIGlmIGl04oCZcyBzaW1w bGUgYW5kDQpvYnZpb3VzLCBiYXNlZCBvbiBleGlzdGluZyBzdGFuZGFyZHMsIHRoZW4gbWF5YmUg dGhhdOKAmXMgYWxsIHRoYXTigJlzIG5lZWRlZC4NCg0KKzEgZm9yIEdEQiBiZWluZyBhYmxlIHRv IGdlbmVyYXRlIHRoZSBmaWxlcy4gVGhhdOKAmXMgZmFpcmx5IGNydWNpYWwuDQoNCisxIGZvciBE b2N1bWVudGF0aW9uLiBNYXliZSBldmVuIG91dHNpZGUgb2YgR0RCLiBCdXQgSeKAmW0gbm90IGVu dGlyZWx5IHN1cmUNCndoZXJlIHRoYXQgd291bGQgYmUuDQoNCldoZXJlIGl0IG1ha2VzIHNlbnNl LCBzaGFyaW5nIGNvZGUgYmV0d2VlbiBhcm0tbGludXggYW5kIGFybS1ub25lIHdvdWxkIGJlDQpn b29kIHRvby4NCg0KDQpBbGFuLg0KDQo+IE9uIDEwLzMvMjAgMzoxNCBQTSwgUGF1bCBNYXRoaWV1 IHZpYSBHZGItcGF0Y2hlcyB3cm90ZToNCj4+IFRoYW5rcyBTaW1vbiBmb3IgdGhlIHN1cGVyIGhl bHBmdWwgZmVlZGJhY2shDQo+PiBBIGZldyBhbnN3ZXJzIGlubGluZSwgYW5kIGhvcGVmdWxseSBh IHByb3Blcmx5IGZvcm1hdHRlZCBwYXRjaCBhdCB0aGUNCj4+IGJvdHRvbS4NCj4+PiBOb3RlIHRo YXQgSSBhbSB1bmFibGUgdG8gYXBwbHkgdGhpcyBwYXRjaCBlaXRoZXIgYmVjYXVzZSBsb25nIGxp bmVzIHdlcmUNCj4+PiBhZ2FpbiB3cmFwcGVkIGJ5IHlvdXIgZW1haWwgY2xpZW50LiAgUGxlYXNl IHVzZSBnaXQtc2VuZC1lbWFpbC4gIFlvdSBjYW4NCj4+PiBzdGlsbCByZXBseSBpbiB0aGUgdGhy ZWFkIGJ5IHVzaW5nIC0taW4tcmVwbHktdG8uDQo+PiBDb3VsZG4ndCBnZXQgZ2l0IHNlbmQtZW1h aWwgdG8gd29yayB3aXRoIG15IFNNVFAsIGJ1dCBJIGdvdCBzb21lIHZlcnNpb24NCj4+IG9mIG11 dHQgdG8gY29tcGx5LiBIb3BlZnVsbHkgeW91IGNhbiBhcHBseSB0aGUgcGF0Y2ggdGhpcyB0aW1l Lg0KPj4+IE9rLCBzbyB0aGF0IGFuc3dlcnMgdGhlIHF1ZXN0aW9uIGluIG15IG90aGVyIGVtYWls LCBhYm91dCB3aGljaCB0b29sDQo+Pj4gcHJvZHVjZXMgdGhpcyBmb3JtYXQgb2YgY29yZS4gIFRo ZSBhbnN3ZXIgaXMgdGhpcyBzcGVjaWZpYyBweXRob24NCj4+PiBzY3JpcHQsIGFuZCB0aGUgZm9y bWF0IGlzICJQYXVsJ3MgQVJNIGNvcmUgZm9ybWF0IiA6KS4NCj4+IEl0IHdhcyBzb21lIHRlYW0g d29yayBiZXR3ZWVuIHdoYXQgZ2RiIHVuZGVyc3Rvb2QgIm5hdGl2ZWx5IiBhbmQgd2hhdA0KPj4g dGhlIHBhdGNoIGRvZXMuDQo+PiBNb3JlIHNwZWNpZmljYWxseSwgdGhpcyBwYXRjaCBvbmx5IHNl ZW1zIHRvIHRlbGwgZ2RiIHRvIGdldCB0aGUNCj4+IHJlZ2lzdGVycyBmcm9tIHRoZSBjb3JlIGZp bGUgdGhlIHdheSBpdCB3b3VsZCBub3JtYWxseSBkbywgYW5kIHRoZW4NCj4+IHN1cHBseSB0aGVt IGFsbW9zdCB2ZXJiYXRpbSB0byB0aGUgcmVnY2FjaGUuDQo+PiBUaGUgc3RydWN0IGZvciB0aGVz ZSByZWdpc3RlcnMgaXMgbm90aGluZyBzcGVjaWFsIGVpdGhlciwgeW91IGNhbiBmaW5kDQo+PiBp dCBpbiB0aGUga2VybmVsIGNvZGUgYXMgd2VsbDoNCj4+IGh0dHBzOi8vZWxpeGlyLmJvb3RsaW4u Y29tL2xpbnV4L2xhdGVzdC9zb3VyY2UvYXJjaC9hcm0vaW5jbHVkZS91YXBpL2FzbS9wdHJhY2Uu aCNMMTM1DQo+Pj4gSSBkb24ndCBrbm93IHdoYXQgTHVpcyB0aGlua3MgYWJvdXQgdGhpcywgYnV0 IEkgd291bGQgYmUgYSBiaXQgaGVzaXRhbnQNCj4+PiB0byBhZGQgc3VwcG9ydCBpbiBHREIgZm9y IGEgY29yZSBmb3JtYXQgdGhhdCdzIG5vdCBzdGFuZGFyZCBub3IgdGhlDQo+Pj4gb3V0cHV0IG9m IHNvbWUgIndlbGwta25vd24iIHRvb2wgKHdoaWNoIHdvdWxkIGJlIGEgZGUgZmFjdG8gc3RhbmRh cmQpLg0KPj4+IA0KPj4+IElzIHRoZXJlIGEgZm9ybWF0IHRoYXQgYWxyZWFkeSBleGlzdHMgaW4g dGhlIEFSTSBlY29zeXN0ZW0gZm9yIGNvcmUNCj4+PiBkdW1wcyBvZiBiYXJlLW1ldGFsIHN5c3Rl bXMsIHdlIGNvdWxkIGJhc2Ugb3VyIHN0dWZmIG9uPw0KPj4gSSdtIG5vdCBhd2FyZSBvZiBhbnl0 aGluZyB0aGF0IGRvZXMgdGhhdC4gVGhlcmUgYXJlIHRvb2xzIHRoYXQgZ2VuZXJhdGUNCj4+IG1l bW9yeSBkdW1wcyBhbmQgQ1BVIHJlZ2lzdGVyIGR1bXBzIGludG8gdGhlaXIgb3duIHByb3ByaWV0 YXJ5IGZvcm1hdCwNCj4+IGJ1dCBub3RoaW5nIHRoYXQgSSBrbm93IHRoYXQgeW91IGNvdWxkIGNh bGwgYSAnY29yZSBmaWxlJy4NCj4+IEFyZSB0aGVyZSBvdGhlciB0b29scyBiZXNpZGVzIGdkYiB0 aGF0IGRlYWwgd2l0aCBjb3JlIGR1bXBzPyBNYXliZSB0aGF0DQo+PiBjb3VsZCBoZWxwIG1lIGZp bmQgb3RoZXIgZm9ybWF0cy4NCj4+IFRoYXQgYmVpbmcgc2FpZCwgdGhlIGZvcm1hdCB1c2VkIGhl cmUgaXMgIndlbGwta25vd24iIGluIHRoZSBzZW5zZSB0aGF0DQo+PiBpdCdzIHRoZSBleGFjdCBz YW1lIGZvcm1hdCB0aGUgbGludXgga2VybmVsIHdvdWxkIHVzZSB0byBkdW1wIGNvcmVzIG9uDQo+ PiBhcm0tbGludXgtKg0KPj4+IEFsdGVybmF0aXZlbHksIGRvIHlvdSB0aGluayB5b3UgY291bGQg aW1wbGVtZW50IEdEQidzIGdlbmVyYXRlLWNvcmUtZmlsZQ0KPj4+IGNvbW1hbmQgZm9yIGJhcmUt bWV0YWwgQVJNPyAgRmlyc3QsIGl0IHdvdWxkIG1ha2Ugc2Vuc2UgZm9yIEdEQiB0byBiZQ0KPj4+ IGFibGUgdG8gcHJvZHVjZSBhIGNvcmUgaW4gc29tZSBmb3JtYXQgYW5kIGJlIGFibGUgdG8gaW5n ZXN0IGl0IGFnYWluLg0KPj4+IEFuZCBpdCB3b3VsZCBhY3QgYXMgc29tZSBraW5kIG9mIGRvY3Vt ZW50YXRpb24gLyByZWZlcmVuY2UNCj4+PiBpbXBsZW1lbnRhdGlvbiBvZiB3aGF0IEdEQiBleHBl Y3RzLCBhbmQgdGhhdCBjb3VsZCBiZWNvbWUgc29tZSBkZSBmYWN0bw0KPj4+IHN0YW5kYXJkLiAg UGVvcGxlIHdobyB3b3VsZCBsaWtlIHRvIGhhdmUgdGhlaXIgY29yZSByZWFkYWJsZSBieSBHREIN Cj4+PiB3b3VsZCBwcm9kdWNlIGl0IGluIHRoaXMgZm9ybWF0Lg0KPj4gSSBoYWQgbmV2ZXIgY2xv bmVkIHRoZSBnZGIgc291cmNlIHJlcG8gdW50aWwgMiBkYXlzIGFnby4gSSBoYXZlIG5vIGlkZWEN Cj4+IGhvdyBtdWNoIHdvcmsgdGhhdCB3b3VsZCBiZSwgZ2l2ZW4gdGhhdCBJIGtub3cgbmV4dCB0 byBub3RoaW5nIGFib3V0IHRoZQ0KPj4gZ2RiIGNvZGViYXNlLg0KPj4gSSBkbyBhZ3JlZSB0aGF0 IHRoaXMgc2VlbXMgbGlrZSBhIGJldHRlciB3YXkgdG8gZG8gaXQsIHNpbmNlIHRoZXJlIGFyZQ0K Pj4gYWxyZWFkeSBtYW55IGludGVncmF0aW9ucyB3aXRoIGEgZ2RiIHNlcnZlciB0YWxraW5nIHRv IGEgbGl2ZSBiYXJlLW1ldGFsDQo+PiB0YXJnZXQgb3ZlciBhIHBoeXNpY2FsIGRlYnVnZ2VyLg0K Pj4gQXMgbG9uZyBhcyBnZGIgYWxyZWFkeSBzdXBwb3J0cyBwcmltaXRpdmVzIHRvIGdyYWIgbWVt b3J5IGR1bXBzIGFuZCBjcHUNCj4+IHJlZ2lzdGVycyBvZiBhIHJlbW90ZSB0YXJnZXQsIEknZCBp bWFnaW5lIGdlbmVyYXRpbmcgYSBjb3JlIGZpbGUNCj4+IHNob3VsZG4ndCBiZSB0b28gbXVjaCB3 b3JrLiBJJ20gcXVpdGUgc3VyZSBtb3N0IG9mIHRoYXQgZnVuY3Rpb25hbGl0eQ0KPj4gYWxyZWFk eSBleGlzdHMgZm9yIGV4dHJlbWVseSBzaW1pbGFyIHRhcmdldHMuDQo+Pj4+ICt2b2lkIF9pbml0 aWFsaXplX2FybV9ub25lX3RkZXAgKHZvaWQpOw0KPj4+PiArdm9pZA0KPj4+PiArX2luaXRpYWxp emVfYXJtX25vbmVfdGRlcCAodm9pZCkNCj4+Pj4gK3sNCj4+Pj4gKyAgZ2RiYXJjaF9yZWdpc3Rl cl9vc2FiaSAoYmZkX2FyY2hfYXJtLCAwLCBHREJfT1NBQklfTElOVVgsDQo+Pj4+ICsgICAgICAg ICAgICAgICAgICAgICAgICAgIGFybV9ub25lX2VsZl9pbml0X2FiaSk7DQo+Pj4gDQo+Pj4gSSBk b24ndCB0aGluayB0aGlzIGlzIHdoYXQgeW91IHdhbnQgdG8gZG8uICBUaGlzICJkZWNsYXJlcyIg dGhhdA0KPj4+IGNvbWJpbmF0aW9uIG9mIGFyY2hpdGVjdHVyZSBBUk0gYW5kIG9zYWJpIExpbnV4 IGV4aXN0cywgYW5kIHRoYXQNCj4+PiBhcm1fbm9uZV9lbGZfaW5pdF9hYmkgc2hvdWxkIGJlIGNh bGxlZCB3aGVuIHN1Y2ggYSBjb21ibyBpcyBkZXRlY3RlZCB0bw0KPj4+IGluaXRpYWxpemUgdGhl IGdkYmFyY2ggb2JqZWN0Lg0KPj4+IA0KPj4+IEhvd2V2ZXIsIHN1Y2ggYSBjb21ibyBpcyBhbHJl YWR5IHJlZ2lzdGVyZWQgc29tZXdoZXJlIGVsc2UsIGFzIHlvdSBjYW4NCj4+PiBndWVzczoNCj4+ PiANCj4+PiAgIGh0dHBzOi8vc291cmNld2FyZS5vcmcvZ2l0Lz9wPWJpbnV0aWxzLWdkYi5naXQ7 YT1ibG9iO2Y9Z2RiL2FybS1saW51eC10ZGVwLmM7aD1mNjBjYjUxNzYzZjFjNWIxNDgxMTQ5NGI2 NDZhY2Y1NGI2MmQxZjEwO2hiPUhFQUQjbDIwMTANCj4+PiANCj4+PiBTbyBJIHByZXN1bWUgdGhh dCBpZiB5b3UgYnVpbGQgYSBHREIgY29uZmlndXJlZCB3aXRoDQo+Pj4gLS1lbmFibGUtdGFyZ2V0 cz1hbGwgKHdoaWNoIHdpbGwgaW5jbHVkZSBhcm0tbGludXgtdGRlcC5jKSwgeW91IHdpbGwgaGl0 DQo+Pj4gdGhpcyBhc3NlcnRpb246DQo+Pj4gDQo+Pj4gICBodHRwczovL3NvdXJjZXdhcmUub3Jn L2dpdC8/cD1iaW51dGlscy1nZGIuZ2l0O2E9YmxvYjtmPWdkYi9vc2FiaS5jO2g9ZThhODEzYjYy ZjI2ODQxN2VkZjVmMGFkMTY0YzljOTQyYmQ0M2IxZTtoYj1IRUFEI2wxNzkNCj4+IEFoLCBJIHdh cyBhZnJhaWQgb2YgdGhhdC4gVGhhbmtzIGZvciB0aGUgcG9pbnRlcnMuDQo+Pj4gV2hhdCBJIHRo aW5rIHlvdSB3YW50IGlzIHRvIHJlZ2lzdGVyIGFuIG9zYWJpIHNuaWZmZXIsIHdob3NlIGpvYiBp cyB0bw0KPj4+IHRyeSB0byBndWVzcyBhbiBvc2FiaSBnaXZlbiBhIGJmZC4gIEFwcGFyZW50bHkg dGhhdCBiZmQgY2FuIHNvbWV0aW1lcw0KPj4+IHJlcHJlc2VudCB0aGUgRUxGIGNvcmUgZmlsZSwg c28geW91IGNhbiBsb29rIHVwIHNlY3Rpb25zIGFuZCBzZWUgaWYgdGhhdA0KPj4+IGZpbGUgbG9v a3MgbGlrZSBhIGNvcmUgZmlsZSB5b3UgY2FuIGhhbmRsZS4gIEFuZCBpZiBzbywgcmV0dXJuDQo+ Pj4gR0RCX09TQUJJX05PTkUuDQo+Pj4gDQo+Pj4gQW5kIHRoZW4sIHlvdSdkIG5lZWQgdG8gcmVn aXN0ZXIgKHdpdGggZ2RiYXJjaF9yZWdpc3Rlcl9vc2FiaSkgb3NhYmkNCj4+PiBHREJfT1NBQklf Tk9ORSB3aXRoIHRoZSBhcm0gYXJjaGl0ZWN0dXJlIChzYW1lIGFzIHlvdSBkaWQsIGJ1dCB3aXRo DQo+Pj4gR0RCX09TQUJJX05PTkUgaW5zdGVhZCBvZiBHREJfT1NBQklfTElOVVgpIHdpdGggdGhl IGNhbGxiYWNrIHRvIGNhbGwNCj4+PiB3aGVuIHRoaXMgY29tYm8gaXMgZGV0ZWN0ZWQ6DQo+Pj4g DQo+Pj4gICBnZGJhcmNoX3JlZ2lzdGVyX29zYWJpIChiZmRfYXJjaF9hcm0sIDAsIEdEQl9PU0FC SV9OT05FLA0KPj4+ICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJtX25vbmVfZWxmX2luaXRf YWJpKTsNCj4+PiANCj4+PiBJJ20gbm90IHN1cmUgYWJvdXQgdGhhdCBwYXJ0LCBidXQgSSB0aGlu ayBpdCdzIHRoZSByaWdodCBkaXJlY3Rpb24uDQo+Pj4gDQo+Pj4gTm93LCB0aGUgcXVlc3Rpb24g aXMgaG93IHRvIHJlY29nbml6ZSBvbmUgb2YgdGhlc2UgY29yZXM/ICBBcyBhbg0KPj4+IGV4YW1w bGUsIHRvIHJlY29nbml6ZSBDeWd3aW4gY29yZSBkdW1wcyAod2hpY2ggdXNlIEVMRiBmaWxlcyBh cyBhDQo+Pj4gY29udGFpbmVyIHdpdGhvdXQgYSByZWNvZ25pemFibGUgQUJJIHRhZywgc28gaXQn cyBraW5kIG9mIHRoZSBzYW1lDQo+Pj4gc2l0dWF0aW9uIGFzIHlvdSksIHdlIHVzZSB0aGUgLnJl ZyBzZWN0aW9uIHNpemUgdG8gZGV0ZXJtaW5lIGlmIHRoZSBCRkQNCj4+PiBpcyBhIEN5Z3dpbiBj b3JlOg0KPj4+IA0KPj4+ICAgaHR0cHM6Ly9zb3VyY2V3YXJlLm9yZy9naXQvP3A9YmludXRpbHMt Z2RiLmdpdDthPWJsb2I7Zj1nZGIvYW1kNjQtd2luZG93cy10ZGVwLmM7aD1lNDI3YzIwNTM4OTYx YmRhMmExYTBmMDMzMjA3ZWViY2U2NGM0NzI5O2hiPUhFQUQjbDEzODcNCj4+PiANCj4+PiBTbywg eW91IGNhbiBkbyB0aGF0LCBhbHRob3VnaCBJIHRoaW5rIHdlIGFsbCBhZ3JlZSB0aGF0IGl0J3Mg bm90IGlkZWFsLg0KPj4+IElmIHRoZXJlIHdhcyBzb21lIHdheSBvZiBpZGVudGlmeWluZyB0aGF0 IHRoZSBjb3JlIGlzIGluIHRoZSBmb3JtYXQgd2UNCj4+PiByZWNvZ25pemUgKHNheSwgaWYgdGhl cmUgd2FzIHNvbWUgc3BlY2lhbCBzZWN0aW9uIHdpdGggYSB0YWcpLCBpdCB3b3VsZA0KPj4+IG1h a2UgaXQgbXVjaCBlYXNpZXIgdG8gaWRlbnRpZnkgaXQgd2l0aG91dCBoYXZpbmcgdG8gZ3Vlc3Mu DQo+PiBIYXZpbmcgYSBzbmlmZmVyIGZvciBHREJfT1NBQklfTk9ORSBzZWVtcyBsaWtlIHRoZSBy aWdodCB3YXkgdG8gZG8gdGhpcy4NCj4+IFNpbmNlIHRoZSBmb3JtYXQgaXNuJ3Qgc3BlY2lmaWVk ICh5ZXQpLCBJIGNhbiBzdGlsbCBmcmVlbHkgY29udHJvbCBpdC4gSQ0KPj4gaW1hZ2luZSBJIGNv dWxkIGFkZCBzb21lIHNvcnQgb2YgT1NBQkkgbWFya2VyIGluIHRoZSBjb3JlIGZpbGUgdG8gbWFy aw0KPj4gaXQgYXMgYW4gYXJtLW5vbmUtZWFiaSBjb3JlLm8NCj4+IE15IGZpcnN0IGd1ZXNzIHdh cyB0byBzZXQgdGhlIEVJX09TQUJJIGVfaWRlbnQgZWxmIGhlYWRlciBmaWVsZCB0bw0KPj4gRUxG T1NBQklfTk9ORSwgYnV0IHRoYXQgaGFwcGVucyB0byBiZSB0aGUgc2FtZSBlbnVtIHZhbHVlIGFz DQo+PiBFTEZPU0FCSV9TWVNWLCB3aGljaCBpcyBhZmFpayBicm9hZGx5IHVzZWQgYnkgdGhlIGxp bnV4IGtlcm5lbCBmb3IgY29yZQ0KPj4gZmlsZXMuIFNvIGl0IHdvdWxkbid0IGJlIGEgZ29vZCBt YXJrZXIuDQo+PiBOb3Qgc3VyZSB3aGF0IGEgYmV0dGVyIHdheSB3b3VsZCBiZSB0byBub3QgYWJ1 c2UgdGhlIEVMRiBzdHJ1Y3R1cmUgYW5kDQo+PiBwcm9kdWNlIHJlYXNvbmFibGUgRUxGIGNvcmUg ZHVtcHMgKHNpbmNlIHRoZXkgYWxyZWFkeSB3b3JrIHNvIHdlbGwgd2l0aA0KPj4gZ2RiKS4NCj4+ IFBhdWwNCj4+IGdkYi9DaGFuZ2Vsb2cNCj4+IDIwMTgtMDktMjkgIFJvYmluIEhhYmVya29ybiA8 cm9iaW4uaGFiZXJrb3JuQGdvb2dsZW1haWwuY29tPg0KPj4gMjAyMC0xMC0wMiAgUGF1bCBNYXRo aWV1IDxwYXVsbWF0aGlldUBnb29nbGUuY29tPg0KPj4gCSogYXJtLW5vbmUtdGRlcC5jOiBTb3Vy Y2UgZmlsZSBhZGRlZC4gUHJvdmlkZSBDUFUgcmVnaXN0ZXJzIGZyb20gYSBjb3JlDQo+PiAJZmls ZQ0KPj4gCSogZmxvYXRpbmcgcG9pbnQgcmVnaXN0ZXJzIG5vdCB5ZXQgc3VwcG9ydGVkIChGSVhN RSkNCj4+IC0tLQ0KPj4gIGdkYi9NYWtlZmlsZS5pbiAgICAgfCAgIDIgKw0KPj4gIGdkYi9hcm0t bm9uZS10ZGVwLmMgfCAxMDYgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysNCj4+ICBnZGIvY29uZmlndXJlLnRndCAgIHwgICAyICstDQo+PiAgMyBmaWxlcyBjaGFu Z2VkLCAxMDkgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQ0KPj4gIGNyZWF0ZSBtb2RlIDEw MDY0NCBnZGIvYXJtLW5vbmUtdGRlcC5jDQo+PiBkaWZmIC0tZ2l0IGEvZ2RiL01ha2VmaWxlLmlu IGIvZ2RiL01ha2VmaWxlLmluDQo+PiBpbmRleCBkYmVkZTdhOWNmLi43ZjBlM2VhMGIwIDEwMDY0 NA0KPj4gLS0tIGEvZ2RiL01ha2VmaWxlLmluDQo+PiArKysgYi9nZGIvTWFrZWZpbGUuaW4NCj4+ IEBAIC03MjAsNiArNzIwLDcgQEAgQUxMX1RBUkdFVF9PQlMgPSBcDQo+PiAgCWFybS1vYnNkLXRk ZXAubyBcDQo+PiAgCWFybS1waWtlb3MtdGRlcC5vIFwNCj4+ICAJYXJtLXN5bWJpYW4tdGRlcC5v IFwNCj4+ICsJYXJtLW5vbmUtdGRlcC5vIFwNCj4+ICAJYXJtLXRkZXAubyBcDQo+PiAgCWFybS13 aW5jZS10ZGVwLm8gXA0KPj4gIAlhdnItdGRlcC5vIFwNCj4+IEBAIC0yMTUwLDYgKzIxNTEsNyBA QCBBTExERVBGSUxFUyA9IFwNCj4+ICAJYXJtLW5ic2QtdGRlcC5jIFwNCj4+ICAJYXJtLW9ic2Qt dGRlcC5jIFwNCj4+ICAJYXJtLXN5bWJpYW4tdGRlcC5jIFwNCj4+ICsJYXJtLW5vbmUtdGRlcC5j IFwNCj4+ICAJYXJtLXRkZXAuYyBcDQo+PiAgCWF2ci10ZGVwLmMgXA0KPj4gIAliZmluLWxpbnV4 LXRkZXAuYyBcDQo+PiBkaWZmIC0tZ2l0IGEvZ2RiL2FybS1ub25lLXRkZXAuYyBiL2dkYi9hcm0t bm9uZS10ZGVwLmMNCj4+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+PiBpbmRleCAwMDAwMDAwMDAw Li4yMTc0M2M0MGEwDQo+PiAtLS0gL2Rldi9udWxsDQo+PiArKysgYi9nZGIvYXJtLW5vbmUtdGRl cC5jDQo+PiBAQCAtMCwwICsxLDEwNiBAQA0KPj4gKy8qIE5hdGl2ZS1kZXBlbmRlbnQgY29kZSBm b3IgR0RCIHRhcmdldHRpbmcgYmFyZS1tZXRhbCBBUk0uDQo+PiArDQo+PiArICAgQ29weXJpZ2h0 IChDKSAyMDIwIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLg0KPj4gKw0KPj4gKyAgIFRo aXMgZmlsZSBpcyBwYXJ0IG9mIEdEQi4NCj4+ICsNCj4+ICsgICBUaGlzIHByb2dyYW0gaXMgZnJl ZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQ0KPj4gKyAg IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMg cHVibGlzaGVkIGJ5DQo+PiArICAgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVy IHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3INCj4+ICsgICAoYXQgeW91ciBvcHRpb24pIGFu eSBsYXRlciB2ZXJzaW9uLg0KPj4gKw0KPj4gKyAgIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRl ZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLA0KPj4gKyAgIGJ1dCBXSVRIT1VU IEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mDQo+PiAr ICAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAg U2VlIHRoZQ0KPj4gKyAgIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFp bHMuDQo+PiArDQo+PiArICAgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUg R05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCj4+ICsgICBhbG9uZyB3aXRoIHRoaXMgcHJvZ3Jh bS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4gICovDQo+PiAr DQo+PiArI2luY2x1ZGUgImRlZnMuaCINCj4+ICsjaW5jbHVkZSAib3NhYmkuaCINCj4+ICsNCj4+ ICsjaW5jbHVkZSAiYXJjaC9hcm0uaCINCj4+ICsjaW5jbHVkZSAiYXJtLXRkZXAuaCINCj4+ICsj aW5jbHVkZSAiZ2RiYXJjaC5oIg0KPj4gKyNpbmNsdWRlICJyZWdjYWNoZS5oIg0KPj4gKyNpbmNs dWRlICJyZWdzZXQuaCINCj4+ICsNCj4+ICtzdHJ1Y3QgYXJtX25vbmVfcmVnDQo+PiArew0KPj4g KyAgdWludDMyX3QgcmVnWzEzXTsNCj4+ICsgIHVpbnQzMl90IHNwOw0KPj4gKyAgdWludDMyX3Qg bHI7DQo+PiArICB1aW50MzJfdCBwYzsNCj4+ICsgIHVpbnQzMl90IGNwc3I7DQo+PiArICB1aW50 MzJfdCBvcmlnX3IwOw0KPj4gK307DQo+PiArDQo+PiArc3RhdGljIHZvaWQNCj4+ICthcm1fbm9u ZV9zdXBwbHlfZ3JlZ3NldCAoY29uc3Qgc3RydWN0IHJlZ3NldCAqcmVnc2V0LA0KPj4gKyAgICAg ICAgICAgICAgICAgICAgICAgICBzdHJ1Y3QgcmVnY2FjaGUgKnJlZ2NhY2hlLCBpbnQgcmVnbnVt LA0KPj4gKyAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2b2lkICpncmVncywgc2l6ZV90 IGxlbikNCj4+ICt7DQo+PiArICBjb25zdCBhcm1fbm9uZV9yZWcgKmdyZWdzZXQgPSBzdGF0aWNf Y2FzdDxjb25zdCBhcm1fbm9uZV9yZWcgKj4gKGdyZWdzKTsNCj4+ICsgIGdkYl9hc3NlcnQgKGxl biA+PSBzaXplb2YgKGFybV9ub25lX3JlZykpOw0KPj4gKw0KPj4gKyAgLyogSW50ZWdlciByZWdp c3RlcnMuICAqLw0KPj4gKyAgZm9yIChpbnQgaSA9IEFSTV9BMV9SRUdOVU07IGkgPCBBUk1fU1Bf UkVHTlVNOyBpKyspDQo+PiArICAgIGlmIChyZWdudW0gPT0gLTEgfHwgcmVnbnVtID09IGkpDQo+ PiArICAgICAgcmVnY2FjaGUtPnJhd19zdXBwbHkgKGksIChjaGFyICopJmdyZWdzZXQtPnJlZ1tp XSk7DQo+PiArDQo+PiArICBpZiAocmVnbnVtID09IC0xIHx8IHJlZ251bSA9PSBBUk1fU1BfUkVH TlVNKQ0KPj4gKyAgICByZWdjYWNoZS0+cmF3X3N1cHBseSAoQVJNX1NQX1JFR05VTSwgKGNoYXIg KikmZ3JlZ3NldC0+c3ApOw0KPj4gKw0KPj4gKyAgaWYgKHJlZ251bSA9PSAtMSB8fCByZWdudW0g PT0gQVJNX0xSX1JFR05VTSkNCj4+ICsgICAgcmVnY2FjaGUtPnJhd19zdXBwbHkgKEFSTV9MUl9S RUdOVU0sIChjaGFyICopJmdyZWdzZXQtPmxyKTsNCj4+ICsNCj4+ICsgIGlmIChyZWdudW0gPT0g LTEgfHwgcmVnbnVtID09IEFSTV9QQ19SRUdOVU0pDQo+PiArICAgIHsNCj4+ICsgICAgICBDT1JF X0FERFIgcl9wYw0KPj4gKyAgICAgICAgPSBnZGJhcmNoX2FkZHJfYml0c19yZW1vdmUgKHJlZ2Nh Y2hlLT5hcmNoICgpLCBncmVnc2V0LT5wYyk7DQo+PiArICAgICAgcmVnY2FjaGUtPnJhd19zdXBw bHkgKEFSTV9QQ19SRUdOVU0sIChjaGFyICopJnJfcGMpOw0KPj4gKyAgICB9DQo+PiArDQo+PiAr ICBpZiAocmVnbnVtID09IC0xIHx8IHJlZ251bSA9PSBBUk1fUFNfUkVHTlVNKQ0KPj4gKyAgICB7 DQo+PiArICAgICAgaWYgKGFybV9hcGNzXzMyKQ0KPj4gKyAgICAgICAgcmVnY2FjaGUtPnJhd19z dXBwbHkgKEFSTV9QU19SRUdOVU0sIChjaGFyICopJmdyZWdzZXQtPmNwc3IpOw0KPj4gKyAgICAg IGVsc2UNCj4+ICsgICAgICAgIHJlZ2NhY2hlLT5yYXdfc3VwcGx5IChBUk1fUFNfUkVHTlVNLCAo Y2hhciAqKSZncmVnc2V0LT5wYyk7DQo+PiArICAgIH0NCj4+ICt9DQo+PiArDQo+PiArc3RhdGlj IGNvbnN0IHN0cnVjdCByZWdzZXQgYXJtX25vbmVfcmVnc2V0DQo+PiArICAgID0geyBudWxscHRy LCBhcm1fbm9uZV9zdXBwbHlfZ3JlZ3NldCwNCj4+ICsgICAgICAgIC8qIFdlIGRvbid0IG5lZWQg YSBjb2xsZWN0IGZ1bmN0aW9uIGJlY2F1c2Ugd2Ugb25seSB1c2UgdGhpcyByZWFkaW5nDQo+PiAr ICAgICAgICAgICByZWdpc3RlcnMgKHZpYSBpdGVyYXRlX292ZXJfcmVnc2V0X3NlY3Rpb25zIGFu ZA0KPj4gKyAgICAgICAgICAgZmV0Y2hfcmVncy9mZXRjaF9yZWdpc3RlcikuICAqLw0KPj4gKyAg ICAgICAgbnVsbHB0ciwgMCB9Ow0KPj4gKw0KPj4gK3N0YXRpYyB2b2lkDQo+PiArYXJtX25vbmVf aXRlcmF0ZV9vdmVyX3JlZ3NldF9zZWN0aW9ucyAoc3RydWN0IGdkYmFyY2ggKmdkYmFyY2gsDQo+ PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlcmF0ZV9vdmVyX3Jl Z3NldF9zZWN0aW9uc19jYiAqY2IsDQo+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgdm9pZCAqY2JfZGF0YSwNCj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBjb25zdCBzdHJ1Y3QgcmVnY2FjaGUgKnJlZ2NhY2hlKQ0KPj4gK3sNCj4+ICsg IGNiICgiLnJlZyIsIHNpemVvZiAoYXJtX25vbmVfcmVnKSwgc2l6ZW9mIChhcm1fbm9uZV9yZWcp LCAmYXJtX25vbmVfcmVnc2V0LA0KPj4gKyAgICAgIE5VTEwsIGNiX2RhdGEpOw0KPj4gK30NCj4+ ICsNCj4+ICtzdGF0aWMgdm9pZCBhcm1fbm9uZV9lbGZfaW5pdF9hYmkgKHN0cnVjdCBnZGJhcmNo X2luZm8gaW5mbywNCj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cnVj dCBnZGJhcmNoICpnZGJhcmNoKTsNCj4+ICtzdGF0aWMgdm9pZA0KPj4gK2FybV9ub25lX2VsZl9p bml0X2FiaSAoc3RydWN0IGdkYmFyY2hfaW5mbyBpbmZvLCBzdHJ1Y3QgZ2RiYXJjaCAqZ2RiYXJj aCkNCj4+ICt7DQo+PiArICBzZXRfZ2RiYXJjaF9pdGVyYXRlX292ZXJfcmVnc2V0X3NlY3Rpb25z ICgNCj4+ICsgICAgICBnZGJhcmNoLCBhcm1fbm9uZV9pdGVyYXRlX292ZXJfcmVnc2V0X3NlY3Rp b25zKTsNCj4+ICt9DQo+PiArDQo+PiArdm9pZCBfaW5pdGlhbGl6ZV9hcm1fbm9uZV90ZGVwICh2 b2lkKTsNCj4+ICt2b2lkDQo+PiArX2luaXRpYWxpemVfYXJtX25vbmVfdGRlcCAodm9pZCkNCj4+ ICt7DQo+PiArICBnZGJhcmNoX3JlZ2lzdGVyX29zYWJpIChiZmRfYXJjaF9hcm0sIDAsIEdEQl9P U0FCSV9MSU5VWCwNCj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgIGFybV9ub25lX2VsZl9p bml0X2FiaSk7DQo+PiArfQ0KPj4gZGlmZiAtLWdpdCBhL2dkYi9jb25maWd1cmUudGd0IGIvZ2Ri L2NvbmZpZ3VyZS50Z3QNCj4+IGluZGV4IGEzZTExYzRiOWIuLjBjZjA1ZWZkZDEgMTAwNjQ0DQo+ PiAtLS0gYS9nZGIvY29uZmlndXJlLnRndA0KPj4gKysrIGIvZ2RiL2NvbmZpZ3VyZS50Z3QNCj4+ IEBAIC0xODksNyArMTg5LDcgQEAgYXJtKi0qLXN5bWJpYW5lbGYqKQ0KPj4gIAk7Ow0KPj4gIGFy bSotKi0qKQ0KPj4gIAkjIFRhcmdldDogQVJNIGVtYmVkZGVkIHN5c3RlbQ0KPj4gLQlnZGJfdGFy Z2V0X29icz0iYXJtLXBpa2Vvcy10ZGVwLm8iDQo+PiArCWdkYl90YXJnZXRfb2JzPSJhcm0tcGlr ZW9zLXRkZXAubyBhcm0tbm9uZS10ZGVwLm8iDQo+PiAgCWdkYl9zaW09Li4vc2ltL2FybS9saWJz aW0uYQ0KPj4gIAk7Ow0KPj4gLS0NCj4+IDIuMjguMC44MDYuZzg1NjEzNjVlODgtZ29vZw0KDQo=