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 393A6C433F5 for ; Wed, 27 Apr 2022 00:42:01 +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=2dcsMFvwdJP97xahx585EzQFW7ASsw7E/DT81SGPi0M=; b=arAd71lW4Glv4RshsCDCPGi7uH NLTOhNbAf37Am38P3A7AMU6jM3i7o/EE5dfSiqj+2tKXTr3e2Gbh2WbvdXxpEAl89WDO9scXZaZTB YrOZ+y+xroO8gue2Fm8P2og2eNdKqekX6+lydVskqa23tiD3MRbOqok3bzKVDc45KXlfvMn4BkZV+ yJHLbRvaNyE4NRrIEcQEsNSyycNI33pW5RXDrvmWk781CcdbUeaAwkKSue8aGx+28QoJDZf2GlQ/n zABnRBA8O2C84eKIwFvcKo74eEzEka20mR2GwZmgDSBT9YxQ9i3Hbb3GpvnS47VYgP9UUK63+99XZ 8ECLIKoQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1njVj7-00Gmsp-GK; Wed, 27 Apr 2022 00:40:17 +0000 Received: from mail-yw1-x1149.google.com ([2607:f8b0:4864:20::1149]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1njVhC-00Gm8C-9Z for linux-arm-kernel@lists.infradead.org; Wed, 27 Apr 2022 00:38:27 +0000 Received: by mail-yw1-x1149.google.com with SMTP id 00721157ae682-2f7dbceab08so2440887b3.10 for ; Tue, 26 Apr 2022 17:38:08 -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=O8fFoLDkonONI4Ptvm+GUQXiIpWlnjRWXxlGtvHDooM=; b=sxiNjdjXoUKTpyul+ay9hYygu67MvzmsSK66Lf+8t7ICOpoOgF3aUxiw1s7iTAQ2lO z0GX00yzCVyinF/qyaN8MfJyHFgks30KNrN8cvVGldw+90qMXnBLfJE3438CKH1MYQsq e0NwRmSSM8rAHcaGK5IgTb0Da8CD/eutgaHiFSI0q2yFGTjjWzYJJhwBhDerSYXS3uqp VQIi3au/lZ/ITWuJo5IVh2viGJ+TYO1uFpxUHnGpjWFNzS1oefFr+MPw5gEUuDwK9ALL vOKmxlJTc7wonLxwas5xtATHVkAE1TxTRl6vqoc6+iUPY+QfMhpK8t7vg7nx5twQgom8 kRNA== 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=O8fFoLDkonONI4Ptvm+GUQXiIpWlnjRWXxlGtvHDooM=; b=44suUANiBMzh1Wv0rZK/EIFB5LDK6RiABeVJVFXBZBluOKsWjd4OXfDijg4Ot1a2vX sa6hIT6XRqNTjkRocZaQ3/O3ZpAPzRAdGwJuSQJnFoMVNpaqkT5JllExVJCuTOP7iNWZ tbq8wP/AjZQvFjNMZtMo+QI/f1ZI1MjV0GJyeWTO8tQ+Aq55cUbleQNElvm2n5r8Trf5 FWXIa5hu2W0i/mT6TYDcGSfen7KCOAsLeZMSBSYaK7s+XgjcI4kAf8gLXpesvDERI8yZ Q/kymdRTRvMPEdREeQxXGPuT/TQS2njMeggt27QSFHBgqjSlt+6gdUEHc1i4OaHFFlaj fWXw== X-Gm-Message-State: AOAM530LTm9O3Ap+haIGpa3dKBZtSh92ipaeS2145lvZYJwJ1/XwSxBv gR4EHXAASPokwBC6MI7tc46CJq0ecA== X-Google-Smtp-Source: ABdhPJzEpjIy9lAEsSHjyyhSu08GTt94UDRfIEUbLi2+8dV12soe0zm72ekv51VaG3Q58OZW2UVmh2AtCA== X-Received: from nhuck.c.googlers.com ([fda3:e722:ac3:cc00:14:4d90:c0a8:39cc]) (user=nhuck job=sendgmr) by 2002:a81:8086:0:b0:2e5:c21c:bb86 with SMTP id q128-20020a818086000000b002e5c21cbb86mr24570582ywf.99.1651019887593; Tue, 26 Apr 2022 17:38:07 -0700 (PDT) Date: Wed, 27 Apr 2022 00:37:54 +0000 In-Reply-To: <20220427003759.1115361-1-nhuck@google.com> Message-Id: <20220427003759.1115361-4-nhuck@google.com> Mime-Version: 1.0 References: <20220427003759.1115361-1-nhuck@google.com> X-Mailer: git-send-email 2.36.0.rc2.479.g8af0fa9b8e-goog Subject: [PATCH v5 3/8] crypto: hctr2 - Add HCTR2 support From: Nathan Huckleberry To: linux-crypto@vger.kernel.org Cc: linux-fscrypt.vger.kernel.org@google.com, 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-20220426_173818_457141_63238FAB X-CRM114-Status: GOOD ( 29.25 ) 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 ClNpZ25lZC1vZmYtYnk6IE5hdGhhbiBIdWNrbGViZXJyeSA8bmh1Y2tAZ29vZ2xlLmNvbT4KUmV2 aWV3ZWQtYnk6IEFyZCBCaWVzaGV1dmVsIDxhcmRiQGtlcm5lbC5vcmc+Ci0tLQogY3J5cHRvL0tj b25maWcgICB8ICAxMSArCiBjcnlwdG8vTWFrZWZpbGUgIHwgICAxICsKIGNyeXB0by9oY3RyMi5j ICAgfCA1ODAgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogY3J5cHRv L3RjcnlwdC5jICB8ICAgNSArCiBjcnlwdG8vdGVzdG1nci5jIHwgICA4ICsKIGNyeXB0by90ZXN0 bWdyLmggfCA2NzIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysKIDYgZmlsZXMgY2hhbmdlZCwgMTI3NyBpbnNlcnRpb25zKCspCiBjcmVhdGUgbW9kZSAxMDA2 NDQgY3J5cHRvL2hjdHIyLmMKCmRpZmYgLS1naXQgYS9jcnlwdG8vS2NvbmZpZyBiL2NyeXB0by9L Y29uZmlnCmluZGV4IDAwMTM5ODQ1ZDc2ZC4uMGRlZGJhNzRkYjRhIDEwMDY0NAotLS0gYS9jcnlw dG8vS2NvbmZpZworKysgYi9jcnlwdG8vS2NvbmZpZwpAQCAtNTMyLDYgKzUzMiwxNyBAQCBjb25m aWcgQ1JZUFRPX0FESUFOVFVNCiAKIAkgIElmIHVuc3VyZSwgc2F5IE4uCiAKK2NvbmZpZyBDUllQ VE9fSENUUjIKKwl0cmlzdGF0ZSAiSENUUjIgc3VwcG9ydCIKKwlzZWxlY3QgQ1JZUFRPX1hDVFIK KwlzZWxlY3QgQ1JZUFRPX1BPTFlWQUwKKwlzZWxlY3QgQ1JZUFRPX01BTkFHRVIKKwloZWxwCisJ ICBIQ1RSMiBpcyBhIGxlbmd0aC1wcmVzZXJ2aW5nIGVuY3J5cHRpb24gbW9kZSBmb3Igc3RvcmFn ZSBlbmNyeXB0aW9uIHRoYXQKKwkgIGlzIGVmZmljaWVudCBvbiBwcm9jZXNzb3JzIHdpdGggaW5z dHJ1Y3Rpb25zIHRvIGFjY2VsZXJhdGUgQUVTIGFuZAorCSAgY2FycnlsZXNzIG11bHRpcGxpY2F0 aW9uLCBlLmcuIHg4NiBwcm9jZXNzb3JzIHdpdGggQUVTLU5JIGFuZCBDTE1VTCwgYW5kCisJICBB Uk0gcHJvY2Vzc29ycyB3aXRoIHRoZSBBUk12OCBjcnlwdG8gZXh0ZW5zaW9ucy4KKwogY29uZmln IENSWVBUT19FU1NJVgogCXRyaXN0YXRlICJFU1NJViBzdXBwb3J0IGZvciBibG9jayBlbmNyeXB0 aW9uIgogCXNlbGVjdCBDUllQVE9fQVVUSEVOQwpkaWZmIC0tZ2l0IGEvY3J5cHRvL01ha2VmaWxl IGIvY3J5cHRvL01ha2VmaWxlCmluZGV4IDU2MWY5MDFhOTFkNC4uMmRjYTlkYmRlZGU2IDEwMDY0 NAotLS0gYS9jcnlwdG8vTWFrZWZpbGUKKysrIGIvY3J5cHRvL01ha2VmaWxlCkBAIC05NCw2ICs5 NCw3IEBAIG9iai0kKENPTkZJR19DUllQVE9fTFJXKSArPSBscncubwogb2JqLSQoQ09ORklHX0NS WVBUT19YVFMpICs9IHh0cy5vCiBvYmotJChDT05GSUdfQ1JZUFRPX0NUUikgKz0gY3RyLm8KIG9i ai0kKENPTkZJR19DUllQVE9fWENUUikgKz0geGN0ci5vCitvYmotJChDT05GSUdfQ1JZUFRPX0hD VFIyKSArPSBoY3RyMi5vCiBvYmotJChDT05GSUdfQ1JZUFRPX0tFWVdSQVApICs9IGtleXdyYXAu bwogb2JqLSQoQ09ORklHX0NSWVBUT19BRElBTlRVTSkgKz0gYWRpYW50dW0ubwogb2JqLSQoQ09O RklHX0NSWVBUT19OSFBPTFkxMzA1KSArPSBuaHBvbHkxMzA1Lm8KZGlmZiAtLWdpdCBhL2NyeXB0 by9oY3RyMi5jIGIvY3J5cHRvL2hjdHIyLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAw MDAwMDAwMDAwLi5lZTIwNTk0NzUwMWUKLS0tIC9kZXYvbnVsbAorKysgYi9jcnlwdG8vaGN0cjIu YwpAQCAtMCwwICsxLDU4MCBAQAorLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEdQTC0yLjAK Ky8qCisgKiBIQ1RSMiBsZW5ndGgtcHJlc2VydmluZyBlbmNyeXB0aW9uIG1vZGUKKyAqCisgKiBD b3B5cmlnaHQgMjAyMSBHb29nbGUgTExDCisgKi8KKworCisvKgorICogSENUUjIgaXMgYSBsZW5n dGgtcHJlc2VydmluZyBlbmNyeXB0aW9uIG1vZGUgdGhhdCBpcyBlZmZpY2llbnQgb24KKyAqIHBy b2Nlc3NvcnMgd2l0aCBpbnN0cnVjdGlvbnMgdG8gYWNjZWxlcmF0ZSBBRVMgYW5kIGNhcnJ5bGVz cworICogbXVsdGlwbGljYXRpb24sIGUuZy4geDg2IHByb2Nlc3NvcnMgd2l0aCBBRVMtTkkgYW5k IENMTVVMLCBhbmQgQVJNCisgKiBwcm9jZXNzb3JzIHdpdGggdGhlIEFSTXY4IGNyeXB0byBleHRl bnNpb25zLgorICoKKyAqIEZvciBtb3JlIGRldGFpbHMsIHNlZSB0aGUgcGFwZXI6ICJMZW5ndGgt cHJlc2VydmluZyBlbmNyeXB0aW9uIHdpdGggSENUUjIiCisgKiAoaHR0cHM6Ly9lcHJpbnQuaWFj ci5vcmcvMjAyMS8xNDQxLnBkZikKKyAqLworCisjaW5jbHVkZSA8Y3J5cHRvL2ludGVybmFsL2Np cGhlci5oPgorI2luY2x1ZGUgPGNyeXB0by9pbnRlcm5hbC9oYXNoLmg+CisjaW5jbHVkZSA8Y3J5 cHRvL2ludGVybmFsL3NrY2lwaGVyLmg+CisjaW5jbHVkZSA8Y3J5cHRvL3BvbHl2YWwuaD4KKyNp bmNsdWRlIDxjcnlwdG8vc2NhdHRlcndhbGsuaD4KKyNpbmNsdWRlIDxsaW51eC9tb2R1bGUuaD4K KworI2RlZmluZSBCTE9DS0NJUEhFUl9CTE9DS19TSVpFCQkxNgorCisvKgorICogVGhlIHNwZWNp ZmljYXRpb24gYWxsb3dzIHZhcmlhYmxlLWxlbmd0aCB0d2Vha3MsIGJ1dCBMaW51eCdzIGNyeXB0 byBBUEkKKyAqIGN1cnJlbnRseSBvbmx5IGFsbG93cyBhbGdvcml0aG1zIHRvIHN1cHBvcnQgYSBz aW5nbGUgbGVuZ3RoLiAgVGhlICJuYXR1cmFsIgorICogdHdlYWsgbGVuZ3RoIGZvciBIQ1RSMiBp cyAxNiwgc2luY2UgdGhhdCBmaXRzIGludG8gb25lIFBPTFlWQUwgYmxvY2sgZm9yCisgKiB0aGUg YmVzdCBwZXJmb3JtYW5jZS4gIEJ1dCBsb25nZXIgdHdlYWtzIGFyZSB1c2VmdWwgZm9yIGZzY3J5 cHQsIHRvIGF2b2lkCisgKiBuZWVkaW5nIHRvIGRlcml2ZSBwZXItZmlsZSBrZXlzLiAgU28gaW5z dGVhZCB3ZSB1c2UgdHdvIGJsb2Nrcywgb3IgMzIgYnl0ZXMuCisgKi8KKyNkZWZpbmUgVFdFQUtf U0laRQkJMzIKKworc3RydWN0IGhjdHIyX2luc3RhbmNlX2N0eCB7CisJc3RydWN0IGNyeXB0b19j aXBoZXJfc3Bhd24gYmxvY2tjaXBoZXJfc3Bhd247CisJc3RydWN0IGNyeXB0b19za2NpcGhlcl9z cGF3biB4Y3RyX3NwYXduOworCXN0cnVjdCBjcnlwdG9fc2hhc2hfc3Bhd24gcG9seXZhbF9zcGF3 bjsKK307CisKK3N0cnVjdCBoY3RyMl90Zm1fY3R4IHsKKwlzdHJ1Y3QgY3J5cHRvX2NpcGhlciAq YmxvY2tjaXBoZXI7CisJc3RydWN0IGNyeXB0b19za2NpcGhlciAqeGN0cjsKKwlzdHJ1Y3QgY3J5 cHRvX3NoYXNoICpwb2x5dmFsOworCXU4IExbQkxPQ0tDSVBIRVJfQkxPQ0tfU0laRV07CisJaW50 IGhhc2hlZF90d2Vha19vZmZzZXQ7CisJLyoKKwkgKiBUaGlzIHN0cnVjdCBpcyBhbGxvY2F0ZWQg d2l0aCBleHRyYSBzcGFjZSBmb3IgdHdvIGV4cG9ydGVkIGhhc2gKKwkgKiBzdGF0ZXMuICBTaW5j ZSB0aGUgaGFzaCBzdGF0ZSBzaXplIGlzIG5vdCBrbm93biBhdCBjb21waWxlLXRpbWUsIHdlCisJ ICogY2FuJ3QgYWRkIHRoZW0gdG8gdGhlIHN0cnVjdCBkaXJlY3RseS4KKwkgKgorCSAqIGhhc2hl ZF90d2Vha2xlbl9kaXZpc2libGU7CisJICogaGFzaGVkX3R3ZWFrbGVuX3JlbWFpbmRlcjsKKwkg Ki8KK307CisKK3N0cnVjdCBoY3RyMl9yZXF1ZXN0X2N0eCB7CisJdTggZmlyc3RfYmxvY2tbQkxP Q0tDSVBIRVJfQkxPQ0tfU0laRV07CisJdTggeGN0cl9pdltCTE9DS0NJUEhFUl9CTE9DS19TSVpF XTsKKwlzdHJ1Y3Qgc2NhdHRlcmxpc3QgKmJ1bGtfcGFydF9kc3Q7CisJc3RydWN0IHNjYXR0ZXJs aXN0ICpidWxrX3BhcnRfc3JjOworCXN0cnVjdCBzY2F0dGVybGlzdCBzZ19zcmNbMl07CisJc3Ry dWN0IHNjYXR0ZXJsaXN0IHNnX2RzdFsyXTsKKwkvKgorCSAqIFN1Yi1yZXF1ZXN0IHNpemUgaXMg dW5rbm93biBhdCBjb21waWxlLXRpbWUsIHNvIHRoZXkgbmVlZCB0byBnbyBhZnRlcgorCSAqIHRo ZSBtZW1iZXJzIHdpdGgga25vd24gc2l6ZXMuCisJICovCisJdW5pb24geworCQlzdHJ1Y3Qgc2hh c2hfZGVzYyBoYXNoX2Rlc2M7CisJCXN0cnVjdCBza2NpcGhlcl9yZXF1ZXN0IHhjdHJfcmVxOwor CX0gdTsKKwkvKgorCSAqIFRoaXMgc3RydWN0IGlzIGFsbG9jYXRlZCB3aXRoIGV4dHJhIHNwYWNl IGZvciBvbmUgZXhwb3J0ZWQgaGFzaAorCSAqIHN0YXRlLiAgU2luY2UgdGhlIGhhc2ggc3RhdGUg c2l6ZSBpcyBub3Qga25vd24gYXQgY29tcGlsZS10aW1lLCB3ZQorCSAqIGNhbid0IGFkZCBpdCB0 byB0aGUgc3RydWN0IGRpcmVjdGx5LgorCSAqCisJICogaGFzaGVkX3R3ZWFrOworCSAqLworfTsK Kworc3RhdGljIGlubGluZSB1OCAqaGN0cjJfaGFzaGVkX3R3ZWFrbGVuKGNvbnN0IHN0cnVjdCBo Y3RyMl90Zm1fY3R4ICp0Y3R4LAorCQkJCQlib29sIGhhc19yZW1haW5kZXIpCit7CisJdTggKnAg PSAodTggKil0Y3R4ICsgc2l6ZW9mKCp0Y3R4KTsKKworCWlmIChoYXNfcmVtYWluZGVyKSAvKiBG b3IgbWVzc2FnZXMgbm90IGEgbXVsdGlwbGUgb2YgYmxvY2sgbGVuZ3RoICovCisJCXAgKz0gY3J5 cHRvX3NoYXNoX3N0YXRlc2l6ZSh0Y3R4LT5wb2x5dmFsKTsKKwlyZXR1cm4gcDsKK30KKworc3Rh dGljIGlubGluZSB1OCAqaGN0cjJfaGFzaGVkX3R3ZWFrKGNvbnN0IHN0cnVjdCBoY3RyMl90Zm1f Y3R4ICp0Y3R4LAorCQkJCSAgICAgc3RydWN0IGhjdHIyX3JlcXVlc3RfY3R4ICpyY3R4KQorewor CXJldHVybiAodTggKilyY3R4ICsgdGN0eC0+aGFzaGVkX3R3ZWFrX29mZnNldDsKK30KKworLyog VGhlIGlucHV0IGRhdGEgZm9yIGVhY2ggSENUUjIgaGFzaCBzdGVwIGJlZ2lucyB3aXRoIGEgMTYt Ynl0ZSBibG9jayB0aGF0CisgKiBjb250YWlucyB0aGUgdHdlYWsgbGVuZ3RoIGFuZCBhIGZsYWcg dGhhdCBpbmRpY2F0ZXMgd2hldGhlciB0aGUgaW5wdXQgaXMgZXZlbmx5CisgKiBkaXZpc2libGUg aW50byBibG9ja3MuICBTaW5jZSB0aGlzIGltcGxlbWVudGF0aW9uIG9ubHkgc3VwcG9ydHMgb25l IHR3ZWFrCisgKiBsZW5ndGgsIHdlIHByZWNvbXB1dGUgdGhlIHR3byBoYXNoIHN0YXRlcyByZXN1 bHRpbmcgZnJvbSBoYXNoaW5nIHRoZSB0d28KKyAqIHBvc3NpYmxlIHZhbHVlcyBvZiB0aGlzIGlu aXRpYWwgYmxvY2suICBUaGlzIHJlZHVjZXMgYnkgb25lIGJsb2NrIHRoZSBhbW91bnQgb2YKKyAq IGRhdGEgdGhhdCBuZWVkcyB0byBiZSBoYXNoZWQgZm9yIGVhY2ggZW5jcnlwdGlvbi9kZWNyeXB0 aW9uCisgKgorICogVGhlc2UgcHJlY29tcHV0ZWQgaGFzaGVzIGFyZSBzdG9yZWQgaW4gaGN0cjJf dGZtX2N0eC4KKyAqLworc3RhdGljIGludCBoY3RyMl9oYXNoX3R3ZWFrbGVuKHN0cnVjdCBoY3Ry Ml90Zm1fY3R4ICp0Y3R4LCBib29sIGhhc19yZW1haW5kZXIpCit7CisJU0hBU0hfREVTQ19PTl9T VEFDSyhzaGFzaCwgdGZtLT5wb2x5dmFsKTsKKwlfX2xlNjQgdHdlYWtfbGVuZ3RoX2Jsb2NrWzJd OworCWludCBlcnI7CisKKwlzaGFzaC0+dGZtID0gdGN0eC0+cG9seXZhbDsKKwltZW1zZXQodHdl YWtfbGVuZ3RoX2Jsb2NrLCAwLCBzaXplb2YodHdlYWtfbGVuZ3RoX2Jsb2NrKSk7CisKKwl0d2Vh a19sZW5ndGhfYmxvY2tbMF0gPSBjcHVfdG9fbGU2NChUV0VBS19TSVpFICogOCAqIDIgKyAyICsg aGFzX3JlbWFpbmRlcik7CisJZXJyID0gY3J5cHRvX3NoYXNoX2luaXQoc2hhc2gpOworCWlmIChl cnIpCisJCXJldHVybiBlcnI7CisJZXJyID0gY3J5cHRvX3NoYXNoX3VwZGF0ZShzaGFzaCwgKHU4 ICopdHdlYWtfbGVuZ3RoX2Jsb2NrLAorCQkJCSAgUE9MWVZBTF9CTE9DS19TSVpFKTsKKwlpZiAo ZXJyKQorCQlyZXR1cm4gZXJyOworCXJldHVybiBjcnlwdG9fc2hhc2hfZXhwb3J0KHNoYXNoLCBo Y3RyMl9oYXNoZWRfdHdlYWtsZW4odGN0eCwgaGFzX3JlbWFpbmRlcikpOworfQorCitzdGF0aWMg aW50IGhjdHIyX3NldGtleShzdHJ1Y3QgY3J5cHRvX3NrY2lwaGVyICp0Zm0sIGNvbnN0IHU4ICpr ZXksCisJCQl1bnNpZ25lZCBpbnQga2V5bGVuKQoreworCXN0cnVjdCBoY3RyMl90Zm1fY3R4ICp0 Y3R4ID0gY3J5cHRvX3NrY2lwaGVyX2N0eCh0Zm0pOworCXU4IGhiYXJbQkxPQ0tDSVBIRVJfQkxP Q0tfU0laRV07CisJaW50IGVycjsKKworCWNyeXB0b19jaXBoZXJfY2xlYXJfZmxhZ3ModGN0eC0+ YmxvY2tjaXBoZXIsIENSWVBUT19URk1fUkVRX01BU0spOworCWNyeXB0b19jaXBoZXJfc2V0X2Zs YWdzKHRjdHgtPmJsb2NrY2lwaGVyLAorCQkJCWNyeXB0b19za2NpcGhlcl9nZXRfZmxhZ3ModGZt KSAmCisJCQkJQ1JZUFRPX1RGTV9SRVFfTUFTSyk7CisJZXJyID0gY3J5cHRvX2NpcGhlcl9zZXRr ZXkodGN0eC0+YmxvY2tjaXBoZXIsIGtleSwga2V5bGVuKTsKKwlpZiAoZXJyKQorCQlyZXR1cm4g ZXJyOworCisJY3J5cHRvX3NrY2lwaGVyX2NsZWFyX2ZsYWdzKHRjdHgtPnhjdHIsIENSWVBUT19U Rk1fUkVRX01BU0spOworCWNyeXB0b19za2NpcGhlcl9zZXRfZmxhZ3ModGN0eC0+eGN0ciwKKwkJ CQkgIGNyeXB0b19za2NpcGhlcl9nZXRfZmxhZ3ModGZtKSAmCisJCQkJICBDUllQVE9fVEZNX1JF UV9NQVNLKTsKKwllcnIgPSBjcnlwdG9fc2tjaXBoZXJfc2V0a2V5KHRjdHgtPnhjdHIsIGtleSwg a2V5bGVuKTsKKwlpZiAoZXJyKQorCQlyZXR1cm4gZXJyOworCisJbWVtc2V0KHRjdHgtPkwsIDAs IHNpemVvZih0Y3R4LT5MKSk7CisJbWVtc2V0KGhiYXIsIDAsIHNpemVvZihoYmFyKSk7CisJdGN0 eC0+TFswXSA9IDB4MDE7CisJY3J5cHRvX2NpcGhlcl9lbmNyeXB0X29uZSh0Y3R4LT5ibG9ja2Np cGhlciwgdGN0eC0+TCwgdGN0eC0+TCk7CisJY3J5cHRvX2NpcGhlcl9lbmNyeXB0X29uZSh0Y3R4 LT5ibG9ja2NpcGhlciwgaGJhciwgaGJhcik7CisKKwljcnlwdG9fc2hhc2hfY2xlYXJfZmxhZ3Mo dGN0eC0+cG9seXZhbCwgQ1JZUFRPX1RGTV9SRVFfTUFTSyk7CisJY3J5cHRvX3NoYXNoX3NldF9m bGFncyh0Y3R4LT5wb2x5dmFsLCBjcnlwdG9fc2tjaXBoZXJfZ2V0X2ZsYWdzKHRmbSkgJgorCQkJ ICAgICAgIENSWVBUT19URk1fUkVRX01BU0spOworCWVyciA9IGNyeXB0b19zaGFzaF9zZXRrZXko dGN0eC0+cG9seXZhbCwgaGJhciwgQkxPQ0tDSVBIRVJfQkxPQ0tfU0laRSk7CisJaWYgKGVycikK KwkJcmV0dXJuIGVycjsKKwltZW16ZXJvX2V4cGxpY2l0KGhiYXIsIHNpemVvZihoYmFyKSk7CisK KwlyZXR1cm4gaGN0cjJfaGFzaF90d2Vha2xlbih0Y3R4LCB0cnVlKSA/OiBoY3RyMl9oYXNoX3R3 ZWFrbGVuKHRjdHgsIGZhbHNlKTsKK30KKworc3RhdGljIGludCBoY3RyMl9oYXNoX3R3ZWFrKHN0 cnVjdCBza2NpcGhlcl9yZXF1ZXN0ICpyZXEpCit7CisJc3RydWN0IGNyeXB0b19za2NpcGhlciAq dGZtID0gY3J5cHRvX3NrY2lwaGVyX3JlcXRmbShyZXEpOworCWNvbnN0IHN0cnVjdCBoY3RyMl90 Zm1fY3R4ICp0Y3R4ID0gY3J5cHRvX3NrY2lwaGVyX2N0eCh0Zm0pOworCXN0cnVjdCBoY3RyMl9y ZXF1ZXN0X2N0eCAqcmN0eCA9IHNrY2lwaGVyX3JlcXVlc3RfY3R4KHJlcSk7CisJc3RydWN0IHNo YXNoX2Rlc2MgKmhhc2hfZGVzYyA9ICZyY3R4LT51Lmhhc2hfZGVzYzsKKwlpbnQgZXJyOworCWJv b2wgaGFzX3JlbWFpbmRlciA9IHJlcS0+Y3J5cHRsZW4gJSBQT0xZVkFMX0JMT0NLX1NJWkU7CisK KwloYXNoX2Rlc2MtPnRmbSA9IHRjdHgtPnBvbHl2YWw7CisJZXJyID0gY3J5cHRvX3NoYXNoX2lt cG9ydChoYXNoX2Rlc2MsIGhjdHIyX2hhc2hlZF90d2Vha2xlbih0Y3R4LCBoYXNfcmVtYWluZGVy KSk7CisJaWYgKGVycikKKwkJcmV0dXJuIGVycjsKKwllcnIgPSBjcnlwdG9fc2hhc2hfdXBkYXRl KGhhc2hfZGVzYywgcmVxLT5pdiwgVFdFQUtfU0laRSk7CisJaWYgKGVycikKKwkJcmV0dXJuIGVy cjsKKworCS8vIFN0b3JlIHRoZSBoYXNoZWQgdHdlYWssIHNpbmNlIHdlIG5lZWQgaXQgd2hlbiBj b21wdXRpbmcgYm90aAorCS8vIEgoVCB8fCBOKSBhbmQgSChUIHx8IFYpLgorCXJldHVybiBjcnlw dG9fc2hhc2hfZXhwb3J0KGhhc2hfZGVzYywgaGN0cjJfaGFzaGVkX3R3ZWFrKHRjdHgsIHJjdHgp KTsKK30KKworc3RhdGljIGludCBoY3RyMl9oYXNoX21lc3NhZ2Uoc3RydWN0IHNrY2lwaGVyX3Jl cXVlc3QgKnJlcSwKKwkJCSAgICAgIHN0cnVjdCBzY2F0dGVybGlzdCAqc2dsLAorCQkJICAgICAg dTggZGlnZXN0W1BPTFlWQUxfRElHRVNUX1NJWkVdKQoreworCXU4IHBhZGRpbmdbQkxPQ0tDSVBI RVJfQkxPQ0tfU0laRV07CisJc3RydWN0IGhjdHIyX3JlcXVlc3RfY3R4ICpyY3R4ID0gc2tjaXBo ZXJfcmVxdWVzdF9jdHgocmVxKTsKKwlzdHJ1Y3Qgc2hhc2hfZGVzYyAqaGFzaF9kZXNjID0gJnJj dHgtPnUuaGFzaF9kZXNjOworCWNvbnN0IHVuc2lnbmVkIGludCBidWxrX2xlbiA9IHJlcS0+Y3J5 cHRsZW4gLSBCTE9DS0NJUEhFUl9CTE9DS19TSVpFOworCXN0cnVjdCBzZ19tYXBwaW5nX2l0ZXIg bWl0ZXI7CisJdW5zaWduZWQgaW50IHJlbWFpbmRlciA9IGJ1bGtfbGVuICUgQkxPQ0tDSVBIRVJf QkxPQ0tfU0laRTsKKwlpbnQgZXJyLCBpOworCWludCBuID0gMDsKKworCXNnX21pdGVyX3N0YXJ0 KCZtaXRlciwgc2dsLCBzZ19uZW50cyhzZ2wpLAorCQkgICAgICAgU0dfTUlURVJfRlJPTV9TRyB8 IFNHX01JVEVSX0FUT01JQyk7CisJZm9yIChpID0gMDsgaSA8IGJ1bGtfbGVuOyBpICs9IG4pIHsK KwkJc2dfbWl0ZXJfbmV4dCgmbWl0ZXIpOworCQluID0gbWluX3QodW5zaWduZWQgaW50LCBtaXRl ci5sZW5ndGgsIGJ1bGtfbGVuIC0gaSk7CisJCWVyciA9IGNyeXB0b19zaGFzaF91cGRhdGUoaGFz aF9kZXNjLCBtaXRlci5hZGRyLCBuKTsKKwkJaWYgKGVycikKKwkJCWJyZWFrOworCX0KKwlzZ19t aXRlcl9zdG9wKCZtaXRlcik7CisKKwlpZiAoZXJyKQorCQlyZXR1cm4gZXJyOworCisJaWYgKHJl bWFpbmRlcikgeworCQltZW1zZXQocGFkZGluZywgMCwgQkxPQ0tDSVBIRVJfQkxPQ0tfU0laRSk7 CisJCXBhZGRpbmdbMF0gPSAweDAxOworCQllcnIgPSBjcnlwdG9fc2hhc2hfdXBkYXRlKGhhc2hf ZGVzYywgcGFkZGluZywKKwkJCQkJICBCTE9DS0NJUEhFUl9CTE9DS19TSVpFIC0gcmVtYWluZGVy KTsKKwkJaWYgKGVycikKKwkJCXJldHVybiBlcnI7CisJfQorCXJldHVybiBjcnlwdG9fc2hhc2hf ZmluYWwoaGFzaF9kZXNjLCBkaWdlc3QpOworfQorCitzdGF0aWMgaW50IGhjdHIyX2ZpbmlzaChz dHJ1Y3Qgc2tjaXBoZXJfcmVxdWVzdCAqcmVxKQoreworCXN0cnVjdCBjcnlwdG9fc2tjaXBoZXIg KnRmbSA9IGNyeXB0b19za2NpcGhlcl9yZXF0Zm0ocmVxKTsKKwljb25zdCBzdHJ1Y3QgaGN0cjJf dGZtX2N0eCAqdGN0eCA9IGNyeXB0b19za2NpcGhlcl9jdHgodGZtKTsKKwlzdHJ1Y3QgaGN0cjJf cmVxdWVzdF9jdHggKnJjdHggPSBza2NpcGhlcl9yZXF1ZXN0X2N0eChyZXEpOworCXU4IGRpZ2Vz dFtQT0xZVkFMX0RJR0VTVF9TSVpFXTsKKwlzdHJ1Y3Qgc2hhc2hfZGVzYyAqaGFzaF9kZXNjID0g JnJjdHgtPnUuaGFzaF9kZXNjOworCWludCBlcnI7CisKKwkvLyBVID0gVVUgXiBIKFQgfHwgVikK KwkvLyBvciBNID0gTU0gXiBIKFQgfHwgTikKKwloYXNoX2Rlc2MtPnRmbSA9IHRjdHgtPnBvbHl2 YWw7CisJZXJyID0gY3J5cHRvX3NoYXNoX2ltcG9ydChoYXNoX2Rlc2MsIGhjdHIyX2hhc2hlZF90 d2Vhayh0Y3R4LCByY3R4KSk7CisJaWYgKGVycikKKwkJcmV0dXJuIGVycjsKKwllcnIgPSBoY3Ry Ml9oYXNoX21lc3NhZ2UocmVxLCByY3R4LT5idWxrX3BhcnRfZHN0LCBkaWdlc3QpOworCWlmIChl cnIpCisJCXJldHVybiBlcnI7CisJY3J5cHRvX3hvcihyY3R4LT5maXJzdF9ibG9jaywgZGlnZXN0 LCBCTE9DS0NJUEhFUl9CTE9DS19TSVpFKTsKKworCS8vIENvcHkgVSAob3IgTSkgaW50byBkc3Qg c2NhdHRlcmxpc3QKKwlzY2F0dGVyd2Fsa19tYXBfYW5kX2NvcHkocmN0eC0+Zmlyc3RfYmxvY2ss IHJlcS0+ZHN0LAorCQkJCSAwLCBCTE9DS0NJUEhFUl9CTE9DS19TSVpFLCAxKTsKKwlyZXR1cm4g MDsKK30KKworc3RhdGljIHZvaWQgaGN0cjJfeGN0cl9kb25lKHN0cnVjdCBjcnlwdG9fYXN5bmNf cmVxdWVzdCAqYXJlcSwKKwkJCQkgICAgaW50IGVycikKK3sKKwlzdHJ1Y3Qgc2tjaXBoZXJfcmVx dWVzdCAqcmVxID0gYXJlcS0+ZGF0YTsKKworCWlmICghZXJyKQorCQllcnIgPSBoY3RyMl9maW5p c2gocmVxKTsKKworCXNrY2lwaGVyX3JlcXVlc3RfY29tcGxldGUocmVxLCBlcnIpOworfQorCitz dGF0aWMgaW50IGhjdHIyX2NyeXB0KHN0cnVjdCBza2NpcGhlcl9yZXF1ZXN0ICpyZXEsIGJvb2wg ZW5jKQoreworCXN0cnVjdCBjcnlwdG9fc2tjaXBoZXIgKnRmbSA9IGNyeXB0b19za2NpcGhlcl9y ZXF0Zm0ocmVxKTsKKwljb25zdCBzdHJ1Y3QgaGN0cjJfdGZtX2N0eCAqdGN0eCA9IGNyeXB0b19z a2NpcGhlcl9jdHgodGZtKTsKKwlzdHJ1Y3QgaGN0cjJfcmVxdWVzdF9jdHggKnJjdHggPSBza2Np cGhlcl9yZXF1ZXN0X2N0eChyZXEpOworCXU4IGRpZ2VzdFtQT0xZVkFMX0RJR0VTVF9TSVpFXTsK KwlpbnQgYnVsa19sZW4gPSByZXEtPmNyeXB0bGVuIC0gQkxPQ0tDSVBIRVJfQkxPQ0tfU0laRTsK KwlpbnQgZXJyOworCisJLy8gUmVxdWVzdHMgbXVzdCBiZSBhdCBsZWFzdCBvbmUgYmxvY2sKKwlp ZiAocmVxLT5jcnlwdGxlbiA8IEJMT0NLQ0lQSEVSX0JMT0NLX1NJWkUpCisJCXJldHVybiAtRUlO VkFMOworCisJLy8gQ29weSBNIChvciBVKSBpbnRvIGEgdGVtcG9yYXJ5IGJ1ZmZlcgorCXNjYXR0 ZXJ3YWxrX21hcF9hbmRfY29weShyY3R4LT5maXJzdF9ibG9jaywgcmVxLT5zcmMsCisJCQkJIDAs IEJMT0NLQ0lQSEVSX0JMT0NLX1NJWkUsIDApOworCisJLy8gQ3JlYXRlIHNjYXR0ZXJsaXN0cyBm b3IgTiBhbmQgVgorCXJjdHgtPmJ1bGtfcGFydF9zcmMgPSBzY2F0dGVyd2Fsa19mZndkKHJjdHgt PnNnX3NyYywgcmVxLT5zcmMsCisJCQkJCSAgICAgICBCTE9DS0NJUEhFUl9CTE9DS19TSVpFKTsK KwlyY3R4LT5idWxrX3BhcnRfZHN0ID0gc2NhdHRlcndhbGtfZmZ3ZChyY3R4LT5zZ19kc3QsIHJl cS0+ZHN0LAorCQkJCQkgICAgICAgQkxPQ0tDSVBIRVJfQkxPQ0tfU0laRSk7CisKKwkvLyBNTSA9 IE0gXiBIKFQgfHwgTikKKwkvLyBvciBVVSA9IFUgXiBIKFQgfHwgVikKKwllcnIgPSBoY3RyMl9o YXNoX3R3ZWFrKHJlcSk7CisJaWYgKGVycikKKwkJcmV0dXJuIGVycjsKKwllcnIgPSBoY3RyMl9o YXNoX21lc3NhZ2UocmVxLCByY3R4LT5idWxrX3BhcnRfc3JjLCBkaWdlc3QpOworCWlmIChlcnIp CisJCXJldHVybiBlcnI7CisJY3J5cHRvX3hvcihkaWdlc3QsIHJjdHgtPmZpcnN0X2Jsb2NrLCBC TE9DS0NJUEhFUl9CTE9DS19TSVpFKTsKKworCS8vIFVVID0gRShNTSkKKwkvLyBvciBNTSA9IEQo VVUpCisJaWYgKGVuYykKKwkJY3J5cHRvX2NpcGhlcl9lbmNyeXB0X29uZSh0Y3R4LT5ibG9ja2Np cGhlciwgcmN0eC0+Zmlyc3RfYmxvY2ssCisJCQkJCSAgZGlnZXN0KTsKKwllbHNlCisJCWNyeXB0 b19jaXBoZXJfZGVjcnlwdF9vbmUodGN0eC0+YmxvY2tjaXBoZXIsIHJjdHgtPmZpcnN0X2Jsb2Nr LAorCQkJCQkgIGRpZ2VzdCk7CisKKwkvLyBTID0gTU0gXiBVVSBeIEwKKwljcnlwdG9feG9yKGRp Z2VzdCwgcmN0eC0+Zmlyc3RfYmxvY2ssIEJMT0NLQ0lQSEVSX0JMT0NLX1NJWkUpOworCWNyeXB0 b194b3JfY3B5KHJjdHgtPnhjdHJfaXYsIGRpZ2VzdCwgdGN0eC0+TCwgQkxPQ0tDSVBIRVJfQkxP Q0tfU0laRSk7CisKKwkvLyBWID0gWENUUihTLCBOKQorCS8vIG9yIE4gPSBYQ1RSKFMsIFYpCisJ c2tjaXBoZXJfcmVxdWVzdF9zZXRfdGZtKCZyY3R4LT51LnhjdHJfcmVxLCB0Y3R4LT54Y3RyKTsK Kwlza2NpcGhlcl9yZXF1ZXN0X3NldF9jcnlwdCgmcmN0eC0+dS54Y3RyX3JlcSwgcmN0eC0+YnVs a19wYXJ0X3NyYywKKwkJCQkgICByY3R4LT5idWxrX3BhcnRfZHN0LCBidWxrX2xlbiwKKwkJCQkg ICByY3R4LT54Y3RyX2l2KTsKKwlza2NpcGhlcl9yZXF1ZXN0X3NldF9jYWxsYmFjaygmcmN0eC0+ dS54Y3RyX3JlcSwKKwkJCQkgICAgICByZXEtPmJhc2UuZmxhZ3MsCisJCQkJICAgICAgaGN0cjJf eGN0cl9kb25lLCByZXEpOworCXJldHVybiBjcnlwdG9fc2tjaXBoZXJfZW5jcnlwdCgmcmN0eC0+ dS54Y3RyX3JlcSkgPzoKKwkJaGN0cjJfZmluaXNoKHJlcSk7Cit9CisKK3N0YXRpYyBpbnQgaGN0 cjJfZW5jcnlwdChzdHJ1Y3Qgc2tjaXBoZXJfcmVxdWVzdCAqcmVxKQoreworCXJldHVybiBoY3Ry Ml9jcnlwdChyZXEsIHRydWUpOworfQorCitzdGF0aWMgaW50IGhjdHIyX2RlY3J5cHQoc3RydWN0 IHNrY2lwaGVyX3JlcXVlc3QgKnJlcSkKK3sKKwlyZXR1cm4gaGN0cjJfY3J5cHQocmVxLCBmYWxz ZSk7Cit9CisKK3N0YXRpYyBpbnQgaGN0cjJfaW5pdF90Zm0oc3RydWN0IGNyeXB0b19za2NpcGhl ciAqdGZtKQoreworCXN0cnVjdCBza2NpcGhlcl9pbnN0YW5jZSAqaW5zdCA9IHNrY2lwaGVyX2Fs Z19pbnN0YW5jZSh0Zm0pOworCXN0cnVjdCBoY3RyMl9pbnN0YW5jZV9jdHggKmljdHggPSBza2Np cGhlcl9pbnN0YW5jZV9jdHgoaW5zdCk7CisJc3RydWN0IGhjdHIyX3RmbV9jdHggKnRjdHggPSBj cnlwdG9fc2tjaXBoZXJfY3R4KHRmbSk7CisJc3RydWN0IGNyeXB0b19za2NpcGhlciAqeGN0cjsK KwlzdHJ1Y3QgY3J5cHRvX2NpcGhlciAqYmxvY2tjaXBoZXI7CisJc3RydWN0IGNyeXB0b19zaGFz aCAqcG9seXZhbDsKKwl1bnNpZ25lZCBpbnQgc3VicmVxX3NpemU7CisJaW50IGVycjsKKworCXhj dHIgPSBjcnlwdG9fc3Bhd25fc2tjaXBoZXIoJmljdHgtPnhjdHJfc3Bhd24pOworCWlmIChJU19F UlIoeGN0cikpCisJCXJldHVybiBQVFJfRVJSKHhjdHIpOworCisJYmxvY2tjaXBoZXIgPSBjcnlw dG9fc3Bhd25fY2lwaGVyKCZpY3R4LT5ibG9ja2NpcGhlcl9zcGF3bik7CisJaWYgKElTX0VSUihi bG9ja2NpcGhlcikpIHsKKwkJZXJyID0gUFRSX0VSUihibG9ja2NpcGhlcik7CisJCWdvdG8gZXJy X2ZyZWVfeGN0cjsKKwl9CisKKwlwb2x5dmFsID0gY3J5cHRvX3NwYXduX3NoYXNoKCZpY3R4LT5w b2x5dmFsX3NwYXduKTsKKwlpZiAoSVNfRVJSKHBvbHl2YWwpKSB7CisJCWVyciA9IFBUUl9FUlIo cG9seXZhbCk7CisJCWdvdG8gZXJyX2ZyZWVfYmxvY2tjaXBoZXI7CisJfQorCisJdGN0eC0+eGN0 ciA9IHhjdHI7CisJdGN0eC0+YmxvY2tjaXBoZXIgPSBibG9ja2NpcGhlcjsKKwl0Y3R4LT5wb2x5 dmFsID0gcG9seXZhbDsKKworCUJVSUxEX0JVR19PTihvZmZzZXRvZmVuZChzdHJ1Y3QgaGN0cjJf cmVxdWVzdF9jdHgsIHUpICE9CisJCQkJIHNpemVvZihzdHJ1Y3QgaGN0cjJfcmVxdWVzdF9jdHgp KTsKKwlzdWJyZXFfc2l6ZSA9IG1heChzaXplb2ZfZmllbGQoc3RydWN0IGhjdHIyX3JlcXVlc3Rf Y3R4LCB1Lmhhc2hfZGVzYykgKworCQkJICBjcnlwdG9fc2hhc2hfZGVzY3NpemUocG9seXZhbCks IHNpemVvZl9maWVsZChzdHJ1Y3QKKwkJCSAgaGN0cjJfcmVxdWVzdF9jdHgsIHUueGN0cl9yZXEp ICsKKwkJCSAgY3J5cHRvX3NrY2lwaGVyX3JlcXNpemUoeGN0cikpOworCisJdGN0eC0+aGFzaGVk X3R3ZWFrX29mZnNldCA9IG9mZnNldG9mKHN0cnVjdCBoY3RyMl9yZXF1ZXN0X2N0eCwgdSkgKwor CQkJCSAgICBzdWJyZXFfc2l6ZTsKKwljcnlwdG9fc2tjaXBoZXJfc2V0X3JlcXNpemUodGZtLCB0 Y3R4LT5oYXNoZWRfdHdlYWtfb2Zmc2V0ICsKKwkJCQkgICAgY3J5cHRvX3NoYXNoX3N0YXRlc2l6 ZShwb2x5dmFsKSk7CisJcmV0dXJuIDA7CisKK2Vycl9mcmVlX2Jsb2NrY2lwaGVyOgorCWNyeXB0 b19mcmVlX2NpcGhlcihibG9ja2NpcGhlcik7CitlcnJfZnJlZV94Y3RyOgorCWNyeXB0b19mcmVl X3NrY2lwaGVyKHhjdHIpOworCXJldHVybiBlcnI7Cit9CisKK3N0YXRpYyB2b2lkIGhjdHIyX2V4 aXRfdGZtKHN0cnVjdCBjcnlwdG9fc2tjaXBoZXIgKnRmbSkKK3sKKwlzdHJ1Y3QgaGN0cjJfdGZt X2N0eCAqdGN0eCA9IGNyeXB0b19za2NpcGhlcl9jdHgodGZtKTsKKworCWNyeXB0b19mcmVlX2Np cGhlcih0Y3R4LT5ibG9ja2NpcGhlcik7CisJY3J5cHRvX2ZyZWVfc2tjaXBoZXIodGN0eC0+eGN0 cik7CisJY3J5cHRvX2ZyZWVfc2hhc2godGN0eC0+cG9seXZhbCk7Cit9CisKK3N0YXRpYyB2b2lk IGhjdHIyX2ZyZWVfaW5zdGFuY2Uoc3RydWN0IHNrY2lwaGVyX2luc3RhbmNlICppbnN0KQorewor CXN0cnVjdCBoY3RyMl9pbnN0YW5jZV9jdHggKmljdHggPSBza2NpcGhlcl9pbnN0YW5jZV9jdHgo aW5zdCk7CisKKwljcnlwdG9fZHJvcF9jaXBoZXIoJmljdHgtPmJsb2NrY2lwaGVyX3NwYXduKTsK KwljcnlwdG9fZHJvcF9za2NpcGhlcigmaWN0eC0+eGN0cl9zcGF3bik7CisJY3J5cHRvX2Ryb3Bf c2hhc2goJmljdHgtPnBvbHl2YWxfc3Bhd24pOworCWtmcmVlKGluc3QpOworfQorCitzdGF0aWMg aW50IGhjdHIyX2NyZWF0ZV9jb21tb24oc3RydWN0IGNyeXB0b190ZW1wbGF0ZSAqdG1wbCwKKwkJ CSAgICAgICBzdHJ1Y3QgcnRhdHRyICoqdGIsCisJCQkgICAgICAgY29uc3QgY2hhciAqeGN0cl9u YW1lLAorCQkJICAgICAgIGNvbnN0IGNoYXIgKnBvbHl2YWxfbmFtZSkKK3sKKwl1MzIgbWFzazsK KwlzdHJ1Y3Qgc2tjaXBoZXJfaW5zdGFuY2UgKmluc3Q7CisJc3RydWN0IGhjdHIyX2luc3RhbmNl X2N0eCAqaWN0eDsKKwlzdHJ1Y3Qgc2tjaXBoZXJfYWxnICp4Y3RyX2FsZzsKKwlzdHJ1Y3QgY3J5 cHRvX2FsZyAqYmxvY2tjaXBoZXJfYWxnOworCXN0cnVjdCBzaGFzaF9hbGcgKnBvbHl2YWxfYWxn OworCWNoYXIgYmxvY2tjaXBoZXJfbmFtZVtDUllQVE9fTUFYX0FMR19OQU1FXTsKKwlpbnQgbGVu OworCWludCBlcnI7CisKKwllcnIgPSBjcnlwdG9fY2hlY2tfYXR0cl90eXBlKHRiLCBDUllQVE9f QUxHX1RZUEVfU0tDSVBIRVIsICZtYXNrKTsKKwlpZiAoZXJyKQorCQlyZXR1cm4gZXJyOworCisJ aW5zdCA9IGt6YWxsb2Moc2l6ZW9mKCppbnN0KSArIHNpemVvZigqaWN0eCksIEdGUF9LRVJORUwp OworCWlmICghaW5zdCkKKwkJcmV0dXJuIC1FTk9NRU07CisJaWN0eCA9IHNrY2lwaGVyX2luc3Rh bmNlX2N0eChpbnN0KTsKKworCS8qIFN0cmVhbSBjaXBoZXIsIHhjdHIoYmxvY2tfY2lwaGVyKSAq LworCWVyciA9IGNyeXB0b19ncmFiX3NrY2lwaGVyKCZpY3R4LT54Y3RyX3NwYXduLAorCQkJCSAg IHNrY2lwaGVyX2NyeXB0b19pbnN0YW5jZShpbnN0KSwKKwkJCQkgICB4Y3RyX25hbWUsIDAsIG1h c2spOworCWlmIChlcnIpCisJCWdvdG8gZXJyX2ZyZWVfaW5zdDsKKwl4Y3RyX2FsZyA9IGNyeXB0 b19zcGF3bl9za2NpcGhlcl9hbGcoJmljdHgtPnhjdHJfc3Bhd24pOworCisJZXJyID0gLUVJTlZB TDsKKwlpZiAoc3RybmNtcCh4Y3RyX2FsZy0+YmFzZS5jcmFfbmFtZSwgInhjdHIoIiwgNSkpCisJ CWdvdG8gZXJyX2ZyZWVfaW5zdDsKKwlsZW4gPSBzdHJzY3B5KGJsb2NrY2lwaGVyX25hbWUsIHhj dHJfbmFtZSArIDUsCisJCSAgICAgIHNpemVvZihibG9ja2NpcGhlcl9uYW1lKSk7CisJaWYgKGxl biA8IDEpCisJCWdvdG8gZXJyX2ZyZWVfaW5zdDsKKwlpZiAoYmxvY2tjaXBoZXJfbmFtZVtsZW4g LSAxXSAhPSAnKScpCisJCWdvdG8gZXJyX2ZyZWVfaW5zdDsKKwlibG9ja2NpcGhlcl9uYW1lW2xl biAtIDFdID0gMDsKKworCS8qIEJsb2NrIGNpcGhlciwgZS5nLiAiYWVzIiAqLworCWVyciA9IGNy eXB0b19ncmFiX2NpcGhlcigmaWN0eC0+YmxvY2tjaXBoZXJfc3Bhd24sCisJCQkJIHNrY2lwaGVy X2NyeXB0b19pbnN0YW5jZShpbnN0KSwKKwkJCQkgYmxvY2tjaXBoZXJfbmFtZSwgMCwgbWFzayk7 CisJaWYgKGVycikKKwkJZ290byBlcnJfZnJlZV9pbnN0OworCWJsb2NrY2lwaGVyX2FsZyA9IGNy eXB0b19zcGF3bl9jaXBoZXJfYWxnKCZpY3R4LT5ibG9ja2NpcGhlcl9zcGF3bik7CisKKwkvKiBS ZXF1aXJlIGJsb2Nrc2l6ZSBvZiAxNiBieXRlcyAqLworCWVyciA9IC1FSU5WQUw7CisJaWYgKGJs b2NrY2lwaGVyX2FsZy0+Y3JhX2Jsb2Nrc2l6ZSAhPSBCTE9DS0NJUEhFUl9CTE9DS19TSVpFKQor CQlnb3RvIGVycl9mcmVlX2luc3Q7CisKKwkvKiBQb2x5dmFsIM61LeKIhlUgaGFzaCBmdW5jdGlv biAqLworCWVyciA9IGNyeXB0b19ncmFiX3NoYXNoKCZpY3R4LT5wb2x5dmFsX3NwYXduLAorCQkJ CXNrY2lwaGVyX2NyeXB0b19pbnN0YW5jZShpbnN0KSwKKwkJCQlwb2x5dmFsX25hbWUsIDAsIG1h c2spOworCWlmIChlcnIpCisJCWdvdG8gZXJyX2ZyZWVfaW5zdDsKKwlwb2x5dmFsX2FsZyA9IGNy eXB0b19zcGF3bl9zaGFzaF9hbGcoJmljdHgtPnBvbHl2YWxfc3Bhd24pOworCisJLyogRW5zdXJl IFBvbHl2YWwgaXMgYmVpbmcgdXNlZCAqLworCWVyciA9IC1FSU5WQUw7CisJaWYgKHN0cmNtcChw b2x5dmFsX2FsZy0+YmFzZS5jcmFfbmFtZSwgInBvbHl2YWwiKSAhPSAwKQorCQlnb3RvIGVycl9m cmVlX2luc3Q7CisKKwkvKiBJbnN0YW5jZSBmaWVsZHMgKi8KKworCWVyciA9IC1FTkFNRVRPT0xP Tkc7CisJaWYgKHNucHJpbnRmKGluc3QtPmFsZy5iYXNlLmNyYV9uYW1lLCBDUllQVE9fTUFYX0FM R19OQU1FLCAiaGN0cjIoJXMpIiwKKwkJICAgICBibG9ja2NpcGhlcl9hbGctPmNyYV9uYW1lKSA+ PSBDUllQVE9fTUFYX0FMR19OQU1FKQorCQlnb3RvIGVycl9mcmVlX2luc3Q7CisJaWYgKHNucHJp bnRmKGluc3QtPmFsZy5iYXNlLmNyYV9kcml2ZXJfbmFtZSwgQ1JZUFRPX01BWF9BTEdfTkFNRSwK KwkJICAgICAiaGN0cjJfYmFzZSglcywlcykiLAorCQkgICAgIHhjdHJfYWxnLT5iYXNlLmNyYV9k cml2ZXJfbmFtZSwKKwkJICAgICBwb2x5dmFsX2FsZy0+YmFzZS5jcmFfZHJpdmVyX25hbWUpID49 IENSWVBUT19NQVhfQUxHX05BTUUpCisJCWdvdG8gZXJyX2ZyZWVfaW5zdDsKKworCWluc3QtPmFs Zy5iYXNlLmNyYV9ibG9ja3NpemUgPSBCTE9DS0NJUEhFUl9CTE9DS19TSVpFOworCWluc3QtPmFs Zy5iYXNlLmNyYV9jdHhzaXplID0gc2l6ZW9mKHN0cnVjdCBoY3RyMl90Zm1fY3R4KSArCisJCQkJ ICAgICBwb2x5dmFsX2FsZy0+c3RhdGVzaXplICogMjsKKwlpbnN0LT5hbGcuYmFzZS5jcmFfYWxp Z25tYXNrID0geGN0cl9hbGctPmJhc2UuY3JhX2FsaWdubWFzayB8CisJCQkJICAgICAgIHBvbHl2 YWxfYWxnLT5iYXNlLmNyYV9hbGlnbm1hc2s7CisJLyoKKwkgKiBUaGUgaGFzaCBmdW5jdGlvbiBp cyBjYWxsZWQgdHdpY2UsIHNvIGl0IGlzIHdlaWdodGVkIGhpZ2hlciB0aGFuIHRoZQorCSAqIHhj dHIgYW5kIGJsb2NrY2lwaGVyLgorCSAqLworCWluc3QtPmFsZy5iYXNlLmNyYV9wcmlvcml0eSA9 ICgyICogeGN0cl9hbGctPmJhc2UuY3JhX3ByaW9yaXR5ICsKKwkJCQkgICAgICAgNCAqIHBvbHl2 YWxfYWxnLT5iYXNlLmNyYV9wcmlvcml0eSArCisJCQkJICAgICAgIGJsb2NrY2lwaGVyX2FsZy0+ Y3JhX3ByaW9yaXR5KSAvIDc7CisKKwlpbnN0LT5hbGcuc2V0a2V5ID0gaGN0cjJfc2V0a2V5Owor CWluc3QtPmFsZy5lbmNyeXB0ID0gaGN0cjJfZW5jcnlwdDsKKwlpbnN0LT5hbGcuZGVjcnlwdCA9 IGhjdHIyX2RlY3J5cHQ7CisJaW5zdC0+YWxnLmluaXQgPSBoY3RyMl9pbml0X3RmbTsKKwlpbnN0 LT5hbGcuZXhpdCA9IGhjdHIyX2V4aXRfdGZtOworCWluc3QtPmFsZy5taW5fa2V5c2l6ZSA9IGNy eXB0b19za2NpcGhlcl9hbGdfbWluX2tleXNpemUoeGN0cl9hbGcpOworCWluc3QtPmFsZy5tYXhf a2V5c2l6ZSA9IGNyeXB0b19za2NpcGhlcl9hbGdfbWF4X2tleXNpemUoeGN0cl9hbGcpOworCWlu c3QtPmFsZy5pdnNpemUgPSBUV0VBS19TSVpFOworCisJaW5zdC0+ZnJlZSA9IGhjdHIyX2ZyZWVf aW5zdGFuY2U7CisKKwllcnIgPSBza2NpcGhlcl9yZWdpc3Rlcl9pbnN0YW5jZSh0bXBsLCBpbnN0 KTsKKwlpZiAoZXJyKSB7CitlcnJfZnJlZV9pbnN0OgorCQloY3RyMl9mcmVlX2luc3RhbmNlKGlu c3QpOworCX0KKwlyZXR1cm4gZXJyOworfQorCitzdGF0aWMgaW50IGhjdHIyX2NyZWF0ZV9iYXNl KHN0cnVjdCBjcnlwdG9fdGVtcGxhdGUgKnRtcGwsIHN0cnVjdCBydGF0dHIgKip0YikKK3sKKwlj b25zdCBjaGFyICp4Y3RyX25hbWU7CisJY29uc3QgY2hhciAqcG9seXZhbF9uYW1lOworCisJeGN0 cl9uYW1lID0gY3J5cHRvX2F0dHJfYWxnX25hbWUodGJbMV0pOworCWlmIChJU19FUlIoeGN0cl9u YW1lKSkKKwkJcmV0dXJuIFBUUl9FUlIoeGN0cl9uYW1lKTsKKworCXBvbHl2YWxfbmFtZSA9IGNy eXB0b19hdHRyX2FsZ19uYW1lKHRiWzJdKTsKKwlpZiAoSVNfRVJSKHBvbHl2YWxfbmFtZSkpCisJ CXJldHVybiBQVFJfRVJSKHBvbHl2YWxfbmFtZSk7CisKKwlyZXR1cm4gaGN0cjJfY3JlYXRlX2Nv bW1vbih0bXBsLCB0YiwgeGN0cl9uYW1lLCBwb2x5dmFsX25hbWUpOworfQorCitzdGF0aWMgaW50 IGhjdHIyX2NyZWF0ZShzdHJ1Y3QgY3J5cHRvX3RlbXBsYXRlICp0bXBsLCBzdHJ1Y3QgcnRhdHRy ICoqdGIpCit7CisJY29uc3QgY2hhciAqYmxvY2tjaXBoZXJfbmFtZTsKKwljaGFyIHhjdHJfbmFt ZVtDUllQVE9fTUFYX0FMR19OQU1FXTsKKworCWJsb2NrY2lwaGVyX25hbWUgPSBjcnlwdG9fYXR0 cl9hbGdfbmFtZSh0YlsxXSk7CisJaWYgKElTX0VSUihibG9ja2NpcGhlcl9uYW1lKSkKKwkJcmV0 dXJuIFBUUl9FUlIoYmxvY2tjaXBoZXJfbmFtZSk7CisKKwlpZiAoc25wcmludGYoeGN0cl9uYW1l LCBDUllQVE9fTUFYX0FMR19OQU1FLCAieGN0ciglcykiLAorCQkgICAgYmxvY2tjaXBoZXJfbmFt ZSkgPj0gQ1JZUFRPX01BWF9BTEdfTkFNRSkKKwkJcmV0dXJuIC1FTkFNRVRPT0xPTkc7CisKKwly ZXR1cm4gaGN0cjJfY3JlYXRlX2NvbW1vbih0bXBsLCB0YiwgeGN0cl9uYW1lLCAicG9seXZhbCIp OworfQorCitzdGF0aWMgc3RydWN0IGNyeXB0b190ZW1wbGF0ZSBoY3RyMl90bXBsc1tdID0gewor CXsKKwkJLyogaGN0cjJfYmFzZSh4Y3RyX25hbWUsIHBvbHl2YWxfbmFtZSkgKi8KKwkJLm5hbWUg PSAiaGN0cjJfYmFzZSIsCisJCS5jcmVhdGUgPSBoY3RyMl9jcmVhdGVfYmFzZSwKKwkJLm1vZHVs ZSA9IFRISVNfTU9EVUxFLAorCX0sIHsKKwkJLyogaGN0cjIoYmxvY2tjaXBoZXJfbmFtZSkgKi8K KwkJLm5hbWUgPSAiaGN0cjIiLAorCQkuY3JlYXRlID0gaGN0cjJfY3JlYXRlLAorCQkubW9kdWxl ID0gVEhJU19NT0RVTEUsCisJfQorfTsKKworc3RhdGljIGludCBfX2luaXQgaGN0cjJfbW9kdWxl X2luaXQodm9pZCkKK3sKKwlyZXR1cm4gY3J5cHRvX3JlZ2lzdGVyX3RlbXBsYXRlcyhoY3RyMl90 bXBscywgQVJSQVlfU0laRShoY3RyMl90bXBscykpOworfQorCitzdGF0aWMgdm9pZCBfX2V4aXQg aGN0cjJfbW9kdWxlX2V4aXQodm9pZCkKK3sKKwlyZXR1cm4gY3J5cHRvX3VucmVnaXN0ZXJfdGVt cGxhdGVzKGhjdHIyX3RtcGxzLAorCQkJCQkgICBBUlJBWV9TSVpFKGhjdHIyX3RtcGxzKSk7Cit9 CisKK3N1YnN5c19pbml0Y2FsbChoY3RyMl9tb2R1bGVfaW5pdCk7Cittb2R1bGVfZXhpdChoY3Ry Ml9tb2R1bGVfZXhpdCk7CisKK01PRFVMRV9ERVNDUklQVElPTigiSENUUjIgbGVuZ3RoLXByZXNl cnZpbmcgZW5jcnlwdGlvbiBtb2RlIik7CitNT0RVTEVfTElDRU5TRSgiR1BMIHYyIik7CitNT0RV TEVfQUxJQVNfQ1JZUFRPKCJoY3RyMiIpOworTU9EVUxFX0lNUE9SVF9OUyhDUllQVE9fSU5URVJO QUwpOwpkaWZmIC0tZ2l0IGEvY3J5cHRvL3RjcnlwdC5jIGIvY3J5cHRvL3RjcnlwdC5jCmluZGV4 IGRkOWNmMjE2MDI5Yi4uMzM2NTk4ZGE4ZWFjIDEwMDY0NAotLS0gYS9jcnlwdG8vdGNyeXB0LmMK KysrIGIvY3J5cHRvL3RjcnlwdC5jCkBAIC0yMTkxLDYgKzIxOTEsMTEgQEAgc3RhdGljIGludCBk b190ZXN0KGNvbnN0IGNoYXIgKmFsZywgdTMyIHR5cGUsIHUzMiBtYXNrLCBpbnQgbSwgdTMyIG51 bV9tYikKIAkJCQkgICAxNiwgMTYsIGFlYWRfc3BlZWRfdGVtcGxhdGVfMTksIG51bV9tYik7CiAJ CWJyZWFrOwogCisJY2FzZSAyMjY6CisJCXRlc3RfY2lwaGVyX3NwZWVkKCJoY3RyMihhZXMpIiwg RU5DUllQVCwgc2VjLCBOVUxMLAorCQkJCSAgMCwgc3BlZWRfdGVtcGxhdGVfMzIpOworCQlicmVh azsKKwogCWNhc2UgMzAwOgogCQlpZiAoYWxnKSB7CiAJCQl0ZXN0X2hhc2hfc3BlZWQoYWxnLCBz ZWMsIGdlbmVyaWNfaGFzaF9zcGVlZF90ZW1wbGF0ZSk7CmRpZmYgLS1naXQgYS9jcnlwdG8vdGVz dG1nci5jIGIvY3J5cHRvL3Rlc3RtZ3IuYwppbmRleCBkODA3YjIwMGVkZjYuLjMyNDRiN2U1YWE3 ZSAxMDA2NDQKLS0tIGEvY3J5cHRvL3Rlc3RtZ3IuYworKysgYi9jcnlwdG8vdGVzdG1nci5jCkBA IC01MDMwLDYgKzUwMzAsMTQgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBhbGdfdGVzdF9kZXNjIGFs Z190ZXN0X2Rlc2NzW10gPSB7CiAJCS5zdWl0ZSA9IHsKIAkJCS5oYXNoID0gX19WRUNTKGdoYXNo X3R2X3RlbXBsYXRlKQogCQl9CisJfSwgeworCQkuYWxnID0gImhjdHIyKGFlcykiLAorCQkuZ2Vu ZXJpY19kcml2ZXIgPQorCQkgICAgImhjdHIyX2Jhc2UoeGN0cihhZXMtZ2VuZXJpYykscG9seXZh bC1nZW5lcmljKSIsCisJCS50ZXN0ID0gYWxnX3Rlc3Rfc2tjaXBoZXIsCisJCS5zdWl0ZSA9IHsK KwkJCS5jaXBoZXIgPSBfX1ZFQ1MoYWVzX2hjdHIyX3R2X3RlbXBsYXRlKQorCQl9CiAJfSwgewog CQkuYWxnID0gImhtYWMobWQ1KSIsCiAJCS50ZXN0ID0gYWxnX3Rlc3RfaGFzaCwKZGlmZiAtLWdp dCBhL2NyeXB0by90ZXN0bWdyLmggYi9jcnlwdG8vdGVzdG1nci5oCmluZGV4IGM1ODFlNTQwNTkx Ni4uMTNjNzBkZGUyZjg5IDEwMDY0NAotLS0gYS9jcnlwdG8vdGVzdG1nci5oCisrKyBiL2NyeXB0 by90ZXN0bWdyLmgKQEAgLTM1MTAwLDQgKzM1MTAwLDY3NiBAQCBzdGF0aWMgY29uc3Qgc3RydWN0 IGhhc2hfdGVzdHZlYyBwb2x5dmFsX3R2X3RlbXBsYXRlW10gPSB7CiAKIH07CiAKKy8qCisgKiBU ZXN0IHZlY3RvcnMgZ2VuZXJhdGVkIHVzaW5nIGh0dHBzOi8vZ2l0aHViLmNvbS9nb29nbGUvaGN0 cjIKKyAqLworc3RhdGljIGNvbnN0IHN0cnVjdCBjaXBoZXJfdGVzdHZlYyBhZXNfaGN0cjJfdHZf dGVtcGxhdGVbXSA9IHsKKwl7CisJCS5rZXkJPSAiXHhlMVx4MTVceDY2XHgzY1x4OGRceGM2XHgz YVx4ZmYiCisJCQkgICJceGVmXHg0MVx4ZDdceDQ3XHhhMlx4Y2NceDhhXHhiYSIsCisJCS5pdgk9 ICJceGMzXHhiZVx4MmFceGNiXHhiNVx4MzlceDg2XHhmMSIKKwkJCSAgIlx4OTFceGFkXHg2Y1x4 ZjRceGRlXHg3NFx4NDVceDYzIgorCQkJICAiXHg1Y1x4N2FceGQ1XHhjY1x4OGJceDc2XHhlZlx4 MGUiCisJCQkgICJceGNmXHgyY1x4NjBceDY5XHgzN1x4ZmRceDA3XHg5NiIsCisJCS5wdGV4dAk9 ICJceDY1XHg3NVx4YWVceGQzXHhlMlx4YmNceDQzXHg1YyIKKwkJCSAgIlx4YjNceDFhXHhkOFx4 MDVceGMzXHhkMFx4NTZceDI5IiwKKwkJLmN0ZXh0CT0gIlx4MTFceDkxXHhlYVx4NzRceDU4XHhj Y1x4ZDVceGEyIgorCQkJICAiXHhkMFx4NTVceDllXHgzZFx4ZmVceDdmXHhjOFx4ZmUiLAorCQku a2xlbgk9IDE2LAorCQkubGVuCT0gMTYsCisJfSwKKwl7CisJCS5rZXkJPSAiXHhlN1x4ZDFceDc3 XHg0OFx4NzZceDBiXHhjZFx4MzQiCisJCQkgICJceDJhXHgyZFx4ZTdceDc0XHhjYVx4MTFceDlj XHhhZSIsCisJCS5pdgk9ICJceDcxXHgxY1x4NDlceDYyXHhkOVx4NWJceDUwXHg1ZSIKKwkJCSAg Ilx4NjhceDg3XHhiY1x4ZjZceDg5XHhmZlx4ZWRceDMwIgorCQkJICAiXHhlNFx4ZTVceGJkXHhi Nlx4MTBceDRmXHg5Zlx4NjYiCisJCQkgICJceDI4XHgwNlx4NWFceGY0XHgyN1x4MzVceGNkXHhl NSIsCisJCS5wdGV4dAk9ICJceDg3XHgwM1x4OGZceDA2XHhhOFx4NjFceDU0XHhkYSIKKwkJCSAg Ilx4MDFceDQ1XHhkNFx4MDFceGVmXHg0YVx4MjJceGNmIgorCQkJICAiXHg3OFx4MTVceDlmXHhi ZFx4NjRceGJkXHgyY1x4YjkiCisJCQkgICJceDQwXHgxZFx4NzJceGFlXHg1M1x4NjNceGE1IiwK KwkJLmN0ZXh0CT0gIlx4NGVceGExXHgwNVx4MjdceGI4XHg0NVx4ZTRceGExIgorCQkJICAiXHhi Ylx4MzBceGI0XHhhNlx4MTJceDc0XHg2M1x4ZDYiCisJCQkgICJceDE3XHhjOVx4Y2NceDJmXHgx OFx4NjRceGUwXHgwNiIKKwkJCSAgIlx4MGFceGEwXHhmZlx4NzJceDEwXHg3Ylx4MjIiLAorCQku a2xlbgk9IDE2LAorCQkubGVuCT0gMzEsCisJfSwKKwl7CisJCS5rZXkJPSAiXHg1OVx4NjVceDNi XHgxZFx4NDNceDVlXHhjMFx4YWUiCisJCQkgICJceGI4XHg5ZFx4OWJceGRkXHgyMlx4MDNceGJm XHhjYSIsCisJCS5pdgk9ICJceGVjXHg5NVx4ZmFceDVhXHhjZlx4NWVceGQyXHg5MyIKKwkJCSAg Ilx4YTNceGI1XHhlNVx4YmVceGYzXHgwMVx4N2JceDAxIgorCQkJICAiXHhkMVx4Y2FceDZjXHgw Nlx4ODJceGYwXHhiZFx4NjciCisJCQkgICJceGQ5XHg2Y1x4YTRceGRjXHhiNFx4MzhceDBmXHg3 NCIsCisJCS5wdGV4dAk9ICJceDQ1XHhkZlx4NzVceDg3XHhiY1x4NzJceGNlXHg1NSIKKwkJCSAg Ilx4YzlceGZhXHhjYlx4ZmNceDlmXHg0MFx4ODJceDJiIgorCQkJICAiXHhjNlx4NGZceDRmXHg1 Ylx4OGJceDNiXHg2ZFx4NjciCisJCQkgICJceGE2XHg5M1x4NjJceDg5XHg4Y1x4MTlceGY0XHhl MyIKKwkJCSAgIlx4MDhceDkyXHg5Y1x4YzlceDQ3XHgyY1x4NmVceGQwIgorCQkJICAiXHhhM1x4 MDJceDJiXHhkYlx4MmNceGYyXHg4ZFx4NDYiCisJCQkgICJceGNkXHhiMFx4OWRceDI2XHg2M1x4 NGNceDQwXHg2YiIKKwkJCSAgIlx4NzlceDQzXHhlNVx4Y2VceDQyXHhhOFx4ZWNceDNiIgorCQkJ ICAiXHg1Ylx4ZDBceGVhXHhhNFx4ZTZceGRiXHg2Nlx4NTUiCisJCQkgICJceDdhXHg3Nlx4ZWNc eGFiXHg3ZFx4MmFceDJiXHhiZCIKKwkJCSAgIlx4YTlceGFiXHgyMlx4NjRceDFhXHhhMVx4YWVc eDg0IgorCQkJICAiXHg4Nlx4NzlceDY3XHhlOVx4YjJceDUwXHhiZVx4MTIiCisJCQkgICJceDJm XHhiMlx4MTRceGYwXHhkYlx4NzFceGQ4XHhhNyIKKwkJCSAgIlx4NDFceDhhXHg4OFx4YTBceDZh XHg2ZVx4OWRceDJhIgorCQkJICAiXHhmYVx4MTFceDM3XHg0MFx4MzJceDA5XHg0Y1x4NDciCisJ CQkgICJceDQxXHgwN1x4MzFceDg1XHgzZFx4YThceGY3XHg2NCIsCisJCS5jdGV4dAk9ICJceDJk XHg0Ylx4OWZceDkzXHhjYVx4NWFceDQ4XHgyNiIKKwkJCSAgIlx4MDFceGNjXHg1NFx4ZTRceDMx XHg1MFx4MTJceGYwIgorCQkJICAiXHg0OVx4ZmZceDU5XHg0Mlx4NjhceGJkXHg4N1x4OGYiCisJ CQkgICJceDllXHg2Mlx4OTZceGNkXHhiOVx4MjRceDU3XHhhNCIKKwkJCSAgIlx4MGJceDdiXHhm NVx4MmVceDBlXHhhOFx4NjVceDA3IgorCQkJICAiXHhhYlx4MDVceGQ1XHhjYVx4ZTdceDljXHg2 Y1x4MzQiCisJCQkgICJceDVkXHg0Mlx4MzRceGE0XHg2Mlx4ZTlceDc1XHg0OCIKKwkJCSAgIlx4 M2RceDllXHg4Zlx4ZmFceDQyXHhlOVx4NzVceDA4IgorCQkJICAiXHg0ZVx4NTRceDkxXHgyYlx4 YmRceDExXHgwZlx4OGUiCisJCQkgICJceGYwXHg4Mlx4ZjVceDI0XHhmMVx4YzRceGZjXHhhZSIK KwkJCSAgIlx4NDJceDU0XHg3Zlx4Y2VceDE1XHhhOFx4YjJceDMzIgorCQkJICAiXHhjMFx4ODZc eGI2XHgyYlx4ZThceDQ0XHhjZVx4MWYiCisJCQkgICJceDY4XHg1N1x4NjZceDk0XHg2ZVx4YWRc eGViXHhmMyIKKwkJCSAgIlx4MzBceGY4XHgxMVx4YmRceDYwXHgwMFx4YzZceGQ1IgorCQkJICAi XHg0Y1x4ODFceGYxXHgyMFx4MmJceDRhXHg1Ylx4OTkiCisJCQkgICJceDc5XHgzYlx4YzlceDVj XHg3NFx4MjNceGU2XHg1ZCIsCisJCS5rbGVuCT0gMTYsCisJCS5sZW4JPSAxMjgsCisJfSwKKwl7 CisJCS5rZXkJPSAiXHgzZVx4MDhceDVkXHg2NFx4NmNceDk4XHhlY1x4ZWMiCisJCQkgICJceDcw XHgwZVx4MGRceGExXHg0MVx4MjBceDk5XHg4MiIsCisJCS5pdgk9ICJceDExXHhiN1x4NzdceDkx XHgwZFx4OTlceGQ5XHg4ZCIKKwkJCSAgIlx4MzVceDNhXHhmN1x4MTRceDZiXHgwOVx4MzdceGU1 IgorCQkJICAiXHhhZFx4NTFceGY2XHhjM1x4OTZceDRiXHg2NFx4NTYiCisJCQkgICJceGE4XHhi ZFx4ODFceGNjXHhiZVx4OTRceGFmXHhlNCIsCisJCS5wdGV4dAk9ICJceGZmXHg4ZFx4YjlceGMw XHhlM1x4NjlceGIzXHhiMiIKKwkJCSAgIlx4OGJceDExXHgyNlx4YjNceDExXHhlY1x4ZmJceGI5 IgorCQkJICAiXHg5Y1x4YzFceDcxXHhkNlx4ZTNceDI2XHgwZVx4ZTAiCisJCQkgICJceDY4XHg0 MFx4NjBceGI5XHgzYVx4NjNceDU2XHg4YSIKKwkJCSAgIlx4OWVceGMxXHhmMFx4MTBceGIxXHg2 NFx4MzJceDcwIgorCQkJICAiXHhmOFx4Y2RceGM2XHhjNFx4NDlceDRjXHhlMVx4Y2UiCisJCQkg ICJceGYzXHhlMVx4MDNceGY4XHgzNVx4YWVceGUwXHg1ZSIKKwkJCSAgIlx4ZWZceDVmXHhiY1x4 NDFceDc1XHgyNlx4MTNceGNjIgorCQkJICAiXHgzN1x4ODVceGRmXHhjMFx4NWRceGE2XHg0N1x4 OTgiCisJCQkgICJceGYxXHg5N1x4NTJceDU4XHgwNFx4ZTZceGI1XHgwMSIKKwkJCSAgIlx4YzBc eGI4XHgxN1x4NmRceDc0XHhiZFx4OWFceGRmIgorCQkJICAiXHhhNFx4MzdceDk0XHg4Nlx4YjBc eDEzXHg4M1x4MjgiCisJCQkgICJceGM5XHhhMlx4MDdceDNmXHhiNVx4YjJceDcyXHg0MCIKKwkJ CSAgIlx4MGVceDYwXHhkZlx4NTdceDA3XHhiN1x4MmNceDY2IgorCQkJICAiXHgxMFx4M2ZceDhk XHhkZFx4MzBceDBhXHg0N1x4ZDUiCisJCQkgICJceGU4XHg5ZFx4ZmJceGExXHhhZlx4NTNceGQ3 XHgwNSIKKwkJCSAgIlx4YzdceGQyXHhiYVx4ZTdceDJjXHhhMFx4YmZceGI4IgorCQkJICAiXHhk MVx4OTNceGU3XHg0MVx4ODJceGEzXHg0MVx4M2EiCisJCQkgICJceGFmXHgxMlx4ZDZceGY4XHgz NFx4ZGFceDkyXHg0NiIKKwkJCSAgIlx4YWRceGEyXHgyZlx4ZjZceDdlXHg0Nlx4OTZceGQ4Igor CQkJICAiXHgwM1x4ZjNceDQ5XHg2NFx4ZGVceGQ4XHgwNlx4OGIiCisJCQkgICJceGEwXHhiY1x4 NjNceDM1XHgzOFx4YjZceDZiXHhkYSIKKwkJCSAgIlx4NWJceDUwXHgzZlx4MTNceGE1XHg4NFx4 MWJceDFiIgorCQkJICAiXHg2Nlx4ODlceDk1XHhiN1x4YzJceDE2XHgzY1x4ZTkiCisJCQkgICJc eDI0XHhiMFx4OGNceDZmXHg0OVx4ZWZceGY3XHgyOCIKKwkJCSAgIlx4NmFceDI0XHhmZFx4YmVc eDI1XHhlMlx4YjRceDkwIgorCQkJICAiXHg3N1x4NDRceDA4XHhiOFx4ZGFceGQyXHhkZVx4MmMi CisJCQkgICJceGEwXHg1N1x4NDVceDU3XHgyOVx4NDdceDZiXHg4OSIKKwkJCSAgIlx4NGFceGY2 XHhhN1x4MmFceGMzXHg5ZVx4N2JceGM4IgorCQkJICAiXHhmZFx4OWZceDg5XHhhYlx4ZWVceDZk XHhhM1x4YjQiCisJCQkgICJceDIzXHg5MFx4N2FceGU5XHg4OVx4YTBceGM3XHhiMyIKKwkJCSAg Ilx4MTdceDQxXHg4N1x4OTFceGZjXHg5N1x4NDIiLAorCQkuY3RleHQJPSAiXHhmY1x4OWJceDk2 XHg2Nlx4YzRceDgyXHgyYVx4NGEiCisJCQkgICJceGIxXHgyNFx4YmFceGM3XHg3OFx4NWZceDc5 XHhjMSIKKwkJCSAgIlx4NTdceDJlXHg0N1x4MjlceDRkXHg3Ylx4ZDJceDlhIgorCQkJICAiXHhi ZFx4YzZceGMxXHgyNlx4N2JceDhlXHgzZlx4NWQiCisJCQkgICJceGQ0XHhiNFx4OWZceDZhXHgw Mlx4MjRceDRhXHhhZCIKKwkJCSAgIlx4MGNceDAwXHgxYlx4ZGZceDkyXHhjNVx4OGFceGUxIgor CQkJICAiXHg3N1x4NzlceGNjXHhkNVx4MjBceGJmXHg4M1x4ZjQiCisJCQkgICJceDRiXHhhZFx4 MTFceGJmXHhkYlx4NDdceDY1XHg3MCIKKwkJCSAgIlx4NDNceGYzXHg2NVx4ZGZceGI3XHhkY1x4 YjJceGI5IgorCQkJICAiXHhhYVx4M2ZceGIzXHhkZlx4NzlceDY5XHgwZFx4YTAiCisJCQkgICJc eDg2XHgxY1x4YmFceDQ4XHgwYlx4MDFceGMxXHg4OCIKKwkJCSAgIlx4ZGZceDAzXHhiMVx4MDZc eDNjXHgxZFx4NTZceGExIgorCQkJICAiXHg4ZVx4OThceGMxXHhhNlx4OTVceGEyXHg1Ylx4NzIi CisJCQkgICJceDc2XHg1OVx4ZDJceDI2XHgyNVx4Y2RceGVmXHg3YyIKKwkJCSAgIlx4YzlceDYw XHhlYVx4NDNceGQxXHgxMlx4OGFceDhhIgorCQkJICAiXHg2M1x4MTJceDc4XHhjYlx4MmZceDg4 XHgxZVx4ODgiCisJCQkgICJceDc4XHg1OVx4ZGVceGJhXHg0ZFx4MmNceDc4XHg2MSIKKwkJCSAg Ilx4NzVceDM3XHg1NFx4ZmRceDgwXHhjN1x4NWVceDk4IgorCQkJICAiXHhjZlx4MTRceDYyXHg4 ZVx4ZmJceDcyXHhlZVx4NGQiCisJCQkgICJceDlmXHhhZlx4OGJceDA5XHhlNVx4MjFceDBhXHg5 MSIKKwkJCSAgIlx4OGZceDg4XHg4N1x4ZDVceGIxXHg4NFx4YWJceDE4IgorCQkJICAiXHgwOFx4 NTdceGVkXHg3Mlx4MzVceGE2XHgwZVx4YzYiCisJCQkgICJceGZmXHhjYlx4ZmVceDJjXHg0OFx4 MzlceDE0XHg0NCIKKwkJCSAgIlx4YmFceDU5XHgzMlx4M2FceDJkXHhjNFx4NWZceGNiIgorCQkJ ICAiXHhiZVx4NjhceDhlXHg3Ylx4ZWVceDIxXHhhNFx4MzIiCisJCQkgICJceDExXHhhMFx4OTlc eGZkXHg5MFx4ZGVceDU5XHg0MyIKKwkJCSAgIlx4ZWJceGVkXHhkNVx4ODdceDY4XHg0Nlx4YzZc eGRlIgorCQkJICAiXHgwYlx4MDdceDE3XHg1OVx4NmFceGFiXHhjYVx4MTUiCisJCQkgICJceDY1 XHgwMlx4MDFceGI2XHg3MVx4OGNceDNiXHhhYSIKKwkJCSAgIlx4MThceDNiXHgzMFx4YWVceDM4 XHg1Ylx4MmNceDc0IgorCQkJICAiXHhkNFx4ZWVceDRhXHhmY1x4ZjdceDFiXHgwOVx4ZDQiCisJ CQkgICJceGRhXHg4Ylx4MWRceDVkXHg2Zlx4MjFceDZjIiwKKwkJLmtsZW4JPSAxNiwKKwkJLmxl bgk9IDI1NSwKKwl9LAorCXsKKwkJLmtleQk9ICJceDI0XHhmNlx4ZTFceDYyXHhlNVx4YWZceDk5 XHhkYSIKKwkJCSAgIlx4ODRceGVjXHg0MVx4YjBceGEzXHgwYlx4ZDVceGE4IgorCQkJICAiXHhh MFx4M2VceDdiXHhhNlx4ZGRceDZjXHg4Zlx4YTgiLAorCQkuaXYJPSAiXHg3Zlx4ODBceDI0XHg2 Mlx4MzJceGRkXHhhYlx4NjYiCisJCQkgICJceGYyXHg4N1x4MjlceDI0XHhlY1x4ZDJceDRiXHg5 ZiIKKwkJCSAgIlx4MGNceDMzXHg1Mlx4ZDlceGUwXHhjY1x4NmVceGU0IgorCQkJICAiXHg5MFx4 ODVceDQzXHg5N1x4YzRceDYyXHgxNFx4MzMiLAorCQkucHRleHQJPSAiXHhlZlx4NThceGU3XHg3 Zlx4YTlceGQ5XHhiOFx4ZDciCisJCQkgICJceGEyXHg5MVx4OTdceDA3XHgyN1x4OWVceGJhXHhl OCIKKwkJCSAgIlx4YWEiLAorCQkuY3RleHQJPSAiXHhkN1x4YzNceDgxXHg5MVx4ZjJceDQwXHgx N1x4NzMiCisJCQkgICJceDNlXHgzYlx4MWNceDJhXHg4ZVx4MTFceDljXHgxNyIKKwkJCSAgIlx4 ZjEiLAorCQkua2xlbgk9IDI0LAorCQkubGVuCT0gMTcsCisJfSwKKwl7CisJCS5rZXkJPSAiXHhi Zlx4YWZceGQ3XHg2N1x4OGNceDQ3XHhjZlx4MjEiCisJCQkgICJceDhhXHhhNVx4ZGRceDMyXHgy NVx4NDdceGJlXHg0ZiIKKwkJCSAgIlx4ZjFceDNhXHgwYlx4YTZceGFhXHgyZFx4Y2ZceDA5IiwK KwkJLml2CT0gIlx4ZDlceGU4XHhmMFx4OTJceDRlXHhmY1x4MWRceGYyIgorCQkJICAiXHg4MVx4 MzdceDdjXHg4Zlx4ZjFceDU5XHgwOVx4MjAiCisJCQkgICJceGY0XHg0Nlx4NTFceDg2XHg0Zlx4 NTRceDhiXHgzMiIKKwkJCSAgIlx4NThceGQxXHg5OVx4OGJceDhjXHgwM1x4ZWJceDVkIiwKKwkJ LnB0ZXh0CT0gIlx4Y2RceDY0XHg5MFx4ZjlceDdjXHhlNVx4MGVceDVhIgorCQkJICAiXHg3NVx4 ZTdceDhlXHgzOVx4ODZceGVjXHgyMFx4NDMiCisJCQkgICJceDhhXHg0OVx4MDlceDE1XHg0N1x4 ZjRceDNjXHg4OSIKKwkJCSAgIlx4MjFceGViXHhjZlx4NGVceGNmXHg5MVx4YjVceDQwIgorCQkJ ICAiXHhjZFx4ZTVceDRkXHg1Y1x4NmZceGYyXHhkMlx4ODAiCisJCQkgICJceGZhXHhhYlx4YjNc eDc2XHg5Zlx4N2ZceDg0XHgwYSIsCisJCS5jdGV4dAk9ICJceDQ0XHg5OFx4NjRceDE1XHhiN1x4 MGJceDgwXHhhMyIKKwkJCSAgIlx4YjlceGNhXHgyM1x4ZmZceDNiXHgwYlx4NjhceDc0IgorCQkJ ICAiXHhiYlx4M2VceDIwXHgxOVx4OWZceDI4XHg3MVx4MmEiCisJCQkgICJceDQ4XHgzY1x4N2Nc eGUyXHhlZlx4YjVceDEwXHhhYyIKKwkJCSAgIlx4ODJceDlmXHhjZFx4MDhceDhmXHg2Ylx4MTZc eDZmIgorCQkJICAiXHhjM1x4YmJceDA3XHhmYlx4M2NceGIwXHgxYlx4MjciLAorCQkua2xlbgk9 IDI0LAorCQkubGVuCT0gNDgsCisJfSwKKwl7CisJCS5rZXkJPSAiXHhiOFx4MzVceGEyXHg1Zlx4 ODZceGJiXHg4Mlx4OTkiCisJCQkgICJceDI3XHhlYlx4MDFceDNmXHg5Mlx4YWZceDgwXHgyNCIK KwkJCSAgIlx4NGNceDY2XHhhMlx4ODlceGZmXHgyZVx4YTJceDI1IiwKKwkJLml2CT0gIlx4MGFc eDFkXHg5Nlx4ZDNceGUwXHhlOFx4MGNceDliIgorCQkJICAiXHg5ZFx4NmZceDIxXHg5N1x4YzJc eDE3XHhkYlx4MzkiCisJCQkgICJceDNmXHhkOFx4NjRceDQ4XHg4MFx4MDRceGVlXHg0MyIKKwkJ CSAgIlx4MDJceGNlXHg4OFx4ZTJceDgxXHg4MVx4NWZceDgxIiwKKwkJLnB0ZXh0CT0gIlx4Yjhc eGY5XHgxNlx4OGJceDI1XHg2OFx4ZDBceDljIgorCQkJICAiXHhkMlx4MjhceGFjXHhhOFx4Nzlc eGMyXHgzMFx4YzEiCisJCQkgICJceDMxXHhkZVx4MWNceDM3XHgxYlx4YTJceGI1XHhlNiIKKwkJ CSAgIlx4ZjBceGQwXHhmOFx4OWNceDdmXHhjNlx4NDZceDA3IgorCQkJICAiXHg1Y1x4YzNceDA2 XHhlNFx4ZjBceDAyXHhlY1x4ZjgiCisJCQkgICJceDU5XHg3Y1x4YzJceDVkXHhmOFx4MGNceDIx XHhhZSIKKwkJCSAgIlx4OWVceDgyXHhiMVx4MWFceDVmXHg3OFx4NDRceDE1IgorCQkJICAiXHgw MFx4YTdceDJlXHg1Mlx4YzVceDk4XHg5OFx4MzUiCisJCQkgICJceDAzXHhhZVx4ZDBceDhlXHgw N1x4NTdceGUyXHg1YSIKKwkJCSAgIlx4MTdceGJmXHg1Mlx4NDBceDU0XHg1Ylx4NzRceGU1Igor CQkJICAiXHgyZFx4MzVceGFmXHg5ZVx4MzdceGY3XHg3ZVx4NGEiCisJCQkgICJceDhjXHg5ZVx4 YTFceGRjXHg0MFx4YjRceDViXHgzNiIKKwkJCSAgIlx4ZGNceDNhXHg2OFx4ZTZceGI3XHgzNVx4 MGJceDhhIgorCQkJICAiXHg5MFx4ZWNceDc0XHg4Zlx4MDlceDlhXHg3Zlx4MDIiCisJCQkgICJc eDRkXHgwM1x4NDZceDM1XHg2Mlx4YjFceGJkXHgwOCIKKwkJCSAgIlx4M2ZceDU0XHgyYVx4MTBc eDBiXHhkY1x4NjlceGFmIgorCQkJICAiXHgyNVx4M2FceDBjXHg1Zlx4ZTBceDUxXHhlN1x4MTEi CisJCQkgICJceGI3XHgwMFx4YWJceGJiXHg5YVx4YjBceGRjXHg0ZCIKKwkJCSAgIlx4YzNceDdk XHgxYVx4NmVceGQxXHgwOVx4NTJceGJkIgorCQkJICAiXHg2Ylx4NDNceDU1XHgyMlx4M2FceDc4 XHgxNFx4N2QiCisJCQkgICJceDc5XHhmZFx4OGRceGZjXHg5Ylx4MWRceDBmXHhhMiIKKwkJCSAg Ilx4YzdceGI5XHhmOFx4ODdceGQ1XHg5Nlx4NTBceDYxIgorCQkJICAiXHhhN1x4NWVceDFlXHg1 N1x4OTdceGUwXHhhZFx4MmYiCisJCQkgICJceDkzXHhlNlx4ZThceDgzXHhlY1x4ODVceDI2XHg1 ZSIKKwkJCSAgIlx4ZDlceDJhXHgxNVx4ZTBceGU5XHgwOVx4MjVceGExIgorCQkJICAiXHg3N1x4 MmJceDg4XHhkY1x4YTRceGE1XHg0OFx4YjYiCisJCQkgICJceGY3XHhjY1x4YTZceGE5XHhiYVx4 ZjNceDQyXHg1YyIKKwkJCSAgIlx4NzBceDlkXHhlOVx4MjlceGMxXHhmMVx4MzNceGRkIgorCQkJ ICAiXHg1Nlx4NDhceDE3XHg4Nlx4MTRceDUxXHg1Y1x4MTAiCisJCQkgICJceGFiXHhmZFx4ZDNc eDI2XHg4Y1x4MjFceGY1XHg5MyIKKwkJCSAgIlx4MWJceGViXHg0N1x4OTdceDczXHhiYlx4ODhc eDEwIgorCQkJICAiXHhmM1x4ZmVceGY1XHhkZVx4ZjNceDJlXHgwNVx4NDYiCisJCQkgICJceDFj XHgwZFx4YTNceDEwXHg0OFx4OWNceDcxXHgxNiIKKwkJCSAgIlx4NzhceDMzXHg0ZFx4MGFceDc0 XHgzYlx4ZTlceDM0IgorCQkJICAiXHgwYlx4YTdceDBlXHg5ZVx4NjFceGU5XHhlOVx4ZmQiCisJ CQkgICJceDg1XHhhMFx4Y2JceDE5XHhmZFx4N2NceDMzXHhlMyIKKwkJCSAgIlx4MGVceGNlXHhj Mlx4NmZceDlkXHhhNFx4MmRceDc3IgorCQkJICAiXHhmZFx4YWRceGVlXHg1ZVx4MDhceDNlXHhk N1x4ZjUiCisJCQkgICJceGZiXHhjM1x4ZDdceDkzXHg5Nlx4MDhceDk2XHhjYSIKKwkJCSAgIlx4 NThceDgxXHgxNlx4OWJceDk4XHgwYVx4ZTJceGVmIgorCQkJICAiXHg3Zlx4ZGFceDQwXHhlNFx4 MWZceDQ2XHg5ZVx4NjciCisJCQkgICJceDJiXHg4NFx4Y2JceDQyXHhjNFx4ZDZceDZhXHhjZiIK KwkJCSAgIlx4MmRceGIyXHgzM1x4YzBceDU2XHhiM1x4MzVceDZmIgorCQkJICAiXHgyOVx4MzZc eDhmXHg2YVx4NWJceGVjXHhkNVx4NGYiCisJCQkgICJceGEwXHg3MFx4ZmZceGI2XHg1Ylx4ZGVc eDZhXHg5MyIKKwkJCSAgIlx4MjBceDNjXHhlMlx4NzZceDdhXHhlZlx4M2NceDc5IgorCQkJICAi XHgzMVx4NjVceGNlXHgzYVx4MGVceGQwXHhiZVx4YTgiCisJCQkgICJceDIxXHg5NVx4YzdceDJi XHg2Mlx4OGVceDY3XHhkZCIKKwkJCSAgIlx4MjBceDc5XHhlNFx4ZTVceDAxXHgxNVx4YzBceGVj IgorCQkJICAiXHgwZlx4ZDlceDIzXHhjOFx4Y2FceGRmXHhkNFx4N2QiCisJCQkgICJceDFkXHhm OFx4NjRceDRmXHg1Nlx4YjFceDgzXHhhNyIKKwkJCSAgIlx4NDNceGJlXHhmY1x4Y2ZceGMyXHg4 Y1x4MzNceGRhIgorCQkJICAiXHgzNlx4ZDBceDUyXHhlZlx4OWVceDllXHg4OFx4ZjQiCisJCQkg ICJceGE4XHgyMVx4MGZceGFhXHhlZVx4OGRceGEwXHgyNCIKKwkJCSAgIlx4NGRceGNiXHhiMVx4 NzJceDA3XHhmMFx4YzJceDA2IgorCQkJICAiXHg2MFx4NjVceDg1XHg4NFx4MmNceDYwXHhjZlx4 NjEiCisJCQkgICJceGU3XHg1Nlx4NDNceDViXHgyYlx4NTBceDc0XHhmYSIKKwkJCSAgIlx4ZGJc eDRlXHhlYVx4ODhceGQ0XHhiM1x4ODNceDhmIgorCQkJICAiXHg2Zlx4OTdceDRiXHg1N1x4N2Fc eDY0XHg2NFx4YWUiCisJCQkgICJceDBhXHgzN1x4NjZceGM1XHgwM1x4YWRceGI1XHhmOSIKKwkJ CSAgIlx4MDhceGIwXHgzYVx4NzRceGRlXHg5N1x4NTFceGZmIgorCQkJICAiXHg0OFx4NGZceDVj XHhhNFx4ZjhceDdhXHhiNFx4MDUiCisJCQkgICJceDI3XHg3MFx4NTJceDg2XHgxYlx4NzhceGZj XHgxOCIKKwkJCSAgIlx4MDZceDI3XHhhOVx4NjJceGY3XHhkYVx4ZDJceDhlIiwKKwkJLmN0ZXh0 CT0gIlx4M2JceGUxXHhkYlx4YjNceGM1XHg5YVx4ZGVceDY5IgorCQkJICAiXHg1OFx4MDVceGNj XHhlYlx4MDJceDUxXHg3OFx4NGEiCisJCQkgICJceGFjXHgyOFx4ZTlceGVkXHhkMVx4YzlceDE1 XHg3ZCIKKwkJCSAgIlx4MzNceDdkXHhjMVx4NDdceDEyXHg0MVx4MTFceGY4IgorCQkJICAiXHg0 YVx4MmNceGI3XHhhM1x4NDFceGJlXHg1OVx4ZjciCisJCQkgICJceDIyXHhkYlx4MmNceGRhXHg5 Y1x4MDBceDYxXHg5YiIKKwkJCSAgIlx4NzNceGIzXHgwYlx4ODRceDJiXHhjMVx4ZjNceDgwIgor CQkJICAiXHg4NFx4ZWJceDE5XHg2MFx4ODBceDA5XHhlMVx4Y2QiCisJCQkgICJceDE2XHgzYVx4 MjBceDIzXHhjNFx4ODJceDRmXHhiYSIKKwkJCSAgIlx4M2JceDhlXHg1NVx4ZDdceGE5XHgwYlx4 NzVceGQwIgorCQkJICAiXHhkYVx4Y2VceGQyXHhlZVx4N2VceDRiXHg3Zlx4NjUiCisJCQkgICJc eDRkXHgyOFx4YzVceGQzXHgxNVx4MmNceDQwXHg5NiIKKwkJCSAgIlx4NTJceGQ0XHgxOFx4NjFc eDJiXHhlN1x4ODNceGVjIgorCQkJICAiXHg4OVx4NjJceDljXHg0Y1x4NTBceGU2XHhlMlx4YmIi CisJCQkgICJceDI1XHhhMVx4MGZceGE3XHhiMFx4YjRceGIyXHhkZSIKKwkJCSAgIlx4NTRceDIw XHhhZVx4YTNceDU2XHhhNVx4MjZceDRjIgorCQkJICAiXHhkNVx4Y2NceGU1XHhjYlx4MjhceDQ0 XHhiMVx4ZWYiCisJCQkgICJceDY3XHgyZVx4OTNceDZkXHgwMFx4ODhceDgzXHg5YSIKKwkJCSAg Ilx4ZjJceDFjXHg0OFx4MzhceGVjXHgxYVx4MjRceDkwIgorCQkJICAiXHg3M1x4MGFceGRiXHhl OFx4Y2VceDk1XHg3YVx4MmMiCisJCQkgICJceDhjXHhlOVx4YjdceDA3XHgxZFx4YjNceGEzXHgy MCIKKwkJCSAgIlx4YmVceGFkXHg2MVx4ODRceGFjXHhkZVx4NzZceGI1IgorCQkJICAiXHhhNlx4 MjhceDI5XHg0N1x4NjNceGM0XHhmY1x4MTMiCisJCQkgICJceDNmXHg3MVx4ZmJceDU4XHgzN1x4 MzRceDgyXHhlZCIKKwkJCSAgIlx4OWVceDA1XHgxOVx4MWZceGMxXHg2N1x4YzFceGFiIgorCQkJ ICAiXHhmNVx4ZmRceDdjXHhlYVx4ZmFceGE0XHhmOFx4MGEiCisJCQkgICJceGFjXHg0Y1x4OTJc eGRmXHg2NVx4NzNceGQ3XHhkYiIKKwkJCSAgIlx4ZWRceDJjXHhlMFx4ODRceDVmXHg1N1x4OGNc eDc2IgorCQkJICAiXHgzZVx4MDVceGMwXHhjM1x4NjhceDk2XHg5NVx4MGIiCisJCQkgICJceDg4 XHg5N1x4ZmVceDJlXHg5OVx4ZDVceGMyXHhiOSIKKwkJCSAgIlx4NTNceDlmXHhmM1x4MzJceDEw XHgxZlx4MWZceDVkIgorCQkJICAiXHhkZlx4MjFceDk1XHg3MFx4OTFceGU4XHhhMVx4M2UiCisJ CQkgICJceDE5XHgzZVx4YjZceDBiXHhhOFx4ZGJceGY4XHhkNCIKKwkJCSAgIlx4NTRceDI3XHhi OFx4YWJceDVkXHg3OFx4MGNceGU2IgorCQkJICAiXHhiN1x4MDhceGVlXHhhNFx4YjZceDZiXHhl Ylx4NWEiCisJCQkgICJceDg5XHg2OVx4MmJceGJkXHhkNFx4MjFceDViXHhiZiIKKwkJCSAgIlx4 NzlceGJiXHgwZlx4ZmZceGRiXHgyM1x4OWFceGViIgorCQkJICAiXHg4ZFx4ZjJceGM0XHgzOVx4 YjRceDkwXHg3N1x4NmYiCisJCQkgICJceDY4XHhlMlx4YjhceGYzXHhmMVx4NjVceDRmXHhkNSIK KwkJCSAgIlx4MjRceDgwXHgwNlx4YWZceDdjXHg4ZFx4MTVceDBjIgorCQkJICAiXHhmZFx4NTZc eGU1XHhlM1x4MDFceGE1XHhmN1x4MWMiCisJCQkgICJceDMxXHhkNlx4YTJceDAxXHgxZVx4NTlc eGY5XHhhOSIKKwkJCSAgIlx4NDJceGQ1XHhjMlx4MzRceGRhXHgyNVx4ZGVceGM2IgorCQkJICAi XHg1ZFx4MzhceGVmXHhkMVx4NGNceGMxXHhkOVx4MWIiCisJCQkgICJceDk4XHhmZFx4Y2RceDU3 XHg2Zlx4ZmRceDQ2XHg5MSIKKwkJCSAgIlx4OTBceDNkXHg1Mlx4MmJceDJjXHg3ZFx4Y2ZceDcx IgorCQkJICAiXHhjZlx4ZDFceDc3XHgyM1x4NzFceDM2XHhiMVx4Y2UiCisJCQkgICJceGM3XHg1 ZFx4ZjBceDViXHg0NFx4M2RceDQzXHg3MSIKKwkJCSAgIlx4YWNceGI4XHhhMFx4NmFceGVhXHg4 OVx4NWNceGZmIgorCQkJICAiXHg4MVx4NzNceGQ0XHg4M1x4ZDFceGM5XHhlOVx4ZTIiCisJCQkg ICJceGE4XHhhNlx4MGZceDM2XHhlNlx4YWFceDU3XHhkNCIKKwkJCSAgIlx4MjdceGQyXHhjOVx4 ZGFceDk0XHgwMlx4MWZceGZiIgorCQkJICAiXHhlMVx4YTFceDA3XHhiZVx4ZTFceDFiXHgxNVx4 OTQiCisJCQkgICJceDFlXHhhY1x4MmZceDU3XHhiYlx4NDFceDIyXHhhZiIKKwkJCSAgIlx4NjBc eDVlXHhjY1x4NjZceGNiXHgxNlx4NjJceGFiIgorCQkJICAiXHhiOFx4N2NceDk5XHhmNFx4ODRc eDkzXHgwY1x4YzIiCisJCQkgICJceGEyXHg0OVx4ZTRceGZkXHgxN1x4NTVceGUxXHhhNiIKKwkJ CSAgIlx4OGRceDViXHhjNlx4MWJceGM4XHhhY1x4ZWNceDExIgorCQkJICAiXHgzM1x4Y2ZceGIw XHhlOFx4YzdceDI4XHg0Zlx4YjIiCisJCQkgICJceDVjXHhhNlx4ZTJceDcxXHhhYlx4ODBceDBh XHhhNyIKKwkJCSAgIlx4NWNceDU5XHg1MFx4OWZceDdhXHgzMlx4YjdceGU1IgorCQkJICAiXHgy NFx4OWFceDhlXHgyNVx4MjFceDJlXHhiN1x4MTgiCisJCQkgICJceGQwXHhmMlx4ZTdceDI3XHg2 Zlx4ZGFceGMxXHgwMCIKKwkJCSAgIlx4ZDlceGE2XHgwM1x4NTlceGFjXHg0Ylx4Y2JceGJhIiwK KwkJLmtsZW4JPSAyNCwKKwkJLmxlbgk9IDUxMiwKKwl9LAorCXsKKwkJLmtleQk9ICJceDllXHhl Ylx4YjJceDQ5XHgzY1x4MWNceGY1XHhmNCIKKwkJCSAgIlx4NmFceDk5XHhjMlx4YzRceGRmXHhi MVx4ZjRceGRkIgorCQkJICAiXHg3NVx4MjBceDU3XHhlYVx4MmNceDRmXHhjZFx4YjIiCisJCQkg ICJceGE1XHgzZFx4N2JceDQ5XHgxZVx4YWJceGZkXHgwZiIsCisJCS5pdgk9ICJceGRmXHg2M1x4 ZDRceGFiXHhkMlx4NDlceGYzXHhkOCIKKwkJCSAgIlx4MzNceDgxXHgzN1x4NjBceDdkXHhmYVx4 NzNceDA4IgorCQkJICAiXHhkOFx4NDlceDZkXHg4MFx4ZThceDJmXHg2Mlx4NTQiCisJCQkgICJc eGViXHgwZVx4YTlceDM5XHg1Ylx4NDVceDdmXHg4YSIsCisJCS5wdGV4dAk9ICJceDY3XHhjOVx4 ZjJceDMwXHg4NFx4NDFceDhlXHg0MyIKKwkJCSAgIlx4ZmJceGYzXHhiM1x4M2VceDc5XHgzNlx4 N2ZceGU4IiwKKwkJLmN0ZXh0CT0gIlx4MjdceDM4XHg3OFx4NDdceDE2XHhkOVx4NzFceDM1Igor CQkJICAiXHgyZVx4N2VceGRkXHg3ZVx4NDNceDNjXHhiOFx4NDAiLAorCQkua2xlbgk9IDMyLAor CQkubGVuCT0gMTYsCisJfSwKKwl7CisJCS5rZXkJPSAiXHg5M1x4ZmFceDdlXHhlMlx4MGVceDY3 XHhjNFx4MzkiCisJCQkgICJceGU3XHhjYVx4NDdceDk1XHg2OFx4OWRceDVlXHg1YSIKKwkJCSAg Ilx4N2NceDI2XHgxOVx4YWJceGM2XHhjYVx4NmFceDRjIgorCQkJICAiXHg0NVx4YTZceDk2XHg0 Mlx4YWVceDZjXHhmZlx4ZTciLAorCQkuaXYJPSAiXHhlYVx4ODJceDQ3XHg5NVx4M2JceDIyXHhh MVx4M2EiCisJCQkgICJceDZhXHhjYVx4MjRceDRjXHg1MFx4N2VceDIzXHhjZCIKKwkJCSAgIlx4 MGVceDUwXHhlNVx4NDFceGI2XHg2NVx4MjlceGQ4IgorCQkJICAiXHgzMFx4MjNceDAwXHhkMlx4 NTRceGE3XHhkNlx4NTYiLAorCQkucHRleHQJPSAiXHhkYlx4MWZceDFmXHhlY1x4YWRceDgzXHg2 ZVx4NWQiCisJCQkgICJceDE5XHhhNVx4ZjZceDNiXHhiNFx4OTNceDVhXHg1NyIKKwkJCSAgIlx4 NmYiLAorCQkuY3RleHQJPSAiXHhmMVx4NDZceDZlXHg5ZFx4YjNceDAxXHhmMFx4NmIiCisJCQkg ICJceGMyXHhhY1x4NTdceDg4XHg0OFx4NmRceDQwXHg3MiIKKwkJCSAgIlx4NjgiLAorCQkua2xl bgk9IDMyLAorCQkubGVuCT0gMTcsCisJfSwKKwl7CisJCS5rZXkJPSAiXHgzNlx4MmJceDU3XHg5 N1x4ZjhceDVkXHhjZFx4OTkiCisJCQkgICJceDVmXHgxYVx4NWFceDQ0XHgxZFx4OTJceDBmXHgy NyIKKwkJCSAgIlx4Y2NceDE2XHhkN1x4MmJceDg1XHg2M1x4OTlceGQzIgorCQkJICAiXHhiYVx4 OTZceGExXHhkYlx4ZDJceDYwXHg2OFx4ZGEiLAorCQkuaXYJPSAiXHhlZlx4NThceDY5XHhiMVx4 MmNceDVlXHg5YVx4NDciCisJCQkgICJceDI0XHhjMVx4YjFceDY5XHhlMVx4MTJceDkzXHg4ZiIK KwkJCSAgIlx4NDNceDNkXHg2ZFx4MDBceGRiXHg1ZVx4ZDhceGQ5IgorCQkJICAiXHgxMlx4OWFc eGZlXHhkOVx4ZmZceDJkXHhhYVx4YzQiLAorCQkucHRleHQJPSAiXHg1ZVx4YThceDY4XHgxOVx4 ODVceDk4XHgxMlx4MjMiCisJCQkgICJceDI2XHgwYVx4Y2NceGRiXHgwYVx4MDRceGI5XHhkZiIK KwkJCSAgIlx4NGRceGIzXHg0OFx4N2JceGIwXHhlM1x4YzhceDE5IgorCQkJICAiXHg0M1x4NWFc eDQ2XHgwNlx4OTRceDJkXHhmMiIsCisJCS5jdGV4dAk9ICJceGRiXHhmZFx4YzhceDAzXHhkMFx4 ZWNceGMxXHhmZSIKKwkJCSAgIlx4YmRceDY0XHgzN1x4YjhceDgyXHg0M1x4NjJceDRlIgorCQkJ ICAiXHg3ZVx4NTRceGEzXHhlMlx4MjRceGE3XHgyN1x4ZTgiCisJCQkgICJceGE0XHhkNVx4YjNc eDZjXHhiMlx4MjZceGI0IiwKKwkJLmtsZW4JPSAzMiwKKwkJLmxlbgk9IDMxLAorCX0sCisJewor CQkua2V5CT0gIlx4MDNceDY1XHgwM1x4NmVceDRkXHhlNlx4ZThceDRlIgorCQkJICAiXHg4Ylx4 YmVceDIyXHgxOVx4NDhceDMxXHhlZVx4ZDkiCisJCQkgICJceGEwXHg5MVx4MjFceGJlXHg2Mlx4 ODlceGRlXHg3OCIKKwkJCSAgIlx4ZDlceGIwXHgzNlx4YTNceDNjXHhjZVx4NDNceGQ1IiwKKwkJ Lml2CT0gIlx4YTlceGMzXHg0Ylx4ZTdceDBmXHhmY1x4NmRceGJmIgorCQkJICAiXHg1Nlx4Mjdc eDIxXHgxY1x4ZmNceGQ2XHgwNFx4MTAiCisJCQkgICJceDVmXHg0M1x4ZTJceDMwXHgzNVx4Mjlc eDZjXHgxMCIKKwkJCSAgIlx4OTBceGYxXHhiZlx4NjFceGVkXHgwZlx4OGFceDkxIiwKKwkJLnB0 ZXh0CT0gIlx4MDdceGFhXHgwMlx4MjZceGI0XHg5OFx4MTFceDVlIgorCQkJICAiXHgzM1x4NDFc eDIxXHg1MVx4NTFceDYzXHgyY1x4NzIiCisJCQkgICJceDAwXHhhYlx4MzJceGE3XHgxY1x4Yzhc eDNjXHg5YyIKKwkJCSAgIlx4MjVceDBlXHg4Ylx4OWFceGRmXHg4NVx4ZWRceDJkIgorCQkJICAi XHhmNFx4ZjJceGJjXHg1NVx4Y2FceDkyXHg2ZFx4MjIiCisJCQkgICJceGZkXHgyMlx4M2JceDQy XHg0Y1x4MGJceDc0XHhlYyIsCisJCS5jdGV4dAk9ICJceDdiXHhiMVx4NDNceDZkXHhkOFx4NzJc eDZjXHhmNiIKKwkJCSAgIlx4NjdceDZhXHgwMFx4YzRceGYxXHhmMFx4ZjVceGE0IgorCQkJICAi XHhmY1x4NjBceDkxXHhhYlx4NDZceDBiXHgxNVx4ZmMiCisJCQkgICJceGQ3XHhjMVx4MjhceDE1 XHhhMVx4ZmNceGY3XHg2OCIKKwkJCSAgIlx4OGVceGNjXHgyN1x4NjJceDAwXHg2NFx4NTZceDcy IgorCQkJICAiXHhhNlx4MTdceGQ3XHgzZlx4NjdceDgwXHgxMFx4NTgiLAorCQkua2xlbgk9IDMy LAorCQkubGVuCT0gNDgsCisJfSwKKwl7CisJCS5rZXkJPSAiXHhhNVx4MjhceDI0XHgzNFx4MWFc eDNjXHhkOFx4ZjciCisJCQkgICJceDA1XHg5MVx4OGZceGVlXHg4NVx4MWZceDM1XHg3ZiIKKwkJ CSAgIlx4ODBceDNkXHhmY1x4OWJceDk0XHhmNlx4ZmNceDllIgorCQkJICAiXHgxOVx4MDlceDAw XHhhOVx4MDRceDMxXHg0Zlx4MTEiLAorCQkuaXYJPSAiXHhhMVx4YmFceDQ5XHg5NVx4ZmZceDM0 XHg2ZFx4YjgiCisJCQkgICJceGNkXHg4N1x4NWRceDVlXHhmZFx4ZWFceDg1XHhkYiIKKwkJCSAg Ilx4OGFceDdiXHg1ZVx4YjJceDVkXHg1N1x4ZGRceDYyIgorCQkJICAiXHhhY1x4YTlceDhjXHg0 MVx4NDJceDk0XHg3NVx4YjciLAorCQkucHRleHQJPSAiXHg2OVx4YjRceGU4XHg4Y1x4MzdceGU4 XHg2N1x4ODIiCisJCQkgICJceGYxXHhlY1x4NWRceDA0XHhlNVx4MTRceDkxXHgxMyIKKwkJCSAg Ilx4ZGZceGYyXHg4N1x4MWJceDY5XHg4MVx4MWRceDcxIgorCQkJICAiXHg3MFx4OWVceDljXHgz Ylx4ZGVceDQ5XHg3MFx4MTEiCisJCQkgICJceGEwXHhhM1x4ZGJceDBkXHg1NFx4NGZceDY2XHg2 OSIKKwkJCSAgIlx4ZDdceGRiXHg4MFx4YTdceDcwXHg5Mlx4NjhceGNlIgorCQkJICAiXHg4MVx4 MDRceDJjXHhjNlx4YWJceGFlXHhlNVx4NjAiCisJCQkgICJceDE1XHhlOVx4NmZceGVmXHhhYVx4 OGZceGE3XHhhNyIKKwkJCSAgIlx4NjNceDhmXHhmMlx4ZjBceDc3XHhmMVx4YThceGVhIgorCQkJ ICAiXHhlMVx4YjdceDFmXHg5ZVx4YWJceDllXHg0Ylx4M2YiCisJCQkgICJceDA3XHg4N1x4NWJc eDZmXHhjZFx4YThceGFmXHhiOSIKKwkJCSAgIlx4ZmFceDcwXHgwYlx4NTJceGI4XHhhOFx4YTdc eDllIgorCQkJICAiXHgwN1x4NWZceGE2XHgwZVx4YjNceDliXHg3OVx4MTMiCisJCQkgICJceDc5 XHhjM1x4M2VceDhkXHgxY1x4MmNceDY4XHhjOCIKKwkJCSAgIlx4NTFceDFkXHgzY1x4N2JceDdk XHg3OVx4NzdceDJhIgorCQkJICAiXHg1Nlx4NjVceGM1XHg1NFx4MjNceDI4XHhiMFx4MDMiLAor CQkuY3RleHQJPSAiXHhlYlx4ZjlceDk4XHg4Nlx4M2NceDQwXHg5Zlx4MTYiCisJCQkgICJceDg0 XHgwMVx4ZjlceDA2XHgwZlx4ZWJceDNjXHhhOSIKKwkJCSAgIlx4NGNceGE0XHg4ZVx4NWRceGMz XHg4ZFx4ZTVceGQzIgorCQkJICAiXHhhZVx4YTZceGU2XHhjY1x4ZDZceDJkXHgzN1x4NGYiCisJ CQkgICJceDk5XHhjOFx4YTNceDIxXHg0Nlx4YjhceDY5XHhmMiIKKwkJCSAgIlx4ZTNceDE0XHg4 OVx4ZDdceGI5XHhmNVx4OWVceDRlIgorCQkJICAiXHgwN1x4OTNceDZmXHg3OFx4OGVceDZiXHhl YVx4OGYiCisJCQkgICJceGZiXHg0M1x4YjhceDNlXHg5Ylx4NGNceDFkXHg3ZSIKKwkJCSAgIlx4 MjBceDlhXHhjNVx4ODdceGVlXHhhZlx4ZjZceGY5IgorCQkJICAiXHg0Nlx4YzVceDE4XHg4YVx4 ZThceDY5XHhlN1x4OTYiCisJCQkgICJceDUyXHg1NVx4NWZceDAwXHgxZVx4MWFceGRjXHhjYyIK KwkJCSAgIlx4MTNceGE1XHhlZVx4ZmZceDRiXHgyN1x4Y2FceGRjIgorCQkJICAiXHgxMFx4YTZc eDQ4XHg3Nlx4OThceDQzXHg5NFx4YTMiCisJCQkgICJceGM3XHhlMlx4YzlceDY1XHg5Ylx4MDhc eDE0XHgyNiIKKwkJCSAgIlx4MWRceDY4XHhmYlx4MTVceDBhXHgzM1x4NDlceDg0IgorCQkJICAi XHg4NFx4MzNceDVhXHgxYlx4MjRceDQ2XHgzMVx4OTIiLAorCQkua2xlbgk9IDMyLAorCQkubGVu CT0gMTI4LAorCX0sCisJeworCQkua2V5CT0gIlx4MzZceDQ1XHgxMVx4YTJceDk4XHg1Zlx4OTZc eDdjIgorCQkJICAiXHhjNlx4YjRceDk0XHgzMVx4MGFceDY3XHgwOVx4MzIiCisJCQkgICJceDZj XHg2Zlx4NmZceDAwXHhmMFx4MTdceGNiXHhhYyIKKwkJCSAgIlx4YTVceGE5XHg0N1x4OWVceDJl XHg4NVx4MmZceGZhIiwKKwkJLml2CT0gIlx4MjhceDg4XHhhYVx4OWJceDU5XHgzYlx4MWVceDk3 IgorCQkJICAiXHg4Mlx4ZTVceDVjXHg5ZVx4NmRceDE0XHgxMVx4MTkiCisJCQkgICJceDZlXHgz OFx4OGZceGQ1XHg0MFx4MmJceGNhXHhmOSIKKwkJCSAgIlx4N2JceDRjXHhlNFx4YTNceGQwXHhk Mlx4OGFceDEzIiwKKwkJLnB0ZXh0CT0gIlx4OTVceGQyXHhmN1x4NzFceDFiXHhjYVx4YTVceDg2 IgorCQkJICAiXHhkOVx4NDhceDAxXHg5M1x4MmZceDc5XHg1NVx4MjkiCisJCQkgICJceDcxXHgx M1x4MTVceDBlXHhlNlx4MTJceGJjXHg0ZCIKKwkJCSAgIlx4OGFceDMxXHhlM1x4NDBceDJhXHhj Nlx4NWVceDBkIgorCQkJICAiXHg2OFx4YmJceDRhXHg2Mlx4OGRceGM3XHg0NVx4NzciCisJCQkg ICJceGQyXHhiOFx4YzdceDFkXHhmMVx4ZDJceDVkXHg5NyIKKwkJCSAgIlx4Y2ZceGFjXHg1Mlx4 ZTVceDMyXHg3N1x4YjZceGRhIgorCQkJICAiXHgzMFx4ODVceGNmXHgyYlx4OThceGU5XHhhYVx4 MzQiCisJCQkgICJceDYyXHhiNVx4MjNceDllXHhiN1x4YTZceGQ0XHhlMCIKKwkJCSAgIlx4YjRc eDU4XHgxOFx4OGNceDRkXHhkZVx4NGRceDAxIgorCQkJICAiXHg4M1x4ODlceDI0XHhjYVx4ZmJc eDExXHhkNFx4ODIiCisJCQkgICJceDMwXHg3YVx4ODFceDM1XHhhMFx4YjRceGQ0XHhiNiIKKwkJ CSAgIlx4ODRceGVhXHg0N1x4OTFceDhjXHgxOVx4ODZceDI1IgorCQkJICAiXHhhNlx4MDZceDhk XHg3OFx4ZTZceGVkXHg4N1x4ZWIiCisJCQkgICJceGRhXHhlYVx4NzNceDdjXHhiZlx4NjZceGI4 XHg3MiIKKwkJCSAgIlx4ZTNceDBhXHhiOFx4MGNceGNiXHgxYVx4NzNceGYxIgorCQkJICAiXHhh N1x4Y2FceDBhXHhkZVx4NTdceDJiXHhiZFx4MmIiCisJCQkgICJceGViXHg4Ylx4MjRceDM4XHgy Mlx4ZDNceDBlXHgxZiIKKwkJCSAgIlx4MTdceGEwXHg4NFx4OThceDMxXHg3N1x4ZmRceDM0Igor CQkJICAiXHg2YVx4NGVceDNkXHg4NFx4NGNceDBlXHhmYlx4ZWQiCisJCQkgICJceGM4XHgyYVx4 NTFceGZhXHhkOFx4NzNceDIxXHg4YSIKKwkJCSAgIlx4ZGJceGI1XHhmZVx4MWZceGVlXHhjNFx4 ZThceDY1IgorCQkJICAiXHg1NFx4ODRceGRkXHg5Nlx4NmRceGZkXHhkM1x4MzEiCisJCQkgICJc eDc3XHgzNlx4NTJceDZiXHg4MFx4NGZceDllXHhiNCIKKwkJCSAgIlx4YTJceDU1XHhiZlx4NjZc eDQxXHg0OVx4NGVceDg3IgorCQkJICAiXHhhN1x4MGNceGNhXHhlN1x4YTVceGM1XHhmNlx4NmYi CisJCQkgICJceDI3XHg1Nlx4ZTJceDQ4XHgyMlx4ZGRceDVmXHg1OSIKKwkJCSAgIlx4M2NceGYx XHg5Zlx4ODNceGU1XHgyZFx4ZmJceDcxIgorCQkJICAiXHhhZFx4ZDFceGFlXHgxYlx4MjBceDVj XHg0N1x4YjciCisJCQkgICJceDNiXHhkM1x4MTRceGNlXHg4MVx4NDJceGIxXHgwYSIKKwkJCSAg Ilx4ZjBceDQ5XHhmYVx4YzJceGU3XHg4Nlx4YmZceGNkIgorCQkJICAiXHhiMFx4OTVceDlmXHg4 Zlx4NzlceDQxXHg1NCIsCisJCS5jdGV4dAk9ICJceGY2XHg1N1x4NTFceGM0XHgyNVx4NjFceDJk XHhmYSIKKwkJCSAgIlx4ZDZceGQ5XHgzZlx4OWFceDgxXHg1MVx4ZGRceDhlIgorCQkJICAiXHgz ZFx4ZTdceGFhXHgyZFx4YjFceGRhXHhjOFx4YTYiCisJCQkgICJceDlkXHhhYVx4M2NceGFiXHg2 Mlx4ZjJceDgwXHhjMyIKKwkJCSAgIlx4MmNceGU3XHg1OFx4NzJceDFkXHg0NFx4YzVceDI4Igor CQkJICAiXHg3Zlx4YjRceGY5XHhiY1x4OWNceGIyXHhhYlx4OGUiCisJCQkgICJceGZhXHhkMVx4 NGRceDcyXHhkOVx4NzlceGY1XHhhMCIKKwkJCSAgIlx4MjRceDNlXHg5MFx4MjVceDMxXHgxNFx4 MzhceDQ1IgorCQkJICAiXHg1OVx4YzhceGY2XHhlMlx4YzZceGY2XHhjMVx4YTciCisJCQkgICJc eGIyXHhmOFx4YTdceGE5XHgyYlx4NmZceDEyXHgzYSIKKwkJCSAgIlx4YjBceDgxXHhhNFx4MDhc eDU3XHg1OVx4YjFceDU2IgorCQkJICAiXHg0Y1x4OGZceDE4XHg1NVx4MzNceDVmXHhkNlx4NmEi CisJCQkgICJceGM2XHhhMFx4NGJceGQ2XHg2Ylx4NjRceDNlXHg5ZSIKKwkJCSAgIlx4ZmRceDY2 XHgxNlx4ZTJceGRiXHhlYlx4NWZceGIzIgorCQkJICAiXHg1MFx4NTBceDNlXHhkZVx4OGRceDcy XHg3Nlx4MDEiCisJCQkgICJceGJlXHhjY1x4YzlceDUyXHgwOVx4MmRceDhkXHhlNyIKKwkJCSAg Ilx4ZDZceGMzXHg2Nlx4ZGJceDM2XHgwOFx4ZDFceDc3IgorCQkJICAiXHhjOFx4NzNceDQ2XHgy Nlx4MjRceDI5XHhiZlx4NjgiCisJCQkgICJceDJkXHgyYVx4OTlceDQzXHg1Nlx4NTVceGU0XHg5 MyIKKwkJCSAgIlx4YWZceGFlXHg0ZFx4ZTdceDU1XHg0YVx4YzBceDQ1IgorCQkJICAiXHgyNlx4 ZWJceDNiXHgxMlx4OTBceDdjXHhkY1x4ZDEiCisJCQkgICJceGQ1XHg2Zlx4MGFceGQwXHhhOVx4 ZDdceDRiXHg4OSIKKwkJCSAgIlx4MGJceDA3XHhkOFx4ODZceGFkXHhhMVx4YzRceDY5IgorCQkJ ICAiXHgxZlx4NWVceDhiXHhjNFx4OWVceDkxXHg0MVx4MjUiCisJCQkgICJceDU2XHg5OFx4Njlc eDc4XHgzYVx4OWVceGFlXHg5MSIKKwkJCSAgIlx4ZDhceGQ5XHhmYVx4ZmJceGZmXHg4MVx4MjVc eDA5IgorCQkJICAiXHhmY1x4ZWRceDJkXHg4N1x4YmNceDA0XHg2Mlx4OTciCisJCQkgICJceDM1 XHhlMVx4MjZceGMyXHg0Nlx4MWNceGNmXHhkNyIKKwkJCSAgIlx4MTRceGVkXHgwMlx4MDlceGE1 XHhiMlx4YjZceGFhIgorCQkJICAiXHgyN1x4NGVceDYxXHhiM1x4NzFceDZiXHg0N1x4MTYiCisJ CQkgICJceGI3XHhlOFx4ZDRceGFmXHg1Mlx4ZWJceDZhXHg2YiIKKwkJCSAgIlx4ZGJceDRjXHg2 NVx4MjFceDllXHgxY1x4MzYiLAorCQkua2xlbgk9IDMyLAorCQkubGVuCT0gMjU1LAorCX0sCisJ eworCQkua2V5CT0gIlx4ZDNceDgxXHg3Mlx4MThceDIzXHhmZlx4NmZceDRhIgorCQkJICAiXHgy NVx4NzRceDI5XHgwZFx4NTFceDhhXHgwZVx4MTMiCisJCQkgICJceGMxXHg1M1x4NWRceDMwXHg4 ZFx4ZWVceDc1XHgwZCIKKwkJCSAgIlx4MTRceGQ2XHg2OVx4YzlceDE1XHhhOVx4MGNceDYwIiwK KwkJLml2CT0gIlx4NjVceDliXHhkNFx4YThceDdkXHgyOVx4MWRceGY0IgorCQkJICAiXHhjNFx4 ZDZceDliXHg2YVx4MjhceGFiXHg2NFx4ZTIiCisJCQkgICJceDYyXHg4MVx4OTdceGM1XHg4MVx4 YWFceGY5XHg0NCIKKwkJCSAgIlx4YzFceDcyXHg1OVx4ODJceGFmXHgxNlx4YzhceDJjIiwKKwkJ LnB0ZXh0CT0gIlx4YzdceDZiXHg1Mlx4NmFceDEwXHhmMFx4Y2NceDA5IgorCQkJICAiXHhjMVx4 MTJceDFkXHg2ZFx4MjFceGE2XHg3OFx4ZjUiCisJCQkgICJceDA1XHhhM1x4NjlceDYwXHg5MVx4 MzZceDk4XHg1NyIKKwkJCSAgIlx4YmFceDBjXHgxNFx4Y2NceGYzXHgyZFx4NzNceDAzIgorCQkJ ICAiXHhjNlx4YjJceDVmXHhjOFx4MTZceDI3XHgzN1x4NWQiCisJCQkgICJceGQwXHgwYlx4ODdc eGIyXHg1MFx4OTRceDdiXHg1OCIKKwkJCSAgIlx4MDRceGY0XHhlMFx4N2ZceDZlXHg1N1x4OGVc eGM5IgorCQkJICAiXHg0MVx4ODRceGMxXHhiMVx4N2VceDRiXHg5MVx4MTIiCisJCQkgICJceDNh XHg4Ylx4NWRceDUwXHg4Mlx4N2JceGNiXHhkOSIKKwkJCSAgIlx4OWFceGQ5XHg0ZVx4MThceDA2 XHgyM1x4OWVceGQ0IgorCQkJICAiXHhhNVx4MjBceDk4XHhlZlx4YjVceGRhXHhlNVx4YzAiCisJ CQkgICJceDhhXHg2YVx4ODNceDc3XHgxNVx4ODRceDFlXHhhZSIKKwkJCSAgIlx4NzhceDk0XHg5 ZFx4ZGZceGI3XHhkMVx4ZWFceDY3IgorCQkJICAiXHhhYVx4YjBceDE0XHgxNVx4ZmFceDY3XHgy MVx4ODQiCisJCQkgICJceGQzXHg0MVx4MmFceGNlXHhiYVx4NGJceDRhXHhlOCIKKwkJCSAgIlx4 OTVceDYyXHhhOVx4NTVceGYwXHg4MFx4YWRceGJkIgorCQkJICAiXHhhYlx4YWZceGRkXHg0Zlx4 YTVceDdjXHgxM1x4MzYiCisJCQkgICJceGVkXHg1ZVx4NGZceDcyXHhhZFx4NGJceGYxXHhkMCIK KwkJCSAgIlx4ODhceDRlXHhlY1x4MmNceDg4XHgxMFx4NWVceGVhIgorCQkJICAiXHgxMlx4YzBc eDE2XHgwMVx4MjlceGEzXHhhMFx4NTUiCisJCQkgICJceGFhXHg2OFx4ZjNceGU5XHg5ZFx4M2Jc eDBkXHgzYiIKKwkJCSAgIlx4NmRceGVjXHhmOFx4YTBceDJkXHhmMFx4OTBceDhkIgorCQkJICAi XHgxY1x4ZTJceDg4XHhkNFx4MjRceDcxXHhmOVx4YjMiCisJCQkgICJceGMxXHg5Zlx4YzVceGQ2 XHg3Nlx4NzBceGM1XHgyZSIKKwkJCSAgIlx4OWNceGFjXHhkYlx4OTBceGJkXHg4M1x4NzJceGJh IgorCQkJICAiXHg2ZVx4YjVceGE1XHg1M1x4ODNceGE5XHhhNVx4YmYiCisJCQkgICJceDdkXHgw Nlx4MGVceDNjXHgyYVx4ZDJceDA0XHhiNSIKKwkJCSAgIlx4MWVceDE5XHgzOFx4MDlceDE2XHhk Mlx4ODJceDFmIgorCQkJICAiXHg3NVx4MThceDU2XHhiOFx4OTZceDBiXHhhNlx4ZjkiCisJCQkg ICJceGNmXHg2Mlx4ZDlceDMyXHg1ZFx4YTlceGQ3XHgxZCIKKwkJCSAgIlx4ZWNceGU0XHhkZlx4 MWJceGJlXHhmMVx4MzZceGVlIgorCQkJICAiXHhlM1x4N2JceGI1XHgyZlx4ZWVceGY4XHg1M1x4 M2QiCisJCQkgICJceDZhXHhiN1x4NzBceGE5XHhmY1x4OWNceDU3XHgyNSIKKwkJCSAgIlx4ZjJc eDg5XHgxMFx4ZDNceGI4XHhhOFx4OGNceDMwIgorCQkJICAiXHhhZVx4MjNceDRmXHgwZVx4MTNc eDY2XHg0Zlx4ZTEiCisJCQkgICJceGI2XHhjMFx4ZTRceGY4XHhlZlx4OTNceGJkXHg2ZSIKKwkJ CSAgIlx4MTVceDg1XHg2Ylx4ZTNceDYwXHg4MVx4MWRceDY4IgorCQkJICAiXHhkN1x4MzFceDg3 XHg4OVx4MDlceGFiXHhkNVx4OTYiCisJCQkgICJceDFkXHhmM1x4NmRceDY3XHg4MFx4Y2FceDA3 XHgzMSIKKwkJCSAgIlx4NWRceGE3XHhlNFx4ZmJceDNlXHhmMlx4OWJceDMzIgorCQkJICAiXHg1 Mlx4MThceGM4XHgzMFx4ZmVceDJkXHhjYVx4MWUiCisJCQkgICJceDc5XHg5Mlx4N2FceDYwXHg1 Y1x4YjZceDU4XHg4NyIKKwkJCSAgIlx4YTRceDM2XHhhMlx4NjdceDkyXHg4Ylx4YTRceGI3Igor CQkJICAiXHhmMVx4ODZceGRmXHhkY1x4YzBceDdlXHg4Zlx4NjMiCisJCQkgICJceGQyXHhhMlx4 ZGNceDc4XHhlYlx4NGZceGQ4XHg5NiIKKwkJCSAgIlx4NDdceGNhXHhiOFx4OTFceGY5XHhmN1x4 OTRceDIxIgorCQkJICAiXHg1Zlx4OWFceDlmXHg1Ylx4YjhceDQwXHg0MVx4NGIiCisJCQkgICJc eDY2XHg2OVx4NmFceDcyXHhkMFx4Y2JceDcwXHhiNyIKKwkJCSAgIlx4OTNceGI1XHgzN1x4OTZc eDA1XHgzN1x4NGZceGU1IgorCQkJICAiXHg4Y1x4YTdceDVhXHg0ZVx4OGJceGI3XHg4NFx4ZWEi CisJCQkgICJceGM3XHhmY1x4MTlceDZlXHgxZlx4NWFceGExXHhhYyIKKwkJCSAgIlx4MThceDdk XHg1Mlx4M2JceGIzXHgzNFx4NjJceDk5IgorCQkJICAiXHhlNFx4OWVceDMxXHgwNFx4M2ZceGMw XHg4ZFx4ODQiCisJCQkgICJceDE3XHg3Y1x4MjVceDQ4XHg1Mlx4NjdceDExXHgyNyIKKwkJCSAg Ilx4NjdceGJiXHg1YVx4ODVceGNhXHg1Nlx4YjJceDVjIgorCQkJICAiXHhlNlx4ZWNceGQ1XHg5 Nlx4M2RceDE1XHhmY1x4ZmIiCisJCQkgICJceDIyXHgyNVx4ZjRceDEzXHhlNVx4OTNceDRiXHg5 YSIKKwkJCSAgIlx4NzdceGYxXHg1Mlx4MThceGZhXHgxNlx4NWVceDQ5IgorCQkJICAiXHgwM1x4 NDVceGE4XHgwOFx4ZmFceGIzXHg0MVx4OTIiCisJCQkgICJceDc5XHg1MFx4MzNceGNhXHhkMFx4 ZDdceDQyXHg1NSIKKwkJCSAgIlx4YzNceDlhXHgwY1x4NGVceGQ5XHhhNFx4M2NceDg2IgorCQkJ ICAiXHg4MFx4OWZceDUzXHhkMVx4YTRceDJlXHhkMVx4YmMiCisJCQkgICJceGYxXHg1NFx4NmVc eDkzXHhhNFx4NjVceDk5XHg4ZSIKKwkJCSAgIlx4ZGZceDI5XHhjMFx4NjRceDYzXHgwN1x4YmJc eGVhIiwKKwkJLmN0ZXh0CT0gIlx4OWZceDcyXHg4N1x4YzdceDE3XHhmYlx4MjBceDE1IgorCQkJ ICAiXHg2NVx4YjNceDU1XHhhOFx4MWNceDhlXHg1Mlx4MzIiCisJCQkgICJceGIxXHg4Mlx4OGRc eGJmXHhiNVx4OWZceDEwXHgwYSIKKwkJCSAgIlx4ZThceDBjXHg3MFx4NjJceGVmXHg4OVx4YjZc eDFmIgorCQkJICAiXHg3M1x4Y2NceGU0XHhjY1x4N2FceDNhXHg3NVx4NGEiCisJCQkgICJceDI2 XHhlN1x4ZjVceGQ3XHg3Ylx4MTdceDM5XHgyZCIKKwkJCSAgIlx4ZDJceDI3XHg2ZVx4ZjlceDJm XHg5ZVx4ZTJceGY2IgorCQkJICAiXHhmYVx4MTZceGMyXHhmMlx4NDlceDI2XHhhN1x4NWIiCisJ CQkgICJceGU3XHhjYVx4MjVceDBlXHg0NVx4YTBceDM0XHhjMiIKKwkJCSAgIlx4OWFceDM3XHg3 OVx4N2VceDdjXHg1OFx4MThceDk0IgorCQkJICAiXHgxMFx4YThceDdjXHg0OFx4YTlceGQ3XHg2 M1x4ODkiCisJCQkgICJceDllXHg2MVx4NGRceDI2XHgzNFx4ZDlceGYwXHhiMSIKKwkJCSAgIlx4 MmRceDE3XHgyY1x4NmZceDdjXHgzNVx4MGVceGJlIgorCQkJICAiXHg3N1x4NzFceDdjXHgxN1x4 NWJceGFiXHg3MFx4ZGIiCisJCQkgICJceDJmXHg1NFx4MGZceGE5XHhjOFx4ZjRceGY1XHhhYiIK KwkJCSAgIlx4NTJceDA0XHgzYVx4YjhceDAzXHhhN1x4ZmRceDU3IgorCQkJICAiXHg0NVx4NWVc eGJjXHg3N1x4ZTFceGVlXHg3OVx4OGMiCisJCQkgICJceDU4XHg3Ylx4MWZceGY3XHg3NVx4ZGVc eDY4XHgxNyIKKwkJCSAgIlx4OThceDg1XHg4YVx4MThceDVjXHhkMlx4MzlceDc4IgorCQkJICAi XHg3YVx4NmZceDI2XHg2ZVx4ZTFceDEzXHg5MVx4ZGQiCisJCQkgICJceGRmXHgwZVx4NmVceDY3 XHhjY1x4NTFceDUzXHhkOCIKKwkJCSAgIlx4MTdceDVlXHhjZVx4YTdceGU0XHhhZlx4ZmFceGYz IgorCQkJICAiXHg0Zlx4OWZceDAxXHg5Ylx4MDRceGU3XHhmY1x4ZjkiCisJCQkgICJceDZhXHhk Y1x4MWRceDBjXHg5YVx4YWFceDNhXHg3YSIKKwkJCSAgIlx4NzNceDAzXHhkZlx4YmZceDNiXHg4 Mlx4YmVceGIwIgorCQkJICAiXHhiNFx4YTRceGNmXHgwN1x4ZDdceGRlXHg3MVx4MjUiCisJCQkg ICJceGM1XHgxMFx4ZWVceDBhXHgxNVx4OTZceDhiXHg0ZiIKKwkJCSAgIlx4ZmVceGI4XHgyOFx4 YmRceDRhXHhjZFx4ZWJceDlmIgorCQkJICAiXHg1ZFx4MDBceGMxXHhlZVx4ZThceDE2XHg0NFx4 ZWMiCisJCQkgICJceGU5XHg3Ylx4ZDZceDg1XHgxN1x4MjlceGNmXHg1OCIKKwkJCSAgIlx4MjBc eGFiXHhmN1x4Y2VceDZiXHhlN1x4NzFceDdkIgorCQkJICAiXHg0Zlx4YThceGIwXHhlOVx4N2Rc eDcwXHhkNlx4MGIiCisJCQkgICJceDJlXHgyMFx4YjFceDFhXHg2M1x4MzdceGFhXHgyYyIKKwkJ CSAgIlx4OTRceGVlXHhkNVx4ZjZceDU4XHgyYVx4ZjRceDdhIgorCQkJICAiXHg0Y1x4YmFceGY1 XHhlOVx4M2NceDZmXHg5NVx4MTMiCisJCQkgICJceDVmXHg5Nlx4ODFceDViXHhiNVx4NjJceGYy XHhkNyIKKwkJCSAgIlx4OGRceGJlXHhhMVx4MzFceDUxXHhlNlx4ZmVceGM5IgorCQkJICAiXHgw N1x4N2RceDBmXHgwMFx4M2FceDY2XHg4Y1x4NGIiCisJCQkgICJceDk0XHhhYVx4ZTVceDU2XHhk ZVx4Y2RceDc0XHhhNyIKKwkJCSAgIlx4NDhceDY3XHg2Zlx4ZWRceGM5XHg2YVx4ZWZceGFmIgor CQkJICAiXHg5YVx4YjdceGFlXHg2MFx4ZmFceGMwXHgzN1x4MzkiCisJCQkgICJceGE1XHgyNVx4 ZTVceDIyXHhlYVx4ODJceDU1XHg2OCIKKwkJCSAgIlx4M2VceDMwXHhjM1x4NWFceGI2XHgyOVx4 NzNceDdhIgorCQkJICAiXHhiNlx4ZmJceDM0XHhlZVx4NTFceDdjXHg1NFx4ZTUiCisJCQkgICJc eDAxXHg0ZFx4NzJceDI1XHgzMlx4NGFceGEzXHg2OCIKKwkJCSAgIlx4ODBceDlhXHg4OVx4YzVc eDExXHg2Nlx4NGNceDhjIgorCQkJICAiXHg0NFx4NTBceGJlXHhkN1x4YTBceGVlXHhhNlx4YmIi CisJCQkgICJceDkyXHgwY1x4ZTZceGQ3XHg4M1x4NTFceGIxXHg2OSIKKwkJCSAgIlx4NjNceDQw XHhmM1x4ZjRceDkyXHg4NFx4YzRceDM4IgorCQkJICAiXHgyOVx4ZmJceGI0XHg4NFx4YTBceDE5 XHg3NVx4MTYiCisJCQkgICJceDYwXHhiZlx4MGFceDljXHg4OVx4ZWVceGFkXHhiNCIKKwkJCSAg Ilx4NDNceGY5XHg3MVx4MzlceDQ1XHg3Y1x4MjRceDgzIgorCQkJICAiXHgzMFx4YmJceGVlXHgy OFx4YjBceDg2XHg3Ylx4ZWMiCisJCQkgICJceDkzXHhjMVx4YmZceGI5XHg5N1x4MWJceDk2XHhl ZiIKKwkJCSAgIlx4ZWVceDU4XHgzNVx4NjFceDEyXHgxOVx4ZGFceDI1IgorCQkJICAiXHg3N1x4 ZTVceDgwXHgxYVx4MzFceDI3XHg5Ylx4ZTQiCisJCQkgICJceGRhXHg4Ylx4N2VceDUxXHg0ZFx4 Y2JceDAxXHgxOSIKKwkJCSAgIlx4NGZceGRjXHg5Mlx4MWFceDE3XHhkNVx4NmJceGY0IgorCQkJ ICAiXHg1MFx4ZTNceDA2XHhlNFx4NzZceDlmXHg2NVx4MDAiCisJCQkgICJceGJkXHg3YVx4ZTJc eDY0XHgyNlx4ZjJceGU0XHg3ZSIKKwkJCSAgIlx4NDBceGYyXHg4MFx4YWJceDYyXHhkNVx4ZWZc eDIzIgorCQkJICAiXHg4Ylx4ZmJceDZmXHgyNFx4NmVceDliXHg2Nlx4MGUiCisJCQkgICJceGY0 XHgxY1x4MjRceDFlXHgxZFx4MjZceDk1XHgwOSIKKwkJCSAgIlx4OTRceDNjXHhiMlx4YjZceDAy XHhhN1x4ZDlceDlhIiwKKwkJLmtsZW4JPSAzMiwKKwkJLmxlbgk9IDUxMiwKKwl9LAorCit9Owor CiAjZW5kaWYJLyogX0NSWVBUT19URVNUTUdSX0ggKi8KLS0gCjIuMzYuMC5yYzIuNDc5Lmc4YWYw ZmE5YjhlLWdvb2cKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwpsaW51eC1hcm0ta2VybmVsIG1haWxpbmcgbGlzdApsaW51eC1hcm0ta2VybmVsQGxpc3Rz LmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5m by9saW51eC1hcm0ta2VybmVsCg==