From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Wei-Wei Guo Newsgroups: gmane.emacs.bugs Subject: bug#6530: patch for rst.el updated Date: Mon, 28 Jun 2010 21:49:20 +0800 Message-ID: <4C28A860.20206@gmail.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------000305050102030107060209" X-Trace: dough.gmane.org 1277740831 10630 80.91.229.12 (28 Jun 2010 16:00:31 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Mon, 28 Jun 2010 16:00:31 +0000 (UTC) To: 6530@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Mon Jun 28 18:00:29 2010 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1OTGkm-0003et-DW for geb-bug-gnu-emacs@m.gmane.org; Mon, 28 Jun 2010 18:00:28 +0200 Original-Received: from localhost ([127.0.0.1]:38655 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OTGkk-0008PU-PM for geb-bug-gnu-emacs@m.gmane.org; Mon, 28 Jun 2010 12:00:10 -0400 Original-Received: from [140.186.70.92] (port=46699 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OTGk0-0007zK-QO for bug-gnu-emacs@gnu.org; Mon, 28 Jun 2010 11:59:28 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OTGjx-00075T-Pa for bug-gnu-emacs@gnu.org; Mon, 28 Jun 2010 11:59:24 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:37255) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OTGjx-00075O-MN for bug-gnu-emacs@gnu.org; Mon, 28 Jun 2010 11:59:21 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.69) (envelope-from ) id 1OTGhi-0000yd-Oc; Mon, 28 Jun 2010 11:57:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Wei-Wei Guo Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-To: owner@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 28 Jun 2010 15:57:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 6530 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Original-Received: via spool by submit@debbugs.gnu.org id=B.12777406093736 (code B ref -1); Mon, 28 Jun 2010 15:57:02 +0000 Original-Received: (at submit) by debbugs.gnu.org; 28 Jun 2010 15:56:49 +0000 Original-Received: from localhost ([127.0.0.1] helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OTGhR-0000yC-MY for submit@debbugs.gnu.org; Mon, 28 Jun 2010 11:56:47 -0400 Original-Received: from mx10.gnu.org ([199.232.76.166]) by debbugs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OTEYu-0008T8-4w for submit@debbugs.gnu.org; Mon, 28 Jun 2010 09:39:50 -0400 Original-Received: from lists.gnu.org ([199.232.76.165]:34283) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1OTEYp-0004x2-0e for submit@debbugs.gnu.org; Mon, 28 Jun 2010 09:39:43 -0400 Original-Received: from [140.186.70.92] (port=40207 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OTEYl-0002Lg-IJ for bug-gnu-emacs@gnu.org; Mon, 28 Jun 2010 09:39:42 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OTEYf-0007V7-C3 for bug-gnu-emacs@gnu.org; Mon, 28 Jun 2010 09:39:39 -0400 Original-Received: from mail-pv0-f169.google.com ([74.125.83.169]:35170) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OTEYe-0007V1-Pt for bug-gnu-emacs@gnu.org; Mon, 28 Jun 2010 09:39:33 -0400 Original-Received: by pvg11 with SMTP id 11so3506679pvg.0 for ; Mon, 28 Jun 2010 06:39:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from :user-agent:mime-version:to:subject:content-type; bh=y/Q7bdaJhZ4wstozsgGCyzMsj6WvlVINmId829qmGmw=; b=COVibbyrVyEe/8X8JYCYCVXe8aXrJHDR7F+nEMzS+CaEKGiQGyY6AqEyzMWUvv9MiQ ggba+ehmehbbB1JRBlJFgiqCCO2b8SMPAidSjhXrjN2yuEPAN61cBkRBXeCLOr+JlEhk gBEkK5pZ/758cbgIz7IUtzNypys+g/MIXKNMw= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:subject :content-type; b=m69mkqxXK7+r18mvERmE6sTfFkcplR7zv065dl1Rrg3Io3f0I9DJYrLptzlUMMLBWE rYaR8WFFceQh9r0iPCvvejJ3HLnSjzN4DMCp+Ycv+jb31kPHDKEJaSeyXlQF36NtLVIl yKbJ+I2T1R6j8OV86CvKzSn7K/v/KKydrnyaw= Original-Received: by 10.114.8.18 with SMTP id 18mr5373973wah.51.1277732371491; Mon, 28 Jun 2010 06:39:31 -0700 (PDT) Original-Received: from [192.168.0.101] ([124.160.104.140]) by mx.google.com with ESMTPS id s5sm46346925wak.12.2010.06.28.06.39.27 (version=TLSv1/SSLv3 cipher=RC4-MD5); Mon, 28 Jun 2010 06:39:30 -0700 (PDT) User-Agent: Mozilla/5.0 (X11; U; Linux i686; zh-CN; rv:1.9.2.4) Gecko/20100608 Thunderbird/3.1 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6, seldom 2.4 (older, 4) X-Mailman-Approved-At: Mon, 28 Jun 2010 11:56:43 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.11 Precedence: list Resent-Date: Mon, 28 Jun 2010 11:57:02 -0400 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-Mailman-Approved-At: Mon, 28 Jun 2010 11:59:57 -0400 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:38073 Archived-At: This is a multi-part message in MIME format. --------------000305050102030107060209 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Dear all, I updated my patch for rst.el of Emacs 23. The update including: - Insert bullet list by 'M-Enter'. - Insert number list "#." by 'M-Enter' with any prefix. - Insert number list of a specific number of various styles by 'M-Enter" with a number prefix. - Insert directive by 'C-c C-d'. - Insert directive option by 'C-c C-o'. - Remove the dependency on a2r.el. Now all the patched codes are from mine. Hope it's helpful. Best wishes, Wei-Wei --------------000305050102030107060209 Content-Type: text/plain; name="rst.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="rst.patch" LS0tIHJzdC5lbC5vbGQJMjAxMC0wNS0xMCAxNTo0OTo0OS4wMDAwMDAwMDAgKzA4MDAKKysr IHJzdC5lbAkyMDEwLTA2LTI4IDE2OjIyOjA1LjAwMDAwMDAwMCArMDgwMApAQCAtMzYsNiAr MzYsOCBAQAogOzsgICBmcm9tIGl0OwogOzsgLSBGdW5jdGlvbnMgdG8gaW5zZXJ0IGFuZCBh dXRvbWF0aWNhbGx5IHVwZGF0ZSBhIFRPQyBpbiB5b3VyIHNvdXJjZQogOzsgICBkb2N1bWVu dDsKKzs7IC0gRnVuY3Rpb24gdG8gaW5zZXJ0IGxpc3QsIHByb2Nlc3NpbmcgaXRlbSBidWxs ZXRzIGFuZCBlbnVtZXJhdGlvbnMgCis7OyAgIGF1dG9tYXRpY2FsbHk7CiA7OyAtIEZvbnQt bG9jayBoaWdobGlnaHRpbmcgb2Ygbm90YWJsZSByZVN0cnVjdHVyZWRUZXh0IHN0cnVjdHVy ZXM7CiA7OyAtIFNvbWUgb3RoZXIgY29udmVuaWVuY2UgZnVuY3Rpb25zLgogOzsKQEAgLTE2 NiwxMSArMTY4LDYgQEAKIDs7IC0gbnVtYmVyaW5nOiBhdXRvbWF0aWNhbGx5IGRldGVjdCBp ZiB3ZSBoYXZlIGEgc2VjdGlvbi1udW1iZXJpbmcgZGlyZWN0aXZlIGluCiA7OyAgIHRoZSBj b3JyZXNwb25kaW5nIHNlY3Rpb24sIHRvIHJlbmRlciB0aGUgdG9jLgogOzsKLTs7IGJ1bGxl dGVkIGFuZCBlbnVtZXJhdGVkIGxpc3QgaXRlbXMKLTs7IC0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0KLTs7IC0gV2UgbmVlZCB0byBwcm92aWRlIHdheSB0byByZWJ1bGxl dCBidWxsZXRlZCBsaXN0cywgYW5kIHRoYXQgd291bGQgaW5jbHVkZQotOzsgICBhdXRvbWF0 aWMgZW51bWVyYXRpb24gYXMgd2VsbC4KLTs7CiA7OyBPdGhlcgogOzsgLS0tLS0KIDs7IC0g SXQgd291bGQgYmUgbmljZSB0byBkaWZmZXJlbnRpYXRlIGJldHdlZW4gdGV4dCBmaWxlcyB1 c2luZwpAQCAtMjM5LDE0ICsyMzYsMTQgQEAKICAgICA7OyBTZWN0aW9uIERlY29yYXRpb25z LgogICAgIDs7CiAgICAgOzsgVGhlIGFkanVzdG1lbnQgZnVuY3Rpb24gdGhhdCBkZWNvcmF0 ZXMgb3Igcm90YXRlcyBhIHNlY3Rpb24gdGl0bGUuCi0gICAgKGRlZmluZS1rZXkgbWFwIFso Y29udHJvbCBjKSAoY29udHJvbCBhKV0gJ3JzdC1hZGp1c3QpCi0gICAgKGRlZmluZS1rZXkg bWFwIFsoY29udHJvbCBjKSAoY29udHJvbCA/PSldICdyc3QtYWRqdXN0KQorICAgIDsoZGVm aW5lLWtleSBtYXAgWyhjb250cm9sIGMpIChjb250cm9sIGEpXSAncnN0LWFkanVzdCkKKyAg ICA7KGRlZmluZS1rZXkgbWFwIFsoY29udHJvbCBjKSAoY29udHJvbCA/PSldICdyc3QtYWRq dXN0KQogICAgIChkZWZpbmUta2V5IG1hcCBbKGNvbnRyb2wgPz0pXSAncnN0LWFkanVzdCkg OzsgKERvZXMgbm90IHdvcmsgb24gdGhlIE1hYyBPU1guKQogICAgIDs7IERpc3BsYXkgdGhl IGhpZXJhcmNoeSBvZiBkZWNvcmF0aW9ucyBpbXBsaWVkIGJ5IHRoZSBjdXJyZW50IGRvY3Vt ZW50IGNvbnRlbnRzLgotICAgIChkZWZpbmUta2V5IG1hcCBbKGNvbnRyb2wgYykgKGNvbnRy b2wgaCldICdyc3QtZGlzcGxheS1kZWNvcmF0aW9ucy1oaWVyYXJjaHkpCisgICAgKGRlZmlu ZS1rZXkgbWFwIFsoY29udHJvbCBjKSAoY29udHJvbCB0KV0gJ3JzdC1kaXNwbGF5LWRlY29y YXRpb25zLWhpZXJhcmNoeSkKICAgICA7OyBIb21vZ2VuZWl6ZSB0aGUgZGVjb3JhdGlvbnMg aW4gdGhlIGRvY3VtZW50LgogICAgIChkZWZpbmUta2V5IG1hcCBbKGNvbnRyb2wgYykgKGNv bnRyb2wgcyldICdyc3Qtc3RyYWlnaHRlbi1kZWNvcmF0aW9ucykKLTs7ICAgIChkZWZpbmUt a2V5IG1hcCBbKGNvbnRyb2wgYykgKGNvbnRyb2wgcyldICdyc3Qtc3RyYWlnaHRlbi1kZWNv LXNwYWNpbmcpCisgICAgOyhkZWZpbmUta2V5IG1hcCBbKGNvbnRyb2wgYykgKGNvbnRyb2wg cyldICdyc3Qtc3RyYWlnaHRlbi1kZWNvLXNwYWNpbmcpCiAKICAgICA7OwogICAgIDs7IFNl Y3Rpb24gTW92ZW1lbnQgYW5kIFNlbGVjdGlvbi4KQEAgLTI1NCwzOSArMjUxLDc1IEBACiAg ICAgOzsgTWFyayB0aGUgc3Vic2VjdGlvbiB3aGVyZSB0aGUgY3Vyc29yIGlzLgogICAgIChk ZWZpbmUta2V5IG1hcCBbKGNvbnRyb2wgYykgKGNvbnRyb2wgbSldICdyc3QtbWFyay1zZWN0 aW9uKQogICAgIDs7IE1vdmUgZm9yd2FyZC9iYWNrd2FyZCBiZXR3ZWVuIHNlY3Rpb24gdGl0 bGVzLgotICAgIChkZWZpbmUta2V5IG1hcCBbKGNvbnRyb2wgYykgKGNvbnRyb2wgbildICdy c3QtZm9yd2FyZC1zZWN0aW9uKQotICAgIChkZWZpbmUta2V5IG1hcCBbKGNvbnRyb2wgYykg KGNvbnRyb2wgcCldICdyc3QtYmFja3dhcmQtc2VjdGlvbikKKyAgICAoZGVmaW5lLWtleSBt YXAgWyhtZXRhIG4pXSAncnN0LWZvcndhcmQtc2VjdGlvbikKKyAgICAoZGVmaW5lLWtleSBt YXAgWyhtZXRhIHApXSAncnN0LWJhY2t3YXJkLXNlY3Rpb24pCiAKICAgICA7OwogICAgIDs7 IE9wZXJhdGluZyBvbiBCbG9ja3Mgb2YgVGV4dC4KICAgICA7OworICAgIDs7IEluc2VydHMg YnVsbGV0IGxpc3Qgb3IgZW51bWVyYXRpb24gbGlzdC4KKyAgICAoZGVmaW5lLWtleSBtYXAg WyhtZXRhIHJldHVybildICdyc3QtaW5zZXJ0LWxpc3QpCisgICAgOzsgSW5zZXJ0cyBkZWZp bml0aW9uIGxpc3QuCisgICAgOyhkZWZpbmUta2V5IG1hcCBbKGNvbnRyb2wgYykgdF0gJ3Jz dC1pbnNlcnQtZGVmaW5pdGlvbikKKyAgICA7OyBJbnNlcnRzIGZpZWxkIGxpc3QuCisgICAg OyhkZWZpbmUta2V5IG1hcCBbKGNvbnRyb2wgYykgZl0gJ3JzdC1pbnNlcnQtZmllbGQpCiAg ICAgOzsgTWFrZXMgcGFyYWdyYXBocyBpbiByZWdpb24gYXMgYSBidWxsZXQgbGlzdC4KLSAg ICAoZGVmaW5lLWtleSBtYXAgWyhjb250cm9sIGMpIChjb250cm9sIGIpXSAncnN0LWJ1bGxl dC1saXN0LXJlZ2lvbikKKyAgICA7KGRlZmluZS1rZXkgbWFwIFsoY29udHJvbCBjKSAoY29u dHJvbCBiKV0gJ3JzdC1idWxsZXQtbGlzdC1yZWdpb24pCiAgICAgOzsgTWFrZXMgcGFyYWdy YXBocyBpbiByZWdpb24gYXMgYSBlbnVtZXJhdGlvbi4KLSAgICAoZGVmaW5lLWtleSBtYXAg Wyhjb250cm9sIGMpIChjb250cm9sIGUpXSAncnN0LWVudW1lcmF0ZS1yZWdpb24pCisgICAg OyhkZWZpbmUta2V5IG1hcCBbKGNvbnRyb2wgYykgKGNvbnRyb2wgZSldICdyc3QtZW51bWVy YXRlLXJlZ2lvbikKICAgICA7OyBDb252ZXJ0cyBidWxsZXRzIHRvIGFuIGVudW1lcmF0aW9u LgotICAgIChkZWZpbmUta2V5IG1hcCBbKGNvbnRyb2wgYykgKGNvbnRyb2wgdildICdyc3Qt Y29udmVydC1idWxsZXRzLXRvLWVudW1lcmF0aW9uKQorICAgIDsoZGVmaW5lLWtleSBtYXAg Wyhjb250cm9sIGMpIChjb250cm9sIHYpXSAncnN0LWNvbnZlcnQtYnVsbGV0cy10by1lbnVt ZXJhdGlvbikKICAgICA7OyBNYWtlcyByZWdpb24gYSBsaW5lLWJsb2NrLgotICAgIChkZWZp bmUta2V5IG1hcCBbKGNvbnRyb2wgYykgKGNvbnRyb2wgZCldICdyc3QtbGluZS1ibG9jay1y ZWdpb24pCisgICAgOyhkZWZpbmUta2V5IG1hcCBbKGNvbnRyb2wgYykgKGNvbnRyb2wgZCld ICdyc3QtbGluZS1ibG9jay1yZWdpb24pCiAgICAgOzsgTWFrZSBzdXJlIHRoYXQgYWxsIHRo ZSBidWxsZXRzIGluIHRoZSByZWdpb24gYXJlIGNvbnNpc3RlbnQuCi0gICAgKGRlZmluZS1r ZXkgbWFwIFsoY29udHJvbCBjKSAoY29udHJvbCB3KV0gJ3JzdC1zdHJhaWdodGVuLWJ1bGxl dHMtcmVnaW9uKQorICAgIDsoZGVmaW5lLWtleSBtYXAgWyhjb250cm9sIGMpIChjb250cm9s IHcpXSAncnN0LXN0cmFpZ2h0ZW4tYnVsbGV0cy1yZWdpb24pCiAgICAgOzsgU2hpZnQgcmVn aW9uIGxlZnQgb3IgcmlnaHQgKHRha2luZyBpbnRvIGFjY291bnQgb2YgZW51bWVyYXRpb25z L2J1bGxldHMsIGV0Yy4pLgogICAgIChkZWZpbmUta2V5IG1hcCBbKGNvbnRyb2wgYykgKGNv bnRyb2wgbCldICdyc3Qtc2hpZnQtcmVnaW9uLWxlZnQpCiAgICAgKGRlZmluZS1rZXkgbWFw IFsoY29udHJvbCBjKSAoY29udHJvbCByKV0gJ3JzdC1zaGlmdC1yZWdpb24tcmlnaHQpCiAg ICAgOzsgQ29tbWVudC91bmNvbW1lbnQgdGhlIGFjdGl2ZSByZWdpb24uCi0gICAgKGRlZmlu ZS1rZXkgbWFwIFsoY29udHJvbCBjKSAoY29udHJvbCBjKV0gJ2NvbW1lbnQtcmVnaW9uKQor ICAgIDsoZGVmaW5lLWtleSBtYXAgWyhjb250cm9sIGMpIChjb250cm9sIGMpXSAnY29tbWVu dC1yZWdpb24pCisKKyAgICA7OyBJbnNlcnQgb3B0aW9uIG9yIGRpcmVjdGl2ZS4KKyAgICAo ZGVmaW5lLWtleSBtYXAgWyhjb250cm9sIGMpIChjb250cm9sIG8pXSAncnN0LWluc2VydC1v cHRpb24pCisgICAgKGRlZmluZS1rZXkgbWFwIFsoY29udHJvbCBjKSAoY29udHJvbCBkKV0g J3JzdC1pbnNlcnQtZGlyZWN0aXZlKQorICAgIDs7IEluc2VydCB0ZXh0IHJlcGxhY2UgZGVm aW5pdGlvbi4KKyAgICA7KGRlZmluZS1rZXkgbWFwIFsoY29udHJvbCBjKSB0XSAncnN0LWlu c2VydC1yZXBsYWNlKQorICAgIDs7IEluc2VydCBpbWFnZSBhbmQgZmlndXJlcworICAgIDso ZGVmaW5lLWtleSBtYXAgWyhjb250cm9sIGMpIHBdICdyc3QtaW5zZXJ0LWltYWdlKQorICAg IDsoZGVmaW5lLWtleSBtYXAgWyhjb250cm9sIGMpIG1dICdyc3QtaW5zZXJ0LWZpZ3VyZSkK KyAgICA7OyBJbnNlcnQgYWRtb25pdGlvbgorICAgIDsoZGVmaW5lLWtleSBtYXAgWyhjb250 cm9sIGMpIHRdICdyc3QtaW5zZXJ0LWFkbW9uaXRpb24pCisKKyAgICA7OyAKKyAgICA7OyBI eXB5bGluaywgRm9vdG5vdGUsIGFuZCBDaXRhdGlvbiBGZWF0dXJlcy4KKyAgICA7OyAKKyAg ICAoZGVmaW5lLWtleSBtYXAgWyhjb250cm9sIGMpIChjb250cm9sIGgpXSAncnN0LWluc2Vy dC1saW5rKQorICAgIDs7IEluc2VydCBoeXBlcmxpbmsKKyAgICA7KGRlZmluZS1rZXkgbWFw IFsoY29udHJvbCBjKSBsXSAncnN0LWluc2VydC1pbmxpbmUtbGluaykKKyAgICA7OyBJbnNl cnQgZm9vdG5vdGUKKyAgICA7KGRlZmluZS1rZXkgbWFwIFsoY29udHJvbCBjKSBmXSAncnN0 LWluc2VydC1mb290bm90ZSkKKyAgICA7OyBJbnNlcnQgY2l0YXRpb24KKyAgICA7KGRlZmlu ZS1rZXkgbWFwIFsoY29udHJvbCBjKSBjXSAncnN0LWluc2VydC1jaXRhdGlvbikKKyAgICA7 OyBIeXBlcmxpbmsganVtcGluZworICAgIChkZWZpbmUta2V5IG1hcCBbKGNvbnRyb2wgYykg KGwpXSAncnN0LWxpbmstanVtcC10by1yZWZlcmVuY2UpCisgICAgKGRlZmluZS1rZXkgbWFw IFsoY29udHJvbCBjKSAobildICdyc3QtbGluay1qdW1wLXdpdGhpbi10YXJnZXRzKQorICAg IChkZWZpbmUta2V5IG1hcCBbKGNvbnRyb2wgYykgKHQpXSAncnN0LWxpbmstanVtcC10by10 YXJnZXQpCisgICAgOzsgRm9vdG5vdGUgYW5kIGNpdGF0aW9uIGp1bXBpbmcKKyAgICAoZGVm aW5lLWtleSBtYXAgWyhjb250cm9sIGMpIChyKV0gJ3JzdC1mb290bm90ZS1jaXRhdGlvbi1q dW1wLXRvLXJlZmVyZW5jZSkKKyAgICAoZGVmaW5lLWtleSBtYXAgWyhjb250cm9sIGMpICht KV0gJ3JzdC1mb290bm90ZS1jaXRhdGlvbi1qdW1wLXdpdGhpbi10YXJnZXRzKQorICAgIChk ZWZpbmUta2V5IG1hcCBbKGNvbnRyb2wgYykgKHUpXSAncnN0LWZvb3Rub3RlLWNpdGF0aW9u LWp1bXAtdG8tdGFyZ2V0KQogCiAgICAgOzsKICAgICA7OyBUYWJsZS1vZi1Db250ZW50cyBG ZWF0dXJlcy4KICAgICA7OwogICAgIDs7IEVudGVyIGEgVE9DIGJ1ZmZlciB0byB2aWV3IGFu ZCBtb3ZlIHRvIGEgc3BlY2lmaWMgc2VjdGlvbi4KICAgICAoZGVmaW5lLWtleSBtYXAgWyhj b250cm9sIGMpIChjb250cm9sIHQpXSAncnN0LXRvYykKLSAgICA7OyBJbnNlcnQgYSBUT0Mg aGVyZS4KLSAgICAoZGVmaW5lLWtleSBtYXAgWyhjb250cm9sIGMpIChjb250cm9sIGkpXSAn cnN0LXRvYy1pbnNlcnQpCisgICAgOzsgSW5zZXJ0IGEgVE9DIGhlcmUuIHVzZSBgcnN0LWlu c2VydC1kaXJlY3RpdmUnIGluc3RlYWQKKyAgICA7KGRlZmluZS1rZXkgbWFwIFsoY29udHJv bCBjKSBpXSAncnN0LXRvYy1pbnNlcnQpCiAgICAgOzsgVXBkYXRlIHRoZSBkb2N1bWVudCdz IFRPQyAod2l0aG91dCBjaGFuZ2luZyB0aGUgY3Vyc29yIHBvc2l0aW9uKS4KICAgICAoZGVm aW5lLWtleSBtYXAgWyhjb250cm9sIGMpIChjb250cm9sIHUpXSAncnN0LXRvYy11cGRhdGUp CiAgICAgOzsgR290IHRvIHRoZSBzZWN0aW9uIHVuZGVyIHRoZSBjdXJzb3IgKGN1cnNvciBt dXN0IGJlIGluIFRPQykuCi0gICAgKGRlZmluZS1rZXkgbWFwIFsoY29udHJvbCBjKSAoY29u dHJvbCBmKV0gJ3JzdC1nb3RvLXNlY3Rpb24pCisgICAgOyhkZWZpbmUta2V5IG1hcCBbKGNv bnRyb2wgYykgKGNvbnRyb2wgZildICdyc3QtZ290by1zZWN0aW9uKQogCiAgICAgOzsKICAg ICA7OyBDb252ZXJ0aW5nIERvY3VtZW50cyBmcm9tIEVtYWNzLgpAQCAtMzQ0LDggKzM3Nyw4 IEBACiAKIAogKGRlZmN1c3RvbSByc3QtbW9kZS1ob29rIG5pbAotICAiSG9vayBydW4gd2hl biBSc3QgbW9kZSBpcyB0dXJuZWQgb24uCi1UaGUgaG9vayBmb3IgVGV4dCBtb2RlIGlzIHJ1 biBiZWZvcmUgdGhpcyBvbmUuIgorICAiSG9vayBydW4gd2hlbiBSc3QgTW9kZSBpcyB0dXJu ZWQgb24uCitUaGUgaG9vayBmb3IgVGV4dCBNb2RlIGlzIHJ1biBiZWZvcmUgdGhpcyBvbmUu IgogICA6Z3JvdXAgJ3JzdAogICA6dHlwZSAnKGhvb2spKQogCkBAIC0xNDY0LDggKzE0OTcs OCBAQAogCQkJCShsYW1iZGEgKGRlY28pCiAJCQkJICAoY29ucyAocnN0LXBvc2l0aW9uIChj ZHIgZGVjbykgaGllcikKIAkJCQkJKGxldCAoKG0gKG1ha2UtbWFya2VyKSkpCi0JCQkJCSAg KGdvdG8tY2hhciAocG9pbnQtbWluKSkKLQkJCQkJICAoZm9yd2FyZC1saW5lICgxLSAoY2Fy IGRlY28pKSkKKyAJCQkJCSAgKGdvdG8tY2hhciAocG9pbnQtbWluKSkKKyAJCQkJCSAgKGZv cndhcmQtbGluZSAoMS0gKGNhciBkZWNvKSkpCiAJCQkJCSAgKHNldC1tYXJrZXIgbSAocG9p bnQpKQogCQkJCQkgIG0pKSkKIAkJCQlhbGxkZWNvcykpCkBAIC0xNDk5LDE0ICsxNTMyLDI0 MiBAQAogICAgICAgOzsgYWRqdXN0IGZvciB0aGUgY2hhbmdlcyBpbiB0aGUgZG9jdW1lbnQu CiAgICAgICAoZG9saXN0IChkZWNvIChucmV2ZXJzZSBhbGxkZWNvcykpCiAJOzsgR28gdG8g dGhlIGFwcHJvcHJpYXRlIHBvc2l0aW9uLgotCShnb3RvLWNoYXIgKHBvaW50LW1pbikpCi0J KGZvcndhcmQtbGluZSAoMS0gKGNhciBkZWNvKSkpCisgCShnb3RvLWNoYXIgKHBvaW50LW1p bikpCisgCShmb3J3YXJkLWxpbmUgKDEtIChjYXIgZGVjbykpKQogCShpbnNlcnQgIkBcbiIp CiA7OyBGSVhNRTogdG9kbywgd2UKIAkpCiAgICAgKSkpCiAKIAorOz09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKzsgbGlzdCByZWxhdGVkIGZ1 bmN0aW9ucy4KKworKGRlZmNvbnN0IHJvbWFuLW51bWJlci1saXN0CisgICcoIkkiICJJSSIg IklJSSIgIklWIiAiViIgIlZJIiAiVklJIiAiVklJSSIgIklYIiAiWCIgIlhJIiAiWElJIiAi WElJSSIgIlhJViIgIlhWIgorICAgICJYVkkiICJYVklJIiAiWFZJSUkiICJYSVgiICJYWCIg IlhYSSIgIlhYSUkiICJYWElJSSIgIlhYSVYiICJYWFYiICJYWFZJIiAiWFhWSUkiCisgICAg IlhYVklJSSIgIlhYSVgiICJYWFgiICJYWFhJIiAiWFhYSUkiICJYWFhJSUkiICJYWFhJViIg IlhYWFYiICJYWFhWSSIgIlhYWFZJSSIKKyAgICAiWFhYVklJSSIgIlhYWElYIiAiWEwiICJY TEkiICJYTElJIiAiWExJSUkiICJYTElWIiAiWExWIiAiWExWSSIgIlhMVklJIiAiWExWSUlJ IgorICAgICJYTElYIiAiTCIpCisgICJMaXN0IG9mIFJvbWFuIG51bWVyYWxzLiIpCisKKyhk ZWZjb25zdCBsZXR0ZXItbGlzdAorICAnKCJBIiAiQiIgIkMiICJEIiAiRSIgIkYiICJHIiAi SCIgIkkiICJKIiAiSyIgIkwiICJNIgorICAgICJOIiAiTyIgIlAiICJRIiAiUiIgIlMiICJU IiAiVSIgIlYiICJXIiAiWCIgIlkiICJaIikKKyAgIkxpc3Qgb2YgTGF0aW4gbGV0dGVyLiIp CisKKyhkZWZ2YXIgcnN0LXJlLWJ1bGxldHMKKyAgKGZvcm1hdCAiXFwoWyVzXVsgXHRdXFwp W14gXHRdIiAocmVnZXhwLXF1b3RlIChjb25jYXQgcnN0LWJ1bGxldHMpKSkKKyAgIlJlZ2V4 cCBmb3IgZmluZGluZyBidWxsZXRzLiIpCisKKyhkZWZ2YXIgcnN0LWluaXRpYWwtZW51bXMK KyAgJygiIy4iICIxLiIgImEuIiAiQS4iICJJLiIgImkuIiAiKDEpIiAiKGEpIiAiKEEpIiAi KEkpIiAiKGkpIiAiMSkiICJhKSIgIkEpIiAiSSkiICJpKSIpCisgICJMaXN0IG9mIGluaXRp YWwgZW51bWVyYXRlcy4iKQorCisoZGVmdmFyIHJzdC1pbml0aWFsLWl0ZW1zCisgIChhcHBl bmQgKG1hcGNhciAnY2hhci10by1zdHJpbmcgcnN0LWJ1bGxldHMpIHJzdC1pbml0aWFsLWVu dW1zKQorICAiTGlzdCBvZiBpbml0aWFsIGl0ZW1zLiBJdCdzIGNvbGxlY3Rpb24gb2YgYnVs bGV0cyBhbmQgZW51bWVyYXRpb25zIikKKworKGRlZnZhciByc3QtcmUtZW51bWVyYXRlcwor ICAoZm9ybWF0ICJeWyBcdF0qXFwoJXNcXHwlc1xcKVsgXHRdIgorICAgICAgICAgICJcXChb MC05XStcXHxbYS16QS1aXVxcfFtJVlhMQ0RNaXZ4bGNkbV0rXFwpXFwuIgorICAgICAgICAg ICIoP1xcKFswLTldK1xcfFthLXpBLVpdXFx8W0lWWExDRE1pdnhsY2RtXStcXCkpIikKKyAg IlJlZ2V4cCBmb3IgZmluZGluZyBlbnVtZXJhdGVzICgjIGlzIG5vdCBpbmNsdWRlZCkuIikK KworKGRlZnZhciByc3QtcmUtaXRlbXMKKyAgKGZvcm1hdCAiXlsgXHRdKlxcKCVzXFx8JXNc XHwlc1xcKVsgXHRdIgorICAgICAgICAgIChmb3JtYXQgIlslc10iIChyZWdleHAtcXVvdGUg KGNvbmNhdCByc3QtYnVsbGV0cykpKQorICAgICAgICAgICJcXCgjXFx8W2Etel1cXHxbMC05 XStcXHxbQS1aXVxcfFtJVlhMQ0RNXStcXHxbaXZ4bGNkbV0rXFwpXFwuIgorICAgICAgICAg ICIoP1xcKFthLXpdXFx8WzAtOV0rXFx8W0EtWl1cXHxbSVZYTENETV0rXFx8W2l2eGxjZG1d K1xcKSkiKQorICAiUmVnZXhwIGZvciBmaW5kaW5nIGJ1bGxldHMgYW5kIGVudW1lcmF0ZXMu IikKKworKGRlZnVuIHJzdC1pbnNlcnQtbGlzdC1wb3MgKG5ld2l0ZW0pCisgICJBcnJhZ2Ug cmVsYXRpdmUgcG9zaXRpb24gb2YgYSBuZXdseSBpbnNlcnRlZCBsaXN0IGl0ZW0uCisKK0Fk ZGluZyBhIG5ldyBsaXN0IG1pZ2h0IGNvbnNpZGVyIHRocmVlIHNpdHVhdGlvbnM6CisKKyAo YSkgQ3VycmVudCBsaW5lIGlzIGEgYmxhbmsgbGluZS4KKyAoYikgUHJldmlvdXMgbGluZSBp cyBhIGJsYW5rIGxpbmUuCisgKGMpIEZvbGxvd2luZyBsaW5lIGlzIGEgYmxhbmsgbGluZS4K KworV2hlbiAoYSkgYW5kIChiKSwganVzdCBhZGQgdGhlIG5ldyBsaXN0IGF0IGN1cnJlbnQg bGluZS4gCisKK3doZW4gKGEpIGFuZCBub3QgKGIpLCBhZGQgYSBibGFuayBsaW5lIGJlZm9y ZSBhZGRpbmcgdGhlIG5ldyBsaXN0LgorCitXaGVuIG5vdCAoYSksIGFkZCBhIGJsYW5rIGxp bmUgYW5kIGEgbmV3IGxpbmUgYXQgY3VycmVudCBwb2ludC4gCisKK090aGVyIHNpdHVhdGlv bnMgYXJlIGp1c3QgaWdub3JlZCBhbmQgbGVmdCB0byB1c2VycyB0aGVtc2VsdmVzLiIKKyAg KGlmIChzYXZlLWV4Y3Vyc2lvbgorICAgICAgICAoYmVnaW5uaW5nLW9mLWxpbmUpCisgICAg ICAgIChsb29raW5nLWF0ICJeWyBcdF0qJCIpKQorICAgICAgKGlmIChzYXZlLWV4Y3Vyc2lv bgorICAgICAgICAgICAgKGZvcndhcmQtbGluZSAtMSkKKyAgICAgICAgICAgIChsb29raW5n LWF0ICJeWyBcdF0qJCIpKQorICAgICAgICAgIChpbnNlcnQgKGNvbmNhdCBuZXdpdGVtICIg IikpCisgICAgICAgIChpbnNlcnQgKGNvbmNhdCAiXG4iIG5ld2l0ZW0gIiAiKSkpCisgICAg KHByb2duIAorICAgICAgKGluc2VydCAoY29uY2F0ICJcblxuIiBuZXdpdGVtICIgIikpKSkp CisKKyhkZWZ1biByc3QtaW5zZXJ0LWxpc3QtbmV3LWJ1bGxldCAoKQorICAiSW5zZXJ0IGEg bmV3IGxpc3QgYnVsbGV0LgorIgorICAoaW50ZXJhY3RpdmUpCisgIChsZXQgKGl0ZW1zdHls ZSkKKyAgICAoc2V0cSBpdGVtc3R5bGUgIi0iKQorICAgIChyc3QtaW5zZXJ0LWxpc3QtcG9z IGl0ZW1zdHlsZSkpKQorCisoZGVmdW4gcnN0LWluc2VydC1saXN0LW5ldy1pdGVtIChpdGVt bm8pCisgICJJbnNlcnQgYSBuZXcgbGlzdCBpdGVtLgorCitVc2VyIGlzIGFza2VkIHRvIHNl bGVjdCB0aGUgaXRlbSBzdHlsZSBmaXJzdCwgZm9yIGV4YW1wbGUgKGEpLCBpKSwgKy4gVXNl IFRBQiAKK2ZvciBjb21wbGV0aXRpb24gYW5kIGNob2ljZXMuCisKK0lmIHVzZXIgc2VsZWN0 cyBidWxsZXRzIG9yICMsIGl0J3MganVzdCBhZGRlZCB3aXRoIHBvc2l0aW9uIGFycmFuZ2Vk IGJ5IAorYHJzdC1pbnNlcnQtbGlzdC1uZXctcG9zJy4gCisKK0lmIHVzZXIgc2VsZWN0cyBl bnVtZXJhdGVzLCBhIGZ1cnRoZXIgcHJvbXB0IGlzIGdpdmVuLiBVc2VyIG5lZWQgdG8gaW5w dXQgYSAKK3N0YXJ0aW5nIGl0ZW0sIGZvciBleGFtcGxlICdlJyBmb3IgJ0EpJyBzdHlsZS4g VGhlIHBvc2l0aW9uIGlzIGFsc28gYXJyYW5nZWQgYnkKK2Byc3QtaW5zZXJ0LWxpc3QtbmV3 LXBvcycuCisiCisgIChpbnRlcmFjdGl2ZSAiUCIpCisgIChpZiAobm90IGl0ZW1ubykKKyAg ICAgIChzZXRxIGl0ZW1ubyAxKSkKKyAgKHNldHEgaXRlbW5vICgxLSBpdGVtbm8pKQorICAo bGV0IChpdGVtc3R5bGUgaXRlbWZpcnN0KQorICAgIChzZXRxIGl0ZW1zdHlsZSAoY29tcGxl dGluZy1yZWFkICJQcm92aWRpbmcgcGVyZmVyZWQgaXRlbSAoZGVmYXVsdCAnIy4nKTogIgor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJzdC1pbml0aWFsLWl0ZW1z IG5pbCB0IG5pbCBuaWwgIiMuIikpCisgICAgKHdoZW4gKHN0cmluZy1tYXRjaCAiW2FBMUlp XSIgaXRlbXN0eWxlKQorICAgICAgKHNldHEgaXRlbWZpcnN0IChtYXRjaC1zdHJpbmcgMCBp dGVtc3R5bGUpKQorICAgICAgKGNvbmQgKChlcXVhbCBpdGVtZmlyc3QgIkEiKSAKKyAgICAg ICAgICAgICAoc2V0cSBpdGVtc3R5bGUgKHJlcGxhY2UtbWF0Y2ggKG50aCBpdGVtbm8gbGV0 dGVyLWxpc3QpIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBuaWwgbmlsIGl0ZW1zdHlsZSkpKQorICAgICAgICAgICAgKChlcXVhbCBpdGVtZmlyc3Qg ImEiKSAKKyAgICAgICAgICAgICAoc2V0cSBpdGVtc3R5bGUgKHJlcGxhY2UtbWF0Y2ggKGRv d25jYXNlIChudGggaXRlbW5vIGxldHRlci1saXN0KSkgCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIG5pbCBuaWwgaXRlbXN0eWxlKSkpCisgICAgICAg ICAgICAoKGVxdWFsIGl0ZW1maXJzdCAiSSIpIAorICAgICAgICAgICAgIChzZXRxIGl0ZW1z dHlsZSAocmVwbGFjZS1tYXRjaCAobnRoIGl0ZW1ubyByb21hbi1udW1iZXItbGlzdCkgCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5pbCBuaWwgaXRl bXN0eWxlKSkpCisgICAgICAgICAgICAoKGVxdWFsIGl0ZW1maXJzdCAiaSIpIAorICAgICAg ICAgICAgIChzZXRxIGl0ZW1zdHlsZSAocmVwbGFjZS1tYXRjaCAoZG93bmNhc2UgKG50aCBp dGVtbm8gcm9tYW4tbnVtYmVyLWxpc3QpKSAKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgbmlsIG5pbCBpdGVtc3R5bGUpKSkKKyAgICAgICAgICAgICgo ZXF1YWwgaXRlbWZpcnN0ICIxIikgCisgICAgICAgICAgICAgKHNldHEgaXRlbXN0eWxlIChy ZXBsYWNlLW1hdGNoIChudW1iZXItdG8tc3RyaW5nICgxKyBpdGVtbm8pKSAKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmlsIG5pbCBpdGVtc3R5bGUp KSkKKyAgICAgICAgICAgICkpCisgICAgKHJzdC1pbnNlcnQtbGlzdC1wb3MgaXRlbXN0eWxl KSkpCisKKyhkZWZ1biByc3QtbGlzdC1tYXRjaC1zdHJpbmcgKHJlZykKKyAgIk1hdGNoIGEg cmVnZXggaW4gYSBsaW5lIGFuZCByZXR1cm4gdGhlIG1hdGNoZWQgc3RyaW5nIGJ5IG1hdGNo LXN0cmluZy4KKworSWYgbm90aGluZyBtYXRjaGVkLCBhIGVtcHR5IHN0cmluZyBpcyByZXR1 cm5lZC4iCisgIChsZXQgKG1hdGNoZWQpCisgICAgKHNhdmUtZXhjdXJzaW9uCisgICAgICAo ZW5kLW9mLWxpbmUpCisgICAgICAoaWYgKHJlLXNlYXJjaC1iYWNrd2FyZCByZWcgKGxpbmUt YmVnaW5uaW5nLXBvc2l0aW9uKSB0KQorICAgICAgICAgIChzZXRxIG1hdGNoZWQgKG1hdGNo LXN0cmluZyAwKSkKKyAgICAgICAgKHNldHEgbWF0Y2hlZCAiIikpKQorICAgIG1hdGNoZWQp KQorCisoZGVmdW4gcnN0LWluc2VydC1saXN0LWNvbnRpbnVlICgpCisgICJJbnNlcnQgYSBs aXN0IGl0ZW0gd2l0aCBjdXJyZW50IGxpc3Qgc3R5bGUgYW5kIGluZGVudGF0aW9uIGxldmVs LgorCitUaGUgZnVuY3Rpb24gd29ya3MgZm9yIGFsbCBzdHlsZSBvZiBidWxsZXQgbGlzdHMg YW5kIGVudW1lcmF0aW9uIGxpc3RzLiBPbmx5IG9uZSAKK3RoaW5nIG5lZWQgdG8gYmUgbm90 aWNlZDogCisKK0xpc3Qgc3R5bGUgYWxwaGFiZXRpY2FsIGxpc3QsIHN1Y2ggYXMgJ2EuJywg YW5kIHJvbWFuIG51bWVyaWNhbCBsaXN0LCBzdWNoIGFzICdpLicsIAoraGF2ZSBzb21lIG92 ZXJsYXBwaW5nIGl0ZW1zLCBmb3IgZXhhbXBsZSAndi4nIFRoZSBmdW5jdGlvbiBjYW4gZGVh bCB3aXRoIHRoZSAKK3Byb2JsZW0gZWxlZ2FudGx5IGluIG1vc3Qgc2l0dWF0aW9ucy4gQnV0 IHdoZW4gdGhvc2Ugb3ZlcmxhcHBlZCBsaXN0IHByb2NlZWRlZCAKK2J5IGEgYmxhbmsgbGlu ZSwgaXQgaXMgaGFyZCB0byBkZXRlcm1pbmUgd2hpY2ggdHlwZSB0byB1c2UgYXV0b21hdGlj YWxseS4gVGhlIAorZnVuY3Rpb24gdXNlcyByb21hbiBudW1lcmljYWwgbGlzdCBkZWZhdWx0 bHkuIElmIHlvdSB3YW50IGFscGhhYmV0aWNhbCBsaXN0LCBqdXN0IAordXNlIGEgcHJlZml4 IChcXFt1bml2ZXJzYWwtYXJndW1lbnRdKS4KKyIKKyAgKGludGVyYWN0aXZlKQorICAobGV0 IChjdXJpdGVtIG5ld2l0ZW0gaXRlbW5vIHByZXZpdGVtIHRtcGl0ZW0pCisgICAgKHNldHEg Y3VyaXRlbSAocnN0LWxpc3QtbWF0Y2gtc3RyaW5nIHJzdC1yZS1pdGVtcykpCisgICAgKGNv bmQgKChzdHJpbmctbWF0Y2ggKGZvcm1hdCAiIy5cXHxbJXNdIiAKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIChyZWdleHAtcXVvdGUgKGNvbmNhdCByc3QtYnVsbGV0cykp KSBjdXJpdGVtKQorICAgICAgICAgICAoc2V0cSBuZXdpdGVtIGN1cml0ZW0pKQorICAgICAg ICAgICgoc3RyaW5nLW1hdGNoICJbMC05XSsiIGN1cml0ZW0pCisgICAgICAgICAgIChwcm9n bgorICAgICAgICAgICAgIChzZXRxIGl0ZW1ubyAoMSsKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgIChzdHJpbmctdG8tbnVtYmVyCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg KG1hdGNoLXN0cmluZyAwIGN1cml0ZW0pKSkpCisgICAgICAgICAgICAgKHNldHEgbmV3aXRl bSAocmVwbGFjZS1tYXRjaAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIChudW1iZXIt dG8tc3RyaW5nIGl0ZW1ubykKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBuaWwgbmls IGN1cml0ZW0pKSkpCisgICAgICAgICAgKChhbmQgKHN0cmluZy1tYXRjaCAiW0lWWExDRE1p dnhsY2RtXSsiIGN1cml0ZW0pCisgICAgICAgICAgICAgICAgKHByb2duIAorICAgICAgICAg ICAgICAgICAgKHNldHEgdG1waXRlbSAobWF0Y2gtc3RyaW5nIDAgY3VyaXRlbSkpCisgICAg ICAgICAgICAgICAgICAob3IgKD4gKGxlbmd0aCB0bXBpdGVtKSAxKSAKKyAgICAgICAgICAg ICAgICAgICAgICAoYW5kICg9IChsZW5ndGggdG1waXRlbSkgMSkgCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAocHJvZ24KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNh dmUtZXhjdXJzaW9uCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGZvcndhcmQt bGluZSAtMSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc2V0cSBwcmV2aXRl bSAocnN0LWxpc3QtbWF0Y2gtc3RyaW5nIHJzdC1yZS1lbnVtZXJhdGVzKSkKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAod2hlbiAoc3RyaW5nLW1hdGNoICJbYS16QS1aXSsi IHByZXZpdGVtKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNldHEgcHJl dml0ZW0gKG1hdGNoLXN0cmluZyAwIHByZXZpdGVtKSkpKQorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAob3IgKD4gKGxlbmd0aCBwcmV2aXRlbSkgMSkKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICg9IChsZW5ndGggcHJldml0ZW0pIDApKSkpKSkpCisgICAg ICAgICAgIChwcm9nbgorICAgICAgICAgICAgIChzdHJpbmctbWF0Y2ggIltJVlhMQ0RNaXZ4 bGNkbV0rIiBjdXJpdGVtKQorICAgICAgICAgICAgIChpZiAoaXNlYXJjaC1uby11cHBlci1j YXNlLXAgdG1waXRlbSBuaWwpCisgICAgICAgICAgICAgICAgIChwcm9nbgorICAgICAgICAg ICAgICAgICAgIChzZXRxIGl0ZW1ubyAoY2FyIChjZHIgKG1lbWJlciAKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAobWF0Y2gtc3RyaW5nIDAgKHVwY2Fz ZSBjdXJpdGVtKSkgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgcm9tYW4tbnVtYmVyLWxpc3QpKSkpCisgICAgICAgICAgICAgICAgICAgKHNldHEgbmV3 aXRlbSAocmVwbGFjZS1tYXRjaCAoZG93bmNhc2UgaXRlbW5vKSBuaWwgbmlsIGN1cml0ZW0p KSkKKyAgICAgICAgICAgICAgIChwcm9nbgorICAgICAgICAgICAgICAgICAoc2V0cSBpdGVt bm8gKGNhciAoY2RyIChtZW1iZXIgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIChtYXRjaC1zdHJpbmcgMCBjdXJpdGVtKQorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHJvbWFuLW51bWJlci1saXN0KSkpKQorICAgICAgICAg ICAgICAgICAoc2V0cSBuZXdpdGVtIChyZXBsYWNlLW1hdGNoIGl0ZW1ubyBuaWwgbmlsIGN1 cml0ZW0pKSkpKSkKKyAgICAgICAgICAoKHN0cmluZy1tYXRjaCAiW2EteUEtWV0iIGN1cml0 ZW0pCisgICAgICAgICAgIChwcm9nbgorICAgICAgICAgICAgIChzZXRxIGl0ZW1ubyAoMSsK KyAgICAgICAgICAgICAgICAgICAgICAgICAgIChzdHJpbmctdG8tY2hhcgorICAgICAgICAg ICAgICAgICAgICAgICAgICAgIChtYXRjaC1zdHJpbmcgMCBjdXJpdGVtKSkpKQorICAgICAg ICAgICAgIChzZXRxIG5ld2l0ZW0gKHJlcGxhY2UtbWF0Y2gKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAoY2hhci10by1zdHJpbmcgaXRlbW5vKQorICAgICAgICAgICAgICAgICAg ICAgICAgICAgIG5pbCBuaWwgY3VyaXRlbSkpKSkpCisgICAgKGluc2VydCAoY29uY2F0ICJc biIgbmV3aXRlbSkpKSkKKworKGRlZnVuIHJzdC1pbnNlcnQtbGlzdCAoaXRlbW5vKQorICAi SW5zZXJ0IGEgbGlzdCBpdGVtIGF0IHRoZSBjdXJyZW50IHBvaW50LgorCitUaGUgY29tbWFu ZCBjYW4gaW5zZXJ0IGEgbmV3IGxpc3Qgb3IgYSBjb250aW51aW5nIGxpc3QuIFdoZW4gaXQg aXMgY2FsbGVkIGF0IGEgCitub24tbGlzdCBsaW5lLCBpdCB3aWxsIHByb21vdGUgdG8gaW5z ZXJ0IG5ldyBsaXN0LiBXaGVuIGl0IGlzIGNhbGxlZCBhdCBhIGxpc3QgCitsaW5lLCBpdCB3 aWxsIGluc2VydCBhIGxpc3Qgd2l0aCB0aGUgc2FtZSBsaXN0IHN0eWxlLiAKKworMS4gV2hl biBpbnNlcnRpbmcgYSBuZXcgbGlzdDogCisKK1VzZXIgaXMgYXNrZWQgdG8gc2VsZWN0IHRo ZSBpdGVtIHN0eWxlIGZpcnN0LCBmb3IgZXhhbXBsZSAoYSksIGkpLCArLiBVc2UgVEFCIAor Zm9yIGNvbXBsZXRpdGlvbiBhbmQgY2hvaWNlcy4KKworIChhKSBJZiB1c2VyIHNlbGVjdHMg YnVsbGV0cyBvciAjLCBpdCdzIGp1c3QgYWRkZWQuIAorIChiKSBJZiB1c2VyIHNlbGVjdHMg ZW51bWVyYXRlcywgYSBmdXJ0aGVyIHByb21wdCBpcyBnaXZlbi4gVXNlciBuZWVkIHRvIGlu cHV0IGEgCitzdGFydGluZyBpdGVtLCBmb3IgZXhhbXBsZSAnZScgZm9yICdBKScgc3R5bGUu IAorCitUaGUgcG9zaXRpb24gb2YgdGhlIG5ldyBsaXN0IGlzIGFycmFuZ2VkIGFjY29yZGlu ZyB3aGV0aGVyIG9yIG5vdCB0aGUgY3VycmVudCBsaW5lIAorYW5kIHRoZSBwcmV2aW91cyBs aW5lIGFyZSBibGFuayBsaW5lcy4KKworMi4gV2hlbiBjb250aW51aW5nIGEgbGlzdCwgb25l IHRoaW5nIG5lZWQgdG8gYmUgbm90aWNlZDogCisKK0xpc3Qgc3R5bGUgYWxwaGFiZXRpY2Fs IGxpc3QsIHN1Y2ggYXMgJ2EuJywgYW5kIHJvbWFuIG51bWVyaWNhbCBsaXN0LCBzdWNoIGFz ICdpLicsIAoraGF2ZSBzb21lIG92ZXJsYXBwaW5nIGl0ZW1zLCBmb3IgZXhhbXBsZSAndi4n IFRoZSBmdW5jdGlvbiBjYW4gZGVhbCB3aXRoIHRoZSAKK3Byb2JsZW0gZWxlZ2FudGx5IGlu IG1vc3Qgc2l0dWF0aW9ucy4gQnV0IHdoZW4gdGhvc2Ugb3ZlcmxhcHBlZCBsaXN0IHByb2Nl ZWRlZCAKK2J5IGEgYmxhbmsgbGluZSwgaXQgaXMgaGFyZCB0byBkZXRlcm1pbmUgd2hpY2gg dHlwZSB0byB1c2UgYXV0b21hdGljYWxseS4gVGhlIAorZnVuY3Rpb24gdXNlcyByb21hbiBu dW1lcmljYWwgbGlzdCBkZWZhdWx0bHkuIElmIHlvdSB3YW50IGFscGhhYmV0aWNhbCBsaXN0 LCBqdXN0IAordXNlIGEgcHJlZml4IChcXFt1bml2ZXJzYWwtYXJndW1lbnRdKS4KKyIKKyAg KGludGVyYWN0aXZlICJQIikKKyAgKGlmIChlcXVhbCAocnN0LWxpc3QtbWF0Y2gtc3RyaW5n IHJzdC1yZS1pdGVtcykgIiIpCisgICAgICAoaWYgKG51bGwgY3VycmVudC1wcmVmaXgtYXJn KQorICAgICAgICAgIChyc3QtaW5zZXJ0LWxpc3QtbmV3LWJ1bGxldCkKKyAgICAgICAgKHJz dC1pbnNlcnQtbGlzdC1uZXctaXRlbSBpdGVtbm8pKQorICAgIChyc3QtaW5zZXJ0LWxpc3Qt Y29udGludWUpKSkKKworOz09PT09PT09PT09PT09CisKIChkZWZ1biByc3QtZmluZC1wZngt aW4tcmVnaW9uIChiZWcgZW5kIHBmeC1yZSkKICAgIkZpbmQgYWxsIHRoZSBwb3NpdGlvbnMg b2YgcHJlZml4ZXMgaW4gcmVnaW9uIGJldHdlZW4gQkVHIGFuZCBFTkQuCiBUaGlzIGlzIHVz ZWQgdG8gZmluZCBidWxsZXRzIGFuZCBlbnVtZXJhdGVkIGxpc3QgaXRlbXMuICBQRlgtUkUK QEAgLTE1MzEsMzMgKzE3OTIsMTUgQEAKIAkoZm9yd2FyZC1saW5lIDEpKSApCiAgICAgKG5y ZXZlcnNlIHBmeCkpKQogCi0oZGVmdmFyIHJzdC1yZS1idWxsZXRzCi0gIChmb3JtYXQgIlxc KFslc11bIFx0XVxcKVteIFx0XSIgKHJlZ2V4cC1xdW90ZSAoY29uY2F0IHJzdC1idWxsZXRz KSkpCi0gICJSZWdleHAgZm9yIGZpbmRpbmcgYnVsbGV0cy4iKQotCi07OyAoZGVmdmFyIHJz dC1yZS1lbnVtZXJhdGlvbnMKLTs7ICAgIlxcKFxcKCNcXHxbMC05XStcXClcXC5bIFx0XVxc KVteIFx0XSIKLTs7ICAgIlJlZ2V4cCBmb3IgZmluZGluZyBidWxsZXRzLiIpCi0KLShkZWZ2 YXIgcnN0LXJlLWl0ZW1zCi0gIChmb3JtYXQgIlxcKCVzXFx8JXNcXClbXiBcdF0iCi0JICAo Zm9ybWF0ICJbJXNdWyBcdF0iIChyZWdleHAtcXVvdGUgKGNvbmNhdCByc3QtYnVsbGV0cykp KQotCSAgIlxcKCNcXHxbMC05XStcXClcXC5bIFx0XSIpCi0gICJSZWdleHAgZm9yIGZpbmRp bmcgYnVsbGV0cy4iKQotCi0oZGVmdmFyIHJzdC1wcmVmZXJyZWQtYnVsbGV0cwotICAnKD8t ID8qID8rKQotICAiTGlzdCBvZiBmYXZvdXJpdGUgYnVsbGV0cyB0byBzZXQgZm9yIHN0cmFp Z2h0ZW5pbmcgYnVsbGV0cy4iKQotCiAoZGVmdW4gcnN0LXN0cmFpZ2h0ZW4tYnVsbGV0cy1y ZWdpb24gKGJlZyBlbmQpCiAgICJNYWtlIGFsbCB0aGUgYnVsbGV0ZWQgbGlzdCBpdGVtcyBp biB0aGUgcmVnaW9uIGNvbnNpc3RlbnQuCiBUaGUgcmVnaW9uIGlzIHNwZWNpZmllZCBiZXR3 ZWVuIEJFRyBhbmQgRU5ELiAgWW91IGNhbiB1c2UgdGhpcwogYWZ0ZXIgeW91IGhhdmUgbWVy Z2VkIG11bHRpcGxlIGJ1bGxldGVkIGxpc3RzIHRvIG1ha2UgdGhlbSB1c2UKIHRoZSBzYW1l L2NvcnJlY3QvY29uc2lzdGVudCBidWxsZXQgY2hhcmFjdGVycy4KIAotU2VlIHZhcmlhYmxl IGByc3QtcHJlZmVycmVkLWJ1bGxldHMnIGZvciB0aGUgbGlzdCBvZiBidWxsZXRzIHRvCi1h ZGp1c3QuICBJZiBidWxsZXRzIGFyZSBmb3VuZCBvbiBsZXZlbHMgYmV5b25kIHRoZQotYHJz dC1wcmVmZXJyZWQtYnVsbGV0cycgbGlzdCwgdGhleSBhcmUgbm90IG1vZGlmaWVkLiIKK1Nl ZSB2YXJpYWJsZSBgcnN0LWJ1bGxldHMnIGZvciB0aGUgbGlzdCBvZiBidWxsZXRzIHRvIGFk anVzdC4gIAorSWYgYnVsbGV0cyBhcmUgZm91bmQgb24gbGV2ZWxzIGJleW9uZCB0aGUgYHJz dC1idWxsZXRzJyBsaXN0LCAKK3RoZXkgYXJlIG5vdCBtb2RpZmllZC4iCiAgIChpbnRlcmFj dGl2ZSAiciIpCiAKICAgKGxldCAoKGJ1bGxldHMgKHJzdC1maW5kLXBmeC1pbi1yZWdpb24g YmVnIGVuZApAQCAtMTU3Niw3ICsxODE5LDcgQEAKICAgICAobGV0ICgocG9zbGlzdCAoKSkp ICAgICAgICAgICAgICAgICA7IExpc3Qgb2YgKGluZGVudCAuIHBvc2l0aW9ucykuCiAgICAg ICAobWFwaGFzaCAobGFtYmRhICh4IHkpIChwdXNoIChjb25zIHggeSkgcG9zbGlzdCkpIGxl dnRhYmxlKQogCi0gICAgICAobGV0ICgoYnVsbGV0cyByc3QtcHJlZmVycmVkLWJ1bGxldHMp KQorICAgICAgKGxldCAoKGJ1bGxldHMgcnN0LWJ1bGxldHMpKQogICAgICAgICAoZG9saXN0 ICh4IChzb3J0IHBvc2xpc3QgJ2Nhci1sZXNzLXRoYW4tY2FyKSkKICAgICAgICAgICAod2hl biBidWxsZXRzCiAgICAgICAgICAgICA7OyBBcHBseSB0aGUgY2hhcmFjdGVycy4KQEAgLTE1 ODYsNiArMTgyOSw5IEBACiAgICAgICAgICAgICAgIChpbnNlcnQgKHN0cmluZyAoY2FyIGJ1 bGxldHMpKSkpCiAgICAgICAgICAgICAoc2V0cSBidWxsZXRzIChjZHIgYnVsbGV0cykpKSkp KSkpCiAKKzs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09CisKKwogKGRlZnVuIHJzdC1yc3RyaXAgKHN0cikKICAgIlN0cmlwcyB0aGUgd2hpdGVz cGFjZSBhdCB0aGUgZW5kIG9mIHN0cmluZyBTVFIuIgogICAoc3RyaW5nLW1hdGNoICJbIFx0 XG5dKlxcJyIgc3RyKQpAQCAtMTkxMiw3ICsyMTU4LDcgQEAKICAgKGxldCAoKHAgKHBvaW50 KSkpCiAgICAgKHNhdmUtZXhjdXJzaW9uCiAgICAgICAod2hlbiAocnN0LXRvYy1pbnNlcnQt ZmluZC1kZWxldGUtY29udGVudHMpCi0gICAgICAgIChpbnNlcnQgIlxuICAgICIpCisgICAg ICAgIChpbnNlcnQgIlxuICAgIikKIAkocnN0LXRvYy1pbnNlcnQpCiAJKSkKICAgICA7OyBT b21laG93IHNhdmUtZXhjdXJzaW9uIGRvZXMgbm90IHJlYWxseSB3b3JrIHdlbGwuCkBAIC0y ODIzLDcgKzMwNjksNyBAQAogICAgICAgMSByc3QtYmxvY2stZmFjZSkKICAgICAgOzsgYEVu dW1lcmF0ZWQgTGlzdHNgXwogICAgICAobGlzdAotICAgICAgKGNvbmNhdCByZS1ib2wgIlxc KCg/XFwoI1xcfFswLTldK1xcfFtBLVphLXpdXFx8W0lWWExDTWl2eGxjbV0rXFwpWy4pXSIK KyAgICAgIChjb25jYXQgcmUtYm9sICJcXCgoP1xcKCNcXHxbMC05XStcXHxbQS1aYS16XVxc fFtJVlhMQ0RNaXZ4bGNkbV0rXFwpWy4pXSIKIAkgICAgICByZS1ibGtzZXAxICJcXCkiKQog ICAgICAgMSByc3QtYmxvY2stZmFjZSkKICAgICAgOzsgYERlZmluaXRpb24gTGlzdHNgXyBG SVhNRTogbWlzc2luZwpAQCAtMzE4OSw2ICszNDM1LDYzMyBAQAogCShzZXQtbWF0Y2gtZGF0 YSBtdGMpCiAJdCkpKSkKIAorDAorIDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7 Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzsKKzs7IGRp cmVjdGl2ZXMgYW5kIGh5cGVybGlua3MuCisKKzs9PT09PSBkaXJlY3RpdmUgdHlwZSBsaXN0 IGFuZCBjb21tYW5kID09PT09CisKKyhkZWZ2YXIgcnN0LWRpcmVjdGl2ZS10eXBlLWFsaXN0 CisgICcoKCJkZWZpbml0aW9uIiAuIHJzdC1pbnNlcnQtZGVmaW5pdGlvbikgCisgICAgKCJm aWVsZCIgLiByc3QtaW5zZXJ0LWZpZWxkKSAKKyAgICAoImFkbW9uaXRpb24iIC4gcnN0LWlu c2VydC1hZG1vbml0aW9uKQorICAgICgiaW1hZ2UiIC4gcnN0LWluc2VydC1pbWFnZSkgCisg ICAgKCJmaWd1cmUiIC4gcnN0LWluc2VydC1maWd1cmUpCisgICAgKCJ0b3BpYyIgLiByc3Qt aW5zZXJ0LXRvcGljKSAKKyAgICAoInNpZGViYXIiIC4gcnN0LWluc2VydC1zaWRlYmFyKSAK KyAgICAoImxpbmUtYmxvY2siIC4gcnN0LWluc2VydC1saW5lLWJsb2NrKSAKKyAgICAoInBh cnNlZC1saXRlcmFsIiAuIHJzdC1pbnNlcnQtcGFyc2VkLWxpdGVyYWwpIAorICAgICgicnVi cmljIiAuIHJzdC1pbnNlcnQtcnVicmljKSAKKyAgICAoImVwaWdyYXBoIiAuIHJzdC1pbnNl cnQtZXBpZ3JhcGgpIAorICAgICgiaGlnaGxpZ2h0cyIgLiByc3QtaW5zZXJ0LWhpZ2hsaWdo dHMpIAorICAgICgicHVsbC1xdW90ZSIgLiByc3QtaW5zZXJ0LXB1bGwtcXVvdGUpIAorICAg ICgiY29tcG91bmQiIC4gcnN0LWluc2VydC1jb21wb3VuZCkgCisgICAgKCJjb250YWluZXIi IC4gcnN0LWluc2VydC1jb250YWluZXIpIAorICAgICgidGFibGUiIC4gcnN0LWluc2VydC10 YWJsZSkgCisgICAgKCJjc3YtdGFibGUiIC4gcnN0LWluc2VydC1jc3YtdGFibGUpCisgICAg KCJsaXN0LXRhYmxlIiAuIHJzdC1pbnNlcnQtbGlzdC10YWJsZSkKKyAgICAoImNvbnRlbnRz IiAuIHJzdC1pbnNlcnQtY29udGVudHMpIAorICAgICgic2VjdG51bSIgLiByc3QtaW5zZXJ0 LXNlY3RudW0pIAorICAgICgicmVwbGFjZSIgLiByc3QtaW5zZXJ0LXJlcGxhY2UpIAorICAg ICgidW5pY29kZSIgLiByc3QtaW5zZXJ0LXVuaWNvZGUpIAorICAgICgiZGF0ZSIgLiByc3Qt aW5zZXJ0LWRhdGUpIAorICAgICgiaW5jbHVkZSIgLiByc3QtaW5zZXJ0LWluY2x1ZGUpIAor ICAgICgicmF3IiAuIHJzdC1pbnNlcnQtcmF3KSkKKyAgIkxpc3Qgb2YgZGlyZWN0aXZlIGlu c2VydGluZyBmdW5jdGlvbnMgb2YgZGlyZWN0aXZlIHR5cGVzLiIpCisKKyhkZWZ2YXIgcnN0 LWRpcmVjdGl2ZS10eXBlcworICAnKCJkZWZpbml0aW9uIiAiZmllbGQiICJhZG1vbml0aW9u IiAKKyAgICAiaW1hZ2UiICJmaWd1cmUiIAorICAgICJ0b3BpYyIgInNpZGViYXIiICJsaW5l LWJsb2NrIiAicGFyc2VkLWxpdGVyYWwiICJydWJyaWMiICJlcGlncmFwaCIgCisgICAgImhp Z2hsaWdodHMiICJwdWxsLXF1b3RlIiAiY29tcG91bmQiICJjb250YWluZXIiIAorICAgICJ0 YWJsZSIgImNzdi10YWJsZSIgImxpc3QtdGFibGUiCisgICAgImNvbnRlbnRzIiAic2VjdG51 bSIgImluY2x1ZGUiICJyYXciCisgICAgInJlcGxhY2UiICJ1bmljb2RlIiAiZGF0ZSIKKykK KyAgIkxpc3Qgb2YgZGlyZWN0aXZlIHR5cGVzIikKKworKGRlZnZhciByc3QtZGlyZWN0aXZl LW9wdGlvbi1saXN0CisgICcoKCJkZWZpbml0aW9uIiByc3Qtb3B0aW9uLWRlZmluaXRpb24g dCkgCisgICAgKCJmaWVsZCIgcnN0LW9wdGlvbi1maWVsZCB0KSAKKyAgICAoImFkbW9uaXRp b24iIHJzdC1vcHRpb24tYWRtb25pdGlvbiBuaWwpCisgICAgKCJpbWFnZSIgcnN0LW9wdGlv bi1pbWFnZSBuaWwpIAorICAgICgiZmlndXJlIiByc3Qtb3B0aW9uLWZpZ3VyZSB0KQorICAg ICgidG9waWMiIG5pbCB0KSAKKyAgICAoInNpZGViYXIiIHJzdC1vcHRpb24tc2lkZWJhciB0 KQorICAgICgibGluZS1ibG9jayIgbmlsIHQpIAorICAgICgicGFyc2VkLWxpdGVyYWwiIG5p bCB0KSAKKyAgICAoInJ1YnJpYyIgbmlsIG5pbCkgCisgICAgKCJlcGlncmFwaCIgbmlsIHQp IAorICAgICgiaGlnaGxpZ2h0cyIgbmlsIHQpIAorICAgICgicHVsbC1xdW90ZSIgbmlsIHQp IAorICAgICgiY29tcG91bmQiIG5pbCB0KSAKKyAgICAoImNvbnRhaW5lciIgbmlsIHQpIAor ICAgICgidGFibGUiIG5pbCB0KSAKKyAgICAoImNzdi10YWJsZSIgcnN0LW9wdGlvbi1jc3Yt dGFibGUgdCkKKyAgICAoImxpc3QtdGFibGUiIHJzdC1vcHRpb24tbGlzdC10YWJsZSB0KQor ICAgICgiY29udGVudHMiIHJzdC1jb250ZW50cy1vcHRpb24gbmlsKSAKKyAgICAoInNlY3Ru dW0iIHJzdC1zZWN0bnVtLW9wdGlvbiBuaWwpIAorICAgICgicmVwbGFjZSIgbmlsIG5pbCkg CisgICAgKCJ1bmljb2RlIiByc3Qtb3B0aW9uLXVuaWNvZGUgbmlsKSAKKyAgICAoImRhdGUi IG5pbCBuaWwpIAorICAgICgiaW5jbHVkZSIgcnN0LWluY2x1ZGUtb3B0aW9uIG5pbCkgCisg ICAgKCJyYXciIHJzdC1vcHRpb24tcmF3IHQpKQorICAiTGlzdCBvZiBvcHRpb24gZnVuY3Rp b25zIG9mIGRpcmVjdGl2ZSB0eXBlcy4iKQorCisoZGVmdW4gcnN0LWFkZC1kaXJlY3RpdmUt dHlwZSAodHlwZSBkaXJlY3RmdW5jIG9wdGFsaXN0IGNvbnRlbnQpCisgICJBZGRpbmcgbmV3 IGRpcmVjdGl2ZSB0byBkaXJlY3RpdmUgYWxpc3QgYW5kIGNvbXBsZXRpb24gbGlzdC4KKwor VXNlIHRoZSBmb2xsb3dpbmcgd2F5IHRvIGFkZCBkaXJlY3RpdmUgdHlwZS4KKworICAocnN0 LWFkZC1kaXJlY3RpdmUtdHlwZSBcImRlZmluaXRpb25cIiAKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgJ3JzdC1pbnNlcnQtZGVmaW5pdGlvbgorICAgICAgICAgICAgICAgICAgICAg ICAgICAncnN0LWRpcmVjdGl2ZS1vcHRpb25zIAorICAgICAgICAgICAgICAgICAgICAgICAg ICAnY29udGVudC1wcmVzZW5jZS1ib29sZWFuKQorIgorICAoYWRkLXRvLWxpc3QgJ3JzdC1k aXJlY3RpdmUtdHlwZXMgdHlwZSkKKyAgKGFkZC10by1saXN0ICdyc3QtZGlyZWN0aXZlLXR5 cGUtYWxpc3QgKGNvbnMgdHlwZSBkaXJlY3RmdW5jKSkKKyAgKGFkZC10by1saXN0ICdyc3Qt ZGlyZWN0aXZlLW9wdGlvbi1saXN0IChsaXN0IHR5cGUgb3B0YWxpc3QgY29udGVudCkpKQor CisoZGVmdW4gcnN0LWFkZC1kaXJlY3RpdmVzIChkaXJlY3RsaXN0KQorICAiTWV0YSBmdW5j dGlvbiBvZiBhZGQgZGlyZWN0aXZlcy4gCisKK0VsZW1lbnRzIG9mIGRpcmVjdGl2ZXMgc2hv dWxkIGFycmFuZ2VkIGFzIAorCisgICAodHlwZSBmdW5jaXRvbiBvcHRpb24tbGlzdCBjb250 ZW50LWJvb2xlYW4pLiAKKyIKKyAgKGRvbGlzdCAoZGlyZWN0IGRpcmVjdGxpc3QpCisgICAg KGV2YWwgKGNvbnMgJ3JzdC1hZGQtZGlyZWN0aXZlLXR5cGUgZGlyZWN0KSkpKQorCisoZGVm dW4gcnN0LWluc2VydC1kaXJlY3RpdmUgKCkKKyAgIk1ldGEtZnVuY3Rpb24gb2YgYWxsIGRp cmVjdGl2ZXMuIgorICAoaW50ZXJhY3RpdmUpCisgIChsZXQgKHR5cGUgb3B0bGlzdCBjb250 ZW50IG9wdG9yZGVyKQorICAgIChzZXRxIHR5cGUgKGNvbXBsZXRpbmctcmVhZCAiUHJvdmlk aW5nIGRpcmVjdGl2ZSB0eXBlOiAiIHJzdC1kaXJlY3RpdmUtdHlwZXMpKQorICAgIChmdW5j YWxsIChjZHIgKGFzc29jIHR5cGUgcnN0LWRpcmVjdGl2ZS10eXBlLWFsaXN0KSkpCisgICAg KHNldHEgb3B0bGlzdCAoZXZhbCAoY2FyIChjZHIgKGFzc29jIHR5cGUgcnN0LWRpcmVjdGl2 ZS1vcHRpb24tbGlzdCkpKSkpCisgICAgKHNldHEgY29udGVudCAoZXZhbCAoY2FkciAoY2Ry IChhc3NvYyB0eXBlIHJzdC1kaXJlY3RpdmUtb3B0aW9uLWxpc3QpKSkpKQorICAgIChpZiBv cHRsaXN0CisgICAgICAgIChwcm9nbgorICAgICAgICAgIChpZiAobm90IG9wdG9yZGVyKQor ICAgICAgICAgICAgICAocHJvZ24KKyAgICAgICAgICAgICAgICAoc2V0cSBvcHRvcmRlciAx KQorICAgICAgICAgICAgICAgIChpbnNlcnQgIiAgICIpKSkKKyAgICAgICAgICAod2hpbGUg KHktb3Itbi1wICJTZXQgZGlyZWN0aXZlIG9wdGlvbihzKT8gIikKKyAgICAgICAgICAgIChy c3Qtb3B0aW9uLWRpcmVjdGl2ZSBvcHRsaXN0KSkpKQorICAgIChpZiBjb250ZW50CisgICAg ICAgIChuZXdsaW5lLWFuZC1pbmRlbnQpCisgICAgICAobmV3bGluZS1hbmQtaW5kZW50KSkp KQorCis7PT09PSBkaXJlY3RpdmUgYW5kIGxpc3QgZGVmaW5pdGlvbnMgPT09PQorCis7LS0t IGxpc3QgbG9va3MgbGlrZSBkaXJlY3RpdmUgLS0tCisKKyhkZWZ1biByc3QtaW5zZXJ0LWRl ZmluaXRpb24gKCkKKyAgIkluc2VydCBhIGRlZmluaXRpb24gbGlzdCIKKyAgKGludGVyYWN0 aXZlKQorICAobGV0ICh0ZXJtIGNsYXNzaWZpZXJzIGNsYXNzZWwpCisgICAgKHNldHEgdGVy bSAocmVhZC1zdHJpbmcgIlByb3ZpZGluZyB0aGUgZGVmaW5pdGlvbidzIHRlcm06ICIpKQor ICAgIChzZXRxIGNsYXNzaWZpZXJzIChyZWFkLXN0cmluZyAiUHJvdmlkaW5nIGNsYXNzaWZp ZXIocykgKGlmIG1hbnksIHNlcGVyYXRlZCBieSAnLCAnKTogIikpCisgICAgKGlmIChlcXVh bCBjbGFzc2lmaWVycyAiIikKKyAgICAgICAgKGluc2VydCB0ZXJtICJcbiAgICAiKQorICAg ICAgKHByb2duCisgICAgICAgIChzZXRxIGNsYXNzaWZpZXJzIChzcGxpdC1zdHJpbmcgY2xh c3NpZmllcnMgIiwgIikpCisgICAgICAgIChkb2xpc3QgKHRtcGNsYXNzIGNsYXNzaWZpZXJz KQorICAgICAgICAgIChzZXRxIGNsYXNzZWwgKGNvbmNhdCBjbGFzc2VsICIgOiAiIHRtcGNs YXNzKSkpCisgICAgICAgIChpbnNlcnQgdGVybSBjbGFzc2VsICJcbiAgICAiKSkpKSkKKwor KGRlZnVuIHJzdC1pbnNlcnQtZmllbGQgKCkKKyAgIkluc2VydCBhIGZpZWxkIGxpc3QuIgor ICAoaW50ZXJhY3RpdmUpCisgIChsZXQgKGZpZWxkIHZhbHVlKQorICAgIChzZXRxIGZpZWxk IChyZWFkLXN0cmluZyAiUHJvdmlkaW5nIGZpZWxkOiAiKSkKKyAgICAoc2F2ZS1leGN1cnNp b24KKyAgICAgIChiZWdpbm5pbmctb2YtbGluZSkKKyAgICAgIChpbnNlcnQgKGNvbmNhdCAi OiIgZmllbGQgIjogIikpKSkpCisKKzstLS0gZnVuY3Rpb24gZm9yIGRlZmluaW5nIGRpcmVj dGl2ZXMgLS0tCisKKyhkZWZ1biByc3QtaW5zZXJ0LWRpcmVjdGl2ZS10eXBlICh0eXBlICZv cHRpb25hbCBhcmd1bWVudCkKKyAgIkluc2VydCB0aGUgZmlyc3QgbGluZSBvZiBkaXJlY3Rp dmUiCisgIChpbnNlcnQgKGNvbmNhdCAiLi4gIiB0eXBlICI6OiAiIGFyZ3VtZW50KSkKKyAg KG5ld2xpbmUtYW5kLWluZGVudCkpCisKKyhkZWZ1biByc3QtaW5zZXJ0LWRpcmVjdGl2ZS1v cHRpb24gKG9wdGlvbiAmb3B0aW9uYWwgdmFsdWUpCisgICJJbnNlcnQgYW4gb3B0aW9uIGxp bmUgb2YgZGlyZWN0aXZlIgorICAoaW5zZXJ0IChjb25jYXQgIjoiIG9wdGlvbiAiOiAiIHZh bHVlKSkpCisKKyhkZWZ1biByc3QtaW5zZXJ0LW9wdGlvbiAoKQorICAiSW5zZXJ0IGEgZGly ZWN0aXZlIG9wdGlvbi4iCisgIChpbnRlcmFjdGl2ZSkKKyAgKGxldCAob3B0aW9uIHZhbHVl KQorICAgIChzYXZlLWV4Y3Vyc2lvbgorICAgICAgKHJlLXNlYXJjaC1iYWNrd2FyZCAiXFwu XFwuIFxcc3crOjoiKQorICAgICAgKHNldHEgb3B0aW9uIChyZWFkLXN0cmluZyAiUHJvdmlk aW5nIGRpcmVjdGl2ZSBvcHRpb246ICIpKQorICAgICAgKHNldHEgdmFsdWUgKHJlYWQtc3Ry aW5nICJQcm92aWRpbmcgb3B0aW9uIHZhbHVlOiAiKSkKKyAgICAgIChlbmQtb2YtbGluZSkK KyAgICAgIChuZXdsaW5lLWFuZC1pbmRlbnQpCisgICAgICAoaW5zZXJ0ICIgICAiKQorICAg ICAgKHJzdC1pbnNlcnQtZGlyZWN0aXZlLW9wdGlvbiBvcHRpb24gdmFsdWUpKSkpCisKKyhk ZWZ1biByc3Qtb3B0aW9uLWRpcmVjdGl2ZSAob3B0YWxpc3QpCisgICJJbnNlcnQgZGlyZWN0 aXZlIG9wdGlvbnMgaW4gZGlyZWN0aXZlIGluc2VydGluZyBmdW5jdGlvbi4iCisgIChsZXQg KG9wdGxpc3Qgb3B0aW9uIHR5cGUgdmFsdWUpCisgICAgKHNldHEgb3B0bGlzdCAobWFwY2Fy ICdjYXIgb3B0YWxpc3QpKQorICAgIChzZXRxIG9wdGlvbiAoY29tcGxldGluZy1yZWFkICJQ cm92aWRpbmcgb3B0aW9uOiAiIG9wdGxpc3QpKQorICAgIChzZXRxIHR5cGUgKGNhciAoY2Ry IChhc3NvYyBvcHRpb24gb3B0YWxpc3QpKSkpCisgICAgKHNldHEgdmFsdWUKKyAgICAgICAg ICAoY29uZCAKKyAgICAgICAgICAgKChlcXVhbCB0eXBlICJmbGFnIikgbmlsKQorICAgICAg ICAgICAoKGVxdWFsIHR5cGUgIm9wdGlvbiIpIChjb21wbGV0aW5nLXJlYWQgCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICJQcm92aWRpbmcgb3B0aW9uYWwgdmFsdWU6 ICIgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjYWRyIChjZHIgKGFz c29jIG9wdGlvbiBvcHRhbGlzdCkpKSkpCisgICAgICAgICAgICgoZXF1YWwgdHlwZSAibnVt YmVyIikgKG51bWJlci10by1zdHJpbmcgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIChyZWFkLW51bWJlciAiUHJvdmlkaW5nIG51bWVyaWMgdmFsdWU6ICIpKSkKKyAg ICAgICAgICAgKChlcXVhbCB0eXBlICJzdHJpbmciKSAocmVhZC1zdHJpbmcgIlByb3ZpZGlu ZyB2YWx1ZTogIikpKSkKKyAgICAocnN0LWluc2VydC1kaXJlY3RpdmUtb3B0aW9uIG9wdGlv biB2YWx1ZSkKKyAgICAobmV3bGluZS1hbmQtaW5kZW50KSkpCisKKzstLS0gZGlyZWN0aXZl cyAtLS0KKworKGRlZnVuIHJzdC1pbnNlcnQtYWRtb25pdGlvbiAoKQorICAiSW5zZXJ0IGEg YWRtb25pdGlvbi4iCisgIChpbnRlcmFjdGl2ZSkKKyAgKGxldCAoYWRtb24gYXJndSkKKyAg ICAoc2V0cSBhZG1vbiAocmVhZC1zdHJpbmcgIlByb3ZpZGluZyBhZG1vbml0aW9uIHR5cGU6 ICIpKQorICAgIChzZXRxIGFyZ3UgKHJlYWQtc3RyaW5nICJQcm92aWRpbmcgYWRtb25pdGlv biBkZXNjcmlwdGlvbjogIikpCisgICAgKHJzdC1pbnNlcnQtZGlyZWN0aXZlLXR5cGUgYWRt b24gYXJndSkpKQorCisoZGVmdW4gcnN0LWluc2VydC1pbWFnZSAoKQorICAiSW5zZXJ0IGEg aW1hZ2UuIgorICAoaW50ZXJhY3RpdmUpCisgIChsZXQgKGFyZykKKyAgICAoc2V0cSBhcmcg KHJlYWQtc3RyaW5nICJQcm92aWRpbmcgaW1hZ2UgYW5kIGl0cyBwYXRoOiAiKSkKKyAgICAo cnN0LWluc2VydC1kaXJlY3RpdmUtdHlwZSAiaW1hZ2UiIGFyZykpKQorCisoZGVmdmFyIHJz dC1vcHRpb24taW1hZ2UKKyAgJygoImFsaWduIiAib3B0aW9uIiAoInRvcCIgIm1pZGRsZSIg ImJvdHRvbSIgImxlZnQiICJjZW50ZXIiICJyaWdodCIpKQorICAgICgid2lkdGgiICJzdHJp bmciICIzMDAiKQorICAgICgiaGVpZ2h0IiAic3RyaW5nIiAiMzAwIikKKyAgICAoInNjYWxl IiAibnVtYmVyIiA4MCkKKyAgICAoImFsdCIgInN0cmluZyIgIiIpCisgICAgKCJ0YXJnZXQi ICJzdHJpbmciICIiKSkpCisKKyhkZWZ1biByc3QtaW5zZXJ0LWZpZ3VyZSAoKQorICAiSW5z ZXJ0IGEgaW1hZ2UuIgorICAoaW50ZXJhY3RpdmUpCisgIChsZXQgKGFyZykKKyAgICAoc2V0 cSBhcmcgKHJlYWQtc3RyaW5nICJQcm92aWRpbmcgZmlndXJlIGFuZCBpdHMgcGF0aDogIikp CisgICAgKHJzdC1pbnNlcnQtZGlyZWN0aXZlLXR5cGUgImZpZ3VyZSIgYXJnKSkpCisKKyhk ZWZ2YXIgcnN0LW9wdGlvbi1maWd1cmUKKyAgJygoImFsaWduIiAib3B0aW9uIiAoImxlZnQi ICJjZW50ZXIiICJyaWdodCIpKQorICAgICgid2lkdGgiICJzdHJpbmciICIzMDAiKQorICAg ICgiaGVpZ2h0IiAic3RyaW5nIiAiMzAwIikKKyAgICAoInNjYWxlIiAibnVtYmVyIiA4MCkK KyAgICAoImZpZ3dpZHRoIiAic3RyaW5nIiAiMzUwIikKKyAgICAoImFsdCIgInN0cmluZyIg IiIpCisgICAgKCJ0YXJnZXQiICJzdHJpbmciICIiKSkpCisKKyhkZWZ1biByc3QtaW5zZXJ0 LXRvcGljICgpCisgICJJbnNlcnQgYSB0b3BpYy4iCisgIChpbnRlcmFjdGl2ZSkKKyAgKGxl dCAoYXJnKQorICAgIChzZXRxIGFyZyAocmVhZC1zdHJpbmcgIlByb3ZpZGluZyB0b3BpYyB0 aXRsZTogIikpCisgICAgKHJzdC1pbnNlcnQtZGlyZWN0aXZlLXR5cGUgInRvcGljIiBhcmcp KSkKKworKGRlZnVuIHJzdC1pbnNlcnQtc2lkZWJhciAoKQorICAiSW5zZXJ0IGEgc2lkZWJh ci4iCisgIChpbnRlcmFjdGl2ZSkKKyAgKGxldCAoYXJnKQorICAgIChzZXRxIGFyZyAocmVh ZC1zdHJpbmcgIlByb3ZpZGluZyBzaWRlYmFyIHRpdGxlOiAiKSkKKyAgICAocnN0LWluc2Vy dC1kaXJlY3RpdmUtdHlwZSAic2lkZWJhciIgYXJnKSkpCisKKyhkZWZ2YXIgcnN0LW9wdGlv bi1zaWRlYmFyCisnKCgic3VidGl0bGUiICJzdHJpbmciICIiKSkpCisKKyhkZWZ1biByc3Qt aW5zZXJ0LWxpbmUtYmxvY2sgKCkKKyAgIkluc2VydCBhIGxpbmUgYmxvY2suIgorICAoaW50 ZXJhY3RpdmUpCisgIChyc3QtaW5zZXJ0LWRpcmVjdGl2ZS10eXBlICJsaW5lLWJsb2NrIikp CisKKyhkZWZ1biByc3QtaW5zZXJ0LXBhcnNlZC1saXRlcmFsICgpCisgICJJbnNlcnQgYSBw YXJzZWQgbGl0ZXJhbC4iCisgIChpbnRlcmFjdGl2ZSkKKyAgKHJzdC1pbnNlcnQtZGlyZWN0 aXZlLXR5cGUgInBhcnNlZC1saXRlcmFsIikpCisKKyhkZWZ1biByc3QtaW5zZXJ0LXJ1YnJp YyAoKQorICAiSW5zZXJ0IGEgcnVicmljIHRpdGxlLiIKKyAgKGludGVyYWN0aXZlKQorICAo bGV0IChhcmcpCisgICAgKHNldHEgYXJnIChyZWFkLXN0cmluZyAiUHJvdmlkaW5nIHJ1YnJp YyB0aXRsZTogIikpCisgICAgKHJzdC1pbnNlcnQtZGlyZWN0aXZlLXR5cGUgInJ1YnJpYyIg YXJnKSkpCisKKyhkZWZ1biByc3QtaW5zZXJ0LWVwaWdyYXBoICgpCisgICJJbnNlcnQgYSBl cGlncmFwaC4iCisgIChpbnRlcmFjdGl2ZSkKKyAgKHJzdC1pbnNlcnQtZGlyZWN0aXZlLXR5 cGUgImVwaWdyYXBoIikpCisKKyhkZWZ1biByc3QtaW5zZXJ0LWhpZ2hsaWdodHMgKCkKKyAg Ikluc2VydCBhIGhpZ2hsaWdodHMuIgorICAoaW50ZXJhY3RpdmUpCisgIChyc3QtaW5zZXJ0 LWRpcmVjdGl2ZS10eXBlICJoaWdobGlnaHRzIikpCisKKyhkZWZ1biByc3QtaW5zZXJ0LXB1 bGwtcXVvdGUgKCkKKyAgIkluc2VydCBhIHB1bGwgcXVvdGUuIgorICAoaW50ZXJhY3RpdmUp CisgIChyc3QtaW5zZXJ0LWRpcmVjdGl2ZS10eXBlICJwdWxsLXF1b3RlIikpCisKKyhkZWZ1 biByc3QtaW5zZXJ0LWNvbXBvdW5kICgpCisgICJJbnNlcnQgYSBjb21wb3VuZC4iCisgIChp bnRlcmFjdGl2ZSkKKyAgKHJzdC1pbnNlcnQtZGlyZWN0aXZlLXR5cGUgImNvbXBvdW5kIikp CisKKyhkZWZ1biByc3QtaW5zZXJ0LWNvbnRhaW5lciAoKQorICAiSW5zZXJ0IGEgY29udGFp bmVyLiIKKyAgKGludGVyYWN0aXZlKQorICAobGV0IChhcmcpCisgICAgKHNldHEgYXJnIChy ZWFkLXN0cmluZyAiUHJvdmlkaW5nIGNvbnRhaW5lciB0aXRsZTogIikpCisgICAgKHJzdC1p bnNlcnQtZGlyZWN0aXZlLXR5cGUgImNvbnRhaW5lciIgYXJnKSkpCisKKyhkZWZ1biByc3Qt aW5zZXJ0LXRhYmxlICgpCisgICJJbnNlcnQgYSB0YWJsZS4iCisgIChpbnRlcmFjdGl2ZSkK KyAgKGxldCAoYXJnKQorICAgIChzZXRxIGFyZyAocmVhZC1zdHJpbmcgIlByb3ZpZGluZyB0 YWJsZSB0aXRsZTogIikpCisgICAgKHJzdC1pbnNlcnQtZGlyZWN0aXZlLXR5cGUgInRhYmxl IiBhcmcpKSkKKworKGRlZnVuIHJzdC1pbnNlcnQtY3N2LXRhYmxlICgpCisgICJJbnNlcnQg YSB0YWJsZS4iCisgIChpbnRlcmFjdGl2ZSkKKyAgKGxldCAoYXJnKQorICAgIChzZXRxIGFy ZyAocmVhZC1zdHJpbmcgIlByb3ZpZGluZyB0YWJsZSB0aXRsZTogIikpCisgICAgKHJzdC1p bnNlcnQtZGlyZWN0aXZlLXR5cGUgImNzdi10YWJsZSIgYXJnKSkpCisKKyhkZWZ2YXIgcnN0 LW9wdGlvbi1jc3YtdGFibGUKKycoKCJ3aWR0aHMiICJzdHJpbmciICIiKQorICAoImhlYWRl ci1yb3dzIiAibnVtYmVyIiAwKQorICAoInN0dWItY29sdW1ucyIgIm51bWJlciIgMCkKKyAg KCJoZWFkZXIiICJzdHJpbmciICIiKQorICAoImZpbGUiICJzdHJpbmciICIiKQorICAoInVy bCIgInN0cmluZyIgIiIpCisgICgiZW5jb2RpbmciICJzdHJpbmciICIiKQorICAoImRlbGlt IiAic3RyaW5nIiAiIikKKyAgKCJxdW90ZSIgInN0cmluZyIgIiIpCisgICgia2VlcHNwYWNl IiAiZmxhZyIgbmlsKQorICAoImVzY2FwZSIgInN0cmluZyIgIiIpKSkKKworKGRlZnVuIHJz dC1pbnNlcnQtbGlzdC10YWJsZSAoKQorICAiSW5zZXJ0IGEgdGFibGUuIgorICAoaW50ZXJh Y3RpdmUpCisgIChsZXQgKGFyZykKKyAgICAoc2V0cSBhcmcgKHJlYWQtc3RyaW5nICJQcm92 aWRpbmcgdGFibGUgdGl0bGU6ICIpKQorICAgIChyc3QtaW5zZXJ0LWRpcmVjdGl2ZS10eXBl ICJsaXN0LXRhYmxlIiBhcmcpKSkKKworKGRlZnZhciByc3Qtb3B0aW9uLWxpc3QtdGFibGUK KycoKCJ3aWR0aHMiICJzdHJpbmciICIiKQorICAoImhlYWRlci1yb3dzIiAibnVtYmVyIiAw KQorICAoInN0dWItY29sdW1ucyIgIm51bWJlciIgMCkpKQorCisoZGVmdW4gcnN0LWluc2Vy dC1jb250ZW50cyAoKQorICAiSW5zZXJ0IGEgY29udGVudHMuIgorICAoaW50ZXJhY3RpdmUp CisgIChsZXQgKGFyZykKKyAgICAoc2V0cSBhcmcgKHJlYWQtc3RyaW5nICJQcm92aWRpbmcg Y29udGVudHMgdGl0bGU6ICIpKQorICAgIChyc3QtaW5zZXJ0LWRpcmVjdGl2ZS10eXBlICJj b250ZW50cyIgYXJnKSkpCisKKyhkZWZ2YXIgcnN0LW9wdGlvbi1jb250ZW50cworJygoImJh Y2tsaW5rcyIgIm9wdGlvbiIgKCJlbnRyeSIgInRvcCIgIm5vbmUiKSkKKyAgKCJkZXB0aCIg Im51bWJlciIgMikKKyAgKCJsb2NhbCIgImZsYWciIG5pbCkpKQorCisoZGVmdW4gcnN0LWlu c2VydC1zZWN0bnVtICgpCisgICJTZXQgc2VjdGlvbi1hdXRvbnVtYmVyaW5nLiIKKyAgKGlu dGVyYWN0aXZlKQorICAocnN0LWluc2VydC1kaXJlY3RpdmUtdHlwZSAic2VjdG51bSIpKQor CisoZGVmdmFyIHJzdC1vcHRpb24tc2VjdG51bQorJygoInByZWZpeCIgInN0cmluZyIgIiIp CisgICgic3VmZml4IiAic3RyaW5nIiAiIikKKyAgKCJkZXB0aCIgIm51bWJlciIgMikKKyAg KCJzdGFydCIgIm51bWJlciIgMSkpKQorCisoZGVmdW4gcnN0LWluc2VydC1yZXBsYWNlICgp CisgICJJbnNlcnQgdGhlIGhlYWQgb2Ygd29yZCByZXBsYWNlLiIKKyAgKGludGVyYWN0aXZl KQorICAobGV0ICh0YWcpCisgICAgKHNldHEgdGFnIChyZWFkLXN0cmluZyAiUHJvdmlkaW5n IHJlcGxhY2VkIHdvcmQ6ICIpKQorICAgIChyc3QtaW5zZXJ0LWRpcmVjdGl2ZS10eXBlIChj b25jYXQgInwiIHRhZyAifCByZXBsYWNlIikpKSkKKworKGRlZnVuIHJzdC1pbnNlcnQtdW5p Y29kZSAoKQorICAiSW5zZXJ0IHVuaWNvZGUgcmVwbGFjZW1lbnQuIgorICAoaW50ZXJhY3Rp dmUpCisgIChsZXQgKHRhZykKKyAgICAoc2V0cSB0YWcgKHJlYWQtc3RyaW5nICJQcm92aWRp bmcgdW5pY29kZSBzdHJpbmc6ICIpKQorICAgIChyc3QtaW5zZXJ0LWRpcmVjdGl2ZS10eXBl IChjb25jYXQgInwiIHRhZyAifCB1bmljb2RlIikpKSkKKworKGRlZnZhciByc3Qtb3B0aW9u LXVuaWNvZGUKKyAgJygoImx0cmltIiAiZmxhZyIgbmlsKQorICAgICgicnRyaW0iICJmbGFn IiBuaWwpCisgICAgKCJ0cmltIiAiZmxhZyIgbmlsKSkpCisKKyhkZWZ1biByc3QtaW5zZXJ0 LWRhdGUgKCkKKyAgIkluc2VydCBkYXRlIG9yIHRpbWUuIgorICAoaW50ZXJhY3RpdmUpCisg IChsZXQgKHR5cGUgdmFsdWUpCisgICAgKHNldHEgdHlwZSAoY29tcGxldGluZy1yZWFkICJJ bnNlcnQgZGF0ZSBvciB0aW1lPyAiICcoImRhdGUiICJ0aW1lIikpKQorICAgIChjb25kCisg ICAgICgoZXF1YWwgdHlwZSAiZGF0ZSIpIAorICAgICAgKHNldHEgdmFsdWUgKHJlYWQtc3Ry aW5nICJQcm92aWRpbmcgZGF0ZSBmb3JtYXQ6ICIgbmlsIG5pbCAiJVktJW0tJWQiKSkpCisg ICAgICgoZXF1YWwgdHlwZSAidGltZSIpIAorICAgICAgKHNldHEgdmFsdWUgKHJlYWQtc3Ry aW5nICJQcm92aWRpbmcgdGltZSBmb3JtYXQ6ICIgbmlsIG5pbCAiJUg6JU0iKSkpKQorICAg IChyc3QtaW5zZXJ0LWRpcmVjdGl2ZS10eXBlIChjb25jYXQgInwiIHR5cGUgInwgZGF0ZSIp IHZhbHVlKSkpCisKKyhkZWZ1biByc3QtaW5zZXJ0LWluY2x1ZGUgKCkKKyAgIkluc2VydCBh biBleHRlcm5hbCBmaWxlLiIKKyAgKGludGVyYWN0aXZlKQorICAobGV0IChhcmcpCisgICAg KHNldHEgYXJnIChyZWFkLXN0cmluZyAiUHJvdmlkaW5nIGZpbGUgcGF0aDogIikpCisgICAg KHJzdC1pbnNlcnQtZGlyZWN0aXZlLXR5cGUgImluY2x1ZGUiIGFyZykpKQorCisoZGVmdmFy IHJzdC1vcHRpb24taW5jbHVkZQorICAnKCgic3RhcnQtYWZ0ZXIiICJzdHJpbmciICIiKQor ICAgICgiZW5kLWJlZm9yZSIgInN0cmluZyIgIiIpCisgICAgKCJlbmNvZGluZyIgInN0cmlu ZyIgIiIpCisgICAgKCJsaXRlcmFsIiAiZmxhZyIgbmlsKSkpCisKKyhkZWZ1biByc3QtaW5z ZXJ0LXJhdyAoKQorICAiSW5zZXJ0IHJhdyBkYXRhLiIKKyAgKGludGVyYWN0aXZlKQorICAo bGV0IChhcmcpCisgICAgKHNldHEgYXJnIChyZWFkLXN0cmluZyAiUHJvdmlkaW5nIHJhdyBk YXRhIHR5cGU6ICIpKQorICAgIChyc3QtaW5zZXJ0LWRpcmVjdGl2ZS10eXBlICJyYXciIGFy ZykpKQorCisoZGVmdmFyIHJzdC1vcHRpb24tcmF3CisgICcoKCJmaWxlIiAic3RyaW5nIiAi IikKKyAgICAoInVybCIgInN0cmluZyIgIiIpCisgICAgKCJlbmNvZGluZyIgInN0cmluZyIg IiIpKSkKKworCis7PT09PSBsaW5rcyA9PT09CisKKzstLS0gbGluayBpbnNlcnRpbmcgLS0t CisKKyhkZWZ2YXIgcnN0LWxpbmstdHlwZS1hbGlzdAorICAnKCgiaHlwZXJsaW5rIiAuIHJz dC1pbnNlcnQtaW5saW5lLWxpbmspIAorICAgICgiZm9vdG5vdGUiIC4gcnN0LWluc2VydC1m b290bm90ZSkgCisgICAgKCJjaXRhdGlvbiIgLiByc3QtaW5zZXJ0LWNpdGF0aW9uKSkKKyAg Ikxpc3Qgb2YgbGluayB0eXBlcy4iKQorCisoZGVmdmFyIHJzdC1saW5rLXR5cGUKKyAgJygi aHlwZXJsaW5rIiAiZm9vdG5vdGUiICJjaXRhdGlvbiIpCisgICJMaXN0IG9mIGxpbmsgdHlw ZXMgZm9yIGNvbXBsZXRpb24iKQorCisoZGVmdW4gcnN0LWluc2VydC1saW5rICgpCisgICJN ZXRhLWZ1bmN0aW9uIG9mIGFsbCBkaXJlY3RpdmVzLiIKKyAgKGludGVyYWN0aXZlKQorICAo bGV0ICh0eXBlKQorICAgIChzZXRxIHR5cGUgKGNvbXBsZXRpbmctcmVhZCAiUHJvdmlkaW5n IGxpbmsgdHlwZTogIiByc3QtbGluay10eXBlKSkKKyAgICAoZnVuY2FsbCAoY2RyIChhc3Nv YyB0eXBlIHJzdC1saW5rLXR5cGUtYWxpc3QpKSkpKQorCisoZGVmdW4gcnN0LWluc2VydC1p bmxpbmUtbGluayAoKQorICAiSW5zZXJ0IGEgaW5saW5lIGxpbmsgd2l0aCBib3RoIHRhcmdl dCBhbmQgcmVmZXJlbmNlLiIKKyAgKGludGVyYWN0aXZlKQorICAobGV0IChsaW5rIHRhcmdl dCByZWZlcmVuY2UpCisgICAgKHNldHEgbGluayAocmVhZC1zdHJpbmcgIlByb3ZpZGluZyBs aW5rIG5hbWU6ICIpKQorICAgIChpZiAoc3RyaW5nLW1hdGNoICIgIiBsaW5rKQorICAgICAg ICAocHJvZ24KKyAgICAgICAgICAoc2V0cSB0YXJnZXQgKGNvbmNhdCAiYCIgbGluayAiYF8i KSkKKyAgICAgICAgICAoc2V0cSByZWZlcmVuY2UgKGNvbmNhdCAiLi4gX2AiIGxpbmsgImA6 ICIpKSkKKyAgICAgIChwcm9nbgorICAgICAgICAoc2V0cSB0YXJnZXQgKGNvbmNhdCBsaW5r ICJfIikpCisgICAgICAgIChzZXRxIHJlZmVyZW5jZSAoY29uY2F0ICIuLiBfIiBsaW5rICI6 ICIpKSkpCisgICAgKHNhdmUtZXhjdXJzaW9uCisgICAgICAoaWYgKGVxdWFsIChjaGFyLWJl Zm9yZSkgKHN0cmluZy10by1jaGFyICIgIikpCisgICAgICAgICAgKGluc2VydCB0YXJnZXQg IiAiKQorICAgICAgICAoaW5zZXJ0IChjb25jYXQgIiAiIHRhcmdldCAiICIpKSkKKyAgICAg IChlbmQtb2YtbGluZSkKKyAgICAgIChpbnNlcnQgKGNvbmNhdCAiXG5cbiIgcmVmZXJlbmNl KSkpKSkKKworKGRlZnVuIHJzdC1pbnNlcnQtZm9vdG5vdGUgKCkKKyAgIkluc2VydCBhIGlu bGluZSBmb290bm90ZSB3aXRoIGJvdGggdGFyZ2V0IGFuZCByZWZlcmVuY2UuIgorICAoaW50 ZXJhY3RpdmUpCisgIChsZXQgKGZvb3Rub3RlIHRhcmdldCByZWZlcmVuY2UpCisgICAgKHNl dHEgZm9vdG5vdGUgKHJlYWQtc3RyaW5nICJQcm92aWRpbmcgZm9vdG5vdGUgbmFtZTogIikp CisgICAgKHNldHEgdGFyZ2V0IChjb25jYXQgIlsjIiBmb290bm90ZSAiXV8iKSkKKyAgICAo c2V0cSByZWZlcmVuY2UgKGNvbmNhdCAiLi4gWyMiIGZvb3Rub3RlICJdICIpKQorICAgIChz YXZlLWV4Y3Vyc2lvbgorICAgICAgKGlmIChlcXVhbCAoY2hhci1iZWZvcmUpIChzdHJpbmct dG8tY2hhciAiICIpKQorICAgICAgICAgIChpbnNlcnQgdGFyZ2V0ICIgIikKKyAgICAgICAg KGluc2VydCAoY29uY2F0ICIgIiB0YXJnZXQgIiAiKSkpCisgICAgICAoZW5kLW9mLWxpbmUp CisgICAgICAoaW5zZXJ0IChjb25jYXQgIlxuXG4iIHJlZmVyZW5jZSkpKSkpCisKKyhkZWZ1 biByc3QtaW5zZXJ0LWNpdGF0aW9uICgpCisgICJJbnNlcnQgYSBpbmxpbmUgY2l0YXRpb24g d2l0aCBib3RoIHRhcmdldCBhbmQgcmVmZXJlbmNlLiIKKyAgKGludGVyYWN0aXZlKQorICAo bGV0IChjaXRhdGlvbiB0YXJnZXQgcmVmZXJlbmNlKQorICAgIChzZXRxIGNpdGF0aW9uIChy ZWFkLXN0cmluZyAiUHJvdmlkaW5nIGNpdGF0aW9uIG5hbWU6ICIpKQorICAgIChzZXRxIHRh cmdldCAoY29uY2F0ICJbIiBjaXRhdGlvbiAiXV8iKSkKKyAgICAoc2V0cSByZWZlcmVuY2Ug KGNvbmNhdCAiLi4gWyIgY2l0YXRpb24gIl0gIikpCisgICAgKHNhdmUtZXhjdXJzaW9uCisg ICAgICAoaWYgKGVxdWFsIChjaGFyLWJlZm9yZSkgKHN0cmluZy10by1jaGFyICIgIikpCisg ICAgICAgICAgKGluc2VydCB0YXJnZXQgIiAiKQorICAgICAgICAoaW5zZXJ0IChjb25jYXQg IiAiIHRhcmdldCAiICIpKSkKKyAgICAgIChlbmQtb2YtbGluZSkKKyAgICAgIChpbnNlcnQg KGNvbmNhdCAiXG5cbiIgcmVmZXJlbmNlKSkpKSkKKworOy0tLSBsaW5rIGp1bXBpbmcgLS0t CisKKyhkZWZ1biByc3QtaHlwZXItbGluay1yZWZlcmVuY2UtbWF0Y2ggKCkKKyAgIk1hdGNo IGxpbmsgdGFyZ2V0IGFyb3VuZCB0aGUgcG9pbnQuIgorICAobGV0IChsaW5rIHJlZmVyZW5j ZSB0YXJnZXQpCisgICAgKHNhdmUtZXhjdXJzaW9uCisgICAgICAoaWYgKHNlYXJjaC1mb3J3 YXJkICJfIiAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKHNhdmUtZXhjdXJzaW9uIAor ICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmb3J3YXJkLXNlbnRlbmNlKSAKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAocG9pbnQpKSAKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgdCAxKQorICAgICAgICAgIChwcm9nbgorICAgICAgICAgICAgKGJhY2t3YXJkLWNo YXIpCisgICAgICAgICAgICAodW5sZXNzIChlcXVhbCAoY2hhci1iZWZvcmUpID9cXCkKKyAg ICAgICAgICAgICAgKGlmIChlcXVhbCAoY2hhci1iZWZvcmUpID9gKQorICAgICAgICAgICAg ICAgICAgKHByb2duCisgICAgICAgICAgICAgICAgICAgIChmb3J3YXJkLWNoYXIpCisgICAg ICAgICAgICAgICAgICAgIChyZS1zZWFyY2gtYmFja3dhcmQgImBbWzphbG51bTpdWzpwdW5j dDpdWzpzcGFjZTpdXStgXyIgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgKHNhdmUtZXhjdXJzaW9uIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgKHNlYXJjaC1iYWNrd2FyZCAiYCIgbmlsIHQgMikgCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAocG9pbnQpKSAKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0KQorICAgICAgICAgICAgICAgICAgICAo c2V0cSByZWZlcmVuY2UgKG1hdGNoLXN0cmluZyAwKSkKKyAgICAgICAgICAgICAgICAgICAg KHNldHEgbGluayAoc3Vic3RyaW5nIHJlZmVyZW5jZSAwIC0xKSkpCisgICAgICAgICAgICAg ICAgKHByb2duCisgICAgICAgICAgICAgICAgICAoZm9yd2FyZC1jaGFyKQorICAgICAgICAg ICAgICAgICAgKHJlLXNlYXJjaC1iYWNrd2FyZCAiIFxcc3crXyIgCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIChzYXZlLWV4Y3Vyc2lvbiAKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc2VhcmNoLWJhY2t3YXJkICIgIikgCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHBvaW50KSkgCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHQpCisgICAgICAgICAgICAgICAg ICAoc2V0cSByZWZlcmVuY2UgKG1hdGNoLXN0cmluZyAwKSkKKyAgICAgICAgICAgICAgICAg IChzZXRxIGxpbmsgKHN1YnN0cmluZyByZWZlcmVuY2UgMSAtMSkpKSkpCisgICAgICAgICAg ICAoc2V0cSB0YXJnZXQgKGNvbmNhdCAiLi4gXyIgbGluayAiOiIpKSkpKQorICAgIChsaXN0 IHJlZmVyZW5jZSB0YXJnZXQpKSkKKworKGRlZnVuIHJzdC1saW5rLWp1bXAtdG8tdGFyZ2V0 ICgpCisgICJKdW1wIGZyb20gaW50ZXJ0ZXh0IGxpbmsgcmVmZXJlbmNlIHRvIGxpbmsgdGFy Z2V0LiIKKyAgKGludGVyYWN0aXZlKQorICAobGV0ICgodGFyZ2V0IChlbHQgKHJzdC1oeXBl ci1saW5rLXJlZmVyZW5jZS1tYXRjaCkgMSkpKQorICAgICh3aGVuIChzYXZlLWV4Y3Vyc2lv bgorICAgICAgICAgICAgKGdvdG8tY2hhciAocG9pbnQtbWluKSkKKyAgICAgICAgICAgIChz ZWFyY2gtZm9yd2FyZCB0YXJnZXQpKQorICAgICAgKGdvdG8tY2hhciAocG9pbnQtbWluKSkK KyAgICAgIChzZWFyY2gtZm9yd2FyZCB0YXJnZXQpKSkpCisKKyhkZWZ1biByc3QtbGluay1q dW1wLXdpdGhpbi1yZWZlcmVuY2VzICgpCisgICJKdW1wIHdpdGhpbiByZWZlcmVuY2VzIG9m IGFuIGludGVydGV4dCBsaW5rLCBpZiBleGlzdC4iCisgIChpbnRlcmFjdGl2ZSkKKyAgKGxl dCAoKHJlZmVyZW5jZSAoZWx0IChyc3QtaHlwZXItbGluay1yZWZlcmVuY2UtbWF0Y2gpIDAp KSkKKyAgICAoaWYgKHNhdmUtZXhjdXJzaW9uCisgICAgICAgICAgKHNlYXJjaC1mb3J3YXJk IHJlZmVyZW5jZSBuaWwgdCAxKSkKKyAgICAgICAgKHByb2duCisgICAgICAgICAgKHNlYXJj aC1mb3J3YXJkIHJlZmVyZW5jZSBuaWwgdCAxKQorICAgICAgICAgIChiYWNrd2FyZC1jaGFy IDEpKQorICAgICAgKHdoZW4gKHktb3Itbi1wICJObyBsaW5rIHJlZmVyZW5jZSBiZWhpbmQu IFNlYXJjaCBmcm9tIHRoZSBiZWdpbm5pbmc/IikKKyAgICAgICAgKGdvdG8tY2hhciAocG9p bnQtbWluKSkKKyAgICAgICAgKHNlYXJjaC1mb3J3YXJkIHJlZmVyZW5jZSBuaWwgdCAxKQor ICAgICAgICAoYmFja3dhcmQtY2hhciAxKSkpKSkKKworKGRlZnVuIHJzdC1oeXBlci1saW5r LXRhcmdldC1tYXRjaCAoKQorICAiTWF0Y2ggbGluayByZWZlcmVuY2UgYXQgdGhlIHRhcmdl dCBsaW5lLiIKKyAgKGxldCAobGluayByZWZlcmVuY2UgdGFyZ2V0KQorICAgIChzYXZlLWV4 Y3Vyc2lvbgorICAgICAgKHdoZW4gKHNlYXJjaC1iYWNrd2FyZCAiLi4gXyIgKGxpbmUtYmVn aW5uaW5nLXBvc2l0aW9uKSB0IDEpCisgICAgICAgIChyZS1zZWFyY2gtZm9yd2FyZCAKKyAg ICAgICAgICJeXFwuXFwuIF9gP1tbOmFsbnVtOl1bOnB1bmN0Ol1bOnNwYWNlOl1dK2A/OiAi IAorICAgICAgICAgKGxpbmUtZW5kLXBvc2l0aW9uKSB0IDEpCisgICAgICAgIChzZXRxIHRh cmdldCAobWF0Y2gtc3RyaW5nIDApKSkpCisgICAgKHNldHEgbGluayAoc3Vic3RyaW5nIHRh cmdldCA0IC0yKSkKKyAgICAoaWYgKGVxdWFsIChzdWJzdHJpbmcgbGluayAwIDEpICJgIikK KyAgICAgICAgKHNldHEgcmVmZXJlbmNlIChjb25jYXQgbGluayAiXyIpKQorICAgICAgKHNl dHEgcmVmZXJlbmNlIChjb25jYXQgIiAiIGxpbmsgIl8iKSkpCisgICAgKGxpc3QgcmVmZXJl bmNlIHRhcmdldCkpKQorCisoZGVmdW4gcnN0LWxpbmstanVtcC10by1yZWZlcmVuY2UgKCkK KyAgIkp1bXAgZnJvbSBpbnRlcnRleHQgbGluayB0YXJnZXQgdG8gbGluayByZWZlcmVuY2Uu IgorICAoaW50ZXJhY3RpdmUpCisgIChsZXQgKChyZWZlcmVuY2UgKGVsdCAocnN0LWh5cGVy LWxpbmstdGFyZ2V0LW1hdGNoKSAwKSkpCisgICAgKHdoZW4gKHNhdmUtZXhjdXJzaW9uCisg ICAgICAgICAgICAoZ290by1jaGFyIChwb2ludC1tYXgpKQorICAgICAgICAgICAgKHNlYXJj aC1iYWNrd2FyZCByZWZlcmVuY2UpKQorICAgICAgKGdvdG8tY2hhciAocG9pbnQtbWF4KSkK KyAgICAgIChzZWFyY2gtYmFja3dhcmQgcmVmZXJlbmNlKSkpKQorCis7LS0tIGZvb3Rub3Rl IGFuZCBjaXRhdGlvbiAtLS0KKworKGRlZnVuIHJzdC1mb290bm90ZS1jaXRhdGlvbi1yZWZl cmVuY2UtbWF0Y2ggKCkKKyAgIk1hdGNoIGZvb3Rub3RlIG9yIGNpdGF0aW9uIHJlZmVyZW5j ZSBhcm91bmQgdGhlIHBvaW50LiIKKyAgKGxldCAobGluayByZWZlcmVuY2UgdGFyZ2V0KQor ICAgIChzYXZlLWV4Y3Vyc2lvbgorICAgICAgKHdoZW4gKHNlYXJjaC1mb3J3YXJkICJdXyIg CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHNhdmUtZXhjdXJzaW9uIAorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgKGZvcndhcmQtc2VudGVuY2UpIAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgKHBvaW50KSkgCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgdCAxKQorICAgICAgICAocmUtc2VhcmNoLWJhY2t3YXJkICJcXFtbWzphbG51bTpd WzpwdW5jdDpdWzpzcGFjZTpdXStcXF1fIiAKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAoc2F2ZS1leGN1cnNpb24gCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc2Vh cmNoLWJhY2t3YXJkICJbIiBuaWwgdCAxKSAKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIChwb2ludCkpIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgIHQpCisgICAgICAg IChzZXRxIHJlZmVyZW5jZSAobWF0Y2gtc3RyaW5nIDApKSkpCisgICAgKHNldHEgbGluayAo c3Vic3RyaW5nIHJlZmVyZW5jZSAxIC0yKSkKKyAgICAoc2V0cSB0YXJnZXQgKGNvbmNhdCAi Li4gWyIgbGluayAiXSIpKQorICAgIChsaXN0IHJlZmVyZW5jZSB0YXJnZXQpKSkKKworKGRl ZnVuIHJzdC1mb290bm90ZS1jaXRhdGlvbi10YXJnZXQtbWF0Y2ggKCkKKyAgIk1hdGNoIGZv b3Rub3RlIG9yIGNpdGF0aW9uIHJlZmVyZW5jZSBhdCB0aGUgdGFyZ2V0IGxpbmUuIgorICAo bGV0IChsaW5rIHJlZmVyZW5jZSB0YXJnZXQpCisgICAgKHNhdmUtZXhjdXJzaW9uCisgICAg ICAod2hlbiAoc2VhcmNoLWJhY2t3YXJkICIuLiBbIiAobGluZS1iZWdpbm5pbmctcG9zaXRp b24pIHQgMSkKKyAgICAgICAgKHJlLXNlYXJjaC1mb3J3YXJkIAorICAgICAgICAgIl5cXC5c XC4gXFxbW1s6YWxudW06XVs6cHVuY3Q6XVs6c3BhY2U6XV0rXFxdICIgCisgICAgICAgICAo bGluZS1lbmQtcG9zaXRpb24pIHQgMSkKKyAgICAgICAgKHNldHEgdGFyZ2V0IChtYXRjaC1z dHJpbmcgMCkpKSkKKyAgICAoc2V0cSBsaW5rIChzdWJzdHJpbmcgdGFyZ2V0IDQgLTIpKQor ICAgIChzZXRxIHJlZmVyZW5jZSAoY29uY2F0ICIgWyIgbGluayAiXV8iKSkKKyAgICAobGlz dCByZWZlcmVuY2UgdGFyZ2V0KSkpCisKKyhkZWZ1biByc3QtZm9vdG5vdGUtY2l0YXRpb24t anVtcC10by10YXJnZXQgKCkKKyAgIkp1bXAgZnJvbSBmb290bm90ZSBvciBjaXRhdGlvbiBy ZWZlcmVuY2UgdG8gdGFyZ2V0LiIKKyAgKGludGVyYWN0aXZlKQorICAobGV0ICgodGFyZ2V0 IChlbHQgKHJzdC1mb290bm90ZS1jaXRhdGlvbi1yZWZlcmVuY2UtbWF0Y2gpIDEpKSkKKyAg ICAod2hlbiAoc2F2ZS1leGN1cnNpb24KKyAgICAgICAgICAgIChnb3RvLWNoYXIgKHBvaW50 LW1pbikpCisgICAgICAgICAgICAoc2VhcmNoLWZvcndhcmQgdGFyZ2V0KSkKKyAgICAgIChn b3RvLWNoYXIgKHBvaW50LW1pbikpCisgICAgICAoc2VhcmNoLWZvcndhcmQgdGFyZ2V0KSkp KQorCisoZGVmdW4gcnN0LWZvb3Rub3RlLWNpdGF0aW9uLWp1bXAtd2l0aGluLXJlZmVyZW5j ZXMgKCkKKyAgIkp1bXAgd2l0aGluIHJlZmVyZW5jZXMgb2YgYW4gZm9vdG5vdGUgb3IgY2l0 YXRpb24sIGlmIGV4aXN0LiIKKyAgKGludGVyYWN0aXZlKQorICAobGV0ICgocmVmZXJlbmNl IChlbHQgKHJzdC1mb290bm90ZS1jaXRhdGlvbi1yZWZlcmVuY2UtbWF0Y2gpIDApKSkKKyAg ICAoaWYgKHNhdmUtZXhjdXJzaW9uCisgICAgICAgICAgKHNlYXJjaC1mb3J3YXJkIHJlZmVy ZW5jZSBuaWwgdCAxKSkKKyAgICAgICAgKHByb2duCisgICAgICAgICAgKHNlYXJjaC1mb3J3 YXJkIHJlZmVyZW5jZSBuaWwgdCAxKQorICAgICAgICAgIChiYWNrd2FyZC1jaGFyIDEpKQor ICAgICAgKHdoZW4gKHktb3Itbi1wICJObyBsaW5rIHJlZmVyZW5jZSBiZWhpbmQuIFNlYXJj aCBmcm9tIHRoZSBiZWdpbm5pbmc/IikKKyAgICAgICAgKGdvdG8tY2hhciAocG9pbnQtbWlu KSkKKyAgICAgICAgKHNlYXJjaC1mb3J3YXJkIHJlZmVyZW5jZSBuaWwgdCAxKQorICAgICAg ICAoYmFja3dhcmQtY2hhciAyKSkpKSkKKworKGRlZnVuIHJzdC1mb290bm90ZS1jaXRhdGlv bi1qdW1wLXRvLXJlZmVyZW5jZSAoKQorICAiSnVtcCBmcm9tIGZvb3Rub3RlIG9yIGNpdGF0 aW9uIHRhcmdldCB0byByZWZlcmVuY2UuIgorICAoaW50ZXJhY3RpdmUpCisgIChsZXQgKChy ZWZlcmVuY2UgKGVsdCAocnN0LWZvb3Rub3RlLWNpdGF0aW9uLXRhcmdldC1tYXRjaCkgMCkp KQorICAgICh3aGVuIChzYXZlLWV4Y3Vyc2lvbgorICAgICAgICAgICAgKGdvdG8tY2hhciAo cG9pbnQtbWF4KSkKKyAgICAgICAgICAgIChzZWFyY2gtYmFja3dhcmQgcmVmZXJlbmNlKSkK KyAgICAgIChnb3RvLWNoYXIgKHBvaW50LW1heCkpCisgICAgICAoc2VhcmNoLWJhY2t3YXJk IHJlZmVyZW5jZSkpKSkKIAogCiAMCg== --------------000305050102030107060209--