From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 9907 invoked by alias); 18 Jan 2013 01:23:38 -0000 Received: (qmail 9899 invoked by uid 22791); 18 Jan 2013 01:23:37 -0000 X-SWARE-Spam-Status: No, hits=-4.7 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,KHOP_RCVD_TRUST,KHOP_THREADED,RCVD_IN_DNSWL_LOW,RCVD_IN_HOSTKARMA_YE,TW_XP X-Spam-Check-By: sourceware.org Received: from mail-oa0-f48.google.com (HELO mail-oa0-f48.google.com) (209.85.219.48) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 18 Jan 2013 01:23:30 +0000 Received: by mail-oa0-f48.google.com with SMTP id h2so3334574oag.21 for ; Thu, 17 Jan 2013 17:23:29 -0800 (PST) X-Received: by 10.60.4.165 with SMTP id l5mr5746881oel.84.1358472209722; Thu, 17 Jan 2013 17:23:29 -0800 (PST) MIME-Version: 1.0 Received: by 10.60.84.5 with HTTP; Thu, 17 Jan 2013 17:22:49 -0800 (PST) In-Reply-To: <50F67844.5040007@codesourcery.com> References: <50F3ADB8.1000603@codesourcery.com> <50F55E11.40008@codesourcery.com> <50F67844.5040007@codesourcery.com> From: Hui Zhu Date: Fri, 18 Jan 2013 01:23:00 -0000 Message-ID: Subject: Re: [PATCH] Add CTF support to GDB [5] Add test for CTF function To: Yao Qi Cc: Joel Brobecker , gdb-patches ml , Tom Tromey Content-Type: multipart/mixed; boundary=e89a8ff1c2e87f6f1c04d385f548 X-IsSubscribed: yes Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2013-01/txt/msg00398.txt.bz2 --e89a8ff1c2e87f6f1c04d385f548 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Content-length: 1859 On Wed, Jan 16, 2013 at 5:52 PM, Yao Qi wrote: > On 01/16/2013 03:38 PM, Hui Zhu wrote: >> >> make check RUNTESTFLAGS=3D"--target_board=3Dnative-gdbserver ctf.exp" >> remote_exec host "babeltrace $ctfdir < /dev/null" "" "" "output" will >> get error. I think that is why gas_version have "if [is_remote host]" >> for that. > > > What is the error? 'remote_exec host' has been used in some places in gdb > testsuite so it should work well. The one-line statement below works with > combinations of {remote-host, local-host} x {babeltrace installed, > babeltrace not installed} ERROR: tcl error sourcing ../../../gdb/gdb/testsuite/gdb.trace/ctf.exp. ERROR: bad spawn_id (process died earlier?) This is what I got. > > set ctfdir "foo" > set status [remote_exec host "babeltrace $ctfdir < /dev/null"] > verbose -log "status\[0\] ([lindex $status 0])" > verbose -log "status\[1\] ([lindex $status 1])" > > 1) babeltrace installed (local-host and remote-host). We'll get, > status[0] (1) > status[1] ([error] opening trace "foo" for reading. > > 2) babeltrace not installed, local-host. We'll get, > status[0] (-1) > status[1] (spawn failed) > > 3) babeltrace not installed, remote-host. We'll get, > status[0] (1) > status[1] (sh: babeltrace: command not found) > > We can match 'status[1]' to know the different results of executing > 'babeltrace' on host. > > P.S. I am not good at tcl/expect, so I may miss something. Thanks. I am very clear about this way. Do you mind I keep current way that I just used? > > -- > Yao (=E9=BD=90=E5=B0=A7) According to the reveiw from Abid. I found that we need a test for while-stepping. So I add test for that. Thanks, Hui 2013-01-18 Hui Zhu * gdb.trace/Makefile.in (PROGS): Add ctf. * gdb.trace/ctf.c: New file. * gdb.trace/ctf.exp: New file. --e89a8ff1c2e87f6f1c04d385f548 Content-Type: text/plain; charset=US-ASCII; name="ctf-test.txt" Content-Disposition: attachment; filename="ctf-test.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_hc2n8qtq0 Content-length: 10822 LS0tIGEvdGVzdHN1aXRlL2dkYi50cmFjZS9NYWtlZmlsZS5pbgorKysgYi90 ZXN0c3VpdGUvZ2RiLnRyYWNlL01ha2VmaWxlLmluCkBAIC0zLDcgKzMsNyBA QCBzcmNkaXIgPSBAc3JjZGlyQAogCiAuUEhPTlk6IGFsbCBjbGVhbiBtb3N0 bHljbGVhbiBkaXN0Y2xlYW4gcmVhbGNsZWFuCiAKLVBST0dTID0gYXggYmFj a3RyYWNlIGRlbHRyYWNlIGRpc2Nvbm5lY3RlZC10cmFjaW5nIGluZm90cmFj ZSBwYWNrZXRsZW4gXAorUFJPR1MgPSBheCBiYWNrdHJhY2UgY3RmIGRlbHRy YWNlIGRpc2Nvbm5lY3RlZC10cmFjaW5nIGluZm90cmFjZSBwYWNrZXRsZW4g XAogCXBhc3NjLWR5biBwYXNzY291bnQgcmVwb3J0IHNhdmUtdHJhY2UgdGZp bGUgdGZpbmQgdHJhY2VjbWQgdHN2IFwKIAl1bmF2YWlsYWJsZSB3aGlsZS1k eW4gd2hpbGUtc3RlcHBpbmcKIAotLS0gL2Rldi9udWxsCisrKyBiL3Rlc3Rz dWl0ZS9nZGIudHJhY2UvY3RmLmMKQEAgLTAsMCArMSw0OCBAQAorLyogQ1RG IHRlc3QgcHJvZ3JhbS4KKworICAgQ29weXJpZ2h0IChDKSAyMDEzIEZyZWUg U29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorCisgICBUaGlzIGZpbGUgaXMg cGFydCBvZiBHREIuCisKKyAgIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3 YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5Cisg ICBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1Ymxp YyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICAgdGhlIEZyZWUgU29mdHdh cmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5z ZSwgb3IKKyAgIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24u CisKKyAgIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9w ZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICAgYnV0IFdJVEhPVVQgQU5Z IFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkg b2YKKyAgIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJ Q1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAgIEdOVSBHZW5lcmFsIFB1Ymxp YyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisKKyAgIFlvdSBzaG91bGQg aGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1Ymxp YyBMaWNlbnNlCisgICBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5v dCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4gICovCisK K3R5cGVkZWYgY2hhciB0ZXN0X3QxOwordHlwZWRlZiB0ZXN0X3QxIHRlc3Rf dDI7Cit0eXBlZGVmIHRlc3RfdDIgdGVzdF90MzsKKworaW50CittYWluICgp Cit7CisgIGludCBpOworICBpbnQgYSA9IDA7CisgIHRlc3RfdDMgYiA9IDE7 CisgIHRlc3RfdDMgY1tdWzRdID0geyIxMjMiLCAiNDU2IiwgIjc4OSIsICIx MjMiLCAiNDU2IiwgIjc4OSJ9OworICBzdHJ1Y3QKKyAgICB7CisgICAgICBp bnQgYTsKKyAgICAgIGludCBiOworICAgIH0gZFsyXVsyXSA9IHt7ezEsIDJ9 LCB7MywgNH19LCB7ezUsIDZ9LCB7NywgOH19fTsKKworICBmb3IgKGkgPSAw OyBpIDwgMTA7IGkrKykKKyAgICB7CisgICAgICArK2E7ICAvKiBzZXQgdHJh Y2Vwb2ludCAxIGhlcmUgKi8KKyAgICAgICsrYjsgIC8qIHNldCB0cmFjZXBv aW50IDIgaGVyZSAqLworICAgICAgKytjWzBdWzFdOworICAgICAgKytkWzBd WzFdLmE7CisgICAgfQorCisgIC8qIHNldCBicmVha3BvaW50IGVuZCBoZXJl ICovCisKKyAgcmV0dXJuIDA7Cit9Ci0tLSAvZGV2L251bGwKKysrIGIvdGVz dHN1aXRlL2dkYi50cmFjZS9jdGYuZXhwCkBAIC0wLDAgKzEsMTczIEBACisj ICAgQ29weXJpZ2h0IDIwMTMgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBJ bmMuCisjCisjIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3Ug Y2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisjIGl0IHVuZGVy IHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2Ug YXMgcHVibGlzaGVkIGJ5CisjIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRp b247IGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yCisjIChh dCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisjCisjIFRoaXMg cHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdp bGwgYmUgdXNlZnVsLAorIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdp dGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFO VEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0Uu ICBTZWUgdGhlCisjIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBt b3JlIGRldGFpbHMuCisjCisjIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBh IGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisjIGFs b25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93 d3cuZ251Lm9yZy9saWNlbnNlcy8+LgorCitsb2FkX2xpYiAidHJhY2Utc3Vw cG9ydC5leHAiOworCitwcm9jIGZpbGVfY29udGVudHMgeyBmaWxlbmFtZSB9 IHsKKyAgICBzZXQgZmlsZSBbb3BlbiAkZmlsZW5hbWUgcl0KKyAgICBzZXQg Y29udGVudHMgW3JlYWQgJGZpbGVdCisgICAgY2xvc2UgJGZpbGUKKyAgICBy ZXR1cm4gJGNvbnRlbnRzCit9CisKK3N0YW5kYXJkX3Rlc3RmaWxlCitzZXQg ZXhlY3V0YWJsZSAkdGVzdGZpbGUKK3NldCBleHBmaWxlICR0ZXN0ZmlsZS5l eHAKK3NldCBjdGZkaXIgJHRlc3RmaWxlLmN0ZgorCitpZiBbcHJlcGFyZV9m b3JfdGVzdGluZyAkZXhwZmlsZSAkZXhlY3V0YWJsZSAkc3JjZmlsZSBcCisg ICAgICAgIHtkZWJ1ZyBub3dhcm5pbmdzfV0geworICAgIHVudGVzdGVkICJm YWlsZWQgdG8gcHJlcGFyZSBmb3IgdHJhY2UgdGVzdHMiCisgICAgcmV0dXJu IC0xCit9CisKK2lmICFbcnVudG9fbWFpbl0geworICAgIGZhaWwgImNhbid0 IHJ1biB0byBtYWluIHRvIGNoZWNrIGZvciB0cmFjZSBzdXBwb3J0IgorICAg IHJldHVybiAtMQorfQorCitpZiAhW2dkYl90YXJnZXRfc3VwcG9ydHNfdHJh Y2VdIHsKKyAgICB1bnN1cHBvcnRlZCAidGFyZ2V0IGRvZXMgbm90IHN1cHBv cnQgdHJhY2UiCisgICAgcmV0dXJuIC0xOworfQorCisKKyNUZXN0ICJ0c2F2 ZSAtY3RmIgorCitzZXQgdHJhY2VfbG9jYXRpb24xIFtnZGJfZ2V0X2xpbmVf bnVtYmVyICJzZXQgdHJhY2Vwb2ludCAxIGhlcmUiXQorZ2RiX3Rlc3QgInRy YWNlICR0cmFjZV9sb2NhdGlvbjEiICJUcmFjZXBvaW50ICR7ZGVjaW1hbH0g YXQgLioiCitnZGJfdHJhY2Vfc2V0YWN0aW9ucyAic2V0IGFjdGlvbiBmb3Ig bGluZSAkdHJhY2VfbG9jYXRpb24xIiAiIiBcCisJImNvbGxlY3QgXCRsb2Nh bCIgIl4kIiBcCisJIndoaWxlLXN0ZXBwaW5nIDEiICJeJCIgXAorCSJjb2xs ZWN0IFwkbG9jYWwiICJeJCIgXAorCSJlbmQiICJeJCIgXAorCSJlbmQiICIi CisKK3NldCB0cmFjZV9sb2NhdGlvbjIgW2dkYl9nZXRfbGluZV9udW1iZXIg InNldCB0cmFjZXBvaW50IDIgaGVyZSJdCitnZGJfdGVzdCAidHJhY2UgJHRy YWNlX2xvY2F0aW9uMiIgIlRyYWNlcG9pbnQgJHtkZWNpbWFsfSBhdCAuKiIK K2dkYl90cmFjZV9zZXRhY3Rpb25zICJzZXQgYWN0aW9uIGZvciBsaW5lICR0 cmFjZV9sb2NhdGlvbjIiICIiIFwKKwkiY29sbGVjdCBcJHJlZyIgIl4kIiBc CisJIndoaWxlLXN0ZXBwaW5nIDEiICJeJCIgXAorCSJjb2xsZWN0IFwkcmVn IiAiXiQiIFwKKwkiZW5kIiAiXiQiIFwKKwkiZW5kIiAiIgorCitnZGJfdGVz dF9ub19vdXRwdXQgInRzdGFydCIKKworc2V0IGJyZWFrX2VuZCBbZ2RiX2dl dF9saW5lX251bWJlciAic2V0IGJyZWFrcG9pbnQgZW5kIGhlcmUiXQorZ2Ri X3Rlc3QgImJyZWFrICRicmVha19lbmQiICJCcmVha3BvaW50ICR7ZGVjaW1h bH0gYXQgLioiCisKK2dkYl90ZXN0ICJjb250aW51ZSIgIkNvbnRpbnVpbmdc XC5cWyBcclxuXF0rQnJlYWtwb2ludC4qIgorZ2RiX3Rlc3Rfbm9fb3V0cHV0 ICJ0c3RvcCIKKworZ2RiX3Rlc3QgInRzYXZlIC1jdGYgJGN0ZmRpciIgIlRy YWNlIGRhdGEgc2F2ZWQgdG8gZGlyZWN0b3J5IFwnJGN0ZmRpclwnLiIKKwor I0dldCB0aGUgcGF0aG5hbWUgb2YgYmFiZWx0cmFjZSBhbmQgc2V0IGl0IHRv ICR3aGljaF9iYWJlbHRyYWNlLgorI0lmIGhvc3QgZG9lc24ndCBoYXZlIGJh YmVsdHJhY2UsICR3aGljaF9iYWJlbHRyYWNlIHdpbGwgc2V0IHRvIDAuCitp ZiBbaW5mbyBleGlzdHMgQkFCRUxUUkFDRV0geworICAgIHNldCB3aGljaF9i YWJlbHRyYWNlICR7QkFCRUxUUkFDRX0KK30gZWxzZSB7CisgICAgaWYgW2lz X3JlbW90ZSBob3N0XSB0aGVuIHsKKwlyZW1vdGVfZXhlYyBob3N0ICJ3aGlj aCBiYWJlbHRyYWNlIiAiIiAiIiAiYmFiZWx0cmFjZS53aGljaCIKKwlyZW1v dGVfdXBsb2FkIGhvc3QgImJhYmVsdHJhY2Uud2hpY2giCisJc2V0IHdoaWNo X2JhYmVsdHJhY2UgW2ZpbGVfY29udGVudHMgImJhYmVsdHJhY2Uud2hpY2gi XQorCXJlbW90ZV9maWxlIGJ1aWxkIGRlbGV0ZSAiYmFiZWx0cmFjZS53aGlj aCIKKwlyZW1vdGVfZmlsZSBob3N0IGRlbGV0ZSAiYmFiZWx0cmFjZS53aGlj aCIKKyAgICB9IGVsc2UgeworCXNldCB3aGljaF9iYWJlbHRyYWNlIFt3aGlj aCBiYWJlbHRyYWNlXQorICAgIH0KK30KKworI1VzZSAkd2hpY2hfYmFiZWx0 cmFjZSBjaGVjayAkY3RmZGlyLgoraWYgeyAkd2hpY2hfYmFiZWx0cmFjZSA9 PSAwIH0gdGhlbiB7CisgICAgdW5zdXBwb3J0ZWQgImJhYmVsdHJhY2UgY2hl Y2sgY3RmIGRpcmVjdG9yeSIKK30gZWxzZSB7CisgICAgI0xldCBiYWJlbHRy YWNlIG91dHB1dCBhbiBlcnJvciB0byBtYWtlIHN1cmUgY3VycmVudCB3YXkg aXMgcmlnaHQuCisgICAgaWYgW2lzX3JlbW90ZSBob3N0XSB0aGVuIHsKKwly ZW1vdGVfZXhlYyBob3N0ICIkd2hpY2hfYmFiZWx0cmFjZSBub3RfZXhpc3Qg PCAvZGV2L251bGwiICIiICIiICJiYWJlbHRyYWNlLm91dHB1dCIKKwlyZW1v dGVfdXBsb2FkIGhvc3QgImJhYmVsdHJhY2Uub3V0cHV0IgorCXNldCBiYWJl bHRyYWNlX291dHB1dCBbZmlsZV9jb250ZW50cyAiYmFiZWx0cmFjZS5vdXRw dXQiXQorCXJlbW90ZV9maWxlIGJ1aWxkIGRlbGV0ZSAiYmFiZWx0cmFjZS5v dXRwdXQiCisJcmVtb3RlX2ZpbGUgaG9zdCBkZWxldGUgImJhYmVsdHJhY2Uu b3V0cHV0IgorICAgIH0gZWxzZSB7CisJY2F0Y2ggImV4ZWMgJHdoaWNoX2Jh YmVsdHJhY2Ugbm90X2V4aXN0IDwgL2Rldi9udWxsIiBiYWJlbHRyYWNlX291 dHB1dAorICAgIH0KKyAgICBpZiB7IFtzdHJpbmcgbGFzdCAiXFtlcnJvclxd IiAkYmFiZWx0cmFjZV9vdXRwdXRdID09IC0xIH0gdGhlbiB7CisJdW5zdXBw b3J0ZWQgImNhbm5vdCBoYW5kbGUgYmFiZWx0cmFjZSBvdXRwdXQiCisgICAg fSBlbHNlIHsKKwlpZiBbaXNfcmVtb3RlIGhvc3RdIHRoZW4geworCSAgICBy ZW1vdGVfZXhlYyBob3N0ICIkd2hpY2hfYmFiZWx0cmFjZSAkY3RmZGlyIDwg L2Rldi9udWxsIiAiIiAiIiAiYmFiZWx0cmFjZS5vdXRwdXQiCisJICAgIHJl bW90ZV91cGxvYWQgaG9zdCAiYmFiZWx0cmFjZS5vdXRwdXQiCisJICAgIHNl dCBiYWJlbHRyYWNlX291dHB1dCBbZmlsZV9jb250ZW50cyAiYmFiZWx0cmFj ZS5vdXRwdXQiXQorCSAgICByZW1vdGVfZmlsZSBidWlsZCBkZWxldGUgImJh YmVsdHJhY2Uub3V0cHV0IgorCSAgICByZW1vdGVfZmlsZSBob3N0IGRlbGV0 ZSAiYmFiZWx0cmFjZS5vdXRwdXQiCisJfSBlbHNlIHsKKwkgICAgY2F0Y2gg ImV4ZWMgJHdoaWNoX2JhYmVsdHJhY2UgJGN0ZmRpciA8IC9kZXYvbnVsbCIg YmFiZWx0cmFjZV9vdXRwdXQKKwl9CisJaWYgeyBbc3RyaW5nIGxhc3QgIlxb ZXJyb3JcXSIgJGJhYmVsdHJhY2Vfb3V0cHV0XSAhPSAtMSB9IHRoZW4gewor CSAgICBmYWlsICJiYWJlbHRyYWNlIG9wZW4gY3RmIGRpcmVjdG9yeSIKKwl9 CisgICAgfQorfQorCisKKyNUZXN0ICJ0YXJnZXQgY3RmIiB3aXRoICRjdGZk aXIuCitnZGJfdGVzdF9ub19vdXRwdXQgInNldCBjb25maXJtIG9mZiIKK2dk Yl90ZXN0X25vX291dHB1dCAia2lsbCIKK2dkYl90ZXN0X211bHRpcGxlICJ0 YXJnZXQgY3RmICRjdGZkaXIiICIiIHsKKyAgICAtcmUgIlVuZGVmaW5lZCB0 YXJnZXQgY29tbWFuZDogXCJjdGYgY3RmXC5jdGZcIlwuICBUcnkgXCJoZWxw IHRhcmdldFwiXC5cclxuJGdkYl9wcm9tcHQgJCIgeworCXVuc3VwcG9ydGVk ICJ0YXJnZXQgZG9lcyBub3Qgc3VwcG9ydCBjdGYiCisJcmVtb3RlX2V4ZWMg aG9zdCAicm0gLXJmICRjdGZkaXIiCisJcmV0dXJuIC0xOworICAgIH0KKyAg ICAtcmUgIi4qZmFpbC4qXHJcbiRnZGJfcHJvbXB0ICQiIHsKKwlmYWlsICJ0 YXJnZXQgY3RmICRjdGZkaXIiCisgICAgfQorICAgIC1yZSAiXHJcbiRnZGJf cHJvbXB0ICQiIHsKKyAgICAgICAgcGFzcyAidGFyZ2V0IGN0ZiAkY3RmZGly IgorICAgIH0KK30KKworZ2RiX3Rlc3QgInRmaW5kIDAiICIuKkZvdW5kIHRy YWNlIGZyYW1lIDAuKiIgInRhcmdldCBjdGYgdGZpbmQgMCIKK2dkYl90ZXN0 ICJ0ZHVtcCIgIi4qYiA9IDEuKmEgPSAwLippID0gMC4qIiAiZmlyc3QgdGFy Z2V0IGN0ZiB0ZHVtcCIKK2dkYl90ZXN0ICJwcmludCBcJGIiICIuKiA9IDEu KiIgImZpcnN0IHRhcmdldCBjdGYgcHJpbnQgXCRiIgorZ2RiX3Rlc3QgInBy aW50IFwkYSIgIi4qID0gMC4qIiAiZmlyc3QgdGFyZ2V0IGN0ZiBwcmludCBc JGEiCitnZGJfdGVzdCAicHJpbnQgXCRpIiAiLiogPSAwLioiICJmaXJzdCB0 YXJnZXQgY3RmIHByaW50IFwkaSIKKworZ2RiX3Rlc3QgInRmaW5kIDEiICIu KkZvdW5kIHRyYWNlIGZyYW1lIDEuKiIgInRhcmdldCBjdGYgdGZpbmQgMSIK K2dkYl90ZXN0ICJ0ZHVtcCIgIi4qYiA9IDEuKmEgPSAxLippID0gMC4qIiAi c2Vjb25kIHRhcmdldCBjdGYgdGR1bXAiCitnZGJfdGVzdCAicHJpbnQgXCRi IiAiLiogPSAxLioiICJzZWNvbmQgdGFyZ2V0IGN0ZiBwcmludCBcJGIiCitn ZGJfdGVzdCAicHJpbnQgXCRhIiAiLiogPSAxLioiICJzZWNvbmQgdGFyZ2V0 IGN0ZiBwcmludCBcJGEiCitnZGJfdGVzdCAicHJpbnQgXCRpIiAiLiogPSAw LioiICJzZWNvbmQgdGFyZ2V0IGN0ZiBwcmludCBcJGkiCisKK2dkYl90ZXN0 ICJ0ZmluZCAyIiAiLipGb3VuZCB0cmFjZSBmcmFtZSAyLioiICJ0YXJnZXQg Y3RmIHRmaW5kIDIiCisKK2dkYl90ZXN0ICJ0ZmluZCAzIiAiLipGb3VuZCB0 cmFjZSBmcmFtZSAzLioiICJ0YXJnZXQgY3RmIHRmaW5kIDMiCisKK2dkYl90 ZXN0ICJ0ZmluZCA0IiAiLipGb3VuZCB0cmFjZSBmcmFtZSA0LioiICJ0YXJn ZXQgY3RmIHRmaW5kIDQiCitnZGJfdGVzdCAidGR1bXAiICIuKmIgPSAyLiph ID0gMS4qaSA9IDEuKiIgInRoaXJkIHRhcmdldCBjdGYgdGR1bXAiCitnZGJf dGVzdCAicHJpbnQgXCRiIiAiLiogPSAyLioiICJ0aGlyZCB0YXJnZXQgY3Rm IHByaW50IFwkYiIKK2dkYl90ZXN0ICJwcmludCBcJGEiICIuKiA9IDEuKiIg InRoaXJkIHRhcmdldCBjdGYgcHJpbnQgXCRhIgorZ2RiX3Rlc3QgInByaW50 IFwkaSIgIi4qID0gMS4qIiAidGhpcmQgdGFyZ2V0IGN0ZiBwcmludCBcJGki CisKK2dkYl90ZXN0ICJ0ZmluZCA1IiAiLipGb3VuZCB0cmFjZSBmcmFtZSA1 LioiICJ0YXJnZXQgY3RmIHRmaW5kIDUiCitnZGJfdGVzdCAidGR1bXAiICIu KmIgPSAyLiphID0gMi4qaSA9IDEuKiIgImZvdXJ0aCB0YXJnZXQgY3RmIHRk dW1wIgorZ2RiX3Rlc3QgInByaW50IFwkYiIgIi4qID0gMi4qIiAiZm91cnRo IHRhcmdldCBjdGYgcHJpbnQgXCRiIgorZ2RiX3Rlc3QgInByaW50IFwkYSIg Ii4qID0gMi4qIiAiZm91cnRoIHRhcmdldCBjdGYgcHJpbnQgXCRhIgorZ2Ri X3Rlc3QgInByaW50IFwkaSIgIi4qID0gMS4qIiAiZm91cnRoIHRhcmdldCBj dGYgcHJpbnQgXCRpIgorCisjQ2xlYW4KKworI3JlbW90ZV9leGVjIGhvc3Qg InJtIC1yZiAkY3RmZGlyIgo= --e89a8ff1c2e87f6f1c04d385f548--