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 lists.gnu.org (lists.gnu.org [209.51.188.17]) (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 3F625C3600C for ; Tue, 8 Apr 2025 13:18:35 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1u28qM-0005My-VQ; Tue, 08 Apr 2025 09:18:24 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1u28pr-0005Gl-Hg for grub-devel@gnu.org; Tue, 08 Apr 2025 09:17:53 -0400 Received: from mail-lf1-x12e.google.com ([2a00:1450:4864:20::12e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1u28po-0007q6-Bg for grub-devel@gnu.org; Tue, 08 Apr 2025 09:17:51 -0400 Received: by mail-lf1-x12e.google.com with SMTP id 2adb3069b0e04-549963b5551so6866441e87.2 for ; Tue, 08 Apr 2025 06:17:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1744118266; x=1744723066; darn=gnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=z2DYe4o+3HCM+6959vs3ba2PTO6Im4n6DPM3E8ka9Ck=; b=fw8QE5W02uoYzHWe9TV6f2h7OpRo3PDWRS37UGx9A1rhADtOEtY8Qm4+tYzimJ+vTb hdNDvqr6ieFtHDZgdwpZhAbwuSZsuNxIyfhNR6+TEk4CWPGFRc9Cvxb/zUj0I124cdPX ++58dz0CmR/UUriI8rIrEO8Skiqf8B3b61hA9aDdG1eWP7pDJOg/OsQ6GQGJ2Meut1zI crsyweUTFpjJXm9UoPnOSoDbr6EhsekrpdDFDJgNC1xP7IBVbKAqGvCqoSMdmrzPJvkF WbzLCB3g6oi1bzrY+5wTJr35wFBdgxmMKKNUc0lSneY+G7eUz0pe0f9xkL0hST5oz8uf xMFQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744118266; x=1744723066; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=z2DYe4o+3HCM+6959vs3ba2PTO6Im4n6DPM3E8ka9Ck=; b=AgPvpaq24RpJ9Lz0fErb2O0dtwJjcP4rlTOsz/lTM/ePtL2fPcIQ4NpX7Cb/WyYe4/ CkfYBHVUYd6rwQb1x7pVTmrcnh/jEYoq7MA3krelwbct03ZJ+r8C+xDFWQqyaMaPQ4ha Q2Ed8Hrn2T583r5sNb2x/hrW1D3CyMIuyIeif/GmkTCwIXKfM0GGrM6KrUnVFYCSD0Ia iA+6MBWzTJa1c4oby4gfNqRCHx0+aRoQ7ZkIWNil7msS/UElq1I99Khz7FNRRP00p0+V 8ewKBaS0tCEClkYV3O2eSG+4AlOEK8YVQe1MwEzyjcyQ1Oo40zryTix+gdOkoh/3shJX HUbA== X-Gm-Message-State: AOJu0YzpjhoXdR67YyPIMiCHccO6cpBTTtn+NwatgRaMGn5aCdrybJlQ RwJa/+JjvdHNGZgEi7ZpKHuLjzx+uT++oZ4x1w8aQcmmsslfZwuRYCkPeLJ3 X-Gm-Gg: ASbGncsnQST60UWLK2aqJX1rI8zLb5wWM10DxvRjmjMjmgSKBm8eNsjRlX6dAIjyWof 362q8KJt0mH/tSgf1V68GmEqrjoM9I8ssUlb/Mtef0+tTQVvVkLBf7l+fOncWb1xJn4DT10EOsD DRFAsQWiKktcjnGENDl7QiK+JZnUAWNLz+OaR9Ywp17WlUFwr0LT3qTqJluNyPwJH2Mg0lwXTFv EPan8lJnD2tjbzheG5fq85+M2AQboHvn+3rt4bG/vA4NRr8Rj6Qr2PwPb8ARtSWOao/KJlFH8i7 azrOoLzYby1kBUHu1+kAb2CqJeq7L/+NWOgWaDjPo/Qb6kxF0niG9Sm82Ss= X-Google-Smtp-Source: AGHT+IFpyTrhlXogqYsWtIUaYJ/2sWGhYmdRgM6O0KQX0cBgbh31pbxU8splKLHP0Nkbifq/zLJRZw== X-Received: by 2002:a05:6512:12c8:b0:549:4d7d:b61b with SMTP id 2adb3069b0e04-54c29836babmr2786474e87.35.1744118265283; Tue, 08 Apr 2025 06:17:45 -0700 (PDT) Received: from localhost (vds2213055.my-ihor.ru. [94.142.141.192]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-54c1e671b73sm1524140e87.221.2025.04.08.06.17.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 08 Apr 2025 06:17:44 -0700 (PDT) From: Vladimir Serbinenko To: grub-devel@gnu.org Cc: Vladimir Serbinenko Subject: [PATCH v9 05/11] Add DSA and RSA SEXP tests Date: Tue, 8 Apr 2025 16:13:10 +0300 Message-ID: <20250408131720.3294860-6-phcoder@gmail.com> X-Mailer: git-send-email 2.49.0 In-Reply-To: <20250408131720.3294860-1-phcoder@gmail.com> References: <20250408131720.3294860-1-phcoder@gmail.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:1450:4864:20::12e; envelope-from=phcoder@gmail.com; helo=mail-lf1-x12e.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: grub-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: The development of GNU GRUB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: The development of GNU GRUB Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: grub-devel-bounces+grub-devel=archiver.kernel.org@gnu.org Sender: grub-devel-bounces+grub-devel=archiver.kernel.org@gnu.org VGhpcyBhbGxvd3MgdXMgdG8gdGVzdCBwdXJlbHkgdGhlIGludGVncmF0aW9uIG9mIHRoZSBpbXBs ZW1lbnRhdGlvbgpvZiBEU0EgYW5kIFJTQSBmcm9tIGxpYmdjcnlwdCB3aXRob3V0IGNvbmNlcm5p bmcgd2l0aCBhZGRpdGlvbmFsCmNvZGUuCgpTaWduZWQtb2ZmLWJ5OiBWbGFkaW1pciBTZXJiaW5l bmtvIDxwaGNvZGVyQGdtYWlsLmNvbT4KLS0tCiBncnViLWNvcmUvTWFrZWZpbGUuY29yZS5kZWYg ICAgIHwgIDE2ICsrKysKIGdydWItY29yZS90ZXN0cy9kc2Ffc2V4cF90ZXN0LmMgfCAxMjcgKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIGdydWItY29yZS90ZXN0cy9yc2Ffc2V4cF90 ZXN0LmMgfCAxMDEgKysrKysrKysrKysrKysrKysrKysrKysrKwogMyBmaWxlcyBjaGFuZ2VkLCAy NDQgaW5zZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUgMTAwNjQ0IGdydWItY29yZS90ZXN0cy9kc2Ff c2V4cF90ZXN0LmMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBncnViLWNvcmUvdGVzdHMvcnNhX3NleHBf dGVzdC5jCgpkaWZmIC0tZ2l0IGEvZ3J1Yi1jb3JlL01ha2VmaWxlLmNvcmUuZGVmIGIvZ3J1Yi1j b3JlL01ha2VmaWxlLmNvcmUuZGVmCmluZGV4IGMxMzk3ZmNmMC4uNzcwZjZlMGM1IDEwMDY0NAot LS0gYS9ncnViLWNvcmUvTWFrZWZpbGUuY29yZS5kZWYKKysrIGIvZ3J1Yi1jb3JlL01ha2VmaWxl LmNvcmUuZGVmCkBAIC0yMTgwLDYgKzIxODAsMjIgQEAgbW9kdWxlID0gewogICBjb21tb24gPSB0 ZXN0cy9zZXRqbXBfdGVzdC5jOwogfTsKIAorbW9kdWxlID0geworICBuYW1lID0gZHNhX3NleHBf dGVzdDsKKyAgY29tbW9uID0gdGVzdHMvZHNhX3NleHBfdGVzdC5jOworCisgIGNmbGFncyA9ICck KENGTEFHU19HQ1JZKSAtV25vLXJlZHVuZGFudC1kZWNscyAtV25vLXNpZ24tY29tcGFyZSc7Cisg IGNwcGZsYWdzID0gJyQoQ1BQRkxBR1NfR0NSWSknOworfTsKKworbW9kdWxlID0geworICBuYW1l ID0gcnNhX3NleHBfdGVzdDsKKyAgY29tbW9uID0gdGVzdHMvcnNhX3NleHBfdGVzdC5jOworCisg IGNmbGFncyA9ICckKENGTEFHU19HQ1JZKSAtV25vLXJlZHVuZGFudC1kZWNscyAtV25vLXNpZ24t Y29tcGFyZSc7CisgIGNwcGZsYWdzID0gJyQoQ1BQRkxBR1NfR0NSWSknOworfTsKKwogbW9kdWxl ID0gewogICBuYW1lID0gc2lnbmF0dXJlX3Rlc3Q7CiAgIGNvbW1vbiA9IHRlc3RzL3NpZ25hdHVy ZV90ZXN0LmM7CmRpZmYgLS1naXQgYS9ncnViLWNvcmUvdGVzdHMvZHNhX3NleHBfdGVzdC5jIGIv Z3J1Yi1jb3JlL3Rlc3RzL2RzYV9zZXhwX3Rlc3QuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl eCAwMDAwMDAwMDAuLjMxNjAwZDkwMQotLS0gL2Rldi9udWxsCisrKyBiL2dydWItY29yZS90ZXN0 cy9kc2Ffc2V4cF90ZXN0LmMKQEAgLTAsMCArMSwxMjcgQEAKKy8qCisgKiAgR1JVQiAgLS0gIEdS YW5kIFVuaWZpZWQgQm9vdGxvYWRlcgorICogIENvcHlyaWdodCAoQykgMjAyNSBGcmVlIFNvZnR3 YXJlIEZvdW5kYXRpb24sIEluYy4KKyAqCisgKiAgR1JVQiBpcyBmcmVlIHNvZnR3YXJlOiB5b3Ug Y2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiAgaXQgdW5kZXIgdGhlIHRlcm1z IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqICB0 aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNl bnNlLCBvcgorICogIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICog IEdSVUIgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwK KyAqICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3 YXJyYW50eSBvZgorICogIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM QVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAqICBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3Ig bW9yZSBkZXRhaWxzLgorICoKKyAqICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9m IHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogIGFsb25nIHdpdGggR1JVQi4gIElm IG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVk ZSA8Z3J1Yi90ZXN0Lmg+CisjaW5jbHVkZSA8Z3J1Yi9jcnlwdG8uaD4KKyNpbmNsdWRlIDxncnVi L2djcnlwdC9nY3J5cHQuaD4KKworR1JVQl9NT0RfTElDRU5TRSAoIkdQTHYzKyIpOworCisvKiBT YW1wbGUgRFNBIHB1YmxpYyBrZXkuICAqLworc3RhdGljIGNoYXIgcHVia2V5X2R1bXBbXSA9IHsK KyAgMHgyOCwgMHgzMSwgMHgzMCwgMHgzYSwgMHg3MCwgMHg3NSwgMHg2MiwgMHg2YywKKyAgMHg2 OSwgMHg2MywgMHgyZCwgMHg2YiwgMHg2NSwgMHg3OSwgMHgyOCwgMHgzMywKKyAgMHgzYSwgMHg2 NCwgMHg3MywgMHg2MSwgMHgyOCwgMHgzMSwgMHgzYSwgMHg3MCwKKyAgMHgzMSwgMHgzMiwgMHgz OSwgMHgzYSwgMHgwMCwgMHhjMCwgMHg1MCwgMHgxNCwKKyAgMHg0YywgMHg5NywgMHgxMCwgMHg2 OSwgMHgwNywgMHhhNywgMHhlOSwgMHgyYiwKKyAgMHhlNSwgMHhjNiwgMHg4OCwgMHhlMSwgMHg2 ZCwgMHhkOCwgMHgzOCwgMHgyOCwKKyAgMHgwOSwgMHg0OSwgMHg1YiwgMHhlOCwgMHhhMywgMHgw NCwgMHhiOCwgMHhjNCwKKyAgMHg2ZSwgMHg5OCwgMHhjMSwgMHhjMiwgMHhiMCwgMHgyYSwgMHhl MCwgMHhlMiwKKyAgMHgxYSwgMHgzMCwgMHhkMiwgMHhkYiwgMHg0NSwgMHgxYSwgMHg4OCwgMHg4 MCwKKyAgMHgyOCwgMHgyNCwgMHhiMCwgMHhiZiwgMHhjMiwgMHhiZCwgMHhlOSwgMHhmNiwKKyAg MHg5ZCwgMHhhMiwgMHgwMSwgMHg5NCwgMHhlNiwgMHg3ZiwgMHhhMCwgMHhiNiwKKyAgMHhlNCwg MHgzOSwgMHhmYywgMHg1NCwgMHhiYSwgMHg5OSwgMHhiNiwgMHhiZSwKKyAgMHgzOSwgMHhlZSwg MHhhNSwgMHhkOSwgMHhhMCwgMHgzNSwgMHgzYywgMHgyZCwKKyAgMHgzZSwgMHg5NiwgMHhjMywg MHg5NiwgMHhhNSwgMHgwZCwgMHgyYiwgMHhiZiwKKyAgMHgzYiwgMHhhMywgMHhlMiwgMHhlOCwg MHg4OSwgMHhlZCwgMHg2MCwgMHhlMCwKKyAgMHg0MywgMHg2MSwgMHhiNiwgMHg3MywgMHhmNiwg MHhhNywgMHhiNCwgMHg1NiwKKyAgMHg3NiwgMHgwNCwgMHhmNywgMHg4YiwgMHhmMSwgMHg4NCwg MHhhYSwgMHgzZSwKKyAgMHhlMCwgMHgwOCwgMHhhZCwgMHhkZCwgMHhjMiwgMHgzNiwgMHhmZCwg MHgzZCwKKyAgMHhkMCwgMHhhZCwgMHhmNCwgMHgzYSwgMHg3ZSwgMHg4MCwgMHg4YywgMHg1MiwK KyAgMHgyYiwgMHgwNCwgMHhhOCwgMHgwMywgMHgyNywgMHgyOSwgMHgyOCwgMHgzMSwKKyAgMHgz YSwgMHg3MSwgMHgzMiwgMHgzMSwgMHgzYSwgMHgwMCwgMHhkNSwgMHgzNCwKKyAgMHhkMiwgMHhj NSwgMHgxYywgMHgyNiwgMHhkZiwgMHhiMCwgMHhiYSwgMHg3OCwKKyAgMHg3NSwgMHhlNSwgMHhl OSwgMHgzNiwgMHg2YiwgMHgwNCwgMHgwMywgMHhlMiwKKyAgMHg1NywgMHgzZiwgMHgyOSwgMHgy OCwgMHgzMSwgMHgzYSwgMHg2NywgMHgzMSwKKyAgMHgzMiwgMHgzOCwgMHgzYSwgMHgzYiwgMHhh MCwgMHhhYywgMHhhMywgMHhhMSwKKyAgMHhkMSwgMHgwNCwgMHgyMywgMHg1ZiwgMHg5ZiwgMHhi YywgMHg2ZCwgMHg5ZSwKKyAgMHg4OCwgMHgyYSwgMHgyOCwgMHhjMSwgMHg0OCwgMHhhZiwgMHhh NSwgMHgxNywKKyAgMHg1OSwgMHgzYSwgMHgxNywgMHgzMywgMHg1NiwgMHhhYSwgMHg4ZCwgMHgy NywKKyAgMHg2NCwgMHhmZSwgMHg4ZSwgMHg4YSwgMHgyZSwgMHhiYSwgMHhmMiwgMHg2NiwKKyAg MHhjYywgMHg2NiwgMHhiZCwgMHhhNCwgMHhmZSwgMHhhOSwgMHgwNywgMHgwZCwKKyAgMHhhZSwg MHg4YywgMHg5ZiwgMHg3MCwgMHhmNywgMHg4NywgMHhhYSwgMHgwMSwKKyAgMHg0NywgMHg2Yiwg MHhmOSwgMHgwZiwgMHgwOSwgMHgxOCwgMHg0MiwgMHg3NiwKKyAgMHhjNCwgMHhhMywgMHhiOSwg MHg1NSwgMHgxMSwgMHg4ZCwgMHhhMywgMHhhNSwKKyAgMHg2OSwgMHgzMCwgMHg5MSwgMHhiNywg MHgwMywgMHhlZiwgMHg3ZiwgMHgxMiwKKyAgMHhlNiwgMHhiOSwgMHg3OCwgMHg3MywgMHhlMCwg MHhjMCwgMHg0ZiwgMHhjNiwKKyAgMHhkOSwgMHg0MywgMHg5OSwgMHg5NSwgMHgwYiwgMHg0ZCwg MHg1OCwgMHhkMywKKyAgMHg2YiwgMHg3NiwgMHhiMCwgMHg2YSwgMHhjZiwgMHg2OCwgMHg2ZCwg MHhmMCwKKyAgMHhkOSwgMHhjMSwgMHg4OCwgMHg0MywgMHg5ZCwgMHhmOSwgMHgwNCwgMHhjYiwK KyAgMHhjOSwgMHg4MiwgMHg2YywgMHhlZSwgMHhkNCwgMHg5YywgMHhiZCwgMHgxYywKKyAgMHg0 ZCwgMHg1NCwgMHgyOSwgMHg4MywgMHhhOSwgMHg1ZSwgMHhhYSwgMHgxMCwKKyAgMHhhNywgMHhj MSwgMHgwNCwgMHgyOSwgMHgyOCwgMHgzMSwgMHgzYSwgMHg3OSwKKyAgMHgzMSwgMHgzMiwgMHgz OSwgMHgzYSwgMHgwMCwgMHg4MiwgMHgzMywgMHhmMSwKKyAgMHg5MSwgMHhlMywgMHhmMiwgMHgx MiwgMHg5MywgMHg1YSwgMHhlZCwgMHgwYywKKyAgMHg5ZCwgMHhlYywgMHg2NywgMHhhYSwgMHhh NywgMHg5NywgMHg3ZiwgMHg5ZiwKKyAgMHg1ZSwgMHhlZiwgMHg2YSwgMHgzZSwgMHhhNCwgMHg3 ZiwgMHg5YiwgMHhlZCwKKyAgMHg2NSwgMHhkNywgMHhiYSwgMHg0MCwgMHg2ZCwgMHhlMSwgMHhk ZSwgMHhjMSwKKyAgMHgxNCwgMHg0YywgMHg5YiwgMHgyOCwgMHg1YywgMHgwMywgMHg4ZSwgMHgx YSwKKyAgMHhkNCwgMHgxYiwgMHg4MCwgMHgxYiwgMHgwNywgMHhkNiwgMHg4NCwgMHgwNCwKKyAg MHg0OSwgMHg2YywgMHgxYiwgMHgwOCwgMHg4NCwgMHgxNSwgMHg1NCwgMHg2MiwKKyAgMHhjYSwg MHhkNSwgMHg3NSwgMHhmZiwgMHhjOCwgMHhiMywgMHg4MSwgMHg3NiwKKyAgMHg4MiwgMHg5MSwg MHgzNSwgMHg4MCwgMHgyMCwgMHg3MywgMHgyYSwgMHgyMSwKKyAgMHhjYSwgMHgyMiwgMHgwNiwg MHhhNywgMHg3MywgMHg5OSwgMHg3NSwgMHg3ZSwKKyAgMHg1ZSwgMHhhNiwgMHgwOSwgMHg1OSwg MHg2NiwgMHgyYywgMHhjZCwgMHhiMSwKKyAgMHg4ZCwgMHgzYiwgMHhjMCwgMHg2OCwgMHhjNSwg MHg0MSwgMHhhMCwgMHg5ZCwKKyAgMHg4MiwgMHgxNSwgMHhjNCwgMHhkZCwgMHg0NywgMHgxYywg MHg1YiwgMHhhOSwKKyAgMHg3NCwgMHgxOCwgMHhhZiwgMHg3MiwgMHg2MywgMHg2YiwgMHgwYSwg MHg0ZSwKKyAgMHg5NSwgMHgwOSwgMHg3YSwgMHhiNSwgMHg0YiwgMHg5OCwgMHg4NSwgMHhiOSwK KyAgMHg2ZCwgMHg5ZCwgMHgzYiwgMHg3MywgMHg4YywgMHgyOSwgMHgyOSwgMHgyOSwKK307CisK Ky8qIFNhbXBsZSBEU0Egc2lnbmF0dXJlIG9mIG1lc3NhZ2UgImhlbGxvIiB3aXRoIHNhbXBsZSBr ZXkuICAqLworc3RhdGljIGNoYXIgc2lnX2R1bXBbXSA9IHsKKyAgMHgyOCwgMHgzNywgMHgzYSwg MHg3MywgMHg2OSwgMHg2NywgMHgyZCwgMHg3NiwKKyAgMHg2MSwgMHg2YywgMHgyOCwgMHgzMywg MHgzYSwgMHg2NCwgMHg3MywgMHg2MSwKKyAgMHgyOCwgMHgzMSwgMHgzYSwgMHg3MiwgMHgzMiwg MHgzMCwgMHgzYSwgMHhiNiwKKyAgMHg2MCwgMHgzNywgMHhlZiwgMHgwMiwgMHg3YywgMHg3Yywg MHg2ZSwgMHg0ZiwKKyAgMHg2NiwgMHg4YywgMHg3YywgMHgyNiwgMHg3NywgMHhkOSwgMHgzMywg MHg5MCwKKyAgMHhiYSwgMHg3YywgMHhmYiwgMHgyOSwgMHgyOCwgMHgzMSwgMHgzYSwgMHg3MywK KyAgMHgzMiwgMHgzMCwgMHgzYSwgMHg4MywgMHhjMCwgMHg4NCwgMHg3MiwgMHhjNiwKKyAgMHgx YywgMHg4NSwgMHg2ZiwgMHg4YiwgMHg5YiwgMHhiMCwgMHgzOCwgMHgzOCwKKyAgMHhiMiwgMHhi NiwgMHhkZiwgMHgxYywgMHg1MiwgMHg5NiwgMHgxYiwgMHgyOSwKKyAgMHgyOSwgMHgyOSwKK307 CisKK2V4dGVybiBnY3J5X3BrX3NwZWNfdCBfZ2NyeV9wdWJrZXlfc3BlY19kc2E7CisKK3N0YXRp YyB2b2lkCitkc2Ffc2V4cF90ZXN0ICh2b2lkKQoreworICBnY3J5X3NleHBfdCBzaWduX3Bhcm1z LCBzaWduX3Bhcm1zX2ludmFsaWQsIHB1YmtleSwgc2lnOworICBpbnQgcmM7CisgIGdydWJfc2l6 ZV90IGVycm9mOworCisgIHJjID0gX2djcnlfc2V4cF9idWlsZCAoJnNpZ25fcGFybXNfaW52YWxp ZCwgJmVycm9mLAorCQkJIihkYXRhICh2YWx1ZSBcImhpXCIpKVxuIik7CisgIGdydWJfdGVzdF9h c3NlcnQgKHJjID09IDAsICJzZXhwIGJ1aWxkIGZhaWxlZCIpOworCisgIHJjID0gX2djcnlfc2V4 cF9idWlsZCAoJnNpZ25fcGFybXMsICZlcnJvZiwKKwkJCSIoZGF0YSAodmFsdWUgXCJoZWxsb1wi KSlcbiIpOworICBncnViX3Rlc3RfYXNzZXJ0IChyYyA9PSAwLCAic2V4cCBidWlsZCBmYWlsZWQi KTsKKyAgcmMgPSBfZ2NyeV9zZXhwX25ldyAoJnB1YmtleSwgcHVia2V5X2R1bXAsIHNpemVvZihw dWJrZXlfZHVtcCksIDApOworICBncnViX3Rlc3RfYXNzZXJ0IChyYyA9PSAwLCAic2V4cCBuZXcg ZmFpbGVkIik7CisgIHJjID0gX2djcnlfc2V4cF9uZXcgKCZzaWcsIHNpZ19kdW1wLCBzaXplb2Yo c2lnX2R1bXApLCAwKTsKKyAgZ3J1Yl90ZXN0X2Fzc2VydCAocmMgPT0gMCwgInNleHAgbmV3IGZh aWxlZCIpOworICByYyA9IF9nY3J5X3B1YmtleV9zcGVjX2RzYS52ZXJpZnkgKHNpZywgc2lnbl9w YXJtcywgcHVia2V5KTsKKyAgZ3J1Yl90ZXN0X2Fzc2VydCAocmMgPT0gMCwgInNpZ25hdHVyZSB2 ZXJpZmljYXRpb24gZmFpbGVkOiAlZCIsIHJjKTsKKyAgcmMgPSBfZ2NyeV9wdWJrZXlfc3BlY19k c2EudmVyaWZ5IChzaWcsIHNpZ25fcGFybXNfaW52YWxpZCwgcHVia2V5KTsKKyAgZ3J1Yl90ZXN0 X2Fzc2VydCAocmMgIT0gMCwgInNpZ25hdHVyZSB2ZXJpZmljYXRpb24gc3VjY2VkZWQgd3Jvbmds eSIpOworfQorCitHUlVCX0ZVTkNUSU9OQUxfVEVTVCAoZHNhX3NleHBfdGVzdCwgZHNhX3NleHBf dGVzdCk7CmRpZmYgLS1naXQgYS9ncnViLWNvcmUvdGVzdHMvcnNhX3NleHBfdGVzdC5jIGIvZ3J1 Yi1jb3JlL3Rlc3RzL3JzYV9zZXhwX3Rlc3QuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw MDAwMDAwMDAuLjZlYmJhODFmNgotLS0gL2Rldi9udWxsCisrKyBiL2dydWItY29yZS90ZXN0cy9y c2Ffc2V4cF90ZXN0LmMKQEAgLTAsMCArMSwxMDEgQEAKKy8qCisgKiAgR1JVQiAgLS0gIEdSYW5k IFVuaWZpZWQgQm9vdGxvYWRlcgorICogIENvcHlyaWdodCAoQykgMjAyNSBGcmVlIFNvZnR3YXJl IEZvdW5kYXRpb24sIEluYy4KKyAqCisgKiAgR1JVQiBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2Fu IHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgKiAgaXQgdW5kZXIgdGhlIHRlcm1zIG9m IHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKyAqICB0aGUg RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNl LCBvcgorICogIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisgKgorICogIEdS VUIgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyAq ICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJy YW50eSBvZgorICogIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIg UFVSUE9TRS4gIFNlZSB0aGUKKyAqICBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9y ZSBkZXRhaWxzLgorICoKKyAqICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRo ZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICogIGFsb25nIHdpdGggR1JVQi4gIElmIG5v dCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKyAqLworCisjaW5jbHVkZSA8 Z3J1Yi90ZXN0Lmg+CisjaW5jbHVkZSA8Z3J1Yi9jcnlwdG8uaD4KKyNpbmNsdWRlIDxncnViL2dj cnlwdC9nY3J5cHQuaD4KKworR1JVQl9NT0RfTElDRU5TRSAoIkdQTHYzKyIpOworCisvKiBTYW1w bGUgUlNBIGtleS4gICovCitzdGF0aWMgY2hhciBwdWJrZXlfZHVtcFtdID0geworICAweDI4LCAw eDMxLCAweDMwLCAweDNhLCAweDcwLCAweDc1LCAweDYyLCAweDZjLAorICAweDY5LCAweDYzLCAw eDJkLCAweDZiLCAweDY1LCAweDc5LCAweDI4LCAweDMzLAorICAweDNhLCAweDcyLCAweDczLCAw eDYxLCAweDI4LCAweDMxLCAweDNhLCAweDZlLAorICAweDMxLCAweDMyLCAweDM5LCAweDNhLCAw eDAwLCAweGUxLCAweDM1LCAweGMxLAorICAweDk3LCAweDkwLCAweGU4LCAweDU0LCAweGE4LCAw eDNiLCAweDk3LCAweDA1LAorICAweGFmLCAweDQ1LCAweGFmLCAweDY3LCAweGJmLCAweGVjLCAw eDA3LCAweGJlLAorICAweDliLCAweDU1LCAweDljLCAweDNmLCAweDQ3LCAweGFlLCAweDI1LCAw eGI2LAorICAweGUzLCAweDIzLCAweDk5LCAweDEwLCAweDVlLCAweDE3LCAweDFhLCAweGRhLAor ICAweDMzLCAweGU2LCAweDczLCAweDBkLCAweDk2LCAweDljLCAweDVjLCAweDI1LAorICAweDEz LCAweDVkLCAweDQ5LCAweGI5LCAweDg2LCAweGMwLCAweGIxLCAweDgwLAorICAweDI5LCAweDIw LCAweGIyLCAweDkxLCAweDcyLCAweDQzLCAweGNjLCAweDJhLAorICAweDY3LCAweGQzLCAweDEx LCAweGU4LCAweDdiLCAweDIxLCAweDc1LCAweGY2LAorICAweDFiLCAweGMwLCAweGIyLCAweDAx LCAweGM4LCAweDM1LCAweGFhLCAweGZiLAorICAweGE3LCAweDI5LCAweGI0LCAweGI5LCAweDk0 LCAweDRlLCAweDUzLCAweDQ5LAorICAweDgyLCAweDc0LCAweGU5LCAweDIzLCAweDY5LCAweGE0 LCAweGY2LCAweGRmLAorICAweDQwLCAweDJhLCAweDczLCAweDAxLCAweGZhLCAweGU3LCAweGY4 LCAweDMyLAorICAweDZiLCAweDU3LCAweGZlLCAweGI5LCAweDdkLCAweDAyLCAweGMyLCAweGZi LAorICAweDdmLCAweDk5LCAweDFmLCAweDZlLCAweDhkLCAweDUzLCAweDAxLCAweDU2LAorICAw eGFmLCAweDQ2LCAweDYyLCAweGIzLCAweGUwLCAweGE4LCAweGE2LCAweDBhLAorICAweDU1LCAw eDJjLCAweDRiLCAweDg1LCAweDViLCAweDI5LCAweDI4LCAweDMxLAorICAweDNhLCAweDY1LCAw eDMzLCAweDNhLCAweDAxLCAweDAwLCAweDAxLCAweDI5LAorICAweDI5LCAweDI5LAorfTsKKwor LyogU2FtcGxlIFJTQSBzaWduYXR1cmUgb2YgbWVzc2FnZSAiaGVsbG8iIHdpdGggc2FtcGxlIGtl eS4gICovCitzdGF0aWMgY2hhciBzaWdfZHVtcFtdID0geworICAweDI4LCAweDM3LCAweDNhLCAw eDczLCAweDY5LCAweDY3LCAweDJkLCAweDc2LAorICAweDYxLCAweDZjLCAweDI4LCAweDMzLCAw eDNhLCAweDcyLCAweDczLCAweDYxLAorICAweDI4LCAweDMxLCAweDNhLCAweDczLCAweDMxLCAw eDMyLCAweDM4LCAweDNhLAorICAweDViLCAweDJkLCAweGViLCAweGE1LCAweDRiLCAweDhiLCAw eGQ5LCAweDkyLAorICAweDY2LCAweDU3LCAweDg5LCAweGQ4LCAweDMxLCAweGMwLCAweDBlLCAw eDUzLAorICAweGY4LCAweDFjLCAweDRmLCAweGM4LCAweDc5LCAweDY3LCAweGI5LCAweDEwLAor ICAweGU1LCAweDYzLCAweDVmLCAweGVmLCAweGIxLCAweDBiLCAweDBlLCAweDdmLAorICAweGVk LCAweDg2LCAweDA2LCAweGE4LCAweDA1LCAweGJmLCAweDZiLCAweGQxLAorICAweDM2LCAweDQx LCAweDA4LCAweDNiLCAweGQwLCAweGJkLCAweGVmLCAweGI3LAorICAweGMyLCAweDY5LCAweGI4 LCAweGI0LCAweDNlLCAweDJjLCAweGI1LCAweDM5LAorICAweDEzLCAweDAzLCAweGNhLCAweGFk LCAweDVmLCAweGQyLCAweDU3LCAweDIzLAorICAweDE5LCAweGRkLCAweDcxLCAweGRkLCAweDkz LCAweGUxLCAweDNlLCAweDQzLAorICAweGFmLCAweGRkLCAweDk0LCAweDA3LCAweGYzLCAweDc4 LCAweGIzLCAweDJhLAorICAweDU3LCAweDI0LCAweDk3LCAweDA0LCAweDU4LCAweGMxLCAweGFm LCAweGQzLAorICAweGU3LCAweGE3LCAweDY1LCAweGQxLCAweDIzLCAweGEzLCAweDkzLCAweDE4 LAorICAweGM3LCAweDUyLCAweDcwLCAweDUzLCAweDYwLCAweDhiLCAweDVhLCAweDVkLAorICAw eDZlLCAweGY5LCAweDgzLCAweDUyLCAweDk5LCAweGJiLCAweDBhLCAweDUzLAorICAweDBlLCAw eDJhLCAweDdmLCAweDgxLCAweDUyLCAweDAyLCAweDMyLCAweGE0LAorICAweGZjLCAweGUwLCAw eDE3LCAweDBjLCAweDBlLCAweDk2LCAweGJkLCAweDAxLAorICAweDI5LCAweDI5LCAweDI5LAor fTsKKworZXh0ZXJuIGdjcnlfcGtfc3BlY190IF9nY3J5X3B1YmtleV9zcGVjX3JzYTsKKworc3Rh dGljIHZvaWQKK3JzYV9zZXhwX3Rlc3QgKHZvaWQpCit7CisgIGdjcnlfc2V4cF90IHNpZ25fcGFy bXMsIHNpZ25fcGFybXNfaW52YWxpZCwgcHVia2V5LCBzaWc7CisgIGludCByYzsKKyAgZ3J1Yl9z aXplX3QgZXJyb2Y7CisKKyAgcmMgPSBfZ2NyeV9zZXhwX2J1aWxkICgmc2lnbl9wYXJtc19pbnZh bGlkLCAmZXJyb2YsCisJCQkiKGRhdGEgKGZsYWdzKSAodmFsdWUgXCJoaVwiKSlcbiIpOworICBn cnViX3Rlc3RfYXNzZXJ0IChyYyA9PSAwLCAic2V4cCBidWlsZCBmYWlsZWQiKTsKKworICByYyA9 IF9nY3J5X3NleHBfYnVpbGQgKCZzaWduX3Bhcm1zLCAmZXJyb2YsCisJCQkiKGRhdGEgKGZsYWdz KSAodmFsdWUgXCJoZWxsb1wiKSlcbiIpOworICBncnViX3Rlc3RfYXNzZXJ0IChyYyA9PSAwLCAi c2V4cCBidWlsZCBmYWlsZWQiKTsKKyAgcmMgPSBfZ2NyeV9zZXhwX25ldyAoJnB1YmtleSwgcHVi a2V5X2R1bXAsIHNpemVvZihwdWJrZXlfZHVtcCksIDApOworICBncnViX3Rlc3RfYXNzZXJ0IChy YyA9PSAwLCAic2V4cCBuZXcgZmFpbGVkIik7CisgIHJjID0gX2djcnlfc2V4cF9uZXcgKCZzaWcs IHNpZ19kdW1wLCBzaXplb2Yoc2lnX2R1bXApLCAwKTsKKyAgZ3J1Yl90ZXN0X2Fzc2VydCAocmMg PT0gMCwgInNleHAgbmV3IGZhaWxlZCIpOworICByYyA9IF9nY3J5X3B1YmtleV9zcGVjX3JzYS52 ZXJpZnkgKHNpZywgc2lnbl9wYXJtcywgcHVia2V5KTsKKyAgZ3J1Yl90ZXN0X2Fzc2VydCAocmMg PT0gMCwgInNpZ25hdHVyZSB2ZXJpZmljYXRpb24gZmFpbGVkOiAlZCIsIHJjKTsKKyAgcmMgPSBf Z2NyeV9wdWJrZXlfc3BlY19yc2EudmVyaWZ5IChzaWcsIHNpZ25fcGFybXNfaW52YWxpZCwgcHVi a2V5KTsKKyAgZ3J1Yl90ZXN0X2Fzc2VydCAocmMgIT0gMCwgInNpZ25hdHVyZSB2ZXJpZmljYXRp b24gc3VjY2VkZWQgd3JvbmdseSIpOworfQorCitHUlVCX0ZVTkNUSU9OQUxfVEVTVCAocnNhX3Nl eHBfdGVzdCwgcnNhX3NleHBfdGVzdCk7Ci0tIAoyLjQ5LjAKCgpfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpHcnViLWRldmVsIG1haWxpbmcgbGlzdApHcnVi LWRldmVsQGdudS5vcmcKaHR0cHM6Ly9saXN0cy5nbnUub3JnL21haWxtYW4vbGlzdGluZm8vZ3J1 Yi1kZXZlbAo=