From mboxrd@z Thu Jan 1 00:00:00 1970 From: eric@dvorsak.fr Subject: Re: [PATCH] gnu: python-2: update to 2.7.10. Date: Mon, 03 Aug 2015 00:56:07 +0200 Message-ID: References: <20150731180512.GA9619@debian> <87d1z5mpl0.fsf@netris.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=_6036a08c4168bd55fdbdd64c67d305c0" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:54745) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZM2Ax-0003VV-CX for guix-devel@gnu.org; Sun, 02 Aug 2015 18:56:17 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZM2Au-0001eR-2c for guix-devel@gnu.org; Sun, 02 Aug 2015 18:56:15 -0400 Received: from 11.mo7.mail-out.ovh.net ([87.98.173.157]:33949) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZM2At-0001eC-MG for guix-devel@gnu.org; Sun, 02 Aug 2015 18:56:12 -0400 Received: from mail395.ha.ovh.net (b9.ovh.net [213.186.33.59]) by mo7.mail-out.ovh.net (Postfix) with ESMTP id 34D38FF80CE for ; Mon, 3 Aug 2015 00:56:08 +0200 (CEST) Received: from RCM-89.92.25.224 (localhost [127.0.0.1]) by mail395.ha.ovh.net (Postfix) with ESMTPA id ED7222C0061 for ; Mon, 3 Aug 2015 00:56:07 +0200 (CEST) In-Reply-To: <87d1z5mpl0.fsf@netris.org> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: guix-devel@gnu.org --=_6036a08c4168bd55fdbdd64c67d305c0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII; format=flowed Hi Mark, Thank you very much for the detailed review. On 02.08.2015 21:56, Mark H Weaver wrote: > Hi Eric, > > First, I notice that your mail client added > "guix-devel-bounces+eric=dvorsak.fr@gnu.org" to the CC list. That's > the > "envelope sender" of the emails you receive from this email list, and > it's used to detect bounces in case the mail is not successfully > delivered to you. If you send email to it more than a few times, our > mailman software might conclude that your email address is broken and > disable deliveries to you. To make matters worse, anyone who "replies > to all" to your email will by default include that address. > > Your mail client is buggy, and should be fixed somehow. When you > "Reply > to all" (or similar), it should *not* include the envelope sender. > Maybe you could report the problem to its author, or switch clients? > It's the webclient (roundcube) from my mail provider (OVH). I am a bit surprised that it is buggy and I will switch for an Emacs client really soon, I just need to choose and configure it first. > Anyway, moving on to your patch... > > eric@dvorsak.fr writes: >> I updated the package to 2.7.10. This patch should be added to Hydra >> in a branch first to see if the 500 dependencies are still building >> properly. > > Your patch looks good except for three issues: > > * it needs a proper commit log conforming to our conventions I used your commit log below, I couldn't find anything else to add and I will try to be more cautious next time. > * it needs proper indentation I hope I nailed the big comment because I wasn't sure I got your instructions right. Emacs "M-q" command was breaking it, that's why I did not use it there and failed the alignment. > * you should add a copyright line for yourself to the top of python.scm It's already there from a previous patch. Eric > > See below for more details. > >> Altough the tests are still failing, I ran them after the build failed >> with : >> >> guix build -K >> cd tmp/nix-build-* >> env -i $(which bash) >> source environment-variables >> >> And they all passed except for some skips and a module that failed >> trying to write to a dir without permissions. > > Okay, I guess the tests fail because of something missing from the > isolated build environment. This is a longstanding problem unaffected > by this patch. > >> From 1ffc21f29ce255a1d3f613cb42532a0233f03b60 Mon Sep 17 00:00:00 2001 >> From: Eric Dvorsak >> Date: Sun, 2 Aug 2015 19:27:24 +0200 >> Subject: [PATCH] gnu: python-2: update to 2.7.10. Remove patches added >> to >> upstream > > This needs a proper commit log that lists the changes made to each > file, > conforming to our conventions. See our existing git commits for > examples. In this case, it should look something like this: > > --8<---------------cut here---------------start------------->8--- > gnu: python-2: Update to 2.7.10. > > * gnu/packages/patches/python2-sqlite-3.8.4-test-fix.patch, > gnu/packages/patches/python-libffi-mips-n32-fix.patch: Remove files. > * gnu-system.am (dist_patch_DATA): Remove them. > * gnu/packages/python.scm (python-2): Update to 2.7.10. Remove > patches. > Update comment showing test failures. > --8<---------------cut here---------------end--------------->8--- > >> diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm >> index 4c13316..4e08fc9 100644 >> --- a/gnu/packages/python.scm >> +++ b/gnu/packages/python.scm > > Please add a copyright line for yourself to the top of this file. > >> @@ -74,63 +74,55 @@ >> (define-public python-2 >> (package >> (name "python") >> - (version "2.7.6") >> + (version "2.7.10") >> (source >> (origin >> (method url-fetch) >> (uri (string-append "https://www.python.org/ftp/python/" >> version "/Python-" version ".tar.xz")) >> - (patches (list (search-patch >> "python-libffi-mips-n32-fix.patch") >> - (search-patch >> "python2-sqlite-3.8.4-test-fix.patch"))) >> - (patch-flags '("-p0")) >> (sha256 >> (base32 >> - "18gnpyh071dxa0rv3silrz92jw9qpblswzwv4gzqcwxzz20qxmhz")))) >> + "1h7zbrf9pkj29hlm18b10548ch9757f75m64l47sy75rh43p7lqw")))) > > The open quote should be below the "b", as it was before. > >> (build-system gnu-build-system) >> (arguments >> `(#:tests? #f >> -;; 258 tests OK. >> -;; 103 tests failed: >> -;; test_bz2 test_distutils test_file test_file2k test_popen2 >> -;; test_shutil test_signal test_site test_slice test_smtplib >> -;; test_smtpnet test_socket test_socketserver test_softspace >> -;; test_sort test_sqlite test_ssl test_startfile test_str >> -;; test_strftime test_string test_stringprep test_strop >> test_strptime >> -;; test_strtod test_struct test_structmembers test_structseq >> -;; test_subprocess test_sunaudiodev test_sundry >> test_symtable >> -;; test_syntax test_sys test_sys_setprofile >> test_sys_settrace >> -;; test_sysconfig test_tarfile test_tcl test_telnetlib >> test_tempfile >> -;; test_textwrap test_thread test_threaded_import >> -;; test_threadedtempfile test_threading test_threading_local >> -;; test_threadsignals test_time test_timeout test_tk >> test_tokenize >> -;; test_tools test_trace test_traceback test_transformer >> -;; test_ttk_guionly test_ttk_textonly test_tuple >> test_typechecks >> -;; test_ucn test_unary test_undocumented_details >> test_unicode >> -;; test_unicode_file test_unicodedata test_univnewlines >> -;; test_univnewlines2k test_unpack test_urllib test_urllib2 >> -;; test_urllib2_localnet test_urllib2net test_urllibnet >> test_urlparse >> -;; test_userdict test_userlist test_userstring test_uu >> test_uuid >> -;; test_wait3 test_wait4 test_warnings test_wave >> test_weakref >> -;; test_weakset test_whichdb test_winreg test_winsound >> test_with >> -;; test_wsgiref test_xdrlib test_xml_etree test_xml_etree_c >> -;; test_xmllib test_xmlrpc test_xpickle test_xrange >> test_zipfile >> -;; test_zipfile64 test_zipimport test_zipimport_support >> test_zlib >> -;; 31 tests skipped: >> -;; test_aepack test_al test_applesingle test_ascii_formatd >> test_bsddb >> -;; test_bsddb185 test_bsddb3 test_cd test_cl >> test_codecmaps_cn >> -;; test_codecmaps_hk test_codecmaps_jp test_codecmaps_kr >> -;; test_codecmaps_tw test_ctypes test_curses test_dl >> test_gdb test_gl >> -;; test_imageop test_imgfile test_ioctl test_kqueue >> -;; test_linuxaudiodev test_macos test_macostools test_msilib >> -;; test_multiprocessing test_ossaudiodev test_pep277 >> -;; test_scriptpackages >> -;; 7 skips unexpected on linux2: >> -;; test_ascii_formatd test_bsddb test_bsddb3 test_ctypes >> test_gdb >> -;; test_ioctl test_multiprocessing >> -;; One of the typical errors: >> -;; test_unicode >> -;; test test_unicode crashed -- : >> [Errno 2] No such file or directory > > You removed the three lines above but didn't replace them with > anything analogous. They seem useful. > >> - #:test-target "test" >> + ;; 268 tests OK. >> + ;; 103 tests failed: >> + ;; test_distutils test_shutil test_signal test_site >> test_slice >> + ;; test_smtplib test_smtpnet test_socket test_socketserver >> + ;; test_softspace test_sort test_spwd test_sqlite test_ssl >> + ;; test_startfile test_stat test_str test_strftime >> test_string >> + ;; test_stringprep test_strop test_strptime test_strtod >> test_struct >> + ;; test_structmembers test_structseq test_subprocess >> test_sunau >> + ;; test_sunaudiodev test_sundry test_symtable test_syntax >> test_sys >> + ;; test_sys_setprofile test_sys_settrace test_sysconfig >> test_tarfile >> + ;; test_tcl test_telnetlib test_tempfile test_textwrap >> test_thread >> + ;; test_threaded_import test_threadedtempfile test_threading >> + ;; test_threading_local test_threadsignals test_time >> test_timeit >> + ;; test_timeout test_tk test_tokenize test_tools test_trace >> + ;; test_traceback test_transformer test_ttk_guionly >> test_ttk_textonly >> + ;; test_tuple test_typechecks test_ucn test_unary >> + ;; test_undocumented_details test_unicode test_unicode_file >> + ;; test_unicodedata test_univnewlines test_univnewlines2k >> test_unpack >> + ;; test_urllib test_urllib2 test_urllib2_localnet >> test_urllib2net >> + ;; test_urllibnet test_urlparse test_userdict test_userlist >> + ;; test_userstring test_uu test_uuid test_wait3 test_wait4 >> + ;; test_warnings test_wave test_weakref test_weakset >> test_whichdb >> + ;; test_winreg test_winsound test_with test_wsgiref >> test_xdrlib >> + ;; test_xml_etree test_xml_etree_c test_xmllib test_xmlrpc >> + ;; test_xpickle test_xrange test_zipfile test_zipfile64 >> + ;; test_zipimport test_zipimport_support test_zlib >> + ;; 30 tests skipped: >> + ;; test_aepack test_al test_applesingle test_bsddb >> test_bsddb185 >> + ;; test_bsddb3 test_cd test_cl test_codecmaps_cn >> test_codecmaps_hk >> + ;; test_codecmaps_jp test_codecmaps_kr test_codecmaps_tw >> test_crypt >> + ;; test_curses test_dl test_gdb test_gl test_idle >> test_imageop >> + ;; test_imgfile test_ioctl test_kqueue test_linuxaudiodev >> test_macos >> + ;; test_macostools test_msilib test_nis test_ossaudiodev >> + ;; test_scriptpackages >> + ;; 6 skips unexpected on linux2: >> + ;; test_bsddb test_bsddb3 test_crypt test_gdb test_idle >> test_ioctl >> + #:test-target "test" >> #:configure-flags > > The large comment and the #:test-target line should be aligned with the > existing #:tests? #f and #:configure-flags lines. In other words, two > more spaces are needed before each comment line above, and three more > spaces are needed before #:test-target. > > Can you send an updated patch? > > Thanks! > Mark --=_6036a08c4168bd55fdbdd64c67d305c0 Content-Transfer-Encoding: base64 Content-Type: text/x-diff; name=0001-gnu-python-2-Update-to-2.7.10.patch Content-Disposition: attachment; filename=0001-gnu-python-2-Update-to-2.7.10.patch; size=9739 RnJvbSA1NjY1ZTQ3NzU4OWQ5NzY3MmNjNmUyN2ExZjQ1NDU4NWEyYWU3NzNlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBFcmljIER2b3JzYWsgPHllbmRhMUBnbWFpbC5jb20+CkRhdGU6 IFN1biwgMiBBdWcgMjAxNSAxOToyNzoyNCArMDIwMApTdWJqZWN0OiBbUEFUQ0hdIGdudTogcHl0 aG9uLTI6IFVwZGF0ZSB0byAyLjcuMTAuCgoqIGdudS9wYWNrYWdlcy9wYXRjaGVzL3B5dGhvbjIt c3FsaXRlLTMuOC40LXRlc3QtZml4LnBhdGNoLAogIGdudS9wYWNrYWdlcy9wYXRjaGVzL3B5dGhv bi1saWJmZmktbWlwcy1uMzItZml4LnBhdGNoOiBSZW1vdmUgZmlsZXMuCiogZ251LXN5c3RlbS5h bSAoZGlzdF9wYXRjaF9EQVRBKTogUmVtb3ZlIHRoZW0uCiogZ251L3BhY2thZ2VzL3B5dGhvbi5z Y20gKHB5dGhvbi0yKTogVXBkYXRlIHRvIDIuNy4xMC4gIFJlbW92ZSBwYXRjaGVzLgogIFVwZGF0 ZSBjb21tZW50IHNob3dpbmcgdGVzdCBmYWlsdXJlcy4KLS0tCiBnbnUtc3lzdGVtLmFtICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAyIC0KIC4uLi9wYXRjaGVzL3B5dGhv bi1saWJmZmktbWlwcy1uMzItZml4LnBhdGNoICAgICAgIHwgMjEgLS0tLS0tCiAuLi4vcGF0Y2hl cy9weXRob24yLXNxbGl0ZS0zLjguNC10ZXN0LWZpeC5wYXRjaCAgICB8IDE1IC0tLS0KIGdudS9w YWNrYWdlcy9weXRob24uc2NtICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgODggKysrKysr KysrKystLS0tLS0tLS0tLQogNCBmaWxlcyBjaGFuZ2VkLCA0MiBpbnNlcnRpb25zKCspLCA4NCBk ZWxldGlvbnMoLSkKIGRlbGV0ZSBtb2RlIDEwMDY0NCBnbnUvcGFja2FnZXMvcGF0Y2hlcy9weXRo b24tbGliZmZpLW1pcHMtbjMyLWZpeC5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IGdudS9wYWNr YWdlcy9wYXRjaGVzL3B5dGhvbjItc3FsaXRlLTMuOC40LXRlc3QtZml4LnBhdGNoCgpkaWZmIC0t Z2l0IGEvZ251LXN5c3RlbS5hbSBiL2dudS1zeXN0ZW0uYW0KaW5kZXggODc5MjRmZS4uMTJhODdl ZiAxMDA2NDQKLS0tIGEvZ251LXN5c3RlbS5hbQorKysgYi9nbnUtc3lzdGVtLmFtCkBAIC01OTMs OSArNTkzLDcgQEAgZGlzdF9wYXRjaF9EQVRBID0JCQkJCQlcCiAgIGdudS9wYWNrYWdlcy9wYXRj aGVzL3B5cXQtY29uZmlndXJlLnBhdGNoCQkJXAogICBnbnUvcGFja2FnZXMvcGF0Y2hlcy9weXRo b24tZGlzYWJsZS1zc2wtdGVzdC5wYXRjaAkJXAogICBnbnUvcGFja2FnZXMvcGF0Y2hlcy9weXRo b24tZml4LXRlc3RzLnBhdGNoCQkJXAotICBnbnUvcGFja2FnZXMvcGF0Y2hlcy9weXRob24tbGli ZmZpLW1pcHMtbjMyLWZpeC5wYXRjaAkJXAogICBnbnUvcGFja2FnZXMvcGF0Y2hlcy9weXRob24y LXJkZmxpYi1kcm9wLXNwYXJxbHdyYXBwZXIucGF0Y2gJXAotICBnbnUvcGFja2FnZXMvcGF0Y2hl cy9weXRob24yLXNxbGl0ZS0zLjguNC10ZXN0LWZpeC5wYXRjaAlcCiAgIGdudS9wYWNrYWdlcy9w YXRjaGVzL3B5dGhvbjItcHlnb2JqZWN0LTItZ2ktaW5mby10eXBlLWVycm9yLWRvbWFpbi5wYXRj aCBcCiAgIGdudS9wYWNrYWdlcy9wYXRjaGVzL3FlbXUtQ1ZFLTIwMTUtMzIwOS5wYXRjaAkJCVwK ICAgZ251L3BhY2thZ2VzL3BhdGNoZXMvcWVtdS1DVkUtMjAxNS0zNDU2LnBhdGNoCQkJXApkaWZm IC0tZ2l0IGEvZ251L3BhY2thZ2VzL3BhdGNoZXMvcHl0aG9uLWxpYmZmaS1taXBzLW4zMi1maXgu cGF0Y2ggYi9nbnUvcGFja2FnZXMvcGF0Y2hlcy9weXRob24tbGliZmZpLW1pcHMtbjMyLWZpeC5w YXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzkzODgzNy4uMDAwMDAwMAotLS0g YS9nbnUvcGFja2FnZXMvcGF0Y2hlcy9weXRob24tbGliZmZpLW1pcHMtbjMyLWZpeC5wYXRjaAor KysgL2Rldi9udWxsCkBAIC0xLDIxICswLDAgQEAKLUZpeCBoYW5kbGluZyBvZiB1aW50MzJfdCBh cmd1bWVudHMgb24gdGhlIE1JUFMgTjMyIEFCSS4KLQotUGF0Y2ggYnkgTWFyayBIIFdlYXZlciA8 bWh3QG5ldHJpcy5vcmc+LgotCi0tLS0gTW9kdWxlcy9fY3R5cGVzL2xpYmZmaS9zcmMvbWlwcy9m ZmkuYy5vcmlnCTIwMTMtMDMtMTYgMDc6MTk6MzkuMDAwMDAwMDAwIC0wNDAwCi0rKysgTW9kdWxl cy9fY3R5cGVzL2xpYmZmaS9zcmMvbWlwcy9mZmkuYwkyMDEzLTEwLTIyIDAxOjExOjAzLjExMTk4 NTI0NyAtMDQwMAotQEAgLTE3MCw3ICsxNzAsMTQgQEAKLSAJCWJyZWFrOwotIAkJICAKLSAJICAg ICAgY2FzZSBGRklfVFlQRV9VSU5UMzI6Ci0rI2lmZGVmIEZGSV9NSVBTX04zMgotKwkJLyogVGhl IE4zMiBBQkkgcmVxdWlyZXMgdGhhdCAzMi1iaXQgaW50ZWdlcnMKLSsJCSAgIGJlIHNpZ24tZXh0 ZW5kZWQgdG8gNjQtYml0cywgcmVnYXJkbGVzcyBvZgotKwkJICAgd2hldGhlciB0aGV5IGFyZSBz aWduZWQgb3IgdW5zaWduZWQuICovCi0rCQkqKGZmaV9hcmcgKilhcmdwID0gKihTSU5UMzIgKiko KiBwX2FyZ3YpOwotKyNlbHNlCi0gCQkqKGZmaV9hcmcgKilhcmdwID0gKihVSU5UMzIgKikoKiBw X2FyZ3YpOwotKyNlbmRpZgotIAkJYnJlYWs7Ci0gCi0gCSAgICAgIC8qIFRoaXMgY2FuIG9ubHkg aGFwcGVuIHdpdGggNjRiaXQgc2xvdHMuICAqLwpkaWZmIC0tZ2l0IGEvZ251L3BhY2thZ2VzL3Bh dGNoZXMvcHl0aG9uMi1zcWxpdGUtMy44LjQtdGVzdC1maXgucGF0Y2ggYi9nbnUvcGFja2FnZXMv cGF0Y2hlcy9weXRob24yLXNxbGl0ZS0zLjguNC10ZXN0LWZpeC5wYXRjaApkZWxldGVkIGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggZjEyMWU4OC4uMDAwMDAwMAotLS0gYS9nbnUvcGFja2FnZXMvcGF0 Y2hlcy9weXRob24yLXNxbGl0ZS0zLjguNC10ZXN0LWZpeC5wYXRjaAorKysgL2Rldi9udWxsCkBA IC0xLDE1ICswLDAgQEAKLUZyb20gcmVzb2x1dGlvbiBvZiB1cHN0cmVhbSBweXRob24gaXNzdWUg IzIwOTAxOiBodHRwOi8vYnVncy5weXRob24ub3JnL2lzc3VlMjA5MDEKLQotZGlmZiAtLWdpdCBh L0xpYi9zcWxpdGUzL3Rlc3QvaG9va3MucHkgYi9MaWIvc3FsaXRlMy90ZXN0L2hvb2tzLnB5Ci0t LS0gTGliL3NxbGl0ZTMvdGVzdC9ob29rcy5weQotKysrIExpYi9zcWxpdGUzL3Rlc3QvaG9va3Mu cHkKLUBAIC0xNjIsNyArMTYyLDcgQEAgY2xhc3MgUHJvZ3Jlc3NUZXN0cyh1bml0dGVzdC5UZXN0 Q2FzZSk6Ci0gICAgICAgICAgICAgY3JlYXRlIHRhYmxlIGJhciAoYSwgYikKLSAgICAgICAgICAg ICAiIiIpCi0gICAgICAgICBzZWNvbmRfY291bnQgPSBsZW4ocHJvZ3Jlc3NfY2FsbHMpCi0tICAg ICAgICBzZWxmLmFzc2VydFRydWUoZmlyc3RfY291bnQgPiBzZWNvbmRfY291bnQpCi0rICAgICAg ICBzZWxmLmFzc2VydEdyZWF0ZXJFcXVhbChmaXJzdF9jb3VudCwgc2Vjb25kX2NvdW50KQotIAot ICAgICBkZWYgQ2hlY2tDYW5jZWxPcGVyYXRpb24oc2VsZik6Ci0gICAgICAgICAiIiIKLQpkaWZm IC0tZ2l0IGEvZ251L3BhY2thZ2VzL3B5dGhvbi5zY20gYi9nbnUvcGFja2FnZXMvcHl0aG9uLnNj bQppbmRleCA0YzEzMzE2Li45MmUyNzY4IDEwMDY0NAotLS0gYS9nbnUvcGFja2FnZXMvcHl0aG9u LnNjbQorKysgYi9nbnUvcGFja2FnZXMvcHl0aG9uLnNjbQpAQCAtNzQsNjIgKzc0LDU4IEBACiAo ZGVmaW5lLXB1YmxpYyBweXRob24tMgogICAocGFja2FnZQogICAgIChuYW1lICJweXRob24iKQot ICAgICh2ZXJzaW9uICIyLjcuNiIpCisgICAgKHZlcnNpb24gIjIuNy4xMCIpCiAgICAgKHNvdXJj ZQogICAgICAob3JpZ2luCiAgICAgICAobWV0aG9kIHVybC1mZXRjaCkKICAgICAgICh1cmkgKHN0 cmluZy1hcHBlbmQgImh0dHBzOi8vd3d3LnB5dGhvbi5vcmcvZnRwL3B5dGhvbi8iCiAgICAgICAg ICAgICAgICAgICAgICAgICAgIHZlcnNpb24gIi9QeXRob24tIiB2ZXJzaW9uICIudGFyLnh6Iikp Ci0gICAgICAocGF0Y2hlcyAobGlzdCAoc2VhcmNoLXBhdGNoICJweXRob24tbGliZmZpLW1pcHMt bjMyLWZpeC5wYXRjaCIpCi0gICAgICAgICAgICAgICAgICAgICAoc2VhcmNoLXBhdGNoICJweXRo b24yLXNxbGl0ZS0zLjguNC10ZXN0LWZpeC5wYXRjaCIpKSkKLSAgICAgIChwYXRjaC1mbGFncyAn KCItcDAiKSkKICAgICAgIChzaGEyNTYKICAgICAgICAoYmFzZTMyCi0gICAgICAgICIxOGducHlo MDcxZHhhMHJ2M3NpbHJ6OTJqdzlxcGJsc3d6d3Y0Z3pxY3d4enoyMHF4bWh6IikpKSkKKyAgICAg ICAgIjFoN3picmY5cGtqMjlobG0xOGIxMDU0OGNoOTc1N2Y3NW02NGw0N3N5NzVyaDQzcDdscXci KSkpKQogICAgIChidWlsZC1zeXN0ZW0gZ251LWJ1aWxkLXN5c3RlbSkKICAgICAoYXJndW1lbnRz CiAgICAgIGAoIzp0ZXN0cz8gI2YKLTs7ICAgICAgIDI1OCB0ZXN0cyBPSy4KLTs7ICAgICAgIDEw MyB0ZXN0cyBmYWlsZWQ6Ci07OyAgICAgICAgICB0ZXN0X2J6MiB0ZXN0X2Rpc3R1dGlscyB0ZXN0 X2ZpbGUgdGVzdF9maWxlMmsgdGVzdF9wb3BlbjIKLTs7ICAgICAgICAgIHRlc3Rfc2h1dGlsIHRl c3Rfc2lnbmFsIHRlc3Rfc2l0ZSB0ZXN0X3NsaWNlIHRlc3Rfc210cGxpYgotOzsgICAgICAgICAg dGVzdF9zbXRwbmV0IHRlc3Rfc29ja2V0IHRlc3Rfc29ja2V0c2VydmVyIHRlc3Rfc29mdHNwYWNl Ci07OyAgICAgICAgICB0ZXN0X3NvcnQgdGVzdF9zcWxpdGUgdGVzdF9zc2wgdGVzdF9zdGFydGZp bGUgdGVzdF9zdHIKLTs7ICAgICAgICAgIHRlc3Rfc3RyZnRpbWUgdGVzdF9zdHJpbmcgdGVzdF9z dHJpbmdwcmVwIHRlc3Rfc3Ryb3AgdGVzdF9zdHJwdGltZQotOzsgICAgICAgICAgdGVzdF9zdHJ0 b2QgdGVzdF9zdHJ1Y3QgdGVzdF9zdHJ1Y3RtZW1iZXJzIHRlc3Rfc3RydWN0c2VxCi07OyAgICAg ICAgICB0ZXN0X3N1YnByb2Nlc3MgdGVzdF9zdW5hdWRpb2RldiB0ZXN0X3N1bmRyeSB0ZXN0X3N5 bXRhYmxlCi07OyAgICAgICAgICB0ZXN0X3N5bnRheCB0ZXN0X3N5cyB0ZXN0X3N5c19zZXRwcm9m aWxlIHRlc3Rfc3lzX3NldHRyYWNlCi07OyAgICAgICAgICB0ZXN0X3N5c2NvbmZpZyB0ZXN0X3Rh cmZpbGUgdGVzdF90Y2wgdGVzdF90ZWxuZXRsaWIgdGVzdF90ZW1wZmlsZQotOzsgICAgICAgICAg dGVzdF90ZXh0d3JhcCB0ZXN0X3RocmVhZCB0ZXN0X3RocmVhZGVkX2ltcG9ydAotOzsgICAgICAg ICAgdGVzdF90aHJlYWRlZHRlbXBmaWxlIHRlc3RfdGhyZWFkaW5nIHRlc3RfdGhyZWFkaW5nX2xv Y2FsCi07OyAgICAgICAgICB0ZXN0X3RocmVhZHNpZ25hbHMgdGVzdF90aW1lIHRlc3RfdGltZW91 dCB0ZXN0X3RrIHRlc3RfdG9rZW5pemUKLTs7ICAgICAgICAgIHRlc3RfdG9vbHMgdGVzdF90cmFj ZSB0ZXN0X3RyYWNlYmFjayB0ZXN0X3RyYW5zZm9ybWVyCi07OyAgICAgICAgICB0ZXN0X3R0a19n dWlvbmx5IHRlc3RfdHRrX3RleHRvbmx5IHRlc3RfdHVwbGUgdGVzdF90eXBlY2hlY2tzCi07OyAg ICAgICAgICB0ZXN0X3VjbiB0ZXN0X3VuYXJ5IHRlc3RfdW5kb2N1bWVudGVkX2RldGFpbHMgdGVz dF91bmljb2RlCi07OyAgICAgICAgICB0ZXN0X3VuaWNvZGVfZmlsZSB0ZXN0X3VuaWNvZGVkYXRh IHRlc3RfdW5pdm5ld2xpbmVzCi07OyAgICAgICAgICB0ZXN0X3VuaXZuZXdsaW5lczJrIHRlc3Rf dW5wYWNrIHRlc3RfdXJsbGliIHRlc3RfdXJsbGliMgotOzsgICAgICAgICAgdGVzdF91cmxsaWIy X2xvY2FsbmV0IHRlc3RfdXJsbGliMm5ldCB0ZXN0X3VybGxpYm5ldCB0ZXN0X3VybHBhcnNlCi07 OyAgICAgICAgICB0ZXN0X3VzZXJkaWN0IHRlc3RfdXNlcmxpc3QgdGVzdF91c2Vyc3RyaW5nIHRl c3RfdXUgdGVzdF91dWlkCi07OyAgICAgICAgICB0ZXN0X3dhaXQzIHRlc3Rfd2FpdDQgdGVzdF93 YXJuaW5ncyB0ZXN0X3dhdmUgdGVzdF93ZWFrcmVmCi07OyAgICAgICAgICB0ZXN0X3dlYWtzZXQg dGVzdF93aGljaGRiIHRlc3Rfd2lucmVnIHRlc3Rfd2luc291bmQgdGVzdF93aXRoCi07OyAgICAg ICAgICB0ZXN0X3dzZ2lyZWYgdGVzdF94ZHJsaWIgdGVzdF94bWxfZXRyZWUgdGVzdF94bWxfZXRy ZWVfYwotOzsgICAgICAgICAgdGVzdF94bWxsaWIgdGVzdF94bWxycGMgdGVzdF94cGlja2xlIHRl c3RfeHJhbmdlIHRlc3RfemlwZmlsZQotOzsgICAgICAgICAgdGVzdF96aXBmaWxlNjQgdGVzdF96 aXBpbXBvcnQgdGVzdF96aXBpbXBvcnRfc3VwcG9ydCB0ZXN0X3psaWIKLTs7ICAgICAgIDMxIHRl c3RzIHNraXBwZWQ6Ci07OyAgICAgICAgICB0ZXN0X2FlcGFjayB0ZXN0X2FsIHRlc3RfYXBwbGVz aW5nbGUgdGVzdF9hc2NpaV9mb3JtYXRkIHRlc3RfYnNkZGIKLTs7ICAgICAgICAgIHRlc3RfYnNk ZGIxODUgdGVzdF9ic2RkYjMgdGVzdF9jZCB0ZXN0X2NsIHRlc3RfY29kZWNtYXBzX2NuCi07OyAg ICAgICAgICB0ZXN0X2NvZGVjbWFwc19oayB0ZXN0X2NvZGVjbWFwc19qcCB0ZXN0X2NvZGVjbWFw c19rcgotOzsgICAgICAgICAgdGVzdF9jb2RlY21hcHNfdHcgdGVzdF9jdHlwZXMgdGVzdF9jdXJz ZXMgdGVzdF9kbCB0ZXN0X2dkYiB0ZXN0X2dsCi07OyAgICAgICAgICB0ZXN0X2ltYWdlb3AgdGVz dF9pbWdmaWxlIHRlc3RfaW9jdGwgdGVzdF9rcXVldWUKLTs7ICAgICAgICAgIHRlc3RfbGludXhh dWRpb2RldiB0ZXN0X21hY29zIHRlc3RfbWFjb3N0b29scyB0ZXN0X21zaWxpYgotOzsgICAgICAg ICAgdGVzdF9tdWx0aXByb2Nlc3NpbmcgdGVzdF9vc3NhdWRpb2RldiB0ZXN0X3BlcDI3NwotOzsg ICAgICAgICAgdGVzdF9zY3JpcHRwYWNrYWdlcwotOzsgICAgICAgNyBza2lwcyB1bmV4cGVjdGVk IG9uIGxpbnV4MjoKLTs7ICAgICAgICAgIHRlc3RfYXNjaWlfZm9ybWF0ZCB0ZXN0X2JzZGRiIHRl c3RfYnNkZGIzIHRlc3RfY3R5cGVzIHRlc3RfZ2RiCi07OyAgICAgICAgICB0ZXN0X2lvY3RsIHRl c3RfbXVsdGlwcm9jZXNzaW5nCi07OyAgICBPbmUgb2YgdGhlIHR5cGljYWwgZXJyb3JzOgotOzsg ICAgdGVzdF91bmljb2RlCi07OyAgICB0ZXN0IHRlc3RfdW5pY29kZSBjcmFzaGVkIC0tIDx0eXBl ICdleGNlcHRpb25zLk9TRXJyb3InPjogW0Vycm5vIDJdIE5vIHN1Y2ggZmlsZSBvciBkaXJlY3Rv cnkKKyAgICAgICA7OyAyNjggdGVzdHMgT0suCisgICAgICAgOzsgMTAzIHRlc3RzIGZhaWxlZDoK KyAgICAgICA7OyAgICAgdGVzdF9kaXN0dXRpbHMgdGVzdF9zaHV0aWwgdGVzdF9zaWduYWwgdGVz dF9zaXRlIHRlc3Rfc2xpY2UKKyAgICAgICA7OyAgICAgdGVzdF9zbXRwbGliIHRlc3Rfc210cG5l dCB0ZXN0X3NvY2tldCB0ZXN0X3NvY2tldHNlcnZlcgorICAgICAgIDs7ICAgICB0ZXN0X3NvZnRz cGFjZSB0ZXN0X3NvcnQgdGVzdF9zcHdkIHRlc3Rfc3FsaXRlIHRlc3Rfc3NsCisgICAgICAgOzsg ICAgIHRlc3Rfc3RhcnRmaWxlIHRlc3Rfc3RhdCB0ZXN0X3N0ciB0ZXN0X3N0cmZ0aW1lIHRlc3Rf c3RyaW5nCisgICAgICAgOzsgICAgIHRlc3Rfc3RyaW5ncHJlcCB0ZXN0X3N0cm9wIHRlc3Rfc3Ry cHRpbWUgdGVzdF9zdHJ0b2QgdGVzdF9zdHJ1Y3QKKyAgICAgICA7OyAgICAgdGVzdF9zdHJ1Y3Rt ZW1iZXJzIHRlc3Rfc3RydWN0c2VxIHRlc3Rfc3VicHJvY2VzcyB0ZXN0X3N1bmF1CisgICAgICAg OzsgICAgIHRlc3Rfc3VuYXVkaW9kZXYgdGVzdF9zdW5kcnkgdGVzdF9zeW10YWJsZSB0ZXN0X3N5 bnRheCB0ZXN0X3N5cworICAgICAgIDs7ICAgICB0ZXN0X3N5c19zZXRwcm9maWxlIHRlc3Rfc3lz X3NldHRyYWNlIHRlc3Rfc3lzY29uZmlnIHRlc3RfdGFyZmlsZQorICAgICAgIDs7ICAgICB0ZXN0 X3RjbCB0ZXN0X3RlbG5ldGxpYiB0ZXN0X3RlbXBmaWxlIHRlc3RfdGV4dHdyYXAgdGVzdF90aHJl YWQKKyAgICAgICA7OyAgICAgdGVzdF90aHJlYWRlZF9pbXBvcnQgdGVzdF90aHJlYWRlZHRlbXBm aWxlIHRlc3RfdGhyZWFkaW5nCisgICAgICAgOzsgICAgIHRlc3RfdGhyZWFkaW5nX2xvY2FsIHRl c3RfdGhyZWFkc2lnbmFscyB0ZXN0X3RpbWUgdGVzdF90aW1laXQKKyAgICAgICA7OyAgICAgdGVz dF90aW1lb3V0IHRlc3RfdGsgdGVzdF90b2tlbml6ZSB0ZXN0X3Rvb2xzIHRlc3RfdHJhY2UKKyAg ICAgICA7OyAgICAgdGVzdF90cmFjZWJhY2sgdGVzdF90cmFuc2Zvcm1lciB0ZXN0X3R0a19ndWlv bmx5IHRlc3RfdHRrX3RleHRvbmx5CisgICAgICAgOzsgICAgIHRlc3RfdHVwbGUgdGVzdF90eXBl Y2hlY2tzIHRlc3RfdWNuIHRlc3RfdW5hcnkKKyAgICAgICA7OyAgICAgdGVzdF91bmRvY3VtZW50 ZWRfZGV0YWlscyB0ZXN0X3VuaWNvZGUgdGVzdF91bmljb2RlX2ZpbGUKKyAgICAgICA7OyAgICAg dGVzdF91bmljb2RlZGF0YSB0ZXN0X3VuaXZuZXdsaW5lcyB0ZXN0X3VuaXZuZXdsaW5lczJrIHRl c3RfdW5wYWNrCisgICAgICAgOzsgICAgIHRlc3RfdXJsbGliIHRlc3RfdXJsbGliMiB0ZXN0X3Vy bGxpYjJfbG9jYWxuZXQgdGVzdF91cmxsaWIybmV0CisgICAgICAgOzsgICAgIHRlc3RfdXJsbGli bmV0IHRlc3RfdXJscGFyc2UgdGVzdF91c2VyZGljdCB0ZXN0X3VzZXJsaXN0CisgICAgICAgOzsg ICAgIHRlc3RfdXNlcnN0cmluZyB0ZXN0X3V1IHRlc3RfdXVpZCB0ZXN0X3dhaXQzIHRlc3Rfd2Fp dDQKKyAgICAgICA7OyAgICAgdGVzdF93YXJuaW5ncyB0ZXN0X3dhdmUgdGVzdF93ZWFrcmVmIHRl c3Rfd2Vha3NldCB0ZXN0X3doaWNoZGIKKyAgICAgICA7OyAgICAgdGVzdF93aW5yZWcgdGVzdF93 aW5zb3VuZCB0ZXN0X3dpdGggdGVzdF93c2dpcmVmIHRlc3RfeGRybGliCisgICAgICAgOzsgICAg IHRlc3RfeG1sX2V0cmVlIHRlc3RfeG1sX2V0cmVlX2MgdGVzdF94bWxsaWIgdGVzdF94bWxycGMK KyAgICAgICA7OyAgICAgdGVzdF94cGlja2xlIHRlc3RfeHJhbmdlIHRlc3RfemlwZmlsZSB0ZXN0 X3ppcGZpbGU2NAorICAgICAgIDs7ICAgICB0ZXN0X3ppcGltcG9ydCB0ZXN0X3ppcGltcG9ydF9z dXBwb3J0IHRlc3RfemxpYgorICAgICAgIDs7IDMwIHRlc3RzIHNraXBwZWQ6CisgICAgICAgOzsg ICAgIHRlc3RfYWVwYWNrIHRlc3RfYWwgdGVzdF9hcHBsZXNpbmdsZSB0ZXN0X2JzZGRiIHRlc3Rf YnNkZGIxODUKKyAgICAgICA7OyAgICAgdGVzdF9ic2RkYjMgdGVzdF9jZCB0ZXN0X2NsIHRlc3Rf Y29kZWNtYXBzX2NuIHRlc3RfY29kZWNtYXBzX2hrCisgICAgICAgOzsgICAgIHRlc3RfY29kZWNt YXBzX2pwIHRlc3RfY29kZWNtYXBzX2tyIHRlc3RfY29kZWNtYXBzX3R3IHRlc3RfY3J5cHQKKyAg ICAgICA7OyAgICAgdGVzdF9jdXJzZXMgdGVzdF9kbCB0ZXN0X2dkYiB0ZXN0X2dsIHRlc3RfaWRs ZSB0ZXN0X2ltYWdlb3AKKyAgICAgICA7OyAgICAgdGVzdF9pbWdmaWxlIHRlc3RfaW9jdGwgdGVz dF9rcXVldWUgdGVzdF9saW51eGF1ZGlvZGV2IHRlc3RfbWFjb3MKKyAgICAgICA7OyAgICAgdGVz dF9tYWNvc3Rvb2xzIHRlc3RfbXNpbGliIHRlc3RfbmlzIHRlc3Rfb3NzYXVkaW9kZXYKKyAgICAg ICA7OyAgICAgdGVzdF9zY3JpcHRwYWNrYWdlcworICAgICAgIDs7IDYgc2tpcHMgdW5leHBlY3Rl ZCBvbiBsaW51eDI6CisgICAgICAgOzsgICAgIHRlc3RfYnNkZGIgdGVzdF9ic2RkYjMgdGVzdF9j cnlwdCB0ZXN0X2dkYiB0ZXN0X2lkbGUgdGVzdF9pb2N0bAorICAgICAgIDs7IE9uZSBvZiB0aGUg dHlwaWNhbCBlcnJvcnM6CisgICAgICAgOzsgdGVzdF91bmljb2RlCisgICAgICAgOzsgdGVzdCB0 ZXN0X3VuaWNvZGUgY3Jhc2hlZCAtLSA8dHlwZSAnZXhjZXB0aW9ucy5PU0Vycm9yJz46IFtFcnJu byAyXSBObworICAgICAgIDs7IHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKICAgICAgICAjOnRlc3Qt dGFyZ2V0ICJ0ZXN0IgogICAgICAgICM6Y29uZmlndXJlLWZsYWdzCiAgICAgICAgIChsZXQgKChi ejIgKGFzc29jLXJlZiAlYnVpbGQtaW5wdXRzICJiemlwMiIpKQotLSAKMi40LjMKCg== --=_6036a08c4168bd55fdbdd64c67d305c0--