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 423D4C43217 for ; Thu, 1 Dec 2022 14:01:54 +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-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:To:References:Message-Id: Date:Cc:In-Reply-To:From:Subject:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=2V0F9vR6jqTJxvIpFWNHMntBcJMIPkTNJ/E4/TVyVEw=; b=N6GtnmlCkfo3Gj GNVZ5f1Co0ArNgAaP6m7hydoJg17KwEiPx39uZF1a+Ye6j4Ykd7R3K2trYL6RIBnMShBvTj647hBX 3+AUNandSkpEl+hhrGkGetI+6OZz7kaaT5bbZhCCz+eWO+KPeif3718ZQWcDnsb0NsifFedRMwEPn BFfM+qb5IYaJhTfWxD+Qdr6lfl88PkMmBrF3Txl89cxRXkG8Vb7nNIhD9Fl1mAZo/hRjk+dJrQmNE CO8B+GYzTG+/K9F7408IAgDqo6SrtAf95eeCSOBMO3fyRux3519w3o6s4XkHKxNWFqjLNq3Ihtexm Dq8y/0BIb8ow4ey/2RGw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1p0k6q-007oaR-9a; Thu, 01 Dec 2022 14:00:16 +0000 Received: from mail-dm6nam11on20623.outbound.protection.outlook.com ([2a01:111:f400:7eaa::623] helo=NAM11-DM6-obe.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1p0k6n-007oXZ-7q for linux-arm-kernel@lists.infradead.org; Thu, 01 Dec 2022 14:00:15 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mHL8UsPkvfFqQhdm4eeETr7k9zy76xgvDBN7QCnzXaG2a4x3+bnNljCpePlS0MbVcfhbjVZS+Mlu/aTZ8MyDHyy1cMpJX/2o96T9Td3u5nwJrZQyGhRCwTKKYHDMsqpdEuFi1TFjOpBZIV81YMV97rHJglv3gp/hQ9pZIkI2oXeGu5Lx0R/jr9xITp6NUnZy1bCsIGSK21mk0WiOKvd/vsseIhlzm3qGqAbosoYHUxMewaLtDpmt6ywy0q3eXKFUvagWmROpafk5ItKBJBk73JmWy3hzcR3qMyZB4EnDrI+3NVeu0sl9hpmyi22N+sgwHrLUW0GklZDLVHyAEBIKzw== 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=Y1uHt/BjsdwtUgYMAy9s07cMucb66t8VYub3NDbd3M0=; b=IaAgZWxA0q5CfyXNzeQIkY6iJmQRabwTGn034CsnX1mhZAv02mZFA6+NbmFImIQGNH2WajduVkJawZy3qweFuCHb6WOR5UawJN+6vfEaTP9O3/zhd5dbWcnKkjkg/fNK64Nxf40wJGMgDApljDhKgP86YXeojDgpjDoySsRzBqm+cEixrA9cnFoVWCm7Wx0rgFayEnb2s7olB4xCa0ElHiJz1nHWpJOl+1gfGcyC1i7W00VIn9sl93RkBeZR4uq8L937ZQv9atdg0AXk4g220U71wofQtk0qhvlL6Q6JhM7+KS1/agr2eVYK+NfQ954mKcD+Fnyu+XQrh3VPujaGhA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=synaptics.com; dmarc=pass action=none header.from=synaptics.com; dkim=pass header.d=synaptics.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Synaptics.onmicrosoft.com; s=selector2-Synaptics-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Y1uHt/BjsdwtUgYMAy9s07cMucb66t8VYub3NDbd3M0=; b=G83pv0q0UvfLV5ucBF6buByoP2xDjV3UsMGWQfMIp7KbxzoLcKaZbqk0iTB7GF5GpJwfcpB1Br+J/q4e/4mVg7M1LmNK7NjjbazY5lSFMYSy09udjDYDrBJWI/hlFR6yQAKF+ycTIqdJtQMniFWuLaZRS0TgR6Pc9arP/iWMCME= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=synaptics.com; Received: from DM6PR03MB5196.namprd03.prod.outlook.com (2603:10b6:5:24a::19) by SA0PR03MB5593.namprd03.prod.outlook.com (2603:10b6:806:b9::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5857.23; Thu, 1 Dec 2022 14:00:03 +0000 Received: from DM6PR03MB5196.namprd03.prod.outlook.com ([fe80::a132:66d9:ed0f:e5c1]) by DM6PR03MB5196.namprd03.prod.outlook.com ([fe80::a132:66d9:ed0f:e5c1%5]) with mapi id 15.20.5857.023; Thu, 1 Dec 2022 14:00:03 +0000 Subject: Re: [PATCH v5 1/2] drm/fourcc: Add Synaptics VideoSmart tiled modifiers From: Randy Li In-Reply-To: Cc: Hsia-Jun Li , dri-devel@lists.freedesktop.org, nicolas@ndufresne.ca, sakari.ailus@linux.intel.com, airlied@linux.ie, ayaka@soulik.info, linux-kernel@vger.kernel.org, tfiga@chromium.org, helen.koike@collabora.com, linux-media@vger.kernel.org, ezequiel@vanguardiasur.com.ar, tzimmermann@suse.de, ribalda@chromium.org, sebastian.hesselbarth@gmail.com, mchehab@kernel.org, linux-arm-kernel@lists.infradead.org, laurent.pinchart@ideasonboard.com Date: Thu, 1 Dec 2022 21:59:56 +0800 Message-Id: References: To: Daniel Vetter X-Mailer: iPad Mail (18D61) X-ClientProxiedBy: SJ0PR13CA0113.namprd13.prod.outlook.com (2603:10b6:a03:2c5::28) To DM6PR03MB5196.namprd03.prod.outlook.com (2603:10b6:5:24a::19) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6PR03MB5196:EE_|SA0PR03MB5593:EE_ X-MS-Office365-Filtering-Correlation-Id: 51f8d779-2067-4d5f-23d3-08dad3a45808 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: mURDvBX2NcU2StsSNCWLMrwyVONALoJERGIRsJC8Q17+yTSMifJtq4ZLoWCxxuS9SWD2jjzSQRJVwqQIxTf6LxQfZpMADBAJXon2CuvJuaaE8bD2T+6tESEZ4vVzY/i5O1OnSR5WBJ+PBnru3+eLwEm45bapz/CvMxbpXJVdOtBeCYHw4Bd0j6UdgTtX6H+k8IlECJI9zzEdUWkFN+M6EJ7d3UHO49UhgXTZ0yQ7C5TIfebABSUH1lg8HqM36tDzV9ocM2hJTl7lgTrm03fAC0cqe+N9V2ymyveNefGBFiWSxzUcoW6lWXCfixsob+q5fLVTjTwzlNmnY98xLwrg/PX83/gM7p0oKquRgAYZGo7O8bKcUfNPIodP5LglOb0ftcSKpsoAfLzvlTfBOJBeQehYRap4f3s0/NH4KaLU+S+3wpLZ0niXTBmiGw2uPGBnneYOShCkVDjPXjfQF34kOePFQffkaknYcyv0ylCLtln4WKNxDkLY6WDjhiz/nkWgak9RG6M6ids968JC3CG5nHXKRNYPTYFNNmkRAW3F2vK+ckV+ox16nL5Ppy7m1xA+uqt25O5+QHDqjX22+q5Q7YMCYR26WL4it39VeQQURO2K9VzQpodSH5Y2WQ3vZ1xdShj2YRc1zoyT1GTePFtGfSouvs86jukMLoPFOp8GbFv9GySWAcOzegSAk6eLifQRWgDKIxwgN463kQDdD+pPqZN00FcOzf8Ynp4yuNR/ckrXOTnEyufNSMtXnw5CaThv X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM6PR03MB5196.namprd03.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(136003)(39860400002)(376002)(396003)(346002)(366004)(451199015)(36756003)(66556008)(7416002)(6666004)(38350700002)(38100700002)(6916009)(5660300002)(6512007)(316002)(26005)(186003)(33656002)(41300700001)(6506007)(8936002)(66476007)(8676002)(2616005)(4326008)(66946007)(966005)(6486002)(478600001)(83380400001)(2906002)(52116002)(53546011)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?a0VVYzlLWXlFamw2VGdNU0svMFhlMkJ4aHJYSHAwUmJKSHlTTlhrRFhaK21J?= =?utf-8?B?Nlh3MXNkbnlVK1lKRFp3ZTQyNnpKV1N4eUsyK0xoUGRKckcwVUd0R0RYcjNo?= =?utf-8?B?bklkZit6MUtTK3l2ZG53cWNTSGJnTWlMdXdNVzhGM3VOTzRYVUtERWJ0eGFz?= =?utf-8?B?QXhvdCtUSzJCOUpPOXNBTHdTWm9qNmNwY0ZSU05NVDE0V3NoQU9MckNQL2hz?= =?utf-8?B?anVLMFBkbXA2eStHYkh3bWxBSWtuTGlSOTlrNUFjb2M4cEEyOThiSFRZS3Y3?= =?utf-8?B?OGxkUDBmSUpNWDNKdXYvVEtuV1VXcHFUV3lHZmQweTAxT2FZaVNWVlRHTklm?= =?utf-8?B?MWp1M1VhdVR6ek9zS1dtVkowajVicFpxc1V0UUIrRFBDMW01dXF0SGxaMmxx?= =?utf-8?B?eXA0U3Z5ZFpHc2pnME5TK29pUFlNVnhQdGFMd0lPT3RlLzVQZG00S3VDSTI3?= =?utf-8?B?VFhRczlrNTZjdi84WHVrdHBRbVVjb0kxS3BmOGlaT243SlZHRXlVeG9wc0RO?= =?utf-8?B?VklCZFNmQjlWaFU0WFVFcnIxc3JKZVFiRVVGMDBuVGVXT3k0TEd5R0thNDFP?= =?utf-8?B?NHJSWnRqMlJHRWc3NklKdEtNMnNSR0wzZElzTzlEV1FZOFJiVTROSFk5VFJr?= =?utf-8?B?djczNzZQcnlKV25NbWxoU0NaZ2ZrQ1FOWDJUSnFTODJ4TXhrZENub0NVbFMx?= =?utf-8?B?ZWtySUc3VlFhQkx6MzAybUs5K0JZVWM1WWVHUE1Wb0NXcGRMN1d5UVozVkZW?= =?utf-8?B?ZkltVkhzb29yK25nSlVvcEdIQTdENjJNcm5pU3ZLMHpIbVFCSEVVQzBWeGxP?= =?utf-8?B?dTE0RFIzdndKRmYzWW0zbWJCcW00WnRrVmxUS2cwMnY5Qmgwb2hGL0xSOVFm?= =?utf-8?B?ZFZoV25Uc3l5MGdiK09ldzAvTS9NSlpFWWx4VmxGcVB1S0o3cTdpMlRVajVy?= =?utf-8?B?ZHRkZmQ1a29hczJJTUZSNnhZWXBGSkxaUFlYNU9pTzRHckhkWUcyYzc0cXRs?= =?utf-8?B?R3ROcmp5TjYyRGhBSTlZN09xaHdqZjZ2ZElNNEM3VzJnMnluK25TYUR4QndE?= =?utf-8?B?em5aaG0ybW5RRThJSlFrWHNRYzZoQ3pkdUQvRzRuL0RLaUZQN1hhdkJ3NE5p?= =?utf-8?B?VmUzOU9tUnJndTV4Y3dlcFZpUU01R1BXTWdtWWVpa1pkb1NqQ09uL1ZoRHFO?= =?utf-8?B?LzNJelJsSDU1cHdKVzgxL0JOdnBuRE55S3hndCtxZkNLYkVUd3hNU3pIZkp6?= =?utf-8?B?bWVZaWNBdkE1aWY3WExMeWl6cFFqdTdZVkMyc2NMNHhQVlZLejk5VFJaNmJq?= =?utf-8?B?azhyQWR2MlV3OGtobkRVdlBkNi9pR0hiVGltU2tWTjV0UDdPK2ZNdUZhMTNG?= =?utf-8?B?V1BLaUVrdGZERVB4dDhOdzcwMHgzS1dKRjRINHlFYVA0Z1FCeUFDdWFpZlYz?= =?utf-8?B?V3g3MGt4THhNZGNlUk9wb3ZCc1IzZDFOanpKYnYydFlwRTZ3dFE5UTJ0S1Jy?= =?utf-8?B?T2RpVVpLRzFtUGRQd2h3SnZ0bDlpeFpPcnVoc1FQbGgyaW5hRmZNZzFzL0xs?= =?utf-8?B?Zm02MkhWRkNrNTBlOW52K2Q2TTN5WjR0TFZxRkthZTZRU1ZsS1RvSGkzZHhH?= =?utf-8?B?WE1tZWpZRzRPWE5UK1o0OWxZbUg0R2ptWUJ5K2tzVjY2TU9hS1d5V3cxM2VV?= =?utf-8?B?V1kwdkx1aW5LM1AxYTBYc1l0S0Y4ZXVFSXZsM2pOa2RDa21RRlZBWSs4c3Zq?= =?utf-8?B?Unl1ek9jL2Njc0lodGZEVDZxVnZPM0tGMUdUUDBsazR5ZjhzZlVyaytVU2o2?= =?utf-8?B?Mit3RngrZHZ3RjF5UTMzd0ZHWFliQnQ3bzVqaUtSYTZKWlNsTE9ERCtFN1ZO?= =?utf-8?B?Wm1zem52T3duUHVacWNEMmR4MGZSUnA1cTFlcXI2b2xTVmxucXJ1Q3hXcVpp?= =?utf-8?B?NWtSSWFpSXFQb2Y2YWVMOC9QZTNVNUtKQUJPMURuZWQ5a3VwV0lxRjFnSWlj?= =?utf-8?B?eE1nVDJ2bk4wOTBFSzFQUy9GUnIydTRKUTVyMTVGNDdHT2JEcGFsaUtiZXRz?= =?utf-8?B?WmhEekoyRUgzVit6NjV1Y1o5TTkyTGV2SVVxTkN6dTBIMkt1UHhkWHJNSnVB?= =?utf-8?Q?+985qHzxt+pE34u1Ciu8Tz5+Y?= X-OriginatorOrg: synaptics.com X-MS-Exchange-CrossTenant-Network-Message-Id: 51f8d779-2067-4d5f-23d3-08dad3a45808 X-MS-Exchange-CrossTenant-AuthSource: DM6PR03MB5196.namprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Dec 2022 14:00:03.2622 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 335d1fbc-2124-4173-9863-17e7051a2a0e X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: sDmI1yfxaQqbWcV3so3T6SuVSL0l/2ZM9VEVYeU+sIeFQ7WWTga1HaiSPg2XJrR98637fP1MEngLigeyfxiBxw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR03MB5593 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20221201_060013_358732_A6A96E0C X-CRM114-Status: GOOD ( 29.26 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org CgpTZW50IGZyb20gbXkgaVBhZAoKPiBPbiBEZWMgMSwgMjAyMiwgYXQgNTozOSBQTSwgRGFuaWVs IFZldHRlciA8ZGFuaWVsQGZmd2xsLmNoPiB3cm90ZToKPiDvu79DQVVUSU9OOiBFbWFpbCBvcmln aW5hdGVkIGV4dGVybmFsbHksIGRvIG5vdCBjbGljayBsaW5rcyBvciBvcGVuIGF0dGFjaG1lbnRz IHVubGVzcyB5b3UgcmVjb2duaXplIHRoZSBzZW5kZXIgYW5kIGtub3cgdGhlIGNvbnRlbnQgaXMg c2FmZS4KPiAKPiAKPj4gT24gVGh1LCBEZWMgMDEsIDIwMjIgYXQgMTI6NDk6MTZBTSArMDgwMCwg UmFuZHkgTGkgd3JvdGU6Cj4+IAo+PiAKPj4gU2VudCBmcm9tIG15IGlQYWQKPj4gCj4+Pj4gT24g Tm92IDMwLCAyMDIyLCBhdCA3OjMwIFBNLCBEYW5pZWwgVmV0dGVyIDxkYW5pZWxAZmZ3bGwuY2g+ IHdyb3RlOgo+Pj4g77u/Q0FVVElPTjogRW1haWwgb3JpZ2luYXRlZCBleHRlcm5hbGx5LCBkbyBu b3QgY2xpY2sgbGlua3Mgb3Igb3BlbiBhdHRhY2htZW50cyB1bmxlc3MgeW91IHJlY29nbml6ZSB0 aGUgc2VuZGVyIGFuZCBrbm93IHRoZSBjb250ZW50IGlzIHNhZmUuCj4+Pj4gT24gV2VkLCBOb3Yg MzAsIDIwMjIgYXQgMDU6MjE6NDhQTSArMDgwMCwgSHNpYS1KdW4gTGkgd3JvdGU6Cj4+Pj4gRnJv bTogIkhzaWEtSnVuKFJhbmR5KSBMaSIgPHJhbmR5LmxpQHN5bmFwdGljcy5jb20+Cj4+Pj4gVGhv c2UgbW9kaWZpZXJzIG9ubHkgcmVjb3JkIHRoZSBwYXJhbWV0ZXJzIHdvdWxkIGVmZm9ydCBwaXhl bAo+Pj4+IGxheW91dCBvciBtZW1vcnkgbGF5b3V0LiBXaGV0aGVyIHBoeXNpY2FsIG1lbW9yeSBw YWdlIG1hcHBpbmcKPj4+PiBpcyB1c2VkIGlzIG5vdCBhIHBhcnQgb2YgZm9ybWF0Lgo+Pj4+IFNp Z25lZC1vZmYtYnk6IEhzaWEtSnVuKFJhbmR5KSBMaSA8cmFuZHkubGlAc3luYXB0aWNzLmNvbT4K Pj4+PiAtLS0KPj4+PiBpbmNsdWRlL3VhcGkvZHJtL2RybV9mb3VyY2MuaCB8IDc2ICsrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrCj4+Pj4gMSBmaWxlIGNoYW5nZWQsIDc2IGluc2Vy dGlvbnMoKykKPj4+PiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS91YXBpL2RybS9kcm1fZm91cmNjLmgg Yi9pbmNsdWRlL3VhcGkvZHJtL2RybV9mb3VyY2MuaAo+Pj4+IGluZGV4IGJjMDU2ZjJkNTM3ZC4u ZTA5MDVmNTczZjQzIDEwMDY0NAo+Pj4+IC0tLSBhL2luY2x1ZGUvdWFwaS9kcm0vZHJtX2ZvdXJj Yy5oCj4+Pj4gKysrIGIvaW5jbHVkZS91YXBpL2RybS9kcm1fZm91cmNjLmgKPj4+PiBAQCAtNDA3 LDYgKzQwNyw3IEBAIGV4dGVybiAiQyIgewo+Pj4+ICNkZWZpbmUgRFJNX0ZPUk1BVF9NT0RfVkVO RE9SX0FSTSAgICAgMHgwOAo+Pj4+ICNkZWZpbmUgRFJNX0ZPUk1BVF9NT0RfVkVORE9SX0FMTFdJ Tk5FUiAweDA5Cj4+Pj4gI2RlZmluZSBEUk1fRk9STUFUX01PRF9WRU5ET1JfQU1MT0dJQyAweDBh Cj4+Pj4gKyNkZWZpbmUgRFJNX0ZPUk1BVF9NT0RfVkVORE9SX1NZTkFQVElDUyAweDBiCj4+Pj4g LyogYWRkIG1vcmUgdG8gdGhlIGVuZCBhcyBuZWVkZWQgKi8KPj4+PiBAQCAtMTUwNyw2ICsxNTA4 LDgxIEBAIGRybV9mb3VyY2NfY2Fub25pY2FsaXplX252aWRpYV9mb3JtYXRfbW9kKF9fdTY0IG1v ZGlmaWVyKQo+Pj4+ICNkZWZpbmUgQU1EX0ZNVF9NT0RfQ0xFQVIoZmllbGQpIFwKPj4+PiAgICAg KH4oKF9fdTY0KUFNRF9GTVRfTU9EXyMjZmllbGQjI19NQVNLIDw8IEFNRF9GTVRfTU9EXyMjZmll bGQjI19TSElGVCkpCj4+Pj4gKy8qCj4+Pj4gKyAqIFN5bmFwdGljcyBWaWRlb1NtYXJ0IG1vZGlm aWVycwo+Pj4+ICsgKgo+Pj4+ICsgKiBUaWxlcyBjb3VsZCBiZSBhcnJhbmdlZCBpbiBHcm91cHMg b2YgVGlsZXMgKEdPVHMpLCBpdCBpcyBhIHNtYWxsIHRpbGUKPj4+PiArICogd2l0aGluIGEgdGls ZS4gR09UIHNpemUgYW5kIGxheW91dCB2YXJpZXMgYmFzZWQgb24gcGxhdGZvcm0gYW5kCj4+Pj4g KyAqIHBlcmZvcm1hbmNlIGNvbmNlcm4uCj4+Pj4gKyAqCj4+Pj4gKyAqIEJlc2lkZXMsIGFuIDgg bGVuZ3RoIDQgYnl0ZXMgYXJyYXJ5ICgzMiBieXRlcykgd291bGQgYmUgbmVlZCB0byBzdG9yZQo+ Pj4+ICsgKiBzb21lIGNvbXByZXNzaW9uIHBhcmFtZXRlcnMgZm9yIGEgY29tcHJlc3Npb24gbWV0 YWRhdGEgcGxhbmUuCj4+Pj4gKyAqCj4+Pj4gKyAqIEZ1cnRoZXIgaW5mb3JtYXRpb24gY2FuIGJl IGZvdW5kIGluCj4+Pj4gKyAqIERvY3VtZW50YXRpb24vZ3B1L3N5bmFwdGljcy5yc3QKPj4+PiAr ICoKPj4+PiArICogICAgICAgTWFjcm8KPj4+PiArICogQml0cyAgUGFyYW0gRGVzY3JpcHRpb24K Pj4+PiArICogLS0tLSAgLS0tLS0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPj4+PiArICoKPj4+PiArICogIDc6MCAgZiAg ICAgU2NhbiBkaXJlY3Rpb24gZGVzY3JpcHRpb24uCj4+Pj4gKyAqCj4+Pj4gKyAqICAgICAgICAg ICAgICAgMCA9IEludmFsaWQKPj4+PiArICogICAgICAgICAgICAgICAxID0gVjQsIHRoZSBzY2Fu IHdvdWxkIGFsd2F5cyBzdGFydCBmcm9tIHZlcnRpY2FsIGZvciA0IHBpeGVsCj4+Pj4gKyAqICAg ICAgICAgICAgICAgICAgIHRoZW4gbW92ZSBiYWNrIHRvIHRoZSBzdGFydCBwaXhlbCBvZiB0aGUg bmV4dCBob3Jpem9udGFsCj4+Pj4gKyAqICAgICAgICAgICAgICAgICAgIGRpcmVjdGlvbi4KPj4+ PiArICogICAgICAgICAgICAgICAyID0gUmVzZXJ2ZWQgZm9yIGZ1dHVyZSB1c2UuCj4+Pj4gKyAq Cj4+Pj4gKyAqIDE1OjggIG0gICAgIFRoZSB0aW1lcyBvZiBwYXR0ZXJuIHJlcGVhdCBpbiB0aGUg cmlnaHQgYW5nbGUgZGlyZWN0aW9uIGZyb20KPj4+PiArICogICAgICAgICAgICAgdGhlIGZpcnN0 IHNjYW4gZGlyZWN0aW9uLgo+Pj4+ICsgKgo+Pj4+ICsgKiAxOToxNiBwICAgICBUaGUgcGFkZGlu ZyBiaXRzIGFmdGVyIHRoZSB3aG9sZSBzY2FuLCBjb3VsZCBiZSB6ZXJvLgo+Pj4+ICsgKgo+Pj4+ ICsgKiAyMDoyMCBnICAgICBHT1QgcGFja2luZyBmbGFnLgo+Pj4+ICsgKgo+Pj4+ICsgKiAyMzoy MSAtICAgICBSZXNlcnZlZCBmb3IgZnV0dXJlIHVzZS4gIE11c3QgYmUgemVyby4KPj4+IENhbiB5 b3UgcGxzIGZvbGQgYWxsIHRoZSBmdXR1cmUgdXNlIHJlc2VydmF0aW9ucyBpbnRvIHRoZSB0b3Ag ZW5kPwo+PiBZb3Ugc2VlIHdlIGNvdWxkIHB1dCBtb3JlIHJlbGF0ZWQgZmxhZyBpbiBlYWNoIG9m IHJlc2VydmVkIGFyZWEuCj4+IEhlcmUgaXMgZm9yIHRoZSBncm91cCBvZiB0aWxlcyBmbGFnLgo+ PiBCaXQgMzUgdG8gMzIgY291bGQgYmUgdXNlZCBmb3IgZGVzY3JpYmluZyB0aGUgZGltZW5zaW9u IG9mIHRoZSBncm91cCBvZiB0aWxlcy4KPiAKPiBPaCBhbHNvIG9uIHRoZSBkaW1lbnNpb24gdGhp bmcsIHRoaXMgaXMgdGhlIHRpbGUgc2l6ZSBhbmQgaGFzIG5vdGhpbmcgdG8KPiBkbyB3aXRoIHRo ZSBvdmVyYWxsIGJ1ZmZlciBzaXplLCByaWdodD8KSSBkb27igJl0IHRoaW5rIHlvdSBjb3VsZCBo YXZlIGEgaW5zdWZmaWNpZW50IHRpbGUsIHRoYXQgYXBwbGllcyB0byB0aGUgZ3JvdXAgb2YgdGls ZS4KPiBCZWNhdXNlIHRoZSBvdmVyYWxsIGJ1ZmZlciBzaXplIGlzCj4gbWVhbnQgdG8gYmUgY2Fy cmllZCBpbiBzZXBhcmF0ZSBtZXRhZGF0YSAobGlrZSB0aGUgZHJtX2ZyYW1lYnVmZmVyCj4gc3Ry dWN0dXJlIG9yIEFEREZCMiBpb2N0bCBkYXRhKS4gZHJtIGZvdXJjYy9tb2RpZmllciBhc3N1bWUg dGhhdCBoZWlnaHQsCj4gd2lkdGgsIG9mZnNldCBhbmQgc3RyaWRlIGFyZSBzcGVjaWZpZWQgcGVy IHBsYW5lIGFscmVhZHkgKHVubGVzcyB0aGUKPiBhdXhpYXJ5IHBsYW5lIGhhcyBhIGZpeGVkIGxh eW91dCBhbmQgaXMgbm90IHRyYWNrZWQgYXMgYSBzZXBhcmF0ZSBwbGFuZQo+IGZvciB0aGlzIGZv cm1hdCkuCk9uZSB0aGluZyBJIG5vdGljZWQgaGVyZSwgdGhlcmUgaXMgbm8gd2F5IHRvIHRlbGwg dGhlIGJ1ZmZlciBzaXplIHRoYXQgdXNlciBzaG91bGQgcmVxdWVzdC9hbGxvY2F0ZSBmcm9tIHRo ZSBkcm0gQVBJLiBJdCBuZWVkcyB0byBiZSBjYWxjdWxhdGVkIGluIHRoZSB1c2Vyc3BhY2UgdW5s ZXNzIHlvdSB3b3VsZCB1c2UgdGhlIGN1c3RvbSBpb2N0bC4KPiAKPj4+IEFsc28gSQo+Pj4gdGhp bmsgaXQnZCBiZSBnb29kIHRvIGF0IGxlYXN0IHJlc2VydmUgbWF5YmUgdGhlIHRvcCA4IGJpdHMg b3Igc28gZm9yIGEKPj4+IHN5bmFwdGljcyBzcGVjaWZpYyBmb3JtYXQgaW5kaWNhdG9yLCBzbyB0 aGF0IGl0J3MgZWFzaWVyIHRvIGV4dGVuZCB0aGlzIGluCj4+PiB0aGUgZnV0dXJlIC4uLgo+PiBJ IHRoaW5rIHRoZSAgYml0IDU2IHRvIDYzIGFyZSB1c2VkIGZvciBzdG9yaW5nIHRoZSB2ZW5kb3Ig aWQuIFRoYXQgaXMgd2h5IEkgZGlkbuKAmXQgaW5jbHVkZSB0aGVtIGJlbG93LiBPciB5b3UgbWVh biB0aGUgYml0IDcgdG8gMD8KPj4gRG8geW8KPiAKPiBZZWFoIHRoZXJlJ3MgOCBiaXQgdmVuZG9y IGlkLCBidXQgeW91IGNvdWxkIHJlc2VydmUgYW5vdGhlciA4IGJpdCBhdCB0aGUKPiB0b3AgKHNv IDQ4OjU1IG9yIHNvbWV0aGluZyBsaWtlIHRoYXQpIHRvIGVudW1lcmF0ZSB3aXRoaW4gdGhlIHN5 bmFwdGljcwo+IHNwYWNlLiBKdXN0IHRvIGZ1dHVyZSBwcm9vZiB0aGUgc2NoZW1hLCBiZWNhdXNl IGV4cGVyaWVuY2Ugc2F5cyB0aGF0IGh3Cj4gZW5naW5lZXJzIGFic29sdXRlbHkgZG8gbG92ZSB0 byBjaGFuZ2UgdGhpcyBzdHVmZiBldmVudHVhbGx5LgpJIGxlZnQgdGhlIHdob2xlIDM3OjU1Lgo+ IC1EYW5pZWwKPiAKPj4+IC1EYW5pZWwKPj4+PiArICoKPj4+PiArICogMjc6MjQgaCAgICAgbG9n Mihob3Jpem9udGFsKSBvZiBwaXhlbHMsIGluIEdPVHMuCj4+Pj4gKyAqCj4+Pj4gKyAqIDMxOjI4 IHYgICAgIGxvZzIodmVydGljYWwpIG9mIHBpeGVscywgaW4gR09Ucy4KPj4+PiArICoKPj4+PiAr ICogMzU6MzIgLSAgICAgUmVzZXJ2ZWQgZm9yIGZ1dHVyZSB1c2UuICBNdXN0IGJlIHplcm8uCj4+ Pj4gKyAqCj4+Pj4gKyAqIDM2OjM2IGMgICAgIENvbXByZXNzaW9uIGZsYWcuCj4+Pj4gKyAqCj4+ Pj4gKyAqIDU1OjM3IC0gICAgIFJlc2VydmVkIGZvciBmdXR1cmUgdXNlLiAgTXVzdCBiZSB6ZXJv Lgo+Pj4+ICsgKgo+Pj4+ICsgKi8KPj4+PiArCj4+Pj4gKyNkZWZpbmUgRFJNX0ZPUk1BVF9NT0Rf U1lOQV9WNF9USUxFRCAgICAgICAgIGZvdXJjY19tb2RfY29kZShTWU5BUFRJQ1MsIDEpCj4+Pj4g Kwo+Pj4+ICsjZGVmaW5lIERSTV9GT1JNQVRfTU9EX1NZTkFfTVRSX0xJTkVBUl8yRChmLCBtLCBw LCBnLCBoLCB2LCBjKSBcCj4+Pj4gKyAgICAgZm91cmNjX21vZF9jb2RlKFNZTkFQVElDUywgKChf X3U2NCkoKGYpICYgMHhmZikgfCBcCj4+Pj4gKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICgoX191NjQpKChtKSAmIDB4ZmYpIDw8IDgpIHwgXAo+Pj4+ICsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAoKF9fdTY0KSgocCkgJiAweGYpIDw8IDE2KSB8IFwKPj4+PiArICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgKChfX3U2NCkoKGcpICYgMHgxKSA8PCAyMCkgfCBcCj4+Pj4g KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoX191NjQpKChoKSAmIDB4ZikgPDwgMjQp IHwgXAo+Pj4+ICsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKF9fdTY0KSgodikgJiAw eGYpIDw8IDI4KSB8IFwKPj4+PiArICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChfX3U2 NCkoKGMpICYgMHgxKSA8PCAzNikpKQo+Pj4+ICsKPj4+PiArI2RlZmluZSBEUk1fRk9STUFUX01P RF9TWU5BX1Y0SDEgXAo+Pj4+ICsgICAgIERSTV9GT1JNQVRfTU9EX1NZTkFfTVRSX0xJTkVBUl8y RCgxLCAxLCAwLCAwLCAwLCAwLCAwKQo+Pj4+ICsKPj4+PiArI2RlZmluZSBEUk1fRk9STUFUX01P RF9TWU5BX1Y0SDNQOCBcCj4+Pj4gKyAgICAgRFJNX0ZPUk1BVF9NT0RfU1lOQV9NVFJfTElORUFS XzJEKDEsIDMsIDgsIDAsIDAsIDAsIDApCj4+Pj4gKwo+Pj4+ICsjZGVmaW5lIERSTV9GT1JNQVRf TU9EX1NZTkFfVjRIMV82NEw0X0NPTVBSRVNTRUQgXAo+Pj4+ICsgICAgIERSTV9GT1JNQVRfTU9E X1NZTkFfTVRSX0xJTkVBUl8yRCgxLCAxLCAwLCAxLCA2LCAyLCAxKQo+Pj4+ICsKPj4+PiArI2Rl ZmluZSBEUk1fRk9STUFUX01PRF9TWU5BX1Y0SDNQOF82NEw0X0NPTVBSRVNTRUQgXAo+Pj4+ICsg ICAgIERSTV9GT1JNQVRfTU9EX1NZTkFfTVRSX0xJTkVBUl8yRCgxLCAzLCA4LCAxLCA2LCAyLCAx KQo+Pj4+ICsKPj4+PiArI2RlZmluZSBEUk1fRk9STUFUX01PRF9TWU5BX1Y0SDFfMTI4TDEyOF9D T01QUkVTU0VEIFwKPj4+PiArICAgICBEUk1fRk9STUFUX01PRF9TWU5BX01UUl9MSU5FQVJfMkQo MSwgMSwgMCwgMSwgNywgNywgMSkKPj4+PiArCj4+Pj4gKyNkZWZpbmUgRFJNX0ZPUk1BVF9NT0Rf U1lOQV9WNEgzUDhfMTI4TDEyOF9DT01QUkVTU0VEIFwKPj4+PiArICAgICBEUk1fRk9STUFUX01P RF9TWU5BX01UUl9MSU5FQVJfMkQoMSwgMywgOCwgMSwgNywgNywgMSkKPj4+PiArCj4+Pj4gI2lm IGRlZmluZWQoX19jcGx1c3BsdXMpCj4+Pj4gfQo+Pj4+ICNlbmRpZgo+Pj4+IC0tCj4+Pj4gMi4z Ny4zCj4+PiAtLQo+Pj4gRGFuaWVsIFZldHRlcgo+Pj4gU29mdHdhcmUgRW5naW5lZXIsIEludGVs IENvcnBvcmF0aW9uCj4+PiBodHRwczovL3VybGRlZmVuc2UucHJvb2Zwb2ludC5jb20vdjIvdXJs P3U9aHR0cC0zQV9fYmxvZy5mZndsbC5jaCZkPUR3SUJBZyZjPTdkZkJKOGNYYldqaGMwQmhJbXU4 d1ZJb1VGbUJ6ajFzODhyOEVHeU0wVVkmcj1QNHhiMl83YmlxQnhENExHR1ByU1Y2ai1qZjNDM3hs UjdQWFUtbUxUZVpFJm09ZDFtZ0hXYy1JdERYSzlkU256MFdHWXM5eG9YVFRrOUxxYmlmTXRuMkxP eG1hSEhzYzRpZUNvRTc4QkZrSEkxaSZzPThwdHFQelRVd2IzWDNmQlN5UUE2blZBQTZEY2h1YlVV c01SZ21MSXAxbFkmZT0KPiAKPiAtLQo+IERhbmllbCBWZXR0ZXIKPiBTb2Z0d2FyZSBFbmdpbmVl ciwgSW50ZWwgQ29ycG9yYXRpb24KPiBodHRwczovL3VybGRlZmVuc2UucHJvb2Zwb2ludC5jb20v djIvdXJsP3U9aHR0cC0zQV9fYmxvZy5mZndsbC5jaCZkPUR3SURhUSZjPTdkZkJKOGNYYldqaGMw QmhJbXU4d1ZJb1VGbUJ6ajFzODhyOEVHeU0wVVkmcj1yZXF3Z3VITWs5X0tyZDJ4eXliTEtVaTdx UlFnM0ZJSEctNnhMaW1VWnY4Jm09dG1ONEZjVWJmSFE3NGxEbENKZmh3a3I1V3FOTkNZNkN6TkZ6 VE02WF9pMUhTcDlOdDJXbHlYdi1XdS15Tkk5eSZzPXlFeVBSZXRoSGlQYm1qMFFIb0pNc21iMVBq MklON0IwSjhfdmxCdnkwd2smZT0KCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFybS1rZXJu ZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFu L2xpc3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK