From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [PATCH i-g-t 2/7] trace.pl: Improve readability of graphical timeline representation Date: Tue, 8 May 2018 18:31:10 +0100 Message-ID: <20180508173115.24550-2-tvrtko.ursulin@linux.intel.com> References: <20180508173115.24550-1-tvrtko.ursulin@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wr0-x241.google.com (mail-wr0-x241.google.com [IPv6:2a00:1450:400c:c0c::241]) by gabe.freedesktop.org (Postfix) with ESMTPS id CBF8C6E6FD for ; Tue, 8 May 2018 17:31:42 +0000 (UTC) Received: by mail-wr0-x241.google.com with SMTP id a12-v6so2245302wrn.13 for ; Tue, 08 May 2018 10:31:42 -0700 (PDT) In-Reply-To: <20180508173115.24550-1-tvrtko.ursulin@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: igt-dev@lists.freedesktop.org Cc: Intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCldlIGFkZCBz dHJpcGVzIGZvciBkaWZmZXJlbnQgc3RhZ2VzIG9mIHJlcXVlc3QgZXhlY3V0aW9uIHNvIGl0IGlz IGVhc2llcgp0byBmb2xsb3cgb25lIGNvbnRleHQgaW4gdGhlIG11bHRpLWNvbG91ciBtb2RlLgoK VmVydGljYWwgc3RyaXBlIHBhdHRlcm4gaW5kaWNhdGVzIHBpcGVsaW5lICJibG9ja2FnZXMiIC0g cmVxdWVzdHMgd2FpdGluZwpmb3IgZGVwZW5kZW5jaWVzIGJlZm9yZSB0aGV5IGFyZSBydW5uYWJs ZS4KCkRpYWdvbmFsIHN0cmlwZXMgaW5kaWNhdGUgcnVubmFibGUgcmVxdWVzdHMgd2FpdGluZyBm b3IgR1BVIHRpbWUuCgpIb3Jpem9udGFsIHN0cmlwcyBhcmUgcmVxdWVzdHMgZXhlY3V0aW5nIG9u IHRoZSBHUFUuCgpTaWduZWQtb2ZmLWJ5OiBUdnJ0a28gVXJzdWxpbiA8dHZydGtvLnVyc3VsaW5A aW50ZWwuY29tPgotLS0KIHNjcmlwdHMvbWVkaWEtYmVuY2gucGwgfCAgMiArLQogc2NyaXB0cy90 cmFjZS5wbCAgICAgICB8IDI5ICsrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tCiAyIGZpbGVz IGNoYW5nZWQsIDIwIGluc2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L3NjcmlwdHMvbWVkaWEtYmVuY2gucGwgYi9zY3JpcHRzL21lZGlhLWJlbmNoLnBsCmluZGV4IDc4 ZjQ1MTk5ZTk1ZC4uYzA3NTU1YjBkYzc0IDEwMDc1NQotLS0gYS9zY3JpcHRzL21lZGlhLWJlbmNo LnBsCisrKyBiL3NjcmlwdHMvbWVkaWEtYmVuY2gucGwKQEAgLTIwNyw3ICsyMDcsNyBAQCBzdWIg dHJhY2Vfd29ya2xvYWQKIAlzaG93X2NtZCgkY21kKTsKIAlzeXN0ZW0oJGNtZCk7CiAKLQkkY21k ID0gInBlcmYgc2NyaXB0IHwgJHRyYWNlcGwgLS1odG1sIC14IGN0eHNhdmUgLXMgLS1zcXVhc2gt Y3R4LWlkICI7CisJJGNtZCA9ICJwZXJmIHNjcmlwdCB8ICR0cmFjZXBsIC0taHRtbCAteCBjdHhz YXZlIC1zIC1jIC0tc3F1YXNoLWN0eC1pZCAiOwogCSRjbWQgLj0gam9pbiAnICcsIG1hcCgiLWkg JF8iLCBAc2tpcF9lbmdpbmUpOwogCSRjbWQgLj0gIiA+ICR7ZmlsZX0uaHRtbCI7CiAJc2hvd19j bWQoJGNtZCk7CmRpZmYgLS1naXQgYS9zY3JpcHRzL3RyYWNlLnBsIGIvc2NyaXB0cy90cmFjZS5w bAppbmRleCBjODE4MmE4ZWE4NmQuLjdmMTgxYTNmYTJmNSAxMDA3NTUKLS0tIGEvc2NyaXB0cy90 cmFjZS5wbAorKysgYi9zY3JpcHRzL3RyYWNlLnBsCkBAIC03NDMsOSArNzQzLDkgQEAgZm9yZWFj aCBteSAka2V5IChrZXlzICVyZXF3YWl0KSB7CiBzYXkgc3ByaW50ZignR1BVOiAlLjJmJSUgaWRs ZSwgJS4yZiUlIGJ1c3knLAogCSAgICAgJGZsYXRfYnVzeXsnZ3B1LWlkbGUnfSwgJGZsYXRfYnVz eXsnZ3B1LWJ1c3knfSkgdW5sZXNzICRodG1sOwogCi1teSAkcXVldWVkX2NvbG91ciA9ICRjb2xv dXJfY29udGV4dHMgPyAnbXVsdGktY29sb3VyIGxpZ2h0JyA6ICdibHVlJzsKLW15ICRydW5uYWJs ZV9jb2xvdXIgPSAkY29sb3VyX2NvbnRleHRzID8gJ211bHRpLWNvbG91ciBkYXJrJyA6ICdncmV5 JzsKLW15ICRleGVjdXRlX2NvbG91ciA9ICRjb2xvdXJfY29udGV4dHMgPyAnbXVsdGktY29sb3Vy JyA6ICdwaW5rJzsKK215ICRxdWV1ZWRfY29sb3VyID0gJGNvbG91cl9jb250ZXh0cyA/ICdtdWx0 aS1jb2xvdXIgbGlnaHQsIHZlcnRpY2FsIHN0cmlwZXMnIDogJ2JsdWUnOworbXkgJHJ1bm5hYmxl X2NvbG91ciA9ICRjb2xvdXJfY29udGV4dHMgPyAnbXVsdGktY29sb3VyIGRhcmssIGFuZ2xlZCBz dHJpcGVzJyA6ICdncmV5JzsKK215ICRleGVjdXRlX2NvbG91ciA9ICRjb2xvdXJfY29udGV4dHMg PyAnbXVsdGktY29sb3VyLCBob3Jpem9udGFsIHN0cmlwZXMnIDogJ3BpbmsnOwogCiBwcmludCA8 PEVOREhUTUwgaWYgJGh0bWw7CiA8IURPQ1RZUEUgSFRNTD4KQEAgLTg5Niw3ICs4OTYsMTkgQEAg c3ViIGN0eF9jb2xvdXIKIAogCSR2YWwgPSBpbnQoMzYwIC8gKCRtYXhfY3R4IC0gJG1pbl9jdHgg KyAxKSkgKiAoJGN0eCAtICRtaW5fY3R4KTsKIAotCXJldHVybiAiaHNsKCR2YWwsICRzJSwgJGwl KTsiOworCXJldHVybiAiaHNsKCR2YWwsICRzJSwgJGwlKSI7Cit9CisKK3N1YiBib3hfc3R5bGUK K3sKKwlteSAoJGN0eCwgJGRlZywgJHMsICRsKSA9IEBfOworCisJcmV0dXJuICdjb2xvcjogYmxh Y2s7IGJhY2tncm91bmQ6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoJyAuCisJCSRkZWcgLiAn ZGVnLCAnIC4KKwkJY3R4X2NvbG91cigkY3R4LCAkcywgJGwpIC4gJywgJyAuCisJCWN0eF9jb2xv dXIoJGN0eCwgJHMsICRsKSAuICcgMTBweCwgJyAuCisJCWN0eF9jb2xvdXIoJGN0eCwgJHMsIGlu dCgkbCAqIDAuOTApKSAuICcgMTBweCwgJyAuCisJCWN0eF9jb2xvdXIoJGN0eCwgJHMsIGludCgk bCAqIDAuOTApKSAuICcgMjBweCk7JzsKIH0KIAogbXkgJGkgPSAwOwpAQCAtOTEzLDggKzkyNSw3 IEBAIGZvcmVhY2ggbXkgJGtleSAoc29ydCBzb3J0UXVldWUga2V5cyAlZGIpIHsKIAkjIHN1Ym1p dCB0byBleGVjdXRlCiAJdW5sZXNzIChleGlzdHMgJHNraXBfYm94eydxdWV1ZSd9KSB7CiAJCSRz a2V5ID0gMiAqICRtYXhfc2Vxbm8gKiAkY3R4ICsgMiAqICRzZXFubzsKLQkJJHN0eWxlID0gJ2Nv bG9yOiBibGFjazsgYmFja2dyb3VuZC1jb2xvcjogJyAuCi0JCQkgY3R4X2NvbG91cigkY3R4LCAz NSwgODUpOworCQkkc3R5bGUgPSBib3hfc3R5bGUoJGN0eCwgOTAsIDM1LCA4NSk7CiAJCSRjb250 ZW50ID0gIiRuYW1lPGJyPiRkYnska2V5fS0+eydzdWJtaXQtZGVsYXknfXVzIDxzbWFsbD4oJGRi eyRrZXl9LT57J2V4ZWN1dGUtZGVsYXknfXVzKTwvc21hbGw+IjsKIAkJJHN0YXJ0ZW5kID0gJ3N0 YXJ0OiBcJycgLiB0cygkcXVldWUpIC4gJ1wnLCBlbmQ6IFwnJyAuIHRzKCRzdWJtaXQpIC4gJ1wn JzsKIAkJcHJpbnQgIlx0e2lkOiAkaSwga2V5OiAkc2tleSwgJHR5cGUgZ3JvdXA6ICRncm91cCwg c3ViZ3JvdXA6IDEsIHN1Ymdyb3VwT3JkZXI6IDEsIGNvbnRlbnQ6ICckY29udGVudCcsICRzdGFy dGVuZCwgc3R5bGU6IFwnJHN0eWxlXCd9LFxuIjsKQEAgLTkyNCw4ICs5MzUsNyBAQCBmb3JlYWNo IG15ICRrZXkgKHNvcnQgc29ydFF1ZXVlIGtleXMgJWRiKSB7CiAJIyBleGVjdXRlIHRvIHN0YXJ0 CiAJdW5sZXNzIChleGlzdHMgJHNraXBfYm94eydyZWFkeSd9KSB7CiAJCSRza2V5ID0gMiAqICRt YXhfc2Vxbm8gKiAkY3R4ICsgMiAqICRzZXFubyArIDE7Ci0JCSRzdHlsZSA9ICdjb2xvcjogYmxh Y2s7IGJhY2tncm91bmQtY29sb3I6ICcgLgotCQkJIGN0eF9jb2xvdXIoJGN0eCwgMzUsIDQ1KTsK KwkJJHN0eWxlID0gYm94X3N0eWxlKCRjdHgsIDQ1LCAzNSwgNDUpOwogCQkkY29udGVudCA9ICI8 c21hbGw+JG5hbWU8YnI+JGRieyRrZXl9LT57J2V4ZWN1dGUtZGVsYXknfXVzPC9zbWFsbD4iOwog CQkkc3RhcnRlbmQgPSAnc3RhcnQ6IFwnJyAuIHRzKCRzdWJtaXQpIC4gJ1wnLCBlbmQ6IFwnJyAu IHRzKCRzdGFydCkgLiAnXCcnOwogCQlwcmludCAiXHR7aWQ6ICRpLCBrZXk6ICRza2V5LCAkdHlw ZSBncm91cDogJGdyb3VwLCBzdWJncm91cDogMSwgc3ViZ3JvdXBPcmRlcjogMiwgY29udGVudDog JyRjb250ZW50JywgJHN0YXJ0ZW5kLCBzdHlsZTogXCckc3R5bGVcJ30sXG4iOwpAQCAtOTM4LDgg Kzk0OCw3IEBAIGZvcmVhY2ggbXkgJGtleSAoc29ydCBzb3J0UXVldWUga2V5cyAlZGIpIHsKIAkJ aWYgKGV4aXN0cyAkZGJ7JGtleX0tPnsnaW5jb21wbGV0ZSd9KSB7CiAJCQkkc3R5bGUgPSAnY29s b3I6IHdoaXRlOyBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7JzsKIAkJfSBlbHNlIHsKLQkJCSRzdHls ZSA9ICdjb2xvcjogYmxhY2s7IGJhY2tncm91bmQtY29sb3I6ICcgLgotCQkJCSAgY3R4X2NvbG91 cigkY3R4LCA4MCwgNjUpOworCQkJJHN0eWxlID0gYm94X3N0eWxlKCRjdHgsIDAsIDgwLCA2NSk7 CiAJCX0KIAkJJGNvbnRlbnQgPSAiJG5hbWUgPHNtYWxsPiRkYnska2V5fS0+eydwb3J0J308L3Nt YWxsPiI7CiAJCSRjb250ZW50IC49ICcgPHNtYWxsPjxpPj8/PzwvaT48L3NtYWxsPiAnIGlmIGV4 aXN0cyAkZGJ7JGtleX0tPnsnaW5jb21wbGV0ZSd9OwotLSAKMi4xNC4xCgpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0 CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3Rv cC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wr0-x244.google.com (mail-wr0-x244.google.com [IPv6:2a00:1450:400c:c0c::244]) by gabe.freedesktop.org (Postfix) with ESMTPS id 11CB06EAFC for ; Tue, 8 May 2018 17:31:42 +0000 (UTC) Received: by mail-wr0-x244.google.com with SMTP id v5-v6so33129414wrf.9 for ; Tue, 08 May 2018 10:31:42 -0700 (PDT) From: Tvrtko Ursulin Date: Tue, 8 May 2018 18:31:10 +0100 Message-Id: <20180508173115.24550-2-tvrtko.ursulin@linux.intel.com> In-Reply-To: <20180508173115.24550-1-tvrtko.ursulin@linux.intel.com> References: <20180508173115.24550-1-tvrtko.ursulin@linux.intel.com> Subject: [igt-dev] [PATCH i-g-t 2/7] trace.pl: Improve readability of graphical timeline representation List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: igt-dev@lists.freedesktop.org Cc: Intel-gfx@lists.freedesktop.org, Tvrtko Ursulin List-ID: RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCldlIGFkZCBz dHJpcGVzIGZvciBkaWZmZXJlbnQgc3RhZ2VzIG9mIHJlcXVlc3QgZXhlY3V0aW9uIHNvIGl0IGlz IGVhc2llcgp0byBmb2xsb3cgb25lIGNvbnRleHQgaW4gdGhlIG11bHRpLWNvbG91ciBtb2RlLgoK VmVydGljYWwgc3RyaXBlIHBhdHRlcm4gaW5kaWNhdGVzIHBpcGVsaW5lICJibG9ja2FnZXMiIC0g cmVxdWVzdHMgd2FpdGluZwpmb3IgZGVwZW5kZW5jaWVzIGJlZm9yZSB0aGV5IGFyZSBydW5uYWJs ZS4KCkRpYWdvbmFsIHN0cmlwZXMgaW5kaWNhdGUgcnVubmFibGUgcmVxdWVzdHMgd2FpdGluZyBm b3IgR1BVIHRpbWUuCgpIb3Jpem9udGFsIHN0cmlwcyBhcmUgcmVxdWVzdHMgZXhlY3V0aW5nIG9u IHRoZSBHUFUuCgpTaWduZWQtb2ZmLWJ5OiBUdnJ0a28gVXJzdWxpbiA8dHZydGtvLnVyc3VsaW5A aW50ZWwuY29tPgotLS0KIHNjcmlwdHMvbWVkaWEtYmVuY2gucGwgfCAgMiArLQogc2NyaXB0cy90 cmFjZS5wbCAgICAgICB8IDI5ICsrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tCiAyIGZpbGVz IGNoYW5nZWQsIDIwIGluc2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L3NjcmlwdHMvbWVkaWEtYmVuY2gucGwgYi9zY3JpcHRzL21lZGlhLWJlbmNoLnBsCmluZGV4IDc4 ZjQ1MTk5ZTk1ZC4uYzA3NTU1YjBkYzc0IDEwMDc1NQotLS0gYS9zY3JpcHRzL21lZGlhLWJlbmNo LnBsCisrKyBiL3NjcmlwdHMvbWVkaWEtYmVuY2gucGwKQEAgLTIwNyw3ICsyMDcsNyBAQCBzdWIg dHJhY2Vfd29ya2xvYWQKIAlzaG93X2NtZCgkY21kKTsKIAlzeXN0ZW0oJGNtZCk7CiAKLQkkY21k ID0gInBlcmYgc2NyaXB0IHwgJHRyYWNlcGwgLS1odG1sIC14IGN0eHNhdmUgLXMgLS1zcXVhc2gt Y3R4LWlkICI7CisJJGNtZCA9ICJwZXJmIHNjcmlwdCB8ICR0cmFjZXBsIC0taHRtbCAteCBjdHhz YXZlIC1zIC1jIC0tc3F1YXNoLWN0eC1pZCAiOwogCSRjbWQgLj0gam9pbiAnICcsIG1hcCgiLWkg JF8iLCBAc2tpcF9lbmdpbmUpOwogCSRjbWQgLj0gIiA+ICR7ZmlsZX0uaHRtbCI7CiAJc2hvd19j bWQoJGNtZCk7CmRpZmYgLS1naXQgYS9zY3JpcHRzL3RyYWNlLnBsIGIvc2NyaXB0cy90cmFjZS5w bAppbmRleCBjODE4MmE4ZWE4NmQuLjdmMTgxYTNmYTJmNSAxMDA3NTUKLS0tIGEvc2NyaXB0cy90 cmFjZS5wbAorKysgYi9zY3JpcHRzL3RyYWNlLnBsCkBAIC03NDMsOSArNzQzLDkgQEAgZm9yZWFj aCBteSAka2V5IChrZXlzICVyZXF3YWl0KSB7CiBzYXkgc3ByaW50ZignR1BVOiAlLjJmJSUgaWRs ZSwgJS4yZiUlIGJ1c3knLAogCSAgICAgJGZsYXRfYnVzeXsnZ3B1LWlkbGUnfSwgJGZsYXRfYnVz eXsnZ3B1LWJ1c3knfSkgdW5sZXNzICRodG1sOwogCi1teSAkcXVldWVkX2NvbG91ciA9ICRjb2xv dXJfY29udGV4dHMgPyAnbXVsdGktY29sb3VyIGxpZ2h0JyA6ICdibHVlJzsKLW15ICRydW5uYWJs ZV9jb2xvdXIgPSAkY29sb3VyX2NvbnRleHRzID8gJ211bHRpLWNvbG91ciBkYXJrJyA6ICdncmV5 JzsKLW15ICRleGVjdXRlX2NvbG91ciA9ICRjb2xvdXJfY29udGV4dHMgPyAnbXVsdGktY29sb3Vy JyA6ICdwaW5rJzsKK215ICRxdWV1ZWRfY29sb3VyID0gJGNvbG91cl9jb250ZXh0cyA/ICdtdWx0 aS1jb2xvdXIgbGlnaHQsIHZlcnRpY2FsIHN0cmlwZXMnIDogJ2JsdWUnOworbXkgJHJ1bm5hYmxl X2NvbG91ciA9ICRjb2xvdXJfY29udGV4dHMgPyAnbXVsdGktY29sb3VyIGRhcmssIGFuZ2xlZCBz dHJpcGVzJyA6ICdncmV5JzsKK215ICRleGVjdXRlX2NvbG91ciA9ICRjb2xvdXJfY29udGV4dHMg PyAnbXVsdGktY29sb3VyLCBob3Jpem9udGFsIHN0cmlwZXMnIDogJ3BpbmsnOwogCiBwcmludCA8 PEVOREhUTUwgaWYgJGh0bWw7CiA8IURPQ1RZUEUgSFRNTD4KQEAgLTg5Niw3ICs4OTYsMTkgQEAg c3ViIGN0eF9jb2xvdXIKIAogCSR2YWwgPSBpbnQoMzYwIC8gKCRtYXhfY3R4IC0gJG1pbl9jdHgg KyAxKSkgKiAoJGN0eCAtICRtaW5fY3R4KTsKIAotCXJldHVybiAiaHNsKCR2YWwsICRzJSwgJGwl KTsiOworCXJldHVybiAiaHNsKCR2YWwsICRzJSwgJGwlKSI7Cit9CisKK3N1YiBib3hfc3R5bGUK K3sKKwlteSAoJGN0eCwgJGRlZywgJHMsICRsKSA9IEBfOworCisJcmV0dXJuICdjb2xvcjogYmxh Y2s7IGJhY2tncm91bmQ6IHJlcGVhdGluZy1saW5lYXItZ3JhZGllbnQoJyAuCisJCSRkZWcgLiAn ZGVnLCAnIC4KKwkJY3R4X2NvbG91cigkY3R4LCAkcywgJGwpIC4gJywgJyAuCisJCWN0eF9jb2xv dXIoJGN0eCwgJHMsICRsKSAuICcgMTBweCwgJyAuCisJCWN0eF9jb2xvdXIoJGN0eCwgJHMsIGlu dCgkbCAqIDAuOTApKSAuICcgMTBweCwgJyAuCisJCWN0eF9jb2xvdXIoJGN0eCwgJHMsIGludCgk bCAqIDAuOTApKSAuICcgMjBweCk7JzsKIH0KIAogbXkgJGkgPSAwOwpAQCAtOTEzLDggKzkyNSw3 IEBAIGZvcmVhY2ggbXkgJGtleSAoc29ydCBzb3J0UXVldWUga2V5cyAlZGIpIHsKIAkjIHN1Ym1p dCB0byBleGVjdXRlCiAJdW5sZXNzIChleGlzdHMgJHNraXBfYm94eydxdWV1ZSd9KSB7CiAJCSRz a2V5ID0gMiAqICRtYXhfc2Vxbm8gKiAkY3R4ICsgMiAqICRzZXFubzsKLQkJJHN0eWxlID0gJ2Nv bG9yOiBibGFjazsgYmFja2dyb3VuZC1jb2xvcjogJyAuCi0JCQkgY3R4X2NvbG91cigkY3R4LCAz NSwgODUpOworCQkkc3R5bGUgPSBib3hfc3R5bGUoJGN0eCwgOTAsIDM1LCA4NSk7CiAJCSRjb250 ZW50ID0gIiRuYW1lPGJyPiRkYnska2V5fS0+eydzdWJtaXQtZGVsYXknfXVzIDxzbWFsbD4oJGRi eyRrZXl9LT57J2V4ZWN1dGUtZGVsYXknfXVzKTwvc21hbGw+IjsKIAkJJHN0YXJ0ZW5kID0gJ3N0 YXJ0OiBcJycgLiB0cygkcXVldWUpIC4gJ1wnLCBlbmQ6IFwnJyAuIHRzKCRzdWJtaXQpIC4gJ1wn JzsKIAkJcHJpbnQgIlx0e2lkOiAkaSwga2V5OiAkc2tleSwgJHR5cGUgZ3JvdXA6ICRncm91cCwg c3ViZ3JvdXA6IDEsIHN1Ymdyb3VwT3JkZXI6IDEsIGNvbnRlbnQ6ICckY29udGVudCcsICRzdGFy dGVuZCwgc3R5bGU6IFwnJHN0eWxlXCd9LFxuIjsKQEAgLTkyNCw4ICs5MzUsNyBAQCBmb3JlYWNo IG15ICRrZXkgKHNvcnQgc29ydFF1ZXVlIGtleXMgJWRiKSB7CiAJIyBleGVjdXRlIHRvIHN0YXJ0 CiAJdW5sZXNzIChleGlzdHMgJHNraXBfYm94eydyZWFkeSd9KSB7CiAJCSRza2V5ID0gMiAqICRt YXhfc2Vxbm8gKiAkY3R4ICsgMiAqICRzZXFubyArIDE7Ci0JCSRzdHlsZSA9ICdjb2xvcjogYmxh Y2s7IGJhY2tncm91bmQtY29sb3I6ICcgLgotCQkJIGN0eF9jb2xvdXIoJGN0eCwgMzUsIDQ1KTsK KwkJJHN0eWxlID0gYm94X3N0eWxlKCRjdHgsIDQ1LCAzNSwgNDUpOwogCQkkY29udGVudCA9ICI8 c21hbGw+JG5hbWU8YnI+JGRieyRrZXl9LT57J2V4ZWN1dGUtZGVsYXknfXVzPC9zbWFsbD4iOwog CQkkc3RhcnRlbmQgPSAnc3RhcnQ6IFwnJyAuIHRzKCRzdWJtaXQpIC4gJ1wnLCBlbmQ6IFwnJyAu IHRzKCRzdGFydCkgLiAnXCcnOwogCQlwcmludCAiXHR7aWQ6ICRpLCBrZXk6ICRza2V5LCAkdHlw ZSBncm91cDogJGdyb3VwLCBzdWJncm91cDogMSwgc3ViZ3JvdXBPcmRlcjogMiwgY29udGVudDog JyRjb250ZW50JywgJHN0YXJ0ZW5kLCBzdHlsZTogXCckc3R5bGVcJ30sXG4iOwpAQCAtOTM4LDgg Kzk0OCw3IEBAIGZvcmVhY2ggbXkgJGtleSAoc29ydCBzb3J0UXVldWUga2V5cyAlZGIpIHsKIAkJ aWYgKGV4aXN0cyAkZGJ7JGtleX0tPnsnaW5jb21wbGV0ZSd9KSB7CiAJCQkkc3R5bGUgPSAnY29s b3I6IHdoaXRlOyBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7JzsKIAkJfSBlbHNlIHsKLQkJCSRzdHls ZSA9ICdjb2xvcjogYmxhY2s7IGJhY2tncm91bmQtY29sb3I6ICcgLgotCQkJCSAgY3R4X2NvbG91 cigkY3R4LCA4MCwgNjUpOworCQkJJHN0eWxlID0gYm94X3N0eWxlKCRjdHgsIDAsIDgwLCA2NSk7 CiAJCX0KIAkJJGNvbnRlbnQgPSAiJG5hbWUgPHNtYWxsPiRkYnska2V5fS0+eydwb3J0J308L3Nt YWxsPiI7CiAJCSRjb250ZW50IC49ICcgPHNtYWxsPjxpPj8/PzwvaT48L3NtYWxsPiAnIGlmIGV4 aXN0cyAkZGJ7JGtleX0tPnsnaW5jb21wbGV0ZSd9OwotLSAKMi4xNC4xCgpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwppZ3QtZGV2IG1haWxpbmcgbGlzdApp Z3QtZGV2QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9y Zy9tYWlsbWFuL2xpc3RpbmZvL2lndC1kZXYK