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 X-Spam-Level: X-Spam-Status: No, score=-11.5 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH, MAILING_LIST_MULTI,NICE_REPLY_A,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2CBBDC433E7 for ; Fri, 16 Oct 2020 09:12:13 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 93BC920789 for ; Fri, 16 Oct 2020 09:12:12 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="vQSthEII"; dkim=fail reason="signature verification failed" (2048-bit key) header.d=cirrus.com header.i=@cirrus.com header.b="KvFvBNrK" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 93BC920789 Authentication-Results: mail.kernel.org; dmarc=fail (p=reject dis=none) header.from=opensource.cirrus.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Type: Content-Transfer-Encoding:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:Date:Message-ID:From: References:To:Subject:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=PKlMMyUuWrd0SKC5k2BW32x2MHElcr2/w+fOECnk8WY=; b=vQSthEII7oH9r+5c0K1blbHjL fIzg7X8SkkP7FZ5u6u+t8nvZrhcOIK1NfWRqZOfVZkZcQYqd45RqpCE7QuDS3UVI4FlFAEoqBazz4 ARzaZ9fm1tMZVr/7ZqlNCJWNjZp8gd9sY6V5McueiH+BEpucj9quOkneBFPIJxwGthpc483MXQuNu sx/5MmzC0cZRdxDtpdI0kRbPbZEPSjX3dXE15DpqBkbjPFZ24brcsKS4Fxxl4O3A1yZVieNYVDBN9 IuuCxM+Qine8ghxw0A0jRqd+2MWD7NI18i6ZhUxLY/nJuFi9vIf2CLr6Sq7H01KUnu7Gurnb6tTub De9EozJgg==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kTLlA-0008Cn-TN; Fri, 16 Oct 2020 09:10:48 +0000 Received: from mx0b-001ae601.pphosted.com ([67.231.152.168]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kTLl7-0008BF-I4; Fri, 16 Oct 2020 09:10:46 +0000 Received: from pps.filterd (m0077474.ppops.net [127.0.0.1]) by mx0b-001ae601.pphosted.com (8.16.0.43/8.16.0.43) with SMTP id 09G9AUP9014238; Fri, 16 Oct 2020 04:10:30 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cirrus.com; h=subject : to : cc : references : from : message-id : date : mime-version : in-reply-to : content-type : content-transfer-encoding; s=PODMain02222019; bh=5GgvYFVOQXr2tlU+lzmQtw6n7e7CS2uC5plEf2o1xhA=; b=KvFvBNrKAIUA4F+g8fCFhfAZAXBPLdAhsDpajjHdZHzhvE+51PeJAaGFxsj00FAmf/yv cde1yIijg1JeLtvVO5Pp1IO0qYO3YWpNEWvgkS1o1me4exeIb7i4Twc07mPCk6Gcvry6 xX+jS3bRJjFbRZPBr8bG5p6yiSIaevdcTpId4lSQLoaZZPrwgH0dN8FCozi8Mk0did7t oH1rvaK3nbRONs6JGOm4IaThtE3L9sCk9rovyjHFiMbDNK2IMU9WteroHSZ1484mDkTO z7g1op4W048AV19gagc/TILN4bu2lN2v/FYzCYMxaJlj1QGTJ50WNeO+gOkE+IIXOLyd vA== Received: from ediex01.ad.cirrus.com ([87.246.76.36]) by mx0b-001ae601.pphosted.com with ESMTP id 3439cnfx63-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT); Fri, 16 Oct 2020 04:10:18 -0500 Received: from EDIEX01.ad.cirrus.com (198.61.84.80) by EDIEX01.ad.cirrus.com (198.61.84.80) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1913.5; Fri, 16 Oct 2020 10:10:16 +0100 Received: from ediswmail.ad.cirrus.com (198.61.86.93) by EDIEX01.ad.cirrus.com (198.61.84.80) with Microsoft SMTP Server id 15.1.1913.5 via Frontend Transport; Fri, 16 Oct 2020 10:10:16 +0100 Received: from [10.0.2.15] (ausnpc0lsnw1.ad.cirrus.com [198.61.64.143]) by ediswmail.ad.cirrus.com (Postfix) with ESMTP id 2283145; Fri, 16 Oct 2020 09:10:16 +0000 (UTC) Subject: Re: [PATCH 1/7] of: base: Add of_count_phandle_with_fixed_args() To: Robin Murphy , Rob Herring References: <20201014145418.31838-1-rf@opensource.cirrus.com> <20201014145418.31838-2-rf@opensource.cirrus.com> <90600a67-25e4-7933-35c3-f515deaee94f@arm.com> From: Richard Fitzgerald Message-ID: <008108c4-952b-a8a3-af81-af9e40643f36@opensource.cirrus.com> Date: Fri, 16 Oct 2020 10:10:16 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.3.1 MIME-Version: 1.0 In-Reply-To: <90600a67-25e4-7933-35c3-f515deaee94f@arm.com> Content-Language: en-US X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 bulkscore=0 malwarescore=0 spamscore=0 adultscore=0 mlxlogscore=999 phishscore=0 lowpriorityscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2009150000 definitions=main-2010160068 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20201016_051045_662346_525E9A1B X-CRM114-Status: GOOD ( 28.45 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: devicetree@vger.kernel.org, Linux-ALSA , - , "linux-kernel@vger.kernel.org" , Mark Brown , Nicolas Saenz Julienne , linux-arm-kernel , "moderated list:BROADCOM BCM2835 ARM ARCHITECTURE" Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Ck9uIDE1LzEwLzIwMjAgMTc6NTIsIFJvYmluIE11cnBoeSB3cm90ZToKPiBPbiAyMDIwLTEwLTE0 IDE5OjM5LCBSb2IgSGVycmluZyB3cm90ZToKPj4gT24gV2VkLCBPY3QgMTQsIDIwMjAgYXQgOTo1 NCBBTSBSaWNoYXJkIEZpdHpnZXJhbGQKPj4gPHJmQG9wZW5zb3VyY2UuY2lycnVzLmNvbT4gd3Jv dGU6Cj4+Pgo+Pj4gQWRkIGFuIGVxdWl2YWxlbnQgb2Ygb2ZfY291bnRfcGhhbmRsZV93aXRoX2Fy Z3MoKSBmb3IgZml4ZWQgYXJndW1lbnQKPj4+IHNldHMsIHRvIHBhaXIgd2l0aCBvZl9wYXJzZV9w aGFuZGxlX3dpdGhfZml4ZWRfYXJncygpLgo+Pj4KPj4+IFNpZ25lZC1vZmYtYnk6IFJpY2hhcmQg Rml0emdlcmFsZCA8cmZAb3BlbnNvdXJjZS5jaXJydXMuY29tPgo+Pj4gLS0tCj4+PiDCoCBkcml2 ZXJzL29mL2Jhc2UuY8KgIHwgNDIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrCj4+PiDCoCBpbmNsdWRlL2xpbnV4L29mLmggfMKgIDkgKysrKysrKysrCj4+PiDCoCAy IGZpbGVzIGNoYW5nZWQsIDUxIGluc2VydGlvbnMoKykKPj4+Cj4+PiBkaWZmIC0tZ2l0IGEvZHJp dmVycy9vZi9iYXNlLmMgYi9kcml2ZXJzL29mL2Jhc2UuYwo+Pj4gaW5kZXggZWE0NGZlYTk5ODEz Li40NWQ4YjBlNjUzNDUgMTAwNjQ0Cj4+PiAtLS0gYS9kcml2ZXJzL29mL2Jhc2UuYwo+Pj4gKysr IGIvZHJpdmVycy9vZi9iYXNlLmMKPj4+IEBAIC0xNzcyLDYgKzE3NzIsNDggQEAgaW50IG9mX2Nv dW50X3BoYW5kbGVfd2l0aF9hcmdzKGNvbnN0IHN0cnVjdCAKPj4+IGRldmljZV9ub2RlICpucCwg Y29uc3QgY2hhciAqbGlzdF9uYQo+Pj4gwqAgfQo+Pj4gwqAgRVhQT1JUX1NZTUJPTChvZl9jb3Vu dF9waGFuZGxlX3dpdGhfYXJncyk7Cj4+Pgo+Pj4gKy8qKgo+Pj4gKyAqIG9mX2NvdW50X3BoYW5k bGVfd2l0aF9maXhlZF9hcmdzKCkgLSBGaW5kIHRoZSBudW1iZXIgb2YgcGhhbmRsZXMgCj4+PiBy ZWZlcmVuY2VzIGluIGEgcHJvcGVydHkKPj4+ICsgKiBAbnA6wqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIHBvaW50ZXIgdG8gYSBkZXZpY2UgdHJlZSBub2RlIGNvbnRhaW5pbmcgYSBsaXN0 Cj4+PiArICogQGxpc3RfbmFtZTogcHJvcGVydHkgbmFtZSB0aGF0IGNvbnRhaW5zIGEgbGlzdAo+ Pj4gKyAqIEBjZWxsX2NvdW50OiBudW1iZXIgb2YgYXJndW1lbnQgY2VsbHMgZm9sbG93aW5nIHRo ZSBwaGFuZGxlCj4+PiArICoKPj4+ICsgKiBSZXR1cm5zIHRoZSBudW1iZXIgb2YgcGhhbmRsZSAr IGFyZ3VtZW50IHR1cGxlcyB3aXRoaW4gYSAKPj4+IHByb3BlcnR5LiBJdAo+Pj4gKyAqIGlzIGEg dHlwaWNhbCBwYXR0ZXJuIHRvIGVuY29kZSBhIGxpc3Qgb2YgcGhhbmRsZSBhbmQgdmFyaWFibGUK Pj4+ICsgKiBhcmd1bWVudHMgaW50byBhIHNpbmdsZSBwcm9wZXJ0eS4KPj4+ICsgKi8KPj4+ICtp bnQgb2ZfY291bnRfcGhhbmRsZV93aXRoX2ZpeGVkX2FyZ3MoY29uc3Qgc3RydWN0IGRldmljZV9u b2RlICpucCwKPj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGNvbnN0IGNoYXIgKmxpc3RfbmFtZSwKPj4+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIGludCBjZWxsc19jb3VudCkKPj4+ICt7Cj4+Cj4+IExvb2tzIHRvIG1lIGxp a2UgeW91IGNhbiByZWZhY3RvciBvZl9jb3VudF9waGFuZGxlX3dpdGhfYXJncyB0byBoYW5kbGUK Pj4gYm90aCBjYXNlIGFuZCB0aGVuIG1ha2UgdGhpcyBhbmQgb2ZfY291bnRfcGhhbmRsZV93aXRo X2FyZ3Mgc2ltcGxlCj4+IHdyYXBwZXIgZnVuY3Rpb25zLgo+IAo+IEFsdGhvdWdoIGZvciBqdXN0 IGNvdW50aW5nIHRoZSBudW1iZXIgb2YgcGhhbmRsZXMgZWFjaCB3aXRoIG4gYXJndW1lbnRzIAo+ IHRoYXQgYSBwcm9wZXJ0eSBjb250YWlucywgaXNuJ3QgdGhhdCBzaW1wbHkgYSBjYXNlIG9mIGRp dmlkaW5nIHRoZSAKPiBwcm9wZXJ0eSBsZW5ndGggYnkgbiArIDE/IFRoZSBwaGFuZGxlcyB0aGVt c2VsdmVzIHdpbGwgYmUgdmFsaWRhdGVkIGJ5IAo+IGFueSBzdWJzZXF1ZW50IG9mX3BhcnNlX3Bo YW5kbGUqKCkgY2FsbCBhbnl3YXksIHNvIHRoZXJlIGRvZXNuJ3Qgc2VlbSAKPiBtdWNoIHBvaW50 IGluIGRvaW5nIG1vcmUgd29yayB0aGVuIG5lY2Vzc2FyeSBoZXJlLgo+IAoKQXMgSSdtIG5vdCBh IERUIGV4cGVydCwgSSdtIHJlbHVjdGFudCB0byBjaGFuZ2UgZXhpc3RpbmcgYWxnb3JpdGhtcyB0 aGF0CmNvdWxkIGJyZWFrIGV2ZXJ5dGhpbmcganVzdCBmb3IgdGhlIHRyaXZpYWwgY2FzZSBvZiBh ZGRpbmcgYSBmaXhlZAphcmd1bWVudHMgY291bnQuIEkgaGF2ZSBhIHJlLXdvcmtlZCBwYXRjaCBh cyBzdWdnZXN0ZWQgYnkgUm9iIHRoYXQKcmUtdXNlcyB0aGUgZXhpc3RpbmcgY291bnRpbmcgZnVu Y3Rpb24gZm9yIGJvdGggY2FzZXMuCgo+Pj4gK8KgwqDCoMKgwqDCoCBzdHJ1Y3Qgb2ZfcGhhbmRs ZV9pdGVyYXRvciBpdDsKPj4+ICvCoMKgwqDCoMKgwqAgaW50IHJjLCBjdXJfaW5kZXggPSAwOwo+ Pj4gKwo+Pj4gK8KgwqDCoMKgwqDCoCBpZiAoIWNlbGxzX2NvdW50KSB7Cj4+PiArwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCBjb25zdCBfX2JlMzIgKmxpc3Q7Cj4+PiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCBpbnQgc2l6ZTsKPj4+ICsKPj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIGxpc3QgPSBvZl9nZXRfcHJvcGVydHkobnAsIGxpc3RfbmFtZSwgJnNpemUpOwo+ Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgaWYgKCFsaXN0KQo+Pj4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHJldHVybiAtRU5PRU5UOwo+Pj4g Kwo+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgcmV0dXJuIHNpemUgLyBzaXplb2Yo Kmxpc3QpOwo+IAo+IENhc2UgaW4gcG9pbnQgLSBpZiBpdCdzIE9LIHRvIGRvIGV4YWN0bHkgdGhh dCBmb3IgbiA9PSAwLCB0aGVuIGNsZWFybHkgCj4gd2UncmUgKmFyZW4ndCogZnVzc2VkIGFib3V0 IHZhbGlkYXRpbmcgYW55dGhpbmcsIHNvIHRoZSBuID4gMCBjb2RlIGJlbG93IAo+IGlzIG5vdGhp bmcgbW9yZSB0aGFuIGEgbWFzc2l2ZWx5IGV4cGVuc2l2ZSB3YXkgdG8gY2hlY2sgZm9yIGEgbm9u emVybyAKPiByZW1haW5kZXIgOi8KPiAKPiBSb2Jpbi4KPiAKPj4+ICvCoMKgwqDCoMKgwqAgfQo+ Pj4gKwo+Pj4gK8KgwqDCoMKgwqDCoCByYyA9IG9mX3BoYW5kbGVfaXRlcmF0b3JfaW5pdCgmaXQs IG5wLCBsaXN0X25hbWUsIE5VTEwsIAo+Pj4gY2VsbHNfY291bnQpOwo+Pj4gK8KgwqDCoMKgwqDC oCBpZiAocmMpCj4+PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCByZXR1cm4gcmM7Cj4+ PiArCj4+PiArwqDCoMKgwqDCoMKgIHdoaWxlICgocmMgPSBvZl9waGFuZGxlX2l0ZXJhdG9yX25l eHQoJml0KSkgPT0gMCkKPj4+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGN1cl9pbmRl eCArPSAxOwo+Pj4gKwo+Pj4gK8KgwqDCoMKgwqDCoCBpZiAocmMgIT0gLUVOT0VOVCkKPj4+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHJldHVybiByYzsKPj4+ICsKPj4+ICvCoMKgwqDC oMKgwqAgcmV0dXJuIGN1cl9pbmRleDsKPj4+ICt9Cj4+PiArRVhQT1JUX1NZTUJPTChvZl9jb3Vu dF9waGFuZGxlX3dpdGhfZml4ZWRfYXJncyk7Cj4+PiArCj4+PiDCoCAvKioKPj4+IMKgwqAgKiBf X29mX2FkZF9wcm9wZXJ0eSAtIEFkZCBhIHByb3BlcnR5IHRvIGEgbm9kZSB3aXRob3V0IGxvY2sg Cj4+PiBvcGVyYXRpb25zCj4+PiDCoMKgICovCj4+PiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9saW51 eC9vZi5oIGIvaW5jbHVkZS9saW51eC9vZi5oCj4+PiBpbmRleCA1Y2Y3YWUwNDY1ZDEuLjlmMzE1 ZGE0ZTlkYSAxMDA2NDQKPj4+IC0tLSBhL2luY2x1ZGUvbGludXgvb2YuaAo+Pj4gKysrIGIvaW5j bHVkZS9saW51eC9vZi5oCj4+PiBAQCAtMzc3LDYgKzM3Nyw4IEBAIGV4dGVybiBpbnQgb2ZfcGFy c2VfcGhhbmRsZV93aXRoX2ZpeGVkX2FyZ3MoY29uc3QgCj4+PiBzdHJ1Y3QgZGV2aWNlX25vZGUg Km5wLAo+Pj4gwqDCoMKgwqDCoMKgwqDCoCBzdHJ1Y3Qgb2ZfcGhhbmRsZV9hcmdzICpvdXRfYXJn cyk7Cj4+PiDCoCBleHRlcm4gaW50IG9mX2NvdW50X3BoYW5kbGVfd2l0aF9hcmdzKGNvbnN0IHN0 cnVjdCBkZXZpY2Vfbm9kZSAqbnAsCj4+PiDCoMKgwqDCoMKgwqDCoMKgIGNvbnN0IGNoYXIgKmxp c3RfbmFtZSwgY29uc3QgY2hhciAqY2VsbHNfbmFtZSk7Cj4+PiArZXh0ZXJuIGludCBvZl9jb3Vu dF9waGFuZGxlX3dpdGhfZml4ZWRfYXJncyhjb25zdCBzdHJ1Y3QgZGV2aWNlX25vZGUgCj4+PiAq bnAsCj4+PiArwqDCoMKgwqDCoMKgIGNvbnN0IGNoYXIgKmxpc3RfbmFtZSwgaW50IGNlbGxzX2Nv dW50KTsKPj4+Cj4+PiDCoCAvKiBwaGFuZGxlIGl0ZXJhdG9yIGZ1bmN0aW9ucyAqLwo+Pj4gwqAg ZXh0ZXJuIGludCBvZl9waGFuZGxlX2l0ZXJhdG9yX2luaXQoc3RydWN0IG9mX3BoYW5kbGVfaXRl cmF0b3IgKml0LAo+Pj4gQEAgLTg4Niw2ICs4ODgsMTMgQEAgc3RhdGljIGlubGluZSBpbnQgCj4+ PiBvZl9jb3VudF9waGFuZGxlX3dpdGhfYXJncyhzdHJ1Y3QgZGV2aWNlX25vZGUgKm5wLAo+Pj4g wqDCoMKgwqDCoMKgwqDCoCByZXR1cm4gLUVOT1NZUzsKPj4+IMKgIH0KPj4+Cj4+PiArc3RhdGlj IGlubGluZSBpbnQgb2ZfY291bnRfcGhhbmRsZV93aXRoX2ZpeGVkX2FyZ3MoY29uc3Qgc3RydWN0 IAo+Pj4gZGV2aWNlX25vZGUgKm5wLAo+Pj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIGNvbnN0IGNoYXIgCj4+PiAqbGlzdF9uYW1lLAo+Pj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGludCBjZWxsc19jb3VudCkKPj4+ICt7Cj4+ PiArwqDCoMKgwqDCoMKgIHJldHVybiAtRU5PU1lTOwo+Pj4gK30KPj4+ICsKPj4+IMKgIHN0YXRp YyBpbmxpbmUgaW50IG9mX3BoYW5kbGVfaXRlcmF0b3JfaW5pdChzdHJ1Y3QgCj4+PiBvZl9waGFu ZGxlX2l0ZXJhdG9yICppdCwKPj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGNvbnN0 IHN0cnVjdCBkZXZpY2Vfbm9kZSAKPj4+ICpucCwKPj4+IMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIGNvbnN0IGNoYXIgKmxpc3RfbmFtZSwKPj4+IC0tIAo+Pj4gMi4yMC4xCj4+Pgo+Pgo+ PiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+PiBsaW51 eC1hcm0ta2VybmVsIG1haWxpbmcgbGlzdAo+PiBsaW51eC1hcm0ta2VybmVsQGxpc3RzLmluZnJh ZGVhZC5vcmcKPj4gaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9s aW51eC1hcm0ta2VybmVsCj4+CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpsaW51eC1hcm0ta2VybmVsIG1haWxpbmcgbGlzdApsaW51eC1hcm0ta2VybmVs QGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9s aXN0aW5mby9saW51eC1hcm0ta2VybmVsCg==