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.devel Subject: [PATCH] Use lexical-binding in timezone.el and add tests Date: Mon, 27 May 2019 23:15:11 +0200 Message-ID: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="000000000000dbb8bb0589e50b58" Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="54523"; mail-complaints-to="usenet@blaine.gmane.org" To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon May 27 23:16:43 2019 Return-path: Envelope-to: ged-emacs-devel@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 1hVMz5-000E3k-BW for ged-emacs-devel@m.gmane.org; Mon, 27 May 2019 23:16:43 +0200 Original-Received: from localhost ([127.0.0.1]:51075 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hVMz4-0003nk-7v for ged-emacs-devel@m.gmane.org; Mon, 27 May 2019 17:16:42 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:37750) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1hVMyD-0003lT-Gh for emacs-devel@gnu.org; Mon, 27 May 2019 17:15:52 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1hVMy2-0000Vz-DK for emacs-devel@gnu.org; Mon, 27 May 2019 17:15:41 -0400 Original-Received: from mail-wr1-f53.google.com ([209.85.221.53]:35977) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1hVMy1-0000Oo-LA for emacs-devel@gnu.org; Mon, 27 May 2019 17:15:38 -0400 Original-Received: by mail-wr1-f53.google.com with SMTP id s17so18022019wru.3 for ; Mon, 27 May 2019 14:15:24 -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=tJ6mRcgldQDN8gFTXQxZD5TAeqpxCFkwbjujtoT8Bm4=; b=iEiIEDwe8zlu6mjn9Ik6jAcgqfwo+RI9vepCyQb+jmSRnFM52HOF8+culYdoWSOjy9 7RABmF52by1SN3hftoGFRgb7LIwYTPqo+7EJ9NCbGlp2QZjHbhcnu/NKlUBxf9E1wbLX KSEdkKHnu+RXPiyynn8B7B0scswVyyt91K4IBljx4qFsGmUJawWCGjvtxdNuxu8ZEwRe SUa+7iGMmg+lmYTCj6H+6VjDnOu8FQtMdhExW7/sfipOCHN1Qe7Qc4V1gJqMYk3ayHdK SUdgmebPqK9zwTTBxBXA3j4oSHgmvQNeS0m15i2WeXZmJSXFbwzzU0URexZ5BT6MPmdV hnWQ== X-Gm-Message-State: APjAAAWLM/d43ghxBiye+unTWuz5/SnGWYjdCr/CThgkMX1fOEBy6jQV hFmFeyqx0ysIL54Xk46YD8Ef7jIis+f7zUn1sET5FuE9 X-Google-Smtp-Source: APXvYqwVP2DHgL6JHa4p0dy5zQZG0UMeqcidKb5yQ/lo+epQlV/iyfdgA+luMjsqYce+0JREeQaA9wKJSHfIkr/bFxs= X-Received: by 2002:adf:e482:: with SMTP id i2mr5620575wrm.85.1558991723007; Mon, 27 May 2019 14:15:23 -0700 (PDT) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.85.221.53 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:237061 Archived-At: --000000000000dbb8bb0589e50b58 Content-Type: text/plain; charset="UTF-8" I've written unit tests and added the lexical-binding header to timezone.el. Please let me know if you have any comments. Thanks, Stefan Kangas --000000000000dbb8bb0589e50b58 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-Use-lexical-binding-in-timezone.el-and-add-tests.patch" Content-Disposition: attachment; filename="0001-Use-lexical-binding-in-timezone.el-and-add-tests.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_jw6vdow40 RnJvbSBiMDAxNjY2ODg2NDQ5MzY4ZTFjZjgwMWJjMDA4MzZjNTNmMTMxODY2IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBTdGVmYW4gS2FuZ2FzIDxzdGVmYW5rYW5nYXNAZ21haWwuY29t PgpEYXRlOiBTdW4sIDI2IE1heSAyMDE5IDEyOjUzOjU1ICswMjAwClN1YmplY3Q6IFtQQVRDSF0g VXNlIGxleGljYWwtYmluZGluZyBpbiB0aW1lem9uZS5lbCBhbmQgYWRkIHRlc3RzCgoqIGxpc3Av dGltZXpvbmUuZWw6IFVzZSBsZXhpY2FsLWJpbmRpbmcuCiogdGVzdC9saXNwL3RpbWV6b25lLXRl c3RzLmVsOiBOZXcgZmlsZS4KLS0tCiBsaXNwL3RpbWV6b25lLmVsICAgICAgICAgICAgfCAgIDgg Ky0tCiB0ZXN0L2xpc3AvdGltZXpvbmUtdGVzdHMuZWwgfCAxNjkgKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysKIDIgZmlsZXMgY2hhbmdlZCwgMTcyIGluc2VydGlv bnMoKyksIDUgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgdGVzdC9saXNwL3RpbWV6 b25lLXRlc3RzLmVsCgpkaWZmIC0tZ2l0IGEvbGlzcC90aW1lem9uZS5lbCBiL2xpc3AvdGltZXpv bmUuZWwKaW5kZXggNzk3MjBiNDJlYy4uZmYwYjI2NjI0NSAxMDA2NDQKLS0tIGEvbGlzcC90aW1l em9uZS5lbAorKysgYi9saXNwL3RpbWV6b25lLmVsCkBAIC0xLDQgKzEsNCBAQAotOzs7IHRpbWV6 b25lLmVsIC0tLSB0aW1lIHpvbmUgcGFja2FnZSBmb3IgR05VIEVtYWNzCis7OzsgdGltZXpvbmUu ZWwgLS0tIHRpbWUgem9uZSBwYWNrYWdlIGZvciBHTlUgRW1hY3MgIC0tIGxleGljYWwtYmluZGlu ZzogdCAtKi0KIAogOzsgQ29weXJpZ2h0IChDKSAxOTkwLTE5OTMsIDE5OTYsIDE5OTksIDIwMDEt MjAxOSBGcmVlIFNvZnR3YXJlCiA7OyBGb3VuZGF0aW9uLCBJbmMuCkBAIC03Miw4ICs3Miw3IEBA IHRpbWV6b25lLW1ha2UtZGF0ZS1hcnBhLXN0YW5kYXJkCiAgICAgKHRpbWV6b25lLW1ha2UtYXJw YS1kYXRlIChhcmVmIG5ldyAwKSAoYXJlZiBuZXcgMSkgKGFyZWYgbmV3IDIpCiAJCQkgICAgICh0 aW1lem9uZS1tYWtlLXRpbWUtc3RyaW5nCiAJCQkgICAgICAoYXJlZiBuZXcgMykgKGFyZWYgbmV3 IDQpIChhcmVmIG5ldyA1KSkKLQkJCSAgICAgKGFyZWYgbmV3IDYpKQotICAgICkpCisJCQkgICAg IChhcmVmIG5ldyA2KSkpKQogCiAoZGVmdW4gdGltZXpvbmUtbWFrZS1kYXRlLXNvcnRhYmxlIChk YXRlICZvcHRpb25hbCBsb2NhbCB0aW1lem9uZSkKICAgIkNvbnZlcnQgREFURSB0byBhIHNvcnRh YmxlIGRhdGUgc3RyaW5nLgpAQCAtODQsOCArODMsNyBAQCB0aW1lem9uZS1tYWtlLWRhdGUtc29y dGFibGUKICAgKGxldCAoKG5ldyAodGltZXpvbmUtZml4LXRpbWUgZGF0ZSBsb2NhbCB0aW1lem9u ZSkpKQogICAgICh0aW1lem9uZS1tYWtlLXNvcnRhYmxlLWRhdGUgKGFyZWYgbmV3IDApIChhcmVm IG5ldyAxKSAoYXJlZiBuZXcgMikKIAkJCQkgKHRpbWV6b25lLW1ha2UtdGltZS1zdHJpbmcKLQkJ CQkgIChhcmVmIG5ldyAzKSAoYXJlZiBuZXcgNCkgKGFyZWYgbmV3IDUpKSkKLSAgICApKQorCQkJ CSAgKGFyZWYgbmV3IDMpIChhcmVmIG5ldyA0KSAoYXJlZiBuZXcgNSkpKSkpCiAKIAwKIDs7CmRp ZmYgLS1naXQgYS90ZXN0L2xpc3AvdGltZXpvbmUtdGVzdHMuZWwgYi90ZXN0L2xpc3AvdGltZXpv bmUtdGVzdHMuZWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMC4uNGI1ZjU2 MTdlYwotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3QvbGlzcC90aW1lem9uZS10ZXN0cy5lbApAQCAt MCwwICsxLDE2OSBAQAorOzs7IHRpbWV6b25lLXRlc3RzLmVsIC0tLSBUZXN0cyBmb3IgdGltZXpv bmUuZWwgIC0qLSBsZXhpY2FsLWJpbmRpbmc6IHQ7IC0qLQorCis7OyBDb3B5cmlnaHQgKEMpIDIw MTkgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJbmMuCisKKzs7IEF1dGhvcjogU3RlZmFuIEth bmdhcyA8c3RlZmFua2FuZ2FzQGdtYWlsLmNvbT4KKworOzsgVGhpcyBmaWxlIGlzIHBhcnQgb2Yg R05VIEVtYWNzLgorCis7OyBHTlUgRW1hY3MgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRp c3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorOzsgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBH TlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKzs7IHRoZSBGcmVlIFNv ZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCis7 OyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorCis7OyBHTlUgRW1hY3MgaXMg ZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKzs7IGJ1dCBX SVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9m Cis7OyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0Uu ICBTZWUgdGhlCis7OyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxz LgorCis7OyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJh bCBQdWJsaWMgTGljZW5zZQorOzsgYWxvbmcgd2l0aCBHTlUgRW1hY3MuICBJZiBub3QsIHNlZSA8 aHR0cHM6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCis7OzsgQ29tbWVudGFyeToKKworKHJl cXVpcmUgJ2VydCkKKyhyZXF1aXJlICd0aW1lem9uZSkKKworKGVydC1kZWZ0ZXN0IHRpbWV6b25l LXRlc3RzLW1ha2UtZGF0ZS1hcnBhLXN0YW5kYXJkICgpCisgIChzaG91bGQgKGVxdWFsICh0aW1l em9uZS1tYWtlLWRhdGUtYXJwYS1zdGFuZGFyZCAiMTQgQXByIDg5IDAzOjIwIiAiUFNUIiAiR01U IikKKyAgICAgICAgICAgICAgICAgIjE0IEFwciAxOTg5IDExOjIwOjAwIEdNVCIpKQorICAoc2hv dWxkIChlcXVhbCAodGltZXpvbmUtbWFrZS1kYXRlLWFycGEtc3RhbmRhcmQgIjE0IEFwciA4OSAw MzoyMCIgIkdNVCIgIkdNVCIpCisgICAgICAgICAgICAgICAgICIxNCBBcHIgMTk4OSAwMzoyMDow MCBHTVQiKSkKKyAgKHNob3VsZCAoZXF1YWwgKHRpbWV6b25lLW1ha2UtZGF0ZS1hcnBhLXN0YW5k YXJkICIxNCBBcHIgODkgMDM6MjAiIG5pbCAiR01UIikgOyBhc3N1bWUgR01UCisgICAgICAgICAg ICAgICAgICIxNCBBcHIgMTk4OSAwMzoyMDowMCBHTVQiKSkpCisKKyhlcnQtZGVmdGVzdCB0aW1l em9uZS10ZXN0cy1tYWtlLWRhdGUtc29ydGFibGUgKCkKKyAgKHNob3VsZCAoZXF1YWwgKHRpbWV6 b25lLW1ha2UtZGF0ZS1zb3J0YWJsZSAiMTQgQXByIDg5IDAzOjIwIiAiR01UIiAiR01UIikKKyAg ICAgICAgICAgICAgICAgIjE5ODkwNDE0MDM6MjA6MDAiKSkKKyAgKHNob3VsZCAoZXF1YWwgKHRp bWV6b25lLW1ha2UtZGF0ZS1zb3J0YWJsZSAiMTQgQXByIDg5IDAzOjIwIiBuaWwgIkdNVCIpIDsg YXNzdW1lIEdNVAorICAgICAgICAgICAgICAgICAiMTk4OTA0MTQwMzoyMDowMCIpKSkKKworKGVy dC1kZWZ0ZXN0IHRpbWV6b25lLXRlc3RzLW1ha2UtYXJwYS1kYXRlICgpCisgIChzaG91bGQgKGVx dWFsICh0aW1lem9uZS1tYWtlLWFycGEtZGF0ZSAyMDIwIDEgMSAiMDA6MDAiKQorICAgICAgICAg ICAgICAgICAiMDEgSmFuIDIwMjAgMDA6MDAgKzAwMDAiKSkKKyAgKHNob3VsZCAoZXF1YWwgKHRp bWV6b25lLW1ha2UtYXJwYS1kYXRlIDIwMjAgMSAxICIwMDowMCIgIkdNVCIpCisgICAgICAgICAg ICAgICAgICIwMSBKYW4gMjAyMCAwMDowMCBHTVQiKSkpCisKKyhlcnQtZGVmdGVzdCB0aW1lem9u ZS10ZXN0cy1tYWtlLXNvcnRhYmxlLWRhdGUgKCkKKyAgKHNob3VsZCAoZXF1YWwgKHRpbWV6b25l LW1ha2Utc29ydGFibGUtZGF0ZSAyMDIwIDEgMSAiMDA6MDAiKQorICAgICAgICAgICAgICAgICAi MjAyMDAxMDEwMDowMCIpKSkKKworKGVydC1kZWZ0ZXN0IHRpbWV6b25lLXRlc3RzLW1ha2UtdGlt ZS1zdHJpbmcgKCkKKyAgKHNob3VsZCAoZXF1YWwgKHRpbWV6b25lLW1ha2UtdGltZS1zdHJpbmcg MSAyIDMpICIwMTowMjowMyIpKSkKKworKGVydC1kZWZ0ZXN0IHRpbWV6b25lLXRlc3RzLXBhcnNl LWRhdGUgKCkKKyAgOzsgQWNjZXB0ZWQgc3R5bGUgMSBmcm9tIGRvY3N0cmluZworICAoc2hvdWxk IChlcXVhbCAodGltZXpvbmUtcGFyc2UtZGF0ZSAiMTQgQXByIDg5IDAzOjIwIikKKyAgICAgICAg ICAgICAgICAgWyIxOTg5IiAiNCIgIjE0IiAiMDM6MjAiIG5pbF0pKQorICAoc2hvdWxkIChlcXVh bCAodGltZXpvbmUtcGFyc2UtZGF0ZSAiMTQgQXByIDg5IDAzOjIwIEdNVCIpCisgICAgICAgICAg ICAgICAgIFsiMTk4OSIgIjQiICIxNCIgIjAzOjIwIiAiR01UIl0pKQorICAoc2hvdWxkIChlcXVh bCAodGltZXpvbmUtcGFyc2UtZGF0ZSAiMTQgQXByIDg5IDAzOjIwOjEyIikKKyAgICAgICAgICAg ICAgICAgWyIxOTg5IiAiNCIgIjE0IiAiMDM6MjA6MTIiIG5pbF0pKQorICAoc2hvdWxkIChlcXVh bCAodGltZXpvbmUtcGFyc2UtZGF0ZSAiMTQgQXByIDg5IDAzOjIwOjEyIEdNVCIpCisgICAgICAg ICAgICAgICAgIFsiMTk4OSIgIjQiICIxNCIgIjAzOjIwOjEyIiAiR01UIl0pKQorICA7OyBBY2Nl cHRlZCBzdHlsZSAyIGZyb20gZG9jc3RyaW5nCisgIChzaG91bGQgKGVxdWFsICh0aW1lem9uZS1w YXJzZS1kYXRlICJGcmksIDE3IE1hciA4OSA0OjAxIikKKyAgICAgICAgICAgICAgICAgWyIxOTg5 IiAiMyIgIjE3IiAiNDowMSIgbmlsXSkpCisgIChzaG91bGQgKGVxdWFsICh0aW1lem9uZS1wYXJz ZS1kYXRlICJGcmksIDE3IE1hciA4OSA0OjAxIEdNVCIpCisgICAgICAgICAgICAgICAgIFsiMTk4 OSIgIjMiICIxNyIgIjQ6MDEiICJHTVQiXSkpCisgIChzaG91bGQgKGVxdWFsICh0aW1lem9uZS1w YXJzZS1kYXRlICJGcmksIDE3IE1hciA4OSA0OjAxOjMzIikKKyAgICAgICAgICAgICAgICAgWyIx OTg5IiAiMyIgIjE3IiAiNDowMTozMyIgbmlsXSkpCisgIChzaG91bGQgKGVxdWFsICh0aW1lem9u ZS1wYXJzZS1kYXRlICJGcmksIDE3IE1hciA4OSA0OjAxOjMzIEdNVCIpCisgICAgICAgICAgICAg ICAgIFsiMTk4OSIgIjMiICIxNyIgIjQ6MDE6MzMiICJHTVQiXSkpCisgIDs7IEFjY2VwdGVkIHN0 eWxlIDMgZnJvbSBkb2NzdHJpbmcKKyAgKHNob3VsZCAoZXF1YWwgKHRpbWV6b25lLXBhcnNlLWRh dGUgIk1vbiBKYW4gMTYgMTY6MTIgMTk4OSIpCisgICAgICAgICAgICAgICAgIFsiMTk4OSIgIjEi ICIxNiIgIjE2OjEyIiBuaWxdKSkKKyAgKHNob3VsZCAoZXF1YWwgKHRpbWV6b25lLXBhcnNlLWRh dGUgIk1vbiBKYW4gMTYgMTY6MTIgR01UIDE5ODkiKQorICAgICAgICAgICAgICAgICBbIjE5ODki ICIxIiAiMTYiICIxNjoxMiIgIkdNVCJdKSkKKyAgKHNob3VsZCAoZXF1YWwgKHRpbWV6b25lLXBh cnNlLWRhdGUgIk1vbiBKYW4gMTYgMTY6MTI6MzcgMTk4OSIpCisgICAgICAgICAgICAgICAgIFsi MTk4OSIgIjEiICIxNiIgIjE2OjEyOjM3IiBuaWxdKSkKKyAgKHNob3VsZCAoZXF1YWwgKHRpbWV6 b25lLXBhcnNlLWRhdGUgIk1vbiBKYW4gMTYgMTY6MTI6MzcgR01UIDE5ODkiKQorICAgICAgICAg ICAgICAgICBbIjE5ODkiICIxIiAiMTYiICIxNjoxMjozNyIgIkdNVCJdKSkKKyAgOzsgQWNjZXB0 ZWQgc3R5bGUgNCBmcm9tIGRvY3N0cmluZworICAoc2hvdWxkIChlcXVhbCAodGltZXpvbmUtcGFy c2UtZGF0ZSAiNiBNYXkgMTk5MiAxNjQxLUpTVCAoV2VkbmVzZGF5KSIpCisgICAgICAgICAgICAg ICAgIFsiMTk5MiIgIjUiICI2IiAiMTY0MSIgIi1KU1QiXSkpCisgIDs7IEFjY2VwdGVkIHN0eWxl IDUgZnJvbSBkb2NzdHJpbmcKKyAgKHNob3VsZCAoZXF1YWwgKHRpbWV6b25lLXBhcnNlLWRhdGUg IjIyLUFVRy0xOTkzIDEwOjU5OjEyLjgyIikKKyAgICAgICAgICAgICAgICAgWyIxOTkzIiAiOCIg IjIyIiAiMTA6NTk6MTIiIG5pbF0pKQorICA7OyBBY2NlcHRlZCBzdHlsZSA2IGZyb20gZG9jc3Ry aW5nCisgIChzaG91bGQgKGVxdWFsICh0aW1lem9uZS1wYXJzZS1kYXRlICJUaHUsIDExIEFwciAx NjoxNzoxMiA5MSIpCisgICAgICAgICAgICAgICAgIFsiMTk5MSIgIjQiICIxMSIgIjE2OjE3OjEy IiBuaWxdKSkKKyAgKHNob3VsZCAoZXF1YWwgKHRpbWV6b25lLXBhcnNlLWRhdGUgIlRodSwgMTEg QXByIDE2OjE3OjEyIDkxIE1FVCIpCisgICAgICAgICAgICAgICAgIFsiMTk5MSIgIjQiICIxMSIg IjE2OjE3OjEyIiAiTUVUIl0pKQorICA7OyBBY2NlcHRlZCBzdHlsZSA3IGZyb20gZG9jc3RyaW5n CisgIChzaG91bGQgKGVxdWFsICh0aW1lem9uZS1wYXJzZS1kYXRlICJNb24sIDYgIEp1bCAxNjo0 NzoyMCBUIDE5OTIiKQorICAgICAgICAgICAgICAgICBbIjE5OTIiICI3IiAiNiIgIjE2OjQ3OjIw IiBuaWxdKSkKKyAgKHNob3VsZCAoZXF1YWwgKHRpbWV6b25lLXBhcnNlLWRhdGUgIk1vbiwgNiAg SnVsIDE2OjQ3OjIwIFQgMTk5MiBNRVQiKQorICAgICAgICAgICAgICAgICBbIjE5OTIiICI3IiAi NiIgIjE2OjQ3OjIwIiAiTUVUIl0pKQorICA7OyBBY2NlcHRlZCBzdHlsZSA4IGZyb20gZG9jc3Ry aW5nCisgIChzaG91bGQgKGVxdWFsICh0aW1lem9uZS1wYXJzZS1kYXRlICIxOTk2LTA2LTI0IDIx OjEzIikKKyAgICAgICAgICAgICAgICAgWyIxOTk2IiAiMDYiICIyNCIgIjIxOjEzIiBuaWxdKSkK KyAgKHNob3VsZCAoZXF1YWwgKHRpbWV6b25lLXBhcnNlLWRhdGUgIjE5OTYtMDYtMjQgMjE6MTMg R01UIikKKyAgICAgICAgICAgICAgICAgWyIxOTk2IiAiMDYiICIyNCIgIjIxOjEzIiAiR01UIl0p KQorICAoc2hvdWxkIChlcXVhbCAodGltZXpvbmUtcGFyc2UtZGF0ZSAiMTk5Ni0wNi0yNCAyMTox MzoxMiIpCisgICAgICAgICAgICAgICAgIFsiMTk5NiIgIjA2IiAiMjQiICIyMToxMzoxMiIgbmls XSkpCisgIChzaG91bGQgKGVxdWFsICh0aW1lem9uZS1wYXJzZS1kYXRlICIxOTk2LTA2LTI0IDIx OjEzOjEyIEdNVCIpCisgICAgICAgICAgICAgICAgIFsiMTk5NiIgIjA2IiAiMjQiICIyMToxMzox MiIgIkdNVCJdKSkKKyAgOzsgQWNjZXB0ZWQgc3R5bGUgOSBmcm9tIGRvY3N0cmluZworICAoc2hv dWxkIChlcXVhbCAodGltZXpvbmUtcGFyc2UtZGF0ZSAiMTk5Ni0wNi0yNCAyMToxMy1aT05FIikK KyAgICAgICAgICAgICAgICAgWyIxOTk2IiAiMDYiICIyNCIgIjIxOjEzIiAiLVpPTkUiXSkpCisg IDs7IEFjY2VwdGVkIHN0eWxlIDEwIGZyb20gZG9jc3RyaW5nCisgIChzaG91bGQgKGVxdWFsICh0 aW1lem9uZS1wYXJzZS1kYXRlICIxOTk2MDYyNFQyMTEzMTIiKQorICAgICAgICAgICAgICAgICBb IjE5OTYiICIwNiIgIjI0IiAiMjExMzEyIiBuaWxdKSkKKyAgKHNob3VsZCAoZXF1YWwgKHRpbWV6 b25lLXBhcnNlLWRhdGUgIippbnZhbGlkKiIpIFsiMCIgIjAiICIwIiAiMCIgbmlsXSkpKQorCiso ZXJ0LWRlZnRlc3QgdGltZXpvbmUtdGVzdHMtcGFyc2UtZGF0ZS93aW5kb3dlZC1kYXRlcyAoKQor ICAoc2hvdWxkIChlcXVhbCAodGltZXpvbmUtcGFyc2UtZGF0ZSAiMTQgQXByIDY5IDEwOjAwIikK KyAgICAgICAgICAgICAgICAgWyIxOTY5IiAiNCIgIjE0IiAiMTA6MDAiIG5pbF0pKQorICAoc2hv dWxkIChlcXVhbCAodGltZXpvbmUtcGFyc2UtZGF0ZSAiMTQgQXByIDY4IDEwOjAwIikKKyAgICAg ICAgICAgICAgICAgWyIyMDY4IiAiNCIgIjE0IiAiMTA6MDAiIG5pbF0pKQorICAoc2hvdWxkIChl cXVhbCAodGltZXpvbmUtcGFyc2UtZGF0ZSAiMTQgQXByIDE5OSAxMDowMCIpCisgICAgICAgICAg ICAgICAgIFsiMjA5OSIgIjQiICIxNCIgIjEwOjAwIiBuaWxdKSkpCisKKyhlcnQtZGVmdGVzdCB0 aW1lem9uZS10ZXN0cy1wYXJzZS10aW1lICgpCisgIChzaG91bGQgKGVxdWFsICh0aW1lem9uZS1w YXJzZS10aW1lICIxMjM0IikgICAgICBbIjEyIiAiMzQiICIwIl0pKQorICAoc2hvdWxkIChlcXVh bCAodGltZXpvbmUtcGFyc2UtdGltZSAiMTI6MzQiKSAgICAgWyIxMiIgIjM0IiAiMCJdKSkKKyAg KHNob3VsZCAoZXF1YWwgKHRpbWV6b25lLXBhcnNlLXRpbWUgIjEyMzQ1NiIpICAgIFsiMTIiICIz NCIgIjU2Il0pKQorICAoc2hvdWxkIChlcXVhbCAodGltZXpvbmUtcGFyc2UtdGltZSAiMTI6MzQ6 NTYiKSAgWyIxMiIgIjM0IiAiNTYiXSkpCisgIChzaG91bGQgKGVxdWFsICh0aW1lem9uZS1wYXJz ZS10aW1lICIqaW52YWxpZCoiKSBbIjAiICIwIiAiMCJdKSkpCisKKyhlcnQtZGVmdGVzdCB0aW1l em9uZS10ZXN0cy16b25lLXRvLW1pbnV0ZSAoKQorICAoc2hvdWxkIChlcXVhbCAodGltZXpvbmUt em9uZS10by1taW51dGUgIkdNVCIpIDApKQorICAoc2hvdWxkIChlcXVhbCAodGltZXpvbmUtem9u ZS10by1taW51dGUgIkNEVCIpIC0zMDApKQorICAoc2hvdWxkIChlcXVhbCAodGltZXpvbmUtem9u ZS10by1taW51dGUgIisxMDAiKSA2MCkpCisgIChzaG91bGQgKGVxdWFsICh0aW1lem9uZS16b25l LXRvLW1pbnV0ZSAiLTEwMCIpIC02MCkpCisgIChzaG91bGQgKGVxdWFsICh0aW1lem9uZS16b25l LXRvLW1pbnV0ZSAiKmludmFsaWQqIikgMCkpKQorCisoZXJ0LWRlZnRlc3QgdGltZXpvbmUtdGVz dHMtdGltZS1mcm9tLWFic29sdXRlICgpCisgIChzaG91bGQgKGVxdWFsICh0aW1lem9uZS10aW1l LWZyb20tYWJzb2x1dGUgKCogMjAyMCAzNjUpICA7IEphbiAxIDIwMjAKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgKCogMTIgNjAgNjApKSA7IDEyOjAwCisgICAgICAgICAg ICAgICAgICcoMjM5MTEgNDg3MDQgMCAwKSkpKQorCis7OyBUT0RPOiBXcml0ZSB0ZXN0cyBmb3Ig dGltZXpvbmUtdGVzdHMtdGltZS16b25lLWZyb20tYWJzb2x1dGUsIHdoaWNoIGlzIGEKKzs7ICAg ICAgIGJpdCB0cmlja3kgc2luY2UgdGhlIHJlc3VsdHMgZGVwZW5kIG9uIGBjdXJyZW50LXRpbWUt em9uZScuCisKKyhlcnQtZGVmdGVzdCB0aW1lem9uZS10ZXN0cy1maXgtdGltZSAoKQorICAoc2hv dWxkIChlcXVhbCAodGltZXpvbmUtZml4LXRpbWUgIjIwMjAwNTAxIDIwOjIwIiAiR01UIiAiR01U IikKKyAgICAgICAgICAgICAgICAgWzIwMjAgNSAxIDIwIDIwIDAgIkdNVCJdKSkKKyAgKHNob3Vs ZCAoZXF1YWwgKHRpbWV6b25lLWZpeC10aW1lICIyMDIwMDUwMSAyMDoyMCIgbmlsICJHTVQiKSA7 IGFzc3VtZSBHTVQKKyAgICAgICAgICAgICAgICAgWzIwMjAgNSAxIDIwIDIwIDAgIkdNVCJdKSkp CisKKyhlcnQtZGVmdGVzdCB0aW1lem9uZS10ZXN0cy1sYXN0LWRheS1vZi1tb250aCAoKQorICAo c2hvdWxkIChlcXVhbCAodGltZXpvbmUtbGFzdC1kYXktb2YtbW9udGggMiAxOTk5KSAyOCkpCisg IChzaG91bGQgKGVxdWFsICh0aW1lem9uZS1sYXN0LWRheS1vZi1tb250aCAyIDIwMDApIDI5KSkp IDsgbGVhcCB5ZWFyCisKKyhlcnQtZGVmdGVzdCB0aW1lem9uZS10ZXN0cy1sZWFwLXllYXItcCAo KQorICAoc2hvdWxkIChlcXVhbCAodGltZXpvbmUtbGVhcC15ZWFyLXAgMTk5OSkgbmlsKSkKKyAg KHNob3VsZCAoZXF1YWwgKHRpbWV6b25lLWxlYXAteWVhci1wIDIwMDApIHQpKQorICAoc2hvdWxk IChlcXVhbCAodGltZXpvbmUtbGVhcC15ZWFyLXAgMjAyNCkgdCkpCisgIChzaG91bGQgKGVxdWFs ICh0aW1lem9uZS1sZWFwLXllYXItcCAyMTAwKSBuaWwpKSkKKworKGVydC1kZWZ0ZXN0IHRpbWV6 b25lLXRlc3RzLWRheS1udW1iZXIgKCkKKyAgKHNob3VsZCAoZXF1YWwgKHRpbWV6b25lLWRheS1u dW1iZXIgNSAxIDE5OTkpIDEyMSkpCisgIChzaG91bGQgKGVxdWFsICh0aW1lem9uZS1kYXktbnVt YmVyIDUgMSAyMDAwKSAxMjIpKSkgOyBsZWFwIHllYXIKKworKGVydC1kZWZ0ZXN0IHRpbWV6b25l LXRlc3RzLWFic29sdXRlLWZyb20tZ3JlZ29yaWFuICgpCisgIChzaG91bGQgKGVxdWFsICh0aW1l em9uZS1hYnNvbHV0ZS1mcm9tLWdyZWdvcmlhbiAxIDEgMjAyMCkgNzM3NDI1KSkpCisKKyhwcm92 aWRlICd0aW1lem9uZS10ZXN0cykKKzs7OyB0aW1lem9uZS10ZXN0cy5lbCBlbmRzIGhlcmUKLS0g CjIuMTEuMAoK --000000000000dbb8bb0589e50b58--