Received: by 2002:a05:7412:5112:b0:fa:6e18:a558 with SMTP id fm18csp1700983rdb; Thu, 25 Jan 2024 03:44:15 -0800 (PST) X-Google-Smtp-Source: AGHT+IEu3bh28UPmkj8w+80x5N9E1qdejEcn5R1Thdm5xIZq+lKKQWNbl4fh3hIiiIadiCLIjcL/ X-Received: by 2002:a17:90a:12c9:b0:290:c2cd:6aac with SMTP id b9-20020a17090a12c900b00290c2cd6aacmr659351pjg.6.1706183055726; Thu, 25 Jan 2024 03:44:15 -0800 (PST) Return-Path: Received: from sy.mirrors.kernel.org (sy.mirrors.kernel.org. [147.75.48.161]) by mx.google.com with ESMTPS id t8-20020a17090ae50800b0029055b49868si1204217pjy.179.2024.01.25.03.44.15 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 Jan 2024 03:44:15 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-38461-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.48.161 as permitted sender) client-ip=147.75.48.161; Authentication-Results: mx.google.com; dkim=pass header.i=@marvell.onmicrosoft.com header.s=selector1-marvell-onmicrosoft-com header.b=Hubyt3vz; arc=fail (signature failed); spf=pass (google.com: domain of linux-kernel+bounces-38461-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.48.161 as permitted sender) smtp.mailfrom="linux-kernel+bounces-38461-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=fail (p=NONE sp=REJECT dis=NONE) header.from=marvell.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sy.mirrors.kernel.org (Postfix) with ESMTPS id C65A4B2FD75 for ; Thu, 25 Jan 2024 11:07:41 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id E9A6950A9E; Thu, 25 Jan 2024 10:50:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=marvell.onmicrosoft.com header.i=@marvell.onmicrosoft.com header.b="Hubyt3vz" Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com [67.231.156.173]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 11D9A2D630; Thu, 25 Jan 2024 10:50:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=67.231.156.173 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1706179808; cv=fail; b=u3ie9Zdu2VHcobVGE6sTJo/IvXVfhN0MqFikKYi0m4aycm2IubY+7xHiFR77Jx9sRKnNfUxJ7fbCxA+NIjfiSinldUaAhm5NxGqNSELx2Dhn+QxAK/Ub6+c0Y9x/md/cwZunhdgtIdLzrtCks5BvLm1vkcc7+hMVFo9T1SIWfy8= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1706179808; c=relaxed/simple; bh=LzH/bU+CRvTOO1vIIOlvXwD5+mAlb//J06jev5v9ctk=; h=From:To:CC:Subject:Date:Message-ID:References:In-Reply-To: Content-Type:MIME-Version; b=tOIpP26Tbz+68w7MEyUB7I/MXjWp5fM1jiuvPBxntOeipE6hrkeILMxn6XZBP7XNACQq2t2mAjIB6AzQE9xh6YJ6dtClRwCjsUXBU4sRyTQ5vDtHHCfcjrzWRiPGkdPQZLEjzqdKnGP/Iv3Mbwov52bmreqmAm7smJk8/zRk6WA= ARC-Authentication-Results:i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=marvell.com; spf=pass smtp.mailfrom=marvell.com; dkim=pass (1024-bit key) header.d=marvell.onmicrosoft.com header.i=@marvell.onmicrosoft.com header.b=Hubyt3vz; arc=fail smtp.client-ip=67.231.156.173 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=marvell.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=marvell.com Received: from pps.filterd (m0045851.ppops.net [127.0.0.1]) by mx0b-0016f401.pphosted.com (8.17.1.24/8.17.1.24) with ESMTP id 40P8voNx008557; Thu, 25 Jan 2024 02:49:51 -0800 Received: from nam02-sn1-obe.outbound.protection.outlook.com (mail-sn1nam02lp2040.outbound.protection.outlook.com [104.47.57.40]) by mx0b-0016f401.pphosted.com (PPS) with ESMTPS id 3vumk909y9-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 25 Jan 2024 02:49:51 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=T4sfPRLcUoLyT0JQboYTRAlX6FGdOldQ/RqffkBUolppv+ri3uKMra8J76j11P9sW6KOtzmpE+mr9oG0vMYQkdRhIk7pZQ4nSxa4R0Mq8wxUMwayHA7HAFV6pJVIdq5rTHhGSzPBZpY87wb9QjHNDlj/Wm40j5H5mRMPXiVfct1MR6vfjMJc/xvYT2QtqaYIMUn2TNGbSvHTPoW9OXtDF661+K54TqzH9+obMJv5P4ZQwfnSIT+X9KJKvfErniS42tgW5UonZXCdiy85Zk/k8BWE4KHiidKDVAhuUUODmj2uWlBCvUPyWJRT6DKxkclJGlYzPNExrRsOI4epFvbBUw== 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=LzH/bU+CRvTOO1vIIOlvXwD5+mAlb//J06jev5v9ctk=; b=oHZE/sBn9N0PF5y48BFhQTu3cCZ/jyyV5//mJ4OZRXRLmtHNxK+ZTqVfnQF8y3ZQrf3jl7ewBDU3SLysxP0+rp1RyypeCt7+rDdDQCnQYtdrABiZzuewfFNB/qY6gLu/kGI4FexoMl8zwM23X58B3UC4LuFikmkxN5gNQeMDjOXazCtjlazPAUrLwj5fOjHbzEf+HVisGTMEWLQXvdzeky7mLMvCkDFxf7McMLj1/vNaLOuWnmiR98GHFbC+6IquBcTvItyhrqzGrm/qxzb4jsMH71MEezxMIVedg5IBXV4sYQaUTI1k5/Sm3cH+XaXfuoVS2TE4yjDC9MPsA2uwEQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=marvell.com; dmarc=pass action=none header.from=marvell.com; dkim=pass header.d=marvell.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.onmicrosoft.com; s=selector1-marvell-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=LzH/bU+CRvTOO1vIIOlvXwD5+mAlb//J06jev5v9ctk=; b=Hubyt3vzQpvZxdc6vVRRHyJXT6UtR7D5x22mpfmey5n1udOrBF5Fj8dsvqNkzpbEZ0qVjyhBJPWVsIB5pPZ5JhJuSaZPCqgrIa10ppvNoFwdDt5UU9/6emgJ80jzQXGgr2ygWUScX6a+bO6jBfyyhcS5NrurcqCaJ/gT3+xnIpA= Received: from BY3PR18MB4707.namprd18.prod.outlook.com (2603:10b6:a03:3ca::23) by DM6PR18MB3682.namprd18.prod.outlook.com (2603:10b6:5:2a7::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7249.14; Thu, 25 Jan 2024 10:49:47 +0000 Received: from BY3PR18MB4707.namprd18.prod.outlook.com ([fe80::3cca:92a0:1e88:5f24]) by BY3PR18MB4707.namprd18.prod.outlook.com ([fe80::3cca:92a0:1e88:5f24%7]) with mapi id 15.20.7249.013; Thu, 25 Jan 2024 10:49:46 +0000 From: Sai Krishna Gajula To: Vadim Fedorenko , "richardcochran@gmail.com" , "davem@davemloft.net" , "kuba@kernel.org" , "netdev@vger.kernel.org" , "linux-kernel@vger.kernel.org" , Sunil Kovvuri Goutham , Geethasowjanya Akula , Linu Cherian , Hariprasad Kelam , Subbaraya Sundeep Bhatta CC: Naveen Mamindlapalli Subject: Re: [net-next PATCH] octeontx2: Add PTP clock driver for Octeon PTM clock. Thread-Topic: [net-next PATCH] octeontx2: Add PTP clock driver for Octeon PTM clock. Thread-Index: AQHaT3w215QiSiYfZ0GnnoCOnjVZnQ== Date: Thu, 25 Jan 2024 10:49:46 +0000 Message-ID: References: <20240124064156.2577119-1-saikrishnag@marvell.com> <68333f0b-4657-4171-8772-12e2b453f139@linux.dev> In-Reply-To: <68333f0b-4657-4171-8772-12e2b453f139@linux.dev> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-dg-ref: =?utf-8?B?UEcxbGRHRStQR0YwSUc1dFBTSmliMlI1TG5SNGRDSWdjRDBpWXpwY2RYTmxj?= =?utf-8?B?bk5jYzJGcGEzSnBjMmh1WVdkY1lYQndaR0YwWVZ4eWIyRnRhVzVuWERBNVpE?= =?utf-8?B?ZzBPV0kyTFRNeVpETXROR0UwTUMwNE5XVmxMVFppT0RSaVlUSTVaVE0xWWx4?= =?utf-8?B?dGMyZHpYRzF6WnkwM01XVTVPR0poTlMxaVlqWm1MVEV4WldVdFlXUXlaUzB4?= =?utf-8?B?WTJNeE1HTTBNR1E1WlRSY1lXMWxMWFJsYzNSY056RmxPVGhpWVRZdFltSTJa?= =?utf-8?B?aTB4TVdWbExXRmtNbVV0TVdOak1UQmpOREJrT1dVMFltOWtlUzUwZUhRaUlI?= =?utf-8?B?TjZQU0l5TXpBNE5DSWdkRDBpTVRNek5UQTJOVE16T0RNME9ETTNOekEzSWlC?= =?utf-8?B?b1BTSlllV2w2T0hsTmVGTjZTbFJYY2xodWIwcHpiRmxFVFV0YWIzTTlJaUJw?= =?utf-8?B?WkQwaUlpQmliRDBpTUNJZ1ltODlJakVpSUdOcFBTSmpRVUZCUVVWU1NGVXhV?= =?utf-8?B?bE5TVlVaT1EyZFZRVUZDWjFkQlFVUk1WRzF6TUdaRkwyRkJWbU5tT1ZwYWNt?= =?utf-8?B?OHZZVmRXZUM4eGJHMTFhamx3V1ZwQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVG?= =?utf-8?B?QlFVRkJRVUZCU0VGQlFVRkNkVVIzUVVFelp6aEJRVVJ2UjBGQlFVRkJRVUZC?= =?utf-8?B?UVVGQlFVRkJSVUZCVVVWQ1FVRkJRVGw1UmxoeFowTkJRVkZCUVVGQlFVRkJR?= =?utf-8?B?VUZCUVVvMFFVRkJRbWhCUjFGQldrRkNlVUZIVlVGamQwSjZRVUZCUVVGQlFV?= =?utf-8?B?RkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVG?= =?utf-8?B?QlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZC?= =?utf-8?B?UVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJR?= =?utf-8?B?VUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFV?= =?utf-8?B?RkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkZRVUZCUVVG?= =?utf-8?B?QlFVRkJRV2RCUVVGQlFVRnVaMEZCUVVkTlFXUlJRbnBCU0ZGQlluZENkRUZH?= =?utf-8?B?T0VGalFVSnNRVWhKUVdOM1FuWkJSelJCUVVGQlFVRkJRVUZCUVVGQlFVRkJR?= =?utf-8?B?VUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFV?= =?utf-8?B?RkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVG?= =?utf-8?B?QlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZC?= =?utf-8?B?UVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJR?= =?utf-8?B?VUZCVVVGQlFVRkJRVUZCUVVOQlFVRkJRVUZEWlVGQlFVRlpkMEl4UVVoTlFX?= =?utf-8?B?UkJRblpCUnpCQldIZENkMEZIWjBGaWQwSjFRVWRWUVdKblFqRkJSekJCV1dk?= =?utf-8?B?Q2JFRklTVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZC?= =?utf-8?B?UVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJR?= =?utf-8?B?VUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFV?= =?utf-8?B?RkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVG?= =?utf-8?B?QlFVRkJRVUZCUVVGQlFrRkJRVUZCUVVGQlFVRkpRVUZCUVVGQlNqUkJRVUZD?= =?utf-8?B?YWtGSVZVRmpkMEl3UVVjNFFXSlJRbVpCU0UxQlkzZENkVUZHT0VGYVFVSm9R?= =?utf-8?B?VWhOUVdGQlFtWkJTRmxCVFVGQmVVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFV?= =?utf-8?Q?FBQUFB?= x-dg-rorf: true x-dg-refone: =?utf-8?B?UVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJR?= =?utf-8?B?VUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFV?= =?utf-8?B?RkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVG?= =?utf-8?B?QlFVRkJRVUZCUVVGQlFVRkJRVVZCUVVGQlFVRkJRVUZCWjBGQlFVRkJRVzVu?= =?utf-8?B?UVVGQlIwMUJaRkZDZWtGSVVVRmlkMEowUVVZNFFXTjNRbnBCUnpSQldIZENj?= =?utf-8?B?a0ZIVlVGbFVVSXpRVWM0UVdOblFtdEJTRTFCUVVGQlFVRkJRVUZCUVVGQlFV?= =?utf-8?B?RkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVG?= =?utf-8?B?QlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZC?= =?utf-8?B?UVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJR?= =?utf-8?B?VUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGUlFVRkJRVUZCUVVGQlEw?= =?utf-8?B?RkJRVUZCUVVObFFVRkJRVmwzUWpGQlNFMUJaRUZDZGtGSE1FRllkMEo2UVVo?= =?utf-8?B?TlFXSm5RbVpCUnpSQlluZENhMEZIVlVGaVFVSndRVWN3UVdGUlFqQkJSMVZC?= =?utf-8?B?WTJkQ1prRklXVUZOUVVGNVFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJR?= =?utf-8?B?VUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFV?= =?utf-8?B?RkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVG?= =?utf-8?B?QlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkNRVUZC?= =?utf-8?B?UVVGQlFVRkJRVWxCUVVGQlFVRktORUZCUVVKcVFVaFZRV04zUWpCQlJ6aEJZ?= =?utf-8?B?bEZDWmtGSVRVRmpkMEoxUVVZNFFXTjNRbmRCUjBWQldYZENiRUZHT0VGa1ow?= =?utf-8?B?RjNRVVJKUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVG?= =?utf-8?B?QlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZC?= =?utf-8?B?UVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJR?= =?utf-8?B?VUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFV?= =?utf-8?B?RkJRVUZCUlVGQlFVRkJRVUZCUVVGblFVRkJRVUZCYm1kQlFVRkhVVUZpUVVK?= =?utf-8?B?M1FVWTRRV04zUW5KQlNHdEJZMEZDYkVGR09FRlpkMEp2UVVkRlFXUkJRbVpC?= =?utf-8?B?UnpCQldsRkNla0ZJVFVGWlVVSnVRVWRWUVZoM1FqSkJSRUZCVFdkQlFVRkJR?= =?utf-8?B?VUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFV?= =?utf-8?B?RkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVG?= =?utf-8?B?QlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZC?= =?utf-8?B?UVVGQlFVRkJRVUZCUVVGQlFWRkJRVUZCUVVGQlFVRkRRVUZCUVVGQlEyVkJR?= =?utf-8?B?VUZCV2tGQ2MwRklRVUZZZDBKNlFVZDNRVmxSUW1wQlIzTkJXSGRDYWtGSFow?= =?utf-8?B?RlpVVUl3UVVZNFFXSlJRbXhCU0UxQlkzZENhRUZIWTBGYVVVRkJRVUZCUVVG?= =?utf-8?B?QlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZC?= =?utf-8?B?UVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJR?= =?utf-8?B?VUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFV?= =?utf-8?Q?FBQUFB?= x-dg-reftwo: =?utf-8?B?UVVGQlFVRkJRVUZCUVVGQlFVRkJRVUpCUVVGQlFVRkJRVUZCU1VGQlFVRkJR?= =?utf-8?B?VW8wUVVGQlFtdEJSM2RCWTBGQ1prRklVVUZhVVVKb1FVY3dRV04zUW1aQlJ6?= =?utf-8?B?aEJZbWRDYkVGSFVVRmpaMEp3UVVoWlFWcFJRbVpCUjFsQllWRkNjMEZIVlVG?= =?utf-8?B?QlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZC?= =?utf-8?B?UVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJR?= =?utf-8?B?VUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFV?= =?utf-8?B?RkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGRlFVRkJRVUZCUVVG?= =?utf-8?B?QlFXZEJRVUZCUVVGdVowRkJRVWRWUVdKUlFtaEJSMnRCWWtGQ1prRkhSVUZh?= =?utf-8?B?UVVKclFVaEpRVnBSUW5wQlNFMUJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJR?= =?utf-8?B?VUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFV?= =?utf-8?B?RkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVG?= =?utf-8?B?QlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZC?= =?utf-8?B?UVVGQlFVRkJRVUZCUVVGQlFVRkJRVVIzUVVGQlFVRkJRVUZCUVVGQlFVRkJV?= =?utf-8?B?VUZCUVVGQlFVRkJRVU5CUVVGQlFVRkRaVUZCUVVGaVVVSm9RVWhKUVdSblFt?= =?utf-8?B?eEJSM2RCV0hkQ2QwRklTVUZpZDBKeFFVZFZRVmwzUWpCQlJqaEJZbWRDYUVG?= =?utf-8?B?SE1FRmFVVUo2UVVZNFFWbDNRblpCUnpSQldtZENjRUZIVVVGYVVVSjFRVWhS?= =?utf-8?B?UVdGUlFtaEJSM2RCV0hkQ2FFRkhkMEZpZDBKMVFVZFZRVUZCUVVGQlFVRkJR?= =?utf-8?B?VUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFV?= =?utf-8?B?RkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVG?= =?utf-8?B?QlFVRkJRVUZCUWtGQlFVRkJRVUZCUVVGSlFVRkJRVUZCU2pSQlFVRkNkRUZI?= =?utf-8?B?UlVGalowSXlRVWRWUVdKQlFtWkJTRUZCWTJkQ2RrRkhiMEZhVVVKcVFVaFJR?= =?utf-8?B?VmgzUW5WQlIwVkJZbEZDYkVGSVRVRllkMEo1UVVkVlFXTjNRakJCU0VsQllW?= =?utf-8?B?RkNha0ZJVVVGYVVVSnJRVVk0UVZsUlFuTkJSemhCWW1kQ2JFRkJRVUZCUVVG?= =?utf-8?B?QlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZC?= =?utf-8?B?UVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJR?= =?utf-8?B?VUZCUVVGQlFVRkJRVUZCUVVGQlFVVkJRVUZCUVVGQlFVRkJaMEZCUVVGQlFX?= =?utf-8?B?NW5RVUZCUnpCQldWRkNlVUZJV1VGYVVVSnpRVVk0UVdOQlFubEJSemhCWVdk?= =?utf-8?B?Q2JFRkhUVUZrUVVKbVFVYzBRVmxSUW5SQlIxVkJZM2RDWmtGSVNVRmFVVUo2?= =?utf-8?B?UVVoUlFXTm5RbkJCUjAxQlpFRkNiRUZIVVVGWWQwSnZRVWRWUVdWQlFtcEJS?= =?utf-8?B?emhCV2tGQ2JFRklUVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFV?= =?utf-8?B?RkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVG?= =?utf-8?B?QlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZSUVVGQlFVRkJRVUZC?= =?utf-8?B?UTBGQlFVRkJRVU5sUVVGQlFXSlJRbWhCU0VsQlpHZENiRUZIZDBGaVFVSm1R?= =?utf-8?B?VWRGUVdOblFuUkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFV?= =?utf-8?Q?FBQUFB?= x-dg-refthree: =?utf-8?B?UVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJR?= =?utf-8?B?VUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFV?= =?utf-8?B?RkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVG?= =?utf-8?B?QlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQ1FVRkJRVUZC?= =?utf-8?B?UVVGQlFVbEJRVUZCUVVGS05FRkJRVUowUVVkRlFXTm5RakpCUjFWQllrRkNj?= =?utf-8?B?MEZHT0VGYWQwSjJRVWM0UVZwM1FuTkJSMVZCUVVGQlFVRkJRVUZCUVVGQlFV?= =?utf-8?B?RkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVG?= =?utf-8?B?QlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZC?= =?utf-8?B?UVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJR?= =?utf-8?B?VUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFV?= =?utf-8?B?RkJSVUZCUVVGQlFVRkJRVUZuUVVGQlFVRkJibWRCUVVGSE1FRlpVVUo1UVVo?= =?utf-8?B?WlFWcFJRbk5CUjNkQldIZENkMEZJU1VGaWQwSnhRVWRWUVZsM1FqQkJSamhC?= =?utf-8?B?V1hkQ2RrRkhVVUZhVVVKNlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJR?= =?utf-8?B?VUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFV?= =?utf-8?B?RkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVG?= =?utf-8?B?QlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZC?= =?utf-8?B?UVVGQlFVRkJRVUZCUVZGQlFVRkJRVUZCUVVGRFFVRkJRVUZCUTJWQlFVRkJZ?= =?utf-8?B?bEZDYUVGSVNVRmtaMEpzUVVkM1FXSkJRbVpCU0VGQlkyZENka0ZIYjBGYVVV?= =?utf-8?B?SnFRVWhSUVZoM1FtcEJSemhCV2tGQ2JFRklUVUZZZDBKclFVZHJRVmwzUWpC?= =?utf-8?B?QlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZC?= =?utf-8?B?UVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJR?= =?utf-8?B?VUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFV?= =?utf-8?B?RkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVSkJRVUZCUVVGQlFVRkJTVUZCUVVG?= =?utf-8?B?QlFVbzBRVUZCUW5SQlIwVkJZMmRDTWtGSFZVRmlRVUp6UVVZNFFXTkJRbmxC?= =?utf-8?B?UnpoQllXZENiRUZIVFVGa1FVSm1RVWMwUVZsUlFuUkJSMVZCWTNkQ1prRkhU?= =?utf-8?B?VUZpZDBKMVFVZFpRV0ZSUW10QlIxVkJZbWRDTUVGSGEwRlpVVUp6UVVZNFFX?= =?utf-8?B?SlJRbWhCU0VsQlpHZENiRUZIZDBGaVFVRkJRVUZCUVVGQlFVRkJRVUZCUVVG?= =?utf-8?B?QlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZC?= =?utf-8?B?UVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZGUVVGQlFVRkJR?= =?utf-8?B?VUZCUVdkQlFVRkJRVUZ1WjBGQlFVY3dRVmxSUW5sQlNGbEJXbEZDYzBGSGQw?= =?utf-8?B?RllkMEozUVVoSlFXSjNRbkZCUjFWQldYZENNRUZHT0VGaVowSm9RVWN3UVZw?= =?utf-8?B?UlFucEJSamhCV1hkQ2RrRkhORUZhWjBKd1FVZFJRVnBSUW5WQlNGRkJZVkZD?= =?utf-8?B?YUVGSGQwRllkMEowUVVkRlFXTm5RakpCUjFWQllrRkNjMEZHT0VGaWQwSjVR?= =?utf-8?B?VVk0UVZsUlFubEJSekJCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFV?= =?utf-8?Q?FBQUFB?= x-dg-reffour: =?utf-8?B?UVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlVVRkJR?= =?utf-8?B?VUZCUVVGQlFVTkJRVUZCUVVGRFpVRkJRVUZpVVVKb1FVaEpRV1JuUW14QlIz?= =?utf-8?B?ZEJZa0ZDWmtGSVFVRmpaMEoyUVVkdlFWcFJRbXBCU0ZGQldIZENkVUZIUlVG?= =?utf-8?B?aVVVSnNRVWhOUVZoM1FtcEJSemhCWW1kQ2JVRkhhMEZhUVVKc1FVYzBRV1JC?= =?utf-8?B?UW5CQlIwVkJZa0ZDWmtGSE1FRlpVVUo1UVVoWlFWcFJRbk5CUjNkQldIZENk?= =?utf-8?B?a0ZJU1VGWWQwSnVRVWM0UVdKM1FtNUJSM2RCV2xGQlFVRkJRVUZCUVVGQlFV?= =?utf-8?B?RkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVG?= =?utf-8?B?QlFVRkJRa0ZCUVVGQlFVRkJRVUZKUVVGQlFVRkJTalJCUVVGQ2RFRkhSVUZq?= =?utf-8?B?WjBJeVFVZFZRV0pCUW5OQlJqaEJZMEZDZVVGSE9FRmhaMEpzUVVkTlFXUkJR?= =?utf-8?B?bVpCUnpSQldWRkNkRUZIVlVGamQwSm1RVWhKUVZwUlFucEJTRkZCWTJkQ2NF?= =?utf-8?B?RkhUVUZrUVVKc1FVZFJRVmgzUW5SQlIwVkJZMmRDTWtGSFZVRmlRVUp6UVVG?= =?utf-8?B?QlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZC?= =?utf-8?B?UVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJR?= =?utf-8?B?VUZCUVVGQlFVRkJRVUZCUVVWQlFVRkJRVUZCUVVGQlowRkJRVUZCUVc1blFV?= =?utf-8?B?RkJSekJCV1ZGQ2VVRklXVUZhVVVKelFVZDNRVmgzUW5kQlNFbEJZbmRDY1VG?= =?utf-8?B?SFZVRlpkMEl3UVVZNFFXSm5RbWhCUnpCQldsRkNla0ZHT0VGalowSnNRVWhO?= =?utf-8?B?UVdSQlFubEJSMnRCV1hkQ01FRkhWVUZhUVVKbVFVY3dRVmxSUW5sQlNGbEJX?= =?utf-8?B?bEZDYzBGSGQwRllkMEoyUVVoSlFWaDNRbWhCU0VsQllsRkJRVUZCUVVGQlFV?= =?utf-8?B?RkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVG?= =?utf-8?B?QlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRlJRVUZCUVVGQlFVRkJRMEZC?= =?utf-8?B?UVVGQlFVTmxRVUZCUVdKUlFtaEJTRWxCWkdkQ2JFRkhkMEZpUVVKbVFVaFJR?= =?utf-8?B?VnBSUW5sQlJ6QkJZVkZDZFVGSVZVRmpkMEZCUVVGQlFVRkJRVUZCUVVGQlFV?= =?utf-8?B?RkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVG?= =?utf-8?B?QlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZC?= =?utf-8?B?UVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJR?= =?utf-8?B?VUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZDUVVGQlFV?= =?utf-8?B?RkJRVUZCUVVsQlFVRkJRVUZLTkVGQlFVSjBRVWRGUVdOblFqSkJSMVZCWWtG?= =?utf-8?B?Q2MwRkdPRUZrZDBKMlFVaEpRVnBCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZC?= =?utf-8?B?UVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJR?= =?utf-8?B?VUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFV?= =?utf-8?B?RkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVG?= =?utf-8?B?QlFVRkJRVUZCUVVGQlFVRkJRVUZCUVVGQlFVRk5RVUZCUVVGQlFVRkJRVUZC?= =?utf-8?B?UVVGQlJVRkJRVUZCUVVGQlFVRm5RVUZCUVVGQlQyZFpRVUZCUVVGQlFVRkpR?= =?utf-8?B?VUZCUVVGQlFVRkJRV2RCUVVGQlFVRkJRVUZEUVVGQlFVRkJRVUZCUVdGQ1ow?= =?utf-8?Q?FBR1FB?= x-dg-reffive: =?utf-8?B?UVVGQ1owRkJRVUZCUVVGQlFWbFJRbXRCUjFGQlkyZENiRUZJVFVGamQwRkJR?= =?utf-8?B?VU5SUVVGQlFVRkJRVUZCV1hkQ01VRklUVUZrUVVKMlFVY3dRVmgzUW5kQlIx?= =?utf-8?B?VkJZMmRDZWtGSE9FRmlaMEZCUVVNMFFVRkJRVUZCUVVGQldYZENNVUZJVFVG?= =?utf-8?B?a1FVSjJRVWN3UVZoM1FuZEJSMmRCWW5kQ2RVRkhWVUZpWjBJeFFVY3dRVmxu?= =?utf-8?B?UW14QlNFbEJRVUZCZDBGQlFVRkJRVUZCUVVkTlFXUlJRbnBCU0ZGQlluZENk?= =?utf-8?B?RUZHT0VGamQwSjZRVWMwUVZoM1FtdEJSMFZCWTNkQ2IwRkdPRUZrWjBGM1FV?= =?utf-8?B?UkpRVUZCUVhkQlFVRkJRVUZCUVVGSFRVRmtVVUo2UVVoUlFXSjNRblJCUmpo?= =?utf-8?B?QlkzZENla0ZITkVGWWQwSnlRVWRWUVdWUlFqTkJSemhCWTJkQ2EwRklUVUZC?= =?utf-8?B?UVVFclFVRkJRVUZCUVVGQlIwMUJaRkZDZWtGSVVVRmlkMEowUVVZNFFXTjNR?= =?utf-8?B?bnBCUnpSQldIZENkVUZIT0VGYVFVSnNRVWQzUVdGUlFuUkJSMnRCWkVGQ2JF?= =?utf-8?B?RklTVUZZZDBJeVFVUkJRVTFuUVVGQlJFbEJRVUZCUVVGQlFVRlpkMEl4UVVo?= =?utf-8?B?TlFXUkJRblpCUnpCQldIZENla0ZJVFVGaVowSm1RVWhOUVdOQlFtaEJSMDFC?= =?utf-8?B?V2xGQ1prRklXVUZOUVVGNVFVRkJRVkJuUVVGQlFVRkJRVUZDYTBGSGQwRmpR?= =?utf-8?B?VUptUVVoTlFXRjNRalZCU0VGQldsRkNaa0ZIVFVGaFFVSm9RVWhSUVZoM1Fu?= =?utf-8?B?UkJSMVZCWTNkQ2VrRkhSVUZhZDBKc1FVWTRRV1JuUVhkQlJFbEJRVUZCTWtG?= =?utf-8?B?QlFVRkJRVUZCUVVkUlFXSkJRbmRCUmpoQlkzZENjMEZIUlVGWmQwSnlRVVk0?= =?utf-8?B?UVZsM1FtOUJSMFZCWkVGQ1prRkhNRUZhVVVKNlFVaE5RVmxSUW01QlIxVkJR?= =?utf-8?B?VUZCTkVGQlFVRkJRVUZCUVVkUlFXSkJRbmRCUmpoQlpFRkNiRUZIUlVGaVVV?= =?utf-8?B?SjZRVVk0UVdKM1FuVkJSMVZCV2tGQ2VVRkhhMEZrWjBKc1FVWTRRVnBuUW5C?= =?utf-8?B?QlIzZEJXbEZCUVVGRFVVRkJRVUZRUVVGQlFWcFJRblJCUjBWQllWRkNjMEZH?= =?utf-8?B?T0VGWlVVSnJRVWRSUVdOblFteEJTRTFCWTNkQlFVRkdaMEZCUVVGQlFVRkJR?= =?utf-8?B?V0pSUW1oQlNFbEJaR2RDYkVGSGQwRllkMEozUVVoSlFXSjNRbkZCUjFWQldY?= =?utf-8?B?ZENNRUZHT0VGaVowSm9RVWN3UVZwUlFucEJSamhCV1hkQ2RrRkhORUZhWjBK?= =?utf-8?B?d1FVZFJRVnBSUW5WQlNGRkJZVkZDYUVGSGQwRllkMEpvUVVkM1FXSjNRblZC?= =?utf-8?B?UjFWQlFVRkNWVUZCUVVGQlFVRkJRVWN3UVZsUlFubEJTRmxCV2xGQ2MwRkdP?= =?utf-8?B?RUZqUVVKNVFVYzRRV0ZuUW14QlIwMUJaRUZDWmtGSE5FRlpVVUowUVVkVlFX?= =?utf-8?B?TjNRbVpCU0VsQldsRkNla0ZJVVVGalowSndRVWROUVdSQlFteEJSMUZCV0hk?= =?utf-8?B?Q2FFRkhkMEZpZDBKMVFVZFZRVUZCUW1GQlFVRkJRVUZCUVVGSE1FRlpVVUo1?= =?utf-8?B?UVVoWlFWcFJRbk5CUmpoQlkwRkNlVUZIT0VGaFowSnNRVWROUVdSQlFtWkJS?= =?utf-8?B?elJCV1ZGQ2RFRkhWVUZqZDBKbVFVaEpRVnBSUW5wQlNGRkJZMmRDY0VGSFRV?= =?utf-8?B?RmtRVUpzUVVkUlFWaDNRbTlCUjFWQlpVRkNha0ZIT0VGYVFVSnNRVWhOUVVG?= =?utf-8?B?QlFXZEJRVUZCUVVGQlFVRkhNRUZaVVVKNVFVaFpRVnBSUW5OQlIzZEJXSGRD?= =?utf-8?B?YUVGSVNVRmlVVUZCUVVOWlFVRkJRVUZCUVVGQllsRkNhRUZJU1VGa1owSnNR?= =?utf-8?B?VWQzUVdKQlFtWkJSMk5CWW5kQ2RrRkhZMEZpUVVKc1FVRkJRVTVCUVVGQlFV?= =?utf-8?Q?FBQUFC?= x-dg-refsix: =?utf-8?B?ZEVGSFJVRmpaMEl5UVVkVlFXSkJRbk5CUmpoQlkwRkNlVUZIT0VGaFowSnNR?= =?utf-8?B?VWROUVdSQlFtWkJSMDFCWW5kQ2EwRkhWVUZqZDBGQlFVUTBRVUZCUVVGQlFV?= =?utf-8?B?RkJZbEZDYUVGSVNVRmtaMEpzUVVkM1FXSkJRbVpCU0VGQlkyZENka0ZIYjBG?= =?utf-8?B?YVVVSnFRVWhSUVZoM1FtcEJSemhCV2tGQ2JFRklUVUZZZDBKclFVZHJRVmwz?= =?utf-8?B?UWpCQlFVRkJXR2RCUVVGQlFVRkJRVUowUVVkRlFXTm5RakpCUjFWQllrRkNj?= =?utf-8?B?MEZHT0VGalFVSjVRVWM0UVdGblFteEJSMDFCWkVGQ1prRkhORUZaVVVKMFFV?= =?utf-8?B?ZFZRV04zUW1aQlIwMUJZbmRDZFVGSFdVRmhVVUpyUVVkVlFXSm5RakJCUjJ0?= =?utf-8?B?QldWRkNjMEZHT0VGaVVVSm9RVWhKUVdSblFteEJSM2RCWWtGQlFVRkhkMEZC?= =?utf-8?B?UVVGQlFVRkJRV0pSUW1oQlNFbEJaR2RDYkVGSGQwRmlRVUptUVVoQlFXTm5R?= =?utf-8?B?blpCUjI5QldsRkNha0ZJVVVGWWQwSjFRVWRGUVdKUlFteEJTRTFCV0hkQ2Fr?= =?utf-8?B?RkhPRUZpWjBKdFFVZHJRVnBCUW14QlJ6UkJaRUZDY0VGSFJVRmlRVUptUVVj?= =?utf-8?B?d1FWbFJRbmxCU0ZsQldsRkNjMEZIZDBGWWQwSjJRVWhKUVZoM1FtaEJTRWxC?= =?utf-8?B?WWxGQlFVRklTVUZCUVVGQlFVRkJRV0pSUW1oQlNFbEJaR2RDYkVGSGQwRmlR?= =?utf-8?B?VUptUVVoQlFXTm5RblpCUjI5QldsRkNha0ZJVVVGWWQwSjFRVWRGUVdKUlFt?= =?utf-8?B?eEJTRTFCV0hkQ2FrRkhPRUZpWjBKdFFVZHJRVnBCUW14QlJ6UkJaRUZDY0VG?= =?utf-8?B?SFJVRmlRVUptUVVjd1FWbFJRbmxCU0ZsQldsRkNjMEZIZDBGWWQwSjJRVWhK?= =?utf-8?B?UVZoM1FtNUJSemhCWW5kQ2JrRkhkMEZhVVVGQlFVWnZRVUZCUVVGQlFVRkJZ?= =?utf-8?B?bEZDYUVGSVNVRmtaMEpzUVVkM1FXSkJRbVpCU0VGQlkyZENka0ZIYjBGYVVV?= =?utf-8?B?SnFRVWhSUVZoM1FuVkJSMFZCWWxGQ2JFRklUVUZZZDBKNVFVZFZRV04zUWpC?= =?utf-8?B?QlNFbEJZVkZDYWtGSVVVRmFVVUpyUVVZNFFXSlJRbWhCU0VsQlpHZENiRUZI?= =?utf-8?B?ZDBGaVFVRkJRVWRuUVVGQlFVRkJRVUZCWWxGQ2FFRklTVUZrWjBKc1FVZDNR?= =?utf-8?B?V0pCUW1aQlNFRkJZMmRDZGtGSGIwRmFVVUpxUVVoUlFWaDNRblZCUjBWQlls?= =?utf-8?B?RkNiRUZJVFVGWWQwSjVRVWRWUVdOM1FqQkJTRWxCWVZGQ2FrRklVVUZhVVVK?= =?utf-8?B?clFVWTRRV0pSUW1oQlNFbEJaR2RDYkVGSGQwRmlRVUptUVVjNFFXTm5RbVpC?= =?utf-8?B?UjBWQlkyZENkRUZCUVVGTFowRkJRVUZCUVVGQlFuUkJSMFZCWTJkQ01rRkhW?= =?utf-8?B?VUZpUVVKelFVWTRRV1JCUW14QlNFbEJZbEZDY0VGSE5FRmtVVUo2UVVGQlFV?= =?utf-8?B?bG5RVUZCUVUxQlFVRkNkRUZIUlVGalowSXlRVWRWUVdKQlFuTkJSamhCWkhk?= =?utf-8?Q?CdkFISUFaQUFBQUE9PSIvPjwvbWV0YT4=3D?= x-ms-publictraffictype: Email x-ms-traffictypediagnostic: BY3PR18MB4707:EE_|DM6PR18MB3682:EE_ x-ms-office365-filtering-correlation-id: 5f3a2587-e7eb-4056-d854-08dc1d9358d9 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: SuHVW0CDpE7471re5Csz21XmOirsfjs+OKpkihIMzyFACN2rfqBYVRQWOfOFxT4+hs/8kDiottYi4n9Q7YAA+qpUlOtXwdpXIzMEIP1+V6MGQnUOto9kLCr8YY3ncn3dSEoQzYF1PyxLE3vm84sNYnbRPNreLdAXoQM68N8VCF2gSVPJakZxN8vkWjtLuuwKH7rnW0cyYDJNhZYstx3UjokgAMBrw+1nQiaI8H11rtI2N9kisU82pulpKc2fxLXcdidu86Qiv347AnPJ9okqUH6Uy0SUU/l4w9Cq/eJPICQLWtKkH76HR5TEVpdHd2ulglh41sG3CJSUBo6jVp6nonDfmOGaLAckE8h7c3EZXpGfoaO+eOwn9Kvu4D3wMyk2LWYLn9tPXgd8PLVc9drDDfLotaiItjeieGWa5LfNCqalw9RlVqLxnjMS4dtKmYSy2jD+isO0Y9+QfbybeRruFGKFMFt3KP7LEZY5CkdapHLdJowXQ0VElj3LJ+syMS1v5htFkwTydjrAzmrpKm86fvNeS4jccglxNTV+NPJ/frkYKx3Czv64zuGikbwhTT6MrQ1z06ZS7eKXINS57VcKKD0LjLlf9HXrDm5C1y38zpIxBfNBejtDhIII6gzQfVxj x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BY3PR18MB4707.namprd18.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(376002)(346002)(366004)(136003)(396003)(230922051799003)(451199024)(64100799003)(1800799012)(186009)(4326008)(122000001)(83380400001)(86362001)(33656002)(41300700001)(38100700002)(478600001)(66476007)(52536014)(8676002)(66946007)(8936002)(66556008)(6636002)(110136005)(66446008)(316002)(64756008)(5660300002)(26005)(76116006)(30864003)(2906002)(107886003)(7696005)(9686003)(53546011)(6506007)(71200400001)(38070700009)(921011)(55016003);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?OW4vbWwwaUkyWDloVUpYc3p4c0pkdUhPTmdjeFBRTTRXWDRVbThRdHBOZDRL?= =?utf-8?B?Z3J2RlhEWm9vMEwxSXA0VElOTko3MVNXdmdVaFlUS2pQUHJ6anYyUzZVdGpn?= =?utf-8?B?eEgvVFhQMlJUbXFDa2ZuSWJ0NGVrYlNENitqYlJVV1V5SDNHVE1Ta2dyNGJo?= =?utf-8?B?VDNIZy90WjE3MTdnT1F3eWlYYVhIMm9NQlZlRDRjei96ZFpFUjE2RkVDYmZy?= =?utf-8?B?QmE4NVhJR2NiRGo2VzFEelVzMWVSanA1cWxCVGc0bHNnM2ZweDc5SCtGNHF5?= =?utf-8?B?ZXZRSnNkcUdXZHVvZmtiMkRZQWU5ditqcFU0TlBXOVkrampoemZUd0laV2dZ?= =?utf-8?B?Wk5wdXZwcjc1ODQxNHk0bTI0amEwSW5haVcyZHNRMXV0b1JVQ0M1ZElDUzQ5?= =?utf-8?B?V3lwS01tVXhEY25DcDJsZDZLVTdpS2IvclNGQ3BNa0FpR3FJbXd1V21WY2l1?= =?utf-8?B?S3ZPR1NublpKa1A4NTlOeU5RQUJ5RTV6OWR3UGluV3l2V2FRKythdlRMS3FL?= =?utf-8?B?WHVWYVoyQ3RsN2RMT2YzMzlZUHZpTWczU3V6WS95QVM2d1h1OENJWlRhbXNz?= =?utf-8?B?RlV3aFp4N1NhQitQWVY2VnZPc2JrUmpGTWkvdHovRmpXN1RWQ0FqeEV2ZnFZ?= =?utf-8?B?VzdOVll0L09oZG1QZjVVUFVyRzdlRXRUSWlOZUFZN0dSbG9qTHRzMTc0TWsy?= =?utf-8?B?SWt3Tk1mZHUwak9lZlBqdTIvaS9zK1dRcHN6cjkvMCtSd09mTk5zVUhKYm1K?= =?utf-8?B?REJhRVU0eUpLdUFGMngrTG9FS0diWnFuOFhEaUdqSmh5MjV2TUY0d0owTGNQ?= =?utf-8?B?U21ITXFXTXdBcUxPczVndnYzd0txQ0xCZGh5WXpoaG5mR3VNbG9pSi9kUkw2?= =?utf-8?B?eWgxZStQeUhuSUNmUmlQM084RDZHRmtsSWJtdU1VYVY5ems5SzkyNHQ0ZGsz?= =?utf-8?B?VUVPOHJWZEExQmMwZHBNNDQ1eE02N3Uxb2hpRHlLOEhNTUU2VDFkbHJmR0RP?= =?utf-8?B?K2YxZkVmSDJLMFpxc1hGUnFQb3FGUjVlcmJNWGsrWWdJMW9YQ3BvNDYwTUph?= =?utf-8?B?aWpMUUxLQXNzMy9IM0IzVjVpcXVSK1Vob2piS3pFMExBSVFKL3J1RUlmYnVJ?= =?utf-8?B?c2M1djZoUElPbFE4QS9uYThLT1hFWFQ4a0pQZElIZWc2bXlOUFUyNFVyYjZr?= =?utf-8?B?eXp1ZTlacllFQlZmS3dMNzZjY1RpTEtBOUExSjFDVmxmTFcrb3ZTTjJHdTlM?= =?utf-8?B?RHRXS0FlS1lJaXBDTnp4anVFSkRCSWxmQTBrcWlJZ1YydDlpc0JraGs0ZHNy?= =?utf-8?B?cUZzZjZ0N3V4RXFnam1yaFhRNzM4R01BVzNtaXY1RjRZVUw1VmJReStZUzhw?= =?utf-8?B?aDUxdEs3bW5CaFhNZDFjVWRtL3lNb1JkSHl0Q3hVNEo3NDZwamJ2aGtJaUNm?= =?utf-8?B?VUdBSGh1T05jSW1Eeng0eXpkUlJ3TWFNTFcxVkF1MlNqTXpjay9FU2FjUSs3?= =?utf-8?B?Z01rdzVxaEZHM0I4WUw2K0Q3d3pGR0VBUEJaKy96SDRMSWpISlI5SlBnT2ox?= =?utf-8?B?b2x0N1pKb2dqd2JacFpWb1FSeFRXVHpTNjJnbmNCTjhNQ3NSSXNhbmZBOUt3?= =?utf-8?B?cEVzRW9pWXpudE1IbWFKTU1MNS8yMHFFVDF2VldtbHZidm9PaVgwUWZMbnl2?= =?utf-8?B?TjVyNnh3TE9RM2FyS0JpWHlLdEVvakFhVFRmclRBV3B4OFhZZ0JRdC9mSTZZ?= =?utf-8?B?TDA2S3h2ZGFZL3QrWEY5VFhQRnVuNmRvUlI4dmJrWFMvZDdIbm8rd25nU3Jp?= =?utf-8?B?anloM3kxamlQNWE2ZkFMZVB4QkJzbFdROE93bHArQ0lhQm43bDVlczdBRVdF?= =?utf-8?B?MU01ZEVlTkkwYjlEcERGV0V2ZFZSTlRTZjM4QVA0YnlyZEpQR0xBR3lKNVlw?= =?utf-8?B?dm1VYVV1bWk5dmZQKy8rSWNWMDc4SStmd3p6TmUzTGl5MVgxRWZqMUsrdHdm?= =?utf-8?B?bHlzRUdOeHdxMlF6bzF2NkE1TlpIbVNWK0tGSTZ6eEpJbDdDUUJwQ2pEOHZu?= =?utf-8?B?Tk43QXB4UHE1T1c5VEFXRDZKRWMzN2FmdnZockZVRkJvQzc0a3ZxZ3UrWmxB?= =?utf-8?Q?jfkDpQ6MTJD8qO145dxImYkpG?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-OriginatorOrg: marvell.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BY3PR18MB4707.namprd18.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5f3a2587-e7eb-4056-d854-08dc1d9358d9 X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Jan 2024 10:49:46.7305 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 70e1fb47-1155-421d-87fc-2e58f638b6e0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: tKrO5s/3mS4KqOTxLXtYe8LqRrRTS60UmZsgTYOoeS5/odNOcLlSx9m4lp96RpSlYb8wbGgaoqoaAxbh9IJCTA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR18MB3682 X-Proofpoint-ORIG-GUID: 54NcwAZxYzDH1ELrOa6iLxXKgVL6IkrT X-Proofpoint-GUID: 54NcwAZxYzDH1ELrOa6iLxXKgVL6IkrT X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.1011,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2024-01-25_06,2024-01-25_01,2023-05-22_02 DQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IFZhZGltIEZlZG9yZW5rbyA8 dmFkaW0uZmVkb3JlbmtvQGxpbnV4LmRldj4NCj4gU2VudDogV2VkbmVzZGF5LCBKYW51YXJ5IDI0 LCAyMDI0IDQ6NTggUE0NCj4gVG86IFNhaSBLcmlzaG5hIEdhanVsYSA8c2Fpa3Jpc2huYWdAbWFy dmVsbC5jb20+Ow0KPiByaWNoYXJkY29jaHJhbkBnbWFpbC5jb207IGRhdmVtQGRhdmVtbG9mdC5u ZXQ7IGt1YmFAa2VybmVsLm9yZzsNCj4gbmV0ZGV2QHZnZXIua2VybmVsLm9yZzsgbGludXgta2Vy bmVsQHZnZXIua2VybmVsLm9yZzsgU3VuaWwgS292dnVyaQ0KPiBHb3V0aGFtIDxzZ291dGhhbUBt YXJ2ZWxsLmNvbT47IEdlZXRoYXNvd2phbnlhIEFrdWxhDQo+IDxnYWt1bGFAbWFydmVsbC5jb20+ OyBMaW51IENoZXJpYW4gPGxjaGVyaWFuQG1hcnZlbGwuY29tPjsgSGFyaXByYXNhZA0KPiBLZWxh bSA8aGtlbGFtQG1hcnZlbGwuY29tPjsgU3ViYmFyYXlhIFN1bmRlZXAgQmhhdHRhDQo+IDxzYmhh dHRhQG1hcnZlbGwuY29tPg0KPiBDYzogTmF2ZWVuIE1hbWluZGxhcGFsbGkgPG5hdmVlbm1AbWFy dmVsbC5jb20+DQo+IFN1YmplY3Q6IFJlOiBbbmV0LW5leHQgUEFUQ0hdIG9jdGVvbnR4MjogQWRk IFBUUCBjbG9jayBkcml2ZXIgZm9yDQo+IE9jdGVvbiBQVE0gY2xvY2suDQo+IA0KPiBPbiAyNC8w MS8yMDI0IDA2OjQxLCBTYWkgS3Jpc2huYSB3cm90ZToNCj4gPiBUaGUgUENJZSBQVE0oUHJlY2lz aW9uIHRpbWUgbWVhc3VyZW1lbnQpIHByb3RvY29sIHByb3ZpZGVzIHByZWNpc2UNCj4gPiBjb29y ZGluYXRpb24gb2YgZXZlbnRzIGFjcm9zcyBtdWx0aXBsZSBjb21wb25lbnRzIGxpa2UgUENJZSBo b3N0DQo+ID4gY2xvY2ssIFBDSWUgRVAgUEhDIGxvY2FsIGNsb2NrcyBvZiBQQ0llIGRldmljZXMu IFRoaXMgcGF0Y2ggYWRkcw0KPiA+IHN1cHBvcnQgZm9yIHB0cCBjbG9jayBiYXNlZCBQVE0gY2xv Y2suIFdlIGNhbiB1c2UgdGhpcyBQVFAgZGV2aWNlIHRvDQo+ID4gc3luYyB0aGUgUFRNIHRpbWUg d2l0aCBDTE9DS19SRUFMVElNRSBvciBvdGhlciBQVFAgUEhDIGRldmljZXMgdXNpbmcNCj4gPiBw aGMyc3lzLg0KPiA+DQo+ID4gU2lnbmVkLW9mZi1ieTogU2FpIEtyaXNobmEgPHNhaWtyaXNobmFn QG1hcnZlbGwuY29tPg0KPiA+IFNpZ25lZC1vZmYtYnk6IE5hdmVlbiBNYW1pbmRsYXBhbGxpIDxu YXZlZW5tQG1hcnZlbGwuY29tPg0KPiA+IFNpZ25lZC1vZmYtYnk6IFN1bmlsIEtvdnZ1cmkgR291 dGhhbSA8c2dvdXRoYW1AbWFydmVsbC5jb20+DQo+ID4gLS0tDQo+ID4gICBkcml2ZXJzL3B0cC9L Y29uZmlnICAgICAgICAgIHwgIDEwICsrDQo+ID4gICBkcml2ZXJzL3B0cC9NYWtlZmlsZSAgICAg ICAgIHwgICAxICsNCj4gPiAgIGRyaXZlcnMvcHRwL3B0cF9vY3Rlb25fcHRtLmMgfCAyNTQNCj4g KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysNCj4gPiAgIDMgZmlsZXMgY2hhbmdl ZCwgMjY1IGluc2VydGlvbnMoKykNCj4gPiAgIGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL3B0 cC9wdHBfb2N0ZW9uX3B0bS5jDQo+ID4NCj4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9wdHAvS2Nv bmZpZyBiL2RyaXZlcnMvcHRwL0tjb25maWcgaW5kZXgNCj4gPiA1ZGQ1ZjE4OGUxNGYuLmFmYTgy NTU1ZGJkOSAxMDA2NDQNCj4gPiAtLS0gYS9kcml2ZXJzL3B0cC9LY29uZmlnDQo+ID4gKysrIGIv ZHJpdmVycy9wdHAvS2NvbmZpZw0KPiA+IEBAIC0yMTIsNCArMjEyLDE0IEBAIGNvbmZpZyBQVFBf REZMX1RPRA0KPiA+ICAgCSAgVG8gY29tcGlsZSB0aGlzIGRyaXZlciBhcyBhIG1vZHVsZSwgY2hv b3NlIE0gaGVyZTogdGhlIG1vZHVsZQ0KPiA+ICAgCSAgd2lsbCBiZSBjYWxsZWQgcHRwX2RmbF90 b2QuDQo+ID4NCj4gPiArY29uZmlnIFBUUF9DTE9DS19PQ1RFT04NCj4gPiArCXRyaXN0YXRlICJP Q1RFT04gUFRNIFBUUCBjbG9jayINCj4gPiArCWRlcGVuZHMgb24gUFRQXzE1ODhfQ0xPQ0sNCj4g PiArCWRlZmF1bHQgbg0KPiA+ICsJaGVscA0KPiA+ICsJICBUaGlzIGRyaXZlciBhZGRzIHN1cHBv cnQgZm9yIHVzaW5nIE9jdGVvbiBQVE0gZGV2aWNlIGNsb2NrIGFzDQo+ID4gKwkgIGEgUFRQIGNs b2NrLg0KPiA+ICsNCj4gPiArCSAgVG8gY29tcGlsZSB0aGlzIGRyaXZlciBhcyBhIG1vZHVsZSwg Y2hvb3NlIE0gaGVyZTogdGhlIG1vZHVsZQ0KPiA+ICsJICB3aWxsIGJlIGNhbGxlZCBwdHBfb2N0 ZW9uX3B0bS4NCj4gPiAgIGVuZG1lbnUNCj4gPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9wdHAvTWFr ZWZpbGUgYi9kcml2ZXJzL3B0cC9NYWtlZmlsZSBpbmRleA0KPiA+IGRlYTBjZWJkMjMwMy4uZTgx MWFlNmRmNWMwIDEwMDY0NA0KPiA+IC0tLSBhL2RyaXZlcnMvcHRwL01ha2VmaWxlDQo+ID4gKysr IGIvZHJpdmVycy9wdHAvTWFrZWZpbGUNCj4gPiBAQCAtMjAsMyArMjAsNCBAQCBvYmotJChDT05G SUdfUFRQXzE1ODhfQ0xPQ0tfTU9DSykJKz0NCj4gcHRwX21vY2subw0KPiA+ICAgb2JqLSQoQ09O RklHX1BUUF8xNTg4X0NMT0NLX1ZNVykJKz0gcHRwX3Ztdy5vDQo+ID4gICBvYmotJChDT05GSUdf UFRQXzE1ODhfQ0xPQ0tfT0NQKQkrPSBwdHBfb2NwLm8NCj4gPiAgIG9iai0kKENPTkZJR19QVFBf REZMX1RPRCkJCSs9IHB0cF9kZmxfdG9kLm8NCj4gPiArb2JqLSQoQ09ORklHX1BUUF9DTE9DS19P Q1RFT04pCQkrPQ0KPiBwdHBfb2N0ZW9uX3B0bS5vDQo+ID4gZGlmZiAtLWdpdCBhL2RyaXZlcnMv cHRwL3B0cF9vY3Rlb25fcHRtLmMNCj4gPiBiL2RyaXZlcnMvcHRwL3B0cF9vY3Rlb25fcHRtLmMg bmV3IGZpbGUgbW9kZSAxMDA2NDQgaW5kZXgNCj4gPiAwMDAwMDAwMDAwMDAuLmRhMDY5NjQ1ZWJm Nw0KPiA+IC0tLSAvZGV2L251bGwNCj4gPiArKysgYi9kcml2ZXJzL3B0cC9wdHBfb2N0ZW9uX3B0 bS5jDQo+ID4gQEAgLTAsMCArMSwyNTQgQEANCj4gPiArLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZp ZXI6IEdQTC0yLjANCj4gPiArLyogTWFydmVsbCBQVFAgUEhDIGNsb2NrIGRyaXZlciBmb3IgUENJ ZSBQVE0gKFByZWNpc2lvbiBUaW1lDQo+ID4gK01lYXN1cmVtZW50KSBFUA0KPiA+ICsgKg0KPiA+ ICsgKiBDb3B5cmlnaHQgKGMpIDIwMjMgTWFydmVsbC4NCj4gPiArICoNCj4gPiArICovDQo+ID4g Kw0KPiA+ICsjaW5jbHVkZSA8bGludXgvZGVsYXkuaD4NCj4gPiArI2luY2x1ZGUgPGxpbnV4L2Rl dmljZS5oPg0KPiA+ICsjaW5jbHVkZSA8bGludXgvZXJyLmg+DQo+ID4gKyNpbmNsdWRlIDxsaW51 eC9pbml0Lmg+DQo+ID4gKyNpbmNsdWRlIDxsaW51eC9rZXJuZWwuaD4NCj4gPiArI2luY2x1ZGUg PGxpbnV4L3BjaS5oPg0KPiA+ICsjaW5jbHVkZSA8bGludXgvc2xhYi5oPg0KPiA+ICsjaW5jbHVk ZSA8bGludXgvbW9kdWxlLmg+DQo+ID4gKw0KPiA+ICsjaW5jbHVkZSA8bGludXgvcHRwX2Nsb2Nr X2tlcm5lbC5oPg0KPiA+ICsNCj4gPiArI2luY2x1ZGUgInB0cF9wcml2YXRlLmgiDQo+ID4gKw0K PiA+ICsjZGVmaW5lIFBFTVhfUEZYX0NTWF9QRkNGR1gocGVtLCBwZiwgX29mZnNldCkJKHt0eXBl b2YoX29mZnNldCkNCj4gKG9mZnNldCkgPSAoX29mZnNldCk7IFwNCj4gPiArCQkJCQkJKCgweDhl MDAwMDAwODAwMCB8DQo+ICh1NjQpKHBlbSkgPDwgMzYgXA0KPiA+ICsJCQkJCQl8IChwZikgPDwg MTggXA0KPiA+ICsJCQkJCQl8ICgoKG9mZnNldCkgPj4gMTYpICYgMSkgPDwgMTYgXA0KPiA+ICsJ CQkJCQl8ICgob2Zmc2V0KSA+PiAzKSA8PCAzKSBcDQo+ID4gKwkJCQkJCSsgKCgoKG9mZnNldCkg Pj4gMikgJiAxKSA8PCAyKSk7DQo+IH0pDQo+ID4gKw0KPiA+ICsjZGVmaW5lIFBFTVhfQ0ZHX1dS KGEpCQkJKDB4OEUwMDAwMDAwMDE4dWxsIHwgKHU2NCkoYSkNCj4gPDwgMzYpDQo+ID4gKyNkZWZp bmUgUEVNWF9DRkdfUkQoYSkJCQkoMHg4RTAwMDAwMDAwMjB1bGwgfCAodTY0KShhKQ0KPiA8PCAz NikNCj4gPiArDQo+ID4gKy8qIE9jdGVvbiBDU1JzICAgKi8NCj4gPiArI2RlZmluZSBQRU1YX0NG RyAgICAgICAgICAgICAgICAgICAgICAgIDB4OGUwMDAwMDAwMGQ4VUxMDQo+ID4gKyNkZWZpbmUg UEVNWF9QVE1fQ1RMCQkJMHg4ZTAwMDAwMDAwOThVTEwNCj4gPiArI2RlZmluZSBQRU1YX1BUTV9D VExfQ0FQCQlCSVRfVUxMKDEwKQ0KPiA+ICsjZGVmaW5lIFBFTVhfUFRNX0xDTF9USU1FCQkweDhl MDAwMDAwMDBhMFVMTCAvKiBQVE0NCj4gdGltZSAqLw0KPiA+ICsjZGVmaW5lIFBFTVhfUFRNX01B U19USU1FCQkweDhlMDAwMDAwMDBhOFVMTCAvKiBQVFANCj4gdGltZSAqLw0KPiA+ICsjZGVmaW5l IFBUTV9ERUJVRwkJCTANCj4gPiArDQo+ID4gK3N0cnVjdCBvY3RfcHRwX2Nsb2NrIHsNCj4gPiAr CXN0cnVjdCBwdHBfY2xvY2sgKnB0cF9jbG9jazsNCj4gPiArCXN0cnVjdCBwdHBfY2xvY2tfaW5m byBjYXBzOw0KPiA+ICsJYm9vbCBjbjEwa192YXJpYW50Ow0KPiA+ICt9Ow0KPiA+ICsNCj4gPiAr c3RhdGljIHN0cnVjdCBvY3RfcHRwX2Nsb2NrIG9jdF9wdHBfY2xvY2s7IHN0YXRpYyB2b2lkIF9f aW9tZW0NCj4gPiArKnB0bV9jdGxfYWRkcjsgc3RhdGljIHZvaWQgX19pb21lbSAqcHRtX2xjbF9h ZGRyOw0KPiA+ICsNCj4gPiArLyogQ29uZmlnIHNwYWNlIHJlZ2lzdGVycyAgICovDQo+ID4gKyNk ZWZpbmUgUENJRUVQWF9QVE1fUkVRX1NUQVQJCShvY3RfcHRwX2Nsb2NrLmNuMTBrX3ZhcmlhbnQN Cj4gPyAweDNhOCA6IDB4NDc0KQ0KPiA+ICsjZGVmaW5lIFBDSUVFUFhfUFRNX1JFUV9UMUwJCShv Y3RfcHRwX2Nsb2NrLmNuMTBrX3ZhcmlhbnQNCj4gPyAweDNiNCA6IDB4NDgwKQ0KPiA+ICsjZGVm aW5lIFBDSUVFUFhfUFRNX1JFUV9UMU0JCShvY3RfcHRwX2Nsb2NrLmNuMTBrX3ZhcmlhbnQNCj4g PyAweDNiOCA6IDB4NDg0KQ0KPiA+ICsjZGVmaW5lIFBDSUVFUFhfUFRNX1JFUV9UNEwJCShvY3Rf cHRwX2Nsb2NrLmNuMTBrX3ZhcmlhbnQNCj4gPyAweDNjNCA6IDB4NDkwKQ0KPiA+ICsjZGVmaW5l IFBDSUVFUFhfUFRNX1JFUV9UNE0JCShvY3RfcHRwX2Nsb2NrLmNuMTBrX3ZhcmlhbnQNCj4gPyAw eDNjOCA6IDB4NDk0KQ0KPiA+ICsNCj4gPiArI2RlZmluZSBQQ0lfVkVORE9SX0lEX0NBVklVTQkJ CTB4MTc3ZA0KPiA+ICsjZGVmaW5lIFBDSV9ERVZJRF9PQ1RFT05UWDJfUFRQCQkJMHhBMDBDDQo+ ID4gKyNkZWZpbmUgUENJX1NVQlNZU19ERVZJRF85NVhYCQkJMHhCMzAwDQo+ID4gKyNkZWZpbmUg UENJX1NVQlNZU19ERVZJRF85NVhYTgkJCTB4QjQwMA0KPiA+ICsjZGVmaW5lIFBDSV9TVUJTWVNf REVWSURfOTVYWE1NCQkJMHhCNTAwDQo+ID4gKyNkZWZpbmUgUENJX1NVQlNZU19ERVZJRF85NlhY CQkJMHhCMjAwDQo+ID4gKyNkZWZpbmUgUENJX1NVQlNZU19ERVZJRF85OFhYCQkJMHhCMTAwDQo+ ID4gKyNkZWZpbmUgUENJX1NVQlNZU19ERVZJRF9DTjEwS19BCQkweEI5MDANCj4gPiArI2RlZmlu ZSBQQ0lfU1VCU1lTX0RFVklEX0NOMTBLX0IJCTB4QkQwMA0KPiA+ICsjZGVmaW5lIFBDSV9TVUJT WVNfREVWSURfQ05GMTBLX0EJCTB4QkEwMA0KPiA+ICsjZGVmaW5lIFBDSV9TVUJTWVNfREVWSURf Q05GMTBLX0IJCTB4QkMwMA0KPiA+ICsNCj4gPiArc3RhdGljIGJvb2wgaXNfb3R4Ml9zdXBwb3J0 X3B0bShzdHJ1Y3QgcGNpX2RldiAqcGRldikgew0KPiA+ICsJcmV0dXJuIChwZGV2LT5zdWJzeXN0 ZW1fZGV2aWNlID09IFBDSV9TVUJTWVNfREVWSURfOTZYWCB8fA0KPiA+ICsJCXBkZXYtPnN1YnN5 c3RlbV9kZXZpY2UgPT0gUENJX1NVQlNZU19ERVZJRF85NVhYIHx8DQo+ID4gKwkJcGRldi0+c3Vi c3lzdGVtX2RldmljZSA9PSBQQ0lfU1VCU1lTX0RFVklEXzk1WFhOIHx8DQo+ID4gKwkJcGRldi0+ c3Vic3lzdGVtX2RldmljZSA9PSBQQ0lfU1VCU1lTX0RFVklEXzk4WFggfHwNCj4gPiArCQlwZGV2 LT5zdWJzeXN0ZW1fZGV2aWNlID09IFBDSV9TVUJTWVNfREVWSURfOTVYWE1NKTsNCj4gfQ0KPiA+ ICsNCj4gPiArc3RhdGljIGJvb2wgaXNfY24xMGtfc3VwcG9ydF9wdG0oc3RydWN0IHBjaV9kZXYg KnBkZXYpIHsNCj4gPiArCXJldHVybiAocGRldi0+c3Vic3lzdGVtX2RldmljZSA9PSBQQ0lfU1VC U1lTX0RFVklEX0NOMTBLX0ENCj4gfHwNCj4gPiArCQlwZGV2LT5zdWJzeXN0ZW1fZGV2aWNlID09 IFBDSV9TVUJTWVNfREVWSURfQ05GMTBLX0ENCj4gfHwNCj4gPiArCQlwZGV2LT5zdWJzeXN0ZW1f ZGV2aWNlID09IFBDSV9TVUJTWVNfREVWSURfQ04xMEtfQg0KPiB8fA0KPiA+ICsJCXBkZXYtPnN1 YnN5c3RlbV9kZXZpY2UgPT0NCj4gUENJX1NVQlNZU19ERVZJRF9DTkYxMEtfQik7IH0NCj4gPiAr DQo+ID4gK3N0YXRpYyBpbnQgcHRwX29jdF9wdG1fYWRqdGltZShzdHJ1Y3QgcHRwX2Nsb2NrX2lu Zm8gKnB0cCwgczY0IGRlbHRhKQ0KPiA+ICt7DQo+ID4gKwlyZXR1cm4gLUVPUE5PVFNVUFA7DQo+ ID4gK30NCj4gPiArDQo+ID4gK3N0YXRpYyBpbnQgcHRwX29jdF9wdG1fc2V0dGltZShzdHJ1Y3Qg cHRwX2Nsb2NrX2luZm8gKnB0cCwNCj4gPiArCQkJICAgICAgIGNvbnN0IHN0cnVjdCB0aW1lc3Bl YzY0ICp0cykgew0KPiA+ICsJcmV0dXJuIC1FT1BOT1RTVVBQOw0KPiA+ICt9DQo+ID4gKw0KPiA+ ICtzdGF0aWMgdTMyIHJlYWRfcGNpZV9jb25maWczMihpbnQgZXBfcGVtLCBpbnQgY2ZnX2FkZHIp IHsNCj4gPiArCXZvaWQgX19pb21lbSAqYWRkcjsNCj4gPiArCXU2NCB2YWw7DQo+ID4gKw0KPiA+ ICsJaWYgKG9jdF9wdHBfY2xvY2suY24xMGtfdmFyaWFudCkgew0KPiA+ICsJCWFkZHIgID0gaW9y ZW1hcChQRU1YX1BGWF9DU1hfUEZDRkdYKGVwX3BlbSwgMCwNCj4gY2ZnX2FkZHIpLCA4KTsNCj4g PiArCQlpZiAoIWFkZHIpIHsNCj4gPiArCQkJcHJfZXJyKCJQVE1fRVA6IEZhaWxlZCB0byBpb3Jl bWFwIE9jdGVvbiBDU1INCj4gc3BhY2VcbiIpOw0KPiA+ICsJCQlyZXR1cm4gLTFVOw0KPiA+ICsJ CX0NCj4gPiArCQl2YWwgPSByZWFkbChhZGRyKTsNCj4gPiArCQlpb3VubWFwKGFkZHIpOw0KPiA+ ICsJfSBlbHNlIHsNCj4gPiArCQlhZGRyICA9IGlvcmVtYXAoUEVNWF9DRkdfUkQoZXBfcGVtKSwg OCk7DQo+ID4gKwkJaWYgKCFhZGRyKSB7DQo+ID4gKwkJCXByX2VycigiUFRNX0VQOiBGYWlsZWQg dG8gaW9yZW1hcCBPY3Rlb24gQ1NSDQo+IHNwYWNlXG4iKTsNCj4gPiArCQkJcmV0dXJuIC0xVTsN Cj4gPiArCQl9DQo+ID4gKwkJdmFsID0gKCgxIDw8IDE1KSB8IChjZmdfYWRkciAmIDB4ZmZmKSk7 DQo+ID4gKwkJd3JpdGVxKHZhbCwgYWRkcik7DQo+ID4gKwkJdmFsID0gcmVhZHEoYWRkcikgPj4g MzI7DQo+ID4gKwkJaW91bm1hcChhZGRyKTsNCj4gPiArCX0NCj4gPiArCXJldHVybiAodmFsICYg MHhmZmZmZmZmZik7DQo+ID4gK30NCj4gPiArDQo+ID4gK3N0YXRpYyB1aW50NjRfdCBvY3Rlb25f Y3NyX3JlYWQodTY0IGNzcl9hZGRyKSB7DQo+ID4gKwl1NjQgdmFsOw0KPiA+ICsJdm9pZCBfX2lv bWVtICphZGRyOw0KPiA+ICsNCj4gPiArCWFkZHIgPSBpb3JlbWFwKGNzcl9hZGRyLCA4KTsNCj4g PiArCWlmICghYWRkcikgew0KPiA+ICsJCXByX2VycigiUFRNX0VQOiBGYWlsZWQgdG8gaW9yZW1h cCBDU1Igc3BhY2VcbiIpOw0KPiA+ICsJCXJldHVybiAtMVVMOw0KPiA+ICsJfQ0KPiA+ICsJdmFs ID0gKHU2NClSRUFEX09OQ0UoKih1NjQgX19pb21lbSAqKWFkZHIpOw0KPiA+ICsJaW91bm1hcChh ZGRyKTsNCj4gPiArCXJldHVybiB2YWw7DQo+ID4gK30NCj4gPiArDQo+ID4gK3N0YXRpYyBpbnQg cHRwX29jdF9wdG1fZ2V0dGltZShzdHJ1Y3QgcHRwX2Nsb2NrX2luZm8gKnB0cCwgc3RydWN0DQo+ ID4gK3RpbWVzcGVjNjQgKnRzKSB7DQo+ID4gKwl1NjQgcHRwX3RpbWUsIHZhbDY0Ow0KPiA+ICsj aWYgUFRNX0RFQlVHDQo+ID4gKwl1NjQgcHRtX3RpbWU7DQo+ID4gKyNlbmRpZg0KPiANCj4gTG9v a3MgbGlrZSBzb21lIG91dC1vZi10cmVlIGRlYnVnIGFydGlmYWN0cyBoZXJlIGFuZCBsYXRlciBp biB0aGUgZnVuY3Rpb24NCg0KQWNrLCB3aWxsIHJlbW92ZSB0aGUgZGVidWcgY29kZSBpbiBWMiBw YXRjaC4NCg0KPiANCj4gPiArCXUzMiB2YWwzMjsNCj4gPiArDQo+ID4gKwkvKiBDaGVjayBmb3Ig dmFsaWQgUFRNIGNvbnRleHQgKi8NCj4gPiArCXZhbDMyID0gcmVhZF9wY2llX2NvbmZpZzMyKDAs IFBDSUVFUFhfUFRNX1JFUV9TVEFUKTsNCj4gPiArCWlmICghKHZhbDMyICYgMHgxKSkgew0KPiA+ ICsJCXByX2VycigiUFRNX0VQOiBFUlJPUjogUFRNIGNvbnRleHQgbm90IHZhbGlkOiAweCV4XG4i LA0KPiB2YWwzMik7ICNpZg0KPiA+ICtQVE1fREVCVUcNCj4gPiArCQlwdG1fdGltZSA9IDA7DQo+ ID4gKyNlbmRpZg0KPiA+ICsJCXB0cF90aW1lID0gMDsNCj4gDQo+IE5vIHJlYXNvbiB0byBjbGVh biB1cCBsb2NhbCB2YXJpYWJsZXMuDQoNCkFjaywgd2lsbCBzdWJtaXQgVjIgcGF0Y2ggDQoNCj4g DQo+ID4gKwkJdHMtPnR2X3NlYyA9IDA7DQo+ID4gKwkJdHMtPnR2X25zZWMgPSAwOw0KPiA+ICsN Cj4gPiArCQlyZXR1cm4gLUVJTlZBTDsNCj4gPiArCX0NCj4gPiArDQo+ID4gKwkvKiBUcmlnZ2Vy IFBUTS9QVFAgY2FwdHVyZSAqLw0KPiA+ICsJdmFsNjQgPSAodTY0KVJFQURfT05DRSgqKHU2NCBf X2lvbWVtICopcHRtX2N0bF9hZGRyKTsNCj4gPiArCXZhbDY0IHw9IFBFTVhfUFRNX0NUTF9DQVA7 DQo+ID4gKwlXUklURV9PTkNFKCoodTY0IF9faW9tZW0gKilwdG1fY3RsX2FkZHIsIHZhbDY0KTsN Cj4gPiArCS8qIFJlYWQgUFRNL1BUUCBjbG9ja3MgICovDQo+ID4gKwlwdHBfdGltZSA9ICh1NjQp UkVBRF9PTkNFKCoodTY0IF9faW9tZW0gKilwdG1fbGNsX2FkZHIpOw0KPiA+ICsJdHMtPnR2X3Nl YyA9IHB0cF90aW1lIC8gTlNFQ19QRVJfU0VDOw0KPiA+ICsJdHMtPnR2X25zZWMgPSBwdHBfdGlt ZSAlIE5TRUNfUEVSX1NFQzsNCj4gDQo+IG5zX3RvX3RpbWVzcGVjNjQoKSBoZXJlPw0KDQpBY2ss IHRoYW5rcyBmb3IgcG9pbnRpbmcgb3V0LCB3aWxsIHVzZSB0aGlzIGFuZCBzdWJtaXQgaW4gVjIg cGF0Y2guDQoNCj4gDQo+ID4gKw0KPiA+ICsjaWYgUFRNX0RFQlVHDQo+ID4gKwlwdG1fdGltZSA9 IG9jdGVvbl9jc3JfcmVhZChQRU1YX1BUTV9NQVNfVElNRSk7DQo+ID4gKwlwcl9pbmZvKCJQVE1f RVA6IHN5c3RlbSAlbGxkIHB0bSB0aW1lOiAlbGxkXG4iLCBwdHBfdGltZSwNCj4gcHRtX3RpbWUp Ow0KPiA+ICsjZW5kaWYNCj4gPiArDQo+ID4gKwlyZXR1cm4gMDsNCj4gPiArfQ0KPiA+ICsNCj4g PiArc3RhdGljIGludCBwdHBfb2N0X3B0bV9lbmFibGUoc3RydWN0IHB0cF9jbG9ja19pbmZvICpw dHAsDQo+ID4gKwkJCSAgICAgIHN0cnVjdCBwdHBfY2xvY2tfcmVxdWVzdCAqcnEsIGludCBvbikg ew0KPiA+ICsJcmV0dXJuIC1FT1BOT1RTVVBQOw0KPiA+ICt9DQo+ID4gKw0KPiA+ICtzdGF0aWMg Y29uc3Qgc3RydWN0IHB0cF9jbG9ja19pbmZvIHB0cF9vY3RfY2FwcyA9IHsNCj4gPiArCS5vd25l cgkJPSBUSElTX01PRFVMRSwNCj4gPiArCS5uYW1lCQk9ICJPQ1RFT04gUFRNIFBIQyIsDQo+ID4g KwkubWF4X2Fkagk9IDAsDQo+ID4gKwkubl9leHRfdHMJPSAwLA0KPiA+ICsJLm5fcGlucwkJPSAw LA0KPiA+ICsJLnBwcwkJPSAwLA0KPiA+ICsJLmFkanRpbWUJPSBwdHBfb2N0X3B0bV9hZGp0aW1l LA0KPiA+ICsJLmdldHRpbWU2NAk9IHB0cF9vY3RfcHRtX2dldHRpbWUsDQo+ID4gKwkuc2V0dGlt ZTY0CT0gcHRwX29jdF9wdG1fc2V0dGltZSwNCj4gPiArCS5lbmFibGUJCT0gcHRwX29jdF9wdG1f ZW5hYmxlLA0KPiA+ICt9Ow0KPiA+ICsNCj4gPiArc3RhdGljIHZvaWQgX19leGl0IHB0cF9vY3Rf cHRtX2V4aXQodm9pZCkgew0KPiA+ICsJaW91bm1hcChwdG1fY3RsX2FkZHIpOw0KPiA+ICsJaW91 bm1hcChwdG1fbGNsX2FkZHIpOw0KPiA+ICsJcHRwX2Nsb2NrX3VucmVnaXN0ZXIob2N0X3B0cF9j bG9jay5wdHBfY2xvY2spOw0KPiA+ICt9DQo+ID4gKw0KPiA+ICtzdGF0aWMgaW50IF9faW5pdCBw dHBfb2N0X3B0bV9pbml0KHZvaWQpIHsNCj4gPiArCXN0cnVjdCBwY2lfZGV2ICpwZGV2ID0gTlVM TDsNCj4gPiArDQo+ID4gKwlwZGV2ID0gcGNpX2dldF9kZXZpY2UoUENJX1ZFTkRPUl9JRF9DQVZJ VU0sDQo+ID4gKwkJCSAgICAgIFBDSV9ERVZJRF9PQ1RFT05UWDJfUFRQLCBwZGV2KTsNCj4gPiAr CWlmICghcGRldikNCj4gPiArCQlyZXR1cm4gMDsNCj4gPiArDQo+ID4gKwlpZiAob2N0ZW9uX2Nz cl9yZWFkKFBFTVhfQ0ZHKSAmIDB4MVVMTCkgew0KPiA+ICsJCXByX2VycigiUEVNMCBpcyBjb25m aWd1cmVkIGFzIFJDXG4iKTsNCj4gPiArCQlyZXR1cm4gMDsNCj4gPiArCX0NCj4gPiArDQo+ID4g KwlpZiAoaXNfb3R4Ml9zdXBwb3J0X3B0bShwZGV2KSkgew0KPiA+ICsJCW9jdF9wdHBfY2xvY2su Y24xMGtfdmFyaWFudCA9IDA7DQo+ID4gKwl9IGVsc2UgaWYgKGlzX2NuMTBrX3N1cHBvcnRfcHRt KHBkZXYpKSB7DQo+ID4gKwkJb2N0X3B0cF9jbG9jay5jbjEwa192YXJpYW50ID0gMTsNCj4gPiAr CX0gZWxzZSB7DQo+ID4gKwkJLyogUFRNX0VQOiB1bnN1cHBvcnRlZCBwcm9jZXNzb3IgKi8NCj4g PiArCQlyZXR1cm4gMDsNCj4gPiArCX0NCj4gPiArDQo+ID4gKwlwdG1fY3RsX2FkZHIgPSBpb3Jl bWFwKFBFTVhfUFRNX0NUTCwgOCk7DQo+ID4gKwlpZiAoIXB0bV9jdGxfYWRkcikgew0KPiA+ICsJ CXByX2VycigiUFRNX0VQOiBGYWlsZWQgdG8gaW9yZW1hcCBDU1Igc3BhY2VcbiIpOw0KPiA+ICsJ CXJldHVybiAwOw0KPiA+ICsJfQ0KPiA+ICsNCj4gPiArCXB0bV9sY2xfYWRkciA9IGlvcmVtYXAo UEVNWF9QVE1fTENMX1RJTUUsIDgpOw0KPiA+ICsJaWYgKCFwdG1fbGNsX2FkZHIpIHsNCj4gPiAr CQlwcl9lcnIoIlBUTV9FUDogRmFpbGVkIHRvIGlvcmVtYXAgQ1NSIHNwYWNlXG4iKTsNCj4gPiAr CQlyZXR1cm4gMDsNCj4gPiArCX0NCj4gPiArDQo+ID4gKwlvY3RfcHRwX2Nsb2NrLmNhcHMgPSBw dHBfb2N0X2NhcHM7DQo+ID4gKw0KPiA+ICsJb2N0X3B0cF9jbG9jay5wdHBfY2xvY2sgPSBwdHBf Y2xvY2tfcmVnaXN0ZXIoJm9jdF9wdHBfY2xvY2suY2FwcywNCj4gPiArTlVMTCk7DQo+ID4gKw0K PiA+ICsJcHJfaW5mbygiUFRQIGRldmljZSBpbmRleCBmb3IgUFRNIGNsb2NrOiVkXG4iLA0KPiBv Y3RfcHRwX2Nsb2NrLnB0cF9jbG9jay0+aW5kZXgpOw0KPiA+ICsJcHJfaW5mbygiY24xMGtfdmFy aWFudCAlZFxuIiwgb2N0X3B0cF9jbG9jay5jbjEwa192YXJpYW50KTsNCj4gPiArDQo+ID4gKwly ZXR1cm4gUFRSX0VSUl9PUl9aRVJPKG9jdF9wdHBfY2xvY2sucHRwX2Nsb2NrKTsNCj4gPiArfQ0K PiA+ICsNCj4gPiArbW9kdWxlX2luaXQocHRwX29jdF9wdG1faW5pdCk7DQo+ID4gK21vZHVsZV9l eGl0KHB0cF9vY3RfcHRtX2V4aXQpOw0KPiA+ICsNCj4gPiArTU9EVUxFX0FVVEhPUigiTWFydmVs bCBJbmMuIik7DQo+ID4gK01PRFVMRV9ERVNDUklQVElPTigiUFRQIFBIQyBjbG9jayB1c2luZyBQ VE0iKTsNCj4gTU9EVUxFX0xJQ0VOU0UoIkdQTCIpOw0KDQo=