From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Stefan Kangas Newsgroups: gmane.emacs.bugs Subject: bug#36012: [PATCH] Use lexical-binding in paragraphs.el and add tests Date: Thu, 30 May 2019 21:20:53 +0200 Message-ID: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="0000000000009d0acb058a1fcc76" Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="163779"; mail-complaints-to="usenet@blaine.gmane.org" To: 36012@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Thu May 30 21:22:26 2019 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hWQd2-000gI7-N6 for geb-bug-gnu-emacs@m.gmane.org; Thu, 30 May 2019 21:22:21 +0200 Original-Received: from localhost ([127.0.0.1]:58185 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hWQd1-0006Ov-JE for geb-bug-gnu-emacs@m.gmane.org; Thu, 30 May 2019 15:22:19 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:33692) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hWQcn-0006Mh-AJ for bug-gnu-emacs@gnu.org; Thu, 30 May 2019 15:22:07 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hWQcl-00051D-96 for bug-gnu-emacs@gnu.org; Thu, 30 May 2019 15:22:05 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:48583) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hWQck-00050e-8L for bug-gnu-emacs@gnu.org; Thu, 30 May 2019 15:22:03 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1hWQck-0006ol-3r for bug-gnu-emacs@gnu.org; Thu, 30 May 2019 15:22:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Stefan Kangas Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 30 May 2019 19:22:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 36012 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.155924407826124 (code B ref -1); Thu, 30 May 2019 19:22:01 +0000 Original-Received: (at submit) by debbugs.gnu.org; 30 May 2019 19:21:18 +0000 Original-Received: from localhost ([127.0.0.1]:33888 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hWQc1-0006nH-CQ for submit@debbugs.gnu.org; Thu, 30 May 2019 15:21:17 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:47296) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1hWQbz-0006n4-J4 for submit@debbugs.gnu.org; Thu, 30 May 2019 15:21:16 -0400 Original-Received: from lists.gnu.org ([209.51.188.17]:59178) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1hWQbu-0004IQ-FO for submit@debbugs.gnu.org; Thu, 30 May 2019 15:21:10 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:33441) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hWQbs-00061Q-FT for bug-gnu-emacs@gnu.org; Thu, 30 May 2019 15:21:10 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hWQbq-0004FW-JO for bug-gnu-emacs@gnu.org; Thu, 30 May 2019 15:21:08 -0400 Original-Received: from mail-it1-f180.google.com ([209.85.166.180]:36560) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hWQbq-0004FD-BS for bug-gnu-emacs@gnu.org; Thu, 30 May 2019 15:21:06 -0400 Original-Received: by mail-it1-f180.google.com with SMTP id e184so11291350ite.1 for ; Thu, 30 May 2019 12:21:06 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=eZzo8orl6uxbLk6m/Y86XOEFgHwWQr4HR848f+1YTzU=; b=dL6MPnq7pZneC/8rlN0+sIJvVkoNFx/2sjdETRDXvp5OJfZX5HSOovwPaP7Qy+L/qB 00XKIv3pVAZ0MQLMvVjvD+UXvJ2fr0nLiZvkDwyIeOof46wEKrnQyhoji1iOTPSYIJNy KzMLM4iuNn4tC9I9zMKdx7UpmXnMagKdnKAvuhebYFQoqjVOy1kjhgMYcukyg8CeIhbO sKMQ0jovZvnAqBCRseghtYgzpfJLivR4NZKjnlsdu+Oh7XOANCiFQhVc7UKRlqFq1SYY /cvS0AdTB1RexOyiZate+11AlApJtGcJZEQPYQmFS8hzdZ/xa6Yk+Daz+qL3a0Qn7ELj YkAA== X-Gm-Message-State: APjAAAWqr8PRgTh694W9ajf3ST+eWOixntM9CJ1Dbm4qTCeBCB98pQpd W2um6IsF+Z1e1sTw+onolCXAuol/zOF1J3aONe/tsqAY X-Google-Smtp-Source: APXvYqwR2z4zuZIHmcuQT4rWC50AcM2Qq4wCZ9X7X+lKpvf/Eg4Ra3N4DNrJ3KXlG+QncMITdD4hwHArwOkIdHdtpYo= X-Received: by 2002:a02:3506:: with SMTP id k6mr3372570jaa.41.1559244065004; Thu, 30 May 2019 12:21:05 -0700 (PDT) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:159940 Archived-At: --0000000000009d0acb058a1fcc76 Content-Type: text/plain; charset="UTF-8" I've written unit tests and added the lexical-binding header to textmodes/paragraphs.el. I also took the opportunity to clean up some docstrings, and I had to give one function a non-interactive mode. Please let me know if you have any comments. Thanks, Stefan Kangas --0000000000009d0acb058a1fcc76 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-Use-lexical-binding-in-paragraphs.el-and-add-tests.patch" Content-Disposition: attachment; filename="0001-Use-lexical-binding-in-paragraphs.el-and-add-tests.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_jwb1mgyu0 RnJvbSA0NGY0MjU4ZmNmMDI0MDg0OTRlNzdlOWJiODlmZjg0NDY0NzkwODU1IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBTdGVmYW4gS2FuZ2FzIDxzdGVmYW5rYW5nYXNAZ21haWwuY29t PgpEYXRlOiBXZWQsIDI5IE1heSAyMDE5IDAxOjIwOjI1ICswMjAwClN1YmplY3Q6IFtQQVRDSF0g VXNlIGxleGljYWwtYmluZGluZyBpbiBwYXJhZ3JhcGhzLmVsIGFuZCBhZGQgdGVzdHMKCiogbGlz cC90ZXh0bW9kZXMvcGFyYWdyYXBocy5lbDogVXNlIGxleGljYWwtYmluZGluZy4KKHJlcHVuY3R1 YXRlLXNlbnRlbmNlcyk6IE1ha2UgaXQgd29yayBub24taW50ZXJhY3RpdmVseS4KKiB0ZXN0L2xp c3AvdGV4dG1vZGVzL3BhcmFncmFwaHMtdGVzdHMuZWw6IE5ldyBmaWxlLgotLS0KIGxpc3AvdGV4 dG1vZGVzL3BhcmFncmFwaHMuZWwgICAgICAgICAgICB8ICA0NSArKysrKy0tLS0KIHRlc3QvbGlz cC90ZXh0bW9kZXMvcGFyYWdyYXBocy10ZXN0cy5lbCB8IDE2NSArKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKwogMiBmaWxlcyBjaGFuZ2VkLCAxOTMgaW5zZXJ0aW9ucygrKSwgMTcgZGVs ZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgdGVzdC9saXNwL3RleHRtb2Rlcy9wYXJhZ3Jh cGhzLXRlc3RzLmVsCgpkaWZmIC0tZ2l0IGEvbGlzcC90ZXh0bW9kZXMvcGFyYWdyYXBocy5lbCBi L2xpc3AvdGV4dG1vZGVzL3BhcmFncmFwaHMuZWwKaW5kZXggOTJhNmI5MDc4NS4uZDBmYWIzNjU5 OSAxMDA2NDQKLS0tIGEvbGlzcC90ZXh0bW9kZXMvcGFyYWdyYXBocy5lbAorKysgYi9saXNwL3Rl eHRtb2Rlcy9wYXJhZ3JhcGhzLmVsCkBAIC0xLDQgKzEsNCBAQAotOzs7IHBhcmFncmFwaHMuZWwg LS0tIHBhcmFncmFwaCBhbmQgc2VudGVuY2UgcGFyc2luZworOzs7IHBhcmFncmFwaHMuZWwgLS0t IHBhcmFncmFwaCBhbmQgc2VudGVuY2UgcGFyc2luZyAgLSotIGxleGljYWwtYmluZGluZzogdCAt Ki0KIAogOzsgQ29weXJpZ2h0IChDKSAxOTg1LTE5ODcsIDE5OTEsIDE5OTQtMTk5NywgMTk5OS0y MDE5IEZyZWUgU29mdHdhcmUKIDs7IEZvdW5kYXRpb24sIEluYy4KQEAgLTM5OCwxNSArMzk4LDE1 IEBAIG1hcmstcGFyYWdyYXBoCiAKIChkZWZ1biBraWxsLXBhcmFncmFwaCAoYXJnKQogICAiS2ls bCBmb3J3YXJkIHRvIGVuZCBvZiBwYXJhZ3JhcGguCi1XaXRoIGFyZyBOLCBraWxsIGZvcndhcmQg dG8gTnRoIGVuZCBvZiBwYXJhZ3JhcGg7Ci1uZWdhdGl2ZSBhcmcgLU4gbWVhbnMga2lsbCBiYWNr d2FyZCB0byBOdGggc3RhcnQgb2YgcGFyYWdyYXBoLiIKK1dpdGggQVJHIE4sIGtpbGwgZm9yd2Fy ZCB0byBOdGggZW5kIG9mIHBhcmFncmFwaDsKK25lZ2F0aXZlIEFSRyAtTiBtZWFucyBraWxsIGJh Y2t3YXJkIHRvIE50aCBzdGFydCBvZiBwYXJhZ3JhcGguIgogICAoaW50ZXJhY3RpdmUgInAiKQog ICAoa2lsbC1yZWdpb24gKHBvaW50KSAocHJvZ24gKGZvcndhcmQtcGFyYWdyYXBoIGFyZykgKHBv aW50KSkpKQogCiAoZGVmdW4gYmFja3dhcmQta2lsbC1wYXJhZ3JhcGggKGFyZykKICAgIktpbGwg YmFjayB0byBzdGFydCBvZiBwYXJhZ3JhcGguCi1XaXRoIGFyZyBOLCBraWxsIGJhY2sgdG8gTnRo IHN0YXJ0IG9mIHBhcmFncmFwaDsKLW5lZ2F0aXZlIGFyZyAtTiBtZWFucyBraWxsIGZvcndhcmQg dG8gTnRoIGVuZCBvZiBwYXJhZ3JhcGguIgorV2l0aCBBUkcgTiwga2lsbCBiYWNrIHRvIE50aCBz dGFydCBvZiBwYXJhZ3JhcGg7CituZWdhdGl2ZSBBUkcgLU4gbWVhbnMga2lsbCBmb3J3YXJkIHRv IE50aCBlbmQgb2YgcGFyYWdyYXBoLiIKICAgKGludGVyYWN0aXZlICJwIikKICAgKGtpbGwtcmVn aW9uIChwb2ludCkgKHByb2duIChiYWNrd2FyZC1wYXJhZ3JhcGggYXJnKSAocG9pbnQpKSkpCiAK QEAgLTQyMSw2ICs0MjEsNyBAQCB0cmFuc3Bvc2UtcGFyYWdyYXBocwogICAodHJhbnNwb3NlLXN1 YnIgJ2ZvcndhcmQtcGFyYWdyYXBoIGFyZykpCiAKIChkZWZ1biBzdGFydC1vZi1wYXJhZ3JhcGgt dGV4dCAoKQorICAiTW92ZSB0byB0aGUgc3RhcnQgb2YgdGhlIGN1cnJlbnQgcGFyYWdyYXBoLiIK ICAgKGxldCAoKG9wb2ludCAocG9pbnQpKSBucG9pbnQpCiAgICAgKGZvcndhcmQtcGFyYWdyYXBo IC0xKQogICAgIChzZXRxIG5wb2ludCAocG9pbnQpKQpAQCAtNDM2LDYgKzQzNyw3IEBAIHN0YXJ0 LW9mLXBhcmFncmFwaC10ZXh0CiAJICAgICAgKHN0YXJ0LW9mLXBhcmFncmFwaC10ZXh0KSkpKSkp CiAKIChkZWZ1biBlbmQtb2YtcGFyYWdyYXBoLXRleHQgKCkKKyAgIk1vdmUgdG8gdGhlIGVuZCBv ZiB0aGUgY3VycmVudCBwYXJhZ3JhcGguIgogICAobGV0ICgob3BvaW50IChwb2ludCkpKQogICAg IChmb3J3YXJkLXBhcmFncmFwaCAxKQogICAgIChpZiAoZXEgKHByZWNlZGluZy1jaGFyKSA/XG4p IChmb3J3YXJkLWNoYXIgLTEpKQpAQCAtNDQ3LDcgKzQ0OSw3IEBAIGVuZC1vZi1wYXJhZ3JhcGgt dGV4dAogCiAoZGVmdW4gZm9yd2FyZC1zZW50ZW5jZSAoJm9wdGlvbmFsIGFyZykKICAgIk1vdmUg Zm9yd2FyZCB0byBuZXh0IGVuZCBvZiBzZW50ZW5jZS4gIFdpdGggYXJndW1lbnQsIHJlcGVhdC4K LVdpdGggbmVnYXRpdmUgYXJndW1lbnQsIG1vdmUgYmFja3dhcmQgcmVwZWF0ZWRseSB0byBzdGFy dCBvZiBzZW50ZW5jZS4KK1doZW4gQVJHIGlzIG5lZ2F0aXZlLCBtb3ZlIGJhY2t3YXJkIHJlcGVh dGVkbHkgdG8gc3RhcnQgb2Ygc2VudGVuY2UuCiAKIFRoZSB2YXJpYWJsZSBgc2VudGVuY2UtZW5k JyBpcyBhIHJlZ3VsYXIgZXhwcmVzc2lvbiB0aGF0IG1hdGNoZXMgZW5kcyBvZgogc2VudGVuY2Vz LiAgQWxzbywgZXZlcnkgcGFyYWdyYXBoIGJvdW5kYXJ5IHRlcm1pbmF0ZXMgc2VudGVuY2VzIGFz IHdlbGwuIgpAQCAtNDgzLDM3ICs0ODUsNDYgQEAgZm9yd2FyZC1zZW50ZW5jZQogICAgICAgKHNl dHEgYXJnICgxLSBhcmcpKSkKICAgICAoY29uc3RyYWluLXRvLWZpZWxkIG5pbCBvcG9pbnQgdCkp KQogCi0oZGVmdW4gcmVwdW5jdHVhdGUtc2VudGVuY2VzICgpCisoZGVmdW4gcmVwdW5jdHVhdGUt c2VudGVuY2VzICgmb3B0aW9uYWwgbm8tcXVlcnkpCiAgICJQdXQgdHdvIHNwYWNlcyBhdCB0aGUg ZW5kIG9mIHNlbnRlbmNlcyBmcm9tIHBvaW50IHRvIHRoZSBlbmQgb2YgYnVmZmVyLgotSXQgd29y a3MgdXNpbmcgYHF1ZXJ5LXJlcGxhY2UtcmVnZXhwJy4iCitJdCB3b3JrcyB1c2luZyBgcXVlcnkt cmVwbGFjZS1yZWdleHAnLgorSWYgb3B0aW9uYWwgYXJndW1lbnQgTk8tUVVFUlkgaXMgbm9uLW5p bCwgbWFrZSBjaGFuZ2VzIHdpdGhvdXQKK2Fza2luZyBmb3IgY29uZmlybWF0aW9uLiIKICAgKGlu dGVyYWN0aXZlKQotICAocXVlcnktcmVwbGFjZS1yZWdleHAgIlxcKFtdXCInKV0/XFwpXFwoWy4/ IV1cXClcXChbXVwiJyldP1xcKSArIgotCQkJIlxcMVxcMlxcMyAgIikpCisgIChsZXQgKChyZWdl eHAgIlxcKFtdXCInKV0/XFwpXFwoWy4/IV1cXClcXChbXVwiJyldP1xcKSArIikKKyAgICAgICAg KHRvLXN0cmluZyAiXFwxXFwyXFwzICAiKSkKKyAgICAoaWYgbm8tcXVlcnkKKyAgICAgICAgKHdo aWxlIChyZS1zZWFyY2gtZm9yd2FyZCByZWdleHAgbmlsIHQpCisgICAgICAgICAgKHJlcGxhY2Ut bWF0Y2ggdG8tc3RyaW5nKSkKKyAgICAgIChxdWVyeS1yZXBsYWNlLXJlZ2V4cCByZWdleHAgdG8t c3RyaW5nKSkpKQogCiAKIChkZWZ1biBiYWNrd2FyZC1zZW50ZW5jZSAoJm9wdGlvbmFsIGFyZykK LSAgIk1vdmUgYmFja3dhcmQgdG8gc3RhcnQgb2Ygc2VudGVuY2UuICBXaXRoIGFyZywgZG8gaXQg YXJnIHRpbWVzLgotU2VlIGBmb3J3YXJkLXNlbnRlbmNlJyBmb3IgbW9yZSBpbmZvcm1hdGlvbi4i CisgICJNb3ZlIGJhY2t3YXJkIHRvIHN0YXJ0IG9mIHNlbnRlbmNlLgorV2l0aCBBUkcsIGRvIGl0 IEFSRyB0aW1lcy4gIFNlZSBgZm9yd2FyZC1zZW50ZW5jZScgZm9yIG1vcmUKK2luZm9ybWF0aW9u LiIKICAgKGludGVyYWN0aXZlICJecCIpCiAgIChvciBhcmcgKHNldHEgYXJnIDEpKQogICAoZm9y d2FyZC1zZW50ZW5jZSAoLSBhcmcpKSkKIAogKGRlZnVuIGtpbGwtc2VudGVuY2UgKCZvcHRpb25h bCBhcmcpCiAgICJLaWxsIGZyb20gcG9pbnQgdG8gZW5kIG9mIHNlbnRlbmNlLgotV2l0aCBhcmcs IHJlcGVhdDsgbmVnYXRpdmUgYXJnIC1OIG1lYW5zIGtpbGwgYmFjayB0byBOdGggc3RhcnQgb2Yg c2VudGVuY2UuIgorV2l0aCBBUkcsIHJlcGVhdDsgbmVnYXRpdmUgQVJHIC1OIG1lYW5zIGtpbGwg YmFjayB0byBOdGggc3RhcnQgb2YKK3NlbnRlbmNlLiIKICAgKGludGVyYWN0aXZlICJwIikKICAg KGtpbGwtcmVnaW9uIChwb2ludCkgKHByb2duIChmb3J3YXJkLXNlbnRlbmNlIGFyZykgKHBvaW50 KSkpKQogCiAoZGVmdW4gYmFja3dhcmQta2lsbC1zZW50ZW5jZSAoJm9wdGlvbmFsIGFyZykKICAg IktpbGwgYmFjayBmcm9tIHBvaW50IHRvIHN0YXJ0IG9mIHNlbnRlbmNlLgotV2l0aCBhcmcsIHJl cGVhdCwgb3Iga2lsbCBmb3J3YXJkIHRvIE50aCBlbmQgb2Ygc2VudGVuY2UgaWYgbmVnYXRpdmUg YXJnIC1OLiIKK1dpdGggQVJHLCByZXBlYXQsIG9yIGtpbGwgZm9yd2FyZCB0byBOdGggZW5kIG9m IHNlbnRlbmNlIGlmCituZWdhdGl2ZSBBUkcgLU4uIgogICAoaW50ZXJhY3RpdmUgInAiKQogICAo a2lsbC1yZWdpb24gKHBvaW50KSAocHJvZ24gKGJhY2t3YXJkLXNlbnRlbmNlIGFyZykgKHBvaW50 KSkpKQogCiAoZGVmdW4gbWFyay1lbmQtb2Ytc2VudGVuY2UgKGFyZykKLSAgIlB1dCBtYXJrIGF0 IGVuZCBvZiBzZW50ZW5jZS4gIEFyZyB3b3JrcyBhcyBpbiBgZm9yd2FyZC1zZW50ZW5jZScuCi1J ZiB0aGlzIGNvbW1hbmQgaXMgcmVwZWF0ZWQsIGl0IG1hcmtzIHRoZSBuZXh0IEFSRyBzZW50ZW5j ZXMgYWZ0ZXIgdGhlCi1vbmVzIGFscmVhZHkgbWFya2VkLiIKKyAgIlB1dCBtYXJrIGF0IGVuZCBv ZiBzZW50ZW5jZS4KK0FSRyB3b3JrcyBhcyBpbiBgZm9yd2FyZC1zZW50ZW5jZScuICBJZiB0aGlz IGNvbW1hbmQgaXMgcmVwZWF0ZWQsCitpdCBtYXJrcyB0aGUgbmV4dCBBUkcgc2VudGVuY2VzIGFm dGVyIHRoZSBvbmVzIGFscmVhZHkgbWFya2VkLiIKICAgKGludGVyYWN0aXZlICJwIikKICAgKHB1 c2gtbWFyawogICAgKHNhdmUtZXhjdXJzaW9uCmRpZmYgLS1naXQgYS90ZXN0L2xpc3AvdGV4dG1v ZGVzL3BhcmFncmFwaHMtdGVzdHMuZWwgYi90ZXN0L2xpc3AvdGV4dG1vZGVzL3BhcmFncmFwaHMt dGVzdHMuZWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMC4uNTc3Mjc1Njc0 MAotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3QvbGlzcC90ZXh0bW9kZXMvcGFyYWdyYXBocy10ZXN0 cy5lbApAQCAtMCwwICsxLDE2NSBAQAorOzs7IHBhcmFncmFwaHMtdGVzdHMuZWwgLS0tIFRlc3Rz IGZvciBwYXJhZ3JhcGhzLmVsICAtKi0gbGV4aWNhbC1iaW5kaW5nOiB0OyAtKi0KKworOzsgQ29w eXJpZ2h0IChDKSAyMDE5IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorCis7OyBBdXRo b3I6IFN0ZWZhbiBLYW5nYXMgPHN0ZWZhbmthbmdhc0BnbWFpbC5jb20+CisKKzs7IFRoaXMgZmls ZSBpcyBwYXJ0IG9mIEdOVSBFbWFjcy4KKworOzsgR05VIEVtYWNzIGlzIGZyZWUgc29mdHdhcmU6 IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKzs7IGl0IHVuZGVyIHRoZSB0 ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5Cis7 OyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBM aWNlbnNlLCBvcgorOzsgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KKworOzsg R05VIEVtYWNzIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2Vm dWwsCis7OyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGll ZCB3YXJyYW50eSBvZgorOzsgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElD VUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorOzsgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9y IG1vcmUgZGV0YWlscy4KKworOzsgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0 aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKzs7IGFsb25nIHdpdGggR05VIEVtYWNzLiAg SWYgbm90LCBzZWUgPGh0dHBzOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KKworOzs7IENvbW1l bnRhcnk6CisKKzs7OyBDb2RlOgorCisocmVxdWlyZSAnZXJ0KQorOzsgKHJlcXVpcmUgJ3BhcmFn cmFwaHMpIDsgbG9hZGVkIGJ5IGRlZmF1bHQKKworKGVydC1kZWZ0ZXN0IHBhcmFncmFwaHMtdGVz dHMtc2VudGVuY2UtZW5kICgpCisgIChzaG91bGQgKD4gKGxlbmd0aCAoc2VudGVuY2UtZW5kKSkg MCkpCisgIChsZXQgKChzZW50ZW5jZS1lbmQgIm92ZXJyaWRlIHdvcmtzIikpCisgICAgKHNob3Vs ZCAoZXF1YWwgKHNlbnRlbmNlLWVuZCkgc2VudGVuY2UtZW5kKSkpKQorCisoZXJ0LWRlZnRlc3Qg cGFyYWdyYXBocy10ZXN0cy1mb3J3YXJkLWJhY2t3YXJkLXBhcmFncmFwaCAoKQorICAod2l0aC10 ZW1wLWJ1ZmZlcgorICAgIChpbnNlcnQgIkFBXG5BQVxuXG5CQlxuQkJcbiIpCisgICAgKGdvdG8t Y2hhciAocG9pbnQtbWluKSkKKyAgICAoZm9yd2FyZC1wYXJhZ3JhcGgpCisgICAgKHNob3VsZCAo ZXF1YWwgKHBvaW50KSA3KSkKKyAgICAoZm9yd2FyZC1wYXJhZ3JhcGgpCisgICAgKHNob3VsZCAo ZXF1YWwgKHBvaW50KSAxNCkpCisgICAgKGJhY2t3YXJkLXBhcmFncmFwaCkKKyAgICAoc2hvdWxk IChlcXVhbCAocG9pbnQpIDcpKQorICAgIChiYWNrd2FyZC1wYXJhZ3JhcGgpCisgICAgKHNob3Vs ZCAoZXF1YWwgKHBvaW50KSAocG9pbnQtbWluKSkpKSkKKworKGVydC1kZWZ0ZXN0IHBhcmFncmFw aHMtdGVzdHMtbWFyay1wYXJhZ3JhcGggKCkKKyAgKHdpdGgtdGVtcC1idWZmZXIKKyAgICAoaW5z ZXJ0ICJBQVxuQUFcblxuQkJcbkJCXG4iKQorICAgIChnb3RvLWNoYXIgKHBvaW50LW1pbikpCisg ICAgKG1hcmstcGFyYWdyYXBoKQorICAgIChzaG91bGQgbWFyay1hY3RpdmUpCisgICAgKHNob3Vs ZCAoZXF1YWwgKG1hcmspIDcpKSkKKyAgKHNob3VsZC1lcnJvciAobWFyay1wYXJhZ3JhcGggMCkp KQorCisoZXJ0LWRlZnRlc3QgcGFyYWdyYXBocy10ZXN0cy1raWxsLXBhcmFncmFwaCAoKQorICAo d2l0aC10ZW1wLWJ1ZmZlcgorICAgIChpbnNlcnQgIkFBXG5BQVxuXG5CQlxuQkJcbiIpCisgICAg KGdvdG8tY2hhciAocG9pbnQtbWluKSkKKyAgICAoa2lsbC1wYXJhZ3JhcGggbmlsKQorICAgIChz aG91bGQgKGVxdWFsIChidWZmZXItc3RyaW5nKSAiXG5CQlxuQkJcbiIpKSkpCisKKyhlcnQtZGVm dGVzdCBwYXJhZ3JhcGhzLXRlc3RzLWJhY2t3YXJkLWtpbGwtcGFyYWdyYXBoICgpCisgICh3aXRo LXRlbXAtYnVmZmVyCisgICAgKGluc2VydCAiQUFcbkFBXG5cbkJCXG5CQlxuIikKKyAgICAoZ290 by1jaGFyIDcpCisgICAgKGJhY2t3YXJkLWtpbGwtcGFyYWdyYXBoIG5pbCkKKyAgICAoc2hvdWxk IChlcXVhbCAoYnVmZmVyLXN0cmluZykgIlxuQkJcbkJCXG4iKSkpKQorCisoZXJ0LWRlZnRlc3Qg cGFyYWdyYXBocy10ZXN0cy10cmFuc3Bvc2UtcGFyYWdyYXBocyAoKQorICAod2l0aC10ZW1wLWJ1 ZmZlcgorICAgIChpbnNlcnQgIkFBXG5BQVxuXG5CQlxuQkJcbiIpCisgICAgKGdvdG8tY2hhciAo cG9pbnQtbWluKSkKKyAgICAodHJhbnNwb3NlLXBhcmFncmFwaHMgMSkKKyAgICAoc2hvdWxkIChl cXVhbCAoYnVmZmVyLXN0cmluZykgIlxuQkJcbkJCXG5BQVxuQUFcbiIpKSkpCisKKyhlcnQtZGVm dGVzdCBwYXJhZ3JhcGhzLXRlc3RzLXN0YXJ0LW9mLXBhcmFncmFwaC10ZXh0ICgpCisgICh3aXRo LXRlbXAtYnVmZmVyCisgICAgKGluc2VydCAiQUFcbkFBXG5cbkJCXG5CQlxuIikKKyAgICAoZ290 by1jaGFyIChwb2ludC1tYXgpKQorICAgIChzdGFydC1vZi1wYXJhZ3JhcGgtdGV4dCkKKyAgICAo c2hvdWxkIChlcXVhbCAocG9pbnQpIDgpKSkpCisKKyhlcnQtZGVmdGVzdCBwYXJhZ3JhcGhzLXRl c3RzLWVuZC1vZi1wYXJhZ3JhcGgtdGV4dCAoKQorICAod2l0aC10ZW1wLWJ1ZmZlcgorICAgIChp bnNlcnQgIkFBXG5BQVxuXG5CQlxuQkJcbiIpCisgICAgKGdvdG8tY2hhciAocG9pbnQtbWluKSkK KyAgICAoZW5kLW9mLXBhcmFncmFwaC10ZXh0KQorICAgIChzaG91bGQgKGVxdWFsIChwb2ludCkg NikpKSkKKworKGVydC1kZWZ0ZXN0IHBhcmFncmFwaHMtdGVzdHMtZm9yd2FyZC1zZW50ZW5jZSAo KQorICAod2l0aC10ZW1wLWJ1ZmZlcgorICAgIChpbnNlcnQgIkZpcnN0IHNlbnRlbmNlLiAgU2Vj b25kIHNlbnRlbmNlLiIpCisgICAgKGdvdG8tY2hhciAocG9pbnQtbWluKSkKKyAgICAoZm9yd2Fy ZC1zZW50ZW5jZSkKKyAgICAoc2hvdWxkIChlcXVhbCAocG9pbnQpIDE2KSkKKyAgICAoZ290by1j aGFyIChwb2ludC1taW4pKQorICAgIChmb3J3YXJkLXNlbnRlbmNlIDIpCisgICAgKHNob3VsZCAo ZXF1YWwgKHBvaW50KSAzNCkpKSkKKworKGVydC1kZWZ0ZXN0IHBhcmFncmFwaHMtdGVzdHMtcmVw dW5jdHVhdGUtc2VudGVuY2VzICgpCisgICh3aXRoLXRlbXAtYnVmZmVyCisgICAgKGluc2VydCAi SnVzdC4gU29tZS4gU2VudGVuY2VzLiIpCisgICAgKGdvdG8tY2hhciAocG9pbnQtbWluKSkKKyAg ICAocmVwdW5jdHVhdGUtc2VudGVuY2VzIHQpCisgICAgKHNob3VsZCAoZXF1YWwgKGJ1ZmZlci1z dHJpbmcpICJKdXN0LiAgU29tZS4gIFNlbnRlbmNlcy4iKSkpKQorCisoZXJ0LWRlZnRlc3QgcGFy YWdyYXBocy10ZXN0cy1iYWNrd2FyZC1zZW50ZW5jZSAoKQorICAod2l0aC10ZW1wLWJ1ZmZlcgor ICAgIChpbnNlcnQgIkZpcnN0IHNlbnRlbmNlLiAgU2Vjb25kIHNlbnRlbmNlLiIpCisgICAgKGdv dG8tY2hhciAocG9pbnQtbWF4KSkKKyAgICAoYmFja3dhcmQtc2VudGVuY2UpCisgICAgKHNob3Vs ZCAoZXF1YWwgKHBvaW50KSAxOCkpKSkKKworKGVydC1kZWZ0ZXN0IHBhcmFncmFwaHMtdGVzdHMt a2lsbC1zZW50ZW5jZSAoKQorICAod2l0aC10ZW1wLWJ1ZmZlcgorICAgIChpbnNlcnQgIkZpcnN0 IHNlbnRlbmNlLiAgU2Vjb25kIHNlbnRlbmNlLiIpCisgICAgKGdvdG8tY2hhciAocG9pbnQtbWlu KSkKKyAgICAoa2lsbC1zZW50ZW5jZSkKKyAgICAoc2hvdWxkIChlcXVhbCAoYnVmZmVyLXN0cmlu ZykgIiAgU2Vjb25kIHNlbnRlbmNlLiIpKSkpCisKKyhlcnQtZGVmdGVzdCBwYXJhZ3JhcGhzLXRl c3RzLWJhY2t3YXJkLWtpbGwtc2VudGVuY2UgKCkKKyAgKHdpdGgtdGVtcC1idWZmZXIKKyAgICAo aW5zZXJ0ICJTaG91bGQgbm90IGJlIGtpbGxlZC4gIFNob3VsZCBiZSBraWxsZWQuIikKKyAgICAo Z290by1jaGFyIChwb2ludC1tYXgpKQorICAgIChiYWNrd2FyZC1raWxsLXNlbnRlbmNlKQorICAg IChzaG91bGQgKGVxdWFsIChidWZmZXItc3RyaW5nKSAiU2hvdWxkIG5vdCBiZSBraWxsZWQuICAi KSkpKQorCisoZXJ0LWRlZnRlc3QgcGFyYWdyYXBocy10ZXN0cy1tYXJrLWVuZC1vZi1zZW50ZW5j ZSAoKQorICAod2l0aC10ZW1wLWJ1ZmZlcgorICAgIChpbnNlcnQgIkV4YW1wbGUgc2VudGVuY2Uu ICBGb2xsb3dlZCBieSBhbm90aGVyIG9uZS4iKQorICAgIChnb3RvLWNoYXIgKHBvaW50LW1pbikp CisgICAgKG1hcmstZW5kLW9mLXNlbnRlbmNlIDEpCisgICAgKHNob3VsZCBtYXJrLWFjdGl2ZSkK KyAgICAoc2hvdWxkIChlcXVhbCAobWFyaykgMTgpKSkKKyAgKHdpdGgtdGVtcC1idWZmZXIKKyAg ICAoaW5zZXJ0ICJFeGFtcGxlIHNlbnRlbmNlLiAgRm9sbG93ZWQgYnkgYW5vdGhlciBvbmUuIikK KyAgICAoZ290by1jaGFyIChwb2ludC1taW4pKQorICAgIChtYXJrLWVuZC1vZi1zZW50ZW5jZSAy KQorICAgIChzaG91bGQgbWFyay1hY3RpdmUpCisgICAgKHNob3VsZCAoZXF1YWwgKG1hcmspIDQ0 KSkpCisgIDs7IEZJWE1FOiBUaGlzIGRvZXMgbm90IHdvcmsgLS0gaG93IGRvIEkgZG8gaXQ/Cisg ICh3aXRoLXRlbXAtYnVmZmVyIDsgdGVzdCByZXBlYXRpbmcgdGhlIGNvbW1hbmQKKyAgICAoaW5z ZXJ0ICJFeGFtcGxlIHNlbnRlbmNlLiAgRm9sbG93ZWQgYnkgYW5vdGhlciBvbmUuIikKKyAgICAo Z290by1jaGFyIChwb2ludC1taW4pKQorICAgIChtYXJrLWVuZC1vZi1zZW50ZW5jZSAxKQorICAg IChzZXRxIGxhc3QtY29tbWFuZCAnbWFyay1lbmQtb2Ytc2VudGVuY2UpIDsgaGFjaworICAgICht YXJrLWVuZC1vZi1zZW50ZW5jZSAxKQorICAgIChzaG91bGQgbWFyay1hY3RpdmUpCisgICAgKHNo b3VsZCAoZXF1YWwgKG1hcmspIDE4KSkpKQorCisoZXJ0LWRlZnRlc3QgcGFyYWdyYXBocy10ZXN0 cy10cmFuc3Bvc2Utc2VudGVuY2VzICgpCisgICh3aXRoLXRlbXAtYnVmZmVyCisgICAgKGluc2Vy dCAiRmlyc3Qgc2VudGVuY2UuICBTZWNvbmQgc2VudGVuY2UuICBUaGlyZCBzZW50ZW5jZS4iKQor ICAgIChnb3RvLWNoYXIgKHBvaW50LW1pbikpCisgICAgKHRyYW5zcG9zZS1zZW50ZW5jZXMgMSkK KyAgICAoc2hvdWxkIChlcXVhbCAoYnVmZmVyLXN0cmluZykKKyAgICAgICAgICAgICAgICAgICAi U2Vjb25kIHNlbnRlbmNlLiAgRmlyc3Qgc2VudGVuY2UuICBUaGlyZCBzZW50ZW5jZS4iKSkKKyAg ICAoZ290by1jaGFyIChwb2ludC1taW4pKQorICAgICh0cmFuc3Bvc2Utc2VudGVuY2VzIDIpCisg ICAgKHNob3VsZCAoZXF1YWwgKGJ1ZmZlci1zdHJpbmcpCisgICAgICAgICAgICAgICAgICAgIkZp cnN0IHNlbnRlbmNlLiAgVGhpcmQgc2VudGVuY2UuICBTZWNvbmQgc2VudGVuY2UuIikpKSkKKwor KHByb3ZpZGUgJ3BhcmFncmFwaHMtdGVzdHMpCis7OzsgcGFyYWdyYXBocy10ZXN0cy5lbCBlbmRz IGhlcmUKLS0gCjIuMTEuMAoK --0000000000009d0acb058a1fcc76--