From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 62FE5CD98DA for ; Mon, 15 Jun 2026 11:26:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:Content-Type: Content-Transfer-Encoding:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:In-Reply-To:From:References:Cc:To: Subject:Date:Message-ID:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=bZgq5nqdsOhf2pnGCqBQT9+kFQMhdHJAKzMrZbiJjRw=; b=WeizAtB6o1fFLML0N6QU2XZ8q+ 5YgE346DXxz0byJNMu5Hpq/RLDX9TcAAc4Bdcq2XAalzFftesbzUQr1u8QeXlAmrLJqajfCEVEVJt H/mhOuR7y0lFqYOgd5/85u8liDQ0H6ZA7qHnCYXs+afqcKHu1tANNNyHiHDpfaslNo4zqZ5Up+G0o PErhIqed64RdupucnzQX6aktTkESV/6SUn5JLDmwowpQfOy3PEE6mnW6uWmjCUJxvr/vgEkiAWqX7 E3NfQlg5MKEYGLOhmoBXEW0vlxRh/xy5pfaPYAG+CVt4MU6+ljMyDPHjbnr6qXcRSWhTSd1AszFVA n99F7oXA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1wZ5Rz-0000000E6GG-2djz; Mon, 15 Jun 2026 11:25:55 +0000 Received: from mail-koreacentralazon11023114.outbound.protection.outlook.com ([40.107.44.114] helo=SEYPR02CU001.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1wZ5Rs-0000000E6EX-1pQL; Mon, 15 Jun 2026 11:25:54 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=tEActk8KZSFmE/O5pAYKzhGKsho4rtaTh2I88bBfdMH2YS6PeBXYyJJM3L53mlK6LcsA39lpnTIQqCdpLnpzHcE4I6c/KrFIoXTcocNkti22XFC/RULgrbCXvAn7I9/pJ0tVOcv83ABMTgfW8E3Mrf+UdHbrnYAxMLlhxdvsDI2G5rdlcAD7BOnlatW25VEno0H623JMR1zcmyh2n3vp81EDhlpn0ua9KPv1NATbshzLvW/dmgjvbFvVX1aWemW2rGMclkidd/sz7Wx3ozS7FJrv6YDtDw/TU913t6cuOHD3u/T4ge3OECeZNpoOgzEBoHtMM9NWutRrr8rLNKY4CA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=gPxmpHnb24cxkCq6I23Sx4IjYKhbQfEmDMfwX5QGklE=; b=eNofwHvCizkjiXw7aU+ob23W0UABA6e7vbMHKSUhD0T3HAEOJkrDZL9BEy5Zll00QQ428gzl1SJL7S3Cy6GzcJsXyMCRGTtA1EQ6FAze5NliABUYp9/9E3tHeq9Qzd74vir6YB86JnCuRrhdc7TTSJHvxOzvgF9mtJl3ywWM8aqFGNe8LWnQVUpvSSrKXBJdOMhRr0sHTv9JnsDLxqe2GC97P89hMD+2zx4SLO9hkai7Bf5NlX3vINffEVlB5rptnc3zCWZiu1o5fidiGa43+SN1MtKxaaPLGSjXFB9SBVBeonz+XpajKjJyUzlnPehrCsGMvqiUxitO9M7ET8376g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amlogic.com; dmarc=pass action=none header.from=amlogic.com; dkim=pass header.d=amlogic.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amlogic.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=gPxmpHnb24cxkCq6I23Sx4IjYKhbQfEmDMfwX5QGklE=; b=Fs3qBuZTIJbQYS2S8nsUIodFSDw2/yht9sleqti9d5oPzGxl3ZNj3E2vlzxVULpSvG9AHmIlBzvXFeGcyQOMdwhB09ENEXNOK61RnFd47BDj6zzzQSKTj1Iow2KW3DY6yziRYvbMbb5gnVWVj6jKMYx5tvcop3xbgWXmd2iUmLo72VENC+Iz53YaAcN1hXKztFiUmIBmR2EsM6VVO2dzzPzFFrRV2dKVyK3/WMASPAQ0uK94du9Fx8ZqTt2XMFVXI+yfxRJ6JfGYyPuaat5zdmoGsJERciJzHW3R5pkhwcqQqq2aXa+PjADhPfaOh9vXJzXP/5FxwAS2+jhTynrV3Q== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amlogic.com; Received: from KL1PR03MB7149.apcprd03.prod.outlook.com (2603:1096:820:ca::7) by SEZPR03MB8710.apcprd03.prod.outlook.com (2603:1096:101:234::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.139.11; Mon, 15 Jun 2026 11:25:22 +0000 Received: from KL1PR03MB7149.apcprd03.prod.outlook.com ([fe80::2f06:12a:fff0:6506]) by KL1PR03MB7149.apcprd03.prod.outlook.com ([fe80::2f06:12a:fff0:6506%5]) with mapi id 15.21.0139.009; Mon, 15 Jun 2026 11:25:22 +0000 Message-ID: Date: Mon, 15 Jun 2026 19:25:20 +0800 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v3 2/2] clk: amlogic: Add A9 peripherals clock controller driver To: Jerome Brunet , Jian Hu via B4 Relay Cc: Neil Armstrong , Michael Turquette , Stephen Boyd , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Xianwei Zhao , Kevin Hilman , Martin Blumenstingl , linux-amlogic@lists.infradead.org, linux-clk@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org References: <20260610-a9_peripherals-v3-0-d07a78085f71@amlogic.com> <20260610-a9_peripherals-v3-2-d07a78085f71@amlogic.com> <1jecieftme.fsf@starbuckisacylon.baylibre.com> From: Jian Hu In-Reply-To: <1jecieftme.fsf@starbuckisacylon.baylibre.com> X-ClientProxiedBy: SI1PR02CA0032.apcprd02.prod.outlook.com (2603:1096:4:1f6::12) To KL1PR03MB7149.apcprd03.prod.outlook.com (2603:1096:820:ca::7) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: KL1PR03MB7149:EE_|SEZPR03MB8710:EE_ X-MS-Office365-Filtering-Correlation-Id: 410d5bf7-95f1-471c-4439-08decad0ca10 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|1800799024|7416014|376014|23010399003|11063799006|4143699003|56012099006|6133799003|3023799007|18002099003|22082099003; X-Microsoft-Antispam-Message-Info: NScyRDXGWR9/nDuBkdheMNY1Pme1sFO/bprvonqHknnRYbFjUmj6g2EIbLyLoZ0IG2DSbjrqLbCZ/4kYwPAbLQyHDZv/L/Znn3sHP0bBhTlhEgNx7lwF/UtnAYHPLXpoXcSyILViQ6AgLlh3D4VMCtNI/cxrP/cR2D2AZ+CjtvRYtb/OMNwYSf8DYZWy0TDcGfXVC2sf+4AT/uIh1org+vgkgc6080t+ouXl61+QFIz3KSOGWCmkXZAu4JnudD4FaIXuLmrba28JLtQXtHOVUpoY1l0lcKb3NMaCexvBNjC7/j7BCeeBlLOiQMwHQwLdzfG/EAtxuYjBHYBDh3wCDnKt5s1gWFf0usSxSsGl9pQv1IjXRKSn7aCeViIQfZ7MEcQS6VM5rj0MMIGKebcfMpKD575d4e4oqAySy5CmO+t6IJMXfmxseasZIcR6cwhgTJKijY3nUqc97djv/oSCAHYamXMyIDVxQ6t+TkbjPH46OHLbtnRbHPMPyPVQ+mtMWXvFLS8wIQmtMofRAr8h5VikflSpSmdqtnmi9RC4Ekw8PmD7prwLquaw8v6r6qkit4k1vm96j6EsChcdars3r2uvpoT8CMAjyEb6hvGB4Qz+HP9o1SEiyu9mNKlB2qumlifBk+vc59rJRhQann+SFg== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:KL1PR03MB7149.apcprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(1800799024)(7416014)(376014)(23010399003)(11063799006)(4143699003)(56012099006)(6133799003)(3023799007)(18002099003)(22082099003);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?MmRGLzBRbGJ1aTYyVUs2ZGxlTllDUCtzdm9pcUJXenA5U0U5RmFNRzZvMnpw?= =?utf-8?B?R3d3TXFtQlhjNk56RkltN1Y1Z3ZYTmZvbEc1OHpXcmhvV2RTMUM3VFlsR2li?= =?utf-8?B?Ukx1eEx3R1NuSEYxKzdzZGkvdkE3ZWNPc0VZUy9ad3dvNkttZGd1dDFib3JO?= =?utf-8?B?SE5ScER0eCtnQjc5cStnaTEwOVJJbVI3NjJkQVRDcXIySXkrVk1zdnpRYWVY?= =?utf-8?B?WDV3VlBxdUZUZmVtek1CSldSNEo0clNMQnNPamJYTjUvdzlSc01kNjRsU2h0?= =?utf-8?B?MGZuQU1GcGk3QzR3Nk5QZldqaXBmR3Q2NFdUL2tUSURtR1ppb0lydzAzck1T?= =?utf-8?B?aWU4N3hXR05ZekNpbkpqV2RxZWE3VGpQM2JOU3N1SEdUZU1wcnVVUXNDZHdO?= =?utf-8?B?VDNHMWhpUlk0eTgydHkzMWFTVkdKdmZEMVgvZCsxT3V4MVp5VVYybjluakhZ?= =?utf-8?B?eUJuTEkvUHg1VWxJNVhnTGZTbHVMM3l0V0psMGxPTnErV1JlK1V0UnFrMXVT?= =?utf-8?B?VWttQldyZjM4RG1sb3pyWFFlZWg2TUVyZW5aSXp1YVFVWHI2cWlqVi9YMXIv?= =?utf-8?B?RmNhellqaUxuU1ZxWGhodUUxYVAxTmVSTUJHUTdzZEl5c2tZUU01a2JoVzB2?= =?utf-8?B?c0FPejRGVFlkeTJwdHJQK0VvQmZCVTVlQUhCVE0yK1FWT2lkTGtHMGl2NmJM?= =?utf-8?B?QUg1NndYdXJvV2M4bHZNWmVkSWwySFFlOXVRS2phdlBwZDBUaEtESnZ0L25N?= =?utf-8?B?ZGZSamZ1OFVLdk50N2ZHOHlOZzdncUpVdm5HbWFUZkhhSVJIOHV0Uzh1U3dR?= =?utf-8?B?SUdTM1M3c2k4STdjWkdpWERwTGZNRE9qNXNKMmtWU0VaRzFENG5SREc2SkhC?= =?utf-8?B?R1UyQ0Evc1VSQ3lHNVZVam5mQ2Y0djJrd01vMklyVHU3bmpRdDk2MDFhNE96?= =?utf-8?B?OFhoenZuaGd1cEZ6OFAzaWJ4OFRvdTNtaWdxd1c4V3lxdnIrbFQxZG14NzNj?= =?utf-8?B?alVJdDRCOG92QkNCUWErSlQ2Q21VTjVua25SOTJaVEJxVm55TEZXa09Gcksz?= =?utf-8?B?SUFjMm9HczhoL1o5QVlmU3V3emdjb21ueFpaY20yUDhvUkRWTnp2ck9BMFBX?= =?utf-8?B?TXZlS1V0bUxRRE96M0VWZG05TXZ2WGJVcktiWkJpN3BJQlF4eVA4Y3Z5RVFW?= =?utf-8?B?eG4weXhKT0ZEbmpudTBBcXovT0FXUG53c3NIemxqN2dnaUZSUVpJeXNwWWNG?= =?utf-8?B?QWE4dGJEdmpsdUpER0VLSTVLem44ZHlBajlUdG1idXZGMmpRWUg5ZUxDZ25m?= =?utf-8?B?aFo2aElqKzF0bHZHZWRsaUxsd0d0WjI4dHc1Qm9PRmRPTnM4eGc0bEJNRytu?= =?utf-8?B?UjgraU9kWklHUDhsT1VUREVWK1p2UE01bElpUTBvdXVJYVBQd3dZVitmbXFJ?= =?utf-8?B?MlkyRDNGRkF2cWhCRkJHZmxUVkh1RDFJZ3NsTG9xV0hUdHFFWGhrSGlnRS9P?= =?utf-8?B?bC9LbUJITFJvSWxvUjR2ZjhCZWJ6cUZGQ1B5UHB6RTRyZk85b0k5bzU1b20x?= =?utf-8?B?SVpnemNQTklGVDRUWmgrazVhSHJ4QkJZVi9FbUdXVmZVMGdKbzRlS05tSW5u?= =?utf-8?B?RjEzMGZFSXZWVHNvOFZuQllDMmJrVnlWUGNpSW0wcnpaRTAzcCtsZmVZY1hD?= =?utf-8?B?cmdMeHBsZ3BoRVhBRnJNYTJuTGVWcU81MVlEQ3VsNi9JVEpOZ1pybE5ueFR5?= =?utf-8?B?TVNZcG96cTZyTDJWd2haUmNmbmNqL1c4MzFDZlpUVjFOTms0UTk0R2M3UVRw?= =?utf-8?B?RER3ZEJHS0s4MHZ0cDBSTG0vaVVPeWw0MFZBSlRVdlgwbmtMd1FxaTlGaHMx?= =?utf-8?B?Vkc5Q2dNc0FPeGhPSXU2OXJPOEhWMjROZTk1aUJseU04eDdZLzBOL1YrcHJs?= =?utf-8?B?bFVGR0pISFQxY0FyN2NWL0Y4NlFGK2xoU1FvYlFqTGpNUHpmUFRqeDRmOW5G?= =?utf-8?B?eEVBdmVleWovaTJRWlMzTTIxSFBnUkNreVNVaDFvcXdLVHNwdmEyYkcyTDNx?= =?utf-8?B?YTVjV05sUlBVWWp0d3F1V2d1bG1FNytyMUN4eDlSbURFblRoQnliTVpBSEdV?= =?utf-8?B?RDBMUTN1SzYrc3ZWWVlWNDhhNS9FY3ZYeFlEcmNJNlRIZFFMNnhQUFpZZW0z?= =?utf-8?B?U0RUU2Z5YjNQMndsbkJMSGZ6bzhwSWFlMGdiWk5aOVlHK1B2biswazBRdFha?= =?utf-8?B?R0JtamdJWDdFMTRqbHhvQTFzT0U2dnE2ZnRjYlF0L1JmUmpnWXdGQ2RPWkhM?= =?utf-8?B?T3kvbXdaZCtEd0ROc3IvOUxCMjF0aklPNWcxelBibENpTkwzM0pYQT09?= X-OriginatorOrg: amlogic.com X-MS-Exchange-CrossTenant-Network-Message-Id: 410d5bf7-95f1-471c-4439-08decad0ca10 X-MS-Exchange-CrossTenant-AuthSource: KL1PR03MB7149.apcprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Jun 2026 11:25:22.6586 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0df2add9-25ca-4b3a-acb4-c99ddf0b1114 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Zcs1U/pB3iRLZurlibxyLkygIZrM6eXo6z5UmQFrsGkWv9y+AGEdRRhT/Ed7flyOu2/6ZoA+vn9tNNqExhT2KQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SEZPR03MB8710 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.9.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20260615_042548_665725_FC61796E X-CRM114-Status: GOOD ( 23.27 ) X-BeenThere: linux-amlogic@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "linux-amlogic" Errors-To: linux-amlogic-bounces+linux-amlogic=archiver.kernel.org@lists.infradead.org Ck9uIDYvMTAvMjAyNiA4OjQ5IFBNLCBKZXJvbWUgQnJ1bmV0IHdyb3RlOgo+IFsgRVhURVJOQUwg RU1BSUwgXQo+Cj4gT24gbWVyLiAxMCBqdWluIDIwMjYgYXQgMTY6MTQsIEppYW4gSHUgdmlhIEI0 IFJlbGF5IDxkZXZudWxsK2ppYW4uaHUuYW1sb2dpYy5jb21Aa2VybmVsLm9yZz4gd3JvdGU6Cj4K Pj4gRnJvbTogSmlhbiBIdSA8amlhbi5odUBhbWxvZ2ljLmNvbT4KPj4KPj4gQWRkIHRoZSBwZXJp cGhlcmFscyBjbG9jayBjb250cm9sbGVyIGRyaXZlciBmb3IgdGhlIEFtbG9naWMgQTkgU29DIGZh bWlseS4KPj4KPj4gU2lnbmVkLW9mZi1ieTogSmlhbiBIdSA8amlhbi5odUBhbWxvZ2ljLmNvbT4K Pj4gLS0tCj4+ICAgZHJpdmVycy9jbGsvbWVzb24vS2NvbmZpZyAgICAgICAgICB8ICAgMTUgKwo+ PiAgIGRyaXZlcnMvY2xrL21lc29uL01ha2VmaWxlICAgICAgICAgfCAgICAxICsKPj4gICBkcml2 ZXJzL2Nsay9tZXNvbi9hOS1wZXJpcGhlcmFscy5jIHwgMTkyNSArKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysKPj4gICAzIGZpbGVzIGNoYW5nZWQsIDE5NDEgaW5zZXJ0aW9ucygr KQo+PgoKWyAuLi4gXQoKPj4gKwo+PiArLyogQ2hhbm5lbCA2IGlzIHVuY29ubmVjdGVkLiAqLwo+ PiArc3RhdGljIHUzMiBhOV9nbGJfcGFyZW50c192YWxfdGFibGVbXSA9IHsgMCwgMSwgMiwgMywg NCwgNSwgNyB9Owo+PiArc3RhdGljIHN0cnVjdCBjbGtfcmVnbWFwIGE5X2RzcGE7Cj4gV2hhdCBp cyB0aGlzID8KCgpUaGUgcGVyaXBoZXJhbCBjbG9jayBkZWZpbml0aW9ucyBhcmUgb3JkZXJlZCBi eSByZWdpc3RlciBvZmZzZXQuCgpkc3BhIGlzIG9uZSBvZiB0aGUgcGFyZW50cyBvZiB0aGUgZ2xi IGNsb2NrLCB3aGlsZSB0aGUgZHNwIGNsb2NrIApyZWdpc3RlcnMgYXJlIGxvY2F0ZWQgYWZ0ZXIg dGhlIEdMQiBjbG9jayByZWdpc3RlcnMuCgpTaW5jZSBnbGIgcmVmZXJlbmNlcyBhOV9kc3BhIGJl Zm9yZSBpdHMgZnVsbCBkZWZpbml0aW9uIGFwcGVhcnMsIHRoZSAKZGVjbGFyYXRpb24KCnN0YXRp YyBzdHJ1Y3QgY2xrX3JlZ21hcCBhOV9kc3BhOwoKaXMgYWRkZWQgYXMgYSBmb3J3YXJkIGRlY2xh cmF0aW9uIHRvIHNhdGlzZnkgdGhlIGNvbXBpbGVyLgoKCldvdWxkIGl0IG1ha2Ugc2Vuc2UgdG8g cmVsYXggdGhlIHJlZ2lzdGVyLW9mZnNldCBvcmRlcmluZyBpbiB0aGlzIGNhc2U/CgpCeSBkZWZp bmluZyB0aGUgRFNQIGNsb2NrIGJlZm9yZSB0aGUgR0xCIGNsb2NrLCB3ZSBjb3VsZCByZW1vdmUg dGhlIApmb3J3YXJkIGRlY2xhcmF0aW9uIG9mIGE5X2RzcGEuCgo+PiArCj4+ICtzdGF0aWMgY29u c3Qgc3RydWN0IGNsa19wYXJlbnRfZGF0YSBhOV9nbGJfcGFyZW50c1tdID0gewo+PiArICAgICB7 IC5md19uYW1lID0gInh0YWwiLCB9LAo+PiArICAgICB7IC5odyA9ICZhOV9kc3BhLmh3IH0sCj4+ ICsgICAgIHsgLmZ3X25hbWUgPSAiZmRpdjMiLCB9LAo+PiArICAgICB7IC5md19uYW1lID0gImZk aXY0IiwgfSwKPj4gKyAgICAgeyAuZndfbmFtZSA9ICJmZGl2NSIsIH0sCj4+ICsgICAgIHsgLmh3 ID0gJmE5X2lzcC5odyB9LAo+PiArICAgICB7IC5md19uYW1lID0gInJ0YyIsIH0KPj4gK307Cj4+ ICsKPj4gK3N0YXRpYyBBOV9DT01QX1NFTChnbGIsIEdMQl9DTEtfQ1RSTCwgOSwgMHg3LCBhOV9n bGJfcGFyZW50cywKPj4gKyAgICAgICAgICAgICAgICBhOV9nbGJfcGFyZW50c192YWxfdGFibGUp Owo+PiArc3RhdGljIEE5X0NPTVBfRElWKGdsYiwgR0xCX0NMS19DVFJMLCAwLCA3KTsKPj4gK3N0 YXRpYyBBOV9DT01QX0dBVEUoZ2xiLCBHTEJfQ0xLX0NUUkwsIDgsIDApOwo+PiArCj4+ICtzdGF0 aWMgc3RydWN0IGNsa19yZWdtYXAgYTlfdXNiXzQ4bV9kdWFsZGl2X2luID0gewo+PiArICAgICAu ZGF0YSA9ICYoc3RydWN0IGNsa19yZWdtYXBfZ2F0ZV9kYXRhKSB7Cj4+ICsgICAgICAgICAgICAg Lm9mZnNldCA9IFVTQl9DTEtfQ1RSTCwKPj4gKyAgICAgICAgICAgICAuYml0X2lkeCA9IDMxLAo+ PiArICAgICB9LAo+PiArICAgICAuaHcuaW5pdCA9IENMS19IV19JTklUX0hXKCJ1c2JfNDhtX2R1 YWxkaXZfaW4iLCAmYTlfdXNiXzQ4bV9wcmUuaHcsCj4+ICsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgJmNsa19yZWdtYXBfZ2F0ZV9vcHMsIDApLAo+IFNhbWUgY29tbWVudCBhcyBvbiB0 aGUgQU8gY29udHJvbGxlcgoKCk9rLCBJIHdpbGwgZHJvcCBDTEtfSFdfSU5JVCosIGFuZCBhcHBs eSB0aGUgc2FtZSBjaGFuZ2UgdG8gdGhlIG90aGVyIApjbG9jayBkZWZpbml0aW9ucy4KCgpbIC4u LiBdCgo+PiArCj4+ICsvKiBDaGFubmVsIDMgaXMgdW5jb25uZWN0ZWQuICovCj4gWW91IG1lYW50 IDNyZCBJIGd1ZXNzIGJ1dCB0aGlzIGlzIG1pc2xlYWRpbmcgYW5kIGNvbmZ1c2luZyB3aXRoIHRo ZQo+IHRhYmxlIGJlbGxvdy4gQ2hhbm5lbCAyIHdvdWxkIGJlIG1vcmUgYXBwcm9wcmlhdGUgSSB0 aGluaywgc2luY2UgdGhvc2UKPiBhcmUgMC1iYXNlZC4KCgpZb3UgYXJlIHJpZ2h0LMKgIFRoZSAz cmQgY2hhbm5lbCBpcyB1bmNvbm5lY3RlZC7CoCBJIHdpbGwgZml4IGl0IGluIHRoZSAKbmV4dCB2 ZXJzaW9uLgoKPj4gK3N0YXRpYyB1MzIgYTlfY2FuX3BlX3BhcmVudHNfdmFsX3RhYmxlW10gPSB7 IDAsIDEsIDMgfTsKPj4gK3N0YXRpYyBjb25zdCBzdHJ1Y3QgY2xrX3BhcmVudF9kYXRhIGE5X2Nh bl9wZV9wYXJlbnRzW10gPSB7Cj4+ICsgICAgIHsgLmZ3X25hbWUgPSAic3lzIiwgfSwKPj4gKyAg ICAgeyAuZndfbmFtZSA9ICJ4dGFsIiwgfSwKPj4gKyAgICAgeyAuZndfbmFtZSA9ICJmZGl2NSIs IH0KPj4gK307Cj4+ICsKCgpbIC4uLiBdCgo+PiArCj4+ICsvKgo+PiArICogQ2hhbm5lbCAzKGRk cl9kcGxsX3B0X2NsaykgaXMgbWFuZ2VkIGJ5IHRoZSBERFIgbW9kdWxlOwo+PiArICogY2hhbm5l bCAxMihtc3JfY2xrKSBpcyBtYW5nZWQgYnkgY2xvY2sgbWVhc3VyZXMgbW9kdWxlLgo+PiArICog Y2hhbm5lbCAxNihhdWRpb19kYWMxX2NsaykgaXMgbWFuZ2VkIGJ5IGF1ZGlvIG1vZHVsZS4KPiBT b21lIHdoeSBjYW4ndCB5b3UgZXhwb3NlIHRob3NlIHRoZW4gPyBnZW4gY2xrIGlzIHVzZWQgZm9y IGRlYnVnZ2luZwo+IEFGQUlLLiBUaGUgY2xvY2sgYWJvdmUgYXJlIHdvcnRoIGRlYnVnZ2luZyBJ IHRoaW5rCj4KPiBQbGVhc2UgYmUgY29uc2lzdGVudCB3aXRoIHRoZSBDYVNpbmcuCgoKRm9yIGNo YW5uZWwgMyAoZGRyX2RwbGxfcHRfY2xrKSwgaXQgaXMgc291cmNlZCBmcm9tIHRoZSBERFIgUExM IGNsb2NrIApjb250cm9sbGVyIHJhdGhlciB0aGFuCnRoaXMgY2xvY2sgY29udHJvbGxlci4gSSB3 aWxsIGV4cG9zZSBpdCBpbiB0aGUgRFQuCgpGb3IgY2hhbm5lbCAxMiAobXNyX2NsayksIGl0IGRl cGVuZHMgb24gdGhlIGNsb2NrIG1lYXN1cmVtZW50IApjb25maWd1cmF0aW9uLgpUaGUgbWVhc3Vy ZW1lbnQgc291cmNlIG11c3QgZmlyc3QgYmUgc2VsZWN0ZWQgdGhyb3VnaCBmcmVxX2N0cmxbMjA6 MjZdLCBhbmQKb25seSB0aGVuIGRvZXMgbXNyX2NsayBiZWNvbWUgbWVhbmluZ2Z1bC4gSW4gcHJh Y3RpY2UuCkl0IGlzIG5vdCBhIHJlYWwgY2xvY2sgYnV0IGFuIG91dHB1dCBvZiB0aGUgbWVhc3Vy ZW1lbnQgbG9naWMsIHNvIGl0IGNhbiAKbm90IGJlIGV4cG9zZWQgYXMgYSBjbG9jay4KCmh0dHBz Oi8vZWxpeGlyLmJvb3RsaW4uY29tL2xpbnV4L3Y3LjEtcmM3L3NvdXJjZS9kcml2ZXJzL3NvYy9h bWxvZ2ljL21lc29uLWNsay1tZWFzdXJlLmMjTDgwOQoKRm9yIGNoYW5uZWwgMTYgKGF1ZGlvX2Rh YzFfY2xrKSwgSSBjb25maXJtZWQgd2l0aCB0aGUgY2xvY2sgaGFyZHdhcmUgCmRlc2lnbmVyIHRo YXQKaXQgaXMgYWN0dWFsbHkgdW5jb25uZWN0ZWQuIEl0IGxvb2tzIGxpa2UgdGhlcmUgaXMgYW4g ZXJyb3IgaW4gdGhlIApkb2N1bWVudGF0aW9uLgoKSSdsbCBhbHNvIGZpeCB0aGUgY2FzaW5nIHRv IGtlZXAgaXQgY29uc2lzdGVudCB0aHJvdWdob3V0IHRoZSBjb21tZW50cy4KPj4gKyAqIENoYW5u ZWwgMTAsIDExLCAxMywgMTQgYXJlIG5vdCBjb25uZWN0ZWQuCj4+ICsgKi8KPj4gK3N0YXRpYyB1 MzIgYTlfZ2VuX3BhcmVudHNfdmFsX3RhYmxlW10gPSB7IDAsIDEsIDIsIDQsIDUsIDYsIDcsIDgs IDksIDE1LCAxNywgMTgsCj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAxOSwgMjAsIDIxLCAyMiwgMjMsIDI0LCAyNSwgMjZ9Owo+PiArc3RhdGljIHN0cnVjdCBjbGtf cmVnbWFwIGE5X3ZpZF9wbGw7Cj4+ICsKPj4gK3N0YXRpYyBjb25zdCBzdHJ1Y3QgY2xrX3BhcmVu dF9kYXRhIGE5X2dlbl9wYXJlbnRzW10gPSB7Cj4+ICsgICAgIHsgLmZ3X25hbWUgPSAieHRhbCIg fSwKPj4gKyAgICAgeyAuZndfbmFtZSA9ICJydGMiIH0sCj4+ICsgICAgIHsgLmZ3X25hbWUgPSAi c3lzcGxsZGl2MTYiIH0sCj4+ICsgICAgIHsgLmh3ID0gJmE5X3ZpZF9wbGwuaHcgfSwKPj4gKyAg ICAgeyAuZndfbmFtZSA9ICJncDAiIH0sCj4+ICsgICAgIHsgLmZ3X25hbWUgPSAiaGlmaTEiIH0s Cj4+ICsgICAgIHsgLmZ3X25hbWUgPSAiaGlmaTAiIH0sCj4+ICsgICAgIHsgLmZ3X25hbWUgPSAi Z3AxIiB9LAo+PiArICAgICB7IC5md19uYW1lID0gImdwMiIgfSwKPj4gKyAgICAgeyAuZndfbmFt ZSA9ICJkc3VkaXYxNiIgfSwKPj4gKyAgICAgeyAuZndfbmFtZSA9ICJjcHVkaXYxNiIgfSwKPj4g KyAgICAgeyAuZndfbmFtZSA9ICJhNzhkaXYxNiIgfSwKPj4gKyAgICAgeyAuZndfbmFtZSA9ICJm ZGl2MiIgfSwKPj4gKyAgICAgeyAuZndfbmFtZSA9ICJmZGl2MnA1IiB9LAo+PiArICAgICB7IC5m d19uYW1lID0gImZkaXYzIiB9LAo+PiArICAgICB7IC5md19uYW1lID0gImZkaXY0IiB9LAo+PiAr ICAgICB7IC5md19uYW1lID0gImZkaXY1IiB9LAo+PiArICAgICB7IC5md19uYW1lID0gImZkaXY3 IiB9LAo+PiArICAgICB7IC5md19uYW1lID0gIm1jbGswIiB9LAo+PiArICAgICB7IC5md19uYW1l ID0gIm1jbGsxIiB9Cj4+ICt9Owo+PiArCj4+ICtzdGF0aWMgQTlfQ09NUF9TRUwoZ2VuLCBHRU5f Q0xLX0NUUkwsIDEyLCAweDFmLCBhOV9nZW5fcGFyZW50cywKPj4gKyAgICAgICAgICAgICAgICBh OV9nZW5fcGFyZW50c192YWxfdGFibGUpOwo+PiArc3RhdGljIEE5X0NPTVBfRElWKGdlbiwgR0VO X0NMS19DVFJMLCAwLCAxMSk7Cj4+ICtzdGF0aWMgQTlfQ09NUF9HQVRFKGdlbiwgR0VOX0NMS19D VFJMLCAxMSwgMCk7Cj4+ICsKCgpbIC4uLiBdCgo+PiArCj4+ICtzdGF0aWMgc3RydWN0IGNsa19y ZWdtYXAgYTlfZW5jLCBhOV9lbmMxOwo+IFdoYXQgaXMgdGhpcyBhZ2FpbiA/PyBhbmQgcGxlYXNl IGNvbWUgdXAgd2l0aCBiZXR0ZXIgbmFtZXMuCgoKU2FtZSBhcyB0aGUgcHJldmlvdXMgZHNwYSBj bG9jayBkZWNsYXJhdGlvbi4KCmVuYyBzdGFuZHMgZm9yIGVuY29kZXIuIEknbGwgcmVuYW1lIGE5 X2VuYyB0byBhOV9lbmNvZGVyMCBhbmQgYTlfZW5jMSB0byAKYTlfZW5jb2RlcjEgaW4gdGhlIG5l eHQgdmVyc2lvbi4KCj4+ICsKPj4gK3N0YXRpYyBjb25zdCBzdHJ1Y3QgY2xrX3BhcmVudF9kYXRh IGE5X3ZpZF9sb2NrX3BhcmVudHNbXSA9IHsKPj4gKyAgICAgeyAuZndfbmFtZSA9ICJ4dGFsIiwg fSwKPj4gKyAgICAgeyAuaHcgPSAmYTlfZW5jLmh3IH0sCj4+ICsgICAgIHsgLmh3ID0gJmE5X2Vu YzEuaHcgfQo+PiArfTsKPj4gKwo+PiArc3RhdGljIEE5X0NPTVBfU0VMKHZpZF9sb2NrLCBWSURf TE9DS19DTEtfQ1RSTCwgOSwgMHg3LCBhOV92aWRfbG9ja19wYXJlbnRzLAo+PiArICAgICAgICAg ICAgICAgIE5VTEwpOwo+PiArc3RhdGljIEE5X0NPTVBfRElWKHZpZF9sb2NrLCBWSURfTE9DS19D TEtfQ1RSTCwgMCwgNyk7Cj4+ICtzdGF0aWMgQTlfQ09NUF9HQVRFKHZpZF9sb2NrLCBWSURfTE9D S19DTEtfQ1RSTCwgOCwgMCk7Cj4+ICsKPj4gK3N0YXRpYyBjb25zdCBzdHJ1Y3QgY2xrX3BhcmVu dF9kYXRhIGE5X3ZkaW5fbWVhc19wYXJlbnRzW10gPSB7Cj4+ICsgICAgIHsgLmZ3X25hbWUgPSAi eHRhbCIsIH0sCj4+ICsgICAgIHsgLmZ3X25hbWUgPSAiZmRpdjQiLCB9LAo+PiArICAgICB7IC5m d19uYW1lID0gImZkaXYzIiwgfSwKPj4gKyAgICAgeyAuZndfbmFtZSA9ICJmZGl2NSIsIH0KPj4g K307Cj4+ICsKPj4gK3N0YXRpYyBBOV9DT01QX1NFTCh2ZGluX21lYXMsIFZESU5fTUVBU19DTEtf Q1RSTCwgOSwgMHg3LCBhOV92ZGluX21lYXNfcGFyZW50cywKPj4gKyAgICAgICAgICAgICAgICBO VUxMKTsKPj4gK3N0YXRpYyBBOV9DT01QX0RJVih2ZGluX21lYXMsIFZESU5fTUVBU19DTEtfQ1RS TCwgMCwgNyk7Cj4+ICtzdGF0aWMgQTlfQ09NUF9HQVRFKHZkaW5fbWVhcywgVkRJTl9NRUFTX0NM S19DVFJMLCA4LCAwKTsKPj4gKwo+PiArc3RhdGljIHN0cnVjdCBjbGtfcmVnbWFwIGE5X3ZpZF9w bGxfZGl2ID0gewo+PiArICAgICAuZGF0YSA9ICYoc3RydWN0IG1lc29uX3ZpZF9wbGxfZGl2X2Rh dGEpewo+PiArICAgICAgICAgICAgIC52YWwgPSB7Cj4+ICsgICAgICAgICAgICAgICAgICAgICAu cmVnX29mZiA9IFZJRF9QTExfQ0xLX0RJViwKPj4gKyAgICAgICAgICAgICAgICAgICAgIC5zaGlm dCAgID0gMCwKPj4gKyAgICAgICAgICAgICAgICAgICAgIC53aWR0aCAgID0gMTUsCj4+ICsgICAg ICAgICAgICAgfSwKPj4gKyAgICAgICAgICAgICAuc2VsID0gewo+PiArICAgICAgICAgICAgICAg ICAgICAgLnJlZ19vZmYgPSBWSURfUExMX0NMS19ESVYsCj4+ICsgICAgICAgICAgICAgICAgICAg ICAuc2hpZnQgICA9IDE2LAo+PiArICAgICAgICAgICAgICAgICAgICAgLndpZHRoICAgPSAyLAo+ PiArICAgICAgICAgICAgIH0sCj4+ICsgICAgIH0sCj4+ICsgICAgIC5ody5pbml0ID0gQ0xLX0hX X0lOSVRfRldfTkFNRSgidmlkX3BsbF9kaXYiLCAiaGRtaW91dDIiLAo+PiArICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgJm1lc29uX3ZpZF9wbGxfZGl2X3JvX29wcywgMCksCj4+ ICt9Owo+PiArCj4+ICtzdGF0aWMgc3RydWN0IGNsa19yZWdtYXAgYTlfdmlkX3BsbF9zZWwgPSB7 Cj4+ICsgICAgIC5kYXRhID0gJihzdHJ1Y3QgY2xrX3JlZ21hcF9tdXhfZGF0YSl7Cj4+ICsgICAg ICAgICAgICAgLm9mZnNldCA9IFZJRF9QTExfQ0xLX0RJViwKPj4gKyAgICAgICAgICAgICAubWFz ayA9IDB4MSwKPj4gKyAgICAgICAgICAgICAuc2hpZnQgPSAxOCwKPj4gKyAgICAgfSwKPj4gKyAg ICAgLmh3LmluaXQgPSBDTEtfSFdfSU5JVF9QQVJFTlRTX0RBVEEoInZpZF9wbGxfc2VsIiwKPj4g KyAgICAgICAgICAgICAgICAgICAgICgoY29uc3Qgc3RydWN0IGNsa19wYXJlbnRfZGF0YSBbXSkg ewo+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IC5odyA9ICZhOV92aWRfcGxsX2Rp di5odyB9LAo+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IC5md19uYW1lID0gImhk bWlvdXQyIiB9Cj4+ICsgICAgICAgICAgICAgICAgICAgICB9KSwgJmNsa19yZWdtYXBfbXV4X29w cywgQ0xLX1NFVF9SQVRFX1BBUkVOVCksCj4+ICt9Owo+PiArCj4+ICtzdGF0aWMgc3RydWN0IGNs a19yZWdtYXAgYTlfdmlkX3BsbCA9IHsKPj4gKyAgICAgLmRhdGEgPSAmKHN0cnVjdCBjbGtfcmVn bWFwX2dhdGVfZGF0YSl7Cj4+ICsgICAgICAgICAgICAgLm9mZnNldCA9IFZJRF9QTExfQ0xLX0RJ ViwKPj4gKyAgICAgICAgICAgICAuYml0X2lkeCA9IDE5LAo+PiArICAgICB9LAo+PiArICAgICAu aHcuaW5pdCA9IENMS19IV19JTklUX0hXKCJ2aWRfcGxsIiwgJmE5X3ZpZF9wbGxfc2VsLmh3LAo+ PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZjbGtfcmVnbWFwX2dhdGVfb3BzLCBD TEtfU0VUX1JBVEVfUEFSRU5UKSwKPj4gK307Cj4+ICsKPj4gK3N0YXRpYyBzdHJ1Y3QgY2xrX3Jl Z21hcCBhOV92aWRfcGxsX3ZjbGsgPSB7Cj4+ICsgICAgIC5kYXRhID0gJihzdHJ1Y3QgY2xrX3Jl Z21hcF9tdXhfZGF0YSl7Cj4+ICsgICAgICAgICAgICAgLm9mZnNldCA9IEhETUlfQ0xLX0NUUkws Cj4+ICsgICAgICAgICAgICAgLm1hc2sgPSAweDEsCj4+ICsgICAgICAgICAgICAgLnNoaWZ0ID0g MTUsCj4+ICsgICAgIH0sCj4+ICsgICAgIC5ody5pbml0ID0gQ0xLX0hXX0lOSVRfUEFSRU5UU19E QVRBKCJ2aWRfcGxsX3ZjbGsiLAo+PiArICAgICAgICAgICAgICAgICAgICAgKChjb25zdCBzdHJ1 Y3QgY2xrX3BhcmVudF9kYXRhIFtdKSB7Cj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHsgLmh3ID0gJmE5X3ZpZF9wbGwuaHcgfSwKPj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgeyAuZndfbmFtZSA9ICJoZG1pcGl4IiB9Cj4+ICsgICAgICAgICAgICAgICAgICAgICB9KSwg JmNsa19yZWdtYXBfbXV4X29wcywgMCksCj4+ICt9Owo+PiArCj4+ICtzdGF0aWMgY29uc3Qgc3Ry dWN0IGNsa19wYXJlbnRfZGF0YSBhOV92Y2xrX3BhcmVudHNbXSA9IHsKPj4gKyAgICAgeyAuaHcg PSAmYTlfdmlkX3BsbF92Y2xrLmh3IH0sCj4+ICsgICAgIHsgLmZ3X25hbWUgPSAicGl4MCIsIH0s Cj4+ICsgICAgIHsgLmZ3X25hbWUgPSAidmlkMSIsIH0sCj4+ICsgICAgIHsgLmZ3X25hbWUgPSAi cGl4MSIsIH0sCj4+ICsgICAgIHsgLmZ3X25hbWUgPSAiZmRpdjMiLCB9LAo+PiArICAgICB7IC5m d19uYW1lID0gImZkaXY0IiwgfSwKPj4gKyAgICAgeyAuZndfbmFtZSA9ICJmZGl2NSIsIH0sCj4+ ICsgICAgIHsgLmZ3X25hbWUgPSAidmlkMiIsIH0KPj4gK307Cj4+ICsKPj4gK3N0YXRpYyBzdHJ1 Y3QgY2xrX3JlZ21hcCBhOV92Y2xrX3NlbCA9IHsKPj4gKyAgICAgLmRhdGEgPSAmKHN0cnVjdCBj bGtfcmVnbWFwX211eF9kYXRhKXsKPj4gKyAgICAgICAgICAgICAub2Zmc2V0ID0gVklEX0NMS19D VFJMLAo+PiArICAgICAgICAgICAgIC5tYXNrID0gMHg3LAo+PiArICAgICAgICAgICAgIC5zaGlm dCA9IDE2LAo+PiArICAgICB9LAo+PiArICAgICAuaHcuaW5pdCA9IENMS19IV19JTklUX1BBUkVO VFNfREFUQSgidmNsa19zZWwiLCBhOV92Y2xrX3BhcmVudHMsCj4+ICsgICAgICAgICAgICAgICAg ICAgICAmY2xrX3JlZ21hcF9tdXhfb3BzLCAwKSwKPj4gK307Cj4+ICsKPj4gK3N0YXRpYyBzdHJ1 Y3QgY2xrX3JlZ21hcCBhOV92Y2xrX2luID0gewo+PiArICAgICAuZGF0YSA9ICYoc3RydWN0IGNs a19yZWdtYXBfZ2F0ZV9kYXRhKXsKPj4gKyAgICAgICAgICAgICAub2Zmc2V0ID0gVklEX0NMS19E SVYsCj4+ICsgICAgICAgICAgICAgLmJpdF9pZHggPSAxNiwKPj4gKyAgICAgfSwKPj4gKyAgICAg Lmh3LmluaXQgPSBDTEtfSFdfSU5JVF9IVygidmNsa19pbiIsICZhOV92Y2xrX3NlbC5odywKPj4g KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmY2xrX3JlZ21hcF9nYXRlX29wcywgQ0xL X1NFVF9SQVRFX1BBUkVOVCksCj4+ICt9Owo+PiArCj4+ICtzdGF0aWMgc3RydWN0IGNsa19yZWdt YXAgYTlfdmNsa19kaXYgPSB7Cj4+ICsgICAgIC5kYXRhID0gJihzdHJ1Y3QgY2xrX3JlZ21hcF9k aXZfZGF0YSl7Cj4+ICsgICAgICAgICAgICAgLm9mZnNldCA9IFZJRF9DTEtfRElWLAo+PiArICAg ICAgICAgICAgIC5zaGlmdCA9IDAsCj4+ICsgICAgICAgICAgICAgLndpZHRoID0gOCwKPj4gKyAg ICAgfSwKPj4gKyAgICAgLmh3LmluaXQgPSBDTEtfSFdfSU5JVF9IVygidmNsa19kaXYiLCAmYTlf dmNsa19pbi5odywKPj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmY2xrX3JlZ21h cF9kaXZpZGVyX29wcywgQ0xLX1NFVF9SQVRFX1BBUkVOVCksCj4+ICt9Owo+PiArCj4+ICtzdGF0 aWMgc3RydWN0IGNsa19yZWdtYXAgYTlfdmNsayA9IHsKPj4gKyAgICAgLmRhdGEgPSAmKHN0cnVj dCBjbGtfcmVnbWFwX2dhdGVfZGF0YSl7Cj4+ICsgICAgICAgICAgICAgLm9mZnNldCA9IFZJRF9D TEtfQ1RSTCwKPj4gKyAgICAgICAgICAgICAuYml0X2lkeCA9IDE5LAo+PiArICAgICB9LAo+PiAr ICAgICAuaHcuaW5pdCA9IENMS19IV19JTklUX0hXKCJ2Y2xrIiwgJmE5X3ZjbGtfZGl2Lmh3LAo+ PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZjbGtfcmVnbWFwX2dhdGVfb3BzLCBD TEtfU0VUX1JBVEVfUEFSRU5UKSwKPj4gK307Cj4+ICsKPj4gK3N0YXRpYyBzdHJ1Y3QgY2xrX3Jl Z21hcCBhOV92Y2xrX2RpdjFfZW4gPSB7Cj4+ICsgICAgIC5kYXRhID0gJihzdHJ1Y3QgY2xrX3Jl Z21hcF9nYXRlX2RhdGEpewo+PiArICAgICAgICAgICAgIC5vZmZzZXQgPSBWSURfQ0xLX0NUUkws Cj4+ICsgICAgICAgICAgICAgLmJpdF9pZHggPSAwLAo+PiArICAgICB9LAo+PiArICAgICAuaHcu aW5pdCA9IENMS19IV19JTklUX0hXKCJ2Y2xrX2RpdjFfZW4iLCAmYTlfdmNsay5odywKPj4gKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmY2xrX3JlZ21hcF9nYXRlX29wcywgQ0xLX1NF VF9SQVRFX1BBUkVOVCksCj4+ICt9Owo+PiArCj4+ICtzdGF0aWMgc3RydWN0IGNsa19yZWdtYXAg YTlfdmNsa19kaXYyX2VuID0gewo+PiArICAgICAuZGF0YSA9ICYoc3RydWN0IGNsa19yZWdtYXBf Z2F0ZV9kYXRhKXsKPj4gKyAgICAgICAgICAgICAub2Zmc2V0ID0gVklEX0NMS19DVFJMLAo+PiAr ICAgICAgICAgICAgIC5iaXRfaWR4ID0gMSwKPj4gKyAgICAgfSwKPj4gKyAgICAgLmh3LmluaXQg PSBDTEtfSFdfSU5JVF9IVygidmNsa19kaXYyX2VuIiwgJmE5X3ZjbGsuaHcsCj4+ICsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgJmNsa19yZWdtYXBfZ2F0ZV9vcHMsIENMS19TRVRfUkFU RV9QQVJFTlQpLAo+PiArfTsKPiBMb29rcyB0byBtZSBhbGwgdGhpcyBkaXZfZW4gLyBkaXYgcmVw ZWF0aW5nIHBhdHRlcm4gd291bGQgYmUgZWFzaWVyIHRvIHJldmlldwo+IHdpdGggdGlueSBtYWNy byAuCgoKR29vZCBwb2ludC4KCkkgdHJpZWQgdG8gcmVkdWNlIHRoZSByZXBlYXRlZCBkaXZfZW4v ZGl2IHBhdHRlcm4gdXNpbmcgYSBoZWxwZXIgbWFjcm8uCgpJdCBrZWVwcyB0aGUgcmVsYXRpb25z aGlwIGJldHdlZW4gZ2F0ZSBhbmQgZml4ZWQtZmFjdG9yIGNsb2NrIG1vcmUgCmNvbXBhY3QgYW5k IGVhc2llciB0byByZXZpZXcuCgpBZnRlciB1c2luZyB0aGUgaGVscGVyIG1hY3JvLCB0aGUgZGl2 X2VuL2RpdiBjb2RlIGNhbiBiZSBzaW1wbGlmaWVkIHRvIAp0aGUgZm9sbG93aW5nOgoKI2RlZmlu ZSBBOV9WQ0xLKF9uYW1lLCBfcmVnLCBfYml0LCBfZGl2LCBfcGFyZW50KSDCoCDCoCDCoCDCoFwK c3RydWN0IGNsa19yZWdtYXAgYTlfIyNfbmFtZSMjX2VuID0geyDCoCDCoCDCoFwKIMKgIMKgIMKg IMKgIC5kYXRhID0gJihzdHJ1Y3QgY2xrX3JlZ21hcF9nYXRlX2RhdGEpeyDCoCDCoCDCoCDCoCDC oFwKIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIC5vZmZzZXQgPSBfcmVnLCDCoCDCoCDCoFwKIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIC5iaXRfaWR4ID0gX2JpdCwgwqAgwqAgwqAgXAogwqAgwqAg wqAgwqAgfSwgwqAgwqAgwqAgXAogwqAgwqAgwqAgwqAgLmh3LmluaXQgPSAmKHN0cnVjdCBjbGtf aW5pdF9kYXRhKSB7IMKgIMKgIMKgIMKgIMKgIFwKIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIC5u YW1lID0gI19uYW1lICJfZW4iLCDCoCDCoCDCoFwKIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIC5v cHMgPSAmY2xrX3JlZ21hcF9nYXRlX29wcywgwqAgwqAgwqAgwqAgwqAgXAogwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgLnBhcmVudF9od3MgPSAoY29uc3Qgc3RydWN0IGNsa19odyAqW10pIHsgX3Bh cmVudCB9LMKgIMKgIFwKIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIC5udW1fcGFyZW50cyA9IDEs IMKgIMKgIMKgXAogwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgLmZsYWdzID0gQ0xLX1NFVF9SQVRF X1BBUkVOVCwgwqAgwqAgwqBcCiDCoCDCoCDCoCDCoCB9LCDCoCDCoCDCoCBcCn07IMKgIMKgIMKg IFwKIMKgIMKgIMKgIFwKc3RydWN0IGNsa19maXhlZF9mYWN0b3IgYTlfIyNfbmFtZSA9IHsgwqAg wqAgwqAgXAogwqAgwqAgwqAgwqAgLm11bHQgPSAxLCDCoCDCoCDCoCBcCiDCoCDCoCDCoCDCoCAu ZGl2ID0gX2RpdiwgwqAgwqAgwqAgXAogwqAgwqAgwqAgwqAgLmh3LmluaXQgPSAmKHN0cnVjdCBj bGtfaW5pdF9kYXRhKXsgwqAgwqAgwqAgwqAgwqBcCiDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCAu bmFtZSA9ICNfbmFtZSwgwqAgwqAgwqBcCiDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCAub3BzID0g JmNsa19maXhlZF9mYWN0b3Jfb3BzLCDCoCDCoCDCoCDCoCDCoFwKIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIC5wYXJlbnRfaHdzID0gKGNvbnN0IHN0cnVjdCBjbGtfaHcgKltdKSB7IMKgIMKgIMKg XAogwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgJmE5XyMjX25hbWUjI19lbi5o dyDCoCDCoCDCoCDCoCDCoFwKIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIH0sIMKgIMKgIMKgIFwK IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIC5udW1fcGFyZW50cyA9IDEsIMKgIMKgIMKgXAogwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgLmZsYWdzID0gQ0xLX1NFVF9SQVRFX1BBUkVOVCwgwqAgwqAg wqBcCiDCoCDCoCDCoCDCoCB9LCDCoCDCoCDCoCBcCn07IMKgIMKgIMKgIFwKCnN0YXRpYyBBOV9W Q0xLKHZjbGtfZGl2MiwgVklEX0NMS19DVFJMLCAxLCAyLCAmYTlfdmNsay5odyk7CnN0YXRpYyBB OV9WQ0xLKHZjbGtfZGl2NCwgVklEX0NMS19DVFJMLCAyLCA0LCAmYTlfdmNsay5odyk7CnN0YXRp YyBBOV9WQ0xLKHZjbGtfZGl2NiwgVklEX0NMS19DVFJMLCAzLCA2LCAmYTlfdmNsay5odyk7CnN0 YXRpYyBBOV9WQ0xLKHZjbGtfZGl2NiwgVklEX0NMS19DVFJMLCA0LCAxMiwgJmE5X3ZjbGsuaHcp OwpzdGF0aWMgQTlfVkNMSyh2Y2xrMl9kaXYyLCBWSUlEX0NMS19DVFJMLCAxLCAyLCAmYTlfdmNs azIuaHcpOwpzdGF0aWMgQTlfVkNMSyh2Y2xrMl9kaXY0LCBWSUlEX0NMS19DVFJMLCAyLCA0LCAm YTlfdmNsazIuaHcpOwpzdGF0aWMgQTlfVkNMSyh2Y2xrMl9kaXY2LCBWSUlEX0NMS19DVFJMLCAz LCA2LCAmYTlfdmNsazIuaHcpOwpzdGF0aWMgQTlfVkNMSyh2Y2xrMl9kaXY2LCBWSUlEX0NMS19D VFJMLCA0LCAxMiwgJmE5X3ZjbGsyLmh3KTsKCgpJZiB5b3UgdGhpbmsgc3BsaXR0aW5nIGl0IGZ1 cnRoZXIgaW50byBzZXBhcmF0ZSBoZWxwZXIgbWFjcm9zIHdvdWxkIAppbXByb3ZlIHJlYWRhYmls aXR5LgoKSSBjYW4gZG8gdGhhdCBhcyB3ZWxsLgoKPj4gKwo+PiArc3RhdGljIHN0cnVjdCBjbGtf Zml4ZWRfZmFjdG9yIGE5X3ZjbGtfZGl2MiA9IHsKPj4gKyAgICAgLm11bHQgPSAxLAo+PiArICAg ICAuZGl2ID0gMiwKPj4gKyAgICAgLmh3LmluaXQgPSBDTEtfSFdfSU5JVF9IVygidmNsa19kaXYy IiwgJmE5X3ZjbGtfZGl2Ml9lbi5odywKPj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAmY2xrX2ZpeGVkX2ZhY3Rvcl9vcHMsIENMS19TRVRfUkFURV9QQVJFTlQpLAo+PiArfTsKPj4g Kwo+PiArc3RhdGljIHN0cnVjdCBjbGtfcmVnbWFwIGE5X3ZjbGtfZGl2NF9lbiA9IHsKPj4gKyAg ICAgLmRhdGEgPSAmKHN0cnVjdCBjbGtfcmVnbWFwX2dhdGVfZGF0YSl7Cj4+ICsgICAgICAgICAg ICAgLm9mZnNldCA9IFZJRF9DTEtfQ1RSTCwKPj4gKyAgICAgICAgICAgICAuYml0X2lkeCA9IDIs Cj4+ICsgICAgIH0sCj4+ICsgICAgIC5ody5pbml0ID0gQ0xLX0hXX0lOSVRfSFcoInZjbGtfZGl2 NF9lbiIsICZhOV92Y2xrLmh3LAo+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZj bGtfcmVnbWFwX2dhdGVfb3BzLCBDTEtfU0VUX1JBVEVfUEFSRU5UKSwKPj4gK307Cj4+ICsKPj4g K3N0YXRpYyBzdHJ1Y3QgY2xrX2ZpeGVkX2ZhY3RvciBhOV92Y2xrX2RpdjQgPSB7Cj4+ICsgICAg IC5tdWx0ID0gMSwKPj4gKyAgICAgLmRpdiA9IDQsCj4+ICsgICAgIC5ody5pbml0ID0gQ0xLX0hX X0lOSVRfSFcoInZjbGtfZGl2NCIsICZhOV92Y2xrX2RpdjRfZW4uaHcsCj4+ICsgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgJmNsa19maXhlZF9mYWN0b3Jfb3BzLCBDTEtfU0VUX1JBVEVf UEFSRU5UKSwKPj4gK307Cj4+ICsKPj4gK3N0YXRpYyBzdHJ1Y3QgY2xrX3JlZ21hcCBhOV92Y2xr X2RpdjZfZW4gPSB7Cj4+ICsgICAgIC5kYXRhID0gJihzdHJ1Y3QgY2xrX3JlZ21hcF9nYXRlX2Rh dGEpewo+PiArICAgICAgICAgICAgIC5vZmZzZXQgPSBWSURfQ0xLX0NUUkwsCj4+ICsgICAgICAg ICAgICAgLmJpdF9pZHggPSAzLAo+PiArICAgICB9LAo+PiArICAgICAuaHcuaW5pdCA9IENMS19I V19JTklUX0hXKCJ2Y2xrX2RpdjZfZW4iLCAmYTlfdmNsay5odywKPj4gKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAmY2xrX3JlZ21hcF9nYXRlX29wcywgQ0xLX1NFVF9SQVRFX1BBUkVO VCksCj4+ICt9Owo+PiArCj4+ICtzdGF0aWMgc3RydWN0IGNsa19maXhlZF9mYWN0b3IgYTlfdmNs a19kaXY2ID0gewo+PiArICAgICAubXVsdCA9IDEsCj4+ICsgICAgIC5kaXYgPSA2LAo+PiArICAg ICAuaHcuaW5pdCA9IENMS19IV19JTklUX0hXKCJ2Y2xrX2RpdjYiLCAmYTlfdmNsa19kaXY2X2Vu Lmh3LAo+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZjbGtfZml4ZWRfZmFjdG9y X29wcywgQ0xLX1NFVF9SQVRFX1BBUkVOVCksCj4+ICt9Owo+PiArCj4+ICtzdGF0aWMgc3RydWN0 IGNsa19yZWdtYXAgYTlfdmNsa19kaXYxMl9lbiA9IHsKPj4gKyAgICAgLmRhdGEgPSAmKHN0cnVj dCBjbGtfcmVnbWFwX2dhdGVfZGF0YSl7Cj4+ICsgICAgICAgICAgICAgLm9mZnNldCA9IFZJRF9D TEtfQ1RSTCwKPj4gKyAgICAgICAgICAgICAuYml0X2lkeCA9IDQsCj4+ICsgICAgIH0sCj4+ICsg ICAgIC5ody5pbml0ID0gQ0xLX0hXX0lOSVRfSFcoInZjbGtfZGl2MTJfZW4iLCAmYTlfdmNsay5o dywKPj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmY2xrX3JlZ21hcF9nYXRlX29w cywgQ0xLX1NFVF9SQVRFX1BBUkVOVCksCj4+ICt9Owo+PiArCj4+ICtzdGF0aWMgc3RydWN0IGNs a19maXhlZF9mYWN0b3IgYTlfdmNsa19kaXYxMiA9IHsKPj4gKyAgICAgLm11bHQgPSAxLAo+PiAr ICAgICAuZGl2ID0gMTIsCj4+ICsgICAgIC5ody5pbml0ID0gQ0xLX0hXX0lOSVRfSFcoInZjbGtf ZGl2MTIiLCAmYTlfdmNsa19kaXYxMl9lbi5odywKPj4gKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAmY2xrX2ZpeGVkX2ZhY3Rvcl9vcHMsIENMS19TRVRfUkFURV9QQVJFTlQpLAo+PiAr fTsKPj4gKwo+PiArc3RhdGljIHN0cnVjdCBjbGtfcmVnbWFwIGE5X3ZjbGsyX3NlbCA9IHsKPj4g KyAgICAgLmRhdGEgPSAmKHN0cnVjdCBjbGtfcmVnbWFwX211eF9kYXRhKXsKPj4gKyAgICAgICAg ICAgICAub2Zmc2V0ID0gVklJRF9DTEtfQ1RSTCwKPj4gKyAgICAgICAgICAgICAubWFzayA9IDB4 NywKPj4gKyAgICAgICAgICAgICAuc2hpZnQgPSAxNiwKPj4gKyAgICAgfSwKPj4gKyAgICAgLmh3 LmluaXQgPSBDTEtfSFdfSU5JVF9QQVJFTlRTX0RBVEEoInZjbGsyX3NlbCIsIGE5X3ZjbGtfcGFy ZW50cywKPj4gKyAgICAgICAgICAgICAgICAgICAgICZjbGtfcmVnbWFwX211eF9vcHMsIDApLAo+ PiArfTsKPj4gKwo+PiArc3RhdGljIHN0cnVjdCBjbGtfcmVnbWFwIGE5X3ZjbGsyX2luID0gewo+ PiArICAgICAuZGF0YSA9ICYoc3RydWN0IGNsa19yZWdtYXBfZ2F0ZV9kYXRhKXsKPj4gKyAgICAg ICAgICAgICAub2Zmc2V0ID0gVklJRF9DTEtfRElWLAo+PiArICAgICAgICAgICAgIC5iaXRfaWR4 ID0gMTYsCj4+ICsgICAgIH0sCj4+ICsgICAgIC5ody5pbml0ID0gQ0xLX0hXX0lOSVRfSFcoInZj bGsyX2luIiwgJmE5X3ZjbGsyX3NlbC5odywKPj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAmY2xrX3JlZ21hcF9nYXRlX29wcywgQ0xLX1NFVF9SQVRFX1BBUkVOVCksCj4+ICt9Owo+ PiArCj4+ICtzdGF0aWMgc3RydWN0IGNsa19yZWdtYXAgYTlfdmNsazJfZGl2ID0gewo+PiArICAg ICAuZGF0YSA9ICYoc3RydWN0IGNsa19yZWdtYXBfZGl2X2RhdGEpewo+PiArICAgICAgICAgICAg IC5vZmZzZXQgPSBWSUlEX0NMS19ESVYsCj4+ICsgICAgICAgICAgICAgLnNoaWZ0ID0gMCwKPj4g KyAgICAgICAgICAgICAud2lkdGggPSA4LAo+PiArICAgICB9LAo+PiArICAgICAuaHcuaW5pdCA9 IENMS19IV19JTklUX0hXKCJ2Y2xrMl9kaXYiLCAmYTlfdmNsazJfaW4uaHcsCj4+ICsgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgJmNsa19yZWdtYXBfZGl2aWRlcl9vcHMsIENMS19TRVRf UkFURV9QQVJFTlQpLAo+PiArfTsKPj4gKwo+PiArc3RhdGljIHN0cnVjdCBjbGtfcmVnbWFwIGE5 X3ZjbGsyID0gewo+PiArICAgICAuZGF0YSA9ICYoc3RydWN0IGNsa19yZWdtYXBfZ2F0ZV9kYXRh KXsKPj4gKyAgICAgICAgICAgICAub2Zmc2V0ID0gVklJRF9DTEtfQ1RSTCwKPj4gKyAgICAgICAg ICAgICAuYml0X2lkeCA9IDE5LAo+PiArICAgICB9LAo+PiArICAgICAuaHcuaW5pdCA9IENMS19I V19JTklUX0hXKCJ2Y2xrMiIsICZhOV92Y2xrMl9kaXYuaHcsCj4+ICsgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgJmNsa19yZWdtYXBfZ2F0ZV9vcHMsIENMS19TRVRfUkFURV9QQVJFTlQp LAo+PiArfTsKPj4gKwo+PiArc3RhdGljIHN0cnVjdCBjbGtfcmVnbWFwIGE5X3ZjbGsyX2RpdjFf ZW4gPSB7Cj4+ICsgICAgIC5kYXRhID0gJihzdHJ1Y3QgY2xrX3JlZ21hcF9nYXRlX2RhdGEpewo+ PiArICAgICAgICAgICAgIC5vZmZzZXQgPSBWSUlEX0NMS19DVFJMLAo+PiArICAgICAgICAgICAg IC5iaXRfaWR4ID0gMCwKPj4gKyAgICAgfSwKPj4gKyAgICAgLmh3LmluaXQgPSBDTEtfSFdfSU5J VF9IVygidmNsazJfZGl2MV9lbiIsICZhOV92Y2xrMi5odywKPj4gKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAmY2xrX3JlZ21hcF9nYXRlX29wcywgQ0xLX1NFVF9SQVRFX1BBUkVOVCks Cj4+ICt9Owo+PiArCj4+ICtzdGF0aWMgc3RydWN0IGNsa19yZWdtYXAgYTlfdmNsazJfZGl2Ml9l biA9IHsKPj4gKyAgICAgLmRhdGEgPSAmKHN0cnVjdCBjbGtfcmVnbWFwX2dhdGVfZGF0YSl7Cj4+ ICsgICAgICAgICAgICAgLm9mZnNldCA9IFZJSURfQ0xLX0NUUkwsCj4+ICsgICAgICAgICAgICAg LmJpdF9pZHggPSAxLAo+PiArICAgICB9LAo+PiArICAgICAuaHcuaW5pdCA9IENMS19IV19JTklU X0hXKCJ2Y2xrMl9kaXYyX2VuIiwgJmE5X3ZjbGsyLmh3LAo+PiArICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICZjbGtfcmVnbWFwX2dhdGVfb3BzLCBDTEtfU0VUX1JBVEVfUEFSRU5UKSwK Pj4gK307Cj4+ICsKPj4gK3N0YXRpYyBzdHJ1Y3QgY2xrX2ZpeGVkX2ZhY3RvciBhOV92Y2xrMl9k aXYyID0gewo+PiArICAgICAubXVsdCA9IDEsCj4+ICsgICAgIC5kaXYgPSAyLAo+PiArICAgICAu aHcuaW5pdCA9IENMS19IV19JTklUX0hXKCJ2Y2xrMl9kaXYyIiwgJmE5X3ZjbGsyX2RpdjJfZW4u aHcsCj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmNsa19maXhlZF9mYWN0b3Jf b3BzLCBDTEtfU0VUX1JBVEVfUEFSRU5UKSwKPj4gK307Cj4+ICsKPj4gK3N0YXRpYyBzdHJ1Y3Qg Y2xrX3JlZ21hcCBhOV92Y2xrMl9kaXY0X2VuID0gewo+PiArICAgICAuZGF0YSA9ICYoc3RydWN0 IGNsa19yZWdtYXBfZ2F0ZV9kYXRhKXsKPj4gKyAgICAgICAgICAgICAub2Zmc2V0ID0gVklJRF9D TEtfQ1RSTCwKPj4gKyAgICAgICAgICAgICAuYml0X2lkeCA9IDIsCj4+ICsgICAgIH0sCj4+ICsg ICAgIC5ody5pbml0ID0gQ0xLX0hXX0lOSVRfSFcoInZjbGsyX2RpdjRfZW4iLCAmYTlfdmNsazIu aHcsCj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmNsa19yZWdtYXBfZ2F0ZV9v cHMsIENMS19TRVRfUkFURV9QQVJFTlQpLAo+PiArfTsKPj4gKwo+PiArc3RhdGljIHN0cnVjdCBj bGtfZml4ZWRfZmFjdG9yIGE5X3ZjbGsyX2RpdjQgPSB7Cj4+ICsgICAgIC5tdWx0ID0gMSwKPj4g KyAgICAgLmRpdiA9IDQsCj4+ICsgICAgIC5ody5pbml0ID0gQ0xLX0hXX0lOSVRfSFcoInZjbGsy X2RpdjQiLCAmYTlfdmNsazJfZGl2NF9lbi5odywKPj4gKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAmY2xrX2ZpeGVkX2ZhY3Rvcl9vcHMsIENMS19TRVRfUkFURV9QQVJFTlQpLAo+PiAr fTsKPj4gKwo+PiArc3RhdGljIHN0cnVjdCBjbGtfcmVnbWFwIGE5X3ZjbGsyX2RpdjZfZW4gPSB7 Cj4+ICsgICAgIC5kYXRhID0gJihzdHJ1Y3QgY2xrX3JlZ21hcF9nYXRlX2RhdGEpewo+PiArICAg ICAgICAgICAgIC5vZmZzZXQgPSBWSUlEX0NMS19DVFJMLAo+PiArICAgICAgICAgICAgIC5iaXRf aWR4ID0gMywKPj4gKyAgICAgfSwKPj4gKyAgICAgLmh3LmluaXQgPSBDTEtfSFdfSU5JVF9IVygi dmNsazJfZGl2Nl9lbiIsICZhOV92Y2xrMi5odywKPj4gKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAmY2xrX3JlZ21hcF9nYXRlX29wcywgQ0xLX1NFVF9SQVRFX1BBUkVOVCksCj4+ICt9 Owo+PiArCj4+ICtzdGF0aWMgc3RydWN0IGNsa19maXhlZF9mYWN0b3IgYTlfdmNsazJfZGl2NiA9 IHsKPj4gKyAgICAgLm11bHQgPSAxLAo+PiArICAgICAuZGl2ID0gNiwKPj4gKyAgICAgLmh3Lmlu aXQgPSBDTEtfSFdfSU5JVF9IVygidmNsazJfZGl2NiIsICZhOV92Y2xrMl9kaXY2X2VuLmh3LAo+ PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZjbGtfZml4ZWRfZmFjdG9yX29wcywg Q0xLX1NFVF9SQVRFX1BBUkVOVCksCj4+ICt9Owo+PiArCj4+ICtzdGF0aWMgc3RydWN0IGNsa19y ZWdtYXAgYTlfdmNsazJfZGl2MTJfZW4gPSB7Cj4+ICsgICAgIC5kYXRhID0gJihzdHJ1Y3QgY2xr X3JlZ21hcF9nYXRlX2RhdGEpewo+PiArICAgICAgICAgICAgIC5vZmZzZXQgPSBWSUlEX0NMS19D VFJMLAo+PiArICAgICAgICAgICAgIC5iaXRfaWR4ID0gNCwKPj4gKyAgICAgfSwKPj4gKyAgICAg Lmh3LmluaXQgPSBDTEtfSFdfSU5JVF9IVygidmNsazJfZGl2MTJfZW4iLCAmYTlfdmNsazIuaHcs Cj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJmNsa19yZWdtYXBfZ2F0ZV9vcHMs IENMS19TRVRfUkFURV9QQVJFTlQpLAo+PiArfTsKPj4gKwo+PiArc3RhdGljIHN0cnVjdCBjbGtf Zml4ZWRfZmFjdG9yIGE5X3ZjbGsyX2RpdjEyID0gewo+PiArICAgICAubXVsdCA9IDEsCj4+ICsg ICAgIC5kaXYgPSAxMiwKPj4gKyAgICAgLmh3LmluaXQgPSBDTEtfSFdfSU5JVF9IVygidmNsazJf ZGl2MTIiLCAmYTlfdmNsazJfZGl2MTJfZW4uaHcsCj4+ICsgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgJmNsa19maXhlZF9mYWN0b3Jfb3BzLCBDTEtfU0VUX1JBVEVfUEFSRU5UKSwKPj4g K307Cj4+ICsKPj4gKy8qIENoYW5uZWwgNSwgNiBhbmQgNyBhcmUgdW5jb25uZWN0ZWQgKi8KPj4g K3N0YXRpYyB1MzIgYTlfdmlkX3BhcmVudHNfdmFsX3RhYmxlW10gPSB7IDAsIDEsIDIsIDMsIDQs IDgsIDksIDEwLCAxMSwgMTIgfTsKPj4gK3N0YXRpYyBjb25zdCBzdHJ1Y3QgY2xrX2h3ICphOV92 aWRfcGFyZW50c1tdID0gewo+PiArICAgICAmYTlfdmNsa19kaXYxX2VuLmh3LAo+PiArICAgICAm YTlfdmNsa19kaXYyLmh3LAo+PiArICAgICAmYTlfdmNsa19kaXY0Lmh3LAo+PiArICAgICAmYTlf dmNsa19kaXY2Lmh3LAo+PiArICAgICAmYTlfdmNsa19kaXYxMi5odywKPj4gKyAgICAgJmE5X3Zj bGsyX2RpdjFfZW4uaHcsCj4+ICsgICAgICZhOV92Y2xrMl9kaXYyLmh3LAo+PiArICAgICAmYTlf dmNsazJfZGl2NC5odywKPj4gKyAgICAgJmE5X3ZjbGsyX2RpdjYuaHcsCj4+ICsgICAgICZhOV92 Y2xrMl9kaXYxMi5odwo+PiArfTsKPj4gKwo+PiArc3RhdGljIHN0cnVjdCBjbGtfcmVnbWFwIGE5 X3ZkYWNfc2VsID0gewo+PiArICAgICAuZGF0YSA9ICYoc3RydWN0IGNsa19yZWdtYXBfbXV4X2Rh dGEpewo+PiArICAgICAgICAgICAgIC5vZmZzZXQgPSBWSUlEX0NMS19ESVYsCj4+ICsgICAgICAg ICAgICAgLm1hc2sgPSAweGYsCj4+ICsgICAgICAgICAgICAgLnNoaWZ0ID0gMjgsCj4+ICsgICAg ICAgICAgICAgLnRhYmxlID0gYTlfdmlkX3BhcmVudHNfdmFsX3RhYmxlLAo+PiArICAgICB9LAo+ PiArICAgICAuaHcuaW5pdCA9IENMS19IV19JTklUX1BBUkVOVFNfSFcoInZkYWNfc2VsIiwgYTlf dmlkX3BhcmVudHMKPj4gKyAgICAgICAgICAgICAgICAgICAgICwgJmNsa19yZWdtYXBfbXV4X29w cywgMCksCj4+ICt9Owo+PiArCj4+ICtzdGF0aWMgc3RydWN0IGNsa19yZWdtYXAgYTlfdmRhYyA9 IHsKPj4gKyAgICAgLmRhdGEgPSAmKHN0cnVjdCBjbGtfcmVnbWFwX2dhdGVfZGF0YSl7Cj4+ICsg ICAgICAgICAgICAgLm9mZnNldCA9IFZJRF9DTEtfQ1RSTDIsCj4+ICsgICAgICAgICAgICAgLmJp dF9pZHggPSA0LAo+PiArICAgICB9LAo+PiArICAgICAuaHcuaW5pdCA9IENMS19IV19JTklUX0hX KCJ2ZGFjIiwgJmE5X3ZkYWNfc2VsLmh3LAo+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICZjbGtfcmVnbWFwX2dhdGVfb3BzLCBDTEtfU0VUX1JBVEVfUEFSRU5UKSwKPj4gK307Cj4+ ICsKPj4gK3N0YXRpYyBzdHJ1Y3QgY2xrX3JlZ21hcCBhOV9lbmNfc2VsID0gewo+IFNob3VsZCB0 aGlzIGJlIGVuYzAgdGhlbiA/IGZvciBjb25zaXN0ZW5jeSA/Cj4gU2FtZSBhcHBsaWVzIHRvIHNp bWlsYXIgaW5zdGFuY2UgKGl0IGlzIHRoZSBzYW1lIGRpc2N1c3Npb24gd2UgYWxyZWFkeQo+IGhh ZCBvbiB0aGUgVDcgSSBiZWxpZXZlKQoKClllcywgdGhhdCBtYWtlcyBzZW5zZS4KCkknbGwgcmVu YW1lIHRoZW0gdG8gYTlfZW5jb2RlcjAgYW5kIGE5X2VuY29kZXIxIGZvciBjb25zaXN0ZW5jeSwg YW5kIApJJ2xsIGNoZWNrIGZvciBvdGhlciBzaW1pbGFyIGluc3RhbmNlcyBhcyB3ZWxsLgoKPj4g KyAgICAgLmRhdGEgPSAmKHN0cnVjdCBjbGtfcmVnbWFwX211eF9kYXRhKXsKPj4gKyAgICAgICAg ICAgICAub2Zmc2V0ID0gVklJRF9DTEtfRElWLAo+PiArICAgICAgICAgICAgIC5tYXNrID0gMHhm LAo+PiArICAgICAgICAgICAgIC5zaGlmdCA9IDEyLAo+PiArICAgICAgICAgICAgIC50YWJsZSA9 IGE5X3ZpZF9wYXJlbnRzX3ZhbF90YWJsZSwKPj4gKyAgICAgfSwKPj4gKyAgICAgLmh3LmluaXQg PSBDTEtfSFdfSU5JVF9QQVJFTlRTX0hXKCJlbmNfc2VsIiwgYTlfdmlkX3BhcmVudHMKPj4gKyAg ICAgICAgICAgICAgICAgICAgICwgJmNsa19yZWdtYXBfbXV4X29wcywgMCksCj4+ICt9Owo+PiAr Cj4+ICtzdGF0aWMgc3RydWN0IGNsa19yZWdtYXAgYTlfZW5jID0gewo+PiArICAgICAuZGF0YSA9 ICYoc3RydWN0IGNsa19yZWdtYXBfZ2F0ZV9kYXRhKXsKPj4gKyAgICAgICAgICAgICAub2Zmc2V0 ID0gVklEX0NMS19DVFJMMiwKPj4gKyAgICAgICAgICAgICAuYml0X2lkeCA9IDEwLAo+PiArICAg ICB9LAo+PiArICAgICAuaHcuaW5pdCA9IENMS19IV19JTklUX0hXKCJlbmMiLCAmYTlfZW5jX3Nl bC5odywKPj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmY2xrX3JlZ21hcF9nYXRl X29wcywgQ0xLX1NFVF9SQVRFX1BBUkVOVCksCj4+ICt9Owo+PiArCgoKWyAuLi4gXQoKPiAtLQo+ IEplcm9tZQoKCi0tCgpKaWFuCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX18KbGludXgtYW1sb2dpYyBtYWlsaW5nIGxpc3QKbGludXgtYW1sb2dpY0BsaXN0 cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGlu Zm8vbGludXgtYW1sb2dpYwo=