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 CD17DC433EF for ; Tue, 15 Mar 2022 23:03:43 +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=SV0sUhIQRlCihI9jUSpp47qt5VW0+zJFMbh/W99qdrw=; b=MaTDjnw927TpWyfmaxEJ0sey2d o2TqyNog2AaplyrpGCt4Dya7OCr8tPvwYVx8LkIRMFjpTV+cflafuZ/VzVqh+hBc1ZrfWKYgcuSqN on7yQhQhcNRxWMsh4hhqWBzgfl7Wv4sG5LYtUmsKWocR8A1Hgqr1tsMCS7b8M9zvzsfjdvGdOVg28 wv3+/b54S9UpugKSm7i4+5FyWapcKpJAzboO6S29B4jhUM63zChhN9koIrpJlVqYzHbUoqRDpuKDA z9/pIb42nmXZdyHrQXtVHMUWBIR1bzWmN991GU2XGYqJYC96D4SaYAJFOiOH/uL5Wmyo5eyhdKNOb 34K1Ar7A==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1nUGBE-00ApA3-2p; Tue, 15 Mar 2022 23:02:16 +0000 Received: from mail-ua1-x94a.google.com ([2607:f8b0:4864:20::94a]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1nUG9t-00AoZI-AM for linux-arm-kernel@lists.infradead.org; Tue, 15 Mar 2022 23:01:01 +0000 Received: by mail-ua1-x94a.google.com with SMTP id j16-20020ab01850000000b003517f6bb1easo260758uag.10 for ; Tue, 15 Mar 2022 16:00:52 -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=iH/V8e2buPqubTxZhNnRyACzgsnni2qZCXl7qp60EMo=; b=j5477FuN+SaPlfGrvz72kLBonXt8HthDzmawyZiQ2rj58sDrpvlb/O66W4Bzf9Rauo /TCY3AtB9bZ93Z1zLjMIXBcEXJx5hbpvgxcw8mHjiBj0wu14CzCDyWUZf9aYWFF9R/Q+ 5NoisfG7eh5vus6/Punn8HNCvRr0RHNj1TxiNUbLFJgC/hWjtbRE9U87pb50Xi85Cpx8 OcqV+A/uTyB5CNe1rsnb86VB+EGDiCh6vgKHtUJT6kQZVIqkeNdlLLQPRRC2x8UVxwDf DfggGIYpt8RGR2SxuWDHFqvLuz/W/dGYs45As85f60nJrgZQkOb6F1cNYKeH6Gi5foD0 vZzQ== 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=iH/V8e2buPqubTxZhNnRyACzgsnni2qZCXl7qp60EMo=; b=DP+azhwR1er5vyASD4v4vbHIY9wRfhVcKbo8rDSkgMGeKZSDqri/j0Pb2i/JFwIFZB uGP4yYp90tztd+4afgnczAewfCGA62WKvRFJKu+lth9Bt4p0ArNL/dHRFDgQotI1wblV FY2kxOM5kY8jo5arMDqmYchpMytixfyse7q//cOJBpzQnHzbxZSKiSafst/TTzl70U6N jVesYQUeWEe5qC40Cf4f066phXQ07ftQIsge6r/6o9ELZIhIVhyFJOBpq9RNFXBE3TC3 fZL70k9kqF2MOm9NIGaGMl45i1Z/prGuz7XmBOIs2S4OoBhSb52nF+H7L0ARRKoal2fT XVzg== X-Gm-Message-State: AOAM531m58tokQYc6xzbgvGvRhXgAAZQq354Y0a/tn2TwNkkBHDEtpfF QPKRVzlGs+qRqJ3A30fGFs3HCgXacA== X-Google-Smtp-Source: ABdhPJxVY1jankYuyh9aj9iNRPjBSNtcF21/2c0ayaLd3MsOmHpw3vE7bcERP6bTFMqx0ijM4oLm4jbnSQ== X-Received: from nhuck.c.googlers.com ([fda3:e722:ac3:cc00:14:4d90:c0a8:39cc]) (user=nhuck job=sendgmr) by 2002:a05:6122:7cd:b0:337:ea26:4e7a with SMTP id l13-20020a05612207cd00b00337ea264e7amr12164659vkr.30.1647385251894; Tue, 15 Mar 2022 16:00:51 -0700 (PDT) Date: Tue, 15 Mar 2022 23:00:30 +0000 In-Reply-To: <20220315230035.3792663-1-nhuck@google.com> Message-Id: <20220315230035.3792663-4-nhuck@google.com> Mime-Version: 1.0 References: <20220315230035.3792663-1-nhuck@google.com> X-Mailer: git-send-email 2.35.1.723.g4982287a31-goog Subject: [PATCH v3 3/8] crypto: hctr2 - Add HCTR2 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 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220315_160053_427547_654CBD1B X-CRM114-Status: GOOD ( 25.51 ) 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 QWRkIHN1cHBvcnQgZm9yIEhDVFIyIGFzIGEgdGVtcGxhdGUuICBIQ1RSMiBpcyBhIGxlbmd0aC1w cmVzZXJ2aW5nCmVuY3J5cHRpb24gbW9kZSB0aGF0IGlzIGVmZmljaWVudCBvbiBwcm9jZXNzb3Jz IHdpdGggaW5zdHJ1Y3Rpb25zIHRvCmFjY2VsZXJhdGUgQUVTIGFuZCBjYXJyeWxlc3MgbXVsdGlw bGljYXRpb24sIGUuZy4geDg2IHByb2Nlc3NvcnMgd2l0aApBRVMtTkkgYW5kIENMTVVMLCBhbmQg QVJNIHByb2Nlc3NvcnMgd2l0aCB0aGUgQVJNdjggQ3J5cHRvIEV4dGVuc2lvbnMuCgpBcyBhIGxl bmd0aC1wcmVzZXJ2aW5nIGVuY3J5cHRpb24gbW9kZSwgSENUUjIgaXMgc3VpdGFibGUgZm9yCmFw cGxpY2F0aW9ucyBzdWNoIGFzIHN0b3JhZ2UgZW5jcnlwdGlvbiB3aGVyZSBjaXBoZXJ0ZXh0IGV4 cGFuc2lvbiBpcwpub3QgcG9zc2libGUsIGFuZCB0aHVzIGF1dGhlbnRpY2F0ZWQgZW5jcnlwdGlv biBjYW5ub3QgYmUgdXNlZC4KQ3VycmVudGx5LCBzdWNoIGFwcGxpY2F0aW9ucyB1c3VhbGx5IHVz ZSBYVFMsIG9yIGluIHNvbWUgY2FzZXMgQWRpYW50dW0uClhUUyBoYXMgdGhlIGRpc2FkdmFudGFn ZSB0aGF0IGl0IGlzIGEgbmFycm93LWJsb2NrIG1vZGU6IGEgYml0ZmxpcCB3aWxsCm9ubHkgY2hh bmdlIDE2IGJ5dGVzIGluIHRoZSByZXN1bHRpbmcgY2lwaGVydGV4dCBvciBwbGFpbnRleHQuICBU aGlzCnJldmVhbHMgbW9yZSBpbmZvcm1hdGlvbiB0byBhbiBhdHRhY2tlciB0aGFuIG5lY2Vzc2Fy eS4KCkhDVFIyIGlzIGEgd2lkZS1ibG9jayBtb2RlLCBzbyBpdCBwcm92aWRlcyBhIHN0cm9uZ2Vy IHNlY3VyaXR5IHByb3BlcnR5OgphIGJpdGZsaXAgd2lsbCBjaGFuZ2UgdGhlIGVudGlyZSBtZXNz YWdlLiAgSENUUjIgaXMgc29tZXdoYXQgc2ltaWxhciB0bwpBZGlhbnR1bSwgd2hpY2ggaXMgYWxz byBhIHdpZGUtYmxvY2sgbW9kZS4gIEhvd2V2ZXIsIEhDVFIyIGlzIGRlc2lnbmVkCnRvIHRha2Ug YWR2YW50YWdlIG9mIGV4aXN0aW5nIGNyeXB0byBpbnN0cnVjdGlvbnMsIHdoaWxlIEFkaWFudHVt CnRhcmdldHMgZGV2aWNlcyB3aXRob3V0IHN1Y2ggaGFyZHdhcmUgc3VwcG9ydC4gIEFkaWFudHVt IGlzIGFsc28KZGVzaWduZWQgd2l0aCBsb25nZXIgbWVzc2FnZXMgaW4gbWluZCwgd2hpbGUgSENU UjIgaXMgZGVzaWduZWQgdG8gYmUKZWZmaWNpZW50IGV2ZW4gb24gc2hvcnQgbWVzc2FnZXMuCgpI Q1RSMiByZXF1aXJlcyBQT0xZVkFMIGFuZCBYQ1RSIGFzIGNvbXBvbmVudHMuICBNb3JlIGluZm9y bWF0aW9uIG9uCkhDVFIyIGNhbiBiZSBmb3VuZCBoZXJlOiBMZW5ndGgtcHJlc2VydmluZyBlbmNy eXB0aW9uIHdpdGggSENUUjI6Cmh0dHBzOi8vZXByaW50LmlhY3Iub3JnLzIwMjEvMTQ0MS5wZGYK ClNpZ25lZC1vZmYtYnk6IE5hdGhhbiBIdWNrbGViZXJyeSA8bmh1Y2tAZ29vZ2xlLmNvbT4KLS0t CiBjcnlwdG8vS2NvbmZpZyAgIHwgIDExICsKIGNyeXB0by9NYWtlZmlsZSAgfCAgIDEgKwogY3J5 cHRvL2hjdHIyLmMgICB8IDU4MCArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrCiBjcnlwdG8vdGNyeXB0LmMgIHwgICA1ICsKIGNyeXB0by90ZXN0bWdyLmMgfCAgIDggKwog Y3J5cHRvL3Rlc3RtZ3IuaCB8IDY3MiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKwogNiBmaWxlcyBjaGFuZ2VkLCAxMjc3IGluc2VydGlvbnMoKykKIGNyZWF0 ZSBtb2RlIDEwMDY0NCBjcnlwdG8vaGN0cjIuYwoKZGlmZiAtLWdpdCBhL2NyeXB0by9LY29uZmln IGIvY3J5cHRvL0tjb25maWcKaW5kZXggMDAxMzk4NDVkNzZkLi4wZGVkYmE3NGRiNGEgMTAwNjQ0 Ci0tLSBhL2NyeXB0by9LY29uZmlnCisrKyBiL2NyeXB0by9LY29uZmlnCkBAIC01MzIsNiArNTMy LDE3IEBAIGNvbmZpZyBDUllQVE9fQURJQU5UVU0KIAogCSAgSWYgdW5zdXJlLCBzYXkgTi4KIAor Y29uZmlnIENSWVBUT19IQ1RSMgorCXRyaXN0YXRlICJIQ1RSMiBzdXBwb3J0IgorCXNlbGVjdCBD UllQVE9fWENUUgorCXNlbGVjdCBDUllQVE9fUE9MWVZBTAorCXNlbGVjdCBDUllQVE9fTUFOQUdF UgorCWhlbHAKKwkgIEhDVFIyIGlzIGEgbGVuZ3RoLXByZXNlcnZpbmcgZW5jcnlwdGlvbiBtb2Rl IGZvciBzdG9yYWdlIGVuY3J5cHRpb24gdGhhdAorCSAgaXMgZWZmaWNpZW50IG9uIHByb2Nlc3Nv cnMgd2l0aCBpbnN0cnVjdGlvbnMgdG8gYWNjZWxlcmF0ZSBBRVMgYW5kCisJICBjYXJyeWxlc3Mg bXVsdGlwbGljYXRpb24sIGUuZy4geDg2IHByb2Nlc3NvcnMgd2l0aCBBRVMtTkkgYW5kIENMTVVM LCBhbmQKKwkgIEFSTSBwcm9jZXNzb3JzIHdpdGggdGhlIEFSTXY4IGNyeXB0byBleHRlbnNpb25z LgorCiBjb25maWcgQ1JZUFRPX0VTU0lWCiAJdHJpc3RhdGUgIkVTU0lWIHN1cHBvcnQgZm9yIGJs b2NrIGVuY3J5cHRpb24iCiAJc2VsZWN0IENSWVBUT19BVVRIRU5DCmRpZmYgLS1naXQgYS9jcnlw dG8vTWFrZWZpbGUgYi9jcnlwdG8vTWFrZWZpbGUKaW5kZXggNTYxZjkwMWE5MWQ0Li4yZGNhOWRi ZGVkZTYgMTAwNjQ0Ci0tLSBhL2NyeXB0by9NYWtlZmlsZQorKysgYi9jcnlwdG8vTWFrZWZpbGUK QEAgLTk0LDYgKzk0LDcgQEAgb2JqLSQoQ09ORklHX0NSWVBUT19MUlcpICs9IGxydy5vCiBvYmot JChDT05GSUdfQ1JZUFRPX1hUUykgKz0geHRzLm8KIG9iai0kKENPTkZJR19DUllQVE9fQ1RSKSAr PSBjdHIubwogb2JqLSQoQ09ORklHX0NSWVBUT19YQ1RSKSArPSB4Y3RyLm8KK29iai0kKENPTkZJ R19DUllQVE9fSENUUjIpICs9IGhjdHIyLm8KIG9iai0kKENPTkZJR19DUllQVE9fS0VZV1JBUCkg Kz0ga2V5d3JhcC5vCiBvYmotJChDT05GSUdfQ1JZUFRPX0FESUFOVFVNKSArPSBhZGlhbnR1bS5v CiBvYmotJChDT05GSUdfQ1JZUFRPX05IUE9MWTEzMDUpICs9IG5ocG9seTEzMDUubwpkaWZmIC0t Z2l0IGEvY3J5cHRvL2hjdHIyLmMgYi9jcnlwdG8vaGN0cjIuYwpuZXcgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCAwMDAwMDAwMDAwMDAuLjgxYjk4NmRjYzViMAotLS0gL2Rldi9udWxsCisrKyBiL2Ny eXB0by9oY3RyMi5jCkBAIC0wLDAgKzEsNTgwIEBACisvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmll cjogR1BMLTIuMAorLyoKKyAqIEhDVFIyIGxlbmd0aC1wcmVzZXJ2aW5nIGVuY3J5cHRpb24gbW9k ZQorICoKKyAqIENvcHlyaWdodCAyMDIxIEdvb2dsZSBMTEMKKyAqLworCisKKy8qCisgKiBIQ1RS MiBpcyBhIGxlbmd0aC1wcmVzZXJ2aW5nIGVuY3J5cHRpb24gbW9kZSB0aGF0IGlzIGVmZmljaWVu dCBvbgorICogcHJvY2Vzc29ycyB3aXRoIGluc3RydWN0aW9ucyB0byBhY2NlbGVyYXRlIGFlcyBh bmQgY2FycnlsZXNzCisgKiBtdWx0aXBsaWNhdGlvbiwgZS5nLiB4ODYgcHJvY2Vzc29ycyB3aXRo IEFFUy1OSSBhbmQgQ0xNVUwsIGFuZCBBUk0KKyAqIHByb2Nlc3NvcnMgd2l0aCB0aGUgQVJNdjgg Y3J5cHRvIGV4dGVuc2lvbnMuCisgKgorICogRm9yIG1vcmUgZGV0YWlscywgc2VlIHRoZSBwYXBl cjogTGVuZ3RoLXByZXNlcnZpbmcgZW5jcnlwdGlvbiB3aXRoIEhDVFIyCisgKiAoaHR0cHM6Ly9l cHJpbnQuaWFjci5vcmcvMjAyMS8xNDQxLnBkZikKKyAqLworCisjaW5jbHVkZSA8Y3J5cHRvL2lu dGVybmFsL2NpcGhlci5oPgorI2luY2x1ZGUgPGNyeXB0by9pbnRlcm5hbC9oYXNoLmg+CisjaW5j bHVkZSA8Y3J5cHRvL2ludGVybmFsL3NrY2lwaGVyLmg+CisjaW5jbHVkZSA8Y3J5cHRvL3BvbHl2 YWwuaD4KKyNpbmNsdWRlIDxjcnlwdG8vc2NhdHRlcndhbGsuaD4KKyNpbmNsdWRlIDxsaW51eC9t b2R1bGUuaD4KKworI2RlZmluZSBCTE9DS0NJUEhFUl9CTE9DS19TSVpFCQkxNgorCisvKgorICog VGhlIHNwZWNpZmljYXRpb24gYWxsb3dzIHZhcmlhYmxlLWxlbmd0aCB0d2Vha3MsIGJ1dCBMaW51 eCdzIGNyeXB0byBBUEkKKyAqIGN1cnJlbnRseSBvbmx5IGFsbG93cyBhbGdvcml0aG1zIHRvIHN1 cHBvcnQgYSBzaW5nbGUgbGVuZ3RoLiAgVGhlICJuYXR1cmFsIgorICogdHdlYWsgbGVuZ3RoIGZv ciBIQ1RSMiBpcyAxNiwgc2luY2UgdGhhdCBmaXRzIGludG8gb25lIFBPTFlWQUwgYmxvY2sgZm9y CisgKiB0aGUgYmVzdCBwZXJmb3JtYW5jZS4gIEJ1dCBsb25nZXIgdHdlYWtzIGFyZSB1c2VmdWwg Zm9yIGZzY3J5cHQsIHRvIGF2b2lkCisgKiBuZWVkaW5nIHRvIGRlcml2ZSBwZXItZmlsZSBrZXlz LiAgU28gaW5zdGVhZCB3ZSB1c2UgdHdvIGJsb2Nrcywgb3IgMzIgYnl0ZXMuCisgKi8KKyNkZWZp bmUgVFdFQUtfU0laRQkJMzIKKworc3RydWN0IGhjdHIyX2luc3RhbmNlX2N0eCB7CisJc3RydWN0 IGNyeXB0b19jaXBoZXJfc3Bhd24gYmxvY2tjaXBoZXJfc3Bhd247CisJc3RydWN0IGNyeXB0b19z a2NpcGhlcl9zcGF3biB4Y3RyX3NwYXduOworCXN0cnVjdCBjcnlwdG9fc2hhc2hfc3Bhd24gcG9s eXZhbF9zcGF3bjsKK307CisKK3N0cnVjdCBoY3RyMl90Zm1fY3R4IHsKKwlzdHJ1Y3QgY3J5cHRv X2NpcGhlciAqYmxvY2tjaXBoZXI7CisJc3RydWN0IGNyeXB0b19za2NpcGhlciAqeGN0cjsKKwlz dHJ1Y3QgY3J5cHRvX3NoYXNoICpwb2x5dmFsOworCXU4IExbQkxPQ0tDSVBIRVJfQkxPQ0tfU0la RV07Cit9OworCitzdHJ1Y3QgaGN0cjJfcmVxdWVzdF9jdHggeworCXU4IGZpcnN0X2Jsb2NrW0JM T0NLQ0lQSEVSX0JMT0NLX1NJWkVdOworCXU4IHhjdHJfaXZbQkxPQ0tDSVBIRVJfQkxPQ0tfU0la RV07CisJc3RydWN0IHNjYXR0ZXJsaXN0ICpidWxrX3BhcnRfZHN0OworCXN0cnVjdCBzY2F0dGVy bGlzdCAqYnVsa19wYXJ0X3NyYzsKKwlzdHJ1Y3Qgc2NhdHRlcmxpc3Qgc2dfc3JjWzJdOworCXN0 cnVjdCBzY2F0dGVybGlzdCBzZ19kc3RbMl07CisJLyogU3ViLXJlcXVlc3RzLCBtdXN0IGJlIGxh c3QgKi8KKwl1bmlvbiB7CisJCXN0cnVjdCBzaGFzaF9kZXNjIGhhc2hfZGVzYzsKKwkJc3RydWN0 IHNrY2lwaGVyX3JlcXVlc3QgeGN0cl9yZXE7CisJfSB1OworfTsKKworc3RhdGljIGludCBoY3Ry Ml9zZXRrZXkoc3RydWN0IGNyeXB0b19za2NpcGhlciAqdGZtLCBjb25zdCB1OCAqa2V5LAorCQkJ dW5zaWduZWQgaW50IGtleWxlbikKK3sKKwlzdHJ1Y3QgaGN0cjJfdGZtX2N0eCAqdGN0eCA9IGNy eXB0b19za2NpcGhlcl9jdHgodGZtKTsKKwl1OCBoYmFyW0JMT0NLQ0lQSEVSX0JMT0NLX1NJWkVd OworCV9fbGU2NCB0d2Vha19sZW5ndGhfYmxvY2tbMl07CisJdm9pZCAqZXhwb3J0ZWRfbGVuZ3Ro X2RpZ2VzdHNbMl07CisJU0hBU0hfREVTQ19PTl9TVEFDSyhzaGFzaCwgdGZtLT5wb2x5dmFsKTsK KwlpbnQgZXJyOworCisJZXhwb3J0ZWRfbGVuZ3RoX2RpZ2VzdHNbMF0gPSAodTggKil0Y3R4ICsg c2l6ZW9mKCp0Y3R4KTsKKwlleHBvcnRlZF9sZW5ndGhfZGlnZXN0c1sxXSA9ICh1OCAqKXRjdHgg KyBzaXplb2YoKnRjdHgpICsKKwkJCQkgICAgIGNyeXB0b19zaGFzaF9kZXNjc2l6ZSh0Y3R4LT5w b2x5dmFsKTsKKwljcnlwdG9fY2lwaGVyX2NsZWFyX2ZsYWdzKHRjdHgtPmJsb2NrY2lwaGVyLCBD UllQVE9fVEZNX1JFUV9NQVNLKTsKKwljcnlwdG9fY2lwaGVyX3NldF9mbGFncyh0Y3R4LT5ibG9j a2NpcGhlciwKKwkJCQljcnlwdG9fc2tjaXBoZXJfZ2V0X2ZsYWdzKHRmbSkgJgorCQkJCUNSWVBU T19URk1fUkVRX01BU0spOworCWVyciA9IGNyeXB0b19jaXBoZXJfc2V0a2V5KHRjdHgtPmJsb2Nr Y2lwaGVyLCBrZXksIGtleWxlbik7CisJaWYgKGVycikKKwkJcmV0dXJuIGVycjsKKworCWNyeXB0 b19za2NpcGhlcl9jbGVhcl9mbGFncyh0Y3R4LT54Y3RyLCBDUllQVE9fVEZNX1JFUV9NQVNLKTsK KwljcnlwdG9fc2tjaXBoZXJfc2V0X2ZsYWdzKHRjdHgtPnhjdHIsCisJCQkJICBjcnlwdG9fc2tj aXBoZXJfZ2V0X2ZsYWdzKHRmbSkgJgorCQkJCSAgQ1JZUFRPX1RGTV9SRVFfTUFTSyk7CisJZXJy ID0gY3J5cHRvX3NrY2lwaGVyX3NldGtleSh0Y3R4LT54Y3RyLCBrZXksIGtleWxlbik7CisJaWYg KGVycikKKwkJcmV0dXJuIGVycjsKKworCW1lbXNldCh0Y3R4LT5MLCAwLCBzaXplb2YodGN0eC0+ TCkpOworCW1lbXNldChoYmFyLCAwLCBzaXplb2YoaGJhcikpOworCXRjdHgtPkxbMF0gPSAweDAx OworCWNyeXB0b19jaXBoZXJfZW5jcnlwdF9vbmUodGN0eC0+YmxvY2tjaXBoZXIsIHRjdHgtPkws IHRjdHgtPkwpOworCWNyeXB0b19jaXBoZXJfZW5jcnlwdF9vbmUodGN0eC0+YmxvY2tjaXBoZXIs IGhiYXIsIGhiYXIpOworCisJY3J5cHRvX3NoYXNoX2NsZWFyX2ZsYWdzKHRjdHgtPnBvbHl2YWws IENSWVBUT19URk1fUkVRX01BU0spOworCWNyeXB0b19zaGFzaF9zZXRfZmxhZ3ModGN0eC0+cG9s eXZhbCwgY3J5cHRvX3NrY2lwaGVyX2dldF9mbGFncyh0Zm0pICYKKwkJCSAgICAgICBDUllQVE9f VEZNX1JFUV9NQVNLKTsKKwllcnIgPSBjcnlwdG9fc2hhc2hfc2V0a2V5KHRjdHgtPnBvbHl2YWws IGhiYXIsIEJMT0NLQ0lQSEVSX0JMT0NLX1NJWkUpOworCWlmIChlcnIpCisJCXJldHVybiBlcnI7 CisJbWVtemVyb19leHBsaWNpdChoYmFyLCBzaXplb2YoaGJhcikpOworCisJc2hhc2gtPnRmbSA9 IHRjdHgtPnBvbHl2YWw7CisJbWVtc2V0KHR3ZWFrX2xlbmd0aF9ibG9jaywgMCwgc2l6ZW9mKHR3 ZWFrX2xlbmd0aF9ibG9jaykpOworCisJdHdlYWtfbGVuZ3RoX2Jsb2NrWzBdID0gY3B1X3RvX2xl NjQoVFdFQUtfU0laRSAqIDggKiAyICsgMik7CisJZXJyID0gY3J5cHRvX3NoYXNoX2luaXQoc2hh c2gpOworCWlmIChlcnIpCisJCXJldHVybiBlcnI7CisJZXJyID0gY3J5cHRvX3NoYXNoX3VwZGF0 ZShzaGFzaCwgKHU4ICopdHdlYWtfbGVuZ3RoX2Jsb2NrLAorCQkJCSAgUE9MWVZBTF9CTE9DS19T SVpFKTsKKwlpZiAoZXJyKQorCQlyZXR1cm4gZXJyOworCWVyciA9IGNyeXB0b19zaGFzaF9leHBv cnQoc2hhc2gsIGV4cG9ydGVkX2xlbmd0aF9kaWdlc3RzWzBdKTsKKwlpZiAoZXJyKQorCQlyZXR1 cm4gZXJyOworCisJdHdlYWtfbGVuZ3RoX2Jsb2NrWzBdID0gY3B1X3RvX2xlNjQoVFdFQUtfU0la RSAqIDggKiAyICsgMyk7CisJZXJyID0gY3J5cHRvX3NoYXNoX2luaXQoc2hhc2gpOworCWlmIChl cnIpCisJCXJldHVybiBlcnI7CisJZXJyID0gY3J5cHRvX3NoYXNoX3VwZGF0ZShzaGFzaCwgKHU4 ICopdHdlYWtfbGVuZ3RoX2Jsb2NrLAorCQkJCSAgUE9MWVZBTF9CTE9DS19TSVpFKTsKKwlpZiAo ZXJyKQorCQlyZXR1cm4gZXJyOworCXJldHVybiBjcnlwdG9fc2hhc2hfZXhwb3J0KHNoYXNoLCBl eHBvcnRlZF9sZW5ndGhfZGlnZXN0c1sxXSk7Cit9CisKK3N0YXRpYyBpbnQgaGN0cjJfaGFzaF90 d2VhayhzdHJ1Y3Qgc2tjaXBoZXJfcmVxdWVzdCAqcmVxKQoreworCXN0cnVjdCBjcnlwdG9fc2tj aXBoZXIgKnRmbSA9IGNyeXB0b19za2NpcGhlcl9yZXF0Zm0ocmVxKTsKKwljb25zdCBzdHJ1Y3Qg aGN0cjJfdGZtX2N0eCAqdGN0eCA9IGNyeXB0b19za2NpcGhlcl9jdHgodGZtKTsKKwlzdHJ1Y3Qg aGN0cjJfcmVxdWVzdF9jdHggKnJjdHggPSBza2NpcGhlcl9yZXF1ZXN0X2N0eChyZXEpOworCXN0 cnVjdCBzaGFzaF9kZXNjICpoYXNoX2Rlc2MgPSAmcmN0eC0+dS5oYXNoX2Rlc2M7CisJY29uc3Qg dm9pZCAqZXhwb3J0ZWRfbGVuZ3RoX2RpZ2VzdHNbMl07CisJdm9pZCAqZXhwb3J0ZWRfdHdlYWtf ZGlnZXN0OworCWludCBlcnI7CisKKwlleHBvcnRlZF9sZW5ndGhfZGlnZXN0c1swXSA9ICh1OCAq KXRjdHggKyBzaXplb2YoKnRjdHgpOworCWV4cG9ydGVkX2xlbmd0aF9kaWdlc3RzWzFdID0gKHU4 ICopdGN0eCArIHNpemVvZigqdGN0eCkgKworCQkJCSAgICAgY3J5cHRvX3NoYXNoX2Rlc2NzaXpl KHRjdHgtPnBvbHl2YWwpOworCWV4cG9ydGVkX3R3ZWFrX2RpZ2VzdCA9ICh1OCAqKXJjdHggKyB0 Zm0tPnJlcXNpemUgLQorCQkJCWNyeXB0b19zaGFzaF9kZXNjc2l6ZSh0Y3R4LT5wb2x5dmFsKTsK KworCWhhc2hfZGVzYy0+dGZtID0gdGN0eC0+cG9seXZhbDsKKwlpZiAocmVxLT5jcnlwdGxlbiAl IFBPTFlWQUxfQkxPQ0tfU0laRSA9PSAwKQorCQllcnIgPSBjcnlwdG9fc2hhc2hfaW1wb3J0KGhh c2hfZGVzYywgZXhwb3J0ZWRfbGVuZ3RoX2RpZ2VzdHNbMF0pOworCWVsc2UKKwkJZXJyID0gY3J5 cHRvX3NoYXNoX2ltcG9ydChoYXNoX2Rlc2MsIGV4cG9ydGVkX2xlbmd0aF9kaWdlc3RzWzFdKTsK KwlpZiAoZXJyKQorCQlyZXR1cm4gZXJyOworCWVyciA9IGNyeXB0b19zaGFzaF91cGRhdGUoaGFz aF9kZXNjLCByZXEtPml2LCBUV0VBS19TSVpFKTsKKwlpZiAoZXJyKQorCQlyZXR1cm4gZXJyOwor CisJcmV0dXJuIGNyeXB0b19zaGFzaF9leHBvcnQoaGFzaF9kZXNjLCBleHBvcnRlZF90d2Vha19k aWdlc3QpOworfQorCitzdGF0aWMgaW50IGhjdHIyX2hhc2hfbWVzc2FnZShzdHJ1Y3Qgc2tjaXBo ZXJfcmVxdWVzdCAqcmVxLAorCQkJICAgICAgc3RydWN0IHNjYXR0ZXJsaXN0ICpzZ2wsCisJCQkg ICAgICB1OCBkaWdlc3RbUE9MWVZBTF9ESUdFU1RfU0laRV0pCit7CisJdTggcGFkZGluZ1tCTE9D S0NJUEhFUl9CTE9DS19TSVpFXTsKKwlzdHJ1Y3QgaGN0cjJfcmVxdWVzdF9jdHggKnJjdHggPSBz a2NpcGhlcl9yZXF1ZXN0X2N0eChyZXEpOworCXN0cnVjdCBzaGFzaF9kZXNjICpoYXNoX2Rlc2Mg PSAmcmN0eC0+dS5oYXNoX2Rlc2M7CisJY29uc3QgdW5zaWduZWQgaW50IGJ1bGtfbGVuID0gcmVx LT5jcnlwdGxlbiAtIEJMT0NLQ0lQSEVSX0JMT0NLX1NJWkU7CisJc3RydWN0IHNnX21hcHBpbmdf aXRlciBtaXRlcjsKKwl1bnNpZ25lZCBpbnQgcmVtYWluZGVyID0gYnVsa19sZW4gJSBCTE9DS0NJ UEhFUl9CTE9DS19TSVpFOworCWludCBlcnIsIGk7CisJaW50IG4gPSAwOworCisJc2dfbWl0ZXJf c3RhcnQoJm1pdGVyLCBzZ2wsIHNnX25lbnRzKHNnbCksCisJCSAgICAgICBTR19NSVRFUl9GUk9N X1NHIHwgU0dfTUlURVJfQVRPTUlDKTsKKwlmb3IgKGkgPSAwOyBpIDwgYnVsa19sZW47IGkgKz0g bikgeworCQlzZ19taXRlcl9uZXh0KCZtaXRlcik7CisJCW4gPSBtaW5fdCh1bnNpZ25lZCBpbnQs IG1pdGVyLmxlbmd0aCwgYnVsa19sZW4gLSBpKTsKKwkJZXJyID0gY3J5cHRvX3NoYXNoX3VwZGF0 ZShoYXNoX2Rlc2MsIG1pdGVyLmFkZHIsIG4pOworCQlpZiAoZXJyKQorCQkJYnJlYWs7CisJfQor CXNnX21pdGVyX3N0b3AoJm1pdGVyKTsKKworCWlmIChlcnIpCisJCXJldHVybiBlcnI7CisKKwlp ZiAocmVtYWluZGVyKSB7CisJCW1lbXNldChwYWRkaW5nLCAwLCBCTE9DS0NJUEhFUl9CTE9DS19T SVpFKTsKKwkJcGFkZGluZ1swXSA9IDB4MDE7CisJCWVyciA9IGNyeXB0b19zaGFzaF91cGRhdGUo aGFzaF9kZXNjLCBwYWRkaW5nLAorCQkJCQkgIEJMT0NLQ0lQSEVSX0JMT0NLX1NJWkUgLSByZW1h aW5kZXIpOworCQlpZiAoZXJyKQorCQkJcmV0dXJuIGVycjsKKwl9CisJcmV0dXJuIGNyeXB0b19z aGFzaF9maW5hbChoYXNoX2Rlc2MsIGRpZ2VzdCk7Cit9CisKK3N0YXRpYyBpbnQgaGN0cjJfZmlu aXNoKHN0cnVjdCBza2NpcGhlcl9yZXF1ZXN0ICpyZXEpCit7CisJc3RydWN0IGNyeXB0b19za2Np cGhlciAqdGZtID0gY3J5cHRvX3NrY2lwaGVyX3JlcXRmbShyZXEpOworCWNvbnN0IHN0cnVjdCBo Y3RyMl90Zm1fY3R4ICp0Y3R4ID0gY3J5cHRvX3NrY2lwaGVyX2N0eCh0Zm0pOworCXN0cnVjdCBo Y3RyMl9yZXF1ZXN0X2N0eCAqcmN0eCA9IHNrY2lwaGVyX3JlcXVlc3RfY3R4KHJlcSk7CisJdTgg ZGlnZXN0W1BPTFlWQUxfRElHRVNUX1NJWkVdOworCXN0cnVjdCBzaGFzaF9kZXNjICpoYXNoX2Rl c2MgPSAmcmN0eC0+dS5oYXNoX2Rlc2M7CisJdm9pZCAqZXhwb3J0ZWRfdHdlYWtfZGlnZXN0Owor CWludCBlcnI7CisKKwlleHBvcnRlZF90d2Vha19kaWdlc3QgPSAodTggKilyY3R4ICsgdGZtLT5y ZXFzaXplIC0KKwkJCQljcnlwdG9fc2hhc2hfZGVzY3NpemUodGN0eC0+cG9seXZhbCk7CisKKwkv LyBVID0gVVUgXiBIKFQgfHwgVikKKwkvLyBvciBNID0gTU0gXiBIKFQgfHwgTikKKwloYXNoX2Rl c2MtPnRmbSA9IHRjdHgtPnBvbHl2YWw7CisJZXJyID0gY3J5cHRvX3NoYXNoX2ltcG9ydChoYXNo X2Rlc2MsIGV4cG9ydGVkX3R3ZWFrX2RpZ2VzdCk7CisJaWYgKGVycikKKwkJcmV0dXJuIGVycjsK KwllcnIgPSBoY3RyMl9oYXNoX21lc3NhZ2UocmVxLCByY3R4LT5idWxrX3BhcnRfZHN0LCBkaWdl c3QpOworCWlmIChlcnIpCisJCXJldHVybiBlcnI7CisJY3J5cHRvX3hvcihyY3R4LT5maXJzdF9i bG9jaywgZGlnZXN0LCBCTE9DS0NJUEhFUl9CTE9DS19TSVpFKTsKKworCS8vIENvcHkgVSAob3Ig TSkgaW50byBkc3Qgc2NhdHRlcmxpc3QKKwlzY2F0dGVyd2Fsa19tYXBfYW5kX2NvcHkocmN0eC0+ Zmlyc3RfYmxvY2ssIHJlcS0+ZHN0LAorCQkJCSAwLCBCTE9DS0NJUEhFUl9CTE9DS19TSVpFLCAx KTsKKwlyZXR1cm4gMDsKK30KKworc3RhdGljIHZvaWQgaGN0cjJfeGN0cl9kb25lKHN0cnVjdCBj cnlwdG9fYXN5bmNfcmVxdWVzdCAqYXJlcSwKKwkJCQkgICAgaW50IGVycikKK3sKKwlzdHJ1Y3Qg c2tjaXBoZXJfcmVxdWVzdCAqcmVxID0gYXJlcS0+ZGF0YTsKKworCWlmICghZXJyKQorCQllcnIg PSBoY3RyMl9maW5pc2gocmVxKTsKKworCXNrY2lwaGVyX3JlcXVlc3RfY29tcGxldGUocmVxLCBl cnIpOworfQorCitzdGF0aWMgaW50IGhjdHIyX2NyeXB0KHN0cnVjdCBza2NpcGhlcl9yZXF1ZXN0 ICpyZXEsIGJvb2wgZW5jKQoreworCXN0cnVjdCBjcnlwdG9fc2tjaXBoZXIgKnRmbSA9IGNyeXB0 b19za2NpcGhlcl9yZXF0Zm0ocmVxKTsKKwljb25zdCBzdHJ1Y3QgaGN0cjJfdGZtX2N0eCAqdGN0 eCA9IGNyeXB0b19za2NpcGhlcl9jdHgodGZtKTsKKwlzdHJ1Y3QgaGN0cjJfcmVxdWVzdF9jdHgg KnJjdHggPSBza2NpcGhlcl9yZXF1ZXN0X2N0eChyZXEpOworCXU4IGRpZ2VzdFtQT0xZVkFMX0RJ R0VTVF9TSVpFXTsKKwlpbnQgYnVsa19sZW4gPSByZXEtPmNyeXB0bGVuIC0gQkxPQ0tDSVBIRVJf QkxPQ0tfU0laRTsKKwlpbnQgZXJyOworCisJLy8gUmVxdWVzdHMgbXVzdCBiZSBhdCBsZWFzdCBv bmUgYmxvY2sKKwlpZiAocmVxLT5jcnlwdGxlbiA8IEJMT0NLQ0lQSEVSX0JMT0NLX1NJWkUpCisJ CXJldHVybiAtRUlOVkFMOworCisJLy8gQ29weSBNIChvciBVKSBpbnRvIGEgdGVtcG9yYXJ5IGJ1 ZmZlcgorCXNjYXR0ZXJ3YWxrX21hcF9hbmRfY29weShyY3R4LT5maXJzdF9ibG9jaywgcmVxLT5z cmMsCisJCQkJIDAsIEJMT0NLQ0lQSEVSX0JMT0NLX1NJWkUsIDApOworCisJLy8gQ3JlYXRlIHNj YXR0ZXJsaXN0cyBmb3IgTiBhbmQgVgorCXJjdHgtPmJ1bGtfcGFydF9zcmMgPSBzY2F0dGVyd2Fs a19mZndkKHJjdHgtPnNnX3NyYywgcmVxLT5zcmMsCisJCQkJCSAgICAgICBCTE9DS0NJUEhFUl9C TE9DS19TSVpFKTsKKwlyY3R4LT5idWxrX3BhcnRfZHN0ID0gc2NhdHRlcndhbGtfZmZ3ZChyY3R4 LT5zZ19kc3QsIHJlcS0+ZHN0LAorCQkJCQkgICAgICAgQkxPQ0tDSVBIRVJfQkxPQ0tfU0laRSk7 CisKKwkvLyBNTSA9IE0gXiBIKFQgfHwgTikKKwkvLyBvciBVVSA9IFUgXiBIKFQgfHwgVikKKwll cnIgPSBoY3RyMl9oYXNoX3R3ZWFrKHJlcSk7CisJaWYgKGVycikKKwkJcmV0dXJuIGVycjsKKwll cnIgPSBoY3RyMl9oYXNoX21lc3NhZ2UocmVxLCByY3R4LT5idWxrX3BhcnRfc3JjLCBkaWdlc3Qp OworCWlmIChlcnIpCisJCXJldHVybiBlcnI7CisJY3J5cHRvX3hvcihkaWdlc3QsIHJjdHgtPmZp cnN0X2Jsb2NrLCBCTE9DS0NJUEhFUl9CTE9DS19TSVpFKTsKKworCS8vIFVVID0gRShNTSkKKwkv LyBvciBNTSA9IEQoVVUpCisJaWYgKGVuYykKKwkJY3J5cHRvX2NpcGhlcl9lbmNyeXB0X29uZSh0 Y3R4LT5ibG9ja2NpcGhlciwgcmN0eC0+Zmlyc3RfYmxvY2ssCisJCQkJCSAgZGlnZXN0KTsKKwll bHNlCisJCWNyeXB0b19jaXBoZXJfZGVjcnlwdF9vbmUodGN0eC0+YmxvY2tjaXBoZXIsIHJjdHgt PmZpcnN0X2Jsb2NrLAorCQkJCQkgIGRpZ2VzdCk7CisKKwkvLyBTID0gTU0gXiBVVSBeIEwKKwlj cnlwdG9feG9yKGRpZ2VzdCwgcmN0eC0+Zmlyc3RfYmxvY2ssIEJMT0NLQ0lQSEVSX0JMT0NLX1NJ WkUpOworCWNyeXB0b194b3JfY3B5KHJjdHgtPnhjdHJfaXYsIGRpZ2VzdCwgdGN0eC0+TCwgQkxP Q0tDSVBIRVJfQkxPQ0tfU0laRSk7CisKKwkvLyBWID0gWENUUihTLCBOKQorCS8vIG9yIE4gPSBY Q1RSKFMsIFYpCisJc2tjaXBoZXJfcmVxdWVzdF9zZXRfdGZtKCZyY3R4LT51LnhjdHJfcmVxLCB0 Y3R4LT54Y3RyKTsKKwlza2NpcGhlcl9yZXF1ZXN0X3NldF9jcnlwdCgmcmN0eC0+dS54Y3RyX3Jl cSwgcmN0eC0+YnVsa19wYXJ0X3NyYywKKwkJCQkgICByY3R4LT5idWxrX3BhcnRfZHN0LCBidWxr X2xlbiwKKwkJCQkgICByY3R4LT54Y3RyX2l2KTsKKwlza2NpcGhlcl9yZXF1ZXN0X3NldF9jYWxs YmFjaygmcmN0eC0+dS54Y3RyX3JlcSwKKwkJCQkgICAgICByZXEtPmJhc2UuZmxhZ3MsCisJCQkJ ICAgICAgaGN0cjJfeGN0cl9kb25lLCByZXEpOworCXJldHVybiBjcnlwdG9fc2tjaXBoZXJfZW5j cnlwdCgmcmN0eC0+dS54Y3RyX3JlcSkgPzoKKwkJaGN0cjJfZmluaXNoKHJlcSk7Cit9CisKK3N0 YXRpYyBpbnQgaGN0cjJfZW5jcnlwdChzdHJ1Y3Qgc2tjaXBoZXJfcmVxdWVzdCAqcmVxKQorewor CXJldHVybiBoY3RyMl9jcnlwdChyZXEsIHRydWUpOworfQorCitzdGF0aWMgaW50IGhjdHIyX2Rl Y3J5cHQoc3RydWN0IHNrY2lwaGVyX3JlcXVlc3QgKnJlcSkKK3sKKwlyZXR1cm4gaGN0cjJfY3J5 cHQocmVxLCBmYWxzZSk7Cit9CisKK3N0YXRpYyBpbnQgaGN0cjJfaW5pdF90Zm0oc3RydWN0IGNy eXB0b19za2NpcGhlciAqdGZtKQoreworCXN0cnVjdCBza2NpcGhlcl9pbnN0YW5jZSAqaW5zdCA9 IHNrY2lwaGVyX2FsZ19pbnN0YW5jZSh0Zm0pOworCXN0cnVjdCBoY3RyMl9pbnN0YW5jZV9jdHgg KmljdHggPSBza2NpcGhlcl9pbnN0YW5jZV9jdHgoaW5zdCk7CisJc3RydWN0IGhjdHIyX3RmbV9j dHggKnRjdHggPSBjcnlwdG9fc2tjaXBoZXJfY3R4KHRmbSk7CisJc3RydWN0IGNyeXB0b19za2Np cGhlciAqeGN0cjsKKwlzdHJ1Y3QgY3J5cHRvX2NpcGhlciAqYmxvY2tjaXBoZXI7CisJc3RydWN0 IGNyeXB0b19zaGFzaCAqcG9seXZhbDsKKwl1bnNpZ25lZCBpbnQgc3VicmVxX3NpemU7CisJaW50 IGVycjsKKworCXhjdHIgPSBjcnlwdG9fc3Bhd25fc2tjaXBoZXIoJmljdHgtPnhjdHJfc3Bhd24p OworCWlmIChJU19FUlIoeGN0cikpCisJCXJldHVybiBQVFJfRVJSKHhjdHIpOworCisJYmxvY2tj aXBoZXIgPSBjcnlwdG9fc3Bhd25fY2lwaGVyKCZpY3R4LT5ibG9ja2NpcGhlcl9zcGF3bik7CisJ aWYgKElTX0VSUihibG9ja2NpcGhlcikpIHsKKwkJZXJyID0gUFRSX0VSUihibG9ja2NpcGhlcik7 CisJCWdvdG8gZXJyX2ZyZWVfeGN0cjsKKwl9CisKKwlwb2x5dmFsID0gY3J5cHRvX3NwYXduX3No YXNoKCZpY3R4LT5wb2x5dmFsX3NwYXduKTsKKwlpZiAoSVNfRVJSKHBvbHl2YWwpKSB7CisJCWVy ciA9IFBUUl9FUlIocG9seXZhbCk7CisJCWdvdG8gZXJyX2ZyZWVfYmxvY2tjaXBoZXI7CisJfQor CisJdGN0eC0+eGN0ciA9IHhjdHI7CisJdGN0eC0+YmxvY2tjaXBoZXIgPSBibG9ja2NpcGhlcjsK Kwl0Y3R4LT5wb2x5dmFsID0gcG9seXZhbDsKKworCUJVSUxEX0JVR19PTihvZmZzZXRvZmVuZChz dHJ1Y3QgaGN0cjJfcmVxdWVzdF9jdHgsIHUpICE9CisJCQkJIHNpemVvZihzdHJ1Y3QgaGN0cjJf cmVxdWVzdF9jdHgpKTsKKwlzdWJyZXFfc2l6ZSA9IG1heChzaXplb2ZfZmllbGQoc3RydWN0IGhj dHIyX3JlcXVlc3RfY3R4LCB1Lmhhc2hfZGVzYykgKworCQkJICBjcnlwdG9fc2hhc2hfZGVzY3Np emUocG9seXZhbCksIHNpemVvZl9maWVsZChzdHJ1Y3QKKwkJCSAgaGN0cjJfcmVxdWVzdF9jdHgs IHUueGN0cl9yZXEpICsKKwkJCSAgY3J5cHRvX3NrY2lwaGVyX3JlcXNpemUoeGN0cikpOworCisJ Y3J5cHRvX3NrY2lwaGVyX3NldF9yZXFzaXplKHRmbSwgb2Zmc2V0b2Yoc3RydWN0IGhjdHIyX3Jl cXVlc3RfY3R4LCB1KSArCisJCQkJICAgIHN1YnJlcV9zaXplICsKKwkJCQkgICAgY3J5cHRvX3No YXNoX2Rlc2NzaXplKHBvbHl2YWwpKTsKKwlyZXR1cm4gMDsKKworZXJyX2ZyZWVfYmxvY2tjaXBo ZXI6CisJY3J5cHRvX2ZyZWVfY2lwaGVyKGJsb2NrY2lwaGVyKTsKK2Vycl9mcmVlX3hjdHI6CisJ Y3J5cHRvX2ZyZWVfc2tjaXBoZXIoeGN0cik7CisJcmV0dXJuIGVycjsKK30KKworc3RhdGljIHZv aWQgaGN0cjJfZXhpdF90Zm0oc3RydWN0IGNyeXB0b19za2NpcGhlciAqdGZtKQoreworCXN0cnVj dCBoY3RyMl90Zm1fY3R4ICp0Y3R4ID0gY3J5cHRvX3NrY2lwaGVyX2N0eCh0Zm0pOworCisJY3J5 cHRvX2ZyZWVfY2lwaGVyKHRjdHgtPmJsb2NrY2lwaGVyKTsKKwljcnlwdG9fZnJlZV9za2NpcGhl cih0Y3R4LT54Y3RyKTsKKwljcnlwdG9fZnJlZV9zaGFzaCh0Y3R4LT5wb2x5dmFsKTsKK30KKwor c3RhdGljIHZvaWQgaGN0cjJfZnJlZV9pbnN0YW5jZShzdHJ1Y3Qgc2tjaXBoZXJfaW5zdGFuY2Ug Kmluc3QpCit7CisJc3RydWN0IGhjdHIyX2luc3RhbmNlX2N0eCAqaWN0eCA9IHNrY2lwaGVyX2lu c3RhbmNlX2N0eChpbnN0KTsKKworCWNyeXB0b19kcm9wX2NpcGhlcigmaWN0eC0+YmxvY2tjaXBo ZXJfc3Bhd24pOworCWNyeXB0b19kcm9wX3NrY2lwaGVyKCZpY3R4LT54Y3RyX3NwYXduKTsKKwlj cnlwdG9fZHJvcF9zaGFzaCgmaWN0eC0+cG9seXZhbF9zcGF3bik7CisJa2ZyZWUoaW5zdCk7Cit9 CisKKy8qCisgKiBDaGVjayBmb3IgYSBzdXBwb3J0ZWQgc2V0IG9mIGlubmVyIGFsZ29yaXRobXMu CisgKiBTZWUgdGhlIGNvbW1lbnQgYXQgdGhlIGJlZ2lubmluZyBvZiB0aGlzIGZpbGUuCisgKi8K K3N0YXRpYyBib29sIGhjdHIyX3N1cHBvcnRlZF9hbGdvcml0aG1zKHN0cnVjdCBza2NpcGhlcl9h bGcgKnhjdHJfYWxnLAorCQkJCSAgICAgICBzdHJ1Y3QgY3J5cHRvX2FsZyAqYmxvY2tjaXBoZXJf YWxnLAorCQkJCSAgICAgICBzdHJ1Y3Qgc2hhc2hfYWxnICpwb2x5dmFsX2FsZykKK3sKKwlpZiAo c3RybmNtcCh4Y3RyX2FsZy0+YmFzZS5jcmFfbmFtZSwgInhjdHIoIiwgNCkgIT0gMCkKKwkJcmV0 dXJuIGZhbHNlOworCisJaWYgKGJsb2NrY2lwaGVyX2FsZy0+Y3JhX2Jsb2Nrc2l6ZSAhPSBCTE9D S0NJUEhFUl9CTE9DS19TSVpFKQorCQlyZXR1cm4gZmFsc2U7CisKKwlpZiAoc3RyY21wKHBvbHl2 YWxfYWxnLT5iYXNlLmNyYV9uYW1lLCAicG9seXZhbCIpICE9IDApCisJCXJldHVybiBmYWxzZTsK KworCXJldHVybiB0cnVlOworfQorCitzdGF0aWMgaW50IGhjdHIyX2NyZWF0ZV9jb21tb24oc3Ry dWN0IGNyeXB0b190ZW1wbGF0ZSAqdG1wbCwKKwkJCSAgICAgICBzdHJ1Y3QgcnRhdHRyICoqdGIs CisJCQkgICAgICAgY29uc3QgY2hhciAqeGN0cl9uYW1lLAorCQkJICAgICAgIGNvbnN0IGNoYXIg KnBvbHl2YWxfbmFtZSkKK3sKKwl1MzIgbWFzazsKKwlzdHJ1Y3Qgc2tjaXBoZXJfaW5zdGFuY2Ug Kmluc3Q7CisJc3RydWN0IGhjdHIyX2luc3RhbmNlX2N0eCAqaWN0eDsKKwlzdHJ1Y3Qgc2tjaXBo ZXJfYWxnICp4Y3RyX2FsZzsKKwlzdHJ1Y3QgY3J5cHRvX2FsZyAqYmxvY2tjaXBoZXJfYWxnOwor CXN0cnVjdCBzaGFzaF9hbGcgKnBvbHl2YWxfYWxnOworCWNoYXIgYmxvY2tjaXBoZXJfbmFtZVtD UllQVE9fTUFYX0FMR19OQU1FXTsKKwlpbnQgbGVuOworCWludCBlcnI7CisKKwllcnIgPSBjcnlw dG9fY2hlY2tfYXR0cl90eXBlKHRiLCBDUllQVE9fQUxHX1RZUEVfU0tDSVBIRVIsICZtYXNrKTsK KwlpZiAoZXJyKQorCQlyZXR1cm4gZXJyOworCisJaW5zdCA9IGt6YWxsb2Moc2l6ZW9mKCppbnN0 KSArIHNpemVvZigqaWN0eCksIEdGUF9LRVJORUwpOworCWlmICghaW5zdCkKKwkJcmV0dXJuIC1F Tk9NRU07CisJaWN0eCA9IHNrY2lwaGVyX2luc3RhbmNlX2N0eChpbnN0KTsKKworCS8qIFN0cmVh bSBjaXBoZXIsIHhjdHIoYmxvY2tfY2lwaGVyKSAqLworCWVyciA9IGNyeXB0b19ncmFiX3NrY2lw aGVyKCZpY3R4LT54Y3RyX3NwYXduLAorCQkJCSAgIHNrY2lwaGVyX2NyeXB0b19pbnN0YW5jZShp bnN0KSwKKwkJCQkgICB4Y3RyX25hbWUsIDAsIG1hc2spOworCWlmIChlcnIpCisJCWdvdG8gZXJy X2ZyZWVfaW5zdDsKKwl4Y3RyX2FsZyA9IGNyeXB0b19zcGF3bl9za2NpcGhlcl9hbGcoJmljdHgt PnhjdHJfc3Bhd24pOworCisJaWYgKCFzdHJuY21wKHhjdHJfYWxnLT5iYXNlLmNyYV9uYW1lLCAi eGN0cigiLCA1KSkgeworCQlsZW4gPSBzdHJzY3B5KGJsb2NrY2lwaGVyX25hbWUsIHhjdHJfbmFt ZSArIDUsCisJCQkgICAgc2l6ZW9mKGJsb2NrY2lwaGVyX25hbWUpKTsKKworCQlpZiAobGVuIDwg MSkKKwkJCXJldHVybiAtRUlOVkFMOworCisJCWlmIChibG9ja2NpcGhlcl9uYW1lW2xlbiAtIDFd ICE9ICcpJykKKwkJCXJldHVybiAtRUlOVkFMOworCisJCWJsb2NrY2lwaGVyX25hbWVbbGVuIC0g MV0gPSAwOworCX0gZWxzZQorCQlyZXR1cm4gLUVJTlZBTDsKKworCisJLyogQmxvY2sgY2lwaGVy LCBlLmcuICJhZXMiICovCisJZXJyID0gY3J5cHRvX2dyYWJfY2lwaGVyKCZpY3R4LT5ibG9ja2Np cGhlcl9zcGF3biwKKwkJCQkgc2tjaXBoZXJfY3J5cHRvX2luc3RhbmNlKGluc3QpLAorCQkJCSBi bG9ja2NpcGhlcl9uYW1lLCAwLCBtYXNrKTsKKwlpZiAoZXJyKQorCQlnb3RvIGVycl9mcmVlX2lu c3Q7CisJYmxvY2tjaXBoZXJfYWxnID0gY3J5cHRvX3NwYXduX2NpcGhlcl9hbGcoJmljdHgtPmJs b2NrY2lwaGVyX3NwYXduKTsKKworCS8qIFBvbHl2YWwgzrUt4oiGVSBoYXNoIGZ1bmN0aW9uICov CisJZXJyID0gY3J5cHRvX2dyYWJfc2hhc2goJmljdHgtPnBvbHl2YWxfc3Bhd24sCisJCQkJc2tj aXBoZXJfY3J5cHRvX2luc3RhbmNlKGluc3QpLAorCQkJCXBvbHl2YWxfbmFtZSwgMCwgbWFzayk7 CisJaWYgKGVycikKKwkJZ290byBlcnJfZnJlZV9pbnN0OworCXBvbHl2YWxfYWxnID0gY3J5cHRv X3NwYXduX3NoYXNoX2FsZygmaWN0eC0+cG9seXZhbF9zcGF3bik7CisKKwkvKiBDaGVjayB0aGUg c2V0IG9mIGFsZ29yaXRobXMgKi8KKwlpZiAoIWhjdHIyX3N1cHBvcnRlZF9hbGdvcml0aG1zKHhj dHJfYWxnLCBibG9ja2NpcGhlcl9hbGcsCisJCQkJCXBvbHl2YWxfYWxnKSkgeworCQlwcl93YXJu KCJVbnN1cHBvcnRlZCBIQ1RSMiBpbnN0YW50aWF0aW9uOiAoJXMsJXMsJXMpXG4iLAorCQkJeGN0 cl9hbGctPmJhc2UuY3JhX25hbWUsIGJsb2NrY2lwaGVyX2FsZy0+Y3JhX25hbWUsCisJCQlwb2x5 dmFsX2FsZy0+YmFzZS5jcmFfbmFtZSk7CisJCWVyciA9IC1FSU5WQUw7CisJCWdvdG8gZXJyX2Zy ZWVfaW5zdDsKKwl9CisKKwkvKiBJbnN0YW5jZSBmaWVsZHMgKi8KKworCWVyciA9IC1FTkFNRVRP T0xPTkc7CisJaWYgKHNucHJpbnRmKGluc3QtPmFsZy5iYXNlLmNyYV9uYW1lLCBDUllQVE9fTUFY X0FMR19OQU1FLCAiaGN0cjIoJXMpIiwKKwkJICAgICBibG9ja2NpcGhlcl9hbGctPmNyYV9uYW1l KSA+PSBDUllQVE9fTUFYX0FMR19OQU1FKQorCQlnb3RvIGVycl9mcmVlX2luc3Q7CisJaWYgKHNu cHJpbnRmKGluc3QtPmFsZy5iYXNlLmNyYV9kcml2ZXJfbmFtZSwgQ1JZUFRPX01BWF9BTEdfTkFN RSwKKwkJICAgICAiaGN0cjJfYmFzZSglcywlcykiLAorCQkgICAgIHhjdHJfYWxnLT5iYXNlLmNy YV9kcml2ZXJfbmFtZSwKKwkJICAgICBwb2x5dmFsX2FsZy0+YmFzZS5jcmFfZHJpdmVyX25hbWUp ID49IENSWVBUT19NQVhfQUxHX05BTUUpCisJCWdvdG8gZXJyX2ZyZWVfaW5zdDsKKworCWluc3Qt PmFsZy5iYXNlLmNyYV9ibG9ja3NpemUgPSBCTE9DS0NJUEhFUl9CTE9DS19TSVpFOworCWluc3Qt PmFsZy5iYXNlLmNyYV9jdHhzaXplID0gc2l6ZW9mKHN0cnVjdCBoY3RyMl90Zm1fY3R4KSArCisJ CQkJICAgICBwb2x5dmFsX2FsZy0+ZGVzY3NpemUgKiAyOworCWluc3QtPmFsZy5iYXNlLmNyYV9h bGlnbm1hc2sgPSB4Y3RyX2FsZy0+YmFzZS5jcmFfYWxpZ25tYXNrIHwKKwkJCQkgICAgICAgcG9s eXZhbF9hbGctPmJhc2UuY3JhX2FsaWdubWFzazsKKwkvKgorCSAqIFRoZSBoYXNoIGZ1bmN0aW9u IGlzIGNhbGxlZCB0d2ljZSwgc28gaXQgaXMgd2VpZ2h0ZWQgaGlnaGVyIHRoYW4gdGhlCisJICog eGN0ciBhbmQgYmxvY2tjaXBoZXIuCisJICovCisJaW5zdC0+YWxnLmJhc2UuY3JhX3ByaW9yaXR5 ID0gKDIgKiB4Y3RyX2FsZy0+YmFzZS5jcmFfcHJpb3JpdHkgKworCQkJCSAgICAgICA0ICogcG9s eXZhbF9hbGctPmJhc2UuY3JhX3ByaW9yaXR5ICsKKwkJCQkgICAgICAgYmxvY2tjaXBoZXJfYWxn LT5jcmFfcHJpb3JpdHkpIC8gNzsKKworCWluc3QtPmFsZy5zZXRrZXkgPSBoY3RyMl9zZXRrZXk7 CisJaW5zdC0+YWxnLmVuY3J5cHQgPSBoY3RyMl9lbmNyeXB0OworCWluc3QtPmFsZy5kZWNyeXB0 ID0gaGN0cjJfZGVjcnlwdDsKKwlpbnN0LT5hbGcuaW5pdCA9IGhjdHIyX2luaXRfdGZtOworCWlu c3QtPmFsZy5leGl0ID0gaGN0cjJfZXhpdF90Zm07CisJaW5zdC0+YWxnLm1pbl9rZXlzaXplID0g Y3J5cHRvX3NrY2lwaGVyX2FsZ19taW5fa2V5c2l6ZSh4Y3RyX2FsZyk7CisJaW5zdC0+YWxnLm1h eF9rZXlzaXplID0gY3J5cHRvX3NrY2lwaGVyX2FsZ19tYXhfa2V5c2l6ZSh4Y3RyX2FsZyk7CisJ aW5zdC0+YWxnLml2c2l6ZSA9IFRXRUFLX1NJWkU7CisKKwlpbnN0LT5mcmVlID0gaGN0cjJfZnJl ZV9pbnN0YW5jZTsKKworCWVyciA9IHNrY2lwaGVyX3JlZ2lzdGVyX2luc3RhbmNlKHRtcGwsIGlu c3QpOworCWlmIChlcnIpIHsKK2Vycl9mcmVlX2luc3Q6CisJCWhjdHIyX2ZyZWVfaW5zdGFuY2Uo aW5zdCk7CisJfQorCXJldHVybiBlcnI7Cit9CisKK3N0YXRpYyBpbnQgaGN0cjJfY3JlYXRlX2Jh c2Uoc3RydWN0IGNyeXB0b190ZW1wbGF0ZSAqdG1wbCwgc3RydWN0IHJ0YXR0ciAqKnRiKQorewor CWNvbnN0IGNoYXIgKnhjdHJfbmFtZTsKKwljb25zdCBjaGFyICpwb2x5dmFsX25hbWU7CisKKwl4 Y3RyX25hbWUgPSBjcnlwdG9fYXR0cl9hbGdfbmFtZSh0YlsxXSk7CisJaWYgKElTX0VSUih4Y3Ry X25hbWUpKQorCQlyZXR1cm4gUFRSX0VSUih4Y3RyX25hbWUpOworCisJcG9seXZhbF9uYW1lID0g Y3J5cHRvX2F0dHJfYWxnX25hbWUodGJbMl0pOworCWlmIChJU19FUlIocG9seXZhbF9uYW1lKSkK KwkJcmV0dXJuIFBUUl9FUlIocG9seXZhbF9uYW1lKTsKKworCXJldHVybiBoY3RyMl9jcmVhdGVf Y29tbW9uKHRtcGwsIHRiLCB4Y3RyX25hbWUsIHBvbHl2YWxfbmFtZSk7Cit9CisKK3N0YXRpYyBp bnQgaGN0cjJfY3JlYXRlKHN0cnVjdCBjcnlwdG9fdGVtcGxhdGUgKnRtcGwsIHN0cnVjdCBydGF0 dHIgKip0YikKK3sKKwljb25zdCBjaGFyICpibG9ja2NpcGhlcl9uYW1lOworCWNoYXIgeGN0cl9u YW1lW0NSWVBUT19NQVhfQUxHX05BTUVdOworCisJYmxvY2tjaXBoZXJfbmFtZSA9IGNyeXB0b19h dHRyX2FsZ19uYW1lKHRiWzFdKTsKKwlpZiAoSVNfRVJSKGJsb2NrY2lwaGVyX25hbWUpKQorCQly ZXR1cm4gUFRSX0VSUihibG9ja2NpcGhlcl9uYW1lKTsKKworCWlmIChzbnByaW50Zih4Y3RyX25h bWUsIENSWVBUT19NQVhfQUxHX05BTUUsICJ4Y3RyKCVzKSIsCisJCSAgICBibG9ja2NpcGhlcl9u YW1lKSA+PSBDUllQVE9fTUFYX0FMR19OQU1FKQorCQlyZXR1cm4gLUVOQU1FVE9PTE9ORzsKKwor CXJldHVybiBoY3RyMl9jcmVhdGVfY29tbW9uKHRtcGwsIHRiLCB4Y3RyX25hbWUsICJwb2x5dmFs Iik7Cit9CisKKy8qIGhjdHIyKGJsb2NrY2lwaGVyX25hbWUpICovCisvKiBoY3RyMl9iYXNlKHhj dHJfbmFtZSwgcG9seXZhbF9uYW1lKSAqLworc3RhdGljIHN0cnVjdCBjcnlwdG9fdGVtcGxhdGUg aGN0cjJfdG1wbHNbXSA9IHsKKwl7CisJCS5uYW1lID0gImhjdHIyX2Jhc2UiLAorCQkuY3JlYXRl ID0gaGN0cjJfY3JlYXRlX2Jhc2UsCisJCS5tb2R1bGUgPSBUSElTX01PRFVMRSwKKwl9LCB7CisJ CS5uYW1lID0gImhjdHIyIiwKKwkJLmNyZWF0ZSA9IGhjdHIyX2NyZWF0ZSwKKwkJLm1vZHVsZSA9 IFRISVNfTU9EVUxFLAorCX0KK307CisKK3N0YXRpYyBpbnQgX19pbml0IGhjdHIyX21vZHVsZV9p bml0KHZvaWQpCit7CisJcmV0dXJuIGNyeXB0b19yZWdpc3Rlcl90ZW1wbGF0ZXMoaGN0cjJfdG1w bHMsIEFSUkFZX1NJWkUoaGN0cjJfdG1wbHMpKTsKK30KKworc3RhdGljIHZvaWQgX19leGl0IGhj dHIyX21vZHVsZV9leGl0KHZvaWQpCit7CisJcmV0dXJuIGNyeXB0b191bnJlZ2lzdGVyX3RlbXBs YXRlcyhoY3RyMl90bXBscywKKwkJCQkJICAgQVJSQVlfU0laRShoY3RyMl90bXBscykpOworfQor CitzdWJzeXNfaW5pdGNhbGwoaGN0cjJfbW9kdWxlX2luaXQpOworbW9kdWxlX2V4aXQoaGN0cjJf bW9kdWxlX2V4aXQpOworCitNT0RVTEVfREVTQ1JJUFRJT04oIkhDVFIyIGxlbmd0aC1wcmVzZXJ2 aW5nIGVuY3J5cHRpb24gbW9kZSIpOworTU9EVUxFX0xJQ0VOU0UoIkdQTCB2MiIpOworTU9EVUxF X0FMSUFTX0NSWVBUTygiaGN0cjIiKTsKK01PRFVMRV9JTVBPUlRfTlMoQ1JZUFRPX0lOVEVSTkFM KTsKZGlmZiAtLWdpdCBhL2NyeXB0by90Y3J5cHQuYyBiL2NyeXB0by90Y3J5cHQuYwppbmRleCBk ZDljZjIxNjAyOWIuLjMzNjU5OGRhOGVhYyAxMDA2NDQKLS0tIGEvY3J5cHRvL3RjcnlwdC5jCisr KyBiL2NyeXB0by90Y3J5cHQuYwpAQCAtMjE5MSw2ICsyMTkxLDExIEBAIHN0YXRpYyBpbnQgZG9f dGVzdChjb25zdCBjaGFyICphbGcsIHUzMiB0eXBlLCB1MzIgbWFzaywgaW50IG0sIHUzMiBudW1f bWIpCiAJCQkJICAgMTYsIDE2LCBhZWFkX3NwZWVkX3RlbXBsYXRlXzE5LCBudW1fbWIpOwogCQli cmVhazsKIAorCWNhc2UgMjI2OgorCQl0ZXN0X2NpcGhlcl9zcGVlZCgiaGN0cjIoYWVzKSIsIEVO Q1JZUFQsIHNlYywgTlVMTCwKKwkJCQkgIDAsIHNwZWVkX3RlbXBsYXRlXzMyKTsKKwkJYnJlYWs7 CisKIAljYXNlIDMwMDoKIAkJaWYgKGFsZykgewogCQkJdGVzdF9oYXNoX3NwZWVkKGFsZywgc2Vj LCBnZW5lcmljX2hhc2hfc3BlZWRfdGVtcGxhdGUpOwpkaWZmIC0tZ2l0IGEvY3J5cHRvL3Rlc3Rt Z3IuYyBiL2NyeXB0by90ZXN0bWdyLmMKaW5kZXggZDgwN2IyMDBlZGY2Li4zMjQ0YjdlNWFhN2Ug MTAwNjQ0Ci0tLSBhL2NyeXB0by90ZXN0bWdyLmMKKysrIGIvY3J5cHRvL3Rlc3RtZ3IuYwpAQCAt NTAzMCw2ICs1MDMwLDE0IEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgYWxnX3Rlc3RfZGVzYyBhbGdf dGVzdF9kZXNjc1tdID0gewogCQkuc3VpdGUgPSB7CiAJCQkuaGFzaCA9IF9fVkVDUyhnaGFzaF90 dl90ZW1wbGF0ZSkKIAkJfQorCX0sIHsKKwkJLmFsZyA9ICJoY3RyMihhZXMpIiwKKwkJLmdlbmVy aWNfZHJpdmVyID0KKwkJICAgICJoY3RyMl9iYXNlKHhjdHIoYWVzLWdlbmVyaWMpLHBvbHl2YWwt Z2VuZXJpYykiLAorCQkudGVzdCA9IGFsZ190ZXN0X3NrY2lwaGVyLAorCQkuc3VpdGUgPSB7CisJ CQkuY2lwaGVyID0gX19WRUNTKGFlc19oY3RyMl90dl90ZW1wbGF0ZSkKKwkJfQogCX0sIHsKIAkJ LmFsZyA9ICJobWFjKG1kNSkiLAogCQkudGVzdCA9IGFsZ190ZXN0X2hhc2gsCmRpZmYgLS1naXQg YS9jcnlwdG8vdGVzdG1nci5oIGIvY3J5cHRvL3Rlc3RtZ3IuaAppbmRleCBjNTgxZTU0MDU5MTYu LjEzYzcwZGRlMmY4OSAxMDA2NDQKLS0tIGEvY3J5cHRvL3Rlc3RtZ3IuaAorKysgYi9jcnlwdG8v dGVzdG1nci5oCkBAIC0zNTEwMCw0ICszNTEwMCw2NzYgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBo YXNoX3Rlc3R2ZWMgcG9seXZhbF90dl90ZW1wbGF0ZVtdID0gewogCiB9OwogCisvKgorICogVGVz dCB2ZWN0b3JzIGdlbmVyYXRlZCB1c2luZyBodHRwczovL2dpdGh1Yi5jb20vZ29vZ2xlL2hjdHIy CisgKi8KK3N0YXRpYyBjb25zdCBzdHJ1Y3QgY2lwaGVyX3Rlc3R2ZWMgYWVzX2hjdHIyX3R2X3Rl bXBsYXRlW10gPSB7CisJeworCQkua2V5CT0gIlx4ZTFceDE1XHg2Nlx4M2NceDhkXHhjNlx4M2Fc eGZmIgorCQkJICAiXHhlZlx4NDFceGQ3XHg0N1x4YTJceGNjXHg4YVx4YmEiLAorCQkuaXYJPSAi XHhjM1x4YmVceDJhXHhjYlx4YjVceDM5XHg4Nlx4ZjEiCisJCQkgICJceDkxXHhhZFx4NmNceGY0 XHhkZVx4NzRceDQ1XHg2MyIKKwkJCSAgIlx4NWNceDdhXHhkNVx4Y2NceDhiXHg3Nlx4ZWZceDBl IgorCQkJICAiXHhjZlx4MmNceDYwXHg2OVx4MzdceGZkXHgwN1x4OTYiLAorCQkucHRleHQJPSAi XHg2NVx4NzVceGFlXHhkM1x4ZTJceGJjXHg0M1x4NWMiCisJCQkgICJceGIzXHgxYVx4ZDhceDA1 XHhjM1x4ZDBceDU2XHgyOSIsCisJCS5jdGV4dAk9ICJceDExXHg5MVx4ZWFceDc0XHg1OFx4Y2Nc eGQ1XHhhMiIKKwkJCSAgIlx4ZDBceDU1XHg5ZVx4M2RceGZlXHg3Zlx4YzhceGZlIiwKKwkJLmts ZW4JPSAxNiwKKwkJLmxlbgk9IDE2LAorCX0sCisJeworCQkua2V5CT0gIlx4ZTdceGQxXHg3N1x4 NDhceDc2XHgwYlx4Y2RceDM0IgorCQkJICAiXHgyYVx4MmRceGU3XHg3NFx4Y2FceDExXHg5Y1x4 YWUiLAorCQkuaXYJPSAiXHg3MVx4MWNceDQ5XHg2Mlx4ZDlceDViXHg1MFx4NWUiCisJCQkgICJc eDY4XHg4N1x4YmNceGY2XHg4OVx4ZmZceGVkXHgzMCIKKwkJCSAgIlx4ZTRceGU1XHhiZFx4YjZc eDEwXHg0Zlx4OWZceDY2IgorCQkJICAiXHgyOFx4MDZceDVhXHhmNFx4MjdceDM1XHhjZFx4ZTUi LAorCQkucHRleHQJPSAiXHg4N1x4MDNceDhmXHgwNlx4YThceDYxXHg1NFx4ZGEiCisJCQkgICJc eDAxXHg0NVx4ZDRceDAxXHhlZlx4NGFceDIyXHhjZiIKKwkJCSAgIlx4NzhceDE1XHg5Zlx4YmRc eDY0XHhiZFx4MmNceGI5IgorCQkJICAiXHg0MFx4MWRceDcyXHhhZVx4NTNceDYzXHhhNSIsCisJ CS5jdGV4dAk9ICJceDRlXHhhMVx4MDVceDI3XHhiOFx4NDVceGU0XHhhMSIKKwkJCSAgIlx4YmJc eDMwXHhiNFx4YTZceDEyXHg3NFx4NjNceGQ2IgorCQkJICAiXHgxN1x4YzlceGNjXHgyZlx4MThc eDY0XHhlMFx4MDYiCisJCQkgICJceDBhXHhhMFx4ZmZceDcyXHgxMFx4N2JceDIyIiwKKwkJLmts ZW4JPSAxNiwKKwkJLmxlbgk9IDMxLAorCX0sCisJeworCQkua2V5CT0gIlx4NTlceDY1XHgzYlx4 MWRceDQzXHg1ZVx4YzBceGFlIgorCQkJICAiXHhiOFx4OWRceDliXHhkZFx4MjJceDAzXHhiZlx4 Y2EiLAorCQkuaXYJPSAiXHhlY1x4OTVceGZhXHg1YVx4Y2ZceDVlXHhkMlx4OTMiCisJCQkgICJc eGEzXHhiNVx4ZTVceGJlXHhmM1x4MDFceDdiXHgwMSIKKwkJCSAgIlx4ZDFceGNhXHg2Y1x4MDZc eDgyXHhmMFx4YmRceDY3IgorCQkJICAiXHhkOVx4NmNceGE0XHhkY1x4YjRceDM4XHgwZlx4NzQi LAorCQkucHRleHQJPSAiXHg0NVx4ZGZceDc1XHg4N1x4YmNceDcyXHhjZVx4NTUiCisJCQkgICJc eGM5XHhmYVx4Y2JceGZjXHg5Zlx4NDBceDgyXHgyYiIKKwkJCSAgIlx4YzZceDRmXHg0Zlx4NWJc eDhiXHgzYlx4NmRceDY3IgorCQkJICAiXHhhNlx4OTNceDYyXHg4OVx4OGNceDE5XHhmNFx4ZTMi CisJCQkgICJceDA4XHg5Mlx4OWNceGM5XHg0N1x4MmNceDZlXHhkMCIKKwkJCSAgIlx4YTNceDAy XHgyYlx4ZGJceDJjXHhmMlx4OGRceDQ2IgorCQkJICAiXHhjZFx4YjBceDlkXHgyNlx4NjNceDRj XHg0MFx4NmIiCisJCQkgICJceDc5XHg0M1x4ZTVceGNlXHg0Mlx4YThceGVjXHgzYiIKKwkJCSAg Ilx4NWJceGQwXHhlYVx4YTRceGU2XHhkYlx4NjZceDU1IgorCQkJICAiXHg3YVx4NzZceGVjXHhh Ylx4N2RceDJhXHgyYlx4YmQiCisJCQkgICJceGE5XHhhYlx4MjJceDY0XHgxYVx4YTFceGFlXHg4 NCIKKwkJCSAgIlx4ODZceDc5XHg2N1x4ZTlceGIyXHg1MFx4YmVceDEyIgorCQkJICAiXHgyZlx4 YjJceDE0XHhmMFx4ZGJceDcxXHhkOFx4YTciCisJCQkgICJceDQxXHg4YVx4ODhceGEwXHg2YVx4 NmVceDlkXHgyYSIKKwkJCSAgIlx4ZmFceDExXHgzN1x4NDBceDMyXHgwOVx4NGNceDQ3IgorCQkJ ICAiXHg0MVx4MDdceDMxXHg4NVx4M2RceGE4XHhmN1x4NjQiLAorCQkuY3RleHQJPSAiXHgyZFx4 NGJceDlmXHg5M1x4Y2FceDVhXHg0OFx4MjYiCisJCQkgICJceDAxXHhjY1x4NTRceGU0XHgzMVx4 NTBceDEyXHhmMCIKKwkJCSAgIlx4NDlceGZmXHg1OVx4NDJceDY4XHhiZFx4ODdceDhmIgorCQkJ ICAiXHg5ZVx4NjJceDk2XHhjZFx4YjlceDI0XHg1N1x4YTQiCisJCQkgICJceDBiXHg3Ylx4ZjVc eDJlXHgwZVx4YThceDY1XHgwNyIKKwkJCSAgIlx4YWJceDA1XHhkNVx4Y2FceGU3XHg5Y1x4NmNc eDM0IgorCQkJICAiXHg1ZFx4NDJceDM0XHhhNFx4NjJceGU5XHg3NVx4NDgiCisJCQkgICJceDNk XHg5ZVx4OGZceGZhXHg0Mlx4ZTlceDc1XHgwOCIKKwkJCSAgIlx4NGVceDU0XHg5MVx4MmJceGJk XHgxMVx4MGZceDhlIgorCQkJICAiXHhmMFx4ODJceGY1XHgyNFx4ZjFceGM0XHhmY1x4YWUiCisJ CQkgICJceDQyXHg1NFx4N2ZceGNlXHgxNVx4YThceGIyXHgzMyIKKwkJCSAgIlx4YzBceDg2XHhi Nlx4MmJceGU4XHg0NFx4Y2VceDFmIgorCQkJICAiXHg2OFx4NTdceDY2XHg5NFx4NmVceGFkXHhl Ylx4ZjMiCisJCQkgICJceDMwXHhmOFx4MTFceGJkXHg2MFx4MDBceGM2XHhkNSIKKwkJCSAgIlx4 NGNceDgxXHhmMVx4MjBceDJiXHg0YVx4NWJceDk5IgorCQkJICAiXHg3OVx4M2JceGM5XHg1Y1x4 NzRceDIzXHhlNlx4NWQiLAorCQkua2xlbgk9IDE2LAorCQkubGVuCT0gMTI4LAorCX0sCisJewor CQkua2V5CT0gIlx4M2VceDA4XHg1ZFx4NjRceDZjXHg5OFx4ZWNceGVjIgorCQkJICAiXHg3MFx4 MGVceDBkXHhhMVx4NDFceDIwXHg5OVx4ODIiLAorCQkuaXYJPSAiXHgxMVx4YjdceDc3XHg5MVx4 MGRceDk5XHhkOVx4OGQiCisJCQkgICJceDM1XHgzYVx4ZjdceDE0XHg2Ylx4MDlceDM3XHhlNSIK KwkJCSAgIlx4YWRceDUxXHhmNlx4YzNceDk2XHg0Ylx4NjRceDU2IgorCQkJICAiXHhhOFx4YmRc eDgxXHhjY1x4YmVceDk0XHhhZlx4ZTQiLAorCQkucHRleHQJPSAiXHhmZlx4OGRceGI5XHhjMFx4 ZTNceDY5XHhiM1x4YjIiCisJCQkgICJceDhiXHgxMVx4MjZceGIzXHgxMVx4ZWNceGZiXHhiOSIK KwkJCSAgIlx4OWNceGMxXHg3MVx4ZDZceGUzXHgyNlx4MGVceGUwIgorCQkJICAiXHg2OFx4NDBc eDYwXHhiOVx4M2FceDYzXHg1Nlx4OGEiCisJCQkgICJceDllXHhjMVx4ZjBceDEwXHhiMVx4NjRc eDMyXHg3MCIKKwkJCSAgIlx4ZjhceGNkXHhjNlx4YzRceDQ5XHg0Y1x4ZTFceGNlIgorCQkJICAi XHhmM1x4ZTFceDAzXHhmOFx4MzVceGFlXHhlMFx4NWUiCisJCQkgICJceGVmXHg1Zlx4YmNceDQx XHg3NVx4MjZceDEzXHhjYyIKKwkJCSAgIlx4MzdceDg1XHhkZlx4YzBceDVkXHhhNlx4NDdceDk4 IgorCQkJICAiXHhmMVx4OTdceDUyXHg1OFx4MDRceGU2XHhiNVx4MDEiCisJCQkgICJceGMwXHhi OFx4MTdceDZkXHg3NFx4YmRceDlhXHhkZiIKKwkJCSAgIlx4YTRceDM3XHg5NFx4ODZceGIwXHgx M1x4ODNceDI4IgorCQkJICAiXHhjOVx4YTJceDA3XHgzZlx4YjVceGIyXHg3Mlx4NDAiCisJCQkg ICJceDBlXHg2MFx4ZGZceDU3XHgwN1x4YjdceDJjXHg2NiIKKwkJCSAgIlx4MTBceDNmXHg4ZFx4 ZGRceDMwXHgwYVx4NDdceGQ1IgorCQkJICAiXHhlOFx4OWRceGZiXHhhMVx4YWZceDUzXHhkN1x4 MDUiCisJCQkgICJceGM3XHhkMlx4YmFceGU3XHgyY1x4YTBceGJmXHhiOCIKKwkJCSAgIlx4ZDFc eDkzXHhlN1x4NDFceDgyXHhhM1x4NDFceDNhIgorCQkJICAiXHhhZlx4MTJceGQ2XHhmOFx4MzRc eGRhXHg5Mlx4NDYiCisJCQkgICJceGFkXHhhMlx4MmZceGY2XHg3ZVx4NDZceDk2XHhkOCIKKwkJ CSAgIlx4MDNceGYzXHg0OVx4NjRceGRlXHhkOFx4MDZceDhiIgorCQkJICAiXHhhMFx4YmNceDYz XHgzNVx4MzhceGI2XHg2Ylx4ZGEiCisJCQkgICJceDViXHg1MFx4M2ZceDEzXHhhNVx4ODRceDFi XHgxYiIKKwkJCSAgIlx4NjZceDg5XHg5NVx4YjdceGMyXHgxNlx4M2NceGU5IgorCQkJICAiXHgy NFx4YjBceDhjXHg2Zlx4NDlceGVmXHhmN1x4MjgiCisJCQkgICJceDZhXHgyNFx4ZmRceGJlXHgy NVx4ZTJceGI0XHg5MCIKKwkJCSAgIlx4NzdceDQ0XHgwOFx4YjhceGRhXHhkMlx4ZGVceDJjIgor CQkJICAiXHhhMFx4NTdceDQ1XHg1N1x4MjlceDQ3XHg2Ylx4ODkiCisJCQkgICJceDRhXHhmNlx4 YTdceDJhXHhjM1x4OWVceDdiXHhjOCIKKwkJCSAgIlx4ZmRceDlmXHg4OVx4YWJceGVlXHg2ZFx4 YTNceGI0IgorCQkJICAiXHgyM1x4OTBceDdhXHhlOVx4ODlceGEwXHhjN1x4YjMiCisJCQkgICJc eDE3XHg0MVx4ODdceDkxXHhmY1x4OTdceDQyIiwKKwkJLmN0ZXh0CT0gIlx4ZmNceDliXHg5Nlx4 NjZceGM0XHg4Mlx4MmFceDRhIgorCQkJICAiXHhiMVx4MjRceGJhXHhjN1x4NzhceDVmXHg3OVx4 YzEiCisJCQkgICJceDU3XHgyZVx4NDdceDI5XHg0ZFx4N2JceGQyXHg5YSIKKwkJCSAgIlx4YmRc eGM2XHhjMVx4MjZceDdiXHg4ZVx4M2ZceDVkIgorCQkJICAiXHhkNFx4YjRceDlmXHg2YVx4MDJc eDI0XHg0YVx4YWQiCisJCQkgICJceDBjXHgwMFx4MWJceGRmXHg5Mlx4YzVceDhhXHhlMSIKKwkJ CSAgIlx4NzdceDc5XHhjY1x4ZDVceDIwXHhiZlx4ODNceGY0IgorCQkJICAiXHg0Ylx4YWRceDEx XHhiZlx4ZGJceDQ3XHg2NVx4NzAiCisJCQkgICJceDQzXHhmM1x4NjVceGRmXHhiN1x4ZGNceGIy XHhiOSIKKwkJCSAgIlx4YWFceDNmXHhiM1x4ZGZceDc5XHg2OVx4MGRceGEwIgorCQkJICAiXHg4 Nlx4MWNceGJhXHg0OFx4MGJceDAxXHhjMVx4ODgiCisJCQkgICJceGRmXHgwM1x4YjFceDA2XHgz Y1x4MWRceDU2XHhhMSIKKwkJCSAgIlx4OGVceDk4XHhjMVx4YTZceDk1XHhhMlx4NWJceDcyIgor CQkJICAiXHg3Nlx4NTlceGQyXHgyNlx4MjVceGNkXHhlZlx4N2MiCisJCQkgICJceGM5XHg2MFx4 ZWFceDQzXHhkMVx4MTJceDhhXHg4YSIKKwkJCSAgIlx4NjNceDEyXHg3OFx4Y2JceDJmXHg4OFx4 MWVceDg4IgorCQkJICAiXHg3OFx4NTlceGRlXHhiYVx4NGRceDJjXHg3OFx4NjEiCisJCQkgICJc eDc1XHgzN1x4NTRceGZkXHg4MFx4YzdceDVlXHg5OCIKKwkJCSAgIlx4Y2ZceDE0XHg2Mlx4OGVc eGZiXHg3Mlx4ZWVceDRkIgorCQkJICAiXHg5Zlx4YWZceDhiXHgwOVx4ZTVceDIxXHgwYVx4OTEi CisJCQkgICJceDhmXHg4OFx4ODdceGQ1XHhiMVx4ODRceGFiXHgxOCIKKwkJCSAgIlx4MDhceDU3 XHhlZFx4NzJceDM1XHhhNlx4MGVceGM2IgorCQkJICAiXHhmZlx4Y2JceGZlXHgyY1x4NDhceDM5 XHgxNFx4NDQiCisJCQkgICJceGJhXHg1OVx4MzJceDNhXHgyZFx4YzRceDVmXHhjYiIKKwkJCSAg Ilx4YmVceDY4XHg4ZVx4N2JceGVlXHgyMVx4YTRceDMyIgorCQkJICAiXHgxMVx4YTBceDk5XHhm ZFx4OTBceGRlXHg1OVx4NDMiCisJCQkgICJceGViXHhlZFx4ZDVceDg3XHg2OFx4NDZceGM2XHhk ZSIKKwkJCSAgIlx4MGJceDA3XHgxN1x4NTlceDZhXHhhYlx4Y2FceDE1IgorCQkJICAiXHg2NVx4 MDJceDAxXHhiNlx4NzFceDhjXHgzYlx4YWEiCisJCQkgICJceDE4XHgzYlx4MzBceGFlXHgzOFx4 NWJceDJjXHg3NCIKKwkJCSAgIlx4ZDRceGVlXHg0YVx4ZmNceGY3XHgxYlx4MDlceGQ0IgorCQkJ ICAiXHhkYVx4OGJceDFkXHg1ZFx4NmZceDIxXHg2YyIsCisJCS5rbGVuCT0gMTYsCisJCS5sZW4J PSAyNTUsCisJfSwKKwl7CisJCS5rZXkJPSAiXHgyNFx4ZjZceGUxXHg2Mlx4ZTVceGFmXHg5OVx4 ZGEiCisJCQkgICJceDg0XHhlY1x4NDFceGIwXHhhM1x4MGJceGQ1XHhhOCIKKwkJCSAgIlx4YTBc eDNlXHg3Ylx4YTZceGRkXHg2Y1x4OGZceGE4IiwKKwkJLml2CT0gIlx4N2ZceDgwXHgyNFx4NjJc eDMyXHhkZFx4YWJceDY2IgorCQkJICAiXHhmMlx4ODdceDI5XHgyNFx4ZWNceGQyXHg0Ylx4OWYi CisJCQkgICJceDBjXHgzM1x4NTJceGQ5XHhlMFx4Y2NceDZlXHhlNCIKKwkJCSAgIlx4OTBceDg1 XHg0M1x4OTdceGM0XHg2Mlx4MTRceDMzIiwKKwkJLnB0ZXh0CT0gIlx4ZWZceDU4XHhlN1x4N2Zc eGE5XHhkOVx4YjhceGQ3IgorCQkJICAiXHhhMlx4OTFceDk3XHgwN1x4MjdceDllXHhiYVx4ZTgi CisJCQkgICJceGFhIiwKKwkJLmN0ZXh0CT0gIlx4ZDdceGMzXHg4MVx4OTFceGYyXHg0MFx4MTdc eDczIgorCQkJICAiXHgzZVx4M2JceDFjXHgyYVx4OGVceDExXHg5Y1x4MTciCisJCQkgICJceGYx IiwKKwkJLmtsZW4JPSAyNCwKKwkJLmxlbgk9IDE3LAorCX0sCisJeworCQkua2V5CT0gIlx4YmZc eGFmXHhkN1x4NjdceDhjXHg0N1x4Y2ZceDIxIgorCQkJICAiXHg4YVx4YTVceGRkXHgzMlx4MjVc eDQ3XHhiZVx4NGYiCisJCQkgICJceGYxXHgzYVx4MGJceGE2XHhhYVx4MmRceGNmXHgwOSIsCisJ CS5pdgk9ICJceGQ5XHhlOFx4ZjBceDkyXHg0ZVx4ZmNceDFkXHhmMiIKKwkJCSAgIlx4ODFceDM3 XHg3Y1x4OGZceGYxXHg1OVx4MDlceDIwIgorCQkJICAiXHhmNFx4NDZceDUxXHg4Nlx4NGZceDU0 XHg4Ylx4MzIiCisJCQkgICJceDU4XHhkMVx4OTlceDhiXHg4Y1x4MDNceGViXHg1ZCIsCisJCS5w dGV4dAk9ICJceGNkXHg2NFx4OTBceGY5XHg3Y1x4ZTVceDBlXHg1YSIKKwkJCSAgIlx4NzVceGU3 XHg4ZVx4MzlceDg2XHhlY1x4MjBceDQzIgorCQkJICAiXHg4YVx4NDlceDA5XHgxNVx4NDdceGY0 XHgzY1x4ODkiCisJCQkgICJceDIxXHhlYlx4Y2ZceDRlXHhjZlx4OTFceGI1XHg0MCIKKwkJCSAg Ilx4Y2RceGU1XHg0ZFx4NWNceDZmXHhmMlx4ZDJceDgwIgorCQkJICAiXHhmYVx4YWJceGIzXHg3 Nlx4OWZceDdmXHg4NFx4MGEiLAorCQkuY3RleHQJPSAiXHg0NFx4OThceDY0XHgxNVx4YjdceDBi XHg4MFx4YTMiCisJCQkgICJceGI5XHhjYVx4MjNceGZmXHgzYlx4MGJceDY4XHg3NCIKKwkJCSAg Ilx4YmJceDNlXHgyMFx4MTlceDlmXHgyOFx4NzFceDJhIgorCQkJICAiXHg0OFx4M2NceDdjXHhl Mlx4ZWZceGI1XHgxMFx4YWMiCisJCQkgICJceDgyXHg5Zlx4Y2RceDA4XHg4Zlx4NmJceDE2XHg2 ZiIKKwkJCSAgIlx4YzNceGJiXHgwN1x4ZmJceDNjXHhiMFx4MWJceDI3IiwKKwkJLmtsZW4JPSAy NCwKKwkJLmxlbgk9IDQ4LAorCX0sCisJeworCQkua2V5CT0gIlx4YjhceDM1XHhhMlx4NWZceDg2 XHhiYlx4ODJceDk5IgorCQkJICAiXHgyN1x4ZWJceDAxXHgzZlx4OTJceGFmXHg4MFx4MjQiCisJ CQkgICJceDRjXHg2Nlx4YTJceDg5XHhmZlx4MmVceGEyXHgyNSIsCisJCS5pdgk9ICJceDBhXHgx ZFx4OTZceGQzXHhlMFx4ZThceDBjXHg5YiIKKwkJCSAgIlx4OWRceDZmXHgyMVx4OTdceGMyXHgx N1x4ZGJceDM5IgorCQkJICAiXHgzZlx4ZDhceDY0XHg0OFx4ODBceDA0XHhlZVx4NDMiCisJCQkg ICJceDAyXHhjZVx4ODhceGUyXHg4MVx4ODFceDVmXHg4MSIsCisJCS5wdGV4dAk9ICJceGI4XHhm OVx4MTZceDhiXHgyNVx4NjhceGQwXHg5YyIKKwkJCSAgIlx4ZDJceDI4XHhhY1x4YThceDc5XHhj Mlx4MzBceGMxIgorCQkJICAiXHgzMVx4ZGVceDFjXHgzN1x4MWJceGEyXHhiNVx4ZTYiCisJCQkg ICJceGYwXHhkMFx4ZjhceDljXHg3Zlx4YzZceDQ2XHgwNyIKKwkJCSAgIlx4NWNceGMzXHgwNlx4 ZTRceGYwXHgwMlx4ZWNceGY4IgorCQkJICAiXHg1OVx4N2NceGMyXHg1ZFx4ZjhceDBjXHgyMVx4 YWUiCisJCQkgICJceDllXHg4Mlx4YjFceDFhXHg1Zlx4NzhceDQ0XHgxNSIKKwkJCSAgIlx4MDBc eGE3XHgyZVx4NTJceGM1XHg5OFx4OThceDM1IgorCQkJICAiXHgwM1x4YWVceGQwXHg4ZVx4MDdc eDU3XHhlMlx4NWEiCisJCQkgICJceDE3XHhiZlx4NTJceDQwXHg1NFx4NWJceDc0XHhlNSIKKwkJ CSAgIlx4MmRceDM1XHhhZlx4OWVceDM3XHhmN1x4N2VceDRhIgorCQkJICAiXHg4Y1x4OWVceGEx XHhkY1x4NDBceGI0XHg1Ylx4MzYiCisJCQkgICJceGRjXHgzYVx4NjhceGU2XHhiN1x4MzVceDBi XHg4YSIKKwkJCSAgIlx4OTBceGVjXHg3NFx4OGZceDA5XHg5YVx4N2ZceDAyIgorCQkJICAiXHg0 ZFx4MDNceDQ2XHgzNVx4NjJceGIxXHhiZFx4MDgiCisJCQkgICJceDNmXHg1NFx4MmFceDEwXHgw Ylx4ZGNceDY5XHhhZiIKKwkJCSAgIlx4MjVceDNhXHgwY1x4NWZceGUwXHg1MVx4ZTdceDExIgor CQkJICAiXHhiN1x4MDBceGFiXHhiYlx4OWFceGIwXHhkY1x4NGQiCisJCQkgICJceGMzXHg3ZFx4 MWFceDZlXHhkMVx4MDlceDUyXHhiZCIKKwkJCSAgIlx4NmJceDQzXHg1NVx4MjJceDNhXHg3OFx4 MTRceDdkIgorCQkJICAiXHg3OVx4ZmRceDhkXHhmY1x4OWJceDFkXHgwZlx4YTIiCisJCQkgICJc eGM3XHhiOVx4ZjhceDg3XHhkNVx4OTZceDUwXHg2MSIKKwkJCSAgIlx4YTdceDVlXHgxZVx4NTdc eDk3XHhlMFx4YWRceDJmIgorCQkJICAiXHg5M1x4ZTZceGU4XHg4M1x4ZWNceDg1XHgyNlx4NWUi CisJCQkgICJceGQ5XHgyYVx4MTVceGUwXHhlOVx4MDlceDI1XHhhMSIKKwkJCSAgIlx4NzdceDJi XHg4OFx4ZGNceGE0XHhhNVx4NDhceGI2IgorCQkJICAiXHhmN1x4Y2NceGE2XHhhOVx4YmFceGYz XHg0Mlx4NWMiCisJCQkgICJceDcwXHg5ZFx4ZTlceDI5XHhjMVx4ZjFceDMzXHhkZCIKKwkJCSAg Ilx4NTZceDQ4XHgxN1x4ODZceDE0XHg1MVx4NWNceDEwIgorCQkJICAiXHhhYlx4ZmRceGQzXHgy Nlx4OGNceDIxXHhmNVx4OTMiCisJCQkgICJceDFiXHhlYlx4NDdceDk3XHg3M1x4YmJceDg4XHgx MCIKKwkJCSAgIlx4ZjNceGZlXHhmNVx4ZGVceGYzXHgyZVx4MDVceDQ2IgorCQkJICAiXHgxY1x4 MGRceGEzXHgxMFx4NDhceDljXHg3MVx4MTYiCisJCQkgICJceDc4XHgzM1x4NGRceDBhXHg3NFx4 M2JceGU5XHgzNCIKKwkJCSAgIlx4MGJceGE3XHgwZVx4OWVceDYxXHhlOVx4ZTlceGZkIgorCQkJ ICAiXHg4NVx4YTBceGNiXHgxOVx4ZmRceDdjXHgzM1x4ZTMiCisJCQkgICJceDBlXHhjZVx4YzJc eDZmXHg5ZFx4YTRceDJkXHg3NyIKKwkJCSAgIlx4ZmRceGFkXHhlZVx4NWVceDA4XHgzZVx4ZDdc eGY1IgorCQkJICAiXHhmYlx4YzNceGQ3XHg5M1x4OTZceDA4XHg5Nlx4Y2EiCisJCQkgICJceDU4 XHg4MVx4MTZceDliXHg5OFx4MGFceGUyXHhlZiIKKwkJCSAgIlx4N2ZceGRhXHg0MFx4ZTRceDFm XHg0Nlx4OWVceDY3IgorCQkJICAiXHgyYlx4ODRceGNiXHg0Mlx4YzRceGQ2XHg2YVx4Y2YiCisJ CQkgICJceDJkXHhiMlx4MzNceGMwXHg1Nlx4YjNceDM1XHg2ZiIKKwkJCSAgIlx4MjlceDM2XHg4 Zlx4NmFceDViXHhlY1x4ZDVceDRmIgorCQkJICAiXHhhMFx4NzBceGZmXHhiNlx4NWJceGRlXHg2 YVx4OTMiCisJCQkgICJceDIwXHgzY1x4ZTJceDc2XHg3YVx4ZWZceDNjXHg3OSIKKwkJCSAgIlx4 MzFceDY1XHhjZVx4M2FceDBlXHhkMFx4YmVceGE4IgorCQkJICAiXHgyMVx4OTVceGM3XHgyYlx4 NjJceDhlXHg2N1x4ZGQiCisJCQkgICJceDIwXHg3OVx4ZTRceGU1XHgwMVx4MTVceGMwXHhlYyIK KwkJCSAgIlx4MGZceGQ5XHgyM1x4YzhceGNhXHhkZlx4ZDRceDdkIgorCQkJICAiXHgxZFx4Zjhc eDY0XHg0Zlx4NTZceGIxXHg4M1x4YTciCisJCQkgICJceDQzXHhiZVx4ZmNceGNmXHhjMlx4OGNc eDMzXHhkYSIKKwkJCSAgIlx4MzZceGQwXHg1Mlx4ZWZceDllXHg5ZVx4ODhceGY0IgorCQkJICAi XHhhOFx4MjFceDBmXHhhYVx4ZWVceDhkXHhhMFx4MjQiCisJCQkgICJceDRkXHhjYlx4YjFceDcy XHgwN1x4ZjBceGMyXHgwNiIKKwkJCSAgIlx4NjBceDY1XHg4NVx4ODRceDJjXHg2MFx4Y2ZceDYx IgorCQkJICAiXHhlN1x4NTZceDQzXHg1Ylx4MmJceDUwXHg3NFx4ZmEiCisJCQkgICJceGRiXHg0 ZVx4ZWFceDg4XHhkNFx4YjNceDgzXHg4ZiIKKwkJCSAgIlx4NmZceDk3XHg0Ylx4NTdceDdhXHg2 NFx4NjRceGFlIgorCQkJICAiXHgwYVx4MzdceDY2XHhjNVx4MDNceGFkXHhiNVx4ZjkiCisJCQkg ICJceDA4XHhiMFx4M2FceDc0XHhkZVx4OTdceDUxXHhmZiIKKwkJCSAgIlx4NDhceDRmXHg1Y1x4 YTRceGY4XHg3YVx4YjRceDA1IgorCQkJICAiXHgyN1x4NzBceDUyXHg4Nlx4MWJceDc4XHhmY1x4 MTgiCisJCQkgICJceDA2XHgyN1x4YTlceDYyXHhmN1x4ZGFceGQyXHg4ZSIsCisJCS5jdGV4dAk9 ICJceDNiXHhlMVx4ZGJceGIzXHhjNVx4OWFceGRlXHg2OSIKKwkJCSAgIlx4NThceDA1XHhjY1x4 ZWJceDAyXHg1MVx4NzhceDRhIgorCQkJICAiXHhhY1x4MjhceGU5XHhlZFx4ZDFceGM5XHgxNVx4 N2QiCisJCQkgICJceDMzXHg3ZFx4YzFceDQ3XHgxMlx4NDFceDExXHhmOCIKKwkJCSAgIlx4NGFc eDJjXHhiN1x4YTNceDQxXHhiZVx4NTlceGY3IgorCQkJICAiXHgyMlx4ZGJceDJjXHhkYVx4OWNc eDAwXHg2MVx4OWIiCisJCQkgICJceDczXHhiM1x4MGJceDg0XHgyYlx4YzFceGYzXHg4MCIKKwkJ CSAgIlx4ODRceGViXHgxOVx4NjBceDgwXHgwOVx4ZTFceGNkIgorCQkJICAiXHgxNlx4M2FceDIw XHgyM1x4YzRceDgyXHg0Zlx4YmEiCisJCQkgICJceDNiXHg4ZVx4NTVceGQ3XHhhOVx4MGJceDc1 XHhkMCIKKwkJCSAgIlx4ZGFceGNlXHhkMlx4ZWVceDdlXHg0Ylx4N2ZceDY1IgorCQkJICAiXHg0 ZFx4MjhceGM1XHhkM1x4MTVceDJjXHg0MFx4OTYiCisJCQkgICJceDUyXHhkNFx4MThceDYxXHgy Ylx4ZTdceDgzXHhlYyIKKwkJCSAgIlx4ODlceDYyXHg5Y1x4NGNceDUwXHhlNlx4ZTJceGJiIgor CQkJICAiXHgyNVx4YTFceDBmXHhhN1x4YjBceGI0XHhiMlx4ZGUiCisJCQkgICJceDU0XHgyMFx4 YWVceGEzXHg1Nlx4YTVceDI2XHg0YyIKKwkJCSAgIlx4ZDVceGNjXHhlNVx4Y2JceDI4XHg0NFx4 YjFceGVmIgorCQkJICAiXHg2N1x4MmVceDkzXHg2ZFx4MDBceDg4XHg4M1x4OWEiCisJCQkgICJc eGYyXHgxY1x4NDhceDM4XHhlY1x4MWFceDI0XHg5MCIKKwkJCSAgIlx4NzNceDBhXHhkYlx4ZThc eGNlXHg5NVx4N2FceDJjIgorCQkJICAiXHg4Y1x4ZTlceGI3XHgwN1x4MWRceGIzXHhhM1x4MjAi CisJCQkgICJceGJlXHhhZFx4NjFceDg0XHhhY1x4ZGVceDc2XHhiNSIKKwkJCSAgIlx4YTZceDI4 XHgyOVx4NDdceDYzXHhjNFx4ZmNceDEzIgorCQkJICAiXHgzZlx4NzFceGZiXHg1OFx4MzdceDM0 XHg4Mlx4ZWQiCisJCQkgICJceDllXHgwNVx4MTlceDFmXHhjMVx4NjdceGMxXHhhYiIKKwkJCSAg Ilx4ZjVceGZkXHg3Y1x4ZWFceGZhXHhhNFx4ZjhceDBhIgorCQkJICAiXHhhY1x4NGNceDkyXHhk Zlx4NjVceDczXHhkN1x4ZGIiCisJCQkgICJceGVkXHgyY1x4ZTBceDg0XHg1Zlx4NTdceDhjXHg3 NiIKKwkJCSAgIlx4M2VceDA1XHhjMFx4YzNceDY4XHg5Nlx4OTVceDBiIgorCQkJICAiXHg4OFx4 OTdceGZlXHgyZVx4OTlceGQ1XHhjMlx4YjkiCisJCQkgICJceDUzXHg5Zlx4ZjNceDMyXHgxMFx4 MWZceDFmXHg1ZCIKKwkJCSAgIlx4ZGZceDIxXHg5NVx4NzBceDkxXHhlOFx4YTFceDNlIgorCQkJ ICAiXHgxOVx4M2VceGI2XHgwYlx4YThceGRiXHhmOFx4ZDQiCisJCQkgICJceDU0XHgyN1x4Yjhc eGFiXHg1ZFx4NzhceDBjXHhlNiIKKwkJCSAgIlx4YjdceDA4XHhlZVx4YTRceGI2XHg2Ylx4ZWJc eDVhIgorCQkJICAiXHg4OVx4NjlceDJiXHhiZFx4ZDRceDIxXHg1Ylx4YmYiCisJCQkgICJceDc5 XHhiYlx4MGZceGZmXHhkYlx4MjNceDlhXHhlYiIKKwkJCSAgIlx4OGRceGYyXHhjNFx4MzlceGI0 XHg5MFx4NzdceDZmIgorCQkJICAiXHg2OFx4ZTJceGI4XHhmM1x4ZjFceDY1XHg0Zlx4ZDUiCisJ CQkgICJceDI0XHg4MFx4MDZceGFmXHg3Y1x4OGRceDE1XHgwYyIKKwkJCSAgIlx4ZmRceDU2XHhl NVx4ZTNceDAxXHhhNVx4ZjdceDFjIgorCQkJICAiXHgzMVx4ZDZceGEyXHgwMVx4MWVceDU5XHhm OVx4YTkiCisJCQkgICJceDQyXHhkNVx4YzJceDM0XHhkYVx4MjVceGRlXHhjNiIKKwkJCSAgIlx4 NWRceDM4XHhlZlx4ZDFceDRjXHhjMVx4ZDlceDFiIgorCQkJICAiXHg5OFx4ZmRceGNkXHg1N1x4 NmZceGZkXHg0Nlx4OTEiCisJCQkgICJceDkwXHgzZFx4NTJceDJiXHgyY1x4N2RceGNmXHg3MSIK KwkJCSAgIlx4Y2ZceGQxXHg3N1x4MjNceDcxXHgzNlx4YjFceGNlIgorCQkJICAiXHhjN1x4NWRc eGYwXHg1Ylx4NDRceDNkXHg0M1x4NzEiCisJCQkgICJceGFjXHhiOFx4YTBceDZhXHhlYVx4ODlc eDVjXHhmZiIKKwkJCSAgIlx4ODFceDczXHhkNFx4ODNceGQxXHhjOVx4ZTlceGUyIgorCQkJICAi XHhhOFx4YTZceDBmXHgzNlx4ZTZceGFhXHg1N1x4ZDQiCisJCQkgICJceDI3XHhkMlx4YzlceGRh XHg5NFx4MDJceDFmXHhmYiIKKwkJCSAgIlx4ZTFceGExXHgwN1x4YmVceGUxXHgxYlx4MTVceDk0 IgorCQkJICAiXHgxZVx4YWNceDJmXHg1N1x4YmJceDQxXHgyMlx4YWYiCisJCQkgICJceDYwXHg1 ZVx4Y2NceDY2XHhjYlx4MTZceDYyXHhhYiIKKwkJCSAgIlx4YjhceDdjXHg5OVx4ZjRceDg0XHg5 M1x4MGNceGMyIgorCQkJICAiXHhhMlx4NDlceGU0XHhmZFx4MTdceDU1XHhlMVx4YTYiCisJCQkg ICJceDhkXHg1Ylx4YzZceDFiXHhjOFx4YWNceGVjXHgxMSIKKwkJCSAgIlx4MzNceGNmXHhiMFx4 ZThceGM3XHgyOFx4NGZceGIyIgorCQkJICAiXHg1Y1x4YTZceGUyXHg3MVx4YWJceDgwXHgwYVx4 YTciCisJCQkgICJceDVjXHg1OVx4NTBceDlmXHg3YVx4MzJceGI3XHhlNSIKKwkJCSAgIlx4MjRc eDlhXHg4ZVx4MjVceDIxXHgyZVx4YjdceDE4IgorCQkJICAiXHhkMFx4ZjJceGU3XHgyN1x4NmZc eGRhXHhjMVx4MDAiCisJCQkgICJceGQ5XHhhNlx4MDNceDU5XHhhY1x4NGJceGNiXHhiYSIsCisJ CS5rbGVuCT0gMjQsCisJCS5sZW4JPSA1MTIsCisJfSwKKwl7CisJCS5rZXkJPSAiXHg5ZVx4ZWJc eGIyXHg0OVx4M2NceDFjXHhmNVx4ZjQiCisJCQkgICJceDZhXHg5OVx4YzJceGM0XHhkZlx4YjFc eGY0XHhkZCIKKwkJCSAgIlx4NzVceDIwXHg1N1x4ZWFceDJjXHg0Zlx4Y2RceGIyIgorCQkJICAi XHhhNVx4M2RceDdiXHg0OVx4MWVceGFiXHhmZFx4MGYiLAorCQkuaXYJPSAiXHhkZlx4NjNceGQ0 XHhhYlx4ZDJceDQ5XHhmM1x4ZDgiCisJCQkgICJceDMzXHg4MVx4MzdceDYwXHg3ZFx4ZmFceDcz XHgwOCIKKwkJCSAgIlx4ZDhceDQ5XHg2ZFx4ODBceGU4XHgyZlx4NjJceDU0IgorCQkJICAiXHhl Ylx4MGVceGE5XHgzOVx4NWJceDQ1XHg3Zlx4OGEiLAorCQkucHRleHQJPSAiXHg2N1x4YzlceGYy XHgzMFx4ODRceDQxXHg4ZVx4NDMiCisJCQkgICJceGZiXHhmM1x4YjNceDNlXHg3OVx4MzZceDdm XHhlOCIsCisJCS5jdGV4dAk9ICJceDI3XHgzOFx4NzhceDQ3XHgxNlx4ZDlceDcxXHgzNSIKKwkJ CSAgIlx4MmVceDdlXHhkZFx4N2VceDQzXHgzY1x4YjhceDQwIiwKKwkJLmtsZW4JPSAzMiwKKwkJ Lmxlbgk9IDE2LAorCX0sCisJeworCQkua2V5CT0gIlx4OTNceGZhXHg3ZVx4ZTJceDBlXHg2N1x4 YzRceDM5IgorCQkJICAiXHhlN1x4Y2FceDQ3XHg5NVx4NjhceDlkXHg1ZVx4NWEiCisJCQkgICJc eDdjXHgyNlx4MTlceGFiXHhjNlx4Y2FceDZhXHg0YyIKKwkJCSAgIlx4NDVceGE2XHg5Nlx4NDJc eGFlXHg2Y1x4ZmZceGU3IiwKKwkJLml2CT0gIlx4ZWFceDgyXHg0N1x4OTVceDNiXHgyMlx4YTFc eDNhIgorCQkJICAiXHg2YVx4Y2FceDI0XHg0Y1x4NTBceDdlXHgyM1x4Y2QiCisJCQkgICJceDBl XHg1MFx4ZTVceDQxXHhiNlx4NjVceDI5XHhkOCIKKwkJCSAgIlx4MzBceDIzXHgwMFx4ZDJceDU0 XHhhN1x4ZDZceDU2IiwKKwkJLnB0ZXh0CT0gIlx4ZGJceDFmXHgxZlx4ZWNceGFkXHg4M1x4NmVc eDVkIgorCQkJICAiXHgxOVx4YTVceGY2XHgzYlx4YjRceDkzXHg1YVx4NTciCisJCQkgICJceDZm IiwKKwkJLmN0ZXh0CT0gIlx4ZjFceDQ2XHg2ZVx4OWRceGIzXHgwMVx4ZjBceDZiIgorCQkJICAi XHhjMlx4YWNceDU3XHg4OFx4NDhceDZkXHg0MFx4NzIiCisJCQkgICJceDY4IiwKKwkJLmtsZW4J PSAzMiwKKwkJLmxlbgk9IDE3LAorCX0sCisJeworCQkua2V5CT0gIlx4MzZceDJiXHg1N1x4OTdc eGY4XHg1ZFx4Y2RceDk5IgorCQkJICAiXHg1Zlx4MWFceDVhXHg0NFx4MWRceDkyXHgwZlx4Mjci CisJCQkgICJceGNjXHgxNlx4ZDdceDJiXHg4NVx4NjNceDk5XHhkMyIKKwkJCSAgIlx4YmFceDk2 XHhhMVx4ZGJceGQyXHg2MFx4NjhceGRhIiwKKwkJLml2CT0gIlx4ZWZceDU4XHg2OVx4YjFceDJj XHg1ZVx4OWFceDQ3IgorCQkJICAiXHgyNFx4YzFceGIxXHg2OVx4ZTFceDEyXHg5M1x4OGYiCisJ CQkgICJceDQzXHgzZFx4NmRceDAwXHhkYlx4NWVceGQ4XHhkOSIKKwkJCSAgIlx4MTJceDlhXHhm ZVx4ZDlceGZmXHgyZFx4YWFceGM0IiwKKwkJLnB0ZXh0CT0gIlx4NWVceGE4XHg2OFx4MTlceDg1 XHg5OFx4MTJceDIzIgorCQkJICAiXHgyNlx4MGFceGNjXHhkYlx4MGFceDA0XHhiOVx4ZGYiCisJ CQkgICJceDRkXHhiM1x4NDhceDdiXHhiMFx4ZTNceGM4XHgxOSIKKwkJCSAgIlx4NDNceDVhXHg0 Nlx4MDZceDk0XHgyZFx4ZjIiLAorCQkuY3RleHQJPSAiXHhkYlx4ZmRceGM4XHgwM1x4ZDBceGVj XHhjMVx4ZmUiCisJCQkgICJceGJkXHg2NFx4MzdceGI4XHg4Mlx4NDNceDYyXHg0ZSIKKwkJCSAg Ilx4N2VceDU0XHhhM1x4ZTJceDI0XHhhN1x4MjdceGU4IgorCQkJICAiXHhhNFx4ZDVceGIzXHg2 Y1x4YjJceDI2XHhiNCIsCisJCS5rbGVuCT0gMzIsCisJCS5sZW4JPSAzMSwKKwl9LAorCXsKKwkJ LmtleQk9ICJceDAzXHg2NVx4MDNceDZlXHg0ZFx4ZTZceGU4XHg0ZSIKKwkJCSAgIlx4OGJceGJl XHgyMlx4MTlceDQ4XHgzMVx4ZWVceGQ5IgorCQkJICAiXHhhMFx4OTFceDIxXHhiZVx4NjJceDg5 XHhkZVx4NzgiCisJCQkgICJceGQ5XHhiMFx4MzZceGEzXHgzY1x4Y2VceDQzXHhkNSIsCisJCS5p dgk9ICJceGE5XHhjM1x4NGJceGU3XHgwZlx4ZmNceDZkXHhiZiIKKwkJCSAgIlx4NTZceDI3XHgy MVx4MWNceGZjXHhkNlx4MDRceDEwIgorCQkJICAiXHg1Zlx4NDNceGUyXHgzMFx4MzVceDI5XHg2 Y1x4MTAiCisJCQkgICJceDkwXHhmMVx4YmZceDYxXHhlZFx4MGZceDhhXHg5MSIsCisJCS5wdGV4 dAk9ICJceDA3XHhhYVx4MDJceDI2XHhiNFx4OThceDExXHg1ZSIKKwkJCSAgIlx4MzNceDQxXHgy MVx4NTFceDUxXHg2M1x4MmNceDcyIgorCQkJICAiXHgwMFx4YWJceDMyXHhhN1x4MWNceGM4XHgz Y1x4OWMiCisJCQkgICJceDI1XHgwZVx4OGJceDlhXHhkZlx4ODVceGVkXHgyZCIKKwkJCSAgIlx4 ZjRceGYyXHhiY1x4NTVceGNhXHg5Mlx4NmRceDIyIgorCQkJICAiXHhmZFx4MjJceDNiXHg0Mlx4 NGNceDBiXHg3NFx4ZWMiLAorCQkuY3RleHQJPSAiXHg3Ylx4YjFceDQzXHg2ZFx4ZDhceDcyXHg2 Y1x4ZjYiCisJCQkgICJceDY3XHg2YVx4MDBceGM0XHhmMVx4ZjBceGY1XHhhNCIKKwkJCSAgIlx4 ZmNceDYwXHg5MVx4YWJceDQ2XHgwYlx4MTVceGZjIgorCQkJICAiXHhkN1x4YzFceDI4XHgxNVx4 YTFceGZjXHhmN1x4NjgiCisJCQkgICJceDhlXHhjY1x4MjdceDYyXHgwMFx4NjRceDU2XHg3MiIK KwkJCSAgIlx4YTZceDE3XHhkN1x4M2ZceDY3XHg4MFx4MTBceDU4IiwKKwkJLmtsZW4JPSAzMiwK KwkJLmxlbgk9IDQ4LAorCX0sCisJeworCQkua2V5CT0gIlx4YTVceDI4XHgyNFx4MzRceDFhXHgz Y1x4ZDhceGY3IgorCQkJICAiXHgwNVx4OTFceDhmXHhlZVx4ODVceDFmXHgzNVx4N2YiCisJCQkg ICJceDgwXHgzZFx4ZmNceDliXHg5NFx4ZjZceGZjXHg5ZSIKKwkJCSAgIlx4MTlceDA5XHgwMFx4 YTlceDA0XHgzMVx4NGZceDExIiwKKwkJLml2CT0gIlx4YTFceGJhXHg0OVx4OTVceGZmXHgzNFx4 NmRceGI4IgorCQkJICAiXHhjZFx4ODdceDVkXHg1ZVx4ZmRceGVhXHg4NVx4ZGIiCisJCQkgICJc eDhhXHg3Ylx4NWVceGIyXHg1ZFx4NTdceGRkXHg2MiIKKwkJCSAgIlx4YWNceGE5XHg4Y1x4NDFc eDQyXHg5NFx4NzVceGI3IiwKKwkJLnB0ZXh0CT0gIlx4NjlceGI0XHhlOFx4OGNceDM3XHhlOFx4 NjdceDgyIgorCQkJICAiXHhmMVx4ZWNceDVkXHgwNFx4ZTVceDE0XHg5MVx4MTMiCisJCQkgICJc eGRmXHhmMlx4ODdceDFiXHg2OVx4ODFceDFkXHg3MSIKKwkJCSAgIlx4NzBceDllXHg5Y1x4M2Jc eGRlXHg0OVx4NzBceDExIgorCQkJICAiXHhhMFx4YTNceGRiXHgwZFx4NTRceDRmXHg2Nlx4Njki CisJCQkgICJceGQ3XHhkYlx4ODBceGE3XHg3MFx4OTJceDY4XHhjZSIKKwkJCSAgIlx4ODFceDA0 XHgyY1x4YzZceGFiXHhhZVx4ZTVceDYwIgorCQkJICAiXHgxNVx4ZTlceDZmXHhlZlx4YWFceDhm XHhhN1x4YTciCisJCQkgICJceDYzXHg4Zlx4ZjJceGYwXHg3N1x4ZjFceGE4XHhlYSIKKwkJCSAg Ilx4ZTFceGI3XHgxZlx4OWVceGFiXHg5ZVx4NGJceDNmIgorCQkJICAiXHgwN1x4ODdceDViXHg2 Zlx4Y2RceGE4XHhhZlx4YjkiCisJCQkgICJceGZhXHg3MFx4MGJceDUyXHhiOFx4YThceGE3XHg5 ZSIKKwkJCSAgIlx4MDdceDVmXHhhNlx4MGVceGIzXHg5Ylx4NzlceDEzIgorCQkJICAiXHg3OVx4 YzNceDNlXHg4ZFx4MWNceDJjXHg2OFx4YzgiCisJCQkgICJceDUxXHgxZFx4M2NceDdiXHg3ZFx4 NzlceDc3XHgyYSIKKwkJCSAgIlx4NTZceDY1XHhjNVx4NTRceDIzXHgyOFx4YjBceDAzIiwKKwkJ LmN0ZXh0CT0gIlx4ZWJceGY5XHg5OFx4ODZceDNjXHg0MFx4OWZceDE2IgorCQkJICAiXHg4NFx4 MDFceGY5XHgwNlx4MGZceGViXHgzY1x4YTkiCisJCQkgICJceDRjXHhhNFx4OGVceDVkXHhjM1x4 OGRceGU1XHhkMyIKKwkJCSAgIlx4YWVceGE2XHhlNlx4Y2NceGQ2XHgyZFx4MzdceDRmIgorCQkJ ICAiXHg5OVx4YzhceGEzXHgyMVx4NDZceGI4XHg2OVx4ZjIiCisJCQkgICJceGUzXHgxNFx4ODlc eGQ3XHhiOVx4ZjVceDllXHg0ZSIKKwkJCSAgIlx4MDdceDkzXHg2Zlx4NzhceDhlXHg2Ylx4ZWFc eDhmIgorCQkJICAiXHhmYlx4NDNceGI4XHgzZVx4OWJceDRjXHgxZFx4N2UiCisJCQkgICJceDIw XHg5YVx4YzVceDg3XHhlZVx4YWZceGY2XHhmOSIKKwkJCSAgIlx4NDZceGM1XHgxOFx4OGFceGU4 XHg2OVx4ZTdceDk2IgorCQkJICAiXHg1Mlx4NTVceDVmXHgwMFx4MWVceDFhXHhkY1x4Y2MiCisJ CQkgICJceDEzXHhhNVx4ZWVceGZmXHg0Ylx4MjdceGNhXHhkYyIKKwkJCSAgIlx4MTBceGE2XHg0 OFx4NzZceDk4XHg0M1x4OTRceGEzIgorCQkJICAiXHhjN1x4ZTJceGM5XHg2NVx4OWJceDA4XHgx NFx4MjYiCisJCQkgICJceDFkXHg2OFx4ZmJceDE1XHgwYVx4MzNceDQ5XHg4NCIKKwkJCSAgIlx4 ODRceDMzXHg1YVx4MWJceDI0XHg0Nlx4MzFceDkyIiwKKwkJLmtsZW4JPSAzMiwKKwkJLmxlbgk9 IDEyOCwKKwl9LAorCXsKKwkJLmtleQk9ICJceDM2XHg0NVx4MTFceGEyXHg5OFx4NWZceDk2XHg3 YyIKKwkJCSAgIlx4YzZceGI0XHg5NFx4MzFceDBhXHg2N1x4MDlceDMyIgorCQkJICAiXHg2Y1x4 NmZceDZmXHgwMFx4ZjBceDE3XHhjYlx4YWMiCisJCQkgICJceGE1XHhhOVx4NDdceDllXHgyZVx4 ODVceDJmXHhmYSIsCisJCS5pdgk9ICJceDI4XHg4OFx4YWFceDliXHg1OVx4M2JceDFlXHg5NyIK KwkJCSAgIlx4ODJceGU1XHg1Y1x4OWVceDZkXHgxNFx4MTFceDE5IgorCQkJICAiXHg2ZVx4Mzhc eDhmXHhkNVx4NDBceDJiXHhjYVx4ZjkiCisJCQkgICJceDdiXHg0Y1x4ZTRceGEzXHhkMFx4ZDJc eDhhXHgxMyIsCisJCS5wdGV4dAk9ICJceDk1XHhkMlx4ZjdceDcxXHgxYlx4Y2FceGE1XHg4NiIK KwkJCSAgIlx4ZDlceDQ4XHgwMVx4OTNceDJmXHg3OVx4NTVceDI5IgorCQkJICAiXHg3MVx4MTNc eDE1XHgwZVx4ZTZceDEyXHhiY1x4NGQiCisJCQkgICJceDhhXHgzMVx4ZTNceDQwXHgyYVx4YzZc eDVlXHgwZCIKKwkJCSAgIlx4NjhceGJiXHg0YVx4NjJceDhkXHhjN1x4NDVceDc3IgorCQkJICAi XHhkMlx4YjhceGM3XHgxZFx4ZjFceGQyXHg1ZFx4OTciCisJCQkgICJceGNmXHhhY1x4NTJceGU1 XHgzMlx4NzdceGI2XHhkYSIKKwkJCSAgIlx4MzBceDg1XHhjZlx4MmJceDk4XHhlOVx4YWFceDM0 IgorCQkJICAiXHg2Mlx4YjVceDIzXHg5ZVx4YjdceGE2XHhkNFx4ZTAiCisJCQkgICJceGI0XHg1 OFx4MThceDhjXHg0ZFx4ZGVceDRkXHgwMSIKKwkJCSAgIlx4ODNceDg5XHgyNFx4Y2FceGZiXHgx MVx4ZDRceDgyIgorCQkJICAiXHgzMFx4N2FceDgxXHgzNVx4YTBceGI0XHhkNFx4YjYiCisJCQkg ICJceDg0XHhlYVx4NDdceDkxXHg4Y1x4MTlceDg2XHgyNSIKKwkJCSAgIlx4YTZceDA2XHg4ZFx4 NzhceGU2XHhlZFx4ODdceGViIgorCQkJICAiXHhkYVx4ZWFceDczXHg3Y1x4YmZceDY2XHhiOFx4 NzIiCisJCQkgICJceGUzXHgwYVx4YjhceDBjXHhjYlx4MWFceDczXHhmMSIKKwkJCSAgIlx4YTdc eGNhXHgwYVx4ZGVceDU3XHgyYlx4YmRceDJiIgorCQkJICAiXHhlYlx4OGJceDI0XHgzOFx4MjJc eGQzXHgwZVx4MWYiCisJCQkgICJceDE3XHhhMFx4ODRceDk4XHgzMVx4NzdceGZkXHgzNCIKKwkJ CSAgIlx4NmFceDRlXHgzZFx4ODRceDRjXHgwZVx4ZmJceGVkIgorCQkJICAiXHhjOFx4MmFceDUx XHhmYVx4ZDhceDczXHgyMVx4OGEiCisJCQkgICJceGRiXHhiNVx4ZmVceDFmXHhlZVx4YzRceGU4 XHg2NSIKKwkJCSAgIlx4NTRceDg0XHhkZFx4OTZceDZkXHhmZFx4ZDNceDMxIgorCQkJICAiXHg3 N1x4MzZceDUyXHg2Ylx4ODBceDRmXHg5ZVx4YjQiCisJCQkgICJceGEyXHg1NVx4YmZceDY2XHg0 MVx4NDlceDRlXHg4NyIKKwkJCSAgIlx4YTdceDBjXHhjYVx4ZTdceGE1XHhjNVx4ZjZceDZmIgor CQkJICAiXHgyN1x4NTZceGUyXHg0OFx4MjJceGRkXHg1Zlx4NTkiCisJCQkgICJceDNjXHhmMVx4 OWZceDgzXHhlNVx4MmRceGZiXHg3MSIKKwkJCSAgIlx4YWRceGQxXHhhZVx4MWJceDIwXHg1Y1x4 NDdceGI3IgorCQkJICAiXHgzYlx4ZDNceDE0XHhjZVx4ODFceDQyXHhiMVx4MGEiCisJCQkgICJc eGYwXHg0OVx4ZmFceGMyXHhlN1x4ODZceGJmXHhjZCIKKwkJCSAgIlx4YjBceDk1XHg5Zlx4OGZc eDc5XHg0MVx4NTQiLAorCQkuY3RleHQJPSAiXHhmNlx4NTdceDUxXHhjNFx4MjVceDYxXHgyZFx4 ZmEiCisJCQkgICJceGQ2XHhkOVx4M2ZceDlhXHg4MVx4NTFceGRkXHg4ZSIKKwkJCSAgIlx4M2Rc eGU3XHhhYVx4MmRceGIxXHhkYVx4YzhceGE2IgorCQkJICAiXHg5ZFx4YWFceDNjXHhhYlx4NjJc eGYyXHg4MFx4YzMiCisJCQkgICJceDJjXHhlN1x4NThceDcyXHgxZFx4NDRceGM1XHgyOCIKKwkJ CSAgIlx4N2ZceGI0XHhmOVx4YmNceDljXHhiMlx4YWJceDhlIgorCQkJICAiXHhmYVx4ZDFceDRk XHg3Mlx4ZDlceDc5XHhmNVx4YTAiCisJCQkgICJceDI0XHgzZVx4OTBceDI1XHgzMVx4MTRceDM4 XHg0NSIKKwkJCSAgIlx4NTlceGM4XHhmNlx4ZTJceGM2XHhmNlx4YzFceGE3IgorCQkJICAiXHhi Mlx4ZjhceGE3XHhhOVx4MmJceDZmXHgxMlx4M2EiCisJCQkgICJceGIwXHg4MVx4YTRceDA4XHg1 N1x4NTlceGIxXHg1NiIKKwkJCSAgIlx4NGNceDhmXHgxOFx4NTVceDMzXHg1Zlx4ZDZceDZhIgor CQkJICAiXHhjNlx4YTBceDRiXHhkNlx4NmJceDY0XHgzZVx4OWUiCisJCQkgICJceGZkXHg2Nlx4 MTZceGUyXHhkYlx4ZWJceDVmXHhiMyIKKwkJCSAgIlx4NTBceDUwXHgzZVx4ZGVceDhkXHg3Mlx4 NzZceDAxIgorCQkJICAiXHhiZVx4Y2NceGM5XHg1Mlx4MDlceDJkXHg4ZFx4ZTciCisJCQkgICJc eGQ2XHhjM1x4NjZceGRiXHgzNlx4MDhceGQxXHg3NyIKKwkJCSAgIlx4YzhceDczXHg0Nlx4MjZc eDI0XHgyOVx4YmZceDY4IgorCQkJICAiXHgyZFx4MmFceDk5XHg0M1x4NTZceDU1XHhlNFx4OTMi CisJCQkgICJceGFmXHhhZVx4NGRceGU3XHg1NVx4NGFceGMwXHg0NSIKKwkJCSAgIlx4MjZceGVi XHgzYlx4MTJceDkwXHg3Y1x4ZGNceGQxIgorCQkJICAiXHhkNVx4NmZceDBhXHhkMFx4YTlceGQ3 XHg0Ylx4ODkiCisJCQkgICJceDBiXHgwN1x4ZDhceDg2XHhhZFx4YTFceGM0XHg2OSIKKwkJCSAg Ilx4MWZceDVlXHg4Ylx4YzRceDllXHg5MVx4NDFceDI1IgorCQkJICAiXHg1Nlx4OThceDY5XHg3 OFx4M2FceDllXHhhZVx4OTEiCisJCQkgICJceGQ4XHhkOVx4ZmFceGZiXHhmZlx4ODFceDI1XHgw OSIKKwkJCSAgIlx4ZmNceGVkXHgyZFx4ODdceGJjXHgwNFx4NjJceDk3IgorCQkJICAiXHgzNVx4 ZTFceDI2XHhjMlx4NDZceDFjXHhjZlx4ZDciCisJCQkgICJceDE0XHhlZFx4MDJceDA5XHhhNVx4 YjJceGI2XHhhYSIKKwkJCSAgIlx4MjdceDRlXHg2MVx4YjNceDcxXHg2Ylx4NDdceDE2IgorCQkJ ICAiXHhiN1x4ZThceGQ0XHhhZlx4NTJceGViXHg2YVx4NmIiCisJCQkgICJceGRiXHg0Y1x4NjVc eDIxXHg5ZVx4MWNceDM2IiwKKwkJLmtsZW4JPSAzMiwKKwkJLmxlbgk9IDI1NSwKKwl9LAorCXsK KwkJLmtleQk9ICJceGQzXHg4MVx4NzJceDE4XHgyM1x4ZmZceDZmXHg0YSIKKwkJCSAgIlx4MjVc eDc0XHgyOVx4MGRceDUxXHg4YVx4MGVceDEzIgorCQkJICAiXHhjMVx4NTNceDVkXHgzMFx4OGRc eGVlXHg3NVx4MGQiCisJCQkgICJceDE0XHhkNlx4NjlceGM5XHgxNVx4YTlceDBjXHg2MCIsCisJ CS5pdgk9ICJceDY1XHg5Ylx4ZDRceGE4XHg3ZFx4MjlceDFkXHhmNCIKKwkJCSAgIlx4YzRceGQ2 XHg5Ylx4NmFceDI4XHhhYlx4NjRceGUyIgorCQkJICAiXHg2Mlx4ODFceDk3XHhjNVx4ODFceGFh XHhmOVx4NDQiCisJCQkgICJceGMxXHg3Mlx4NTlceDgyXHhhZlx4MTZceGM4XHgyYyIsCisJCS5w dGV4dAk9ICJceGM3XHg2Ylx4NTJceDZhXHgxMFx4ZjBceGNjXHgwOSIKKwkJCSAgIlx4YzFceDEy XHgxZFx4NmRceDIxXHhhNlx4NzhceGY1IgorCQkJICAiXHgwNVx4YTNceDY5XHg2MFx4OTFceDM2 XHg5OFx4NTciCisJCQkgICJceGJhXHgwY1x4MTRceGNjXHhmM1x4MmRceDczXHgwMyIKKwkJCSAg Ilx4YzZceGIyXHg1Zlx4YzhceDE2XHgyN1x4MzdceDVkIgorCQkJICAiXHhkMFx4MGJceDg3XHhi Mlx4NTBceDk0XHg3Ylx4NTgiCisJCQkgICJceDA0XHhmNFx4ZTBceDdmXHg2ZVx4NTdceDhlXHhj OSIKKwkJCSAgIlx4NDFceDg0XHhjMVx4YjFceDdlXHg0Ylx4OTFceDEyIgorCQkJICAiXHgzYVx4 OGJceDVkXHg1MFx4ODJceDdiXHhjYlx4ZDkiCisJCQkgICJceDlhXHhkOVx4NGVceDE4XHgwNlx4 MjNceDllXHhkNCIKKwkJCSAgIlx4YTVceDIwXHg5OFx4ZWZceGI1XHhkYVx4ZTVceGMwIgorCQkJ ICAiXHg4YVx4NmFceDgzXHg3N1x4MTVceDg0XHgxZVx4YWUiCisJCQkgICJceDc4XHg5NFx4OWRc eGRmXHhiN1x4ZDFceGVhXHg2NyIKKwkJCSAgIlx4YWFceGIwXHgxNFx4MTVceGZhXHg2N1x4MjFc eDg0IgorCQkJICAiXHhkM1x4NDFceDJhXHhjZVx4YmFceDRiXHg0YVx4ZTgiCisJCQkgICJceDk1 XHg2Mlx4YTlceDU1XHhmMFx4ODBceGFkXHhiZCIKKwkJCSAgIlx4YWJceGFmXHhkZFx4NGZceGE1 XHg3Y1x4MTNceDM2IgorCQkJICAiXHhlZFx4NWVceDRmXHg3Mlx4YWRceDRiXHhmMVx4ZDAiCisJ CQkgICJceDg4XHg0ZVx4ZWNceDJjXHg4OFx4MTBceDVlXHhlYSIKKwkJCSAgIlx4MTJceGMwXHgx Nlx4MDFceDI5XHhhM1x4YTBceDU1IgorCQkJICAiXHhhYVx4NjhceGYzXHhlOVx4OWRceDNiXHgw ZFx4M2IiCisJCQkgICJceDZkXHhlY1x4ZjhceGEwXHgyZFx4ZjBceDkwXHg4ZCIKKwkJCSAgIlx4 MWNceGUyXHg4OFx4ZDRceDI0XHg3MVx4ZjlceGIzIgorCQkJICAiXHhjMVx4OWZceGM1XHhkNlx4 NzZceDcwXHhjNVx4MmUiCisJCQkgICJceDljXHhhY1x4ZGJceDkwXHhiZFx4ODNceDcyXHhiYSIK KwkJCSAgIlx4NmVceGI1XHhhNVx4NTNceDgzXHhhOVx4YTVceGJmIgorCQkJICAiXHg3ZFx4MDZc eDBlXHgzY1x4MmFceGQyXHgwNFx4YjUiCisJCQkgICJceDFlXHgxOVx4MzhceDA5XHgxNlx4ZDJc eDgyXHgxZiIKKwkJCSAgIlx4NzVceDE4XHg1Nlx4YjhceDk2XHgwYlx4YTZceGY5IgorCQkJICAi XHhjZlx4NjJceGQ5XHgzMlx4NWRceGE5XHhkN1x4MWQiCisJCQkgICJceGVjXHhlNFx4ZGZceDFi XHhiZVx4ZjFceDM2XHhlZSIKKwkJCSAgIlx4ZTNceDdiXHhiNVx4MmZceGVlXHhmOFx4NTNceDNk IgorCQkJICAiXHg2YVx4YjdceDcwXHhhOVx4ZmNceDljXHg1N1x4MjUiCisJCQkgICJceGYyXHg4 OVx4MTBceGQzXHhiOFx4YThceDhjXHgzMCIKKwkJCSAgIlx4YWVceDIzXHg0Zlx4MGVceDEzXHg2 Nlx4NGZceGUxIgorCQkJICAiXHhiNlx4YzBceGU0XHhmOFx4ZWZceDkzXHhiZFx4NmUiCisJCQkg ICJceDE1XHg4NVx4NmJceGUzXHg2MFx4ODFceDFkXHg2OCIKKwkJCSAgIlx4ZDdceDMxXHg4N1x4 ODlceDA5XHhhYlx4ZDVceDk2IgorCQkJICAiXHgxZFx4ZjNceDZkXHg2N1x4ODBceGNhXHgwN1x4 MzEiCisJCQkgICJceDVkXHhhN1x4ZTRceGZiXHgzZVx4ZjJceDliXHgzMyIKKwkJCSAgIlx4NTJc eDE4XHhjOFx4MzBceGZlXHgyZFx4Y2FceDFlIgorCQkJICAiXHg3OVx4OTJceDdhXHg2MFx4NWNc eGI2XHg1OFx4ODciCisJCQkgICJceGE0XHgzNlx4YTJceDY3XHg5Mlx4OGJceGE0XHhiNyIKKwkJ CSAgIlx4ZjFceDg2XHhkZlx4ZGNceGMwXHg3ZVx4OGZceDYzIgorCQkJICAiXHhkMlx4YTJceGRj XHg3OFx4ZWJceDRmXHhkOFx4OTYiCisJCQkgICJceDQ3XHhjYVx4YjhceDkxXHhmOVx4ZjdceDk0 XHgyMSIKKwkJCSAgIlx4NWZceDlhXHg5Zlx4NWJceGI4XHg0MFx4NDFceDRiIgorCQkJICAiXHg2 Nlx4NjlceDZhXHg3Mlx4ZDBceGNiXHg3MFx4YjciCisJCQkgICJceDkzXHhiNVx4MzdceDk2XHgw NVx4MzdceDRmXHhlNSIKKwkJCSAgIlx4OGNceGE3XHg1YVx4NGVceDhiXHhiN1x4ODRceGVhIgor CQkJICAiXHhjN1x4ZmNceDE5XHg2ZVx4MWZceDVhXHhhMVx4YWMiCisJCQkgICJceDE4XHg3ZFx4 NTJceDNiXHhiM1x4MzRceDYyXHg5OSIKKwkJCSAgIlx4ZTRceDllXHgzMVx4MDRceDNmXHhjMFx4 OGRceDg0IgorCQkJICAiXHgxN1x4N2NceDI1XHg0OFx4NTJceDY3XHgxMVx4MjciCisJCQkgICJc eDY3XHhiYlx4NWFceDg1XHhjYVx4NTZceGIyXHg1YyIKKwkJCSAgIlx4ZTZceGVjXHhkNVx4OTZc eDNkXHgxNVx4ZmNceGZiIgorCQkJICAiXHgyMlx4MjVceGY0XHgxM1x4ZTVceDkzXHg0Ylx4OWEi CisJCQkgICJceDc3XHhmMVx4NTJceDE4XHhmYVx4MTZceDVlXHg0OSIKKwkJCSAgIlx4MDNceDQ1 XHhhOFx4MDhceGZhXHhiM1x4NDFceDkyIgorCQkJICAiXHg3OVx4NTBceDMzXHhjYVx4ZDBceGQ3 XHg0Mlx4NTUiCisJCQkgICJceGMzXHg5YVx4MGNceDRlXHhkOVx4YTRceDNjXHg4NiIKKwkJCSAg Ilx4ODBceDlmXHg1M1x4ZDFceGE0XHgyZVx4ZDFceGJjIgorCQkJICAiXHhmMVx4NTRceDZlXHg5 M1x4YTRceDY1XHg5OVx4OGUiCisJCQkgICJceGRmXHgyOVx4YzBceDY0XHg2M1x4MDdceGJiXHhl YSIsCisJCS5jdGV4dAk9ICJceDlmXHg3Mlx4ODdceGM3XHgxN1x4ZmJceDIwXHgxNSIKKwkJCSAg Ilx4NjVceGIzXHg1NVx4YThceDFjXHg4ZVx4NTJceDMyIgorCQkJICAiXHhiMVx4ODJceDhkXHhi Zlx4YjVceDlmXHgxMFx4MGEiCisJCQkgICJceGU4XHgwY1x4NzBceDYyXHhlZlx4ODlceGI2XHgx ZiIKKwkJCSAgIlx4NzNceGNjXHhlNFx4Y2NceDdhXHgzYVx4NzVceDRhIgorCQkJICAiXHgyNlx4 ZTdceGY1XHhkN1x4N2JceDE3XHgzOVx4MmQiCisJCQkgICJceGQyXHgyN1x4NmVceGY5XHgyZlx4 OWVceGUyXHhmNiIKKwkJCSAgIlx4ZmFceDE2XHhjMlx4ZjJceDQ5XHgyNlx4YTdceDViIgorCQkJ ICAiXHhlN1x4Y2FceDI1XHgwZVx4NDVceGEwXHgzNFx4YzIiCisJCQkgICJceDlhXHgzN1x4Nzlc eDdlXHg3Y1x4NThceDE4XHg5NCIKKwkJCSAgIlx4MTBceGE4XHg3Y1x4NDhceGE5XHhkN1x4NjNc eDg5IgorCQkJICAiXHg5ZVx4NjFceDRkXHgyNlx4MzRceGQ5XHhmMFx4YjEiCisJCQkgICJceDJk XHgxN1x4MmNceDZmXHg3Y1x4MzVceDBlXHhiZSIKKwkJCSAgIlx4NzdceDcxXHg3Y1x4MTdceDVi XHhhYlx4NzBceGRiIgorCQkJICAiXHgyZlx4NTRceDBmXHhhOVx4YzhceGY0XHhmNVx4YWIiCisJ CQkgICJceDUyXHgwNFx4M2FceGI4XHgwM1x4YTdceGZkXHg1NyIKKwkJCSAgIlx4NDVceDVlXHhi Y1x4NzdceGUxXHhlZVx4NzlceDhjIgorCQkJICAiXHg1OFx4N2JceDFmXHhmN1x4NzVceGRlXHg2 OFx4MTciCisJCQkgICJceDk4XHg4NVx4OGFceDE4XHg1Y1x4ZDJceDM5XHg3OCIKKwkJCSAgIlx4 N2FceDZmXHgyNlx4NmVceGUxXHgxM1x4OTFceGRkIgorCQkJICAiXHhkZlx4MGVceDZlXHg2N1x4 Y2NceDUxXHg1M1x4ZDgiCisJCQkgICJceDE3XHg1ZVx4Y2VceGE3XHhlNFx4YWZceGZhXHhmMyIK KwkJCSAgIlx4NGZceDlmXHgwMVx4OWJceDA0XHhlN1x4ZmNceGY5IgorCQkJICAiXHg2YVx4ZGNc eDFkXHgwY1x4OWFceGFhXHgzYVx4N2EiCisJCQkgICJceDczXHgwM1x4ZGZceGJmXHgzYlx4ODJc eGJlXHhiMCIKKwkJCSAgIlx4YjRceGE0XHhjZlx4MDdceGQ3XHhkZVx4NzFceDI1IgorCQkJICAi XHhjNVx4MTBceGVlXHgwYVx4MTVceDk2XHg4Ylx4NGYiCisJCQkgICJceGZlXHhiOFx4MjhceGJk XHg0YVx4Y2RceGViXHg5ZiIKKwkJCSAgIlx4NWRceDAwXHhjMVx4ZWVceGU4XHgxNlx4NDRceGVj IgorCQkJICAiXHhlOVx4N2JceGQ2XHg4NVx4MTdceDI5XHhjZlx4NTgiCisJCQkgICJceDIwXHhh Ylx4ZjdceGNlXHg2Ylx4ZTdceDcxXHg3ZCIKKwkJCSAgIlx4NGZceGE4XHhiMFx4ZTlceDdkXHg3 MFx4ZDZceDBiIgorCQkJICAiXHgyZVx4MjBceGIxXHgxYVx4NjNceDM3XHhhYVx4MmMiCisJCQkg ICJceDk0XHhlZVx4ZDVceGY2XHg1OFx4MmFceGY0XHg3YSIKKwkJCSAgIlx4NGNceGJhXHhmNVx4 ZTlceDNjXHg2Zlx4OTVceDEzIgorCQkJICAiXHg1Zlx4OTZceDgxXHg1Ylx4YjVceDYyXHhmMlx4 ZDciCisJCQkgICJceDhkXHhiZVx4YTFceDMxXHg1MVx4ZTZceGZlXHhjOSIKKwkJCSAgIlx4MDdc eDdkXHgwZlx4MDBceDNhXHg2Nlx4OGNceDRiIgorCQkJICAiXHg5NFx4YWFceGU1XHg1Nlx4ZGVc eGNkXHg3NFx4YTciCisJCQkgICJceDQ4XHg2N1x4NmZceGVkXHhjOVx4NmFceGVmXHhhZiIKKwkJ CSAgIlx4OWFceGI3XHhhZVx4NjBceGZhXHhjMFx4MzdceDM5IgorCQkJICAiXHhhNVx4MjVceGU1 XHgyMlx4ZWFceDgyXHg1NVx4NjgiCisJCQkgICJceDNlXHgzMFx4YzNceDVhXHhiNlx4MjlceDcz XHg3YSIKKwkJCSAgIlx4YjZceGZiXHgzNFx4ZWVceDUxXHg3Y1x4NTRceGU1IgorCQkJICAiXHgw MVx4NGRceDcyXHgyNVx4MzJceDRhXHhhM1x4NjgiCisJCQkgICJceDgwXHg5YVx4ODlceGM1XHgx MVx4NjZceDRjXHg4YyIKKwkJCSAgIlx4NDRceDUwXHhiZVx4ZDdceGEwXHhlZVx4YTZceGJiIgor CQkJICAiXHg5Mlx4MGNceGU2XHhkN1x4ODNceDUxXHhiMVx4NjkiCisJCQkgICJceDYzXHg0MFx4 ZjNceGY0XHg5Mlx4ODRceGM0XHgzOCIKKwkJCSAgIlx4MjlceGZiXHhiNFx4ODRceGEwXHgxOVx4 NzVceDE2IgorCQkJICAiXHg2MFx4YmZceDBhXHg5Y1x4ODlceGVlXHhhZFx4YjQiCisJCQkgICJc eDQzXHhmOVx4NzFceDM5XHg0NVx4N2NceDI0XHg4MyIKKwkJCSAgIlx4MzBceGJiXHhlZVx4Mjhc eGIwXHg4Nlx4N2JceGVjIgorCQkJICAiXHg5M1x4YzFceGJmXHhiOVx4OTdceDFiXHg5Nlx4ZWYi CisJCQkgICJceGVlXHg1OFx4MzVceDYxXHgxMlx4MTlceGRhXHgyNSIKKwkJCSAgIlx4NzdceGU1 XHg4MFx4MWFceDMxXHgyN1x4OWJceGU0IgorCQkJICAiXHhkYVx4OGJceDdlXHg1MVx4NGRceGNi XHgwMVx4MTkiCisJCQkgICJceDRmXHhkY1x4OTJceDFhXHgxN1x4ZDVceDZiXHhmNCIKKwkJCSAg Ilx4NTBceGUzXHgwNlx4ZTRceDc2XHg5Zlx4NjVceDAwIgorCQkJICAiXHhiZFx4N2FceGUyXHg2 NFx4MjZceGYyXHhlNFx4N2UiCisJCQkgICJceDQwXHhmMlx4ODBceGFiXHg2Mlx4ZDVceGVmXHgy MyIKKwkJCSAgIlx4OGJceGZiXHg2Zlx4MjRceDZlXHg5Ylx4NjZceDBlIgorCQkJICAiXHhmNFx4 MWNceDI0XHgxZVx4MWRceDI2XHg5NVx4MDkiCisJCQkgICJceDk0XHgzY1x4YjJceGI2XHgwMlx4 YTdceGQ5XHg5YSIsCisJCS5rbGVuCT0gMzIsCisJCS5sZW4JPSA1MTIsCisJfSwKKworfTsKKwog I2VuZGlmCS8qIF9DUllQVE9fVEVTVE1HUl9IICovCi0tIAoyLjM1LjEuNzIzLmc0OTgyMjg3YTMx LWdvb2cKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwps aW51eC1hcm0ta2VybmVsIG1haWxpbmcgbGlzdApsaW51eC1hcm0ta2VybmVsQGxpc3RzLmluZnJh ZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51 eC1hcm0ta2VybmVsCg==