From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 31383 invoked by alias); 19 Feb 2011 23:29:53 -0000 Received: (qmail 31371 invoked by uid 22791); 19 Feb 2011 23:29:50 -0000 X-SWARE-Spam-Status: No, hits=-4.8 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_HI,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from smtp-outbound-2.vmware.com (HELO smtp-outbound-2.vmware.com) (65.115.85.73) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Sat, 19 Feb 2011 23:29:45 +0000 Received: from mailhost3.vmware.com (mailhost3.vmware.com [10.16.27.45]) by smtp-outbound-2.vmware.com (Postfix) with ESMTP id 7D29D51001; Sat, 19 Feb 2011 15:29:43 -0800 (PST) Received: from msnyder-server.eng.vmware.com (promd-2s-dhcp138.eng.vmware.com [10.20.124.138]) by mailhost3.vmware.com (Postfix) with ESMTP id 6A89ACD99C; Sat, 19 Feb 2011 15:29:43 -0800 (PST) Message-ID: <4D605267.8030708@vmware.com> Date: Sun, 20 Feb 2011 01:44:00 -0000 From: Michael Snyder User-Agent: Thunderbird 2.0.0.24 (X11/20101201) MIME-Version: 1.0 To: "gdb-patches@sourceware.org" , Vladimir Prus , "dan@codesourcery.com" Subject: [RFA] add test for memattr, use get_number_or_range for memattr commands Content-Type: multipart/mixed; boundary="------------000901050404010809080005" 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: 2011-02/txt/msg00517.txt.bz2 This is a multi-part message in MIME format. --------------000901050404010809080005 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-length: 103 Before modifying these commands, I noticed there was no test for them, so I wrote one. OK to commit? --------------000901050404010809080005 Content-Type: text/plain; name="memattr.txt" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="memattr.txt" Content-length: 20350 MjAxMS0wMi0xOSAgTWljaGFlbCBTbnlkZXIgIDxtc255ZGVyQHZtd2FyZS5j b20+CgoJKiBtZW1hdHRyLmMgKG1lbV9lbmFibGVfY29tbWFuZCk6IFVzZSBn ZXRfbnVtYmVyX29yX3JhbmdlLgoJKG1lbV9kaXNhYmxlX2NvbW1hbmQpOiBE aXR0by4KCShtZW1fZGVsZXRlX2NvbW1hbmQpOiBEaXR0by4KCjIwMTEtMDIt MTkgIE1pY2hhZWwgU255ZGVyICA8bXNueWRlckB2bXdhcmUuY29tPgoKCSog Z2RiLmJhc2UvbWVtYXR0ci5leHA6IE5ldyB0ZXN0LgoJKiBnZGIuYmFzZS9t ZW1hdHRyLmM6IFRlc3QgbG9hZCBmb3IgbWVtYXR0ci5leHAuCgpJbmRleDog bWVtYXR0ci5jCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IC9j dnMvc3JjL3NyYy9nZGIvbWVtYXR0ci5jLHYKcmV0cmlldmluZyByZXZpc2lv biAxLjQyCmRpZmYgLXUgLXAgLXUgLXAgLXIxLjQyIG1lbWF0dHIuYwotLS0g bWVtYXR0ci5jCTkgSmFuIDIwMTEgMDM6MjA6MzMgLTAwMDAJMS40MgorKysg bWVtYXR0ci5jCTE5IEZlYiAyMDExIDIzOjI1OjExIC0wMDAwCkBAIC0yNyw2 ICsyNyw3IEBACiAjaW5jbHVkZSAibGFuZ3VhZ2UuaCIKICNpbmNsdWRlICJ2 ZWMuaCIKICNpbmNsdWRlICJnZGJfc3RyaW5nLmgiCisjaW5jbHVkZSAiYnJl YWtwb2ludC5oIgogCiBjb25zdCBzdHJ1Y3QgbWVtX2F0dHJpYiBkZWZhdWx0 X21lbV9hdHRyaWIgPQogewpAQCAtNTYyLDggKzU2Myw2IEBAIG1lbV9lbmFi bGUgKGludCBudW0pCiBzdGF0aWMgdm9pZAogbWVtX2VuYWJsZV9jb21tYW5k IChjaGFyICphcmdzLCBpbnQgZnJvbV90dHkpCiB7Ci0gIGNoYXIgKnAgPSBh cmdzOwotICBjaGFyICpwMTsKICAgaW50IG51bTsKICAgc3RydWN0IG1lbV9y ZWdpb24gKm07CiAgIGludCBpeDsKQEAgLTU3MiwyNiArNTcxLDE2IEBAIG1l bV9lbmFibGVfY29tbWFuZCAoY2hhciAqYXJncywgaW50IGZyb20KIAogICB0 YXJnZXRfZGNhY2hlX2ludmFsaWRhdGUgKCk7CiAKLSAgaWYgKHAgPT0gMCkK LSAgICB7CisgIGlmIChhcmdzID09IE5VTEwgfHwgKmFyZ3MgPT0gJ1wwJykK KyAgICB7IC8qIEVuYWJsZSBhbGwgbWVtIHJlZ2lvbnMuICAqLwogICAgICAg Zm9yIChpeCA9IDA7IFZFQ19pdGVyYXRlIChtZW1fcmVnaW9uX3MsIG1lbV9y ZWdpb25fbGlzdCwgaXgsIG0pOyBpeCsrKQogCW0tPmVuYWJsZWRfcCA9IDE7 CiAgICAgfQogICBlbHNlCi0gICAgd2hpbGUgKCpwKQorICAgIHdoaWxlIChh cmdzICE9IE5VTEwgJiYgKmFyZ3MgIT0gJ1wwJykKICAgICAgIHsKLQlwMSA9 IHA7Ci0Jd2hpbGUgKCpwMSA+PSAnMCcgJiYgKnAxIDw9ICc5JykKLQkgIHAx Kys7Ci0JaWYgKCpwMSAmJiAqcDEgIT0gJyAnICYmICpwMSAhPSAnXHQnKQot CSAgZXJyb3IgKF8oIkFyZ3VtZW50cyBtdXN0IGJlIG1lbW9yeSByZWdpb24g bnVtYmVycy4iKSk7Ci0KLQludW0gPSBhdG9pIChwKTsKKwludW0gPSBnZXRf bnVtYmVyX29yX3JhbmdlICgmYXJncyk7CiAJbWVtX2VuYWJsZSAobnVtKTsK LQotCXAgPSBwMTsKLQl3aGlsZSAoKnAgPT0gJyAnIHx8ICpwID09ICdcdCcp Ci0JICBwKys7CiAgICAgICB9CiB9CiAMCkBAIC02MTYsOCArNjA1LDYgQEAg bWVtX2Rpc2FibGUgKGludCBudW0pCiBzdGF0aWMgdm9pZAogbWVtX2Rpc2Fi bGVfY29tbWFuZCAoY2hhciAqYXJncywgaW50IGZyb21fdHR5KQogewotICBj aGFyICpwID0gYXJnczsKLSAgY2hhciAqcDE7CiAgIGludCBudW07CiAgIHN0 cnVjdCBtZW1fcmVnaW9uICptOwogICBpbnQgaXg7CkBAIC02MjYsMjYgKzYx MywxNiBAQCBtZW1fZGlzYWJsZV9jb21tYW5kIChjaGFyICphcmdzLCBpbnQg ZnJvCiAKICAgdGFyZ2V0X2RjYWNoZV9pbnZhbGlkYXRlICgpOwogCi0gIGlm IChwID09IDApCisgIGlmIChhcmdzID09IE5VTEwgfHwgKmFyZ3MgPT0gJ1ww JykKICAgICB7CiAgICAgICBmb3IgKGl4ID0gMDsgVkVDX2l0ZXJhdGUgKG1l bV9yZWdpb25fcywgbWVtX3JlZ2lvbl9saXN0LCBpeCwgbSk7IGl4KyspCiAJ bS0+ZW5hYmxlZF9wID0gMDsKICAgICB9CiAgIGVsc2UKLSAgICB3aGlsZSAo KnApCisgICAgd2hpbGUgKGFyZ3MgIT0gTlVMTCAmJiAqYXJncyAhPSAnXDAn KQogICAgICAgewotCXAxID0gcDsKLQl3aGlsZSAoKnAxID49ICcwJyAmJiAq cDEgPD0gJzknKQotCSAgcDErKzsKLQlpZiAoKnAxICYmICpwMSAhPSAnICcg JiYgKnAxICE9ICdcdCcpCi0JICBlcnJvciAoXygiQXJndW1lbnRzIG11c3Qg YmUgbWVtb3J5IHJlZ2lvbiBudW1iZXJzLiIpKTsKLQotCW51bSA9IGF0b2kg KHApOworCW51bSA9IGdldF9udW1iZXJfb3JfcmFuZ2UgKCZhcmdzKTsKIAlt ZW1fZGlzYWJsZSAobnVtKTsKLQotCXAgPSBwMTsKLQl3aGlsZSAoKnAgPT0g JyAnIHx8ICpwID09ICdcdCcpCi0JICBwKys7CiAgICAgICB9CiB9CiAKQEAg LTY3OSwxNSArNjU2LDEzIEBAIG1lbV9kZWxldGUgKGludCBudW0pCiBzdGF0 aWMgdm9pZAogbWVtX2RlbGV0ZV9jb21tYW5kIChjaGFyICphcmdzLCBpbnQg ZnJvbV90dHkpCiB7Ci0gIGNoYXIgKnAgPSBhcmdzOwotICBjaGFyICpwMTsK ICAgaW50IG51bTsKIAogICByZXF1aXJlX3VzZXJfcmVnaW9ucyAoZnJvbV90 dHkpOwogCiAgIHRhcmdldF9kY2FjaGVfaW52YWxpZGF0ZSAoKTsKIAotICBp ZiAocCA9PSAwKQorICBpZiAoYXJncyA9PSBOVUxMIHx8ICphcmdzID09ICdc MCcpCiAgICAgewogICAgICAgaWYgKHF1ZXJ5IChfKCJEZWxldGUgYWxsIG1l bW9yeSByZWdpb25zPyAiKSkpCiAJbWVtX2NsZWFyICgpOwpAQCAtNjk1LDIw ICs2NzAsMTAgQEAgbWVtX2RlbGV0ZV9jb21tYW5kIChjaGFyICphcmdzLCBp bnQgZnJvbQogICAgICAgcmV0dXJuOwogICAgIH0KIAotICB3aGlsZSAoKnAp CisgIHdoaWxlIChhcmdzICE9IE5VTEwgJiYgKmFyZ3MgIT0gJ1wwJykKICAg ICB7Ci0gICAgICBwMSA9IHA7Ci0gICAgICB3aGlsZSAoKnAxID49ICcwJyAm JiAqcDEgPD0gJzknKQotCXAxKys7Ci0gICAgICBpZiAoKnAxICYmICpwMSAh PSAnICcgJiYgKnAxICE9ICdcdCcpCi0JZXJyb3IgKF8oIkFyZ3VtZW50cyBt dXN0IGJlIG1lbW9yeSByZWdpb24gbnVtYmVycy4iKSk7Ci0KLSAgICAgIG51 bSA9IGF0b2kgKHApOworICAgICAgbnVtID0gZ2V0X251bWJlcl9vcl9yYW5n ZSAoJmFyZ3MpOwogICAgICAgbWVtX2RlbGV0ZSAobnVtKTsKLQotICAgICAg cCA9IHAxOwotICAgICAgd2hpbGUgKCpwID09ICcgJyB8fCAqcCA9PSAnXHQn KQotCXArKzsKICAgICB9CiAKICAgZG9udF9yZXBlYXQgKCk7CkBAIC03Mzks MTkgKzcwNCwxOSBAQCB3aGVyZSA8bW9kZT4gIG1heSBiZSBydyAocmVhZC93 cml0ZSksIHJvCiAgIGFkZF9jbWQgKCJtZW0iLCBjbGFzc192YXJzLCBtZW1f ZW5hYmxlX2NvbW1hbmQsIF8oIlwKIEVuYWJsZSBtZW1vcnkgcmVnaW9uLlxu XAogQXJndW1lbnRzIGFyZSB0aGUgY29kZSBudW1iZXJzIG9mIHRoZSBtZW1v cnkgcmVnaW9ucyB0byBlbmFibGUuXG5cCi1Vc2FnZTogZW5hYmxlIG1lbSA8 Y29kZSBudW1iZXI+XG5cCitVc2FnZTogZW5hYmxlIG1lbSA8Y29kZSBudW1i ZXI+Li4uXG5cCiBEbyBcImluZm8gbWVtXCIgdG8gc2VlIGN1cnJlbnQgbGlz dCBvZiBjb2RlIG51bWJlcnMuIiksICZlbmFibGVsaXN0KTsKIAogICBhZGRf Y21kICgibWVtIiwgY2xhc3NfdmFycywgbWVtX2Rpc2FibGVfY29tbWFuZCwg XygiXAogRGlzYWJsZSBtZW1vcnkgcmVnaW9uLlxuXAogQXJndW1lbnRzIGFy ZSB0aGUgY29kZSBudW1iZXJzIG9mIHRoZSBtZW1vcnkgcmVnaW9ucyB0byBk aXNhYmxlLlxuXAotVXNhZ2U6IGRpc2FibGUgbWVtIDxjb2RlIG51bWJlcj5c blwKK1VzYWdlOiBkaXNhYmxlIG1lbSA8Y29kZSBudW1iZXI+Li4uXG5cCiBE byBcImluZm8gbWVtXCIgdG8gc2VlIGN1cnJlbnQgbGlzdCBvZiBjb2RlIG51 bWJlcnMuIiksICZkaXNhYmxlbGlzdCk7CiAKICAgYWRkX2NtZCAoIm1lbSIs IGNsYXNzX3ZhcnMsIG1lbV9kZWxldGVfY29tbWFuZCwgXygiXAogRGVsZXRl IG1lbW9yeSByZWdpb24uXG5cCiBBcmd1bWVudHMgYXJlIHRoZSBjb2RlIG51 bWJlcnMgb2YgdGhlIG1lbW9yeSByZWdpb25zIHRvIGRlbGV0ZS5cblwKLVVz YWdlOiBkZWxldGUgbWVtIDxjb2RlIG51bWJlcj5cblwKK1VzYWdlOiBkZWxl dGUgbWVtIDxjb2RlIG51bWJlcj4uLi5cblwKIERvIFwiaW5mbyBtZW1cIiB0 byBzZWUgY3VycmVudCBsaXN0IG9mIGNvZGUgbnVtYmVycy4iKSwgJmRlbGV0 ZWxpc3QpOwogCiAgIGFkZF9pbmZvICgibWVtIiwgbWVtX2luZm9fY29tbWFu ZCwKSW5kZXg6IHRlc3RzdWl0ZS9nZGIuYmFzZS9tZW1hdHRyLmMKPT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogdGVzdHN1aXRlL2dkYi5iYXNl L21lbWF0dHIuYwpkaWZmIC1OIHRlc3RzdWl0ZS9nZGIuYmFzZS9tZW1hdHRy LmMKLS0tIC9kZXYvbnVsbAkxIEphbiAxOTcwIDAwOjAwOjAwIC0wMDAwCisr KyB0ZXN0c3VpdGUvZ2RiLmJhc2UvbWVtYXR0ci5jCTE5IEZlYiAyMDExIDIz OjI1OjExIC0wMDAwCkBAIC0wLDAgKzEsMTEgQEAKKyNkZWZpbmUgTUVNU0la RSA2NA0KK3N0YXRpYyBpbnQgbWVtMVtNRU1TSVpFXSA9IHsxMTEsIDIyMiwg MzMzLCA0NDQsIDU1NX07DQorc3RhdGljIGludCBtZW0yW01FTVNJWkVdOw0K K3N0YXRpYyBpbnQgbWVtM1tNRU1TSVpFXTsNCitzdGF0aWMgaW50IG1lbTRb TUVNU0laRV07DQorc3RhdGljIGludCBtZW01W01FTVNJWkVdOw0KKw0KK2lu dCBtYWluKCkNCit7DQorICByZXR1cm4gMDsNCit9DQpJbmRleDogdGVzdHN1 aXRlL2dkYi5iYXNlL21lbWF0dHIuZXhwCj09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT0KUkNTIGZpbGU6IHRlc3RzdWl0ZS9nZGIuYmFzZS9tZW1hdHRyLmV4cApk aWZmIC1OIHRlc3RzdWl0ZS9nZGIuYmFzZS9tZW1hdHRyLmV4cAotLS0gL2Rl di9udWxsCTEgSmFuIDE5NzAgMDA6MDA6MDAgLTAwMDAKKysrIHRlc3RzdWl0 ZS9nZGIuYmFzZS9tZW1hdHRyLmV4cAkxOSBGZWIgMjAxMSAyMzoyNToxMSAt MDAwMApAQCAtMCwwICsxLDQxOSBAQAorIyBDb3B5cmlnaHQgMTk5OCwgMTk5 OSwgMjAwMCwgMjAwNywgMjAwOCwgMjAwOSwgMjAxMCwgMjAxMQorIyBGcmVl IFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KKworIyBUaGlzIHByb2dyYW0g aXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5k L29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBH ZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUg RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAzIG9m IHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRl ciB2ZXJzaW9uLgorIworIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQg aW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKKyMgYnV0IFdJ VEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQg d2FycmFudHkgb2YKKyMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9S IEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorIyBHTlUgR2VuZXJh bCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorIworIyBZb3Ug c2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJh bCBQdWJsaWMgTGljZW5zZQorIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4g IElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4K KworIyBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgZ2RiIHRlc3RzdWl0ZQor CisjIFRlc3QgdGhlIG1lbW9yeSBhdHRyaWJ1dGUgY29tbWFuZHMuCisKK2lm ICR0cmFjZWxldmVsIHRoZW4geworICAgIHN0cmFjZSAkdHJhY2VsZXZlbAor fQorCitzZXQgdGVzdGZpbGUgIm1lbWF0dHIiCitzZXQgc3JjZmlsZSAgJHt0 ZXN0ZmlsZX0uYworCitpZiB7IFtwcmVwYXJlX2Zvcl90ZXN0aW5nICR0ZXN0 ZmlsZS5leHAgJHRlc3RmaWxlICRzcmNmaWxlXSB9IHsKKyAgICByZXR1cm4g LTEKK30KKworcnVudG8gbWFpbgorCitnZGJfdGVzdF9tdWx0aXBsZSAiaW5m byBhZGRyZXNzIG1lbTEiICJnZXQgYWRkcmVzcyBvZiBtZW0xIiB7CisgICAg LXJlICJTeW1ib2wgXCJtZW0xXCIgaXMgc3RhdGljIHN0b3JhZ2UgYXQgYWRk cmVzcyAoJGhleCkuKiRnZGJfcHJvbXB0ICQiIHsKKwlzZXQgbWVtMXN0YXJ0 ICRleHBlY3Rfb3V0KDEsc3RyaW5nKQorICAgIH0KK30KKworZ2RiX3Rlc3Rf bXVsdGlwbGUgImluZm8gYWRkcmVzcyBtZW0yIiAiZ2V0IGFkZHJlc3Mgb2Yg bWVtMiIgeworICAgIC1yZSAiU3ltYm9sIFwibWVtMlwiIGlzIHN0YXRpYyBz dG9yYWdlIGF0IGFkZHJlc3MgKCRoZXgpLiokZ2RiX3Byb21wdCAkIiB7CisJ c2V0IG1lbTJzdGFydCAkZXhwZWN0X291dCgxLHN0cmluZykKKyAgICB9Cit9 CisKK2dkYl90ZXN0X211bHRpcGxlICJpbmZvIGFkZHJlc3MgbWVtMyIgImdl dCBhZGRyZXNzIG9mIG1lbTMiIHsKKyAgICAtcmUgIlN5bWJvbCBcIm1lbTNc IiBpcyBzdGF0aWMgc3RvcmFnZSBhdCBhZGRyZXNzICgkaGV4KS4qJGdkYl9w cm9tcHQgJCIgeworCXNldCBtZW0zc3RhcnQgJGV4cGVjdF9vdXQoMSxzdHJp bmcpCisgICAgfQorfQorCitnZGJfdGVzdF9tdWx0aXBsZSAiaW5mbyBhZGRy ZXNzIG1lbTQiICJnZXQgYWRkcmVzcyBvZiBtZW00IiB7CisgICAgLXJlICJT eW1ib2wgXCJtZW00XCIgaXMgc3RhdGljIHN0b3JhZ2UgYXQgYWRkcmVzcyAo JGhleCkuKiRnZGJfcHJvbXB0ICQiIHsKKwlzZXQgbWVtNHN0YXJ0ICRleHBl Y3Rfb3V0KDEsc3RyaW5nKQorICAgIH0KK30KKworZ2RiX3Rlc3RfbXVsdGlw bGUgImluZm8gYWRkcmVzcyBtZW01IiAiZ2V0IGFkZHJlc3Mgb2YgbWVtNSIg eworICAgIC1yZSAiU3ltYm9sIFwibWVtNVwiIGlzIHN0YXRpYyBzdG9yYWdl IGF0IGFkZHJlc3MgKCRoZXgpLiokZ2RiX3Byb21wdCAkIiB7CisJc2V0IG1l bTVzdGFydCAkZXhwZWN0X291dCgxLHN0cmluZykKKyAgICB9Cit9CisKK2dk Yl90ZXN0X211bHRpcGxlICJwcmludCAmbWVtMVxbNjRcXSIgImdldCBlbmQg b2YgbWVtMSIgeworICAgIC1yZSAiJGRlY2ltYWwgPSAuKiAoJGhleCkuKiRn ZGJfcHJvbXB0ICQiIHsKKwlzZXQgbWVtMWVuZCAkZXhwZWN0X291dCgxLHN0 cmluZykKKyAgICB9Cit9CisKK2dkYl90ZXN0X211bHRpcGxlICJwcmludCAm bWVtMlxbNjRcXSIgImdldCBlbmQgb2YgbWVtMiIgeworICAgIC1yZSAiJGRl Y2ltYWwgPSAuKiAoJGhleCkuKiRnZGJfcHJvbXB0ICQiIHsKKwlzZXQgbWVt MmVuZCAkZXhwZWN0X291dCgxLHN0cmluZykKKyAgICB9Cit9CisKK2dkYl90 ZXN0X211bHRpcGxlICJwcmludCAmbWVtM1xbNjRcXSIgImdldCBlbmQgb2Yg bWVtMyIgeworICAgIC1yZSAiJGRlY2ltYWwgPSAuKiAoJGhleCkuKiRnZGJf cHJvbXB0ICQiIHsKKwlzZXQgbWVtM2VuZCAkZXhwZWN0X291dCgxLHN0cmlu ZykKKyAgICB9Cit9CisKK2dkYl90ZXN0X211bHRpcGxlICJwcmludCAmbWVt NFxbNjRcXSIgImdldCBlbmQgb2YgbWVtNCIgeworICAgIC1yZSAiJGRlY2lt YWwgPSAuKiAoJGhleCkuKiRnZGJfcHJvbXB0ICQiIHsKKwlzZXQgbWVtNGVu ZCAkZXhwZWN0X291dCgxLHN0cmluZykKKyAgICB9Cit9CisKK2dkYl90ZXN0 X211bHRpcGxlICJwcmludCAmbWVtNVxbNjRcXSIgImdldCBlbmQgb2YgbWVt NSIgeworICAgIC1yZSAiJGRlY2ltYWwgPSAuKiAoJGhleCkuKiRnZGJfcHJv bXB0ICQiIHsKKwlzZXQgbWVtNWVuZCAkZXhwZWN0X291dCgxLHN0cmluZykK KyAgICB9Cit9CisKK2dkYl90ZXN0X25vX291dHB1dCAibWVtICRtZW0xc3Rh cnQgJG1lbTFlbmQgd28iICJtZW0gMSIKK2dkYl90ZXN0X25vX291dHB1dCAi bWVtICRtZW0yc3RhcnQgJG1lbTJlbmQgcm8iICJtZW0gMiIKK2dkYl90ZXN0 X25vX291dHB1dCAibWVtICRtZW0zc3RhcnQgJG1lbTNlbmQgcnciICJtZW0g MyIKK2dkYl90ZXN0X25vX291dHB1dCAibWVtICRtZW00c3RhcnQgJG1lbTRl bmQgcnciICJtZW0gNCIKK2dkYl90ZXN0X25vX291dHB1dCAibWVtICRtZW01 c3RhcnQgJG1lbTVlbmQgcnciICJtZW0gNSIKKworc2V0IHNlZTEgMAorc2V0 IHNlZTIgMAorc2V0IHNlZTMgMAorc2V0IHNlZTQgMAorc2V0IHNlZTUgMAor CitnZGJfdGVzdF9tdWx0aXBsZSAiaW5mbyBtZW0iICJpbmZvIG1lbSgxKSIg eworICAgIC1yZSAiMSAgIHkgIFx0JGhleCAkaGV4IHdvIG5vY2FjaGUgXFte XHJcblxdKiIgeworCXNldCBzZWUxIDEKKwlleHBfY29udGludWUKKyAgICB9 CisgICAgLXJlICIyICAgeSAgXHQkaGV4ICRoZXggcm8gbm9jYWNoZSBcW15c clxuXF0qIiB7CisJc2V0IHNlZTIgMQorCWV4cF9jb250aW51ZQorICAgIH0K KyAgICAtcmUgIjMgICB5ICBcdCRoZXggJGhleCBydyBub2NhY2hlIFxbXlxy XG5cXSoiIHsKKwlzZXQgc2VlMyAxCisJZXhwX2NvbnRpbnVlCisgICAgfQor ICAgIC1yZSAiNCAgIHkgIFx0JGhleCAkaGV4IHJ3IG5vY2FjaGUgXFteXHJc blxdKiIgeworCXNldCBzZWU0IDEKKwlleHBfY29udGludWUKKyAgICB9Cisg ICAgLXJlICI1ICAgeSAgXHQkaGV4ICRoZXggcncgbm9jYWNoZSAuXFteXHJc blxdKiIgeworCXNldCBzZWU1IDEKKwlleHBfY29udGludWUKKyAgICB9Cisg ICAgLXJlICIkZ2RiX3Byb21wdCAkIiB7CisJaWYgeyAkc2VlMSAmJiAkc2Vl MiAmJiAkc2VlMyAmJiAkc2VlNCAmJiAkc2VlNSB9IHRoZW4geworCSAgICBw YXNzICJpbmZvIG1lbSAoMSkiCisJfSBlbHNlIHsKKwkgICAgZmFpbCAiaW5m byBtZW0gKDEpIgorCX0KKyAgICB9Cit9CisKKyMKKyMgVGVzdCBkaXNhYmxl IGFuZCBlbmFibGUKKyMKKworZ2RiX3Rlc3Rfbm9fb3V0cHV0ICJkaXNhYmxl IG1lbSAxIiAiZGlzYWJsZSBtZW0gMSIKK2dkYl90ZXN0ICJpbmZvIG1lbSIg IjEgICBuICAuKiIgIm1lbSAxIHdhcyBkaXNhYmxlZCIKKworZ2RiX3Rlc3Rf bm9fb3V0cHV0ICJlbmFibGUgbWVtIDEiICJlbmFibGUgbWVtIDEiCitnZGJf dGVzdCAiaW5mbyBtZW0iICIxICAgeSAgLioiICJtZW0gMSB3YXMgZW5hYmxl ZCIKKworZ2RiX3Rlc3Rfbm9fb3V0cHV0ICJkaXNhYmxlIG1lbSAyIDQiCisK K3NldCBzZWUxIDAKK3NldCBzZWUyIDAKK3NldCBzZWUzIDAKK3NldCBzZWU0 IDAKK3NldCBzZWU1IDAKKworZ2RiX3Rlc3RfbXVsdGlwbGUgImluZm8gbWVt IiAibWVtIDIgYW5kIDQgd2VyZSBkaXNhYmxlZCIgeworICAgIC1yZSAiMSAg IHkgIFx0JGhleCAkaGV4IHdvIG5vY2FjaGUgXFteXHJcblxdKiIgeworCXNl dCBzZWUxIDEKKwlleHBfY29udGludWUKKyAgICB9CisgICAgLXJlICIyICAg biAgXHQkaGV4ICRoZXggcm8gbm9jYWNoZSBcW15cclxuXF0qIiB7CisJc2V0 IHNlZTIgMQorCWV4cF9jb250aW51ZQorICAgIH0KKyAgICAtcmUgIjMgICB5 ICBcdCRoZXggJGhleCBydyBub2NhY2hlIFxbXlxyXG5cXSoiIHsKKwlzZXQg c2VlMyAxCisJZXhwX2NvbnRpbnVlCisgICAgfQorICAgIC1yZSAiNCAgIG4g IFx0JGhleCAkaGV4IHJ3IG5vY2FjaGUgXFteXHJcblxdKiIgeworCXNldCBz ZWU0IDEKKwlleHBfY29udGludWUKKyAgICB9CisgICAgLXJlICI1ICAgeSAg XHQkaGV4ICRoZXggcncgbm9jYWNoZSAuXFteXHJcblxdKiIgeworCXNldCBz ZWU1IDEKKwlleHBfY29udGludWUKKyAgICB9CisgICAgLXJlICIkZ2RiX3By b21wdCAkIiB7CisJaWYgeyAkc2VlMSAmJiAkc2VlMiAmJiAkc2VlMyAmJiAk c2VlNCAmJiAkc2VlNSB9IHRoZW4geworCSAgICBwYXNzICJtZW0gMiBhbmQg NCB3ZXJlIGRpc2FibGVkIgorCX0gZWxzZSB7CisJICAgIGZhaWwgIm1lbSAy IGFuZCA0IHdlcmUgZGlzYWJsZWQiCisJfQorICAgIH0KK30KKworZ2RiX3Rl c3Rfbm9fb3V0cHV0ICJlbmFibGUgbWVtIDItNCIgImVuYWJsZSBtZW0gMi00 IgorCitzZXQgc2VlMSAwCitzZXQgc2VlMiAwCitzZXQgc2VlMyAwCitzZXQg c2VlNCAwCitzZXQgc2VlNSAwCisKK2dkYl90ZXN0X211bHRpcGxlICJpbmZv IG1lbSIgIm1lbSAyLTQgd2VyZSBlbmFibGVkIiB7CisgICAgLXJlICIxICAg eSAgXHQkaGV4ICRoZXggd28gbm9jYWNoZSBcW15cclxuXF0qIiB7CisJc2V0 IHNlZTEgMQorCWV4cF9jb250aW51ZQorICAgIH0KKyAgICAtcmUgIjIgICB5 ICBcdCRoZXggJGhleCBybyBub2NhY2hlIFxbXlxyXG5cXSoiIHsKKwlzZXQg c2VlMiAxCisJZXhwX2NvbnRpbnVlCisgICAgfQorICAgIC1yZSAiMyAgIHkg IFx0JGhleCAkaGV4IHJ3IG5vY2FjaGUgXFteXHJcblxdKiIgeworCXNldCBz ZWUzIDEKKwlleHBfY29udGludWUKKyAgICB9CisgICAgLXJlICI0ICAgeSAg XHQkaGV4ICRoZXggcncgbm9jYWNoZSBcW15cclxuXF0qIiB7CisJc2V0IHNl ZTQgMQorCWV4cF9jb250aW51ZQorICAgIH0KKyAgICAtcmUgIjUgICB5ICBc dCRoZXggJGhleCBydyBub2NhY2hlIC5cW15cclxuXF0qIiB7CisJc2V0IHNl ZTUgMQorCWV4cF9jb250aW51ZQorICAgIH0KKyAgICAtcmUgIiRnZGJfcHJv bXB0ICQiIHsKKwlpZiB7ICRzZWUxICYmICRzZWUyICYmICRzZWUzICYmICRz ZWU0ICYmICRzZWU1IH0gdGhlbiB7CisJICAgIHBhc3MgIm1lbSAyLTQgd2Vy ZSBlbmFibGVkIgorCX0gZWxzZSB7CisJICAgIGZhaWwgIm1lbSAyLTQgd2Vy ZSBlbmFibGVkIgorCX0KKyAgICB9Cit9CisKK2dkYl90ZXN0X25vX291dHB1 dCAiZGlzYWJsZSBtZW0iICJkaXNhYmxlIG1lbSIKKworc2V0IHNlZTEgMAor c2V0IHNlZTIgMAorc2V0IHNlZTMgMAorc2V0IHNlZTQgMAorc2V0IHNlZTUg MAorCitnZGJfdGVzdF9tdWx0aXBsZSAiaW5mbyBtZW0iICJtZW0gMSB0byA1 IHdlcmUgZGlzYWJsZWQiIHsKKyAgICAtcmUgIjEgICBuICBcdCRoZXggJGhl eCB3byBub2NhY2hlIFxbXlxyXG5cXSoiIHsKKwlzZXQgc2VlMSAxCisJZXhw X2NvbnRpbnVlCisgICAgfQorICAgIC1yZSAiMiAgIG4gIFx0JGhleCAkaGV4 IHJvIG5vY2FjaGUgXFteXHJcblxdKiIgeworCXNldCBzZWUyIDEKKwlleHBf Y29udGludWUKKyAgICB9CisgICAgLXJlICIzICAgbiAgXHQkaGV4ICRoZXgg cncgbm9jYWNoZSBcW15cclxuXF0qIiB7CisJc2V0IHNlZTMgMQorCWV4cF9j b250aW51ZQorICAgIH0KKyAgICAtcmUgIjQgICBuICBcdCRoZXggJGhleCBy dyBub2NhY2hlIFxbXlxyXG5cXSoiIHsKKwlzZXQgc2VlNCAxCisJZXhwX2Nv bnRpbnVlCisgICAgfQorICAgIC1yZSAiNSAgIG4gIFx0JGhleCAkaGV4IHJ3 IG5vY2FjaGUgLlxbXlxyXG5cXSoiIHsKKwlzZXQgc2VlNSAxCisJZXhwX2Nv bnRpbnVlCisgICAgfQorICAgIC1yZSAiJGdkYl9wcm9tcHQgJCIgeworCWlm IHsgJHNlZTEgJiYgJHNlZTIgJiYgJHNlZTMgJiYgJHNlZTQgJiYgJHNlZTUg fSB0aGVuIHsKKwkgICAgcGFzcyAibWVtIDEgdG8gNSB3ZXJlIGRpc2FibGVk IgorCX0gZWxzZSB7CisJICAgIGZhaWwgIm1lbSAxIHRvIDUgd2VyZSBkaXNh YmxlZCIKKwl9CisgICAgfQorfQorCitnZGJfdGVzdF9ub19vdXRwdXQgImVu YWJsZSBtZW0iICJlbmFibGUgbWVtIgorCitzZXQgc2VlMSAwCitzZXQgc2Vl MiAwCitzZXQgc2VlMyAwCitzZXQgc2VlNCAwCitzZXQgc2VlNSAwCisKK2dk Yl90ZXN0X211bHRpcGxlICJpbmZvIG1lbSIgIm1lbSAxIHRvIDUgd2VyZSBl bmFibGVkIiB7CisgICAgLXJlICIxICAgeSAgXHQkaGV4ICRoZXggd28gbm9j YWNoZSBcW15cclxuXF0qIiB7CisJc2V0IHNlZTEgMQorCWV4cF9jb250aW51 ZQorICAgIH0KKyAgICAtcmUgIjIgICB5ICBcdCRoZXggJGhleCBybyBub2Nh Y2hlIFxbXlxyXG5cXSoiIHsKKwlzZXQgc2VlMiAxCisJZXhwX2NvbnRpbnVl CisgICAgfQorICAgIC1yZSAiMyAgIHkgIFx0JGhleCAkaGV4IHJ3IG5vY2Fj aGUgXFteXHJcblxdKiIgeworCXNldCBzZWUzIDEKKwlleHBfY29udGludWUK KyAgICB9CisgICAgLXJlICI0ICAgeSAgXHQkaGV4ICRoZXggcncgbm9jYWNo ZSBcW15cclxuXF0qIiB7CisJc2V0IHNlZTQgMQorCWV4cF9jb250aW51ZQor ICAgIH0KKyAgICAtcmUgIjUgICB5ICBcdCRoZXggJGhleCBydyBub2NhY2hl IC5cW15cclxuXF0qIiB7CisJc2V0IHNlZTUgMQorCWV4cF9jb250aW51ZQor ICAgIH0KKyAgICAtcmUgIiRnZGJfcHJvbXB0ICQiIHsKKwlpZiB7ICRzZWUx ICYmICRzZWUyICYmICRzZWUzICYmICRzZWU0ICYmICRzZWU1IH0gdGhlbiB7 CisJICAgIHBhc3MgIm1lbSAxIHRvIDUgd2VyZSBlbmFibGVkIgorCX0gZWxz ZSB7CisJICAgIGZhaWwgIm1lbSAxIHRvIDUgd2VyZSBlbmFibGVkIgorCX0K KyAgICB9Cit9CisKK2dkYl90ZXN0ICJkaXNhYmxlIG1lbSA3IDgiIFwKKyAg ICAiTm8gbWVtb3J5IHJlZ2lvbiBudW1iZXIgNy4qTm8gbWVtb3J5IHJlZ2lv biBudW1iZXIgOC4iIFwKKyAgICAiZGlzYWJsZSBtZW0gNyA4IgorCisjCisj IFRlc3QgZGVsZXRlCisjCisKK3NldCBzZWUxIDAKK3NldCBzZWUyIDAKK3Nl dCBzZWUzIDAKK3NldCBzZWU0IDAKK3NldCBzZWU1IDAKKworZ2RiX3Rlc3Rf bm9fb3V0cHV0ICJkZWxldGUgbWVtIDEiICJkZWxldGUgbWVtIDEiCitnZGJf dGVzdF9tdWx0aXBsZSAiaW5mbyBtZW0iICJtZW0gMSB3YXMgZGVsZXRlZCIg eworICAgIC1yZSAiMSAgIHkgIFx0JGhleCAkaGV4IHdvIG5vY2FjaGUgXFte XHJcblxdKiIgeworCXNldCBzZWUxIDEKKwlleHBfY29udGludWUKKyAgICB9 CisgICAgLXJlICIyICAgeSAgXHQkaGV4ICRoZXggcm8gbm9jYWNoZSBcW15c clxuXF0qIiB7CisJc2V0IHNlZTIgMQorCWV4cF9jb250aW51ZQorICAgIH0K KyAgICAtcmUgIjMgICB5ICBcdCRoZXggJGhleCBydyBub2NhY2hlIFxbXlxy XG5cXSoiIHsKKwlzZXQgc2VlMyAxCisJZXhwX2NvbnRpbnVlCisgICAgfQor ICAgIC1yZSAiNCAgIHkgIFx0JGhleCAkaGV4IHJ3IG5vY2FjaGUgXFteXHJc blxdKiIgeworCXNldCBzZWU0IDEKKwlleHBfY29udGludWUKKyAgICB9Cisg ICAgLXJlICI1ICAgeSAgXHQkaGV4ICRoZXggcncgbm9jYWNoZSAuXFteXHJc blxdKiIgeworCXNldCBzZWU1IDEKKwlleHBfY29udGludWUKKyAgICB9Cisg ICAgLXJlICIkZ2RiX3Byb21wdCAkIiB7CisJaWYgeyAhJHNlZTEgJiYgJHNl ZTIgJiYgJHNlZTMgJiYgJHNlZTQgJiYgJHNlZTUgfSB0aGVuIHsKKwkgICAg cGFzcyAibWVtIDEgd2FzIGRlbGV0ZWQiCisJfSBlbHNlIHsKKwkgICAgZmFp bCAibWVtIDEgd2FzIGRlbGV0ZWQiCisJfQorICAgIH0KK30KKworc2V0IHNl ZTEgMAorc2V0IHNlZTIgMAorc2V0IHNlZTMgMAorc2V0IHNlZTQgMAorc2V0 IHNlZTUgMAorCitnZGJfdGVzdF9ub19vdXRwdXQgImRlbGV0ZSBtZW0gMiA0 IiAiZGVsZXRlIG1lbSAyIDQiCitnZGJfdGVzdF9tdWx0aXBsZSAiaW5mbyBt ZW0iICJtZW0gMiBhbmQgNCB3ZXJlIGRlbGV0ZWQiIHsKKyAgICAtcmUgIjEg ICB5ICBcdCRoZXggJGhleCB3byBub2NhY2hlIFxbXlxyXG5cXSoiIHsKKwlz ZXQgc2VlMSAxCisJZXhwX2NvbnRpbnVlCisgICAgfQorICAgIC1yZSAiMiAg IHkgIFx0JGhleCAkaGV4IHJvIG5vY2FjaGUgXFteXHJcblxdKiIgeworCXNl dCBzZWUyIDEKKwlleHBfY29udGludWUKKyAgICB9CisgICAgLXJlICIzICAg eSAgXHQkaGV4ICRoZXggcncgbm9jYWNoZSBcW15cclxuXF0qIiB7CisJc2V0 IHNlZTMgMQorCWV4cF9jb250aW51ZQorICAgIH0KKyAgICAtcmUgIjQgICB5 ICBcdCRoZXggJGhleCBydyBub2NhY2hlIFxbXlxyXG5cXSoiIHsKKwlzZXQg c2VlNCAxCisJZXhwX2NvbnRpbnVlCisgICAgfQorICAgIC1yZSAiNSAgIHkg IFx0JGhleCAkaGV4IHJ3IG5vY2FjaGUgLlxbXlxyXG5cXSoiIHsKKwlzZXQg c2VlNSAxCisJZXhwX2NvbnRpbnVlCisgICAgfQorICAgIC1yZSAiJGdkYl9w cm9tcHQgJCIgeworCWlmIHsgISRzZWUxICYmICEkc2VlMiAmJiAkc2VlMyAm JiAhJHNlZTQgJiYgJHNlZTUgfSB0aGVuIHsKKwkgICAgcGFzcyAibWVtIDIg YW5kIDQgd2VyZSBkZWxldGVkIgorCX0gZWxzZSB7CisJICAgIGZhaWwgIm1l bSAyIGFuZCA0IHdlcmUgZGVsZXRlZCIKKwl9CisgICAgfQorfQorCitzZXQg c2VlMSAwCitzZXQgc2VlMiAwCitzZXQgc2VlMyAwCitzZXQgc2VlNCAwCitz ZXQgc2VlNSAwCisKK2dkYl90ZXN0ICJkZWxldGUgbWVtIDItNCIgXAorICAg ICJObyBtZW1vcnkgcmVnaW9uIG51bWJlciAyLipObyBtZW1vcnkgcmVnaW9u IG51bWJlciA0LiIgXAorICAgICJkZWxldGUgbWVtIDItNCIKK2dkYl90ZXN0 X211bHRpcGxlICJpbmZvIG1lbSIgIm1lbSAyLTQgd2VyZSBkZWxldGVkIiB7 CisgICAgLXJlICIxICAgeSAgXHQkaGV4ICRoZXggd28gbm9jYWNoZSBcW15c clxuXF0qIiB7CisJc2V0IHNlZTEgMQorCWV4cF9jb250aW51ZQorICAgIH0K KyAgICAtcmUgIjIgICB5ICBcdCRoZXggJGhleCBybyBub2NhY2hlIFxbXlxy XG5cXSoiIHsKKwlzZXQgc2VlMiAxCisJZXhwX2NvbnRpbnVlCisgICAgfQor ICAgIC1yZSAiMyAgIHkgIFx0JGhleCAkaGV4IHJ3IG5vY2FjaGUgXFteXHJc blxdKiIgeworCXNldCBzZWUzIDEKKwlleHBfY29udGludWUKKyAgICB9Cisg ICAgLXJlICI0ICAgeSAgXHQkaGV4ICRoZXggcncgbm9jYWNoZSBcW15cclxu XF0qIiB7CisJc2V0IHNlZTQgMQorCWV4cF9jb250aW51ZQorICAgIH0KKyAg ICAtcmUgIjUgICB5ICBcdCRoZXggJGhleCBydyBub2NhY2hlIC5cW15cclxu XF0qIiB7CisJc2V0IHNlZTUgMQorCWV4cF9jb250aW51ZQorICAgIH0KKyAg ICAtcmUgIiRnZGJfcHJvbXB0ICQiIHsKKwlpZiB7ICEkc2VlMSAmJiAhJHNl ZTIgJiYgISRzZWUzICYmICEkc2VlNCAmJiAkc2VlNSB9IHRoZW4geworCSAg ICBwYXNzICJtZW0gMi00IHdlcmUgZGVsZXRlZCIKKwl9IGVsc2UgeworCSAg ICBmYWlsICJtZW0gMi00IHdlcmUgZGVsZXRlZCIKKwl9CisgICAgfQorfQor CitnZGJfdGVzdCAiZGVsZXRlIG1lbSA4IiAiTm8gbWVtb3J5IHJlZ2lvbiBu dW1iZXIgOC4iICJkZWxldGUgbWVtIDgiCg== --------------000901050404010809080005--