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 gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (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 7BDE9FD45FA for ; Wed, 25 Feb 2026 23:18:36 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id CFEC710E037; Wed, 25 Feb 2026 23:18:35 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=qualcomm.com header.i=@qualcomm.com header.b="JpmL+CkW"; dkim=pass (2048-bit key; unprotected) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="QQEdwGtt"; dkim-atps=neutral Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) by gabe.freedesktop.org (Postfix) with ESMTPS id 0756710E070 for ; Wed, 25 Feb 2026 23:18:33 +0000 (UTC) Received: from pps.filterd (m0279872.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 61PN3bhJ3095062 for ; Wed, 25 Feb 2026 23:18:33 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= k1ncu6ArYzJhC1oWtoKaTbf490HS3AonBnLenM3Jd0c=; b=JpmL+CkWYUP0rhkq yvcnpyP/EsHfwQoW0K88N1JAwbxTi+LLkZjH9DnYvIiobtYH5J/g8+9NO85fBMy2 kviXPZxgDBjU9X/GvP4DBmN+EQ3kZmoyKjP7w6eVnJVJzNDhRfpq2IsfE81WQkuh SqGKaB0hOvmonmXYz8t/bTRs9L/qyP0J6vhfIpk7hwpr4X/Oa++bWNC8h1FEQnM0 aRUSD8losKzsY6bDy0GwTFFfO5k1NBw/RQLoC5/2zk+aY+Gn89MIwAMaa4NJeH2v SO1uWYK0vdnDIr369SYLjwZ1kJxo32PT1fieroRk0aGGqmVEoRy2LpCjqL1JCwzX OLvqSw== Received: from mail-dy1-f198.google.com (mail-dy1-f198.google.com [74.125.82.198]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4cjae0r0xr-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Wed, 25 Feb 2026 23:18:32 +0000 (GMT) Received: by mail-dy1-f198.google.com with SMTP id 5a478bee46e88-2bd3bf5dde4so208228eec.1 for ; Wed, 25 Feb 2026 15:18:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1772061512; x=1772666312; darn=lists.freedesktop.org; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=k1ncu6ArYzJhC1oWtoKaTbf490HS3AonBnLenM3Jd0c=; b=QQEdwGttGIqMG2KwQ37WVjtL6RCOWCW5nnrmN8ymUyRzrLeRw1RrTgLbaVaCEMLcY9 ZThm5wmqKZoS+mz+h2qzPKQnOyyT/spBKnwBZcqCD955poJHTRKBQq3WEacGzuojhp/Q sQkCeaZsaObE1f5jGTY9iqf7LYwvux7jMneP6Mf4l7ev0lZM6zelq85CYC1LkUSSyaxm dAuIGIZWpEHj5YplnTC2RX9/L1tsmfLMqmsJ3+QsEuyh3pMwBzOrt1hiOgf+1zGi/4i5 e0g49tdWRvySfe02tcdAMaVslK3r8pHqESRtn18XjeDoM4GwMUWUsEiNO3dqgtfSPqpv aHyg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1772061512; x=1772666312; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=k1ncu6ArYzJhC1oWtoKaTbf490HS3AonBnLenM3Jd0c=; b=O/0H/8H7iyz8FeV/xVbsUkOD7+bghB+nRL+nB8UKf3gAzXagktCA0ESFAfaDG1lPjo bBd5TN6/gpVcgFVlJQQ3chc29JAW8YVgOVIdOGdHwr1BcYCTp6upaRrE/BPztdl8Q+ko UMCwklvRZT394EMc7Xp0VmFWOk9kI6NJZqUX9Z7/aVzw9DcpiaL7hihCxKKKitm/giT2 0HfHi90V+Uyxsq7bgAOTpFc2OqKY94Mmz7NRIK1XSea1X+LVRCoPmY+37Fza/rIulYs7 CGyNXE1+VpD08456N9UOK1qypaouh1up5fupD7L6jN7MqLJ6uhM0QPtFU5nfu7mroYoR sC3w== X-Forwarded-Encrypted: i=1; AJvYcCXMvOAnuvBQdT1I2Ta53OLMfFa1oOJk9Lw1lubGZzKwlP1TVBJMTjYKbG/DIZvJVQmqnfNNpGWBIP8=@lists.freedesktop.org X-Gm-Message-State: AOJu0YyAy9Ro6x8wu5LyUzaLKN5aqUNnAj/RS/12XL7FMKUsHRwrU6mx /61v+PG1ks+MlIxkIWKEi/VdeZi/6mmo2+V/YkllVWTqf14IoQFe5jF+sOE9zXTb+Eg3YTsUTIP w0hSzMBNIkt3FUov8JkPEZqtAJafLin1AWrbWk6SYIebU05+qQ0jMov1WIPRAXg6WQk48uDY= X-Gm-Gg: ATEYQzyx/ZK/QGnx9pRU4kLGzyS9nVBrgmo0SV9wAdFUkt1QZfzlcM9Vt3nwjKxWiRH oSLwT+dPyXvVbzocFviDM4jk/KqdjfuA0O4LV+/LL8CRqsad8HTdIUxolUaP2xKtiwkqn08sOs3 hSNhrq9WVb6sU5Odd9ZbLRo5HyXvVnwRcNqhIJO3xfxwiBZTcggWmS7C0uifpQicccxAa28j+C/ 2ZqD7va2Ac4Zp35UaoGomjSmZYF0toYmsFNAwjnXFFcYoUf0qVZyXVaR/p4Uw2IN7l1uTf+j5+m vEzSpmSYRVDRAI/KwgO0et5JpXi7/iRLmf51FWKVRq7oPO7V/FW4JLpQ/bkv1Y+jEtk5lg+JXEB aGFWI0ZmzXl+AVhClGFZ2jm8UuHYvo5ZvfpJOHxHhj2B4ur8Jb4ftTouV9HIBmvl8rIo9Xj6cWi jhClkf X-Received: by 2002:a05:7300:538e:b0:2b7:1abc:a6eb with SMTP id 5a478bee46e88-2bdcbf4440dmr892764eec.7.1772061511632; Wed, 25 Feb 2026 15:18:31 -0800 (PST) X-Received: by 2002:a05:7300:538e:b0:2b7:1abc:a6eb with SMTP id 5a478bee46e88-2bdcbf4440dmr892750eec.7.1772061510969; Wed, 25 Feb 2026 15:18:30 -0800 (PST) Received: from [10.134.65.116] (i-global254.qualcomm.com. [199.106.103.254]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-2bdd1cf0115sm357385eec.8.2026.02.25.15.18.29 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 25 Feb 2026 15:18:30 -0800 (PST) Message-ID: <3f06453a-ac7e-46e0-8d37-e0f9980b438d@oss.qualcomm.com> Date: Wed, 25 Feb 2026 15:18:29 -0800 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH RFC 01/18] accel/qda: Add Qualcomm QDA DSP accelerator driver docs To: Dmitry Baryshkov Cc: Bjorn Andersson , Ekansh Gupta , Oded Gabbay , Jonathan Corbet , Shuah Khan , Joerg Roedel , Will Deacon , Robin Murphy , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Simona Vetter , Sumit Semwal , =?UTF-8?Q?Christian_K=C3=B6nig?= , dri-devel@lists.freedesktop.org, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, iommu@lists.linux.dev, linux-media@vger.kernel.org, linaro-mm-sig@lists.linaro.org, Srinivas Kandagatla , Bharath Kumar , Chenna Kesava Raju References: <20260224-qda-firstpost-v1-0-fe46a9c1a046@oss.qualcomm.com> <20260224-qda-firstpost-v1-1-fe46a9c1a046@oss.qualcomm.com> <5a278b02-f2ad-408b-b0ad-f2297817bd7e@oss.qualcomm.com> <4e4b50fe-1091-451e-b854-f7b061ebd88d@oss.qualcomm.com> Content-Language: en-US From: Trilok Soni In-Reply-To: Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMjI1MDIyMiBTYWx0ZWRfX1IOuCUQHkS/L dPDH27Eb7tn5/INXwzfnrZcso84cDVb7g2xs/W/RNajFzY1xQuaDJvMDVD3xrgISmduUhs78+F5 nBukK53+4qWWAUElxYKIZcngpWUbY2YkSzlWiLii0rjLjKChSrmkclnmWUDxCUtHKyx8Ig2HStZ N/HwT+UtiZR2yoYxGaE3mQnU5wSttzVFAIrkRi77mUMEGRYKX04M1P9LAknafWdobNCRwusw0gA Ia6c2Krk/YJZIh/FHoZy7H86JSdanCjxJyZfCTGsE/p/cKglrf/NCjMxDgfQLOUbNW3z+KXgbAS 1Fniha9xVpH5ETqOarWBZV7FCo6gSzzHeL5jyCtU7OFfeAlM3PxH0SybCnPlYBHtznEuueHNN8j CUsZNMK0ztNuSqqeh3Ng4rnNXlYRz9UgwjQJn82TqwQmZ0a3AbPOtECqiI8eoH3Cf012IzVR5+R kVGtaP5K0hwpwUSMvHw== X-Authority-Analysis: v=2.4 cv=O7Q0fR9W c=1 sm=1 tr=0 ts=699f8348 cx=c_pps a=wEP8DlPgTf/vqF+yE6f9lg==:117 a=JYp8KDb2vCoCEuGobkYCKw==:17 a=IkcTkHD0fZMA:10 a=HzLeVaNsDn8A:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=yx91gb_oNiZeI1HMLzn7:22 a=AmUwcyaVtIZmdcZSVHAA:9 a=3ZKOabzyN94A:10 a=QEXdDO2ut3YA:10 a=bBxd6f-gb0O0v-kibOvt:22 X-Proofpoint-ORIG-GUID: tlK6idIrSKZqc37iEa4y29hTU1U-UW8N X-Proofpoint-GUID: tlK6idIrSKZqc37iEa4y29hTU1U-UW8N X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1121,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-02-25_04,2026-02-25_01,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=0 adultscore=0 impostorscore=0 lowpriorityscore=0 phishscore=0 spamscore=0 clxscore=1015 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2602130000 definitions=main-2602250222 X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" T24gMi8yNS8yMDI2IDExOjQwIEFNLCBEbWl0cnkgQmFyeXNoa292IHdyb3RlOgo+IE9uIFdlZCwg RmViIDI1LCAyMDI2IGF0IDExOjE2OjI2QU0gLTA4MDAsIFRyaWxvayBTb25pIHdyb3RlOgo+PiBP biAyLzI1LzIwMjYgNzoxMiBBTSwgQmpvcm4gQW5kZXJzc29uIHdyb3RlOgo+Pj4gT24gV2VkLCBG ZWIgMjUsIDIwMjYgYXQgMDc6NDc6MDhQTSArMDUzMCwgRWthbnNoIEd1cHRhIHdyb3RlOgo+Pj4+ Cj4+Pj4KPj4+PiBPbiAyLzI0LzIwMjYgOTowMyBBTSwgVHJpbG9rIFNvbmkgd3JvdGU6Cj4+Pj4+ IE9uIDIvMjMvMjAyNiAxMTowOCBBTSwgRWthbnNoIEd1cHRhIHdyb3RlOgo+Pj4+Pj4gQWRkIGlu aXRpYWwgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIFF1YWxjb21tIERTUCBBY2NlbGVyYXRvciAoUURB KSBkcml2ZXIKPj4+Pj4+IGludGVncmF0ZWQgaW4gdGhlIERSTSBhY2NlbCBzdWJzeXN0ZW0uCj4+ Pj4+Pgo+Pj4+Pj4gVGhlIG5ldyBkb2NzIGludHJvZHVjZSBRREEgYXMgYSBEUk0vYWNjZWwtYmFz ZWQgaW1wbGVtZW50YXRpb24gb2YKPj4+Pj4+IEhleGFnb24gRFNQIG9mZmxvYWQgdGhhdCBpcyBp bnRlbmRlZCBhcyBhIG1vZGVybiBhbHRlcm5hdGl2ZSB0byB0aGUKPj4+Pj4+IGxlZ2FjeSBGYXN0 UlBDIGRyaXZlciBpbiBkcml2ZXJzL21pc2MuIFRoZSB0ZXh0IGRlc2NyaWJlcyB0aGUgZHJpdmVy Cj4+Pj4+PiBtb3RpdmF0aW9uLCBoaWdoLWxldmVsIGFyY2hpdGVjdHVyZSBhbmQgaW50ZXJhY3Rp b24gd2l0aCBJT01NVSBjb250ZXh0Cj4+Pj4+PiBiYW5rcywgR0VNLWJhc2VkIGJ1ZmZlciBtYW5h Z2VtZW50IGFuZCB0aGUgUlBNc2cgdHJhbnNwb3J0Lgo+Pj4+Pj4KPj4+Pj4+IFRoZSB1c2VyLXNw YWNlIGZhY2luZyBzZWN0aW9uIGRvY3VtZW50cyB0aGUgbWFpbiBRREEgSU9DVExzIHVzZWQgdG8K Pj4+Pj4+IGVzdGFibGlzaCBEU1Agc2Vzc2lvbnMsIG1hbmFnZSBHRU0gYnVmZmVyIG9iamVjdHMg YW5kIGludm9rZSByZW1vdGUKPj4+Pj4+IHByb2NlZHVyZXMgdXNpbmcgdGhlIEZhc3RSUEMgcHJv dG9jb2wsIGFsb25nIHdpdGggYSB0eXBpY2FsIGxpZmVjeWNsZQo+Pj4+Pj4gZXhhbXBsZSBmb3Ig YXBwbGljYXRpb25zLgo+Pj4+Pj4KPj4+Pj4+IEZpbmFsbHksIHRoZSBkcml2ZXIgaXMgd2lyZWQg aW50byB0aGUgQ29tcHV0ZSBBY2NlbGVyYXRvcnMKPj4+Pj4+IGRvY3VtZW50YXRpb24gaW5kZXgg dW5kZXIgRG9jdW1lbnRhdGlvbi9hY2NlbCwgYW5kIGEgYnJpZWYgZGVidWdnaW5nCj4+Pj4+PiBz ZWN0aW9uIHNob3dzIGhvdyB0byBlbmFibGUgZHluYW1pYyBkZWJ1ZyBmb3IgdGhlIFFEQSBpbXBs ZW1lbnRhdGlvbi4KPj4+Pj4gU28gZXhpc3RpbmcgYXBwbGljYXRpb25zIHdyaXR0ZW4gb3ZlciBj aGFyYWN0ZXIgZGV2aWNlIFVBUEkgbmVlZHMgdG8gYmUKPj4+Pj4gcmV3cml0dGVuIG92ZXIgbmV3 IFVBUEkgYW5kIGl0IHdpbGwgYmUgYnJva2VuIG9uY2UgdGhpcyBkcml2ZXIgZ2V0cwo+Pj4+PiBt ZXJnZWQ/IEFyZSB3ZSBnb2luZyB0byBrZWVwIGJvdGggdGhlIGRyaXZlcnMgaW4gdGhlIExpbnV4 IGtlcm5lbAo+Pj4+PiBhbmQgbm90IGRlcHJlY2F0ZSB0aGUgL2NoYXIgZGV2aWNlIG9uZT8gCj4+ Pj4+Cj4+Pj4+IElzIFF1YWxjb21tIGdvaW5nIHRvIHByb3ZpZGUgdGhlIHdyYXBwZXIgbGlicmFy eSBpbiB0aGUgdXNlcnNwYWNlCj4+Pj4+IHNvIHRoYXQgZXhpc3RpbmcgYXBwbGljYXRpb25zIGJ5 IG91ciBjdXN0b21lcnMgYW5kIGRldmVsb3BlcnMKPj4+Pj4ga2VlcCB3b3JraW5nIHcvIHRoZSBu ZXdlciBrZXJuZWwgaWYgdGhlIGNoYXIgaW50ZXJmYWNlIGJhc2VkCj4+Pj4+IGRyaXZlciBnZXRz IGRlcHJlY2F0ZWQ/IEl0IGlzIG5vdCBjbGVhciBmcm9tIHlvdXIgdGV4dCBhYm92ZS4gCj4+Pj4g VGhhbmtzIGZvciByYWlzaW5nIHRoaXMsIFRyaWxvay4KPj4+Pgo+Pj4+IFRoaXMgaXMgb25lIG9m IHRoZSBvcGVuIGl0ZW1zIHRoYXQgSSBoYXZlLiBJJ20gbm90IGV4YWN0bHkgc3VyZSB3aGF0IHdv dWxkIGJlIHRoZQo+Pj4+IGFjY2VwdGFibGUgd2F5IGZvciB0aGlzLsKgCj4+Pj4KPj4+PiBBcyB5 b3UgbWVudGlvbmVkLCBhcHBsaWNhdGlvbnMgdGhhdCByZWx5IG9uIC9kZXYvZmFzdHJwYyogbWln aHQgbm90IHdvcmsgb24gUURBCj4+Pj4gd2l0aG91dCBtb2RpZmljYXRpb24uCj4+Pj4KPj4+PiBJ IHdhcyB0aGlua2luZyBpbiB0aGUgc2FtZSBsaW5lcyBhcyB5b3UgaGF2ZSBtZW50aW9uZWQgYW5k wqAgaGF2aW5nIHNvbWUgc2hpbS9jb21wYXQKPj4+PiBkcml2ZXIgdG8gdHJhbnNsYXRlIEZhc3RS UEMgVUFQSSB0byBRREEuIFRoZSBjb21wYXQgZHJpdmVyIHdvdWxkIGV4cG9zZSB0aGUgZXhpc3Rp bmcKPj4+PiBjaGFyYWN0ZXIgZGV2aWNlcyBhbmQgcm91dGUgdGhlIGNhbGxzIHRvIFFEQS4gVGhl IGNvbXBhdCBkcml2ZXIgY291bGQgYmUgYnVpbHQgdmlhIEtjb25maWcuCj4+Pj4KPj4+Cj4+PiBU aGlzIGlzIGEgZnVuZGFtZW50YWwgcmVxdWlyZW1lbnQsIHlvdSBuZWVkIHRvIGFkZHJlc3MgdGhp cyBpbiBvcmRlciBmb3IKPj4+IHRoaXMgdG8gbW92ZSBmb3J3YXJkLgo+Pj4KPj4+IFdoaWNoIG1h a2VzIG1lIHdvbmRlciBpZiBpdCB3b3VsZCBiZSBwb3NzaWJsZSB0byByZWFjaCBhbiBhY2NlbCBk cml2ZXIKPj4+IHRocm91Z2ggaW5jcmVtZW50YWwgdHJhbnNpdGlvbiBvZiB0aGUgY3VycmVudCBk cml2ZXIsIGluc3RlYWQgb2YganVzdAo+Pj4gZHJvcHBpbmcgaW4gYSBmZXcgdGhvdXNhbmQgbGlu ZXMgb2YgbmV3IGNvZGUvZGVzaWduLgo+Pj4KPj4+PiBIb3dldmVyLCBJIGhhdmVu4oCZdCBlbmNv dW50ZXJlZCBhbiBleGFtcGxlIG9mIHN1Y2ggYSBVQVBJ4oCRdHJhbnNsYXRpb24gZHJpdmVyIGlu IHRoZSBrZXJuZWwKPj4+PiBiZWZvcmUsIHNvIEkgd291bGQgd2FudCBndWlkYW5jZSBmcm9tIG1h aW50YWluZXJzIG9uIHdoZXRoZXIgdGhpcyBpcyBhbiBhY2NlcHRhYmxlCj4+Pj4gbW9kZWwgb3Ig bm90Lgo+Pj4+Cj4+Pj4gUmVnYXJkaW5nIHlvdXIgcXVlc3Rpb24gYWJvdXQgbGlicmFyeSwgYWxs IHRoZSBBUElzIGV4cG9zZWQgYnkgZ2l0aHViL2Zhc3RycGMgbGlicmFyeSBhcmUga2VwdAo+Pj4+ IHVuY2hhbmdlZCBpbiB0ZXJtcyBvZiBkZWZpbml0aW9ucyBhbmQgZXhwZWN0YXRpb24uIFRoZSBz YW1lIHByb2plY3QgY2FuIGJlIGJ1aWxkIGZvciBib3RoCj4+Pj4gRmFzdFJQQyBhbmQgUURBIGJh c2VkIG9uIGNvbmZpZ3VyZSBvcHRpb25zLiBTbywgdGhlIGFwcGxpY2F0aW9ucyB1c2luZyBnaXRo dWIvZmFzdHJwYyBzaG91bGQKPj4+PiBub3QgZmFjZSBhbnkgcHJvYmxlbSBpZiB0aGUgbGlicyBp cyBidWlsdCB3aXRoIHByb3BlciBjb25maWd1cmUgb3B0aW9ucy4KPj4+Pgo+Pj4KPj4+IFlvdSdy ZSBhc3N1bWluZyB0aGF0IHRoZSBrZXJuZWwgYW5kIHVzZXJzcGFjZSBhcmUgYSB1bmlmaWVkIHBp ZWNlIG9mCj4+PiBzb2Z0d2FyZSwgdGhleSBhcmUgbm90LiBJdCBtdXN0IGJlIHBvc3NpYmxlIGZv ciBtZSB0byBpbnN0YWxsIGEgbmV3Cj4+PiBrZXJuZWwgcGFja2FnZSB3aXRob3V0IGhhdmluZyB0 byByZXBsYWNlIHRoZSB1c2Vyc3BhY2UgbGlicmFyaWVzLgo+Pgo+PiBUaGFuayB5b3UgQmpvcm4g Zm9yIHByb3ZpZGluZyB0aGUgaW5wdXRzLiAKPj4KPj4gSSBhbHNvIGZvcmVzZWUgdGhhdCB3ZSB3 aWxsIGJlIHN0b3AgYWRkaW5nIChvciBhbHJlYWR5IGhhcHBlbmVkKSBuZXcgZmVhdHVyZXMKPj4g aW50byB0aGUgZXhpc3RpbmcgZmFzdHJwYyBkcml2ZXIsIHNvIGNhbGxpbmcgdGhlIG5ldyBkcml2 ZXIgYXMgYW4gYWx0ZXJuYXRpdmUKPj4gaXMgaW4gb3ZlcnNvbGQgY2F0ZWdvcnkuCj4+Cj4+IFlv dSBhcmUgcHJldHR5IG11Y2ggYmVnYW4gdGhlIGRlcHJlY2F0aW5nIHRoZSBleGlzdGluZyBmYXN0 cnBjIGRyaXZlciwgc28gbGV0J3MKPj4ganVzdCBtZW50aW9uIGl0IGlmIHRoYXQgaXMgdGhlIGNh c2UgYW5kIHByb3ZpZGUgbWlncmF0aW9uL3NoaW0gcGF0aCBzbyB0aGF0Cj4+IGV4aXN0aW5nIGJp bmFyaWVzIGRvZXNuJ3QgYnJlYWsuCj4gCj4gSSBhZ3JlZSB0aGF0IHdlIG5lZWQgYSBtaWdyYXRp b24gcGF0aCwgYnV0IEknZCByZWFsbHkgZm9jdXMgb24gaXQgYWZ0ZXIKPiBnZXR0aW5nIGF0IGxl YXN0IGJhc2ljIHBhcnRzIG9mIHRoZSBRREEgcmV2aWV3ZWQgYW5kIGFncmVlZCB1cG9uLgo+IE90 aGVyd2lzZSB0aGUgc2hpbSBsYXllciB3aWxsIGJlIHJld29ya2VkIGFnYWluIGFuZCBhZ2FpbiB3 aXRoIG5vCj4gaW1tZWRpYXRlIGFkZGVkIGJlbmVmaXQuCj4gCgpJIGFtIGZpbmUgd2l0aCB0aGUg cmV2aWV3IHRvIGJlIGNvbnRpbnVlZCwgdGhpcyBpcyBSRkMgc2VyaWVzIGFueXdheS4gV2Ugc2hv dWxkIGFsc28gZGVjaWRlCnRoZSBkZXNpZ24gb2YgdGhlIHNoaW0gbGF5ZXIgaGVyZSBhcyB3ZWxs LiBJIHByZWZlciB0byBub3QgaGF2ZSBtdWx0aXBsZQpSRkMgcmV2aXNpb25zIGhlcmUgaWYgd2Ug ZG9uJ3QgYWdyZWUgb24gdGhlIGJhc2ljIHJlcXVpcmVtZW50cyB3aGljaApsZWFkcyB0byBhY2Nl cHRhbmNlIG9mIHRoaXMgbmV3IGRyaXZlci4gCgotLS1Ucmlsb2sgU29uaQo=