From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-0.1 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FROM autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 29647 invoked from network); 22 Oct 2021 14:49:28 -0000 Received: from 4ess.inri.net (216.126.196.42) by inbox.vuxu.org with ESMTPUTF8; 22 Oct 2021 14:49:28 -0000 Received: from mail-yb1-f170.google.com ([209.85.219.170]) by 4ess; Fri Oct 22 10:44:02 -0400 2021 Received: by mail-yb1-f170.google.com with SMTP id v7so7645531ybq.0 for <9front@9front.org>; Fri, 22 Oct 2021 07:43:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to; bh=AX2HMDEmpkQ3ABrw6LlbcpuCiZWtsd5bt9zE2/cZu6c=; b=hVw1wxHp3sXFKRU8K6fs8UF39d5f0hHMU+5WWsa1UbpRpN9h2NspDDXfc24wE2/HkG 6rjOnlS1dejeh39bY70P07FG4y/0SqpMP/acXlxyTOFSyoSq/ytIRUy7Z5OtYMwYMkgO Pn7l2qvCAh1G/bI0Vi/4q1Ij2f90KWYMo7wJ6JIQX6o2DtlBpb/Cyqs2F32jXOWSxQh4 iVvSUmE9A5sMdNTV1//0bOKfrm6pVNaD2z9kybCPv//e+2WHzPO0Rh+mq3+MCOLk9rqM wiC89VNOApgbjo8PMgQtzl5NlZ6pDLcZ6AZuMTkfZqlgQVcFvbIpPwvqLkMNRozFpQ87 9RDg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=AX2HMDEmpkQ3ABrw6LlbcpuCiZWtsd5bt9zE2/cZu6c=; b=GokoZBuL4cMgi8POEdMjRxfhRtgsfhVDCzVlzCbkge4HWc2UBU3G9XNvT9BWfno/lQ sysKZ+ulCLpBsC6+2079uBegrmRRgAtO1IiZuPKuQI7o4k4YRg8FiR/NAiYhItIwn/xl i49dLiILlHYteqm2wEQ4g3/XEIU8KnmX1GyElpdGY7FxxH/wLO1EnQkyWiKqPxPbrpc7 xCC6mHn+srvgpoA60npVGjNPiqOSR47MoWtcRhsKeSihNbL8on+nFkVR7NtPmOjKkV+N xcSDhj1v4TGqXECQhjYWyTp4wKSOTVnUYkvBbH9IBVzTaKWNuufMcNrGMwn64YmDPZf5 VoMw== X-Gm-Message-State: AOAM530wZP5em7tzU3P9Kkwtkiieg+6hHGWWUGDQmdTzB4/0ZPe696L7 n38mtDT96GYadwWgT92DXbL4zBOZojp4NwlW+Y0u08VRfaw= X-Google-Smtp-Source: ABdhPJwo34bw5NdzNQzr7IZvcmbTD064BKsnMnkzDINrue/KRScTPRqiT6B+zXkA1pjRNgNnqsAjKspIlOMy8QqP+us= X-Received: by 2002:a25:cb4f:: with SMTP id b76mr35649ybg.521.1634913383563; Fri, 22 Oct 2021 07:36:23 -0700 (PDT) MIME-Version: 1.0 References: <7648813BD190663018940ABF1A7326C8@eigenstate.org> In-Reply-To: From: kemal Date: Fri, 22 Oct 2021 17:36:09 +0300 Message-ID: To: 9front@9front.org Content-Type: multipart/mixed; boundary="00000000000077846105cef1efeb" List-ID: <9front.9front.org> List-Help: X-Glyph: ➈ X-Bullshit: agile generic persistence realtime deep-learning database Subject: Re: [9front] intent to delete: devssl, cpu, oexportfs, import Reply-To: 9front@9front.org Precedence: bulk --00000000000077846105cef1efeb Content-Type: text/plain; charset="UTF-8" > also, i made a diff that removes SSL3 from devtls and tlshand. it's attached. > i didn't test the diff throughly, so it might be buggy. i hope not. forgot to include the diff for devtls, ughhh --00000000000077846105cef1efeb Content-Type: text/plain; charset="US-ASCII"; name="diff.txt" Content-Disposition: attachment; filename="diff.txt" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_kv2h79j80 ZGlmZiBlNTRiNmM2Y2JkNGQ4MmQ3MGRkYjQ5MzJhZWFmYjBiMDI4Y2Q3MWY1IHVuY29tbWl0dGVk Ci0tLSBhLy9zeXMvc3JjLzkvcG9ydC9kZXZ0bHMuYworKysgYi8vc3lzL3NyYy85L3BvcnQvZGV2 dGxzLmMKQEAgLTEsNSArMSw1IEBACiAvKgotICogIGRldnRscyAtIHJlY29yZCBsYXllciBmb3Ig dHJhbnNwb3J0IGxheWVyIHNlY3VyaXR5IDEuMiBhbmQgc2VjdXJlIHNvY2tldHMgbGF5ZXIgMy4w CisgKiAgZGV2dGxzIC0gcmVjb3JkIGxheWVyIGZvciB0cmFuc3BvcnQgbGF5ZXIgc2VjdXJpdHkg MS4wLTEuMgogICovCiAjaW5jbHVkZQkidS5oIgogI2luY2x1ZGUJIi4uL3BvcnQvbGliLmgiCkBA IC0yNCwxMSArMjQsMTAgQEAKIAlNYXhNYWNMZW4JPSBTSEEyXzI1NmRsZW4sCiAKIAkvKiBwcm90 b2NvbCB2ZXJzaW9ucyB3ZSBjYW4gYWNjZXB0ICovCi0JU1NMM1ZlcnNpb24JPSAweDAzMDAsCiAJ VExTMTBWZXJzaW9uCT0gMHgwMzAxLAogCVRMUzExVmVyc2lvbgk9IDB4MDMwMiwKIAlUTFMxMlZl cnNpb24JPSAweDAzMDMsCi0JTWluUHJvdG9WZXJzaW9uCT0gMHgwMzAwLAkvKiBsaW1pdHMgb24g dmVyc2lvbiB3ZSBhY2NlcHQgKi8KKwlNaW5Qcm90b1ZlcnNpb24JPSAweDAzMDEsCS8qIGxpbWl0 cyBvbiB2ZXJzaW9uIHdlIGFjY2VwdCAqLwogCU1heFByb3RvVmVyc2lvbgk9IDB4MDNmZiwKIAog CS8qIGNvbm5lY3Rpb24gc3RhdGVzICovCkBAIC00Niw5ICs0NSw2IEBACiAJUkhhbmRzaGFrZSwK IAlSQXBwbGljYXRpb24sCiAKLQlTU0wyQ2xpZW50SGVsbG8gPSAxLAotCUhTU0wyQ2xpZW50SGVs bG8gPSA5LCAgLyogbG9jYWwgY29udmVudGlvbjsgIHNlZSB0bHNoYW5kLmMgKi8KLQogCS8qIGFs ZXJ0cyAqLwogCUVDbG9zZU5vdGlmeSAJCQk9IDAsCiAJRVVuZXhwZWN0ZWRNZXNzYWdlIAk9IDEw LApAQCAtNTcsNyArNTMsNiBAQAogCUVSZWNvcmRPdmVyZmxvdyAJCT0gMjIsCiAJRURlY29tcHJl c3Npb25GYWlsdXJlIAk9IDMwLAogCUVIYW5kc2hha2VGYWlsdXJlIAkJPSA0MCwKLQlFTm9DZXJ0 aWZpY2F0ZSAJCQk9IDQxLAogCUVCYWRDZXJ0aWZpY2F0ZSAJCT0gNDIsCiAJRVVuc3VwcG9ydGVk Q2VydGlmaWNhdGUgCT0gNDMsCiAJRUNlcnRpZmljYXRlUmV2b2tlZCAJCT0gNDQsCkBAIC04OSw3 ICs4NCw2IEBACiAKIAlpbnQJCSgqZW5jKShTZWNyZXQqLCB1Y2hhciosIGludCk7CiAJaW50CQko KmRlYykoU2VjcmV0KiwgdWNoYXIqLCBpbnQpOwotCWludAkJKCp1bnBhZCkodWNoYXIqLCBpbnQs IGludCk7CiAJRGlnZXN0U3RhdGUqCSgqbWFjKSh1Y2hhciosIHVsb25nLCB1Y2hhciosIHVsb25n LCB1Y2hhciosIERpZ2VzdFN0YXRlKik7CiAKIAlpbnQJCWJsb2NrOwkJLyogZW5jcnlwdGlvbiBi bG9jayBsZW4sIDAgaWYgbm9uZSAqLwpAQCAtMTI1LDEyICsxMTksNiBAQAogCWludAkJc3RhdGU7 CiAJaW50CQlkZWJ1ZzsKIAotCS8qCi0JICogZnVuY3Rpb24gdG8gZ2VucmF0ZSBhdXRoZW50aWNh dGVkIGRhdGEgYmxvYiBmb3IgZGlmZmVyZW50Ci0JICogcHJvdG9jb2wgdmVyc2lvbnMKLQkgKi8K LQlpbnQJCSgqcGFja0FBRCkodTY0aW50LCB1Y2hhciosIHVjaGFyKik7Ci0KIAkvKiBpbnB1dCBz aWRlIC0tIHByb3RlY3RlZCBieSBpbi5pbyAqLwogCU9uZVdheQkJaW47CiAJQmxvY2sJCSpwcm9j ZXNzZWQ7CS8qIG5leHQgYnVuY2ggb2YgYXBwbGljYXRpb24gZGF0YSAqLwpAQCAtMTUzLDM3ICsx NDEsMzQgQEAKIAogc3RydWN0IFRsc0VycnN7CiAJaW50CWVycjsKLQlpbnQJc3NsZXJyOwotCWlu dAl0bHNlcnI7CiAJaW50CWZhdGFsOwogCWNoYXIJKm1zZzsKIH07CiAKIHN0YXRpYyBUbHNFcnJz IHRsc2VycnNbXSA9IHsKLQl7RUNsb3NlTm90aWZ5LAkJCUVDbG9zZU5vdGlmeSwJCQlFQ2xvc2VO b3RpZnksCQkJMCwgCSJjbG9zZSBub3RpZnkifSwKLQl7RVVuZXhwZWN0ZWRNZXNzYWdlLAlFVW5l eHBlY3RlZE1lc3NhZ2UsCUVVbmV4cGVjdGVkTWVzc2FnZSwgCTEsICJ1bmV4cGVjdGVkIG1lc3Nh Z2UifSwKLQl7RUJhZFJlY29yZE1hYywJCUVCYWRSZWNvcmRNYWMsCQlFQmFkUmVjb3JkTWFjLCAJ CTEsICJiYWQgcmVjb3JkIG1hYyJ9LAotCXtFRGVjcnlwdGlvbkZhaWxlZCwJCUVJbGxlZ2FsUGFy YW1ldGVyLAkJRURlY3J5cHRpb25GYWlsZWQsCQkxLCAiZGVjcnlwdGlvbiBmYWlsZWQifSwKLQl7 RVJlY29yZE92ZXJmbG93LAkJRUlsbGVnYWxQYXJhbWV0ZXIsCQlFUmVjb3JkT3ZlcmZsb3csCQkx LCAicmVjb3JkIHRvbyBsb25nIn0sCi0Je0VEZWNvbXByZXNzaW9uRmFpbHVyZSwJRURlY29tcHJl c3Npb25GYWlsdXJlLAlFRGVjb21wcmVzc2lvbkZhaWx1cmUsCTEsICJkZWNvbXByZXNzaW9uIGZh aWxlZCJ9LAotCXtFSGFuZHNoYWtlRmFpbHVyZSwJCUVIYW5kc2hha2VGYWlsdXJlLAkJRUhhbmRz aGFrZUZhaWx1cmUsCQkxLCAiY291bGQgbm90IG5lZ290aWF0ZSBhY2NlcHRhYmxlIHNlY3VyaXR5 IHBhcmFtZXRlcnMifSwKLQl7RU5vQ2VydGlmaWNhdGUsCQlFTm9DZXJ0aWZpY2F0ZSwJCQlFQ2Vy dGlmaWNhdGVVbmtub3duLAkxLCAibm8gYXBwcm9wcmlhdGUgY2VydGlmaWNhdGUgYXZhaWxhYmxl In0sCi0Je0VCYWRDZXJ0aWZpY2F0ZSwJCUVCYWRDZXJ0aWZpY2F0ZSwJCUVCYWRDZXJ0aWZpY2F0 ZSwJCTEsICJjb3JydXB0ZWQgb3IgaW52YWxpZCBjZXJ0aWZpY2F0ZSJ9LAotCXtFVW5zdXBwb3J0 ZWRDZXJ0aWZpY2F0ZSwJRVVuc3VwcG9ydGVkQ2VydGlmaWNhdGUsCUVVbnN1cHBvcnRlZENlcnRp ZmljYXRlLAkxLCAidW5zdXBwb3J0ZWQgY2VydGlmaWNhdGUgdHlwZSJ9LAotCXtFQ2VydGlmaWNh dGVSZXZva2VkLAlFQ2VydGlmaWNhdGVSZXZva2VkLAkJRUNlcnRpZmljYXRlUmV2b2tlZCwJCTEs ICJyZXZva2VkIGNlcnRpZmljYXRlIn0sCi0Je0VDZXJ0aWZpY2F0ZUV4cGlyZWQsCQlFQ2VydGlm aWNhdGVFeHBpcmVkLAkJRUNlcnRpZmljYXRlRXhwaXJlZCwJCTEsICJleHBpcmVkIGNlcnRpZmlj YXRlIn0sCi0Je0VDZXJ0aWZpY2F0ZVVua25vd24sCUVDZXJ0aWZpY2F0ZVVua25vd24sCUVDZXJ0 aWZpY2F0ZVVua25vd24sCTEsICJ1bmFjY2VwdGFibGUgY2VydGlmaWNhdGUifSwKLQl7RUlsbGVn YWxQYXJhbWV0ZXIsCQlFSWxsZWdhbFBhcmFtZXRlciwJCUVJbGxlZ2FsUGFyYW1ldGVyLAkJMSwg ImlsbGVnYWwgcGFyYW1ldGVyIn0sCi0Je0VVbmtub3duQ2EsCQkJRUhhbmRzaGFrZUZhaWx1cmUs CQlFVW5rbm93bkNhLAkJCTEsICJ1bmtub3duIGNlcnRpZmljYXRlIGF1dGhvcml0eSJ9LAotCXtF QWNjZXNzRGVuaWVkLAkJRUhhbmRzaGFrZUZhaWx1cmUsCQlFQWNjZXNzRGVuaWVkLAkJMSwgImFj Y2VzcyBkZW5pZWQifSwKLQl7RURlY29kZUVycm9yLAkJCUVJbGxlZ2FsUGFyYW1ldGVyLAkJRURl Y29kZUVycm9yLAkJCTEsICJlcnJvciBkZWNvZGluZyBtZXNzYWdlIn0sCi0Je0VEZWNyeXB0RXJy b3IsCQkJRUlsbGVnYWxQYXJhbWV0ZXIsCQlFRGVjcnlwdEVycm9yLAkJCTEsICJlcnJvciBkZWNy eXB0aW5nIG1lc3NhZ2UifSwKLQl7RUV4cG9ydFJlc3RyaWN0aW9uLAkJRUhhbmRzaGFrZUZhaWx1 cmUsCQlFRXhwb3J0UmVzdHJpY3Rpb24sCQkxLCAiZXhwb3J0IHJlc3RyaWN0aW9uIHZpb2xhdGVk In0sCi0Je0VQcm90b2NvbFZlcnNpb24sCQlFSWxsZWdhbFBhcmFtZXRlciwJCUVQcm90b2NvbFZl cnNpb24sCQkxLCAicHJvdG9jb2wgdmVyc2lvbiBub3Qgc3VwcG9ydGVkIn0sCi0Je0VJbnN1ZmZp Y2llbnRTZWN1cml0eSwJRUhhbmRzaGFrZUZhaWx1cmUsCQlFSW5zdWZmaWNpZW50U2VjdXJpdHks CTEsICJzdHJvbmdlciBzZWN1cml0eSByb3V0aW5lcyByZXF1aXJlZCJ9LAotCXtFSW50ZXJuYWxF cnJvciwJCQlFSGFuZHNoYWtlRmFpbHVyZSwJCUVJbnRlcm5hbEVycm9yLAkJCTEsICJpbnRlcm5h bCBlcnJvciJ9LAotCXtFVXNlckNhbmNlbGVkLAkJRUNsb3NlTm90aWZ5LAkJCUVVc2VyQ2FuY2Vs ZWQsCQkJMCwgImhhbmRzaGFrZSBjYW5jZWxlZCBieSB1c2VyIn0sCi0Je0VOb1JlbmVnb3RpYXRp b24sCQlFVW5leHBlY3RlZE1lc3NhZ2UsCUVOb1JlbmVnb3RpYXRpb24sCQkwLCAibm8gcmVuZWdv dGlhdGlvbiJ9LAorCXtFQ2xvc2VOb3RpZnksCQkJMCwgImNsb3NlIG5vdGlmeSJ9LAorCXtFVW5l eHBlY3RlZE1lc3NhZ2UsCQkxLCAidW5leHBlY3RlZCBtZXNzYWdlIn0sCisJe0VCYWRSZWNvcmRN YWMsCQkJMSwgImJhZCByZWNvcmQgbWFjIn0sCisJe0VEZWNyeXB0aW9uRmFpbGVkLAkJMSwgImRl Y3J5cHRpb24gZmFpbGVkIn0sCisJe0VSZWNvcmRPdmVyZmxvdywJCTEsICJyZWNvcmQgdG9vIGxv bmcifSwKKwl7RURlY29tcHJlc3Npb25GYWlsdXJlLAkJMSwgImRlY29tcHJlc3Npb24gZmFpbGVk In0sCisJe0VIYW5kc2hha2VGYWlsdXJlLAkJMSwgImNvdWxkIG5vdCBuZWdvdGlhdGUgYWNjZXB0 YWJsZSBzZWN1cml0eSBwYXJhbWV0ZXJzIn0sCisJe0VCYWRDZXJ0aWZpY2F0ZSwJCTEsICJjb3Jy dXB0ZWQgb3IgaW52YWxpZCBjZXJ0aWZpY2F0ZSJ9LAorCXtFVW5zdXBwb3J0ZWRDZXJ0aWZpY2F0 ZSwJMSwgInVuc3VwcG9ydGVkIGNlcnRpZmljYXRlIHR5cGUifSwKKwl7RUNlcnRpZmljYXRlUmV2 b2tlZCwJCTEsICJyZXZva2VkIGNlcnRpZmljYXRlIn0sCisJe0VDZXJ0aWZpY2F0ZUV4cGlyZWQs CQkxLCAiZXhwaXJlZCBjZXJ0aWZpY2F0ZSJ9LAorCXtFQ2VydGlmaWNhdGVVbmtub3duLAkJMSwg InVuYWNjZXB0YWJsZSBjZXJ0aWZpY2F0ZSJ9LAorCXtFSWxsZWdhbFBhcmFtZXRlciwJCTEsICJp bGxlZ2FsIHBhcmFtZXRlciJ9LAorCXtFVW5rbm93bkNhLAkJCTEsICJ1bmtub3duIGNlcnRpZmlj YXRlIGF1dGhvcml0eSJ9LAorCXtFQWNjZXNzRGVuaWVkLAkJCTEsICJhY2Nlc3MgZGVuaWVkIn0s CisJe0VEZWNvZGVFcnJvciwJCQkxLCAiZXJyb3IgZGVjb2RpbmcgbWVzc2FnZSJ9LAorCXtFRGVj cnlwdEVycm9yLAkJCTEsICJlcnJvciBkZWNyeXB0aW5nIG1lc3NhZ2UifSwKKwl7RUV4cG9ydFJl c3RyaWN0aW9uLAkJMSwgImV4cG9ydCByZXN0cmljdGlvbiB2aW9sYXRlZCJ9LAorCXtFUHJvdG9j b2xWZXJzaW9uLAkJMSwgInByb3RvY29sIHZlcnNpb24gbm90IHN1cHBvcnRlZCJ9LAorCXtFSW5z dWZmaWNpZW50U2VjdXJpdHksCQkxLCAic3Ryb25nZXIgc2VjdXJpdHkgcm91dGluZXMgcmVxdWly ZWQifSwKKwl7RUludGVybmFsRXJyb3IsCQkxLCAiaW50ZXJuYWwgZXJyb3IifSwKKwl7RVVzZXJD YW5jZWxlZCwJCQkwLCAiaGFuZHNoYWtlIGNhbmNlbGVkIGJ5IHVzZXIifSwKKwl7RU5vUmVuZWdv dGlhdGlvbiwJCTAsICJubyByZW5lZ290aWF0aW9uIn0sCiB9OwogCiBlbnVtCkBAIC0yMjcsMTEg KzIxMiw4IEBACiBzdGF0aWMgdm9pZAlhbGVydEhhbmQoVGxzUmVjKiwgY2hhciAqKTsKIHN0YXRp YyBUbHNSZWMJKm5ld3RscyhDaGFuICpjKTsKIHN0YXRpYyBUbHNSZWMJKm1rdGxzcmVjKHZvaWQp Owotc3RhdGljIERpZ2VzdFN0YXRlKnNzbG1hY19tZDUodWNoYXIgKnAsIHVsb25nIGxlbiwgdWNo YXIgKmtleSwgdWxvbmcga2xlbiwgdWNoYXIgKmRpZ2VzdCwgRGlnZXN0U3RhdGUgKnMpOwotc3Rh dGljIERpZ2VzdFN0YXRlKnNzbG1hY19zaGExKHVjaGFyICpwLCB1bG9uZyBsZW4sIHVjaGFyICpr ZXksIHVsb25nIGtsZW4sIHVjaGFyICpkaWdlc3QsIERpZ2VzdFN0YXRlICpzKTsKIHN0YXRpYyBE aWdlc3RTdGF0ZSpub21hYyh1Y2hhciAqcCwgdWxvbmcgbGVuLCB1Y2hhciAqa2V5LCB1bG9uZyBr bGVuLCB1Y2hhciAqZGlnZXN0LCBEaWdlc3RTdGF0ZSAqcyk7Ci1zdGF0aWMgaW50CXNzbFBhY2tB QUQodTY0aW50LCB1Y2hhciosIHVjaGFyKik7Ci1zdGF0aWMgaW50CXRsc1BhY2tBQUQodTY0aW50 LCB1Y2hhciosIHVjaGFyKik7CitzdGF0aWMgaW50CXBhY2tBQUQodTY0aW50LCB1Y2hhciosIHVj aGFyKik7CiBzdGF0aWMgdm9pZAlwYWNrTWFjKFNlY3JldCosIHVjaGFyKiwgaW50LCB1Y2hhcios IGludCwgdWNoYXIqKTsKIHN0YXRpYyB2b2lkCXB1dDY0KHVjaGFyICpwLCB1NjRpbnQpOwogc3Rh dGljIHZvaWQJcHV0MzIodWNoYXIgKnAsIHUzMmludCk7CkBAIC0yNTIsOCArMjM0LDcgQEAKIHN0 YXRpYyBpbnQJYWVzZ2NtX2FlYWRfZW5jKFNlY3JldCAqc2VjLCB1Y2hhciAqYWFkLCBpbnQgYWFk bGVuLCB1Y2hhciAqcmVjaXYsIHVjaGFyICpkYXRhLCBpbnQgbGVuKTsKIHN0YXRpYyBpbnQJYWVz Z2NtX2FlYWRfZGVjKFNlY3JldCAqc2VjLCB1Y2hhciAqYWFkLCBpbnQgYWFkbGVuLCB1Y2hhciAq cmVjaXYsIHVjaGFyICpkYXRhLCBpbnQgbGVuKTsKIHN0YXRpYyBpbnQJbm9lbmMoU2VjcmV0ICpz ZWMsIHVjaGFyICpidWYsIGludCBuKTsKLXN0YXRpYyBpbnQJc3NsdW5wYWQodWNoYXIgKmJ1Ziwg aW50IG4sIGludCBibG9jayk7Ci1zdGF0aWMgaW50CXRsc3VucGFkKHVjaGFyICpidWYsIGludCBu LCBpbnQgYmxvY2spOworc3RhdGljIGludAl1bnBhZCh1Y2hhciAqYnVmLCBpbnQgbiwgaW50IGJs b2NrKTsKIHN0YXRpYyB2b2lkCWZyZWVTZWMoU2VjcmV0ICpzZWMpOwogc3RhdGljIGNoYXIJKnRs c3N0YXRlKGludCBzKTsKIHN0YXRpYyB2b2lkCXBkdW1wKGludCwgdm9pZCosIGNoYXIqKTsKQEAg LTc0OSwyMCArNzMwLDEwIEBACiBpZih0ci0+ZGVidWcpcHByaW50KCJjb25zdW1lZCAlZCBoZWFk ZXJcbiIsIFJlY0hkckxlbik7CiAJbmNvbnN1bWVkID0gUmVjSGRyTGVuOwogCi0JaWYoKHRyLT5o YW5kaW4gPT0gMCkgJiYgKGhlYWRlclswXSAmIDB4ODApKXsKLQkJLyogQ29wZSB3aXRoIGFuIFNT TDMgQ2xpZW50SGVsbG8gZXhwcmVzc2VkIGluIFNTTDIgcmVjb3JkIGZvcm1hdC4KLQkJCVRoaXMg aXMgc2VudCBieSBzb21lIGNsaWVudHMgdGhhdCB3ZSBtdXN0IGludGVyb3BlcmF0ZQotCQkJd2l0 aCwgc3VjaCBhcyBKYXZhJ3MgSlNTRSBhbmQgTWljcm9zb2Z0J3MgSW50ZXJuZXQgRXhwbG9yZXIu ICovCi0JCWxlbiA9IChnZXQxNihoZWFkZXIpICYgfjB4ODAwMCkgLSAzOwotCQl0eXBlID0gaGVh ZGVyWzJdOwotCQl2ZXIgPSBnZXQxNihoZWFkZXIgKyAzKTsKLQkJaWYodHlwZSAhPSBTU0wyQ2xp ZW50SGVsbG8gfHwgbGVuIDwgMjIpCi0JCQlyY3ZFcnJvcih0ciwgRVByb3RvY29sVmVyc2lvbiwg ImludmFsaWQgaW5pdGlhbCBTU0wyLWxpa2UgbWVzc2FnZSIpOwotCX1lbHNleyAgLyogbm9ybWFs IFNTTDMgcmVjb3JkIGZvcm1hdCAqLwotCQl0eXBlID0gaGVhZGVyWzBdOwotCQl2ZXIgPSBnZXQx NihoZWFkZXIrMSk7Ci0JCWxlbiA9IGdldDE2KGhlYWRlciszKTsKLQl9CisJdHlwZSA9IGhlYWRl clswXTsKKwl2ZXIgPSBnZXQxNihoZWFkZXIrMSk7CisJbGVuID0gZ2V0MTYoaGVhZGVyKzMpOwor CiAJaWYodmVyICE9IHRyLT52ZXJzaW9uICYmICh0ci0+dmVyc2V0IHx8IHZlciA8IE1pblByb3Rv VmVyc2lvbiB8fCB2ZXIgPiBNYXhQcm90b1ZlcnNpb24pKQogCQlyY3ZFcnJvcih0ciwgRVByb3Rv Y29sVmVyc2lvbiwgImRldnRscyBleHBlY3RlZCB2ZXI9JXglcywgc2F3IChsZW49JWQpIHR5cGU9 JXggdmVyPSV4ICclLjEycyciLAogCQkJdHItPnZlcnNpb24sIHRyLT52ZXJzZXQ/Ii9zZXQiOiIi LCBsZW4sIHR5cGUsIHZlciwgKGNoYXIqKWhlYWRlcik7CkBAIC04MjMsNyArNzk0LDcgQEAKIAog CQkvKiB1cGRhdGUgbGVuZ3RoICovCiAJCXB1dDE2KGhlYWRlciszLCBsZW4pOwotCQlhYWRsZW4g PSAoKnRyLT5wYWNrQUFEKShpbi0+c2VxKyssIGhlYWRlciwgYWFkKTsKKwkJYWFkbGVuID0gcGFj a0FBRChpbi0+c2VxKyssIGhlYWRlciwgYWFkKTsKIAkJaWYoc2VjLT5hZWFkX2RlYyAhPSBuaWwp IHsKIAkJCWxlbiA9ICgqc2VjLT5hZWFkX2RlYykoc2VjLCBhYWQsIGFhZGxlbiwgcCAtIGl2bGVu LCBwLCB1bnBhZF9sZW4pOwogCQkJaWYobGVuIDwgMCkKQEAgLTkxNiw0MiArODg3LDEyIEBACiAJ CQlkZWNoYW5kcSh0cik7CiAJCX1lbHNlewogCQkJdW5sb2NrKCZ0ci0+aHFsb2NrKTsKLQkJCWlm KHRyLT52ZXJzZXQgJiYgdHItPnZlcnNpb24gIT0gU1NMM1ZlcnNpb24gJiYgIXdhc2Vycm9yKCkp eworCQkJaWYodHItPnZlcnNldCAmJiAhd2FzZXJyb3IoKSl7CiAJCQkJc2VuZEFsZXJ0KHRyLCBF Tm9SZW5lZ290aWF0aW9uKTsKIAkJCQlwb3BlcnJvcigpOwogCQkJfQogCQl9CiAJCWJyZWFrOwot CWNhc2UgU1NMMkNsaWVudEhlbGxvOgotCQlsb2NrKCZ0ci0+aHFsb2NrKTsKLQkJaWYodHItPmhh bmRxICE9IG5pbCl7Ci0JCQl0ci0+aHFyZWYrKzsKLQkJCXVubG9jaygmdHItPmhxbG9jayk7Ci0J CQlpZih3YXNlcnJvcigpKXsKLQkJCQlkZWNoYW5kcSh0cik7Ci0JCQkJbmV4dGVycm9yKCk7Ci0J CQl9Ci0JCQkvKiBQYXNzIHRoZSBTU0wyIGZvcm1hdCBkYXRhLCBzbyB0aGF0IHRoZSBoYW5kc2hh a2UgY29kZSBjYW4gY29tcHV0ZQotCQkJCXRoZSBjb3JyZWN0IGNoZWNrc3Vtcy4gIEhTU0wyQ2xp ZW50SGVsbG8gPSBIYW5kc2hha2VUeXBlIDkgaXMKLQkJCQl1bnVzZWQgaW4gUkZDMjI0Ni4gKi8K LQkJCWIgPSBwYWRibG9jayhiLCA4KTsKLQkJCWItPnJwWzBdID0gUkhhbmRzaGFrZTsKLQkJCWIt PnJwWzFdID0gSFNTTDJDbGllbnRIZWxsbzsKLQkJCXB1dDI0KCZiLT5ycFsyXSwgbGVuKzMpOwot CQkJYi0+cnBbNV0gPSBTU0wyQ2xpZW50SGVsbG87Ci0JCQlwdXQxNigmYi0+cnBbNl0sIHZlcik7 Ci0JCQlxYndyaXRlKHRyLT5oYW5kcSwgYik7Ci0JCQliID0gbmlsOwotCQkJcG9wZXJyb3IoKTsK LQkJCWRlY2hhbmRxKHRyKTsKLQkJfWVsc2V7Ci0JCQl1bmxvY2soJnRyLT5ocWxvY2spOwotCQkJ aWYodHItPnZlcnNldCAmJiB0ci0+dmVyc2lvbiAhPSBTU0wzVmVyc2lvbiAmJiAhd2FzZXJyb3Io KSl7Ci0JCQkJc2VuZEFsZXJ0KHRyLCBFTm9SZW5lZ290aWF0aW9uKTsKLQkJCQlwb3BlcnJvcigp OwotCQkJfQotCQl9Ci0JCWJyZWFrOwogCWNhc2UgUkFwcGxpY2F0aW9uOgogCQlpZighdHItPm9w ZW5lZCkKIAkJCXJjdkVycm9yKHRyLCBFVW5leHBlY3RlZE1lc3NhZ2UsICJhcHBsaWNhdGlvbiBt ZXNzYWdlIHJlY2VpdmVkIGJlZm9yZSBoYW5kc2hha2UgY29tcGxldGVkIik7CkBAIC0xMzE0LDcg KzEyNTUsNyBAQAogCQlwdXQxNihwKzMsIG4pOwogCiAJCWlmKHNlYyAhPSBuaWwpewotCQkJYWFk bGVuID0gKCp0ci0+cGFja0FBRCkob3V0LT5zZXErKywgcCwgYWFkKTsKKwkJCWFhZGxlbiA9IHBh Y2tBQUQob3V0LT5zZXErKywgcCwgYWFkKTsKIAkJCWlmKHNlYy0+YWVhZF9lbmMgIT0gbmlsKQog CQkJCW4gPSAoKnNlYy0+YWVhZF9lbmMpKHNlYywgYWFkLCBhYWRsZW4sIHAgKyBSZWNIZHJMZW4s IHAgKyBSZWNIZHJMZW4gKyBpdmxlbiwgbikgKyBpdmxlbjsKIAkJCWVsc2UgewpAQCAtMTM5MCw0 MiArMTMzMSwzNCBAQAogewogCWNoYXIJKm5hbWU7CiAJaW50CW1hY2xlbjsKLQl2b2lkCSgqaW5p dGtleSkoSGFzaGFsZyAqLCBpbnQsIFNlY3JldCAqLCB1Y2hhciopOworCXZvaWQJKCppbml0a2V5 KShIYXNoYWxnICosIFNlY3JldCAqLCB1Y2hhciopOwogfTsKIAogc3RhdGljIHZvaWQKLWluaXRt ZDVrZXkoSGFzaGFsZyAqaGEsIGludCB2ZXJzaW9uLCBTZWNyZXQgKnMsIHVjaGFyICpwKQoraW5p dG1kNWtleShIYXNoYWxnICpoYSwgU2VjcmV0ICpzLCB1Y2hhciAqcCkKIHsKIAlzLT5tYWNsZW4g PSBoYS0+bWFjbGVuOwotCWlmKHZlcnNpb24gPT0gU1NMM1ZlcnNpb24pCi0JCXMtPm1hYyA9IHNz bG1hY19tZDU7Ci0JZWxzZQotCQlzLT5tYWMgPSBobWFjX21kNTsKKwlzLT5tYWMgPSBobWFjX21k NTsKIAltZW1tb3ZlKHMtPm1hY2tleSwgcCwgaGEtPm1hY2xlbik7CiB9CiAKIHN0YXRpYyB2b2lk Ci1pbml0Y2xlYXJtYWMoSGFzaGFsZyAqLCBpbnQsIFNlY3JldCAqcywgdWNoYXIgKikKK2luaXRj bGVhcm1hYyhIYXNoYWxnICosIFNlY3JldCAqcywgdWNoYXIgKikKIHsKIAlzLT5tYWMgPSBub21h YzsKIH0KIAogc3RhdGljIHZvaWQKLWluaXRzaGExa2V5KEhhc2hhbGcgKmhhLCBpbnQgdmVyc2lv biwgU2VjcmV0ICpzLCB1Y2hhciAqcCkKK2luaXRzaGExa2V5KEhhc2hhbGcgKmhhLCBTZWNyZXQg KnMsIHVjaGFyICpwKQogewogCXMtPm1hY2xlbiA9IGhhLT5tYWNsZW47Ci0JaWYodmVyc2lvbiA9 PSBTU0wzVmVyc2lvbikKLQkJcy0+bWFjID0gc3NsbWFjX3NoYTE7Ci0JZWxzZQotCQlzLT5tYWMg PSBobWFjX3NoYTE7CisJcy0+bWFjID0gaG1hY19zaGExOwogCW1lbW1vdmUocy0+bWFja2V5LCBw LCBoYS0+bWFjbGVuKTsKIH0KIAogc3RhdGljIHZvaWQKLWluaXRzaGEyXzI1NmtleShIYXNoYWxn ICpoYSwgaW50IHZlcnNpb24sIFNlY3JldCAqcywgdWNoYXIgKnApCitpbml0c2hhMl8yNTZrZXko SGFzaGFsZyAqaGEsIFNlY3JldCAqcywgdWNoYXIgKnApCiB7Ci0JaWYodmVyc2lvbiA9PSBTU0wz VmVyc2lvbikKLQkJZXJyb3IoInNoYTI1NiBjYW5ub3QgYmUgdXNlZCB3aXRoIFNTTCIpOwogCXMt Pm1hY2xlbiA9IGhhLT5tYWNsZW47CiAJcy0+bWFjID0gaG1hY19zaGEyXzI1NjsKIAltZW1tb3Zl KHMtPm1hY2tleSwgcCwgaGEtPm1hY2xlbik7CkBAIC0xNjQxLDEwICsxNTc0LDYgQEAKIAkJbSA9 IHN0cnRvbChjYi0+ZlsxXSwgbmlsLCAwKTsKIAkJaWYobSA8IE1pblByb3RvVmVyc2lvbiB8fCBt ID4gTWF4UHJvdG9WZXJzaW9uKQogCQkJZXJyb3IoInVuc3VwcG9ydGVkIHZlcnNpb24iKTsKLQkJ aWYobSA9PSBTU0wzVmVyc2lvbikKLQkJCXRyLT5wYWNrQUFEID0gc3NsUGFja0FBRDsKLQkJZWxz ZQotCQkJdHItPnBhY2tBQUQgPSB0bHNQYWNrQUFEOwogCQl0ci0+dmVyc2V0ID0gMTsKIAkJdHIt PnZlcnNpb24gPSBtOwogCX1lbHNlIGlmKHN0cmNtcChjYi0+ZlswXSwgInNlY3JldCIpID09IDAp ewpAQCAtMTY4NSw4ICsxNjE0LDggQEAKIAkJaWYoIWhhLT5pbml0a2V5IHx8ICFlYS0+aW5pdGtl eSkKIAkJCWVycm9yKCJtaXNpbXBsZW1lbnRlZCBzZWNyZXQgYWxnb3JpdGhtIik7CiAKLQkJKCpo YS0+aW5pdGtleSkoaGEsIHRyLT52ZXJzaW9uLCB0b3MsICZ4WzBdKTsKLQkJKCpoYS0+aW5pdGtl eSkoaGEsIHRyLT52ZXJzaW9uLCB0b2MsICZ4W2hhLT5tYWNsZW5dKTsKKwkJKCpoYS0+aW5pdGtl eSkoaGEsIHRvcywgJnhbMF0pOworCQkoKmhhLT5pbml0a2V5KShoYSwgdG9jLCAmeFtoYS0+bWFj bGVuXSk7CiAJCSgqZWEtPmluaXRrZXkpKGVhLCB0b3MsICZ4WzIgKiBoYS0+bWFjbGVuXSwgJnhb MiAqIGhhLT5tYWNsZW4gKyAyICogZWEtPmtleWxlbl0pOwogCQkoKmVhLT5pbml0a2V5KShlYSwg dG9jLCAmeFsyICogaGEtPm1hY2xlbiArIGVhLT5rZXlsZW5dLCAmeFsyICogaGEtPm1hY2xlbiAr IDIgKiBlYS0+a2V5bGVuICsgZWEtPml2bGVuXSk7CiAKQEAgLTE3MDEsMTMgKzE2MzAsNiBAQAog CQkJdHItPmluLm5ldyA9IHRvYzsKIAkJCXRyLT5vdXQubmV3ID0gdG9zOwogCQl9Ci0JCWlmKHRy LT52ZXJzaW9uID09IFNTTDNWZXJzaW9uKXsKLQkJCXRvYy0+dW5wYWQgPSBzc2x1bnBhZDsKLQkJ CXRvcy0+dW5wYWQgPSBzc2x1bnBhZDsKLQkJfWVsc2V7Ci0JCQl0b2MtPnVucGFkID0gdGxzdW5w YWQ7Ci0JCQl0b3MtPnVucGFkID0gdGxzdW5wYWQ7Ci0JCX0KIAkJdG9jLT5lbmNhbGcgPSBlYS0+ bmFtZTsKIAkJdG9jLT5oYXNoYWxnID0gaGEtPm5hbWU7CiAJCXRvcy0+ZW5jYWxnID0gZWEtPm5h bWU7CkBAIC0xODc5LDE3ICsxODAxLDEyIEBACiBpZih0ci0+ZGVidWcpcHByaW50KCJzZW5kQWxl cnQgJWRcbiIsIGVycik7CiAJZmF0YWwgPSAxOwogCW1zZyA9ICJ0bHMgdW5rbm93biBhbGVydCI7 Ci0JZm9yKGk9MDsgaSA8IG5lbGVtKHRsc2VycnMpOyBpKyspIHsKLQkJaWYodGxzZXJyc1tpXS5l cnIgPT0gZXJyKSB7CisJZm9yKGk9MDsgaSA8IG5lbGVtKHRsc2VycnMpOyBpKyspCisJCWlmKHRs c2VycnNbaV0uZXJyID09IGVycil7CiAJCQltc2cgPSB0bHNlcnJzW2ldLm1zZzsKLQkJCWlmKHRy LT52ZXJzaW9uID09IFNTTDNWZXJzaW9uKQotCQkJCWVyciA9IHRsc2VycnNbaV0uc3NsZXJyOwot CQkJZWxzZQotCQkJCWVyciA9IHRsc2VycnNbaV0udGxzZXJyOwogCQkJZmF0YWwgPSB0bHNlcnJz W2ldLmZhdGFsOwogCQkJYnJlYWs7CiAJCX0KLQl9CiAKIAlpZighd2FzZXJyb3IoKSl7CiAJCWIg PSBhbGxvY2IoMik7CkBAIC0yMDYxLDcgKzE5NzgsNyBAQAogfQogCiBzdGF0aWMgaW50Ci10bHN1 bnBhZCh1Y2hhciAqYnVmLCBpbnQgbiwgaW50IGJsb2NrKQordW5wYWQodWNoYXIgKmJ1ZiwgaW50 IG4sIGludCBibG9jaykKIHsKIAlpbnQgcGFkLCBubjsKIApAQCAtMjA3NiwxOCArMTk5Myw2IEBA CiB9CiAKIHN0YXRpYyBpbnQKLXNzbHVucGFkKHVjaGFyICpidWYsIGludCBuLCBpbnQgYmxvY2sp Ci17Ci0JaW50IHBhZCwgbm47Ci0KLQlwYWQgPSBidWZbbiAtIDFdOwotCW5uID0gbiAtIDEgLSBw YWQ7Ci0JaWYobm4gPD0gMCB8fCBuICUgYmxvY2spCi0JCXJldHVybiAtMTsKLQlyZXR1cm4gbm47 Ci19Ci0KLXN0YXRpYyBpbnQKIGJsb2NrcGFkKHVjaGFyICpidWYsIGludCBuLCBpbnQgYmxvY2sp CiB7CiAJaW50IHBhZCwgbm47CkBAIC0yMTEyLDcgKzIwMTcsNyBAQAogZGVzM2RlYyhTZWNyZXQg KnNlYywgdWNoYXIgKmJ1ZiwgaW50IG4pCiB7CiAJZGVzM0NCQ2RlY3J5cHQoYnVmLCBuLCBzZWMt PmVuY2tleSk7Ci0JcmV0dXJuICgqc2VjLT51bnBhZCkoYnVmLCBuLCA4KTsKKwlyZXR1cm4gdW5w YWQoYnVmLCBuLCA4KTsKIH0KIAogc3RhdGljIGludApAQCAtMjEyNyw3ICsyMDMyLDcgQEAKIGFl c2RlYyhTZWNyZXQgKnNlYywgdWNoYXIgKmJ1ZiwgaW50IG4pCiB7CiAJYWVzQ0JDZGVjcnlwdChi dWYsIG4sIHNlYy0+ZW5ja2V5KTsKLQlyZXR1cm4gKCpzZWMtPnVucGFkKShidWYsIG4sIDE2KTsK KwlyZXR1cm4gdW5wYWQoYnVmLCBuLCAxNik7CiB9CiAKIHN0YXRpYyB2b2lkCkBAIC0yMjEzLDcx ICsyMTE4LDggQEAKIAlyZXR1cm4gbmlsOwogfQogCi0vKgotICogc3NsbWFjOiBtYWMgY2FsY3Vs YXRpb25zIGZvciBzc2wgMy4wIG9ubHk7IHRscyAxLjAgdXNlcyB0aGUgc3RhbmRhcmQgaG1hYy4K LSAqLwotc3RhdGljIERpZ2VzdFN0YXRlKgotc3NsbWFjX3godWNoYXIgKnAsIHVsb25nIGxlbiwg dWNoYXIgKmtleSwgdWxvbmcga2xlbiwgdWNoYXIgKmRpZ2VzdCwgRGlnZXN0U3RhdGUgKnMsCi0J RGlnZXN0U3RhdGUqKCp4KSh1Y2hhciosIHVsb25nLCB1Y2hhciosIERpZ2VzdFN0YXRlKiksIGlu dCB4bGVuLCBpbnQgcGFkbGVuKQotewotCWludCBpOwotCXVjaGFyIHBhZFs0OF0sIGlubmVyZGln ZXN0WzIwXTsKLQotCWlmKHhsZW4gPiBzaXplb2YoaW5uZXJkaWdlc3QpCi0JfHwgcGFkbGVuID4g c2l6ZW9mKHBhZCkpCi0JCXJldHVybiBuaWw7Ci0KLQlpZihrbGVuPjY0KQotCQlyZXR1cm4gbmls OwotCi0JLyogZmlyc3QgdGltZSB0aHJvdWdoICovCi0JaWYocyA9PSBuaWwpewotCQlmb3IoaT0w OyBpPHBhZGxlbjsgaSsrKQotCQkJcGFkW2ldID0gMHgzNjsKLQkJcyA9ICgqeCkoa2V5LCBrbGVu LCBuaWwsIG5pbCk7Ci0JCXMgPSAoKngpKHBhZCwgcGFkbGVuLCBuaWwsIHMpOwotCQlpZihzID09 IG5pbCkKLQkJCXJldHVybiBuaWw7Ci0JfQotCi0JcyA9ICgqeCkocCwgbGVuLCBuaWwsIHMpOwot CWlmKGRpZ2VzdCA9PSBuaWwpCi0JCXJldHVybiBzOwotCi0JLyogbGFzdCB0aW1lIHRocm91Z2gg Ki8KLQlmb3IoaT0wOyBpPHBhZGxlbjsgaSsrKQotCQlwYWRbaV0gPSAweDVjOwotCSgqeCkobmls LCAwLCBpbm5lcmRpZ2VzdCwgcyk7Ci0JcyA9ICgqeCkoa2V5LCBrbGVuLCBuaWwsIG5pbCk7Ci0J cyA9ICgqeCkocGFkLCBwYWRsZW4sIG5pbCwgcyk7Ci0JKCp4KShpbm5lcmRpZ2VzdCwgeGxlbiwg ZGlnZXN0LCBzKTsKLQlyZXR1cm4gbmlsOwotfQotCi1zdGF0aWMgRGlnZXN0U3RhdGUqCi1zc2xt YWNfc2hhMSh1Y2hhciAqcCwgdWxvbmcgbGVuLCB1Y2hhciAqa2V5LCB1bG9uZyBrbGVuLCB1Y2hh ciAqZGlnZXN0LCBEaWdlc3RTdGF0ZSAqcykKLXsKLQlyZXR1cm4gc3NsbWFjX3gocCwgbGVuLCBr ZXksIGtsZW4sIGRpZ2VzdCwgcywgc2hhMSwgU0hBMWRsZW4sIDQwKTsKLX0KLQotc3RhdGljIERp Z2VzdFN0YXRlKgotc3NsbWFjX21kNSh1Y2hhciAqcCwgdWxvbmcgbGVuLCB1Y2hhciAqa2V5LCB1 bG9uZyBrbGVuLCB1Y2hhciAqZGlnZXN0LCBEaWdlc3RTdGF0ZSAqcykKLXsKLQlyZXR1cm4gc3Ns bWFjX3gocCwgbGVuLCBrZXksIGtsZW4sIGRpZ2VzdCwgcywgbWQ1LCBNRDVkbGVuLCA0OCk7Ci19 Ci0KIHN0YXRpYyBpbnQKLXNzbFBhY2tBQUQodTY0aW50IHNlcSwgdWNoYXIgKmhkciwgdWNoYXIg KmFhZCkKLXsKLQlwdXQ2NChhYWQsIHNlcSk7Ci0JYWFkWzhdID0gaGRyWzBdOwotCWFhZFs5XSA9 IGhkclszXTsKLQlhYWRbMTBdID0gaGRyWzRdOwotCXJldHVybiAxMTsKLX0KLQotc3RhdGljIGlu dAotdGxzUGFja0FBRCh1NjRpbnQgc2VxLCB1Y2hhciAqaGRyLCB1Y2hhciAqYWFkKQorcGFja0FB RCh1NjRpbnQgc2VxLCB1Y2hhciAqaGRyLCB1Y2hhciAqYWFkKQogewogCXB1dDY0KGFhZCwgc2Vx KTsKIAlhYWRbOF0gPSBoZHJbMF07Cg== --00000000000077846105cef1efeb--