From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?UTF-8?Q?G=C3=A1bor_Boskovits?= Subject: Re: Test fail Date: Thu, 29 Mar 2018 14:51:52 +0200 Message-ID: References: <7892d168-8c29-a7e0-36e5-93bd97c99b5b@gmail.com> <400dd649-1da5-b97c-dd7c-d710caaad1e9@gmail.com> <76b42f8b-63be-82d2-42e0-ed708cf217f6@gmail.com> Mime-Version: 1.0 Content-Type: multipart/alternative; boundary="0000000000007773c405688c9644" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:56410) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1f1X23-0001D1-9j for help-guix@gnu.org; Thu, 29 Mar 2018 08:51:56 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1f1X21-0003Zp-NS for help-guix@gnu.org; Thu, 29 Mar 2018 08:51:55 -0400 Received: from mail-it0-x22e.google.com ([2607:f8b0:4001:c0b::22e]:55331) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1f1X21-0003ZG-GM for help-guix@gnu.org; Thu, 29 Mar 2018 08:51:53 -0400 Received: by mail-it0-x22e.google.com with SMTP id 142-v6so8015893itl.5 for ; Thu, 29 Mar 2018 05:51:53 -0700 (PDT) In-Reply-To: <76b42f8b-63be-82d2-42e0-ed708cf217f6@gmail.com> List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+gcggh-help-guix=m.gmane.org@gnu.org Sender: "Help-Guix" To: Maria Sidorova Cc: help-guix --0000000000007773c405688c9644 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable 2018-03-29 14:46 GMT+02:00 Maria Sidorova : > > > On 29.03.2018 09:17, G=C3=A1bor Boskovits wrote: > >> 2018-03-28 15:51 GMT+02:00 G=C3=A1bor Boskovits > boskovits@gmail.com>>: >> >> 2018-03-28 8:36 GMT+02:00 Maria Sidorova > >: >> >> >> >> On 28.03.2018 09:33, G=C3=A1bor Boskovits wrote: >> >> 2018-03-27 23:34 GMT+02:00 Maria Sidorova >> >> >>= : >> >> >> >> Hello, >> >> Running the test suite (`make check`) gives me one of >> the tests failed. >> >> This is from test-suite.log >> >> test-name: pivot-root >> location: /home/masha/src/guix/tests/syscalls.scm:156 >> source: >> + (test-equal >> + "pivot-root" >> + #t >> + (match (pipe) >> + ((in . out) >> + (match (clone (logior CLONE_NEWUSER >> CLONE_NEWNS SIGCHLD)) >> + (0 >> + (dynamic-wind >> + (const #t) >> + (lambda () >> + (close in) >> + (call-with-temporary-directory >> + (lambda (root) >> + (let ((put-old >> (string-append root >> "/real-root"))) >> + (mount "none" root "tmpfs= ") >> + (mkdir put-old) >> + (call-with-output-file >> + (string-append root >> "/test") >> + (lambda (port) (display >> "testing\n" >> port))) >> + (pivot-root root put-old) >> + (write (file-exists? >> "/test") out) >> + (close out))))) >> + (lambda () (primitive-exit 0)))) >> + (pid (close out) >> + (let ((result (read in))) >> + (close in) >> + (and (zero? (match (waitpid >> pid) >> + ((_ . >> status) >> + >> (status:exit-val >> status)))) >> + (eq? #t result)))))))) >> expected-value: #t >> actual-value: #f >> result: FAIL >> >> >> The summary is: >> # TOTAL: 777 >> # PASS: 772 >> # SKIP: 4 >> # XFAIL: 0 >> # FAIL: 1 >> # XPASS: 0 >> # ERROR: 0 >> >> I'm novice in Guix, can anyone give me a clue? >> >> >> Actually there are two possibilities. I'm trying to narrow this down >> now. >> There is a bug:https://bugzilla.kernel.org/show_bug.cgi?id=3D183461 >> >> in our bug tracker that might be affecting you, or the shared mounts >> I noticed much later. I'm going to investigate this and report back. >> >> >> I've created a vm image with a current Ubuntu 16.04 yesterday, installed >> the guix binary tarball, and did a make check in a guix environment guix= . >> This error was not shown in my case. >> >> My uname -r is: >> 4.10.0-28-generic >> >> This test should be skipped, if kernel version > 4.7.5. >> Can you please send the output of uname -r ? >> > > 4.4.0-116-generic > Ok, this is a known linux kernel bug, that entered the upstream linux kernel with version 4.7.5. Ubuntu backported the commit causing this behaviour to 4.4.0. This is actually safe to ignore, Do you see problems related to pivot_root anywhere else than this test? --0000000000007773c405688c9644 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: base64 PGRpdiBkaXI9Imx0ciI+PGRpdiBjbGFzcz0iZ21haWxfZXh0cmEiPjxkaXYgY2xhc3M9ImdtYWls X3F1b3RlIj4yMDE4LTAzLTI5IDE0OjQ2IEdNVCswMjowMCBNYXJpYSBTaWRvcm92YSA8c3BhbiBk aXI9Imx0ciI+Jmx0OzxhIGhyZWY9Im1haWx0bzpoeWRyb21hc2hhQGdtYWlsLmNvbSIgdGFyZ2V0 PSJfYmxhbmsiPmh5ZHJvbWFzaGFAZ21haWwuY29tPC9hPiZndDs8L3NwYW4+Ojxicj48YmxvY2tx dW90ZSBjbGFzcz0iZ21haWxfcXVvdGUiIHN0eWxlPSJtYXJnaW46MCAwIDAgLjhleDtib3JkZXIt bGVmdDoxcHggI2NjYyBzb2xpZDtwYWRkaW5nLWxlZnQ6MWV4Ij48YnI+DQo8YnI+DQpPbiAyOS4w My4yMDE4IDA5OjE3LCBHw6Fib3IgQm9za292aXRzIHdyb3RlOjxicj4NCjxibG9ja3F1b3RlIGNs YXNzPSJnbWFpbF9xdW90ZSIgc3R5bGU9Im1hcmdpbjowIDAgMCAuOGV4O2JvcmRlci1sZWZ0OjFw eCAjY2NjIHNvbGlkO3BhZGRpbmctbGVmdDoxZXgiPg0KMjAxOC0wMy0yOCAxNTo1MSBHTVQrMDI6 MDAgR8OhYm9yIEJvc2tvdml0cyAmbHQ7PGEgaHJlZj0ibWFpbHRvOmJvc2tvdml0c0BnbWFpbC5j b20iIHRhcmdldD0iX2JsYW5rIj5ib3Nrb3ZpdHNAZ21haWwuY29tPC9hPiAmbHQ7bWFpbHRvOjxh IGhyZWY9Im1haWx0bzpib3Nrb3ZpdHNAZ21haWwuY29tIiB0YXJnZXQ9Il9ibGFuayI+Ym9za292 aXRzQGdtYWlsLmNvbTwvYT4mZ3Q7Jmd0Ozo8c3BhbiBjbGFzcz0iIj48YnI+DQo8YnI+DQrCoCDC oCAyMDE4LTAzLTI4IDg6MzYgR01UKzAyOjAwIE1hcmlhIFNpZG9yb3ZhICZsdDs8YSBocmVmPSJt YWlsdG86aHlkcm9tYXNoYUBnbWFpbC5jb20iIHRhcmdldD0iX2JsYW5rIj5oeWRyb21hc2hhQGdt YWlsLmNvbTwvYT48YnI+PC9zcGFuPg0KwqAgwqAgJmx0O21haWx0bzo8YSBocmVmPSJtYWlsdG86 aHlkcm9tYXNoYUBnbWFpbC5jb20iIHRhcmdldD0iX2JsYW5rIj5oeWRyb21hc2hhQGdtYWlsLmNv bTwvYT4mZ3Q7Jmd0Ozx3YnI+OjxzcGFuIGNsYXNzPSIiPjxicj4NCjxicj4NCjxicj4NCjxicj4N CsKgIMKgIMKgIMKgIE9uIDI4LjAzLjIwMTggMDk6MzMsIEfDoWJvciBCb3Nrb3ZpdHMgd3JvdGU6 PGJyPg0KPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgMjAxOC0wMy0yNyAyMzozNCBHTVQrMDI6MDAg TWFyaWEgU2lkb3JvdmE8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCAmbHQ7PGEgaHJlZj0ibWFpbHRv Omh5ZHJvbWFzaGFAZ21haWwuY29tIiB0YXJnZXQ9Il9ibGFuayI+aHlkcm9tYXNoYUBnbWFpbC5j b208L2E+ICZsdDttYWlsdG86PGEgaHJlZj0ibWFpbHRvOmh5ZHJvbWFzaGFAZ21haWwuY29tIiB0 YXJnZXQ9Il9ibGFuayI+aHlkcm9tYXNoYUBnbWFpbC5jb208L2E+Jmd0Ozxicj48L3NwYW4+DQrC oCDCoCDCoCDCoCDCoCDCoCAmbHQ7bWFpbHRvOjxhIGhyZWY9Im1haWx0bzpoeWRyb21hc2hhQGdt YWlsLmNvbSIgdGFyZ2V0PSJfYmxhbmsiPmh5ZHJvbWFzaGFAZ21haWwuY29tPC9hPiAmbHQ7bWFp bHRvOjxhIGhyZWY9Im1haWx0bzpoeWRyb21hc2hhQGdtYWlsLmNvbSIgdGFyZ2V0PSJfYmxhbmsi Pmh5ZHJvbWFzaGFAZ21haWwuY29tPC9hPiZndDsmZ3Q7PHdicj4mZ3Q7OjxkaXY+PGRpdiBjbGFz cz0iaDUiPjxicj4NCjxicj4NCjxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqAgwqAgSGVsbG8s PGJyPg0KPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoCDCoCBSdW5uaW5nIHRoZSB0ZXN0IHN1 aXRlIChgbWFrZSBjaGVja2ApIGdpdmVzIG1lIG9uZSBvZjxicj4NCsKgIMKgIMKgIMKgIMKgIMKg IHRoZSB0ZXN0cyBmYWlsZWQuPGJyPg0KPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoCDCoCBU aGlzIGlzIGZyb20gdGVzdC1zdWl0ZS5sb2c8YnI+DQo8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDC oMKgIMKgIHRlc3QtbmFtZTogcGl2b3Qtcm9vdDxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqAg wqAgbG9jYXRpb246IC9ob21lL21hc2hhL3NyYy9ndWl4L3Rlc3RzL3N5czx3YnI+Y2FsbHMuc2Nt OjE1Njxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqAgwqAgc291cmNlOjxicj4NCsKgIMKgIMKg IMKgIMKgIMKgIMKgwqAgwqAgKyAodGVzdC1lcXVhbDxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKg wqAgwqAgK8KgIMKgJnF1b3Q7cGl2b3Qtcm9vdCZxdW90Ozxicj4NCsKgIMKgIMKgIMKgIMKgIMKg IMKgwqAgwqAgK8KgIMKgI3Q8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgIMKgICvCoCDCoCht YXRjaCAocGlwZSk8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgIMKgICvCoCDCoCDCoCDCoCDC oCAoKGluIC4gb3V0KTxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqAgwqAgK8KgIMKgIMKgIMKg IMKgIMKgKG1hdGNoIChjbG9uZSAobG9naW9yIENMT05FX05FV1VTRVI8YnI+DQrCoCDCoCDCoCDC oCDCoCDCoCBDTE9ORV9ORVdOUyBTSUdDSExEKSk8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKg IMKgICvCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCAoMDxicj4NCsKgIMKgIMKgIMKgIMKgIMKg IMKgwqAgwqAgK8KgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgKGR5bmFtaWMtd2luZDxicj4N CsKgIMKgIMKgIMKgIMKgIMKgIMKgwqAgwqAgK8KgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgKGNvbnN0ICN0KTxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqAgwqAgK8KgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgKGxhbWJkYSAoKTxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKg wqAgwqAgK8KgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgKGNsb3NlIGluKTxicj4N CsKgIMKgIMKgIMKgIMKgIMKgIMKgwqAgwqAgK8KgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgKGNhbGwtd2l0aC10ZW1wb3JhcnktZGlyZWN0b3I8d2JyPnk8YnI+DQrCoCDCoCDCoCDC oCDCoCDCoCDCoMKgIMKgICvCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoChs YW1iZGEgKHJvb3QpPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoCDCoCArwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAobGV0ICgocHV0LW9sZDxicj4NCsKgIMKgIMKg IMKgIMKgIMKgIChzdHJpbmctYXBwZW5kIHJvb3Q8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKg IMKgICZxdW90Oy9yZWFsLXJvb3QmcXVvdDspKSk8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKg IMKgICvCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoChtb3VudCAm cXVvdDtub25lJnF1b3Q7IHJvb3QgJnF1b3Q7dG1wZnMmcXVvdDspPGJyPg0KwqAgwqAgwqAgwqAg wqAgwqAgwqDCoCDCoCArwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAobWtkaXIgcHV0LW9sZCk8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgIMKgICvCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoChjYWxsLXdpdGgtb3V0cHV0LWZp bGU8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgIMKgICvCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoChzdHJpbmctYXBwZW5kIHJvb3Q8YnI+DQrCoCDCoCDC oCDCoCDCoCDCoCAmcXVvdDsvdGVzdCZxdW90Oyk8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKg IMKgICvCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoChsYW1i ZGEgKHBvcnQpIChkaXNwbGF5PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgJnF1b3Q7dGVzdGluZ1xu JnF1b3Q7PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoCDCoCBwb3J0KSkpPGJyPg0KwqAgwqAg wqAgwqAgwqAgwqAgwqDCoCDCoCArwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAocGl2b3Qtcm9vdCByb290IHB1dC1vbGQpPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAg wqDCoCDCoCArwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAod3Jp dGUgKGZpbGUtZXhpc3RzPzxicj4NCsKgIMKgIMKgIMKgIMKgIMKgICZxdW90Oy90ZXN0JnF1b3Q7 KSBvdXQpPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoCDCoCArwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAoY2xvc2Ugb3V0KSkpKSk8YnI+DQrCoCDCoCDCoCDC oCDCoCDCoCDCoMKgIMKgICvCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoChsYW1iZGEg KCkgKHByaW1pdGl2ZS1leGl0IDApKSkpPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoCDCoCAr wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgKHBpZCAoY2xvc2Ugb3V0KTxicj4NCsKgIMKgIMKg IMKgIMKgIMKgIMKgwqAgwqAgK8KgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgKGxl dCAoKHJlc3VsdCAocmVhZCBpbikpKTxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqAgwqAgK8Kg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgKGNsb3NlIGluKTxicj4NCsKgIMKg IMKgIMKgIMKgIMKgIMKgwqAgwqAgK8KgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgKGFuZCAoemVybz8gKG1hdGNoICh3YWl0cGlkIHBpZCk8YnI+DQrCoCDCoCDCoCDCoCDCoCDC oCDCoMKgIMKgICvCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCAoKF8gLiBzdGF0dXMpPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAg wqDCoCDCoCArwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAoc3RhdHVzOmV4aXQtdmFsPGJy Pg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoCDCoCBzdGF0dXMpKSkpPGJyPg0KwqAgwqAgwqAgwqAg wqAgwqAgwqDCoCDCoCArwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgKGVxPyAjdCByZXN1bHQpKSkpKSkpKTxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqAgwqAg ZXhwZWN0ZWQtdmFsdWU6ICN0PGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoCDCoCBhY3R1YWwt dmFsdWU6ICNmPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDCoCDCoCByZXN1bHQ6IEZBSUw8YnI+ DQo8YnI+DQo8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgIMKgIFRoZSBzdW1tYXJ5IGlzOjxi cj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqAgwqAgIyBUT1RBTDogNzc3PGJyPg0KwqAgwqAgwqAg wqAgwqAgwqAgwqDCoCDCoCAjIFBBU1M6wqAgNzcyPGJyPg0KwqAgwqAgwqAgwqAgwqAgwqAgwqDC oCDCoCAjIFNLSVA6wqAgNDxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqAgwqAgIyBYRkFJTDog MDxicj4NCsKgIMKgIMKgIMKgIMKgIMKgIMKgwqAgwqAgIyBGQUlMOsKgIDE8YnI+DQrCoCDCoCDC oCDCoCDCoCDCoCDCoMKgIMKgICMgWFBBU1M6IDA8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKg IMKgICMgRVJST1I6IDA8YnI+DQo8YnI+DQrCoCDCoCDCoCDCoCDCoCDCoCDCoMKgIMKgIEkmIzM5 O20gbm92aWNlIGluIEd1aXgsIGNhbiBhbnlvbmUgZ2l2ZSBtZSBhIGNsdWU/PGJyPg0KPGJyPg0K PGJyPg0KwqAgwqAgQWN0dWFsbHkgdGhlcmUgYXJlIHR3byBwb3NzaWJpbGl0aWVzLiBJJiMzOTtt IHRyeWluZyB0byBuYXJyb3cgdGhpcyBkb3duPGJyPg0KwqAgwqAgbm93Ljxicj4NCsKgIMKgIFRo ZXJlIGlzIGEgYnVnOjxhIGhyZWY9Imh0dHBzOi8vYnVnemlsbGEua2VybmVsLm9yZy9zaG93X2J1 Zy5jZ2k/aWQ9MTgzNDYxIiByZWw9Im5vcmVmZXJyZXIiIHRhcmdldD0iX2JsYW5rIj5odHRwczov L2J1Z3ppbGxhLmtlcm5lbC5vcjx3YnI+Zy9zaG93X2J1Zy5jZ2k/aWQ9MTgzNDYxPC9hPjxicj4N CsKgIMKgICZsdDs8YSBocmVmPSJodHRwczovL2J1Z3ppbGxhLmtlcm5lbC5vcmcvc2hvd19idWcu Y2dpP2lkPTE4MzQ2MSIgcmVsPSJub3JlZmVycmVyIiB0YXJnZXQ9Il9ibGFuayI+aHR0cHM6Ly9i dWd6aWxsYS5rZXJuZWwub3JnL3M8d2JyPmhvd19idWcuY2dpP2lkPTE4MzQ2MTwvYT4mZ3Q7PGJy Pg0KwqAgwqAgaW4gb3VyIGJ1ZyB0cmFja2VyIHRoYXQgbWlnaHQgYmUgYWZmZWN0aW5nIHlvdSwg b3IgdGhlIHNoYXJlZCBtb3VudHM8YnI+DQrCoCDCoCBJIG5vdGljZWQgbXVjaCBsYXRlci4gSSYj Mzk7bSBnb2luZyB0byBpbnZlc3RpZ2F0ZSB0aGlzIGFuZCByZXBvcnQgYmFjay48YnI+DQo8YnI+ DQo8YnI+DQpJJiMzOTt2ZSBjcmVhdGVkIGEgdm0gaW1hZ2Ugd2l0aCBhIGN1cnJlbnQgVWJ1bnR1 IDE2LjA0IHllc3RlcmRheSwgaW5zdGFsbGVkPGJyPg0KdGhlIGd1aXggYmluYXJ5IHRhcmJhbGws IGFuZCBkaWQgYSBtYWtlIGNoZWNrIGluIGEgZ3VpeCBlbnZpcm9ubWVudCBndWl4Ljxicj4NClRo aXMgZXJyb3Igd2FzIG5vdCBzaG93biBpbiBteSBjYXNlLjxicj4NCjxicj4NCk15IHVuYW1lIC1y IGlzOjxicj4NCsKgwqA0LjEwLjAtMjgtZ2VuZXJpYzxicj4NCjxicj4NClRoaXMgdGVzdCBzaG91 bGQgYmUgc2tpcHBlZCwgaWYga2VybmVsIHZlcnNpb24gJmd0OyA0LjcuNS48YnI+DQpDYW4geW91 IHBsZWFzZSBzZW5kIHRoZSBvdXRwdXQgb2YgdW5hbWUgLXIgPzxicj4NCjwvZGl2PjwvZGl2Pjwv YmxvY2txdW90ZT4NCjxicj4NCjQuNC4wLTExNi1nZW5lcmljPGJyPg0KPC9ibG9ja3F1b3RlPjwv ZGl2Pjxicj48L2Rpdj48ZGl2IGNsYXNzPSJnbWFpbF9leHRyYSI+T2ssIHRoaXMgaXMgYSBrbm93 biBsaW51eCBrZXJuZWwgYnVnLCB0aGF0IGVudGVyZWQgdGhlIHVwc3RyZWFtIGxpbnV4IGtlcm5l bCB3aXRoIHZlcnNpb24gNC43LjUuPC9kaXY+PGRpdiBjbGFzcz0iZ21haWxfZXh0cmEiPlVidW50 dSBiYWNrcG9ydGVkIHRoZSBjb21taXQgY2F1c2luZyB0aGlzIGJlaGF2aW91ciB0byA0LjQuMC4g VGhpcyBpcyBhY3R1YWxseSBzYWZlIHRvIGlnbm9yZSw8L2Rpdj48ZGl2IGNsYXNzPSJnbWFpbF9l eHRyYSI+RG8geW91IHNlZSBwcm9ibGVtcyByZWxhdGVkIHRvIHBpdm90X3Jvb3QgYW55d2hlcmUg ZWxzZSB0aGFuIHRoaXMgdGVzdD88L2Rpdj48ZGl2IGNsYXNzPSJnbWFpbF9leHRyYSI+wqA8L2Rp dj48ZGl2IGNsYXNzPSJnbWFpbF9leHRyYSI+PGJyPjwvZGl2PjwvZGl2Pg0K --0000000000007773c405688c9644--