From mboxrd@z Thu Jan 1 00:00:00 1970 From: Juergen Gross Subject: [PATCH RFC v2 05/12] x86: don't access saved user regs via rsp in trap handlers Date: Mon, 22 Jan 2018 13:32:49 +0100 Message-ID: <20180122123256.1431-6-jgross@suse.com> References: <20180122123256.1431-1-jgross@suse.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from all-amaz-eas1.inumbo.com ([34.197.232.57]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1edbJF-0000Xu-8F for xen-devel@lists.xenproject.org; Mon, 22 Jan 2018 12:34:45 +0000 In-Reply-To: <20180122123256.1431-1-jgross@suse.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" To: xen-devel@lists.xenproject.org Cc: Juergen Gross , wei.liu2@citrix.com, George.Dunlap@eu.citrix.com, andrew.cooper3@citrix.com, ian.jackson@eu.citrix.com, dfaggioli@suse.com, jbeulich@suse.com List-Id: xen-devel@lists.xenproject.org SW4gb3JkZXIgdG8gc3VwcG9ydCBzd2l0Y2hpbmcgc3RhY2tzIHdoZW4gZW50ZXJpbmcgdGhlIGh5 cGVydmlzb3IgZm9yCnN1cHBvcnQgb2YgcGFnZSB0YWJsZSBpc29sYXRpb24sIGRvbid0IHVzZSAl cnNwIGZvciBhY2Nlc3NpbmcgdGhlCnNhdmVkIHVzZXIgcmVnaXN0ZXJzLCBidXQgZG8gdGhhdCB2 aWEgJXJkaS4KClNpZ25lZC1vZmYtYnk6IEp1ZXJnZW4gR3Jvc3MgPGpncm9zc0BzdXNlLmNvbT4K LS0tCiB4ZW4vYXJjaC94ODYveDg2XzY0L2NvbXBhdC9lbnRyeS5TIHwgIDgyICsrKysrKysrKysr KystLS0tLS0tLS0tCiB4ZW4vYXJjaC94ODYveDg2XzY0L2VudHJ5LlMgICAgICAgIHwgMTI5ICsr KysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0KIHhlbi9pbmNsdWRlL2FzbS14ODYv Y3VycmVudC5oICAgICAgfCAgMTAgKystCiAzIGZpbGVzIGNoYW5nZWQsIDEzNCBpbnNlcnRpb25z KCspLCA4NyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYveDg2XzY0L2Nv bXBhdC9lbnRyeS5TIGIveGVuL2FyY2gveDg2L3g4Nl82NC9jb21wYXQvZW50cnkuUwppbmRleCAz ZmVhNTRlZTlkLi5hYmYzZmNhZTQ4IDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYveDg2XzY0L2Nv bXBhdC9lbnRyeS5TCisrKyBiL3hlbi9hcmNoL3g4Ni94ODZfNjQvY29tcGF0L2VudHJ5LlMKQEAg LTE4LDE0ICsxOCwxNCBAQCBFTlRSWShlbnRyeV9pbnQ4MikKICAgICAgICAgcHVzaHEgJDAKICAg ICAgICAgbW92bCAgJEhZUEVSQ0FMTF9WRUNUT1IsIDQoJXJzcCkKICAgICAgICAgU0FWRV9BTEwg Y29tcGF0PTEgLyogRFBMMSBnYXRlLCByZXN0cmljdGVkIHRvIDMyYml0IFBWIGd1ZXN0cyBvbmx5 LiAqLworICAgICAgICBtb3YgICAlcnNwLCAlcmRpCiAgICAgICAgIENSNF9QVjMyX1JFU1RPUkUK IAogICAgICAgICBHRVRfQ1VSUkVOVChieCkKIAotICAgICAgICBtb3YgICAlcnNwLCAlcmRpCiAg ICAgICAgIGNhbGwgIGRvX2VudHJ5X2ludDgyCiAKLS8qICVyYng6IHN0cnVjdCB2Y3B1ICovCisv KiAlcmJ4OiBzdHJ1Y3QgdmNwdSwgJXJkaTogdXNlcl9yZWdzICovCiBFTlRSWShjb21wYXRfdGVz dF9hbGxfZXZlbnRzKQogICAgICAgICBBU1NFUlRfTk9UX0lOX0FUT01JQwogICAgICAgICBjbGkg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICMgdGVzdHMgbXVzdCBub3QgcmFjZSBpbnRlcnJ1 cHRzCkBAIC01OCwyMCArNTgsMjQgQEAgY29tcGF0X3Rlc3RfZ3Vlc3RfZXZlbnRzOgogICAgICAg ICBqbXAgICBjb21wYXRfdGVzdF9hbGxfZXZlbnRzCiAKICAgICAgICAgQUxJR04KLS8qICVyYng6 IHN0cnVjdCB2Y3B1ICovCisvKiAlcmJ4OiBzdHJ1Y3QgdmNwdSwgJXJkaTogdXNlcl9yZWdzICov CiBjb21wYXRfcHJvY2Vzc19zb2Z0aXJxczoKICAgICAgICAgc3RpCisgICAgICAgIHB1c2hxICVy ZGkKICAgICAgICAgY2FsbCAgZG9fc29mdGlycQorICAgICAgICBwb3BxICAlcmRpCiAgICAgICAg IGptcCAgIGNvbXBhdF90ZXN0X2FsbF9ldmVudHMKIAogCUFMSUdOCi0vKiAlcmJ4OiBzdHJ1Y3Qg dmNwdSAqLworLyogJXJieDogc3RydWN0IHZjcHUsICVyZGk6IHVzZXJfcmVncyAqLwogY29tcGF0 X3Byb2Nlc3NfbWNlOgogICAgICAgICB0ZXN0YiAkMSA8PCBWQ1BVX1RSQVBfTUNFLFZDUFVfYXN5 bmNfZXhjZXB0aW9uX21hc2soJXJieCkKICAgICAgICAgam56ICAgLkxjb21wYXRfdGVzdF9ndWVz dF9ubWkKICAgICAgICAgc3RpCiAgICAgICAgIG1vdmIgJDAsVkNQVV9tY2VfcGVuZGluZyglcmJ4 KQorICAgICAgICBwdXNocSAlcmRpCiAgICAgICAgIGNhbGwgc2V0X2d1ZXN0X21hY2hpbmVjaGVj a190cmFwYm91bmNlCisgICAgICAgIHBvcHEgICVyZGkKICAgICAgICAgdGVzdGwgJWVheCwlZWF4 CiAgICAgICAgIGp6ICAgIGNvbXBhdF90ZXN0X2FsbF9ldmVudHMKICAgICAgICAgbW92emJsIFZD UFVfYXN5bmNfZXhjZXB0aW9uX21hc2soJXJieCksJWVkeCAjIHNhdmUgbWFzayBmb3IgdGhlCkBA IC04MSwxMyArODUsMTUgQEAgY29tcGF0X3Byb2Nlc3NfbWNlOgogICAgICAgICBqbXAgICBjb21w YXRfcHJvY2Vzc190cmFwCiAKIAlBTElHTgotLyogJXJieDogc3RydWN0IHZjcHUgKi8KKy8qICVy Yng6IHN0cnVjdCB2Y3B1LCAlcmRpOiB1c2VyX3JlZ3MgKi8KIGNvbXBhdF9wcm9jZXNzX25taToK ICAgICAgICAgdGVzdGIgJDEgPDwgVkNQVV9UUkFQX05NSSxWQ1BVX2FzeW5jX2V4Y2VwdGlvbl9t YXNrKCVyYngpCiAgICAgICAgIGpueiAgY29tcGF0X3Rlc3RfZ3Vlc3RfZXZlbnRzCiAgICAgICAg IHN0aQogICAgICAgICBtb3ZiICAkMCxWQ1BVX25taV9wZW5kaW5nKCVyYngpCisgICAgICAgIHB1 c2hxICVyZGkKICAgICAgICAgY2FsbCAgc2V0X2d1ZXN0X25taV90cmFwYm91bmNlCisgICAgICAg IHBvcHEgICVyZGkKICAgICAgICAgdGVzdGwgJWVheCwlZWF4CiAgICAgICAgIGp6ICAgIGNvbXBh dF90ZXN0X2FsbF9ldmVudHMKICAgICAgICAgbW92emJsIFZDUFVfYXN5bmNfZXhjZXB0aW9uX21h c2soJXJieCksJWVkeCAjIHNhdmUgbWFzayBmb3IgdGhlCkBAIC0xNzgsNyArMTg0LDcgQEAgRU5U UlkoY3I0X3B2MzJfcmVzdG9yZSkKICAgICAgICAgeG9yICAgJWVheCwgJWVheAogICAgICAgICBy ZXQKIAotLyogJXJkeDogdHJhcF9ib3VuY2UsICVyYng6IHN0cnVjdCB2Y3B1ICovCisvKiAlcmR4 OiB0cmFwX2JvdW5jZSwgJXJieDogc3RydWN0IHZjcHUsICVyZGk6IHVzZXJfcmVncyAqLwogRU5U UlkoY29tcGF0X3Bvc3RfaGFuZGxlX2V4Y2VwdGlvbikKICAgICAgICAgdGVzdGIgJFRCRl9FWENF UFRJT04sVFJBUEJPVU5DRV9mbGFncyglcmR4KQogICAgICAgICBqeiAgICBjb21wYXRfdGVzdF9h bGxfZXZlbnRzCkBAIC0xOTksNiArMjA1LDcgQEAgRU5UUlkoY3N0YXJfZW50ZXIpCiAgICAgICAg IHB1c2hxICQwCiAgICAgICAgIG1vdmwgICRUUkFQX3N5c2NhbGwsIDQoJXJzcCkKICAgICAgICAg U0FWRV9BTEwKKyAgICAgICAgbW92cSAgJXJzcCwgJXJkaQogICAgICAgICBHRVRfQ1VSUkVOVChi eCkKICAgICAgICAgbW92cSAgVkNQVV9kb21haW4oJXJieCksJXJjeAogICAgICAgICBjbXBiICAk MCxET01BSU5faXNfMzJiaXRfcHYoJXJjeCkKQEAgLTIxMSwxMyArMjE4LDE1IEBAIEVOVFJZKGNz dGFyX2VudGVyKQogICAgICAgICB0ZXN0bCAkfjMsJWVzaQogICAgICAgICBsZWFsICAoLCVyY3gs VEJGX0lOVEVSUlVQVCksJWVjeAogVU5MSUtFTFlfU1RBUlQoeiwgY29tcGF0X3N5c2NhbGxfZ3Bm KQotICAgICAgICBtb3ZxICBWQ1BVX3RyYXBfY3R4dCglcmJ4KSwlcmRpCi0gICAgICAgIG1vdmwg ICRUUkFQX2dwX2ZhdWx0LFVSRUdTX2VudHJ5X3ZlY3RvciglcnNwKQotICAgICAgICBzdWJsICAk MixVUkVHU19yaXAoJXJzcCkKKyAgICAgICAgcHVzaHEgJXJjeAorICAgICAgICBtb3ZxICBWQ1BV X3RyYXBfY3R4dCglcmJ4KSwlcmN4CisgICAgICAgIG1vdmwgICRUUkFQX2dwX2ZhdWx0LFVSRUdT X2VudHJ5X3ZlY3RvciglcmRpKQorICAgICAgICBzdWJsICAkMixVUkVHU19yaXAoJXJkaSkKICAg ICAgICAgbW92bCAgJDAsVFJBUEJPVU5DRV9lcnJvcl9jb2RlKCVyZHgpCi0gICAgICAgIG1vdmwg IFRSQVBfZ3BfZmF1bHQgKiBUUkFQSU5GT19zaXplb2YgKyBUUkFQSU5GT19laXAoJXJkaSksJWVh eAotICAgICAgICBtb3Z6d2wgVFJBUF9ncF9mYXVsdCAqIFRSQVBJTkZPX3NpemVvZiArIFRSQVBJ TkZPX2NzKCVyZGkpLCVlc2kKLSAgICAgICAgdGVzdGIgJDQsVFJBUF9ncF9mYXVsdCAqIFRSQVBJ TkZPX3NpemVvZiArIFRSQVBJTkZPX2ZsYWdzKCVyZGkpCisgICAgICAgIG1vdmwgIFRSQVBfZ3Bf ZmF1bHQgKiBUUkFQSU5GT19zaXplb2YgKyBUUkFQSU5GT19laXAoJXJjeCksJWVheAorICAgICAg ICBtb3Z6d2wgVFJBUF9ncF9mYXVsdCAqIFRSQVBJTkZPX3NpemVvZiArIFRSQVBJTkZPX2NzKCVy Y3gpLCVlc2kKKyAgICAgICAgdGVzdGIgJDQsVFJBUF9ncF9mYXVsdCAqIFRSQVBJTkZPX3NpemVv ZiArIFRSQVBJTkZPX2ZsYWdzKCVyY3gpCisgICAgICAgIHBvcHEgICVyY3gKICAgICAgICAgc2V0 bnogJWNsCiAgICAgICAgIGxlYWwgIFRCRl9FWENFUFRJT058VEJGX0VYQ0VQVElPTl9FUlJDT0RF KCwlcmN4LFRCRl9JTlRFUlJVUFQpLCVlY3gKIFVOTElLRUxZX0VORChjb21wYXRfc3lzY2FsbF9n cGYpCkBAIC0yMjksMTIgKzIzOCwxMiBAQCBVTkxJS0VMWV9FTkQoY29tcGF0X3N5c2NhbGxfZ3Bm KQogRU5UUlkoY29tcGF0X3N5c2VudGVyKQogICAgICAgICBDUjRfUFYzMl9SRVNUT1JFCiAgICAg ICAgIG1vdnEgIFZDUFVfdHJhcF9jdHh0KCVyYngpLCVyY3gKLSAgICAgICAgY21wYiAgJFRSQVBf Z3BfZmF1bHQsVVJFR1NfZW50cnlfdmVjdG9yKCVyc3ApCisgICAgICAgIGNtcGIgICRUUkFQX2dw X2ZhdWx0LFVSRUdTX2VudHJ5X3ZlY3RvciglcmRpKQogICAgICAgICBtb3Z6d2wgVkNQVV9zeXNl bnRlcl9zZWwoJXJieCksJWVheAogICAgICAgICBtb3Z6d2wgVFJBUF9ncF9mYXVsdCAqIFRSQVBJ TkZPX3NpemVvZiArIFRSQVBJTkZPX2NzKCVyY3gpLCVlY3gKICAgICAgICAgY21vdmVsICVlY3gs JWVheAogICAgICAgICB0ZXN0bCAkfjMsJWVheAotICAgICAgICBtb3ZsICAkRkxBVF9DT01QQVRf VVNFUl9TUyxVUkVHU19zcyglcnNwKQorICAgICAgICBtb3ZsICAkRkxBVF9DT01QQVRfVVNFUl9T UyxVUkVHU19zcyglcmRpKQogICAgICAgICBjbW92emwgJWVjeCwlZWF4CiAgICAgICAgIG1vdncg ICVheCxUUkFQQk9VTkNFX2NzKCVyZHgpCiAgICAgICAgIGNhbGwgIGNvbXBhdF9jcmVhdGVfYm91 bmNlX2ZyYW1lCkBAIC0yNDcsMjYgKzI1NiwyNyBAQCBFTlRSWShjb21wYXRfaW50ODBfZGlyZWN0 X3RyYXApCiAKIC8qIENSRUFURSBBIEJBU0lDIEVYQ0VQVElPTiBGUkFNRSBPTiBHVUVTVCBPUyAo UklORy0xKSBTVEFDSzogICAgICAgICAgICAqLwogLyogICB7W0VSUkNPREUsXSBFSVAsIENTLCBF RkxBR1MsIFtFU1AsIFNTXX0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0vKiAlcmR4 OiB0cmFwX2JvdW5jZSwgJXJieDogc3RydWN0IHZjcHUgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgKi8KLS8qIE9uIHJldHVybiBvbmx5ICVyYnggYW5kICVyZHggYXJlIGd1YXJhbnRl ZWQgbm9uLWNsb2JiZXJlZC4gICAgICAgICAgICAqLworLyogJXJkeDogdHJhcF9ib3VuY2UsICVy Yng6IHN0cnVjdCB2Y3B1LCAlcmRpOiB1c2VyX3JlZ3MgICAgICAgICAgICAgICAgICovCisvKiBP biByZXR1cm4gb25seSAlcmJ4LCAlcmRpIGFuZCAlcmR4IGFyZSBndWFyYW50ZWVkIG5vbi1jbG9i YmVyZWQuICAgICAgKi8KIGNvbXBhdF9jcmVhdGVfYm91bmNlX2ZyYW1lOgogICAgICAgICBBU1NF UlRfSU5URVJSVVBUU19FTkFCTEVECi0gICAgICAgIG1vdiAgICVmcywlZWRpCisgICAgICAgIG1v diAgICVmcywlZWN4CisgICAgICAgIHB1c2hxICVyY3gKICAgICAgICAgQVNNX1NUQUMKLSAgICAg ICAgdGVzdGIgJDIsVVJFR1NfY3MrOCglcnNwKQorICAgICAgICB0ZXN0YiAkMixVUkVHU19jcygl cmRpKQogICAgICAgICBqeiAgICAxZgogICAgICAgICAvKiBQdXNoIG5ldyBmcmFtZSBhdCByZWdp c3RlcmVkIGd1ZXN0LU9TIHN0YWNrIGJhc2UuICovCiAgICAgICAgIG1vdmwgIFZDUFVfa2VybmVs X3NwKCVyYngpLCVlc2kKIC5MZnQxOiAgbW92ICAgVkNQVV9rZXJuZWxfc3MoJXJieCksJWZzCiAg ICAgICAgIHN1YmwgICQyKjQsJWVzaQotICAgICAgICBtb3ZsICBVUkVHU19yc3ArOCglcnNwKSwl ZWF4CisgICAgICAgIG1vdmwgIFVSRUdTX3JzcCglcmRpKSwlZWF4CiAuTGZ0MjogIG1vdmwgICVl YXgsJWZzOiglcnNpKQotICAgICAgICBtb3ZsICBVUkVHU19zcys4KCVyc3ApLCVlYXgKKyAgICAg ICAgbW92bCAgVVJFR1Nfc3MoJXJkaSksJWVheAogLkxmdDM6ICBtb3ZsICAlZWF4LCVmczo0KCVy c2kpCiAgICAgICAgIGptcCAgIDJmCiAxOiAgICAgIC8qIEluIGtlcm5lbCBjb250ZXh0IGFscmVh ZHk6IHB1c2ggbmV3IGZyYW1lIGF0IGV4aXN0aW5nICVyc3AuICovCi0gICAgICAgIG1vdmwgIFVS RUdTX3JzcCs4KCVyc3ApLCVlc2kKLS5MZnQ0OiAgbW92ICAgVVJFR1Nfc3MrOCglcnNwKSwlZnMK KyAgICAgICAgbW92bCAgVVJFR1NfcnNwKCVyZGkpLCVlc2kKKy5MZnQ0OiAgbW92ICAgVVJFR1Nf c3MoJXJkaSksJWZzCiAyOgogICAgICAgICBtb3ZxICBWQ1BVX2RvbWFpbiglcmJ4KSwlcjgKICAg ICAgICAgc3VibCAgJDMqNCwlZXNpCkBAIC0yNzcsMTIgKzI4NywxMiBAQCBjb21wYXRfY3JlYXRl X2JvdW5jZV9mcmFtZToKICAgICAgICAgb3JiICAgJWNoLENPTVBBVF9WQ1BVSU5GT191cGNhbGxf bWFzayglcmF4KQogICAgICAgICBwb3BxICAlcmF4CiAgICAgICAgIHNobGwgICQxNiwlZWF4ICAg ICAgICAgICAgICAgICAgIyBCaXRzIDE2LTIzOiBzYXZlZF91cGNhbGxfbWFzawotICAgICAgICBt b3Z3ICBVUkVHU19jcys4KCVyc3ApLCVheCAgICAgICMgQml0cyAgMC0xNTogQ1MKKyAgICAgICAg bW92dyAgVVJFR1NfY3MoJXJkaSksJWF4ICAgICAgICAjIEJpdHMgIDAtMTU6IENTCiAuTGZ0NTog IG1vdmwgICVlYXgsJWZzOjQoJXJzaSkgICAgICAgICAgIyBDUyAvIHNhdmVkX3VwY2FsbF9tYXNr CiAgICAgICAgIHNocmwgICQxNiwlZWF4CiAgICAgICAgIHRlc3RiICVhbCwlYWwgICAgICAgICAg ICAgICAgICAgIyBCaXRzIDAtNzogc2F2ZWRfdXBjYWxsX21hc2sKICAgICAgICAgc2V0eiAgJWNo ICAgICAgICAgICAgICAgICAgICAgICAjICVjaCA9PSAhc2F2ZWRfdXBjYWxsX21hc2sKLSAgICAg ICAgbW92bCAgVVJFR1NfZWZsYWdzKzgoJXJzcCksJWVheAorICAgICAgICBtb3ZsICBVUkVHU19l ZmxhZ3MoJXJkaSksJWVheAogICAgICAgICBhbmRsICAkfihYODZfRUZMQUdTX0lGfFg4Nl9FRkxB R1NfSU9QTCksJWVheAogICAgICAgICBhZGRiICAlY2gsJWNoICAgICAgICAgICAgICAgICAgICMg Qml0IDkgKEVGTEFHUy5JRikKICAgICAgICAgb3JiICAgJWNoLCVhaCAgICAgICAgICAgICAgICAg ICAjIEZvbGQgRUZMQUdTLklGIGludG8gJWVheApAQCAtMjkxLDcgKzMwMSw3IEBAIGNvbXBhdF9j cmVhdGVfYm91bmNlX2ZyYW1lOgogICAgICAgICBjbW92bnpsIFZDUFVfaW9wbCglcmJ4KSwlZWN4 ICAgICMgQml0cyAxMzoxMiAoRUZMQUdTLklPUEwpCiAgICAgICAgIG9ybCAgICVlY3gsJWVheCAg ICAgICAgICAgICAgICAgIyBGb2xkIEVGTEFHUy5JT1BMIGludG8gJWVheAogLkxmdDY6ICBtb3Zs ICAlZWF4LCVmczoyKjQoJXJzaSkgICAgICAgICMgRUZMQUdTCi0gICAgICAgIG1vdmwgIFVSRUdT X3JpcCs4KCVyc3ApLCVlYXgKKyAgICAgICAgbW92bCAgVVJFR1NfcmlwKCVyZGkpLCVlYXgKIC5M ZnQ3OiAgbW92bCAgJWVheCwlZnM6KCVyc2kpICAgICAgICAgICAjIEVJUAogICAgICAgICB0ZXN0 YiAkVEJGX0VYQ0VQVElPTl9FUlJDT0RFLFRSQVBCT1VOQ0VfZmxhZ3MoJXJkeCkKICAgICAgICAg anogICAgMWYKQEAgLTMwMywxMCArMzEzLDExIEBAIGNvbXBhdF9jcmVhdGVfYm91bmNlX2ZyYW1l OgogICAgICAgICAvKiBSZXdyaXRlIG91ciBzdGFjayBmcmFtZSBhbmQgcmV0dXJuIHRvIGd1ZXN0 LU9TIG1vZGUuICovCiAgICAgICAgIC8qIElBMzIgUmVmLiBWb2wuIDM6IFRGLCBWTSwgUkYgYW5k IE5UIGZsYWdzIGFyZSBjbGVhcmVkIG9uIHRyYXAuICovCiAgICAgICAgIGFuZGwgICR+KFg4Nl9F RkxBR1NfVk18WDg2X0VGTEFHU19SRnxcCi0gICAgICAgICAgICAgICAgIFg4Nl9FRkxBR1NfTlR8 WDg2X0VGTEFHU19URiksVVJFR1NfZWZsYWdzKzgoJXJzcCkKLSAgICAgICAgbW92ICAgJWZzLFVS RUdTX3NzKzgoJXJzcCkKLSAgICAgICAgbW92bCAgJWVzaSxVUkVHU19yc3ArOCglcnNwKQotLkxm dDEzOiBtb3YgICAlZWRpLCVmcworICAgICAgICAgICAgICAgICBYODZfRUZMQUdTX05UfFg4Nl9F RkxBR1NfVEYpLFVSRUdTX2VmbGFncyglcmRpKQorICAgICAgICBtb3YgICAlZnMsVVJFR1Nfc3Mo JXJkaSkKKyAgICAgICAgbW92bCAgJWVzaSxVUkVHU19yc3AoJXJkaSkKKy5MZnQxMzogcG9wcSAg JXJheAorICAgICAgICBtb3YgICAlZWF4LCVmcwogICAgICAgICBtb3Z6d2wgVFJBUEJPVU5DRV9j cyglcmR4KSwlZWF4CiAgICAgICAgIC8qIE51bGwgc2VsZWN0b3JzICgwLTMpIGFyZSBub3QgYWxs b3dlZC4gKi8KICAgICAgICAgdGVzdGwgJH4zLCVlYXgKQEAgLTMxNCwxMyArMzI1LDE0IEBAIFVO TElLRUxZX1NUQVJUKHosIGNvbXBhdF9ib3VuY2VfbnVsbF9zZWxlY3RvcikKICAgICAgICAgbGVh ICAgVU5MSUtFTFlfRElTUEFUQ0hfTEFCRUwoY29tcGF0X2JvdW5jZV9udWxsX3NlbGVjdG9yKSgl cmlwKSwgJXJkaQogICAgICAgICBqbXAgICBhc21fZG9tYWluX2NyYXNoX3N5bmNocm9ub3VzICAv KiBEb2VzIG5vdCByZXR1cm4gKi8KIF9fVU5MSUtFTFlfRU5EKGNvbXBhdF9ib3VuY2VfbnVsbF9z ZWxlY3RvcikKLSAgICAgICAgbW92bCAgJWVheCxVUkVHU19jcys4KCVyc3ApCisgICAgICAgIG1v dmwgICVlYXgsVVJFR1NfY3MoJXJkaSkKICAgICAgICAgbW92bCAgVFJBUEJPVU5DRV9laXAoJXJk eCksJWVheAotICAgICAgICBtb3ZsICAlZWF4LFVSRUdTX3JpcCs4KCVyc3ApCisgICAgICAgIG1v dmwgICVlYXgsVVJFR1NfcmlwKCVyZGkpCiAgICAgICAgIHJldAogLnNlY3Rpb24gLmZpeHVwLCJh eCIKIC5MZngxMzoKLSAgICAgICAgeG9ybCAgJWVkaSwlZWRpCisgICAgICAgIHBvcHEgICVyYXgK KyAgICAgICAgcHVzaHEgJDAKICAgICAgICAgam1wICAgLkxmdDEzCiAucHJldmlvdXMKICAgICAg ICAgX0FTTV9FWFRBQkxFKC5MZnQxLCAgZG9tX2NyYXNoX3N5bmNfZXh0YWJsZSkKQEAgLTMzOCwx NCArMzUwLDE2IEBAIGNvbXBhdF9jcmFzaF9wYWdlX2ZhdWx0Xzg6CiBjb21wYXRfY3Jhc2hfcGFn ZV9mYXVsdF80OgogICAgICAgICBhZGRsICAkNCwlZXNpCiBjb21wYXRfY3Jhc2hfcGFnZV9mYXVs dDoKLS5MZnQxNDogbW92ICAgJWVkaSwlZnMKKy5MZnQxNDogcG9wcSAgJXJheAorICAgICAgICBt b3YgICAlZWF4LCVmcwogICAgICAgICBBU01fQ0xBQwogICAgICAgICBtb3ZsICAlZXNpLCVlZGkK ICAgICAgICAgY2FsbCAgc2hvd19wYWdlX3dhbGsKICAgICAgICAgam1wICAgZG9tX2NyYXNoX3N5 bmNfZXh0YWJsZQogLnNlY3Rpb24gLmZpeHVwLCJheCIKIC5MZngxNDoKLSAgICAgICAgeG9ybCAg JWVkaSwlZWRpCisgICAgICAgIHBvcHEgICVyYXgKKyAgICAgICAgcHVzaHEgJDAKICAgICAgICAg am1wICAgLkxmdDE0CiAucHJldmlvdXMKICAgICAgICAgX0FTTV9FWFRBQkxFKC5MZnQxNCwgLkxm eDE0KQpkaWZmIC0tZ2l0IGEveGVuL2FyY2gveDg2L3g4Nl82NC9lbnRyeS5TIGIveGVuL2FyY2gv eDg2L3g4Nl82NC9lbnRyeS5TCmluZGV4IGNiZDczZjZjMjIuLmY3NDEyYjg3YzIgMTAwNjQ0Ci0t LSBhL3hlbi9hcmNoL3g4Ni94ODZfNjQvZW50cnkuUworKysgYi94ZW4vYXJjaC94ODYveDg2XzY0 L2VudHJ5LlMKQEAgLTE0LDEzICsxNCwxMyBAQAogI2luY2x1ZGUgPHB1YmxpYy94ZW4uaD4KICNp bmNsdWRlIDxpcnFfdmVjdG9ycy5oPgogCi0vKiAlcmJ4OiBzdHJ1Y3QgdmNwdSAqLworLyogJXJi eDogc3RydWN0IHZjcHUsICVyZGk6IHVzZXJfcmVncyAqLwogRU5UUlkoc3dpdGNoX3RvX2tlcm5l bCkKICAgICAgICAgbGVhcSAgVkNQVV90cmFwX2JvdW5jZSglcmJ4KSwlcmR4CiAgICAgICAgIC8q IFRCX2VpcCA9ICgzMi1iaXQgc3lzY2FsbCAmJiBzeXNjYWxsMzJfYWRkcikgPwogICAgICAgICAg KiAgICAgICAgICBzeXNjYWxsMzJfYWRkciA6IHN5c2NhbGxfYWRkciAqLwogICAgICAgICB4b3Ig ICAlZWF4LCVlYXgKLSAgICAgICAgY21wdyAgJEZMQVRfVVNFUl9DUzMyLFVSRUdTX2NzKCVyc3Ap CisgICAgICAgIGNtcHcgICRGTEFUX1VTRVJfQ1MzMixVUkVHU19jcyglcmRpKQogICAgICAgICBj bW92ZXEgVkNQVV9zeXNjYWxsMzJfYWRkciglcmJ4KSwlcmF4CiAgICAgICAgIHRlc3RxICVyYXgs JXJheAogICAgICAgICBjbW92enEgVkNQVV9zeXNjYWxsX2FkZHIoJXJieCksJXJheApAQCAtMzEs NyArMzEsNyBAQCBFTlRSWShzd2l0Y2hfdG9fa2VybmVsKQogICAgICAgICBsZWFsICAoLCVyY3gs VEJGX0lOVEVSUlVQVCksJWVjeAogICAgICAgICBtb3ZiICAlY2wsVFJBUEJPVU5DRV9mbGFncygl cmR4KQogICAgICAgICBjYWxsICBjcmVhdGVfYm91bmNlX2ZyYW1lCi0gICAgICAgIGFuZGwgICR+ WDg2X0VGTEFHU19ERixVUkVHU19lZmxhZ3MoJXJzcCkKKyAgICAgICAgYW5kbCAgJH5YODZfRUZM QUdTX0RGLFVSRUdTX2VmbGFncyglcmRpKQogICAgICAgICBqbXAgICB0ZXN0X2FsbF9ldmVudHMK IAogLyogJXJieDogc3RydWN0IHZjcHUsIGludGVycnVwdHMgZGlzYWJsZWQgKi8KQEAgLTEwMCwx NCArMTAwLDE2IEBAIEVOVFJZKGxzdGFyX2VudGVyKQogICAgICAgICBwdXNocSAkMAogICAgICAg ICBtb3ZsICAkVFJBUF9zeXNjYWxsLCA0KCVyc3ApCiAgICAgICAgIFNBVkVfQUxMCisgICAgICAg IG1vdiAgICVyc3AsICVyZGkKICAgICAgICAgR0VUX0NVUlJFTlQoYngpCiAgICAgICAgIHRlc3Ri ICRURl9rZXJuZWxfbW9kZSxWQ1BVX3RocmVhZF9mbGFncyglcmJ4KQogICAgICAgICBqeiAgICBz d2l0Y2hfdG9fa2VybmVsCiAKLSAgICAgICAgbW92ICAgJXJzcCwgJXJkaQorICAgICAgICBwdXNo ICAlcmRpCiAgICAgICAgIGNhbGwgIHB2X2h5cGVyY2FsbAorICAgICAgICBwb3AgICAlcmRpCiAK LS8qICVyYng6IHN0cnVjdCB2Y3B1ICovCisvKiAlcmJ4OiBzdHJ1Y3QgdmNwdSwgJXJkaTogdXNl cl9yZWdzICovCiB0ZXN0X2FsbF9ldmVudHM6CiAgICAgICAgIEFTU0VSVF9OT1RfSU5fQVRPTUlD CiAgICAgICAgIGNsaSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIyB0ZXN0cyBtdXN0IG5v dCByYWNlIGludGVycnVwdHMKQEAgLTEzOCwyMCArMTQwLDI0IEBAIHRlc3RfZ3Vlc3RfZXZlbnRz OgogICAgICAgICBqbXAgICB0ZXN0X2FsbF9ldmVudHMKIAogICAgICAgICBBTElHTgotLyogJXJi eDogc3RydWN0IHZjcHUgKi8KKy8qICVyYng6IHN0cnVjdCB2Y3B1LCAlcmRpOiB1c2VyX3JlZ3Mg Ki8KIHByb2Nlc3Nfc29mdGlycXM6CiAgICAgICAgIHN0aSAgICAgICAKKyAgICAgICAgcHVzaHEg JXJkaQogICAgICAgICBjYWxsIGRvX3NvZnRpcnEKKyAgICAgICAgcG9wcSAgJXJkaQogICAgICAg ICBqbXAgIHRlc3RfYWxsX2V2ZW50cwogCiAgICAgICAgIEFMSUdOCi0vKiAlcmJ4OiBzdHJ1Y3Qg dmNwdSAqLworLyogJXJieDogc3RydWN0IHZjcHUsICVyZGk6IHVzZXJfcmVncyAqLwogcHJvY2Vz c19tY2U6CiAgICAgICAgIHRlc3RiICQxIDw8IFZDUFVfVFJBUF9NQ0UsVkNQVV9hc3luY19leGNl cHRpb25fbWFzayglcmJ4KQogICAgICAgICBqbnogIC5MdGVzdF9ndWVzdF9ubWkKICAgICAgICAg c3RpCiAgICAgICAgIG1vdmIgJDAsVkNQVV9tY2VfcGVuZGluZyglcmJ4KQorICAgICAgICBwdXNo ICVyZGkKICAgICAgICAgY2FsbCBzZXRfZ3Vlc3RfbWFjaGluZWNoZWNrX3RyYXBib3VuY2UKKyAg ICAgICAgcG9wICAlcmRpCiAgICAgICAgIHRlc3QgJWVheCwlZWF4CiAgICAgICAgIGp6ICAgdGVz dF9hbGxfZXZlbnRzCiAgICAgICAgIG1vdnpibCBWQ1BVX2FzeW5jX2V4Y2VwdGlvbl9tYXNrKCVy YngpLCVlZHggIyBzYXZlIG1hc2sgZm9yIHRoZQpAQCAtMTY3LDcgKzE3Myw5IEBAIHByb2Nlc3Nf bm1pOgogICAgICAgICBqbnogIHRlc3RfZ3Vlc3RfZXZlbnRzCiAgICAgICAgIHN0aQogICAgICAg ICBtb3ZiICQwLFZDUFVfbm1pX3BlbmRpbmcoJXJieCkKKyAgICAgICAgcHVzaCAlcmRpCiAgICAg ICAgIGNhbGwgc2V0X2d1ZXN0X25taV90cmFwYm91bmNlCisgICAgICAgIHBvcCAgJXJkaQogICAg ICAgICB0ZXN0ICVlYXgsJWVheAogICAgICAgICBqeiAgIHRlc3RfYWxsX2V2ZW50cwogICAgICAg ICBtb3Z6YmwgVkNQVV9hc3luY19leGNlcHRpb25fbWFzayglcmJ4KSwlZWR4ICMgc2F2ZSBtYXNr IGZvciB0aGUKQEAgLTE5MiwxMSArMjAwLDEyIEBAIEdMT0JBTChzeXNlbnRlcl9lZmxhZ3Nfc2F2 ZWQpCiAgICAgICAgIHB1c2hxICQwCiAgICAgICAgIG1vdmwgICRUUkFQX3N5c2NhbGwsIDQoJXJz cCkKICAgICAgICAgU0FWRV9BTEwKKyAgICAgICAgbW92cSAgJXJzcCwgJXJkaQogICAgICAgICBH RVRfQ1VSUkVOVChieCkKICAgICAgICAgY21wYiAgJDAsVkNQVV9zeXNlbnRlcl9kaXNhYmxlc19l dmVudHMoJXJieCkKICAgICAgICAgbW92cSAgVkNQVV9zeXNlbnRlcl9hZGRyKCVyYngpLCVyYXgK ICAgICAgICAgc2V0bmUgJWNsCi0gICAgICAgIHRlc3RsICRYODZfRUZMQUdTX05ULFVSRUdTX2Vm bGFncyglcnNwKQorICAgICAgICB0ZXN0bCAkWDg2X0VGTEFHU19OVCxVUkVHU19lZmxhZ3MoJXJk aSkKICAgICAgICAgbGVhcSAgVkNQVV90cmFwX2JvdW5jZSglcmJ4KSwlcmR4CiBVTkxJS0VMWV9T VEFSVChueiwgc3lzZW50ZXJfbnRfc2V0KQogICAgICAgICBwdXNoZnEKQEAgLTIwOCwxNyArMjE3 LDE3IEBAIFVOTElLRUxZX0VORChzeXNlbnRlcl9udF9zZXQpCiAgICAgICAgIGxlYWwgICgsJXJj eCxUQkZfSU5URVJSVVBUKSwlZWN4CiBVTkxJS0VMWV9TVEFSVCh6LCBzeXNlbnRlcl9ncGYpCiAg ICAgICAgIG1vdnEgIFZDUFVfdHJhcF9jdHh0KCVyYngpLCVyc2kKLSAgICAgICAgbW92bCAgJFRS QVBfZ3BfZmF1bHQsVVJFR1NfZW50cnlfdmVjdG9yKCVyc3ApCisgICAgICAgIG1vdmwgICRUUkFQ X2dwX2ZhdWx0LFVSRUdTX2VudHJ5X3ZlY3RvciglcmRpKQogICAgICAgICBtb3ZsICAlZWF4LFRS QVBCT1VOQ0VfZXJyb3JfY29kZSglcmR4KQogICAgICAgICBtb3ZxICBUUkFQX2dwX2ZhdWx0ICog VFJBUElORk9fc2l6ZW9mICsgVFJBUElORk9fZWlwKCVyc2kpLCVyYXgKICAgICAgICAgdGVzdGIg JDQsVFJBUF9ncF9mYXVsdCAqIFRSQVBJTkZPX3NpemVvZiArIFRSQVBJTkZPX2ZsYWdzKCVyc2kp CiAgICAgICAgIHNldG56ICVjbAogICAgICAgICBsZWFsICBUQkZfRVhDRVBUSU9OfFRCRl9FWENF UFRJT05fRVJSQ09ERSgsJXJjeCxUQkZfSU5URVJSVVBUKSwlZWN4CiBVTkxJS0VMWV9FTkQoc3lz ZW50ZXJfZ3BmKQotICAgICAgICBtb3ZxICBWQ1BVX2RvbWFpbiglcmJ4KSwlcmRpCisgICAgICAg IG1vdnEgIFZDUFVfZG9tYWluKCVyYngpLCVyc2kKICAgICAgICAgbW92cSAgJXJheCxUUkFQQk9V TkNFX2VpcCglcmR4KQogICAgICAgICBtb3ZiICAlY2wsVFJBUEJPVU5DRV9mbGFncyglcmR4KQot ICAgICAgICB0ZXN0YiAkMSxET01BSU5faXNfMzJiaXRfcHYoJXJkaSkKKyAgICAgICAgdGVzdGIg JDEsRE9NQUlOX2lzXzMyYml0X3B2KCVyc2kpCiAgICAgICAgIGpueiAgIGNvbXBhdF9zeXNlbnRl cgogICAgICAgICBqbXAgICAuTGJvdW5jZV9leGNlcHRpb24KIApAQCAtMjI3LDExICsyMzYsMTQg QEAgRU5UUlkoaW50ODBfZGlyZWN0X3RyYXApCiAgICAgICAgIHB1c2hxICQwCiAgICAgICAgIG1v dmwgICQweDgwLCA0KCVyc3ApCiAgICAgICAgIFNBVkVfQUxMCisgICAgICAgIG1vdiAgICVyc3As ICVyZGkKIAogICAgICAgICBjbXBiICAkMCx1bnRydXN0ZWRfbXNpKCVyaXApCiBVTkxJS0VMWV9T VEFSVChuZSwgbXNpX2NoZWNrKQorICAgICAgICBwdXNocSAlcmRpCiAgICAgICAgIG1vdmwgICQw eDgwLCVlZGkKICAgICAgICAgY2FsbCAgY2hlY2tfZm9yX3VuZXhwZWN0ZWRfbXNpCisgICAgICAg IHBvcHEgICVyZGkKIFVOTElLRUxZX0VORChtc2lfY2hlY2spCiAKICAgICAgICAgR0VUX0NVUlJF TlQoYngpCkBAIC0yNTMsMzAgKzI2NSwzMiBAQCBpbnQ4MF9zbG93X3BhdGg6CiAgICAgICAgICAq IFNldHVwIGVudHJ5IHZlY3RvciBhbmQgZXJyb3IgY29kZSBhcyBpZiB0aGlzIHdhcyBhIEdQRiBj YXVzZWQgYnkgYW4KICAgICAgICAgICogSURUIGVudHJ5IHdpdGggRFBMPT0wLgogICAgICAgICAg Ki8KLSAgICAgICAgbW92bCAgJCgoMHg4MCA8PCAzKSB8IFg4Nl9YRUNfSURUKSxVUkVHU19lcnJv cl9jb2RlKCVyc3ApCi0gICAgICAgIG1vdmwgICRUUkFQX2dwX2ZhdWx0LFVSRUdTX2VudHJ5X3Zl Y3RvciglcnNwKQorICAgICAgICBtb3ZsICAkKCgweDgwIDw8IDMpIHwgWDg2X1hFQ19JRFQpLFVS RUdTX2Vycm9yX2NvZGUoJXJkaSkKKyAgICAgICAgbW92bCAgJFRSQVBfZ3BfZmF1bHQsVVJFR1Nf ZW50cnlfdmVjdG9yKCVyZGkpCiAgICAgICAgIC8qIEEgR1BGIHdvdWxkbid0IGhhdmUgaW5jcmVt ZW50ZWQgdGhlIGluc3RydWN0aW9uIHBvaW50ZXIuICovCi0gICAgICAgIHN1YnEgICQyLFVSRUdT X3JpcCglcnNwKQorICAgICAgICBzdWJxICAkMixVUkVHU19yaXAoJXJkaSkKICAgICAgICAgam1w ICAgaGFuZGxlX2V4Y2VwdGlvbl9zYXZlZAogCiAvKiBDUkVBVEUgQSBCQVNJQyBFWENFUFRJT04g RlJBTUUgT04gR1VFU1QgT1MgU1RBQ0s6ICAgICAgICAgICAgICAgICAgICAgKi8KIC8qICAgeyBS Q1gsIFIxMSwgW0VSUkNPREUsXSBSSVAsIENTLCBSRkxBR1MsIFJTUCwgU1MgfSAgICAgICAgICAg ICAgICAgICAqLwotLyogJXJkeDogdHJhcF9ib3VuY2UsICVyYng6IHN0cnVjdCB2Y3B1ICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCi0vKiBPbiByZXR1cm4gb25seSAlcmJ4IGFu ZCAlcmR4IGFyZSBndWFyYW50ZWVkIG5vbi1jbG9iYmVyZWQuICAgICAgICAgICAgKi8KKy8qICVy ZHg6IHRyYXBfYm91bmNlLCAlcmJ4OiBzdHJ1Y3QgdmNwdSwgJXJkaTogdXNlcl9yZWdzICAgICAg ICAgICAgICAgICAqLworLyogT24gcmV0dXJuIG9ubHkgJXJkaSwgJXJieCBhbmQgJXJkeCBhcmUg Z3VhcmFudGVlZCBub24tY2xvYmJlcmVkLiAgICAgICovCiBjcmVhdGVfYm91bmNlX2ZyYW1lOgog ICAgICAgICBBU1NFUlRfSU5URVJSVVBUU19FTkFCTEVECiAgICAgICAgIHRlc3RiICRURl9rZXJu ZWxfbW9kZSxWQ1BVX3RocmVhZF9mbGFncyglcmJ4KQogICAgICAgICBqbnogICAxZgogICAgICAg ICAvKiBQdXNoIG5ldyBmcmFtZSBhdCByZWdpc3RlcmVkIGd1ZXN0LU9TIHN0YWNrIGJhc2UuICov CiAgICAgICAgIHB1c2hxICVyZHgKKyAgICAgICAgcHVzaHEgJXJkaQogICAgICAgICBtb3ZxICAl cmJ4LCVyZGkKICAgICAgICAgY2FsbCAgdG9nZ2xlX2d1ZXN0X21vZGUKKyAgICAgICAgcG9wcSAg JXJkaQogICAgICAgICBwb3BxICAlcmR4CiAgICAgICAgIG1vdnEgIFZDUFVfa2VybmVsX3NwKCVy YngpLCVyc2kKICAgICAgICAgam1wICAgMmYKIDE6ICAgICAgLyogSW4ga2VybmVsIGNvbnRleHQg YWxyZWFkeTogcHVzaCBuZXcgZnJhbWUgYXQgZXhpc3RpbmcgJXJzcC4gKi8KLSAgICAgICAgbW92 cSAgVVJFR1NfcnNwKzgoJXJzcCksJXJzaQotICAgICAgICBhbmRiICAkMHhmYyxVUkVHU19jcys4 KCVyc3ApICAgICMgSW5kaWNhdGUga2VybmVsIGNvbnRleHQgdG8gZ3Vlc3QuCisgICAgICAgIG1v dnEgIFVSRUdTX3JzcCglcmRpKSwlcnNpCisgICAgICAgIGFuZGIgICQweGZjLFVSRUdTX2NzKCVy ZGkpICAgICAgIyBJbmRpY2F0ZSBrZXJuZWwgY29udGV4dCB0byBndWVzdC4KIDI6ICAgICAgYW5k cSAgJH4weGYsJXJzaSAgICAgICAgICAgICAgICAjIFN0YWNrIGZyYW1lcyBhcmUgMTYtYnl0ZSBh bGlnbmVkLgogICAgICAgICBtb3ZxICAkSFlQRVJWSVNPUl9WSVJUX1NUQVJUKzEsJXJheAogICAg ICAgICBjbXBxICAlcmF4LCVyc2kKQEAgLTI5NCwxMSArMzA4LDEwIEBAIF9fVU5MSUtFTFlfRU5E KGNyZWF0ZV9ib3VuY2VfZnJhbWVfYmFkX3NwKQogICAgICAgICBfQVNNX0VYVEFCTEUoMGIsIGRv bWFpbl9jcmFzaF9wYWdlX2ZhdWx0XyAjIyBuICMjIHg4KQogCiAgICAgICAgIHN1YnEgICQ3Kjgs JXJzaQotICAgICAgICBtb3ZxICBVUkVHU19zcys4KCVyc3ApLCVyYXgKKyAgICAgICAgbW92cSAg VVJFR1Nfc3MoJXJkaSksJXJheAogICAgICAgICBBU01fU1RBQwotICAgICAgICBtb3ZxICBWQ1BV X2RvbWFpbiglcmJ4KSwlcmRpCiAgICAgICAgIFNUT1JFX0dVRVNUX1NUQUNLKHJheCw2KSAgICAg ICAgIyBTUwotICAgICAgICBtb3ZxICBVUkVHU19yc3ArOCglcnNwKSwlcmF4CisgICAgICAgIG1v dnEgIFVSRUdTX3JzcCglcmRpKSwlcmF4CiAgICAgICAgIFNUT1JFX0dVRVNUX1NUQUNLKHJheCw1 KSAgICAgICAgIyBSU1AKICAgICAgICAgbW92cSAgVkNQVV92Y3B1X2luZm8oJXJieCksJXJheAog ICAgICAgICBwdXNocSBWQ1BVSU5GT191cGNhbGxfbWFzayglcmF4KQpAQCAtMzA3LDIxICszMjAs MjQgQEAgX19VTkxJS0VMWV9FTkQoY3JlYXRlX2JvdW5jZV9mcmFtZV9iYWRfc3ApCiAgICAgICAg IG9yYiAgICVjaCxWQ1BVSU5GT191cGNhbGxfbWFzayglcmF4KQogICAgICAgICBwb3BxICAlcmF4 CiAgICAgICAgIHNobHEgICQzMiwlcmF4ICAgICAgICAgICAgICAgICAgIyBCaXRzIDMyLTM5OiBz YXZlZF91cGNhbGxfbWFzawotICAgICAgICBtb3Z3ICBVUkVHU19jcys4KCVyc3ApLCVheCAgICAg ICMgQml0cyAgMC0xNTogQ1MKKyAgICAgICAgbW92dyAgVVJFR1NfY3MoJXJkaSksJWF4ICAgICAg ICAjIEJpdHMgIDAtMTU6IENTCiAgICAgICAgIFNUT1JFX0dVRVNUX1NUQUNLKHJheCwzKSAgICAg ICAgIyBDUyAvIHNhdmVkX3VwY2FsbF9tYXNrCiAgICAgICAgIHNocnEgICQzMiwlcmF4CiAgICAg ICAgIHRlc3RiICQweEZGLCVhbCAgICAgICAgICAgICAgICAgIyBCaXRzIDAtNzogc2F2ZWRfdXBj YWxsX21hc2sKICAgICAgICAgc2V0eiAgJWNoICAgICAgICAgICAgICAgICAgICAgICAjICVjaCA9 PSAhc2F2ZWRfdXBjYWxsX21hc2sKLSAgICAgICAgbW92bCAgVVJFR1NfZWZsYWdzKzgoJXJzcCks JWVheAorICAgICAgICBtb3ZsICBVUkVHU19lZmxhZ3MoJXJkaSksJWVheAorICAgICAgICBwdXNo cSAlcmRpCisgICAgICAgIG1vdnEgIFZDUFVfZG9tYWluKCVyYngpLCVyZGkKICAgICAgICAgYW5k bCAgJH4oWDg2X0VGTEFHU19JRnxYODZfRUZMQUdTX0lPUEwpLCVlYXgKICAgICAgICAgYWRkYiAg JWNoLCVjaCAgICAgICAgICAgICAgICAgICAjIEJpdCA5IChFRkxBR1MuSUYpCiAgICAgICAgIG9y YiAgICVjaCwlYWggICAgICAgICAgICAgICAgICAgIyBGb2xkIEVGTEFHUy5JRiBpbnRvICVlYXgK ICAgICAgICAgeG9ybCAgJWVjeCwlZWN4ICAgICAgICAgICAgICAgICAjIGlmICggVk1fQVNTSVNU KHYtPmRvbWFpbiwgYXJjaGl0ZWN0dXJhbF9pb3BsKSApCiAgICAgICAgIHRlc3RiICQxIDw8IFZN QVNTVF9UWVBFX2FyY2hpdGVjdHVyYWxfaW9wbCxET01BSU5fdm1fYXNzaXN0KCVyZGkpCisgICAg ICAgIHBvcHEgICVyZGkKICAgICAgICAgY21vdm56bCBWQ1BVX2lvcGwoJXJieCksJWVjeCAgICAj IEJpdHMgMTM6MTIgKEVGTEFHUy5JT1BMKQogICAgICAgICBvcmwgICAlZWN4LCVlYXggICAgICAg ICAgICAgICAgICMgRm9sZCBFRkxBR1MuSU9QTCBpbnRvICVlYXgKICAgICAgICAgU1RPUkVfR1VF U1RfU1RBQ0socmF4LDQpICAgICAgICAjIFJGTEFHUwotICAgICAgICBtb3ZxICBVUkVHU19yaXAr OCglcnNwKSwlcmF4CisgICAgICAgIG1vdnEgIFVSRUdTX3JpcCglcmRpKSwlcmF4CiAgICAgICAg IFNUT1JFX0dVRVNUX1NUQUNLKHJheCwyKSAgICAgICAgIyBSSVAKICAgICAgICAgdGVzdGIgJFRC Rl9FWENFUFRJT05fRVJSQ09ERSxUUkFQQk9VTkNFX2ZsYWdzKCVyZHgpCiAgICAgICAgIGp6ICAg IDFmCkBAIC0zMjksOSArMzQ1LDkgQEAgX19VTkxJS0VMWV9FTkQoY3JlYXRlX2JvdW5jZV9mcmFt ZV9iYWRfc3ApCiAgICAgICAgIG1vdmwgIFRSQVBCT1VOQ0VfZXJyb3JfY29kZSglcmR4KSwlZWF4 CiAgICAgICAgIFNUT1JFX0dVRVNUX1NUQUNLKHJheCwyKSAgICAgICAgIyBFUlJPUiBDT0RFCiAx OgotICAgICAgICBtb3ZxICBVUkVHU19yMTErOCglcnNwKSwlcmF4CisgICAgICAgIG1vdnEgIFVS RUdTX3IxMSglcmRpKSwlcmF4CiAgICAgICAgIFNUT1JFX0dVRVNUX1NUQUNLKHJheCwxKSAgICAg ICAgIyBSMTEKLSAgICAgICAgbW92cSAgVVJFR1NfcmN4KzgoJXJzcCksJXJheAorICAgICAgICBt b3ZxICBVUkVHU19yY3goJXJkaSksJXJheAogICAgICAgICBTVE9SRV9HVUVTVF9TVEFDSyhyYXgs MCkgICAgICAgICMgUkNYCiAgICAgICAgIEFTTV9DTEFDCiAKQEAgLTM0MCwxOSArMzU2LDE5IEBA IF9fVU5MSUtFTFlfRU5EKGNyZWF0ZV9ib3VuY2VfZnJhbWVfYmFkX3NwKQogICAgICAgICAvKiBS ZXdyaXRlIG91ciBzdGFjayBmcmFtZSBhbmQgcmV0dXJuIHRvIGd1ZXN0LU9TIG1vZGUuICovCiAg ICAgICAgIC8qIElBMzIgUmVmLiBWb2wuIDM6IFRGLCBWTSwgUkYgYW5kIE5UIGZsYWdzIGFyZSBj bGVhcmVkIG9uIHRyYXAuICovCiAgICAgICAgIC8qIEFsc28gY2xlYXIgQUM6IGFsaWdubWVudCBj aGVja3Mgc2hvdWxkbid0IHRyaWdnZXIgaW4ga2VybmVsIG1vZGUuICovCi0gICAgICAgIG9ybCAg ICRUUkFQX3N5c2NhbGwsVVJFR1NfZW50cnlfdmVjdG9yKzgoJXJzcCkKKyAgICAgICAgb3JsICAg JFRSQVBfc3lzY2FsbCxVUkVHU19lbnRyeV92ZWN0b3IoJXJkaSkKICAgICAgICAgYW5kbCAgJH4o WDg2X0VGTEFHU19BQ3xYODZfRUZMQUdTX1ZNfFg4Nl9FRkxBR1NfUkZ8XAotICAgICAgICAgICAg ICAgICBYODZfRUZMQUdTX05UfFg4Nl9FRkxBR1NfVEYpLFVSRUdTX2VmbGFncys4KCVyc3ApCi0g ICAgICAgIG1vdnEgICRGTEFUX0tFUk5FTF9TUyxVUkVHU19zcys4KCVyc3ApCi0gICAgICAgIG1v dnEgICVyc2ksVVJFR1NfcnNwKzgoJXJzcCkKLSAgICAgICAgbW92cSAgJEZMQVRfS0VSTkVMX0NT LFVSRUdTX2NzKzgoJXJzcCkKKyAgICAgICAgICAgICAgICAgWDg2X0VGTEFHU19OVHxYODZfRUZM QUdTX1RGKSxVUkVHU19lZmxhZ3MoJXJkaSkKKyAgICAgICAgbW92cSAgJEZMQVRfS0VSTkVMX1NT LFVSRUdTX3NzKCVyZGkpCisgICAgICAgIG1vdnEgICVyc2ksVVJFR1NfcnNwKCVyZGkpCisgICAg ICAgIG1vdnEgICRGTEFUX0tFUk5FTF9DUyxVUkVHU19jcyglcmRpKQogICAgICAgICBtb3ZxICBU UkFQQk9VTkNFX2VpcCglcmR4KSwlcmF4CiAgICAgICAgIHRlc3RxICVyYXgsJXJheAogVU5MSUtF TFlfU1RBUlQoeiwgY3JlYXRlX2JvdW5jZV9mcmFtZV9iYWRfYm91bmNlX2lwKQogICAgICAgICBs ZWEgICBVTkxJS0VMWV9ESVNQQVRDSF9MQUJFTChjcmVhdGVfYm91bmNlX2ZyYW1lX2JhZF9ib3Vu Y2VfaXApKCVyaXApLCAlcmRpCiAgICAgICAgIGptcCAgIGFzbV9kb21haW5fY3Jhc2hfc3luY2hy b25vdXMgIC8qIERvZXMgbm90IHJldHVybiAqLwogX19VTkxJS0VMWV9FTkQoY3JlYXRlX2JvdW5j ZV9mcmFtZV9iYWRfYm91bmNlX2lwKQotICAgICAgICBtb3ZxICAlcmF4LFVSRUdTX3JpcCs4KCVy c3ApCisgICAgICAgIG1vdnEgICVyYXgsVVJFR1NfcmlwKCVyZGkpCiAgICAgICAgIHJldAogCiAg ICAgICAgIC5wdXNoc2VjdGlvbiAuZml4dXAsICJheCIsIEBwcm9nYml0cwpAQCAtMzkxLDE1ICs0 MDcsMTcgQEAgRU5UUlkoZG9tX2NyYXNoX3N5bmNfZXh0YWJsZSkKIAogRU5UUlkoY29tbW9uX2lu dGVycnVwdCkKICAgICAgICAgU0FWRV9BTEwgQ0xBQwotICAgICAgICBDUjRfUFYzMl9SRVNUT1JF CiAgICAgICAgIG1vdnEgJXJzcCwlcmRpCisgICAgICAgIENSNF9QVjMyX1JFU1RPUkUKKyAgICAg ICAgcHVzaHEgJXJkaQogICAgICAgICBjYWxscSBkb19JUlEKKyAgICAgICAgcG9wcSAgJXJkaQog ICAgICAgICBqbXAgcmV0X2Zyb21faW50cgogCiAvKiBObyBzcGVjaWFsIHJlZ2lzdGVyIGFzc3Vt cHRpb25zLiAqLwogRU5UUlkocmV0X2Zyb21faW50cikKICAgICAgICAgR0VUX0NVUlJFTlQoYngp Ci0gICAgICAgIHRlc3RiICQzLFVSRUdTX2NzKCVyc3ApCisgICAgICAgIHRlc3RiICQzLFVSRUdT X2NzKCVyZGkpCiAgICAgICAgIGp6ICAgIHJlc3RvcmVfYWxsX3hlbgogICAgICAgICBtb3ZxICBW Q1BVX2RvbWFpbiglcmJ4KSwlcmF4CiAgICAgICAgIHRlc3RiICQxLERPTUFJTl9pc18zMmJpdF9w diglcmF4KQpAQCAtNDExLDkgKzQyOSwxMCBAQCBFTlRSWShwYWdlX2ZhdWx0KQogLyogTm8gc3Bl Y2lhbCByZWdpc3RlciBhc3N1bXB0aW9ucy4gKi8KIEdMT0JBTChoYW5kbGVfZXhjZXB0aW9uKQog ICAgICAgICBTQVZFX0FMTCBDTEFDCisgICAgICAgIG1vdnEgICVyc3AsICVyZGkKIGhhbmRsZV9l eGNlcHRpb25fc2F2ZWQ6CiAgICAgICAgIEdFVF9DVVJSRU5UKGJ4KQotICAgICAgICB0ZXN0YiAk WDg2X0VGTEFHU19JRj4+OCxVUkVHU19lZmxhZ3MrMSglcnNwKQorICAgICAgICB0ZXN0YiAkWDg2 X0VGTEFHU19JRj4+OCxVUkVHU19lZmxhZ3MrMSglcmRpKQogICAgICAgICBqeiAgICBleGNlcHRp b25fd2l0aF9pbnRzX2Rpc2FibGVkCiAKIC5MY3I0X3B2MzJfb3JpZzoKQEAgLTQzNCw3ICs0NTMs NyBAQCBoYW5kbGVfZXhjZXB0aW9uX3NhdmVkOgogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAoLkxjcjRfcHYzMl9hbHRfZW5kIC0gLkxjcjRfcHYzMl9hbHQpCiAgICAgICAgIC5wb3BzZWN0 aW9uCiAKLSAgICAgICAgdGVzdGIgJDMsVVJFR1NfY3MoJXJzcCkKKyAgICAgICAgdGVzdGIgJDMs VVJFR1NfY3MoJXJkaSkKICAgICAgICAganogICAgLkxjcjRfcHYzMl9kb25lCiAgICAgICAgIGNt cGIgICQwLERPTUFJTl9pc18zMmJpdF9wdiglcmF4KQogICAgICAgICBqZSAgICAuTGNyNF9wdjMy X2RvbmUKQEAgLTQ2MywyMCArNDgyLDIxIEBAIGhhbmRsZV9leGNlcHRpb25fc2F2ZWQ6CiAgICAg ICAgICAqICAgICBnb3RvIGNvbXBhdF90ZXN0X2FsbF9ldmVudHM7CiAgICAgICAgICAqLwogICAg ICAgICBtb3YgICAkUEZFQ19wYWdlX3ByZXNlbnQsJWFsCi0gICAgICAgIGNtcGIgICRUUkFQX3Bh Z2VfZmF1bHQsVVJFR1NfZW50cnlfdmVjdG9yKCVyc3ApCisgICAgICAgIGNtcGIgICRUUkFQX3Bh Z2VfZmF1bHQsVVJFR1NfZW50cnlfdmVjdG9yKCVyZGkpCiAgICAgICAgIGpuZSAgIC5MY3I0X3B2 MzJfZG9uZQotICAgICAgICB4b3IgICBVUkVHU19lcnJvcl9jb2RlKCVyc3ApLCVlYXgKKyAgICAg ICAgeG9yICAgVVJFR1NfZXJyb3JfY29kZSglcmRpKSwlZWF4CiAgICAgICAgIHRlc3QgICR+KFBG RUNfd3JpdGVfYWNjZXNzfFBGRUNfaW5zbl9mZXRjaCksJWVheAogICAgICAgICBqeiAgICBjb21w YXRfdGVzdF9hbGxfZXZlbnRzCiAuTGNyNF9wdjMyX2RvbmU6CiAgICAgICAgIHN0aQotMTogICAg ICBtb3ZxICAlcnNwLCVyZGkKLSAgICAgICAgbW92emJsIFVSRUdTX2VudHJ5X3ZlY3RvciglcnNw KSwlZWF4CisxOiAgICAgIG1vdnpibCBVUkVHU19lbnRyeV92ZWN0b3IoJXJkaSksJWVheAogICAg ICAgICBsZWFxICBleGNlcHRpb25fdGFibGUoJXJpcCksJXJkeAogICAgICAgICBQRVJGQ19JTkNS KGV4Y2VwdGlvbnMsICVyYXgsICVyYngpCisgICAgICAgIHB1c2hxICVyZGkKICAgICAgICAgbW92 ICAgKCVyZHgsICVyYXgsIDgpLCAlcmR4CiAgICAgICAgIElORElSRUNUX0NBTEwgJXJkeAotICAg ICAgICB0ZXN0YiAkMyxVUkVHU19jcyglcnNwKQorICAgICAgICBwb3BxICAlcmRpCisgICAgICAg IHRlc3RiICQzLFVSRUdTX2NzKCVyZGkpCiAgICAgICAgIGp6ICAgIHJlc3RvcmVfYWxsX3hlbgog ICAgICAgICBsZWFxICBWQ1BVX3RyYXBfYm91bmNlKCVyYngpLCVyZHgKICAgICAgICAgbW92cSAg VkNQVV9kb21haW4oJXJieCksJXJheApAQCAtNDkxLDEwICs1MTEsMTEgQEAgaGFuZGxlX2V4Y2Vw dGlvbl9zYXZlZDoKIAogLyogTm8gc3BlY2lhbCByZWdpc3RlciBhc3N1bXB0aW9ucy4gKi8KIGV4 Y2VwdGlvbl93aXRoX2ludHNfZGlzYWJsZWQ6Ci0gICAgICAgIHRlc3RiICQzLFVSRUdTX2NzKCVy c3ApICAgICAgICAgIyBpbnRlcnJ1cHRzIGRpc2FibGVkIG91dHNpZGUgWGVuPworICAgICAgICB0 ZXN0YiAkMyxVUkVHU19jcyglcmRpKSAgICAgICAgICMgaW50ZXJydXB0cyBkaXNhYmxlZCBvdXRz aWRlIFhlbj8KICAgICAgICAgam56ICAgRkFUQUxfZXhjZXB0aW9uX3dpdGhfaW50c19kaXNhYmxl ZAotICAgICAgICBtb3ZxICAlcnNwLCVyZGkKKyAgICAgICAgLyogJXJzcCA9PSAlcmRpIGhlcmUh ICovCiAgICAgICAgIGNhbGwgIHNlYXJjaF9wcmVfZXhjZXB0aW9uX3RhYmxlCisgICAgICAgIG1v dnEgICVyc3AsJXJkaQogICAgICAgICB0ZXN0cSAlcmF4LCVyYXggICAgICAgICAgICAgICAgICMg bm8gZml4dXAgY29kZSBmb3IgZmF1bHRpbmcgRUlQPwogICAgICAgICBqeiAgICAxYgogICAgICAg ICBtb3ZxICAlcmF4LFVSRUdTX3JpcCglcnNwKQpAQCAtNTEzLDcgKzUzNCw2IEBAIGV4Y2VwdGlv bl93aXRoX2ludHNfZGlzYWJsZWQ6CiAvKiBObyBzcGVjaWFsIHJlZ2lzdGVyIGFzc3VtcHRpb25z LiAqLwogRkFUQUxfZXhjZXB0aW9uX3dpdGhfaW50c19kaXNhYmxlZDoKICAgICAgICAgeG9ybCAg JWVzaSwlZXNpCi0gICAgICAgIG1vdnEgICVyc3AsJXJkaQogICAgICAgICBjYWxsICBmYXRhbF90 cmFwCiAgICAgICAgIEJVRyAgIC8qIGZhdGFsX3RyYXAoKSBzaG91bGRuJ3QgcmV0dXJuLiAqLwog CkBAIC02MDQsMjUgKzYyNCwzMiBAQCBFTlRSWShubWkpCiAgICAgICAgIG1vdmwgICRUUkFQX25t aSw0KCVyc3ApCiBoYW5kbGVfaXN0X2V4Y2VwdGlvbjoKICAgICAgICAgU0FWRV9BTEwgQ0xBQwor ICAgICAgICBtb3ZxICAlcnNwLCAlcmRpCiAgICAgICAgIENSNF9QVjMyX1JFU1RPUkUKLSAgICAg ICAgdGVzdGIgJDMsVVJFR1NfY3MoJXJzcCkKKyAgICAgICAgbW92cSAgJXJkaSwlcmR4CisgICAg ICAgIG1vdnEgICVyZGksJXJieAorICAgICAgICBzdWJxICAlcnNwLCVyYngKKyAgICAgICAgdGVz dGIgJDMsVVJFR1NfY3MoJXJkaSkKICAgICAgICAganogICAgMWYKICAgICAgICAgLyogSW50ZXJy dXB0ZWQgZ3Vlc3QgY29udGV4dC4gQ29weSB0aGUgY29udGV4dCB0byBzdGFjayBib3R0b20uICov CiAgICAgICAgIEdFVF9DUFVJTkZPX0ZJRUxEKGd1ZXN0X2NwdV91c2VyX3JlZ3MsZGkpCi0gICAg ICAgIG1vdnEgICVyc3AsJXJzaQorICAgICAgICBhZGRxICAlcmJ4LCVyZGkKKyAgICAgICAgbW92 cSAgJXJkeCwlcnNpCiAgICAgICAgIG1vdmwgICRVUkVHU19rZXJuZWxfc2l6ZW9mLzgsJWVjeAog ICAgICAgICBtb3ZxICAlcmRpLCVyc3AKICAgICAgICAgcmVwICAgbW92c3EKLTE6ICAgICAgbW92 cSAgJXJzcCwlcmRpCi0gICAgICAgIG1vdnpibCBVUkVHU19lbnRyeV92ZWN0b3IoJXJzcCksJWVh eAorICAgICAgICBtb3ZxICAlcmR4LCVyZGkKKzE6ICAgICAgbW92emJsIFVSRUdTX2VudHJ5X3Zl Y3RvciglcmRpKSwlZWF4CiAgICAgICAgIGxlYXEgIGV4Y2VwdGlvbl90YWJsZSglcmlwKSwlcmR4 CisgICAgICAgIHB1c2hxICVyZGkKICAgICAgICAgbW92ICAgKCVyZHgsICVyYXgsIDgpLCAlcmR4 CiAgICAgICAgIElORElSRUNUX0NBTEwgJXJkeAotICAgICAgICBjbXBiICAkVFJBUF9ubWksVVJF R1NfZW50cnlfdmVjdG9yKCVyc3ApCisgICAgICAgIHBvcHEgICVyZGkKKyAgICAgICAgY21wYiAg JFRSQVBfbm1pLFVSRUdTX2VudHJ5X3ZlY3RvciglcmRpKQogICAgICAgICBqbmUgICByZXRfZnJv bV9pbnRyCiAKICAgICAgICAgLyogV2Ugd2FudCB0byBnZXQgc3RyYWlnaHQgdG8gdGhlIElSRVQg b24gdGhlIE5NSSBleGl0IHBhdGguICovCi0gICAgICAgIHRlc3RiICQzLFVSRUdTX2NzKCVyc3Ap CisgICAgICAgIHRlc3RiICQzLFVSRUdTX2NzKCVyZGkpCiAgICAgICAgIGp6ICAgIHJlc3RvcmVf YWxsX3hlbgogICAgICAgICBHRVRfQ1VSUkVOVChieCkKICAgICAgICAgLyogU2VuZCBhbiBJUEkg dG8gb3Vyc2VsdmVzIHRvIGNvdmVyIGZvciB0aGUgbGFjayBvZiBldmVudCBjaGVja2luZy4gKi8K QEAgLTYzMSw4ICs2NTgsMTAgQEAgaGFuZGxlX2lzdF9leGNlcHRpb246CiAgICAgICAgIGxlYXEg IGlycV9zdGF0K0lSUVNUQVRfc29mdGlycV9wZW5kaW5nKCVyaXApLCVyY3gKICAgICAgICAgY21w bCAgJDAsKCVyY3gsJXJheCwxKQogICAgICAgICBqZSAgICAxZgorICAgICAgICBwdXNocSAlcmRp CiAgICAgICAgIG1vdmwgICRFVkVOVF9DSEVDS19WRUNUT1IsJWVkaQogICAgICAgICBjYWxsICBz ZW5kX0lQSV9zZWxmCisgICAgICAgIHBvcHEgICVyZGkKIDE6ICAgICAgbW92cSAgVkNQVV9kb21h aW4oJXJieCksJXJheAogICAgICAgICBjbXBiICAkMCxET01BSU5faXNfMzJiaXRfcHYoJXJheCkK ICAgICAgICAgamUgICAgcmVzdG9yZV9hbGxfZ3Vlc3QKZGlmZiAtLWdpdCBhL3hlbi9pbmNsdWRl L2FzbS14ODYvY3VycmVudC5oIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9jdXJyZW50LmgKaW5kZXgg ODk4NDk5MjllYi4uYzdhY2JiOTdkYSAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUvYXNtLXg4Ni9j dXJyZW50LmgKKysrIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9jdXJyZW50LmgKQEAgLTk1LDkgKzk1 LDEzIEBAIHVuc2lnbmVkIGxvbmcgZ2V0X3N0YWNrX2R1bXBfYm90dG9tICh1bnNpZ25lZCBsb25n IHNwKTsKICAgICAoeyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIFwKICAgICAgICAgX19hc21fXyBfX3ZvbGF0aWxlX18gKCAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICAgICAgICAgICJt b3YgJTAsJSUiX19PUCJzcDsiICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IFwKLSAgICAgICAgICAgIENIRUNLX0ZPUl9MSVZFUEFUQ0hfV09SSyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgXAotICAgICAgICAgICAgICJqbXAgJWMxIiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAgICAgICAgICAgOiA6 ICJyIiAoZ3Vlc3RfY3B1X3VzZXJfcmVncygpKSwgImkiIChfX2ZuKSA6ICJtZW1vcnkiICk7ICAg XAorICAgICAgICAgICAgIm1vdiAlMSwlJSJfX09QImRpOyIgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgInB1c2hxICUlIl9fT1AiZGk7IiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgQ0hFQ0tf Rk9SX0xJVkVQQVRDSF9XT1JLICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAor ICAgICAgICAgICAgInBvcHEgJSUiX19PUCJkaTsiICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgImptcCAlYzIiICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgOiA6ICJyIiAo Z2V0X2NwdV9pbmZvKCkpLCAiciIgKGd1ZXN0X2NwdV91c2VyX3JlZ3MoKSksICAgICAgXAorICAg ICAgICAgICAgICAgICJpIiAoX19mbikgOiAibWVtb3J5IiApOyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgXAogICAgICAgICB1bnJlYWNoYWJsZSgpOyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgIH0pCiAKLS0gCjIuMTMuNgoKCl9f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fClhlbi1kZXZlbCBt YWlsaW5nIGxpc3QKWGVuLWRldmVsQGxpc3RzLnhlbnByb2plY3Qub3JnCmh0dHBzOi8vbGlzdHMu eGVucHJvamVjdC5vcmcvbWFpbG1hbi9saXN0aW5mby94ZW4tZGV2ZWw=