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 61522C433F5 for ; Tue, 12 Apr 2022 17:30:19 +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:Cc:To:From:Subject:References: Mime-Version:Message-Id:In-Reply-To:Date:Reply-To:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Owner; bh=K/REvXH4R3tEmW40TvZMwV2wrcC7CS3VvSthIEvKk1E=; b=FF8R8DIbDJ6sfSbwtAOUUT1TJ+ 7jTFacypnISv2GuYUwON9OygJVCSJpE8aPA7n+1GPg+58Diku7ESVspGu4CcI6VXjOqq1lYjA3v7R GKrwJc24ldNE8dmlPErARCIVllOMGkV/wNRBZOS3EI1xHvorLdvPzamQUsqX7man+As+OxSZ5GBh/ 4zmSu3E0sYAyt+/OZflsInatFAHrL4hZZMciI/oiLp3KOvYG+i0B/blWt9T/o3yI720lBnjtt4HDQ cPo9DWKfRUV14OdKAPaHsvM1OoHSLMvd7RVLSMCN2iVS4YGbOkqFwJ3hy0Mx/oY2YmO3hqTqT8MZ/ qUWQc+Ew==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1neKJz-00FDZ5-Pq; Tue, 12 Apr 2022 17:28:55 +0000 Received: from mail-yb1-xb49.google.com ([2607:f8b0:4864:20::b49]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1neKJf-00FDSb-Rz for linux-arm-kernel@lists.infradead.org; Tue, 12 Apr 2022 17:28:38 +0000 Received: by mail-yb1-xb49.google.com with SMTP id a16-20020a258050000000b0064197c6f42bso2733944ybn.0 for ; Tue, 12 Apr 2022 10:28:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=date:in-reply-to:message-id:mime-version:references:subject:from:to :cc:content-transfer-encoding; bh=NikBb4B8iMT0e4N0K3cscgiuGv/cpZWqZWLvlAvniDg=; b=mN5Iqphi/zUfeCFqABrm95mnOsr/++7dxT3gqGYta6yKVADzWSoLLBJnBd6wXmCYnh y63+2czbXLWF2RCqwT1H6GpkG3vM/jbe/OM9Yqd4S9MsvA8wGv6ejc0Cw4OY/U9fSnGx 71uzbKr+MzoQT8JFS6AT2BwjmvGGqAJHaEE0C/J/7WBEWLsJXH1D1/RaqOmqvQ5xLdql 3BomVrDyW5N0zWVSHLBCIWsyJScyHL7nFWgQ2QmOGmBzml3YsqbXUei80T3Ro2p+lVgd YQGI0rm5D2ft7npxA0hhuLbMhRt4jLVpE/7OygOv76iLtKKeYa3EVTfnUuUgpIdMXrcx /bsw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:in-reply-to:message-id:mime-version :references:subject:from:to:cc:content-transfer-encoding; bh=NikBb4B8iMT0e4N0K3cscgiuGv/cpZWqZWLvlAvniDg=; b=fK8Gn2sieFI+m4dk/MaAA+XOQWlwXhT9zK8V2HVgLdy4tjh62gPIPwBMoAH84LauFF sQo0vds6Emesm+/Euu1d7cV96Pwfa+xHhca0cRlWa8YFbcT2n7QDO2/cPnCueOGSRy6m PXCt230xGef4fz9saYqu5xOeBzqehWC90y2MW1SOtnFHumZuTLZgr8av5bT6431bbh8Q 10zMdsKPWuJrVi97oapKQRBta2K6Zy4at87PR3yF3wlCz8zt3skUr1O3ptST7/skY40q k3dOUEY1J5+4zyWJpw2rrIacKKgMt1m7VXVakyLeFr8g3JCRbFnh2OhtY4p0blIYK4sJ 3obg== X-Gm-Message-State: AOAM533OYbxFO5lA0rF6VuSWzP2R7zCS5Fj/et9g//ETZp4JDBlpY6nZ z/j6ae67P76C5AZhTtvwJWcv3AB3qg== X-Google-Smtp-Source: ABdhPJxJRT7t1oKOrnJLDf6SVzBylAM9rt3XG26RrthEfxv0VqusA1DPApSPvHoIIL6xtTG/fMTe1lHmXA== X-Received: from nhuck.c.googlers.com ([fda3:e722:ac3:cc00:14:4d90:c0a8:39cc]) (user=nhuck job=sendgmr) by 2002:a25:bfc7:0:b0:641:3c31:fe2d with SMTP id q7-20020a25bfc7000000b006413c31fe2dmr9330171ybm.531.1649784512097; Tue, 12 Apr 2022 10:28:32 -0700 (PDT) Date: Tue, 12 Apr 2022 17:28:10 +0000 In-Reply-To: <20220412172816.917723-1-nhuck@google.com> Message-Id: <20220412172816.917723-3-nhuck@google.com> Mime-Version: 1.0 References: <20220412172816.917723-1-nhuck@google.com> X-Mailer: git-send-email 2.35.1.1178.g4f1659d476-goog Subject: [PATCH v4 2/8] crypto: polyval - Add POLYVAL support From: Nathan Huckleberry To: linux-crypto@vger.kernel.org Cc: Herbert Xu , "David S. Miller" , linux-arm-kernel@lists.infradead.org, Paul Crowley , Eric Biggers , Sami Tolvanen , Ard Biesheuvel , Nathan Huckleberry , Eric Biggers X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220412_102835_977491_E063E6A3 X-CRM114-Status: GOOD ( 29.72 ) 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 QWRkIHN1cHBvcnQgZm9yIFBPTFlWQUwsIGFuIM61Lc6ULXVuaXZlcnNhbCBoYXNoIGZ1bmN0aW9u IHNpbWlsYXIgdG8KR0hBU0guICBUaGlzIHBhdGNoIGFkZHMgUE9MWVZBTCB0byBiZSB1c2VkIGFz IGEgY29tcG9uZW50IHRvIGltcGxlbWVudApIQ1RSMiBtb2RlLiAgSXQgc2hvdWxkIGJlIG5vdGVk IHRoYXQgUE9MWVZBTCB3YXMgb3JpZ2luYWxseSBzcGVjaWZpZWQKZm9yIHVzZSBpbiBBRVMtR0NN LVNJViAoUkZDIDg0NTIpLCBidXQgdGhlIGtlcm5lbCBkb2VzIG5vdCBjdXJyZW50bHkKc3VwcG9y dCB0aGlzIG1vZGUuCgpQT0xZVkFMIGlzIGltcGxlbWVudGVkIGFzIGFuIHNoYXNoIGFsZ29yaXRo bS4gIFRoZSBpbXBsZW1lbnRhdGlvbiBpcwptb2RpZmllZCBmcm9tIGdoYXNoLWdlbmVyaWMuYy4K CkZvciBtb3JlIGluZm9ybWF0aW9uIG9uIFBPTFlWQUwgc2VlOgpMZW5ndGgtcHJlc2VydmluZyBl bmNyeXB0aW9uIHdpdGggSENUUjI6CiAgaHR0cHM6Ly9lcHJpbnQuaWFjci5vcmcvMjAyMS8xNDQx LnBkZgpBRVMtR0NNLVNJVjogTm9uY2UgTWlzdXNlLVJlc2lzdGFudCBBdXRoZW50aWNhdGVkIEVu Y3J5cHRpb246CiAgaHR0cHM6Ly9kYXRhdHJhY2tlci5pZXRmLm9yZy9kb2MvaHRtbC9yZmM4NDUy CgpTaWduZWQtb2ZmLWJ5OiBOYXRoYW4gSHVja2xlYmVycnkgPG5odWNrQGdvb2dsZS5jb20+ClJl dmlld2VkLWJ5OiBFcmljIEJpZ2dlcnMgPGViaWdnZXJzQGdvb2dsZS5jb20+Ci0tLQogY3J5cHRv L0tjb25maWcgICAgICAgICAgIHwgICA4ICsrCiBjcnlwdG8vTWFrZWZpbGUgICAgICAgICAgfCAg IDEgKwogY3J5cHRvL3BvbHl2YWwtZ2VuZXJpYy5jIHwgMjE0ICsrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKwogY3J5cHRvL3RjcnlwdC5jICAgICAgICAgIHwgICA0ICsKIGNy eXB0by90ZXN0bWdyLmMgICAgICAgICB8ICAgNiArKwogY3J5cHRvL3Rlc3RtZ3IuaCAgICAgICAg IHwgMTcxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIGluY2x1ZGUvY3J5cHRvL3Bv bHl2YWwuaCB8ICAxNyArKysrCiA3IGZpbGVzIGNoYW5nZWQsIDQyMSBpbnNlcnRpb25zKCspCiBj cmVhdGUgbW9kZSAxMDA2NDQgY3J5cHRvL3BvbHl2YWwtZ2VuZXJpYy5jCiBjcmVhdGUgbW9kZSAx MDA2NDQgaW5jbHVkZS9jcnlwdG8vcG9seXZhbC5oCgpkaWZmIC0tZ2l0IGEvY3J5cHRvL0tjb25m aWcgYi9jcnlwdG8vS2NvbmZpZwppbmRleCA0Nzc1MmFhYTE2ZmYuLjAwMTM5ODQ1ZDc2ZCAxMDA2 NDQKLS0tIGEvY3J5cHRvL0tjb25maWcKKysrIGIvY3J5cHRvL0tjb25maWcKQEAgLTc2OCw2ICs3 NjgsMTQgQEAgY29uZmlnIENSWVBUT19HSEFTSAogCSAgR0hBU0ggaXMgdGhlIGhhc2ggZnVuY3Rp b24gdXNlZCBpbiBHQ00gKEdhbG9pcy9Db3VudGVyIE1vZGUpLgogCSAgSXQgaXMgbm90IGEgZ2Vu ZXJhbC1wdXJwb3NlIGNyeXB0b2dyYXBoaWMgaGFzaCBmdW5jdGlvbi4KIAorY29uZmlnIENSWVBU T19QT0xZVkFMCisJdHJpc3RhdGUKKwlzZWxlY3QgQ1JZUFRPX0dGMTI4TVVMCisJc2VsZWN0IENS WVBUT19IQVNICisJaGVscAorCSAgUE9MWVZBTCBpcyB0aGUgaGFzaCBmdW5jdGlvbiB1c2VkIGlu IEhDVFIyLiAgSXQgaXMgbm90IGEgZ2VuZXJhbC1wdXJwb3NlCisJICBjcnlwdG9ncmFwaGljIGhh c2ggZnVuY3Rpb24uCisKIGNvbmZpZyBDUllQVE9fUE9MWTEzMDUKIAl0cmlzdGF0ZSAiUG9seTEz MDUgYXV0aGVudGljYXRvciBhbGdvcml0aG0iCiAJc2VsZWN0IENSWVBUT19IQVNICmRpZmYgLS1n aXQgYS9jcnlwdG8vTWFrZWZpbGUgYi9jcnlwdG8vTWFrZWZpbGUKaW5kZXggNmIzZmUzZGYxNDg5 Li41NjFmOTAxYTkxZDQgMTAwNjQ0Ci0tLSBhL2NyeXB0by9NYWtlZmlsZQorKysgYi9jcnlwdG8v TWFrZWZpbGUKQEAgLTE2OSw2ICsxNjksNyBAQCBVQlNBTl9TQU5JVElaRV9qaXR0ZXJlbnRyb3B5 Lm8gPSBuCiBqaXR0ZXJlbnRyb3B5X3JuZy15IDo9IGppdHRlcmVudHJvcHkubyBqaXR0ZXJlbnRy b3B5LWtjYXBpLm8KIG9iai0kKENPTkZJR19DUllQVE9fVEVTVCkgKz0gdGNyeXB0Lm8KIG9iai0k KENPTkZJR19DUllQVE9fR0hBU0gpICs9IGdoYXNoLWdlbmVyaWMubworb2JqLSQoQ09ORklHX0NS WVBUT19QT0xZVkFMKSArPSBwb2x5dmFsLWdlbmVyaWMubwogb2JqLSQoQ09ORklHX0NSWVBUT19V U0VSX0FQSSkgKz0gYWZfYWxnLm8KIG9iai0kKENPTkZJR19DUllQVE9fVVNFUl9BUElfSEFTSCkg Kz0gYWxnaWZfaGFzaC5vCiBvYmotJChDT05GSUdfQ1JZUFRPX1VTRVJfQVBJX1NLQ0lQSEVSKSAr PSBhbGdpZl9za2NpcGhlci5vCmRpZmYgLS1naXQgYS9jcnlwdG8vcG9seXZhbC1nZW5lcmljLmMg Yi9jcnlwdG8vcG9seXZhbC1nZW5lcmljLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw MDAwMDAwMDAwLi4xMzk5YWYxMjViOTMKLS0tIC9kZXYvbnVsbAorKysgYi9jcnlwdG8vcG9seXZh bC1nZW5lcmljLmMKQEAgLTAsMCArMSwyMTQgQEAKKy8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVy OiBHUEwtMi4wLW9ubHkKKy8qCisgKiBQT0xZVkFMOiBoYXNoIGZ1bmN0aW9uIGZvciBIQ1RSMi4K KyAqCisgKiBDb3B5cmlnaHQgKGMpIDIwMDcgTm9raWEgU2llbWVucyBOZXR3b3JrcyAtIE1pa2tv IEhlcnJhbmVuIDxtaDFAaWtpLmZpPgorICogQ29weXJpZ2h0IChjKSAyMDA5IEludGVsIENvcnAu CisgKiAgIEF1dGhvcjogSHVhbmcgWWluZyA8eWluZy5odWFuZ0BpbnRlbC5jb20+CisgKiBDb3B5 cmlnaHQgMjAyMSBHb29nbGUgTExDCisgKi8KKworLyoKKyAqIENvZGUgYmFzZWQgb24gY3J5cHRv L2doYXNoLWdlbmVyaWMuYworICoKKyAqIFBPTFlWQUwgaXMgYSBrZXllZCBoYXNoIGZ1bmN0aW9u IHNpbWlsYXIgdG8gR0hBU0guIFBPTFlWQUwgdXNlcyBhIGRpZmZlcmVudAorICogbW9kdWx1cyBm b3IgZmluaXRlIGZpZWxkIG11bHRpcGxpY2F0aW9uIHdoaWNoIG1ha2VzIGhhcmR3YXJlIGFjY2Vs ZXJhdGVkCisgKiBpbXBsZW1lbnRhdGlvbnMgb24gbGl0dGxlLWVuZGlhbiBtYWNoaW5lcyBmYXN0 ZXIuIFBPTFlWQUwgaXMgdXNlZCBpbiB0aGUKKyAqIGtlcm5lbCB0byBpbXBsZW1lbnQgSENUUjIs IGJ1dCB3YXMgb3JpZ2luYWxseSBzcGVjaWZpZWQgZm9yIEFFUy1HQ00tU0lWCisgKiAoUkZDIDg0 NTIpLgorICoKKyAqIEZvciBtb3JlIGluZm9ybWF0aW9uIHNlZToKKyAqIExlbmd0aC1wcmVzZXJ2 aW5nIGVuY3J5cHRpb24gd2l0aCBIQ1RSMjoKKyAqICAgaHR0cHM6Ly9lcHJpbnQuaWFjci5vcmcv MjAyMS8xNDQxLnBkZgorICogQUVTLUdDTS1TSVY6IE5vbmNlIE1pc3VzZS1SZXNpc3RhbnQgQXV0 aGVudGljYXRlZCBFbmNyeXB0aW9uOgorICogICBodHRwczovL2RhdGF0cmFja2VyLmlldGYub3Jn L2RvYy9odG1sL3JmYzg0NTIKKyAqCisgKiBMaWtlIEdIQVNILCBQT0xZVkFMIGlzIG5vdCBhIGNy eXB0b2dyYXBoaWMgaGFzaCBmdW5jdGlvbiBhbmQgc2hvdWxkCisgKiBub3QgYmUgdXNlZCBvdXRz aWRlIG9mIGNyeXB0byBtb2RlcyBleHBsaWNpdGx5IGRlc2lnbmVkIHRvIHVzZSBQT0xZVkFMLgor ICoKKyAqIFRoaXMgaW1wbGVtZW50YXRpb24gdXNlcyBhIGNvbnZlbmllbnQgdHJpY2sgaW52b2x2 aW5nIHRoZSBHSEFTSCBhbmQgUE9MWVZBTAorICogZmllbGRzLiBUaGlzIHRyaWNrIGFsbG93cyBt dWx0aXBsaWNhdGlvbiBpbiB0aGUgUE9MWVZBTCBmaWVsZCB0byBiZQorICogaW1wbGVtZW50ZWQg YnkgdXNpbmcgbXVsdGlwbGljYXRpb24gaW4gdGhlIEdIQVNIIGZpZWxkIGFzIGEgc3Vicm91dGlu ZS4gQW4KKyAqIGVsZW1lbnQgb2YgdGhlIFBPTFlWQUwgZmllbGQgY2FuIGJlIGNvbnZlcnRlZCB0 byBhbiBlbGVtZW50IG9mIHRoZSBHSEFTSAorICogZmllbGQgYnkgY29tcHV0aW5nIHgqUkVWRVJT RShhKSwgd2hlcmUgUkVWRVJTRSByZXZlcnNlcyB0aGUgYnl0ZS1vcmRlcmluZyBvZgorICogYS4g U2ltaWxhcmx5LCBhbiBlbGVtZW50IG9mIHRoZSBHSEFTSCBmaWVsZCBjYW4gYmUgY29udmVydGVk IGJhY2sgdG8gdGhlCisgKiBQT0xZVkFMIGZpZWxkIGJ5IGNvbXB1dGluZyBSRVZFUlNFKHheey0x fSphKS4gRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZToKKyAqIGh0dHBzOi8vZGF0YXRyYWNrZXIu aWV0Zi5vcmcvZG9jL2h0bWwvcmZjODQ1MiNhcHBlbmRpeC1BCisgKgorICogQnkgdXNpbmcgdGhp cyB0cmljaywgd2UgZG8gbm90IG5lZWQgdG8gaW1wbGVtZW50IHRoZSBQT0xZVkFMIGZpZWxkIGZv ciB0aGUKKyAqIGdlbmVyaWMgaW1wbGVtZW50YXRpb24uCisgKgorICogV2FybmluZzogdGhpcyBn ZW5lcmljIGltcGxlbWVudGF0aW9uIGlzIG5vdCBpbnRlbmRlZCB0byBiZSB1c2VkIGluIHByYWN0 aWNlCisgKiBhbmQgaXMgbm90IGNvbnN0YW50IHRpbWUuIEZvciBwcmFjdGljYWwgdXNlLCBhIGhh cmR3YXJlIGFjY2VsZXJhdGVkCisgKiBpbXBsZW1lbnRhdGlvbiBvZiBQT0xZVkFMIHNob3VsZCBi ZSB1c2VkIGluc3RlYWQuCisgKgorICovCisKKyNpbmNsdWRlIDxhc20vdW5hbGlnbmVkLmg+Cisj aW5jbHVkZSA8Y3J5cHRvL2FsZ2FwaS5oPgorI2luY2x1ZGUgPGNyeXB0by9nZjEyOG11bC5oPgor I2luY2x1ZGUgPGNyeXB0by9wb2x5dmFsLmg+CisjaW5jbHVkZSA8Y3J5cHRvL2ludGVybmFsL2hh c2guaD4KKyNpbmNsdWRlIDxsaW51eC9jcnlwdG8uaD4KKyNpbmNsdWRlIDxsaW51eC9pbml0Lmg+ CisjaW5jbHVkZSA8bGludXgva2VybmVsLmg+CisjaW5jbHVkZSA8bGludXgvbW9kdWxlLmg+CisK K3N0cnVjdCBwb2x5dmFsX3RmbV9jdHggeworCXN0cnVjdCBnZjEyOG11bF80ayAqZ2YxMjg7Cit9 OworCitzdHJ1Y3QgcG9seXZhbF9kZXNjX2N0eCB7CisJdW5pb24geworCQl1OCBidWZmZXJbUE9M WVZBTF9CTE9DS19TSVpFXTsKKwkJYmUxMjggYnVmZmVyMTI4OworCX07CisJdTMyIGJ5dGVzOwor fTsKKworc3RhdGljIGludCBwb2x5dmFsX2luaXQoc3RydWN0IHNoYXNoX2Rlc2MgKmRlc2MpCit7 CisJc3RydWN0IHBvbHl2YWxfZGVzY19jdHggKmRjdHggPSBzaGFzaF9kZXNjX2N0eChkZXNjKTsK KworCW1lbXNldChkY3R4LCAwLCBzaXplb2YoKmRjdHgpKTsKKworCXJldHVybiAwOworfQorCitz dGF0aWMgdm9pZCByZXZlcnNlX2Jsb2NrKHU4IGJsb2NrW1BPTFlWQUxfQkxPQ0tfU0laRV0pCit7 CisJdTY0ICpwMSA9ICh1NjQgKilibG9jazsKKwl1NjQgKnAyID0gKHU2NCAqKSZibG9ja1s4XTsK Kwl1NjQgYSA9IGdldF91bmFsaWduZWQocDEpOworCXU2NCBiID0gZ2V0X3VuYWxpZ25lZChwMik7 CisKKwlwdXRfdW5hbGlnbmVkKHN3YWI2NChhKSwgcDIpOworCXB1dF91bmFsaWduZWQoc3dhYjY0 KGIpLCBwMSk7Cit9CisKK3N0YXRpYyBpbnQgcG9seXZhbF9zZXRrZXkoc3RydWN0IGNyeXB0b19z aGFzaCAqdGZtLAorCQkJY29uc3QgdTggKmtleSwgdW5zaWduZWQgaW50IGtleWxlbikKK3sKKwlz dHJ1Y3QgcG9seXZhbF90Zm1fY3R4ICpjdHggPSBjcnlwdG9fc2hhc2hfY3R4KHRmbSk7CisJYmUx MjggazsKKworCWlmIChrZXlsZW4gIT0gUE9MWVZBTF9CTE9DS19TSVpFKQorCQlyZXR1cm4gLUVJ TlZBTDsKKworCWdmMTI4bXVsX2ZyZWVfNGsoY3R4LT5nZjEyOCk7CisKKwlCVUlMRF9CVUdfT04o c2l6ZW9mKGspICE9IFBPTFlWQUxfQkxPQ0tfU0laRSk7CisJLy8gYXZvaWQgdmlvbGF0aW5nIGFs aWdubWVudCBydWxlcworCW1lbWNweSgmaywga2V5LCBQT0xZVkFMX0JMT0NLX1NJWkUpOworCisJ cmV2ZXJzZV9ibG9jaygodTggKikmayk7CisJZ2YxMjhtdWxfeF9sbGUoJmssICZrKTsKKworCWN0 eC0+Z2YxMjggPSBnZjEyOG11bF9pbml0XzRrX2xsZSgmayk7CisJbWVtemVyb19leHBsaWNpdCgm aywgUE9MWVZBTF9CTE9DS19TSVpFKTsKKworCWlmICghY3R4LT5nZjEyOCkKKwkJcmV0dXJuIC1F Tk9NRU07CisKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIGludCBwb2x5dmFsX3VwZGF0ZShzdHJ1 Y3Qgc2hhc2hfZGVzYyAqZGVzYywKKwkJCSBjb25zdCB1OCAqc3JjLCB1bnNpZ25lZCBpbnQgc3Jj bGVuKQoreworCXN0cnVjdCBwb2x5dmFsX2Rlc2NfY3R4ICpkY3R4ID0gc2hhc2hfZGVzY19jdHgo ZGVzYyk7CisJY29uc3Qgc3RydWN0IHBvbHl2YWxfdGZtX2N0eCAqY3R4ID0gY3J5cHRvX3NoYXNo X2N0eChkZXNjLT50Zm0pOworCXU4ICpwb3M7CisJdTggdG1wW1BPTFlWQUxfQkxPQ0tfU0laRV07 CisJaW50IG47CisKKwlpZiAoZGN0eC0+Ynl0ZXMpIHsKKwkJbiA9IG1pbihzcmNsZW4sIGRjdHgt PmJ5dGVzKTsKKwkJcG9zID0gZGN0eC0+YnVmZmVyICsgZGN0eC0+Ynl0ZXMgLSAxOworCisJCWRj dHgtPmJ5dGVzIC09IG47CisJCXNyY2xlbiAtPSBuOworCisJCXdoaWxlIChuLS0pCisJCQkqcG9z LS0gXj0gKnNyYysrOworCisJCWlmICghZGN0eC0+Ynl0ZXMpCisJCQlnZjEyOG11bF80a19sbGUo JmRjdHgtPmJ1ZmZlcjEyOCwgY3R4LT5nZjEyOCk7CisJfQorCisJd2hpbGUgKHNyY2xlbiA+PSBQ T0xZVkFMX0JMT0NLX1NJWkUpIHsKKwkJbWVtY3B5KHRtcCwgc3JjLCBQT0xZVkFMX0JMT0NLX1NJ WkUpOworCQlyZXZlcnNlX2Jsb2NrKHRtcCk7CisJCWNyeXB0b194b3IoZGN0eC0+YnVmZmVyLCB0 bXAsIFBPTFlWQUxfQkxPQ0tfU0laRSk7CisJCWdmMTI4bXVsXzRrX2xsZSgmZGN0eC0+YnVmZmVy MTI4LCBjdHgtPmdmMTI4KTsKKwkJc3JjICs9IFBPTFlWQUxfQkxPQ0tfU0laRTsKKwkJc3JjbGVu IC09IFBPTFlWQUxfQkxPQ0tfU0laRTsKKwl9CisKKwlpZiAoc3JjbGVuKSB7CisJCWRjdHgtPmJ5 dGVzID0gUE9MWVZBTF9CTE9DS19TSVpFIC0gc3JjbGVuOworCQlwb3MgPSBkY3R4LT5idWZmZXIg KyBQT0xZVkFMX0JMT0NLX1NJWkUgLSAxOworCQl3aGlsZSAoc3JjbGVuLS0pCisJCQkqcG9zLS0g Xj0gKnNyYysrOworCX0KKworCXJldHVybiAwOworfQorCitzdGF0aWMgaW50IHBvbHl2YWxfZmlu YWwoc3RydWN0IHNoYXNoX2Rlc2MgKmRlc2MsIHU4ICpkc3QpCit7CisJc3RydWN0IHBvbHl2YWxf ZGVzY19jdHggKmRjdHggPSBzaGFzaF9kZXNjX2N0eChkZXNjKTsKKwljb25zdCBzdHJ1Y3QgcG9s eXZhbF90Zm1fY3R4ICpjdHggPSBjcnlwdG9fc2hhc2hfY3R4KGRlc2MtPnRmbSk7CisKKwlpZiAo ZGN0eC0+Ynl0ZXMpCisJCWdmMTI4bXVsXzRrX2xsZSgmZGN0eC0+YnVmZmVyMTI4LCBjdHgtPmdm MTI4KTsKKwlkY3R4LT5ieXRlcyA9IDA7CisKKwlyZXZlcnNlX2Jsb2NrKGRjdHgtPmJ1ZmZlcik7 CisJbWVtY3B5KGRzdCwgZGN0eC0+YnVmZmVyLCBQT0xZVkFMX0JMT0NLX1NJWkUpOworCisJcmV0 dXJuIDA7Cit9CisKK3N0YXRpYyB2b2lkIHBvbHl2YWxfZXhpdF90Zm0oc3RydWN0IGNyeXB0b190 Zm0gKnRmbSkKK3sKKwlzdHJ1Y3QgcG9seXZhbF90Zm1fY3R4ICpjdHggPSBjcnlwdG9fdGZtX2N0 eCh0Zm0pOworCisJZ2YxMjhtdWxfZnJlZV80ayhjdHgtPmdmMTI4KTsKK30KKworc3RhdGljIHN0 cnVjdCBzaGFzaF9hbGcgcG9seXZhbF9hbGcgPSB7CisJLmRpZ2VzdHNpemUJPSBQT0xZVkFMX0RJ R0VTVF9TSVpFLAorCS5pbml0CQk9IHBvbHl2YWxfaW5pdCwKKwkudXBkYXRlCQk9IHBvbHl2YWxf dXBkYXRlLAorCS5maW5hbAkJPSBwb2x5dmFsX2ZpbmFsLAorCS5zZXRrZXkJCT0gcG9seXZhbF9z ZXRrZXksCisJLmRlc2NzaXplCT0gc2l6ZW9mKHN0cnVjdCBwb2x5dmFsX2Rlc2NfY3R4KSwKKwku YmFzZQkJPSB7CisJCS5jcmFfbmFtZQkJPSAicG9seXZhbCIsCisJCS5jcmFfZHJpdmVyX25hbWUJ PSAicG9seXZhbC1nZW5lcmljIiwKKwkJLmNyYV9wcmlvcml0eQkJPSAxMDAsCisJCS5jcmFfYmxv Y2tzaXplCQk9IFBPTFlWQUxfQkxPQ0tfU0laRSwKKwkJLmNyYV9jdHhzaXplCQk9IHNpemVvZihz dHJ1Y3QgcG9seXZhbF90Zm1fY3R4KSwKKwkJLmNyYV9tb2R1bGUJCT0gVEhJU19NT0RVTEUsCisJ CS5jcmFfZXhpdAkJPSBwb2x5dmFsX2V4aXRfdGZtLAorCX0sCit9OworCitzdGF0aWMgaW50IF9f aW5pdCBwb2x5dmFsX21vZF9pbml0KHZvaWQpCit7CisJcmV0dXJuIGNyeXB0b19yZWdpc3Rlcl9z aGFzaCgmcG9seXZhbF9hbGcpOworfQorCitzdGF0aWMgdm9pZCBfX2V4aXQgcG9seXZhbF9tb2Rf ZXhpdCh2b2lkKQoreworCWNyeXB0b191bnJlZ2lzdGVyX3NoYXNoKCZwb2x5dmFsX2FsZyk7Cit9 CisKK3N1YnN5c19pbml0Y2FsbChwb2x5dmFsX21vZF9pbml0KTsKK21vZHVsZV9leGl0KHBvbHl2 YWxfbW9kX2V4aXQpOworCitNT0RVTEVfTElDRU5TRSgiR1BMIik7CitNT0RVTEVfREVTQ1JJUFRJ T04oIlBPTFlWQUwgaGFzaCBmdW5jdGlvbiIpOworTU9EVUxFX0FMSUFTX0NSWVBUTygicG9seXZh bCIpOworTU9EVUxFX0FMSUFTX0NSWVBUTygicG9seXZhbC1nZW5lcmljIik7CmRpZmYgLS1naXQg YS9jcnlwdG8vdGNyeXB0LmMgYi9jcnlwdG8vdGNyeXB0LmMKaW5kZXggZmQ2NzFkMGUyMDEyLi5k ZDljZjIxNjAyOWIgMTAwNjQ0Ci0tLSBhL2NyeXB0by90Y3J5cHQuYworKysgYi9jcnlwdG8vdGNy eXB0LmMKQEAgLTE3MzAsNiArMTczMCwxMCBAQCBzdGF0aWMgaW50IGRvX3Rlc3QoY29uc3QgY2hh ciAqYWxnLCB1MzIgdHlwZSwgdTMyIG1hc2ssIGludCBtLCB1MzIgbnVtX21iKQogCQlyZXQgKz0g dGNyeXB0X3Rlc3QoImNjbShzbTQpIik7CiAJCWJyZWFrOwogCisJY2FzZSA1NzoKKwkJcmV0ICs9 IHRjcnlwdF90ZXN0KCJwb2x5dmFsIik7CisJCWJyZWFrOworCiAJY2FzZSAxMDA6CiAJCXJldCAr PSB0Y3J5cHRfdGVzdCgiaG1hYyhtZDUpIik7CiAJCWJyZWFrOwpkaWZmIC0tZ2l0IGEvY3J5cHRv L3Rlc3RtZ3IuYyBiL2NyeXB0by90ZXN0bWdyLmMKaW5kZXggZmJiMTJkN2Q3OGFmLi5kODA3YjIw MGVkZjYgMTAwNjQ0Ci0tLSBhL2NyeXB0by90ZXN0bWdyLmMKKysrIGIvY3J5cHRvL3Rlc3RtZ3Iu YwpAQCAtNTI4NCw2ICs1Mjg0LDEyIEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgYWxnX3Rlc3RfZGVz YyBhbGdfdGVzdF9kZXNjc1tdID0gewogCQkuc3VpdGUgPSB7CiAJCQkuaGFzaCA9IF9fVkVDUyhw b2x5MTMwNV90dl90ZW1wbGF0ZSkKIAkJfQorCX0sIHsKKwkJLmFsZyA9ICJwb2x5dmFsIiwKKwkJ LnRlc3QgPSBhbGdfdGVzdF9oYXNoLAorCQkuc3VpdGUgPSB7CisJCQkuaGFzaCA9IF9fVkVDUyhw b2x5dmFsX3R2X3RlbXBsYXRlKQorCQl9CiAJfSwgewogCQkuYWxnID0gInJmYzM2ODYoY3RyKGFl cykpIiwKIAkJLnRlc3QgPSBhbGdfdGVzdF9za2NpcGhlciwKZGlmZiAtLWdpdCBhL2NyeXB0by90 ZXN0bWdyLmggYi9jcnlwdG8vdGVzdG1nci5oCmluZGV4IGJmNGZmOTdlZWIzNy4uYzU4MWU1NDA1 OTE2IDEwMDY0NAotLS0gYS9jcnlwdG8vdGVzdG1nci5oCisrKyBiL2NyeXB0by90ZXN0bWdyLmgK QEAgLTM0OTI5LDQgKzM0OTI5LDE3NSBAQCBzdGF0aWMgY29uc3Qgc3RydWN0IGNpcGhlcl90ZXN0 dmVjIGFlc194Y3RyX3R2X3RlbXBsYXRlW10gPSB7CiAKIH07CiAKKy8qCisgKiBUZXN0IHZlY3Rv cnMgZ2VuZXJhdGVkIHVzaW5nIGh0dHBzOi8vZ2l0aHViLmNvbS9nb29nbGUvaGN0cjIKKyAqCisg KiBUbyBlbnN1cmUgY29tcGF0aWJpbGl0eSB3aXRoIFJGQyA4NDUyLCBzb21lIHRlc3RzIHdlcmUg c291cmNlZCBmcm9tCisgKiBodHRwczovL2RhdGF0cmFja2VyLmlldGYub3JnL2RvYy9odG1sL3Jm Yzg0NTIKKyAqLworc3RhdGljIGNvbnN0IHN0cnVjdCBoYXNoX3Rlc3R2ZWMgcG9seXZhbF90dl90 ZW1wbGF0ZVtdID0geworCXsgLy8gRnJvbSBSRkMgODQ1MgorCQkua2V5CT0gIlx4MzFceDA3XHgy OFx4ZDlceDkxXHgxZlx4MWZceDM4IgorCQkJICAiXHgzN1x4YjJceDQzXHgxNlx4YzNceGZhXHhi OVx4YTAiLAorCQkucGxhaW50ZXh0CT0gIlx4NjVceDc4XHg2MVx4NmRceDcwXHg2Y1x4NjVceDAw IgorCQkJICAiXHgwMFx4MDBceDAwXHgwMFx4MDBceDAwXHgwMFx4MDAiCisJCQkgICJceDQ4XHg2 NVx4NmNceDZjXHg2Zlx4MjBceDc3XHg2ZiIKKwkJCSAgIlx4NzJceDZjXHg2NFx4MDBceDAwXHgw MFx4MDBceDAwIgorCQkJICAiXHgzOFx4MDBceDAwXHgwMFx4MDBceDAwXHgwMFx4MDAiCisJCQkg ICJceDU4XHgwMFx4MDBceDAwXHgwMFx4MDBceDAwXHgwMCIsCisJCS5kaWdlc3QJPSAiXHhhZFx4 N2ZceGNmXHgwYlx4NTFceDY5XHg4NVx4MTYiCisJCQkgICJceDYyXHg2N1x4MmZceDNjXHg1Zlx4 OTVceDEzXHg4ZiIsCisJCS5wc2l6ZQk9IDQ4LAorCQkua3NpemUJPSAxNiwKKwl9LAorCXsgLy8g RnJvbSBSRkMgODQ1MgorCQkua2V5CT0gIlx4ZDlceGIzXHg2MFx4MjdceDk2XHg5NFx4OTRceDFh IgorCQkJICAiXHhjNVx4ZGJceGM2XHg5OFx4N2FceGRhXHg3M1x4NzciLAorCQkucGxhaW50ZXh0 CT0gIlx4MDBceDAwXHgwMFx4MDBceDAwXHgwMFx4MDBceDAwIgorCQkJICAiXHgwMFx4MDBceDAw XHgwMFx4MDBceDAwXHgwMFx4MDAiLAorCQkuZGlnZXN0CT0gIlx4MDBceDAwXHgwMFx4MDBceDAw XHgwMFx4MDBceDAwIgorCQkJICAiXHgwMFx4MDBceDAwXHgwMFx4MDBceDAwXHgwMFx4MDAiLAor CQkucHNpemUJPSAxNiwKKwkJLmtzaXplCT0gMTYsCisJfSwKKwl7IC8vIEZyb20gUkZDIDg0NTIK KwkJLmtleQk9ICJceGQ5XHhiM1x4NjBceDI3XHg5Nlx4OTRceDk0XHgxYSIKKwkJCSAgIlx4YzVc eGRiXHhjNlx4OThceDdhXHhkYVx4NzNceDc3IiwKKwkJLnBsYWludGV4dAk9ICJceDAxXHgwMFx4 MDBceDAwXHgwMFx4MDBceDAwXHgwMCIKKwkJCSAgIlx4MDBceDAwXHgwMFx4MDBceDAwXHgwMFx4 MDBceDAwIgorCQkJICAiXHgwMFx4MDBceDAwXHgwMFx4MDBceDAwXHgwMFx4MDAiCisJCQkgICJc eDQwXHgwMFx4MDBceDAwXHgwMFx4MDBceDAwXHgwMCIsCisJCS5kaWdlc3QJPSAiXHhlYlx4OTNc eGI3XHg3NFx4MDlceDYyXHhjNVx4ZTQiCisJCQkgICJceDlkXHgyYVx4OTBceGE3XHhkY1x4NWNc eGVjXHg3NCIsCisJCS5wc2l6ZQk9IDMyLAorCQkua3NpemUJPSAxNiwKKwl9LAorCXsgLy8gRnJv bSBSRkMgODQ1MgorCQkua2V5CT0gIlx4ZDlceGIzXHg2MFx4MjdceDk2XHg5NFx4OTRceDFhIgor CQkJICAiXHhjNVx4ZGJceGM2XHg5OFx4N2FceGRhXHg3M1x4NzciLAorCQkucGxhaW50ZXh0CT0g Ilx4MDFceDAwXHgwMFx4MDBceDAwXHgwMFx4MDBceDAwIgorCQkJICAiXHgwMFx4MDBceDAwXHgw MFx4MDBceDAwXHgwMFx4MDAiCisJCQkgICJceDAyXHgwMFx4MDBceDAwXHgwMFx4MDBceDAwXHgw MCIKKwkJCSAgIlx4MDBceDAwXHgwMFx4MDBceDAwXHgwMFx4MDBceDAwIgorCQkJICAiXHgwM1x4 MDBceDAwXHgwMFx4MDBceDAwXHgwMFx4MDAiCisJCQkgICJceDAwXHgwMFx4MDBceDAwXHgwMFx4 MDBceDAwXHgwMCIKKwkJCSAgIlx4MDBceDAwXHgwMFx4MDBceDAwXHgwMFx4MDBceDAwIgorCQkJ ICAiXHg4MFx4MDFceDAwXHgwMFx4MDBceDAwXHgwMFx4MDAiLAorCQkuZGlnZXN0CT0gIlx4ODFc eDM4XHg4N1x4NDZceGJjXHgyMlx4ZDJceDZiIgorCQkJICAiXHgyYVx4YmNceDNkXHhjYlx4MTVc eDc1XHg0Mlx4MjIiLAorCQkucHNpemUJPSA2NCwKKwkJLmtzaXplCT0gMTYsCisJfSwKKwl7IC8v IEZyb20gUkZDIDg0NTIKKwkJLmtleQk9ICJceGQ5XHhiM1x4NjBceDI3XHg5Nlx4OTRceDk0XHgx YSIKKwkJCSAgIlx4YzVceGRiXHhjNlx4OThceDdhXHhkYVx4NzNceDc3IiwKKwkJLnBsYWludGV4 dAk9ICJceDAxXHgwMFx4MDBceDAwXHgwMFx4MDBceDAwXHgwMCIKKwkJCSAgIlx4MDBceDAwXHgw MFx4MDBceDAwXHgwMFx4MDBceDAwIgorCQkJICAiXHgwMlx4MDBceDAwXHgwMFx4MDBceDAwXHgw MFx4MDAiCisJCQkgICJceDAwXHgwMFx4MDBceDAwXHgwMFx4MDBceDAwXHgwMCIKKwkJCSAgIlx4 MDNceDAwXHgwMFx4MDBceDAwXHgwMFx4MDBceDAwIgorCQkJICAiXHgwMFx4MDBceDAwXHgwMFx4 MDBceDAwXHgwMFx4MDAiCisJCQkgICJceDA0XHgwMFx4MDBceDAwXHgwMFx4MDBceDAwXHgwMCIK KwkJCSAgIlx4MDBceDAwXHgwMFx4MDBceDAwXHgwMFx4MDBceDAwIgorCQkJICAiXHgwMFx4MDBc eDAwXHgwMFx4MDBceDAwXHgwMFx4MDAiCisJCQkgICJceDAwXHgwMlx4MDBceDAwXHgwMFx4MDBc eDAwXHgwMCIsCisJCS5kaWdlc3QJPSAiXHgxZVx4MzlceGI2XHhkM1x4MzRceDRkXHgzNFx4OGYi CisJCQkgICJceDYwXHg0NFx4ZjhceDk5XHgzNVx4ZDFceGNmXHg3OCIsCisJCS5wc2l6ZQk9IDgw LAorCQkua3NpemUJPSAxNiwKKwl9LAorCXsgLy8gRnJvbSBSRkMgODQ1MgorCQkua2V5CT0gIlx4 ZDlceGIzXHg2MFx4MjdceDk2XHg5NFx4OTRceDFhIgorCQkJICAiXHhjNVx4ZGJceGM2XHg5OFx4 N2FceGRhXHg3M1x4NzciLAorCQkucGxhaW50ZXh0CT0gIlx4MDFceDAwXHgwMFx4MDBceDAwXHgw MFx4MDBceDAwIgorCQkJICAiXHgwMFx4MDBceDAwXHgwMFx4MDBceDAwXHgwMFx4MDAiCisJCQkg ICJceDAyXHgwMFx4MDBceDAwXHgwMFx4MDBceDAwXHgwMCIKKwkJCSAgIlx4MDBceDAwXHgwMFx4 MDBceDAwXHgwMFx4MDBceDAwIgorCQkJICAiXHgwM1x4MDBceDAwXHgwMFx4MDBceDAwXHgwMFx4 MDAiCisJCQkgICJceDAwXHgwMFx4MDBceDAwXHgwMFx4MDBceDAwXHgwMCIKKwkJCSAgIlx4MDRc eDAwXHgwMFx4MDBceDAwXHgwMFx4MDBceDAwIgorCQkJICAiXHgwMFx4MDBceDAwXHgwMFx4MDBc eDAwXHgwMFx4MDAiCisJCQkgICJceDA1XHgwMFx4MDBceDAwXHgwMFx4MDBceDAwXHgwMCIKKwkJ CSAgIlx4MDBceDAwXHgwMFx4MDBceDAwXHgwMFx4MDBceDAwIgorCQkJICAiXHgwOFx4MDBceDAw XHgwMFx4MDBceDAwXHgwMFx4MDAiCisJCQkgICJceDAwXHgwMlx4MDBceDAwXHgwMFx4MDBceDAw XHgwMCIsCisJCS5kaWdlc3QJPSAiXHhmZlx4Y2RceDA1XHhkNVx4NzdceDBmXHgzNFx4YWQiCisJ CQkgICJceDkyXHg2N1x4ZjBceGE1XHg5OVx4OTRceGIxXHg1YSIsCisJCS5wc2l6ZQk9IDk2LAor CQkua3NpemUJPSAxNiwKKwl9LAorCXsgLy8gUmFuZG9tICggMSkKKwkJLmtleQk9ICJceDkwXHhj Y1x4YWNceGVlXHhiYVx4ZDdceGQ0XHg2OCIKKwkJCSAgIlx4OThceGE2XHg3OVx4NzBceGRmXHg2 Nlx4MTVceDZjIiwKKwkJLnBsYWludGV4dAk9ICIiLAorCQkuZGlnZXN0CT0gIlx4MDBceDAwXHgw MFx4MDBceDAwXHgwMFx4MDBceDAwIgorCQkJICAiXHgwMFx4MDBceDAwXHgwMFx4MDBceDAwXHgw MFx4MDAiLAorCQkucHNpemUJPSAwLAorCQkua3NpemUJPSAxNiwKKwl9LAorCXsgLy8gUmFuZG9t ICggMSkKKwkJLmtleQk9ICJceGMxXHg0NVx4NzFceGYwXHgzMFx4MDdceDk0XHhlNyIKKwkJCSAg Ilx4M2FceGRkXHhlNFx4YzZceDE5XHgyZFx4MDJceGEyIiwKKwkJLnBsYWludGV4dAk9ICJceGMx XHg1ZFx4NDdceGM3XHg0Y1x4N2NceDVlXHgwNyIKKwkJCSAgIlx4ODVceDE0XHg4Zlx4NzlceGNj XHg3M1x4ODNceGY3IgorCQkJICAiXHgzNVx4YjhceGNiXHg3M1x4NjFceGYwXHg1M1x4MzEiCisJ CQkgICJceGJmXHg4NFx4ZGVceGI2XHhkZVx4YWZceGIwXHhiOCIKKwkJCSAgIlx4YjdceGQ5XHgx MVx4OTFceDg5XHhmZFx4MWVceDRjIgorCQkJICAiXHg4NFx4NGFceDFmXHgyYVx4ODdceGE0XHhh Zlx4NjIiCisJCQkgICJceDhkXHg3ZFx4NThceGY2XHg0M1x4MzVceGZjXHg1MyIKKwkJCSAgIlx4 OGZceDFhXHhmNlx4MTJceGUxXHgxM1x4M2ZceDY2IgorCQkJICAiXHg5MVx4NGJceDEzXHhkNlx4 NDVceGZiXHhiMFx4N2EiCisJCQkgICJceGUwXHg4Ylx4OGVceDk5XHhmN1x4ODZceDQ2XHgzNyIK KwkJCSAgIlx4ZDFceDIyXHg5ZVx4NTJceGYzXHgzZlx4ZDlceDc1IgorCQkJICAiXHgyY1x4MmNc eGM2XHhiYlx4MGVceDA4XHgxNFx4MjkiCisJCQkgICJceGU4XHg1MFx4MmZceGQ4XHhiZVx4ZjRc eGU5XHg2OSIKKwkJCSAgIlx4NGFceGVlXHhmN1x4YWVceDE1XHg2NVx4MzVceDFlIiwKKwkJLmRp Z2VzdAk9ICJceDAwXHg0Zlx4NWRceGU5XHgzYlx4YzBceGQ2XHg1MCIKKwkJCSAgIlx4M2VceDM4 XHg3M1x4ODZceGM2XHhkYVx4Y2FceDdmIiwKKwkJLnBzaXplCT0gMTEyLAorCQkua3NpemUJPSAx NiwKKwl9LAorCXsgLy8gUmFuZG9tICggMSkKKwkJLmtleQk9ICJceDM3XHhiZVx4NjhceDE2XHg1 MFx4YjlceDRlXHhiMCIKKwkJCSAgIlx4NDdceGRlXHhlMlx4YmRceGRlXHhlNFx4NDhceDA5IiwK KwkJLnBsYWludGV4dAk9ICJceDg3XHhmY1x4NjhceDlmXHhmZlx4ZjJceDRhXHgxZSIKKwkJCSAg Ilx4ODJceDNiXHg3M1x4OGZceGMxXHhiMlx4MWJceDdhIgorCQkJICAiXHg2Y1x4NGZceDgxXHhi Y1x4ODhceDliXHg2Y1x4YTMiCisJCQkgICJceDljXHhjMlx4YTVceGJjXHgxNFx4NzBceDRjXHg5 YiIKKwkJCSAgIlx4MGNceDlmXHg1OVx4OTJceDE2XHg0Ylx4OTFceDNkIgorCQkJICAiXHgxOFx4 NTVceDIyXHg2OFx4MTJceDhjXHg2M1x4YjIiCisJCQkgICJceDUxXHhjYlx4ODVceDRiXHhkMlx4 YWVceDBiXHgxYyIKKwkJCSAgIlx4NWRceDI4XHg5ZFx4MWRceGIxXHhjOFx4ZjBceDc3IgorCQkJ ICAiXHhlOVx4YjVceDA3XHg0ZVx4MDZceGM4XHhlZVx4ZjgiCisJCQkgICJceDFiXHhlZFx4NzJc eDJhXHg1NVx4N2RceDE2XHhjOSIKKwkJCSAgIlx4ZjJceDU0XHhlN1x4ZTlceGUwXHg0NFx4NWJc eDMzIgorCQkJICAiXHhiMVx4NDlceGVlXHhmZlx4NDNceGZiXHg4Mlx4Y2QiCisJCQkgICJceDRh XHg3MFx4NzhceDgxXHhhNFx4MzRceDM2XHhlOCIKKwkJCSAgIlx4NGNceDI4XHg1NFx4YTZceDZj XHhjM1x4NmJceDc4IgorCQkJICAiXHhlN1x4YzBceDVkXHhjNlx4NWRceDgxXHhhYlx4NzAiCisJ CQkgICJceDA4XHg4Nlx4YTFceGZkXHhmNFx4NzdceDU1XHhmZCIKKwkJCSAgIlx4YTNceGU5XHhl Mlx4MWJceGRmXHg5OVx4YjdceDgwIgorCQkJICAiXHhmOVx4MGFceDRmXHg3Mlx4NGFceGQzXHhh Zlx4YmIiCisJCQkgICJceGIzXHgzYlx4ZWJceDA4XHg1OFx4MGZceDc5XHhjZSIKKwkJCSAgIlx4 YTVceDk5XHgwNVx4MTJceDM0XHhkNFx4ZjRceDg2IgorCQkJICAiXHgzN1x4MjNceDFkXHhjOFx4 NDlceGMwXHg5Mlx4YWUiCisJCQkgICJceGE2XHhhY1x4OWJceDMxXHg1NVx4ZWRceDE1XHhjNiIK KwkJCSAgIlx4MDVceDE3XHgzN1x4OGRceDkwXHg0Mlx4ZTRceDg3IgorCQkJICAiXHg4OVx4NjJc eDg4XHg2OVx4MWNceDZhXHhmZFx4ZTMiCisJCQkgICJceDAwXHgyYlx4NDdceDFhXHg3M1x4YzFc eDUxXHhjMiIKKwkJCSAgIlx4YzBceDYyXHg3NFx4NmFceDllXHhiMlx4ZTVceDIxIgorCQkJICAi XHhiZVx4OTBceGI1XHhiMFx4NTBceGNhXHg4OFx4NjgiCisJCQkgICJceGUxXHg5ZFx4N2FceGRm XHg2Y1x4YjdceGI5XHg5OCIKKwkJCSAgIlx4ZWVceDI4XHg2Mlx4NjFceDhiXHhkMVx4NDdceGY5 IgorCQkJICAiXHgwNFx4N2FceDBiXHg1ZFx4Y2RceDJiXHg2NVx4ZjUiCisJCQkgICJceDEyXHhh M1x4ZmVceDFhXHhhYVx4MmNceDc4XHg0MiIKKwkJCSAgIlx4YjhceGJlXHg3ZFx4NzRceGViXHg1 OVx4YmFceGJhIiwKKwkJLmRpZ2VzdAk9ICJceGFlXHgxMVx4ZDRceDYwXHgyYVx4NWZceDllXHg0 MiIKKwkJCSAgIlx4ODlceDA0XHhjMlx4MzRceDhkXHg1NVx4OTRceDBhIiwKKwkJLnBzaXplCT0g MjU2LAorCQkua3NpemUJPSAxNiwKKwl9LAorCit9OworCiAjZW5kaWYJLyogX0NSWVBUT19URVNU TUdSX0ggKi8KZGlmZiAtLWdpdCBhL2luY2x1ZGUvY3J5cHRvL3BvbHl2YWwuaCBiL2luY2x1ZGUv Y3J5cHRvL3BvbHl2YWwuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAu LmIxNGMzOGFhOTE2NgotLS0gL2Rldi9udWxsCisrKyBiL2luY2x1ZGUvY3J5cHRvL3BvbHl2YWwu aApAQCAtMCwwICsxLDE3IEBACisvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogR1BMLTIuMCAq LworLyoKKyAqIENvbW1vbiB2YWx1ZXMgZm9yIHRoZSBQb2x5dmFsIGhhc2ggYWxnb3JpdGhtCisg KgorICogQ29weXJpZ2h0IDIwMjEgR29vZ2xlIExMQworICovCisKKyNpZm5kZWYgX0NSWVBUT19Q T0xZVkFMX0gKKyNkZWZpbmUgX0NSWVBUT19QT0xZVkFMX0gKKworI2luY2x1ZGUgPGxpbnV4L3R5 cGVzLmg+CisjaW5jbHVkZSA8bGludXgvY3J5cHRvLmg+CisKKyNkZWZpbmUgUE9MWVZBTF9CTE9D S19TSVpFCTE2CisjZGVmaW5lIFBPTFlWQUxfRElHRVNUX1NJWkUJMTYKKworI2VuZGlmCi0tIAoy LjM1LjEuMTE3OC5nNGYxNjU5ZDQ3Ni1nb29nCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX18KbGludXgtYXJtLWtlcm5lbCBtYWlsaW5nIGxpc3QKbGludXgt YXJtLWtlcm5lbEBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3Jn L21haWxtYW4vbGlzdGluZm8vbGludXgtYXJtLWtlcm5lbAo=