From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (qmail 26325 invoked from network); 2 May 2020 01:26:21 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 2 May 2020 01:26:21 -0000 Content-Type: multipart/mixed; boundary="===============8440972918407827596==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_=5BWIP=5D_gnome_3=2E36_updates?= To: ml@inbox.vuxu.org From: mnabid Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Sat, 02 May 2020 03:26:21 +0200 List-Id: Message-ID: <20200502012621.Z6kjE4iuDF7HaDHvs0Wey_QjRS1YN38LGF-BWkYCoC4@z> GitHub notification mails are now in MIME to allow UTF8. --===============8440972918407827596== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgbW5hYmlkIGFnYWluc3QgbWFzdGVy IG9uIHRoZSB2b2lkLXBhY2thZ2VzIHJlcG9zaXRvcnkKCmh0dHBzOi8vZ2l0aHViLmNvbS9tbmFi aWQvdm9pZC1wYWNrYWdlcyBnZWRpdApodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lk LXBhY2thZ2VzL3B1bGwvMjEzODIKCltXSVBdIGdub21lIDMuMzYgdXBkYXRlcwpXYWl0aW5nIGZv ciBgcGlwZXdpcmUtMC4zLjRgIHRvIGJlIG1lcmdlZCAoIzIwNDEzKSAuCgpBIHBhdGNoIGZpbGUg ZnJvbSBodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lkLXBhY2thZ2VzL3B1bGwvMjEz ODIucGF0Y2ggaXMgYXR0YWNoZWQ= --===============8440972918407827596== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-gedit-21382.patch" RnJvbSBkMjIxYzQwNGNmZGEzZmY4NTgyYzI5OWQzZTE0Y2M2Mjc4ZWI4MjI0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBX ZWQsIDI5IEFwciAyMDIwIDE1OjQ5OjE2ICswNjAwClN1YmplY3Q6IFtQQVRDSCAwMS8zNl0gZ25v bWUtZGVza3RvcDogdXBkYXRlIHRvIDMuMzYuMi4KCltjaSBza2lwXQotLS0KIGNvbW1vbi9zaGxp YnMgICAgICAgICAgICAgICAgICB8IDIgKy0KIHNyY3BrZ3MvZ25vbWUtZGVza3RvcC90ZW1wbGF0 ZSB8IDggKysrKy0tLS0KIDIgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA1IGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL2NvbW1vbi9zaGxpYnMgYi9jb21tb24vc2hsaWJzCmluZGV4 IDlmYjc0MDQzZTlmLi5jMGZkYzJlMDFhOSAxMDA2NDQKLS0tIGEvY29tbW9uL3NobGlicworKysg Yi9jb21tb24vc2hsaWJzCkBAIC0xMTc2LDcgKzExNzYsNyBAQCBsaWJnc3RiYXNlY2FtZXJhYmlu c3JjLTEuMC5zby4wIGdzdC1wbHVnaW5zLWJhZDEtMS4wLjBfMQogbGliZ3N0Y29kZWNwYXJzZXJz LTEuMC5zby4wIGdzdC1wbHVnaW5zLWJhZDEtMS4wLjBfMQogbGliZ3N0cGxheWVyLTEuMC5zby4w IGdzdC1wbHVnaW5zLWJhZDEtMS4wLjBfMQogbGliZ3N0Z2wtMS4wLnNvLjAgZ3N0LXBsdWdpbnMt YmFzZTEtMS4xNC4wXzEKLWxpYmdub21lLWRlc2t0b3AtMy5zby4xOCBnbm9tZS1kZXNrdG9wLTMu MzQuMF8xCitsaWJnbm9tZS1kZXNrdG9wLTMuc28uMTkgZ25vbWUtZGVza3RvcC0zLjM2LjJfMQog bGlic2VjcmV0LTEuc28uMCBsaWJzZWNyZXQtMC4xMF8xCiBsaWJnd2VhdGhlci0zLnNvLjE2IGxp Ymd3ZWF0aGVyLTMuMzQuMF8xCiBsaWJnbm9tZWtiZC5zby44IGxpYmdub21la2JkLTMuNi4wXzEK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtZGVza3RvcC90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25v bWUtZGVza3RvcC90ZW1wbGF0ZQppbmRleCA5OTJjYjFmZjE2YS4uYzFhNzQwOGMyMDcgMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtZGVza3RvcC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21l LWRlc2t0b3AvdGVtcGxhdGUKQEAgLTEsMTEgKzEsMTEgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3Ig J2dub21lLWRlc2t0b3AnCiBwa2duYW1lPWdub21lLWRlc2t0b3AKLXZlcnNpb249My4zNC4xCit2 ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVzb24KIGJ1aWxkX2hlbHBl cj0iZ2lyIgotY29uZmlndXJlX2FyZ3M9Ii1EZ25vbWUtZGlzdHJpYnV0b3I9Vm9pZExpbnV4IC1E dWRldj1lbmFibGVkCi0gLURpbnRyb3NwZWN0aW9uPSQodm9wdF9pZiBnaXIgdHJ1ZSBmYWxzZSki Citjb25maWd1cmVfYXJncz0iLURnbm9tZV9kaXN0cmlidXRvcj1Wb2lkTGludXggLUR1ZGV2PWVu YWJsZWQKKyAtRHN5c3RlbWQ9ZGlzYWJsZWQgLURpbnRyb3NwZWN0aW9uPSQodm9wdF9pZiBnaXIg dHJ1ZSBmYWxzZSkiCiBob3N0bWFrZWRlcGVuZHM9ImdldHRleHQgaXRzdG9vbCBwa2ctY29uZmln IGdsaWItZGV2ZWwiCiBtYWtlZGVwZW5kcz0iZXVkZXYtbGlidWRldi1kZXZlbCBnc2V0dGluZ3Mt ZGVza3RvcC1zY2hlbWFzLWRldmVsIGd0ayszLWRldmVsCiAgaXNvLWNvZGVzIGxpYmdsaWItZGV2 ZWwgbGlic2VjY29tcC1kZXZlbCBsaWJYMTEtZGV2ZWwgbGliWGV4dC1kZXZlbApAQCAtMTYsNyAr MTYsNyBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+Igog bGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciwgTEdQTC0yLjEtb3ItbGF0ZXIiCiBob21lcGFnZT0i aHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLWRlc2t0b3AiCiBkaXN0ZmlsZXM9 IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJz aW9ufS50YXIueHoiCi1jaGVja3N1bT1jMWRiZWI1NjY2ZGFkMjcxNjZjNzY5ZTQ4ZTJhYjQxZGQ1 ZWQ3NDcxOGVhMzVlYjU3Yzg0ODg3OTA2NjJkYzVhCitjaGVja3N1bT0zOGY5OTRkY2IxZTFhZTA5 M2QxYzkyOWM3YWNjNGY4OGUzOTExMWU0M2I1ZmRjMTMxMjViMGY2ZTIzMTFjNzg5CiAKIGJ1aWxk X29wdGlvbnM9ImdpciIKIGJ1aWxkX29wdGlvbnNfZGVmYXVsdD0iZ2lyIgoKRnJvbSBhY2Q4NjFj NzdlZTZjN2E0MGNhNWExYWY3NzBhNGMzMTQxODc2NWUxIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBNb24sIDI3IEFwciAy MDIwIDEyOjIwOjE1ICswNjAwClN1YmplY3Q6IFtQQVRDSCAwMi8zNl0gbmF1dGlsdXM6IHVwZGF0 ZSB0byAzLjM2LjIuCgpbY2kgc2tpcF0KLS0tCiBzcmNwa2dzL25hdXRpbHVzL3RlbXBsYXRlIHwg NiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9uYXV0aWx1cy90ZW1wbGF0ZSBiL3NyY3BrZ3MvbmF1dGls dXMvdGVtcGxhdGUKaW5kZXggNTM3YTg1MTk3M2YuLjEwMTA4NzNmNGYwIDEwMDY0NAotLS0gYS9z cmNwa2dzL25hdXRpbHVzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbmF1dGlsdXMvdGVtcGxhdGUK QEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICduYXV0aWx1cycKIHBrZ25hbWU9 bmF1dGlsdXMKLXZlcnNpb249My4zNi4xLjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBi dWlsZF9zdHlsZT1tZXNvbgogYnVpbGRfaGVscGVyPSJnaXIiCkBAIC0xNiw4ICsxNiw4IEBAIHNo b3J0X2Rlc2M9IkdOT01FIGZpbGUgbWFuYWdlciIKIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxn b3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyLCBMR1BMLTIu MS1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL05hdXRpbHVzIgot ZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uOjo0fS8ke3BrZ25h bWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZjkyNTJmNTA4MjExZDlmMzY4YTQ5ZGI2 OTc4OTBmODk1ZDA4MGYwOTU5MGFlY2FmMzM4MDNhNTE5ZGVmN2JkZQorZGlzdGZpbGVzPSIke0dO T01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0u dGFyLnh6IgorY2hlY2tzdW09MjY2NzNjOTU5OTUwMjQ1MmNmMjk5MzU4NzI5YmU4YjU1NDA2NmE5 YjY3MGQ4OWIyNGUyNDUxNjBkMTU3NzZmYQogCiBidWlsZF9vcHRpb25zPSJnaXIiCiBidWlsZF9v cHRpb25zX2RlZmF1bHQ9ImdpciIKCkZyb20gZjBkMWUwZWE4NTJmODdiMDFjZmU2NWYwYzkxZWE0 NjJjNGNhNmI0NiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4y NUBvdXRsb29rLmNvbT4KRGF0ZTogTW9uLCAyNyBBcHIgMjAyMCAxMjoyNjowNCArMDYwMApTdWJq ZWN0OiBbUEFUQ0ggMDMvMzZdIGdub21lLTIwNDg6IHVwZGF0ZSB0byAzLjM2LjIuCgpbY2kgc2tp cF0KLS0tCiBzcmNwa2dzL2dub21lLTIwNDgvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFu Z2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9nbm9tZS0yMDQ4L3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS0yMDQ4L3RlbXBsYXRlCmluZGV4 IGI1OWNjZjZkZTQ2Li45ODliNmZmMTI1YiAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS0yMDQ4 L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtMjA0OC90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYg QEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLTIwNDgnCiBwa2duYW1lPWdub21lLTIwNDgK LXZlcnNpb249My4zNi4wCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9 bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBnbGliLWRldmVsIGl0c3Rvb2wgcGtnLWNv bmZpZyB2YWxhIgpAQCAtMTEsNCArMTEsNCBAQCBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290 dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTMuMC1vci1sYXRlciIKIGhvbWVwYWdl PSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvMjA0OCIKIGRpc3RmaWxlcz0iJHtHTk9NRV9T SVRFfS9nbm9tZS0yMDQ4LyR7dmVyc2lvbiUuKn0vZ25vbWUtMjA0OC0ke3ZlcnNpb259LnRhci54 eiIKLWNoZWNrc3VtPTFiNzkwZjE0NWQwYmQ2N2E1MzM5YzE2YTcwNjc0ODA3MzQ0ZWQxMTgzMWU4 YzAyNDVlZDMxOTU2YjRiMzgyODEKK2NoZWNrc3VtPTI5ZGE3NDk5Yzg5ZWU3NGY5ODM0ZThkZTJi ODU2MzMyMzlhNjZlNWM1M2Q5NTZhOGU5NWE5ODdiZGI0YjMzMjEKCkZyb20gMmJlMjkyYWZiOGM4 YTI0MDhhYzc5ZWFhODI0ZWRmYWQ1OTVmZWYwOCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogTW9uLCAyNyBBcHIgMjAyMCAx Mjo0MzowMiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMDQvMzZdIGdub21lLW11c2ljOiB1cGRhdGUg dG8gMy4zNi4yLgoKW2NpIHNraXBdCi0tLQogc3JjcGtncy9nbm9tZS1tdXNpYy90ZW1wbGF0ZSB8 IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLW11c2ljL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9t ZS1tdXNpYy90ZW1wbGF0ZQppbmRleCAxMjUxMTczNjQwNy4uODAyYmNlYTg5MWYgMTAwNjQ0Ci0t LSBhL3NyY3BrZ3MvZ25vbWUtbXVzaWMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1tdXNp Yy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLW11 c2ljJwogcGtnbmFtZT1nbm9tZS1tdXNpYwotdmVyc2lvbj0zLjM2LjEKK3ZlcnNpb249My4zNi4y CiByZXZpc2lvbj0xCiBidWlsZF9oZWxwZXI9ImdpciIKIGJ1aWxkX3N0eWxlPW1lc29uCkBAIC0x NSw1ICsxNSw1IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9y Zz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5n bm9tZS5vcmcvQXBwcy9NdXNpYyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9 LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTdi ODBmNjMwZDE1ODMzNDkzNWE4NzYwMjk2NTUwY2M5MWI1MGQ2MDRmYTY4YjQwMmZlNTE2NWIxNTMx ZWMzMzIKK2NoZWNrc3VtPWFiYWQ0MTNhZWJmYThmODE0MWFiYzcxNjQ4MDllOGM0Njc3ZjhiNjUz OGY4OTIxMjgxOTNlMDk3ZTBlOTgyYTUKIGxpYjMyZGlzYWJsZWQ9eWVzCgpGcm9tIDQ2N2RmNmFi ZTg4NDI1OGY3Y2NiYzFhYjIwZmMzMWQ2MDVmNTM5MDAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx CkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IE1vbiwgMjcgQXByIDIw MjAgMTM6MDI6NDcgKzA2MDAKU3ViamVjdDogW1BBVENIIDA1LzM2XSBkZXZoZWxwOiB1cGRhdGUg dG8gMy4zNi4yLgoKW2NpIHNraXBdCi0tLQogc3JjcGtncy9kZXZoZWxwL3RlbXBsYXRlIHwgNCAr Ky0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvZGV2aGVscC90ZW1wbGF0ZSBiL3NyY3BrZ3MvZGV2aGVscC90ZW1w bGF0ZQppbmRleCBhMWMyZGNiYjc2Mi4uYmE3NWRmZmRjZTcgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mv ZGV2aGVscC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2RldmhlbHAvdGVtcGxhdGUKQEAgLTEsNiAr MSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdkZXZoZWxwJwogcGtnbmFtZT1kZXZoZWxwCi12 ZXJzaW9uPTMuMzYuMQordmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj0i Z2lyIgogYnVpbGRfc3R5bGU9bWVzb24KQEAgLTExLDcgKzExLDcgQEAgbWFpbnRhaW5lcj0iRW5u byBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0 ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL0RldmhlbHAiCiBkaXN0 ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0t JHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT00Y2Y4ZWM5MzAyYmM0YTc5ZTAxYWM1M2JkOWM4 Yjk1YTU5NmY3MWYzNTM1MWY0OGI2MzI2MzIyN2YwOWE4YTNkCitjaGVja3N1bT04YjVhODQzMTll ZmJiMmVmMWJjNDAyMmVlM2VkMmQ2Njc4Nzk0ZWJhMmRmYTk5M2U1MGUwM2Q2ZTdiOTMwYzVlCiAK IGRldmhlbHAtZGV2ZWxfcGFja2FnZSgpIHsKIAlzaG9ydF9kZXNjKz0iIC0gZGV2ZWxvcG1lbnQg ZmlsZXMiCgpGcm9tIGZiNjc0NmZjMjVmMTNlNzA5MDIxMTAxMTc0NDMxYTNhNmIyZTc3ZjMgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+ CkRhdGU6IE1vbiwgMjcgQXByIDIwMjAgMTM6MTc6NDIgKzA2MDAKU3ViamVjdDogW1BBVENIIDA2 LzM2XSBlb2c6IHVwZGF0ZSB0byAzLjM2LjIuCgpbY2kgc2tpcF0KLS0tCiBzcmNwa2dzL2VvZy90 ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2VvZy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZW9n L3RlbXBsYXRlCmluZGV4IGY1MzQwMDAwZWI1Li4yNzYzOTljYTJjYyAxMDA2NDQKLS0tIGEvc3Jj cGtncy9lb2cvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9lb2cvdGVtcGxhdGUKQEAgLTEsNiArMSw2 IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdlb2cnCiBwa2duYW1lPWVvZwotdmVyc2lvbj0zLjM2 LjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0xCiBidWlsZF9oZWxwZXI9ImdpciIKIGJ1aWxk X3N0eWxlPW1lc29uCkBAIC0xNCw3ICsxNCw3IEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxn b3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBh Z2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9FeWVPZkdub21lIgogZGlzdGZpbGVzPSIk e0dOT01FX1NJVEV9L2VvZy8ke3ZlcnNpb24lLip9L2VvZy0ke3ZlcnNpb259LnRhci54eiIKLWNo ZWNrc3VtPWU0NTRhMWE3YWE1ZTNhMzMyMWVhYjAxMTY3NzgxMTBlNWE3YTdiNjNiY2YyMTY3NmVk YTFhN2JlMTg3YzljOTUKK2NoZWNrc3VtPTVjMDU2YjAyOTVhOGUwNmQwOTNiOGZjNjBiMTBlMmE4 YzE5YWJkYjdiZWFlMWM3ZTdlMDU5NWVjZTJlMWI3OGMKIHNobGliX3Byb3ZpZGVzPSJsaWJlb2cu c28iCiBsaWIzMmRpc2FibGVkPXllcwogCgpGcm9tIDBiNGJjNzY4MDZlZmY1NDIxOWNiYmQ2MGJk OWU0M2JjODA0MDI0MTAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFi aWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IE1vbiwgMjcgQXByIDIwMjAgMTM6MzA6NTYgKzA2MDAK U3ViamVjdDogW1BBVENIIDA3LzM2XSBnbm9tZS1tYXBzOiB1cGRhdGUgdG8gMy4zNi4yLgoKW2Np IHNraXBdCi0tLQogc3JjcGtncy9nbm9tZS1tYXBzL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUg Y2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvZ25vbWUtbWFwcy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtbWFwcy90ZW1wbGF0ZQpp bmRleCAwMzAwYmU2MDU5OS4uOWZkZDI3ZGIzYmQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUt bWFwcy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLW1hcHMvdGVtcGxhdGUKQEAgLTEsNiAr MSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1tYXBzJwogcGtnbmFtZT1nbm9tZS1t YXBzCi12ZXJzaW9uPTMuMzYuMQordmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0 eWxlPW1lc29uCiBob3N0bWFrZWRlcGVuZHM9ImdsaWItZGV2ZWwgZ29iamVjdC1pbnRyb3NwZWN0 aW9uIGludGx0b29sIHBrZy1jb25maWcgQXBwU3RyZWFtIgpAQCAtMTIsNSArMTIsNSBAQCBtYWlu dGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BM LTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvTWFw cyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtw a2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTFhMzJlZmQ5NmFkODk4Zjc3YTYz NmQyZDA0NjNkNzU3MDA5YjRiODEyMjU5Yzg5ZmZkY2I5MWQ2YWZjMDUyZjkKK2NoZWNrc3VtPTVi YTIxOWI5ZGU5ODY3OGNlZmE1ODQ4ZjY1MzhkYjhkYmQwN2Y2Yzc0N2ZkNDNhOTkxNjdhMjY2ODc4 YTk3ODQKIG5vY3Jvc3M9ImV2b2x1dGlvbi1kYXRhc2VydmVyIGNyb3NzIGdpciBkb2Vzbid0IHdv cmsiCgpGcm9tIDViYzNjNDYyNDg0NGU1OGIzNWUxMGU2MTAyZWY1NDRkYmNhZDU1MTYgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRh dGU6IE1vbiwgMjcgQXByIDIwMjAgMTQ6Mjc6MTAgKzA2MDAKU3ViamVjdDogW1BBVENIIDA4LzM2 XSBnZWRpdDogdXBkYXRlIHRvIDMuMzYuMi4KCltjaSBza2lwXQotLS0KIHNyY3BrZ3MvZ2VkaXQv dGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nZWRpdC90ZW1wbGF0ZSBiL3NyY3BrZ3Mv Z2VkaXQvdGVtcGxhdGUKaW5kZXggNGUyNzNhYWYxODIuLmUzZWJlYTA1ZWE3IDEwMDY0NAotLS0g YS9zcmNwa2dzL2dlZGl0L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ2VkaXQvdGVtcGxhdGUKQEAg LTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnZWRpdCcKIHBrZ25hbWU9Z2VkaXQK LXZlcnNpb249My4zNi4xCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVpbGRfaGVscGVy PSJnaXIiCiBidWlsZF9zdHlsZT1tZXNvbgpAQCAtMTcsNyArMTcsNyBAQCBtYWludGFpbmVyPSJF bm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1s YXRlciIKIGhvbWVwYWdlPSJodHRwczovL3dpa2kuZ25vbWUub3JnL0FwcHMvR2VkaXQiCiBkaXN0 ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0t JHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT02ZGMzOGVkYTIyN2QxYzM2OGUwMzllOWJmZjQ4 NWQwYmVlOWE0OWQ1Zjk1NjBjMzg3ZWUwOGY1ODE4YTRlMzg3CitjaGVja3N1bT02ODg3NTU0NjQz YzViMWIzODYyYWMzNjRkOTdiN2I1MDIyNGJmZjk1ZTY3NThhZWFhMDhmNGE0ODJiNTU0MTk3CiBz aGxpYl9wcm92aWRlcz0ibGliZ2VkaXQtMy4zNi5zbyIKIHB5dGhvbl92ZXJzaW9uPTMKIAoKRnJv bSA4OWFlNWNlYThhNWQxYTZiZDU0ZjhkNTQ2YzM2ODZkNGQ0ZDk1Y2Q5IE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBNb24s IDI3IEFwciAyMDIwIDE1OjAyOjE0ICswNjAwClN1YmplY3Q6IFtQQVRDSCAwOS8zNl0gZ25vbWUt Y29udGFjdHM6IHVwZGF0ZSB0byAzLjM2LjEuCgpbY2kgc2tpcF0KLS0tCiBzcmNwa2dzL2dub21l LWNvbnRhY3RzL3RlbXBsYXRlIHwgMTAgKysrKysrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDcgaW5z ZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWNv bnRhY3RzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1jb250YWN0cy90ZW1wbGF0ZQppbmRleCAy YTgyMTNhNzI0MC4uNzFkMTVjOGUzZjcgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtY29udGFj dHMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1jb250YWN0cy90ZW1wbGF0ZQpAQCAtMSw3 ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLWNvbnRhY3RzJwogcGtnbmFtZT1n bm9tZS1jb250YWN0cwotdmVyc2lvbj0zLjM0LjAKLXJldmlzaW9uPTIKK3ZlcnNpb249My4zNi4x CityZXZpc2lvbj0xCiB3cmtzcmM9Imdub21lLWNvbnRhY3RzLSR7dmVyc2lvbiUuKn0iCiBidWls ZF9zdHlsZT1tZXNvbgogaG9zdG1ha2VkZXBlbmRzPSJkb2Nib29rLXhzbCBnZXR0ZXh0IGdsaWIt ZGV2ZWwgbGlieHNsdCBwa2ctY29uZmlnIHZhbGEiCkBAIC0xMyw0ICsxMyw4IEBAIG1haW50YWlu ZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4w LW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcvQXBwcy9Db250YWN0 cyIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtw a2duYW1lfS0ke3ZlcnNpb24lLip9LnRhci54eiIKLWNoZWNrc3VtPTk5NjAyZWM4ZDY2MGMxZjNj OTJjYWU2MzU2ZjY0ZjcyZmI2ZGI1OGU1NWJjZTI3YTU5OTMzMGJmN2I2MjJmMTIKK2NoZWNrc3Vt PWVlY2JkMjIwOWQ5M2M4ZDMxZGY5MmY2Y2NmNzkxODNiNDU2YzZlMDdhMjhhZTAxNTVjYmRhMThh YWJkMzZmN2IKKworaWYgWyAiJENST1NTX0JVSUxEIiBdOyB0aGVuCisJaG9zdG1ha2VkZXBlbmRz Kz0iIGZvbGtzLWRldmVsIgorZmkKCkZyb20gYjRmODlmZWU0OGFlMGE2ZTI0ZjczYmNjNDAxNzY5 ODJmNTUwNWFlOSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4y NUBvdXRsb29rLmNvbT4KRGF0ZTogTW9uLCAyNyBBcHIgMjAyMCAxNToyOTozMCArMDYwMApTdWJq ZWN0OiBbUEFUQ0ggMTAvMzZdIGdub21lLWVwdWItdGh1bWJuYWlsZXI6IHVwZGF0ZSB0byAxLjYu CgpbY2kgc2tpcF0KLS0tCiBzcmNwa2dzL2dub21lLWVwdWItdGh1bWJuYWlsZXIvdGVtcGxhdGUg fCA2ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMo LSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWVwdWItdGh1bWJuYWlsZXIvdGVtcGxhdGUg Yi9zcmNwa2dzL2dub21lLWVwdWItdGh1bWJuYWlsZXIvdGVtcGxhdGUKaW5kZXggYjE2ZTcwNTQ3 NWYuLmQ2N2I3N2YxZTQzIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLWVwdWItdGh1bWJuYWls ZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1lcHViLXRodW1ibmFpbGVyL3RlbXBsYXRl CkBAIC0xLDEzICsxLDEzIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1lcHViLXRodW1i bmFpbGVyJwogcGtnbmFtZT1nbm9tZS1lcHViLXRodW1ibmFpbGVyCi12ZXJzaW9uPTEuNQordmVy c2lvbj0xLjYKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGhvc3RtYWtl ZGVwZW5kcz0icGtnLWNvbmZpZyIKIG1ha2VkZXBlbmRzPSJnZGstcGl4YnVmLWRldmVsIGxpYmFy Y2hpdmUtZGV2ZWwgbGlieG1sMi1kZXZlbCIKIHNob3J0X2Rlc2M9IlRodW1ibmFpbGVyIGZvciBF UHViIGFuZCBNT0JJIGJvb2tzIgogbWFpbnRhaW5lcj0iQWxpZiBSYWNobWF3YWRpIDxhcmNoQHN1 Ym9zaXRvLmNvbT4iCi1saWNlbnNlPSJHUEwtMyIKK2xpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIi CiBob21lcGFnZT0iaHR0cHM6Ly9naXQuZ25vbWUub3JnL2Jyb3dzZS9nbm9tZS1lcHViLXRodW1i bmFpbGVyIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9ufS8k e3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09MzA4MjEwZjU4MDAyMTlmNjRj YWU0ODI4ZTU5YmI4ZTZlNGM1M2I4ODgwNDhjZjQ4NzIyMWFlYjQzMzdkNzkxYQorY2hlY2tzdW09 YjUwMjQyMGQ5YjAyZWEwYjBmYzc5ODZlZjVhMDkxYTEyYjIyODZiZTE0ZmVkOWU0NzU5NGZlOWZh MGM1ODk4ZQoKRnJvbSA2ZmFhMjdhY2NmNDU2MmEwNjNiYmUwM2E1Y2VhMzZlYzZhN2FhZGJiIE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29t PgpEYXRlOiBNb24sIDI3IEFwciAyMDIwIDE2OjIzOjQ2ICswNjAwClN1YmplY3Q6IFtQQVRDSCAx MS8zNl0gZ25vbWUtdGVybWluYWw6IHVwZGF0ZSB0byAzLjM2LjIuCgpbY2kgc2tpcF0KLS0tCiBz cmNwa2dzL2dub21lLXRlcm1pbmFsL3RlbXBsYXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2Vk LCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9n bm9tZS10ZXJtaW5hbC90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtdGVybWluYWwvdGVtcGxhdGUK aW5kZXggYmYzZDViY2RkNDIuLjIyZGJjMTFiYWRhIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21l LXRlcm1pbmFsL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtdGVybWluYWwvdGVtcGxhdGUK QEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS10ZXJtaW5hbCcKIHBr Z25hbWU9Z25vbWUtdGVybWluYWwKLXZlcnNpb249My4zNi4xLjEKK3ZlcnNpb249My4zNi4yCiBy ZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS1k aXNhYmxlLXN0YXRpYyAtLXdpdGgtbmF1dGlsdXMtZXh0ZW5zaW9uIgpAQCAtMTMsOCArMTMsOCBA QCBzaG9ydF9kZXNjPSJHTk9NRSB0ZXJtaW5hbCBlbXVsYXRvciBhcHBsaWNhdGlvbiIKIG1haW50 YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwt Mi4wLW9yLWxhdGVyLCBHRkRMLTEuMy1vbmx5IgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9t ZS5vcmcvQXBwcy9UZXJtaW5hbCIKLWRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3BrZ25hbWV9 LyR7dmVyc2lvbjowOjR9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1m M2Q3MDhhMWU3NmQ3N2MxYzg1YjEyNmY2ZTAwMzIyMGExNWQ0YTQ2YTUwZmQ4MDcwZTFhM2FhYmU2 NzhhMzc2CitkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9 LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCitjaGVja3N1bT00MWQxYjZhM2RjOTdjMDY2 ZTI5NGFjZGI3ZjM2OTMxZTgxNjY4NjM4ZGNjOTJmZmEyNWJjYTNkZGViYWNkZjQ2CiBsaWIzMmRp c2FibGVkPXllcwogCiBpZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KCkZyb20gODMyZTU4ZWM5 MWQ1N2FkMjIzNzIzOTU5ZWIwZTIxMDAwODZiMDkxMCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK RnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVHVlLCAyOCBBcHIgMjAy MCAxODoxODowMCArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMTIvMzZdIGdub21lLXBvZGNhc3RzOiB1 cGRhdGUgdG8gMC40LjcuCgpbY2kgc2tpcF0KLS0tCiAuLi4vZ25vbWUtcG9kY2FzdHMvcGF0Y2hl cy9maXgtYnVpbGQucGF0Y2ggICAgfCAyMSAtLS0tLS0tLS0tLS0tLS0tCiBzcmNwa2dzL2dub21l LXBvZGNhc3RzL3RlbXBsYXRlICAgICAgICAgICAgICAgfCAyNCArKysrKysrKysrLS0tLS0tLS0t CiAyIGZpbGVzIGNoYW5nZWQsIDEzIGluc2VydGlvbnMoKyksIDMyIGRlbGV0aW9ucygtKQogZGVs ZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvZ25vbWUtcG9kY2FzdHMvcGF0Y2hlcy9maXgtYnVpbGQu cGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLXBvZGNhc3RzL3BhdGNoZXMvZml4LWJ1 aWxkLnBhdGNoIGIvc3JjcGtncy9nbm9tZS1wb2RjYXN0cy9wYXRjaGVzL2ZpeC1idWlsZC5wYXRj aApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYWViOTU4MWJkNzkuLjAwMDAwMDAwMDAw Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtcG9kY2FzdHMvcGF0Y2hlcy9maXgtYnVpbGQucGF0Y2gKKysr IC9kZXYvbnVsbApAQCAtMSwyMSArMCwwIEBACi0tLS0gcG9kY2FzdHMtZ3RrL3NyYy93aWRnZXRz L2VwaXNvZGUucnMub3JpZwkyMDE5LTA2LTA5IDE1OjU0OjU5Ljc5MzQ1MTA0NyArMDIwMAotKysr IHBvZGNhc3RzLWd0ay9zcmMvd2lkZ2V0cy9lcGlzb2RlLnJzCTIwMTktMDYtMDkgMTU6NTU6MTku MTkxMzExNTEyICswMjAwCi1AQCAtNTU5LDcgKzU1OSw3IEBACi0gICAgICAgICAgICAgLnRvdGFs X3NpemUKLSAgICAgICAgICAgICAuZ2V0X3RleHQoKQotICAgICAgICAgICAgIC5hc19yZWYoKQot LSAgICAgICAgICAgIC5tYXAofHN8IHMudHJpbV9yaWdodF9tYXRjaGVzKCIgTUIiKSkKLSsgICAg ICAgICAgICAubWFwKHxzfCBzLnRyaW1fZW5kX21hdGNoZXMoIiBNQiIpKQotICAgICAgICAgICAg IC5hbmRfdGhlbih8c3wgcy5wYXJzZTo6PGkzMj4oKS5vaygpKQotICAgICAgICAgICAgIC5pc19u b25lKCkKLSAgICAgICAgIHsKLS0tLSBwb2RjYXN0cy1ndGsvc3JjL3dpZGdldHMvc2hvd3Nfdmll dy5ycy5vcmlnCTIwMTktMDYtMDkgMTU6NTQ6MDAuMzIwODc4ODY3ICswMjAwCi0rKysgcG9kY2Fz dHMtZ3RrL3NyYy93aWRnZXRzL3Nob3dzX3ZpZXcucnMJMjAxOS0wNi0wOSAxNTo1NDoxMy4xNTE3 ODY1NjMgKzAyMDAKLUBAIC04MCw3ICs4MCw2IEBACi0gfQotIAotIGZuIG9uX2NoaWxkX2FjdGl2 YXRlKGNoaWxkOiAmZ3RrOjpGbG93Qm94Q2hpbGQsIHNlbmRlcjogJlNlbmRlcjxBY3Rpb24+KSAt PiBSZXN1bHQ8KCksIEVycm9yPiB7Ci0tICAgIHVzZSBndGs6OldpZGdldEV4dDsKLSAKLSAgICAg Ly8gVGhpcyBpcyBzdWNoIGFuIHVnbHkgaGFjay4uLgotICAgICBsZXQgaWQgPSBXaWRnZXRFeHQ6 OmdldF9uYW1lKGNoaWxkKQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1wb2RjYXN0cy90ZW1w bGF0ZSBiL3NyY3BrZ3MvZ25vbWUtcG9kY2FzdHMvdGVtcGxhdGUKaW5kZXggNzJlMmRiNmIxMDku LjNjMjM5ZGY4NDI0IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLXBvZGNhc3RzL3RlbXBsYXRl CisrKyBiL3NyY3BrZ3MvZ25vbWUtcG9kY2FzdHMvdGVtcGxhdGUKQEAgLTEsMjYgKzEsMjggQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLXBvZGNhc3RzJwogcGtnbmFtZT1nbm9tZS1wb2Rj YXN0cwotdmVyc2lvbj0wLjQuNgotcmV2aXNpb249MwordmVyc2lvbj0wLjQuNworcmV2aXNpb249 MQogd3Jrc3JjPSJwb2RjYXN0cy0ke3ZlcnNpb259IgogYnVpbGRfc3R5bGU9bWVzb24KLWhvc3Rt YWtlZGVwZW5kcz0iY2FyZ28gZ2V0dGV4dC1kZXZlbCBnbGliLWRldmVsIHBrZy1jb25maWciCiti dWlsZF9oZWxwZXI9InJ1c3QiCitob3N0bWFrZWRlcGVuZHM9ImNhcmdvIGdldHRleHQgZ2xpYi1k ZXZlbCBwa2ctY29uZmlnIHNxbGl0ZS1kZXZlbCIKIG1ha2VkZXBlbmRzPSJnc3RyZWFtZXIxLWRl dmVsIGdzdC1wbHVnaW5zLWJhZDEtZGV2ZWwgZ3N0LXBsdWdpbnMtYmFzZTEtZGV2ZWwKLSBndGsr My1kZXZlbCBsaWJoYW5keS1kZXZlbCBsaWJyZXNzbC1kZXZlbCBzcWxpdGUtZGV2ZWwgdGV4aW5m byIKKyBndGsrMy1kZXZlbCBsaWJoYW5keS1kZXZlbCBsaWJyZXNzbC1kZXZlbCBzcWxpdGUtZGV2 ZWwgcnVzdC1zdGQiCiBzaG9ydF9kZXNjPSJMaXN0ZW4gdG8geW91ciBmYXZvcml0ZSBwb2RjYXN0 cyIKIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNl bnNlPSJHUEwtMy4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcv QXBwcy9Qb2RjYXN0cyIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL1dvcmxk L3BvZGNhc3RzLy0vYXJjaGl2ZS8ke3ZlcnNpb259L3BvZGNhc3RzLSR7dmVyc2lvbn0udGFyLmd6 IgotY2hlY2tzdW09OTUzYzYzZTgxODRjYTFmNzQ4NDE4ZDhhODI2MmQ0MGVhYTQxMDQ3ZjgxZTJk MmM4NzRhMzAzNWQ5ZDlkMGU0YQotbm9jcm9zcz0icnVzdGMgY2FudCBiZSBjcm9zc2NvbXBpbGVk IGFzIG9mIG5vdyIKLWJyb2tlbj0iZ2V0dGV4dC1ycyBoYXNoIGRvZXMgbm90IGV4aXN0cywgaWYg Zml4ZWQgYnVpbGQgZmFpbHMgaW4gZ2lvIDAuNS4wIgorY2hlY2tzdW09YTlhMWI2MmRkMzU2N2Uz Y2NhMzhlZTI5ZGYyZmFkZDgyZTJmYjVlODM3YjBhMmEyNmVjYWM3NGU5MzA1MTYxYwogCiBleHBv cnQgR0VUVEVYVF9CSU5fRElSPS91c3IvYmluCiBleHBvcnQgR0VUVEVYVF9MSUJfRElSPSIke1hC UFNfQ1JPU1NfQkFTRX0vdXNyL2xpYi9nZXR0ZXh0IgogZXhwb3J0IEdFVFRFWFRfSU5DTFVERV9E SVI9IiR7WEJQU19DUk9TU19CQVNFfS91c3IvaW5jbHVkZSIKIAotcHJlX2J1aWxkKCkgewotCWNh cmdvIHVwZGF0ZSAtLXBhY2thZ2Ugb3BlbnNzbC1zeXMgLS1wcmVjaXNlIDAuOS40NgotCWNhcmdv IHVwZGF0ZSAtLXBhY2thZ2Ugb3BlbnNzbCAtLXByZWNpc2UgMC4xMC4yMgotfQoraWYgWyAiJENS T1NTX0JVSUxEIiBdOyB0aGVuCisJcG9zdF9wYXRjaCgpIHsKKwkJdnNlZCAtaSBzY3JpcHRzL2Nh cmdvLnNoIFwKKwkJCS1lICdzJSIkQ0FSR09fVEFSR0VUX0RJUiIvJSYke1JVU1RfVEFSR0VUfS8l JyBcCisJCQktZSAnL0NBUkdPX0hPTUUvZCcKKwl9CitmaQoKRnJvbSBiNDg2NmNiNmY5YzI4ODcx M2JjOTQwZjA5MDlhZWNhYTI0NjUyODg4IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBO YWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBXZWQsIDI5IEFwciAyMDIwIDE0OjQx OjMyICswNjAwClN1YmplY3Q6IFtQQVRDSCAxMy8zNl0gZ25vbWUtY29udHJvbC1jZW50ZXI6IHVw ZGF0ZSB0byAzLjM2LjEuCgpbY2kgc2tpcF0KLS0tCiBzcmNwa2dzL2dub21lLWNvbnRyb2wtY2Vu dGVyL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAy IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtY29udHJvbC1jZW50ZXIv dGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLWNvbnRyb2wtY2VudGVyL3RlbXBsYXRlCmluZGV4IDBl Mjc4Nzg5OGFlLi5iMTkxM2Y2NmE4YiAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1jb250cm9s LWNlbnRlci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21lLWNvbnRyb2wtY2VudGVyL3RlbXBs YXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtY29udHJvbC1j ZW50ZXInCiBwa2duYW1lPWdub21lLWNvbnRyb2wtY2VudGVyCi12ZXJzaW9uPTMuMzQuMQordmVy c2lvbj0zLjM2LjEKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCiBidWlsZF9oZWxwZXI9 ImdpciIKQEAgLTI0LDcgKzI0LDcgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2 b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0 cHM6Ly9naXRsYWIuZ25vbWUub3JnL0dOT01FL2dub21lLWNvbnRyb2wtY2VudGVyIgogZGlzdGZp bGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7 dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09NWY4MmVjZDU1NTQxMzZjNDYyMjQ4ZWM1MzYzYjgy ZDk1MzU4YjM5ZGZkNjc4NzAwNmQ4MzA3YjQ1MDRlNTE1ZQorY2hlY2tzdW09ZjNlMzJkMWNmZjdl YzJmYzQyYzJkYjJjN2Y2MTI3NGQ0NzZkM2E0OWFhZTEwMDQwZjU3MjE3ZWUyNWQ3YzY5MAogCiBi dWlsZF9vcHRpb25zPSJjaGVlc2UiCiBkZXNjX29wdGlvbl9jaGVlc2U9IkFkZCBzdXBwb3J0IGZv ciBhZGRpbmcgdXNlciBhY2NvdW50IGltYWdlcyB3aXRoIHlvdXIgd2ViY2FtIgoKRnJvbSA2Yzk0 MjI4MWMyNzc3YzYyZGU1MDIxMDE5Nzk5ZGUxZGEyNWRhZDI5IE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBGcmksIDEgTWF5 IDIwMjAgMTA6MTE6NTQgKzA2MDAKU3ViamVjdDogW1BBVENIIDE0LzM2XSBnbm9tZS11c2VyLWRv Y3M6IHVwZGF0ZSB0byAzLjM2LjIuCgpbY2kgc2tpcF0KLS0tCiBzcmNwa2dzL2dub21lLXVzZXIt ZG9jcy90ZW1wbGF0ZSB8IDggKysrKy0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMo KyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS11c2VyLWRvY3Mv dGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLXVzZXItZG9jcy90ZW1wbGF0ZQppbmRleCA0Y2I1NTM5 NmUzNy4uY2E5OTMzNDZlM2EgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtdXNlci1kb2NzL3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtdXNlci1kb2NzL3RlbXBsYXRlCkBAIC0xLDYgKzEs NiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ25vbWUtdXNlci1kb2NzJwogcGtnbmFtZT1nbm9t ZS11c2VyLWRvY3MKLXZlcnNpb249My4zNC4wCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQog YXJjaHM9bm9hcmNoCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCkBAIC0xMCw3ICsxMCw3IEBA IGRlcGVuZHM9InllbHAiCiBzaG9ydF9kZXNjPSJVc2VyIGRvY3VtZW50YXRpb24gZm9yIEdOT01F IgogbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vu c2U9IkNDLUJZLTMuMCIKLWhvbWVwYWdlPSJodHRwczovL2dpdGh1Yi5jb20vR05PTUUvZ25vbWUt dXNlci1kb2NzIgotI2NoYW5nZWxvZz0iaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29t L0dOT01FL2dub21lLXVzZXItZG9jcy9tYXN0ZXIvTkVXUyIKK2hvbWVwYWdlPSJodHRwczovL2dp dGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtdXNlci1kb2NzIgorY2hhbmdlbG9nPSJodHRwczov L2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ25vbWUtdXNlci1kb2NzLy0vcmF3LzMuMzYuMi9ORVdT IgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3Br Z25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09OGY5OTA3ZmYxNWZmZjk3ZGE3NWVj ZTY0NWNjODY3NjY3MDNhYzU0ZDcxNmQyNTU2M2JhNjdmZmVkMWFmMjRlZAorY2hlY2tzdW09MTk4 ZmU0YzgzNjc3NWE1ZGMyNTQzYTZhNTIwZGZiMGFjNWJmMjkyY2RjYjM1OGE1N2M4NmYzNWY3MDVl OTk1OAoKRnJvbSAwMDQxOTcyNjJiOWQ5MjQ3YzBhNWNjZTI5NDQ3NzA5Y2IyZTEwMWFlIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpE YXRlOiBGcmksIDEgTWF5IDIwMjAgMDg6Mzg6MTUgKzA2MDAKU3ViamVjdDogW1BBVENIIDE1LzM2 XSBldm9sdXRpb24tZGF0YS1zZXJ2ZXI6IHVwZGF0ZSB0byAzLjM2LjIuCgpbY2kgc2tpcF0KLS0t CiBzcmNwa2dzL2V2b2x1dGlvbi1kYXRhLXNlcnZlci90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxl IGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9z cmNwa2dzL2V2b2x1dGlvbi1kYXRhLXNlcnZlci90ZW1wbGF0ZSBiL3NyY3BrZ3MvZXZvbHV0aW9u LWRhdGEtc2VydmVyL3RlbXBsYXRlCmluZGV4IDg4NWExMTVmNDliLi5kZWM3MmU3YzQyNCAxMDA2 NDQKLS0tIGEvc3JjcGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIvdGVtcGxhdGUKKysrIGIvc3Jj cGtncy9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICdldm9sdXRpb24tZGF0YS1zZXJ2ZXInCiBwa2duYW1lPWV2b2x1dGlv bi1kYXRhLXNlcnZlcgotdmVyc2lvbj0zLjM2LjEKK3ZlcnNpb249My4zNi4yCiByZXZpc2lvbj0x CiBidWlsZF9zdHlsZT1jbWFrZQogYnVpbGRfaGVscGVyPWdpcgpAQCAtMTcsNyArMTcsNyBAQCBs aWNlbnNlPSJMR1BMLTIuMS1vbmx5IgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5vcmcv QXBwcy9Fdm9sdXRpb24iCiBjaGFuZ2Vsb2c9Imh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50 LmNvbS9HTk9NRS9ldm9sdXRpb24tZGF0YS1zZXJ2ZXIvZ25vbWUtMy0zNi9ORVdTIgogZGlzdGZp bGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7 dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09MTMxMjJiMmVkZGRiOTgzMDYyMDdkMmEzNWQ1Y2Nh ZTI1YTkwNzAyNzY5Y2EwYTBiNTE2NTNiNTk4NDk4Njc5NgorY2hlY2tzdW09OThlMjc0Y2ZlYzE2 Y2VlNmE0YjNiOWM3ODk3ZjZlMTEzNmQwMGU0ZjMxYTBkNjYyMTQ5MjVhYmJhYzc2ZTk3YgogCiBi dWlsZF9vcHRpb25zPSJnaXIiCiBpZiBbIC16ICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KCkZyb20g NmFiM2ViZWE5YjI0ZjczODIxMTI0ZTJiNjA5OWIwNGYwNDljZDQwYSBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogRnJpLCAx IE1heSAyMDIwIDA4OjM4OjIzICswNjAwClN1YmplY3Q6IFtQQVRDSCAxNi8zNl0gZXZvbHV0aW9u OiB1cGRhdGUgdG8gMy4zNi4yLgoKW2NpIHNraXBdCi0tLQogc3JjcGtncy9ldm9sdXRpb24vdGVt cGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9ldm9sdXRpb24vdGVtcGxhdGUgYi9zcmNwa2dz L2V2b2x1dGlvbi90ZW1wbGF0ZQppbmRleCA1NjBlZDkzZGEwMi4uYzljM2FmYjdmNmYgMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3MvZXZvbHV0aW9uL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZXZvbHV0aW9u L3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZXZvbHV0aW9u JwogcGtnbmFtZT1ldm9sdXRpb24KLXZlcnNpb249My4zNi4xCit2ZXJzaW9uPTMuMzYuMgogcmV2 aXNpb249MQogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItREVOQUJMRV9BVVRP QVI9T0ZGIC1ERU5BQkxFX0xJQkNSWVBUVUk9T0ZGIC1ERU5BQkxFX0dUS1NQRUxMPU9GRgpAQCAt MTksNyArMTksNyBAQCBsaWNlbnNlPSJMR1BMLTIuMS1vci1sYXRlciwgTEdQTC0zLjAtb3ItbGF0 ZXIsIEdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9B cHBzL0V2b2x1dGlvbiIKIGNoYW5nZWxvZz0iaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQu Y29tL0dOT01FL2V2b2x1dGlvbi9nbm9tZS0zLTM2L05FV1MiCiBkaXN0ZmlsZXM9IiR7R05PTUVf U0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIu eHoiCi1jaGVja3N1bT04NzNhY2YxZGJlYzM4ZTY3ZTE2OTA2NDY0NWFjM2E5YjlhOTQ0YmQyYjYz MzE2MWRmNmU1ZjA1NzAwZTM2Y2I4CitjaGVja3N1bT1jNTA5NDhjMWEzZGRiMzliNzJhY2Q5M2Rl NzdmOTQ3ODdjZGMxYmVmMzMwYjk2N2JiYjhiNmM3MjMzNDMzMThhCiBzaGxpYl9wcm92aWRlcz0i bGliZXZvbHV0aW9uLWNhbGVuZGFyLnNvIGxpYmV2b2x1dGlvbi11dGlsLnNvIGxpYmVtYWlsLWVu Z2luZS5zbwogIGxpYmV2b2x1dGlvbi1tYWlsLnNvIGxpYmV2b2x1dGlvbi1zaGVsbC5zbyIKIAoK RnJvbSBiNzIzMjIzZDQxMThkOGUyY2Y3YjgzNDM3NDRlY2I3NTUxMWQyNDBkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBG cmksIDEgTWF5IDIwMjAgMDg6Mzg6MjcgKzA2MDAKU3ViamVjdDogW1BBVENIIDE3LzM2XSBldm9s dXRpb24tZXdzOiB1cGRhdGUgdG8gMy4zNi4yLgoKW2NpIHNraXBdCi0tLQogc3JjcGtncy9ldm9s dXRpb24tZXdzL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25z KCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZXZvbHV0aW9uLWV3cy90 ZW1wbGF0ZSBiL3NyY3BrZ3MvZXZvbHV0aW9uLWV3cy90ZW1wbGF0ZQppbmRleCA0ZmY4MTE2NDY2 Yy4uYTE3MWY0YzRhMDggMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZXZvbHV0aW9uLWV3cy90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL2V2b2x1dGlvbi1ld3MvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICdldm9sdXRpb24tZXdzJwogcGtnbmFtZT1ldm9sdXRpb24tZXdz Ci12ZXJzaW9uPTMuMzYuMQordmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxl PWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURMSUJFWEVDX0lOU1RBTExfRElSPS91c3IvbGliL2V2 b2x1dGlvbiIKQEAgLTEyLDQgKzEyLDQgQEAgbGljZW5zZT0iTEdQTC0yLjEtb3ItbGF0ZXIiCiBo b21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL0V2b2x1dGlvbiIKIGNoYW5nZWxv Zz0iaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL0dOT01FL2V2b2x1dGlvbi1ld3Mv Z25vbWUtMy0zNi9ORVdTIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2 ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZDA4ODNj N2QyMjc4MjdjYzVjNDQ2OGI3ZTMxYTNlZTM3MGJjZDdkNDFhNGRiYjk1MGFiNWRiMzZjOTU1MWFj MQorY2hlY2tzdW09MmU0MmU0ODkwNDg3ZjhjN2Y5ZDc3NmE0NDQ0ZGY2ZWZkNTI5OWNhMDAzYTMw MDAyZWI1ZjAyMjA5MWRjMzU5ZAoKRnJvbSA5MTc5ZGE0YTE4MWU2NDQyZjAwN2JlNjE2YWIxNjcz NTRlYWExMTBmIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1 QG91dGxvb2suY29tPgpEYXRlOiBGcmksIDEgTWF5IDIwMjAgMDg6NDE6NTYgKzA2MDAKU3ViamVj dDogW1BBVENIIDE4LzM2XSBmaWxlLXJvbGxlcjogdXBkYXRlIHRvIDMuMzYuMi4KCltjaSBza2lw XQotLS0KIHNyY3BrZ3MvZmlsZS1yb2xsZXIvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFu Z2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9maWxlLXJvbGxlci90ZW1wbGF0ZSBiL3NyY3BrZ3MvZmlsZS1yb2xsZXIvdGVtcGxhdGUKaW5k ZXggNWZiNzZkOTczMDcuLjZhMGMyODBmMGQ1IDEwMDY0NAotLS0gYS9zcmNwa2dzL2ZpbGUtcm9s bGVyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZmlsZS1yb2xsZXIvdGVtcGxhdGUKQEAgLTEsNiAr MSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdmaWxlLXJvbGxlcicKIHBrZ25hbWU9ZmlsZS1y b2xsZXIKLXZlcnNpb249My4zNi4wCit2ZXJzaW9uPTMuMzYuMgogcmV2aXNpb249MQogYnVpbGRf c3R5bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBnbGliLWRldmVsIGl0c3Rvb2wg cGtnLWNvbmZpZyIKQEAgLTEyLDQgKzEyLDQgQEAgbWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdv dHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFn ZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL0ZpbGVSb2xsZXIiCiBkaXN0ZmlsZXM9IiR7 R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9u fS50YXIueHoiCi1jaGVja3N1bT1iOTE0NGRlOGY1MzZmNTgzZWMyOWQ3MDNjMmMxNzBiZjJkMDBj NmMxNjZjZDVlM2Y3ZWZhYmRhNTUxZjEwNDc4CitjaGVja3N1bT0yNjhmN2ZkYWQ4ZDJhNzhkZmVk NWU4MmViODcxMGJhZDM4OWMzMTFiNzIwNjY2ZDZmMDdhMDRlZDUxMDU2YmQyCgpGcm9tIGI2MTNj YmFlZjg5NmQxYmE3ZjljYjQzMTFkOGU5NWNkNTY3MGU5ZmQgTW9uIFNlcCAxNyAwMDowMDowMCAy MDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IEZyaSwgMSBNYXkg MjAyMCAwOToxNDoxMCArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMTkvMzZdIHBvbGFyaTogdXBkYXRl IHRvIDMuMzYuMi4KCltjaSBza2lwXQotLS0KIHNyY3BrZ3MvcG9sYXJpL3RlbXBsYXRlIHwgNCAr Ky0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvcG9sYXJpL3RlbXBsYXRlIGIvc3JjcGtncy9wb2xhcmkvdGVtcGxh dGUKaW5kZXggNWQxYzcxYjBmOTEuLjY4YTBlYjFlYWFlIDEwMDY0NAotLS0gYS9zcmNwa2dzL3Bv bGFyaS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3BvbGFyaS90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYg QEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3BvbGFyaScKIHBrZ25hbWU9cG9sYXJpCi12ZXJzaW9u PTMuMzYuMQordmVyc2lvbj0zLjM2LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCiBo b3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgaXRzdG9vbCBnb2JqZWN0LWludHJvc3BlY3Rpb24g Z2V0dGV4dCIKQEAgLTEzLDUgKzEzLDUgQEAgbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2 b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0 cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL1BvbGFyaSIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRF fS8ke3BrZ25hbWV9LyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIK LWNoZWNrc3VtPWM0YzJhYWE2NmIyMDJlZWMzYWI3ZGJmZTA4YjhiYjczMGU0MGNhZmM3N2NiMGE5 ZWFlMTkwYmYxYzhjMWI1ZTYKK2NoZWNrc3VtPWFjZmNkYjE2NTNiZjJlNDdiZDVhYjg5MWUzOGEw MDAyYzJmOTNjMTYwMzk3MTE5YzNhMGI1YzNlYzU3ZDIwOGEKIG5vY3Jvc3M9InRlbGVwYXRoeS1p ZGxlOiAgIEZpbGUgJy4uL3Rvb2xzL2dsaWItZ2ludGVyZmFjZS1nZW4ucHknLCBsaW5lIDc5MSBT eW50YXhFcnJvcjogaW52YWxpZCBzeW50YXgiCgpGcm9tIGZhZGI3OTJkYzVmZjcyNjdhYWQ3ODYy ZTU4MTZhZTg1YmUzNzM5Y2EgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxt bmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFN1biwgMTkgQXByIDIwMjAgMTY6NTE6NDIgKzA2 MDAKU3ViamVjdDogW1BBVENIIDIwLzM2XSBnbm9tZS1wYW5lbDogdXBkYXRlIHRvIDMuMzYuMS4K CltjaSBza2lwXQotLS0KIGNvbW1vbi9zaGxpYnMgICAgICAgICAgICAgICAgfCAzICsrLQogc3Jj cGtncy9nbm9tZS1wYW5lbC90ZW1wbGF0ZSB8IDYgKysrLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDUg aW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9jb21tb24vc2hsaWJz IGIvY29tbW9uL3NobGlicwppbmRleCBjMGZkYzJlMDFhOS4uZjIzYTYyM2QwNDYgMTAwNjQ0Ci0t LSBhL2NvbW1vbi9zaGxpYnMKKysrIGIvY29tbW9uL3NobGlicwpAQCAtNTY1LDcgKzU2NSw4IEBA IGxpYnBhY2thZ2VraXQtZ2xpYjIuc28uMTggUGFja2FnZUtpdC0xLjEuMTJfMQogbGlicHNsLnNv LjUgbGlicHNsLTAuMjAuMl8xCiBsaWJzb3VwLTIuNC5zby4xIGxpYnNvdXAtMi4zNC4wXzEKIGxp YnNvdXAtZ25vbWUtMi40LnNvLjEgbGlic291cC1nbm9tZS0yLjM0LjBfMQotbGlicGFuZWwtYXBw bGV0LnNvLjMgZ25vbWUtcGFuZWwtMy4zMC4wXzEKK2xpYmdub21lLXBhbmVsLnNvLjAgZ25vbWUt cGFuZWwtMy4zNi4xXzEKK2xpYnBhbmVsLWFwcGxldC5zby4zIGdub21lLXBhbmVsLTMuMzYuMV8x CiBsaWJ1bmludW0uc28uNSBsaWJ1bmludW0tMi43XzEKIGxpYnVuaXF1ZS0zLjAuc28uMCBsaWJ1 bmlxdWUtMi45MS40XzEKIGxpYndlYmtpdDJndGstNC4wLnNvLjM3IHdlYmtpdDJndGstMi42LjJf MQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1wYW5lbC90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25v bWUtcGFuZWwvdGVtcGxhdGUKaW5kZXggNzBmMjNiOGI1NTEuLjliMDBiZmFiNjU4IDEwMDY0NAot LS0gYS9zcmNwa2dzL2dub21lLXBhbmVsL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ25vbWUtcGFu ZWwvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbm9tZS1w YW5lbCcKIHBrZ25hbWU9Z25vbWUtcGFuZWwKLXZlcnNpb249My4zNC4xCi1yZXZpc2lvbj0zCit2 ZXJzaW9uPTMuMzYuMQorcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29u ZmlndXJlX2FyZ3M9ImF4X2N2X3pvbmVpbmZvX3R6ZGlyPS91c3Ivc2hhcmUvem9uZWluZm8iCiBo b3N0bWFrZWRlcGVuZHM9ImdldHRleHQtZGV2ZWwgZ2xpYi1kZXZlbCBpdHN0b29sIHBrZy1jb25m aWcgdHpkYXRhIGdldHRleHQiCkBAIC0xNCw3ICsxNCw3IEBAIG1haW50YWluZXI9IkVubm8gQm9s YW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyLCBH RkRMLTEuMS1vci1sYXRlciwgTEdQTC0yLjEtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93 aWtpLmdub21lLm9yZy9Qcm9qZWN0cy9Hbm9tZVBhbmVsIgogZGlzdGZpbGVzPSIke0dOT01FX1NJ VEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6 IgotY2hlY2tzdW09YTZiYzAyNTUyNTJlZWI0Yjk2NGJjYmU1NWZkNzkwOGI2OWY5MTRjMDYyYzVl YzhkZmY1YWMwMjYyZDI5YjkwZAorY2hlY2tzdW09MWUyMWI3MjZkZDM5NzUyM2FlNzlkMjllYjUz OGJjYWUwOWUzNDI3ZTIzY2NkNjNmMjhlYjI1ZWYzNTUyYWJkMwogcGF0Y2hfYXJncz0iLU5wMSIK IAogZ25vbWUtcGFuZWwtZGV2ZWxfcGFja2FnZSgpIHsKCkZyb20gMTkzYzBmNDBhMGY4YWJkZjMz N2JhZDk1ZDk3NDFhYWQ3OTU0MWRiYSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFm aXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogU3VuLCAxOSBBcHIgMjAyMCAxNzoyNjoz NiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMjEvMzZdIG1ldGFjaXR5OiB1cGRhdGUgdG8gMy4zNi4x LgoKW2NpIHNraXBdCi0tLQogY29tbW9uL3NobGlicyAgICAgICAgICAgICB8IDEgKwogc3JjcGtn cy9tZXRhY2l0eS90ZW1wbGF0ZSB8IDYgKysrLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0 aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9jb21tb24vc2hsaWJzIGIvY29t bW9uL3NobGlicwppbmRleCBmMjNhNjIzZDA0Ni4uNWRiZDdhZWYyMDEgMTAwNjQ0Ci0tLSBhL2Nv bW1vbi9zaGxpYnMKKysrIGIvY29tbW9uL3NobGlicwpAQCAtNTY3LDYgKzU2Nyw3IEBAIGxpYnNv dXAtMi40LnNvLjEgbGlic291cC0yLjM0LjBfMQogbGlic291cC1nbm9tZS0yLjQuc28uMSBsaWJz b3VwLWdub21lLTIuMzQuMF8xCiBsaWJnbm9tZS1wYW5lbC5zby4wIGdub21lLXBhbmVsLTMuMzYu MV8xCiBsaWJwYW5lbC1hcHBsZXQuc28uMyBnbm9tZS1wYW5lbC0zLjM2LjFfMQorbGlibWV0YWNp dHkuc28uMSBtZXRhY2l0eS0zLjM2LjFfMQogbGlidW5pbnVtLnNvLjUgbGlidW5pbnVtLTIuN18x CiBsaWJ1bmlxdWUtMy4wLnNvLjAgbGlidW5pcXVlLTIuOTEuNF8xCiBsaWJ3ZWJraXQyZ3RrLTQu MC5zby4zNyB3ZWJraXQyZ3RrLTIuNi4yXzEKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbWV0YWNpdHkv dGVtcGxhdGUgYi9zcmNwa2dzL21ldGFjaXR5L3RlbXBsYXRlCmluZGV4IDFkNDE5MjY3NjY4Li5i YjdkZmMwYmZjOSAxMDA2NDQKLS0tIGEvc3JjcGtncy9tZXRhY2l0eS90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL21ldGFjaXR5L3RlbXBsYXRlCkBAIC0xLDkgKzEsOSBAQAogIyBUZW1wbGF0ZSBmaWxl IGZvciAnbWV0YWNpdHknCiBwa2duYW1lPW1ldGFjaXR5Ci12ZXJzaW9uPTMuMzAuMQordmVyc2lv bj0zLjM2LjEKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKLWhvc3RtYWtl ZGVwZW5kcz0iZ2V0dGV4dC1kZXZlbCBnbGliLWRldmVsIGl0c3Rvb2wgcGtnLWNvbmZpZyB5ZWxw LXRvb2xzIHplbml0eSIKK2hvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBnbGliLWRldmVsIGl0c3Rv b2wgcGtnLWNvbmZpZyB5ZWxwLXRvb2xzIHplbml0eSIKIG1ha2VkZXBlbmRzPSJnc2V0dGluZ3Mt ZGVza3RvcC1zY2hlbWFzLWRldmVsIGd0ayszLWRldmVsIGxpYmNhbmJlcnJhLWRldmVsCiAgbGli Z2xpYi1kZXZlbCBsaWJndG9wLWRldmVsIGxpYlNNLWRldmVsIGxpYlhjb21wb3NpdGUtZGV2ZWwg bGliWGRhbWFnZS1kZXZlbAogIGxpYlhmaXhlcy1kZXZlbCBsaWJYaW5lcmFtYS1kZXZlbCBsaWJY cmVuZGVyLWRldmVsIGxpYlgxMS1kZXZlbCBwYW5nby1kZXZlbApAQCAtMTQsNCArMTQsNCBAQCBt YWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0i R1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05P TUUvbWV0YWNpdHkiCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vJHtwa2duYW1lfS8ke3ZlcnNp b24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT0wZjEzMTFiN2Fh MzhkZTcxYzY2MDgwYmQyYjc0NGRlMmNkOTU4MGFmY2FlZTljNjA5N2E3ZDNmNWM0MjE3OThhCitj aGVja3N1bT0xMWYwNzY5M2UyYjI2Njg0MDc1OTA2M2E0YmM4MDczNDYwNzBlOGU3ZmVjOGY1M2Nk MDc1N2Y2NjYyYzFiMzIzCgpGcm9tIGY2MmMxOTljYmU2MzAzMjBkYzE3YTJiNTNmNWExZTNmMzlj ZTdjYjMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0 bG9vay5jb20+CkRhdGU6IFdlZCwgMjkgQXByIDIwMjAgMDU6MzI6MTAgKzA2MDAKU3ViamVjdDog W1BBVENIIDIyLzM2XSBnbm9tZS1tZW51czogdXBkYXRlIHRvIDMuMzYuMC4KCltjaSBza2lwXQot LS0KIHNyY3BrZ3MvZ25vbWUtbWVudXMvdGVtcGxhdGUgfCA2ICsrKy0tLQogMSBmaWxlIGNoYW5n ZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dz L2dub21lLW1lbnVzL3RlbXBsYXRlIGIvc3JjcGtncy9nbm9tZS1tZW51cy90ZW1wbGF0ZQppbmRl eCAyOTEwMjEyOWMzOC4uZTc4N2ZiOGRlNmIgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtbWVu dXMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1tZW51cy90ZW1wbGF0ZQpAQCAtMSw3ICsx LDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLW1lbnVzJwogcGtnbmFtZT1nbm9tZS1t ZW51cwotdmVyc2lvbj0zLjMyLjAKLXJldmlzaW9uPTIKK3ZlcnNpb249My4zNi4wCityZXZpc2lv bj0xCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBidWlsZF9oZWxwZXI9ImdpciIKIGNvbmZp Z3VyZV9hcmdzPSItLWRpc2FibGUtc3RhdGljIgpAQCAtMTIsNyArMTIsNyBAQCBtYWludGFpbmVy PSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1v ci1sYXRlciwgTEdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRsYWIuZ25v bWUub3JnL0dOT01FL2dub21lLW1lbnVzIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtn bmFtZX0vJHt2ZXJzaW9uJS4qfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tz dW09Yzg1MGM2NGIyMDc0MjY1ZmU1OWUwOTlhMzQwYjg2ODljZjNkZDQ2NThkYzlmZWRkZDJhYjVl OTVmMWE3NGI3NAorY2hlY2tzdW09ZDkzNDhmMzhiZGU5NTZmYzMyNzUzYjI4YzFjZGUxOWMxNzVi ZmRiZjFmNGQ1YjA2MDAzYjNhYTA5MTUzYmIxZgogCiBidWlsZF9vcHRpb25zPSJnaXIiCiBidWls ZF9vcHRpb25zX2RlZmF1bHQ9ImdpciIKCkZyb20gYzA3YTNiNzE5MzdiZjcyNzUzYmI4ODE5MWU0 ZjY2MGNhNTFhMTAwNiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJp ZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogRnJpLCAxIE1heSAyMDIwIDA2OjAzOjU1ICswNjAwClN1 YmplY3Q6IFtQQVRDSCAyMy8zNl0gZ25vbWUtZmxhc2hiYWNrOiB1cGRhdGUgdG8gMy4zNi4xLgoK W2NpIHNraXBdCi0tLQogLi4uL2dub21lLWZsYXNoYmFjay9wYXRjaGVzL2NvbXBpei0wLjgucGF0 Y2ggIHwgMjggKysrKysrKysrKysrKysrKysrKwogc3JjcGtncy9nbm9tZS1mbGFzaGJhY2svdGVt cGxhdGUgICAgICAgICAgICAgIHwgMjAgKysrKysrKy0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCA0 MCBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3Br Z3MvZ25vbWUtZmxhc2hiYWNrL3BhdGNoZXMvY29tcGl6LTAuOC5wYXRjaAoKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvZ25vbWUtZmxhc2hiYWNrL3BhdGNoZXMvY29tcGl6LTAuOC5wYXRjaCBiL3NyY3Br Z3MvZ25vbWUtZmxhc2hiYWNrL3BhdGNoZXMvY29tcGl6LTAuOC5wYXRjaApuZXcgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uMmEwMGRjZWZmNzAKLS0tIC9kZXYvbnVsbAorKysg Yi9zcmNwa2dzL2dub21lLWZsYXNoYmFjay9wYXRjaGVzL2NvbXBpei0wLjgucGF0Y2gKQEAgLTAs MCArMSwyOCBAQAorZGlmZiAtLWdpdCBjb25maWd1cmUgY29uZmlndXJlCitpbmRleCAyNmNlYTUx Li5kMjQ2M2NjIDEwMDc1NQorLS0tIGNvbmZpZ3VyZQorKysrIGNvbmZpZ3VyZQorQEAgLTIwODQy LDggKzIwODQyLDggQEAgZmkKKyBpZiB0ZXN0ICJ4JHdpdGhfY29tcGl6X3Nlc3Npb24iICE9ICJ4 bm8iOyB0aGVuIDoKKyAKKyAgIGlmIHRlc3QgLW4gIiRQS0dfQ09ORklHIiAmJiBcCistICAgIHsg eyAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99OiBcJFBLR19DT05GSUcgLS1l eGlzdHMgLS1wcmludC1lcnJvcnMgXCJsaWJjb21waXpjb25maWcgPj0gMC45LjE0LjBcIiI7IH0g PiY1CistICAoJFBLR19DT05GSUcgLS1leGlzdHMgLS1wcmludC1lcnJvcnMgImxpYmNvbXBpemNv bmZpZyA+PSAwLjkuMTQuMCIpIDI+JjUKKysgICAgeyB7ICRhc19lY2hvICIkYXNfbWU6JHthc19s aW5lbm8tJExJTkVOT306IFwkUEtHX0NPTkZJRyAtLWV4aXN0cyAtLXByaW50LWVycm9ycyBcImxp YmNvbXBpemNvbmZpZyA+PSAwLjguMTguMFwiIjsgfSA+JjUKKysgICgkUEtHX0NPTkZJRyAtLWV4 aXN0cyAtLXByaW50LWVycm9ycyAibGliY29tcGl6Y29uZmlnID49IDAuOC4xNi4wIikgMj4mNQor ICAgYWNfc3RhdHVzPSQ/CisgICAkYXNfZWNobyAiJGFzX21lOiR7YXNfbGluZW5vLSRMSU5FTk99 OiBcJD8gPSAkYWNfc3RhdHVzIiA+JjUKKyAgIHRlc3QgJGFjX3N0YXR1cyA9IDA7IH07IHRoZW4K K2RpZmYgLS1naXQgY29uZmlndXJlLmFjIGNvbmZpZ3VyZS5hYworaW5kZXggYjZlMTQ3MC4uZDI4 YTcwYiAxMDA2NDQKKy0tLSBjb25maWd1cmUuYWMKKysrKyBjb25maWd1cmUuYWMKK0BAIC0zNDAs NyArMzQwLDcgQEAgQUNfQVJHX1dJVEgoW2NvbXBpei1zZXNzaW9uXSwKKyAgICAgICAgICAgICBb d2l0aF9jb21waXpfc2Vzc2lvbj0iJHdpdGh2YWwiXSwgW3dpdGhfY29tcGl6X3Nlc3Npb249ImF1 dG8iXSkKKyAKKyBBU19JRihbdGVzdCAieCR3aXRoX2NvbXBpel9zZXNzaW9uIiAhPSAieG5vIl0s IFsKKy0gIFBLR19DSEVDS19FWElTVFMoW2xpYmNvbXBpemNvbmZpZyA+PSAwLjkuMTQuMF0sCisr ICBQS0dfQ0hFQ0tfRVhJU1RTKFtsaWJjb21waXpjb25maWcgPj0gMC44LjE2LjBdLAorICAgICAg ICAgICAgICAgICAgICBbZm91bmRfY29tcGl6PSJ5ZXMiXSwgW2ZvdW5kX2NvbXBpej0ibm8iXSkK KyAKKyAgIEFTX0lGKFt0ZXN0ICJ4JGZvdW5kX2NvbXBpeiIgPSAieHllcyJdLCBbCmRpZmYgLS1n aXQgYS9zcmNwa2dzL2dub21lLWZsYXNoYmFjay90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtZmxh c2hiYWNrL3RlbXBsYXRlCmluZGV4IGQzMjEyMGNhYjZmLi5kMTFkZjQwNzI1NyAxMDA2NDQKLS0t IGEvc3JjcGtncy9nbm9tZS1mbGFzaGJhY2svdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbm9tZS1m bGFzaGJhY2svdGVtcGxhdGUKQEAgLTEsMjAgKzEsMjQgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3Ig J2dub21lLWZsYXNoYmFjaycKIHBrZ25hbWU9Z25vbWUtZmxhc2hiYWNrCi12ZXJzaW9uPTMuMzQu MgordmVyc2lvbj0zLjM2LjEKIHJldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj1naXIKIGJ1aWxkX3N0 eWxlPWdudS1jb25maWd1cmUKLWNvbmZpZ3VyZV9hcmdzPSItLWVuYWJsZS1jb21waWxlLXdhcm5p bmdzPW1pbmltdW0iCitjb25maWd1cmVfYXJncz0iLS13aXRoLWNvbXBpei1zZXNzaW9uIC0tZW5h YmxlLWNvbXBpbGUtd2FybmluZ3M9bWluaW11bSIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZp ZyBhdXRvbWFrZSBnbGliLWRldmVsIGdldHRleHQiCi1tYWtlZGVwZW5kcz0iZ3RrKzMtZGV2ZWwg Z3NldHRpbmdzLWRlc2t0b3Atc2NoZW1hcy1kZXZlbAotIGxpYmdsaWItZGV2ZWwgZ2RrLXBpeGJ1 Zi1kZXZlbCB1cG93ZXItZGV2ZWwgaWJ1cy1kZXZlbCBwb2xraXQtZGV2ZWwKLSBwdWxzZWF1ZGlv LWRldmVsIGxpYmNhbmJlcnJhLWRldmVsIGxpYnhjYi1kZXZlbCBsaWJYMTEtZGV2ZWwgcGFuZ28t ZGV2ZWwKLSBsaWJ4a2JmaWxlLWRldmVsIGdub21lLWJsdWV0b290aC1kZXZlbCBnbm9tZS1kZXNr dG9wLWRldmVsIgorbWFrZWRlcGVuZHM9Imd0ayszLWRldmVsIHBhbS1kZXZlbCBnc2V0dGluZ3Mt ZGVza3RvcC1zY2hlbWFzLWRldmVsIGVsb2dpbmQtZGV2ZWwKKyBnZG0tZGV2ZWwgbGliY29tcGl6 Y29uZmlnLWRldmVsIGxpYmdsaWItZGV2ZWwgZ2RrLXBpeGJ1Zi1kZXZlbCB1cG93ZXItZGV2ZWwg aWJ1cy1kZXZlbAorIHBvbGtpdC1kZXZlbCBwdWxzZWF1ZGlvLWRldmVsIGxpYmNhbmJlcnJhLWRl dmVsIGxpYnhjYi1kZXZlbCBsaWJYMTEtZGV2ZWwgcGFuZ28tZGV2ZWwKKyBsaWJ4a2JmaWxlLWRl dmVsIGdub21lLWJsdWV0b290aC1kZXZlbCBnbm9tZS1kZXNrdG9wLWRldmVsIGdub21lLXBhbmVs LWRldmVsIgogZGVwZW5kcz0iZ25vbWUtYmx1ZXRvb3RoIGdub21lLXNlc3Npb24gZ25vbWUtc2V0 dGluZ3MtZGFlbW9uCi0gZ25vbWUtcGFuZWwgZ25vbWUtdGhlbWVzLXN0YW5kYXJkIG1ldGFjaXR5 IgorIGdub21lLXBhbmVsIGdub21lLXRoZW1lcy1leHRyYSBtZXRhY2l0eSIKIHNob3J0X2Rlc2M9 IkdOT01FIDMgc2Vzc2lvbiB3aXRoIHNpbWlsYXIgdXNlciBleHBlcmllbmNlIHRvIHRoZSBHTk9N RSAyLnggc2VyaWVzIgogbWFpbnRhaW5lcj0ic2hpem9uaWMgPHJlYWx0aWF6QGdtYWlsLmNvbT4i CiBsaWNlbnNlPSJHUEwtMy4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9t ZS5vcmcvUHJvamVjdHMvR25vbWVGbGFzaGJhY2siCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0v JHtwa2duYW1lfS8ke3ZlcnNpb24lLip9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1j aGVja3N1bT0zYmU2NTM4OGNkMmM4ZjM5NzQxYmNjMDVkYTg3ZWY0MDAzNTE4M2E5YTM5NTAyZDY3 Njk2MjQyYzJhZWI0NjljCitjaGVja3N1bT01ZDI4OTM5MGQ3NTQ2MzlmNzM3YWI3YmYxNzNmNmQ1 YzgzODg0NTkyNTkzMTRiYjc0NjMxMDk1OThiYjVmMzk5CisKK3ByZV9jb25maWd1cmUoKSB7CisJ YXV0b3JlY29uZiAtdmZpCit9CgpGcm9tIDMwZmI1M2U5NDhkN2FjNDcyMzU5ZTBhMWI3ZDhjZGE4 MGQzODQ0YmMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVA b3V0bG9vay5jb20+CkRhdGU6IFdlZCwgMjkgQXByIDIwMjAgMDY6NTk6NDAgKzA2MDAKU3ViamVj dDogW1BBVENIIDI0LzM2XSBncmFwaGVuZTogdXBkYXRlIHRvIDEuMTAuMC4KCltjaSBza2lwXQot LS0KIHNyY3BrZ3MvZ3JhcGhlbmUvdGVtcGxhdGUgfCAxMCArKysrKy0tLS0tCiAxIGZpbGUgY2hh bmdlZCwgNSBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvZ3JhcGhlbmUvdGVtcGxhdGUgYi9zcmNwa2dzL2dyYXBoZW5lL3RlbXBsYXRlCmluZGV4IGYy ZmU4MWEzZjQ3Li5jYjczODVmZWRiNyAxMDA2NDQKLS0tIGEvc3JjcGtncy9ncmFwaGVuZS90ZW1w bGF0ZQorKysgYi9zcmNwa2dzL2dyYXBoZW5lL3RlbXBsYXRlCkBAIC0xLDEwICsxLDEwIEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICdncmFwaGVuZScKIHBrZ25hbWU9Z3JhcGhlbmUKLXZlcnNpb249 MS44LjIKLXJldmlzaW9uPTIKK3ZlcnNpb249MS4xMC4wCityZXZpc2lvbj0xCiBidWlsZF9zdHls ZT1tZXNvbgogYnVpbGRfaGVscGVyPSJnaXIiCi1jb25maWd1cmVfYXJncz0iLUR0ZXN0cz1mYWxz ZSAtRGJlbmNobWFya3M9ZmFsc2UKK2NvbmZpZ3VyZV9hcmdzPSItRHRlc3RzPWZhbHNlIC1EYXJt X25lb249ZmFsc2UKICAtRGludHJvc3BlY3Rpb249JCh2b3B0X2lmIGdpciB0cnVlIGZhbHNlKSIK IGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyIKIG1ha2VkZXBlbmRzPSJsaWJnbGliLWRldmVs IgpAQCAtMTMsMTMgKzEzLDEzIEBAIG1haW50YWluZXI9IkVubm8gQm9sYW5kIDxnb3R0b3hAdm9p ZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJNSVQiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRodWIuY29t L2ViYXNzaS9ncmFwaGVuZSIKIGRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS9ncmFwaGVuZS8ke3Zl cnNpb24lLip9L2dyYXBoZW5lLSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09YjNmY2YyMDk5 NmU1N2IxZjRkZjM5NDFjYWFjMTBmMTQzYmIyOTg5MGE0MmY3YTY1NDA3Y2QxOTI3MWZjODlmNwor Y2hlY2tzdW09NDA2ZDk3ZjUxZGQ0Y2E2MWU5MWY4NDY2NmEwMGMzZTk3NmQzZTY2N2NkMjQ4Yjc2 ZDkyZmRiMzVjZTg3NjQ5OQogCiBidWlsZF9vcHRpb25zPSJnaXIiCiBidWlsZF9vcHRpb25zX2Rl ZmF1bHQ9ImdpciIKIAogcG9zdF9pbnN0YWxsKCkgewotCXZsaWNlbnNlIExJQ0VOU0UKKwl2bGlj ZW5zZSBMSUNFTlNFLnR4dCBMSUNFTlNFCiB9CiAKIGdyYXBoZW5lLWRldmVsX3BhY2thZ2UoKSB7 CgpGcm9tIDk1OTNiODc0ZWM0NGE2ODhiOTkxZDljMWE2ZTk5ZDlkNWUxMDIwMWYgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6 IFRodSwgMzAgQXByIDIwMjAgMTE6NTM6MjkgKzA2MDAKU3ViamVjdDogW1BBVENIIDI1LzM2XSBt dXR0ZXI6IHVwZGF0ZSB0byAzLjM2LjIuCgpbY2kgc2tpcF0KLS0tCiBjb21tb24vc2hsaWJzICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAxOCArKysrKysrLS0tLS0tLQogLi4uL3Bh dGNoZXMvZml4LWNvZ2wtZWdsLWluY2x1ZGVzLnBhdGNoICAgICAgIHwgMTEgLS0tLS0tLS0tCiBz cmNwa2dzL211dHRlci90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAgICAgfCAyNCArKysrKysr KystLS0tLS0tLS0tCiAzIGZpbGVzIGNoYW5nZWQsIDIxIGluc2VydGlvbnMoKyksIDMyIGRlbGV0 aW9ucygtKQogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbXV0dGVyL3BhdGNoZXMvZml4LWNv Z2wtZWdsLWluY2x1ZGVzLnBhdGNoCgpkaWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1v bi9zaGxpYnMKaW5kZXggNWRiZDdhZWYyMDEuLjgyN2Y2MjY1ZjY4IDEwMDY0NAotLS0gYS9jb21t b24vc2hsaWJzCisrKyBiL2NvbW1vbi9zaGxpYnMKQEAgLTI5MjYsMTUgKzI5MjYsMTUgQEAgbGli ZGVjb3JhdGlvbi5zby4wIGNvbXBpei1jb3JlLTAuOC4xNF8xCiBsaWJjb21waXpjb25maWcuc28u MCBsaWJjb21waXpjb25maWctMC44LjE0XzEKIGxpYmVtZXJhbGRlbmdpbmUuc28uMCBlbWVyYWxk LTAuOC4xNF8xCiBsaWJoYW5ndWwuc28uMSBsaWJoYW5ndWwtMC4xLjBfMQotbGlibXV0dGVyLTUu c28uMCBtdXR0ZXItMy4zNC4xXzEKLWxpYm11dHRlci1jbHV0dGVyLTUuc28gbXV0dGVyLTMuMzQu MV8xCi1saWJtdXR0ZXItY2x1dHRlci01LnNvLjAgbXV0dGVyLTMuMzQuMV8xCi1saWJtdXR0ZXIt Y29nbC1wYXRoLTUuc28gbXV0dGVyLTMuMzQuMV8xCi1saWJtdXR0ZXItY29nbC1wYXRoLTUuc28u MCBtdXR0ZXItMy4zNC4xXzEKLWxpYm11dHRlci1jb2dsLTUuc28gbXV0dGVyLTMuMzQuMV8xCi1s aWJtdXR0ZXItY29nbC01LnNvLjAgbXV0dGVyLTMuMzQuMV8xCi1saWJtdXR0ZXItY29nbC1wYW5n by01LnNvIG11dHRlci0zLjM0LjFfMQotbGlibXV0dGVyLWNvZ2wtcGFuZ28tNS5zby4wIG11dHRl ci0zLjM0LjFfMQorbGlibXV0dGVyLTYuc28uMCBtdXR0ZXItMy4zNi4xXzEKK2xpYm11dHRlci1j bHV0dGVyLTYuc28gbXV0dGVyLTMuMzYuMV8xCitsaWJtdXR0ZXItY2x1dHRlci02LnNvLjAgbXV0 dGVyLTMuMzYuMV8xCitsaWJtdXR0ZXItY29nbC1wYXRoLTYuc28gbXV0dGVyLTMuMzYuMV8xCits aWJtdXR0ZXItY29nbC1wYXRoLTYuc28uMCBtdXR0ZXItMy4zNi4xXzEKK2xpYm11dHRlci1jb2ds LTYuc28gbXV0dGVyLTMuMzYuMV8xCitsaWJtdXR0ZXItY29nbC02LnNvLjAgbXV0dGVyLTMuMzYu MV8xCitsaWJtdXR0ZXItY29nbC1wYW5nby02LnNvIG11dHRlci0zLjM2LjFfMQorbGlibXV0dGVy LWNvZ2wtcGFuZ28tNi5zby4wIG11dHRlci0zLjM2LjFfMQogbGliZ2VvY2x1ZS0yLnNvLjAgZ2Vv Y2x1ZTItMi40LjRfMQogbGliZ2VwdWIuc28uMCBsaWJnZXB1Yi0wLjRfMQogbGlic2xvcHkuc28u Ny41IHNsb3AtNy41XzEKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbXV0dGVyL3BhdGNoZXMvZml4LWNv Z2wtZWdsLWluY2x1ZGVzLnBhdGNoIGIvc3JjcGtncy9tdXR0ZXIvcGF0Y2hlcy9maXgtY29nbC1l Z2wtaW5jbHVkZXMucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQ5MDk4ODg4 N2MzLi4wMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL211dHRlci9wYXRjaGVzL2ZpeC1jb2dsLWVn bC1pbmNsdWRlcy5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDExICswLDAgQEAKLS0tLSBjb2ds L2NvZ2wvbWVzb24uYnVpbGQJMjAxOS0xMC0wOCAxOToxNToxMC4wMDAwMDAwMDAgKzAyMDAKLSsr KyBjb2dsL2NvZ2wvbWVzb24uYnVpbGQJMjAxOS0xMi0xNiAxNTo0NTo0NC4wMzc2NDA1NDggKzAx MDAKLUBAIC00OCw3ICs0OCw3IEBACi0gYnVpbHRfaGVhZGVycyArPSBbY29nbF9nbF9oZWFkZXJf aF0KLSAKLSBpZiBoYXZlX2VnbAotLSAgY29nbF9lZ2xfaW5jbHVkZXNfc3RyaW5nID0gJyNpbmNs dWRlIDxFR0wvZWdsLmg+XG4jaW5jbHVkZSA8RUdML2VnbGV4dC5oPicKLSsgIGNvZ2xfZWdsX2lu Y2x1ZGVzX3N0cmluZyA9ICcjaW5jbHVkZSA8RUdML2VnbC5oPlxuI2luY2x1ZGUgPEVHTC9lZ2xl eHQuaD5cbiNpbmNsdWRlIDxFR0wvZWdsbWVzYWV4dC5oPicKLSBlbHNlCi0gICBjb2dsX2VnbF9p bmNsdWRlc19zdHJpbmcgPSAnJwotIGVuZGlmCmRpZmYgLS1naXQgYS9zcmNwa2dzL211dHRlci90 ZW1wbGF0ZSBiL3NyY3BrZ3MvbXV0dGVyL3RlbXBsYXRlCmluZGV4IDRlMGJkMzJiNjdkLi5iNjQ4 ZDJmMjMwZSAxMDA2NDQKLS0tIGEvc3JjcGtncy9tdXR0ZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9tdXR0ZXIvdGVtcGxhdGUKQEAgLTEsMzQgKzEsMzQgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3Ig J211dHRlcicKIHBrZ25hbWU9bXV0dGVyCi12ZXJzaW9uPTMuMzQuMQotcmV2aXNpb249MgordmVy c2lvbj0zLjM2LjIKK3JldmlzaW9uPTEKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9 bWVzb24KIGNvbmZpZ3VyZV9hcmdzPSItRGVnbF9kZXZpY2U9dHJ1ZSAtRHVkZXY9dHJ1ZSAtRG5h dGl2ZV9iYWNrZW5kPXRydWUKICAtRHByb2ZpbGVyPWZhbHNlIC1EaW50cm9zcGVjdGlvbj10cnVl IC1EeHdheWxhbmRfcGF0aD0vdXNyL2Jpbi9Yd2F5bGFuZCIKIGhvc3RtYWtlZGVwZW5kcz0iZ2V0 dGV4dCBnbGliLWRldmVsIHBrZy1jb25maWcgemVuaXR5IHdheWxhbmQtZGV2ZWwgeG9yZy1zZXJ2 ZXIiCi1tYWtlZGVwZW5kcz0iZWxvZ2luZC1kZXZlbCBnbGliLWRldmVsIGdub21lLWRlc2t0b3At ZGV2ZWwganNvbi1nbGliLWRldmVsCi0gbGliZ2xpYi1kZXZlbCBsaWJTTS1kZXZlbCBsaWJYdHN0 LWRldmVsIGxpYmNhbmJlcnJhLWRldmVsIGxpYmlucHV0LWRldmVsCi0gTWVzYUxpYi1kZXZlbCBw aXBld2lyZS1kZXZlbCBzdGFydHVwLW5vdGlmaWNhdGlvbi1kZXZlbCB3YXlsYW5kLXByb3RvY29s cwotIGdub21lLXNldHRpbmdzLWRhZW1vbi1kZXZlbCIKK21ha2VkZXBlbmRzPSJlbG9naW5kLWRl dmVsIGdsaWItZGV2ZWwgZ25vbWUtZGVza3RvcC1kZXZlbCBncmFwaGVuZS1kZXZlbAorIGpzb24t Z2xpYi1kZXZlbCBsaWJnbGliLWRldmVsIGxpYlNNLWRldmVsIGxpYlh0c3QtZGV2ZWwgbGliY2Fu YmVycmEtZGV2ZWwKKyBsaWJpbnB1dC1kZXZlbCBNZXNhTGliLWRldmVsIHBpcGV3aXJlLWRldmVs IHN0YXJ0dXAtbm90aWZpY2F0aW9uLWRldmVsCisgd2F5bGFuZC1wcm90b2NvbHMgZ25vbWUtc2V0 dGluZ3MtZGFlbW9uLWRldmVsIgogZGVwZW5kcz0iZGVza3RvcC1maWxlLXV0aWxzIHplbml0eSIK IHNob3J0X2Rlc2M9IkxpZ2h0d2VpZ2h0IEdUSyszIHdpbmRvdyBtYW5hZ2VyIgogbWFpbnRhaW5l cj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAt b3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0cy9NdXR0 ZXIvIgogZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9LyR7cGtnbmFtZX0vJHt2ZXJzaW9uJS4qfS8k e3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09YmExODI2Y2Y4OGJkYjgxZTYz OTQzY2FjMDE0YThlOGJjZjM1ZWMxNzhjNTMyNjQ0MDFmOWM3MmZkZWFiNzU4ZQotc2hsaWJfcHJv dmlkZXM9ImxpYm11dHRlci1jbHV0dGVyLTUuc28gbGlibXV0dGVyLWNvZ2wtNS5zbwotIGxpYm11 dHRlci1jb2dsLXBhbmdvLTUuc28gbGlibXV0dGVyLWNvZ2wtcGF0aC01LnNvIgorY2hlY2tzdW09 NzViMzc2NGViMDU5ZmM5MzVhNTQ1MjNhNjJiZWMxYmVkYjkzNTI4NDA0NmI2ZGFhNTA4NjliMTk1 YWRkZGFmNAorc2hsaWJfcHJvdmlkZXM9ImxpYm11dHRlci1jbHV0dGVyLTYuc28gbGlibXV0dGVy LWNvZ2wtNi5zbworIGxpYm11dHRlci1jb2dsLXBhbmdvLTYuc28gbGlibXV0dGVyLWNvZ2wtcGF0 aC02LnNvIgogCiBtdXR0ZXItZGV2ZWxfcGFja2FnZSgpIHsKLQlkZXBlbmRzPSJnc2V0dGluZ3Mt ZGVza3RvcC1zY2hlbWFzIGd0ayszLWRldmVsIGNsdXR0ZXItZGV2ZWwgbGliWDExLWRldmVsCi0J IGxpYlh0c3QtZGV2ZWwgbXV0dGVyLSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCisJZGVwZW5kcz0i Z3NldHRpbmdzLWRlc2t0b3Atc2NoZW1hcyBncmFwaGVuZS1kZXZlbCBndGsrMy1kZXZlbCBjbHV0 dGVyLWRldmVsCisJIGxpYlgxMS1kZXZlbCBsaWJYdHN0LWRldmVsIG11dHRlci0ke3ZlcnNpb259 XyR7cmV2aXNpb259IgogCXNob3J0X2Rlc2MrPSIgLSBkZXZlbG9wbWVudCBmaWxlcyIKIAlwa2df aW5zdGFsbCgpIHsKIAkJdm1vdmUgdXNyL2luY2x1ZGUKIAkJdm1vdmUgdXNyL2xpYi9wa2djb25m aWcKLQkJdm1vdmUgInVzci9saWIvbXV0dGVyLTUvKi5naXIiCisJCXZtb3ZlICJ1c3IvbGliL211 dHRlci02LyouZ2lyIgogCQl2bW92ZSAidXNyL2xpYi8qLnNvIgogCX0KIH0KCkZyb20gMzY0OTdj Y2UwNDIxY2U0OTRhOTc3NTBjODcxYTJlZDI1NTA4YWMzNCBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKRnJvbTogTG9yZW0gPG5vdGxvcmVtaXBzdW1AcHJvdG9ubWFpbC5jb20+CkRhdGU6IEZyaSwg MSBNYXkgMjAyMCAxODoyNDowMiArMDUzMApTdWJqZWN0OiBbUEFUQ0ggMjYvMzZdIGJ1ZGdpZS1k ZXNrdG9wOiBhZGQgbXV0dGVyLTMuMzYgc3VwcG9ydCBwYXRjaAoKLS0tCiAuLi4vcGF0Y2hlcy9N dXR0ZXItMy4zNS45MC1zdXBwb3J0LTE5MTgucGF0Y2ggfCAxMjcxMyArKysrKysrKysrKysrKysr CiBzcmNwa2dzL2J1ZGdpZS1kZXNrdG9wL3RlbXBsYXRlICAgICAgICAgICAgICAgfCAgICAgOSAr LQogMiBmaWxlcyBjaGFuZ2VkLCAxMjcxOCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQog Y3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvYnVkZ2llLWRlc2t0b3AvcGF0Y2hlcy9NdXR0ZXIt My4zNS45MC1zdXBwb3J0LTE5MTgucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2J1ZGdpZS1k ZXNrdG9wL3BhdGNoZXMvTXV0dGVyLTMuMzUuOTAtc3VwcG9ydC0xOTE4LnBhdGNoIGIvc3JjcGtn cy9idWRnaWUtZGVza3RvcC9wYXRjaGVzL011dHRlci0zLjM1LjkwLXN1cHBvcnQtMTkxOC5wYXRj aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uYmZmMWJhZDAzOWYKLS0t IC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2J1ZGdpZS1kZXNrdG9wL3BhdGNoZXMvTXV0dGVyLTMu MzUuOTAtc3VwcG9ydC0xOTE4LnBhdGNoCkBAIC0wLDAgKzEsMTI3MTMgQEAKK0Zyb20gOWQwOWEx YjE1YmJmNjY3ODBjYzg5ZWZmM2M0Yjg0ZTY2NmIwYmZkYSBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKK0Zyb206IERhdmlkIE1vaGFtbWVkIDxmb3NzZnJlZWRvbUB1c2Vycy5ub3JlcGx5LmdpdGh1 Yi5jb20+CitEYXRlOiBUdWUsIDE4IEZlYiAyMDIwIDA2OjQwOjEyICswMDAwCitTdWJqZWN0OiBb UEFUQ0hdIE11dHRlciAzLjM2IHN1cHBvcnQgKCMxOTE4KQorCisqIEFkZCBtdXR0ZXIgMy4zNS4y IHN1cHBvcnQKKworKiBNdXR0ZXIgY29tcGlsZXIgZmxhZ3MgbmVlZHMgdG8gYmUgc3BlY2lmaWVk IGJlZm9yZSBkZXBlbmRlbmN5IGNoZWNrcworCisqIFJlZ2VuZXJhdGUgdmFwaSBmb3IgMy4zNS45 MAorCitPcmlnaW46IGh0dHBzOi8vZ2l0aHViLmNvbS9zb2x1cy1wcm9qZWN0L2J1ZGdpZS1kZXNr dG9wL2NvbW1pdHMvOWQwOWExYjE1YgorLS0tCisgc3JjL3dtL21lc29uLmJ1aWxkICAgICAgICAg ICAgICAgIHwgICAxMiArLQorIHNyYy93bS93bS52YWxhICAgICAgICAgICAgICAgICAgICB8ICAg MTYgKy0KKyB2YXBpL0NsdXR0ZXItNi5tZXRhZGF0YSAgICAgICAgICAgfCAgMjA0ICsKKyB2YXBp L0NvZ2wtNi5tZXRhZGF0YSAgICAgICAgICAgICAgfCAgIDI3ICsKKyB2YXBpL01ldGEtNi5tZXRh ZGF0YSAgICAgICAgICAgICAgfCAgIDgwICsKKyB2YXBpL2dyYXBoZW5lLWdvYmplY3QtMS4wLnZh cGkgICAgfCAgNjkxICsrKworIHZhcGkvbGlibXV0dGVyLTYuZGVwcyAgICAgICAgICAgICB8ICAg IDYgKworIHZhcGkvbGlibXV0dGVyLTYudmFwaSAgICAgICAgICAgICB8IDE0NzUgKysrKysKKyB2 YXBpL211dHRlci1jbHV0dGVyLTYtY3VzdG9tLnZhbGEgfCAgMTQ3ICsKKyB2YXBpL211dHRlci1j bHV0dGVyLTYuZGVwcyAgICAgICAgfCAgICA0ICsKKyB2YXBpL211dHRlci1jbHV0dGVyLTYudmFw aSAgICAgICAgfCA4Njg3ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisgdmFwaS9tdXR0 ZXItY29nbC02LWN1c3RvbS52YWxhICAgIHwgIDEyNSArCisgdmFwaS9tdXR0ZXItY29nbC02LmRl cHMgICAgICAgICAgIHwgICAgMSArCisgdmFwaS9tdXR0ZXItY29nbC02LnZhcGkgICAgICAgICAg IHwgMTA3NyArKysrCisgMTQgZmlsZXMgY2hhbmdlZCwgMTI1NDkgaW5zZXJ0aW9ucygrKSwgMyBk ZWxldGlvbnMoLSkKKyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFwaS9DbHV0dGVyLTYubWV0YWRhdGEK KyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFwaS9Db2dsLTYubWV0YWRhdGEKKyBjcmVhdGUgbW9kZSAx MDA2NDQgdmFwaS9NZXRhLTYubWV0YWRhdGEKKyBjcmVhdGUgbW9kZSAxMDA2NDQgdmFwaS9ncmFw aGVuZS1nb2JqZWN0LTEuMC52YXBpCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkvbGlibXV0dGVy LTYuZGVwcworIGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL2xpYm11dHRlci02LnZhcGkKKyBjcmVh dGUgbW9kZSAxMDA2NDQgdmFwaS9tdXR0ZXItY2x1dHRlci02LWN1c3RvbS52YWxhCisgY3JlYXRl IG1vZGUgMTAwNjQ0IHZhcGkvbXV0dGVyLWNsdXR0ZXItNi5kZXBzCisgY3JlYXRlIG1vZGUgMTAw NjQ0IHZhcGkvbXV0dGVyLWNsdXR0ZXItNi52YXBpCisgY3JlYXRlIG1vZGUgMTAwNjQ0IHZhcGkv bXV0dGVyLWNvZ2wtNi1jdXN0b20udmFsYQorIGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL211dHRl ci1jb2dsLTYuZGVwcworIGNyZWF0ZSBtb2RlIDEwMDY0NCB2YXBpL211dHRlci1jb2dsLTYudmFw aQorCitkaWZmIC0tZ2l0IGEvc3JjL3dtL21lc29uLmJ1aWxkIGIvc3JjL3dtL21lc29uLmJ1aWxk CitpbmRleCBlMzliODY3OC4uNGJjYzBmOWUgMTAwNjQ0CistLS0gYS9zcmMvd20vbWVzb24uYnVp bGQKKysrKyBiL3NyYy93bS9tZXNvbi5idWlsZAorQEAgLTI1LDExICsyNSwxOSBAQCBpZiBub3Qg ZGVwX211dHRlci5mb3VuZCgpCisgICAgICAgICBtZXNzYWdlKCdVc2luZyBuZXcgbGlibXV0dGVy LTQgQUJJIGZyb20gR05PTUUgMy4zMicpCisgICAgICAgICB2YXBpX211dHRlciA9ICdsaWJtdXR0 ZXItNCcKKyAgICAgZWxzZQorLSAgICAgICAgZGVwX211dHRlciA9IGRlcGVuZGVuY3koJ2xpYm11 dHRlci01JywgdmVyc2lvbjogZ25vbWVfbWluaW11bV92ZXJzaW9uKQorKyAgICAgICAgZGVwX211 dHRlciA9IGRlcGVuZGVuY3koJ2xpYm11dHRlci01JywgdmVyc2lvbjogZ25vbWVfbWluaW11bV92 ZXJzaW9uLCByZXF1aXJlZDogZmFsc2UpCisrICAgICAgICBidWRnaWVfd21fc3RhdHVzX3ZhbGFf YXJncyArPSBbJy1EJywgJ0hBVkVfTVVUVEVSXzUnXQorICAgICAgICAgaWYgZGVwX211dHRlci5m b3VuZCgpCisgICAgICAgICAgICAgbWVzc2FnZSgnVXNpbmcgbmV3IGxpYm11dHRlci01IEFCSSBm cm9tIEdOT01FIDMuMzQnKQorICAgICAgICAgICAgIHZhcGlfbXV0dGVyID0gJ2xpYm11dHRlci01 JworLSAgICAgICAgICAgIGJ1ZGdpZV93bV9zdGF0dXNfdmFsYV9hcmdzICs9IFsnLUQnLCAnSEFW RV9NVVRURVJfNSddCisrICAgICAgICBlbHNlCisrICAgICAgICAgICAgZGVwX211dHRlciA9IGRl cGVuZGVuY3koJ2xpYm11dHRlci02JywgdmVyc2lvbjogZ25vbWVfbWluaW11bV92ZXJzaW9uKQor KyAgICAgICAgICAgIGJ1ZGdpZV93bV9zdGF0dXNfdmFsYV9hcmdzICs9IFsnLUQnLCAnSEFWRV9N VVRURVJfNiddCisrICAgICAgICAgICAgaWYgZGVwX211dHRlci5mb3VuZCgpCisrICAgICAgICAg ICAgICAgIGRlcF9ncmFwaGVuZSA9IGRlcGVuZGVuY3koJ2dyYXBoZW5lLWdvYmplY3QtMS4wJywg dmVyc2lvbjogJz49IDEuMTAnKQorKyAgICAgICAgICAgICAgICBtZXNzYWdlKCdVc2luZyBuZXcg bGlibXV0dGVyLTYgQUJJIGZyb20gR05PTUUgMy4zNicpCisrICAgICAgICAgICAgICAgIHZhcGlf bXV0dGVyID0gJ2xpYm11dHRlci02JworKyAgICAgICAgICAgIGVuZGlmCisgICAgICAgICBlbmRp ZgorICAgICBlbmRpZgorIGVuZGlmCitkaWZmIC0tZ2l0IGEvc3JjL3dtL3dtLnZhbGEgYi9zcmMv d20vd20udmFsYQoraW5kZXggZmVlODk0NDMuLmJiNDZjZDA2IDEwMDY0NAorLS0tIGEvc3JjL3dt L3dtLnZhbGEKKysrKyBiL3NyYy93bS93bS52YWxhCitAQCAtMTM3LDggKzEzNywxMyBAQCBwdWJs aWMgY2xhc3MgQnVkZ2llV00gOiBNZXRhLlBsdWdpbgorICAgICBwdWJsaWMgc3RhdGljIHN0cmlu Z1tdPyBvbGRfYXJnczsKKyAgICAgcHVibGljIHN0YXRpYyBib29sIHdheWxhbmQgPSBmYWxzZTsK KyAKKysjaWYgSEFWRV9NVVRURVJfNgorKyAgICBzdGF0aWMgR3JhcGhlbmUuUG9pbnQgUFZfQ0VO VEVSOworKyAgICBzdGF0aWMgR3JhcGhlbmUuUG9pbnQgUFZfTk9STTsKKysjZWxzZQorICAgICBz dGF0aWMgQ2x1dHRlci5Qb2ludCBQVl9DRU5URVI7CisgICAgIHN0YXRpYyBDbHV0dGVyLlBvaW50 IFBWX05PUk07CisrI2VuZGlmCisgCisgICAgIHByaXZhdGUgTWV0YS5CYWNrZ3JvdW5kR3JvdXA/ IGJhY2tncm91bmRfZ3JvdXA7CisgCitAQCAtMTcxLDEwICsxNzYsMTUgQEAgcHVibGljIGNsYXNz IEJ1ZGdpZVdNIDogTWV0YS5QbHVnaW4KKyAgICAgICAgICAgICBsaWNlbnNlID0gIkdQTC0yLjAi LAorICAgICAgICAgICAgIGRlc2NyaXB0aW9uID0gIkJ1ZGdpZSBXaW5kb3cgTWFuYWdlciIKKyAg ICAgICAgIH07CisrI2lmIEhBVkVfTVVUVEVSXzYKKysgICAgICAgIFBWX0NFTlRFUiA9IEdyYXBo ZW5lLlBvaW50KCk7CisrICAgICAgICBQVl9OT1JNID0gR3JhcGhlbmUuUG9pbnQoKTsKKysjZWxz ZQorICAgICAgICAgUFZfQ0VOVEVSID0gQ2x1dHRlci5Qb2ludC5hbGxvYygpOworKyAgICAgICAg UFZfTk9STSA9IENsdXR0ZXIuUG9pbnQuYWxsb2MoKTsKKysjZW5kaWYKKyAgICAgICAgIFBWX0NF TlRFUi54ID0gMC41ZjsKKyAgICAgICAgIFBWX0NFTlRFUi55ID0gMC41ZjsKKy0gICAgICAgIFBW X05PUk0gPSBDbHV0dGVyLlBvaW50LmFsbG9jKCk7CisgICAgICAgICBQVl9OT1JNLnggPSAwLjBm OworICAgICAgICAgUFZfTk9STS55ID0gMC4wZjsKKyAgICAgfQorQEAgLTEwMDEsNyArMTAxMSwx MSBAQCBwdWJsaWMgY2xhc3MgQnVkZ2llV00gOiBNZXRhLlBsdWdpbgorICAgICAgICAgdGlsZV9w cmV2aWV3LnNldCgic2NhbGUteCIsIE5PVElGSUNBVElPTl9NQVBfU0NBTEVfWCwgInNjYWxlLXki LCBOT1RJRklDQVRJT05fTUFQX1NDQUxFX1ksCisgICAgICAgICAgICAgInBpdm90LXBvaW50Iiwg UFZfQ0VOVEVSKTsKKyAKKysjaWYgSEFWRV9NVVRURVJfNgorKyAgICAgICAgLy90aWxlX3ByZXZp ZXcubG93ZXIod2luX2FjdG9yKTsKKysjZWxzZQorICAgICAgICAgdGlsZV9wcmV2aWV3Lmxvd2Vy KHdpbl9hY3Rvcik7CisrI2VuZGlmCisgICAgICAgICB0aWxlX3ByZXZpZXcudGlsZV9yZWN0ID0g dGlsZV9yZWN0OworIAorICAgICAgICAgdGlsZV9wcmV2aWV3LnNob3coKTsKK2RpZmYgLS1naXQg YS92YXBpL0NsdXR0ZXItNi5tZXRhZGF0YSBiL3ZhcGkvQ2x1dHRlci02Lm1ldGFkYXRhCituZXcg ZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAuLjhjMjZhMTIyCistLS0gL2Rldi9udWxs CisrKysgYi92YXBpL0NsdXR0ZXItNi5tZXRhZGF0YQorQEAgLTAsMCArMSwyMDQgQEAKKysvLyBO b24gbWluaS1vYmplY3QKKytBY3RvckJveCBzdHJ1Y3QKKytDb2xvciBzdHJ1Y3QKKytGb2cgc3Ry dWN0CisrR2VvbWV0cnkgc3RydWN0CisrS25vdCBzdHJ1Y3QKKytQYXRoTm9kZSBzdHJ1Y3QKKytQ ZXJzcGVjdGl2ZSBzdHJ1Y3QKKytVbml0cyBzdHJ1Y3QKKytWZXJ0ZXggc3RydWN0CisrCisrKi5y ZWYgdW5vd25lZAorKworK2luaXQuYXJndiB1bm93bmVkCisraW5pdF93aXRoX2FyZ3MKKysJLmFy Z3YgdW5vd25lZAorK0FjdG9yCisrCS5hcHBseV90cmFuc2Zvcm0ubWF0cml4IHJlZgorKwkuZ2V0 X2Fic19hbGxvY2F0aW9uX3ZlcnRpY2VzLnZlcnRzIG91dD1mYWxzZQorKwkuZ2V0X2FsbG9jYXRp b25fdmVydGljZXMudmVydHMgb3V0PWZhbHNlCisrQ2FudmFzCisrCS5uZXcgc3ltYm9sX3R5cGU9 ImNvbnN0cnVjdG9yIgorK0V2ZW50LnR5cGUjbWV0aG9kIG5hbWU9ImdldF90eXBlIgorK0ltYWdl CisrCS5uZXcgc3ltYm9sX3R5cGU9ImNvbnN0cnVjdG9yIgorKworKy8vID8/PworK0FjdG9yLmhh c19wb2ludGVyI21ldGhvZCBuYW1lPSJnZXRfaGFzX3BvaW50ZXIiCisrSW5pdEVycm9yIGVycm9y ZG9tYWluPWZhbHNlCisrCisrLy8gTm90IGFsbCBiYWNraW5nIHN5bWJvbHMgYXJlIGRlcHJlY2F0 ZWQKKytBY3Rvci5waWNrIGRlcHJlY2F0ZWQ9ZmFsc2UKKysKKysvLyBOdWxsYWJsZSByZXR1cm4g dmFsdWVzCisrQWN0b3IKKysJLmdldF9wYXJlbnQgbnVsbGFibGUKKyt2YWx1ZV9nZXRfY29sb3Ig bnVsbGFibGUKKysKKysvLyBtZXRob2QvdmlydHVhbC1tZXRob2Qvc2lnbmFsIGRvbid0IG1hdGNo CisrQWN0b3IKKysJLmV2ZW50I21ldGhvZCBuYW1lPSJlbWl0X2V2ZW50IgorKwkuZ2V0X3BhaW50 X3ZvbHVtZSNtZXRob2Qgc2tpcAorKwkucXVldWVfcmVkcmF3I3NpZ25hbCBza2lwCisrCS5xdWV1 ZV9yZWRyYXcjdmlydHVhbF9tZXRob2Qgc2tpcAorK0NvbnRhaW5lcgorKwkuYWRkX2FjdG9yIHNr aXA9ZmFsc2UKKytUZXh0CisrCS5hY3RpdmF0ZSNtZXRob2QgbmFtZT0idHJ5X2FjdGl2YXRlIgor KwkuaW5zZXJ0X3RleHQjc2lnbmFsIHNraXAKKytUZXh0QnVmZmVyLmdldF90ZXh0I3ZpcnR1YWxf bWV0aG9kIG5hbWU9ImdldF90ZXh0X3dpdGhfbGVuZ3RoIgorKworKy8vIHZpcnR1YWwvYWJzdHJh Y3QgZGlzdGluY3Rpb24KKytDb250YWluZXIKKysJLmxvd2VyIHZpcnR1YWwKKysJLnJhaXNlIHZp cnR1YWwKKysJLipfY2hpbGRfbWV0YSN2aXJ0dWFsX21ldGhvZCB2aXJ0dWFsCisrCS5mb3JlYWNo X3dpdGhfaW50ZXJuYWxzI3ZpcnR1YWxfbWV0aG9kIHZpcnR1YWwKKysKKysvLyBEZWZhdWx0IHZh bHVlcworK0NvbnRhaW5lcgorKwkubG93ZXIuc2libGluZyBudWxsYWJsZSBkZWZhdWx0PW51bGwK KysJLnJhaXNlLnNpYmxpbmcgbnVsbGFibGUgZGVmYXVsdD1udWxsCisrU3RhZ2UucmVhZF9waXhl bHMKKysJLndpZHRoIGRlZmF1bHQ9LTEKKysJLmhlaWdodCBkZWZhdWx0PS0xCisrVGV4dAorKwku cG9zaXRpb25fdG9fY29vcmRzLmxpbmVfaGVpZ2h0IGRlZmF1bHQ9bnVsbAorKworKy8vIFJlcGFy ZW50ZWQgZnVuY3MgbWV0aG9kcyBjYW4ndCBiZSBpbnN0YW5jZSBtZXRob2RzCisrZmVhdHVyZV9h dmFpbGFibGUgc2tpcAorK2ZlYXR1cmVfZ2V0X2FsbCBza2lwCisrCisrLy8gU2tpcHBlZCBieSBn LWkgZm9yIHVua25vd24gcmVhc29ucworK0xheW91dE1hbmFnZXIKKysJLmNyZWF0ZV9jaGlsZF9t ZXRhIHNraXA9ZmFsc2UKKysKKysvLyBWYXJpYWRpYyBhcmd1bWVudHMKKytBY3RvcgorKwkuYW5p bWF0ZSBza2lwPWZhbHNlCisrCS5hbmltYXRlX3dpdGhfYWxwaGEgc2tpcD1mYWxzZQorKwkuYW5p bWF0ZV93aXRoX3RpbWVsaW5lIHNraXA9ZmFsc2UKKytCb3gKKysJLnBhY2sgc2tpcD1mYWxzZQor KwkucGFja19hZnRlciBza2lwPWZhbHNlCisrCS5wYWNrX2F0IHNraXA9ZmFsc2UKKysJLnBhY2tf YmVmb3JlIHNraXA9ZmFsc2UKKytDb250YWluZXIKKysJLmFkZF92YWxpc3Qgc2tpcD1mYWxzZQor KwkuY2hpbGRfZ2V0IHNraXA9ZmFsc2UKKysJLmNoaWxkX3NldCBza2lwPWZhbHNlCisrCS5yZW1v dmUgc2tpcD1mYWxzZQorKwkucmVtb3ZlX3ZhbGlzdCBza2lwPWZhbHNlCisrSW50ZXJ2YWwKKysJ Lm5ldyBza2lwPWZhbHNlCisrCS5nZXRfaW50ZXJ2YWwgc2tpcD1mYWxzZQorKwkuc2V0X2ZpbmFs IHNraXA9ZmFsc2UKKysJLnNldF9pbml0aWFsIHNraXA9ZmFsc2UKKysJLnNldF9pbnRlcnZhbCBz a2lwPWZhbHNlCisrTGF5b3V0TWFuYWdlcgorKwkuY2hpbGRfZ2V0IHNraXA9ZmFsc2UKKysJLmNo aWxkX3NldCBza2lwPWZhbHNlCisrU2NyaXB0CisrCS5nZXRfb2JqZWN0cyBza2lwPWZhbHNlCisr CisrLy8gQ2hhbmdpbmcgZXJyb3IgZG9tYWlucworK1RleHR1cmUKKysJLm5ld19mcm9tX2ZpbGUg dGhyb3dzPSJDbHV0dGVyLlRleHR1cmVFcnJvciIKKysKKysvLyBTa2lwcGVkIHVwc3RyZWFtIGZv ciB1bmtub3duIHJlYXNvbnMKKytBbHBoYS5yZWdpc3Rlcl9mdW5jIHNraXA9ZmFsc2UKKytJbnRl cnZhbC5yZWdpc3Rlcl9wcm9ncmVzc19mdW5jIHNraXA9ZmFsc2UKKytnZXRfb3B0aW9uX2dyb3Vw IHNraXA9ZmFsc2UKKytnZXRfb3B0aW9uX2dyb3VwX3dpdGhvdXRfaW5pdCBza2lwPWZhbHNlCisr dGhyZWFkc19hZGRfaWRsZSBza2lwPWZhbHNlCisrdGhyZWFkc19hZGRfaWRsZV9mdWxsIHNraXA9 ZmFsc2UKKyt0aHJlYWRzX2FkZF90aW1lb3V0IHNraXA9ZmFsc2UKKyt0aHJlYWRzX2FkZF90aW1l b3V0X2Z1bGwgc2tpcD1mYWxzZQorKworKy8vIHN0cnVjdC9jbGFzcyBjb25mdXNpb24KKytBY3Rv ckJveAorKwkubmV3IHNraXAKKysJLmZyb21fdmVydGljZXMgc2tpcAorK1VuaXRzLmZyb21fKiBz a2lwCisrQ29sb3IKKysJLm5ldyBza2lwCisrVmVydGV4Lm5ldyBza2lwCisrCisrLy8gQ2xhc3Mg bWV0aG9kcworK2NvbnRhaW5lcl9jbGFzc19maW5kX2NoaWxkX3Byb3BlcnR5IHNraXAKKytjb250 YWluZXJfY2xhc3NfbGlzdF9jaGlsZF9wcm9wZXJ0aWVzIHNraXAKKysKKysvLyBNb3ZlIHN5bWJv bHMKKytnZXRfYWN0b3JfYnlfZ2lkIHBhcmVudD0iQ2x1dHRlci5BY3RvciIgbmFtZT0iZ2V0X2J5 X2dpZCIKKyt1bml0c19mcm9tXyogc2tpcAorKworKy8vIENsYXNzZXMgbWFya2VkIGFzIG91dCBi dXQgbm90IGRvdWJsZSBwdHIKKytBY3RvcgorKwkuZ2V0X21hcmdpbi5tYXJnaW4gb3V0PWZhbHNl CisrRHJhZ0FjdGlvbgorKwkuZ2V0X2RyYWdfYXJlYS5kcmFnX2FyZWEgb3V0PWZhbHNlCisrSW5w dXREZXZpY2UKKysJLmdldF9jb29yZHMucG9pbnQgb3V0PWZhbHNlCisrUmVjdAorKwkuZ2V0X2Nl bnRlci5jZW50ZXIgb3V0PWZhbHNlCisrCS5pbnRlcnNlY3Rpb24ucmVzIG91dD1mYWxzZQorKwku dW5pb24ucmVzIG91dD1mYWxzZQorK1RpbWVsaW5lCisrCS5nZXRfY3ViaWNfYmV6aWVyX3Byb2dy ZXNzLmNfKiBvdXQ9ZmFsc2UKKytab29tQWN0aW9uCisrCS5nZXRfZm9jYWxfcG9pbnQucG9pbnQg b3V0PWZhbHNlCisrCS5nZXRfdHJhbnNmb3JtZWRfZm9jYWxfcG9pbnQucG9pbnQgb3V0PWZhbHNl CisrCisrLy8gU3RydWN0IHJldHVybiB2YWx1ZXMKKytjb2xvcl9nZXRfc3RhdGljIG51bGxhYmxl CisrCisrLy8gUmVtb3ZlIGZvciBjbHV0dGVyLTIuMAorKy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v Ly8KKysKKytTdGFnZQorKyAJLmV2ZW50IG5hbWU9ImVtaXRfZXZlbnQiCisrCisrLy8gKkV2ZW50 IHNob3VsZCBiZSBjb21wYWN0IGNsYXNzZXMgZGVyaXZlZCBmcm9tIENsdXR0ZXIuRXZlbnQKKytF dmVudC50eXBlIHNraXA9ZmFsc2UKKytBbnlFdmVudCBzdHJ1Y3Q9ZmFsc2UgYmFzZV90eXBlPSJD bHV0dGVyLkV2ZW50IgorK0J1dHRvbkV2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNsdXR0 ZXIuRXZlbnQiCisrQ3Jvc3NpbmdFdmVudCBzdHJ1Y3Q9ZmFsc2UgYmFzZV90eXBlPSJDbHV0dGVy LkV2ZW50IgorK0tleUV2ZW50IHN0cnVjdD1mYWxzZSBiYXNlX3R5cGU9IkNsdXR0ZXIuRXZlbnQi CisrTW90aW9uRXZlbnQgc3RydWN0PWZhbHNlIGJhc2VfdHlwZT0iQ2x1dHRlci5FdmVudCIKKytT Y3JvbGxFdmVudCBzdHJ1Y3Q9ZmFsc2UgYmFzZV90eXBlPSJDbHV0dGVyLkV2ZW50IgorK1N0YWdl U3RhdGVFdmVudCBzdHJ1Y3Q9ZmFsc2UgYmFzZV90eXBlPSJDbHV0dGVyLkV2ZW50IgorK1RvdWNo RXZlbnQgc3RydWN0PWZhbHNlIGJhc2VfdHlwZT0iQ2x1dHRlci5FdmVudCIKKytUb3VjaHBhZFBp bmNoRXZlbnQgc3RydWN0PWZhbHNlIGJhc2VfdHlwZT0iQ2x1dHRlci5FdmVudCIKKytUb3VjaHBh ZFN3aXBlRXZlbnQgc3RydWN0PWZhbHNlIGJhc2VfdHlwZT0iQ2x1dHRlci5FdmVudCIKKysKKysv LyBLZXlzeW1zIHVzZWQgdG8gYmUgQ0xVVFRFUl9YIGluc3RlYWQgb2YgQ0xVVFRFUl9LRVlfWAor KyojY29uc3RhbnQgc2tpcAorK0NPR0wgc2tpcD1mYWxzZQorK0NVUlJFTlRfVElNRSBza2lwPWZh bHNlCisrRkxBVk9VUiBza2lwPWZhbHNlCisrUEFUSF9SRUxBVElWRSBza2lwPWZhbHNlCisrUFJJ T1JJVFlfUkVEUkFXIHNraXA9ZmFsc2UKKysKKysvLyBDbHV0dGVyIGRldnMgZG9uJ3QgbGlrZSB1 cyBjcmVhdGluZyBuZXN0ZWQgbmFtZXNwYWNlcworK3ZhbHVlXyogbmFtZT0idmFsdWVfKC4rKSIg cGFyZW50PSJDbHV0dGVyLlZhbHVlIgorK3RocmVhZHNfKiBuYW1lPSJ0aHJlYWRzXyguKykiIHBh cmVudD0iQ2x1dHRlci5UaHJlYWRzIgorK3RocmVhZHNfYWRkX2lkbGUgbmFtZT0iYWRkIiBwYXJl bnQ9IkNsdXR0ZXIuVGhyZWFkcy5JZGxlIgorK3RocmVhZHNfYWRkX2lkbGVfZnVsbCBuYW1lPSJh ZGRfZnVsbCIgcGFyZW50PSJDbHV0dGVyLlRocmVhZHMuSWRsZSIKKyt0aHJlYWRzX2FkZF90aW1l b3V0IG5hbWU9ImFkZCIgcGFyZW50PSJDbHV0dGVyLlRocmVhZHMuVGltZW91dCIKKyt0aHJlYWRz X2FkZF90aW1lb3V0X2Z1bGwgbmFtZT0iYWRkX2Z1bGwiIHBhcmVudD0iQ2x1dHRlci5UaHJlYWRz LlRpbWVvdXQiCisrCisrLy8gQmFja3dhcmRzIGNvbXBhdGliaWxpdHkKKytDb2xvci5hbGxvYyBz eW1ib2xfdHlwZT0iZnVuY3Rpb24iCisrUG9pbnQuYWxsb2Mgc3ltYm9sX3R5cGU9ImZ1bmN0aW9u IgorK1JlY3QuYWxsb2Mgc3ltYm9sX3R5cGU9ImZ1bmN0aW9uIgorK1NpemUuYWxsb2Mgc3ltYm9s X3R5cGU9ImZ1bmN0aW9uIgorK1ZlcnRleC5hbGxvYyBzeW1ib2xfdHlwZT0iZnVuY3Rpb24iCisr CisrQmluQWxpZ25tZW50IGRlcHJlY2F0ZWQ9ZmFsc2UgZGVwcmVjYXRlZF9zaW5jZT1udWxsCisr QmluQWxpZ25tZW50LiogZGVwcmVjYXRlZAorK0JpbkFsaWdubWVudC5zdGFydCBkZXByZWNhdGVk PWZhbHNlCisrQmluTGF5b3V0Lm5ldy4qX2FsaWduIGRlZmF1bHQ9Q2x1dHRlci5CaW5BbGlnbm1l bnQuU1RBUlQKKysKKysvLyBQb3NzaWJseSBrZWVwCisrS0VZXyogc2tpcD1mYWxzZSBuYW1lPSJL RVlfKC4rKSIgdHlwZT0idWludCIgcGFyZW50PSJDbHV0dGVyLktleSIKK2RpZmYgLS1naXQgYS92 YXBpL0NvZ2wtNi5tZXRhZGF0YSBiL3ZhcGkvQ29nbC02Lm1ldGFkYXRhCituZXcgZmlsZSBtb2Rl IDEwMDY0NAoraW5kZXggMDAwMDAwMDAuLjA5MmI1ZTI5CistLS0gL2Rldi9udWxsCisrKysgYi92 YXBpL0NvZ2wtNi5tZXRhZGF0YQorQEAgLTAsMCArMSwyNyBAQAorK0NvZ2wgY2hlYWRlcl9maWxl bmFtZT0iY29nbC9jb2dsLmgiCisrCisrQ29sb3Igc3RydWN0CisrICAubmV3IHNraXAKKysgIC5m cmVlIHNraXAKKysKKytjcmVhdGVfcHJvZ3JhbSBza2lwCisrY3JlYXRlX3NoYWRlciBza2lwCisr CisrCisraXNfYml0bWFwIHNraXAKKytpc19tYXRlcmlhbCBza2lwCisraXNfb2Zmc2NyZWVuIHNr aXAKKytpc19wcm9ncmFtIHNraXAKKytpc19zaGFkZXIgc2tpcAorK2lzX3RleHR1cmUgc2tpcAor K2lzX3ZlcnRleF9idWZmZXIgc2tpcAorKworK01hdHJpeCBzdHJ1Y3QKKysgIC5nZXRfYXJyYXkg YXJyYXk9dHJ1ZSBhcnJheV9sZW5ndGhfaWR4PS0xCisrICAuZ2V0X2ludmVyc2UuaW52ZXJzZSBv dXQ9dHJ1ZQorKyAgLm11bHRpcGx5IHNraXAKKysgIC5pbml0X2Zyb21fYXJyYXkgc2tpcAorKyAg LmluaXRfaWRlbnRpdHkgc2tpcAorKyAgLnRyYW5zZm9ybV9wb2ludC4qIHJlZj10cnVlCisrCisr cHJvZ3JhbV8qIHNraXAKK2RpZmYgLS1naXQgYS92YXBpL01ldGEtNi5tZXRhZGF0YSBiL3ZhcGkv TWV0YS02Lm1ldGFkYXRhCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAuLjFk OTg0Nzc4CistLS0gL2Rldi9udWxsCisrKysgYi92YXBpL01ldGEtNi5tZXRhZGF0YQorQEAgLTAs MCArMSw4MCBAQAorK0JhY2tlbmQgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWJhY2tlbmQu aCIKKytCYWNrZ3JvdW5kIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1iYWNrZ3JvdW5kLmgi CisrQmFja2dyb3VuZEFjdG9yIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1iYWNrZ3JvdW5k LWFjdG9yLmgiCisrQmFja2dyb3VuZEdyb3VwIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1i YWNrZ3JvdW5kLWdyb3VwLmgiCisrQmFja2dyb3VuZEltYWdlIGNoZWFkZXJfZmlsZW5hbWU9Im1l dGEvbWV0YS1iYWNrZ3JvdW5kLWltYWdlLmgiCisrQmFja2dyb3VuZEltYWdlQ2FjaGUgY2hlYWRl cl9maWxlbmFtZT0ibWV0YS9tZXRhLWJhY2tncm91bmQtaW1hZ2UuaCIKKytCYXJyaWVyIGNoZWFk ZXJfZmlsZW5hbWU9Im1ldGEvYmFycmllci5oIgorK0JhcnJpZXJFdmVudCBjaGVhZGVyX2ZpbGVu YW1lPSJtZXRhL2JhcnJpZXIuaCIKKytDbG9zZURpYWxvZyBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRh L21ldGEtY2xvc2UtZGlhbG9nLmgiCisrQ3Vyc29yVHJhY2tlciBjaGVhZGVyX2ZpbGVuYW1lPSJt ZXRhL21ldGEtY3Vyc29yLXRyYWNrZXIuaCIKKytEaXNwbGF5IGNoZWFkZXJfZmlsZW5hbWU9Im1l dGEvZGlzcGxheS5oIgorK0RuZCBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtZG5kLmgiCisr SWRsZU1vbml0b3IgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWlkbGUtbW9uaXRvci5oIgor K0luaGliaXRTaG9ydGN1dHNEaWFsb2cgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLWluaGli aXQtc2hvcnRjdXRzLWRpYWxvZy5oIgorK0xhdW5jaENvbnRleHQgY2hlYWRlcl9maWxlbmFtZT0i bWV0YS9tZXRhLWxhdW5jaC1jb250ZXh0LmgiCisrTWV0YSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRh L21haW4uaCIKKytNb25pdG9yTWFuYWdlciBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtbW9u aXRvci1tYW5hZ2VyLmgiCisrUHJlZmVyZW5jZSBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3ByZWZz LmgiCisrUmVtb3RlQWNjZXNzQ29udHJvbGxlciBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEt cmVtb3RlLWFjY2Vzcy1jb250cm9sbGVyLmgiCisrUmVtb3RlQWNjZXNzSGFuZGxlIGNoZWFkZXJf ZmlsZW5hbWU9Im1ldGEvbWV0YS1yZW1vdGUtYWNjZXNzLWNvbnRyb2xsZXIuaCIKKytTZXR0aW5n cyBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtc2V0dGluZ3MuaCIKKytTaGFkb3dGYWN0b3J5 IGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1zaGFkb3ctZmFjdG9yeS5oIgorK1NoYXBlZFRl eHR1cmUgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXNoYXBlZC10ZXh0dXJlLmgiCisrU291 bmRQbGF5ZXIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXNvdW5kLXBsYXllci5oIgorK1N0 YWdlIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1zdGFnZS5oIgorK1N0YXJ0dXBOb3RpZmlj YXRpb24gY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9tZXRhLXN0YXJ0dXAtbm90aWZpY2F0aW9uLmgi CisrVGhlbWUgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS90aGVtZS5oIgorK1dpbmRvdyBjaGVhZGVy X2ZpbGVuYW1lPSJtZXRhL3dpbmRvdy5oIgorK1dpbmRvd0FjdG9yIGNoZWFkZXJfZmlsZW5hbWU9 Im1ldGEvbWV0YS13aW5kb3ctYWN0b3IuaCIKKytXaW5kb3dHcm91cCBjaGVhZGVyX2ZpbGVuYW1l PSJtZXRhL21ldGEtd2luZG93LWdyb3VwLmgiCisrV2luZG93U2hhcGUgY2hlYWRlcl9maWxlbmFt ZT0ibWV0YS9tZXRhLXdpbmRvdy1zaGFwZS5oIgorK1dvcmtzcGFjZSBjaGVhZGVyX2ZpbGVuYW1l PSJtZXRhL3dvcmtzcGFjZS5oIgorK1dvcmtzcGFjZU1hbmFnZXIgY2hlYWRlcl9maWxlbmFtZT0i bWV0YS9tZXRhLXdvcmtzcGFjZS1tYW5hZ2VyLmgiCisrWDExRGlzcGxheSBjaGVhZGVyX2ZpbGVu YW1lPSJtZXRhL21ldGEteDExLWRpc3BsYXkuaCIKKytSZWN0YW5nbGUgc3RydWN0CisrUGx1Z2lu IGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1wbHVnaW4uaCIKKytQbHVnaW5JbmZvIGNoZWFk ZXJfZmlsZW5hbWU9Im1ldGEvbWV0YS1wbHVnaW4uaCIKKytwcmVmc18qIGNoZWFkZXJfZmlsZW5h bWU9Im1ldGEvcHJlZnMuaCIgcGFyZW50PSJNZXRhLlByZWZzIgorK2FkZF92ZXJib3NlX3RvcGlj IHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKyt4MTFf ZXJyb3JfdHJhcF9wb3AgcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEv dXRpbC5oIgorK3gxMV9lcnJvcl90cmFwX3B1c2ggcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJf ZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK3gxMV9lcnJvcl90cmFwX3BvcF93aXRoX3JldHVybiBw YXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisrZXh0ZXJu YWxfYmluZGluZ19uYW1lX2Zvcl9hY3Rpb24gcGFyZW50PSJNZXRhLlV0aWwiIGNoZWFkZXJfZmls ZW5hbWU9Im1ldGEvdXRpbC5oIgorK2dldF9sb2NhbGVfZGlyZWN0aW9uIHBhcmVudD0iTWV0YS5V dGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytncmF2aXR5X3RvX3N0cmluZyBw YXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisraXNfZGVi dWdnaW5nIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIK Kytpc19zeW5jaW5nIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0 aWwuaCIKKytpc192ZXJib3NlIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJt ZXRhL3V0aWwuaCIKKytpc193YXlsYW5kX2NvbXBvc2l0b3IgcGFyZW50PSJNZXRhLlV0aWwiIGNo ZWFkZXJfZmlsZW5hbWU9Im1ldGEvdXRpbC5oIgorK2xhdGVyX2FkZCBwYXJlbnQ9Ik1ldGEuVXRp bCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisrbGF0ZXJfcmVtb3ZlIHBhcmVudD0i TWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIKKytwb3Bfbm9fbXNnX3By ZWZpeCBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisr cHVzaF9ub19tc2dfcHJlZml4IHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJt ZXRhL3V0aWwuaCIKKytyZWN0IHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJt ZXRhL3V0aWwuaCIKKytyZW1vdmVfdmVyYm9zZV90b3BpYyBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hl YWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisrdW5zaWduZWRfbG9uZ19lcXVhbCBwYXJlbnQ9 Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91dGlsLmgiCisrdW5zaWduZWRfbG9u Z19oYXNoIHBhcmVudD0iTWV0YS5VdGlsIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL3V0aWwuaCIK KytzaG93X2RpYWxvZyBwYXJlbnQ9Ik1ldGEuVXRpbCIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS91 dGlsLmgiCisrZ2V0X3N0YWdlX2Zvcl9kaXNwbGF5IHBhcmVudD0iTWV0YS5Db21wb3NpdG9yIiBj aGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiCisrZ2V0X3dpbmRvd19h Y3RvcnMgcGFyZW50PSJNZXRhLkNvbXBvc2l0b3IiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvY29t cG9zaXRvci1tdXR0ZXIuaCIKKytnZXRfd2luZG93X2dyb3VwX2Zvcl9kaXNwbGF5IHBhcmVudD0i TWV0YS5Db21wb3NpdG9yIiBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL2NvbXBvc2l0b3ItbXV0dGVy LmgiCisrZ2V0X3RvcF93aW5kb3dfZ3JvdXBfZm9yX2Rpc3BsYXkgcGFyZW50PSJNZXRhLkNvbXBv c2l0b3IiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIKKytnZXRf ZmVlZGJhY2tfZ3JvdXBfZm9yX2Rpc3BsYXkgcGFyZW50PSJNZXRhLkNvbXBvc2l0b3IiIGNoZWFk ZXJfZmlsZW5hbWU9Im1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIKKytkaXNhYmxlX3VucmVkaXJl Y3RfZm9yX2Rpc3BsYXkgcGFyZW50PSJNZXRhLkNvbXBvc2l0b3IiIGNoZWFkZXJfZmlsZW5hbWU9 Im1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIKKytlbmFibGVfdW5yZWRpcmVjdF9mb3JfZGlzcGxh eSBwYXJlbnQ9Ik1ldGEuQ29tcG9zaXRvciIgY2hlYWRlcl9maWxlbmFtZT0ibWV0YS9jb21wb3Np dG9yLW11dHRlci5oIgorK3NldF9zdGFnZV9pbnB1dF9yZWdpb24gcGFyZW50PSJNZXRhLkNvbXBv c2l0b3IiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIKKytlbXB0 eV9zdGFnZV9pbnB1dF9yZWdpb24gcGFyZW50PSJNZXRhLkNvbXBvc2l0b3IiIGNoZWFkZXJfZmls ZW5hbWU9Im1ldGEvY29tcG9zaXRvci1tdXR0ZXIuaCIKKytmb2N1c19zdGFnZV93aW5kb3cgcGFy ZW50PSJNZXRhLkNvbXBvc2l0b3IiIGNoZWFkZXJfZmlsZW5hbWU9Im1ldGEvY29tcG9zaXRvci1t dXR0ZXIuaCIKKytrZXliaW5kaW5nc19zZXRfY3VzdG9tX2hhbmRsZXIgcGFyZW50PSJNZXRhLktl eUJpbmRpbmciIG5hbWU9InNldF9jdXN0b21faGFuZGxlciIKKytLZXlIYW5kbGVyRnVuYy5ldmVu dCB0eXBlPSJDbHV0dGVyLktleUV2ZW50PyIKKytnZXRfYmFja2VuZCBwYXJlbnQ9Ik1ldGEuQmFj a2VuZCIKKytXaW5kb3cuZm9jdXMjc2lnbmFsIHNraXA9dHJ1ZQorK1dpbmRvdy5nZXRfeHdpbmRv dyBza2lwPWZhbHNlCisrZ2V0X29wdGlvbl9jb250ZXh0IHNraXA9ZmFsc2UKKytzZXRfZ25vbWVf d21fa2V5YmluZGluZ3Mgc2tpcD1mYWxzZQorK3NldF93bV9uYW1lIHNraXA9ZmFsc2UKKytpbml0 IHNraXA9ZmFsc2UKKytydW4gc2tpcD1mYWxzZQorK3Nob3dfZGlhbG9nIHNraXA9ZmFsc2UKKytn ZXRfYmFja2VuZCBjaGVhZGVyX2ZpbGVuYW1lPSJtZXRhL21ldGEtYmFja2VuZC5oIgorZGlmZiAt LWdpdCBhL3ZhcGkvZ3JhcGhlbmUtZ29iamVjdC0xLjAudmFwaSBiL3ZhcGkvZ3JhcGhlbmUtZ29i amVjdC0xLjAudmFwaQorbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAwLi42OTgw MTUzNQorLS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9ncmFwaGVuZS1nb2JqZWN0LTEuMC52YXBp CitAQCAtMCwwICsxLDY5MSBAQAorKy8qIGdyYXBoZW5lLWdvYmplY3QtMS4wLnZhcGkgZ2VuZXJh dGVkIGJ5IHZhcGlnZW4sIGRvIG5vdCBtb2RpZnkuICovCisrCisrW0NDb2RlIChjcHJlZml4ID0g IkdyYXBoZW5lIiwgZ2lyX25hbWVzcGFjZSA9ICJHcmFwaGVuZSIsIGdpcl92ZXJzaW9uID0gIjEu MCIsIGxvd2VyX2Nhc2VfY3ByZWZpeCA9ICJncmFwaGVuZV8iKV0KKytuYW1lc3BhY2UgR3JhcGhl bmUgeworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwg Y25hbWUgPSAiZ3JhcGhlbmVfYm94X3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX2JveF9nZXRfdHlw ZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBzdHJ1Y3QgQm94 IHsKKysJCXB1YmxpYyBib29sIGNvbnRhaW5zX2JveCAoR3JhcGhlbmUuQm94IGIpOworKwkJcHVi bGljIGJvb2wgY29udGFpbnNfcG9pbnQgKEdyYXBoZW5lLlBvaW50M0QgcG9pbnQpOworKwkJcHVi bGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLkJveD8gZW1wdHkgKCk7CisrCQlwdWJsaWMgYm9v bCBlcXVhbCAoR3JhcGhlbmUuQm94IGIpOworKwkJcHVibGljIEdyYXBoZW5lLkJveCBleHBhbmQg KEdyYXBoZW5lLlBvaW50M0QgcG9pbnQpOworKwkJcHVibGljIEdyYXBoZW5lLkJveCBleHBhbmRf c2NhbGFyIChmbG9hdCBzY2FsYXIpOworKwkJcHVibGljIEdyYXBoZW5lLkJveCBleHBhbmRfdmVj MyAoR3JhcGhlbmUuVmVjMyB2ZWMpOworKwkJcHVibGljIEdyYXBoZW5lLlNwaGVyZSBnZXRfYm91 bmRpbmdfc3BoZXJlICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0QgZ2V0X2NlbnRlciAo KTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfZGVwdGggKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2hl aWdodCAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIGdldF9tYXggKCk7CisrCQlwdWJs aWMgR3JhcGhlbmUuUG9pbnQzRCBnZXRfbWluICgpOworKwkJcHVibGljIEdyYXBoZW5lLlZlYzMg Z2V0X3NpemUgKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfdmVydGljZXMgKFtDQ29kZSAoYXJyYXlf bGVuZ3RoID0gZmFsc2UpXSByZWYgR3JhcGhlbmUuVmVjMyB2ZXJ0aWNlc1s4XSk7CisrCQlwdWJs aWMgZmxvYXQgZ2V0X3dpZHRoICgpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5l LkJveD8gaW5maW5pdGUgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/IGluaXQg KEdyYXBoZW5lLlBvaW50M0Q/IG1pbiwgR3JhcGhlbmUuUG9pbnQzRD8gbWF4KTsKKysJCXB1Ymxp YyB1bm93bmVkIEdyYXBoZW5lLkJveD8gaW5pdF9mcm9tX2JveCAoR3JhcGhlbmUuQm94IHNyYyk7 CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/IGluaXRfZnJvbV9wb2ludHMgKFtDQ29k ZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gIm5fcG9pbnRzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDAu NSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3VpbnQiKV0gR3JhcGhlbmUuUG9pbnQzRFtdIHBvaW50 cyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Cb3g/IGluaXRfZnJvbV92ZWMzIChHcmFw aGVuZS5WZWMzPyBtaW4sIEdyYXBoZW5lLlZlYzM/IG1heCk7CisrCQlwdWJsaWMgdW5vd25lZCBH cmFwaGVuZS5Cb3g/IGluaXRfZnJvbV92ZWN0b3JzIChbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFt ZSA9ICJuX3ZlY3RvcnMiLCBhcnJheV9sZW5ndGhfcG9zID0gMC41LCBhcnJheV9sZW5ndGhfdHlw ZSA9ICJndWludCIpXSBHcmFwaGVuZS5WZWMzW10gdmVjdG9ycyk7CisrCQlwdWJsaWMgYm9vbCBp bnRlcnNlY3Rpb24gKEdyYXBoZW5lLkJveCBiLCBvdXQgR3JhcGhlbmUuQm94IHJlcyk7CisrCQlw dWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuQm94PyBtaW51c19vbmUgKCk7CisrCQlwdWJs aWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuQm94PyBvbmUgKCk7CisrCQlwdWJsaWMgc3RhdGlj IHVub3duZWQgR3JhcGhlbmUuQm94PyBvbmVfbWludXNfb25lICgpOworKwkJcHVibGljIEdyYXBo ZW5lLkJveCB1bmlvbiAoR3JhcGhlbmUuQm94IGIpOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVk IEdyYXBoZW5lLkJveD8gemVybyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfZXVsZXJfdCIsIHR5cGVf aWQgPSAiZ3JhcGhlbmVfZXVsZXJfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuMiIpXQorKwlwdWJsaWMgc3RydWN0IEV1bGVyIHsKKysJCXB1YmxpYyBib29sIGVxdWFsIChH cmFwaGVuZS5FdWxlciBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgZmxvYXQgZ2V0X2FscGhhICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyBmbG9hdCBnZXRfYmV0YSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2dhbW1hICgpOworKwkJcHVibGljIEdyYXBoZW5lLkV1bGVy T3JkZXIgZ2V0X29yZGVyICgpOworKwkJcHVibGljIGZsb2F0IGdldF94ICgpOworKwkJcHVibGlj IGZsb2F0IGdldF95ICgpOworKwkJcHVibGljIGZsb2F0IGdldF96ICgpOworKwkJcHVibGljIHVu b3duZWQgR3JhcGhlbmUuRXVsZXI/IGluaXQgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHopOwor KwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuRXVsZXI/IGluaXRfZnJvbV9ldWxlciAoR3JhcGhl bmUuRXVsZXI/IHNyYyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5FdWxlcj8gaW5pdF9m cm9tX21hdHJpeCAoR3JhcGhlbmUuTWF0cml4PyBtLCBHcmFwaGVuZS5FdWxlck9yZGVyIG9yZGVy KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkV1bGVyPyBpbml0X2Zyb21fcXVhdGVybmlv biAoR3JhcGhlbmUuUXVhdGVybmlvbj8gcSwgR3JhcGhlbmUuRXVsZXJPcmRlciBvcmRlcik7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUu RXVsZXI/IGluaXRfZnJvbV9yYWRpYW5zIChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6LCBHcmFw aGVuZS5FdWxlck9yZGVyIG9yZGVyKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLkV1bGVy PyBpbml0X2Zyb21fdmVjMyAoR3JhcGhlbmUuVmVjMz8gdiwgR3JhcGhlbmUuRXVsZXJPcmRlciBv cmRlcik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5FdWxlcj8gaW5pdF93aXRoX29yZGVy IChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6LCBHcmFwaGVuZS5FdWxlck9yZGVyIG9yZGVyKTsK KysJCXB1YmxpYyBHcmFwaGVuZS5FdWxlciByZW9yZGVyIChHcmFwaGVuZS5FdWxlck9yZGVyIG9y ZGVyKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5NYXRyaXggdG9fbWF0cml4ICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5RdWF0ZXJuaW9uIHRvX3F1 YXRlcm5pb24gKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyB0b192ZWMzICgpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9 ICJncmFwaGVuZV9mcnVzdHVtX3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX2ZydXN0dW1fZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgc3RydWN0IEZy dXN0dW0geworKwkJcHVibGljIGJvb2wgY29udGFpbnNfcG9pbnQgKEdyYXBoZW5lLlBvaW50M0Qg cG9pbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGJvb2wgZXF1 YWwgKEdyYXBoZW5lLkZydXN0dW0gYik7CisrCQlwdWJsaWMgdm9pZCBnZXRfcGxhbmVzIChbQ0Nv ZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gcmVmIEdyYXBoZW5lLlBsYW5lIHBsYW5lc1s2XSk7 CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5GcnVzdHVtPyBpbml0IChHcmFwaGVuZS5QbGFu ZSBwMCwgR3JhcGhlbmUuUGxhbmUgcDEsIEdyYXBoZW5lLlBsYW5lIHAyLCBHcmFwaGVuZS5QbGFu ZSBwMywgR3JhcGhlbmUuUGxhbmUgcDQsIEdyYXBoZW5lLlBsYW5lIHA1KTsKKysJCXB1YmxpYyB1 bm93bmVkIEdyYXBoZW5lLkZydXN0dW0/IGluaXRfZnJvbV9mcnVzdHVtIChHcmFwaGVuZS5GcnVz dHVtIHNyYyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5GcnVzdHVtPyBpbml0X2Zyb21f bWF0cml4IChHcmFwaGVuZS5NYXRyaXggbWF0cml4KTsKKysJCXB1YmxpYyBib29sIGludGVyc2Vj dHNfYm94IChHcmFwaGVuZS5Cb3ggYm94KTsKKysJCXB1YmxpYyBib29sIGludGVyc2VjdHNfc3Bo ZXJlIChHcmFwaGVuZS5TcGhlcmUgc3BoZXJlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfbWF0cml4X3Qi LCB0eXBlX2lkID0gImdyYXBoZW5lX21hdHJpeF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgc3Ry dWN0IE1hdHJpeCB7CisrCQlwdWJsaWMgYm9vbCBkZWNvbXBvc2UgKG91dCBHcmFwaGVuZS5WZWMz IHRyYW5zbGF0ZSwgb3V0IEdyYXBoZW5lLlZlYzMgc2NhbGUsIG91dCBHcmFwaGVuZS5RdWF0ZXJu aW9uIHJvdGF0ZSwgb3V0IEdyYXBoZW5lLlZlYzMgc2hlYXIsIG91dCBHcmFwaGVuZS5WZWM0IHBl cnNwZWN0aXZlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9h dCBkZXRlcm1pbmFudCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuTWF0cml4IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGVxdWFsX2Zhc3QgKEdyYXBoZW5lLk1hdHJpeCBiKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IGdl dF9yb3cgKHVpbnQgaW5kZXhfKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBmbG9hdCBnZXRfdmFsdWUgKHVpbnQgcm93LCB1aW50IGNvbCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3hfc2NhbGUgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF94X3RyYW5zbGF0aW9u ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF95 X3NjYWxlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9h dCBnZXRfeV90cmFuc2xhdGlvbiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyBmbG9hdCBnZXRfel9zY2FsZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3pfdHJhbnNsYXRpb24gKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRf ZnJvbV8yZCAoZG91YmxlIHh4LCBkb3VibGUgeXgsIGRvdWJsZSB4eSwgZG91YmxlIHl5LCBkb3Vi bGUgeF8wLCBkb3VibGUgeV8wKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9mcm9tX2Zsb2F0IChbQ0NvZGUgKGFy cmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXQgdlsxNl0pOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X2Zyb21fbWF0 cml4IChHcmFwaGVuZS5NYXRyaXggc3JjKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9mcm9tX3ZlYzQgKEdyYXBo ZW5lLlZlYzQgdjAsIEdyYXBoZW5lLlZlYzQgdjEsIEdyYXBoZW5lLlZlYzQgdjIsIEdyYXBoZW5l LlZlYzQgdjMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHVub3du ZWQgR3JhcGhlbmUuTWF0cml4PyBpbml0X2ZydXN0dW0gKGZsb2F0IGxlZnQsIGZsb2F0IHJpZ2h0 LCBmbG9hdCBib3R0b20sIGZsb2F0IHRvcCwgZmxvYXQgel9uZWFyLCBmbG9hdCB6X2Zhcik7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5N YXRyaXg/IGluaXRfaWRlbnRpdHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRfbG9va19hdCAoR3JhcGhlbmUu VmVjMyBleWUsIEdyYXBoZW5lLlZlYzMgY2VudGVyLCBHcmFwaGVuZS5WZWMzIHVwKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJp eD8gaW5pdF9vcnRobyAoZmxvYXQgbGVmdCwgZmxvYXQgcmlnaHQsIGZsb2F0IHRvcCwgZmxvYXQg Ym90dG9tLCBmbG9hdCB6X25lYXIsIGZsb2F0IHpfZmFyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJpeD8gaW5pdF9wZXJzcGVj dGl2ZSAoZmxvYXQgZm92eSwgZmxvYXQgYXNwZWN0LCBmbG9hdCB6X25lYXIsIGZsb2F0IHpfZmFy KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBo ZW5lLk1hdHJpeD8gaW5pdF9yb3RhdGUgKGZsb2F0IGFuZ2xlLCBHcmFwaGVuZS5WZWMzIGF4aXMp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3duZWQgR3JhcGhl bmUuTWF0cml4PyBpbml0X3NjYWxlIChmbG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLk1hdHJp eD8gaW5pdF9za2V3IChmbG9hdCB4X3NrZXcsIGZsb2F0IHlfc2tldyk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5NYXRyaXg/IGluaXRf dHJhbnNsYXRlIChHcmFwaGVuZS5Qb2ludDNEIHApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MCIpXQorKwkJcHVibGljIEdyYXBoZW5lLk1hdHJpeCBpbnRlcnBvbGF0ZSAoR3JhcGhlbmUuTWF0 cml4IGIsIGRvdWJsZSBmYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIGJvb2wgaW52ZXJzZSAob3V0IEdyYXBoZW5lLk1hdHJpeCByZXMpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgaXNfMmQgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBpc19iYWNrZmFjZV92aXNpYmxlICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgaXNfaWRlbnRp dHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBpc19z aW5ndWxhciAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFw aGVuZS5NYXRyaXggbXVsdGlwbHkgKEdyYXBoZW5lLk1hdHJpeCBiKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBuZWFyIChHcmFwaGVuZS5NYXRyaXggYiwg ZmxvYXQgZXBzaWxvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg R3JhcGhlbmUuTWF0cml4IG5vcm1hbGl6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBHcmFwaGVuZS5NYXRyaXggcGVyc3BlY3RpdmUgKGZsb2F0IGRlcHRoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHByaW50ICgpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlBvaW50IHBy b2plY3RfcG9pbnQgKEdyYXBoZW5lLlBvaW50IHApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlF1YWQgcHJvamVjdF9yZWN0IChHcmFwaGVuZS5SZWN0 IHIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJl Y3QgcHJvamVjdF9yZWN0X2JvdW5kcyAoR3JhcGhlbmUuUmVjdCByKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHJvdGF0ZSAoZmxvYXQgYW5nbGUsIEdyYXBo ZW5lLlZlYzMgYXhpcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMg dm9pZCByb3RhdGVfZXVsZXIgKEdyYXBoZW5lLkV1bGVyIGUpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgcm90YXRlX3F1YXRlcm5pb24gKEdyYXBoZW5lLlF1 YXRlcm5pb24gcSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9p ZCByb3RhdGVfeCAoZmxvYXQgYW5nbGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIHZvaWQgcm90YXRlX3kgKGZsb2F0IGFuZ2xlKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHJvdGF0ZV96IChmbG9hdCBhbmdsZSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBzY2FsZSAoZmxvYXQgZmFj dG9yX3gsIGZsb2F0IGZhY3Rvcl95LCBmbG9hdCBmYWN0b3Jfeik7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9pZCBza2V3X3h5IChmbG9hdCBmYWN0b3IpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2tld194eiAoZmxvYXQg ZmFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNr ZXdfeXogKGZsb2F0IGZhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgYm9vbCB0b18yZCAob3V0IGRvdWJsZSB4eCwgb3V0IGRvdWJsZSB5eCwgb3V0IGRvdWJs ZSB4eSwgb3V0IGRvdWJsZSB5eSwgb3V0IGRvdWJsZSB4XzAsIG91dCBkb3VibGUgeV8wKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHRvX2Zsb2F0IChbQ0Nv ZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gcmVmIGZsb2F0IHZbMTZdKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IHRyYW5zZm9ybV9ib3Vu ZHMgKEdyYXBoZW5lLlJlY3Qgcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlw dWJsaWMgR3JhcGhlbmUuQm94IHRyYW5zZm9ybV9ib3ggKEdyYXBoZW5lLkJveCBiKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCB0cmFuc2Zv cm1fcG9pbnQgKEdyYXBoZW5lLlBvaW50IHApOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIp XQorKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0QgdHJhbnNmb3JtX3BvaW50M2QgKEdyYXBoZW5l LlBvaW50M0QgcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR3Jh cGhlbmUuUmF5IHRyYW5zZm9ybV9yYXkgKEdyYXBoZW5lLlJheSByKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5RdWFkIHRyYW5zZm9ybV9yZWN0IChH cmFwaGVuZS5SZWN0IHIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGlj IEdyYXBoZW5lLlNwaGVyZSB0cmFuc2Zvcm1fc3BoZXJlIChHcmFwaGVuZS5TcGhlcmUgcyk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyB0cmFu c2Zvcm1fdmVjMyAoR3JhcGhlbmUuVmVjMyB2KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IHRyYW5zZm9ybV92ZWM0IChHcmFwaGVuZS5WZWM0 IHYpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgdHJhbnNs YXRlIChHcmFwaGVuZS5Qb2ludDNEIHBvcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgR3JhcGhlbmUuTWF0cml4IHRyYW5zcG9zZSAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIHVucHJvamVjdF9wb2lu dDNkIChHcmFwaGVuZS5NYXRyaXggbW9kZWx2aWV3LCBHcmFwaGVuZS5Qb2ludDNEIHBvaW50KTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IHVu dHJhbnNmb3JtX2JvdW5kcyAoR3JhcGhlbmUuUmVjdCByLCBHcmFwaGVuZS5SZWN0IGJvdW5kcyk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCB1bnRyYW5zZm9y bV9wb2ludCAoR3JhcGhlbmUuUG9pbnQgcCwgR3JhcGhlbmUuUmVjdCBib3VuZHMsIG91dCBHcmFw aGVuZS5Qb2ludCByZXMpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFw aGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV9wbGFuZV90IiwgdHlwZV9pZCA9ICJn cmFwaGVuZV9wbGFuZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIild CisrCXB1YmxpYyBzdHJ1Y3QgUGxhbmUgeworKwkJcHVibGljIGZsb2F0IGRpc3RhbmNlIChHcmFw aGVuZS5Qb2ludDNEIHBvaW50KTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5QbGFu ZSBiKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfY29uc3RhbnQgKCk7CisrCQlwdWJsaWMgR3JhcGhl bmUuVmVjMyBnZXRfbm9ybWFsICgpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUGxhbmU/ IGluaXQgKEdyYXBoZW5lLlZlYzM/IG5vcm1hbCwgZmxvYXQgY29uc3RhbnQpOworKwkJcHVibGlj IHVub3duZWQgR3JhcGhlbmUuUGxhbmU/IGluaXRfZnJvbV9wbGFuZSAoR3JhcGhlbmUuUGxhbmUg c3JjKTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlBsYW5lPyBpbml0X2Zyb21fcG9pbnQg KEdyYXBoZW5lLlZlYzMgbm9ybWFsLCBHcmFwaGVuZS5Qb2ludDNEIHBvaW50KTsKKysJCXB1Ymxp YyB1bm93bmVkIEdyYXBoZW5lLlBsYW5lPyBpbml0X2Zyb21fcG9pbnRzIChHcmFwaGVuZS5Qb2lu dDNEIGEsIEdyYXBoZW5lLlBvaW50M0QgYiwgR3JhcGhlbmUuUG9pbnQzRCBjKTsKKysJCXB1Ymxp YyB1bm93bmVkIEdyYXBoZW5lLlBsYW5lPyBpbml0X2Zyb21fdmVjNCAoR3JhcGhlbmUuVmVjNCBz cmMpOworKwkJcHVibGljIEdyYXBoZW5lLlBsYW5lIG5lZ2F0ZSAoKTsKKysJCXB1YmxpYyBHcmFw aGVuZS5QbGFuZSBub3JtYWxpemUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIEdyYXBoZW5lLlBsYW5lIHRyYW5zZm9ybSAoR3JhcGhlbmUuTWF0cml4IG1hdHJp eCwgR3JhcGhlbmUuTWF0cml4PyBub3JtYWxfbWF0cml4KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfcG9p bnRfdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfcG9pbnRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RydWN0IFBvaW50IHsKKysJCXB1YmxpYyBm bG9hdCB4OworKwkJcHVibGljIGZsb2F0IHk7CisrCQlwdWJsaWMgZmxvYXQgZGlzdGFuY2UgKEdy YXBoZW5lLlBvaW50IGIsIG91dCBmbG9hdCBkX3gsIG91dCBmbG9hdCBkX3kpOworKwkJcHVibGlj IGJvb2wgZXF1YWwgKEdyYXBoZW5lLlBvaW50IGIpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhl bmUuUG9pbnQ/IGluaXQgKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJcHVibGljIHVub3duZWQgR3Jh cGhlbmUuUG9pbnQ/IGluaXRfZnJvbV9wb2ludCAoR3JhcGhlbmUuUG9pbnQgc3JjKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlBvaW50 PyBpbml0X2Zyb21fdmVjMiAoR3JhcGhlbmUuVmVjMiBzcmMpOworKwkJcHVibGljIEdyYXBoZW5l LlBvaW50IGludGVycG9sYXRlIChHcmFwaGVuZS5Qb2ludCBiLCBkb3VibGUgZmFjdG9yKTsKKysJ CXB1YmxpYyBib29sIG5lYXIgKEdyYXBoZW5lLlBvaW50IGIsIGZsb2F0IGVwc2lsb24pOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIgdG9fdmVj MiAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5Qb2ludD8gemVybyAoKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwg Y25hbWUgPSAiZ3JhcGhlbmVfcG9pbnQzZF90IiwgbG93ZXJfY2FzZV9jc3VmZml4ID0gInBvaW50 M2QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3BvaW50M2RfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RydWN0IFBvaW50M0QgeworKwkJcHVibGlj IGZsb2F0IHg7CisrCQlwdWJsaWMgZmxvYXQgeTsKKysJCXB1YmxpYyBmbG9hdCB6OworKwkJcHVi bGljIEdyYXBoZW5lLlBvaW50M0QgY3Jvc3MgKEdyYXBoZW5lLlBvaW50M0QgYik7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgZmxvYXQgZGlzdGFuY2UgKEdyYXBoZW5l LlBvaW50M0QgYiwgb3V0IEdyYXBoZW5lLlZlYzMgZGVsdGEpOworKwkJcHVibGljIGZsb2F0IGRv dCAoR3JhcGhlbmUuUG9pbnQzRCBiKTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVuZS5Q b2ludDNEIGIpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUG9pbnQzRD8gaW5pdCAoZmxv YXQgeCwgZmxvYXQgeSwgZmxvYXQgeik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5Qb2lu dDNEPyBpbml0X2Zyb21fcG9pbnQgKEdyYXBoZW5lLlBvaW50M0Qgc3JjKTsKKysJCXB1YmxpYyB1 bm93bmVkIEdyYXBoZW5lLlBvaW50M0Q/IGluaXRfZnJvbV92ZWMzIChHcmFwaGVuZS5WZWMzIHYp OworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0QgaW50ZXJwb2xhdGUgKEdyYXBoZW5lLlBvaW50 M0QgYiwgZG91YmxlIGZhY3Rvcik7CisrCQlwdWJsaWMgZmxvYXQgbGVuZ3RoICgpOworKwkJcHVi bGljIGJvb2wgbmVhciAoR3JhcGhlbmUuUG9pbnQzRCBiLCBmbG9hdCBlcHNpbG9uKTsKKysJCXB1 YmxpYyBHcmFwaGVuZS5Qb2ludDNEIG5vcm1hbGl6ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjQiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIG5vcm1hbGl6ZV92aWV3cG9ydCAo R3JhcGhlbmUuUmVjdCB2aWV3cG9ydCwgZmxvYXQgel9uZWFyLCBmbG9hdCB6X2Zhcik7CisrCQlw dWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBzY2FsZSAoZmxvYXQgZmFjdG9yKTsKKysJCXB1YmxpYyBH cmFwaGVuZS5WZWMzIHRvX3ZlYzMgKCk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhl bmUuUG9pbnQzRD8gemVybyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Z3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfcXVhZF90IiwgdHlwZV9pZCA9 ICJncmFwaGVuZV9xdWFkX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJcHVibGljIHN0cnVjdCBRdWFkIHsKKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IGJvdW5k cyAoKTsKKysJCXB1YmxpYyBib29sIGNvbnRhaW5zIChHcmFwaGVuZS5Qb2ludCBwKTsKKysJCXB1 YmxpYyB1bm93bmVkIEdyYXBoZW5lLlBvaW50PyBnZXRfcG9pbnQgKHVpbnQgaW5kZXhfKTsKKysJ CXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1YWQ/IGluaXQgKEdyYXBoZW5lLlBvaW50IHAxLCBH cmFwaGVuZS5Qb2ludCBwMiwgR3JhcGhlbmUuUG9pbnQgcDMsIEdyYXBoZW5lLlBvaW50IHA0KTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5l LlF1YWQ/IGluaXRfZnJvbV9wb2ludHMgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBH cmFwaGVuZS5Qb2ludCBwb2ludHNbNF0pOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUXVh ZD8gaW5pdF9mcm9tX3JlY3QgKEdyYXBoZW5lLlJlY3Qgcik7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3F1 YXRlcm5pb25fdCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfcXVhdGVybmlvbl9nZXRfdHlwZSAoKSIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdHJ1Y3QgUXVhdGVybmlv biB7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlF1 YXRlcm5pb24gYWRkIChHcmFwaGVuZS5RdWF0ZXJuaW9uIGIpOworKwkJcHVibGljIGZsb2F0IGRv dCAoR3JhcGhlbmUuUXVhdGVybmlvbiBiKTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChHcmFwaGVu ZS5RdWF0ZXJuaW9uIGIpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUXVhdGVybmlvbj8g aW5pdCAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgeiwgZmxvYXQgdyk7CisrCQlwdWJsaWMgdW5v d25lZCBHcmFwaGVuZS5RdWF0ZXJuaW9uPyBpbml0X2Zyb21fYW5nbGVfdmVjMyAoZmxvYXQgYW5n bGUsIEdyYXBoZW5lLlZlYzMgYXhpcyk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWF0 ZXJuaW9uPyBpbml0X2Zyb21fYW5nbGVzIChmbG9hdCBkZWdfeCwgZmxvYXQgZGVnX3ksIGZsb2F0 IGRlZ196KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB1bm93bmVk IEdyYXBoZW5lLlF1YXRlcm5pb24/IGluaXRfZnJvbV9ldWxlciAoR3JhcGhlbmUuRXVsZXIgZSk7 CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWF0ZXJuaW9uPyBpbml0X2Zyb21fbWF0cml4 IChHcmFwaGVuZS5NYXRyaXggbSk7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5RdWF0ZXJu aW9uPyBpbml0X2Zyb21fcXVhdGVybmlvbiAoR3JhcGhlbmUuUXVhdGVybmlvbiBzcmMpOworKwkJ cHVibGljIHVub3duZWQgR3JhcGhlbmUuUXVhdGVybmlvbj8gaW5pdF9mcm9tX3JhZGlhbnMgKGZs b2F0IHJhZF94LCBmbG9hdCByYWRfeSwgZmxvYXQgcmFkX3opOworKwkJcHVibGljIHVub3duZWQg R3JhcGhlbmUuUXVhdGVybmlvbj8gaW5pdF9mcm9tX3ZlYzQgKEdyYXBoZW5lLlZlYzQgc3JjKTsK KysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlF1YXRlcm5pb24/IGluaXRfaWRlbnRpdHkgKCk7 CisrCQlwdWJsaWMgR3JhcGhlbmUuUXVhdGVybmlvbiBpbnZlcnQgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlF1YXRlcm5pb24gbXVsdGlwbHkg KEdyYXBoZW5lLlF1YXRlcm5pb24gYik7CisrCQlwdWJsaWMgR3JhcGhlbmUuUXVhdGVybmlvbiBu b3JtYWxpemUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIEdy YXBoZW5lLlF1YXRlcm5pb24gc2NhbGUgKGZsb2F0IGZhY3Rvcik7CisrCQlwdWJsaWMgR3JhcGhl bmUuUXVhdGVybmlvbiBzbGVycCAoR3JhcGhlbmUuUXVhdGVybmlvbiBiLCBmbG9hdCBmYWN0b3Ip OworKwkJcHVibGljIHZvaWQgdG9fYW5nbGVfdmVjMyAob3V0IGZsb2F0IGFuZ2xlLCBvdXQgR3Jh cGhlbmUuVmVjMyBheGlzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1Ymxp YyB2b2lkIHRvX2FuZ2xlcyAob3V0IGZsb2F0IGRlZ194LCBvdXQgZmxvYXQgZGVnX3ksIG91dCBm bG9hdCBkZWdfeik7CisrCQlwdWJsaWMgR3JhcGhlbmUuTWF0cml4IHRvX21hdHJpeCAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHRvX3JhZGlhbnMgKG91 dCBmbG9hdCByYWRfeCwgb3V0IGZsb2F0IHJhZF95LCBvdXQgZmxvYXQgcmFkX3opOworKwkJcHVi bGljIEdyYXBoZW5lLlZlYzQgdG9fdmVjNCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfcmF5X3QiLCB0 eXBlX2lkID0gImdyYXBoZW5lX3JheV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS40IildCisrCXB1YmxpYyBzdHJ1Y3QgUmF5IHsKKysJCXB1YmxpYyBib29sIGVxdWFsIChH cmFwaGVuZS5SYXkgYik7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBnZXRfY2xvc2VzdF9w b2ludF90b19wb2ludCAoR3JhcGhlbmUuUG9pbnQzRCBwKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5W ZWMzIGdldF9kaXJlY3Rpb24gKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2Rpc3RhbmNlX3RvX3Bs YW5lIChHcmFwaGVuZS5QbGFuZSBwKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfZGlzdGFuY2VfdG9f cG9pbnQgKEdyYXBoZW5lLlBvaW50M0QgcCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQzRCBn ZXRfb3JpZ2luICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBvaW50M0QgZ2V0X3Bvc2l0aW9uX2F0 IChmbG9hdCB0KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlJheT8gaW5pdCAoR3JhcGhl bmUuUG9pbnQzRD8gb3JpZ2luLCBHcmFwaGVuZS5WZWMzPyBkaXJlY3Rpb24pOworKwkJcHVibGlj IHVub3duZWQgR3JhcGhlbmUuUmF5PyBpbml0X2Zyb21fcmF5IChHcmFwaGVuZS5SYXkgc3JjKTsK KysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlJheT8gaW5pdF9mcm9tX3ZlYzMgKEdyYXBoZW5l LlZlYzM/IG9yaWdpbiwgR3JhcGhlbmUuVmVjMz8gZGlyZWN0aW9uKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmF5SW50ZXJzZWN0aW9uS2luZCBp bnRlcnNlY3RfYm94IChHcmFwaGVuZS5Cb3ggYiwgb3V0IGZsb2F0IHRfb3V0KTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmF5SW50ZXJzZWN0aW9u S2luZCBpbnRlcnNlY3Rfc3BoZXJlIChHcmFwaGVuZS5TcGhlcmUgcywgb3V0IGZsb2F0IHRfb3V0 KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmF5 SW50ZXJzZWN0aW9uS2luZCBpbnRlcnNlY3RfdHJpYW5nbGUgKEdyYXBoZW5lLlRyaWFuZ2xlIHQs IG91dCBmbG9hdCB0X291dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIGJvb2wgaW50ZXJzZWN0c19ib3ggKEdyYXBoZW5lLkJveCBiKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBpbnRlcnNlY3RzX3NwaGVyZSAoR3JhcGhl bmUuU3BoZXJlIHMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBi b29sIGludGVyc2VjdHNfdHJpYW5nbGUgKEdyYXBoZW5lLlRyaWFuZ2xlIHQpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJn cmFwaGVuZV9yZWN0X3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3JlY3RfZ2V0X3R5cGUgKCkiKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RydWN0IFJlY3QgeworKwkJ cHVibGljIEdyYXBoZW5lLlBvaW50IG9yaWdpbjsKKysJCXB1YmxpYyBHcmFwaGVuZS5TaXplIHNp emU7CisrCQlwdWJsaWMgc3RhdGljIEdyYXBoZW5lLlJlY3Q/IGFsbG9jICgpOworKwkJcHVibGlj IGJvb2wgY29udGFpbnNfcG9pbnQgKEdyYXBoZW5lLlBvaW50IHApOworKwkJcHVibGljIGJvb2wg Y29udGFpbnNfcmVjdCAoR3JhcGhlbmUuUmVjdCBiKTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChH cmFwaGVuZS5SZWN0IGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGlj IEdyYXBoZW5lLlJlY3QgZXhwYW5kIChHcmFwaGVuZS5Qb2ludCBwKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X2FyZWEgKCk7CisrCQlwdWJsaWMg R3JhcGhlbmUuUG9pbnQgZ2V0X2JvdHRvbV9sZWZ0ICgpOworKwkJcHVibGljIEdyYXBoZW5lLlBv aW50IGdldF9ib3R0b21fcmlnaHQgKCk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUG9pbnQgZ2V0X2Nl bnRlciAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfaGVpZ2h0ICgpOworKwkJcHVibGljIEdyYXBo ZW5lLlBvaW50IGdldF90b3BfbGVmdCAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCBnZXRf dG9wX3JpZ2h0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZv aWQgZ2V0X3ZlcnRpY2VzIChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gcmVmIEdyYXBo ZW5lLlZlYzIgdmVydGljZXNbNF0pOworKwkJcHVibGljIGZsb2F0IGdldF93aWR0aCAoKTsKKysJ CXB1YmxpYyBmbG9hdCBnZXRfeCAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfeSAoKTsKKysJCXB1 YmxpYyB1bm93bmVkIEdyYXBoZW5lLlJlY3Q/IGluaXQgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0 IHdpZHRoLCBmbG9hdCBoZWlnaHQpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuUmVjdD8g aW5pdF9mcm9tX3JlY3QgKEdyYXBoZW5lLlJlY3Qgc3JjKTsKKysJCXB1YmxpYyB1bm93bmVkIEdy YXBoZW5lLlJlY3Q/IGluc2V0IChmbG9hdCBkX3gsIGZsb2F0IGRfeSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCBpbnNldF9yIChmbG9hdCBk X3gsIGZsb2F0IGRfeSk7CisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCBpbnRlcnBvbGF0ZSAoR3Jh cGhlbmUuUmVjdCBiLCBkb3VibGUgZmFjdG9yKTsKKysJCXB1YmxpYyBib29sIGludGVyc2VjdGlv biAoR3JhcGhlbmUuUmVjdCBiLCBvdXQgR3JhcGhlbmUuUmVjdCByZXMpOworKwkJcHVibGljIHVu b3duZWQgR3JhcGhlbmUuUmVjdD8gbm9ybWFsaXplICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJlY3Qgbm9ybWFsaXplX3IgKCk7CisrCQlwdWJs aWMgdW5vd25lZCBHcmFwaGVuZS5SZWN0PyBvZmZzZXQgKGZsb2F0IGRfeCwgZmxvYXQgZF95KTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0IG9m ZnNldF9yIChmbG9hdCBkX3gsIGZsb2F0IGRfeSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVi bGljIEdyYXBoZW5lLlJlY3Qgcm91bmQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIEdyYXBoZW5lLlJlY3Qgcm91bmRfZXh0ZW50cyAoKTsKKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjQiLCBzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlJlY3Q/IHJvdW5kX3RvX3BpeGVsICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5SZWN0 IHNjYWxlIChmbG9hdCBzX2gsIGZsb2F0IHNfdik7CisrCQlwdWJsaWMgR3JhcGhlbmUuUmVjdCB1 bmlvbiAoR3JhcGhlbmUuUmVjdCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJ CXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5SZWN0PyB6ZXJvICgpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJn cmFwaGVuZV9zaW1kNGZfdCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0 IFNpbWQ0RiB7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdv YmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3NpbWQ0eDRmX3QiLCBoYXNfdHlwZV9pZCA9IGZh bHNlKV0KKysJcHVibGljIHN0cnVjdCBTaW1kNFg0RiB7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3NpemVf dCIsIHR5cGVfaWQgPSAiZ3JhcGhlbmVfc2l6ZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdHJ1Y3QgU2l6ZSB7CisrCQlwdWJsaWMgZmxvYXQg d2lkdGg7CisrCQlwdWJsaWMgZmxvYXQgaGVpZ2h0OworKwkJcHVibGljIGJvb2wgZXF1YWwgKEdy YXBoZW5lLlNpemUgYik7CisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5TaXplPyBpbml0IChm bG9hdCB3aWR0aCwgZmxvYXQgaGVpZ2h0KTsKKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlNp emU/IGluaXRfZnJvbV9zaXplIChHcmFwaGVuZS5TaXplIHNyYyk7CisrCQlwdWJsaWMgR3JhcGhl bmUuU2l6ZSBpbnRlcnBvbGF0ZSAoR3JhcGhlbmUuU2l6ZSBiLCBkb3VibGUgZmFjdG9yKTsKKysJ CXB1YmxpYyBHcmFwaGVuZS5TaXplIHNjYWxlIChmbG9hdCBmYWN0b3IpOworKwkJcHVibGljIHN0 YXRpYyB1bm93bmVkIEdyYXBoZW5lLlNpemU/IHplcm8gKCk7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3Nw aGVyZV90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV9zcGhlcmVfZ2V0X3R5cGUgKCkiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgc3RydWN0IFNwaGVyZSB7CisrCQlwdWJs aWMgYm9vbCBjb250YWluc19wb2ludCAoR3JhcGhlbmUuUG9pbnQzRCBwb2ludCk7CisrCQlwdWJs aWMgZmxvYXQgZGlzdGFuY2UgKEdyYXBoZW5lLlBvaW50M0QgcG9pbnQpOworKwkJcHVibGljIGJv b2wgZXF1YWwgKEdyYXBoZW5lLlNwaGVyZSBiKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Cb3ggZ2V0 X2JvdW5kaW5nX2JveCAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIGdldF9jZW50ZXIg KCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3JhZGl1cyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIEdy YXBoZW5lLlNwaGVyZT8gaW5pdCAoR3JhcGhlbmUuUG9pbnQzRD8gY2VudGVyLCBmbG9hdCByYWRp dXMpOworKwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuU3BoZXJlPyBpbml0X2Zyb21fcG9pbnRz IChbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJuX3BvaW50cyIsIGFycmF5X2xlbmd0aF9w b3MgPSAwLjUsIGFycmF5X2xlbmd0aF90eXBlID0gImd1aW50IildIEdyYXBoZW5lLlBvaW50M0Rb XSBwb2ludHMsIEdyYXBoZW5lLlBvaW50M0Q/IGNlbnRlcik7CisrCQlwdWJsaWMgdW5vd25lZCBH cmFwaGVuZS5TcGhlcmU/IGluaXRfZnJvbV92ZWN0b3JzIChbQ0NvZGUgKGFycmF5X2xlbmd0aF9j bmFtZSA9ICJuX3ZlY3RvcnMiLCBhcnJheV9sZW5ndGhfcG9zID0gMC41LCBhcnJheV9sZW5ndGhf dHlwZSA9ICJndWludCIpXSBHcmFwaGVuZS5WZWMzW10gdmVjdG9ycywgR3JhcGhlbmUuUG9pbnQz RD8gY2VudGVyKTsKKysJCXB1YmxpYyBib29sIGlzX2VtcHR5ICgpOworKwkJcHVibGljIEdyYXBo ZW5lLlNwaGVyZSB0cmFuc2xhdGUgKEdyYXBoZW5lLlBvaW50M0QgcG9pbnQpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJn cmFwaGVuZV90cmlhbmdsZV90IiwgdHlwZV9pZCA9ICJncmFwaGVuZV90cmlhbmdsZV9nZXRfdHlw ZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBzdHJ1Y3QgVHJp YW5nbGUgeworKwkJcHVibGljIGJvb2wgY29udGFpbnNfcG9pbnQgKEdyYXBoZW5lLlBvaW50M0Qg cCk7CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuVHJpYW5nbGUgYik7CisrCQlwdWJs aWMgZmxvYXQgZ2V0X2FyZWEgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfYmFyeWNvb3JkcyAoR3Jh cGhlbmUuUG9pbnQzRD8gcCwgb3V0IEdyYXBoZW5lLlZlYzIgcmVzKTsKKysJCXB1YmxpYyBHcmFw aGVuZS5Cb3ggZ2V0X2JvdW5kaW5nX2JveCAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNE IGdldF9taWRwb2ludCAoKTsKKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIGdldF9ub3JtYWwgKCk7 CisrCQlwdWJsaWMgR3JhcGhlbmUuUGxhbmUgZ2V0X3BsYW5lICgpOworKwkJcHVibGljIHZvaWQg Z2V0X3BvaW50cyAob3V0IEdyYXBoZW5lLlBvaW50M0QgYSwgb3V0IEdyYXBoZW5lLlBvaW50M0Qg Yiwgb3V0IEdyYXBoZW5lLlBvaW50M0QgYyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIGJvb2wgZ2V0X3V2IChHcmFwaGVuZS5Qb2ludDNEPyBwLCBHcmFwaGVuZS5W ZWMyIHV2X2EsIEdyYXBoZW5lLlZlYzIgdXZfYiwgR3JhcGhlbmUuVmVjMiB1dl9jLCBvdXQgR3Jh cGhlbmUuVmVjMiByZXMpOworKwkJcHVibGljIHZvaWQgZ2V0X3ZlcnRpY2VzIChvdXQgR3JhcGhl bmUuVmVjMyBhLCBvdXQgR3JhcGhlbmUuVmVjMyBiLCBvdXQgR3JhcGhlbmUuVmVjMyBjKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5U cmlhbmdsZT8gaW5pdF9mcm9tX2Zsb2F0IChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0g ZmxvYXQgYVszXSwgW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIGZsb2F0IGJbM10sIFtD Q29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBmbG9hdCBjWzNdKTsKKysJCXB1YmxpYyB1bm93 bmVkIEdyYXBoZW5lLlRyaWFuZ2xlPyBpbml0X2Zyb21fcG9pbnQzZCAoR3JhcGhlbmUuUG9pbnQz RD8gYSwgR3JhcGhlbmUuUG9pbnQzRD8gYiwgR3JhcGhlbmUuUG9pbnQzRD8gYyk7CisrCQlwdWJs aWMgdW5vd25lZCBHcmFwaGVuZS5UcmlhbmdsZT8gaW5pdF9mcm9tX3ZlYzMgKEdyYXBoZW5lLlZl YzM/IGEsIEdyYXBoZW5lLlZlYzM/IGIsIEdyYXBoZW5lLlZlYzM/IGMpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJncmFw aGVuZV92ZWMyX3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3ZlYzJfZ2V0X3R5cGUgKCkiKV0KKysJ cHVibGljIHN0cnVjdCBWZWMyIHsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBHcmFwaGVuZS5WZWMyIGFkZCAoR3JhcGhlbmUuVmVjMiBiKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMyIGRpdmlkZSAoR3JhcGhlbmUu VmVjMiBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBk b3QgKEdyYXBoZW5lLlZlYzIgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlw dWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuVmVjMiB2Mik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ggKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3kgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5WZWMyPyBpbml0IChmbG9hdCB4 LCBmbG9hdCB5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93 bmVkIEdyYXBoZW5lLlZlYzI/IGluaXRfZnJvbV9mbG9hdCAoW0NDb2RlIChhcnJheV9sZW5ndGgg PSBmYWxzZSldIGZsb2F0IHNyY1syXSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5WZWMyPyBpbml0X2Zyb21fdmVjMiAoR3JhcGhlbmUu VmVjMiBzcmMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFw aGVuZS5WZWMyIGludGVycG9sYXRlIChHcmFwaGVuZS5WZWMyIHYyLCBkb3VibGUgZmFjdG9yKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBsZW5ndGggKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBt YXggKEdyYXBoZW5lLlZlYzIgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgR3JhcGhlbmUuVmVjMiBtaW4gKEdyYXBoZW5lLlZlYzIgYik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBtdWx0aXBseSAoR3JhcGhl bmUuVmVjMiBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29s IG5lYXIgKEdyYXBoZW5lLlZlYzIgdjIsIGZsb2F0IGVwc2lsb24pOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIgbmVnYXRlICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIgbm9ybWFsaXpl ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93 bmVkIEdyYXBoZW5lLlZlYzI/IG9uZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0K KysJCXB1YmxpYyBHcmFwaGVuZS5WZWMyIHNjYWxlIChmbG9hdCBmYWN0b3IpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIgc3VidHJhY3QgKEdy YXBoZW5lLlZlYzIgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg dm9pZCB0b19mbG9hdCAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIHJlZiBmbG9hdCBk ZXN0WzJdKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMg dW5vd25lZCBHcmFwaGVuZS5WZWMyPyB4X2F4aXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjMj8geV9heGlzICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVk IEdyYXBoZW5lLlZlYzI/IHplcm8gKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3ZlYzNfdCIsIHR5cGVf aWQgPSAiZ3JhcGhlbmVfdmVjM19nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgc3RydWN0IFZlYzMg eworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMg YWRkIChHcmFwaGVuZS5WZWMzIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIEdyYXBoZW5lLlZlYzMgY3Jvc3MgKEdyYXBoZW5lLlZlYzMgYik7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBkaXZpZGUgKEdyYXBo ZW5lLlZlYzMgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxv YXQgZG90IChHcmFwaGVuZS5WZWMzIGIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQor KwkJcHVibGljIGJvb2wgZXF1YWwgKEdyYXBoZW5lLlZlYzMgdjIpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF94ICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzIgZ2V0X3h5ICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgZ2V0X3h5MCAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0 IGdldF94eXowICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdy YXBoZW5lLlZlYzQgZ2V0X3h5ejEgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBnZXRfeHl6dyAoZmxvYXQgdyk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3kgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ogKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5WZWMzPyBpbml0IChm bG9hdCB4LCBmbG9hdCB5LCBmbG9hdCB6KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzM/IGluaXRfZnJvbV9mbG9hdCAoW0NDb2Rl IChhcnJheV9sZW5ndGggPSBmYWxzZSldIGZsb2F0IHNyY1szXSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5WZWMzPyBpbml0X2Zyb21f dmVjMyAoR3JhcGhlbmUuVmVjMyBzcmMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIGludGVycG9sYXRlIChHcmFwaGVuZS5WZWMzIHYyLCBk b3VibGUgZmFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBm bG9hdCBsZW5ndGggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg R3JhcGhlbmUuVmVjMyBtYXggKEdyYXBoZW5lLlZlYzMgYik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBtaW4gKEdyYXBoZW5lLlZlYzMgYik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMyBt dWx0aXBseSAoR3JhcGhlbmUuVmVjMyBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0K KysJCXB1YmxpYyBib29sIG5lYXIgKEdyYXBoZW5lLlZlYzMgdjIsIGZsb2F0IGVwc2lsb24pOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzMgbmVn YXRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5l LlZlYzMgbm9ybWFsaXplICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzM/IG9uZSAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWMzIHNjYWxlIChmbG9hdCBmYWN0 b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZl YzMgc3VidHJhY3QgKEdyYXBoZW5lLlZlYzMgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgdm9pZCB0b19mbG9hdCAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxz ZSldIHJlZiBmbG9hdCBkZXN0WzNdKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMzPyB4X2F4aXMgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUu VmVjMz8geV9heGlzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGlj IHN0YXRpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzM/IHpfYXhpcyAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWMzPyB6 ZXJvICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2Jq ZWN0LmgiLCBjbmFtZSA9ICJncmFwaGVuZV92ZWM0X3QiLCB0eXBlX2lkID0gImdyYXBoZW5lX3Zl YzRfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIHN0cnVjdCBWZWM0IHsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IGFkZCAoR3JhcGhlbmUuVmVj NCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5W ZWM0IGRpdmlkZSAoR3JhcGhlbmUuVmVjNCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBmbG9hdCBkb3QgKEdyYXBoZW5lLlZlYzQgYik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoR3JhcGhlbmUuVmVjNCB2Mik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3cgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ggKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjMiBn ZXRfeHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhl bmUuVmVjMyBnZXRfeHl6ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIGZsb2F0IGdldF95ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIGZsb2F0IGdldF96ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8gaW5pdCAoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQg eiwgZmxvYXQgdyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5v d25lZCBHcmFwaGVuZS5WZWM0PyBpbml0X2Zyb21fZmxvYXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3Ro ID0gZmFsc2UpXSBmbG9hdCBzcmNbNF0pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8gaW5pdF9mcm9tX3ZlYzIgKEdyYXBoZW5l LlZlYzIgc3JjLCBmbG9hdCB6LCBmbG9hdCB3KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyB1bm93bmVkIEdyYXBoZW5lLlZlYzQ/IGluaXRfZnJvbV92ZWMzIChHcmFw aGVuZS5WZWMzIHNyYywgZmxvYXQgdyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisr CQlwdWJsaWMgdW5vd25lZCBHcmFwaGVuZS5WZWM0PyBpbml0X2Zyb21fdmVjNCAoR3JhcGhlbmUu VmVjNCBzcmMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcmFw aGVuZS5WZWM0IGludGVycG9sYXRlIChHcmFwaGVuZS5WZWM0IHYyLCBkb3VibGUgZmFjdG9yKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBsZW5ndGggKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBt YXggKEdyYXBoZW5lLlZlYzQgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgR3JhcGhlbmUuVmVjNCBtaW4gKEdyYXBoZW5lLlZlYzQgYik7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgR3JhcGhlbmUuVmVjNCBtdWx0aXBseSAoR3JhcGhl bmUuVmVjNCBiKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29s IG5lYXIgKEdyYXBoZW5lLlZlYzQgdjIsIGZsb2F0IGVwc2lsb24pOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgbmVnYXRlICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgbm9ybWFsaXpl ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93 bmVkIEdyYXBoZW5lLlZlYzQ/IG9uZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0K KysJCXB1YmxpYyBHcmFwaGVuZS5WZWM0IHNjYWxlIChmbG9hdCBmYWN0b3IpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIEdyYXBoZW5lLlZlYzQgc3VidHJhY3QgKEdy YXBoZW5lLlZlYzQgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg dm9pZCB0b19mbG9hdCAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIHJlZiBmbG9hdCBk ZXN0WzRdKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzdGF0aWMg dW5vd25lZCBHcmFwaGVuZS5WZWM0PyB3X2F4aXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhlbmUuVmVjND8geF9heGlzICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVk IEdyYXBoZW5lLlZlYzQ/IHlfYXhpcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBHcmFwaGVuZS5WZWM0PyB6X2F4aXMgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR3JhcGhl bmUuVmVjND8gemVybyAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3Jh cGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiZ3JhcGhlbmVfZXVsZXJfb3JkZXJfdCIsIGNwcmVm aXggPSAiR1JBUEhFTkVfRVVMRVJfT1JERVJfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIGVudW0gRXVsZXJPcmRlciB7CisrCQlE RUZBVUxULAorKwkJWFlaLAorKwkJWVpYLAorKwkJWlhZLAorKwkJWFpZLAorKwkJWVhaLAorKwkJ WllYLAorKwkJU1hZWiwKKysJCVNYWVgsCisrCQlTWFpZLAorKwkJU1haWCwKKysJCVNZWlgsCisr CQlTWVpZLAorKwkJU1lYWiwKKysJCVNZWFksCisrCQlTWlhZLAorKwkJU1pYWiwKKysJCVNaWVgs CisrCQlTWllaLAorKwkJUlpZWCwKKysJCVJYWVgsCisrCQlSWVpYLAorKwkJUlhaWCwKKysJCVJY WlksCisrCQlSWVpZLAorKwkJUlpYWSwKKysJCVJZWFksCisrCQlSWVhaLAorKwkJUlpYWiwKKysJ CVJYWVosCisrCQlSWllaCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBo ZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gImdyYXBoZW5lX3JheV9pbnRlcnNlY3Rpb25fa2luZF90 IiwgY3ByZWZpeCA9ICJHUkFQSEVORV9SQVlfSU5URVJTRUNUSU9OX0tJTkRfIiwgaGFzX3R5cGVf aWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBlbnVt IFJheUludGVyc2VjdGlvbktpbmQgeworKwkJTk9ORSwKKysJCUVOVEVSLAorKwkJTEVBVkUKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25h bWUgPSAiR1JBUEhFTkVfSEFTX0dDQyIpXQorKwlwdWJsaWMgY29uc3QgaW50IEhBU19HQ0M7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9 ICJHUkFQSEVORV9IQVNfU0NBTEFSIildCisrCXB1YmxpYyBjb25zdCBpbnQgSEFTX1NDQUxBUjsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1l ID0gIkdSQVBIRU5FX0hBU19TU0UiKV0KKysJcHVibGljIGNvbnN0IGludCBIQVNfU1NFOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAi R1JBUEhFTkVfUEkiKV0KKysJcHVibGljIGNvbnN0IGRvdWJsZSBQSTsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImdyYXBoZW5lLWdvYmplY3QuaCIsIGNuYW1lID0gIkdSQVBIRU5FX1BJ XzIiKV0KKysJcHVibGljIGNvbnN0IGRvdWJsZSBQSV8yOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiR1JBUEhFTkVfU0lNRF9TIild CisrCXB1YmxpYyBjb25zdCBzdHJpbmcgU0lNRF9TOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiR1JBUEhFTkVfVkVDMl9MRU4iKV0K KysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgY29uc3QgaW50IFZFQzJfTEVO OworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25h bWUgPSAiR1JBUEhFTkVfVkVDM19MRU4iKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwlwdWJsaWMgY29uc3QgaW50IFZFQzNfTEVOOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUgPSAiR1JBUEhFTkVfVkVDNF9MRU4iKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgY29uc3QgaW50IFZFQzRfTEVOOwor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiZ3JhcGhlbmUtZ29iamVjdC5oIiwgY25hbWUg PSAiZmFsc2UiKV0KKysJcHVibGljIGNvbnN0IGludCBAZmFsc2U7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJncmFwaGVuZS1nb2JqZWN0LmgiLCBjbmFtZSA9ICJ0cnVlIildCisrCXB1 YmxpYyBjb25zdCBpbnQgQHRydWU7CisrfQorZGlmZiAtLWdpdCBhL3ZhcGkvbGlibXV0dGVyLTYu ZGVwcyBiL3ZhcGkvbGlibXV0dGVyLTYuZGVwcworbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4 IDAwMDAwMDAwLi4yMjM1MjVlNAorLS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9saWJtdXR0ZXIt Ni5kZXBzCitAQCAtMCwwICsxLDYgQEAKKytndGsrLTMuMAorK2pzb24tZ2xpYi0xLjAKKyttdXR0 ZXItY2x1dHRlci02CisreDExCisreGZpeGVzLTQuMAorK2dyYXBoZW5lLWdvYmplY3QtMS4wCitk aWZmIC0tZ2l0IGEvdmFwaS9saWJtdXR0ZXItNi52YXBpIGIvdmFwaS9saWJtdXR0ZXItNi52YXBp CituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAwMDAuLjMxZjQ4MDFjCistLS0gL2Rl di9udWxsCisrKysgYi92YXBpL2xpYm11dHRlci02LnZhcGkKK0BAIC0wLDAgKzEsMTQ3NSBAQAor Ky8qIGxpYm11dHRlci02LnZhcGkgZ2VuZXJhdGVkIGJ5IHZhcGlnZW4sIGRvIG5vdCBtb2RpZnku ICovCisrCisrW0NDb2RlIChjcHJlZml4ID0gIk1ldGEiLCBnaXJfbmFtZXNwYWNlID0gIk1ldGEi LCBnaXJfdmVyc2lvbiA9ICI2IiwgbG93ZXJfY2FzZV9jcHJlZml4ID0gIm1ldGFfIildCisrbmFt ZXNwYWNlIE1ldGEgeworKwluYW1lc3BhY2UgQ29tcG9zaXRvciB7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIiwgY25hbWUgPSAibWV0YV9k aXNhYmxlX3VucmVkaXJlY3RfZm9yX2Rpc3BsYXkiKV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBk aXNhYmxlX3VucmVkaXJlY3RfZm9yX2Rpc3BsYXkgKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiLCBj bmFtZSA9ICJtZXRhX2VuYWJsZV91bnJlZGlyZWN0X2Zvcl9kaXNwbGF5IildCisrCQlwdWJsaWMg c3RhdGljIHZvaWQgZW5hYmxlX3VucmVkaXJlY3RfZm9yX2Rpc3BsYXkgKE1ldGEuRGlzcGxheSBk aXNwbGF5KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL2NvbXBvc2l0b3It bXV0dGVyLmgiLCBjbmFtZSA9ICJtZXRhX2ZvY3VzX3N0YWdlX3dpbmRvdyIpXQorKwkJcHVibGlj IHN0YXRpYyB2b2lkIGZvY3VzX3N0YWdlX3dpbmRvdyAoTWV0YS5EaXNwbGF5IGRpc3BsYXksIHVp bnQzMiB0aW1lc3RhbXApOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvY29t cG9zaXRvci1tdXR0ZXIuaCIsIGNuYW1lID0gIm1ldGFfZ2V0X2ZlZWRiYWNrX2dyb3VwX2Zvcl9k aXNwbGF5IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfZmVl ZGJhY2tfZ3JvdXBfZm9yX2Rpc3BsYXkgKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiLCBjbmFtZSA9 ICJtZXRhX2dldF9zdGFnZV9mb3JfZGlzcGxheSIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVk IENsdXR0ZXIuQWN0b3IgZ2V0X3N0YWdlX2Zvcl9kaXNwbGF5IChNZXRhLkRpc3BsYXkgZGlzcGxh eSk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9jb21wb3NpdG9yLW11dHRl ci5oIiwgY25hbWUgPSAibWV0YV9nZXRfdG9wX3dpbmRvd19ncm91cF9mb3JfZGlzcGxheSIpXQor KwkJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3RvcF93aW5kb3dfZ3Jv dXBfZm9yX2Rpc3BsYXkgKE1ldGEuRGlzcGxheSBkaXNwbGF5KTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL2NvbXBvc2l0b3ItbXV0dGVyLmgiLCBjbmFtZSA9ICJtZXRhX2dl dF93aW5kb3dfYWN0b3JzIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgR0xpYi5MaXN0PENs dXR0ZXIuQWN0b3I+IGdldF93aW5kb3dfYWN0b3JzIChNZXRhLkRpc3BsYXkgZGlzcGxheSk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9jb21wb3NpdG9yLW11dHRlci5oIiwg Y25hbWUgPSAibWV0YV9nZXRfd2luZG93X2dyb3VwX2Zvcl9kaXNwbGF5IildCisrCQlwdWJsaWMg c3RhdGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfd2luZG93X2dyb3VwX2Zvcl9kaXNwbGF5 IChNZXRhLkRpc3BsYXkgZGlzcGxheSk7CisrCX0KKysJbmFtZXNwYWNlIFByZWZzIHsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3By ZWZzX2JlbGxfaXNfYXVkaWJsZSIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2JlbGxf aXNfYXVkaWJsZSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZz LmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2NoYW5nZV93b3Jrc3BhY2VfbmFtZSIpXQorKwkJcHVi bGljIHN0YXRpYyB2b2lkIHByZWZzX2NoYW5nZV93b3Jrc3BhY2VfbmFtZSAoaW50IGksIHN0cmlu ZyBuYW1lKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBj bmFtZSA9ICJtZXRhX3ByZWZzX2dldF9hY3Rpb25fZG91YmxlX2NsaWNrX3RpdGxlYmFyIildCisr CQlwdWJsaWMgc3RhdGljIEdEZXNrdG9wLlRpdGxlYmFyQWN0aW9uIHByZWZzX2dldF9hY3Rpb25f ZG91YmxlX2NsaWNrX3RpdGxlYmFyICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2FjdGlvbl9taWRkbGVfY2xp Y2tfdGl0bGViYXIiKV0KKysJCXB1YmxpYyBzdGF0aWMgR0Rlc2t0b3AuVGl0bGViYXJBY3Rpb24g cHJlZnNfZ2V0X2FjdGlvbl9taWRkbGVfY2xpY2tfdGl0bGViYXIgKCk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRf YWN0aW9uX3JpZ2h0X2NsaWNrX3RpdGxlYmFyIildCisrCQlwdWJsaWMgc3RhdGljIEdEZXNrdG9w LlRpdGxlYmFyQWN0aW9uIHByZWZzX2dldF9hY3Rpb25fcmlnaHRfY2xpY2tfdGl0bGViYXIgKCk7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAi bWV0YV9wcmVmc19nZXRfYXR0YWNoX21vZGFsX2RpYWxvZ3MiKV0KKysJCXB1YmxpYyBzdGF0aWMg Ym9vbCBwcmVmc19nZXRfYXR0YWNoX21vZGFsX2RpYWxvZ3MgKCk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfYXV0 b19tYXhpbWl6ZSIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF9hdXRvX21heGlt aXplICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNu YW1lID0gIm1ldGFfcHJlZnNfZ2V0X2F1dG9fcmFpc2UiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9v bCBwcmVmc19nZXRfYXV0b19yYWlzZSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9hdXRvX3JhaXNlX2RlbGF5 IildCisrCQlwdWJsaWMgc3RhdGljIGludCBwcmVmc19nZXRfYXV0b19yYWlzZV9kZWxheSAoKTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJt ZXRhX3ByZWZzX2dldF9idXR0b25fbGF5b3V0IildCisrCQlwdWJsaWMgc3RhdGljIE1ldGEuQnV0 dG9uTGF5b3V0IHByZWZzX2dldF9idXR0b25fbGF5b3V0ICgpOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2NlbnRl cl9uZXdfd2luZG93cyIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF9jZW50ZXJf bmV3X3dpbmRvd3MgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVm cy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfY29tcG9zaXRpbmdfbWFuYWdlciIpXQorKwkJ cHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF9jb21wb3NpdGluZ19tYW5hZ2VyICgpOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFf cHJlZnNfZ2V0X2N1cnNvcl9zaXplIildCisrCQlwdWJsaWMgc3RhdGljIGludCBwcmVmc19nZXRf Y3Vyc29yX3NpemUgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVm cy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfY3Vyc29yX3RoZW1lIildCisrCQlwdWJsaWMg c3RhdGljIHVub3duZWQgc3RyaW5nIHByZWZzX2dldF9jdXJzb3JfdGhlbWUgKCk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVm c19nZXRfZGlzYWJsZV93b3JrYXJvdW5kcyIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZz X2dldF9kaXNhYmxlX3dvcmthcm91bmRzICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2RyYWdfdGhyZXNob2xk IildCisrCQlwdWJsaWMgc3RhdGljIGludCBwcmVmc19nZXRfZHJhZ190aHJlc2hvbGQgKCk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0 YV9wcmVmc19nZXRfZHJhZ2dhYmxlX2JvcmRlcl93aWR0aCIpXQorKwkJcHVibGljIHN0YXRpYyBp bnQgcHJlZnNfZ2V0X2RyYWdnYWJsZV9ib3JkZXJfd2lkdGggKCk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfZHlu YW1pY193b3Jrc3BhY2VzIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X2R5bmFt aWNfd29ya3NwYWNlcyAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3By ZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9lZGdlX3RpbGluZyIpXQorKwkJcHVibGlj IHN0YXRpYyBib29sIHByZWZzX2dldF9lZGdlX3RpbGluZyAoKTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9mb2N1 c19jaGFuZ2Vfb25fcG9pbnRlcl9yZXN0IildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNf Z2V0X2ZvY3VzX2NoYW5nZV9vbl9wb2ludGVyX3Jlc3QgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfZm9jdXNf bW9kZSIpXQorKwkJcHVibGljIHN0YXRpYyBHRGVza3RvcC5Gb2N1c01vZGUgcHJlZnNfZ2V0X2Zv Y3VzX21vZGUgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5o IiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfZm9jdXNfbmV3X3dpbmRvd3MiKV0KKysJCXB1Ymxp YyBzdGF0aWMgR0Rlc2t0b3AuRm9jdXNOZXdXaW5kb3dzIHByZWZzX2dldF9mb2N1c19uZXdfd2lu ZG93cyAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBj bmFtZSA9ICJtZXRhX3ByZWZzX2dldF9mb3JjZV9mdWxsc2NyZWVuIildCisrCQlwdWJsaWMgc3Rh dGljIGJvb2wgcHJlZnNfZ2V0X2ZvcmNlX2Z1bGxzY3JlZW4gKCk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfZ25v bWVfYWNjZXNzaWJpbGl0eSIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF9nbm9t ZV9hY2Nlc3NpYmlsaXR5ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv cHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X2dub21lX2FuaW1hdGlvbnMiKV0KKysJ CXB1YmxpYyBzdGF0aWMgYm9vbCBwcmVmc19nZXRfZ25vbWVfYW5pbWF0aW9ucyAoKTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3By ZWZzX2dldF9rZXliaW5kaW5nX2FjdGlvbiIpXQorKwkJcHVibGljIHN0YXRpYyBNZXRhLktleUJp bmRpbmdBY3Rpb24gcHJlZnNfZ2V0X2tleWJpbmRpbmdfYWN0aW9uIChzdHJpbmcgbmFtZSk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0 YV9wcmVmc19nZXRfbW91c2VfYnV0dG9uX21lbnUiKV0KKysJCXB1YmxpYyBzdGF0aWMgaW50IHBy ZWZzX2dldF9tb3VzZV9idXR0b25fbWVudSAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9tb3VzZV9idXR0b25f bW9kcyIpXQorKwkJcHVibGljIHN0YXRpYyBNZXRhLlZpcnR1YWxNb2RpZmllciBwcmVmc19nZXRf bW91c2VfYnV0dG9uX21vZHMgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfbW91c2VfYnV0dG9uX3Jlc2l6ZSIp XQorKwkJcHVibGljIHN0YXRpYyBpbnQgcHJlZnNfZ2V0X21vdXNlX2J1dHRvbl9yZXNpemUgKCk7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAi bWV0YV9wcmVmc19nZXRfbnVtX3dvcmtzcGFjZXMiKV0KKysJCXB1YmxpYyBzdGF0aWMgaW50IHBy ZWZzX2dldF9udW1fd29ya3NwYWNlcyAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF9yYWlzZV9vbl9jbGljayIp XQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF9yYWlzZV9vbl9jbGljayAoKTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRh X3ByZWZzX2dldF9zaG93X2ZhbGxiYWNrX2FwcF9tZW51IildCisrCQlwdWJsaWMgc3RhdGljIGJv b2wgcHJlZnNfZ2V0X3Nob3dfZmFsbGJhY2tfYXBwX21lbnUgKCk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19nZXRfdGl0 bGViYXJfZm9udCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIFBhbmdvLkZvbnREZXNjcmlw dGlvbiBwcmVmc19nZXRfdGl0bGViYXJfZm9udCAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRhX3ByZWZzX2dldF92aXN1YWxfYmVs bCIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIHByZWZzX2dldF92aXN1YWxfYmVsbCAoKTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRh X3ByZWZzX2dldF92aXN1YWxfYmVsbF90eXBlIildCisrCQlwdWJsaWMgc3RhdGljIEdEZXNrdG9w LlZpc3VhbEJlbGxUeXBlIHByZWZzX2dldF92aXN1YWxfYmVsbF90eXBlICgpOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNf Z2V0X3dvcmtzcGFjZV9uYW1lIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgc3RyaW5nIHBy ZWZzX2dldF93b3Jrc3BhY2VfbmFtZSAoaW50IGkpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfZ2V0X3dvcmtzcGFjZXNf b25seV9vbl9wcmltYXJ5IildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgcHJlZnNfZ2V0X3dvcmtz cGFjZXNfb25seV9vbl9wcmltYXJ5ICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvcHJlZnMuaCIsIGNuYW1lID0gIm1ldGFfcHJlZnNfaW5pdCIpXQorKwkJcHVibGljIHN0 YXRpYyB2b2lkIHByZWZzX2luaXQgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9wcmVmcy5oIiwgY25hbWUgPSAibWV0YV9wcmVmc19zZXRfZm9yY2VfZnVsbHNjcmVlbiIp XQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHByZWZzX3NldF9mb3JjZV9mdWxsc2NyZWVuIChib29s IHdoZXRoZXIpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvcHJlZnMuaCIs IGNuYW1lID0gIm1ldGFfcHJlZnNfc2V0X251bV93b3Jrc3BhY2VzIildCisrCQlwdWJsaWMgc3Rh dGljIHZvaWQgcHJlZnNfc2V0X251bV93b3Jrc3BhY2VzIChpbnQgbl93b3Jrc3BhY2VzKTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3ByZWZzLmgiLCBjbmFtZSA9ICJtZXRh X3ByZWZzX3NldF9zaG93X2ZhbGxiYWNrX2FwcF9tZW51IildCisrCQlwdWJsaWMgc3RhdGljIHZv aWQgcHJlZnNfc2V0X3Nob3dfZmFsbGJhY2tfYXBwX21lbnUgKGJvb2wgd2hldGhlcik7CisrCX0K KysJbmFtZXNwYWNlIFV0aWwgeworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv dXRpbC5oIiwgY25hbWUgPSAibWV0YV9hZGRfdmVyYm9zZV90b3BpYyIpXQorKwkJcHVibGljIHN0 YXRpYyB2b2lkIGFkZF92ZXJib3NlX3RvcGljIChNZXRhLkRlYnVnVG9waWMgdG9waWMpOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9l eHRlcm5hbF9iaW5kaW5nX25hbWVfZm9yX2FjdGlvbiIpXQorKwkJcHVibGljIHN0YXRpYyBzdHJp bmcgZXh0ZXJuYWxfYmluZGluZ19uYW1lX2Zvcl9hY3Rpb24gKHVpbnQga2V5YmluZGluZ19hY3Rp b24pOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUg PSAibWV0YV9nZXRfbG9jYWxlX2RpcmVjdGlvbiIpXQorKwkJcHVibGljIHN0YXRpYyBNZXRhLkxv Y2FsZURpcmVjdGlvbiBnZXRfbG9jYWxlX2RpcmVjdGlvbiAoKTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfZ3Jhdml0eV90b19zdHJp bmciKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBzdHJpbmcgZ3Jhdml0eV90b19zdHJpbmcg KGludCBncmF2aXR5KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwu aCIsIGNuYW1lID0gIm1ldGFfaXNfZGVidWdnaW5nIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wg aXNfZGVidWdnaW5nICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRp bC5oIiwgY25hbWUgPSAibWV0YV9pc19zeW5jaW5nIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wg aXNfc3luY2luZyAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwu aCIsIGNuYW1lID0gIm1ldGFfaXNfdmVyYm9zZSIpXQorKwkJcHVibGljIHN0YXRpYyBib29sIGlz X3ZlcmJvc2UgKCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgi LCBjbmFtZSA9ICJtZXRhX2lzX3dheWxhbmRfY29tcG9zaXRvciIpXQorKwkJcHVibGljIHN0YXRp YyBib29sIGlzX3dheWxhbmRfY29tcG9zaXRvciAoKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfbGF0ZXJfYWRkIildCisrCQlwdWJs aWMgc3RhdGljIHVpbnQgbGF0ZXJfYWRkIChNZXRhLkxhdGVyVHlwZSB3aGVuLCBvd25lZCBHTGli LlNvdXJjZUZ1bmMgZnVuYyk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91 dGlsLmgiLCBjbmFtZSA9ICJtZXRhX2xhdGVyX3JlbW92ZSIpXQorKwkJcHVibGljIHN0YXRpYyB2 b2lkIGxhdGVyX3JlbW92ZSAodWludCBsYXRlcl9pZCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3BvcF9ub19tc2dfcHJlZml4Iild CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgcG9wX25vX21zZ19wcmVmaXggKCk7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS91dGlsLmgiLCBjbmFtZSA9ICJtZXRhX3B1c2hfbm9f bXNnX3ByZWZpeCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHB1c2hfbm9fbXNnX3ByZWZpeCAo KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0g Im1ldGFfcmVjdCIpXQorKwkJcHVibGljIHN0YXRpYyBNZXRhLlJlY3RhbmdsZT8gcmVjdCAoaW50 IHgsIGludCB5LCBpbnQgd2lkdGgsIGludCBoZWlnaHQpOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvdXRpbC5oIiwgY25hbWUgPSAibWV0YV9yZW1vdmVfdmVyYm9zZV90b3Bp YyIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHJlbW92ZV92ZXJib3NlX3RvcGljIChNZXRhLkRl YnVnVG9waWMgdG9waWMpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRp bC5oIiwgY25hbWUgPSAibWV0YV9zaG93X2RpYWxvZyIpXQorKwkJcHVibGljIHN0YXRpYyBHTGli LlBpZCBzaG93X2RpYWxvZyAoc3RyaW5nIHR5cGUsIHN0cmluZyBtZXNzYWdlLCBzdHJpbmcgdGlt ZW91dCwgc3RyaW5nIGRpc3BsYXksIHN0cmluZyBva190ZXh0LCBzdHJpbmcgY2FuY2VsX3RleHQs IHN0cmluZyBpY29uX25hbWUsIGludCB0cmFuc2llbnRfZm9yLCBHTGliLlNMaXN0PHZvaWQqPiBj b2x1bW5zLCBHTGliLlNMaXN0PHZvaWQqPiBlbnRyaWVzKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfdW5zaWduZWRfbG9uZ19lcXVh bCIpXQorKwkJcHVibGljIHN0YXRpYyBpbnQgdW5zaWduZWRfbG9uZ19lcXVhbCAodm9pZCogdjEs IHZvaWQqIHYyKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3V0aWwuaCIs IGNuYW1lID0gIm1ldGFfdW5zaWduZWRfbG9uZ19oYXNoIildCisrCQlwdWJsaWMgc3RhdGljIHVp bnQgdW5zaWduZWRfbG9uZ19oYXNoICh2b2lkKiB2KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJtZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfeDExX2Vycm9yX3RyYXBfcG9wIild CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgeDExX2Vycm9yX3RyYXBfcG9wIChNZXRhLlgxMURpc3Bs YXkgeDExX2Rpc3BsYXkpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvdXRp bC5oIiwgY25hbWUgPSAibWV0YV94MTFfZXJyb3JfdHJhcF9wb3Bfd2l0aF9yZXR1cm4iKV0KKysJ CXB1YmxpYyBzdGF0aWMgaW50IHgxMV9lcnJvcl90cmFwX3BvcF93aXRoX3JldHVybiAoTWV0YS5Y MTFEaXNwbGF5IHgxMV9kaXNwbGF5KTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL3V0aWwuaCIsIGNuYW1lID0gIm1ldGFfeDExX2Vycm9yX3RyYXBfcHVzaCIpXQorKwkJcHVi bGljIHN0YXRpYyB2b2lkIHgxMV9lcnJvcl90cmFwX3B1c2ggKE1ldGEuWDExRGlzcGxheSB4MTFf ZGlzcGxheSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1i YWNrZW5kLmgiLCB0eXBlX2lkID0gIm1ldGFfYmFja2VuZF9nZXRfdHlwZSAoKSIpXQorKwlwdWJs aWMgYWJzdHJhY3QgY2xhc3MgQmFja2VuZCA6IEdMaWIuT2JqZWN0LCBHTGliLkluaXRhYmxlIHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3Rl ZCBCYWNrZW5kICgpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1i YWNrZW5kLmgiLCBjbmFtZSA9ICJtZXRhX2dldF9iYWNrZW5kIildCisrCQlwdWJsaWMgc3RhdGlj IHVub3duZWQgTWV0YS5CYWNrZW5kIGdldF9iYWNrZW5kICgpOworKwkJcHVibGljIHVub3duZWQg TWV0YS5EbmQgZ2V0X2RuZCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuUmVtb3RlQWNjZXNz Q29udHJvbGxlciBnZXRfcmVtb3RlX2FjY2Vzc19jb250cm9sbGVyICgpOworKwkJcHVibGljIHVu b3duZWQgQ2x1dHRlci5BY3RvciBnZXRfc3RhZ2UgKCk7CisrCQlwdWJsaWMgdm9pZCBsb2NrX2xh eW91dF9ncm91cCAodWludCBpZHgpOworKwkJcHVibGljIHZvaWQgc2V0X2tleW1hcCAoc3RyaW5n IGxheW91dHMsIHN0cmluZyB2YXJpYW50cywgc3RyaW5nIG9wdGlvbnMpOworKwkJcHVibGljIHZv aWQgc2V0X251bWxvY2sgKGJvb2wgbnVtbG9ja19zdGF0ZSk7CisrCQlwdWJsaWMgc2lnbmFsIHZv aWQga2V5bWFwX2NoYW5nZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQga2V5bWFwX2xheW91 dF9ncm91cF9jaGFuZ2VkICh1aW50IG9iamVjdCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgbGFz dF9kZXZpY2VfY2hhbmdlZCAoQ2x1dHRlci5JbnB1dERldmljZSBvYmplY3QpOworKwkJcHVibGlj IHNpZ25hbCB2b2lkIGxpZF9pc19jbG9zZWRfY2hhbmdlZCAoYm9vbCBvYmplY3QpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtYmFja2dyb3VuZC5oIiwgdHlw ZV9pZCA9ICJtZXRhX2JhY2tncm91bmRfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIEJh Y2tncm91bmQgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rp b24gPSBmYWxzZSldCisrCQlwdWJsaWMgQmFja2dyb3VuZCAoTWV0YS5EaXNwbGF5IGRpc3BsYXkp OworKwkJcHVibGljIHN0YXRpYyB2b2lkIHJlZnJlc2hfYWxsICgpOworKwkJcHVibGljIHZvaWQg c2V0X2JsZW5kIChHTGliLkZpbGUgZmlsZTEsIEdMaWIuRmlsZSBmaWxlMiwgZG91YmxlIGJsZW5k X2ZhY3RvciwgR0Rlc2t0b3AuQmFja2dyb3VuZFN0eWxlIHN0eWxlKTsKKysJCXB1YmxpYyB2b2lk IHNldF9jb2xvciAoQ2x1dHRlci5Db2xvciBjb2xvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRfZmls ZSAoR0xpYi5GaWxlPyBmaWxlLCBHRGVza3RvcC5CYWNrZ3JvdW5kU3R5bGUgc3R5bGUpOworKwkJ cHVibGljIHZvaWQgc2V0X2dyYWRpZW50IChHRGVza3RvcC5CYWNrZ3JvdW5kU2hhZGluZyBzaGFk aW5nX2RpcmVjdGlvbiwgQ2x1dHRlci5Db2xvciBjb2xvciwgQ2x1dHRlci5Db2xvciBzZWNvbmRf Y29sb3IpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgTWV0YS5EaXNwbGF5IG1l dGFfZGlzcGxheSB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgc2lnbmFsIHZv aWQgY2hhbmdlZCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t ZXRhLWJhY2tncm91bmQtYWN0b3IuaCIsIHR5cGVfaWQgPSAibWV0YV9iYWNrZ3JvdW5kX2FjdG9y X2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBCYWNrZ3JvdW5kQWN0b3IgOiBDbHV0dGVy LkFjdG9yLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5Db250 YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlwdWJsaWMgQmFja2dy b3VuZEFjdG9yIChNZXRhLkRpc3BsYXkgZGlzcGxheSwgaW50IG1vbml0b3IpOworKwkJcHVibGlj IHZvaWQgc2V0X2JhY2tncm91bmQgKE1ldGEuQmFja2dyb3VuZCBiYWNrZ3JvdW5kKTsKKysJCXB1 YmxpYyB2b2lkIHNldF9ncmFkaWVudCAoYm9vbCBlbmFibGVkLCBpbnQgaGVpZ2h0LCBkb3VibGUg dG9uZV9zdGFydCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfbW9uaXRvciAoaW50IG1vbml0b3IpOwor KwkJcHVibGljIHZvaWQgc2V0X3ZpZ25ldHRlIChib29sIGVuYWJsZWQsIGRvdWJsZSBicmlnaHRu ZXNzLCBkb3VibGUgc2hhcnBuZXNzKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGlj IE1ldGEuQmFja2dyb3VuZCBiYWNrZ3JvdW5kIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGRvdWJsZSBicmlnaHRuZXNzIHsgZ2V0OyBzZXQ7IH0K KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgZ3JhZGllbnQgeyBnZXQ7IHNl dDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IGdyYWRpZW50X2hlaWdo dCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBkb3VibGUg Z3JhZGllbnRfbWF4X2RhcmtuZXNzIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJcHVibGljIE1ldGEuRGlzcGxheSBtZXRhX2Rpc3BsYXkgeyBvd25lZCBnZXQ7IGNvbnN0 cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IG1vbml0b3IgeyBn ZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCB2 aWduZXR0ZSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBk b3VibGUgdmlnbmV0dGVfc2hhcnBuZXNzIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWJhY2tncm91bmQtZ3JvdXAuaCIsIHR5cGVfaWQg PSAibWV0YV9iYWNrZ3JvdW5kX2dyb3VwX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBC YWNrZ3JvdW5kR3JvdXAgOiBDbHV0dGVyLkFjdG9yLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIu QW5pbWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0 b3IqIildCisrCQlwdWJsaWMgQmFja2dyb3VuZEdyb3VwICgpOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtYmFja2dyb3VuZC1pbWFnZS5oIiwgdHlwZV9pZCA9 ICJtZXRhX2JhY2tncm91bmRfaW1hZ2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIEJh Y2tncm91bmRJbWFnZSA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBCYWNrZ3JvdW5kSW1hZ2UgKCk7CisrCQlw dWJsaWMgYm9vbCBnZXRfc3VjY2VzcyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENvZ2wuVGV4dHVy ZSBnZXRfdGV4dHVyZSAoKTsKKysJCXB1YmxpYyBib29sIGlzX2xvYWRlZCAoKTsKKysJCXB1Ymxp YyBzaWduYWwgdm9pZCBsb2FkZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWV0YS1iYWNrZ3JvdW5kLWltYWdlLmgiLCB0eXBlX2lkID0gIm1ldGFfYmFja2dy b3VuZF9pbWFnZV9jYWNoZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgQmFja2dyb3Vu ZEltYWdlQ2FjaGUgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgQmFja2dyb3VuZEltYWdlQ2FjaGUgKCk7Cisr CQlwdWJsaWMgc3RhdGljIHVub3duZWQgTWV0YS5CYWNrZ3JvdW5kSW1hZ2VDYWNoZSBnZXRfZGVm YXVsdCAoKTsKKysJCXB1YmxpYyBNZXRhLkJhY2tncm91bmRJbWFnZSBsb2FkIChHTGliLkZpbGUg ZmlsZSk7CisrCQlwdWJsaWMgdm9pZCBwdXJnZSAoR0xpYi5GaWxlIGZpbGUpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL2JhcnJpZXIuaCIsIHR5cGVfaWQgPSAibWV0 YV9iYXJyaWVyX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBCYXJyaWVyIDogR0xpYi5P YmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJ cHJvdGVjdGVkIEJhcnJpZXIgKCk7CisrCQlwdWJsaWMgdm9pZCBkZXN0cm95ICgpOworKwkJcHVi bGljIGJvb2wgaXNfYWN0aXZlICgpOworKwkJcHVibGljIHZvaWQgcmVsZWFzZSAoTWV0YS5CYXJy aWVyRXZlbnQgZXZlbnQpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgTWV0YS5C YXJyaWVyRGlyZWN0aW9uIGRpcmVjdGlvbnMgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgTWV0YS5EaXNwbGF5IGRpc3BsYXkgeyBvd25lZCBnZXQ7 IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IHgxIHsg Z2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCB4 MiB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBp bnQgeTEgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJs aWMgaW50IHkyIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBoaXQg KE1ldGEuQmFycmllckV2ZW50IGV2ZW50KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBsZWZ0IChN ZXRhLkJhcnJpZXJFdmVudCBldmVudCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvYmFycmllci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVl X2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAibWV0YV9iYXJyaWVyX2V2ZW50 X2dldF90eXBlICgpIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgQmFycmllckV2ZW50 IHsKKysJCXB1YmxpYyBpbnQgZHQ7CisrCQlwdWJsaWMgZG91YmxlIGR4OworKwkJcHVibGljIGRv dWJsZSBkeTsKKysJCXB1YmxpYyBpbnQgZXZlbnRfaWQ7CisrCQlwdWJsaWMgYm9vbCBncmFiYmVk OworKwkJcHVibGljIGJvb2wgcmVsZWFzZWQ7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlw dWJsaWMgZG91YmxlIHg7CisrCQlwdWJsaWMgZG91YmxlIHk7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1jdXJzb3ItdHJhY2tlci5oIiwgdHlwZV9pZCA9ICJt ZXRhX2N1cnNvcl90cmFja2VyX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBDdXJzb3JU cmFja2VyIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIEN1cnNvclRyYWNrZXIgKCk7CisrCQlwdWJsaWMgc3Rh dGljIHVub3duZWQgTWV0YS5DdXJzb3JUcmFja2VyIGdldF9mb3JfZGlzcGxheSAoTWV0YS5EaXNw bGF5IGRpc3BsYXkpOworKwkJcHVibGljIHZvaWQgZ2V0X2hvdCAob3V0IGludCB4LCBvdXQgaW50 IHkpOworKwkJcHVibGljIHZvaWQgZ2V0X3BvaW50ZXIgKGludCB4LCBpbnQgeSwgQ2x1dHRlci5N b2RpZmllclR5cGUgbW9kcyk7CisrCQlwdWJsaWMgYm9vbCBnZXRfcG9pbnRlcl92aXNpYmxlICgp OworKwkJcHVibGljIHVub3duZWQgQ29nbC5UZXh0dXJlIGdldF9zcHJpdGUgKCk7CisrCQlwdWJs aWMgdm9pZCBzZXRfcG9pbnRlcl92aXNpYmxlIChib29sIHZpc2libGUpOworKwkJcHVibGljIHNp Z25hbCB2b2lkIGN1cnNvcl9jaGFuZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGN1cnNv cl9tb3ZlZCAoZmxvYXQgeCwgZmxvYXQgeSk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgdmlzaWJp bGl0eV9jaGFuZ2VkICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L2Rpc3BsYXkuaCIsIHR5cGVfaWQgPSAibWV0YV9kaXNwbGF5X2dldF90eXBlICgpIildCisrCXB1 YmxpYyBjbGFzcyBEaXNwbGF5IDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIERpc3BsYXkgKCk7CisrCQlwdWJs aWMgdm9pZCBhZGRfaWdub3JlZF9jcm9zc2luZ19zZXJpYWwgKHVsb25nIHNlcmlhbCk7CisrCQlw dWJsaWMgdWludCBhZGRfa2V5YmluZGluZyAoc3RyaW5nIG5hbWUsIEdMaWIuU2V0dGluZ3Mgc2V0 dGluZ3MsIE1ldGEuS2V5QmluZGluZ0ZsYWdzIGZsYWdzLCBvd25lZCBNZXRhLktleUhhbmRsZXJG dW5jIGhhbmRsZXIpOworKwkJcHVibGljIGJvb2wgYmVnaW5fZ3JhYl9vcCAoTWV0YS5XaW5kb3cg d2luZG93LCBNZXRhLkdyYWJPcCBvcCwgYm9vbCBwb2ludGVyX2FscmVhZHlfZ3JhYmJlZCwgYm9v bCBmcmFtZV9hY3Rpb24sIGludCBidXR0b24sIHVsb25nIG1vZG1hc2ssIHVpbnQzMiB0aW1lc3Rh bXAsIGludCByb290X3gsIGludCByb290X3kpOworKwkJcHVibGljIHZvaWQgY2xlYXJfbW91c2Vf bW9kZSAoKTsKKysJCXB1YmxpYyB2b2lkIGNsb3NlICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1 YmxpYyB2b2lkIGVuZF9ncmFiX29wICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lk IGZvY3VzX2RlZmF1bHRfd2luZG93ICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lk IGZyZWV6ZV9rZXlib2FyZCAodWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgaW50IGdldF9j dXJyZW50X21vbml0b3IgKCk7CisrCQlwdWJsaWMgdWludDMyIGdldF9jdXJyZW50X3RpbWUgKCk7 CisrCQlwdWJsaWMgdWludDMyIGdldF9jdXJyZW50X3RpbWVfcm91bmR0cmlwICgpOworKwkJcHVi bGljIHVub3duZWQgTWV0YS5XaW5kb3cgZ2V0X2ZvY3VzX3dpbmRvdyAoKTsKKysJCXB1YmxpYyBN ZXRhLkdyYWJPcCBnZXRfZ3JhYl9vcCAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9rZXliaW5kaW5n X2FjdGlvbiAodWludCBrZXljb2RlLCB1bG9uZyBtYXNrKTsKKysJCXB1YmxpYyB1aW50MzIgZ2V0 X2xhc3RfdXNlcl90aW1lICgpOworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIGdldF9tb25pdG9y X2dlb21ldHJ5IChpbnQgbW9uaXRvcik7CisrCQlwdWJsaWMgYm9vbCBnZXRfbW9uaXRvcl9pbl9m dWxsc2NyZWVuIChpbnQgbW9uaXRvcik7CisrCQlwdWJsaWMgaW50IGdldF9tb25pdG9yX2luZGV4 X2Zvcl9yZWN0IChNZXRhLlJlY3RhbmdsZSByZWN0KTsKKysJCXB1YmxpYyBpbnQgZ2V0X21vbml0 b3JfbmVpZ2hib3JfaW5kZXggKGludCB3aGljaF9tb25pdG9yLCBNZXRhLkRpc3BsYXlEaXJlY3Rp b24gZGlyKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfbW9uaXRvcl9zY2FsZSAoaW50IG1vbml0b3Ip OworKwkJcHVibGljIGludCBnZXRfbl9tb25pdG9ycyAoKTsKKysJCXB1YmxpYyBzdHJpbmcgZ2V0 X3BhZF9hY3Rpb25fbGFiZWwgKENsdXR0ZXIuSW5wdXREZXZpY2UgcGFkLCBNZXRhLlBhZEFjdGlv blR5cGUgYWN0aW9uX3R5cGUsIHVpbnQgYWN0aW9uX251bWJlcik7CisrCQlwdWJsaWMgaW50IGdl dF9wcmltYXJ5X21vbml0b3IgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLlNlbGVjdGlvbiBn ZXRfc2VsZWN0aW9uICgpOworKwkJcHVibGljIHZvaWQgZ2V0X3NpemUgKG91dCBpbnQgd2lkdGgs IG91dCBpbnQgaGVpZ2h0KTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuU291bmRQbGF5ZXIgZ2V0 X3NvdW5kX3BsYXllciAoKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuV2luZG93IGdldF90YWJf Y3VycmVudCAoTWV0YS5UYWJMaXN0IHR5cGUsIE1ldGEuV29ya3NwYWNlIHdvcmtzcGFjZSk7Cisr CQlwdWJsaWMgR0xpYi5MaXN0PHdlYWsgTWV0YS5XaW5kb3c+IGdldF90YWJfbGlzdCAoTWV0YS5U YWJMaXN0IHR5cGUsIE1ldGEuV29ya3NwYWNlPyB3b3Jrc3BhY2UpOworKwkJcHVibGljIHVub3du ZWQgTWV0YS5XaW5kb3cgZ2V0X3RhYl9uZXh0IChNZXRhLlRhYkxpc3QgdHlwZSwgTWV0YS5Xb3Jr c3BhY2Ugd29ya3NwYWNlLCBNZXRhLldpbmRvdz8gd2luZG93LCBib29sIGJhY2t3YXJkKTsKKysJ CXB1YmxpYyB1bm93bmVkIE1ldGEuV29ya3NwYWNlTWFuYWdlciBnZXRfd29ya3NwYWNlX21hbmFn ZXIgKCk7CisrCQlwdWJsaWMgdWludCBncmFiX2FjY2VsZXJhdG9yIChzdHJpbmcgYWNjZWxlcmF0 b3IsIE1ldGEuS2V5QmluZGluZ0ZsYWdzIGZsYWdzKTsKKysJCXB1YmxpYyBib29sIGlzX3BvaW50 ZXJfZW11bGF0aW5nX3NlcXVlbmNlIChDbHV0dGVyLkV2ZW50U2VxdWVuY2U/IHNlcXVlbmNlKTsK KysJCXB1YmxpYyBib29sIHJlbW92ZV9rZXliaW5kaW5nIChzdHJpbmcgbmFtZSk7CisrCQlwdWJs aWMgdm9pZCByZXF1ZXN0X3BhZF9vc2QgKENsdXR0ZXIuSW5wdXREZXZpY2UgcGFkLCBib29sIGVk aXRpb25fbW9kZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY3Vyc29yIChNZXRhLkN1cnNvciBjdXJz b3IpOworKwkJcHVibGljIHZvaWQgc2V0X2lucHV0X2ZvY3VzIChNZXRhLldpbmRvdyB3aW5kb3cs IGJvb2wgZm9jdXNfZnJhbWUsIHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIEdMaWIuU0xp c3Q8d2VhayBNZXRhLldpbmRvdz4gc29ydF93aW5kb3dzX2J5X3N0YWNraW5nIChHTGliLlNMaXN0 PE1ldGEuV2luZG93PiB3aW5kb3dzKTsKKysJCXB1YmxpYyBib29sIHN1cHBvcnRzX2V4dGVuZGVk X2JhcnJpZXJzICgpOworKwkJcHVibGljIHZvaWQgdW5mcmVlemVfa2V5Ym9hcmQgKHVpbnQzMiB0 aW1lc3RhbXApOworKwkJcHVibGljIGJvb2wgdW5ncmFiX2FjY2VsZXJhdG9yICh1aW50IGFjdGlv bl9pZCk7CisrCQlwdWJsaWMgdm9pZCB1bmdyYWJfa2V5Ym9hcmQgKHVpbnQzMiB0aW1lc3RhbXAp OworKwkJcHVibGljIHZvaWQgdW5zZXRfaW5wdXRfZm9jdXMgKHVpbnQzMiB0aW1lc3RhbXApOwor KwkJcHVibGljIGJvb2wgeHNlcnZlcl90aW1lX2lzX2JlZm9yZSAodWludDMyIHRpbWUxLCB1aW50 MzIgdGltZTIpOworKwkJcHVibGljIE1ldGEuV2luZG93IGZvY3VzX3dpbmRvdyB7IGdldDsgfQor KwkJcHVibGljIHNpZ25hbCB2b2lkIGFjY2VsZXJhdG9yX2FjdGl2YXRlZCAodWludCBvYmplY3Qs IENsdXR0ZXIuSW5wdXREZXZpY2UgcDAsIHVpbnQgcDEpOworKwkJcHVibGljIHNpZ25hbCB2b2lk IGNsb3NpbmcgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgY3Vyc29yX3VwZGF0ZWQgKCk7Cisr CQlwdWJsaWMgc2lnbmFsIHZvaWQgZ2xfdmlkZW9fbWVtb3J5X3B1cmdlZCAoKTsKKysJCXB1Ymxp YyBzaWduYWwgdm9pZCBncmFiX29wX2JlZ2luIChNZXRhLkRpc3BsYXkgb2JqZWN0LCBNZXRhLldp bmRvdyBwMCwgTWV0YS5HcmFiT3AgcDEpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGdyYWJfb3Bf ZW5kIChNZXRhLkRpc3BsYXkgb2JqZWN0LCBNZXRhLldpbmRvdyBwMCwgTWV0YS5HcmFiT3AgcDEp OworKwkJcHVibGljIHNpZ25hbCB2b2lkIGluX2Z1bGxzY3JlZW5fY2hhbmdlZCAoKTsKKysJCXB1 YmxpYyBzaWduYWwgYm9vbCBtb2RpZmllcnNfYWNjZWxlcmF0b3JfYWN0aXZhdGVkICgpOworKwkJ cHVibGljIHNpZ25hbCB2b2lkIG92ZXJsYXlfa2V5ICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lk IHBhZF9tb2RlX3N3aXRjaCAoQ2x1dHRlci5JbnB1dERldmljZSBvYmplY3QsIHVpbnQgcDAsIHVp bnQgcDEpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHJlc3RhY2tlZCAoKTsKKysJCXB1YmxpYyBz aWduYWwgYm9vbCByZXN0YXJ0ICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHNob3dfb3NkIChp bnQgb2JqZWN0LCBzdHJpbmcgcDAsIHN0cmluZyBwMSk7CisrCQlwdWJsaWMgc2lnbmFsIHVub3du ZWQgQ2x1dHRlci5BY3Rvcj8gc2hvd19wYWRfb3NkIChDbHV0dGVyLklucHV0RGV2aWNlIHBhZCwg R0xpYi5TZXR0aW5ncyBzZXR0aW5ncywgc3RyaW5nIGxheW91dF9wYXRoLCBib29sIGVkaXRpb25f bW9kZSwgaW50IG1vbml0b3JfaWR4KTsKKysJCXB1YmxpYyBzaWduYWwgYm9vbCBzaG93X3Jlc2l6 ZV9wb3B1cCAoYm9vbCBvYmplY3QsIE1ldGEuUmVjdGFuZ2xlIHAwLCBpbnQgcDEsIGludCBwMik7 CisrCQlwdWJsaWMgc2lnbmFsIGJvb2wgc2hvd19yZXN0YXJ0X21lc3NhZ2UgKHN0cmluZz8gbWVz c2FnZSk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgc2hvd2luZ19kZXNrdG9wX2NoYW5nZWQgKCk7 CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgd2luZG93X2NyZWF0ZWQgKE1ldGEuV2luZG93IG9iamVj dCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgd2luZG93X2RlbWFuZHNfYXR0ZW50aW9uIChNZXRh LldpbmRvdyBvYmplY3QpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdpbmRvd19lbnRlcmVkX21v bml0b3IgKGludCBvYmplY3QsIE1ldGEuV2luZG93IHAwKTsKKysJCXB1YmxpYyBzaWduYWwgdm9p ZCB3aW5kb3dfbGVmdF9tb25pdG9yIChpbnQgb2JqZWN0LCBNZXRhLldpbmRvdyBwMCk7CisrCQlw dWJsaWMgc2lnbmFsIHZvaWQgd2luZG93X21hcmtlZF91cmdlbnQgKE1ldGEuV2luZG93IG9iamVj dCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgd29ya2FyZWFzX2NoYW5nZWQgKCk7CisrCQlwdWJs aWMgc2lnbmFsIHZvaWQgeDExX2Rpc3BsYXlfY2xvc2luZyAoKTsKKysJCXB1YmxpYyBzaWduYWwg dm9pZCB4MTFfZGlzcGxheV9vcGVuZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgeDExX2Rp c3BsYXlfc2V0dXAgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWV0YS1kbmQuaCIsIHR5cGVfaWQgPSAibWV0YV9kbmRfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGlj IGNsYXNzIERuZCA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5j dGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBEbmQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZv aWQgZG5kX2VudGVyICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIGRuZF9sZWF2ZSAoKTsKKysJ CXB1YmxpYyBzaWduYWwgdm9pZCBkbmRfcG9zaXRpb25fY2hhbmdlIChpbnQgb2JqZWN0LCBpbnQg cDApOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGhh c190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIEZyYW1lIHsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWlkbGUtbW9uaXRv ci5oIiwgdHlwZV9pZCA9ICJtZXRhX2lkbGVfbW9uaXRvcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJs aWMgY2xhc3MgSWRsZU1vbml0b3IgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25z dHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgSWRsZU1vbml0b3IgKCk7Cisr CQlwdWJsaWMgdWludCBhZGRfaWRsZV93YXRjaCAodWludDY0IGludGVydmFsX21zZWMsIG93bmVk IE1ldGEuSWRsZU1vbml0b3JXYXRjaEZ1bmM/IGNhbGxiYWNrKTsKKysJCXB1YmxpYyB1aW50IGFk ZF91c2VyX2FjdGl2ZV93YXRjaCAob3duZWQgTWV0YS5JZGxlTW9uaXRvcldhdGNoRnVuYz8gY2Fs bGJhY2spOworKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIE1ldGEuSWRsZU1vbml0b3IgZ2V0X2Nv cmUgKCk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgTWV0YS5JZGxlTW9uaXRvciBnZXRfZm9y X2RldmljZSAoQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2UpOworKwkJcHVibGljIGludDY0IGdl dF9pZGxldGltZSAoKTsKKysJCXB1YmxpYyB2b2lkIHJlbW92ZV93YXRjaCAodWludCBpZCk7Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlIGRldmlj ZSB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWFpbi5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVl X2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAibWV0YV9rZXlfYmluZGluZ19n ZXRfdHlwZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIEtleUJpbmRpbmcgewor KwkJcHVibGljIHVpbnQgZ2V0X21hc2sgKCk7CisrCQlwdWJsaWMgTWV0YS5WaXJ0dWFsTW9kaWZp ZXIgZ2V0X21vZGlmaWVycyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfbmFtZSAo KTsKKysJCXB1YmxpYyBib29sIGlzX2J1aWx0aW4gKCk7CisrCQlwdWJsaWMgYm9vbCBpc19yZXZl cnNlZCAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAibWV0YV9rZXliaW5kaW5nc19zZXRfY3VzdG9t X2hhbmRsZXIiKV0KKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBzZXRfY3VzdG9tX2hhbmRsZXIgKHN0 cmluZyBuYW1lLCBvd25lZCBNZXRhLktleUhhbmRsZXJGdW5jPyBoYW5kbGVyKTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLWxhdW5jaC1jb250ZXh0LmgiLCB0 eXBlX2lkID0gIm1ldGFfbGF1bmNoX2NvbnRleHRfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNs YXNzIExhdW5jaENvbnRleHQgOiBHTGliLkFwcExhdW5jaENvbnRleHQgeworKwkJW0NDb2RlICho YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIExhdW5jaENvbnRl eHQgKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfdGltZXN0YW1wICh1aW50MzIgdGltZXN0YW1wKTsK KysJCXB1YmxpYyB2b2lkIHNldF93b3Jrc3BhY2UgKE1ldGEuV29ya3NwYWNlIHdvcmtzcGFjZSk7 CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBNZXRhLkRpc3BsYXkgZGlzcGxheSB7 IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1Ymxp YyB1aW50IHRpbWVzdGFtcCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CXB1YmxpYyBNZXRhLldvcmtzcGFjZSB3b3Jrc3BhY2UgeyBvd25lZCBnZXQ7IHNldDsgfQorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtbW9uaXRvci1tYW5hZ2Vy LmgiLCB0eXBlX2lkID0gIm1ldGFfbW9uaXRvcl9tYW5hZ2VyX2dldF90eXBlICgpIildCisrCXB1 YmxpYyBjbGFzcyBNb25pdG9yTWFuYWdlciA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBNb25pdG9yTWFuYWdl ciAoKTsKKysJCXB1YmxpYyBib29sIGNhbl9zd2l0Y2hfY29uZmlnICgpOworKwkJcHVibGljIHN0 YXRpYyB1bm93bmVkIE1ldGEuTW9uaXRvck1hbmFnZXIgQGdldCAoKTsKKysJCXB1YmxpYyBzdGF0 aWMgaW50IGdldF9kaXNwbGF5X2NvbmZpZ3VyYXRpb25fdGltZW91dCAoKTsKKysJCXB1YmxpYyBi b29sIGdldF9pc19idWlsdGluX2Rpc3BsYXlfb24gKCk7CisrCQlwdWJsaWMgaW50IGdldF9tb25p dG9yX2Zvcl9jb25uZWN0b3IgKHN0cmluZyBjb25uZWN0b3IpOworKwkJcHVibGljIE1ldGEuTW9u aXRvclN3aXRjaENvbmZpZ1R5cGUgZ2V0X3N3aXRjaF9jb25maWcgKCk7CisrCQlwdWJsaWMgdm9p ZCBzd2l0Y2hfY29uZmlnIChNZXRhLk1vbml0b3JTd2l0Y2hDb25maWdUeXBlIGNvbmZpZ190eXBl KTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIE1ldGEuQmFja2VuZCBiYWNrZW5k IHsgb3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBjb25maXJt X2Rpc3BsYXlfY2hhbmdlICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIG1vbml0b3JzX2NoYW5n ZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgbW9uaXRvcnNfY2hhbmdlZF9pbnRlcm5hbCAo KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBwb3dlcl9zYXZlX21vZGVfY2hhbmdlZCAoKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXBsdWdpbi5oIiwgdHlw ZV9pZCA9ICJtZXRhX3BsdWdpbl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xh c3MgUGx1Z2luIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFBsdWdpbiAoKTsKKysJCXB1YmxpYyBib29sIGJl Z2luX21vZGFsIChNZXRhLk1vZGFsT3B0aW9ucyBvcHRpb25zLCB1aW50MzIgdGltZXN0YW1wKTsK KysJCXB1YmxpYyB2b2lkIGNvbXBsZXRlX2Rpc3BsYXlfY2hhbmdlIChib29sIG9rKTsKKysJCVtO b1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGNvbmZpcm1fZGlzcGxheV9jaGFuZ2Ug KCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBkZXN0cm95IChNZXRh LldpbmRvd0FjdG9yIGFjdG9yKTsKKysJCXB1YmxpYyB2b2lkIGRlc3Ryb3lfY29tcGxldGVkIChN ZXRhLldpbmRvd0FjdG9yIGFjdG9yKTsKKysJCXB1YmxpYyB2b2lkIGVuZF9tb2RhbCAodWludDMy IHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLkRpc3BsYXkgZ2V0X2Rpc3BsYXkg KCk7CisrCQlwdWJsaWMgdW5vd25lZCBNZXRhLlBsdWdpbkluZm8/IGdldF9pbmZvICgpOworKwkJ W05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgaGlkZV90aWxlX3ByZXZpZXcgKCk7 CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgYm9vbCBrZXliaW5kaW5nX2ZpbHRl ciAoTWV0YS5LZXlCaW5kaW5nIGJpbmRpbmcpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2 aXJ0dWFsIHZvaWQga2lsbF9zd2l0Y2hfd29ya3NwYWNlICgpOworKwkJW05vV3JhcHBlcl0KKysJ CXB1YmxpYyB2aXJ0dWFsIHZvaWQga2lsbF93aW5kb3dfZWZmZWN0cyAoTWV0YS5XaW5kb3dBY3Rv ciBhY3Rvcik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBsb2NhdGVf cG9pbnRlciAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBtYW5hZ2VyX3NldF9wbHVnaW5fdHlw ZSAoR0xpYi5UeXBlIGd0eXBlKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2 b2lkIG1hcCAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7CisrCQlwdWJsaWMgdm9pZCBtYXBfY29t cGxldGVkIChNZXRhLldpbmRvd0FjdG9yIGFjdG9yKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJs aWMgdmlydHVhbCB2b2lkIG1pbmltaXplIChNZXRhLldpbmRvd0FjdG9yIGFjdG9yKTsKKysJCXB1 YmxpYyB2b2lkIG1pbmltaXplX2NvbXBsZXRlZCAoTWV0YS5XaW5kb3dBY3RvciBhY3Rvcik7Cisr CQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdW5vd25lZCBNZXRhLlBsdWdpbkluZm8/ IHBsdWdpbl9pbmZvICgpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQg c2hvd190aWxlX3ByZXZpZXcgKE1ldGEuV2luZG93IHdpbmRvdywgTWV0YS5SZWN0YW5nbGUgdGls ZV9yZWN0LCBpbnQgdGlsZV9tb25pdG9yX251bWJlcik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVi bGljIHZpcnR1YWwgdm9pZCBzaG93X3dpbmRvd19tZW51IChNZXRhLldpbmRvdyB3aW5kb3csIE1l dGEuV2luZG93TWVudVR5cGUgbWVudSwgaW50IHgsIGludCB5KTsKKysJCVtOb1dyYXBwZXJdCisr CQlwdWJsaWMgdmlydHVhbCB2b2lkIHNob3dfd2luZG93X21lbnVfZm9yX3JlY3QgKE1ldGEuV2lu ZG93IHdpbmRvdywgTWV0YS5XaW5kb3dNZW51VHlwZSBtZW51LCBNZXRhLlJlY3RhbmdsZSByZWN0 KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHNpemVfY2hhbmdlIChN ZXRhLldpbmRvd0FjdG9yIGFjdG9yLCBNZXRhLlNpemVDaGFuZ2Ugd2hpY2hfY2hhbmdlLCBNZXRh LlJlY3RhbmdsZSBvbGRfZnJhbWVfcmVjdCwgTWV0YS5SZWN0YW5nbGUgb2xkX2J1ZmZlcl9yZWN0 KTsKKysJCXB1YmxpYyB2b2lkIHNpemVfY2hhbmdlX2NvbXBsZXRlZCAoTWV0YS5XaW5kb3dBY3Rv ciBhY3Rvcik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzaXplX2No YW5nZWQgKE1ldGEuV2luZG93QWN0b3IgYWN0b3IpOworKwkJW05vV3JhcHBlcl0KKysJCXB1Ymxp YyB2aXJ0dWFsIHZvaWQgc3RhcnQgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1 YWwgdm9pZCBzd2l0Y2hfd29ya3NwYWNlIChpbnQgZnJvbSwgaW50IHRvLCBNZXRhLk1vdGlvbkRp cmVjdGlvbiBkaXJlY3Rpb24pOworKwkJcHVibGljIHZvaWQgc3dpdGNoX3dvcmtzcGFjZV9jb21w bGV0ZWQgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCB1bm1pbmlt aXplIChNZXRhLldpbmRvd0FjdG9yIGFjdG9yKTsKKysJCXB1YmxpYyB2b2lkIHVubWluaW1pemVf Y29tcGxldGVkIChNZXRhLldpbmRvd0FjdG9yIGFjdG9yKTsKKysJCVtOb1dyYXBwZXJdCisrCQlw dWJsaWMgdmlydHVhbCBib29sIHhldmVudF9maWx0ZXIgKFguRXZlbnQgZXZlbnQpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtcmVtb3RlLWFjY2Vzcy1jb250 cm9sbGVyLmgiLCB0eXBlX2lkID0gIm1ldGFfcmVtb3RlX2FjY2Vzc19jb250cm9sbGVyX2dldF90 eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBSZW1vdGVBY2Nlc3NDb250cm9sbGVyIDogR0xpYi5P YmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJ cHJvdGVjdGVkIFJlbW90ZUFjY2Vzc0NvbnRyb2xsZXIgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZv aWQgbmV3X2hhbmRsZSAoTWV0YS5SZW1vdGVBY2Nlc3NIYW5kbGUgb2JqZWN0KTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXJlbW90ZS1hY2Nlc3MtY29udHJv bGxlci5oIiwgdHlwZV9pZCA9ICJtZXRhX3JlbW90ZV9hY2Nlc3NfaGFuZGxlX2dldF90eXBlICgp IildCisrCXB1YmxpYyBjbGFzcyBSZW1vdGVBY2Nlc3NIYW5kbGUgOiBHTGliLk9iamVjdCB7Cisr CQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQg UmVtb3RlQWNjZXNzSGFuZGxlICgpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzdG9wICgpOwor KwkJcHVibGljIHNpZ25hbCB2b2lkIHN0b3BwZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgdHlwZV9pZCA9ICJtZXRhX3NlbGVjdGlvbl9nZXRf dHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgU2VsZWN0aW9uIDogR0xpYi5PYmplY3QgeworKwkJ W0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIFNlbGVj dGlvbiAoTWV0YS5EaXNwbGF5IGRpc3BsYXkpOworKwkJcHVibGljIEdMaWIuTGlzdDxzdHJpbmc+ IGdldF9taW1ldHlwZXMgKE1ldGEuU2VsZWN0aW9uVHlwZSBzZWxlY3Rpb25fdHlwZSk7CisrCQlw dWJsaWMgdm9pZCBzZXRfb3duZXIgKE1ldGEuU2VsZWN0aW9uVHlwZSBzZWxlY3Rpb25fdHlwZSwg TWV0YS5TZWxlY3Rpb25Tb3VyY2Ugb3duZXIpOworKwkJcHVibGljIGFzeW5jIGJvb2wgdHJhbnNm ZXJfYXN5bmMgKE1ldGEuU2VsZWN0aW9uVHlwZSBzZWxlY3Rpb25fdHlwZSwgc3RyaW5nIG1pbWV0 eXBlLCBzc2l6ZV90IHNpemUsIEdMaWIuT3V0cHV0U3RyZWFtIG91dHB1dCwgR0xpYi5DYW5jZWxs YWJsZT8gY2FuY2VsbGFibGUpIHRocm93cyBHTGliLkVycm9yOworKwkJcHVibGljIHZvaWQgdW5z ZXRfb3duZXIgKE1ldGEuU2VsZWN0aW9uVHlwZSBzZWxlY3Rpb25fdHlwZSwgTWV0YS5TZWxlY3Rp b25Tb3VyY2Ugb3duZXIpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIG93bmVyX2NoYW5nZWQgKHVp bnQgb2JqZWN0LCBNZXRhLlNlbGVjdGlvblNvdXJjZSBwMCk7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgdHlwZV9pZCA9ICJtZXRhX3NlbGVjdGlvbl9z b3VyY2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFNlbGVjdGlvblNvdXJjZSA6IEdM aWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0K KysJCXByb3RlY3RlZCBTZWxlY3Rpb25Tb3VyY2UgKCk7CisrCQlwdWJsaWMgdmlydHVhbCBHTGli Lkxpc3Q8c3RyaW5nPiBnZXRfbWltZXR5cGVzICgpOworKwkJcHVibGljIGJvb2wgaXNfYWN0aXZl ICgpOworKwkJcHVibGljIHZpcnR1YWwgYXN5bmMgR0xpYi5JbnB1dFN0cmVhbSByZWFkX2FzeW5j IChzdHJpbmcgbWltZXR5cGUsIEdMaWIuQ2FuY2VsbGFibGU/IGNhbmNlbGxhYmxlKSB0aHJvd3Mg R0xpYi5FcnJvcjsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGFjdGl2YXRlZCAoKTsK KysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGRlYWN0aXZhdGVkICgpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIHR5cGVfaWQgPSAibWV0YV9z ZWxlY3Rpb25fc291cmNlX21lbW9yeV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgU2Vs ZWN0aW9uU291cmNlTWVtb3J5IDogTWV0YS5TZWxlY3Rpb25Tb3VyY2UgeworKwkJW0NDb2RlICho YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiTWV0YVNlbGVjdGlvblNvdXJj ZSoiKV0KKysJCXB1YmxpYyBTZWxlY3Rpb25Tb3VyY2VNZW1vcnkgKHN0cmluZyBtaW1ldHlwZSwg R0xpYi5CeXRlcyBjb250ZW50KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9tZXRhLXNldHRpbmdzLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3Rd CisrCXB1YmxpYyBjbGFzcyBTZXR0aW5ncyB7CisrCQlwdWJsaWMgaW50IGdldF9mb250X2RwaSAo KTsKKysJCXB1YmxpYyBpbnQgZ2V0X3VpX3NjYWxpbmdfZmFjdG9yICgpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIHJlZl9mdW5jdGlvbiA9ICJtZXRh X3NoYWRvd19yZWYiLCB0eXBlX2lkID0gIm1ldGFfc2hhZG93X2dldF90eXBlICgpIiwgdW5yZWZf ZnVuY3Rpb24gPSAibWV0YV9zaGFkb3dfdW5yZWYiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBj bGFzcyBTaGFkb3cgeworKwkJcHVibGljIHZvaWQgZ2V0X2JvdW5kcyAoaW50IHdpbmRvd194LCBp bnQgd2luZG93X3ksIGludCB3aW5kb3dfd2lkdGgsIGludCB3aW5kb3dfaGVpZ2h0LCBDYWlyby5S ZWN0YW5nbGVJbnQgYm91bmRzKTsKKysJCXB1YmxpYyB2b2lkIHBhaW50IChDb2dsLkZyYW1lYnVm ZmVyIGZyYW1lYnVmZmVyLCBpbnQgd2luZG93X3gsIGludCB3aW5kb3dfeSwgaW50IHdpbmRvd193 aWR0aCwgaW50IHdpbmRvd19oZWlnaHQsIHVpbnQ4IG9wYWNpdHksIENhaXJvLlJlZ2lvbj8gY2xp cCwgYm9vbCBjbGlwX3N0cmljdGx5KTsKKysJCXB1YmxpYyBNZXRhLlNoYWRvdyBAcmVmICgpOwor KwkJcHVibGljIHZvaWQgdW5yZWYgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gIm1ldGEvbWV0YS1zaGFkb3ctZmFjdG9yeS5oIiwgdHlwZV9pZCA9ICJtZXRhX3NoYWRvd19m YWN0b3J5X2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTaGFkb3dGYWN0b3J5IDogR0xp Yi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQor KwkJcHVibGljIFNoYWRvd0ZhY3RvcnkgKCk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgTWV0 YS5TaGFkb3dGYWN0b3J5IGdldF9kZWZhdWx0ICgpOworKwkJcHVibGljIE1ldGEuU2hhZG93UGFy YW1zIGdldF9wYXJhbXMgKHN0cmluZyBjbGFzc19uYW1lLCBib29sIGZvY3VzZWQpOworKwkJcHVi bGljIE1ldGEuU2hhZG93IGdldF9zaGFkb3cgKE1ldGEuV2luZG93U2hhcGUgc2hhcGUsIGludCB3 aWR0aCwgaW50IGhlaWdodCwgc3RyaW5nIGNsYXNzX25hbWUsIGJvb2wgZm9jdXNlZCk7CisrCQlw dWJsaWMgdm9pZCBzZXRfcGFyYW1zIChzdHJpbmcgY2xhc3NfbmFtZSwgYm9vbCBmb2N1c2VkLCBN ZXRhLlNoYWRvd1BhcmFtcyBAcGFyYW1zKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBjaGFuZ2Vk ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtc2hhcGVk LXRleHR1cmUuaCIsIHR5cGVfaWQgPSAibWV0YV9zaGFwZWRfdGV4dHVyZV9nZXRfdHlwZSAoKSIp XQorKwlwdWJsaWMgY2xhc3MgU2hhcGVkVGV4dHVyZSA6IEdMaWIuT2JqZWN0LCBDbHV0dGVyLkNv bnRlbnQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJ cHJvdGVjdGVkIFNoYXBlZFRleHR1cmUgKCk7CisrCQlwdWJsaWMgQ2Fpcm8uU3VyZmFjZT8gZ2V0 X2ltYWdlIChDYWlyby5SZWN0YW5nbGVJbnQ/IGNsaXApOworKwkJcHVibGljIHVub3duZWQgQ29n bC5UZXh0dXJlIGdldF90ZXh0dXJlICgpOworKwkJcHVibGljIHZvaWQgc2V0X2NyZWF0ZV9taXBt YXBzIChib29sIGNyZWF0ZV9taXBtYXBzKTsKKysJCXB1YmxpYyB2b2lkIHNldF9tYXNrX3RleHR1 cmUgKENvZ2wuVGV4dHVyZSBtYXNrX3RleHR1cmUpOworKwkJcHVibGljIHZvaWQgc2V0X29wYXF1 ZV9yZWdpb24gKG93bmVkIENhaXJvLlJlZ2lvbiBvcGFxdWVfcmVnaW9uKTsKKysJCXB1YmxpYyBz aWduYWwgdm9pZCBzaXplX2NoYW5nZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWV0YS1zb3VuZC1wbGF5ZXIuaCIsIHR5cGVfaWQgPSAibWV0YV9zb3VuZF9w bGF5ZXJfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFNvdW5kUGxheWVyIDogR0xpYi5P YmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJ cHJvdGVjdGVkIFNvdW5kUGxheWVyICgpOworKwkJcHVibGljIHZvaWQgcGxheV9mcm9tX2ZpbGUg KEdMaWIuRmlsZSBmaWxlLCBzdHJpbmcgZGVzY3JpcHRpb24sIEdMaWIuQ2FuY2VsbGFibGU/IGNh bmNlbGxhYmxlID0gbnVsbCk7CisrCQlwdWJsaWMgdm9pZCBwbGF5X2Zyb21fdGhlbWUgKHN0cmlu ZyBuYW1lLCBzdHJpbmcgZGVzY3JpcHRpb24sIEdMaWIuQ2FuY2VsbGFibGU/IGNhbmNlbGxhYmxl ID0gbnVsbCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1z dGFnZS5oIiwgdHlwZV9pZCA9ICJtZXRhX3N0YWdlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBj bGFzcyBTdGFnZSA6IENsdXR0ZXIuU3RhZ2UsIEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5Bbmlt YXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5lciwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBTdGFnZSAo KTsKKysJCXB1YmxpYyBzdGF0aWMgYm9vbCBpc19mb2N1c2VkIChNZXRhLkRpc3BsYXkgZGlzcGxh eSk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgYWN0b3JzX3BhaW50ZWQgKCk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1zdGFydHVwLW5vdGlmaWNhdGlvbi5o IiwgdHlwZV9pZCA9ICJtZXRhX3N0YXJ0dXBfbm90aWZpY2F0aW9uX2dldF90eXBlICgpIildCisr CXB1YmxpYyBjbGFzcyBTdGFydHVwTm90aWZpY2F0aW9uIDogR0xpYi5PYmplY3QgeworKwkJW0ND b2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFN0YXJ0 dXBOb3RpZmljYXRpb24gKCk7CisrCQlwdWJsaWMgTWV0YS5MYXVuY2hDb250ZXh0IGNyZWF0ZV9s YXVuY2hlciAoKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIE1ldGEuRGlzcGxh eSBkaXNwbGF5IHsgb3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9p ZCBjaGFuZ2VkICh2b2lkKiBvYmplY3QpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJtZXRhL21haW4uaCIsIHR5cGVfaWQgPSAibWV0YV9zdGFydHVwX3NlcXVlbmNlX2dldF90 eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTdGFydHVwU2VxdWVuY2UgOiBHTGliLk9iamVjdCB7 CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0 ZWQgU3RhcnR1cFNlcXVlbmNlICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9hcHBs aWNhdGlvbl9pZCAoKTsKKysJCXB1YmxpYyBib29sIGdldF9jb21wbGV0ZWQgKCk7CisrCQlwdWJs aWMgdW5vd25lZCBzdHJpbmcgZ2V0X2ljb25fbmFtZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0 cmluZyBnZXRfaWQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X25hbWUgKCk7Cisr CQlwdWJsaWMgdWludDY0IGdldF90aW1lc3RhbXAgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJp bmcgZ2V0X3dtY2xhc3MgKCk7CisrCQlwdWJsaWMgaW50IGdldF93b3Jrc3BhY2UgKCk7CisrCQlw dWJsaWMgc3RyaW5nIGFwcGxpY2F0aW9uX2lkIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1Ymxp YyBzdHJpbmcgaWNvbl9uYW1lIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBzdHJpbmcg aWQgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIHN0cmluZyBuYW1lIHsgZ2V0OyBjb25z dHJ1Y3Q7IH0KKysJCXB1YmxpYyB1aW50NjQgdGltZXN0YW1wIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0K KysJCXB1YmxpYyBzdHJpbmcgd21jbGFzcyB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMg aW50IHdvcmtzcGFjZSB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbSGFzRW1pdHRlcl0KKysJCXB1 YmxpYyBzaWduYWwgdm9pZCBjb21wbGV0ZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS90aGVtZS5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21wYWN0 XQorKwlwdWJsaWMgY2xhc3MgVGhlbWUgeworKwkJcHVibGljIHZvaWQgZnJlZSAoKTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS93aW5kb3cuaCIsIHR5cGVfaWQgPSAi bWV0YV93aW5kb3dfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIFdpbmRv dyA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZh bHNlKV0KKysJCXByb3RlY3RlZCBXaW5kb3cgKCk7CisrCQlwdWJsaWMgdm9pZCBhY3RpdmF0ZSAo dWludDMyIGN1cnJlbnRfdGltZSk7CisrCQlwdWJsaWMgdm9pZCBhY3RpdmF0ZV93aXRoX3dvcmtz cGFjZSAodWludDMyIGN1cnJlbnRfdGltZSwgTWV0YS5Xb3Jrc3BhY2Ugd29ya3NwYWNlKTsKKysJ CXB1YmxpYyBib29sIGFsbG93c19tb3ZlICgpOworKwkJcHVibGljIGJvb2wgYWxsb3dzX3Jlc2l6 ZSAoKTsKKysJCXB1YmxpYyB2b2lkIGJlZ2luX2dyYWJfb3AgKE1ldGEuR3JhYk9wIG9wLCBib29s IGZyYW1lX2FjdGlvbiwgdWludDMyIHRpbWVzdGFtcCk7CisrCQlwdWJsaWMgYm9vbCBjYW5fY2xv c2UgKCk7CisrCQlwdWJsaWMgYm9vbCBjYW5fbWF4aW1pemUgKCk7CisrCQlwdWJsaWMgYm9vbCBj YW5fbWluaW1pemUgKCk7CisrCQlwdWJsaWMgYm9vbCBjYW5fc2hhZGUgKCk7CisrCQlwdWJsaWMg dm9pZCBjaGFuZ2Vfd29ya3NwYWNlIChNZXRhLldvcmtzcGFjZSB3b3Jrc3BhY2UpOworKwkJcHVi bGljIHZvaWQgY2hhbmdlX3dvcmtzcGFjZV9ieV9pbmRleCAoaW50IHNwYWNlX2luZGV4LCBib29s IGFwcGVuZCk7CisrCQlwdWJsaWMgdm9pZCBjaGVja19hbGl2ZSAodWludDMyIHRpbWVzdGFtcCk7 CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgY2xpZW50X3JlY3RfdG9fZnJhbWVfcmVjdCAoTWV0 YS5SZWN0YW5nbGUgY2xpZW50X3JlY3QpOworKwkJcHVibGljIHZvaWQgY29tcHV0ZV9ncm91cCAo KTsKKysJCXB1YmxpYyB2b2lkIEBkZWxldGUgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGlj IHVub3duZWQgTWV0YS5XaW5kb3cgZmluZF9yb290X2FuY2VzdG9yICgpOworKwkJcHVibGljIHZv aWQgZm9jdXMgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHZvaWQgZm9yZWFjaF9hbmNl c3RvciAoTWV0YS5XaW5kb3dGb3JlYWNoRnVuYyBmdW5jKTsKKysJCXB1YmxpYyB2b2lkIGZvcmVh Y2hfdHJhbnNpZW50IChNZXRhLldpbmRvd0ZvcmVhY2hGdW5jIGZ1bmMpOworKwkJcHVibGljIE1l dGEuUmVjdGFuZ2xlIGZyYW1lX3JlY3RfdG9fY2xpZW50X3JlY3QgKE1ldGEuUmVjdGFuZ2xlIGZy YW1lX3JlY3QpOworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIGdldF9idWZmZXJfcmVjdCAoKTsK KysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfY2xpZW50X21hY2hpbmUgKCk7CisrCQlwdWJs aWMgTWV0YS5XaW5kb3dDbGllbnRUeXBlIGdldF9jbGllbnRfdHlwZSAoKTsKKysJCXB1YmxpYyB1 bm93bmVkIEdMaWIuT2JqZWN0IGdldF9jb21wb3NpdG9yX3ByaXZhdGUgKCk7CisrCQlwdWJsaWMg dW5vd25lZCBzdHJpbmcgZ2V0X2Rlc2NyaXB0aW9uICgpOworKwkJcHVibGljIHVub3duZWQgTWV0 YS5EaXNwbGF5IGdldF9kaXNwbGF5ICgpOworKwkJcHVibGljIHVub3duZWQgQ2Fpcm8uUmVnaW9u PyBnZXRfZnJhbWVfYm91bmRzICgpOworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIGdldF9mcmFt ZV9yZWN0ICgpOworKwkJcHVibGljIE1ldGEuRnJhbWVUeXBlIGdldF9mcmFtZV90eXBlICgpOwor KwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9ndGtfYXBwX21lbnVfb2JqZWN0X3BhdGggKCk7 CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2d0a19hcHBsaWNhdGlvbl9pZCAoKTsKKysJ CXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfZ3RrX2FwcGxpY2F0aW9uX29iamVjdF9wYXRoICgp OworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9ndGtfbWVudWJhcl9vYmplY3RfcGF0aCAo KTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfZ3RrX3RoZW1lX3ZhcmlhbnQgKCk7Cisr CQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2d0a191bmlxdWVfYnVzX25hbWUgKCk7CisrCQlw dWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X2d0a193aW5kb3dfb2JqZWN0X3BhdGggKCk7CisrCQlw dWJsaWMgYm9vbCBnZXRfaWNvbl9nZW9tZXRyeSAob3V0IE1ldGEuUmVjdGFuZ2xlIHJlY3QpOwor KwkJcHVibGljIHVpbnQ2NCBnZXRfaWQgKCk7CisrCQlwdWJsaWMgTWV0YS5TdGFja0xheWVyIGdl dF9sYXllciAoKTsKKysJCXB1YmxpYyBNZXRhLk1heGltaXplRmxhZ3MgZ2V0X21heGltaXplZCAo KTsKKysJCXB1YmxpYyBpbnQgZ2V0X21vbml0b3IgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJp bmcgZ2V0X211dHRlcl9oaW50cyAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X3BpZCAoKTsKKysJCXB1 YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfcm9sZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmlu ZyBnZXRfc2FuZGJveGVkX2FwcF9pZCAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9zdGFibGVfc2Vx dWVuY2UgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3N0YXJ0dXBfaWQgKCk7Cisr CQlwdWJsaWMgdW5vd25lZCBNZXRhLldpbmRvdz8gZ2V0X3RpbGVfbWF0Y2ggKCk7CisrCQlwdWJs aWMgdW5vd25lZCBzdHJpbmcgZ2V0X3RpdGxlICgpOworKwkJcHVibGljIHVub3duZWQgTWV0YS5X aW5kb3cgZ2V0X3RyYW5zaWVudF9mb3IgKCk7CisrCQlwdWJsaWMgdWludDMyIGdldF91c2VyX3Rp bWUgKCk7CisrCQlwdWJsaWMgTWV0YS5XaW5kb3dUeXBlIGdldF93aW5kb3dfdHlwZSAoKTsKKysJ CXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRfd21fY2xhc3MgKCk7CisrCQlwdWJsaWMgdW5vd25l ZCBzdHJpbmcgZ2V0X3dtX2NsYXNzX2luc3RhbmNlICgpOworKwkJcHVibGljIE1ldGEuUmVjdGFu Z2xlIGdldF93b3JrX2FyZWFfYWxsX21vbml0b3JzICgpOworKwkJcHVibGljIE1ldGEuUmVjdGFu Z2xlIGdldF93b3JrX2FyZWFfY3VycmVudF9tb25pdG9yICgpOworKwkJcHVibGljIE1ldGEuUmVj dGFuZ2xlIGdldF93b3JrX2FyZWFfZm9yX21vbml0b3IgKGludCB3aGljaF9tb25pdG9yKTsKKysJ CXB1YmxpYyB1bm93bmVkIE1ldGEuV29ya3NwYWNlIGdldF93b3Jrc3BhY2UgKCk7CisrCQlwdWJs aWMgWC5XaW5kb3cgZ2V0X3h3aW5kb3cgKCk7CisrCQlwdWJsaWMgdm9pZCBncm91cF9sZWFkZXJf Y2hhbmdlZCAoKTsKKysJCXB1YmxpYyBib29sIGhhc19mb2N1cyAoKTsKKysJCXB1YmxpYyBib29s IGlzX2Fib3ZlICgpOworKwkJcHVibGljIGJvb2wgaXNfYWx3YXlzX29uX2FsbF93b3Jrc3BhY2Vz ICgpOworKwkJcHVibGljIGJvb2wgaXNfYW5jZXN0b3Jfb2ZfdHJhbnNpZW50IChNZXRhLldpbmRv dyB0cmFuc2llbnQpOworKwkJcHVibGljIGJvb2wgaXNfYXR0YWNoZWRfZGlhbG9nICgpOworKwkJ cHVibGljIGJvb2wgaXNfY2xpZW50X2RlY29yYXRlZCAoKTsKKysJCXB1YmxpYyBib29sIGlzX2Z1 bGxzY3JlZW4gKCk7CisrCQlwdWJsaWMgYm9vbCBpc19oaWRkZW4gKCk7CisrCQlwdWJsaWMgYm9v bCBpc19tb25pdG9yX3NpemVkICgpOworKwkJcHVibGljIGJvb2wgaXNfb25fYWxsX3dvcmtzcGFj ZXMgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19vbl9wcmltYXJ5X21vbml0b3IgKCk7CisrCQlwdWJs aWMgYm9vbCBpc19vdmVycmlkZV9yZWRpcmVjdCAoKTsKKysJCXB1YmxpYyBib29sIGlzX3JlbW90 ZSAoKTsKKysJCXB1YmxpYyBib29sIGlzX3NjcmVlbl9zaXplZCAoKTsKKysJCXB1YmxpYyBib29s IGlzX3NoYWRlZCAoKTsKKysJCXB1YmxpYyBib29sIGlzX3NraXBfdGFza2JhciAoKTsKKysJCXB1 YmxpYyB2b2lkIGtpbGwgKCk7CisrCQlwdWJsaWMgYm9vbCBsb2NhdGVkX29uX3dvcmtzcGFjZSAo TWV0YS5Xb3Jrc3BhY2Ugd29ya3NwYWNlKTsKKysJCXB1YmxpYyB2b2lkIGxvd2VyICgpOworKwkJ cHVibGljIHZvaWQgbWFrZV9hYm92ZSAoKTsKKysJCXB1YmxpYyB2b2lkIG1ha2VfZnVsbHNjcmVl biAoKTsKKysJCXB1YmxpYyB2b2lkIG1heGltaXplIChNZXRhLk1heGltaXplRmxhZ3MgZGlyZWN0 aW9ucyk7CisrCQlwdWJsaWMgdm9pZCBtaW5pbWl6ZSAoKTsKKysJCXB1YmxpYyB2b2lkIG1vdmVf ZnJhbWUgKGJvb2wgdXNlcl9vcCwgaW50IHJvb3RfeF9udywgaW50IHJvb3RfeV9udyk7CisrCQlw dWJsaWMgdm9pZCBtb3ZlX3Jlc2l6ZV9mcmFtZSAoYm9vbCB1c2VyX29wLCBpbnQgcm9vdF94X253 LCBpbnQgcm9vdF95X253LCBpbnQgdywgaW50IGgpOworKwkJcHVibGljIHZvaWQgbW92ZV90b19t b25pdG9yIChpbnQgbW9uaXRvcik7CisrCQlwdWJsaWMgdm9pZCByYWlzZSAoKTsKKysJCXB1Ymxp YyBib29sIHJlcXVlc3RlZF9ieXBhc3NfY29tcG9zaXRvciAoKTsKKysJCXB1YmxpYyBib29sIHJl cXVlc3RlZF9kb250X2J5cGFzc19jb21wb3NpdG9yICgpOworKwkJcHVibGljIHZvaWQgc2V0X2Nv bXBvc2l0b3JfcHJpdmF0ZSAoR0xpYi5PYmplY3QgcHJpdik7CisrCQlwdWJsaWMgdm9pZCBzZXRf ZGVtYW5kc19hdHRlbnRpb24gKCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfaWNvbl9nZW9tZXRyeSAo TWV0YS5SZWN0YW5nbGU/IHJlY3QpOworKwkJcHVibGljIHZvaWQgc2hhZGUgKHVpbnQzMiB0aW1l c3RhbXApOworKwkJcHVibGljIHZvaWQgc2hvdmVfdGl0bGViYXJfb25zY3JlZW4gKCk7CisrCQlw dWJsaWMgYm9vbCBzaG93aW5nX29uX2l0c193b3Jrc3BhY2UgKCk7CisrCQlwdWJsaWMgdm9pZCBz aHV0ZG93bl9ncm91cCAoKTsKKysJCXB1YmxpYyB2b2lkIHN0aWNrICgpOworKwkJcHVibGljIGJv b2wgdGl0bGViYXJfaXNfb25zY3JlZW4gKCk7CisrCQlwdWJsaWMgdm9pZCB1bm1ha2VfYWJvdmUg KCk7CisrCQlwdWJsaWMgdm9pZCB1bm1ha2VfZnVsbHNjcmVlbiAoKTsKKysJCXB1YmxpYyB2b2lk IHVubWF4aW1pemUgKE1ldGEuTWF4aW1pemVGbGFncyBkaXJlY3Rpb25zKTsKKysJCXB1YmxpYyB2 b2lkIHVubWluaW1pemUgKCk7CisrCQlwdWJsaWMgdm9pZCB1bnNldF9kZW1hbmRzX2F0dGVudGlv biAoKTsKKysJCXB1YmxpYyB2b2lkIHVuc2hhZGUgKHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVi bGljIHZvaWQgdW5zdGljayAoKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJv b2wgYWJvdmUgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wg YXBwZWFyc19mb2N1c2VkIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1Ymxp YyBib29sIGRlY29yYXRlZCB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJs aWMgYm9vbCBkZW1hbmRzX2F0dGVudGlvbiB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlwdWJsaWMgYm9vbCBmdWxsc2NyZWVuIHsgZ2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGd0 a19hcHBfbWVudV9vYmplY3RfcGF0aCB7IGdldDsgfQorKwkJcHVibGljIHN0cmluZyBndGtfYXBw bGljYXRpb25faWQgeyBnZXQ7IH0KKysJCXB1YmxpYyBzdHJpbmcgZ3RrX2FwcGxpY2F0aW9uX29i amVjdF9wYXRoIHsgZ2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGd0a19tZW51YmFyX29iamVjdF9w YXRoIHsgZ2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIGd0a191bmlxdWVfYnVzX25hbWUgeyBnZXQ7 IH0KKysJCXB1YmxpYyBzdHJpbmcgZ3RrX3dpbmRvd19vYmplY3RfcGF0aCB7IGdldDsgfQorKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgdm9pZCogaWNvbiB7IGdldDsgfQorKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBtYXhpbWl6ZWRfaG9yaXpvbnRhbGx5IHsg Z2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIG1heGltaXplZF92 ZXJ0aWNhbGx5IHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyB2b2lk KiBtaW5pX2ljb24geyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJv b2wgbWluaW1pemVkIHsgZ2V0OyB9CisrCQlwdWJsaWMgc3RyaW5nIG11dHRlcl9oaW50cyB7IGdl dDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBvbl9hbGxfd29ya3Nw YWNlcyB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCByZXNp emVhYmxlIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIHNr aXBfdGFza2JhciB7IGdldDsgfQorKwkJcHVibGljIHN0cmluZyB0aXRsZSB7IGdldDsgfQorKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCB1cmdlbnQgeyBnZXQ7IH0KKysJCXB1 YmxpYyB1aW50IHVzZXJfdGltZSB7IGdldDsgfQorKwkJcHVibGljIE1ldGEuV2luZG93VHlwZSB3 aW5kb3dfdHlwZSB7IGdldDsgfQorKwkJcHVibGljIHN0cmluZyB3bV9jbGFzcyB7IGdldDsgfQor KwkJcHVibGljIHNpZ25hbCB2b2lkIHBvc2l0aW9uX2NoYW5nZWQgKCk7CisrCQlwdWJsaWMgc2ln bmFsIHZvaWQgcmFpc2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHNob3duICgpOworKwkJ cHVibGljIHNpZ25hbCB2b2lkIHNpemVfY2hhbmdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9p ZCB1bm1hbmFnZWQgKCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgd29ya3NwYWNlX2NoYW5nZWQg KCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS13aW5kb3ct YWN0b3IuaCIsIHR5cGVfaWQgPSAibWV0YV93aW5kb3dfYWN0b3JfZ2V0X3R5cGUgKCkiKV0KKysJ cHVibGljIGFic3RyYWN0IGNsYXNzIFdpbmRvd0FjdG9yIDogQ2x1dHRlci5BY3RvciwgQXRrLklt cGxlbWVudG9yLCBDbHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVy LlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Up XQorKwkJcHJvdGVjdGVkIFdpbmRvd0FjdG9yICgpOworKwkJcHVibGljIENhaXJvLlN1cmZhY2U/ IGdldF9pbWFnZSAoQ2Fpcm8uUmVjdGFuZ2xlSW50PyBjbGlwKTsKKysJCXB1YmxpYyB1bm93bmVk IE1ldGEuV2luZG93IGdldF9tZXRhX3dpbmRvdyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEu U2hhcGVkVGV4dHVyZSBnZXRfdGV4dHVyZSAoKTsKKysJCXB1YmxpYyBib29sIGlzX2Rlc3Ryb3ll ZCAoKTsKKysJCXB1YmxpYyB2b2lkIHN5bmNfdmlzaWJpbGl0eSAoKTsKKysJCXB1YmxpYyBNZXRh LldpbmRvdyBtZXRhX3dpbmRvdyB7IGdldDsgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgc2lnbmFs IHZvaWQgZGFtYWdlZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBlZmZlY3RzX2NvbXBsZXRl ZCAoKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBmaXJzdF9mcmFtZSAoKTsKKysJCXB1YmxpYyBz aWduYWwgdm9pZCB0aGF3ZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvbWV0YS13aW5kb3ctZ3JvdXAuaCIsIHR5cGVfaWQgPSAibWV0YV93aW5kb3dfZ3JvdXBf Z2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFdpbmRvd0dyb3VwIDogQ2x1dHRlci5BY3Rv ciwgQXRrLkltcGxlbWVudG9yLCBDbHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVy LCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9u ID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFdpbmRvd0dyb3VwICgpOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21ldGEtd2luZG93LXNoYXBlLmgiLCByZWZfZnVuY3Rp b24gPSAibWV0YV93aW5kb3dfc2hhcGVfcmVmIiwgdHlwZV9pZCA9ICJtZXRhX3dpbmRvd19zaGFw ZV9nZXRfdHlwZSAoKSIsIHVucmVmX2Z1bmN0aW9uID0gIm1ldGFfd2luZG93X3NoYXBlX3VucmVm IildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgV2luZG93U2hhcGUgeworKwkJW0NDb2Rl IChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIFdpbmRvd1NoYXBl IChDYWlyby5SZWdpb24gcmVnaW9uKTsKKysJCXB1YmxpYyBib29sIGVxdWFsIChNZXRhLldpbmRv d1NoYXBlIHNoYXBlX2IpOworKwkJcHVibGljIHZvaWQgZ2V0X2JvcmRlcnMgKGludCBib3JkZXJf dG9wLCBpbnQgYm9yZGVyX3JpZ2h0LCBpbnQgYm9yZGVyX2JvdHRvbSwgaW50IGJvcmRlcl9sZWZ0 KTsKKysJCXB1YmxpYyB1aW50IGhhc2ggKCk7CisrCQlwdWJsaWMgTWV0YS5XaW5kb3dTaGFwZSBA cmVmICgpOworKwkJcHVibGljIENhaXJvLlJlZ2lvbiB0b19yZWdpb24gKGludCBjZW50ZXJfd2lk dGgsIGludCBjZW50ZXJfaGVpZ2h0KTsKKysJCXB1YmxpYyB2b2lkIHVucmVmICgpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL3dvcmtzcGFjZS5oIiwgdHlwZV9pZCA9 ICJtZXRhX3dvcmtzcGFjZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgV29ya3NwYWNl IDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UpXQorKwkJcHJvdGVjdGVkIFdvcmtzcGFjZSAoKTsKKysJCXB1YmxpYyB2b2lkIGFjdGl2YXRl ICh1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lkIGFjdGl2YXRlX3dpdGhfZm9jdXMg KE1ldGEuV2luZG93IGZvY3VzX3RoaXMsIHVpbnQzMiB0aW1lc3RhbXApOworKwkJcHVibGljIHVu b3duZWQgTWV0YS5EaXNwbGF5IGdldF9kaXNwbGF5ICgpOworKwkJcHVibGljIHVub3duZWQgTWV0 YS5Xb3Jrc3BhY2UgZ2V0X25laWdoYm9yIChNZXRhLk1vdGlvbkRpcmVjdGlvbiBkaXJlY3Rpb24p OworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIGdldF93b3JrX2FyZWFfYWxsX21vbml0b3JzICgp OworKwkJcHVibGljIE1ldGEuUmVjdGFuZ2xlIGdldF93b3JrX2FyZWFfZm9yX21vbml0b3IgKGlu dCB3aGljaF9tb25pdG9yKTsKKysJCXB1YmxpYyBpbnQgaW5kZXggKCk7CisrCQlwdWJsaWMgR0xp Yi5MaXN0PHdlYWsgTWV0YS5XaW5kb3c+IGxpc3Rfd2luZG93cyAoKTsKKysJCXB1YmxpYyB2b2lk IHNldF9idWlsdGluX3N0cnV0cyAoR0xpYi5TTGlzdDxNZXRhLlN0cnV0Pz4gc3RydXRzKTsKKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIHVpbnQgbl93aW5kb3dzIHsgZ2V0OyB9Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyB1aW50IHdvcmtzcGFjZV9pbmRleCB7IGdl dDsgfQorKwkJcHVibGljIHNpZ25hbCB2b2lkIHdpbmRvd19hZGRlZCAoTWV0YS5XaW5kb3cgb2Jq ZWN0KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCB3aW5kb3dfcmVtb3ZlZCAoTWV0YS5XaW5kb3cg b2JqZWN0KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXdv cmtzcGFjZS1tYW5hZ2VyLmgiLCB0eXBlX2lkID0gIm1ldGFfd29ya3NwYWNlX21hbmFnZXJfZ2V0 X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIFdvcmtzcGFjZU1hbmFnZXIgOiBHTGliLk9iamVj dCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90 ZWN0ZWQgV29ya3NwYWNlTWFuYWdlciAoKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuV29ya3Nw YWNlIGFwcGVuZF9uZXdfd29ya3NwYWNlIChib29sIGFjdGl2YXRlLCB1aW50MzIgdGltZXN0YW1w KTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuV29ya3NwYWNlIGdldF9hY3RpdmVfd29ya3NwYWNl ICgpOworKwkJcHVibGljIGludCBnZXRfYWN0aXZlX3dvcmtzcGFjZV9pbmRleCAoKTsKKysJCXB1 YmxpYyBpbnQgZ2V0X25fd29ya3NwYWNlcyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIE1ldGEuV29y a3NwYWNlPyBnZXRfd29ya3NwYWNlX2J5X2luZGV4IChpbnQgaW5kZXgpOworKwkJcHVibGljIHZv aWQgb3ZlcnJpZGVfd29ya3NwYWNlX2xheW91dCAoTWV0YS5EaXNwbGF5Q29ybmVyIHN0YXJ0aW5n X2Nvcm5lciwgYm9vbCB2ZXJ0aWNhbF9sYXlvdXQsIGludCBuX3Jvd3MsIGludCBuX2NvbHVtbnMp OworKwkJcHVibGljIHZvaWQgcmVtb3ZlX3dvcmtzcGFjZSAoTWV0YS5Xb3Jrc3BhY2Ugd29ya3Nw YWNlLCB1aW50MzIgdGltZXN0YW1wKTsKKysJCXB1YmxpYyB2b2lkIHJlb3JkZXJfd29ya3NwYWNl IChNZXRhLldvcmtzcGFjZSB3b3Jrc3BhY2UsIGludCBuZXdfaW5kZXgpOworKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlwdWJsaWMgaW50IGxheW91dF9jb2x1bW5zIHsgZ2V0OyB9CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgbGF5b3V0X3Jvd3MgeyBnZXQ7IH0KKysJCXB1 YmxpYyBpbnQgbl93b3Jrc3BhY2VzIHsgZ2V0OyB9CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgYWN0 aXZlX3dvcmtzcGFjZV9jaGFuZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHNob3dpbmdf ZGVza3RvcF9jaGFuZ2VkICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdvcmtzcGFjZV9hZGRl ZCAoaW50IG9iamVjdCk7CisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgd29ya3NwYWNlX3JlbW92ZWQg KGludCBvYmplY3QpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHdvcmtzcGFjZV9zd2l0Y2hlZCAo aW50IG9iamVjdCwgaW50IHAwLCBNZXRhLk1vdGlvbkRpcmVjdGlvbiBwMSk7CisrCQlwdWJsaWMg c2lnbmFsIHZvaWQgd29ya3NwYWNlc19yZW9yZGVyZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS14MTEtZGlzcGxheS5oIiwgdHlwZV9pZCA9ICJtZXRh X3gxMV9kaXNwbGF5X2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBYMTFEaXNwbGF5IDog R0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Up XQorKwkJcHJvdGVjdGVkIFgxMURpc3BsYXkgKCk7CisrCQlwdWJsaWMgdm9pZCBjbGVhcl9zdGFn ZV9pbnB1dF9yZWdpb24gKCk7CisrCQlwdWJsaWMgaW50IGdldF9kYW1hZ2VfZXZlbnRfYmFzZSAo KTsKKysJCXB1YmxpYyBpbnQgZ2V0X3NjcmVlbl9udW1iZXIgKCk7CisrCQlwdWJsaWMgaW50IGdl dF9zaGFwZV9ldmVudF9iYXNlICgpOworKwkJcHVibGljIGJvb2wgaGFzX3NoYXBlICgpOworKwkJ cHVibGljIHZvaWQgc2V0X2NtX3NlbGVjdGlvbiAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9zdGFn ZV9pbnB1dF9yZWdpb24gKFguWHNlcnZlclJlZ2lvbiByZWdpb24pOworKwkJcHVibGljIGJvb2wg eHdpbmRvd19pc19hX25vX2ZvY3VzX3dpbmRvdyAoWC5XaW5kb3cgeHdpbmRvdyk7CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1jbG9zZS1kaWFsb2cuaCIsIHR5 cGVfY25hbWUgPSAiTWV0YUNsb3NlRGlhbG9nSW50ZXJmYWNlIiwgdHlwZV9pZCA9ICJtZXRhX2Ns b3NlX2RpYWxvZ19nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgaW50ZXJmYWNlIENsb3NlRGlhbG9n IDogR0xpYi5PYmplY3QgeworKwkJcHVibGljIGFic3RyYWN0IHZvaWQgZm9jdXMgKCk7CisrCQlw dWJsaWMgYWJzdHJhY3Qgdm9pZCBoaWRlICgpOworKwkJcHVibGljIGJvb2wgaXNfdmlzaWJsZSAo KTsKKysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHNob3cgKCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCXB1YmxpYyBhYnN0cmFjdCBNZXRhLldpbmRvdyB3aW5kb3cgeyBvd25lZCBnZXQ7IGNv bnN0cnVjdDsgfQorKwkJW0hhc0VtaXR0ZXJdCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgcmVzcG9u c2UgKE1ldGEuQ2xvc2VEaWFsb2dSZXNwb25zZSByZXNwb25zZSk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWV0YS1pbmhpYml0LXNob3J0Y3V0cy1kaWFsb2cuaCIs IHR5cGVfY25hbWUgPSAiTWV0YUluaGliaXRTaG9ydGN1dHNEaWFsb2dJbnRlcmZhY2UiLCB0eXBl X2lkID0gIm1ldGFfaW5oaWJpdF9zaG9ydGN1dHNfZGlhbG9nX2dldF90eXBlICgpIildCisrCXB1 YmxpYyBpbnRlcmZhY2UgSW5oaWJpdFNob3J0Y3V0c0RpYWxvZyA6IEdMaWIuT2JqZWN0IHsKKysJ CXB1YmxpYyBhYnN0cmFjdCB2b2lkIGhpZGUgKCk7CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBz aG93ICgpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYWJzdHJhY3QgTWV0YS5X aW5kb3cgd2luZG93IHsgb3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtIYXNFbWl0dGVyXQor KwkJcHVibGljIHNpZ25hbCB2b2lkIHJlc3BvbnNlIChNZXRhLkluaGliaXRTaG9ydGN1dHNEaWFs b2dSZXNwb25zZSByZXNwb25zZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g Im1ldGEvbWFpbi5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgQnV0 dG9uTGF5b3V0IHsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXQorKwkJcHVibGlj IHdlYWsgTWV0YS5CdXR0b25GdW5jdGlvbiBsZWZ0X2J1dHRvbnNbNF07CisrCQlbQ0NvZGUgKGFy cmF5X2xlbmd0aCA9IGZhbHNlKV0KKysJCXB1YmxpYyB3ZWFrIGJvb2wgbGVmdF9idXR0b25zX2hh c19zcGFjZXJbNF07CisrCQlbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0KKysJCXB1Ymxp YyB3ZWFrIE1ldGEuQnV0dG9uRnVuY3Rpb24gcmlnaHRfYnV0dG9uc1s0XTsKKysJCVtDQ29kZSAo YXJyYXlfbGVuZ3RoID0gZmFsc2UpXQorKwkJcHVibGljIHdlYWsgYm9vbCByaWdodF9idXR0b25z X2hhc19zcGFjZXJbNF07CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWFpbi5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgRWRnZSB7Cisr CQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgcmVjdDsKKysJCXB1YmxpYyBNZXRhLlNpZGUgc2lkZV90 eXBlOworKwkJcHVibGljIE1ldGEuRWRnZVR5cGUgZWRnZV90eXBlOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQor KwlwdWJsaWMgc3RydWN0IEZyYW1lQm9yZGVycyB7CisrCQlwdWJsaWMgR3RrLkJvcmRlciB2aXNp YmxlOworKwkJcHVibGljIEd0ay5Cb3JkZXIgaW52aXNpYmxlOworKwkJcHVibGljIEd0ay5Cb3Jk ZXIgdG90YWw7CisrCQlwdWJsaWMgdm9pZCBjbGVhciAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9tZXRhLXBsdWdpbi5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSld CisrCXB1YmxpYyBzdHJ1Y3QgUGx1Z2luSW5mbyB7CisrCQlwdWJsaWMgd2VhayBzdHJpbmcgbmFt ZTsKKysJCXB1YmxpYyB3ZWFrIHN0cmluZyB2ZXJzaW9uOworKwkJcHVibGljIHdlYWsgc3RyaW5n IGF1dGhvcjsKKysJCXB1YmxpYyB3ZWFrIHN0cmluZyBsaWNlbnNlOworKwkJcHVibGljIHdlYWsg c3RyaW5nIGRlc2NyaXB0aW9uOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL21haW4uaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IFBsdWdp blZlcnNpb24geworKwkJcHVibGljIHVpbnQgdmVyc2lvbl9tYWpvcjsKKysJCXB1YmxpYyB1aW50 IHZlcnNpb25fbWlub3I7CisrCQlwdWJsaWMgdWludCB2ZXJzaW9uX21pY3JvOworKwkJcHVibGlj IHVpbnQgdmVyc2lvbl9hcGk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1l dGEvbWFpbi5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9u ID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAibWV0YV9yZWN0YW5nbGVfZ2V0X3R5cGUgKCki KV0KKysJcHVibGljIHN0cnVjdCBSZWN0YW5nbGUgeworKwkJcHVibGljIGludCB4OworKwkJcHVi bGljIGludCB5OworKwkJcHVibGljIGludCB3aWR0aDsKKysJCXB1YmxpYyBpbnQgaGVpZ2h0Owor KwkJcHVibGljIGludCBhcmVhICgpOworKwkJcHVibGljIGJvb2wgY29udGFpbnNfcmVjdCAoTWV0 YS5SZWN0YW5nbGUgaW5uZXJfcmVjdCk7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGU/IGNvcHkg KCk7CisrCQlwdWJsaWMgYm9vbCBjb3VsZF9maXRfcmVjdCAoTWV0YS5SZWN0YW5nbGUgaW5uZXJf cmVjdCk7CisrCQlwdWJsaWMgYm9vbCBlcXVhbCAoTWV0YS5SZWN0YW5nbGUgc3JjMik7CisrCQlw dWJsaWMgdm9pZCBmcmVlICgpOworKwkJcHVibGljIGJvb2wgaG9yaXpfb3ZlcmxhcCAoTWV0YS5S ZWN0YW5nbGUgcmVjdDIpOworKwkJcHVibGljIGJvb2wgaW50ZXJzZWN0IChNZXRhLlJlY3Rhbmds ZSBzcmMyLCBvdXQgTWV0YS5SZWN0YW5nbGUgZGVzdCk7CisrCQlwdWJsaWMgYm9vbCBvdmVybGFw IChNZXRhLlJlY3RhbmdsZSByZWN0Mik7CisrCQlwdWJsaWMgTWV0YS5SZWN0YW5nbGUgdW5pb24g KE1ldGEuUmVjdGFuZ2xlIHJlY3QyKTsKKysJCXB1YmxpYyBib29sIHZlcnRfb3ZlcmxhcCAoTWV0 YS5SZWN0YW5nbGUgcmVjdDIpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL21haW4uaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IFNoYWRv d1BhcmFtcyB7CisrCQlwdWJsaWMgaW50IHJhZGl1czsKKysJCXB1YmxpYyBpbnQgdG9wX2ZhZGU7 CisrCQlwdWJsaWMgaW50IHhfb2Zmc2V0OworKwkJcHVibGljIGludCB5X29mZnNldDsKKysJCXB1 YmxpYyB1aW50OCBvcGFjaXR5OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJt ZXRhL21haW4uaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IFN0cnV0 IHsKKysJCXB1YmxpYyBNZXRhLlJlY3RhbmdsZSByZWN0OworKwkJcHVibGljIE1ldGEuU2lkZSBz aWRlOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNw cmVmaXggPSAiTUVUQV9CQVJSSUVSX0RJUkVDVElPTl8iLCB0eXBlX2lkID0gIm1ldGFfYmFycmll cl9kaXJlY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBCYXJy aWVyRGlyZWN0aW9uIHsKKysJCVBPU0lUSVZFX1gsCisrCQlQT1NJVElWRV9ZLAorKwkJTkVHQVRJ VkVfWCwKKysJCU5FR0FUSVZFX1kKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfQlVUVE9OX0ZVTkNUSU9OXyIsIHR5cGVfaWQg PSAibWV0YV9idXR0b25fZnVuY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gQnV0 dG9uRnVuY3Rpb24geworKwkJTUVOVSwKKysJCU1JTklNSVpFLAorKwkJTUFYSU1JWkUsCisrCQlD TE9TRSwKKysJCUxBU1QKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9t YWluLmgiLCBjcHJlZml4ID0gIk1FVEFfQ0xPU0VfRElBTE9HX1JFU1BPTlNFXyIsIHR5cGVfaWQg PSAibWV0YV9jbG9zZV9kaWFsb2dfcmVzcG9uc2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVu dW0gQ2xvc2VEaWFsb2dSZXNwb25zZSB7CisrCQlXQUlULAorKwkJRk9SQ0VfQ0xPU0UKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1F VEFfQ09NUF9FRkZFQ1RfIiwgdHlwZV9pZCA9ICJtZXRhX2NvbXBfZWZmZWN0X2dldF90eXBlICgp IildCisrCXB1YmxpYyBlbnVtIENvbXBFZmZlY3QgeworKwkJQ1JFQVRFLAorKwkJVU5NSU5JTUla RSwKKysJCURFU1RST1ksCisrCQlNSU5JTUlaRSwKKysJCU5PTkUKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfQ1VSU09SXyIs IHR5cGVfaWQgPSAibWV0YV9jdXJzb3JfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gQ3Vy c29yIHsKKysJCU5PTkUsCisrCQlERUZBVUxULAorKwkJTk9SVEhfUkVTSVpFLAorKwkJU09VVEhf UkVTSVpFLAorKwkJV0VTVF9SRVNJWkUsCisrCQlFQVNUX1JFU0laRSwKKysJCVNFX1JFU0laRSwK KysJCVNXX1JFU0laRSwKKysJCU5FX1JFU0laRSwKKysJCU5XX1JFU0laRSwKKysJCU1PVkVfT1Jf UkVTSVpFX1dJTkRPVywKKysJCUJVU1ksCisrCQlETkRfSU5fRFJBRywKKysJCURORF9NT1ZFLAor KwkJRE5EX0NPUFksCisrCQlETkRfVU5TVVBQT1JURURfVEFSR0VULAorKwkJUE9JTlRJTkdfSEFO RCwKKysJCUNST1NTSEFJUiwKKysJCUlCRUFNLAorKwkJTEFTVAorKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9ERUJVR18iLCB0 eXBlX2lkID0gIm1ldGFfZGVidWdfdG9waWNfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlw dWJsaWMgZW51bSBEZWJ1Z1RvcGljIHsKKysJCVZFUkJPU0UsCisrCQlGT0NVUywKKysJCVdPUktB UkVBLAorKwkJU1RBQ0ssCisrCQlUSEVNRVMsCisrCQlTTSwKKysJCUVWRU5UUywKKysJCVdJTkRP V19TVEFURSwKKysJCVdJTkRPV19PUFMsCisrCQlHRU9NRVRSWSwKKysJCVBMQUNFTUVOVCwKKysJ CVBJTkcsCisrCQlYSU5FUkFNQSwKKysJCUtFWUJJTkRJTkdTLAorKwkJU1lOQywKKysJCUVSUk9S UywKKysJCVNUQVJUVVAsCisrCQlQUkVGUywKKysJCUdST1VQUywKKysJCVJFU0laSU5HLAorKwkJ U0hBUEVTLAorKwkJQ09NUE9TSVRPUiwKKysJCUVER0VfUkVTSVNUQU5DRSwKKysJCURCVVMKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0g Ik1FVEFfRElSRUNUSU9OXyIsIHR5cGVfaWQgPSAibWV0YV9kaXJlY3Rpb25fZ2V0X3R5cGUgKCki KV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBEaXJlY3Rpb24geworKwkJTEVGVCwKKysJCVJJ R0hULAorKwkJVE9QLAorKwkJQk9UVE9NLAorKwkJVVAsCisrCQlET1dOLAorKwkJSE9SSVpPTlRB TCwKKysJCVZFUlRJQ0FMCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0RJU1BMQVlfIiwgdHlwZV9pZCA9ICJtZXRhX2Rpc3Bs YXlfY29ybmVyX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIERpc3BsYXlDb3JuZXIgewor KwkJVE9QTEVGVCwKKysJCVRPUFJJR0hULAorKwkJQk9UVE9NTEVGVCwKKysJCUJPVFRPTVJJR0hU CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZp eCA9ICJNRVRBX0RJU1BMQVlfIiwgdHlwZV9pZCA9ICJtZXRhX2Rpc3BsYXlfZGlyZWN0aW9uX2dl dF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIERpc3BsYXlEaXJlY3Rpb24geworKwkJVVAsCisr CQlET1dOLAorKwkJTEVGVCwKKysJCVJJR0hUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0VER0VfIiwgdHlwZV9pZCA9ICJt ZXRhX2VkZ2VfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBFZGdlVHlwZSB7Cisr CQlXSU5ET1csCisrCQlNT05JVE9SLAorKwkJU0NSRUVOCisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0VYSVRfIiwgdHlwZV9p ZCA9ICJtZXRhX2V4aXRfY29kZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBFeGl0Q29k ZSB7CisrCQlTVUNDRVNTLAorKwkJRVJST1IKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfRlJBTUVfIiwgdHlwZV9pZCA9ICJt ZXRhX2ZyYW1lX2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0g RnJhbWVGbGFncyB7CisrCQlBTExPV1NfREVMRVRFLAorKwkJQUxMT1dTX01FTlUsCisrCQlBTExP V1NfTUlOSU1JWkUsCisrCQlBTExPV1NfTUFYSU1JWkUsCisrCQlBTExPV1NfVkVSVElDQUxfUkVT SVpFLAorKwkJQUxMT1dTX0hPUklaT05UQUxfUkVTSVpFLAorKwkJSEFTX0ZPQ1VTLAorKwkJU0hB REVELAorKwkJU1RVQ0ssCisrCQlNQVhJTUlaRUQsCisrCQlBTExPV1NfU0hBREUsCisrCQlBTExP V1NfTU9WRSwKKysJCUZVTExTQ1JFRU4sCisrCQlBQk9WRSwKKysJCVRJTEVEX0xFRlQsCisrCQlU SUxFRF9SSUdIVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4u aCIsIGNwcmVmaXggPSAiTUVUQV9GUkFNRV9UWVBFXyIsIHR5cGVfaWQgPSAibWV0YV9mcmFtZV90 eXBlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIEZyYW1lVHlwZSB7CisrCQlOT1JNQUws CisrCQlESUFMT0csCisrCQlNT0RBTF9ESUFMT0csCisrCQlVVElMSVRZLAorKwkJTUVOVSwKKysJ CUJPUkRFUiwKKysJCUFUVEFDSEVELAorKwkJTEFTVDsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmlu ZyB0b19zdHJpbmcgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0dSQUJfT1BfIiwgdHlwZV9pZCA9ICJtZXRhX2dyYWJf b3BfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gR3JhYk9wIHsKKysJCU5PTkUsCisrCQlX SU5ET1dfQkFTRSwKKysJCUNPTVBPU0lUT1IsCisrCQlXQVlMQU5EX1BPUFVQLAorKwkJRlJBTUVf QlVUVE9OLAorKwkJTU9WSU5HLAorKwkJUkVTSVpJTkdfTlcsCisrCQlSRVNJWklOR19OLAorKwkJ UkVTSVpJTkdfTkUsCisrCQlSRVNJWklOR19FLAorKwkJUkVTSVpJTkdfU1csCisrCQlSRVNJWklO R19TLAorKwkJUkVTSVpJTkdfU0UsCisrCQlSRVNJWklOR19XLAorKwkJS0VZQk9BUkRfTU9WSU5H LAorKwkJS0VZQk9BUkRfUkVTSVpJTkdfVU5LTk9XTiwKKysJCUtFWUJPQVJEX1JFU0laSU5HX05X LAorKwkJS0VZQk9BUkRfUkVTSVpJTkdfTiwKKysJCUtFWUJPQVJEX1JFU0laSU5HX05FLAorKwkJ S0VZQk9BUkRfUkVTSVpJTkdfRSwKKysJCUtFWUJPQVJEX1JFU0laSU5HX1NXLAorKwkJS0VZQk9B UkRfUkVTSVpJTkdfUywKKysJCUtFWUJPQVJEX1JFU0laSU5HX1NFLAorKwkJS0VZQk9BUkRfUkVT SVpJTkdfVworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIs IGNwcmVmaXggPSAiTUVUQV9JTkhJQklUX1NIT1JUQ1VUU19ESUFMT0dfUkVTUE9OU0VfIiwgdHlw ZV9pZCA9ICJtZXRhX2luaGliaXRfc2hvcnRjdXRzX2RpYWxvZ19yZXNwb25zZV9nZXRfdHlwZSAo KSIpXQorKwlwdWJsaWMgZW51bSBJbmhpYml0U2hvcnRjdXRzRGlhbG9nUmVzcG9uc2UgeworKwkJ QUxMT1csCisrCQlERU5ZCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0tFWUJJTkRJTkdfQUNUSU9OXyIsIHR5cGVfaWQgPSAi bWV0YV9rZXlfYmluZGluZ19hY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gS2V5 QmluZGluZ0FjdGlvbiB7CisrCQlOT05FLAorKwkJV09SS1NQQUNFXzEsCisrCQlXT1JLU1BBQ0Vf MiwKKysJCVdPUktTUEFDRV8zLAorKwkJV09SS1NQQUNFXzQsCisrCQlXT1JLU1BBQ0VfNSwKKysJ CVdPUktTUEFDRV82LAorKwkJV09SS1NQQUNFXzcsCisrCQlXT1JLU1BBQ0VfOCwKKysJCVdPUktT UEFDRV85LAorKwkJV09SS1NQQUNFXzEwLAorKwkJV09SS1NQQUNFXzExLAorKwkJV09SS1NQQUNF XzEyLAorKwkJV09SS1NQQUNFX0xFRlQsCisrCQlXT1JLU1BBQ0VfUklHSFQsCisrCQlXT1JLU1BB Q0VfVVAsCisrCQlXT1JLU1BBQ0VfRE9XTiwKKysJCVdPUktTUEFDRV9MQVNULAorKwkJU1dJVENI X0FQUExJQ0FUSU9OUywKKysJCVNXSVRDSF9BUFBMSUNBVElPTlNfQkFDS1dBUkQsCisrCQlTV0lU Q0hfR1JPVVAsCisrCQlTV0lUQ0hfR1JPVVBfQkFDS1dBUkQsCisrCQlTV0lUQ0hfV0lORE9XUywK KysJCVNXSVRDSF9XSU5ET1dTX0JBQ0tXQVJELAorKwkJU1dJVENIX1BBTkVMUywKKysJCVNXSVRD SF9QQU5FTFNfQkFDS1dBUkQsCisrCQlDWUNMRV9HUk9VUCwKKysJCUNZQ0xFX0dST1VQX0JBQ0tX QVJELAorKwkJQ1lDTEVfV0lORE9XUywKKysJCUNZQ0xFX1dJTkRPV1NfQkFDS1dBUkQsCisrCQlD WUNMRV9QQU5FTFMsCisrCQlDWUNMRV9QQU5FTFNfQkFDS1dBUkQsCisrCQlTSE9XX0RFU0tUT1As CisrCQlQQU5FTF9NQUlOX01FTlUsCisrCQlQQU5FTF9SVU5fRElBTE9HLAorKwkJVE9HR0xFX1JF Q09SRElORywKKysJCVNFVF9TUEVXX01BUkssCisrCQlBQ1RJVkFURV9XSU5ET1dfTUVOVSwKKysJ CVRPR0dMRV9GVUxMU0NSRUVOLAorKwkJVE9HR0xFX01BWElNSVpFRCwKKysJCVRPR0dMRV9USUxF RF9MRUZULAorKwkJVE9HR0xFX1RJTEVEX1JJR0hULAorKwkJVE9HR0xFX0FCT1ZFLAorKwkJTUFY SU1JWkUsCisrCQlVTk1BWElNSVpFLAorKwkJVE9HR0xFX1NIQURFRCwKKysJCU1JTklNSVpFLAor KwkJQ0xPU0UsCisrCQlCRUdJTl9NT1ZFLAorKwkJQkVHSU5fUkVTSVpFLAorKwkJVE9HR0xFX09O X0FMTF9XT1JLU1BBQ0VTLAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfMSwKKysJCU1PVkVfVE9fV09S S1NQQUNFXzIsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV8zLAorKwkJTU9WRV9UT19XT1JLU1BBQ0Vf NCwKKysJCU1PVkVfVE9fV09SS1NQQUNFXzUsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV82LAorKwkJ TU9WRV9UT19XT1JLU1BBQ0VfNywKKysJCU1PVkVfVE9fV09SS1NQQUNFXzgsCisrCQlNT1ZFX1RP X1dPUktTUEFDRV85LAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfMTAsCisrCQlNT1ZFX1RPX1dPUktT UEFDRV8xMSwKKysJCU1PVkVfVE9fV09SS1NQQUNFXzEyLAorKwkJTU9WRV9UT19XT1JLU1BBQ0Vf TEVGVCwKKysJCU1PVkVfVE9fV09SS1NQQUNFX1JJR0hULAorKwkJTU9WRV9UT19XT1JLU1BBQ0Vf VVAsCisrCQlNT1ZFX1RPX1dPUktTUEFDRV9ET1dOLAorKwkJTU9WRV9UT19XT1JLU1BBQ0VfTEFT VCwKKysJCU1PVkVfVE9fTU9OSVRPUl9MRUZULAorKwkJTU9WRV9UT19NT05JVE9SX1JJR0hULAor KwkJTU9WRV9UT19NT05JVE9SX1VQLAorKwkJTU9WRV9UT19NT05JVE9SX0RPV04sCisrCQlSQUlT RV9PUl9MT1dFUiwKKysJCVJBSVNFLAorKwkJTE9XRVIsCisrCQlNQVhJTUlaRV9WRVJUSUNBTExZ LAorKwkJTUFYSU1JWkVfSE9SSVpPTlRBTExZLAorKwkJTU9WRV9UT19DT1JORVJfTlcsCisrCQlN T1ZFX1RPX0NPUk5FUl9ORSwKKysJCU1PVkVfVE9fQ09STkVSX1NXLAorKwkJTU9WRV9UT19DT1JO RVJfU0UsCisrCQlNT1ZFX1RPX1NJREVfTiwKKysJCU1PVkVfVE9fU0lERV9TLAorKwkJTU9WRV9U T19TSURFX0UsCisrCQlNT1ZFX1RPX1NJREVfVywKKysJCU1PVkVfVE9fQ0VOVEVSLAorKwkJT1ZF UkxBWV9LRVksCisrCQlMT0NBVEVfUE9JTlRFUl9LRVksCisrCQlJU09fTkVYVF9HUk9VUCwKKysJ CUFMV0FZU19PTl9UT1AsCisrCQlTV0lUQ0hfTU9OSVRPUiwKKysJCVJPVEFURV9NT05JVE9SLAor KwkJTEFTVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIs IGNwcmVmaXggPSAiTUVUQV9LRVlfQklORElOR18iLCB0eXBlX2lkID0gIm1ldGFfa2V5X2JpbmRp bmdfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBLZXlCaW5k aW5nRmxhZ3MgeworKwkJTk9ORSwKKysJCVBFUl9XSU5ET1csCisrCQlCVUlMVElOLAorKwkJSVNf UkVWRVJTRUQsCisrCQlOT05fTUFTS0FCTEUsCisrCQlJR05PUkVfQVVUT1JFUEVBVCwKKysJCU5P X0FVVE9fR1JBQgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4u aCIsIGNwcmVmaXggPSAiTUVUQV9MQVRFUl8iLCB0eXBlX2lkID0gIm1ldGFfbGF0ZXJfdHlwZV9n ZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBMYXRlclR5cGUgeworKwkJUkVTSVpFLAorKwkJ Q0FMQ19TSE9XSU5HLAorKwkJQ0hFQ0tfRlVMTFNDUkVFTiwKKysJCVNZTkNfU1RBQ0ssCisrCQlC RUZPUkVfUkVEUkFXLAorKwkJSURMRQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9MT0NBTEVfRElSRUNUSU9OXyIsIHR5cGVf aWQgPSAibWV0YV9sb2NhbGVfZGlyZWN0aW9uX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVt IExvY2FsZURpcmVjdGlvbiB7CisrCQlMVFIsCisrCQlSVEwKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfTUFYSU1JWkVfIiwg dHlwZV9pZCA9ICJtZXRhX21heGltaXplX2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFnc10K KysJcHVibGljIGVudW0gTWF4aW1pemVGbGFncyB7CisrCQlIT1JJWk9OVEFMLAorKwkJVkVSVElD QUwsCisrCQlCT1RICisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFp bi5oIiwgY3ByZWZpeCA9ICJNRVRBX01PREFMXyIsIHR5cGVfaWQgPSAibWV0YV9tb2RhbF9vcHRp b25zX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJcHVibGljIGVudW0gTW9kYWxPcHRpb25z IHsKKysJCVBPSU5URVJfQUxSRUFEWV9HUkFCQkVELAorKwkJS0VZQk9BUkRfQUxSRUFEWV9HUkFC QkVECisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3By ZWZpeCA9ICJNRVRBX01PTklUT1JfU1dJVENIX0NPTkZJR18iLCB0eXBlX2lkID0gIm1ldGFfbW9u aXRvcl9zd2l0Y2hfY29uZmlnX3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gTW9u aXRvclN3aXRjaENvbmZpZ1R5cGUgeworKwkJQUxMX01JUlJPUiwKKysJCUFMTF9MSU5FQVIsCisr CQlFWFRFUk5BTCwKKysJCUJVSUxUSU4sCisrCQlVTktOT1dOCisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX01PVElPTl8iLCB0 eXBlX2lkID0gIm1ldGFfbW90aW9uX2RpcmVjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMg ZW51bSBNb3Rpb25EaXJlY3Rpb24geworKwkJVVAsCisrCQlET1dOLAorKwkJTEVGVCwKKysJCVJJ R0hULAorKwkJVVBfTEVGVCwKKysJCVVQX1JJR0hULAorKwkJRE9XTl9MRUZULAorKwkJRE9XTl9S SUdIVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNw cmVmaXggPSAiTUVUQV9QQURfQUNUSU9OXyIsIHR5cGVfaWQgPSAibWV0YV9wYWRfYWN0aW9uX3R5 cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gUGFkQWN0aW9uVHlwZSB7CisrCQlCVVRU T04sCisrCQlSSU5HLAorKwkJU1RSSVAKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9wcmVmcy5oIiwgY3ByZWZpeCA9ICJNRVRBX1BSRUZfIiwgdHlwZV9pZCA9ICJtZXRh X3ByZWZlcmVuY2VfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gUHJlZmVyZW5jZSB7Cisr CQlNT1VTRV9CVVRUT05fTU9EUywKKysJCUZPQ1VTX01PREUsCisrCQlGT0NVU19ORVdfV0lORE9X UywKKysJCUFUVEFDSF9NT0RBTF9ESUFMT0dTLAorKwkJUkFJU0VfT05fQ0xJQ0ssCisrCQlBQ1RJ T05fRE9VQkxFX0NMSUNLX1RJVExFQkFSLAorKwkJQUNUSU9OX01JRERMRV9DTElDS19USVRMRUJB UiwKKysJCUFDVElPTl9SSUdIVF9DTElDS19USVRMRUJBUiwKKysJCUFVVE9fUkFJU0UsCisrCQlB VVRPX1JBSVNFX0RFTEFZLAorKwkJRk9DVVNfQ0hBTkdFX09OX1BPSU5URVJfUkVTVCwKKysJCVRJ VExFQkFSX0ZPTlQsCisrCQlOVU1fV09SS1NQQUNFUywKKysJCURZTkFNSUNfV09SS1NQQUNFUywK KysJCUtFWUJJTkRJTkdTLAorKwkJRElTQUJMRV9XT1JLQVJPVU5EUywKKysJCUJVVFRPTl9MQVlP VVQsCisrCQlXT1JLU1BBQ0VfTkFNRVMsCisrCQlWSVNVQUxfQkVMTCwKKysJCUFVRElCTEVfQkVM TCwKKysJCVZJU1VBTF9CRUxMX1RZUEUsCisrCQlHTk9NRV9BQ0NFU1NJQklMSVRZLAorKwkJR05P TUVfQU5JTUFUSU9OUywKKysJCUNVUlNPUl9USEVNRSwKKysJCUNVUlNPUl9TSVpFLAorKwkJUkVT SVpFX1dJVEhfUklHSFRfQlVUVE9OLAorKwkJRURHRV9USUxJTkcsCisrCQlGT1JDRV9GVUxMU0NS RUVOLAorKwkJV09SS1NQQUNFU19PTkxZX09OX1BSSU1BUlksCisrCQlEUkFHR0FCTEVfQk9SREVS X1dJRFRILAorKwkJQVVUT19NQVhJTUlaRSwKKysJCUNFTlRFUl9ORVdfV0lORE9XUywKKysJCURS QUdfVEhSRVNIT0xELAorKwkJTE9DQVRFX1BPSU5URVI7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJp bmcgdG9fc3RyaW5nICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV8iLCB0eXBlX2lkID0gIm1ldGFfc2VsZWN0aW9uX3R5 cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gU2VsZWN0aW9uVHlwZSB7CisrCQlTRUxF Q1RJT05fUFJJTUFSWSwKKysJCVNFTEVDVElPTl9DTElQQk9BUkQsCisrCQlTRUxFQ1RJT05fRE5E LAorKwkJTl9TRUxFQ1RJT05fVFlQRVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfU0hBRE9XX01PREVfIiwgdHlwZV9pZCA9 ICJtZXRhX3NoYWRvd19tb2RlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFNoYWRvd01v ZGUgeworKwkJQVVUTywKKysJCUZPUkNFRF9PRkYsCisrCQlGT1JDRURfT04KKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfU0lE RV8iLCB0eXBlX2lkID0gIm1ldGFfc2lkZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBT aWRlIHsKKysJCUxFRlQsCisrCQlSSUdIVCwKKysJCVRPUCwKKysJCUJPVFRPTQorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9T SVpFX0NIQU5HRV8iLCB0eXBlX2lkID0gIm1ldGFfc2l6ZV9jaGFuZ2VfZ2V0X3R5cGUgKCkiKV0K KysJcHVibGljIGVudW0gU2l6ZUNoYW5nZSB7CisrCQlNQVhJTUlaRSwKKysJCVVOTUFYSU1JWkUs CisrCQlGVUxMU0NSRUVOLAorKwkJVU5GVUxMU0NSRUVOCisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX0xBWUVSXyIsIHR5cGVf aWQgPSAibWV0YV9zdGFja19sYXllcl9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBTdGFj a0xheWVyIHsKKysJCURFU0tUT1AsCisrCQlCT1RUT00sCisrCQlOT1JNQUwsCisrCQlUT1AsCisr CQlET0NLLAorKwkJT1ZFUlJJREVfUkVESVJFQ1QsCisrCQlMQVNUCisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3ByZWZpeCA9ICJNRVRBX1RBQl9MSVNU XyIsIHR5cGVfaWQgPSAibWV0YV90YWJfbGlzdF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51 bSBUYWJMaXN0IHsKKysJCU5PUk1BTCwKKysJCURPQ0tTLAorKwkJR1JPVVAsCisrCQlOT1JNQUxf QUxMCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY3By ZWZpeCA9ICJNRVRBX1RBQl9TSE9XXyIsIHR5cGVfaWQgPSAibWV0YV90YWJfc2hvd190eXBlX2dl dF90eXBlICgpIildCisrCXB1YmxpYyBlbnVtIFRhYlNob3dUeXBlIHsKKysJCUlDT04sCisrCQlJ TlNUQU5UTFkKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgi LCBjcHJlZml4ID0gIk1FVEFfVklSVFVBTF8iLCB0eXBlX2lkID0gIm1ldGFfdmlydHVhbF9tb2Rp Zmllcl9nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIFZpcnR1YWxNb2Rp ZmllciB7CisrCQlTSElGVF9NQVNLLAorKwkJQ09OVFJPTF9NQVNLLAorKwkJQUxUX01BU0ssCisr CQlNRVRBX01BU0ssCisrCQlTVVBFUl9NQVNLLAorKwkJSFlQRVJfTUFTSywKKysJCU1PRDJfTUFT SywKKysJCU1PRDNfTUFTSywKKysJCU1PRDRfTUFTSywKKysJCU1PRDVfTUFTSworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNwcmVmaXggPSAiTUVUQV9X SU5ET1dfQ0xJRU5UX1RZUEVfIiwgdHlwZV9pZCA9ICJtZXRhX3dpbmRvd19jbGllbnRfdHlwZV9n ZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBXaW5kb3dDbGllbnRUeXBlIHsKKysJCVdBWUxB TkQsCisrCQlYMTEKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWlu LmgiLCBjcHJlZml4ID0gIk1FVEFfV0lORE9XX01FTlVfIiwgdHlwZV9pZCA9ICJtZXRhX3dpbmRv d19tZW51X3R5cGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gV2luZG93TWVudVR5cGUg eworKwkJV00sCisrCQlBUFAKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0 YS9tYWluLmgiLCBjcHJlZml4ID0gIk1FVEFfV0lORE9XXyIsIHR5cGVfaWQgPSAibWV0YV93aW5k b3dfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBXaW5kb3dUeXBlIHsKKysJCU5P Uk1BTCwKKysJCURFU0tUT1AsCisrCQlET0NLLAorKwkJRElBTE9HLAorKwkJTU9EQUxfRElBTE9H LAorKwkJVE9PTEJBUiwKKysJCU1FTlUsCisrCQlVVElMSVRZLAorKwkJU1BMQVNIU0NSRUVOLAor KwkJRFJPUERPV05fTUVOVSwKKysJCVBPUFVQX01FTlUsCisrCQlUT09MVElQLAorKwkJTk9USUZJ Q0FUSU9OLAorKwkJQ09NQk8sCisrCQlETkQsCisrCQlPVkVSUklERV9PVEhFUgorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGluc3RhbmNlX3BvcyA9IDIu OSldCisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIElkbGVNb25pdG9yV2F0Y2hGdW5jIChNZXRhLklk bGVNb25pdG9yIG1vbml0b3IsIHVpbnQgd2F0Y2hfaWQpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9tYWluLmgiLCBpbnN0YW5jZV9wb3MgPSA0LjkpXQorKwlwdWJsaWMgZGVs ZWdhdGUgdm9pZCBLZXlIYW5kbGVyRnVuYyAoTWV0YS5EaXNwbGF5IGRpc3BsYXksIE1ldGEuV2lu ZG93IHdpbmRvdywgW0NDb2RlICh0eXBlID0gIkNsdXR0ZXJLZXlFdmVudCoiKV0gQ2x1dHRlci5L ZXlFdmVudD8gZXZlbnQsIE1ldGEuS2V5QmluZGluZyBiaW5kaW5nKTsKKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgaW5zdGFuY2VfcG9zID0gMS45KV0KKysJcHVi bGljIGRlbGVnYXRlIHZvaWQgUHJlZnNDaGFuZ2VkRnVuYyAoTWV0YS5QcmVmZXJlbmNlIHByZWYp OworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBpbnN0YW5jZV9w b3MgPSAxLjkpXQorKwlwdWJsaWMgZGVsZWdhdGUgYm9vbCBXaW5kb3dGb3JlYWNoRnVuYyAoTWV0 YS5XaW5kb3cgd2luZG93KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFp bi5oIiwgY25hbWUgPSAiTUVUQV9DVVJSRU5UX1RJTUUiKV0KKysJcHVibGljIGNvbnN0IGludCBD VVJSRU5UX1RJTUU7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIs IGNuYW1lID0gIk1FVEFfREVGQVVMVF9JQ09OX05BTUUiKV0KKysJcHVibGljIGNvbnN0IHN0cmlu ZyBERUZBVUxUX0lDT05fTkFNRTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEv bWFpbi5oIiwgY25hbWUgPSAiTUVUQV9JQ09OX0hFSUdIVCIpXQorKwlwdWJsaWMgY29uc3QgaW50 IElDT05fSEVJR0hUOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgi LCBjbmFtZSA9ICJNRVRBX0lDT05fV0lEVEgiKV0KKysJcHVibGljIGNvbnN0IGludCBJQ09OX1dJ RFRIOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9 ICJNRVRBX01BSk9SX1ZFUlNJT04iKV0KKysJcHVibGljIGNvbnN0IGludCBNQUpPUl9WRVJTSU9O OworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJN RVRBX01JQ1JPX1ZFUlNJT04iKV0KKysJcHVibGljIGNvbnN0IGludCBNSUNST19WRVJTSU9OOwor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRB X01JTklfSUNPTl9IRUlHSFQiKV0KKysJcHVibGljIGNvbnN0IGludCBNSU5JX0lDT05fSEVJR0hU OworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJN RVRBX01JTklfSUNPTl9XSURUSCIpXQorKwlwdWJsaWMgY29uc3QgaW50IE1JTklfSUNPTl9XSURU SDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAi TUVUQV9NSU5PUl9WRVJTSU9OIildCisrCXB1YmxpYyBjb25zdCBpbnQgTUlOT1JfVkVSU0lPTjsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVU QV9QTFVHSU5fQVBJX1ZFUlNJT04iKV0KKysJcHVibGljIGNvbnN0IGludCBQTFVHSU5fQVBJX1ZF UlNJT047CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1l ID0gIk1FVEFfUFJJT1JJVFlfQkVGT1JFX1JFRFJBVyIpXQorKwlwdWJsaWMgY29uc3QgaW50IFBS SU9SSVRZX0JFRk9SRV9SRURSQVc7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRh L21haW4uaCIsIGNuYW1lID0gIk1FVEFfUFJJT1JJVFlfUFJFRlNfTk9USUZZIildCisrCXB1Ymxp YyBjb25zdCBpbnQgUFJJT1JJVFlfUFJFRlNfTk9USUZZOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRBX1BSSU9SSVRZX1JFRFJBVyIpXQor KwlwdWJsaWMgY29uc3QgaW50IFBSSU9SSVRZX1JFRFJBVzsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gIm1ldGEvbWFpbi5oIiwgY25hbWUgPSAiTUVUQV9QUklPUklUWV9SRVNJWkUiKV0K KysJcHVibGljIGNvbnN0IGludCBQUklPUklUWV9SRVNJWkU7CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJtZXRhL21haW4uaCIsIGNuYW1lID0gIk1FVEFfVklSVFVBTF9DT1JFX0tFWUJP QVJEX0lEIildCisrCXB1YmxpYyBjb25zdCBpbnQgVklSVFVBTF9DT1JFX0tFWUJPQVJEX0lEOwor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiLCBjbmFtZSA9ICJNRVRB X1ZJUlRVQUxfQ09SRV9QT0lOVEVSX0lEIildCisrCXB1YmxpYyBjb25zdCBpbnQgVklSVFVBTF9D T1JFX1BPSU5URVJfSUQ7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4u aCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgYWN0aXZhdGVfc2Vzc2lvbiAoKTsKKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9p ZCBhZGRfY2x1dHRlcl9kZWJ1Z19mbGFncyAoQ2x1dHRlci5EZWJ1Z0ZsYWcgZGVidWdfZmxhZ3Ms IENsdXR0ZXIuRHJhd0RlYnVnRmxhZyBkcmF3X2ZsYWdzLCBDbHV0dGVyLlBpY2tEZWJ1Z0ZsYWcg cGlja19mbGFncyk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIp XQorKwlwdWJsaWMgc3RhdGljIHZvaWQgZXhpdCAoTWV0YS5FeGl0Q29kZSBjb2RlKTsKKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMg c3RyaW5nIGdfdXRmOF9zdHJuZHVwIChzdHJpbmcgc3JjLCBzaXplX3Qgbik7CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIHVub3du ZWQgR0xpYi5PcHRpb25Db250ZXh0IGdldF9vcHRpb25fY29udGV4dCAoKTsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBn ZXRfcmVwbGFjZV9jdXJyZW50X3dtICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi bWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGluaXQgKCk7CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wg aXNfcmVzdGFydCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5o IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBxdWl0IChNZXRhLkV4aXRDb2RlIGNvZGUpOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAibWV0YS9tYWluLmgiKV0KKysJcHVibGljIHN0YXRp YyB2b2lkIHJlZ2lzdGVyX3dpdGhfc2Vzc2lvbiAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCByZW1vdmVfY2x1dHRl cl9kZWJ1Z19mbGFncyAoQ2x1dHRlci5EZWJ1Z0ZsYWcgZGVidWdfZmxhZ3MsIENsdXR0ZXIuRHJh d0RlYnVnRmxhZyBkcmF3X2ZsYWdzLCBDbHV0dGVyLlBpY2tEZWJ1Z0ZsYWcgcGlja19mbGFncyk7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJsaWMg c3RhdGljIHZvaWQgcmVzdGFydCAoc3RyaW5nPyBtZXNzYWdlKTsKKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgaW50IHJ1biAoKTsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBz dGF0aWMgdm9pZCBzZXRfZ25vbWVfd21fa2V5YmluZGluZ3MgKHN0cmluZyB3bV9rZXliaW5kaW5n cyk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIpXQorKwlwdWJs aWMgc3RhdGljIHZvaWQgc2V0X3dtX25hbWUgKHN0cmluZyB3bV9uYW1lKTsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gIm1ldGEvbWFpbi5oIildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCB0 ZXN0X2luaXQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJtZXRhL21haW4uaCIp XQorKwlwdWJsaWMgc3RhdGljIGJvb2wgeDExX2luaXRfZ2RrX2Rpc3BsYXkgKCkgdGhyb3dzIEdM aWIuRXJyb3I7CisrfQorZGlmZiAtLWdpdCBhL3ZhcGkvbXV0dGVyLWNsdXR0ZXItNi1jdXN0b20u dmFsYSBiL3ZhcGkvbXV0dGVyLWNsdXR0ZXItNi1jdXN0b20udmFsYQorbmV3IGZpbGUgbW9kZSAx MDA2NDQKK2luZGV4IDAwMDAwMDAwLi44OTIyNGJlNgorLS0tIC9kZXYvbnVsbAorKysrIGIvdmFw aS9tdXR0ZXItY2x1dHRlci02LWN1c3RvbS52YWxhCitAQCAtMCwwICsxLDE0NyBAQAorK25hbWVz cGFjZSBDbHV0dGVyIHsKKysKKysgIHB1YmxpYyBzdHJ1Y3QgTWF0cml4IDogQ29nbC5NYXRyaXgg eworKyAgfQorKworKyAgcHVibGljIGNsYXNzIEJhY2tlbmQgOiBHTGliLk9iamVjdCB7CisrICAg IFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyB2aXJ0dWFsIHZvaWQgYWRkX29wdGlvbnMgKEdMaWIu T3B0aW9uR3JvdXAgZ3JvdXApOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgdmlydHVh bCBib29sIGNyZWF0ZV9jb250ZXh0ICgpIHRocm93cyBHTGliLkVycm9yOworKyAgICBbTm9XcmFw cGVyXQorKyAgICBwdWJsaWMgdmlydHVhbCB1bm93bmVkIENsdXR0ZXIuU3RhZ2VXaW5kb3cgY3Jl YXRlX3N0YWdlIChDbHV0dGVyLlN0YWdlIHdyYXBwZXIpIHRocm93cyBHTGliLkVycm9yOworKyAg ICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgdmlydHVhbCB2b2lkIGVuc3VyZV9jb250ZXh0IChD bHV0dGVyLlN0YWdlIHN0YWdlKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1 YWwgQ2x1dHRlci5GZWF0dXJlRmxhZ3MgZ2V0X2ZlYXR1cmVzICgpOworKyAgICBbTm9XcmFwcGVy XQorKyAgICBwdWJsaWMgdmlydHVhbCB2b2lkIGluaXRfZXZlbnRzICgpOworKyAgICBbTm9XcmFw cGVyXQorKyAgICBwdWJsaWMgdmlydHVhbCB2b2lkIGluaXRfZmVhdHVyZXMgKCk7CisrICAgIFtO b1dyYXBwZXJdCisrICAgIHB1YmxpYyB2aXJ0dWFsIGJvb2wgcG9zdF9wYXJzZSAoKSB0aHJvd3Mg R0xpYi5FcnJvcjsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIHZpcnR1YWwgYm9vbCBw cmVfcGFyc2UgKCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1 YmxpYyB2aXJ0dWFsIHZvaWQgcmVkcmF3IChDbHV0dGVyLlN0YWdlIHN0YWdlKTsKKysgIH0KKysK KysgIFtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVf aWQgPSAiY2x1dHRlcl9ib3hfZ2V0X3R5cGUgKCkiKV0KKysgIHB1YmxpYyBjbGFzcyBCb3ggOiBD bHV0dGVyLkFjdG9yIHsKKysgICAgcHVibGljIENsdXR0ZXIuTGF5b3V0TWFuYWdlciBsYXlvdXRf bWFuYWdlciB7IGdldDsgc2V0OyB9CisrICB9CisrCisrICBbQ0NvZGUgKHR5cGVfaWQgPSAiQ0xV VFRFUl9UWVBFX0NPTE9SIiwgY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIp XQorKyAgcHVibGljIHN0cnVjdCBDb2xvciB7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRl cl9jb2xvcl9mcm9tX2hscyIpXQorKyAgICBwdWJsaWMgQ29sb3IuZnJvbV9obHMgKGZsb2F0IGh1 ZSwgZmxvYXQgbHVtaW5hbmNlLCBmbG9hdCBzYXR1cmF0aW9uKTsKKysgICAgW0NDb2RlIChjbmFt ZSA9ICJjbHV0dGVyX2NvbG9yX2Zyb21fcGl4ZWwiKV0KKysgICAgcHVibGljIENvbG9yLmZyb21f cGl4ZWwgKHVpbnQzMiBwaXhlbCk7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb2xv cl9mcm9tX3N0cmluZyIpXQorKyAgICBwdWJsaWMgQ29sb3IuZnJvbV9zdHJpbmcgKHN0cmluZyBz dHIpOworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfY29sb3JfZnJvbV9zdHJpbmciKV0K KysgICAgcHVibGljIGJvb2wgcGFyc2Vfc3RyaW5nIChzdHJpbmcgc3RyKTsKKysgICAgcHVibGlj IHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuQ29sb3I/IGdldF9zdGF0aWMgKENsdXR0ZXIuU3RhdGlj Q29sb3IgY29sb3IpOworKyAgfQorKworKyAgW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2NvbnRhaW5lcl9nZXRfdHlwZSAo KSIpXQorKyAgcHVibGljIGludGVyZmFjZSBDb250YWluZXIgOiBHTGliLk9iamVjdCB7CisrICAg IHB1YmxpYyB2b2lkIGFkZCAocGFyYW1zIENsdXR0ZXIuQWN0b3JbXSBhY3RvcnMpOworKyAgICBb Q0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfY29udGFpbmVyX2NsYXNzX2ZpbmRfY2hpbGRfcHJvcGVy dHkiKV0KKysgICAgcHVibGljIGNsYXNzIHVub3duZWQgR0xpYi5QYXJhbVNwZWMgZmluZF9jaGls ZF9wcm9wZXJ0eSAoc3RyaW5nIHByb3BlcnR5X25hbWUpOworKyAgICBbQ0NvZGUgKGNuYW1lID0g ImNsdXR0ZXJfY29udGFpbmVyX2NsYXNzX2xpc3RfY2hpbGRfcHJvcGVydGllcyIpXQorKyAgICBw dWJsaWMgY2xhc3MgdW5vd25lZCBHTGliLlBhcmFtU3BlY1tdIGxpc3RfY2hpbGRfcHJvcGVydGll cyAoKTsKKysgIH0KKysKKysgIFtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9 ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNsdXR0ZXJfZXZlbnRfZ2V0X3R5cGUgKCkiKV0K KysgIFtDb21wYWN0XQorKyAgcHVibGljIGNsYXNzIEV2ZW50IHsKKysgICAgcHVibGljIENsdXR0 ZXIuQW55RXZlbnQgYW55IHsgW0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlckFueUV2ZW50ICopIild IGdldDsgfQorKyAgICBwdWJsaWMgQ2x1dHRlci5CdXR0b25FdmVudCBidXR0b24geyBbQ0NvZGUg KGNuYW1lID0gIihDbHV0dGVyQnV0dG9uRXZlbnQgKikiKV0gZ2V0OyB9CisrICAgIHB1YmxpYyBD bHV0dGVyLkNyb3NzaW5nRXZlbnQgY3Jvc3NpbmcgeyBbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVy Q3Jvc3NpbmdFdmVudCAqKSIpXSBnZXQ7IH0KKysgICAgcHVibGljIENsdXR0ZXIuS2V5RXZlbnQg a2V5IHsgW0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlcktleUV2ZW50ICopIildIGdldDsgfQorKyAg ICBwdWJsaWMgQ2x1dHRlci5Nb3Rpb25FdmVudCBtb3Rpb24geyBbQ0NvZGUgKGNuYW1lID0gIihD bHV0dGVyTW90aW9uRXZlbnQgKikiKV0gZ2V0OyB9CisrICAgIHB1YmxpYyBDbHV0dGVyLlNjcm9s bEV2ZW50IHNjcm9sbCB7IFtDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJTY3JvbGxFdmVudCAqKSIp XSBnZXQ7IH0KKysgICAgcHVibGljIENsdXR0ZXIuU3RhZ2VTdGF0ZUV2ZW50IHN0YWdlX3N0YXRl IHsgW0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlclN0YWdlU3RhdGVFdmVudCAqKSIpXSBnZXQ7IH0K KysgICAgcHVibGljIENsdXR0ZXIuVG91Y2hFdmVudCB0b3VjaCB7IFtDQ29kZSAoY25hbWUgPSAi KENsdXR0ZXJUb3VjaEV2ZW50ICopIildIGdldDsgfQorKyAgICBwdWJsaWMgQ2x1dHRlci5Ub3Vj aHBhZFBpbmNoRXZlbnQgdG91Y2hwYWRfcGluY2ggeyBbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVy VG91Y2hwYWRQaW5jaEV2ZW50ICopIildIGdldDsgfQorKyAgICBwdWJsaWMgQ2x1dHRlci5Ub3Vj aHBhZFN3aXBlRXZlbnQgdG91Y2hwYWRfc3dpcGUgeyBbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVy VG91Y2hwYWRTd2lwZUV2ZW50ICopIildIGdldDsgfQorKyAgfQorKworKyAgW0NDb2RlICh0eXBl X2lkID0gImNsdXR0ZXJfc3RhZ2VfZ2V0X3R5cGUgKCkiLCBjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIildCisrICBwdWJsaWMgY2xhc3MgU3RhZ2UgOiBDbHV0dGVyLkdyb3Vw IHsKKysgICAgW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX3JlZHJhdyIpXQorKyAgICBwdWJsaWMg dm9pZCByZWRyYXcgKCk7CisrICB9CisrCisrICBbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiKV0KKysgIHB1YmxpYyBpbnRlcmZhY2UgU3RhZ2VXaW5kb3cgOiBH TGliLk9iamVjdCB7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0cmFjdCBpbnQg Z2V0X3BlbmRpbmdfc3dhcHMgKCk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0 cmFjdCB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3dyYXBwZXIgKCk7CisrICAgIFtOb1dyYXBw ZXJdCisrICAgIHB1YmxpYyBhYnN0cmFjdCBib29sIGhhc19yZWRyYXdfY2xpcHMgKCk7CisrICAg IFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0cmFjdCB2b2lkIGhpZGUgKCk7CisrICAgIFtO b1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0cmFjdCBib29sIGlnbm9yaW5nX3JlZHJhd19jbGlw cyAoKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IGJvb2wgcmVhbGl6 ZSAoKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IHZvaWQgcmVzaXpl IChpbnQgd2lkdGgsIGludCBoZWlnaHQpOworKyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMg YWJzdHJhY3Qgdm9pZCBzZXRfY3Vyc29yX3Zpc2libGUgKGJvb2wgY3Vyc29yX3Zpc2libGUpOwor KyAgICBbTm9XcmFwcGVyXQorKyAgICBwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzZXRfZnVsbHNjcmVl biAoYm9vbCBpc19mdWxsc2NyZWVuKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIGFi c3RyYWN0IHZvaWQgc2V0X3RpdGxlIChzdHJpbmcgdGl0bGUpOworKyAgICBbTm9XcmFwcGVyXQor KyAgICBwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzZXRfdXNlcl9yZXNpemFibGUgKGJvb2wgaXNfcmVz aXphYmxlKTsKKysgICAgW05vV3JhcHBlcl0KKysgICAgcHVibGljIGFic3RyYWN0IHZvaWQgc2hv dyAoYm9vbCBkb19yYWlzZSk7CisrICAgIFtOb1dyYXBwZXJdCisrICAgIHB1YmxpYyBhYnN0cmFj dCB2b2lkIHVucmVhbGl6ZSAoKTsKKysgIH0KKysKKysgIFtDQ29kZSAodHlwZV9pZCA9ICJjbHV0 dGVyX3RleHR1cmVfZ2V0X3R5cGUgKCkiLCBjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIildCisrICBwdWJsaWMgY2xhc3MgVGV4dHVyZSA6IENsdXR0ZXIuQWN0b3IgeworKyAg ICBwdWJsaWMgQ29nbC5NYXRlcmlhbCBjb2dsX21hdGVyaWFsIHsgZ2V0OyBzZXQ7IH0KKysgICAg cHVibGljIENvZ2wuVGV4dHVyZSBjb2dsX3RleHR1cmUgeyBnZXQ7IHNldDsgfQorKyAgfQorKwor KyAgW0NvbXBhY3RdCisrICBbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiKV0KKysgIHB1YmxpYyBjbGFzcyBUaW1lb3V0UG9vbCB7CisrICAgIFtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysgICAgcHVibGljIFRpbWVvdXRQb29sIChp bnQgcHJpb3JpdHkpOworKyAgfQorKworKyAgW0NDb2RlIChjcHJlZml4ID0gIkNMVVRURVJfRkVB VFVSRV8iLCBjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrICBbRmxh Z3NdCisrICBwdWJsaWMgZW51bSBGZWF0dXJlRmxhZ3MgeworKyAgICBURVhUVVJFX05QT1Q7Cisr ICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9mZWF0dXJlX2F2YWlsYWJsZSIpXQorKyAgICBw dWJsaWMgYm9vbCBpc19hdmFpbGFibGUgKCk7CisrICAgIFtDQ29kZSAoY25hbWUgPSAiY2x1dHRl cl9mZWF0dXJlX2dldF9hbGwiKV0KKysgICAgcHVibGljIHN0YXRpYyBDbHV0dGVyLkZlYXR1cmVG bGFncyBAZ2V0ICgpOworKyAgfQorKworKyAgW0NDb2RlICh0eXBlX2lkID0gIkNMVVRURVJfVFlQ RV9VTklUUyIsIGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysgIHB1 YmxpYyBzdHJ1Y3QgVW5pdHMgeworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNf ZnJvbV9jbSIpXQorKyAgICBwdWJsaWMgVW5pdHMuZnJvbV9jbSAoZmxvYXQgY20pOworKyAgICBb Q0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9lbSIpXQorKyAgICBwdWJsaWMgVW5p dHMuZnJvbV9lbSAoZmxvYXQgZW0pOworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5p dHNfZnJvbV9lbV9mb3JfZm9udCIpXQorKyAgICBwdWJsaWMgVW5pdHMuZnJvbV9lbV9mb3JfZm9u dCAoc3RyaW5nIGZvbnRfbmFtZSwgZmxvYXQgZW0pOworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNs dXR0ZXJfdW5pdHNfZnJvbV9tbSIpXQorKyAgICBwdWJsaWMgVW5pdHMuZnJvbV9tbSAoZmxvYXQg bW0pOworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9waXhlbHMiKV0K KysgICAgcHVibGljIFVuaXRzLmZyb21fcGl4ZWxzIChpbnQgcHgpOworKyAgICBbQ0NvZGUgKGNu YW1lID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9wdCIpXQorKyAgICBwdWJsaWMgVW5pdHMuZnJvbV9w dCAoZmxvYXQgcHQpOworKyAgICBbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNfZnJvbV9z dHJpbmciKV0KKysgICAgcHVibGljIFVuaXRzLmZyb21fc3RyaW5nIChzdHJpbmcgc3RyKTsKKysg IH0KKyt9CitkaWZmIC0tZ2l0IGEvdmFwaS9tdXR0ZXItY2x1dHRlci02LmRlcHMgYi92YXBpL211 dHRlci1jbHV0dGVyLTYuZGVwcworbmV3IGZpbGUgbW9kZSAxMDA2NDQKK2luZGV4IDAwMDAwMDAw Li43YTcwZDZkZgorLS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9tdXR0ZXItY2x1dHRlci02LmRl cHMKK0BAIC0wLDAgKzEsNCBAQAorK2F0aworK2NhaXJvCisranNvbi1nbGliLTEuMAorK211dHRl ci1jb2dsLTYKK2RpZmYgLS1naXQgYS92YXBpL211dHRlci1jbHV0dGVyLTYudmFwaSBiL3ZhcGkv bXV0dGVyLWNsdXR0ZXItNi52YXBpCituZXcgZmlsZSBtb2RlIDEwMDY0NAoraW5kZXggMDAwMDAw MDAuLmQ2NmY5YWM4CistLS0gL2Rldi9udWxsCisrKysgYi92YXBpL211dHRlci1jbHV0dGVyLTYu dmFwaQorQEAgLTAsMCArMSw4Njg3IEBACisrLyogbXV0dGVyLWNsdXR0ZXItNi52YXBpIGdlbmVy YXRlZCBieSB2YXBpZ2VuLCBkbyBub3QgbW9kaWZ5LiAqLworKworK1tDQ29kZSAoY3ByZWZpeCA9 ICJDbHV0dGVyIiwgZ2lyX25hbWVzcGFjZSA9ICJDbHV0dGVyIiwgZ2lyX3ZlcnNpb24gPSAiNiIs IGxvd2VyX2Nhc2VfY3ByZWZpeCA9ICJjbHV0dGVyXyIpXQorK25hbWVzcGFjZSBDbHV0dGVyIHsK KysJbmFtZXNwYWNlIEtleSB7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8wIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBAMDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAxOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDI7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV8zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBf QWx0Q3Vyc29yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9BbHRDdXJzb3I7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV8zMjcwX0F0dG4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0F0dG47 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0JhY2tUYWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAz MjcwX0JhY2tUYWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0NoYW5nZVNjcmVlbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQDMyNzBfQ2hhbmdlU2NyZWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9D b3B5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9Db3B5OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf MzI3MF9DdXJzb3JCbGluayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfQ3Vyc29yQmxp bms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0N1cnNvclNlbGVjdCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQDMyNzBfQ3Vyc29yU2VsZWN0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9EZWxldGVXb3Jk IildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9EZWxldGVXb3JkOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfMzI3MF9EdXBsaWNhdGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0R1cGxpY2F0 ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZXzMyNzBfRW50ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAz MjcwX0VudGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfMzI3MF9FcmFzZUVPRiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQDMyNzBfRXJhc2VFT0Y7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0VyYXNlSW5wdXQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0VyYXNlSW5wdXQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV8zMjcwX0V4U2VsZWN0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9FeFNlbGVjdDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZXzMyNzBfRmllbGRNYXJrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBA MzI3MF9GaWVsZE1hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX0lkZW50IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBAMzI3MF9JZGVudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfSnVtcCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQDMyNzBfSnVtcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfS2V5Q2xp Y2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX0tleUNsaWNrOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfMzI3MF9MZWZ0MiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfTGVmdDI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV8zMjcwX1BBMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfUEExOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfMzI3MF9QQTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEAzMjcwX1BB MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZXzMyNzBfUEEzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3 MF9QQTM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX1BsYXkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEAzMjcwX1BsYXk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX1ByaW50U2NyZWVuIildCisrCQlwdWJs aWMgY29uc3QgdWludCBAMzI3MF9QcmludFNjcmVlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfUXVp dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDMyNzBfUXVpdDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMy NzBfUmVjb3JkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9SZWNvcmQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV8zMjcwX1Jlc2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3MF9SZXNldDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZXzMyNzBfUmlnaHQyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBAMzI3 MF9SaWdodDI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX1J1bGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEAzMjcwX1J1bGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV8zMjcwX1NldHVwIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBAMzI3MF9TZXR1cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzMyNzBfVGVzdCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQDMyNzBfVGVzdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZXzQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEA0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfNSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQDU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV82IildCisrCQlwdWJsaWMgY29uc3QgdWludCBANjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZXzciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEA3OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQDg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV85Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBAOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0EiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BRSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQUU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFh Y3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FiZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QWJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWJyZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBYnJldmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BYnJldmVhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQWJyZXZlYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BYnJldmViZWxvd2RvdCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQWJyZXZlYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BYnJldmVn cmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWJyZXZlZ3JhdmU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BYnJldmVob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBYnJldmVob29rOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQWJyZXZldGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFicmV2ZXRpbGRl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQWNjZXNzWF9FbmFibGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFjY2Vzc1hfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWNjZXNzWF9GZWVkYmFja19FbmFibGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFjY2Vzc1hfRmVlZGJhY2tfRW5hYmxlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQWNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFjaXJjdW1mbGV4 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQWNpcmN1bWZsZXhhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQWNpcmN1bWZsZXhhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FjaXJjdW1mbGV4YmVsb3dkb3Qi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFjaXJjdW1mbGV4YmVsb3dkb3Q7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BY2lyY3VtZmxleGdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBY2lyY3VtZmxl eGdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQWNpcmN1bWZsZXhob29rIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBY2lyY3VtZmxleGhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BY2lyY3VtZmxleHRpbGRl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBY2lyY3VtZmxleHRpbGRlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQWRkRmF2b3JpdGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFkZEZhdm9yaXRlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQWRpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWRpYWVyZXNp czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQWdyYXZl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQWhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFob29rOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQWx0X0wiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFsdF9MOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQWx0X1IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFsdF9SOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQW1hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQW1hY3JvbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FvZ29uZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFvZ29uZWs7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9BcHBsaWNhdGlvbkxlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFwcGxp Y2F0aW9uTGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FwcGxpY2F0aW9uUmlnaHQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFwcGxpY2F0aW9uUmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfMCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljXzA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNf MSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljXzE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFi aWNfMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljXzI7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cmFiaWNfMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljXzM7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BcmFiaWNfNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljXzQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BcmFiaWNfNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljXzU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9BcmFiaWNfNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljXzY7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9BcmFiaWNfNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljXzc7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9BcmFiaWNfOCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljXzg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmlj Xzk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfYWluIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cmFiaWNfYWluOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2FsZWYiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFyYWJpY19hbGVmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2FsZWZtYWtzdXJhIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfYWxlZm1ha3N1cmE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BcmFiaWNfYmVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfYmVoOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJhYmljX2NvbW1hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfY29t bWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfZGFkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cmFiaWNfZGFkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2RhbCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXJhYmljX2RhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19kYW1tYSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJhYmljX2RhbW1hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2RhbW1h dGFuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfZGFtbWF0YW47CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BcmFiaWNfZGRhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2RkYWw7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9BcmFiaWNfZmFyc2lfeWVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cmFiaWNfZmFyc2lfeWVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2ZhdGhhIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcmFiaWNfZmF0aGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfZmF0aGF0 YW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19mYXRoYXRhbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FyYWJpY19mZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19mZWg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9BcmFiaWNfZnVsbHN0b3AiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJp Y19mdWxsc3RvcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19nYWYiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFyYWJpY19nYWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfZ2hhaW4iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFyYWJpY19naGFpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19oYSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmlj X2hhaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hhaDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FyYWJpY19oYW16YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hhbXphOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJhYmljX2hhbXphX2Fib3ZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cmFiaWNfaGFtemFfYWJvdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGFtemFfYmVsb3ciKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19oYW16YV9iZWxvdzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FyYWJpY19oYW16YW9uYWxlZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hhbXph b25hbGVmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2hhbXphb253YXciKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFyYWJpY19oYW16YW9ud2F3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2hhbXph b255ZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19oYW16YW9ueWVoOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJhYmljX2hhbXphdW5kZXJhbGVmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cmFiaWNfaGFtemF1bmRlcmFsZWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfaGVoIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcmFiaWNfaGVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2hlaF9k b2FjaGFzaG1lZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2hlaF9kb2FjaGFzaG1l ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19oZWhfZ29hbCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJhYmljX2hlaF9nb2FsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2plZW0iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFyYWJpY19qZWVtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2plaCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2plaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJp Y19rYWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19rYWY7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BcmFiaWNfa2FzcmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19rYXNyYTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0FyYWJpY19rYXNyYXRhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJh YmljX2thc3JhdGFuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX2tlaGVoIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcmFiaWNfa2VoZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfa2hhaCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX2toYWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNf bGFtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfbGFtOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJhYmljX21hZGRhX2Fib3ZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfbWFkZGFf YWJvdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfbWFkZGFvbmFsZWYiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFyYWJpY19tYWRkYW9uYWxlZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19tZWVt IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfbWVlbTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy YWJpY19ub29uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfbm9vbjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FyYWJpY19ub29uX2dodW5uYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmlj X25vb25fZ2h1bm5hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3BlaCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJhYmljX3BlaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19wZXJjZW50IildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfcGVyY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJp Y19xYWYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19xYWY7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BcmFiaWNfcXVlc3Rpb25fbWFyayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3F1 ZXN0aW9uX21hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfcmEiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFyYWJpY19yYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19ycmVoIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcmFiaWNfcnJlaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19zYWQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY19zYWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNf c2VlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3NlZW47CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BcmFiaWNfc2VtaWNvbG9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfc2VtaWNv bG9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3NoYWRkYSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJhYmljX3NoYWRkYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY19zaGVlbiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJhYmljX3NoZWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3N1a3Vu IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfc3VrdW47CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cmFiaWNfc3VwZXJzY3JpcHRfYWxlZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3N1 cGVyc2NyaXB0X2FsZWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfc3dpdGNoIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcmFiaWNfc3dpdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3RhaCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3RhaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJp Y190YXR3ZWVsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfdGF0d2VlbDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FyYWJpY190Y2hlaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJhYmljX3Rj aGVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3RlaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJhYmljX3RlaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY190ZWhtYXJidXRhIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcmFiaWNfdGVobWFyYnV0YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY190 aGFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfdGhhbDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FyYWJpY190aGVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfdGhlaDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FyYWJpY190dGVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfdHRl aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY192ZWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy YWJpY192ZWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BcmFiaWNfd2F3IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcmFiaWNfd2F3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJhYmljX3llaCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJhYmljX3llaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FyYWJpY195ZWhfYmFyZWUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY195ZWhfYmFyZWU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9BcmFiaWNfemFoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcmFiaWNfemFoOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJhYmljX3phaW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyYWJpY196YWlu OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXJpbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFyaW5nOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fQVQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVu aWFuX0FUOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fQVlCIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcm1lbmlhbl9BWUI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9CRU4iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0JFTjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX0NI QSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fQ0hBOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf QXJtZW5pYW5fREEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0RBOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJtZW5pYW5fRFpBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9E WkE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9FIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cm1lbmlhbl9FOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fRkUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFybWVuaWFuX0ZFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fR0hBVCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fR0hBVDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFu X0dJTSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fR0lNOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJtZW5pYW5fSEkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0hJOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJtZW5pYW5fSE8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFu X0hPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fSU5JIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcm1lbmlhbl9JTkk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9KRSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJtZW5pYW5fSkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9LRSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fS0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlh bl9LRU4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX0tFTjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FybWVuaWFuX0tIRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fS0hFOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fTFlVTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJt ZW5pYW5fTFlVTjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX01FTiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJtZW5pYW5fTUVOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fTlUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX05VOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5f TyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fTzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Fy bWVuaWFuX1BFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9QRTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0FybWVuaWFuX1BZVVIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1BZ VVI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9SQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg QXJtZW5pYW5fUkE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9SRSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJtZW5pYW5fUkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9TRSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fU0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9T SEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1NIQTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FybWVuaWFuX1RDSEUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1RDSEU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9UTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5p YW5fVE87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9UU0EiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEFybWVuaWFuX1RTQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1RTTyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fVFNPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fVFlV TiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fVFlVTjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FybWVuaWFuX1ZFViIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fVkVWOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJtZW5pYW5fVk8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFu X1ZPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fVllVTiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQXJtZW5pYW5fVllVTjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX1lFQ0giKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1lFQ0g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9a QSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fWkE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cm1lbmlhbl9aSEUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX1pIRTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0FybWVuaWFuX2FjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5p YW5fYWNjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fYW1hbmFrIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBBcm1lbmlhbl9hbWFuYWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9hcG9z dHJvcGhlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9hcG9zdHJvcGhlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJtZW5pYW5fYXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFu X2F0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fYXliIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBBcm1lbmlhbl9heWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9iZW4iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEFybWVuaWFuX2JlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2J1dCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fYnV0OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJt ZW5pYW5fY2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9jaGE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Bcm1lbmlhbl9kYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fZGE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9kemEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy bWVuaWFuX2R6YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2UiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEFybWVuaWFuX2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9leGNsYW0iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2V4Y2xhbTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVu aWFuX2ZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9mZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0FybWVuaWFuX2Z1bGxfc3RvcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5f ZnVsbF9zdG9wOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fZ2hhdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXJtZW5pYW5fZ2hhdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2dpbSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fZ2ltOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5p YW5faGkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2hpOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXJtZW5pYW5faG8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX2hvOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJtZW5pYW5faHlwaGVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1l bmlhbl9oeXBoZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9pbmkiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEFybWVuaWFuX2luaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX2plIildCisr CQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9qZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFu X2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9rZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0FybWVuaWFuX2tlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fa2VuOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJtZW5pYW5fa2hlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlh bl9raGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9saWdhdHVyZV9ldyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXJtZW5pYW5fbGlnYXR1cmVfZXc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlh bl9seXVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9seXVuOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJtZW5pYW5fbWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9tZW47 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9udSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJt ZW5pYW5fbnU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9vIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcm1lbmlhbl9vOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fcGFydXlrIildCisrCQlw dWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9wYXJ1eWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlh bl9wZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fcGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Bcm1lbmlhbl9weXVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl9weXVyOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fcXVlc3Rpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEFybWVuaWFuX3F1ZXN0aW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fcmEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3JhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fcmUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3JlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJt ZW5pYW5fc2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3NlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXJtZW5pYW5fc2VwYXJhdGlvbl9tYXJrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBB cm1lbmlhbl9zZXBhcmF0aW9uX21hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl9zaGEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEFybWVuaWFuX3NoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVu aWFuX3NoZXNodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fc2hlc2h0OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJtZW5pYW5fdGNoZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5p YW5fdGNoZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3RvIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBBcm1lbmlhbl90bzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3RzYSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fdHNhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fdHNv IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl90c287CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B cm1lbmlhbl90eXVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl90eXVuOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXJtZW5pYW5fdmVyamFrZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEFy bWVuaWFuX3Zlcmpha2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXJtZW5pYW5fdmV2IildCisrCQlwdWJs aWMgY29uc3QgdWludCBBcm1lbmlhbl92ZXY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1lbmlhbl92byIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5fdm87CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Bcm1l bmlhbl92eXVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl92eXVuOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQXJtZW5pYW5feWVjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5f eWVjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3llbnRhbW5hIildCisrCQlwdWJsaWMgY29u c3QgdWludCBBcm1lbmlhbl95ZW50YW1uYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVuaWFuX3phIild CisrCQlwdWJsaWMgY29uc3QgdWludCBBcm1lbmlhbl96YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0FybWVu aWFuX3poZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXJtZW5pYW5femhlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdGlsZGU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9BdWRpYmxlQmVsbF9FbmFibGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlibGVC ZWxsX0VuYWJsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvQ3ljbGVUcmFjayIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQXVkaW9DeWNsZVRyYWNrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9Gb3J3YXJk IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb0ZvcndhcmQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9B dWRpb0xvd2VyVm9sdW1lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb0xvd2VyVm9sdW1l OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9NZWRpYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVk aW9NZWRpYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvTWljTXV0ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQXVkaW9NaWNNdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9NdXRlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBBdWRpb011dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRpb05leHQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvTmV4dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvUGF1c2Ui KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvUGF1c2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9BdWRp b1BsYXkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvUGxheTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0F1ZGlvUHJldiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9QcmV2OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQXVkaW9SYWlzZVZvbHVtZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQXVkaW9SYWlz ZVZvbHVtZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0F1ZGlvUmFuZG9tUGxheSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgQXVkaW9SYW5kb21QbGF5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9SZWNvcmQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvUmVjb3JkOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQXVkaW9S ZXBlYXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvUmVwZWF0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQXVkaW9SZXdpbmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEF1ZGlvUmV3aW5kOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQXVkaW9TdG9wIildCisrCQlwdWJsaWMgY29uc3QgdWludCBBdWRpb1N0b3A7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Bd2F5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBBd2F5OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0JhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQmFib3ZlZG90OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQmFjayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQmFjazsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0JhY2tGb3J3YXJkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBCYWNrRm9yd2FyZDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0JhY2tTcGFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQmFja1NwYWNlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQmF0dGVyeSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQmF0dGVyeTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0JlZ2luIildCisrCQlwdWJsaWMgY29uc3QgdWludCBCZWdpbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0JsdWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJsdWU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9CbHVldG9vdGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJsdWV0b290aDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0Jvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEJvb2s7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Cb3VuY2VLZXlzX0VuYWJsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQm91bmNl S2V5c19FbmFibGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CcmVhayIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQnJlYWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9CcmlnaHRuZXNzQWRqdXN0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBCcmlnaHRuZXNzQWRqdXN0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQnllbG9ydXNzaWFu X1NIT1JUVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQnllbG9ydXNzaWFuX1NIT1JUVTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0J5ZWxvcnVzc2lhbl9zaG9ydHUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEJ5ZWxvcnVzc2lhbl9zaG9ydHU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DIildCisrCQlwdWJsaWMgY29u c3QgdWludCBDOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ0QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENE OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQ0giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENIOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ19IIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDX0g7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DX2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENfaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NhYm92 ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2Fib3ZlZG90OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Q2FjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9D YWxjdWxhdG9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDYWxjdWxhdG9yOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ2FsZW5kYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENhbGVuZGFyOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ2FuY2VsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDYW5jZWw7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9DYXBzX0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENhcHNfTG9jazsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0NjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2Nhcm9uOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ2NlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENjZWRpbGxhOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQ2NpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENjaXJj dW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENoOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfQ2xlYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENsZWFyOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ2xlYXJHcmFiIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDbGVhckdyYWI7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9DbG9zZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ2xvc2U7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Db2RlaW5wdXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IENvZGVpbnB1 dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0NvbG9uU2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ29s b25TaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ29tbXVuaXR5IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDb21tdW5pdHk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Db250cmFzdEFkanVzdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ29udHJhc3RBZGp1c3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Db250cm9sX0wiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IENvbnRyb2xfTDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NvbnRyb2xf UiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ29udHJvbF9SOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ29w eSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ29weTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0NydXplaXJv U2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3J1emVpcm9TaWduOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQ3V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDdXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeWNs ZUFuZ2xlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeWNsZUFuZ2xlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQ3lyaWxsaWNfQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfQTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0N5cmlsbGljX0JFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19C RTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0NIRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Q3lyaWxsaWNfQ0hFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfQ0hFX2Rlc2NlbmRlciIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfQ0hFX2Rlc2NlbmRlcjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0N5cmlsbGljX0NIRV92ZXJ0c3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJp bGxpY19DSEVfdmVydHN0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0RFIildCisrCQlw dWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19ERTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0Ra SEUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0RaSEU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY19FIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19FOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ3lyaWxsaWNfRUYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0VG OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfRUwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5 cmlsbGljX0VMOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfRU0iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEN5cmlsbGljX0VNOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfRU4iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0VOOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfRU5f ZGVzY2VuZGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19FTl9kZXNjZW5kZXI7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19FUiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfRVI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19FUyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ3lyaWxsaWNfRVM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19HSEUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0dIRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0dI RV9iYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0dIRV9iYXI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9DeXJpbGxpY19IQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfSEE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19IQVJEU0lHTiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQ3lyaWxsaWNfSEFSRFNJR047CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19IQV9kZXNjZW5k ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0hBX2Rlc2NlbmRlcjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0N5cmlsbGljX0kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0k7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19JRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfSUU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19JTyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ3lyaWxsaWNfSU87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19JX21hY3JvbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfSV9tYWNyb247CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9D eXJpbGxpY19KRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfSkU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9DeXJpbGxpY19LQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfS0E7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19LQV9kZXNjZW5kZXIiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEN5cmlsbGljX0tBX2Rlc2NlbmRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX0tB X3ZlcnRzdHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX0tBX3ZlcnRzdHJv a2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19MSkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEN5cmlsbGljX0xKRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX05KRSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfTkpFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfTyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGlj X09fYmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19PX2JhcjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0N5cmlsbGljX1BFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19QRTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1NDSFdBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBD eXJpbGxpY19TQ0hXQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1NIQSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgQ3lyaWxsaWNfU0hBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfU0hDSEEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1NIQ0hBOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Q3lyaWxsaWNfU0hIQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfU0hIQTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0N5cmlsbGljX1NIT1JUSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfU0hPUlRJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfU09GVFNJR04iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1NPRlRTSUdOOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxs aWNfVEUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1RFOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQ3lyaWxsaWNfVFNFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19UU0U7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxp Y19VOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfVV9tYWNyb24iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEN5cmlsbGljX1VfbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfVV9zdHJh aWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfVV9zdHJhaWdodDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0N5cmlsbGljX1Vfc3RyYWlnaHRfYmFyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBDeXJpbGxpY19VX3N0cmFpZ2h0X2JhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1ZFIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19WRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX1lBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19ZQTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0N5cmlsbGljX1lFUlUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1lFUlU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19ZVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfWVU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19aRSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ3lyaWxsaWNfWkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19aSEUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1pIRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX1pI RV9kZXNjZW5kZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX1pIRV9kZXNjZW5k ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBD eXJpbGxpY19hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfYmUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEN5cmlsbGljX2JlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfY2hlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19jaGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19j aGVfZGVzY2VuZGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19jaGVfZGVzY2Vu ZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfY2hlX3ZlcnRzdHJva2UiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEN5cmlsbGljX2NoZV92ZXJ0c3Ryb2tlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3ly aWxsaWNfZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX2RlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ3lyaWxsaWNfZHpoZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfZHpo ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5 cmlsbGljX2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19lZiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ3lyaWxsaWNfZWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19lbCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfZWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19lbSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfZW07CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJp bGxpY19lbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfZW47CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9DeXJpbGxpY19lbl9kZXNjZW5kZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmls bGljX2VuX2Rlc2NlbmRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2VyIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDeXJpbGxpY19lcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2VzIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19lczsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX2doZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfZ2hlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ3lyaWxsaWNfZ2hlX2JhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNf Z2hlX2JhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2hhIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDeXJpbGxpY19oYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2hhX2Rlc2NlbmRlciIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfaGFfZGVzY2VuZGVyOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ3lyaWxsaWNfaGFyZHNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGlj X2hhcmRzaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfaSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgQ3lyaWxsaWNfaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2lfbWFjcm9uIildCisr CQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19pX21hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5 cmlsbGljX2llIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19pZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0N5cmlsbGljX2lvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19pbzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2plIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJp bGxpY19qZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2thIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBDeXJpbGxpY19rYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2thX2Rlc2NlbmRlciIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfa2FfZGVzY2VuZGVyOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ3lyaWxsaWNfa2FfdmVydHN0cm9rZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfa2FfdmVydHN0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX2xqZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfbGplOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNf bmplIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19uamU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY19vIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19vOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfQ3lyaWxsaWNfb19iYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGlj X29fYmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfcGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEN5cmlsbGljX3BlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfc2Nod2EiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3NjaHdhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNf c2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY19zaGE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY19zaGNoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfc2hjaGE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19zaGhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBD eXJpbGxpY19zaGhhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfc2hvcnRpIildCisrCQlwdWJs aWMgY29uc3QgdWludCBDeXJpbGxpY19zaG9ydGk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY19z b2Z0c2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfc29mdHNpZ247CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9DeXJpbGxpY190ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNf dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY190c2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEN5cmlsbGljX3RzZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3UiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEN5cmlsbGljX3U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9DeXJpbGxpY191X21hY3JvbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfdV9tYWNyb247CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9DeXJpbGxpY191X3N0cmFpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY191 X3N0cmFpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfdV9zdHJhaWdodF9iYXIiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3Vfc3RyYWlnaHRfYmFyOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfQ3lyaWxsaWNfdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGljX3ZlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfQ3lyaWxsaWNfeWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEN5cmlsbGlj X3lhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfQ3lyaWxsaWNfeWVydSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgQ3lyaWxsaWNfeWVydTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3l1IildCisrCQlwdWJs aWMgY29uc3QgdWludCBDeXJpbGxpY195dTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmlsbGljX3plIild CisrCQlwdWJsaWMgY29uc3QgdWludCBDeXJpbGxpY196ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0N5cmls bGljX3poZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3lyaWxsaWNfemhlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfQ3lyaWxsaWNfemhlX2Rlc2NlbmRlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgQ3ly aWxsaWNfemhlX2Rlc2NlbmRlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0QiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ET1MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IERP UzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0RhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRGFi b3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRGNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBE Y2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9EZWxldGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IERl bGV0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0Rpc3BsYXkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IERp c3BsYXk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Eb2N1bWVudHMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IERvY3VtZW50czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0RvbmdTaWduIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBEb25nU2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Rvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IERvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Ec3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBEc3Ryb2tlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0VORyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRU5HOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfRVRIIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFVEg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9FWkgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVaSDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VhYm92 ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWFib3ZlZG90OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf RWFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9F YmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEViZWxvd2RvdDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0VjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWNhcm9uOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfRWNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVjaXJjdW1mbGV4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfRWNpcmN1bWZsZXhhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWNp cmN1bWZsZXhhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0VjaXJjdW1mbGV4YmVsb3dkb3QiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEVjaXJjdW1mbGV4YmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9F Y2lyY3VtZmxleGdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFY2lyY3VtZmxleGdyYXZl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfRWNpcmN1bWZsZXhob29rIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBFY2lyY3VtZmxleGhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9FY2lyY3VtZmxleHRpbGRlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBFY2lyY3VtZmxleHRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRWN1 U2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWN1U2lnbjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Vk aWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVkaWFlcmVzaXM7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9FZ3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVncmF2ZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0Vob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFaG9vazsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0Vpc3VfU2hpZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEVpc3VfU2hpZnQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9FaXN1X3RvZ2dsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWlzdV90b2dnbGU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9FamVjdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRWplY3Q7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9FbWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFbWFjcm9uOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFbmQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Fb2dvbmVrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFb2dvbmVrOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfRXNjYXBlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFc2NhcGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9FdGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEV0aDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0V0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRXRpbGRlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf RXVyb1NpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEV1cm9TaWduOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfRXhjZWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEV4Y2VsOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf RXhlY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRXhlY3V0ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0V4cGxvcmVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBFeHBsb3JlcjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0YiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgRjE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMTAiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEYxMDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YxMSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgRjExOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjEyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBG MTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9GMTMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxMzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0YxNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjE0OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfRjE1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMTU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9G MTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYxNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YxNyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgRjE3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjE4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBGMTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMTkiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEYxOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBG MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0YyMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjIwOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfRjIxIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMjE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9GMjIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYyMjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0Yy MyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjIzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjI0IildCisr CQlwdWJsaWMgY29uc3QgdWludCBGMjQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMjUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEYyNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YyNiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgRjI2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjI3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBG Mjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9GMjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYyODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0YyOSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjI5OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfRjMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYzOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjMw IildCisrCQlwdWJsaWMgY29uc3QgdWludCBGMzA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMzEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEYzMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0YzMiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgRjMyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjMzIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBGMzM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GMzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEYz NDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0YzNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRjM1OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfRjQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEY0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfRjUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEY1OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjYiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEY2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjciKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRjkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEY5Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfRkZyYW5jU2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgRkZyYW5j U2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0ZhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg RmFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmFyc2lfMCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgRmFyc2lfMDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZhcnNpXzEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEZhcnNpXzE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYXJzaV8yIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBGYXJzaV8yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmFyc2lfMyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgRmFyc2lfMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZhcnNpXzQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEZhcnNpXzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYXJzaV81IildCisrCQlwdWJsaWMgY29u c3QgdWludCBGYXJzaV81OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmFyc2lfNiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgRmFyc2lfNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZhcnNpXzciKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEZhcnNpXzc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GYXJzaV84IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBGYXJzaV84OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmFyc2lfOSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgRmFyc2lfOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZhcnNpX3llaCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgRmFyc2lfeWVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmF2b3JpdGVzIildCisr CQlwdWJsaWMgY29uc3QgdWludCBGYXZvcml0ZXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9GaW5hbmNlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBGaW5hbmNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRmluZCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgRmluZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ZpcnN0X1ZpcnR1YWxf U2NyZWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBGaXJzdF9WaXJ0dWFsX1NjcmVlbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0ZvcndhcmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZvcndhcmQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9GcmFtZUJhY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEZyYW1lQmFj azsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0ZyYW1lRm9yd2FyZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg RnJhbWVGb3J3YXJkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfRyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg RzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2Fi b3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2FtZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2Ft ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dicmV2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2JyZXZl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfR2Nhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHY2Fyb247 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9HY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2NlZGls bGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9HY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg R2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9hbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgR2VvcmdpYW5fYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9iYW4iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2JhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFu X2NhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fY2FuOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfR2VvcmdpYW5fY2hhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fY2hhcjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2NoaW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdl b3JnaWFuX2NoaW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9jaWwiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdlb3JnaWFuX2NpbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2RvbiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fZG9uOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2Vvcmdp YW5fZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2VuOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfR2VvcmdpYW5fZmkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2ZpOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfR2VvcmdpYW5fZ2FuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lh bl9nYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9naGFuIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHZW9yZ2lhbl9naGFuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5faGFlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9oYWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9o YXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2hhcjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0dlb3JnaWFuX2hlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9oZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0dlb3JnaWFuX2hpZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5f aGllOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5faG9lIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBHZW9yZ2lhbl9ob2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9pbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgR2VvcmdpYW5faW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9qaGFuIild CisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9qaGFuOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2Vv cmdpYW5famlsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9qaWw7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9HZW9yZ2lhbl9rYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX2th bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX2toYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdlb3JnaWFuX2toYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9sYXMiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEdlb3JnaWFuX2xhczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX21hbiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fbWFuOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2Vv cmdpYW5fbmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9uYXI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9HZW9yZ2lhbl9vbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fb247 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9wYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdl b3JnaWFuX3BhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3BoYXIiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdlb3JnaWFuX3BoYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9xYXIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX3FhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3Jn aWFuX3JhZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fcmFlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfR2VvcmdpYW5fc2FuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl9zYW47 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl9zaGluIildCisrCQlwdWJsaWMgY29uc3QgdWludCBH ZW9yZ2lhbl9zaGluOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fdGFuIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBHZW9yZ2lhbl90YW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl90YXIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX3RhcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3Jn aWFuX3VuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHZW9yZ2lhbl91bjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0dlb3JnaWFuX3ZpbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR2VvcmdpYW5fdmluOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5fd2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3Jn aWFuX3dlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR2VvcmdpYW5feGFuIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHZW9yZ2lhbl94YW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HZW9yZ2lhbl96ZW4iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX3plbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dlb3JnaWFuX3po YXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdlb3JnaWFuX3poYXI7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9HbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR287CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19B TFBIQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfQUxQSEE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9HcmVla19BTFBIQWFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfQUxQSEFh Y2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19CRVRBIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBHcmVla19CRVRBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfQ0hJIildCisrCQlwdWJsaWMgY29u c3QgdWludCBHcmVla19DSEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19ERUxUQSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgR3JlZWtfREVMVEE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19FUFNJTE9O IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19FUFNJTE9OOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf R3JlZWtfRVBTSUxPTmFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfRVBTSUxP TmFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0VUQSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgR3JlZWtfRVRBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfRVRBYWNjZW50IildCisrCQlwdWJs aWMgY29uc3QgdWludCBHcmVla19FVEFhY2NlbnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19HQU1N QSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfR0FNTUE7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9H cmVla19JT1RBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19JT1RBOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfR3JlZWtfSU9UQWFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfSU9U QWFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0lPVEFkaWFlcmVzaXMiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEdyZWVrX0lPVEFkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19J T1RBZGllcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX0lPVEFkaWVyZXNpczsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0dyZWVrX0tBUFBBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVl a19LQVBQQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX0xBTUJEQSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgR3JlZWtfTEFNQkRBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfTEFNREEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEdyZWVrX0xBTURBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfTVUiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX01VOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfTlUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX05VOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtf T01FR0EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX09NRUdBOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfR3JlZWtfT01FR0FhY2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX09NRUdB YWNjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfT01JQ1JPTiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgR3JlZWtfT01JQ1JPTjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX09NSUNST05hY2NlbnQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX09NSUNST05hY2NlbnQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9HcmVla19QSEkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX1BISTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0dyZWVrX1BJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19QSTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0dyZWVrX1BTSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfUFNJ OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfUkhPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVl a19SSE87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19TSUdNQSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgR3JlZWtfU0lHTUE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19UQVUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEdyZWVrX1RBVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1RIRVRBIildCisrCQlw dWJsaWMgY29uc3QgdWludCBHcmVla19USEVUQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX1VQU0lM T04iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX1VQU0lMT047CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9HcmVla19VUFNJTE9OYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19VUFNJ TE9OYWNjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfVVBTSUxPTmRpZXJlc2lzIildCisrCQlw dWJsaWMgY29uc3QgdWludCBHcmVla19VUFNJTE9OZGllcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9H cmVla19YSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfWEk7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9HcmVla19aRVRBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19aRVRBOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR3JlZWtfYWNjZW50ZGllcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdy ZWVrX2FjY2VudGRpZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfYWxwaGEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEdyZWVrX2FscGhhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfYWxwaGFh Y2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2FscGhhYWNjZW50OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfR3JlZWtfYmV0YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfYmV0YTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0dyZWVrX2NoaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtf Y2hpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfZGVsdGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IEdyZWVrX2RlbHRhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfZXBzaWxvbiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgR3JlZWtfZXBzaWxvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2Vwc2lsb25h Y2NlbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2Vwc2lsb25hY2NlbnQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9HcmVla19ldGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2V0YTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0dyZWVrX2V0YWFjY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg R3JlZWtfZXRhYWNjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfZmluYWxzbWFsbHNpZ21hIild CisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19maW5hbHNtYWxsc2lnbWE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9HcmVla19nYW1tYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfZ2FtbWE7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9HcmVla19ob3JpemJhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3Jl ZWtfaG9yaXpiYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19pb3RhIildCisrCQlwdWJsaWMgY29u c3QgdWludCBHcmVla19pb3RhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfaW90YWFjY2VudCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfaW90YWFjY2VudDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dy ZWVrX2lvdGFhY2NlbnRkaWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfaW90 YWFjY2VudGRpZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfaW90YWRpZXJlc2lzIildCisr CQlwdWJsaWMgY29uc3QgdWludCBHcmVla19pb3RhZGllcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9H cmVla19rYXBwYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfa2FwcGE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9HcmVla19sYW1iZGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX2xhbWJk YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX2xhbWRhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBH cmVla19sYW1kYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX211IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBHcmVla19tdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX251IildCisrCQlwdWJsaWMgY29u c3QgdWludCBHcmVla19udTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX29tZWdhIildCisrCQlwdWJs aWMgY29uc3QgdWludCBHcmVla19vbWVnYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX29tZWdhYWNj ZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19vbWVnYWFjY2VudDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0dyZWVrX29taWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX29taWNy b247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19vbWljcm9uYWNjZW50IildCisrCQlwdWJsaWMgY29u c3QgdWludCBHcmVla19vbWljcm9uYWNjZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfcGhpIild CisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla19waGk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla19w aSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfcGk7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVl a19wc2kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3BzaTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0dyZWVrX3JobyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgR3JlZWtfcmhvOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfR3JlZWtfc2lnbWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3NpZ21hOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfR3JlZWtfc3dpdGNoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVl a19zd2l0Y2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVla190YXUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEdyZWVrX3RhdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3RoZXRhIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBHcmVla190aGV0YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3Vwc2lsb24iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVrX3Vwc2lsb247CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVl a191cHNpbG9uYWNjZW50IildCisrCQlwdWJsaWMgY29uc3QgdWludCBHcmVla191cHNpbG9uYWNj ZW50OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfR3JlZWtfdXBzaWxvbmFjY2VudGRpZXJlc2lzIildCisrCQlw dWJsaWMgY29uc3QgdWludCBHcmVla191cHNpbG9uYWNjZW50ZGllcmVzaXM7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9HcmVla191cHNpbG9uZGllcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEdyZWVr X3Vwc2lsb25kaWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3hpIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBHcmVla194aTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0dyZWVrX3pldGEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEdyZWVrX3pldGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9HcmVlbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgR3JlZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBIOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBIYW5ndWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfQSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSGFuZ3VsX0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfQUUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEhhbmd1bF9BRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9BcmFlQSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0FyYWVBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0Fy YWVBRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0FyYWVBRTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0hhbmd1bF9CYW5qYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0JhbmphOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0NpZXVjIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5n dWxfQ2lldWM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfQ29kZWlucHV0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBIYW5ndWxfQ29kZWlucHV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0Rpa2V1 ZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0Rpa2V1ZDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0hhbmd1bF9FIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfRTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0hhbmd1bF9FTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0VPOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfSGFuZ3VsX0VVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfRVU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9IYW5ndWxfRW5kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxf RW5kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0hhbmphIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBIYW5ndWxfSGFuamE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSGlldWgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEhhbmd1bF9IaWV1aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9JIildCisr CQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9JZXVu ZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0lldW5nOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX0pfQ2lldWMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX0NpZXVjOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfRGlrZXVkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBI YW5ndWxfSl9EaWtldWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9IaWV1aCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfSGlldWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9J ZXVuZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfSWV1bmc7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9IYW5ndWxfSl9KaWV1aiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfSmll dWo7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9LaGlldXEiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhhbmd1bF9KX0toaWV1cTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX0tpeWVvZyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfS2l5ZW9nOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFu Z3VsX0pfS2l5ZW9nU2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfS2l5ZW9n U2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX0trb2dqaURhbHJpbklldW5nIildCisrCQlw dWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9La29namlEYWxyaW5JZXVuZzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0hhbmd1bF9KX01pZXVtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9NaWV1 bTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX05pZXVuIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBIYW5ndWxfSl9OaWV1bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX05pZXVuSGlldWgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX05pZXVuSGlldWg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IYW5ndWxfSl9OaWV1bkppZXVqIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9O aWV1bkppZXVqOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfUGFuU2lvcyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSGFuZ3VsX0pfUGFuU2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1Bo aWV1ZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUGhpZXVmOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSGFuZ3VsX0pfUGlldWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1Bp ZXViOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfUGlldWJTaW9zIildCisrCQlwdWJsaWMgY29u c3QgdWludCBIYW5ndWxfSl9QaWV1YlNpb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9SaWV1 bCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUmlldWw7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IYW5ndWxfSl9SaWV1bEhpZXVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9S aWV1bEhpZXVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfUmlldWxLaXllb2ciKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1JpZXVsS2l5ZW9nOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFu Z3VsX0pfUmlldWxNaWV1bSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfUmlldWxN aWV1bTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1JpZXVsUGhpZXVmIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBIYW5ndWxfSl9SaWV1bFBoaWV1ZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9K X1JpZXVsUGlldWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1JpZXVsUGlldWI7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9SaWV1bFNpb3MiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhhbmd1bF9KX1JpZXVsU2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9KX1JpZXVsVGll dXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9KX1JpZXVsVGlldXQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IYW5ndWxfSl9TaW9zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9T aW9zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pfU3NhbmdLaXllb2ciKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEhhbmd1bF9KX1NzYW5nS2l5ZW9nOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0pf U3NhbmdTaW9zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSl9Tc2FuZ1Npb3M7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9UaWV1dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFu Z3VsX0pfVGlldXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfSl9ZZW9yaW5IaWV1aCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0pfWWVvcmluSGlldWg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9I YW5ndWxfSmFtbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0phbW87CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IYW5ndWxfSmVvbmphIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfSmVv bmphOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0ppZXVqIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBIYW5ndWxfSmlldWo7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfS2hpZXVxIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIYW5ndWxfS2hpZXVxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX0tpeWVv ZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX0tpeWVvZzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0hhbmd1bF9LaXllb2dTaW9zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfS2l5ZW9n U2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9La29namlEYWxyaW5JZXVuZyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX0trb2dqaURhbHJpbklldW5nOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX01pZXVtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfTWlldW07CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IYW5ndWxfTXVsdGlwbGVDYW5kaWRhdGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEhhbmd1bF9NdWx0aXBsZUNhbmRpZGF0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9OaWV1 biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX05pZXVuOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX05pZXVuSGlldWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9OaWV1bkhp ZXVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX05pZXVuSmlldWoiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IEhhbmd1bF9OaWV1bkppZXVqOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX08iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9POworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX09FIild CisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfT0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxf UGFuU2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1BhblNpb3M7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IYW5ndWxfUGhpZXVmIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfUGhp ZXVmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1BpZXViIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBIYW5ndWxfUGlldWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfUGlldWJTaW9zIildCisrCQlw dWJsaWMgY29uc3QgdWludCBIYW5ndWxfUGlldWJTaW9zOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3Vs X1Bvc3RIYW5qYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1Bvc3RIYW5qYTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX0hhbmd1bF9QcmVIYW5qYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFu Z3VsX1ByZUhhbmphOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1ByZXZpb3VzQ2FuZGlkYXRlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfUHJldmlvdXNDYW5kaWRhdGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IYW5ndWxfUmlldWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9SaWV1 bDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9SaWV1bEhpZXVoIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBIYW5ndWxfUmlldWxIaWV1aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9SaWV1bEtpeWVv ZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVsS2l5ZW9nOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSGFuZ3VsX1JpZXVsTWlldW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9S aWV1bE1pZXVtOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1JpZXVsUGhpZXVmIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIYW5ndWxfUmlldWxQaGlldWY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxf UmlldWxQaWV1YiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1JpZXVsUGlldWI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9IYW5ndWxfUmlldWxTaW9zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBI YW5ndWxfUmlldWxTaW9zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1JpZXVsVGlldXQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9SaWV1bFRpZXV0OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFu Z3VsX1JpZXVsWWVvcmluSGlldWgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9SaWV1 bFllb3JpbkhpZXVoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1JvbWFqYSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgSGFuZ3VsX1JvbWFqYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9TaW5nbGVD YW5kaWRhdGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9TaW5nbGVDYW5kaWRhdGU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfU2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFu Z3VsX1Npb3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfU3BlY2lhbCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSGFuZ3VsX1NwZWNpYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfU3NhbmdEaWtl dWQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9Tc2FuZ0Rpa2V1ZDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0hhbmd1bF9Tc2FuZ0ppZXVqIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxf U3NhbmdKaWV1ajsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9Tc2FuZ0tpeWVvZyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX1NzYW5nS2l5ZW9nOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3Vs X1NzYW5nUGlldWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9Tc2FuZ1BpZXViOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1NzYW5nU2lvcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SGFuZ3VsX1NzYW5nU2lvczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9TdGFydCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSGFuZ3VsX1N0YXJ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1N1bmt5 ZW9uZ2V1bU1pZXVtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfU3Vua3llb25nZXVt TWlldW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfU3Vua3llb25nZXVtUGhpZXVmIildCisrCQlw dWJsaWMgY29uc3QgdWludCBIYW5ndWxfU3Vua3llb25nZXVtUGhpZXVmOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSGFuZ3VsX1N1bmt5ZW9uZ2V1bVBpZXViIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5n dWxfU3Vua3llb25nZXVtUGlldWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfVGlldXQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9UaWV1dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9V IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hhbmd1 bF9XQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1dBOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SGFuZ3VsX1dBRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1dBRTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0hhbmd1bF9XRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1dFOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfSGFuZ3VsX1dFTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1dF TzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0hhbmd1bF9XSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFu Z3VsX1dJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1lBIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBIYW5ndWxfWUE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfWUFFIildCisrCQlwdWJsaWMgY29u c3QgdWludCBIYW5ndWxfWUFFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1lFIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIYW5ndWxfWUU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfWUVPIildCisr CQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfWUVPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFuZ3VsX1lJ IildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxfWUk7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5n dWxfWU8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhhbmd1bF9ZTzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0hhbmd1bF9ZVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGFuZ3VsX1lVOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSGFuZ3VsX1llb3JpbkhpZXVoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIYW5ndWxf WWVvcmluSGlldWg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IYW5ndWxfc3dpdGNoIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBIYW5ndWxfc3dpdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSGFua2FrdSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSGFua2FrdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hjaXJjdW1mbGV4Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBIY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hlYnJl d19zd2l0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhlYnJld19zd2l0Y2g7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9IZWxwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIZWxwOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSGVua2FuIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIZW5rYW47CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9IZW5rYW5fTW9kZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSGVua2FuX01vZGU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9IaWJlcm5hdGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEhpYmVybmF0ZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0hpcmFnYW5hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBIaXJhZ2Fu YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0hpcmFnYW5hX0thdGFrYW5hIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBIaXJhZ2FuYV9LYXRha2FuYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0hpc3RvcnkiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEhpc3Rvcnk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Ib21lIildCisrCQlwdWJs aWMgY29uc3QgdWludCBIb21lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSG9tZVBhZ2UiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEhvbWVQYWdlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSG90TGlua3MiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEhvdExpbmtzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSHN0cm9rZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgSHN0cm9rZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0h5cGVyX0wiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEh5cGVyX0w7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9IeXBlcl9SIildCisr CQlwdWJsaWMgY29uc3QgdWludCBIeXBlcl9SOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19DZW50ZXJfT2JqZWN0IildCisr CQlwdWJsaWMgY29uc3QgdWludCBJU09fQ2VudGVyX09iamVjdDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lT T19Db250aW51b3VzX1VuZGVybGluZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0NvbnRp bnVvdXNfVW5kZXJsaW5lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0Rpc2NvbnRpbnVvdXNfVW5kZXJs aW5lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fRGlzY29udGludW91c19VbmRlcmxpbmU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9JU09fRW1waGFzaXplIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJ U09fRW1waGFzaXplOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0VudGVyIildCisrCQlwdWJsaWMgY29u c3QgdWludCBJU09fRW50ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fRmFzdF9DdXJzb3JfRG93biIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0Zhc3RfQ3Vyc29yX0Rvd247CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9JU09fRmFzdF9DdXJzb3JfTGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0Zh c3RfQ3Vyc29yX0xlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fRmFzdF9DdXJzb3JfUmlnaHQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IElTT19GYXN0X0N1cnNvcl9SaWdodDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0lTT19GYXN0X0N1cnNvcl9VcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0Zhc3Rf Q3Vyc29yX1VwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0ZpcnN0X0dyb3VwIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBJU09fRmlyc3RfR3JvdXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fRmlyc3RfR3Jv dXBfTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0ZpcnN0X0dyb3VwX0xvY2s7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9JU09fR3JvdXBfTGF0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElT T19Hcm91cF9MYXRjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19Hcm91cF9Mb2NrIildCisrCQlwdWJs aWMgY29uc3QgdWludCBJU09fR3JvdXBfTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19Hcm91cF9T aGlmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0dyb3VwX1NoaWZ0OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfSVNPX0xhc3RfR3JvdXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19MYXN0X0dy b3VwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0xhc3RfR3JvdXBfTG9jayIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgSVNPX0xhc3RfR3JvdXBfTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19MZWZ0X1Rh YiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0xlZnRfVGFiOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf SVNPX0xldmVsMl9MYXRjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX0xldmVsMl9MYXRj aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0lTT19MZXZlbDNfTGF0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IElTT19MZXZlbDNfTGF0Y2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTGV2ZWwzX0xvY2siKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IElTT19MZXZlbDNfTG9jazsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lT T19MZXZlbDNfU2hpZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19MZXZlbDNfU2hpZnQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9JU09fTGV2ZWw1X0xhdGNoIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBJU09fTGV2ZWw1X0xhdGNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX0xldmVsNV9Mb2NrIildCisr CQlwdWJsaWMgY29uc3QgdWludCBJU09fTGV2ZWw1X0xvY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09f TGV2ZWw1X1NoaWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fTGV2ZWw1X1NoaWZ0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSVNPX0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19Mb2Nr OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSVNPX01vdmVfTGluZV9Eb3duIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBJU09fTW92ZV9MaW5lX0Rvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fTW92ZV9MaW5lX1Vw IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fTW92ZV9MaW5lX1VwOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfSVNPX05leHRfR3JvdXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19OZXh0X0dyb3Vw OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSVNPX05leHRfR3JvdXBfTG9jayIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSVNPX05leHRfR3JvdXBfTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19QYXJ0aWFsX0xp bmVfRG93biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX1BhcnRpYWxfTGluZV9Eb3duOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfSVNPX1BhcnRpYWxfTGluZV9VcCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSVNPX1BhcnRpYWxfTGluZV9VcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lTT19QYXJ0aWFsX1NwYWNl X0xlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19QYXJ0aWFsX1NwYWNlX0xlZnQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9JU09fUGFydGlhbF9TcGFjZV9SaWdodCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgSVNPX1BhcnRpYWxfU3BhY2VfUmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fUHJldl9H cm91cCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX1ByZXZfR3JvdXA7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9JU09fUHJldl9Hcm91cF9Mb2NrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fUHJl dl9Hcm91cF9Mb2NrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfSVNPX1JlbGVhc2VfQm90aF9NYXJnaW5zIild CisrCQlwdWJsaWMgY29uc3QgdWludCBJU09fUmVsZWFzZV9Cb3RoX01hcmdpbnM7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9JU09fUmVsZWFzZV9NYXJnaW5fTGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg SVNPX1JlbGVhc2VfTWFyZ2luX0xlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fUmVsZWFzZV9NYXJn aW5fUmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElTT19SZWxlYXNlX01hcmdpbl9SaWdo dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0lTT19TZXRfTWFyZ2luX0xlZnQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IElTT19TZXRfTWFyZ2luX0xlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JU09fU2V0X01hcmdp bl9SaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSVNPX1NldF9NYXJnaW5fUmlnaHQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9JYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IElhYm92ZWRv dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0lhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgSWFjdXRl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfSWJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBJYmVs b3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JYnJldmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEli cmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0ljaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBJY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IElkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JZ3JhdmUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IElncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lob29rIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBJaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0ltYWNyb24iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEltYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JbnNlcnQiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEluc2VydDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0lvZ29uZWsiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IElvZ29uZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9JdGlsZGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IEl0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0oiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEo7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9KY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgSmNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBLOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfMCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfMDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0tQXzEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQXzE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9LUF8yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF8yOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfS1BfMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfMzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0tQXzQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQXzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF81 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF81OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfNiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgS1BfNjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQXzciKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IEtQXzc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF84IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBLUF84OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfOSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgS1BfOTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0FkZCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgS1BfQWRkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfQmVnaW4iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IEtQX0JlZ2luOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfRGVjaW1hbCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgS1BfRGVjaW1hbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX0RlbGV0ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgS1BfRGVsZXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfRGl2aWRlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBLUF9EaXZpZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9Eb3duIild CisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9Eb3duOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfRW5kIild CisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9FbmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9FbnRlciIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfRW50ZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9FcXVh bCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfRXF1YWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9G MSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfRjE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9GMiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfRjI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9GMyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgS1BfRjM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9GNCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgS1BfRjQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9Ib21lIildCisrCQlw dWJsaWMgY29uc3QgdWludCBLUF9Ib21lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfSW5zZXJ0IildCisr CQlwdWJsaWMgY29uc3QgdWludCBLUF9JbnNlcnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9MZWZ0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9MZWZ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfTXVsdGlw bHkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtQX011bHRpcGx5OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf S1BfTmV4dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfTmV4dDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0tQX1BhZ2VfRG93biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfUGFnZV9Eb3duOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfS1BfUGFnZV9VcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS1BfUGFnZV9V cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0tQX1ByaW9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9Q cmlvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX1JpZ2h0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBL UF9SaWdodDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tQX1NlcGFyYXRvciIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgS1BfU2VwYXJhdG9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfU3BhY2UiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IEtQX1NwYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfU3VidHJhY3QiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IEtQX1N1YnRyYWN0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS1BfVGFiIild CisrCQlwdWJsaWMgY29uc3QgdWludCBLUF9UYWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LUF9VcCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgS1BfVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LYW5hX0xvY2siKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IEthbmFfTG9jazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0thbmFfU2hp ZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEthbmFfU2hpZnQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9L YW5qaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS2Fuamk7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9LYW5q aV9CYW5nb3UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEthbmppX0JhbmdvdTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0thdGFrYW5hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLYXRha2FuYTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0tiZEJyaWdodG5lc3NEb3duIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLYmRC cmlnaHRuZXNzRG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0tiZEJyaWdodG5lc3NVcCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgS2JkQnJpZ2h0bmVzc1VwOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfS2JkTGlnaHRP bk9mZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgS2JkTGlnaHRPbk9mZjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0tjZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBLY2VkaWxsYTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0tvcmVhbl9Xb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEtvcmVhbl9Xb247Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9MIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfTDEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IEwxOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTDEwIild CisrCQlwdWJsaWMgY29uc3QgdWludCBMMTA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MMiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgTDI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MMyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgTDM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTDQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9MNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTDU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9MNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTDY7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9M NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTDc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MOCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgTDg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MOSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgTDk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IExhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xhc3RfVmlydHVhbF9TY3JlZW4iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IExhc3RfVmlydHVhbF9TY3JlZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9MYXVu Y2gwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2gwOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTGF1 bmNoMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoMTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xh dW5jaDIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaDI7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9M YXVuY2gzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2gzOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf TGF1bmNoNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoNDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X0xhdW5jaDUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaDU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9MYXVuY2g2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2g2OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfTGF1bmNoNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoNzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX0xhdW5jaDgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaDg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9MYXVuY2g5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2g5OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfTGF1bmNoQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoQTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX0xhdW5jaEIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaEI7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9MYXVuY2hDIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2hDOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfTGF1bmNoRCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTGF1bmNoRDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX0xhdW5jaEUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExhdW5jaEU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9MYXVuY2hGIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYXVuY2hGOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfTGJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBMYmVsb3dkb3Q7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9MY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExjYXJvbjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX0xjZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMY2VkaWxs YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0xlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExlZnQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9MaWdodEJ1bGIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IExpZ2h0QnVs YjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX0xpbmVmZWVkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBMaW5l ZmVlZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX0xpcmFTaWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBM aXJhU2lnbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xvZ0dyYWJJbmZvIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBMb2dHcmFiSW5mbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xvZ09mZiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgTG9nT2ZmOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTG9nV2luZG93VHJlZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgTG9nV2luZG93VHJlZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX0xzdHJva2UiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IExzdHJva2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NIildCisrCQlw dWJsaWMgY29uc3QgdWludCBNOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFib3ZlZG90IildCisrCQlwdWJs aWMgY29uc3QgdWludCBNYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NYWNlZG9uaWFfRFNFIild CisrCQlwdWJsaWMgY29uc3QgdWludCBNYWNlZG9uaWFfRFNFOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFj ZWRvbmlhX0dKRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFjZWRvbmlhX0dKRTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX01hY2Vkb25pYV9LSkUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1hY2Vkb25p YV9LSkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9NYWNlZG9uaWFfZHNlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBNYWNlZG9uaWFfZHNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTWFjZWRvbmlhX2dqZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgTWFjZWRvbmlhX2dqZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01hY2Vkb25p YV9ramUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1hY2Vkb25pYV9ramU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9NYWVfS29obyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWFlX0tvaG87CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9NYWlsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNYWlsOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfTWFpbEZvcndhcmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1haWxGb3J3YXJkOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfTWFya2V0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBNYXJrZXQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9NYXNzeW8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1hc3N5bzsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX01lZXRpbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1lZXRpbmc7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9NZW1vIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNZW1vOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfTWVudSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWVudTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X01lbnVLQiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWVudUtCOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf TWVudVBCIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNZW51UEI7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9N ZXNzZW5nZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1lc3NlbmdlcjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX01ldGFfTCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWV0YV9MOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfTWV0YV9SIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNZXRhX1I7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9NaWxsU2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTWlsbFNpZ247CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Nb2RlTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTW9kZUxvY2s7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Nb2RlX3N3aXRjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTW9kZV9zd2l0Y2g7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Nb25CcmlnaHRuZXNzRG93biIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgTW9uQnJpZ2h0bmVzc0Rvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Nb25CcmlnaHRuZXNzVXAiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IE1vbkJyaWdodG5lc3NVcDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX01v dXNlS2V5c19BY2NlbF9FbmFibGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE1vdXNlS2V5c19B Y2NlbF9FbmFibGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Nb3VzZUtleXNfRW5hYmxlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBNb3VzZUtleXNfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTXVoZW5rYW4i KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE11aGVua2FuOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTXVsdGlf a2V5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBNdWx0aV9rZXk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9N dWx0aXBsZUNhbmRpZGF0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTXVsdGlwbGVDYW5kaWRh dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9NdXNpYyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTXVzaWM7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9NeUNvbXB1dGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBNeUNv bXB1dGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTXlTaXRlcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg TXlTaXRlczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX04iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE47Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9OYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE5hY3V0ZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX05haXJhU2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTmFpcmFTaWdu OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfTmNhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBOY2Fyb247 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9OY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTmNlZGls bGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9OZXciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE5ldzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX05ld1NoZXFlbFNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE5ld1No ZXFlbFNpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OZXdzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBO ZXdzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfTmV4dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgTmV4dDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX05leHRfVk1vZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE5leHRf Vk1vZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OZXh0X1ZpcnR1YWxfU2NyZWVuIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBOZXh0X1ZpcnR1YWxfU2NyZWVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfTnRpbGRlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBOdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9OdW1fTG9jayIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgTnVtX0xvY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PIildCisr CQlwdWJsaWMgY29uc3QgdWludCBPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT0UiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IE9FOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2FjdXRlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBPYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PYmFycmVkIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBPYmFycmVkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2JlbG93ZG90IildCisrCQlwdWJsaWMgY29u c3QgdWludCBPYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PY2Fyb24iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IE9jYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09jaXJjdW1mbGV4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBPY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09jaXJjdW1mbGV4YWN1 dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9jaXJjdW1mbGV4YWN1dGU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9PY2lyY3VtZmxleGJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBPY2lyY3Vt ZmxleGJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT2NpcmN1bWZsZXhncmF2ZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgT2NpcmN1bWZsZXhncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09jaXJjdW1m bGV4aG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2NpcmN1bWZsZXhob29rOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfT2NpcmN1bWZsZXh0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2NpcmN1 bWZsZXh0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09kaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IE9kaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PZG91YmxlYWN1dGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IE9kb3VibGVhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09mZmljZUhvbWUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9mZmljZUhvbWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PZ3Jh dmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9ncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09ob29r IildCisrCQlwdWJsaWMgY29uc3QgdWludCBPaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09ob3JuIild CisrCQlwdWJsaWMgY29uc3QgdWludCBPaG9ybjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09ob3JuYWN1dGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IE9ob3JuYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PaG9y bmJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBPaG9ybmJlbG93ZG90OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfT2hvcm5ncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2hvcm5ncmF2ZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX09ob3JuaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgT2hvcm5o b29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfT2hvcm50aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg T2hvcm50aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09tYWNyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IE9tYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Pb2JsaXF1ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgT29ibGlxdWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PcGVuIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBPcGVuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT3BlblVSTCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgT3BlblVSTDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX09wdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgT3B0aW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT3NsYXNoIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBPc2xhc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9PdGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IE90aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX092ZXJsYXkxX0VuYWJsZSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgT3ZlcmxheTFfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfT3ZlcmxheTJfRW5hYmxl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBPdmVybGF5Ml9FbmFibGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9QIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUGFib3ZlZG90 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QYWdl X0Rvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBhZ2VfRG93bjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1BhZ2VfVXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBhZ2VfVXA7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9QYXN0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUGFzdGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Q YXVzZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUGF1c2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QZXNl dGFTaWduIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQZXNldGFTaWduOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfUGhvbmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBob25lOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf UGljdHVyZXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBpY3R1cmVzOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfUG9pbnRlcl9BY2NlbGVyYXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0Fj Y2VsZXJhdGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0J1dHRvbjEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFBvaW50ZXJfQnV0dG9uMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfQnV0dG9u MiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9CdXR0b24yOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfUG9pbnRlcl9CdXR0b24zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0J1dHRv bjM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0J1dHRvbjQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFBvaW50ZXJfQnV0dG9uNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfQnV0dG9uNSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9CdXR0b241OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9p bnRlcl9CdXR0b25fRGZsdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9CdXR0b25f RGZsdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRGJsQ2xpY2sxIildCisrCQlwdWJsaWMgY29u c3QgdWludCBQb2ludGVyX0RibENsaWNrMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRGJsQ2xp Y2syIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0RibENsaWNrMjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1BvaW50ZXJfRGJsQ2xpY2szIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVy X0RibENsaWNrMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRGJsQ2xpY2s0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBQb2ludGVyX0RibENsaWNrNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJf RGJsQ2xpY2s1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0RibENsaWNrNTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1BvaW50ZXJfRGJsQ2xpY2tfRGZsdCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgUG9pbnRlcl9EYmxDbGlja19EZmx0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EZmx0QnRu TmV4dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EZmx0QnRuTmV4dDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1BvaW50ZXJfRGZsdEJ0blByZXYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBv aW50ZXJfRGZsdEJ0blByZXY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0Rvd24iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRG93 bkxlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRG93bkxlZnQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9Qb2ludGVyX0Rvd25SaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRl cl9Eb3duUmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX0RyYWcxIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBQb2ludGVyX0RyYWcxOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EcmFnMiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9EcmFnMjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Bv aW50ZXJfRHJhZzMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFBvaW50ZXJfRHJhZzM7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9Qb2ludGVyX0RyYWc0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVy X0RyYWc0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9EcmFnNSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgUG9pbnRlcl9EcmFnNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1BvaW50ZXJfRHJhZ19EZmx0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX0RyYWdfRGZsdDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1BvaW50ZXJfRW5hYmxlS2V5cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9FbmFi bGVLZXlzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9MZWZ0IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBQb2ludGVyX0xlZnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb2ludGVyX1JpZ2h0IildCisrCQlw dWJsaWMgY29uc3QgdWludCBQb2ludGVyX1JpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG9pbnRlcl9V cCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9pbnRlcl9VcDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Bv aW50ZXJfVXBMZWZ0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBQb2ludGVyX1VwTGVmdDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1BvaW50ZXJfVXBSaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUG9p bnRlcl9VcFJpZ2h0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUG93ZXJEb3duIildCisrCQlwdWJsaWMgY29u c3QgdWludCBQb3dlckRvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Qb3dlck9mZiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgUG93ZXJPZmY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9QcmV2X1ZNb2RlIildCisrCQlw dWJsaWMgY29uc3QgdWludCBQcmV2X1ZNb2RlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUHJldl9WaXJ0dWFs X1NjcmVlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUHJldl9WaXJ0dWFsX1NjcmVlbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1ByZXZpb3VzQ2FuZGlkYXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBQ cmV2aW91c0NhbmRpZGF0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1ByaW50IildCisrCQlwdWJsaWMgY29u c3QgdWludCBQcmludDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1ByaW9yIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBQcmlvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9SIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfUjEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFIxOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUjEw IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSMTA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SMTEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFIxMTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1IxMiIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgUjEyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUjEzIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBSMTM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SMTQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFIx NDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1IxNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUjE1OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfUjIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFIyOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfUjMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFIzOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUjQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFI0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUjUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFI1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUjYiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFI2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFI3Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfUjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFI4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfUjkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFI5OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUmFj dXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SY2Fy b24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JjZWRp bGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Jl ZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUmVkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUmVkbyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgUmVkbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JlZnJlc2giKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFJlZnJlc2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9SZWxvYWQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFJlbG9hZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JlcGVhdEtleXNfRW5h YmxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSZXBlYXRLZXlzX0VuYWJsZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1JlcGx5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBSZXBseTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1JldHVybiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUmV0dXJuOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfUmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFJpZ2h0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Um9ja2VyRG93biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUm9ja2VyRG93bjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1JvY2tlckVudGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSb2NrZXJFbnRlcjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1JvY2tlclVwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBSb2NrZXJV cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1JvbWFqaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgUm9tYWpp OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfUm90YXRlV2luZG93cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Um90YXRlV2luZG93czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1JvdGF0aW9uS0IiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFJvdGF0aW9uS0I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Sb3RhdGlvblBCIildCisrCQlw dWJsaWMgY29uc3QgdWludCBSb3RhdGlvblBCOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfUnVwZWVTaWduIild CisrCQlwdWJsaWMgY29uc3QgdWludCBSdXBlZVNpZ247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TIildCisr CQlwdWJsaWMgY29uc3QgdWludCBTOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU0NIV0EiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFNDSFdBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2Fib3ZlZG90IildCisrCQlwdWJs aWMgY29uc3QgdWludCBTYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TYWN1dGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFNhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NhdmUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFNhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TY2Fyb24iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFNjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NjZWRpbGxhIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NjaXJjdW1mbGV4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBTY2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NjcmVlblNhdmVy IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTY3JlZW5TYXZlcjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Nj cm9sbENsaWNrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTY3JvbGxDbGljazsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1Njcm9sbERvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNjcm9sbERvd247Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TY3JvbGxVcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2Nyb2xsVXA7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9TY3JvbGxfTG9jayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2Ny b2xsX0xvY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZWFyY2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNlYXJjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlbGVjdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U2VsZWN0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VsZWN0QnV0dG9uIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBTZWxlY3RCdXR0b247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TZW5kIildCisrCQlwdWJsaWMgY29u c3QgdWludCBTZW5kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9ESkUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFNlcmJpYW5fREpFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9EWkUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFNlcmJpYW5fRFpFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9K RSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VyYmlhbl9KRTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Nl cmJpYW5fTEpFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX0xKRTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1NlcmJpYW5fTkpFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX05KRTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1NlcmJpYW5fVFNIRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2Vy Ymlhbl9UU0hFOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9kamUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFNlcmJpYW5fZGplOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9kemUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFNlcmJpYW5fZHplOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2VyYmlhbl9qZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VyYmlhbl9qZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NlcmJp YW5fbGplIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX2xqZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NlcmJpYW5fbmplIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTZXJiaWFuX25qZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1NlcmJpYW5fdHNoZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2VyYmlh bl90c2hlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2hpZnRfTCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U2hpZnRfTDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NoaWZ0X0xvY2siKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNoaWZ0X0xvY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaGlmdF9SIildCisrCQlwdWJsaWMgY29u c3QgdWludCBTaGlmdF9SOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2hvcCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgU2hvcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmdsZUNhbmRpZGF0ZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgU2luZ2xlQ2FuZGlkYXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9hIildCisr CQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2FhIildCisr CQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2FhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9hYTIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYWEyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9hZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9hZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfYWUy IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2FlMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhf YWVlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2FlZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Np bmhfYWVlMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9hZWUyOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU2luaF9haSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9haTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NpbmhfYWkyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2FpMjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1NpbmhfYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYWw7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TaW5oX2F1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2F1OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU2luaF9hdTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfYXUyOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfU2luaF9iYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9iYTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1NpbmhfYmhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2JoYTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1NpbmhfY2EiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfY2E7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2NoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9j aGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2RkYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2lu aF9kZGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2RkaGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNpbmhfZGRoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfZGhhIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBTaW5oX2RoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfZGhoYSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgU2luaF9kaGhhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9lIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTaW5oX2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2UyIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTaW5oX2UyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9lZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgU2luaF9lZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfZWUyIildCisrCQlwdWJs aWMgY29uc3QgdWludCBTaW5oX2VlMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfZmEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFNpbmhfZmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2dhIildCisrCQlw dWJsaWMgY29uc3QgdWludCBTaW5oX2dhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9naGEiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFNpbmhfZ2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9oMiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9oMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfaGEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2kiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfaTIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfaTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2lpIild CisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2lpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9paTIi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfaWkyOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9q YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9qYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhf amhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2poYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Np bmhfam55YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9qbnlhOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU2luaF9rYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9rYTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1Npbmhfa2hhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX2toYTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1Npbmhfa3VuZGRhbGl5YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9rdW5k ZGFsaXlhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9sYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U2luaF9sYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBTaW5oX2xsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbHUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNpbmhfbHU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2x1MiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgU2luaF9sdTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2x1dSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgU2luaF9sdXU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX2x1dTIiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFNpbmhfbHV1MjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfbWEiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFNpbmhfbWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX21iYSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgU2luaF9tYmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX25hIildCisr CQlwdWJsaWMgY29uc3QgdWludCBTaW5oX25hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9uZGRhIild CisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX25kZGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX25k aGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbmRoYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Np bmhfbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbmc7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9T aW5oX25nMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9uZzI7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9TaW5oX25nYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9uZ2E7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9TaW5oX25qYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9uamE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TaW5oX25uYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9ubmE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9TaW5oX255YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9ueWE7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TaW5oX28iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1NpbmhfbzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfbzI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9TaW5oX29vIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX29vOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfU2luaF9vbzIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfb28y OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9wYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF9w YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1NpbmhfcGhhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5o X3BoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1NpbmhfcmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNp bmhfcmE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3JpIildCisrCQlwdWJsaWMgY29uc3QgdWludCBT aW5oX3JpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9yaWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFNpbmhfcmlpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9ydTIiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFNpbmhfcnUyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9ydXUyIildCisrCQlwdWJsaWMgY29u c3QgdWludCBTaW5oX3J1dTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3NhIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBTaW5oX3NhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9zaGEiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFNpbmhfc2hhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU2luaF9zc2hhIildCisrCQlw dWJsaWMgY29uc3QgdWludCBTaW5oX3NzaGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3RoYSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF90aGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TaW5oX3RoaGEi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfdGhoYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Npbmhf dHRhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3R0YTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Np bmhfdHRoYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF90dGhhOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU2luaF91IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3U7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9TaW5oX3UyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3UyOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfU2luaF91dSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU2luaF91dTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1NpbmhfdXUyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3V1MjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1NpbmhfdmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNpbmhfdmE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9TaW5oX3lhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTaW5oX3lhOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfU2xlZXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFNsZWVwOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfU2xvd0tleXNfRW5hYmxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBTbG93S2V5c19F bmFibGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TcGVsbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3Bl bGw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9TcGxpdFNjcmVlbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg U3BsaXRTY3JlZW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TdGFuZGJ5IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBTdGFuZGJ5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3RhcnQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFN0YXJ0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3RpY2t5S2V5c19FbmFibGUiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFN0aWNreUtleXNfRW5hYmxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3RvcCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU3RvcDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N1YnRpdGxlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBTdWJ0aXRsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N1cGVyX0wiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFN1cGVyX0w7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TdXBlcl9SIild CisrCQlwdWJsaWMgY29uc3QgdWludCBTdXBlcl9SOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3VwcG9ydCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3VwcG9ydDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1N1c3BlbmQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN1c3BlbmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0Y2hf VlRfMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3dpdGNoX1ZUXzE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Td2l0Y2hfVlRfMTAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFN3aXRjaF9WVF8xMDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1N3aXRjaF9WVF8xMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3dpdGNo X1ZUXzExOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfU3dpdGNoX1ZUXzEyIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBTd2l0Y2hfVlRfMTI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0Y2hfVlRfMiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgU3dpdGNoX1ZUXzI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0Y2hfVlRfMyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3dpdGNoX1ZUXzM7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0 Y2hfVlRfNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3dpdGNoX1ZUXzQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Td2l0Y2hfVlRfNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3dpdGNoX1ZUXzU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Td2l0Y2hfVlRfNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgU3dpdGNo X1ZUXzY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0Y2hfVlRfNyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgU3dpdGNoX1ZUXzc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0Y2hfVlRfOCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgU3dpdGNoX1ZUXzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Td2l0Y2hfVlRfOSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgU3dpdGNoX1ZUXzk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9TeXNfUmVx IildCisrCQlwdWJsaWMgY29uc3QgdWludCBTeXNfUmVxOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgVDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RIT1JOIildCisrCQlwdWJs aWMgY29uc3QgdWludCBUSE9STjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RhYiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgVGFiOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGFib3ZlZG90IildCisrCQlwdWJsaWMgY29u c3QgdWludCBUYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UYXNrUGFuZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVGFza1BhbmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UY2Fyb24iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFRjYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RjZWRpbGxhIildCisrCQlwdWJs aWMgY29uc3QgdWludCBUY2VkaWxsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Rlcm1pbmFsIildCisrCQlw dWJsaWMgY29uc3QgdWludCBUZXJtaW5hbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Rlcm1pbmF0ZV9TZXJ2 ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRlcm1pbmF0ZV9TZXJ2ZXI7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9UaGFpX2JhaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfYmFodDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1RoYWlfYm9iYWltYWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfYm9i YWltYWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2Nob2NoYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFRoYWlfY2hvY2hhbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfY2hvY2hhbmciKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFRoYWlfY2hvY2hhbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2Nob2No aW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2Nob2NoaW5nOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVGhhaV9jaG9jaG9lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2Nob2Nob2U7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9UaGFpX2RvY2hhZGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlf ZG9jaGFkYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfZG9kZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFRoYWlfZG9kZWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2ZvZmEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFRoYWlfZm9mYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfZm9mYW4iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFRoYWlfZm9mYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2hvaGlwIild CisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX2hvaGlwOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9o b25va2h1ayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9ob25va2h1azsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1RoYWlfa2hva2hhaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9raG9raGFp OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9raG9raG9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBU aGFpX2tob2tob247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2tob2todWF0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBUaGFpX2tob2todWF0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9raG9raHdhaSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9raG9raHdhaTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Ro YWlfa2hvcmFraGFuZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9raG9yYWtoYW5nOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVGhhaV9rb2thaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9r b2thaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbGFra2hhbmd5YW8iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFRoYWlfbGFra2hhbmd5YW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xla2NoZXQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbGVrY2hldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlf bGVraGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbGVraGE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9UaGFpX2xla2hvayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sZWtob2s7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9UaGFpX2xla2thbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sZWtr YW87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xla251bmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFRoYWlfbGVrbnVuZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbGVrcGFldCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVGhhaV9sZWtwYWV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sZWtzYW0iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbGVrc2FtOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9s ZWtzaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sZWtzaTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1RoYWlfbGVrc29uZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9sZWtzb25nOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfVGhhaV9sZWtzdW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbGVr c3VuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9sb2NodWxhIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBUaGFpX2xvY2h1bGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2xvbGluZyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVGhhaV9sb2xpbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX2x1IildCisrCQlw dWJsaWMgY29uc3QgdWludCBUaGFpX2x1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tYWljaGF0dGF3 YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9tYWljaGF0dGF3YTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1RoYWlfbWFpZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbWFpZWs7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9UaGFpX21haWhhbmFrYXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlf bWFpaGFuYWthdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbWFpaGFuYWthdF9tYWl0aG8iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFRoYWlfbWFpaGFuYWthdF9tYWl0aG87CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9UaGFpX21haXRhaWtodSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9tYWl0YWlraHU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9UaGFpX21haXRobyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhh aV9tYWl0aG87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX21haXRyaSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgVGhhaV9tYWl0cmk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX21haXlhbW9rIildCisrCQlw dWJsaWMgY29uc3QgdWludCBUaGFpX21haXlhbW9rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9tb21h IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX21vbWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFp X25nb25ndSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9uZ29uZ3U7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9UaGFpX25pa2hhaGl0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX25pa2hhaGl0 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9ub25lbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhh aV9ub25lbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfbm9udSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgVGhhaV9ub251OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9vYW5nIildCisrCQlwdWJsaWMgY29u c3QgdWludCBUaGFpX29hbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3BhaXlhbm5vaSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVGhhaV9wYWl5YW5ub2k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Bo aW50aHUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfcGhpbnRodTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1RoYWlfcGhvcGhhbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9waG9waGFuOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfVGhhaV9waG9waHVuZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhh aV9waG9waHVuZzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfcGhvc2FtcGhhbyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVGhhaV9waG9zYW1waGFvOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9wb3BsYSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9wb3BsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlf cm9ydWEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfcm9ydWE7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9UaGFpX3J1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3J1OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVGhhaV9zYXJhYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhYTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1RoYWlfc2FyYWFhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3NhcmFh YTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc2FyYWFlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBU aGFpX3NhcmFhZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc2FyYWFpbWFpbWFsYWkiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYWFpbWFpbWFsYWk7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFp X3NhcmFhaW1haW11YW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYWFpbWFpbXVh bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc2FyYWFtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBU aGFpX3NhcmFhbTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc2FyYWUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IFRoYWlfc2FyYWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmFpIildCisrCQlwdWJs aWMgY29uc3QgdWludCBUaGFpX3NhcmFpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9zYXJhaWkiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYWlpOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV9z YXJhbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhbzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1RoYWlfc2FyYXUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlfc2FyYXU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9UaGFpX3NhcmF1ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zYXJhdWU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3NhcmF1ZWUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRo YWlfc2FyYXVlZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc2FyYXV1IildCisrCQlwdWJsaWMgY29u c3QgdWludCBUaGFpX3NhcmF1dTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc29ydXNpIildCisrCQlw dWJsaWMgY29uc3QgdWludCBUaGFpX3NvcnVzaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfc29zYWxh IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Nvc2FsYTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Ro YWlfc29zbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zb3NvOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVGhhaV9zb3N1YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV9zb3N1YTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1RoYWlfdGhhbnRoYWtoYXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlf dGhhbnRoYWtoYXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Rob25hbmdtb250aG8iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFRoYWlfdGhvbmFuZ21vbnRobzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlf dGhvcGh1dGhhbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV90aG9waHV0aGFvOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfVGhhaV90aG90aGFoYW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRoYWlf dGhvdGhhaGFuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV90aG90aGFuIildCisrCQlwdWJsaWMgY29u c3QgdWludCBUaGFpX3Rob3RoYW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3Rob3Rob25nIildCisr CQlwdWJsaWMgY29uc3QgdWludCBUaGFpX3Rob3Rob25nOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV90 aG90aHVuZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV90aG90aHVuZzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX1RoYWlfdG9wYXRhayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV90b3BhdGFr OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVGhhaV90b3RhbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhh aV90b3RhbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfd293YWVuIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBUaGFpX3dvd2FlbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RoYWlfeW95YWsiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IFRoYWlfeW95YWs7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaGFpX3lveWluZyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgVGhhaV95b3lpbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaG9ybiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVGhvcm47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9UaW1lIildCisr CQlwdWJsaWMgY29uc3QgdWludCBUaW1lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVG9Eb0xpc3QiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFRvRG9MaXN0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVG9vbHMiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFRvb2xzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVG9wTWVudSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgVG9wTWVudTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RvdWNocGFkT2ZmIild CisrCQlwdWJsaWMgY29uc3QgdWludCBUb3VjaHBhZE9mZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1RvdWNo cGFkT24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRvdWNocGFkT247CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Ub3VjaHBhZFRvZ2dsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVG91Y2hwYWRUb2dnbGU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Ub3Vyb2t1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBUb3Vyb2t1 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVHJhdmVsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBUcmF2ZWw7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9Uc2xhc2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFRzbGFzaDsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX1UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9VV0IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVXQjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Vh Y3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWJl bG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBVYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9VYnJldmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVicmV2ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X1VjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBVY2lyY3VtZmxleDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX1VkaWFlcmVzaXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVkaWFlcmVzaXM7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9VZG91YmxlYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVk b3VibGVhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgVWdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IFVob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWhvcm4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVo b3JuOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfVWhvcm5hY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg VWhvcm5hY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Vob3JuYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFVob3JuYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VaG9ybmdyYXZlIildCisr CQlwdWJsaWMgY29uc3QgdWludCBVaG9ybmdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWhvcm5ob29r IildCisrCQlwdWJsaWMgY29uc3QgdWludCBVaG9ybmhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9VaG9y bnRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVaG9ybnRpbGRlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVWtyYWluaWFuX0dIRV9XSVRIX1VQVFVSTiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWty YWluaWFuX0dIRV9XSVRIX1VQVFVSTjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFpbmlhbl9JIildCisr CQlwdWJsaWMgY29uc3QgdWludCBVa3JhaW5pYW5fSTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFpbmlh bl9JRSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYWluaWFuX0lFOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVWtyYWluaWFuX1lJIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVa3JhaW5pYW5fWUk7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Va3JhaW5pYW5fZ2hlX3dpdGhfdXB0dXJuIildCisrCQlwdWJsaWMgY29u c3QgdWludCBVa3JhaW5pYW5fZ2hlX3dpdGhfdXB0dXJuOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVWtyYWlu aWFuX2kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFpbmlhbl9pOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVWtyYWluaWFuX2llIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVa3JhaW5pYW5faWU7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9Va3JhaW5pYW5feWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFp bmlhbl95aTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1VrcmFuaWFuX0kiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IFVrcmFuaWFuX0k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3Jhbmlhbl9KRSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgVWtyYW5pYW5fSkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3Jhbmlhbl9ZSSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgVWtyYW5pYW5fWUk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Va3Jhbmlh bl9pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVa3Jhbmlhbl9pOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf VWtyYW5pYW5famUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFuaWFuX2plOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfVWtyYW5pYW5feWkiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVrcmFuaWFuX3lp OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfVW1hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVW1hY3Jv bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX1VuZG8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVuZG87Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9VbmdyYWIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVuZ3JhYjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX1VvZ29uZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFVvZ29uZWs7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9VcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVXA7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9VcmluZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVXJpbmc7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9Vc2VyMUtCIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVc2VyMUtCOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVXNlcjJLQiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVXNlcjJLQjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1VzZXJQQiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVXNlclBCOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfVXRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBVdGlsZGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9WIildCisrCQlwdWJsaWMgY29uc3QgdWludCBWOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVmVuZG9ySG9t ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgVmVuZG9ySG9tZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1Zp ZGVvIildCisrCQlwdWJsaWMgY29uc3QgdWludCBWaWRlbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1ZpZXci KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFZpZXc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9Wb2lkU3ltYm9s IildCisrCQlwdWJsaWMgY29uc3QgdWludCBWb2lkU3ltYm9sOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfVyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgVzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1dMQU4iKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFdMQU47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9XV1ciKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFdXVzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1dhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgV2FjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV2FrZVVwIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBXYWtlVXA7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9XY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgV2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9XZGlhZXJlc2lzIildCisrCQlw dWJsaWMgY29uc3QgdWludCBXZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfV2ViQ2FtIildCisr CQlwdWJsaWMgY29uc3QgdWludCBXZWJDYW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9XZ3JhdmUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFdncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1doZWVsQnV0dG9uIild CisrCQlwdWJsaWMgY29uc3QgdWludCBXaGVlbEJ1dHRvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1dpbmRv d0NsZWFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBXaW5kb3dDbGVhcjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1dvblNpZ24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFdvblNpZ247CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9Xb3JkIildCisrCQlwdWJsaWMgY29uc3QgdWludCBXb3JkOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf WCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1hhYm92ZWRvdCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgWGFib3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWGZlciIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgWGZlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1kiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ZYWN1dGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IFlhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1liZWxvd2RvdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgWWJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWWNpcmN1bWZsZXgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFljaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWWRpYWVyZXNp cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWWRpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1ll bGxvdyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWWVsbG93OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWWdy YXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBZZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ZaG9v ayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgWWhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ZdGlsZGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFl0aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1oiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IFo7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9aYWJvdmVkb3QiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IFphYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX1phY3V0ZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgWmFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWmNhcm9uIildCisrCQlw dWJsaWMgY29uc3QgdWludCBaY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9aZW5fS29obyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgWmVuX0tvaG87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9aZW5rYWt1IildCisr CQlwdWJsaWMgY29uc3QgdWludCBaZW5rYWt1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfWmVua2FrdV9IYW5r YWt1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBaZW5rYWt1X0hhbmtha3U7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9ab29tSW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFpvb21JbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX1pvb21PdXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IFpvb21PdXQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9ac3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBac3Ryb2tlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FhY3V0 ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWJlbG93 ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBhYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9h Ym92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9hYnJldmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFicmV2ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2FicmV2ZWFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhYnJldmVhY3V0ZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2FicmV2ZWJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBhYnJldmVi ZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FicmV2ZWdyYXZlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBhYnJldmVncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FicmV2ZWhvb2siKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGFicmV2ZWhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hYnJldmV0aWxkZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYWJyZXZldGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hY2lyY3Vt ZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYWNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9hY2lyY3VtZmxleGFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhY2lyY3VtZmxleGFj dXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYWNpcmN1bWZsZXhiZWxvd2RvdCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYWNpcmN1bWZsZXhiZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FjaXJjdW1mbGV4 Z3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFjaXJjdW1mbGV4Z3JhdmU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9hY2lyY3VtZmxleGhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFjaXJjdW1m bGV4aG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FjaXJjdW1mbGV4dGlsZGUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGFjaXJjdW1mbGV4dGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hY3V0ZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hZGlhZXJlc2lzIildCisr CQlwdWJsaWMgY29uc3QgdWludCBhZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGFlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYWdyYXZlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBhZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9haG9vayIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYWhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hbWFjcm9uIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBhbWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYW1wZXJzYW5kIildCisrCQlwdWJs aWMgY29uc3QgdWludCBhbXBlcnNhbmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9hb2dvbmVrIildCisrCQlw dWJsaWMgY29uc3QgdWludCBhb2dvbmVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYXBvc3Ryb3BoZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYXBvc3Ryb3BoZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FwcHJveGVx IildCisrCQlwdWJsaWMgY29uc3QgdWludCBhcHByb3hlcTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2FwcHJv eGltYXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhcHByb3hpbWF0ZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2FyaW5nIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhcmluZzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2FzY2lpY2lyY3VtIildCisrCQlwdWJsaWMgY29uc3QgdWludCBhc2NpaWNpcmN1bTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2FzY2lpdGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGFzY2lpdGlsZGU7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9hc3RlcmlzayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYXN0ZXJp c2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9hdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYXQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9hdGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGF0aWxkZTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGI7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i YWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJhYm92ZWRvdDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JhY2tzbGFzaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYmFja3NsYXNoOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYmFsbG90Y3Jvc3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJhbGxvdGNyb3Nz OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYmFyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBiYXI7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9iZWNhdXNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBiZWNhdXNlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYmxhbmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJsYW5rOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYm90aW50ZWdyYWwiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJvdGludGVncmFs OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYm90bGVmdHBhcmVucyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg Ym90bGVmdHBhcmVuczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JvdGxlZnRzcWJyYWNrZXQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJvdGxlZnRzcWJyYWNrZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ib3RsZWZ0 c3VtbWF0aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBib3RsZWZ0c3VtbWF0aW9uOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYm90cmlnaHRwYXJlbnMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJvdHJp Z2h0cGFyZW5zOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYm90cmlnaHRzcWJyYWNrZXQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJvdHJpZ2h0c3FicmFja2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYm90cmlnaHRz dW1tYXRpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJvdHJpZ2h0c3VtbWF0aW9uOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYm90dCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYm90dDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JvdHZlcnRzdW1tYXRpb25jb25uZWN0b3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJvdHZlcnRzdW1tYXRpb25jb25uZWN0b3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFjZWxlZnQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWNlbGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWNlcmln aHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWNlcmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFja2V0bGVmdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhY2tldGxlZnQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFja2V0cmlnaHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWNrZXRyaWdo dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfYmxhbmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfYmxhbms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdF8xIildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdF8xOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rf MTAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90XzEwOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RfMiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RfMjsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90XzMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90XzM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdF80IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdF80OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RfNSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RfNTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90XzYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90XzY7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdF83IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdF83OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RfOCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RfODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90XzkiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90Xzk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMTIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18xMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjMiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MTIzNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18xMjM0NTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NTYiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0NTY7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTIzNDU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzEyMzQ1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDU2NzgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0NTY3ODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18xMjM0NTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MTIzNDU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NTciKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0NTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMTIzNDU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ1 Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDU4IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDU4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzEyMzQ2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNDY7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNDY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTIzNDY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ2Nzgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM0Njc4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfYnJhaWxsZV9kb3RzXzEyMzQ2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzEyMzQ2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0NyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ3OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzEyMzQ3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEy MzQ3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM0OCIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzQ4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzEyMzUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjM1OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTIzNTY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNTY3IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNTY3OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzEyMzU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMjM1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzU2OCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzU2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xMjM1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzU3 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzU3OCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18x MjM1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzU4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18xMjM2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzY3IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzNjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTIzNjc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIz Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyMzY4IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMTIzNjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MTIzNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyMzc7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMTIzNzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18xMjM3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjM4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTIzODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xMjQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzEyNDU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NTYiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ1NjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18xMjQ1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMjQ1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NTY3OCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTI0NTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0 NTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDU3IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMTI0NTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNf MTI0NTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI0NTc4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNDU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTI0NTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI0NiIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDY7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTI0NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18x MjQ2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ2NzgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMTI0NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjQ2ODsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTI0NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjQ3OCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNDc4OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzEyNDgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18x MjQ4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzEyNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMjU2 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI1NjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2JyYWlsbGVfZG90c18xMjU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzEyNTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNTY3OCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xMjU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNTY4 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNTciKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18xMjU3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNTc4 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI1Nzg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMTI1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzEyNTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI2IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzEyNjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMjY3OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNjc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTI2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTI2OCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyNjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTI3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTI3Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyNzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18xMjc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEyOCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEyODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18xMyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzEzNDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQ1IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0NTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18xMzQ1NiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEz NDU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDU2NyIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xMzQ1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0NTY3ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQ1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18xMzQ1Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0 NTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ1NzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18xMzQ1NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18xMzQ1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0NTgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ1ODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18xMzQ2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0 NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQ2NyIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEz NDY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDY3ODsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzQ2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzEzNDY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNDciKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzQ3OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzEzNDc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM0 Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM0OCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzEzNDg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM1 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM1OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfYnJhaWxsZV9kb3RzXzEzNTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMzU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNTY3IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMTM1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM1Njc4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzEzNTY4IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTM1Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM1NyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNTc7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMTM1NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90 c18xMzU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzU4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xMzYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzY7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMTM2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzEzNjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM2NzgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xMzY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18xMzY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM2ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xMzciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18xMzc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTM3OCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzEzNzg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTM4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTM4 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMTQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ1IildCisr CQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ1OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzE0NTYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDU2 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0NTY3IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMTQ1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ1 Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ1Njc4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE0NTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTQ1Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ1NyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0NTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMTQ1NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDU3 ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDU4IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMTQ1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDYi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNDY7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9icmFpbGxlX2RvdHNfMTQ2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzE0Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ2NzgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18xNDY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90 c18xNDY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ2ODsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18xNDciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18xNDc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTQ3OCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE0Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxl X2RvdHNfMTQ4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTQ4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMTU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTU2IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzE1NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNTY3OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMTU2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTU2OCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE1Njg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTU3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTU3 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE1NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18xNTc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE1OCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE1ODsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18xNiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzE2 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzE2NyIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzE2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNjc4Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMTY3ODsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18xNjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18x Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMTciKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18xNzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18xNzgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xNzg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18xODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMyIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzIzNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMjM0NTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ1NiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDU2OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzIzNDU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIz NDU2NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ1Njc4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0NTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18yMzQ1NjgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ1Njg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0NTciKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18yMzQ1NzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ1 NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzQ1Nzg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMjM0NTgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18yMzQ1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzQ2IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18yMzQ2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDY3 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDY3OCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18y MzQ2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDY4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWls bGVfZG90c18yMzQ3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNDc4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM0Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMjM0OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNDg7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM1IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBicmFpbGxlX2RvdHNfMjM1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzIzNTYiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzU2OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YnJhaWxsZV9kb3RzXzIzNTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MjM1Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM1Njc4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzIzNTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM1Njg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzIzNTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM1NzgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzU3ODsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18yMzU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNf MjM1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzYiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18yMzY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM2 NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzIzNjc7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMjM2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18yMzY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yMzY4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18yMzciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yMzc7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzIzNzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjM4IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjM4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzI0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfMjQ1OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0NTYiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDU2OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzI0NTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ1Njc7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ1Njc4IildCisrCQlwdWJsaWMgY29uc3Qg dWludCBicmFpbGxlX2RvdHNfMjQ1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI0 NTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ1Njg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzI0NTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ1NzgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWls bGVfZG90c18yNDU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ1ODsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGJyYWlsbGVfZG90c18yNDY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ2NyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI0Njc7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMjQ2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18y NDY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNDY4IildCisrCQlwdWJsaWMgY29u c3QgdWludCBicmFpbGxlX2RvdHNfMjQ2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18y NDciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNDc7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMjQ3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzI0Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjQ4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMjQ4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzI1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfMjU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2Rv dHNfMjU2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI1NjciKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18yNTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzI1Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjU2Nzg7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJh aWxsZV9kb3RzXzI1Njg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjU3IildCisrCQlw dWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMjU3OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzI1NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNTc4Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzI1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg YnJhaWxsZV9kb3RzXzI1ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI2OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxs ZV9kb3RzXzI2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzI2NzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNjc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMjY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNjgiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNjg7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFp bGxlX2RvdHNfMjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yNzsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18yNzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJy YWlsbGVfZG90c18yNzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMjgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18yODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVf ZG90c18zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18zNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzM0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0NTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18z NDU2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ1NjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18zNDU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzM0NTY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NTY3OCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0NTY3ODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy YWlsbGVfZG90c18zNDU2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0 NTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NTciKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c18zNDU3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0 NTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ1Nzg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ1OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzM0NTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ2IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ2OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzM0NjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNDY3OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0Njc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBi cmFpbGxlX2RvdHNfMzQ2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzQ2OCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0Njg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfMzQ3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzQ3 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c18zNDc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM0OCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM0ODsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18zNSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM1 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM1NiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzM1NjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNTY3Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzU2NzsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c18zNTY3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzM1Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM1NjgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGJyYWlsbGVfZG90c18zNTY4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzM1NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM1NzsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18zNTc4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMzU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c18zNTgiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNTg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMzYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c18zNjsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c18zNjciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c18zNjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzY3OCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzM2Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfMzY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzY4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzM3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfMzc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfMzc4IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfMzc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzM4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfMzg7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9icmFpbGxlX2RvdHNfNCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3Rz XzQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c180NTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NTYiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180NTY7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfNDU2NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ1 Njc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDU2NzgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c180NTY3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180 NTY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDU2ODsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c180NTciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVf ZG90c180NTc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDU3OCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ1Nzg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2Rv dHNfNDU4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNDU4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ2IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxl X2RvdHNfNDY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNDY3IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBicmFpbGxlX2RvdHNfNDY3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzQ2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c180Njc4OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfYnJhaWxsZV9kb3RzXzQ2OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxs ZV9kb3RzXzQ2ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c180NyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ3OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3Rz XzQ3OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzQ3ODsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2JyYWlsbGVfZG90c180OCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzQ4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzUiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c181OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzU2Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNTY7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9i cmFpbGxlX2RvdHNfNTY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNTY3 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzU2NzgiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGJyYWlsbGVfZG90c181Njc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzU2OCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzU2ODsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2JyYWlsbGVfZG90c181NyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzU3 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzU3OCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgYnJhaWxsZV9kb3RzXzU3ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c181OCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9kb3RzXzU4OworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJh aWxsZV9kb3RzXzYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGJyYWlsbGVfZG90c182OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfYnJhaWxsZV9kb3RzXzY3IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFp bGxlX2RvdHNfNjc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNjc4IildCisrCQlwdWJs aWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNjc4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfYnJhaWxsZV9k b3RzXzY4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfNjg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9icmFpbGxlX2RvdHNfNyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJhaWxsZV9k b3RzXzc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9icmFpbGxlX2RvdHNfNzgiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IGJyYWlsbGVfZG90c183ODsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2JyYWlsbGVfZG90c184Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBicmFpbGxlX2RvdHNfODsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jy ZXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBicmV2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Jyb2tl bmJhciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYnJva2VuYmFyOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf YyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgYzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NfaCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgY19oOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2Fib3ZlZG90IildCisrCQlw dWJsaWMgY29uc3QgdWludCBjYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jYWN1dGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGNhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NhcmVvZiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgY2FyZW9mOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2FyZXQiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGNhcmV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2Fyb24iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2Nhcm9uIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBjY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jY2VkaWxsYSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgY2NlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jY2lyY3VtZmxleCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgY2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jZWRpbGxhIild CisrCQlwdWJsaWMgY29uc3QgdWludCBjZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2VudCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NoIildCisrCQlwdWJs aWMgY29uc3QgdWludCBjaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NoZWNrZXJib2FyZCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgY2hlY2tlcmJvYXJkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY2hlY2ttYXJrIild CisrCQlwdWJsaWMgY29uc3QgdWludCBjaGVja21hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jaXJjbGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGNpcmNsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2NsdWIiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGNsdWI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jb2xvbiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgY29sb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jb21tYSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgY29tbWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jb250YWluc2FzIildCisrCQlw dWJsaWMgY29uc3QgdWludCBjb250YWluc2FzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY29weXJpZ2h0Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBjb3B5cmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jciIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgY3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9jcm9zc2luZ2xpbmVzIild CisrCQlwdWJsaWMgY29uc3QgdWludCBjcm9zc2luZ2xpbmVzOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfY3Vi ZXJvb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGN1YmVyb290OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf Y3VycmVuY3kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGN1cnJlbmN5OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfY3Vyc29yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBjdXJzb3I7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGFib3ZlZG90 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkYWJvdmVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kYWdn ZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRhZ2dlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RjYXJv biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGNhcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9B IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX0Ui KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfSSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9JOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9PIild CisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX087CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX1UiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9hOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9hYm92ZWNv bW1hIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2Fib3ZlY29tbWE7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9kZWFkX2Fib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2Fib3ZlZG90 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9hYm92ZXJldmVyc2VkY29tbWEiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGRlYWRfYWJvdmVyZXZlcnNlZGNvbW1hOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9h Ym92ZXJpbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYWJvdmVyaW5nOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZGVhZF9hYm92ZXZlcnRpY2FsbGluZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZGVhZF9hYm92ZXZlcnRpY2FsbGluZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYWN1dGUiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2JlbG93 YnJldmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYmVsb3dicmV2ZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2RlYWRfYmVsb3djaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFk X2JlbG93Y2lyY3VtZmxleDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYmVsb3djb21tYSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZGVhZF9iZWxvd2NvbW1hOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9i ZWxvd2RpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9iZWxvd2RpYWVyZXNp czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2RlYWRfYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGRlYWRfYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2JlbG93bWFjcm9uIildCisrCQlw dWJsaWMgY29uc3QgdWludCBkZWFkX2JlbG93bWFjcm9uOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9i ZWxvd3JpbmciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfYmVsb3dyaW5nOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZGVhZF9iZWxvd3RpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2Jl bG93dGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2JlbG93dmVydGljYWxsaW5lIildCisrCQlw dWJsaWMgY29uc3QgdWludCBkZWFkX2JlbG93dmVydGljYWxsaW5lOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZGVhZF9icmV2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9icmV2ZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2RlYWRfY2FwaXRhbF9zY2h3YSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9j YXBpdGFsX3NjaHdhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9jYXJvbiIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZGVhZF9jYXJvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfY2VkaWxsYSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZGVhZF9jZWRpbGxhOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9jaXJj dW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2NpcmN1bWZsZXg7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9kZWFkX2N1cnJlbmN5IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2N1cnJl bmN5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9kYXNpYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg ZGVhZF9kYXNpYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfZGlhZXJlc2lzIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBkZWFkX2RpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfZG91YmxlYWN1 dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfZG91YmxlYWN1dGU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9kZWFkX2RvdWJsZWdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2RvdWJs ZWdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBk ZWFkX2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2dyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBkZWFkX2dyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9ncmVlayIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZGVhZF9ncmVlazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfaG9vayIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZGVhZF9ob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9ob3JuIildCisr CQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2hvcm47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2kiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfaW52ZXJ0 ZWRicmV2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9pbnZlcnRlZGJyZXZlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfZGVhZF9pb3RhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX2lvdGE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2xvbmdzb2xpZHVzb3ZlcmxheSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQgZGVhZF9sb25nc29saWR1c292ZXJsYXk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX2xv d2xpbmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfbG93bGluZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2RlYWRfbWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX21hY3JvbjsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2RlYWRfbyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF9vOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfZGVhZF9vZ29uZWsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfb2dv bmVrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVhZF9wZXJpc3BvbWVuaSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZGVhZF9wZXJpc3BvbWVuaTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlYWRfcHNpbGkiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGRlYWRfcHNpbGk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX3NlbWl2 b2ljZWRfc291bmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRlYWRfc2VtaXZvaWNlZF9zb3Vu ZDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2RlYWRfc21hbGxfc2Nod2EiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IGRlYWRfc21hbGxfc2Nod2E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX3N0cm9rZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZGVhZF9zdHJva2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFkX3RpbGRl IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX3RpbGRlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGVh ZF91IildCisrCQlwdWJsaWMgY29uc3QgdWludCBkZWFkX3U7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kZWFk X3ZvaWNlZF9zb3VuZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZGVhZF92b2ljZWRfc291bmQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9kZWNpbWFscG9pbnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRl Y2ltYWxwb2ludDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RlZ3JlZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgZGVncmVlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBkaWFlcmVzaXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kaWFtb25kIildCisrCQlwdWJsaWMgY29u c3QgdWludCBkaWFtb25kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGlnaXRzcGFjZSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgZGlnaXRzcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2RpbnRlZ3JhbCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgZGludGVncmFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZGl2aXNpb24iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGRpdmlzaW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZG9sbGFyIild CisrCQlwdWJsaWMgY29uc3QgdWludCBkb2xsYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kb3ViYmFzZWxp bmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRvdWJiYXNlbGluZWRvdDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2RvdWJsZWFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkb3VibGVhY3V0ZTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2RvdWJsZWRhZ2dlciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZG91 YmxlZGFnZ2VyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZG91YmxlbG93cXVvdGVtYXJrIildCisrCQlwdWJs aWMgY29uc3QgdWludCBkb3VibGVsb3dxdW90ZW1hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9kb3duYXJy b3ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRvd25hcnJvdzsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Rv d25jYXJldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZG93bmNhcmV0OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfZG93bnNob2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGRvd25zaG9lOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfZG93bnN0aWxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkb3duc3RpbGU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9kb3dudGFjayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZG93bnRhY2s7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9kc3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBkc3Ryb2tlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2VhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWFib3ZlZG90OworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZWFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlYWN1dGU7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9lYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGViZWxvd2RvdDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2VjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWNhcm9uOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfZWNpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVjaXJjdW1m bGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZWNpcmN1bWZsZXhhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZWNpcmN1bWZsZXhhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VjaXJjdW1mbGV4YmVsb3dk b3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVjaXJjdW1mbGV4YmVsb3dkb3Q7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9lY2lyY3VtZmxleGdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlY2lyY3Vt ZmxleGdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWNpcmN1bWZsZXhob29rIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBlY2lyY3VtZmxleGhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lY2lyY3VtZmxleHRp bGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlY2lyY3VtZmxleHRpbGRlOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfZWRpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWRpYWVyZXNpczsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2VncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZWdyYXZlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfZWhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVob29rOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZWlnaHRzdWJzY3JpcHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVpZ2h0c3Vi c2NyaXB0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWlnaHRzdXBlcmlvciIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZWlnaHRzdXBlcmlvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VsZW1lbnRvZiIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZWxlbWVudG9mOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZWxsaXBzaXMiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGVsbGlwc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW0zc3BhY2UiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGVtM3NwYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW00c3BhY2Ui KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVtNHNwYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW1hY3Jv biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW1hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VtZGFz aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW1kYXNoOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW1maWxs ZWRjaXJjbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVtZmlsbGVkY2lyY2xlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZW1maWxsZWRyZWN0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbWZpbGxlZHJl Y3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9lbW9wZW5jaXJjbGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGVtb3BlbmNpcmNsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Vtb3BlbnJlY3RhbmdsZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZW1vcGVucmVjdGFuZ2xlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW1wdHlzZXQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGVtcHR5c2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW1zcGFj ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW1zcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2VuZGFz aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW5kYXNoOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW5maWxs ZWRjaXJjYnVsbGV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbmZpbGxlZGNpcmNidWxsZXQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9lbmZpbGxlZHNxYnVsbGV0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBlbmZpbGxlZHNxYnVsbGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW5nIildCisrCQlwdWJsaWMgY29u c3QgdWludCBlbmc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9lbm9wZW5jaXJjYnVsbGV0IildCisrCQlwdWJs aWMgY29uc3QgdWludCBlbm9wZW5jaXJjYnVsbGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZW5vcGVuc3F1 YXJlYnVsbGV0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbm9wZW5zcXVhcmVidWxsZXQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9lbnNwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlbnNwYWNlOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfZW9nb25layIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZW9nb25lazsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2VxdWFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBlcXVhbDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2V0aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZXRoOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfZXRpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBldGlsZGU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9leGNsYW0iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGV4Y2xhbTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2V4Y2xhbWRvd24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGV4Y2xhbWRvd247CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9lemgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGV6aDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2YiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9mYWJvdmVk b3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZhYm92ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Zl bWFsZXN5bWJvbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZmVtYWxlc3ltYm9sOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfZmYiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZmOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf ZmlnZGFzaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZmlnZGFzaDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2ZpbGxlZGxlZnR0cmlidWxsZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZpbGxlZGxlZnR0 cmlidWxsZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9maWxsZWRyZWN0YnVsbGV0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBmaWxsZWRyZWN0YnVsbGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZmlsbGVkcmlnaHR0 cmlidWxsZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZpbGxlZHJpZ2h0dHJpYnVsbGV0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfZmlsbGVkdHJpYnVsbGV0ZG93biIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgZmlsbGVkdHJpYnVsbGV0ZG93bjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ZpbGxlZHRyaWJ1bGxldHVw IildCisrCQlwdWJsaWMgY29uc3QgdWludCBmaWxsZWR0cmlidWxsZXR1cDsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2ZpdmVlaWdodGhzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBmaXZlZWlnaHRoczsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2ZpdmVzaXh0aHMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGZpdmVzaXh0 aHM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9maXZlc3Vic2NyaXB0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBmaXZlc3Vic2NyaXB0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZml2ZXN1cGVyaW9yIildCisrCQlwdWJs aWMgY29uc3QgdWludCBmaXZlc3VwZXJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9mb3VyZmlmdGhzIild CisrCQlwdWJsaWMgY29uc3QgdWludCBmb3VyZmlmdGhzOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZm91cnN1 YnNjcmlwdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZm91cnN1YnNjcmlwdDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2ZvdXJzdXBlcmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZm91cnN1cGVyaW9y OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfZm91cnRocm9vdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZm91 cnRocm9vdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2Z1bmN0aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBmdW5jdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGc7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9nYWJvdmVkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGdhYm92 ZWRvdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2dicmV2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZ2Jy ZXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfZ2Nhcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBnY2Fy b247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9nY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZ2Nl ZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9nY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgZ2NpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgZ3JhdmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ncmVhdGVyIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBncmVhdGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfZ3JlYXRlcnRoYW5lcXVhbCIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgZ3JlYXRlcnRoYW5lcXVhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2d1aWxsZW1v dGxlZnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGd1aWxsZW1vdGxlZnQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9ndWlsbGVtb3RyaWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgZ3VpbGxlbW90cmln aHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9oIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfaGFpcnNwYWNlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoYWlyc3BhY2U7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9oY2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGNpcmN1 bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWFydCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVh cnQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfYWxlcGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGhlYnJld19hbGVwaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19heWluIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBoZWJyZXdfYXlpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19iZXQiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19iZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfYmV0 aCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2JldGg7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9o ZWJyZXdfY2hldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2NoZXQ7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9oZWJyZXdfZGFsZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19kYWxl dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19kYWxldGgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGhlYnJld19kYWxldGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfZG91YmxlbG93bGluZSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2RvdWJsZWxvd2xpbmU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9oZWJyZXdfZmluYWxrYXBoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfZmluYWxr YXBoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2ZpbmFsbWVtIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBoZWJyZXdfZmluYWxtZW07CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfZmluYWxudW4iKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19maW5hbG51bjsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hl YnJld19maW5hbHBlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfZmluYWxwZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2hlYnJld19maW5hbHphZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhl YnJld19maW5hbHphZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfZmluYWx6YWRpIildCisrCQlw dWJsaWMgY29uc3QgdWludCBoZWJyZXdfZmluYWx6YWRpOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3 X2dpbWVsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfZ2ltZWw7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9oZWJyZXdfZ2ltbWVsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfZ2ltbWVs OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2hlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJy ZXdfaGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfaGV0IildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBoZWJyZXdfaGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2thcGgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGhlYnJld19rYXBoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X2t1ZiIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2t1ZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19sYW1l ZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X2xhbWVkOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf aGVicmV3X21lbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X21lbTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2hlYnJld19udW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19udW47Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9oZWJyZXdfcGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19w ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19xb3BoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBo ZWJyZXdfcW9waDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19yZXNoIildCisrCQlwdWJsaWMgY29u c3QgdWludCBoZWJyZXdfcmVzaDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld19zYW1lY2giKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19zYW1lY2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdf c2FtZWtoIildCisrCQlwdWJsaWMgY29uc3QgdWludCBoZWJyZXdfc2FtZWtoOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfaGVicmV3X3NoaW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld19zaGluOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfaGVicmV3X3RhZiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3 X3RhZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJld190YXciKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGhlYnJld190YXc7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfdGV0IildCisrCQlwdWJsaWMgY29u c3QgdWludCBoZWJyZXdfdGV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3RldGgiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGhlYnJld190ZXRoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaGVicmV3X3dhdyIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3dhdzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hlYnJl d195b2QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhlYnJld195b2Q7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9oZWJyZXdfemFkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3phZGU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9oZWJyZXdfemFkaSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaGVicmV3X3ph ZGk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfemFpbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg aGVicmV3X3phaW47CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9oZWJyZXdfemF5aW4iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGhlYnJld196YXlpbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hleGFncmFtIildCisrCQlw dWJsaWMgY29uc3QgdWludCBoZXhhZ3JhbTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hvcml6Y29ubmVjdG9y IildCisrCQlwdWJsaWMgY29uc3QgdWludCBob3JpemNvbm5lY3RvcjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2hvcml6bGluZXNjYW4xIildCisrCQlwdWJsaWMgY29uc3QgdWludCBob3JpemxpbmVzY2FuMTsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2hvcml6bGluZXNjYW4zIildCisrCQlwdWJsaWMgY29uc3QgdWludCBo b3JpemxpbmVzY2FuMzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hvcml6bGluZXNjYW41IildCisrCQlwdWJs aWMgY29uc3QgdWludCBob3JpemxpbmVzY2FuNTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2hvcml6bGluZXNj YW43IildCisrCQlwdWJsaWMgY29uc3QgdWludCBob3JpemxpbmVzY2FuNzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX2hvcml6bGluZXNjYW45IildCisrCQlwdWJsaWMgY29uc3QgdWludCBob3JpemxpbmVzY2Fu OTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2hzdHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGhzdHJv a2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9odCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaHQ7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9oeXBoZW4iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGh5cGhlbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2kiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGk7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9p VG91Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGlUb3VjaDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2lh Y3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaWFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaWJl bG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBpYmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9pYnJldmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGlicmV2ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2ljaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBpY2lyY3VtZmxleDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2lkZW50aWNhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaWRlbnRpY2FsOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfaWRpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgaWRpYWVy ZXNpczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2lkb3RsZXNzIildCisrCQlwdWJsaWMgY29uc3QgdWludCBp ZG90bGVzczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2lmb25seWlmIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBpZm9ubHlpZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2lncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgaWdyYXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaWhvb2siKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGlob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaW1hY3JvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg aW1hY3JvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2ltcGxpZXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGltcGxpZXM7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pbmNsdWRlZGluIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBpbmNsdWRlZGluOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaW5jbHVkZXMiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGluY2x1ZGVzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaW5maW5pdHkiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGluZmluaXR5OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaW50ZWdyYWwiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGludGVncmFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaW50ZXJzZWN0aW9uIild CisrCQlwdWJsaWMgY29uc3QgdWludCBpbnRlcnNlY3Rpb247CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9pb2dv bmVrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpb2dvbmVrOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfaXRp bGRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBpdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9qIild CisrCQlwdWJsaWMgY29uc3QgdWludCBqOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfamNpcmN1bWZsZXgiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGpjaXJjdW1mbGV4OworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfam90Iild CisrCQlwdWJsaWMgY29uc3QgdWludCBqb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rIildCisrCQlwdWJs aWMgY29uc3QgdWludCBrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9BIildCisrCQlwdWJsaWMgY29u c3QgdWludCBrYW5hX0E7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0NISSIpXQorKwkJcHVibGljIGNv bnN0IHVpbnQga2FuYV9DSEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0UiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGthbmFfRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfRlUiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGthbmFfRlU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0hBIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBrYW5hX0hBOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9IRSIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQga2FuYV9IRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfSEkiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGthbmFfSEk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0hPIildCisrCQlwdWJs aWMgY29uc3QgdWludCBrYW5hX0hPOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9IVSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQga2FuYV9IVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfSSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQga2FuYV9JOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9LQSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQga2FuYV9LQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfS0UiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IGthbmFfS0U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX0tJIildCisrCQlw dWJsaWMgY29uc3QgdWludCBrYW5hX0tJOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9LTyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQga2FuYV9LTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfS1UiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IGthbmFfS1U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX01BIildCisr CQlwdWJsaWMgY29uc3QgdWludCBrYW5hX01BOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9NRSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9NRTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfTUkiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfTUk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX01PIild CisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX01POworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9NVSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9NVTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfTiIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9OOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9OQSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9OQTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfTkUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfTkU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX05J IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX05JOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9O TyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9OTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFf TlUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfTlU7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5h X08iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfTzsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFf UkEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfUkE7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5h X1JFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1JFOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2Fu YV9SSSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9SSTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2th bmFfUk8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfUk87CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9r YW5hX1JVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1JVOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf a2FuYV9TQSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9TQTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2thbmFfU0UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfU0U7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9rYW5hX1NISSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9TSEk7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9rYW5hX1NPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1NPOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfa2FuYV9TVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9TVTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX2thbmFfVEEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfVEE7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9rYW5hX1RFIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1RFOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfa2FuYV9USSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9USTsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2thbmFfVE8iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfVE87CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9rYW5hX1RTVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9UU1U7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9rYW5hX1RVIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1RVOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfa2FuYV9VIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1U7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9rYW5hX1dBIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1dBOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfa2FuYV9XTyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9XTzsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX2thbmFfWUEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfWUE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9rYW5hX1lPIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX1lP OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9ZVSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9Z VTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2thbmFfYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9h OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9jbG9zaW5nYnJhY2tldCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQga2FuYV9jbG9zaW5nYnJhY2tldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfY29tbWEiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfY29tbWE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX2Nv bmp1bmN0aXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX2Nvbmp1bmN0aXZlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfa2FuYV9lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX2U7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9rYW5hX2Z1bGxzdG9wIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX2Z1 bGxzdG9wOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV9pIildCisrCQlwdWJsaWMgY29uc3QgdWludCBr YW5hX2k7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX21pZGRsZWRvdCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQga2FuYV9taWRkbGVkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9rYW5hX28iKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IGthbmFfbzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2thbmFfb3BlbmluZ2JyYWNrZXQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFfb3BlbmluZ2JyYWNrZXQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9rYW5hX3N3aXRjaCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV9zd2l0Y2g7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9rYW5hX3RzdSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV90c3U7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9rYW5hX3R1IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX3R1 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV91IildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX3U7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9rYW5hX3lhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBrYW5hX3lh OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfa2FuYV95byIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FuYV95 bzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2thbmFfeXUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGthbmFf eXU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9rYXBwYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2FwcGE7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9rY2VkaWxsYSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQga2NlZGls bGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9rcmEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGtyYTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2wiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGw7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9sYWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxhY3V0ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2xhdGluY3Jvc3MiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxhdGluY3Jvc3M7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9sYmVsb3dkb3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxiZWxvd2RvdDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX2xjYXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGNhcm9uOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfbGNlZGlsbGEiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxjZWRpbGxhOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfbGVmdGFuZ2xlYnJhY2tldCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg bGVmdGFuZ2xlYnJhY2tldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xlZnRhcnJvdyIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgbGVmdGFycm93OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGVmdGNhcmV0IildCisrCQlw dWJsaWMgY29uc3QgdWludCBsZWZ0Y2FyZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0ZG91YmxlcXVv dGVtYXJrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsZWZ0ZG91YmxlcXVvdGVtYXJrOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfbGVmdG1pZGRsZWN1cmx5YnJhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IGxlZnRtaWRkbGVjdXJseWJyYWNlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGVmdG9wZW50cmlhbmdsZSIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVmdG9wZW50cmlhbmdsZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2xlZnRwb2ludGVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsZWZ0cG9pbnRlcjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX2xlZnRyYWRpY2FsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsZWZ0cmFkaWNh bDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX2xlZnRzaG9lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBsZWZ0 c2hvZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX2xlZnRzaW5nbGVxdW90ZW1hcmsiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IGxlZnRzaW5nbGVxdW90ZW1hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0dCIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgbGVmdHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZWZ0dGFjayIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgbGVmdHRhY2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sZXNzIildCisr CQlwdWJsaWMgY29uc3QgdWludCBsZXNzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbGVzc3RoYW5lcXVhbCIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgbGVzc3RoYW5lcXVhbDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xm IildCisrCQlwdWJsaWMgY29uc3QgdWludCBsZjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX2xvZ2ljYWxhbmQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxvZ2ljYWxhbmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sb2dp Y2Fsb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxvZ2ljYWxvcjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X2xvd2xlZnRjb3JuZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IGxvd2xlZnRjb3JuZXI7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9sb3dyaWdodGNvcm5lciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbG93 cmlnaHRjb3JuZXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9sc3Ryb2tlIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBsc3Ryb2tlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg bTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX21hYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbWFi b3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbWFjcm9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCBt YWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9tYWxlc3ltYm9sIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBtYWxlc3ltYm9sOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbWFsdGVzZWNyb3NzIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBtYWx0ZXNlY3Jvc3M7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9tYXJrZXIiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IG1hcmtlcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX21hc2N1bGluZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgbWFzY3VsaW5lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbWludXMiKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IG1pbnVzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbWludXRlcyIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgbWludXRlczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX211IildCisrCQlwdWJs aWMgY29uc3QgdWludCBtdTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX211bHRpcGx5IildCisrCQlwdWJsaWMg Y29uc3QgdWludCBtdWx0aXBseTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX211c2ljYWxmbGF0IildCisrCQlw dWJsaWMgY29uc3QgdWludCBtdXNpY2FsZmxhdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX211c2ljYWxzaGFy cCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbXVzaWNhbHNoYXJwOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf biIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX25hYmxhIildCisr CQlwdWJsaWMgY29uc3QgdWludCBuYWJsYTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX25hY3V0ZSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgbmFjdXRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbmNhcm9uIildCisrCQlw dWJsaWMgY29uc3QgdWludCBuY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9uY2VkaWxsYSIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgbmNlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9uaW5lc3Vic2NyaXB0 IildCisrCQlwdWJsaWMgY29uc3QgdWludCBuaW5lc3Vic2NyaXB0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf bmluZXN1cGVyaW9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCBuaW5lc3VwZXJpb3I7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV9ubCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbmw7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9ub2JyZWFrc3BhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG5vYnJlYWtzcGFjZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX25vdGFwcHJveGVxIildCisrCQlwdWJsaWMgY29uc3QgdWludCBub3RhcHBy b3hlcTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX25vdGVsZW1lbnRvZiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgbm90ZWxlbWVudG9mOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbm90ZXF1YWwiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IG5vdGVxdWFsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbm90aWRlbnRpY2FsIildCisrCQlw dWJsaWMgY29uc3QgdWludCBub3RpZGVudGljYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9ub3RzaWduIild CisrCQlwdWJsaWMgY29uc3QgdWludCBub3RzaWduOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbnRpbGRlIild CisrCQlwdWJsaWMgY29uc3QgdWludCBudGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9udW1iZXJzaWdu IildCisrCQlwdWJsaWMgY29uc3QgdWludCBudW1iZXJzaWduOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfbnVt ZXJvc2lnbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgbnVtZXJvc2lnbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX28iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG87CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vYWN1dGUi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9hY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29iYXJyZWQi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9iYXJyZWQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vYmVsb3dk b3QiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9iZWxvd2RvdDsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29j YXJvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2Nhcm9uOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2Np cmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9jaXJjdW1mbGV4OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfb2NpcmN1bWZsZXhhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2NpcmN1bWZs ZXhhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29jaXJjdW1mbGV4YmVsb3dkb3QiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IG9jaXJjdW1mbGV4YmVsb3dkb3Q7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vY2lyY3Vt ZmxleGdyYXZlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvY2lyY3VtZmxleGdyYXZlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfb2NpcmN1bWZsZXhob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvY2ly Y3VtZmxleGhvb2s7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vY2lyY3VtZmxleHRpbGRlIildCisrCQlwdWJs aWMgY29uc3QgdWludCBvY2lyY3VtZmxleHRpbGRlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2RpYWVyZXNp cyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2RpYWVyZXNpczsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29k b3VibGVhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2RvdWJsZWFjdXRlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfb2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9lOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf b2dvbmVrIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvZ29uZWs7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9v Z3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9ncmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29o b29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCBvaG9vazsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29ob3Ju IildCisrCQlwdWJsaWMgY29uc3QgdWludCBvaG9ybjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29ob3JuYWN1 dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9ob3JuYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9v aG9ybmJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCBvaG9ybmJlbG93ZG90OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfb2hvcm5ncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2hvcm5ncmF2 ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX29ob3JuaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb2hv cm5ob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb2hvcm50aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgb2hvcm50aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29tYWNyb24iKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IG9tYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vbmVlaWdodGgiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IG9uZWVpZ2h0aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29uZWZpZnRoIildCisrCQlwdWJs aWMgY29uc3QgdWludCBvbmVmaWZ0aDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29uZWhhbGYiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IG9uZWhhbGY7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vbmVxdWFydGVyIildCisr CQlwdWJsaWMgY29uc3QgdWludCBvbmVxdWFydGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb25lc2l4dGgi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9uZXNpeHRoOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb25lc3Vi c2NyaXB0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBvbmVzdWJzY3JpcHQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9vbmVzdXBlcmlvciIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb25lc3VwZXJpb3I7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV9vbmV0aGlyZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb25ldGhpcmQ7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFt ZSA9ICJDTFVUVEVSX0tFWV9vb2JsaXF1ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgb29ibGlx dWU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBj bmFtZSA9ICJDTFVUVEVSX0tFWV9vcGVucmVjdGJ1bGxldCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgb3BlbnJlY3RidWxsZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vcGVuc3RhciIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgb3BlbnN0YXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vcGVudHJpYnVsbGV0ZG93biIp XQorKwkJcHVibGljIGNvbnN0IHVpbnQgb3BlbnRyaWJ1bGxldGRvd247CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9vcGVudHJpYnVsbGV0dXAiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IG9wZW50cmlidWxsZXR1 cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX29yZGZlbWluaW5lIildCisrCQlwdWJsaWMgY29uc3QgdWludCBv cmRmZW1pbmluZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX29zbGFzaCIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgb3NsYXNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb3RpbGRlIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBvdGlsZGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9vdmVyYmFyIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBvdmVyYmFyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfb3ZlcmxpbmUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IG92ZXJsaW5lOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg cDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3BhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGFi b3ZlZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcGFyYWdyYXBoIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBwYXJhZ3JhcGg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wYXJlbmxlZnQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHBhcmVubGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3BhcmVucmlnaHQiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHBhcmVucmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9wYXJ0ZGlmZmVyZW50aWFs IildCisrCQlwdWJsaWMgY29uc3QgdWludCBwYXJ0ZGlmZmVyZW50aWFsOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfcGFydGlhbGRlcml2YXRpdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHBhcnRpYWxkZXJp dmF0aXZlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcGVyY2VudCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg cGVyY2VudDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3BlcmlvZCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg cGVyaW9kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcGVyaW9kY2VudGVyZWQiKV0KKysJCXB1YmxpYyBjb25z dCB1aW50IHBlcmlvZGNlbnRlcmVkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcGVybWlsbGUiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHBlcm1pbGxlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcGhvbm9ncmFwaGNvcHly aWdodCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcGhvbm9ncmFwaGNvcHlyaWdodDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3BsdXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHBsdXM7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9wbHVzbWludXMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHBsdXNtaW51czsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3ByZXNjcmlwdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcHJlc2NyaXB0 aW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfcHJvbG9uZ2Vkc291bmQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHByb2xvbmdlZHNvdW5kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcHVuY3RzcGFjZSIpXQorKwkJcHVi bGljIGNvbnN0IHVpbnQgcHVuY3RzcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3EiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9xdWFkIildCisrCQlwdWJsaWMgY29uc3Qg dWludCBxdWFkOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcXVlc3Rpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHF1ZXN0aW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcXVlc3Rpb25kb3duIildCisrCQlwdWJsaWMg Y29uc3QgdWludCBxdWVzdGlvbmRvd247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9xdW90ZWRibCIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgcXVvdGVkYmw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9xdW90ZWxlZnQiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHF1b3RlbGVmdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3F1b3Rlcmln aHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHF1b3RlcmlnaHQ7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9y IildCisrCQlwdWJsaWMgY29uc3QgdWludCByOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmFjdXRlIildCisr CQlwdWJsaWMgY29uc3QgdWludCByYWN1dGU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yYWRpY2FsIildCisr CQlwdWJsaWMgY29uc3QgdWludCByYWRpY2FsOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmNhcm9uIildCisr CQlwdWJsaWMgY29uc3QgdWludCByY2Fyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yY2VkaWxsYSIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgcmNlZGlsbGE7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yZWdpc3RlcmVk IildCisrCQlwdWJsaWMgY29uc3QgdWludCByZWdpc3RlcmVkOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmln aHRhbmdsZWJyYWNrZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0YW5nbGVicmFja2V0 OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHRhcnJvdyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmln aHRhcnJvdzsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JpZ2h0Y2FyZXQiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHJpZ2h0Y2FyZXQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodGRvdWJsZXF1b3RlbWFyayIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHRkb3VibGVxdW90ZW1hcms7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9yaWdodG1pZGRsZWN1cmx5YnJhY2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0bWlk ZGxlY3VybHlicmFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3JpZ2h0bWlkZGxlc3VtbWF0aW9uIildCisr CQlwdWJsaWMgY29uc3QgdWludCByaWdodG1pZGRsZXN1bW1hdGlvbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3JpZ2h0b3BlbnRyaWFuZ2xlIildCisrCQlwdWJsaWMgY29uc3QgdWludCByaWdodG9wZW50cmlh bmdsZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3JpZ2h0cG9pbnRlciIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgcmlnaHRwb2ludGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfcmlnaHRzaG9lIildCisrCQlwdWJsaWMg Y29uc3QgdWludCByaWdodHNob2U7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9yaWdodHNpbmdsZXF1b3RlbWFy ayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHRzaW5nbGVxdW90ZW1hcms7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9yaWdodHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHJpZ2h0dDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3JpZ2h0dGFjayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgcmlnaHR0YWNrOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgczsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3NhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc2Fib3ZlZG90OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfc2FjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzYWN1dGU7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9zY2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNjYXJvbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3NjZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzY2VkaWxsYTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3NjaHdhIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzY2h3YTsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3NjaXJjdW1mbGV4IildCisrCQlwdWJsaWMgY29uc3QgdWludCBzY2lyY3VtZmxleDsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3NjcmlwdF9zd2l0Y2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNjcmlw dF9zd2l0Y2g7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zZWNvbmRzIildCisrCQlwdWJsaWMgY29uc3QgdWlu dCBzZWNvbmRzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2VjdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVp bnQgc2VjdGlvbjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NlbWljb2xvbiIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgc2VtaWNvbG9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2VtaXZvaWNlZHNvdW5kIildCisrCQlw dWJsaWMgY29uc3QgdWludCBzZW1pdm9pY2Vkc291bmQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zZXZlbmVp Z2h0aHMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNldmVuZWlnaHRoczsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3NldmVuc3Vic2NyaXB0IildCisrCQlwdWJsaWMgY29uc3QgdWludCBzZXZlbnN1YnNjcmlw dDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3NldmVuc3VwZXJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHNldmVuc3VwZXJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9zaWduYXR1cmVtYXJrIildCisrCQlwdWJs aWMgY29uc3QgdWludCBzaWduYXR1cmVtYXJrOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2lnbmlmYmxhbmsi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNpZ25pZmJsYW5rOworKwkJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2lt aWxhcmVxdWFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzaW1pbGFyZXF1YWw7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9zaW5nbGVsb3dxdW90ZW1hcmsiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNpbmds ZWxvd3F1b3RlbWFyazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3NpeHN1YnNjcmlwdCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgc2l4c3Vic2NyaXB0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2l4c3VwZXJpb3IiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHNpeHN1cGVyaW9yOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc2xhc2gi KV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHNsYXNoOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfc29saWRkaWFt b25kIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzb2xpZGRpYW1vbmQ7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV9zcGFjZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc3BhY2U7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV9z cXVhcmVyb290IildCisrCQlwdWJsaWMgY29uc3QgdWludCBzcXVhcmVyb290OworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9LRVlfc3NoYXJwIildCisrCQlwdWJsaWMgY29uc3QgdWludCBzc2hhcnA7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV9zdGVybGluZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc3Rlcmxpbmc7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV9zdHJpY3RlcSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgc3RyaWN0ZXE7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV90IildCisrCQlwdWJsaWMgY29uc3QgdWludCB0OworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf dGFib3ZlZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCB0YWJvdmVkb3Q7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV90Y2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRjYXJvbjsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3RjZWRpbGxhIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0Y2VkaWxsYTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3RlbGVwaG9uZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGVsZXBob25lOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfdGVsZXBob25lcmVjb3JkZXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRl bGVwaG9uZXJlY29yZGVyOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGhlcmVmb3JlIildCisrCQlwdWJsaWMg Y29uc3QgdWludCB0aGVyZWZvcmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90aGluc3BhY2UiKV0KKysJCXB1 YmxpYyBjb25zdCB1aW50IHRoaW5zcGFjZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Rob3JuIildCisrCQlw dWJsaWMgY29uc3QgdWludCB0aG9ybjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RocmVlZWlnaHRocyIpXQor KwkJcHVibGljIGNvbnN0IHVpbnQgdGhyZWVlaWdodGhzOworKwkJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdGhyZWVm aWZ0aHMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRocmVlZmlmdGhzOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfdGhyZWVxdWFydGVycyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdGhyZWVxdWFydGVyczsK KysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1l ID0gIkNMVVRURVJfS0VZX3RocmVlc3Vic2NyaXB0IildCisrCQlwdWJsaWMgY29uc3QgdWludCB0 aHJlZXN1YnNjcmlwdDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RocmVlc3VwZXJpb3IiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHRocmVlc3VwZXJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90aW50ZWdyYWwiKV0K KysJCXB1YmxpYyBjb25zdCB1aW50IHRpbnRlZ3JhbDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RvcGludGVn cmFsIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0b3BpbnRlZ3JhbDsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3RvcGxlZnRwYXJlbnMiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRvcGxlZnRwYXJlbnM7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV90b3BsZWZ0cmFkaWNhbCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdG9w bGVmdHJhZGljYWw7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90b3BsZWZ0c3FicmFja2V0IildCisrCQlwdWJs aWMgY29uc3QgdWludCB0b3BsZWZ0c3FicmFja2V0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdG9wbGVmdHN1 bW1hdGlvbiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdG9wbGVmdHN1bW1hdGlvbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3RvcHJpZ2h0cGFyZW5zIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0b3ByaWdo dHBhcmVuczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RvcHJpZ2h0c3FicmFja2V0IildCisrCQlwdWJsaWMg Y29uc3QgdWludCB0b3ByaWdodHNxYnJhY2tldDsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3RvcHJpZ2h0c3Vt bWF0aW9uIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0b3ByaWdodHN1bW1hdGlvbjsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3RvcHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRvcHQ7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV90b3B2ZXJ0c3VtbWF0aW9uY29ubmVjdG9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCB0 b3B2ZXJ0c3VtbWF0aW9uY29ubmVjdG9yOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdHJhZGVtYXJrIildCisr CQlwdWJsaWMgY29uc3QgdWludCB0cmFkZW1hcms7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90cmFkZW1hcmtp bmNpcmNsZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdHJhZGVtYXJraW5jaXJjbGU7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV90c2xhc2giKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHRzbGFzaDsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3R3b2ZpZnRocyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdHdvZmlmdGhzOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfdHdvc3Vic2NyaXB0IildCisrCQlwdWJsaWMgY29uc3QgdWludCB0d29z dWJzY3JpcHQ7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90d29zdXBlcmlvciIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgdHdvc3VwZXJpb3I7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV90d290aGlyZHMiKV0KKysJCXB1Ymxp YyBjb25zdCB1aW50IHR3b3RoaXJkczsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3UiKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91YWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1 aW50IHVhY3V0ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3ViZWxvd2RvdCIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgdWJlbG93ZG90OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWJyZXZlIildCisrCQlwdWJsaWMgY29u c3QgdWludCB1YnJldmU7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91Y2lyY3VtZmxleCIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgdWNpcmN1bWZsZXg7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91ZGlhZXJlc2lzIildCisr CQlwdWJsaWMgY29uc3QgdWludCB1ZGlhZXJlc2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWRvdWJsZWFj dXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1ZG91YmxlYWN1dGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV91Z3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVncmF2ZTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3Vob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1aG9vazsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vo b3JuIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1aG9ybjsKKysJCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3Vob3Ju YWN1dGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHVob3JuYWN1dGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV91aG9ybmJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCB1aG9ybmJlbG93ZG90Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfdWhvcm5ncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdWhvcm5n cmF2ZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNuYW1lID0gIkNMVVRURVJfS0VZX3Vob3JuaG9vayIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQg dWhvcm5ob29rOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdWhvcm50aWxkZSIpXQorKwkJcHVibGljIGNvbnN0 IHVpbnQgdWhvcm50aWxkZTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VtYWNyb24iKV0KKysJCXB1YmxpYyBj b25zdCB1aW50IHVtYWNyb247CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91bmRlcmJhciIpXQorKwkJcHVibGlj IGNvbnN0IHVpbnQgdW5kZXJiYXI7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91bmRlcnNjb3JlIildCisrCQlw dWJsaWMgY29uc3QgdWludCB1bmRlcnNjb3JlOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdW5pb24iKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHVuaW9uOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdW9nb25layIpXQorKwkJ cHVibGljIGNvbnN0IHVpbnQgdW9nb25lazsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3VwYXJyb3ciKV0KKysJ CXB1YmxpYyBjb25zdCB1aW50IHVwYXJyb3c7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91cGNhcmV0IildCisr CQlwdWJsaWMgY29uc3QgdWludCB1cGNhcmV0OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdXBsZWZ0Y29ybmVy IildCisrCQlwdWJsaWMgY29uc3QgdWludCB1cGxlZnRjb3JuZXI7CisrCQlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV91 cHJpZ2h0Y29ybmVyIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1cHJpZ2h0Y29ybmVyOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfdXBzaG9lIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1cHNob2U7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV91cHN0aWxlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1cHN0aWxlOworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfdXB0YWNrIildCisrCQlwdWJsaWMgY29uc3QgdWludCB1cHRhY2s7CisrCQlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJD TFVUVEVSX0tFWV91cmluZyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdXJpbmc7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVU VEVSX0tFWV91dGlsZGUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHV0aWxkZTsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3YiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHY7CisrCQlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tFWV92YXJp YXRpb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHZhcmlhdGlvbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3ZlcnRiYXIiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHZlcnRiYXI7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV92ZXJ0Y29ubmVjdG9yIildCisrCQlwdWJsaWMgY29uc3QgdWludCB2ZXJ0Y29ubmVjdG9yOwor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfdm9pY2Vkc291bmQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHZvaWNl ZHNvdW5kOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlfdnQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHZ0Owor KwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUg PSAiQ0xVVFRFUl9LRVlfdyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgdzsKKysJCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJf S0VZX3dhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgd2FjdXRlOworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfd2NpcmN1bWZsZXgiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHdjaXJjdW1mbGV4OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfd2RpYWVyZXNpcyIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgd2RpYWVyZXNp czsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gIkNMVVRURVJfS0VZX3dncmF2ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgd2dyYXZl OworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25h bWUgPSAiQ0xVVFRFUl9LRVlfeCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgeDsKKysJCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRU RVJfS0VZX3hhYm92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgeGFib3ZlZG90OworKwkJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAi Q0xVVFRFUl9LRVlfeSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgeTsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3lhY3V0ZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgeWFjdXRlOworKwkJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9LRVlf eWJlbG93ZG90IildCisrCQlwdWJsaWMgY29uc3QgdWludCB5YmVsb3dkb3Q7CisrCQlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVS X0tFWV95Y2lyY3VtZmxleCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgeWNpcmN1bWZsZXg7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV95ZGlhZXJlc2lzIildCisrCQlwdWJsaWMgY29uc3QgdWludCB5ZGlhZXJl c2lzOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9LRVlfeWVuIildCisrCQlwdWJsaWMgY29uc3QgdWludCB5ZW47Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV95Z3JhdmUiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHlncmF2ZTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0g IkNMVVRURVJfS0VZX3lob29rIildCisrCQlwdWJsaWMgY29uc3QgdWludCB5aG9vazsKKysJCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNM VVRURVJfS0VZX3l0aWxkZSIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgeXRpbGRlOworKwkJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xV VFRFUl9LRVlfeiIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgejsKKysJCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3ph Ym92ZWRvdCIpXQorKwkJcHVibGljIGNvbnN0IHVpbnQgemFib3ZlZG90OworKwkJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9L RVlfemFjdXRlIildCisrCQlwdWJsaWMgY29uc3QgdWludCB6YWN1dGU7CisrCQlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9ICJDTFVUVEVSX0tF WV96Y2Fyb24iKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHpjYXJvbjsKKysJCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gIkNMVVRURVJfS0VZ X3plcm9zdWJzY3JpcHQiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHplcm9zdWJzY3JpcHQ7Cisr CQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjbmFtZSA9 ICJDTFVUVEVSX0tFWV96ZXJvc3VwZXJpb3IiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50IHplcm9z dXBlcmlvcjsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNuYW1lID0gIkNMVVRURVJfS0VZX3pzdHJva2UiKV0KKysJCXB1YmxpYyBjb25zdCB1aW50 IHpzdHJva2U7CisrCX0KKysJbmFtZXNwYWNlIFRocmVhZHMgeworKwkJbmFtZXNwYWNlIElkbGUg eworKwkJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNu YW1lID0gImNsdXR0ZXJfdGhyZWFkc19hZGRfaWRsZSIpXQorKwkJCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjQiKV0KKysJCQlwdWJsaWMgc3RhdGljIHVpbnQgYWRkIChHTGliLlNvdXJjZUZ1bmMgZnVu Yyk7CisrCQkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiY2x1dHRlcl90aHJlYWRzX2FkZF9pZGxlX2Z1bGwiKV0KKysJCQlbVmVyc2lvbiAo c2luY2UgPSAiMC40IildCisrCQkJcHVibGljIHN0YXRpYyB1aW50IGFkZF9mdWxsIChpbnQgcHJp b3JpdHksIG93bmVkIEdMaWIuU291cmNlRnVuYyBmdW5jKTsKKysJCX0KKysJCW5hbWVzcGFjZSBU aW1lb3V0IHsKKysJCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjbmFtZSA9ICJjbHV0dGVyX3RocmVhZHNfYWRkX3RpbWVvdXQiKV0KKysJCQlbVmVyc2lv biAoc2luY2UgPSAiMC40IildCisrCQkJcHVibGljIHN0YXRpYyB1aW50IGFkZCAodWludCBpbnRl cnZhbCwgR0xpYi5Tb3VyY2VGdW5jIGZ1bmMpOworKwkJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNuYW1lID0gImNsdXR0ZXJfdGhyZWFkc19hZGRfdGlt ZW91dF9mdWxsIildCisrCQkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJCXB1YmxpYyBz dGF0aWMgdWludCBhZGRfZnVsbCAoaW50IHByaW9yaXR5LCB1aW50IGludGVydmFsLCBvd25lZCBH TGliLlNvdXJjZUZ1bmMgZnVuYyk7CisrCQl9CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ CXB1YmxpYyBzdGF0aWMgdWludCBhZGRfcmVwYWludF9mdW5jIChvd25lZCBHTGliLlNvdXJjZUZ1 bmMgZnVuYyk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgc3RhdGljIHVp bnQgYWRkX3JlcGFpbnRfZnVuY19mdWxsIChDbHV0dGVyLlJlcGFpbnRGbGFncyBmbGFncywgb3du ZWQgR0xpYi5Tb3VyY2VGdW5jIGZ1bmMpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgc3RhdGljIHZvaWQgcmVtb3ZlX3JlcGFpbnRfZnVuYyAodWludCBoYW5kbGVfaWQpOwor Kwl9CisrCW5hbWVzcGFjZSBWYWx1ZSB7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgc3RhdGljIENsdXR0ZXIuUGFpbnROb2RlIGR1cF9wYWludF9ub2RlIChHTGliLlZhbHVl IHZhbHVlKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93 bmVkIENsdXR0ZXIuQ29sb3I/IGdldF9jb2xvciAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5QYWlu dE5vZGUgZ2V0X3BhaW50X25vZGUgKEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW0NDb2RlIChhcnJh eV9sZW5ndGhfcG9zID0gMS4xLCBhcnJheV9sZW5ndGhfdHlwZSA9ICJnc2l6ZSIsIGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBmbG9hdFtdIGdldF9zaGFkZXJfZmxvYXQg KEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW0NDb2RlIChhcnJheV9sZW5ndGhfcG9zID0gMS4xLCBh cnJheV9sZW5ndGhfdHlwZSA9ICJnc2l6ZSIsIGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0 aWMgdW5vd25lZCBpbnRbXSBnZXRfc2hhZGVyX2ludCAoR0xpYi5WYWx1ZSB2YWx1ZSk7CisrCQlb Q0NvZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAxLjEsIGFycmF5X2xlbmd0aF90eXBlID0gImdzaXpl IiwgY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB1bm93bmVkIGZsb2F0W10gZ2V0X3No YWRlcl9tYXRyaXggKEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44Iild CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5Vbml0cz8gZ2V0X3VuaXRzIChHTGli LlZhbHVlIHZhbHVlKTsKKysJCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRp YyB2b2lkIHNldF9jb2xvciAoR0xpYi5WYWx1ZSB2YWx1ZSwgQ2x1dHRlci5Db2xvciBjb2xvcik7 CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X3Bh aW50X25vZGUgKEdMaWIuVmFsdWUgdmFsdWUsIENsdXR0ZXIuUGFpbnROb2RlPyBub2RlKTsKKysJ CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyB2b2lkIHNldF9zaGFkZXJf ZmxvYXQgKEdMaWIuVmFsdWUgdmFsdWUsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gInNp emUiLCBhcnJheV9sZW5ndGhfcG9zID0gMS41KV0gZmxvYXRbXSBmbG9hdHMpOworKwkJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQgc2V0X3NoYWRlcl9pbnQgKEdM aWIuVmFsdWUgdmFsdWUsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gInNpemUiLCBhcnJh eV9sZW5ndGhfcG9zID0gMS41KV0gaW50W10gaW50cyk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgi KV0KKysJCXB1YmxpYyBzdGF0aWMgdm9pZCBzZXRfc2hhZGVyX21hdHJpeCAoR0xpYi5WYWx1ZSB2 YWx1ZSwgW0NDb2RlIChhcnJheV9sZW5ndGhfY25hbWUgPSAic2l6ZSIsIGFycmF5X2xlbmd0aF9w b3MgPSAxLjUpXSBmbG9hdFtdIG1hdHJpeCk7CisrCQlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJ CXB1YmxpYyBzdGF0aWMgdm9pZCBzZXRfdW5pdHMgKEdMaWIuVmFsdWUgdmFsdWUsIENsdXR0ZXIu VW5pdHMgdW5pdHMpOworKwkJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHN0YXRp YyB2b2lkIHRha2VfcGFpbnRfbm9kZSAoR0xpYi5WYWx1ZSB2YWx1ZSwgQ2x1dHRlci5QYWludE5v ZGU/IG5vZGUpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgQWN0aW9uIDog Q2x1dHRlci5BY3Rvck1ldGEgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0g ZmFsc2UpXQorKwkJcHJvdGVjdGVkIEFjdGlvbiAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYWN0b3Jf Z2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIEFjdG9yIDogR0xpYi5Jbml0aWFsbHlVbm93 bmVkLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5Db250YWlu ZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlwdWJsaWMgdWludDMyIGZsYWdzOworKwkJW0ND b2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyBBY3RvciAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjQiKV0KKysJCXB1YmxpYyB2b2lkIGFkZF9hY3Rpb24gKENsdXR0ZXIuQWN0aW9uIGFjdGlvbik7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBhZGRfYWN0aW9u X3dpdGhfbmFtZSAoc3RyaW5nIG5hbWUsIENsdXR0ZXIuQWN0aW9uIGFjdGlvbik7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgYWRkX2NoaWxkIChDbHV0dGVy LkFjdG9yIGNoaWxkKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2 b2lkIGFkZF9jb25zdHJhaW50IChDbHV0dGVyLkNvbnN0cmFpbnQgY29uc3RyYWludCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBhZGRfY29uc3RyYWludF93 aXRoX25hbWUgKHN0cmluZyBuYW1lLCBDbHV0dGVyLkNvbnN0cmFpbnQgY29uc3RyYWludCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBhZGRfZWZmZWN0IChD bHV0dGVyLkVmZmVjdCBlZmZlY3QpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJ cHVibGljIHZvaWQgYWRkX2VmZmVjdF93aXRoX25hbWUgKHN0cmluZyBuYW1lLCBDbHV0dGVyLkVm ZmVjdCBlZmZlY3QpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2 b2lkIGFkZF90cmFuc2l0aW9uIChzdHJpbmcgbmFtZSwgQ2x1dHRlci5UcmFuc2l0aW9uIHRyYW5z aXRpb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZpcnR1YWwg dm9pZCBhbGxvY2F0ZSAoQ2x1dHRlci5BY3RvckJveCBib3gsIENsdXR0ZXIuQWxsb2NhdGlvbkZs YWdzIGZsYWdzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lk IGFsbG9jYXRlX2FsaWduX2ZpbGwgKENsdXR0ZXIuQWN0b3JCb3ggYm94LCBkb3VibGUgeF9hbGln biwgZG91YmxlIHlfYWxpZ24sIGJvb2wgeF9maWxsLCBib29sIHlfZmlsbCwgQ2x1dHRlci5BbGxv Y2F0aW9uRmxhZ3MgZmxhZ3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIHZvaWQgYWxsb2NhdGVfYXZhaWxhYmxlX3NpemUgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0 IGF2YWlsYWJsZV93aWR0aCwgZmxvYXQgYXZhaWxhYmxlX2hlaWdodCwgQ2x1dHRlci5BbGxvY2F0 aW9uRmxhZ3MgZmxhZ3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGlj IHZvaWQgYWxsb2NhdGVfcHJlZmVycmVkX3NpemUgKENsdXR0ZXIuQWxsb2NhdGlvbkZsYWdzIGZs YWdzKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9 ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFuaW1h dGlvbiBhbmltYXRlICh1bG9uZyBtb2RlLCB1aW50IGR1cmF0aW9uLCAuLi4pOworKwkJW1ZlcnNp b24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQW5pbWF0aW9uIGFuaW1hdGVfd2l0 aF90aW1lbGluZSAodWxvbmcgbW9kZSwgQ2x1dHRlci5UaW1lbGluZSB0aW1lbGluZSwgLi4uKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIGFwcGx5X3JlbGF0 aXZlX3RyYW5zZm9ybV90b19wb2ludCAoQ2x1dHRlci5BY3Rvcj8gYW5jZXN0b3IsIEdyYXBoZW5l LlBvaW50M0QgcG9pbnQsIG91dCB1bm93bmVkIEdyYXBoZW5lLlBvaW50M0QgdmVydGV4KTsKKysJ CVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGFwcGx5X3RyYW5zZm9ybSAocmVm IENsdXR0ZXIuTWF0cml4IG1hdHJpeCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisr CQlwdWJsaWMgdm9pZCBhcHBseV90cmFuc2Zvcm1fdG9fcG9pbnQgKEdyYXBoZW5lLlBvaW50M0Qg cG9pbnQsIG91dCB1bm93bmVkIEdyYXBoZW5lLlBvaW50M0QgdmVydGV4KTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjI0IildCisrCQlwdWJsaWMgdm9pZCBiaW5kX21vZGVsIChHTGliLkxpc3RN b2RlbD8gbW9kZWwsIG93bmVkIENsdXR0ZXIuQWN0b3JDcmVhdGVDaGlsZEZ1bmMgY3JlYXRlX2No aWxkX2Z1bmMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQg Y2xlYXJfYWN0aW9ucyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1Ymxp YyB2b2lkIGNsZWFyX2NvbnN0cmFpbnRzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIp XQorKwkJcHVibGljIHZvaWQgY2xlYXJfZWZmZWN0cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjQiKV0KKysJCXB1YmxpYyBib29sIGNvbnRhaW5zIChDbHV0dGVyLkFjdG9yIGRlc2NlbmRh bnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgY29udGlu dWVfcGFpbnQgKENsdXR0ZXIuUGFpbnRDb250ZXh0IHBhaW50X2NvbnRleHQpOworKwkJcHVibGlj IHZvaWQgY29udGludWVfcGljayAoQ2x1dHRlci5QaWNrQ29udGV4dCBwaWNrX2NvbnRleHQpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIFBhbmdvLkNvbnRleHQgY3Jl YXRlX3BhbmdvX2NvbnRleHQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlw dWJsaWMgUGFuZ28uTGF5b3V0IGNyZWF0ZV9wYW5nb19sYXlvdXQgKHN0cmluZz8gdGV4dCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgZGVzdHJveV9hbGxf Y2hpbGRyZW4gKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfYWN0b3JfZXZlbnQiKV0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBib29sIGVtaXRfZXZlbnQg KENsdXR0ZXIuRXZlbnQgZXZlbnQsIGJvb2wgY2FwdHVyZSk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMC40IildCisrCQlwdWJsaWMgdm9pZCBnZXRfYWJzX2FsbG9jYXRpb25fdmVydGljZXMgKFtD Q29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBHcmFwaGVuZS5Qb2ludDNEIHZlcnRzWzRdKTsK KysJCXB1YmxpYyB2aXJ0dWFsIHVub3duZWQgQXRrLk9iamVjdCBnZXRfYWNjZXNzaWJsZSAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIu QWN0aW9uIGdldF9hY3Rpb24gKHN0cmluZyBuYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjQiKV0KKysJCXB1YmxpYyBHTGliLkxpc3Q8d2VhayBDbHV0dGVyLkFjdGlvbj4gZ2V0X2FjdGlv bnMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgQ2x1dHRlci5B Y3RvckJveCBnZXRfYWxsb2NhdGlvbl9ib3ggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42 IildCisrCQlwdWJsaWMgdm9pZCBnZXRfYWxsb2NhdGlvbl92ZXJ0aWNlcyAoQ2x1dHRlci5BY3Rv cj8gYW5jZXN0b3IsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBHcmFwaGVuZS5Qb2lu dDNEIHZlcnRzWzRdKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5HcmF2 aXR5IGdldF9hbmNob3JfcG9pbnRfZ3Jhdml0eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBnZXRfYmFja2dyb3VuZF9jb2xvciAoKTsK KysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9nZXRfYWN0b3JfYnlfZ2lkIildCisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS44Iiwgc2luY2Ug PSAiMC42IildCisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfYnlf Z2lkICh1aW50MzIgaWRfKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJs aWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9jaGlsZF9hdF9pbmRleCAoaW50IGluZGV4Xyk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIENsdXR0ZXIuTWF0cml4 IGdldF9jaGlsZF90cmFuc2Zvcm0gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIEdMaWIuTGlzdDx3ZWFrIENsdXR0ZXIuQWN0b3I+IGdldF9jaGlsZHJlbiAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9jbGlwIChv dXQgZmxvYXQgeG9mZiwgb3V0IGZsb2F0IHlvZmYsIG91dCBmbG9hdCB3aWR0aCwgb3V0IGZsb2F0 IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgYm9vbCBn ZXRfY2xpcF90b19hbGxvY2F0aW9uICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQor KwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5Db25zdHJhaW50IGdldF9jb25zdHJhaW50IChzdHJp bmcgbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgR0xpYi5M aXN0PHdlYWsgQ2x1dHRlci5Db25zdHJhaW50PiBnZXRfY29uc3RyYWludHMgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5Db250ZW50 IGdldF9jb250ZW50ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyBDbHV0dGVyLkFjdG9yQm94IGdldF9jb250ZW50X2JveCAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5Db250ZW50R3Jhdml0eSBnZXRfY29udGVu dF9ncmF2aXR5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBD bHV0dGVyLkNvbnRlbnRSZXBlYXQgZ2V0X2NvbnRlbnRfcmVwZWF0ICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9jb250ZW50X3NjYWxpbmdfZmls dGVycyAob3V0IENsdXR0ZXIuU2NhbGluZ0ZpbHRlciBtaW5fZmlsdGVyLCBvdXQgQ2x1dHRlci5T Y2FsaW5nRmlsdGVyIG1hZ19maWx0ZXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuUGFpbnRWb2x1bWUgZ2V0X2RlZmF1bHRfcGFpbnRf dm9sdW1lICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3Np bmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfZGVwdGggKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVpbnQgZ2V0X2Vhc2luZ19kZWxheSAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdWludCBnZXRfZWFzaW5n X2R1cmF0aW9uICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBD bHV0dGVyLkFuaW1hdGlvbk1vZGUgZ2V0X2Vhc2luZ19tb2RlICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuNCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5FZmZlY3QgZ2V0X2VmZmVj dCAoc3RyaW5nIG5hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGlj IEdMaWIuTGlzdDx3ZWFrIENsdXR0ZXIuRWZmZWN0PiBnZXRfZWZmZWN0cyAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdl dF9maXJzdF9jaGlsZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1Ymxp YyBib29sIGdldF9maXhlZF9wb3NpdGlvbl9zZXQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckZsYWdzIGdldF9mbGFncyAoKTsKKysJCVtD Q29kZSAoY25hbWUgPSAiY2x1dHRlcl9hY3Rvcl9oYXNfcG9pbnRlciIpXQorKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2hhc19wb2ludGVyICgpOworKwkJ cHVibGljIGZsb2F0IGdldF9oZWlnaHQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfbGFzdF9jaGlsZCAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkxh eW91dE1hbmFnZXIgZ2V0X2xheW91dF9tYW5hZ2VyICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9tYXJnaW4gKENsdXR0ZXIuTWFyZ2luIG1hcmdp bik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9t YXJnaW5fYm90dG9tICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyBmbG9hdCBnZXRfbWFyZ2luX2xlZnQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIGZsb2F0IGdldF9tYXJnaW5fcmlnaHQgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9tYXJnaW5fdG9wICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X25fY2hpbGRyZW4gKCk7 CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X25hbWUgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfbmV4dF9z aWJsaW5nICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIENsdXR0 ZXIuT2Zmc2NyZWVuUmVkaXJlY3QgZ2V0X29mZnNjcmVlbl9yZWRpcmVjdCAoKTsKKysJCXB1Ymxp YyB1aW50OCBnZXRfb3BhY2l0eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIyIildCisr CQlwdWJsaWMgaW50IGdldF9vcGFjaXR5X292ZXJyaWRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuNiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3BhaW50X2JveCAob3V0IENsdXR0ZXIuQWN0 b3JCb3ggYm94KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB1aW50 OCBnZXRfcGFpbnRfb3BhY2l0eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJ CXB1YmxpYyBib29sIGdldF9wYWludF92aXNpYmlsaXR5ICgpOworKwkJW05vV3JhcHBlcl0KKysJ CXB1YmxpYyB2aXJ0dWFsIGJvb2wgZ2V0X3BhaW50X3ZvbHVtZSAoQ2x1dHRlci5QYWludFZvbHVt ZSB2b2x1bWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVub3du ZWQgUGFuZ28uQ29udGV4dCBnZXRfcGFuZ29fY29udGV4dCAoKTsKKysJCXB1YmxpYyB1bm93bmVk IENsdXR0ZXIuQWN0b3I/IGdldF9wYXJlbnQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3Bpdm90X3BvaW50IChvdXQgZmxvYXQgcGl2b3RfeCwg b3V0IGZsb2F0IHBpdm90X3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1 YmxpYyBmbG9hdCBnZXRfcGl2b3RfcG9pbnRfeiAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjYiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9wb3NpdGlvbiAob3V0IGZsb2F0IHgsIG91dCBmbG9h dCB5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHZv aWQgZ2V0X3ByZWZlcnJlZF9oZWlnaHQgKGZsb2F0IGZvcl93aWR0aCwgb3V0IGZsb2F0IG1pbl9o ZWlnaHRfcCwgb3V0IGZsb2F0IG5hdHVyYWxfaGVpZ2h0X3ApOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3ByZWZlcnJlZF9zaXplIChvdXQgZmxvYXQg bWluX3dpZHRoX3AsIG91dCBmbG9hdCBtaW5faGVpZ2h0X3AsIG91dCBmbG9hdCBuYXR1cmFsX3dp ZHRoX3AsIG91dCBmbG9hdCBuYXR1cmFsX2hlaWdodF9wKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgZ2V0X3ByZWZlcnJlZF93aWR0aCAoZmxv YXQgZm9yX2hlaWdodCwgb3V0IGZsb2F0IG1pbl93aWR0aF9wLCBvdXQgZmxvYXQgbmF0dXJhbF93 aWR0aF9wKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25l ZCBDbHV0dGVyLkFjdG9yIGdldF9wcmV2aW91c19zaWJsaW5nICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuNiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3JlYWN0aXZlICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIENsdXR0ZXIuUmVxdWVzdE1vZGUgZ2V0X3Jl cXVlc3RfbW9kZSAoKTsKKysJCXB1YmxpYyBib29sIGdldF9yZXNvdXJjZV9zY2FsZSAob3V0IGZs b2F0IHJlc291cmNlX3NjYWxlKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgZG91Ymxl IGdldF9yb3RhdGlvbiAoQ2x1dHRlci5Sb3RhdGVBeGlzIGF4aXMsIG91dCBmbG9hdCB4LCBvdXQg ZmxvYXQgeSwgb3V0IGZsb2F0IHopOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJ CXB1YmxpYyBkb3VibGUgZ2V0X3JvdGF0aW9uX2FuZ2xlIChDbHV0dGVyLlJvdGF0ZUF4aXMgYXhp cyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgdm9pZCBnZXRfc2Nh bGUgKG91dCBkb3VibGUgc2NhbGVfeCwgb3V0IGRvdWJsZSBzY2FsZV95KTsKKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgdm9pZCBnZXRfc2NhbGVfY2VudGVyIChvdXQgZmxvYXQgY2VudGVy X3gsIG91dCBmbG9hdCBjZW50ZXJfeSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUs IGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIENs dXR0ZXIuR3Jhdml0eSBnZXRfc2NhbGVfZ3Jhdml0eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEyIildCisrCQlwdWJsaWMgZG91YmxlIGdldF9zY2FsZV96ICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZvaWQgZ2V0X3NpemUgKG91dCBmbG9hdCB3aWR0 aCwgb3V0IGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlw dWJsaWMgdW5vd25lZCBDbHV0dGVyLlN0YWdlIGdldF9zdGFnZSAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlRleHREaXJlY3Rpb24gZ2V0X3RleHRf ZGlyZWN0aW9uICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBD bHV0dGVyLk1hdHJpeCBnZXRfdHJhbnNmb3JtICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu NiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5QYWludFZvbHVtZSBnZXRfdHJhbnNmb3Jt ZWRfcGFpbnRfdm9sdW1lIChDbHV0dGVyLkFjdG9yIHJlbGF0aXZlX3RvX2FuY2VzdG9yKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGdldF90cmFuc2Zvcm1l ZF9wb3NpdGlvbiAob3V0IGZsb2F0IHgsIG91dCBmbG9hdCB5KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIGdldF90cmFuc2Zvcm1lZF9zaXplIChvdXQgZmxv YXQgd2lkdGgsIG91dCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuVHJhbnNpdGlvbiBnZXRfdHJhbnNpdGlvbiAo c3RyaW5nIG5hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2 b2lkIGdldF90cmFuc2xhdGlvbiAob3V0IGZsb2F0IHRyYW5zbGF0ZV94LCBvdXQgZmxvYXQgdHJh bnNsYXRlX3ksIG91dCBmbG9hdCB0cmFuc2xhdGVfeik7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3dp ZHRoICgpOworKwkJcHVibGljIGZsb2F0IGdldF94ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yQWxpZ24gZ2V0X3hfYWxpZ24gKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3hfZXhwYW5k ICgpOworKwkJcHVibGljIGZsb2F0IGdldF95ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yQWxpZ24gZ2V0X3lfYWxpZ24gKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3lfZXhwYW5kICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfel9w b3NpdGlvbiAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5HcmF2aXR5 IGdldF96X3JvdGF0aW9uX2dyYXZpdHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgdm9pZCBncmFiX2tleV9mb2N1cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBoYXNfYWN0aW9ucyAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBib29sIGhhc19hbGxvY2F0aW9uICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBib29sIGhhc19jb25zdHJhaW50cyAo KTsKKysJCXB1YmxpYyBib29sIGhhc19kYW1hZ2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIGJvb2wgaGFzX2VmZmVjdHMgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS40IildCisrCQlwdWJsaWMgYm9vbCBoYXNfa2V5X2ZvY3VzICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyBib29sIGhhc19tYXBwZWRfY2xvbmVzICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgYm9vbCBo YXNfb3ZlcmxhcHMgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBo aWRlX2FsbCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9p ZCBpbnNlcnRfY2hpbGRfYWJvdmUgKENsdXR0ZXIuQWN0b3IgY2hpbGQsIENsdXR0ZXIuQWN0b3I/ IHNpYmxpbmcpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lk IGluc2VydF9jaGlsZF9hdF9pbmRleCAoQ2x1dHRlci5BY3RvciBjaGlsZCwgaW50IGluZGV4Xyk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgaW5zZXJ0X2No aWxkX2JlbG93IChDbHV0dGVyLkFjdG9yIGNoaWxkLCBDbHV0dGVyLkFjdG9yPyBzaWJsaW5nKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIGlzX2luX2Nsb25l X3BhaW50ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJCXB1YmxpYyBib29s IGlzX21hcHBlZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI0IildCisrCQlwdWJsaWMg Ym9vbCBpc19yZWFsaXplZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1 YmxpYyBib29sIGlzX3JvdGF0ZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisr CQlwdWJsaWMgYm9vbCBpc19zY2FsZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIp XQorKwkJcHVibGljIGJvb2wgaXNfdmlzaWJsZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbWFwICgpOworKwkJW1ZlcnNpb24gKGRlcHJl Y2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjYiKV0K KysJCXB1YmxpYyB2b2lkIG1vdmVfYW5jaG9yX3BvaW50IChmbG9hdCBhbmNob3JfeCwgZmxvYXQg YW5jaG9yX3kpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3Np bmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIG1vdmVfYW5jaG9y X3BvaW50X2Zyb21fZ3Jhdml0eSAoQ2x1dHRlci5HcmF2aXR5IGdyYXZpdHkpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHZvaWQgbW92ZV9ieSAoZmxvYXQgZHgsIGZs b2F0IGR5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBu ZWVkc19leHBhbmQgKENsdXR0ZXIuT3JpZW50YXRpb24gb3JpZW50YXRpb24pOworKwkJW05vV3Jh cHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgcGFpbnRfbm9kZSAoQ2x1dHRlci5QYWludE5v ZGUgcm9vdCk7CisrCQlwdWJsaWMgdm9pZCBwaWNrX2JveCAoQ2x1dHRlci5QaWNrQ29udGV4dCBw aWNrX2NvbnRleHQsIENsdXR0ZXIuQWN0b3JCb3ggYm94KTsKKysJCXB1YmxpYyB2b2lkIHBvcF9p bnRlcm5hbCAoKTsKKysJCXB1YmxpYyB2b2lkIHB1c2hfaW50ZXJuYWwgKCk7CisrCQlwdWJsaWMg dm9pZCBxdWV1ZV9yZWRyYXcgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHZvaWQgcXVldWVfcmVkcmF3X3dpdGhfY2xpcCAoQ2Fpcm8uUmVjdGFuZ2xlSW50PyBj bGlwKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92 ZV9hY3Rpb24gKENsdXR0ZXIuQWN0aW9uIGFjdGlvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS40IildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfYWN0aW9uX2J5X25hbWUgKHN0cmluZyBuYW1l KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVf YWxsX2NoaWxkcmVuICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyB2b2lkIHJlbW92ZV9hbGxfdHJhbnNpdGlvbnMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2NoaWxkIChDbHV0dGVyLkFjdG9yIGNoaWxk KTsKKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9jbGlwICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2NvbnN0cmFpbnQgKENsdXR0ZXIuQ29uc3Ry YWludCBjb25zdHJhaW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1Ymxp YyB2b2lkIHJlbW92ZV9jb25zdHJhaW50X2J5X25hbWUgKHN0cmluZyBuYW1lKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9lZmZlY3QgKENsdXR0 ZXIuRWZmZWN0IGVmZmVjdCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJs aWMgdm9pZCByZW1vdmVfZWZmZWN0X2J5X25hbWUgKHN0cmluZyBuYW1lKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfdHJhbnNpdGlvbiAoc3Ry aW5nIG5hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lk IHJlcGxhY2VfY2hpbGQgKENsdXR0ZXIuQWN0b3Igb2xkX2NoaWxkLCBDbHV0dGVyLkFjdG9yIG5l d19jaGlsZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQg cmVzdG9yZV9lYXNpbmdfc3RhdGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIHZvaWQgc2F2ZV9lYXNpbmdfc3RhdGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2FsbG9jYXRpb24gKENsdXR0ZXIuQWN0b3JC b3ggYm94LCBDbHV0dGVyLkFsbG9jYXRpb25GbGFncyBmbGFncyk7CisrCQlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuNiIp XQorKwkJcHVibGljIHZvaWQgc2V0X2FuY2hvcl9wb2ludCAoZmxvYXQgYW5jaG9yX3gsIGZsb2F0 IGFuY2hvcl95KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdm9pZCBzZXRfYW5jaG9y X3BvaW50X2Zyb21fZ3Jhdml0eSAoQ2x1dHRlci5HcmF2aXR5IGdyYXZpdHkpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9iYWNrZ3JvdW5kX2NvbG9y IChDbHV0dGVyLkNvbG9yPyBjb2xvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIHZvaWQgc2V0X2NoaWxkX2Fib3ZlX3NpYmxpbmcgKENsdXR0ZXIuQWN0b3IgY2hp bGQsIENsdXR0ZXIuQWN0b3I/IHNpYmxpbmcpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9jaGlsZF9hdF9pbmRleCAoQ2x1dHRlci5BY3RvciBjaGls ZCwgaW50IGluZGV4Xyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHZvaWQgc2V0X2NoaWxkX2JlbG93X3NpYmxpbmcgKENsdXR0ZXIuQWN0b3IgY2hpbGQsIENsdXR0 ZXIuQWN0b3I/IHNpYmxpbmcpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF9jaGlsZF90cmFuc2Zvcm0gKENsdXR0ZXIuTWF0cml4PyB0cmFuc2Zvcm0p OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NsaXAg KGZsb2F0IHhvZmYsIGZsb2F0IHlvZmYsIGZsb2F0IHdpZHRoLCBmbG9hdCBoZWlnaHQpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NsaXBfdG9fYWxs b2NhdGlvbiAoYm9vbCBjbGlwX3NldCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIHZvaWQgc2V0X2NvbnRlbnQgKENsdXR0ZXIuQ29udGVudD8gY29udGVudCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NvbnRlbnRf Z3Jhdml0eSAoQ2x1dHRlci5Db250ZW50R3Jhdml0eSBncmF2aXR5KTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29udGVudF9yZXBlYXQgKENsdXR0 ZXIuQ29udGVudFJlcGVhdCByZXBlYXQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9jb250ZW50X3NjYWxpbmdfZmlsdGVycyAoQ2x1dHRlci5TY2Fs aW5nRmlsdGVyIG1pbl9maWx0ZXIsIENsdXR0ZXIuU2NhbGluZ0ZpbHRlciBtYWdfZmlsdGVyKTsK KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEy IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZGVwdGggKGZsb2F0IGRlcHRoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfZWFzaW5nX2RlbGF5ICh1aW50 IG1zZWNzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBz ZXRfZWFzaW5nX2R1cmF0aW9uICh1aW50IG1zZWNzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfZWFzaW5nX21vZGUgKENsdXR0ZXIuQW5pbWF0aW9u TW9kZSBtb2RlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9maXhlZF9wb3NpdGlvbl9zZXQgKGJvb2wgaXNfc2V0KTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9mbGFncyAoQ2x1dHRlci5BY3RvckZsYWdz IGZsYWdzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9oZWlnaHQgKGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIHZvaWQgc2V0X2xheW91dF9tYW5hZ2VyIChDbHV0dGVyLkxheW91dE1hbmFnZXI/ IG1hbmFnZXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9tYXJnaW4gKENsdXR0ZXIuTWFyZ2luIG1hcmdpbik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X21hcmdpbl9ib3R0b20gKGZsb2F0IG1hcmdp bik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X21h cmdpbl9sZWZ0IChmbG9hdCBtYXJnaW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9tYXJnaW5fcmlnaHQgKGZsb2F0IG1hcmdpbik7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X21hcmdpbl90b3AgKGZs b2F0IG1hcmdpbik7CisrCQlwdWJsaWMgdm9pZCBzZXRfbmFtZSAoc3RyaW5nIG5hbWUpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X29mZnNjcmVlbl9y ZWRpcmVjdCAoQ2x1dHRlci5PZmZzY3JlZW5SZWRpcmVjdCByZWRpcmVjdCk7CisrCQlwdWJsaWMg dm9pZCBzZXRfb3BhY2l0eSAodWludDggb3BhY2l0eSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfb3Bh Y2l0eV9vdmVycmlkZSAoaW50IG9wYWNpdHkpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9wYXJl bnQgKENsdXR0ZXIuQWN0b3IgcGFyZW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIild CisrCQlwdWJsaWMgdm9pZCBzZXRfcGl2b3RfcG9pbnQgKGZsb2F0IHBpdm90X3gsIGZsb2F0IHBp dm90X3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNl dF9waXZvdF9wb2ludF96IChmbG9hdCBwaXZvdF96KTsKKysJCXB1YmxpYyB2b2lkIHNldF9wb3Np dGlvbiAoZmxvYXQgeCwgZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisr CQlwdWJsaWMgdm9pZCBzZXRfcmVhY3RpdmUgKGJvb2wgcmVhY3RpdmUpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3JlcXVlc3RfbW9kZSAoQ2x1dHRl ci5SZXF1ZXN0TW9kZSBtb2RlKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBz ZXRfcm90YXRpb24gKENsdXR0ZXIuUm90YXRlQXhpcyBheGlzLCBkb3VibGUgYW5nbGUsIGZsb2F0 IHgsIGZsb2F0IHksIGZsb2F0IHopOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9yb3RhdGlvbl9hbmdsZSAoQ2x1dHRlci5Sb3RhdGVBeGlzIGF4aXMs IGRvdWJsZSBhbmdsZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMg dm9pZCBzZXRfc2NhbGUgKGRvdWJsZSBzY2FsZV94LCBkb3VibGUgc2NhbGVfeSk7CisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNl ID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3NjYWxlX2Z1bGwgKGRvdWJsZSBzY2FsZV94 LCBkb3VibGUgc2NhbGVfeSwgZmxvYXQgY2VudGVyX3gsIGZsb2F0IGNlbnRlcl95KTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfc2NhbGVfeiAoZG91 YmxlIHNjYWxlX3opOworKwkJcHVibGljIHZvaWQgc2V0X3NpemUgKGZsb2F0IHdpZHRoLCBmbG9h dCBoZWlnaHQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQg c2V0X3RleHRfZGlyZWN0aW9uIChDbHV0dGVyLlRleHREaXJlY3Rpb24gdGV4dF9kaXIpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF90cmFuc2Zvcm0g KENsdXR0ZXIuTWF0cml4PyB0cmFuc2Zvcm0pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIi KV0KKysJCXB1YmxpYyB2b2lkIHNldF90cmFuc2xhdGlvbiAoZmxvYXQgdHJhbnNsYXRlX3gsIGZs b2F0IHRyYW5zbGF0ZV95LCBmbG9hdCB0cmFuc2xhdGVfeik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMC4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfd2lkdGggKGZsb2F0IHdpZHRoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF94IChmbG9hdCB4KTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfeF9hbGln biAoQ2x1dHRlci5BY3RvckFsaWduIHhfYWxpZ24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF94X2V4cGFuZCAoYm9vbCBleHBhbmQpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3kgKGZsb2F0IHkpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF95X2FsaWdu IChDbHV0dGVyLkFjdG9yQWxpZ24geV9hbGlnbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3lfZXhwYW5kIChib29sIGV4cGFuZCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3pfcG9zaXRpb24gKGZs b2F0IHpfcG9zaXRpb24pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF96 X3JvdGF0aW9uX2Zyb21fZ3Jhdml0eSAoZG91YmxlIGFuZ2xlLCBDbHV0dGVyLkdyYXZpdHkgZ3Jh dml0eSk7CisrCQlwdWJsaWMgYm9vbCBzaG91bGRfcGlja19wYWludCAoKTsKKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAi MC4yIildCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHNob3dfYWxsICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIGJvb2wgdHJhbnNmb3JtX3N0YWdlX3BvaW50IChm bG9hdCB4LCBmbG9hdCB5LCBvdXQgZmxvYXQgeF9vdXQsIG91dCBmbG9hdCB5X291dCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHVubWFwICgp OworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTAiLCBzaW5jZSA9ICIwLjIiKV0KKysJCXB1YmxpYyB2b2lkIHVucGFyZW50ICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgdW5zZXRfZmxhZ3MgKENsdXR0 ZXIuQWN0b3JGbGFncyBmbGFncyk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdGlvbiBhY3Rpb25zIHsgc2V0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0K KysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yQm94IGFsbG9jYXRpb24geyBvd25lZCBnZXQ7IH0KKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVy LkdyYXZpdHkgYW5jaG9yX2dyYXZpdHkgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMiIsIHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGZsb2F0IGFuY2hvcl94IHsgZ2V0OyBz ZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1Ymxp YyBmbG9hdCBhbmNob3JfeSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgYmFja2dyb3VuZF9jb2xvciB7IGdldDsgc2V0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgYm9vbCBiYWNrZ3JvdW5kX2NvbG9yX3NldCB7IGdldDsgfQorKwkJW05vQWNj ZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJv b2wgY2hpbGRfdHJhbnNmb3JtX3NldCB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIEdyYXBoZW5lLlJlY3QgY2xp cF9yZWN0IHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0K KysJCXB1YmxpYyBib29sIGNsaXBfdG9fYWxsb2NhdGlvbiB7IGdldDsgc2V0OyB9CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBD bHV0dGVyLkNvbnN0cmFpbnQgY29uc3RyYWludHMgeyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5Db250ZW50IGNvbnRlbnQgeyBnZXQ7IHNl dDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFj dG9yQm94IGNvbnRlbnRfYm94IHsgZ2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIENsdXR0ZXIuQ29udGVudEdyYXZpdHkgY29udGVudF9ncmF2aXR5IHsgZ2V0 OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgQ2x1dHRl ci5Db250ZW50UmVwZWF0IGNvbnRlbnRfcmVwZWF0IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAi MC42IildCisrCQlwdWJsaWMgZmxvYXQgZGVwdGggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgQ2x1dHRl ci5FZmZlY3QgZWZmZWN0IHsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIENsdXR0ZXIuQWN0b3IgZmlyc3RfY2hpbGQgeyBnZXQ7IH0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBib29sIGZpeGVkX3Bvc2l0aW9uX3NldCB7IGdl dDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjgiKV0KKysJCXB1YmxpYyBmbG9hdCBmaXhlZF94IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGZsb2F0 IGZpeGVkX3kgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMg Ym9vbCBoYXNfY2xpcCB7IGdldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCBoYXNfcG9pbnRlciB7IGdldDsgfQor KwkJcHVibGljIGZsb2F0IGhlaWdodCB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3IgbGFzdF9jaGlsZCB7IGdldDsgfQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkxheW91dE1h bmFnZXIgbGF5b3V0X21hbmFnZXIgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2Rd CisrCQlwdWJsaWMgQ2x1dHRlci5TY2FsaW5nRmlsdGVyIG1hZ25pZmljYXRpb25fZmlsdGVyIHsg Z2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwkJcHVibGljIGJvb2wgbWFwcGVkIHsgZ2V0OyB9CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IG1hcmdpbl9ib3R0b20geyBnZXQ7IHNldDsg fQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBmbG9hdCBtYXJnaW5f bGVmdCB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIGZsb2F0IG1hcmdpbl9yaWdodCB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIGZsb2F0IG1hcmdpbl90b3AgeyBnZXQ7IHNldDsgfQorKwkJ W05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJs aWMgZmxvYXQgbWluX2hlaWdodCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBib29sIG1pbl9oZWlnaHRf c2V0IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjAuOCIpXQorKwkJcHVibGljIGZsb2F0IG1pbl93aWR0aCB7IGdldDsgc2V0OyB9Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1 YmxpYyBib29sIG1pbl93aWR0aF9zZXQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlwdWJsaWMgQ2x1dHRlci5TY2FsaW5nRmlsdGVyIG1pbmlmaWNhdGlvbl9maWx0ZXIg eyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIHN0 cmluZyBuYW1lIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNp b24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGZsb2F0IG5hdHVyYWxfaGVpZ2h0IHsgZ2V0 OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu OCIpXQorKwkJcHVibGljIGJvb2wgbmF0dXJhbF9oZWlnaHRfc2V0IHsgZ2V0OyBzZXQ7IH0KKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVi bGljIGZsb2F0IG5hdHVyYWxfd2lkdGggeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgYm9vbCBuYXR1cmFs X3dpZHRoX3NldCB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisr CQlwdWJsaWMgQ2x1dHRlci5PZmZzY3JlZW5SZWRpcmVjdCBvZmZzY3JlZW5fcmVkaXJlY3QgeyBn ZXQ7IHNldDsgfQorKwkJcHVibGljIHVpbnQgb3BhY2l0eSB7IGdldDsgc2V0OyB9CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMg R3JhcGhlbmUuUG9pbnQgcGl2b3RfcG9pbnQgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBmbG9hdCBwaXZvdF9wb2ludF96IHsgZ2V0 OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludCBwb3NpdGlvbiB7IG93bmVkIGdldDsgc2V0 OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgYm9vbCByZWFjdGl2 ZSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBib29sIHJlYWxpemVkIHsgZ2V0OyB9CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgQ2x1dHRlci5SZXF1ZXN0TW9kZSByZXF1ZXN0 X21vZGUgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgZmxv YXQgcmVzb3VyY2Vfc2NhbGUgeyBnZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIGRvdWJsZSByb3RhdGlvbl9hbmdsZV94 IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuNiIpXQorKwkJcHVibGljIGRvdWJsZSByb3RhdGlvbl9hbmdsZV95IHsgZ2V0OyBzZXQ7 IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQor KwkJcHVibGljIGRvdWJsZSByb3RhdGlvbl9hbmdsZV96IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2lu dDNEIHJvdGF0aW9uX2NlbnRlcl94IHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTIiLCBzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIHJv dGF0aW9uX2NlbnRlcl95IHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEu MTIiLCBzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5Qb2ludDNEIHJvdGF0aW9u X2NlbnRlcl96IHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkdyYXZpdHkgcm90YXRpb25fY2VudGVy X3pfZ3Jhdml0eSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgc2NhbGVfY2VudGVyX3ggeyBnZXQ7IHNldDsgfQor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGZsb2F0 IHNjYWxlX2NlbnRlcl95IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkdyYXZpdHkgc2NhbGVfZ3Jhdml0eSB7 IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjYiKV0KKysJCXB1YmxpYyBkb3VibGUgc2NhbGVfeCB7IGdldDsgc2V0OyB9CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBk b3VibGUgc2NhbGVfeSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIp XQorKwkJcHVibGljIGRvdWJsZSBzY2FsZV96IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIGJvb2wgc2hv d19vbl9zZXRfcGFyZW50IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBHcmFwaGVuZS5TaXplIHNpemUg eyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVi bGljIENsdXR0ZXIuVGV4dERpcmVjdGlvbiB0ZXh0X2RpcmVjdGlvbiB7IGdldDsgc2V0OyB9Cisr CQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlw dWJsaWMgYm9vbCB0cmFuc2Zvcm1fc2V0IHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZmxvYXQgdHJhbnNsYXRp b25feCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZmxvYXQgdHJhbnNsYXRpb25feSB7IGdldDsgc2V0 OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIild CisrCQlwdWJsaWMgZmxvYXQgdHJhbnNsYXRpb25feiB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nl c3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIHZpc2libGUgeyBnZXQ7IHNldDsgfQorKwkJcHVi bGljIGZsb2F0IHdpZHRoIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBmbG9hdCB4IHsgZ2V0OyBz ZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ2x1dHRlci5B Y3RvckFsaWduIHhfYWxpZ24geyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTIiKV0KKysJCXB1YmxpYyBib29sIHhfZXhwYW5kIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBm bG9hdCB5IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlw dWJsaWMgQ2x1dHRlci5BY3RvckFsaWduIHlfYWxpZ24geyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29sIHlfZXhwYW5kIHsgZ2V0OyBzZXQ7 IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgZmxvYXQgel9wb3Np dGlvbiB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJs aWMgc2lnbmFsIHZvaWQgYWxsb2NhdGlvbl9jaGFuZ2VkIChDbHV0dGVyLkFjdG9yQm94IGJveCwg Q2x1dHRlci5BbGxvY2F0aW9uRmxhZ3MgZmxhZ3MpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu NiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgYnV0dG9uX3ByZXNzX2V2ZW50IChD bHV0dGVyLkJ1dHRvbkV2ZW50IGV2ZW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0K KysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGJ1dHRvbl9yZWxlYXNlX2V2ZW50IChDbHV0 dGVyLkJ1dHRvbkV2ZW50IGV2ZW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJ CXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGNhcHR1cmVkX2V2ZW50IChDbHV0dGVyLkV2ZW50 IGV2ZW50KTsKKysJCVtIYXNFbWl0dGVyXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQor KwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgZGVzdHJveSAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGVudGVyX2V2ZW50 IChDbHV0dGVyLkNyb3NzaW5nRXZlbnQgZXZlbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu NiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgZXZlbnQgKENsdXR0ZXIuRXZlbnQg ZXZlbnQpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisr CQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBoaWRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQga2V5X2ZvY3VzX2luICgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFs IHZvaWQga2V5X2ZvY3VzX291dCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJ CXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGtleV9wcmVzc19ldmVudCAoQ2x1dHRlci5LZXlF dmVudCBldmVudCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmly dHVhbCBzaWduYWwgYm9vbCBrZXlfcmVsZWFzZV9ldmVudCAoQ2x1dHRlci5LZXlFdmVudCBldmVu dCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWdu YWwgYm9vbCBsZWF2ZV9ldmVudCAoQ2x1dHRlci5Dcm9zc2luZ0V2ZW50IGV2ZW50KTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIG1v dGlvbl9ldmVudCAoQ2x1dHRlci5Nb3Rpb25FdmVudCBldmVudCk7CisrCQlbSGFzRW1pdHRlcl0K KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEy Iiwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBwYWludCAo Q2x1dHRlci5QYWludENvbnRleHQgcGFpbnRfY29udGV4dCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMC4yIildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBwYXJlbnRfc2V0IChDbHV0 dGVyLkFjdG9yPyBvbGRfcGFyZW50KTsKKysJCVtIYXNFbWl0dGVyXQorKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgcGljayAoQ2x1dHRl ci5QaWNrQ29udGV4dCBwaWNrX2NvbnRleHQpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBxdWV1ZV9y ZWxheW91dCAoKTsKKysJCVtIYXNFbWl0dGVyXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1Ymxp YyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHJlYWxpemUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBzY3JvbGxfZXZlbnQgKENsdXR0 ZXIuU2Nyb2xsRXZlbnQgZXZlbnQpOworKwkJW0hhc0VtaXR0ZXJdCisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMC4yIildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBzaG93ICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29s IHRvdWNoX2V2ZW50IChDbHV0dGVyLkV2ZW50IGV2ZW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEyIildCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgdHJhbnNpdGlvbl9zdG9wcGVkIChzdHJp bmcgbmFtZSwgYm9vbCBpc19maW5pc2hlZCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIHNpZ25hbCB2b2lkIHRyYW5zaXRpb25zX2NvbXBsZXRlZCAoKTsKKysJCVtI YXNFbWl0dGVyXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3Np bmNlID0gIjEuMTYiLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2 b2lkIHVucmVhbGl6ZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYWN0b3JfbWV0YV9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFz cyBBY3Rvck1ldGEgOiBHTGliLkluaXRpYWxseVVub3duZWQgeworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIEFjdG9yTWV0YSAoKTsKKysJ CXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X2FjdG9yICgpOworKwkJcHVibGljIGJv b2wgZ2V0X2VuYWJsZWQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X25hbWUgKCk7 CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzZXRfYWN0b3IgKENsdXR0 ZXIuQWN0b3I/IGFjdG9yKTsKKysJCXB1YmxpYyB2b2lkIHNldF9lbmFibGVkIChib29sIGlzX2Vu YWJsZWQpOworKwkJcHVibGljIHZvaWQgc2V0X25hbWUgKHN0cmluZyBuYW1lKTsKKysJCXB1Ymxp YyBDbHV0dGVyLkFjdG9yIGFjdG9yIHsgZ2V0OyB9CisrCQlwdWJsaWMgYm9vbCBlbmFibGVkIHsg Z2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBzdHJpbmcgbmFtZSB7IGdldDsgc2V0OyB9CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX2FjdG9yX25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGNsYXNzIEFjdG9y Tm9kZSA6IENsdXR0ZXIuUGFpbnROb2RlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5j dGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJQYWludE5vZGUqIildCisrCQlwdWJsaWMgQWN0 b3JOb2RlIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYWxpZ25fY29u c3RyYWludF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1 YmxpYyBjbGFzcyBBbGlnbkNvbnN0cmFpbnQgOiBDbHV0dGVyLkNvbnN0cmFpbnQgeworKwkJW0ND b2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckNvbnN0 cmFpbnQqIildCisrCQlwdWJsaWMgQWxpZ25Db25zdHJhaW50IChDbHV0dGVyLkFjdG9yPyBzb3Vy Y2UsIENsdXR0ZXIuQWxpZ25BeGlzIGF4aXMsIGZsb2F0IGZhY3Rvcik7CisrCQlwdWJsaWMgQ2x1 dHRlci5BbGlnbkF4aXMgZ2V0X2FsaWduX2F4aXMgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X2Zh Y3RvciAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X3NvdXJjZSAoKTsK KysJCXB1YmxpYyB2b2lkIHNldF9hbGlnbl9heGlzIChDbHV0dGVyLkFsaWduQXhpcyBheGlzKTsK KysJCXB1YmxpYyB2b2lkIHNldF9mYWN0b3IgKGZsb2F0IGZhY3Rvcik7CisrCQlwdWJsaWMgdm9p ZCBzZXRfc291cmNlIChDbHV0dGVyLkFjdG9yPyBzb3VyY2UpOworKwkJcHVibGljIENsdXR0ZXIu QWxpZ25BeGlzIGFsaWduX2F4aXMgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBm bG9hdCBmYWN0b3IgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkFj dG9yIHNvdXJjZSB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hbHBo YV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgQWxwaGEg OiBHTGliLkluaXRpYWxseVVub3duZWQsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUg KGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgQWxwaGEgKCk7Cisr CQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQWxwaGEuZnVsbCAoQ2x1dHRlci5UaW1lbGluZSB0 aW1lbGluZSwgdWxvbmcgbW9kZSk7CisrCQlwdWJsaWMgZG91YmxlIGdldF9hbHBoYSAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB1bG9uZyBnZXRfbW9kZSAoKTsK KysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuVGltZWxpbmUgZ2V0X3RpbWVsaW5lICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2Nsb3N1cmUgKEdM aWIuQ2xvc3VyZSBjbG9zdXJlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9mdW5jIChvd25lZCBDbHV0 dGVyLkFscGhhRnVuYyBmdW5jKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF9tb2RlICh1bG9uZyBtb2RlKTsKKysJCXB1YmxpYyB2b2lkIHNldF90aW1l bGluZSAoQ2x1dHRlci5UaW1lbGluZSB0aW1lbGluZSk7CisrCQlwdWJsaWMgZG91YmxlIGFscGhh IHsgZ2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdWxvbmcg bW9kZSB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIENsdXR0ZXIuVGltZWxpbmUg dGltZWxpbmUgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9hbmltYXRpb25fZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTIiLCBzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGNsYXNzIEFuaW1hdGlvbiA6IEdM aWIuT2JqZWN0LCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIEFuaW1hdGlvbiAoKTsKKysJCXB1YmxpYyB1 aW50IGdldF9kdXJhdGlvbiAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuSW50ZXJ2YWwg Z2V0X2ludGVydmFsIChzdHJpbmcgcHJvcGVydHlfbmFtZSk7CisrCQlwdWJsaWMgYm9vbCBnZXRf bG9vcCAoKTsKKysJCXB1YmxpYyB1bG9uZyBnZXRfbW9kZSAoKTsKKysJCXB1YmxpYyB1bm93bmVk IENsdXR0ZXIuVGltZWxpbmUgZ2V0X3RpbWVsaW5lICgpOworKwkJcHVibGljIGJvb2wgaGFzX3By b3BlcnR5IChzdHJpbmcgcHJvcGVydHlfbmFtZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZHVyYXRp b24gKHVpbnQgbXNlY3MpOworKwkJcHVibGljIHZvaWQgc2V0X2xvb3AgKGJvb2wgbG9vcCk7Cisr CQlwdWJsaWMgdm9pZCBzZXRfbW9kZSAodWxvbmcgbW9kZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRf b2JqZWN0IChHTGliLk9iamVjdCBvYmplY3QpOworKwkJcHVibGljIHZvaWQgc2V0X3RpbWVsaW5l IChDbHV0dGVyLlRpbWVsaW5lPyB0aW1lbGluZSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwg c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5BbHBoYSBhbHBoYSB7IG93bmVkIGdl dDsgc2V0OyB9CisrCQlwdWJsaWMgdWludCBkdXJhdGlvbiB7IGdldDsgc2V0OyB9CisrCQlwdWJs aWMgYm9vbCBsb29wIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB1bG9uZyBtb2RlIHsgZ2V0OyBz ZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIEdMaWIuT2JqZWN0IG9iamVj dCB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5UaW1lbGluZSB0aW1lbGlu ZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBjb21wbGV0ZWQg KCk7CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBzdGFydGVkICgpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lk ID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlw dWJsaWMgY2xhc3MgQW55RXZlbnQgOiBDbHV0dGVyLkV2ZW50IHsKKysJCXB1YmxpYyBDbHV0dGVy LkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsK KysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgdWludDMyIHRp bWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJf YmFja2VuZF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1 YmxpYyBjbGFzcyBCYWNrZW5kIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIEJhY2tlbmQgKCk7CisrCQlbTm9X cmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBhZGRfb3B0aW9ucyAoR0xpYi5PcHRpb25H cm91cCBncm91cCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgYm9vbCBjcmVh dGVfY29udGV4dCAoKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJs aWMgdmlydHVhbCB1bm93bmVkIENsdXR0ZXIuU3RhZ2VXaW5kb3cgY3JlYXRlX3N0YWdlIChDbHV0 dGVyLlN0YWdlIHdyYXBwZXIpIHRocm93cyBHTGliLkVycm9yOworKwkJW05vV3JhcHBlcl0KKysJ CXB1YmxpYyB2aXJ0dWFsIHZvaWQgZW5zdXJlX2NvbnRleHQgKENsdXR0ZXIuU3RhZ2Ugc3RhZ2Up OworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5TZWF0IGdldF9kZWZhdWx0X3NlYXQgKCk7Cisr CQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgQ2x1dHRlci5GZWF0dXJlRmxhZ3MgZ2V0 X2ZlYXR1cmVzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHVu b3duZWQgQ2Fpcm8uRm9udE9wdGlvbnMgZ2V0X2ZvbnRfb3B0aW9ucyAoKTsKKysJCXB1YmxpYyB1 bm93bmVkIENsdXR0ZXIuSW5wdXRNZXRob2QgZ2V0X2lucHV0X21ldGhvZCAoKTsKKysJCXB1Ymxp YyBkb3VibGUgZ2V0X3Jlc29sdXRpb24gKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZp cnR1YWwgdm9pZCBpbml0X2V2ZW50cyAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmly dHVhbCB2b2lkIGluaXRfZmVhdHVyZXMgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZp cnR1YWwgYm9vbCBwb3N0X3BhcnNlICgpIHRocm93cyBHTGliLkVycm9yOworKwkJW05vV3JhcHBl cl0KKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgcHJlX3BhcnNlICgpIHRocm93cyBHTGliLkVycm9y OworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgcmVkcmF3IChDbHV0dGVy LlN0YWdlIHN0YWdlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9mb250X29wdGlvbnMgKENhaXJvLkZvbnRPcHRpb25zIG9wdGlvbnMpOworKwkJcHVi bGljIHZvaWQgc2V0X2lucHV0X21ldGhvZCAoQ2x1dHRlci5JbnB1dE1ldGhvZCBtZXRob2QpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGZvbnRf Y2hhbmdlZCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBzaWdu YWwgdm9pZCByZXNvbHV0aW9uX2NoYW5nZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40 IildCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgc2V0dGluZ3NfY2hhbmdlZCAoKTsKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0g ImNsdXR0ZXJfYmluX2xheW91dF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS4yIildCisrCXB1YmxpYyBjbGFzcyBCaW5MYXlvdXQgOiBDbHV0dGVyLkxheW91dE1hbmFnZXIg eworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1 dHRlckxheW91dE1hbmFnZXIqIildCisrCQlwdWJsaWMgQmluTGF5b3V0IChDbHV0dGVyLkJpbkFs aWdubWVudCB4X2FsaWduID0gQ2x1dHRlci5CaW5BbGlnbm1lbnQuU1RBUlQsIENsdXR0ZXIuQmlu QWxpZ25tZW50IHlfYWxpZ24gPSBDbHV0dGVyLkJpbkFsaWdubWVudC5TVEFSVCk7CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRl ZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgQ2x1dHRlci5CaW5B bGlnbm1lbnQgeF9hbGlnbiB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwg c2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgQ2x1dHRlci5CaW5BbGlnbm1lbnQgeV9hbGlnbiB7 IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2JpbmRfY29uc3RyYWludF9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBCaW5kQ29u c3RyYWludCA6IENsdXR0ZXIuQ29uc3RyYWludCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQ29uc3RyYWludCoiKV0KKysJCXB1Ymxp YyBCaW5kQ29uc3RyYWludCAoQ2x1dHRlci5BY3Rvcj8gc291cmNlLCBDbHV0dGVyLkJpbmRDb29y ZGluYXRlIGNvb3JkaW5hdGUsIGZsb2F0IG9mZnNldCk7CisrCQlwdWJsaWMgQ2x1dHRlci5CaW5k Q29vcmRpbmF0ZSBnZXRfY29vcmRpbmF0ZSAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfb2Zmc2V0 ICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfc291cmNlICgpOworKwkJ cHVibGljIHZvaWQgc2V0X2Nvb3JkaW5hdGUgKENsdXR0ZXIuQmluZENvb3JkaW5hdGUgY29vcmRp bmF0ZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfb2Zmc2V0IChmbG9hdCBvZmZzZXQpOworKwkJcHVi bGljIHZvaWQgc2V0X3NvdXJjZSAoQ2x1dHRlci5BY3Rvcj8gc291cmNlKTsKKysJCXB1YmxpYyBD bHV0dGVyLkJpbmRDb29yZGluYXRlIGNvb3JkaW5hdGUgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0K KysJCXB1YmxpYyBmbG9hdCBvZmZzZXQgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJCXB1Ymxp YyBDbHV0dGVyLkFjdG9yIHNvdXJjZSB7IGdldDsgc2V0IGNvbnN0cnVjdDsgfQorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAi Y2x1dHRlcl9iaW5kaW5nX3Bvb2xfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjEuMCIpXQorKwlwdWJsaWMgY2xhc3MgQmluZGluZ1Bvb2wgOiBHTGliLk9iamVjdCB7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMgQmluZGlu Z1Bvb2wgKHN0cmluZyBuYW1lKTsKKysJCXB1YmxpYyBib29sIGFjdGl2YXRlICh1aW50IGtleV92 YWwsIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVycywgR0xpYi5PYmplY3QgZ29iamVjdCk7 CisrCQlwdWJsaWMgdm9pZCBibG9ja19hY3Rpb24gKHN0cmluZyBhY3Rpb25fbmFtZSk7CisrCQlw dWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5CaW5kaW5nUG9vbCBmaW5kIChzdHJpbmcgbmFt ZSk7CisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZmluZF9hY3Rpb24gKHVpbnQga2V5X3ZhbCwg Q2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJzKTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25l ZCBDbHV0dGVyLkJpbmRpbmdQb29sIGdldF9mb3JfY2xhc3MgKHZvaWQqIGtsYXNzKTsKKysJCXB1 YmxpYyB2b2lkIGluc3RhbGxfYWN0aW9uIChzdHJpbmcgYWN0aW9uX25hbWUsIHVpbnQga2V5X3Zh bCwgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJzLCBvd25lZCBDbHV0dGVyLkJpbmRpbmdB Y3Rpb25GdW5jIGNhbGxiYWNrKTsKKysJCXB1YmxpYyB2b2lkIGluc3RhbGxfY2xvc3VyZSAoc3Ry aW5nIGFjdGlvbl9uYW1lLCB1aW50IGtleV92YWwsIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlm aWVycywgR0xpYi5DbG9zdXJlIGNsb3N1cmUpOworKwkJcHVibGljIHZvaWQgb3ZlcnJpZGVfYWN0 aW9uICh1aW50IGtleV92YWwsIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVycywgb3duZWQg R0xpYi5DYWxsYmFjayBjYWxsYmFjayk7CisrCQlwdWJsaWMgdm9pZCBvdmVycmlkZV9jbG9zdXJl ICh1aW50IGtleV92YWwsIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVycywgR0xpYi5DbG9z dXJlIGNsb3N1cmUpOworKwkJcHVibGljIHZvaWQgcmVtb3ZlX2FjdGlvbiAodWludCBrZXlfdmFs LCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcnMpOworKwkJcHVibGljIHZvaWQgdW5ibG9j a19hY3Rpb24gKHN0cmluZyBhY3Rpb25fbmFtZSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJ CXB1YmxpYyBzdHJpbmcgbmFtZSB7IG93bmVkIGdldDsgY29uc3RydWN0OyB9CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJj bHV0dGVyX2JsdXJfZWZmZWN0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjQiKV0KKysJcHVibGljIGNsYXNzIEJsdXJFZmZlY3QgOiBDbHV0dGVyLk9mZnNjcmVlbkVmZmVj dCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJD bHV0dGVyRWZmZWN0KiIpXQorKwkJcHVibGljIEJsdXJFZmZlY3QgKCk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX2JveF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1 YmxpYyBjbGFzcyBCb3ggOiBDbHV0dGVyLkFjdG9yLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIu QW5pbWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0 b3IqIildCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xMCIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIEJveCAoQ2x1dHRlci5MYXlvdXRN YW5hZ2VyIG1hbmFnZXIpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNv bG9yIGdldF9jb2xvciAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdW5vd25lZCBD bHV0dGVyLkxheW91dE1hbmFnZXIgZ2V0X2xheW91dF9tYW5hZ2VyICgpOworKwkJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIx LjIiKV0KKysJCXB1YmxpYyB2b2lkIHBhY2sgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIC4uLik7Cisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIs IHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgcGFja19hZnRlciAoQ2x1dHRlci5BY3Rv ciBhY3RvciwgQ2x1dHRlci5BY3Rvcj8gc2libGluZywgLi4uKTsKKysJCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMS4yIild CisrCQlwdWJsaWMgdm9pZCBwYWNrX2F0IChDbHV0dGVyLkFjdG9yIGFjdG9yLCBpbnQgcG9zaXRp b24sIC4uLik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xMCIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgcGFja19iZWZvcmUg KENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIuQWN0b3I/IHNpYmxpbmcsIC4uLik7CisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNp bmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgcGFja3YgKENsdXR0ZXIuQWN0b3IgYWN0b3Is IFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gIm5fcHJvcGVydGllcyIsIGFycmF5X2xlbmd0 aF9wb3MgPSAxLjUsIGFycmF5X2xlbmd0aF90eXBlID0gImd1aW50IildIHN0cmluZ1tdIHByb3Bl cnRpZXMsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gIm5fcHJvcGVydGllcyIsIGFycmF5 X2xlbmd0aF9wb3MgPSAxLjUsIGFycmF5X2xlbmd0aF90eXBlID0gImd1aW50IildIEdMaWIuVmFs dWVbXSB2YWx1ZXMpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb2xv ciAoQ2x1dHRlci5Db2xvcj8gY29sb3IpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVl LCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9sYXlvdXRfbWFuYWdlciAoQ2x1dHRlci5MYXlvdXRNYW5hZ2VyIG1hbmFnZXIpOwor KwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAi LCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGNvbG9yIHsgZ2V0OyBz ZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1Ymxp YyBib29sIGNvbG9yX3NldCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5MYXlvdXRN YW5hZ2VyIGxheW91dF9tYW5hZ2VyIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfYm94 X2xheW91dF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1 YmxpYyBjbGFzcyBCb3hMYXlvdXQgOiBDbHV0dGVyLkxheW91dE1hbmFnZXIgeworKwkJW0NDb2Rl IChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckxheW91dE1h bmFnZXIqIildCisrCQlwdWJsaWMgQm94TGF5b3V0ICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJ CXB1YmxpYyB2b2lkIGdldF9hbGlnbm1lbnQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIG91dCBDbHV0 dGVyLkJveEFsaWdubWVudCB4X2FsaWduLCBvdXQgQ2x1dHRlci5Cb3hBbGlnbm1lbnQgeV9hbGln bik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHVpbnQgZ2V0X2Vhc2luZ19kdXJhdGlv biAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9 ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdWxvbmcgZ2V0X2Vhc2luZ19tb2Rl ICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGdldF9leHBhbmQgKENsdXR0 ZXIuQWN0b3IgYWN0b3IpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9m aWxsIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBvdXQgYm9vbCB4X2ZpbGwsIG91dCBib29sIHlfZmls bCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgYm9vbCBnZXRfaG9t b2dlbmVvdXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIENs dXR0ZXIuT3JpZW50YXRpb24gZ2V0X29yaWVudGF0aW9uICgpOworKwkJcHVibGljIGJvb2wgZ2V0 X3BhY2tfc3RhcnQgKCk7CisrCQlwdWJsaWMgdWludCBnZXRfc3BhY2luZyAoKTsKKysJCVtWZXJz aW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2Ug PSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCBnZXRfdXNlX2FuaW1hdGlvbnMgKCk7CisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNl ID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3ZlcnRpY2FsICgpOworKwkJW1ZlcnNpb24g KGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIx LjIiKV0KKysJCXB1YmxpYyB2b2lkIHBhY2sgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGJvb2wgZXhw YW5kLCBib29sIHhfZmlsbCwgYm9vbCB5X2ZpbGwsIENsdXR0ZXIuQm94QWxpZ25tZW50IHhfYWxp Z24sIENsdXR0ZXIuQm94QWxpZ25tZW50IHlfYWxpZ24pOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF9hbGlnbm1lbnQgKENsdXR0ZXIuQWN0b3IgYWN0b3IsIENsdXR0ZXIu Qm94QWxpZ25tZW50IHhfYWxpZ24sIENsdXR0ZXIuQm94QWxpZ25tZW50IHlfYWxpZ24pOworKwkJ W1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBz aW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9lYXNpbmdfZHVyYXRpb24gKHVpbnQg bXNlY3MpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9lYXNpbmdfbW9k ZSAodWxvbmcgbW9kZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2V4 cGFuZCAoQ2x1dHRlci5BY3RvciBhY3RvciwgYm9vbCBleHBhbmQpOworKwkJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIi KV0KKysJCXB1YmxpYyB2b2lkIHNldF9maWxsIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBib29sIHhf ZmlsbCwgYm9vbCB5X2ZpbGwpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVi bGljIHZvaWQgc2V0X2hvbW9nZW5lb3VzIChib29sIGhvbW9nZW5lb3VzKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBzZXRfb3JpZW50YXRpb24gKENsdXR0 ZXIuT3JpZW50YXRpb24gb3JpZW50YXRpb24pOworKwkJcHVibGljIHZvaWQgc2V0X3BhY2tfc3Rh cnQgKGJvb2wgcGFja19zdGFydCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfc3BhY2luZyAodWludCBz cGFjaW5nKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdXNlX2FuaW1h dGlvbnMgKGJvb2wgYW5pbWF0ZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRl cHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZvaWQg c2V0X3ZlcnRpY2FsIChib29sIHZlcnRpY2FsKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0g dHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS4yIildCisrCQlwdWJs aWMgdWludCBlYXNpbmdfZHVyYXRpb24geyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKGRlcHJl Y2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTIiLCBzaW5jZSA9ICIxLjIiKV0K KysJCXB1YmxpYyB1bG9uZyBlYXNpbmdfbW9kZSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgYm9vbCBob21vZ2VuZW91cyB7IGdldDsgc2V0OyB9 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIENsdXR0ZXIuT3JpZW50 YXRpb24gb3JpZW50YXRpb24geyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGJvb2wgcGFja19zdGFy dCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdWludCBzcGFjaW5nIHsgZ2V0OyBzZXQ7IH0KKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwg c2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgYm9vbCB1c2VfYW5pbWF0aW9ucyB7IGdldDsgc2V0 OyB9CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMiIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIGJvb2wgdmVydGljYWwgeyBnZXQ7IHNl dDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9icmlnaHRuZXNzX2NvbnRyYXN0X2VmZmVjdF9nZXRfdHlw ZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgQnJp Z2h0bmVzc0NvbnRyYXN0RWZmZWN0IDogQ2x1dHRlci5PZmZzY3JlZW5FZmZlY3QgeworKwkJW0ND b2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckVmZmVj dCoiKV0KKysJCXB1YmxpYyBCcmlnaHRuZXNzQ29udHJhc3RFZmZlY3QgKCk7CisrCQlwdWJsaWMg dm9pZCBnZXRfYnJpZ2h0bmVzcyAob3V0IGZsb2F0IHJlZCwgb3V0IGZsb2F0IGdyZWVuLCBvdXQg ZmxvYXQgYmx1ZSk7CisrCQlwdWJsaWMgdm9pZCBnZXRfY29udHJhc3QgKG91dCBmbG9hdCByZWQs IG91dCBmbG9hdCBncmVlbiwgb3V0IGZsb2F0IGJsdWUpOworKwkJcHVibGljIHZvaWQgc2V0X2Jy aWdodG5lc3MgKGZsb2F0IGJyaWdodG5lc3MpOworKwkJcHVibGljIHZvaWQgc2V0X2JyaWdodG5l c3NfZnVsbCAoZmxvYXQgcmVkLCBmbG9hdCBncmVlbiwgZmxvYXQgYmx1ZSk7CisrCQlwdWJsaWMg dm9pZCBzZXRfY29udHJhc3QgKGZsb2F0IGNvbnRyYXN0KTsKKysJCXB1YmxpYyB2b2lkIHNldF9j b250cmFzdF9mdWxsIChmbG9hdCByZWQsIGZsb2F0IGdyZWVuLCBmbG9hdCBibHVlKTsKKysJCVtO b0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgYnJpZ2h0bmVzcyB7IG93 bmVkIGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVy LkNvbG9yIGNvbnRyYXN0IHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0K KysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNz IEJ1dHRvbkV2ZW50IDogQ2x1dHRlci5FdmVudCB7CisrCQlwdWJsaWMgZG91YmxlIGF4ZXM7Cisr CQlwdWJsaWMgdWludDMyIGJ1dHRvbjsKKysJCXB1YmxpYyB1aW50IGNsaWNrX2NvdW50OworKwkJ cHVibGljIHdlYWsgQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7CisrCQlwdWJsaWMgQ2x1dHRl ci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlm aWVyX3N0YXRlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJs aWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0YWdlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJ cHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJCXB1 YmxpYyBmbG9hdCB5OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9jYW52YXNfZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGNsYXNzIENhbnZhcyA6IEdMaWIu T2JqZWN0LCBDbHV0dGVyLkNvbnRlbnQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckNvbnRlbnQqIildCisrCQlwdWJsaWMgQ2FudmFz ICgpOworKwkJcHVibGljIGZsb2F0IGdldF9zY2FsZV9mYWN0b3IgKCk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfc2NhbGVfZmFjdG9yIChmbG9hdCBzY2FsZSk7CisrCQlwdWJsaWMgYm9vbCBzZXRfc2l6 ZSAoaW50IHdpZHRoLCBpbnQgaGVpZ2h0KTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVi bGljIGludCBoZWlnaHQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGZsb2F0IHNjYWxlX2ZhY3Rv ciB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgd2lk dGggeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIGJvb2wgZHJhdyAoQ2Fp cm8uQ29udGV4dCBjciwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0KTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJf Y2hpbGRfbWV0YV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisr CXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBDaGlsZE1ldGEgOiBHTGliLk9iamVjdCB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgQ2hpbGRN ZXRhICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfYWN0b3IgKCk7Cisr CQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkNvbnRhaW5lciBnZXRfY29udGFpbmVyICgpOworKwkJ cHVibGljIENsdXR0ZXIuQWN0b3IgYWN0b3IgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGlj IENsdXR0ZXIuQ29udGFpbmVyIGNvbnRhaW5lciB7IGdldDsgY29uc3RydWN0OyB9CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX2NsaWNrX2FjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBDbGlja0FjdGlvbiA6IENsdXR0ZXIuQWN0aW9uIHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0 ZXJBY3Rpb24qIildCisrCQlwdWJsaWMgQ2xpY2tBY3Rpb24gKCk7CisrCQlwdWJsaWMgdWludCBn ZXRfYnV0dG9uICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZv aWQgZ2V0X2Nvb3JkcyAob3V0IGZsb2F0IHByZXNzX3gsIG91dCBmbG9hdCBwcmVzc195KTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBDbHV0dGVyLk1vZGlmaWVyVHlw ZSBnZXRfc3RhdGUgKCk7CisrCQlwdWJsaWMgdm9pZCByZWxlYXNlICgpOworKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBoZWxkIHsgZ2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1l dGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgbG9uZ19w cmVzc19kdXJhdGlvbiB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgbG9uZ19wcmVzc190aHJlc2hv bGQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgYm9vbCBw cmVzc2VkIHsgZ2V0OyB9CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBjbGlja2VkIChD bHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1 YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIGxvbmdfcHJlc3MgKENsdXR0ZXIuQWN0b3IgYWN0b3Is IENsdXR0ZXIuTG9uZ1ByZXNzU3RhdGUgc3RhdGUpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9jbGlwX25v ZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGlj IGNsYXNzIENsaXBOb2RlIDogQ2x1dHRlci5QYWludE5vZGUgeworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlclBhaW50Tm9kZSoiKV0KKysJ CXB1YmxpYyBDbGlwTm9kZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfY2xvbmVfZ2V0X3R5cGUgKCki KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgY2xhc3MgQ2xvbmUgOiBD bHV0dGVyLkFjdG9yLCBBdGsuSW1wbGVtZW50b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRl ci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0b3IqIildCisrCQlwdWJsaWMg Q2xvbmUgKENsdXR0ZXIuQWN0b3Igc291cmNlKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIu QWN0b3IgZ2V0X3NvdXJjZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9zb3VyY2UgKENsdXR0ZXIu QWN0b3I/IHNvdXJjZSk7CisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvciBzb3VyY2UgeyBnZXQ7IHNl dCBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfY29sb3Jfbm9kZV9nZXRfdHlwZSAoKSIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgQ29sb3JOb2Rl IDogQ2x1dHRlci5QaXBlbGluZU5vZGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlclBhaW50Tm9kZSoiKV0KKysJCXB1YmxpYyBDb2xv ck5vZGUgKENsdXR0ZXIuQ29sb3I/IGNvbG9yKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfY29sb3JpemVf ZWZmZWN0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVi bGljIGNsYXNzIENvbG9yaXplRWZmZWN0IDogQ2x1dHRlci5PZmZzY3JlZW5FZmZlY3QgeworKwkJ W0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckVm ZmVjdCoiKV0KKysJCXB1YmxpYyBDb2xvcml6ZUVmZmVjdCAoQ2x1dHRlci5Db2xvciB0aW50KTsK KysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGdldF90aW50ICgpOworKwkJcHVibGljIHZvaWQgc2V0 X3RpbnQgKENsdXR0ZXIuQ29sb3IgdGludCk7CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciB0aW50 IHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfY29uc3RyYWludF9nZXRfdHlwZSAoKSIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBD b25zdHJhaW50IDogQ2x1dHRlci5BY3Rvck1ldGEgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIENvbnN0cmFpbnQgKCk7CisrCQlbTm9X cmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCB1cGRhdGVfYWxsb2NhdGlvbiAoQ2x1dHRl ci5BY3RvciBhY3RvciwgQ2x1dHRlci5BY3RvckJveCBhbGxvY2F0aW9uKTsKKysJCVtOb1dyYXBw ZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHVwZGF0ZV9wcmVmZXJyZWRfc2l6ZSAoQ2x1dHRl ci5BY3RvciBhY3RvciwgQ2x1dHRlci5PcmllbnRhdGlvbiBkaXJlY3Rpb24sIGZsb2F0IGZvcl9z aXplLCBmbG9hdCBtaW5pbXVtX3NpemUsIGZsb2F0IG5hdHVyYWxfc2l6ZSk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQg PSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1 YmxpYyBjbGFzcyBDcm9zc2luZ0V2ZW50IDogQ2x1dHRlci5FdmVudCB7CisrCQlwdWJsaWMgd2Vh ayBDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50Rmxh Z3MgZmxhZ3M7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHJlbGF0ZWQ7CisrCQlwdWJs aWMgd2VhayBDbHV0dGVyLkV2ZW50U2VxdWVuY2Ugc2VxdWVuY2U7CisrCQlwdWJsaWMgd2VhayBD bHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7 CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlw ZTsKKysJCXB1YmxpYyBmbG9hdCB4OworKwkJcHVibGljIGZsb2F0IHk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX2RlZm9ybV9lZmZlY3RfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu NCIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgRGVmb3JtRWZmZWN0IDogQ2x1dHRlci5PZmZz Y3JlZW5FZmZlY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Up XQorKwkJcHJvdGVjdGVkIERlZm9ybUVmZmVjdCAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJs aWMgdmlydHVhbCB2b2lkIGRlZm9ybV92ZXJ0ZXggKGZsb2F0IHdpZHRoLCBmbG9hdCBoZWlnaHQs IENvZ2wuVGV4dHVyZVZlcnRleCB2ZXJ0ZXgpOworKwkJcHVibGljIHVub3duZWQgQ29nbC5IYW5k bGUgZ2V0X2JhY2tfbWF0ZXJpYWwgKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfbl90aWxlcyAob3V0 IHVpbnQgeF90aWxlcywgb3V0IHVpbnQgeV90aWxlcyk7CisrCQlwdWJsaWMgdm9pZCBpbnZhbGlk YXRlICgpOworKwkJcHVibGljIHZvaWQgc2V0X2JhY2tfbWF0ZXJpYWwgKENvZ2wuSGFuZGxlPyBt YXRlcmlhbCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfbl90aWxlcyAodWludCB4X3RpbGVzLCB1aW50 IHlfdGlsZXMpOworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgdWludCB4X3RpbGVz IHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIHVpbnQgeV90 aWxlcyB7IGdldDsgc2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2Rlc2F0dXJhdGVfZWZmZWN0X2dl dF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGNsYXNz IERlc2F0dXJhdGVFZmZlY3QgOiBDbHV0dGVyLk9mZnNjcmVlbkVmZmVjdCB7CisrCQlbQ0NvZGUg KGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyRWZmZWN0KiIp XQorKwkJcHVibGljIERlc2F0dXJhdGVFZmZlY3QgKGRvdWJsZSBmYWN0b3IpOworKwkJcHVibGlj IGRvdWJsZSBnZXRfZmFjdG9yICgpOworKwkJcHVibGljIHZvaWQgc2V0X2ZhY3RvciAoZG91Ymxl IGZhY3Rvcik7CisrCQlwdWJsaWMgZG91YmxlIGZhY3RvciB7IGdldDsgc2V0OyB9CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX2RyYWdfYWN0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjQiKV0KKysJcHVibGljIGNsYXNzIERyYWdBY3Rpb24gOiBDbHV0dGVyLkFjdGlvbiB7Cisr CQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVy QWN0aW9uKiIpXQorKwkJcHVibGljIERyYWdBY3Rpb24gKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRf ZHJhZ19hcmVhIChHcmFwaGVuZS5SZWN0IGRyYWdfYXJlYSk7CisrCQlwdWJsaWMgQ2x1dHRlci5E cmFnQXhpcyBnZXRfZHJhZ19heGlzICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3Rv ciBnZXRfZHJhZ19oYW5kbGUgKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfZHJhZ190aHJlc2hvbGQg KG91dCB1aW50IHhfdGhyZXNob2xkLCBvdXQgdWludCB5X3RocmVzaG9sZCk7CisrCQlwdWJsaWMg dm9pZCBnZXRfbW90aW9uX2Nvb3JkcyAob3V0IGZsb2F0IG1vdGlvbl94LCBvdXQgZmxvYXQgbW90 aW9uX3kpOworKwkJcHVibGljIHZvaWQgZ2V0X3ByZXNzX2Nvb3JkcyAob3V0IGZsb2F0IHByZXNz X3gsIG91dCBmbG9hdCBwcmVzc195KTsKKysJCXB1YmxpYyB2b2lkIHNldF9kcmFnX2FyZWEgKEdy YXBoZW5lLlJlY3Q/IGRyYWdfYXJlYSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfZHJhZ19heGlzIChD bHV0dGVyLkRyYWdBeGlzIGF4aXMpOworKwkJcHVibGljIHZvaWQgc2V0X2RyYWdfaGFuZGxlIChD bHV0dGVyLkFjdG9yPyBoYW5kbGUpOworKwkJcHVibGljIHZvaWQgc2V0X2RyYWdfdGhyZXNob2xk IChpbnQgeF90aHJlc2hvbGQsIGludCB5X3RocmVzaG9sZCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhv ZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgR3JhcGhlbmUuUmVj dCBkcmFnX2FyZWEgeyBvd25lZCBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgZHJhZ19hcmVhX3Nl dCB7IGdldDsgfQorKwkJcHVibGljIENsdXR0ZXIuRHJhZ0F4aXMgZHJhZ19heGlzIHsgZ2V0OyBz ZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yIGRyYWdfaGFuZGxlIHsgZ2V0OyBzZXQ7IH0K KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCB4X2RyYWdfdGhyZXNob2xkIHsg Z2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCB5X2RyYWdf dGhyZXNob2xkIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGRy YWdfYmVnaW4gKENsdXR0ZXIuQWN0b3IgYWN0b3IsIGZsb2F0IGV2ZW50X3gsIGZsb2F0IGV2ZW50 X3ksIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVycyk7CisrCQlwdWJsaWMgdmlydHVhbCBz aWduYWwgdm9pZCBkcmFnX2VuZCAoQ2x1dHRlci5BY3RvciBhY3RvciwgZmxvYXQgZXZlbnRfeCwg ZmxvYXQgZXZlbnRfeSwgQ2x1dHRlci5Nb2RpZmllclR5cGUgbW9kaWZpZXJzKTsKKysJCXB1Ymxp YyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGRyYWdfbW90aW9uIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBm bG9hdCBkZWx0YV94LCBmbG9hdCBkZWx0YV95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBkcmFnX3Byb2dyZXNzIChDbHV0dGVy LkFjdG9yIGFjdG9yLCBmbG9hdCBkZWx0YV94LCBmbG9hdCBkZWx0YV95KTsKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNs dXR0ZXJfZHJvcF9hY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu OCIpXQorKwlwdWJsaWMgY2xhc3MgRHJvcEFjdGlvbiA6IENsdXR0ZXIuQWN0aW9uIHsKKysJCVtD Q29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3Rp b24qIildCisrCQlwdWJsaWMgRHJvcEFjdGlvbiAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25h bCBib29sIGNhbl9kcm9wIChDbHV0dGVyLkFjdG9yIGFjdG9yLCBmbG9hdCBldmVudF94LCBmbG9h dCBldmVudF95KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGRyb3AgKENsdXR0ZXIu QWN0b3IgYWN0b3IsIGZsb2F0IGV2ZW50X3gsIGZsb2F0IGV2ZW50X3kpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBkcm9wX2NhbmNlbCAoQ2x1 dHRlci5BY3RvciBhY3RvciwgZmxvYXQgZXZlbnRfeCwgZmxvYXQgZXZlbnRfeSk7CisrCQlwdWJs aWMgdmlydHVhbCBzaWduYWwgdm9pZCBvdmVyX2luIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJ CXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIG92ZXJfb3V0IChDbHV0dGVyLkFjdG9yIGFjdG9y KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCB0eXBlX2lkID0gImNsdXR0ZXJfZWZmZWN0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIEVmZmVjdCA6IENsdXR0ZXIu QWN0b3JNZXRhIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0K KysJCXByb3RlY3RlZCBFZmZlY3QgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1 YWwgYm9vbCBtb2RpZnlfcGFpbnRfdm9sdW1lIChDbHV0dGVyLlBhaW50Vm9sdW1lIHZvbHVtZSk7 CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBwYWludCAoQ2x1dHRlci5Q YWludENvbnRleHQgcGFpbnRfY29udGV4dCwgQ2x1dHRlci5FZmZlY3RQYWludEZsYWdzIGZsYWdz KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHBpY2sgKENsdXR0ZXIu UGlja0NvbnRleHQgcGlja19jb250ZXh0KTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmly dHVhbCB2b2lkIHBvc3RfcGFpbnQgKENsdXR0ZXIuUGFpbnRDb250ZXh0IHBhaW50X2NvbnRleHQp OworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgcHJlX3BhaW50IChDbHV0 dGVyLlBhaW50Q29udGV4dCBwYWludF9jb250ZXh0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjgiKV0KKysJCXB1YmxpYyB2b2lkIHF1ZXVlX3JlcGFpbnQgKCk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY29weV9mdW5jdGlvbiA9ICJn X2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAi Y2x1dHRlcl9ldmVudF9nZXRfdHlwZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgRXZlbnQgeworKwkJcHVibGljIENsdXR0ZXIu RXZlbnRUeXBlIHR5cGU7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSldCisrCQlwdWJsaWMgRXZlbnQgKENsdXR0ZXIuRXZlbnRUeXBlIHR5cGUpOworKwkJcHVibGlj IENsdXR0ZXIuRXZlbnQgY29weSAoKTsKKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGRvdWJsZSBnZXRfYW5nbGUgKENsdXR0 ZXIuRXZlbnQgdGFyZ2V0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1Ymxp YyBkb3VibGUgZ2V0X2F4ZXMgKG91dCB1aW50IG5fYXhlcyk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgdWludDMyIGdldF9idXR0b24gKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdWludCBnZXRfY2xpY2tfY291bnQgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMgdm9pZCBnZXRfY29vcmRzIChvdXQg ZmxvYXQgeCwgb3V0IGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwkJ cHVibGljIHVub3duZWQgQ2x1dHRlci5JbnB1dERldmljZSBnZXRfZGV2aWNlICgpOworKwkJcHVi bGljIGludCBnZXRfZGV2aWNlX2lkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjgiKV0K KysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuSW5wdXREZXZpY2VUb29sIGdldF9kZXZpY2VfdG9v bCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLklu cHV0RGV2aWNlVHlwZSBnZXRfZGV2aWNlX3R5cGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMiIpXQorKwkJcHVibGljIGZsb2F0IGdldF9kaXN0YW5jZSAoQ2x1dHRlci5FdmVudCB0YXJn ZXQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENs dXR0ZXIuRXZlbnRTZXF1ZW5jZSBnZXRfZXZlbnRfc2VxdWVuY2UgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGdldF9mbGFncyAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI0IildCisrCQlwdWJsaWMgdm9pZCBnZXRfZ2Vz dHVyZV9tb3Rpb25fZGVsdGEgKG91dCBkb3VibGUgZHgsIG91dCBkb3VibGUgZHkpOworKwkJcHVi bGljIENsdXR0ZXIuVG91Y2hwYWRHZXN0dXJlUGhhc2UgZ2V0X2dlc3R1cmVfcGhhc2UgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yNCIpXQorKwkJcHVibGljIGRvdWJsZSBnZXRfZ2VzdHVy ZV9waW5jaF9hbmdsZV9kZWx0YSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI0IildCisr CQlwdWJsaWMgZG91YmxlIGdldF9nZXN0dXJlX3BpbmNoX3NjYWxlICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHVpbnQxNiBnZXRfa2V5X2NvZGUgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdWludCBnZXRfa2V5X3N5bWJvbCAo KTsKKysJCXB1YmxpYyB1bmljaGFyIGdldF9rZXlfdW5pY29kZSAoKTsKKysJCXB1YmxpYyB1aW50 IGdldF9tb2RlX2dyb3VwICgpOworKwkJcHVibGljIGJvb2wgZ2V0X3BhZF9ldmVudF9kZXRhaWxz IChvdXQgdWludCBudW1iZXIsIG91dCB1aW50IG1vZGUsIG91dCBkb3VibGUgdmFsdWUpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9wb3NpdGlvbiAo R3JhcGhlbmUuUG9pbnQgcG9zaXRpb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfcmVsYXRlZCAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBnZXRfc2Nyb2xsX2RlbHRhIChv dXQgZG91YmxlIGR4LCBvdXQgZG91YmxlIGR5KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJCXB1YmxpYyBDbHV0dGVyLlNjcm9sbERpcmVjdGlvbiBnZXRfc2Nyb2xsX2RpcmVjdGlv biAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI2IildCisrCQlwdWJsaWMgQ2x1dHRlci5T Y3JvbGxGaW5pc2hGbGFncyBnZXRfc2Nyb2xsX2ZpbmlzaF9mbGFncyAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjI2IildCisrCQlwdWJsaWMgQ2x1dHRlci5TY3JvbGxTb3VyY2UgZ2V0X3Nj cm9sbF9zb3VyY2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMg dW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9zb3VyY2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS42IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLklucHV0RGV2aWNlIGdldF9zb3Vy Y2VfZGV2aWNlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHVu b3duZWQgQ2x1dHRlci5TdGFnZSBnZXRfc3RhZ2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC40IildCisrCQlwdWJsaWMgQ2x1dHRlci5Nb2RpZmllclR5cGUgZ2V0X3N0YXRlICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9zdGF0ZV9mdWxs IChvdXQgQ2x1dHRlci5Nb2RpZmllclR5cGUgYnV0dG9uX3N0YXRlLCBvdXQgQ2x1dHRlci5Nb2Rp ZmllclR5cGUgYmFzZV9zdGF0ZSwgb3V0IENsdXR0ZXIuTW9kaWZpZXJUeXBlIGxhdGNoZWRfc3Rh dGUsIG91dCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBsb2NrZWRfc3RhdGUsIG91dCBDbHV0dGVyLk1v ZGlmaWVyVHlwZSBlZmZlY3RpdmVfc3RhdGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIp XQorKwkJcHVibGljIHVpbnQzMiBnZXRfdGltZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjI0IildCisrCQlwdWJsaWMgdWludCBnZXRfdG91Y2hwYWRfZ2VzdHVyZV9maW5nZXJfY291bnQg KCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfZXZlbnRfdHlwZSIpXQorKwkJcHVibGlj IENsdXR0ZXIuRXZlbnRUeXBlIGdldF90eXBlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTIiKV0KKysJCXB1YmxpYyBib29sIGhhc19jb250cm9sX21vZGlmaWVyICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBib29sIGhhc19zaGlmdF9tb2RpZmllciAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBpc19wb2lu dGVyX2VtdWxhdGVkICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGlj IHZvaWQgcHV0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZv aWQgc2V0X2J1dHRvbiAodWludDMyIGJ1dHRvbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44 IildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29vcmRzIChmbG9hdCB4LCBmbG9hdCB5KTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9kZXZpY2UgKENsdXR0 ZXIuSW5wdXREZXZpY2U/IGRldmljZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yOCIpXQor KwkJcHVibGljIHZvaWQgc2V0X2RldmljZV90b29sIChDbHV0dGVyLklucHV0RGV2aWNlVG9vbD8g dG9vbCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRf ZmxhZ3MgKENsdXR0ZXIuRXZlbnRGbGFncyBmbGFncyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfa2V5X2NvZGUgKHVpbnQxNiBrZXlfY29kZSk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfa2V5X3N5bWJv bCAodWludCBrZXlfc3ltKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF9rZXlfdW5pY29kZSAodW5pY2hhciBrZXlfdW5pY29kZSk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfcmVsYXRlZCAoQ2x1dHRlci5B Y3Rvcj8gYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2 b2lkIHNldF9zY3JvbGxfZGVsdGEgKGRvdWJsZSBkeCwgZG91YmxlIGR5KTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zY3JvbGxfZGlyZWN0aW9uIChD bHV0dGVyLlNjcm9sbERpcmVjdGlvbiBkaXJlY3Rpb24pOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3NvdXJjZSAoQ2x1dHRlci5BY3Rvcj8gYWN0b3Ip OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3NvdXJj ZV9kZXZpY2UgKENsdXR0ZXIuSW5wdXREZXZpY2U/IGRldmljZSk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfc3RhZ2UgKENsdXR0ZXIuU3RhZ2U/IHN0 YWdlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9z dGF0ZSAoQ2x1dHRlci5Nb2RpZmllclR5cGUgc3RhdGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuOCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3RpbWUgKHVpbnQzMiB0aW1lXyk7CisrCQlwdWJs aWMgQ2x1dHRlci5BbnlFdmVudCBhbnkge1tDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJBbnlFdmVu dCAqKSIpXSAgZ2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5CdXR0b25FdmVudCBidXR0b24ge1tD Q29kZSAoY25hbWUgPSAiKENsdXR0ZXJCdXR0b25FdmVudCAqKSIpXSAgZ2V0OyB9CisrCQlwdWJs aWMgQ2x1dHRlci5Dcm9zc2luZ0V2ZW50IGNyb3NzaW5nIHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0 dGVyQ3Jvc3NpbmdFdmVudCAqKSIpXSAgZ2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5LZXlFdmVu dCBrZXkge1tDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJLZXlFdmVudCAqKSIpXSAgZ2V0OyB9Cisr CQlwdWJsaWMgQ2x1dHRlci5Nb3Rpb25FdmVudCBtb3Rpb24ge1tDQ29kZSAoY25hbWUgPSAiKENs dXR0ZXJNb3Rpb25FdmVudCAqKSIpXSAgZ2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5TY3JvbGxF dmVudCBzY3JvbGwge1tDQ29kZSAoY25hbWUgPSAiKENsdXR0ZXJTY3JvbGxFdmVudCAqKSIpXSAg Z2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5TdGFnZVN0YXRlRXZlbnQgc3RhZ2Vfc3RhdGUge1tD Q29kZSAoY25hbWUgPSAiKENsdXR0ZXJTdGFnZVN0YXRlRXZlbnQgKikiKV0gIGdldDsgfQorKwkJ cHVibGljIENsdXR0ZXIuVG91Y2hFdmVudCB0b3VjaCB7W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRl clRvdWNoRXZlbnQgKikiKV0gIGdldDsgfQorKwkJcHVibGljIENsdXR0ZXIuVG91Y2hwYWRQaW5j aEV2ZW50IHRvdWNocGFkX3BpbmNoIHtbQ0NvZGUgKGNuYW1lID0gIihDbHV0dGVyVG91Y2hwYWRQ aW5jaEV2ZW50ICopIildICBnZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLlRvdWNocGFkU3dpcGVF dmVudCB0b3VjaHBhZF9zd2lwZSB7W0NDb2RlIChjbmFtZSA9ICIoQ2x1dHRlclRvdWNocGFkU3dp cGVFdmVudCAqKSIpXSAgZ2V0OyB9CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVl X2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY2x1dHRlcl9ldmVudF9zZXF1 ZW5jZV9nZXRfdHlwZSAoKSIpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTIiKV0KKysJcHVibGljIGNsYXNzIEV2ZW50U2VxdWVuY2UgeworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9m aXhlZF9sYXlvdXRfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQor KwlwdWJsaWMgY2xhc3MgRml4ZWRMYXlvdXQgOiBDbHV0dGVyLkxheW91dE1hbmFnZXIgeworKwkJ W0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckxh eW91dE1hbmFnZXIqIildCisrCQlwdWJsaWMgRml4ZWRMYXlvdXQgKCk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0 dGVyX2Zsb3dfbGF5b3V0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIi KV0KKysJcHVibGljIGNsYXNzIEZsb3dMYXlvdXQgOiBDbHV0dGVyLkxheW91dE1hbmFnZXIgewor KwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRl ckxheW91dE1hbmFnZXIqIildCisrCQlwdWJsaWMgRmxvd0xheW91dCAoQ2x1dHRlci5GbG93T3Jp ZW50YXRpb24gb3JpZW50YXRpb24pOworKwkJcHVibGljIGZsb2F0IGdldF9jb2x1bW5fc3BhY2lu ZyAoKTsKKysJCXB1YmxpYyB2b2lkIGdldF9jb2x1bW5fd2lkdGggKG91dCBmbG9hdCBtaW5fd2lk dGgsIG91dCBmbG9hdCBtYXhfd2lkdGgpOworKwkJcHVibGljIGJvb2wgZ2V0X2hvbW9nZW5lb3Vz ICgpOworKwkJcHVibGljIENsdXR0ZXIuRmxvd09yaWVudGF0aW9uIGdldF9vcmllbnRhdGlvbiAo KTsKKysJCXB1YmxpYyB2b2lkIGdldF9yb3dfaGVpZ2h0IChvdXQgZmxvYXQgbWluX2hlaWdodCwg b3V0IGZsb2F0IG1heF9oZWlnaHQpOworKwkJcHVibGljIGZsb2F0IGdldF9yb3dfc3BhY2luZyAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgYm9vbCBnZXRfc25h cF90b19ncmlkICgpOworKwkJcHVibGljIHZvaWQgc2V0X2NvbHVtbl9zcGFjaW5nIChmbG9hdCBz cGFjaW5nKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb2x1bW5fd2lkdGggKGZsb2F0IG1pbl93aWR0 aCwgZmxvYXQgbWF4X3dpZHRoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9ob21vZ2VuZW91cyAoYm9v bCBob21vZ2VuZW91cyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfb3JpZW50YXRpb24gKENsdXR0ZXIu Rmxvd09yaWVudGF0aW9uIG9yaWVudGF0aW9uKTsKKysJCXB1YmxpYyB2b2lkIHNldF9yb3dfaGVp Z2h0IChmbG9hdCBtaW5faGVpZ2h0LCBmbG9hdCBtYXhfaGVpZ2h0KTsKKysJCXB1YmxpYyB2b2lk IHNldF9yb3dfc3BhY2luZyAoZmxvYXQgc3BhY2luZyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3NuYXBfdG9fZ3JpZCAoYm9vbCBzbmFwX3RvX2dy aWQpOworKwkJcHVibGljIGZsb2F0IGNvbHVtbl9zcGFjaW5nIHsgZ2V0OyBzZXQ7IH0KKysJCXB1 YmxpYyBib29sIGhvbW9nZW5lb3VzIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJcHVibGljIGZsb2F0IG1heF9jb2x1bW5fd2lkdGggeyBnZXQ7IHNldDsgfQorKwkJW05v QWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgZmxvYXQgbWF4X3Jvd19oZWlnaHQgeyBnZXQ7IHNl dDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgZmxvYXQgbWluX2NvbHVtbl93 aWR0aCB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBmbG9h dCBtaW5fcm93X2hlaWdodCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5GbG93T3Jp ZW50YXRpb24gb3JpZW50YXRpb24geyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBm bG9hdCByb3dfc3BhY2luZyB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x NiIpXQorKwkJcHVibGljIGJvb2wgc25hcF90b19ncmlkIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0g ImNsdXR0ZXJfZ2VzdHVyZV9hY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjEuOCIpXQorKwlwdWJsaWMgY2xhc3MgR2VzdHVyZUFjdGlvbiA6IENsdXR0ZXIuQWN0aW9u IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNs dXR0ZXJBY3Rpb24qIildCisrCQlwdWJsaWMgR2VzdHVyZUFjdGlvbiAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdm9pZCBjYW5jZWwgKCk7CisrCQlbTm9XcmFw cGVyXQorKwkJcHVibGljIHZpcnR1YWwgYm9vbCBnZXN0dXJlX3ByZXBhcmUgKENsdXR0ZXIuQWN0 b3IgYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB1bm93 bmVkIENsdXR0ZXIuSW5wdXREZXZpY2UgZ2V0X2RldmljZSAodWludCBwb2ludCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5FdmVudCBn ZXRfbGFzdF9ldmVudCAodWludCBwb2ludCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfbW90aW9uX2Nv b3JkcyAodWludCBwb2ludCwgb3V0IGZsb2F0IG1vdGlvbl94LCBvdXQgZmxvYXQgbW90aW9uX3kp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfbW90 aW9uX2RlbHRhICh1aW50IHBvaW50LCBvdXQgZmxvYXQgZGVsdGFfeCwgb3V0IGZsb2F0IGRlbHRh X3kpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB1aW50IGdldF9u X2N1cnJlbnRfcG9pbnRzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1 YmxpYyBpbnQgZ2V0X25fdG91Y2hfcG9pbnRzICgpOworKwkJcHVibGljIHZvaWQgZ2V0X3ByZXNz X2Nvb3JkcyAodWludCBwb2ludCwgb3V0IGZsb2F0IHByZXNzX3gsIG91dCBmbG9hdCBwcmVzc195 KTsKKysJCXB1YmxpYyB2b2lkIGdldF9yZWxlYXNlX2Nvb3JkcyAodWludCBwb2ludCwgb3V0IGZs b2F0IHJlbGVhc2VfeCwgb3V0IGZsb2F0IHJlbGVhc2VfeSk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5FdmVudFNlcXVlbmNlIGdldF9z ZXF1ZW5jZSAodWludCBwb2ludCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJ cHVibGljIHZvaWQgZ2V0X3RocmVzaG9sZF90cmlnZ2VyX2Rpc3RhbmNlIChvdXQgZmxvYXQgeCwg b3V0IGZsb2F0IHkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjAiKV0KKysJCXB1YmxpYyBD bHV0dGVyLkdlc3R1cmVUcmlnZ2VyRWRnZSBnZXRfdGhyZXNob2xkX3RyaWdnZXJfZWRnZSAoKTsK KysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjIw Iiwgc2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIENsdXR0ZXIuR2VzdHVyZVRyaWdnZXJFZGdl IGdldF90aHJlc2hvbGRfdHJpZ2dlcl9lZ2RlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTIiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfdmVsb2NpdHkgKHVpbnQgcG9pbnQsIG91dCBmbG9h dCB2ZWxvY2l0eV94LCBvdXQgZmxvYXQgdmVsb2NpdHlfeSk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X25fdG91Y2hfcG9pbnRzIChpbnQgbmJfcG9p bnRzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgdm9pZCBzZXRf dGhyZXNob2xkX3RyaWdnZXJfZGlzdGFuY2UgKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF90aHJlc2hvbGRfdHJpZ2dl cl9lZGdlIChDbHV0dGVyLkdlc3R1cmVUcmlnZ2VyRWRnZSBlZGdlKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgaW50IG5fdG91Y2hfcG9pbnRzIHsgZ2V0OyBzZXQ7 IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTgiKV0K KysJCXB1YmxpYyBmbG9hdCB0aHJlc2hvbGRfdHJpZ2dlcl9kaXN0YW5jZV94IHsgZ2V0OyBjb25z dHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTgiKV0KKysJCXB1YmxpYyBmbG9hdCB0aHJlc2hvbGRfdHJpZ2dlcl9kaXN0YW5jZV95IHsgZ2V0 OyBjb25zdHJ1Y3Q7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMg Q2x1dHRlci5HZXN0dXJlVHJpZ2dlckVkZ2UgdGhyZXNob2xkX3RyaWdnZXJfZWRnZSB7IGdldDsg Y29uc3RydWN0OyB9CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBnZXN0dXJlX2JlZ2lu IChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGdl c3R1cmVfY2FuY2VsIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNp Z25hbCB2b2lkIGdlc3R1cmVfZW5kIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCXB1YmxpYyB2 aXJ0dWFsIHNpZ25hbCBib29sIGdlc3R1cmVfcHJvZ3Jlc3MgKENsdXR0ZXIuQWN0b3IgYWN0b3Ip OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IHR5cGVfaWQgPSAiY2x1dHRlcl9ncmlkX2xheW91dF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJsaWMgY2xhc3MgR3JpZExheW91dCA6IENsdXR0ZXIu TGF5b3V0TWFuYWdlciB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSwgdHlwZSA9ICJDbHV0dGVyTGF5b3V0TWFuYWdlcioiKV0KKysJCXB1YmxpYyBHcmlkTGF5b3V0 ICgpOworKwkJcHVibGljIHZvaWQgYXR0YWNoIChDbHV0dGVyLkFjdG9yIGNoaWxkLCBpbnQgbGVm dCwgaW50IHRvcCwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0KTsKKysJCXB1YmxpYyB2b2lkIGF0dGFj aF9uZXh0X3RvIChDbHV0dGVyLkFjdG9yIGNoaWxkLCBDbHV0dGVyLkFjdG9yPyBzaWJsaW5nLCBD bHV0dGVyLkdyaWRQb3NpdGlvbiBzaWRlLCBpbnQgd2lkdGgsIGludCBoZWlnaHQpOworKwkJcHVi bGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBnZXRfY2hpbGRfYXQgKGludCBsZWZ0LCBpbnQgdG9w KTsKKysJCXB1YmxpYyBib29sIGdldF9jb2x1bW5faG9tb2dlbmVvdXMgKCk7CisrCQlwdWJsaWMg dWludCBnZXRfY29sdW1uX3NwYWNpbmcgKCk7CisrCQlwdWJsaWMgQ2x1dHRlci5PcmllbnRhdGlv biBnZXRfb3JpZW50YXRpb24gKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfcm93X2hvbW9nZW5lb3Vz ICgpOworKwkJcHVibGljIHVpbnQgZ2V0X3Jvd19zcGFjaW5nICgpOworKwkJcHVibGljIHZvaWQg aW5zZXJ0X2NvbHVtbiAoaW50IHBvc2l0aW9uKTsKKysJCXB1YmxpYyB2b2lkIGluc2VydF9uZXh0 X3RvIChDbHV0dGVyLkFjdG9yIHNpYmxpbmcsIENsdXR0ZXIuR3JpZFBvc2l0aW9uIHNpZGUpOwor KwkJcHVibGljIHZvaWQgaW5zZXJ0X3JvdyAoaW50IHBvc2l0aW9uKTsKKysJCXB1YmxpYyB2b2lk IHNldF9jb2x1bW5faG9tb2dlbmVvdXMgKGJvb2wgaG9tb2dlbmVvdXMpOworKwkJcHVibGljIHZv aWQgc2V0X2NvbHVtbl9zcGFjaW5nICh1aW50IHNwYWNpbmcpOworKwkJcHVibGljIHZvaWQgc2V0 X29yaWVudGF0aW9uIChDbHV0dGVyLk9yaWVudGF0aW9uIG9yaWVudGF0aW9uKTsKKysJCXB1Ymxp YyB2b2lkIHNldF9yb3dfaG9tb2dlbmVvdXMgKGJvb2wgaG9tb2dlbmVvdXMpOworKwkJcHVibGlj IHZvaWQgc2V0X3Jvd19zcGFjaW5nICh1aW50IHNwYWNpbmcpOworKwkJcHVibGljIGJvb2wgY29s dW1uX2hvbW9nZW5lb3VzIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB1aW50IGNvbHVtbl9zcGFj aW5nIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLk9yaWVudGF0aW9uIG9yaWVudGF0 aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBib29sIHJvd19ob21vZ2VuZW91cyB7IGdldDsg c2V0OyB9CisrCQlwdWJsaWMgdWludCByb3dfc3BhY2luZyB7IGdldDsgc2V0OyB9CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX2dyb3VwX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIi KV0KKysJcHVibGljIGNsYXNzIEdyb3VwIDogQ2x1dHRlci5BY3RvciwgQXRrLkltcGxlbWVudG9y LCBDbHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFi bGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAi Q2x1dHRlckFjdG9yKiIpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBHcm91cCAoKTsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC4y IildCisrCQlwdWJsaWMgaW50IGdldF9uX2NoaWxkcmVuICgpOworKwkJW1ZlcnNpb24gKGRlcHJl Y2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjIiKV0K KysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3IgZ2V0X250aF9jaGlsZCAoaW50IGluZGV4 Xyk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2FsbCAoKTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJf aW1hZ2VfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVi bGljIGNsYXNzIEltYWdlIDogR0xpYi5PYmplY3QsIENsdXR0ZXIuQ29udGVudCB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQ29udGVu dCoiKV0KKysJCXB1YmxpYyBJbWFnZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENvZ2wuVGV4dHVy ZSBnZXRfdGV4dHVyZSAoKTsKKysJCXB1YmxpYyBib29sIHNldF9hcmVhIChbQ0NvZGUgKGFycmF5 X2xlbmd0aCA9IGZhbHNlKV0gdWludDhbXSBkYXRhLCBDb2dsLlBpeGVsRm9ybWF0IHBpeGVsX2Zv cm1hdCwgQ2Fpcm8uUmVjdGFuZ2xlSW50IHJlY3QsIHVpbnQgcm93X3N0cmlkZSkgdGhyb3dzIEdM aWIuRXJyb3I7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wg c2V0X2J5dGVzIChHTGliLkJ5dGVzIGRhdGEsIENvZ2wuUGl4ZWxGb3JtYXQgcGl4ZWxfZm9ybWF0 LCB1aW50IHdpZHRoLCB1aW50IGhlaWdodCwgdWludCByb3dfc3RyaWRlKSB0aHJvd3MgR0xpYi5F cnJvcjsKKysJCXB1YmxpYyBib29sIHNldF9kYXRhIChbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZh bHNlKV0gdWludDhbXSBkYXRhLCBDb2dsLlBpeGVsRm9ybWF0IHBpeGVsX2Zvcm1hdCwgdWludCB3 aWR0aCwgdWludCBoZWlnaHQsIHVpbnQgcm93X3N0cmlkZSkgdGhyb3dzIEdMaWIuRXJyb3I7Cisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX2lucHV0X2RldmljZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xh c3MgSW5wdXREZXZpY2UgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3Rf ZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgSW5wdXREZXZpY2UgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLklucHV0RGV2 aWNlIGdldF9hc3NvY2lhdGVkX2RldmljZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYi KV0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0QXhpcyBnZXRfYXhpcyAodWludCBpbmRleF8pOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2F4aXNfdmFs dWUgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBkb3VibGVbXSBheGVzLCBDbHV0dGVy LklucHV0QXhpcyBheGlzLCBvdXQgZG91YmxlIHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjEyIildCisrCQlwdWJsaWMgYm9vbCBnZXRfY29vcmRzIChDbHV0dGVyLkV2ZW50U2VxdWVu Y2U/IHNlcXVlbmNlLCBHcmFwaGVuZS5Qb2ludCBwb2ludCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgaW50IGdldF9kZXZpY2VfaWQgKCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dE1vZGUgZ2V0X2RldmljZV9t b2RlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHVub3duZWQg c3RyaW5nIGdldF9kZXZpY2VfbmFtZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRf ZGV2aWNlX25vZGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg Q2x1dHRlci5JbnB1dERldmljZVR5cGUgZ2V0X2RldmljZV90eXBlICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2VuYWJsZWQgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3RvciBn ZXRfZ3JhYmJlZF9hY3RvciAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIGludCBnZXRfZ3JvdXBfbl9t b2RlcyAoaW50IGdyb3VwKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1Ymxp YyBib29sIGdldF9oYXNfY3Vyc29yICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQor KwkJcHVibGljIGJvb2wgZ2V0X2tleSAodWludCBpbmRleF8sIG91dCB1aW50IGtleXZhbCwgb3V0 IENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVycyk7CisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1 dERldmljZU1hcHBpbmcgZ2V0X21hcHBpbmdfbW9kZSAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X21v ZGVfc3dpdGNoX2J1dHRvbl9ncm91cCAodWludCBidXR0b24pOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTYiKV0KKysJCXB1YmxpYyBDbHV0dGVyLk1vZGlmaWVyVHlwZSBnZXRfbW9kaWZpZXJf c3RhdGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdWludCBn ZXRfbl9heGVzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHVp bnQgZ2V0X25fa2V5cyAoKTsKKysJCXB1YmxpYyBpbnQgZ2V0X25fbW9kZV9ncm91cHMgKCk7Cisr CQlwdWJsaWMgaW50IGdldF9uX3JpbmdzICgpOworKwkJcHVibGljIGludCBnZXRfbl9zdHJpcHMg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0 dGVyLkFjdG9yIGdldF9wb2ludGVyX2FjdG9yICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MiIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5TdGFnZSBnZXRfcG9pbnRlcl9zdGFnZSAo KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIyIildCisrCQlwdWJsaWMgdW5vd25lZCBzdHJp bmcgZ2V0X3Byb2R1Y3RfaWQgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlNlYXQgZ2V0 X3NlYXQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgR0xpYi5M aXN0PHdlYWsgQ2x1dHRlci5JbnB1dERldmljZT4gZ2V0X3NsYXZlX2RldmljZXMgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4yMiIpXQorKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF92 ZW5kb3JfaWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZv aWQgZ3JhYiAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlwdWJsaWMgdmlydHVhbCBib29sIGlz X2dyb3VwZWQgKENsdXR0ZXIuSW5wdXREZXZpY2Ugb3RoZXJfZGV2aWNlKTsKKysJCXB1YmxpYyB2 aXJ0dWFsIGJvb2wgaXNfbW9kZV9zd2l0Y2hfYnV0dG9uICh1aW50IGdyb3VwLCB1aW50IGJ1dHRv bik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZpcnR1YWwgYm9v bCBrZXljb2RlX3RvX2V2ZGV2ICh1aW50IGhhcmR3YXJlX2tleWNvZGUsIHVpbnQgZXZkZXZfa2V5 Y29kZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHVub3duZWQg Q2x1dHRlci5BY3RvciBzZXF1ZW5jZV9nZXRfZ3JhYmJlZF9hY3RvciAoQ2x1dHRlci5FdmVudFNl cXVlbmNlIHNlcXVlbmNlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJs aWMgdm9pZCBzZXF1ZW5jZV9ncmFiIChDbHV0dGVyLkV2ZW50U2VxdWVuY2Ugc2VxdWVuY2UsIENs dXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1 YmxpYyB2b2lkIHNlcXVlbmNlX3VuZ3JhYiAoQ2x1dHRlci5FdmVudFNlcXVlbmNlIHNlcXVlbmNl KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9lbmFi bGVkIChib29sIGVuYWJsZWQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVi bGljIHZvaWQgc2V0X2tleSAodWludCBpbmRleF8sIHVpbnQga2V5dmFsLCBDbHV0dGVyLk1vZGlm aWVyVHlwZSBtb2RpZmllcnMpOworKwkJcHVibGljIHZvaWQgc2V0X21hcHBpbmdfbW9kZSAoQ2x1 dHRlci5JbnB1dERldmljZU1hcHBpbmcgbWFwcGluZyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIHZvaWQgdW5ncmFiICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMiIpXQorKwkJcHVibGljIHZvaWQgdXBkYXRlX2Zyb21fZXZlbnQgKENsdXR0ZXIuRXZlbnQg ZXZlbnQsIGJvb2wgdXBkYXRlX3N0YWdlKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmly dHVhbCB2b2lkIHVwZGF0ZV9mcm9tX3Rvb2wgKENsdXR0ZXIuSW5wdXREZXZpY2VUb29sIHRvb2wp OworKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisr CQlwdWJsaWMgQ2x1dHRlci5CYWNrZW5kIGJhY2tlbmQgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsg fQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXRNb2RlIGRldmljZV9tb2RlIHsgZ2V0OyBjb25zdHJ1 Y3Q7IH0KKysJCXB1YmxpYyBzdHJpbmcgZGV2aWNlX25vZGUgeyBnZXQ7IGNvbnN0cnVjdDsgfQor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZp Y2VUeXBlIGRldmljZV90eXBlIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGVuYWJsZWQgeyBnZXQ7IHNldDsgfQorKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIGJvb2wgaGFzX2N1cnNvciB7IGdldDsg Y29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjIiKV0KKysJCXB1YmxpYyBpbnQgaWQgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGlj IENsdXR0ZXIuSW5wdXREZXZpY2VNYXBwaW5nIG1hcHBpbmdfbW9kZSB7IGdldDsgc2V0OyB9Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdWludCBuX2F4ZXMgeyBnZXQ7 IH0KKysJCXB1YmxpYyBpbnQgbl9tb2RlX2dyb3VwcyB7IGdldDsgY29uc3RydWN0OyB9CisrCQlw dWJsaWMgaW50IG5fcmluZ3MgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJcHVibGljIGludCBuX3N0 cmlwcyB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBzdHJpbmcgbmFtZSB7IG93bmVkIGdldDsg Y29uc3RydWN0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yMiIpXQorKwkJcHVibGljIHN0 cmluZyBwcm9kdWN0X2lkIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBDbHV0dGVyLlNl YXQgc2VhdCB7IGdldDsgY29uc3RydWN0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yMiIp XQorKwkJcHVibGljIHN0cmluZyB2ZW5kb3JfaWQgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQg PSAiY2x1dHRlcl9pbnB1dF9kZXZpY2VfdG9vbF9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgYWJz dHJhY3QgY2xhc3MgSW5wdXREZXZpY2VUb29sIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlICho YXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIElucHV0RGV2aWNl VG9vbCAoKTsKKysJCXB1YmxpYyB1aW50NjQgZ2V0X2lkICgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMjgiKV0KKysJCXB1YmxpYyB1aW50NjQgZ2V0X3NlcmlhbCAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjI4IildCisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dERldmljZVRvb2xUeXBl IGdldF90b29sX3R5cGUgKCk7CisrCQlwdWJsaWMgdWludDY0IGlkIHsgZ2V0OyBjb25zdHJ1Y3Q7 IH0KKysJCXB1YmxpYyB1aW50NjQgc2VyaWFsIHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCVtOb0Fj Y2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXREZXZpY2VUb29sVHlwZSB0eXBl IHsgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfZm9jdXNfZ2V0X3R5 cGUgKCkiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIElucHV0Rm9jdXMgOiBHTGliLk9iamVj dCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90 ZWN0ZWQgSW5wdXRGb2N1cyAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2 b2lkIGNvbW1pdF90ZXh0IChzdHJpbmcgdGV4dCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGlj IHZpcnR1YWwgdm9pZCBkZWxldGVfc3Vycm91bmRpbmcgKHVpbnQgb2Zmc2V0LCB1aW50IGxlbik7 CisrCQlwdWJsaWMgYm9vbCBmaWx0ZXJfa2V5X2V2ZW50IChDbHV0dGVyLktleUV2ZW50IGtleSk7 CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBmb2N1c19pbiAoQ2x1dHRl ci5JbnB1dE1ldGhvZCBpbnB1dF9tZXRob2QpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2 aXJ0dWFsIHZvaWQgZm9jdXNfb3V0ICgpOworKwkJcHVibGljIGJvb2wgaXNfZm9jdXNlZCAoKTsK KysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHJlcXVlc3Rfc3Vycm91bmRp bmcgKCk7CisrCQlwdWJsaWMgdm9pZCByZXNldCAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jYW5f c2hvd19wcmVlZGl0IChib29sIGNhbl9zaG93X3ByZWVkaXQpOworKwkJcHVibGljIHZvaWQgc2V0 X2NvbnRlbnRfaGludHMgKENsdXR0ZXIuSW5wdXRDb250ZW50SGludEZsYWdzIGhpbnQpOworKwkJ cHVibGljIHZvaWQgc2V0X2NvbnRlbnRfcHVycG9zZSAoQ2x1dHRlci5JbnB1dENvbnRlbnRQdXJw b3NlIHB1cnBvc2UpOworKwkJcHVibGljIHZvaWQgc2V0X2N1cnNvcl9sb2NhdGlvbiAoR3JhcGhl bmUuUmVjdCByZWN0KTsKKysJCXB1YmxpYyB2b2lkIHNldF9pbnB1dF9wYW5lbF9zdGF0ZSAoQ2x1 dHRlci5JbnB1dFBhbmVsU3RhdGUgc3RhdGUpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2 aXJ0dWFsIHZvaWQgc2V0X3ByZWVkaXRfdGV4dCAoc3RyaW5nIHByZWVkaXQsIHVpbnQgY3Vyc29y KTsKKysJCXB1YmxpYyB2b2lkIHNldF9zdXJyb3VuZGluZyAoc3RyaW5nIHRleHQsIHVpbnQgY3Vy c29yLCB1aW50IGFuY2hvcik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0X21ldGhvZF9nZXRfdHlw ZSAoKSIpXQorKwlwdWJsaWMgYWJzdHJhY3QgY2xhc3MgSW5wdXRNZXRob2QgOiBHTGliLk9iamVj dCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90 ZWN0ZWQgSW5wdXRNZXRob2QgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwg Ym9vbCBmaWx0ZXJfa2V5X2V2ZW50IChDbHV0dGVyLkV2ZW50IGtleSk7CisrCQlwdWJsaWMgdmly dHVhbCB2b2lkIGZvY3VzX2luIChDbHV0dGVyLklucHV0Rm9jdXMgYWN0b3IpOworKwkJcHVibGlj IHZpcnR1YWwgdm9pZCBmb2N1c19vdXQgKCk7CisrCQlwdWJsaWMgdm9pZCBmb3J3YXJkX2tleSAo dWludDMyIGtleXZhbCwgdWludDMyIGtleWNvZGUsIHVpbnQzMiBzdGF0ZSwgdWludDY0IHRpbWVf LCBib29sIHByZXNzKTsKKysJCXB1YmxpYyB2b2lkIG5vdGlmeV9rZXlfZXZlbnQgKENsdXR0ZXIu RXZlbnQgZXZlbnQsIGJvb2wgZmlsdGVyZWQpOworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyB2 aXJ0dWFsIHZvaWQgcmVzZXQgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwg dm9pZCBzZXRfY3Vyc29yX2xvY2F0aW9uIChHcmFwaGVuZS5SZWN0IHJlY3QpOworKwkJcHVibGlj IHZvaWQgc2V0X2lucHV0X3BhbmVsX3N0YXRlIChDbHV0dGVyLklucHV0UGFuZWxTdGF0ZSBzdGF0 ZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfcHJlZWRpdF90ZXh0IChzdHJpbmc/IHByZWVkaXQsIHVp bnQgY3Vyc29yKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHNldF9z dXJyb3VuZGluZyAoc3RyaW5nIHRleHQsIHVpbnQgY3Vyc29yLCB1aW50IGFuY2hvcik7CisrCQlb Tm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCB1cGRhdGVfY29udGVudF9oaW50cyAo Q2x1dHRlci5JbnB1dENvbnRlbnRIaW50RmxhZ3MgaGludCk7CisrCQlbTm9XcmFwcGVyXQorKwkJ cHVibGljIHZpcnR1YWwgdm9pZCB1cGRhdGVfY29udGVudF9wdXJwb3NlIChDbHV0dGVyLklucHV0 Q29udGVudFB1cnBvc2UgcHVycG9zZSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1Ymxp YyBib29sIGNhbl9zaG93X3ByZWVkaXQgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dENvbnRlbnRIaW50RmxhZ3MgY29udGVudF9oaW50 cyB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVy LklucHV0Q29udGVudFB1cnBvc2UgY29udGVudF9wdXJwb3NlIHsgZ2V0OyBzZXQ7IH0KKysJCVtI YXNFbWl0dGVyXQorKwkJcHVibGljIHNpZ25hbCB2b2lkIGNvbW1pdCAoc3RyaW5nIHRleHQpOwor KwkJcHVibGljIHNpZ25hbCB2b2lkIGN1cnNvcl9sb2NhdGlvbl9jaGFuZ2VkIChHcmFwaGVuZS5S ZWN0IG9iamVjdCk7CisrCQlbSGFzRW1pdHRlcl0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBkZWxl dGVfc3Vycm91bmRpbmcgKHVpbnQgb2Zmc2V0LCB1aW50IGxlbik7CisrCQlwdWJsaWMgc2lnbmFs IHZvaWQgaW5wdXRfcGFuZWxfc3RhdGUgKENsdXR0ZXIuSW5wdXRQYW5lbFN0YXRlIG9iamVjdCk7 CisrCQlbSGFzRW1pdHRlcl0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCByZXF1ZXN0X3N1cnJvdW5k aW5nICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnRlcnZhbF9nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBjbGFzcyBJbnRlcnZhbCA6IEdMaWIuSW5p dGlhbGx5VW5vd25lZCwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0 cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBJbnRlcnZhbCAoR0xpYi5UeXBlIGd0 eXBlLCAuLi4pOworKwkJcHVibGljIENsdXR0ZXIuSW50ZXJ2YWwgY2xvbmUgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdW5vd25lZCBHTGliLlZhbHVlPyBjb21w dXRlIChkb3VibGUgZmFjdG9yKTsKKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wgY29tcHV0ZV92YWx1 ZSAoZG91YmxlIGZhY3Rvciwgb3V0IEdMaWIuVmFsdWUgdmFsdWUpOworKwkJcHVibGljIEdMaWIu VmFsdWUgZ2V0X2ZpbmFsX3ZhbHVlICgpOworKwkJcHVibGljIEdMaWIuVmFsdWUgZ2V0X2luaXRp YWxfdmFsdWUgKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfaW50ZXJ2YWwgKC4uLik7CisrCQlwdWJs aWMgR0xpYi5UeXBlIGdldF92YWx1ZV90eXBlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTIiKV0KKysJCXB1YmxpYyBib29sIGlzX3ZhbGlkICgpOworKwkJcHVibGljIHVub3duZWQgR0xp Yi5WYWx1ZT8gcGVla19maW5hbF92YWx1ZSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIEdMaWIuVmFs dWU/IHBlZWtfaW5pdGlhbF92YWx1ZSAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCByZWdpc3Rl cl9wcm9ncmVzc19mdW5jIChHTGliLlR5cGUgdmFsdWVfdHlwZSwgQ2x1dHRlci5Qcm9ncmVzc0Z1 bmMgZnVuYyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQg c2V0X2ZpbmFsICguLi4pOworKwkJcHVibGljIHZvaWQgc2V0X2ZpbmFsX3ZhbHVlIChHTGliLlZh bHVlIHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9p ZCBzZXRfaW5pdGlhbCAoLi4uKTsKKysJCXB1YmxpYyB2b2lkIHNldF9pbml0aWFsX3ZhbHVlIChH TGliLlZhbHVlIHZhbHVlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9pbnRlcnZhbCAoLi4uKTsKKysJ CXB1YmxpYyB2aXJ0dWFsIGJvb2wgdmFsaWRhdGUgKEdMaWIuUGFyYW1TcGVjIHBzcGVjKTsKKysJ CVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBJbnRl cnZhbC53aXRoX3ZhbHVlcyAoR0xpYi5UeXBlIGd0eXBlLCBHTGliLlZhbHVlPyBpbml0aWFsLCBH TGliLlZhbHVlPyBmaW5hbCk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEyIildCisrCQlwdWJsaWMgR0xpYi5WYWx1ZSBmaW5hbCB7IG93bmVkIGdldDsg c2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEy IildCisrCQlwdWJsaWMgR0xpYi5WYWx1ZSBpbml0aWFsIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJ CXB1YmxpYyBHTGliLlR5cGUgdmFsdWVfdHlwZSB7IGdldDsgY29uc3RydWN0OyB9CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVf aWQgPSBmYWxzZSldCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisr CXB1YmxpYyBjbGFzcyBLZXlFdmVudCA6IENsdXR0ZXIuRXZlbnQgeworKwkJcHVibGljIHdlYWsg Q2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdz IGZsYWdzOworKwkJcHVibGljIHVpbnQxNiBoYXJkd2FyZV9rZXljb2RlOworKwkJcHVibGljIHVp bnQga2V5dmFsOworKwkJcHVibGljIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVyX3N0YXRl OworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBD bHV0dGVyLlN0YWdlIHN0YWdlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENs dXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMgdW5pY2hhciB1bmljb2RlX3ZhbHVlOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9rZXlmcmFtZV90cmFuc2l0aW9uX2dldF90eXBlICgpIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBjbGFzcyBLZXlmcmFtZVRyYW5zaXRp b24gOiBDbHV0dGVyLlByb3BlcnR5VHJhbnNpdGlvbiwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJ CVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJU cmFuc2l0aW9uKiIpXQorKwkJcHVibGljIEtleWZyYW1lVHJhbnNpdGlvbiAoc3RyaW5nIHByb3Bl cnR5X25hbWUpOworKwkJcHVibGljIHZvaWQgY2xlYXIgKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRf a2V5X2ZyYW1lICh1aW50IGluZGV4Xywgb3V0IGRvdWJsZSBrZXksIG91dCBDbHV0dGVyLkFuaW1h dGlvbk1vZGUgbW9kZSwgb3V0IEdMaWIuVmFsdWUgdmFsdWUpOworKwkJcHVibGljIHVpbnQgZ2V0 X25fa2V5X2ZyYW1lcyAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9rZXlfZnJhbWUgKHVpbnQgaW5k ZXhfLCBkb3VibGUga2V5LCBDbHV0dGVyLkFuaW1hdGlvbk1vZGUgbW9kZSwgR0xpYi5WYWx1ZSB2 YWx1ZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfa2V5X2ZyYW1lcyAoW0NDb2RlIChhcnJheV9sZW5n dGhfY25hbWUgPSAibl9rZXlfZnJhbWVzIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDAuNSwgYXJyYXlf bGVuZ3RoX3R5cGUgPSAiZ3VpbnQiKV0gZG91YmxlW10ga2V5X2ZyYW1lcyk7CisrCQlwdWJsaWMg dm9pZCBzZXRfbW9kZXMgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2NuYW1lID0gIm5fbW9kZXMiLCBh cnJheV9sZW5ndGhfcG9zID0gMC41LCBhcnJheV9sZW5ndGhfdHlwZSA9ICJndWludCIpXSBDbHV0 dGVyLkFuaW1hdGlvbk1vZGVbXSBtb2Rlcyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfdmFsdWVzIChb Q0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJuX3ZhbHVlcyIsIGFycmF5X2xlbmd0aF9wb3Mg PSAwLjUsIGFycmF5X2xlbmd0aF90eXBlID0gImd1aW50IildIEdMaWIuVmFsdWVbXSB2YWx1ZXMp OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IHR5cGVfaWQgPSAiY2x1dHRlcl9rZXltYXBfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGFic3Ry YWN0IGNsYXNzIEtleW1hcCA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBLZXltYXAgKCk7CisrCQlwdWJsaWMg dmlydHVhbCBib29sIGdldF9jYXBzX2xvY2tfc3RhdGUgKCk7CisrCQlwdWJsaWMgdmlydHVhbCBQ YW5nby5EaXJlY3Rpb24gZ2V0X2RpcmVjdGlvbiAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIGJvb2wg Z2V0X251bV9sb2NrX3N0YXRlICgpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHN0YXRlX2NoYW5n ZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2xheWVyX25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVi bGljIGNsYXNzIExheWVyTm9kZSA6IENsdXR0ZXIuUGFpbnROb2RlIHsKKysJCVtDQ29kZSAoaGFz X2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJQYWludE5vZGUqIild CisrCQlwdWJsaWMgTGF5ZXJOb2RlIChDb2dsLk1hdHJpeCBwcm9qZWN0aW9uLCBDYWlyby5SZWN0 YW5nbGUgdmlld3BvcnQsIGZsb2F0IHdpZHRoLCBmbG9hdCBoZWlnaHQsIHVpbnQ4IG9wYWNpdHkp OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IHR5cGVfaWQgPSAiY2x1dHRlcl9sYXlvdXRfbWFuYWdlcl9nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBMYXlvdXRNYW5h Z2VyIDogR0xpYi5Jbml0aWFsbHlVbm93bmVkIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBMYXlvdXRNYW5hZ2VyICgpOworKwkJcHVi bGljIHZpcnR1YWwgdm9pZCBhbGxvY2F0ZSAoQ2x1dHRlci5Db250YWluZXIgY29udGFpbmVyLCBD bHV0dGVyLkFjdG9yQm94IGFsbG9jYXRpb24sIENsdXR0ZXIuQWxsb2NhdGlvbkZsYWdzIGZsYWdz KTsKKysJCXB1YmxpYyB2b2lkIGNoaWxkX2dldCAoQ2x1dHRlci5Db250YWluZXIgY29udGFpbmVy LCBDbHV0dGVyLkFjdG9yIGFjdG9yLCAuLi4pOworKwkJcHVibGljIHZvaWQgY2hpbGRfZ2V0X3By b3BlcnR5IChDbHV0dGVyLkNvbnRhaW5lciBjb250YWluZXIsIENsdXR0ZXIuQWN0b3IgYWN0b3Is IHN0cmluZyBwcm9wZXJ0eV9uYW1lLCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCXB1YmxpYyB2b2lk IGNoaWxkX3NldCAoQ2x1dHRlci5Db250YWluZXIgY29udGFpbmVyLCBDbHV0dGVyLkFjdG9yIGFj dG9yLCAuLi4pOworKwkJcHVibGljIHZvaWQgY2hpbGRfc2V0X3Byb3BlcnR5IChDbHV0dGVyLkNv bnRhaW5lciBjb250YWluZXIsIENsdXR0ZXIuQWN0b3IgYWN0b3IsIHN0cmluZyBwcm9wZXJ0eV9u YW1lLCBHTGliLlZhbHVlIHZhbHVlKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVh bCB1bm93bmVkIENsdXR0ZXIuTGF5b3V0TWV0YSBjcmVhdGVfY2hpbGRfbWV0YSAoQ2x1dHRlci5D b250YWluZXIgY29udGFpbmVyLCBDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtOb1dyYXBwZXJd CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGVuZF9hbmltYXRpb24gKCk7CisrCQlwdWJsaWMgdW5v d25lZCBHTGliLlBhcmFtU3BlYyBmaW5kX2NoaWxkX3Byb3BlcnR5IChzdHJpbmcgbmFtZSk7Cisr CQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgZG91YmxlIGdldF9hbmltYXRpb25fcHJv Z3Jlc3MgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdW5vd25l ZCBDbHV0dGVyLkxheW91dE1ldGEgZ2V0X2NoaWxkX21ldGEgKENsdXR0ZXIuQ29udGFpbmVyIGNv bnRhaW5lciwgQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGlj IHZpcnR1YWwgR0xpYi5UeXBlIGdldF9jaGlsZF9tZXRhX3R5cGUgKCk7CisrCQlwdWJsaWMgdmly dHVhbCB2b2lkIGdldF9wcmVmZXJyZWRfaGVpZ2h0IChDbHV0dGVyLkNvbnRhaW5lciBjb250YWlu ZXIsIGZsb2F0IGZvcl93aWR0aCwgb3V0IGZsb2F0IG1pbl9oZWlnaHRfcCwgb3V0IGZsb2F0IG5h dF9oZWlnaHRfcCk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGdldF9wcmVmZXJyZWRfd2lkdGgg KENsdXR0ZXIuQ29udGFpbmVyIGNvbnRhaW5lciwgZmxvYXQgZm9yX2hlaWdodCwgb3V0IGZsb2F0 IG1pbl93aWR0aF9wLCBvdXQgZmxvYXQgbmF0X3dpZHRoX3ApOworKwkJW0NDb2RlIChhcnJheV9s ZW5ndGhfcG9zID0gMC4xLCBhcnJheV9sZW5ndGhfdHlwZSA9ICJndWludCIpXQorKwkJcHVibGlj IEdMaWIuUGFyYW1TcGVjW10gbGlzdF9jaGlsZF9wcm9wZXJ0aWVzICgpOworKwkJcHVibGljIHZp cnR1YWwgdm9pZCBzZXRfY29udGFpbmVyIChDbHV0dGVyLkNvbnRhaW5lcj8gY29udGFpbmVyKTsK KysJCVtIYXNFbWl0dGVyXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgbGF5b3V0X2No YW5nZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2xheW91dF9tZXRhX2dldF90eXBlICgpIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIExheW91 dE1ldGEgOiBDbHV0dGVyLkNoaWxkTWV0YSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVu Y3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgTGF5b3V0TWV0YSAoKTsKKysJCXB1YmxpYyB1 bm93bmVkIENsdXR0ZXIuTGF5b3V0TWFuYWdlciBnZXRfbWFuYWdlciAoKTsKKysJCXB1YmxpYyBD bHV0dGVyLkxheW91dE1hbmFnZXIgbWFuYWdlciB7IGdldDsgY29uc3RydWN0OyB9CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY29weV9mdW5j dGlvbiA9ICJnX2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5 cGVfaWQgPSAiY2x1dHRlcl9tYXJnaW5fZ2V0X3R5cGUgKCkiKV0KKysJW0NvbXBhY3RdCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBNYXJnaW4geworKwkJcHVi bGljIGZsb2F0IGJvdHRvbTsKKysJCXB1YmxpYyBmbG9hdCBsZWZ0OworKwkJcHVibGljIGZsb2F0 IHJpZ2h0OworKwkJcHVibGljIGZsb2F0IHRvcDsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9m dW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBNYXJnaW4gKCk7CisrCQlwdWJsaWMgQ2x1dHRl ci5NYXJnaW4gY29weSAoKTsKKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7CisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBm YWxzZSldCisrCVtDb21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1Ymxp YyBjbGFzcyBNb3Rpb25FdmVudCA6IENsdXR0ZXIuRXZlbnQgeworKwkJcHVibGljIGRvdWJsZSBh eGVzOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7CisrCQlwdWJs aWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIENsdXR0ZXIuTW9kaWZpZXJU eXBlIG1vZGlmaWVyX3N0YXRlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7 CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0YWdlOworKwkJcHVibGljIHVpbnQzMiB0 aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMgZmxvYXQg eDsKKysJCXB1YmxpYyBmbG9hdCB5OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9vZmZzY3JlZW5fZWZmZWN0 X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGFi c3RyYWN0IGNsYXNzIE9mZnNjcmVlbkVmZmVjdCA6IENsdXR0ZXIuRWZmZWN0IHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBPZmZzY3Jl ZW5FZmZlY3QgKCk7CisrCQlwdWJsaWMgdmlydHVhbCBDb2dsLkhhbmRsZSBjcmVhdGVfdGV4dHVy ZSAoZmxvYXQgd2lkdGgsIGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x NCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3RhcmdldF9yZWN0IChvdXQgdW5vd25lZCBHcmFwaGVu ZS5SZWN0IHJlY3QpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTQiLCBzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBib29sIGdldF90YXJn ZXRfc2l6ZSAob3V0IGZsb2F0IHdpZHRoLCBvdXQgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLkhhbmRsZSBnZXRfdGV4 dHVyZSAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgcGFpbnRfdGFyZ2V0IChDbHV0dGVyLlBh aW50Q29udGV4dCBwYWludF9jb250ZXh0KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfcGFnZV90dXJuX2Vm ZmVjdF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1Ymxp YyBjbGFzcyBQYWdlVHVybkVmZmVjdCA6IENsdXR0ZXIuRGVmb3JtRWZmZWN0IHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJFZmZlY3Qq IildCisrCQlwdWJsaWMgUGFnZVR1cm5FZmZlY3QgKGRvdWJsZSBwZXJpb2QsIGRvdWJsZSBhbmds ZSwgZmxvYXQgcmFkaXVzKTsKKysJCXB1YmxpYyBkb3VibGUgZ2V0X2FuZ2xlICgpOworKwkJcHVi bGljIGRvdWJsZSBnZXRfcGVyaW9kICgpOworKwkJcHVibGljIGZsb2F0IGdldF9yYWRpdXMgKCk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfYW5nbGUgKGRvdWJsZSBhbmdsZSk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfcGVyaW9kIChkb3VibGUgcGVyaW9kKTsKKysJCXB1YmxpYyB2b2lkIHNldF9yYWRpdXMg KGZsb2F0IHJhZGl1cyk7CisrCQlwdWJsaWMgZG91YmxlIGFuZ2xlIHsgZ2V0OyBzZXQ7IH0KKysJ CXB1YmxpYyBkb3VibGUgcGVyaW9kIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBmbG9hdCByYWRp dXMgeyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIHJlZl9mdW5jdGlvbiA9ICJjbHV0dGVyX3BhaW50X2NvbnRleHRfcmVm IiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BhaW50X2NvbnRleHRfZ2V0X3R5cGUgKCkiLCB1bnJlZl9m dW5jdGlvbiA9ICJjbHV0dGVyX3BhaW50X2NvbnRleHRfdW5yZWYiKV0KKysJW0NvbXBhY3RdCisr CXB1YmxpYyBjbGFzcyBQYWludENvbnRleHQgeworKwkJcHVibGljIHZvaWQgZGVzdHJveSAoKTsK KysJCXB1YmxpYyB1bm93bmVkIENvZ2wuRnJhbWVidWZmZXIgZ2V0X2ZyYW1lYnVmZmVyICgpOwor KwkJcHVibGljIHZvaWQgcG9wX2ZyYW1lYnVmZmVyICgpOworKwkJcHVibGljIHZvaWQgcHVzaF9m cmFtZWJ1ZmZlciAoQ29nbC5GcmFtZWJ1ZmZlciBmcmFtZWJ1ZmZlcik7CisrCQlwdWJsaWMgdW5v d25lZCBDbHV0dGVyLlBhaW50Q29udGV4dCBAcmVmICgpOworKwkJcHVibGljIHZvaWQgdW5yZWYg KCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BhaW50X25vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIFBhaW50Tm9kZSB7 CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0 ZWQgUGFpbnROb2RlICgpOworKwkJcHVibGljIHZvaWQgYWRkX2NoaWxkIChDbHV0dGVyLlBhaW50 Tm9kZSBjaGlsZCk7CisrCQlwdWJsaWMgdm9pZCBhZGRfbXVsdGl0ZXh0dXJlX3JlY3RhbmdsZSAo Q2x1dHRlci5BY3RvckJveCByZWN0LCBmbG9hdCB0ZXh0X2Nvb3JkcywgdWludCB0ZXh0X2Nvb3Jk c19sZW4pOworKwkJcHVibGljIHZvaWQgYWRkX3JlY3RhbmdsZSAoQ2x1dHRlci5BY3RvckJveCBy ZWN0KTsKKysJCXB1YmxpYyB2b2lkIGFkZF90ZXh0dXJlX3JlY3RhbmdsZSAoQ2x1dHRlci5BY3Rv ckJveCByZWN0LCBmbG9hdCB4XzEsIGZsb2F0IHlfMSwgZmxvYXQgeF8yLCBmbG9hdCB5XzIpOwor KwkJcHVibGljIHVub3duZWQgQ29nbC5GcmFtZWJ1ZmZlciBnZXRfZnJhbWVidWZmZXIgKCk7Cisr CQlwdWJsaWMgdm9pZCBwYWludCAoQ2x1dHRlci5QYWludENvbnRleHQgcGFpbnRfY29udGV4dCk7 CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlBhaW50Tm9kZSBAcmVmICgpOworKwkJcHVibGlj IHZvaWQgc2V0X25hbWUgKHN0cmluZyBuYW1lKTsKKysJCXB1YmxpYyB2b2lkIHVucmVmICgpOwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNv cHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2Zy ZWUiLCB0eXBlX2lkID0gImNsdXR0ZXJfcGFpbnRfdm9sdW1lX2dldF90eXBlICgpIildCisrCVtD b21wYWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBQYWlu dFZvbHVtZSB7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgQ2x1dHRl ci5QYWludFZvbHVtZSBjb3B5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJ cHVibGljIHZvaWQgZnJlZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1 YmxpYyBmbG9hdCBnZXRfZGVwdGggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisr CQlwdWJsaWMgZmxvYXQgZ2V0X2hlaWdodCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYi KV0KKysJCXB1YmxpYyB2b2lkIGdldF9vcmlnaW4gKG91dCB1bm93bmVkIEdyYXBoZW5lLlBvaW50 M0QgdmVydGV4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBmbG9h dCBnZXRfd2lkdGggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMg dm9pZCBzZXRfZGVwdGggKGZsb2F0IGRlcHRoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYi KV0KKysJCXB1YmxpYyBib29sIHNldF9mcm9tX2FsbG9jYXRpb24gKENsdXR0ZXIuQWN0b3IgYWN0 b3IpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X2hl aWdodCAoZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF9vcmlnaW4gKEdyYXBoZW5lLlBvaW50M0Qgb3JpZ2luKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF93aWR0aCAoZmxvYXQgd2lk dGgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgdW5pb24g KENsdXR0ZXIuUGFpbnRWb2x1bWUgYW5vdGhlcl9wdik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIHZvaWQgdW5pb25fYm94IChDbHV0dGVyLkFjdG9yQm94IGJveCk7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg dHlwZV9pZCA9ICJjbHV0dGVyX3Bhbl9hY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGNsYXNzIFBhbkFjdGlvbiA6IENsdXR0ZXIuR2Vz dHVyZUFjdGlvbiB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwg dHlwZSA9ICJDbHV0dGVyQWN0aW9uKiIpXQorKwkJcHVibGljIFBhbkFjdGlvbiAoKTsKKysJCXB1 YmxpYyBkb3VibGUgZ2V0X2FjY2VsZXJhdGlvbl9mYWN0b3IgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4yNCIpXQorKwkJcHVibGljIGZsb2F0IGdldF9jb25zdHJhaW5lZF9tb3Rpb25fZGVs dGEgKHVpbnQgcG9pbnQsIG91dCBmbG9hdCBkZWx0YV94LCBvdXQgZmxvYXQgZGVsdGFfeSk7Cisr CQlwdWJsaWMgZG91YmxlIGdldF9kZWNlbGVyYXRpb24gKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRf aW50ZXJwb2xhdGUgKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfaW50ZXJwb2xhdGVkX2Nvb3JkcyAo b3V0IGZsb2F0IGludGVycG9sYXRlZF94LCBvdXQgZmxvYXQgaW50ZXJwb2xhdGVkX3kpOworKwkJ cHVibGljIGZsb2F0IGdldF9pbnRlcnBvbGF0ZWRfZGVsdGEgKG91dCBmbG9hdCBkZWx0YV94LCBv dXQgZmxvYXQgZGVsdGFfeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwkJcHVi bGljIHZvaWQgZ2V0X21vdGlvbl9jb29yZHMgKHVpbnQgcG9pbnQsIG91dCBmbG9hdCBtb3Rpb25f eCwgb3V0IGZsb2F0IG1vdGlvbl95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0IildCisr CQlwdWJsaWMgZmxvYXQgZ2V0X21vdGlvbl9kZWx0YSAodWludCBwb2ludCwgb3V0IGZsb2F0IGRl bHRhX3gsIG91dCBmbG9hdCBkZWx0YV95KTsKKysJCXB1YmxpYyBDbHV0dGVyLlBhbkF4aXMgZ2V0 X3Bhbl9heGlzICgpOworKwkJcHVibGljIHZvaWQgc2V0X2FjY2VsZXJhdGlvbl9mYWN0b3IgKGRv dWJsZSBmYWN0b3IpOworKwkJcHVibGljIHZvaWQgc2V0X2RlY2VsZXJhdGlvbiAoZG91YmxlIHJh dGUpOworKwkJcHVibGljIHZvaWQgc2V0X2ludGVycG9sYXRlIChib29sIHNob3VsZF9pbnRlcnBv bGF0ZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfcGFuX2F4aXMgKENsdXR0ZXIuUGFuQXhpcyBheGlz KTsKKysJCXB1YmxpYyBkb3VibGUgYWNjZWxlcmF0aW9uX2ZhY3RvciB7IGdldDsgc2V0OyB9Cisr CQlwdWJsaWMgZG91YmxlIGRlY2VsZXJhdGlvbiB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9v bCBpbnRlcnBvbGF0ZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5QYW5BeGlzIHBh bl9heGlzIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCBib29sIHBhbiAo Q2x1dHRlci5BY3RvciBhY3RvciwgYm9vbCBpc19pbnRlcnBvbGF0ZWQpOworKwkJcHVibGljIHZp cnR1YWwgc2lnbmFsIHZvaWQgcGFuX3N0b3BwZWQgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGxvd2Vy X2Nhc2VfY3N1ZmZpeCA9ICJwYXJhbV91bml0cyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYXJhbV91 bml0c19nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgUGFyYW1TcGVjVW5pdCA6IEdMaWIu UGFyYW1TcGVjIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0K KysJCXByb3RlY3RlZCBQYXJhbVNwZWNVbml0ICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYXRoX2dl dF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGNsYXNz IFBhdGggOiBHTGliLkluaXRpYWxseVVub3duZWQgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIFBhdGggKCk7CisrCQlwdWJsaWMgdm9pZCBh ZGRfY2Fpcm9fcGF0aCAoQ2Fpcm8uUGF0aCBjcGF0aCk7CisrCQlwdWJsaWMgdm9pZCBhZGRfY2xv c2UgKCk7CisrCQlwdWJsaWMgdm9pZCBhZGRfY3VydmVfdG8gKGludCB4XzEsIGludCB5XzEsIGlu dCB4XzIsIGludCB5XzIsIGludCB4XzMsIGludCB5XzMpOworKwkJcHVibGljIHZvaWQgYWRkX2xp bmVfdG8gKGludCB4LCBpbnQgeSk7CisrCQlwdWJsaWMgdm9pZCBhZGRfbW92ZV90byAoaW50IHgs IGludCB5KTsKKysJCXB1YmxpYyB2b2lkIGFkZF9ub2RlIChDbHV0dGVyLlBhdGhOb2RlIG5vZGUp OworKwkJcHVibGljIHZvaWQgYWRkX3JlbF9jdXJ2ZV90byAoaW50IHhfMSwgaW50IHlfMSwgaW50 IHhfMiwgaW50IHlfMiwgaW50IHhfMywgaW50IHlfMyk7CisrCQlwdWJsaWMgdm9pZCBhZGRfcmVs X2xpbmVfdG8gKGludCB4LCBpbnQgeSk7CisrCQlwdWJsaWMgdm9pZCBhZGRfcmVsX21vdmVfdG8g KGludCB4LCBpbnQgeSk7CisrCQlwdWJsaWMgYm9vbCBhZGRfc3RyaW5nIChzdHJpbmcgc3RyKTsK KysJCXB1YmxpYyB2b2lkIGNsZWFyICgpOworKwkJcHVibGljIHZvaWQgQGZvcmVhY2ggKENsdXR0 ZXIuUGF0aENhbGxiYWNrIGNhbGxiYWNrKTsKKysJCXB1YmxpYyBzdHJpbmcgZ2V0X2Rlc2NyaXB0 aW9uICgpOworKwkJcHVibGljIHVpbnQgZ2V0X2xlbmd0aCAoKTsKKysJCXB1YmxpYyB1aW50IGdl dF9uX25vZGVzICgpOworKwkJcHVibGljIENsdXR0ZXIuUGF0aE5vZGUgZ2V0X25vZGUgKHVpbnQg aW5kZXhfKTsKKysJCXB1YmxpYyBHTGliLlNMaXN0PHdlYWsgQ2x1dHRlci5QYXRoTm9kZT8+IGdl dF9ub2RlcyAoKTsKKysJCXB1YmxpYyB1aW50IGdldF9wb3NpdGlvbiAoZG91YmxlIHByb2dyZXNz LCBvdXQgQ2x1dHRlci5Lbm90IHBvc2l0aW9uKTsKKysJCXB1YmxpYyB2b2lkIGluc2VydF9ub2Rl IChpbnQgaW5kZXhfLCBDbHV0dGVyLlBhdGhOb2RlIG5vZGUpOworKwkJcHVibGljIHZvaWQgcmVt b3ZlX25vZGUgKHVpbnQgaW5kZXhfKTsKKysJCXB1YmxpYyB2b2lkIHJlcGxhY2Vfbm9kZSAodWlu dCBpbmRleF8sIENsdXR0ZXIuUGF0aE5vZGUgbm9kZSk7CisrCQlwdWJsaWMgYm9vbCBzZXRfZGVz Y3JpcHRpb24gKHN0cmluZyBzdHIpOworKwkJcHVibGljIHZvaWQgdG9fY2Fpcm9fcGF0aCAoQ2Fp cm8uQ29udGV4dCBjcik7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxz ZSldCisrCQlwdWJsaWMgUGF0aC53aXRoX2Rlc2NyaXB0aW9uIChzdHJpbmcgZGVzYyk7CisrCQlw dWJsaWMgc3RyaW5nIGRlc2NyaXB0aW9uIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyB1 aW50IGxlbmd0aCB7IGdldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wYXRoX2NvbnN0cmFpbnRfZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwlwdWJsaWMgY2xhc3Mg UGF0aENvbnN0cmFpbnQgOiBDbHV0dGVyLkNvbnN0cmFpbnQgeworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckNvbnN0cmFpbnQqIildCisr CQlwdWJsaWMgUGF0aENvbnN0cmFpbnQgKENsdXR0ZXIuUGF0aD8gcGF0aCwgZmxvYXQgb2Zmc2V0 KTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfb2Zmc2V0ICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1 dHRlci5QYXRoIGdldF9wYXRoICgpOworKwkJcHVibGljIHZvaWQgc2V0X29mZnNldCAoZmxvYXQg b2Zmc2V0KTsKKysJCXB1YmxpYyB2b2lkIHNldF9wYXRoIChDbHV0dGVyLlBhdGg/IHBhdGgpOwor KwkJcHVibGljIGZsb2F0IG9mZnNldCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5Q YXRoIHBhdGggeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHNpZ25hbCB2b2lkIG5vZGVfcmVhY2hl ZCAoQ2x1dHRlci5BY3RvciBhY3RvciwgdWludCBpbmRleCk7CisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgcmVmX2Z1bmN0aW9uID0gImNsdXR0 ZXJfcGlja19jb250ZXh0X3JlZiIsIHR5cGVfaWQgPSAiY2x1dHRlcl9waWNrX2NvbnRleHRfZ2V0 X3R5cGUgKCkiLCB1bnJlZl9mdW5jdGlvbiA9ICJjbHV0dGVyX3BpY2tfY29udGV4dF91bnJlZiIp XQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIFBpY2tDb250ZXh0IHsKKysJCXB1YmxpYyB2 b2lkIGRlc3Ryb3kgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlBpY2tDb250ZXh0IEBy ZWYgKCk7CisrCQlwdWJsaWMgdm9pZCB1bnJlZiAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfcGlwZWxp bmVfbm9kZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlw dWJsaWMgY2xhc3MgUGlwZWxpbmVOb2RlIDogQ2x1dHRlci5QYWludE5vZGUgeworKwkJW0NDb2Rl IChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIFBpcGVsaW5l Tm9kZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfcHJvcGVydHlfdHJhbnNpdGlvbl9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgUHJvcGVy dHlUcmFuc2l0aW9uIDogQ2x1dHRlci5UcmFuc2l0aW9uLCBDbHV0dGVyLlNjcmlwdGFibGUgewor KwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRl clRyYW5zaXRpb24qIildCisrCQlwdWJsaWMgUHJvcGVydHlUcmFuc2l0aW9uIChzdHJpbmc/IHBy b3BlcnR5X25hbWUpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF9wcm9wZXJ0eV9uYW1l ICgpOworKwkJcHVibGljIHZvaWQgc2V0X3Byb3BlcnR5X25hbWUgKHN0cmluZz8gcHJvcGVydHlf bmFtZSk7CisrCQlwdWJsaWMgc3RyaW5nIHByb3BlcnR5X25hbWUgeyBnZXQ7IHNldDsgfQorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVf aWQgPSAiY2x1dHRlcl9yZWN0YW5nbGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgUmVjdGFuZ2xlIDogQ2x1dHRlci5BY3RvciwgQXRr LkltcGxlbWVudG9yLCBDbHV0dGVyLkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0 dGVyLlNjcmlwdGFibGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFs c2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBSZWN0YW5nbGUgKCk7 CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4x MCIsIHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgZ2V0X2JvcmRlcl9j b2xvciAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5j ZSA9ICIxLjEwIiwgc2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgdWludCBnZXRfYm9yZGVyX3dp ZHRoICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGdldF9jb2xvciAoKTsKKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgdm9pZCBzZXRfYm9yZGVyX2NvbG9yIChDbHV0dGVyLkNvbG9yIGNvbG9yKTsKKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwg c2luY2UgPSAiMC4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfYm9yZGVyX3dpZHRoICh1aW50IHdp ZHRoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9 ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29sb3IgKENsdXR0ZXIuQ29sb3IgY29sb3Ip OworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1 dHRlckFjdG9yKiIpXQorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBSZWN0YW5nbGUud2l0aF9jb2xvciAoQ2x1dHRl ci5Db2xvciBjb2xvcik7CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBib3JkZXJfY29sb3IgeyBn ZXQ7IHNldDsgfQorKwkJcHVibGljIHVpbnQgYm9yZGVyX3dpZHRoIHsgZ2V0OyBzZXQ7IH0KKysJ CXB1YmxpYyBDbHV0dGVyLkNvbG9yIGNvbG9yIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29y TWV0aG9kXQorKwkJcHVibGljIGJvb2wgaGFzX2JvcmRlciB7IGdldDsgc2V0OyB9CisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX3Jvb3Rfbm9kZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgUm9vdE5v ZGUgOiBDbHV0dGVyLlBhaW50Tm9kZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rp b24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyUGFpbnROb2RlKiIpXQorKwkJcHVibGljIFJvb3RO b2RlIChDb2dsLkZyYW1lYnVmZmVyIGZyYW1lYnVmZmVyLCBDbHV0dGVyLkNvbG9yIGNsZWFyX2Nv bG9yLCBDb2dsLkJ1ZmZlckJpdCBjbGVhcl9mbGFncyk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3JvdGF0 ZV9hY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJ cHVibGljIGNsYXNzIFJvdGF0ZUFjdGlvbiA6IENsdXR0ZXIuR2VzdHVyZUFjdGlvbiB7CisrCQlb Q0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyQWN0 aW9uKiIpXQorKwkJcHVibGljIFJvdGF0ZUFjdGlvbiAoKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHNp Z25hbCBib29sIHJvdGF0ZSAoQ2x1dHRlci5BY3RvciBhY3RvciwgZG91YmxlIGFuZ2xlKTsKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBl X2lkID0gImNsdXR0ZXJfc2NyaXB0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjYiKV0KKysJcHVibGljIGNsYXNzIFNjcmlwdCA6IEdMaWIuT2JqZWN0IHsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBTY3JpcHQgKCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9pZCBhZGRfc2VhcmNo X3BhdGhzIChbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9ICJuX3BhdGhzIiwgYXJyYXlfbGVu Z3RoX3BvcyA9IDEuMSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3NpemUiKV0gc3RyaW5nW10gcGF0 aHMpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMTIiLCBzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIGFkZF9zdGF0ZXMgKHN0cmlu Zz8gbmFtZSwgQ2x1dHRlci5TdGF0ZSBzdGF0ZSk7CisrCQlwdWJsaWMgdm9pZCBjb25uZWN0X3Np Z25hbHMgKHZvaWQqIHVzZXJfZGF0YSk7CisrCQlwdWJsaWMgdm9pZCBjb25uZWN0X3NpZ25hbHNf ZnVsbCAoQ2x1dHRlci5TY3JpcHRDb25uZWN0RnVuYyBmdW5jKTsKKysJCXB1YmxpYyB2b2lkIGVu c3VyZV9vYmplY3RzICgpOworKwkJcHVibGljIHVub3duZWQgR0xpYi5PYmplY3QgZ2V0X29iamVj dCAoc3RyaW5nIG5hbWUpOworKwkJcHVibGljIGludCBnZXRfb2JqZWN0cyAoLi4uKTsKKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2lu Y2UgPSAiMS44IildCisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLlN0YXRlIGdldF9zdGF0ZXMg KHN0cmluZz8gbmFtZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHVub3duZWQgc3RyaW5nIGdldF90cmFuc2xhdGlvbl9kb21haW4gKCk7CisrCQlwdWJsaWMgdmly dHVhbCBHTGliLlR5cGUgZ2V0X3R5cGVfZnJvbV9uYW1lIChzdHJpbmcgdHlwZV9uYW1lKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBHTGliLkxpc3Q8d2VhayBHTGli Lk9iamVjdD4gbGlzdF9vYmplY3RzICgpOworKwkJcHVibGljIHVpbnQgbG9hZF9mcm9tX2RhdGEg KHN0cmluZyBkYXRhLCBzc2l6ZV90IGxlbmd0aCkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlwdWJs aWMgdWludCBsb2FkX2Zyb21fZmlsZSAoc3RyaW5nIGZpbGVuYW1lKSB0aHJvd3MgR0xpYi5FcnJv cjsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdWludCBsb2FkX2Zy b21fcmVzb3VyY2UgKHN0cmluZyByZXNvdXJjZV9wYXRoKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdHJpbmcgbG9va3VwX2ZpbGVu YW1lIChzdHJpbmcgZmlsZW5hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF90cmFuc2xhdGlvbl9kb21haW4gKHN0cmluZz8gZG9tYWluKTsKKysJ CXB1YmxpYyB2b2lkIHVubWVyZ2Vfb2JqZWN0cyAodWludCBtZXJnZV9pZCk7CisrCQlbTm9BY2Nl c3Nvck1ldGhvZF0KKysJCXB1YmxpYyBzdHJpbmcgZmlsZW5hbWUgeyBvd25lZCBnZXQ7IH0KKysJ CVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGJvb2wgZmlsZW5hbWVfc2V0IHsgZ2V0OyB9 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHN0cmluZyB0cmFuc2xh dGlvbl9kb21haW4geyBnZXQ7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zY3JvbGxfYWN0b3Jf Z2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGNs YXNzIFNjcm9sbEFjdG9yIDogQ2x1dHRlci5BY3RvciwgQXRrLkltcGxlbWVudG9yLCBDbHV0dGVy LkFuaW1hdGFibGUsIENsdXR0ZXIuQ29udGFpbmVyLCBDbHV0dGVyLlNjcmlwdGFibGUgeworKwkJ W0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFj dG9yKiIpXQorKwkJcHVibGljIFNjcm9sbEFjdG9yICgpOworKwkJcHVibGljIENsdXR0ZXIuU2Ny b2xsTW9kZSBnZXRfc2Nyb2xsX21vZGUgKCk7CisrCQlwdWJsaWMgdm9pZCBzY3JvbGxfdG9fcG9p bnQgKEdyYXBoZW5lLlBvaW50IHBvaW50KTsKKysJCXB1YmxpYyB2b2lkIHNjcm9sbF90b19yZWN0 IChHcmFwaGVuZS5SZWN0IHJlY3QpOworKwkJcHVibGljIHZvaWQgc2V0X3Njcm9sbF9tb2RlIChD bHV0dGVyLlNjcm9sbE1vZGUgbW9kZSk7CisrCQlwdWJsaWMgQ2x1dHRlci5TY3JvbGxNb2RlIHNj cm9sbF9tb2RlIHsgZ2V0OyBzZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3Rd CisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGNsYXNzIFNjcm9sbEV2ZW50 IDogQ2x1dHRlci5FdmVudCB7CisrCQlwdWJsaWMgZG91YmxlIGF4ZXM7CisrCQlwdWJsaWMgd2Vh ayBDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZTsKKysJCXB1YmxpYyBDbHV0dGVyLlNjcm9sbERp cmVjdGlvbiBkaXJlY3Rpb247CisrCQlwdWJsaWMgQ2x1dHRlci5TY3JvbGxGaW5pc2hGbGFncyBm aW5pc2hfZmxhZ3M7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVi bGljIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVyX3N0YXRlOworKwkJcHVibGljIENsdXR0 ZXIuU2Nyb2xsU291cmNlIHNjcm9sbF9zb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkFj dG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJs aWMgdWludDMyIHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJCXB1 YmxpYyBmbG9hdCB4OworKwkJcHVibGljIGZsb2F0IHk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3NlYXRf Z2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGFic3RyYWN0IGNsYXNzIFNlYXQgOiBHTGliLk9iamVj dCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90 ZWN0ZWQgU2VhdCAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGFw cGx5X2tiZF9hMTF5X3NldHRpbmdzIChDbHV0dGVyLktiZEExMXlTZXR0aW5ncyBzZXR0aW5ncyk7 CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGJlbGxfbm90aWZ5ICgpOworKwkJcHVibGljIHZpcnR1 YWwgdm9pZCBjb21wcmVzc19tb3Rpb24gKENsdXR0ZXIuRXZlbnQgZXZlbnQsIENsdXR0ZXIuRXZl bnQgdG9fZGlzY2FyZCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBj b3B5X2V2ZW50X2RhdGEgKENsdXR0ZXIuRXZlbnQgc3JjLCBDbHV0dGVyLkV2ZW50IGRlc3QpOwor KwkJcHVibGljIHZpcnR1YWwgQ2x1dHRlci5WaXJ0dWFsSW5wdXREZXZpY2UgY3JlYXRlX3ZpcnR1 YWxfZGV2aWNlIChDbHV0dGVyLklucHV0RGV2aWNlVHlwZSBkZXZpY2VfdHlwZSk7CisrCQlwdWJs aWMgdm9pZCBlbnN1cmVfYTExeV9zdGF0ZSAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMg dmlydHVhbCB2b2lkIGZyZWVfZXZlbnRfZGF0YSAoQ2x1dHRlci5FdmVudCBldmVudCk7CisrCQlw dWJsaWMgdm9pZCBnZXRfa2JkX2ExMXlfc2V0dGluZ3MgKENsdXR0ZXIuS2JkQTExeVNldHRpbmdz IHNldHRpbmdzKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHVub3duZWQgQ2x1dHRlci5JbnB1dERldmlj ZSBnZXRfa2V5Ym9hcmQgKCk7CisrCQlwdWJsaWMgdmlydHVhbCB1bm93bmVkIENsdXR0ZXIuS2V5 bWFwIGdldF9rZXltYXAgKCk7CisrCQlwdWJsaWMgdmlydHVhbCB1bm93bmVkIENsdXR0ZXIuSW5w dXREZXZpY2UgZ2V0X3BvaW50ZXIgKCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfcG9pbnRlcl9hMTF5 X3NldHRpbmdzIChDbHV0dGVyLlBvaW50ZXJBMTF5U2V0dGluZ3Mgc2V0dGluZ3MpOworKwkJcHVi bGljIHZpcnR1YWwgQ2x1dHRlci5WaXJ0dWFsRGV2aWNlVHlwZSBnZXRfc3VwcG9ydGVkX3ZpcnR1 YWxfZGV2aWNlX3R5cGVzICgpOworKwkJcHVibGljIHZpcnR1YWwgR0xpYi5MaXN0PHdlYWsgQ2x1 dHRlci5JbnB1dERldmljZT4gbGlzdF9kZXZpY2VzICgpOworKwkJcHVibGljIHZvaWQgc2V0X2ti ZF9hMTF5X3NldHRpbmdzIChDbHV0dGVyLktiZEExMXlTZXR0aW5ncyBzZXR0aW5ncyk7CisrCQlw dWJsaWMgdm9pZCBzZXRfcG9pbnRlcl9hMTF5X2R3ZWxsX2NsaWNrX3R5cGUgKENsdXR0ZXIuUG9p bnRlckExMXlEd2VsbENsaWNrVHlwZSBjbGlja190eXBlKTsKKysJCXB1YmxpYyB2b2lkIHNldF9w b2ludGVyX2ExMXlfc2V0dGluZ3MgKENsdXR0ZXIuUG9pbnRlckExMXlTZXR0aW5ncyBzZXR0aW5n cyk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIHdhcnBfcG9pbnRlciAoaW50IHgsIGludCB5KTsK KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENsdXR0ZXIuQmFja2VuZCBiYWNrZW5k IHsgb3duZWQgZ2V0OyBjb25zdHJ1Y3Q7IH0KKysJCXB1YmxpYyBzaWduYWwgdm9pZCBkZXZpY2Vf YWRkZWQgKENsdXR0ZXIuSW5wdXREZXZpY2Ugb2JqZWN0KTsKKysJCXB1YmxpYyBzaWduYWwgdm9p ZCBkZXZpY2VfcmVtb3ZlZCAoQ2x1dHRlci5JbnB1dERldmljZSBvYmplY3QpOworKwkJcHVibGlj IHNpZ25hbCB2b2lkIGtiZF9hMTF5X2ZsYWdzX2NoYW5nZWQgKHVpbnQgc2V0dGluZ3NfZmxhZ3Ms IHVpbnQgY2hhbmdlZF9tYXNrKTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBrYmRfYTExeV9tb2Rz X3N0YXRlX2NoYW5nZWQgKHVpbnQgbGF0Y2hlZF9tYXNrLCB1aW50IGxvY2tlZF9tYXNrKTsKKysJ CXB1YmxpYyBzaWduYWwgdm9pZCBwdHJfYTExeV9kd2VsbF9jbGlja190eXBlX2NoYW5nZWQgKENs dXR0ZXIuUG9pbnRlckExMXlEd2VsbENsaWNrVHlwZSBjbGlja190eXBlKTsKKysJCXB1YmxpYyBz aWduYWwgdm9pZCBwdHJfYTExeV90aW1lb3V0X3N0YXJ0ZWQgKENsdXR0ZXIuSW5wdXREZXZpY2Ug ZGV2aWNlLCBDbHV0dGVyLlBvaW50ZXJBMTF5VGltZW91dFR5cGUgdGltZW91dF90eXBlLCB1aW50 IGRlbGF5KTsKKysJCXB1YmxpYyBzaWduYWwgdm9pZCBwdHJfYTExeV90aW1lb3V0X3N0b3BwZWQg KENsdXR0ZXIuSW5wdXREZXZpY2UgZGV2aWNlLCBDbHV0dGVyLlBvaW50ZXJBMTF5VGltZW91dFR5 cGUgdGltZW91dF90eXBlLCBib29sIGNsaWNrZWQpOworKwkJcHVibGljIHNpZ25hbCB2b2lkIHRv b2xfY2hhbmdlZCAoQ2x1dHRlci5JbnB1dERldmljZSBvYmplY3QsIENsdXR0ZXIuSW5wdXREZXZp Y2VUb29sIHAwKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc2V0dGluZ3NfZ2V0X3R5cGUgKCkiKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgU2V0dGluZ3MgOiBHTGli Lk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisr CQlwcm90ZWN0ZWQgU2V0dGluZ3MgKCk7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRl ci5TZXR0aW5ncyBnZXRfZGVmYXVsdCAoKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5j ZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkJhY2tlbmQgYmFja2VuZCB7IGNvbnN0cnVj dDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44Iild CisrCQlwdWJsaWMgaW50IGRuZF9kcmFnX3RocmVzaG9sZCB7IGdldDsgc2V0OyB9CisrCQlbTm9B Y2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBpbnQgZG91YmxlX2NsaWNrX2Rpc3RhbmNlIHsgZ2V0 OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCBkb3VibGVfY2xp Y2tfdGltZSB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBp bnQgZm9udF9hbnRpYWxpYXMgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisr CQlwdWJsaWMgaW50IGZvbnRfZHBpIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9k XQorKwkJcHVibGljIHN0cmluZyBmb250X2hpbnRfc3R5bGUgeyBvd25lZCBnZXQ7IHNldDsgfQor KwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgaW50IGZvbnRfaGludGluZyB7IGdldDsg c2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBzdHJpbmcgZm9udF9uYW1l IHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIHN0 cmluZyBmb250X3N1YnBpeGVsX29yZGVyIHsgb3duZWQgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJcHVibGljIHVpbnQgZm9udGNvbmZpZ190aW1lc3RhbXAgeyBzZXQ7IH0K KysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJ cHVibGljIGludCBsb25nX3ByZXNzX2R1cmF0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCVtOb0FjY2Vz c29yTWV0aG9kXQorKwkJcHVibGljIHVpbnQgcGFzc3dvcmRfaGludF90aW1lIHsgZ2V0OyBzZXQ7 IH0KKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIGludCB1bnNjYWxlZF9mb250X2Rw aSB7IHNldDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNs YXNzIFNoYWRlciB7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIv Y2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3NoYWRlcl9lZmZlY3RfZ2V0X3R5cGUgKCki KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xhc3MgU2hhZGVyRWZm ZWN0IDogQ2x1dHRlci5PZmZzY3JlZW5FZmZlY3QgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckVmZmVjdCoiKV0KKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBTaGFkZXJFZmZlY3QgKENsdXR0ZXIuU2hhZGVy VHlwZSBzaGFkZXJfdHlwZSk7CisrCQlwdWJsaWMgdW5vd25lZCBDb2dsLkhhbmRsZSBnZXRfcHJv Z3JhbSAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENvZ2wuSGFuZGxlIGdldF9zaGFkZXIgKCk7Cisr CQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgc3RyaW5nIGdldF9zdGF0aWNfc2hhZGVy X3NvdXJjZSAoKTsKKysJCXB1YmxpYyBib29sIHNldF9zaGFkZXJfc291cmNlIChzdHJpbmcgc291 cmNlKTsKKysJCXB1YmxpYyB2b2lkIHNldF91bmlmb3JtX3ZhbHVlIChzdHJpbmcgbmFtZSwgR0xp Yi5WYWx1ZSB2YWx1ZSk7CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBDbHV0dGVy LlNoYWRlclR5cGUgc2hhZGVyX3R5cGUgeyBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJf c2hhZGVyX2Zsb2F0X2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBTaGFkZXJGbG9hdCB7 CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0 ZWQgU2hhZGVyRmxvYXQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3NoYWRlcl9pbnRfZ2V0X3R5cGUg KCkiKV0KKysJcHVibGljIGNsYXNzIFNoYWRlckludCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1 Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwcm90ZWN0ZWQgU2hhZGVySW50ICgpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQg PSAiY2x1dHRlcl9zaGFkZXJfbWF0cml4X2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBT aGFkZXJNYXRyaXggeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Up XQorKwkJcHJvdGVjdGVkIFNoYWRlck1hdHJpeCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc25hcF9j b25zdHJhaW50X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJ cHVibGljIGNsYXNzIFNuYXBDb25zdHJhaW50IDogQ2x1dHRlci5Db25zdHJhaW50IHsKKysJCVtD Q29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJDb25z dHJhaW50KiIpXQorKwkJcHVibGljIFNuYXBDb25zdHJhaW50IChDbHV0dGVyLkFjdG9yPyBzb3Vy Y2UsIENsdXR0ZXIuU25hcEVkZ2UgZnJvbV9lZGdlLCBDbHV0dGVyLlNuYXBFZGdlIHRvX2VkZ2Us IGZsb2F0IG9mZnNldCk7CisrCQlwdWJsaWMgdm9pZCBnZXRfZWRnZXMgKG91dCBDbHV0dGVyLlNu YXBFZGdlIGZyb21fZWRnZSwgb3V0IENsdXR0ZXIuU25hcEVkZ2UgdG9fZWRnZSk7CisrCQlwdWJs aWMgZmxvYXQgZ2V0X29mZnNldCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENsdXR0ZXIuQWN0b3Ig Z2V0X3NvdXJjZSAoKTsKKysJCXB1YmxpYyB2b2lkIHNldF9lZGdlcyAoQ2x1dHRlci5TbmFwRWRn ZSBmcm9tX2VkZ2UsIENsdXR0ZXIuU25hcEVkZ2UgdG9fZWRnZSk7CisrCQlwdWJsaWMgdm9pZCBz ZXRfb2Zmc2V0IChmbG9hdCBvZmZzZXQpOworKwkJcHVibGljIHZvaWQgc2V0X3NvdXJjZSAoQ2x1 dHRlci5BY3Rvcj8gc291cmNlKTsKKysJCVtOb0FjY2Vzc29yTWV0aG9kXQorKwkJcHVibGljIENs dXR0ZXIuU25hcEVkZ2UgZnJvbV9lZGdlIHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCQlwdWJs aWMgZmxvYXQgb2Zmc2V0IHsgZ2V0OyBzZXQgY29uc3RydWN0OyB9CisrCQlwdWJsaWMgQ2x1dHRl ci5BY3RvciBzb3VyY2UgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJCVtOb0FjY2Vzc29yTWV0 aG9kXQorKwkJcHVibGljIENsdXR0ZXIuU25hcEVkZ2UgdG9fZWRnZSB7IGdldDsgc2V0IGNvbnN0 cnVjdDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zdGFnZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lv biAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBjbGFzcyBTdGFnZSA6IENsdXR0ZXIuR3JvdXAs IEF0ay5JbXBsZW1lbnRvciwgQ2x1dHRlci5BbmltYXRhYmxlLCBDbHV0dGVyLkNvbnRhaW5lciwg Q2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIw LjgiKV0KKysJCXB1YmxpYyBTdGFnZSAoKTsKKysJCXB1YmxpYyBib29sIGNhcHR1cmUgKGJvb2wg cGFpbnQsIENhaXJvLlJlY3RhbmdsZUludCByZWN0LCBDbHV0dGVyLkNhcHR1cmUgY2FwdHVyZXMs IGludCBuX2NhcHR1cmVzKTsKKysJCXB1YmxpYyB2b2lkIGNhcHR1cmVfaW50byAoYm9vbCBwYWlu dCwgQ2Fpcm8uUmVjdGFuZ2xlSW50IHJlY3QsIHVpbnQ4IGRhdGEpOworKwkJW0NDb2RlIChjbmFt ZSA9ICJjbHV0dGVyX3N0YWdlX2V2ZW50IildCisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40Iild CisrCQlwdWJsaWMgYm9vbCBlbWl0X2V2ZW50IChDbHV0dGVyLkV2ZW50IGV2ZW50KTsKKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdm9p ZCBlbnN1cmVfY3VycmVudCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyB2b2lkIGVuc3VyZV9yZWRyYXcgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIild CisrCQlwdWJsaWMgdm9pZCBlbnN1cmVfdmlld3BvcnQgKCk7CisrCQlwdWJsaWMgdm9pZCBmcmVl emVfdXBkYXRlcyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBi b29sIGdldF9hY2NlcHRfZm9jdXMgKCk7CisrCQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9y IGdldF9hY3Rvcl9hdF9wb3MgKENsdXR0ZXIuUGlja01vZGUgcGlja19tb2RlLCBmbG9hdCB4LCBm bG9hdCB5KTsKKysJCXB1YmxpYyBib29sIGdldF9jYXB0dXJlX2ZpbmFsX3NpemUgKENhaXJvLlJl Y3RhbmdsZUludCByZWN0LCBpbnQgd2lkdGgsIGludCBoZWlnaHQsIGZsb2F0IHNjYWxlKTsKKysJ CVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBnZXRfY29sb3IgKCk7CisrCQlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHN0 YXRpYyB1bm93bmVkIENsdXR0ZXIuU3RhZ2UgZ2V0X2RlZmF1bHQgKCk7CisrCQlwdWJsaWMgaW50 NjQgZ2V0X2ZyYW1lX2NvdW50ZXIgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisr CQlwdWJsaWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF9rZXlfZm9jdXMgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBnZXRfbWluaW11bV9zaXplIChv dXQgdWludCB3aWR0aCwgb3V0IHVpbnQgaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjgiKV0KKysJCXB1YmxpYyBib29sIGdldF9tb3Rpb25fZXZlbnRzX2VuYWJsZWQgKCk7CisrCQlw dWJsaWMgQ2x1dHRlci5QZXJzcGVjdGl2ZSBnZXRfcGVyc3BlY3RpdmUgKCk7CisrCQlwdWJsaWMg Q2Fpcm8uUmVnaW9uIGdldF9yZWRyYXdfY2xpcCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJCXB1YmxpYyBib29sIGdldF90aHJvdHRsZV9tb3Rpb25fZXZlbnRzICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdldF90 aXRsZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIGdl dF91c2VfYWxwaGEgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMg dm9pZCBoaWRlX2N1cnNvciAoKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVw cmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgYm9vbCBp c19kZWZhdWx0ICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVk X3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyB2b2lkIHF1ZXVlX3Jl ZHJhdyAoKTsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXQorKwkJcHVibGljIHVp bnQ4W10gcmVhZF9waXhlbHMgKGludCB4LCBpbnQgeSwgaW50IHdpZHRoID0gLTEsIGludCBoZWln aHQgPSAtMSk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfcmVkcmF3IildCisrCQlwdWJs aWMgdm9pZCByZWRyYXcgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJs aWMgdm9pZCBzZXRfYWNjZXB0X2ZvY3VzIChib29sIGFjY2VwdF9mb2N1cyk7CisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIHZvaWQgc2V0X2NvbG9yIChDbHV0dGVyLkNvbG9yIGNvbG9yKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9rZXlfZm9jdXMgKENsdXR0ZXIuQWN0 b3I/IGFjdG9yKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyB2b2lk IHNldF9taW5pbXVtX3NpemUgKHVpbnQgd2lkdGgsIHVpbnQgaGVpZ2h0KTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9tb3Rpb25fZXZlbnRzX2VuYWJs ZWQgKGJvb2wgZW5hYmxlZCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfcGVyc3BlY3RpdmUgKENsdXR0 ZXIuUGVyc3BlY3RpdmUgcGVyc3BlY3RpdmUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIp XQorKwkJcHVibGljIHZvaWQgc2V0X3Rocm90dGxlX21vdGlvbl9ldmVudHMgKGJvb2wgdGhyb3R0 bGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3Rp dGxlIChzdHJpbmcgdGl0bGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVi bGljIHZvaWQgc2V0X3VzZV9hbHBoYSAoYm9vbCB1c2VfYWxwaGEpOworKwkJcHVibGljIHZvaWQg c2hvd19jdXJzb3IgKCk7CisrCQlwdWJsaWMgdm9pZCB0aGF3X3VwZGF0ZXMgKCk7CisrCQlwdWJs aWMgdm9pZCB1cGRhdGVfcmVzb3VyY2Vfc2NhbGVzICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuNiIpXQorKwkJcHVibGljIGJvb2wgYWNjZXB0X2ZvY3VzIHsgZ2V0OyBzZXQ7IH0KKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIildCisr CQlwdWJsaWMgQ2x1dHRlci5Db2xvciBjb2xvciB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nv ck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGN1cnNvcl92aXNpYmxlIHsgZ2V0OyBzZXQ7IH0KKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBDbHV0dGVyLkFjdG9yIGtleV9m b2N1cyB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJs aWMgQ2x1dHRlci5QZXJzcGVjdGl2ZSBwZXJzcGVjdGl2ZSB7IGdldDsgc2V0OyB9CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMgc3RyaW5nIHRpdGxlIHsgZ2V0OyBzZXQ7 IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJCXB1YmxpYyBib29sIHVzZV9hbHBo YSB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMg dmlydHVhbCBzaWduYWwgdm9pZCBhY3RpdmF0ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjIwIildCisrCQlwdWJsaWMgc2lnbmFsIHZvaWQgYWZ0ZXJfcGFpbnQgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBkZWFjdGl2 YXRlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZpcnR1YWwg c2lnbmFsIGJvb2wgZGVsZXRlX2V2ZW50IChDbHV0dGVyLkV2ZW50IGV2ZW50KTsKKysJCXB1Ymxp YyB2aXJ0dWFsIHNpZ25hbCB2b2lkIHBhaW50X3ZpZXcgKENsdXR0ZXIuU3RhZ2VWaWV3IHZpZXcp OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IHR5cGVfaWQgPSAiY2x1dHRlcl9zdGFnZV9tYW5hZ2VyX2dldF90eXBlICgpIildCisrCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGNsYXNzIFN0YWdlTWFuYWdlciA6IEdMaWIu T2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJ CXByb3RlY3RlZCBTdGFnZU1hbmFnZXIgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44Iild CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5TdGFnZU1hbmFnZXIgZ2V0X2RlZmF1 bHQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdW5vd25lZCBD bHV0dGVyLlN0YWdlIGdldF9kZWZhdWx0X3N0YWdlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjAuOCIpXQorKwkJcHVibGljIEdMaWIuU0xpc3Q8d2VhayBDbHV0dGVyLlN0YWdlPiBsaXN0X3N0 YWdlcyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIEdMaWIuU0xpc3Q8Q2x1dHRlci5TdGFnZT4gcGVl a19zdGFnZXMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgQ2x1 dHRlci5TdGFnZSBkZWZhdWx0X3N0YWdlIHsgZ2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MC44IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBzdGFnZV9hZGRlZCAoQ2x1dHRl ci5TdGFnZSBzdGFnZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMg dmlydHVhbCBzaWduYWwgdm9pZCBzdGFnZV9yZW1vdmVkIChDbHV0dGVyLlN0YWdlIHN0YWdlKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBo YXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIw LjIiKV0KKysJcHVibGljIGNsYXNzIFN0YWdlU3RhdGVFdmVudCA6IENsdXR0ZXIuRXZlbnQgewor KwkJcHVibGljIENsdXR0ZXIuU3RhZ2VTdGF0ZSBjaGFuZ2VkX21hc2s7CisrCQlwdWJsaWMgQ2x1 dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIENsdXR0ZXIuU3RhZ2VTdGF0ZSBuZXdf c3RhdGU7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB3 ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlwdWJsaWMgdWludDMyIHRpbWU7CisrCQlwdWJs aWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc3RhZ2Vfdmlld19n ZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgU3RhZ2VWaWV3IDogR0xpYi5PYmplY3Qgewor KwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVk IFN0YWdlVmlldyAoKTsKKysJCXB1YmxpYyB1bm93bmVkIENvZ2wuRnJhbWVidWZmZXIgZ2V0X2Zy YW1lYnVmZmVyICgpOworKwkJcHVibGljIHZvaWQgZ2V0X2xheW91dCAoQ2Fpcm8uUmVjdGFuZ2xl SW50IHJlY3QpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBnZXRfb2Zmc2NyZWVuX3RyYW5zZm9y bWF0aW9uX21hdHJpeCAoQ29nbC5NYXRyaXggbWF0cml4KTsKKysJCXB1YmxpYyB1bm93bmVkIENv Z2wuRnJhbWVidWZmZXIgZ2V0X29uc2NyZWVuICgpOworKwkJcHVibGljIGZsb2F0IGdldF9zY2Fs ZSAoKTsKKysJCXB1YmxpYyB2b2lkIGludmFsaWRhdGVfb2Zmc2NyZWVuX2JsaXRfcGlwZWxpbmUg KCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBzZXR1cF9vZmZzY3Jl ZW5fYmxpdF9waXBlbGluZSAoQ29nbC5QaXBlbGluZSBwaXBlbGluZSk7CisrCQlwdWJsaWMgdm9p ZCB0cmFuc2Zvcm1fdG9fb25zY3JlZW4gKGZsb2F0IHgsIGZsb2F0IHkpOworKwkJW05vQWNjZXNz b3JNZXRob2RdCisrCQlwdWJsaWMgQ2Fpcm8uUmVjdGFuZ2xlSW50IGxheW91dCB7IG93bmVkIGdl dDsgc2V0IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJsaWMgZmxv YXQgc2NhbGUgeyBnZXQ7IHNldCBjb25zdHJ1Y3Q7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfc3RhdGVf Z2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgY2xh c3MgU3RhdGUgOiBHTGliLk9iamVjdCwgQ2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAo aGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisrCQlw dWJsaWMgU3RhdGUgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0 ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHVpbnQgZ2V0X2R1 cmF0aW9uIChzdHJpbmc/IHNvdXJjZV9zdGF0ZV9uYW1lLCBzdHJpbmc/IHRhcmdldF9zdGF0ZV9u YW1lKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9 ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdW5vd25lZCBzdHJpbmcgZ2V0X3N0 YXRlICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTIiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyBHTGliLkxpc3Q8d2VhayBzdHJp bmc+IGdldF9zdGF0ZXMgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0 X2R1cmF0aW9uIChzdHJpbmc/IHNvdXJjZV9zdGF0ZV9uYW1lLCBzdHJpbmc/IHRhcmdldF9zdGF0 ZV9uYW1lLCB1aW50IGR1cmF0aW9uKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdW5v d25lZCBDbHV0dGVyLlN0YXRlIHNldF9rZXkgKHN0cmluZz8gc291cmNlX3N0YXRlX25hbWUsIHN0 cmluZyB0YXJnZXRfc3RhdGVfbmFtZSwgR0xpYi5PYmplY3Qgb2JqZWN0LCBzdHJpbmcgcHJvcGVy dHlfbmFtZSwgdWludCBtb2RlLCBHTGliLlZhbHVlIHZhbHVlLCBkb3VibGUgcHJlX2RlbGF5LCBk b3VibGUgcG9zdF9kZWxheSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHVub3duZWQg Q2x1dHRlci5UaW1lbGluZSBzZXRfc3RhdGUgKHN0cmluZyB0YXJnZXRfc3RhdGVfbmFtZSk7Cisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIs IHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5UaW1lbGluZSB3YXJw X3RvX3N0YXRlIChzdHJpbmcgdGFyZ2V0X3N0YXRlX25hbWUpOworKwkJW05vQWNjZXNzb3JNZXRo b2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xMiIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHVpbnQgZHVyYXRpb24geyBnZXQ7IHNl dDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGlj IHN0cmluZyBzdGF0ZSB7IG93bmVkIGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjEuNCIpXQorKwkJ cHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgY29tcGxldGVkICgpOworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAi Z19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0g ImNsdXR0ZXJfc3RhdGVfa2V5X2dldF90eXBlICgpIildCisrCVtDb21wYWN0XQorKwlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBjbGFzcyBTdGF0ZUtleSB7CisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0g IjEuNCIpXQorKwkJcHVibGljIEdMaWIuVHlwZSBnZXRfcHJvcGVydHlfdHlwZSAoKTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0eXBlX2lk ID0gImNsdXR0ZXJfc3dpcGVfYWN0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjgiKV0KKysJcHVibGljIGNsYXNzIFN3aXBlQWN0aW9uIDogQ2x1dHRlci5HZXN0dXJl QWN0aW9uIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBl ID0gIkNsdXR0ZXJBY3Rpb24qIildCisrCQlwdWJsaWMgU3dpcGVBY3Rpb24gKCk7CisrCQlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNCIsIHNpbmNl ID0gIjEuOCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgc3dlcHQgKENsdXR0ZXIu QWN0b3IgYWN0b3IsIENsdXR0ZXIuU3dpcGVEaXJlY3Rpb24gZGlyZWN0aW9uKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjE0IildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgYm9vbCBzd2lw ZSAoQ2x1dHRlci5BY3RvciBhY3RvciwgQ2x1dHRlci5Td2lwZURpcmVjdGlvbiBkaXJlY3Rpb24p OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IHR5cGVfaWQgPSAiY2x1dHRlcl90YXBfYWN0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjE0IildCisrCXB1YmxpYyBjbGFzcyBUYXBBY3Rpb24gOiBDbHV0dGVyLkdl c3R1cmVBY3Rpb24geworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2Us IHR5cGUgPSAiQ2x1dHRlckFjdGlvbioiKV0KKysJCXB1YmxpYyBUYXBBY3Rpb24gKCk7CisrCQlw dWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCB0YXAgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVf aWQgPSAiY2x1dHRlcl90ZXh0X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjAiKV0KKysJcHVibGljIGNsYXNzIFRleHQgOiBDbHV0dGVyLkFjdG9yLCBBdGsuSW1wbGVtZW50 b3IsIENsdXR0ZXIuQW5pbWF0YWJsZSwgQ2x1dHRlci5Db250YWluZXIsIENsdXR0ZXIuU2NyaXB0 YWJsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9 ICJDbHV0dGVyQWN0b3IqIildCisrCQlwdWJsaWMgVGV4dCAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEwIildCisrCQlwdWJsaWMgaW50IGNvb3Jkc190b19wb3NpdGlvbiAoZmxvYXQgeCwg ZmxvYXQgeSk7CisrCQlwdWJsaWMgdm9pZCBkZWxldGVfY2hhcnMgKHVpbnQgbl9jaGFycyk7Cisr CQlwdWJsaWMgYm9vbCBkZWxldGVfc2VsZWN0aW9uICgpOworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJcHVibGlj IFRleHQuZnVsbCAoc3RyaW5nIGZvbnRfbmFtZSwgc3RyaW5nIHRleHQsIENsdXR0ZXIuQ29sb3Ig Y29sb3IpOworKwkJcHVibGljIGJvb2wgZ2V0X2FjdGl2YXRhYmxlICgpOworKwkJcHVibGljIHVu b3duZWQgUGFuZ28uQXR0ckxpc3QgZ2V0X2F0dHJpYnV0ZXMgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5UZXh0QnVmZmVyIGdldF9i dWZmZXIgKCk7CisrCQlwdWJsaWMgc3RyaW5nIGdldF9jaGFycyAoc3NpemVfdCBzdGFydF9wb3Ms IHNzaXplX3QgZW5kX3Bvcyk7CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBnZXRfY29sb3IgKCk7 CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBnZXRfY3Vyc29yX2NvbG9yICgpOworKwkJcHVibGlj IGludCBnZXRfY3Vyc29yX3Bvc2l0aW9uICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTYi KV0KKysJCXB1YmxpYyB2b2lkIGdldF9jdXJzb3JfcmVjdCAob3V0IHVub3duZWQgR3JhcGhlbmUu UmVjdCByZWN0KTsKKysJCXB1YmxpYyB1aW50IGdldF9jdXJzb3Jfc2l6ZSAoKTsKKysJCXB1Ymxp YyBib29sIGdldF9jdXJzb3JfdmlzaWJsZSAoKTsKKysJCXB1YmxpYyBib29sIGdldF9lZGl0YWJs ZSAoKTsKKysJCXB1YmxpYyBQYW5nby5FbGxpcHNpemVNb2RlIGdldF9lbGxpcHNpemUgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgUGFuZ28uRm9udERlc2NyaXB0 aW9uIGdldF9mb250X2Rlc2NyaXB0aW9uICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdl dF9mb250X25hbWUgKCk7CisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dENvbnRlbnRIaW50RmxhZ3Mg Z2V0X2lucHV0X2hpbnRzICgpOworKwkJcHVibGljIENsdXR0ZXIuSW5wdXRDb250ZW50UHVycG9z ZSBnZXRfaW5wdXRfcHVycG9zZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJ CXB1YmxpYyBib29sIGdldF9qdXN0aWZ5ICgpOworKwkJcHVibGljIHVub3duZWQgUGFuZ28uTGF5 b3V0IGdldF9sYXlvdXQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJs aWMgdm9pZCBnZXRfbGF5b3V0X29mZnNldHMgKG91dCBpbnQgeCwgb3V0IGludCB5KTsKKysJCXB1 YmxpYyBQYW5nby5BbGlnbm1lbnQgZ2V0X2xpbmVfYWxpZ25tZW50ICgpOworKwkJcHVibGljIGJv b2wgZ2V0X2xpbmVfd3JhcCAoKTsKKysJCXB1YmxpYyBQYW5nby5XcmFwTW9kZSBnZXRfbGluZV93 cmFwX21vZGUgKCk7CisrCQlwdWJsaWMgaW50IGdldF9tYXhfbGVuZ3RoICgpOworKwkJcHVibGlj IHVuaWNoYXIgZ2V0X3Bhc3N3b3JkX2NoYXIgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfc2VsZWN0 YWJsZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBDbHV0dGVy LkNvbG9yIGdldF9zZWxlY3RlZF90ZXh0X2NvbG9yICgpOworKwkJcHVibGljIHN0cmluZyBnZXRf c2VsZWN0aW9uICgpOworKwkJcHVibGljIGludCBnZXRfc2VsZWN0aW9uX2JvdW5kICgpOworKwkJ cHVibGljIENsdXR0ZXIuQ29sb3IgZ2V0X3NlbGVjdGlvbl9jb2xvciAoKTsKKysJCXB1YmxpYyBi b29sIGdldF9zaW5nbGVfbGluZV9tb2RlICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIGdl dF90ZXh0ICgpOworKwkJcHVibGljIGJvb2wgZ2V0X3VzZV9tYXJrdXAgKCk7CisrCQlwdWJsaWMg Ym9vbCBoYXNfcHJlZWRpdCAoKTsKKysJCXB1YmxpYyB2b2lkIGluc2VydF90ZXh0IChzdHJpbmcg dGV4dCwgc3NpemVfdCBwb3NpdGlvbik7CisrCQlwdWJsaWMgdm9pZCBpbnNlcnRfdW5pY2hhciAo dW5pY2hhciB3Yyk7CisrCQlwdWJsaWMgYm9vbCBwb3NpdGlvbl90b19jb29yZHMgKGludCBwb3Np dGlvbiwgb3V0IGZsb2F0IHgsIG91dCBmbG9hdCB5LCBvdXQgZmxvYXQgbGluZV9oZWlnaHQgPSBu dWxsKTsKKysJCXB1YmxpYyB2b2lkIHNldF9hY3RpdmF0YWJsZSAoYm9vbCBhY3RpdmF0YWJsZSk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfYXR0cmlidXRlcyAoUGFuZ28uQXR0ckxpc3Q/IGF0dHJzKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzZXRfYnVmZmVy IChDbHV0dGVyLlRleHRCdWZmZXIgYnVmZmVyKTsKKysJCXB1YmxpYyB2b2lkIHNldF9jb2xvciAo Q2x1dHRlci5Db2xvciBjb2xvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRfY3Vyc29yX2NvbG9yIChD bHV0dGVyLkNvbG9yPyBjb2xvcik7CisrCQlwdWJsaWMgdm9pZCBzZXRfY3Vyc29yX3Bvc2l0aW9u IChpbnQgcG9zaXRpb24pOworKwkJcHVibGljIHZvaWQgc2V0X2N1cnNvcl9zaXplIChpbnQgc2l6 ZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfY3Vyc29yX3Zpc2libGUgKGJvb2wgY3Vyc29yX3Zpc2li bGUpOworKwkJcHVibGljIHZvaWQgc2V0X2VkaXRhYmxlIChib29sIGVkaXRhYmxlKTsKKysJCXB1 YmxpYyB2b2lkIHNldF9lbGxpcHNpemUgKFBhbmdvLkVsbGlwc2l6ZU1vZGUgbW9kZSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgdm9pZCBzZXRfZm9udF9kZXNjcmlw dGlvbiAoUGFuZ28uRm9udERlc2NyaXB0aW9uIGZvbnRfZGVzYyk7CisrCQlwdWJsaWMgdm9pZCBz ZXRfZm9udF9uYW1lIChzdHJpbmc/IGZvbnRfbmFtZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfaW5w dXRfaGludHMgKENsdXR0ZXIuSW5wdXRDb250ZW50SGludEZsYWdzIGhpbnRzKTsKKysJCXB1Ymxp YyB2b2lkIHNldF9pbnB1dF9wdXJwb3NlIChDbHV0dGVyLklucHV0Q29udGVudFB1cnBvc2UgcHVy cG9zZSk7CisrCQlwdWJsaWMgdm9pZCBzZXRfanVzdGlmeSAoYm9vbCBqdXN0aWZ5KTsKKysJCXB1 YmxpYyB2b2lkIHNldF9saW5lX2FsaWdubWVudCAoUGFuZ28uQWxpZ25tZW50IGFsaWdubWVudCk7 CisrCQlwdWJsaWMgdm9pZCBzZXRfbGluZV93cmFwIChib29sIGxpbmVfd3JhcCk7CisrCQlwdWJs aWMgdm9pZCBzZXRfbGluZV93cmFwX21vZGUgKFBhbmdvLldyYXBNb2RlIHdyYXBfbW9kZSk7Cisr CQlwdWJsaWMgdm9pZCBzZXRfbWFya3VwIChzdHJpbmc/IG1hcmt1cCk7CisrCQlwdWJsaWMgdm9p ZCBzZXRfbWF4X2xlbmd0aCAoaW50IG1heCk7CisrCQlwdWJsaWMgdm9pZCBzZXRfcGFzc3dvcmRf Y2hhciAodW5pY2hhciB3Yyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJs aWMgdm9pZCBzZXRfcHJlZWRpdF9zdHJpbmcgKHN0cmluZz8gcHJlZWRpdF9zdHIsIFBhbmdvLkF0 dHJMaXN0PyBwcmVlZGl0X2F0dHJzLCB1aW50IGN1cnNvcl9wb3MpOworKwkJcHVibGljIHZvaWQg c2V0X3NlbGVjdGFibGUgKGJvb2wgc2VsZWN0YWJsZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfc2VsZWN0ZWRfdGV4dF9jb2xvciAoQ2x1dHRlci5D b2xvcj8gY29sb3IpOworKwkJcHVibGljIHZvaWQgc2V0X3NlbGVjdGlvbiAoc3NpemVfdCBzdGFy dF9wb3MsIHNzaXplX3QgZW5kX3Bvcyk7CisrCQlwdWJsaWMgdm9pZCBzZXRfc2VsZWN0aW9uX2Jv dW5kIChpbnQgc2VsZWN0aW9uX2JvdW5kKTsKKysJCXB1YmxpYyB2b2lkIHNldF9zZWxlY3Rpb25f Y29sb3IgKENsdXR0ZXIuQ29sb3I/IGNvbG9yKTsKKysJCXB1YmxpYyB2b2lkIHNldF9zaW5nbGVf bGluZV9tb2RlIChib29sIHNpbmdsZV9saW5lKTsKKysJCXB1YmxpYyB2b2lkIHNldF90ZXh0IChz dHJpbmc/IHRleHQpOworKwkJcHVibGljIHZvaWQgc2V0X3VzZV9tYXJrdXAgKGJvb2wgc2V0dGlu Zyk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdGV4dF9hY3RpdmF0ZSIpXQorKwkJcHVi bGljIGJvb2wgdHJ5X2FjdGl2YXRlICgpOworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0 aW9uID0gZmFsc2UsIHR5cGUgPSAiQ2x1dHRlckFjdG9yKiIpXQorKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyBUZXh0LndpdGhfYnVmZmVyIChDbHV0dGVyLlRleHRCdWZm ZXIgYnVmZmVyKTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0 eXBlID0gIkNsdXR0ZXJBY3RvcioiKV0KKysJCXB1YmxpYyBUZXh0LndpdGhfdGV4dCAoc3RyaW5n PyBmb250X25hbWUsIHN0cmluZyB0ZXh0KTsKKysJCXB1YmxpYyBib29sIGFjdGl2YXRhYmxlIHsg Z2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBQYW5nby5BdHRyTGlzdCBhdHRyaWJ1dGVzIHsgZ2V0OyBz ZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBDbHV0dGVyLlRl eHRCdWZmZXIgYnVmZmVyIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGNv bG9yIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIGN1cnNvcl9jb2xvciB7 IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCXB1YmxpYyBib29sIGN1cnNv cl9jb2xvcl9zZXQgeyBnZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlw dWJsaWMgaW50IGN1cnNvcl9wb3NpdGlvbiB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgaW50IGN1 cnNvcl9zaXplIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBib29sIGN1cnNvcl92aXNpYmxlIHsg Z2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBib29sIGVkaXRhYmxlIHsgZ2V0OyBzZXQ7IH0KKysJCXB1 YmxpYyBQYW5nby5FbGxpcHNpemVNb2RlIGVsbGlwc2l6ZSB7IGdldDsgc2V0OyB9CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgUGFuZ28uRm9udERlc2NyaXB0aW9uIGZv bnRfZGVzY3JpcHRpb24geyBvd25lZCBnZXQ7IHNldDsgfQorKwkJcHVibGljIHN0cmluZyBmb250 X25hbWUgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIENsdXR0ZXIuSW5wdXRDb250ZW50SGludEZs YWdzIGlucHV0X2hpbnRzIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBDbHV0dGVyLklucHV0Q29u dGVudFB1cnBvc2UgaW5wdXRfcHVycG9zZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCBq dXN0aWZ5IHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBQYW5nby5BbGlnbm1lbnQgbGluZV9hbGln bm1lbnQgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIGJvb2wgbGluZV93cmFwIHsgZ2V0OyBzZXQ7 IH0KKysJCXB1YmxpYyBQYW5nby5XcmFwTW9kZSBsaW5lX3dyYXBfbW9kZSB7IGdldDsgc2V0OyB9 CisrCQlwdWJsaWMgaW50IG1heF9sZW5ndGggeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHVpbnQg cGFzc3dvcmRfY2hhciB7IGdldDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEyIiwgc2lu Y2UgPSAiMS4wIildCisrCQlwdWJsaWMgaW50IHBvc2l0aW9uIHsgZ2V0OyBzZXQ7IH0KKysJCXB1 YmxpYyBib29sIHNlbGVjdGFibGUgeyBnZXQ7IHNldDsgfQorKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuOCIpXQorKwkJcHVibGljIENsdXR0ZXIuQ29sb3Igc2VsZWN0ZWRfdGV4dF9jb2xvciB7IGdl dDsgc2V0OyB9CisrCQlbTm9BY2Nlc3Nvck1ldGhvZF0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjgiKV0KKysJCXB1YmxpYyBib29sIHNlbGVjdGVkX3RleHRfY29sb3Jfc2V0IHsgZ2V0OyB9Cisr CQlwdWJsaWMgaW50IHNlbGVjdGlvbl9ib3VuZCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1 dHRlci5Db2xvciBzZWxlY3Rpb25fY29sb3IgeyBnZXQ7IHNldDsgfQorKwkJW05vQWNjZXNzb3JN ZXRob2RdCisrCQlwdWJsaWMgYm9vbCBzZWxlY3Rpb25fY29sb3Jfc2V0IHsgZ2V0OyB9CisrCQlw dWJsaWMgYm9vbCBzaW5nbGVfbGluZV9tb2RlIHsgZ2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBzdHJp bmcgdGV4dCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCB1c2VfbWFya3VwIHsgZ2V0OyBz ZXQ7IH0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGFjdGl2YXRlICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNpZ25hbCB2b2lkIGN1 cnNvcl9jaGFuZ2VkICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2aXJ0dWFsIHNp Z25hbCB2b2lkIGN1cnNvcl9ldmVudCAoR3JhcGhlbmUuUmVjdCByZWN0KTsKKysJCVtIYXNFbWl0 dGVyXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHNpZ25hbCB2b2lk IGRlbGV0ZV90ZXh0IChpbnQgc3RhcnRfcG9zLCBpbnQgZW5kX3Bvcyk7CisrCQlwdWJsaWMgdmly dHVhbCBzaWduYWwgdm9pZCB0ZXh0X2NoYW5nZWQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RleHRf YnVmZmVyX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1 YmxpYyBjbGFzcyBUZXh0QnVmZmVyIDogR0xpYi5PYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIFRleHRCdWZmZXIgKCk7CisrCQlw dWJsaWMgdmlydHVhbCB1aW50IGRlbGV0ZV90ZXh0ICh1aW50IHBvc2l0aW9uLCB1aW50IG5fY2hh cnMpOworKwkJcHVibGljIHZvaWQgZW1pdF9kZWxldGVkX3RleHQgKHVpbnQgcG9zaXRpb24sIHVp bnQgbl9jaGFycyk7CisrCQlwdWJsaWMgdm9pZCBlbWl0X2luc2VydGVkX3RleHQgKHVpbnQgcG9z aXRpb24sIHN0cmluZyBjaGFycywgdWludCBuX2NoYXJzKTsKKysJCXB1YmxpYyBzaXplX3QgZ2V0 X2J5dGVzICgpOworKwkJcHVibGljIHZpcnR1YWwgdWludCBnZXRfbGVuZ3RoICgpOworKwkJcHVi bGljIGludCBnZXRfbWF4X2xlbmd0aCAoKTsKKysJCXB1YmxpYyB1bm93bmVkIHN0cmluZyBnZXRf dGV4dCAoKTsKKysJCVtDQ29kZSAodmZ1bmNfbmFtZSA9ICJnZXRfdGV4dCIpXQorKwkJW05vV3Jh cHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHVub3duZWQgc3RyaW5nIGdldF90ZXh0X3dpdGhfbGVu Z3RoIChzaXplX3Qgbl9ieXRlcyk7CisrCQlwdWJsaWMgdmlydHVhbCB1aW50IGluc2VydF90ZXh0 ICh1aW50IHBvc2l0aW9uLCBzdHJpbmcgY2hhcnMsIHVpbnQgbl9jaGFycyk7CisrCQlwdWJsaWMg dm9pZCBzZXRfbWF4X2xlbmd0aCAoaW50IG1heF9sZW5ndGgpOworKwkJcHVibGljIHZvaWQgc2V0 X3RleHQgKHN0cmluZyBjaGFycywgaW50IG5fY2hhcnMpOworKwkJW0NDb2RlIChoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIFRleHRCdWZmZXIud2l0aF90ZXh0IChz dHJpbmc/IHRleHQsIHNzaXplX3QgdGV4dF9sZW4pOworKwkJcHVibGljIHVpbnQgbGVuZ3RoIHsg Z2V0OyB9CisrCQlwdWJsaWMgaW50IG1heF9sZW5ndGggeyBnZXQ7IHNldDsgfQorKwkJcHVibGlj IHN0cmluZyB0ZXh0IHsgZ2V0OyB9CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBkZWxl dGVkX3RleHQgKHVpbnQgcG9zaXRpb24sIHVpbnQgbl9jaGFycyk7CisrCQlwdWJsaWMgdmlydHVh bCBzaWduYWwgdm9pZCBpbnNlcnRlZF90ZXh0ICh1aW50IHBvc2l0aW9uLCBzdHJpbmcgY2hhcnMs IHVpbnQgbl9jaGFycyk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RleHRfbm9kZV9nZXRfdHlwZSAoKSIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgVGV4dE5vZGUg OiBDbHV0dGVyLlBhaW50Tm9kZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24g PSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyUGFpbnROb2RlKiIpXQorKwkJcHVibGljIFRleHROb2Rl IChQYW5nby5MYXlvdXQ/IGxheW91dCwgQ2x1dHRlci5Db2xvcj8gY29sb3IpOworKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAi Y2x1dHRlcl90ZXh0dXJlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBUZXh0dXJlIDog Q2x1dHRlci5BY3RvciB7CisrCQlwdWJsaWMgQ29nbC5NYXRlcmlhbCBjb2dsX21hdGVyaWFsIHsg Z2V0OyBzZXQ7IH0KKysJCXB1YmxpYyBDb2dsLlRleHR1cmUgY29nbF90ZXh0dXJlIHsgZ2V0OyBz ZXQ7IH0KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCB0eXBlX2lkID0gImNsdXR0ZXJfdGV4dHVyZV9ub2RlX2dldF90eXBlICgpIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBjbGFzcyBUZXh0dXJlTm9kZSA6IENs dXR0ZXIuUGlwZWxpbmVOb2RlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlLCB0eXBlID0gIkNsdXR0ZXJQYWludE5vZGUqIildCisrCQlwdWJsaWMgVGV4dHVyZU5v ZGUgKENvZ2wuVGV4dHVyZSB0ZXh0dXJlLCBDbHV0dGVyLkNvbG9yPyBjb2xvciwgQ2x1dHRlci5T Y2FsaW5nRmlsdGVyIG1pbl9maWx0ZXIsIENsdXR0ZXIuU2NhbGluZ0ZpbHRlciBtYWdfZmlsdGVy KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCB0eXBlX2lkID0gImNsdXR0ZXJfdGltZWxpbmVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24g KHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgY2xhc3MgVGltZWxpbmUgOiBHTGliLk9iamVjdCwg Q2x1dHRlci5TY3JpcHRhYmxlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9 IGZhbHNlKV0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBUaW1lbGlu ZSAodWludCBtc2Vjcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNCIpXQorKwkJcHVibGlj IHZvaWQgYWRkX21hcmtlciAoc3RyaW5nIG1hcmtlcl9uYW1lLCBkb3VibGUgcHJvZ3Jlc3MpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgYWRkX21hcmtlcl9h dF90aW1lIChzdHJpbmcgbWFya2VyX25hbWUsIHVpbnQgbXNlY3MpOworKwkJcHVibGljIHZvaWQg YWR2YW5jZSAodWludCBtc2Vjcyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlw dWJsaWMgdm9pZCBhZHZhbmNlX3RvX21hcmtlciAoc3RyaW5nIG1hcmtlcl9uYW1lKTsKKysJCVtW ZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2lu Y2UgPSAiMC40IildCisrCQlwdWJsaWMgQ2x1dHRlci5UaW1lbGluZSBjbG9uZSAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyBib29sIGdldF9hdXRvX3JldmVyc2Ug KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2N1 YmljX2Jlemllcl9wcm9ncmVzcyAoR3JhcGhlbmUuUG9pbnQgY18xLCBHcmFwaGVuZS5Qb2ludCBj XzIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X2N1 cnJlbnRfcmVwZWF0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJcHVibGlj IHVpbnQgZ2V0X2RlbGF5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJcHVi bGljIHVpbnQgZ2V0X2RlbHRhICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwkJ cHVibGljIENsdXR0ZXIuVGltZWxpbmVEaXJlY3Rpb24gZ2V0X2RpcmVjdGlvbiAoKTsKKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyB1aW50IGdldF9kdXJhdGlvbiAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgaW50NjQgZ2V0X2R1cmF0 aW9uX2hpbnQgKCk7CisrCQlwdWJsaWMgdWludCBnZXRfZWxhcHNlZF90aW1lICgpOworKwkJW1Zl cnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyBib29sIGdldF9sb29wICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIpXQor KwkJcHVibGljIGRvdWJsZSBnZXRfcHJvZ3Jlc3MgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQW5pbWF0aW9uTW9kZSBnZXRfcHJvZ3Jlc3NfbW9k ZSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgaW50IGdldF9y ZXBlYXRfY291bnQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGlj IGJvb2wgZ2V0X3N0ZXBfcHJvZ3Jlc3MgKG91dCBpbnQgbl9zdGVwcywgb3V0IENsdXR0ZXIuU3Rl cE1vZGUgc3RlcF9tb2RlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1Ymxp YyBib29sIGhhc19tYXJrZXIgKHN0cmluZyBtYXJrZXJfbmFtZSk7CisrCQlwdWJsaWMgYm9vbCBp c19wbGF5aW5nICgpOworKwkJW0NDb2RlIChhcnJheV9sZW5ndGggPSB0cnVlLCBhcnJheV9sZW5n dGhfcG9zID0gMS4xLCBhcnJheV9sZW5ndGhfdHlwZSA9ICJnc2l6ZSIsIGFycmF5X251bGxfdGVy bWluYXRlZCA9IHRydWUpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGlj IHN0cmluZ1tdIGxpc3RfbWFya2VycyAoaW50IG1zZWNzKTsKKysJCXB1YmxpYyB2b2lkIHBhdXNl ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3Zl X21hcmtlciAoc3RyaW5nIG1hcmtlcl9uYW1lKTsKKysJCXB1YmxpYyB2b2lkIHJld2luZCAoKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hdXRvX3Jl dmVyc2UgKGJvb2wgcmV2ZXJzZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJ cHVibGljIHZvaWQgc2V0X2N1YmljX2Jlemllcl9wcm9ncmVzcyAoR3JhcGhlbmUuUG9pbnQgY18x LCBHcmFwaGVuZS5Qb2ludCBjXzIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwkJ cHVibGljIHZvaWQgc2V0X2RlbGF5ICh1aW50IG1zZWNzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIwLjYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9kaXJlY3Rpb24gKENsdXR0ZXIuVGltZWxpbmVE aXJlY3Rpb24gZGlyZWN0aW9uKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1 YmxpYyB2b2lkIHNldF9kdXJhdGlvbiAodWludCBtc2Vjcyk7CisrCQlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQg c2V0X2xvb3AgKGJvb2wgbG9vcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJ cHVibGljIHZvaWQgc2V0X3Byb2dyZXNzX2Z1bmMgKG93bmVkIENsdXR0ZXIuVGltZWxpbmVQcm9n cmVzc0Z1bmM/IGZ1bmMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF9wcm9ncmVzc19tb2RlIChDbHV0dGVyLkFuaW1hdGlvbk1vZGUgbW9kZSk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3JlcGVhdF9j b3VudCAoaW50IGNvdW50KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCQlwdWJs aWMgdm9pZCBzZXRfc3RlcF9wcm9ncmVzcyAoaW50IG5fc3RlcHMsIENsdXR0ZXIuU3RlcE1vZGUg c3RlcF9tb2RlKTsKKysJCXB1YmxpYyB2b2lkIHNraXAgKHVpbnQgbXNlY3MpOworKwkJcHVibGlj IHZvaWQgc3RhcnQgKCk7CisrCQlwdWJsaWMgdm9pZCBzdG9wICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuNiIpXQorKwkJcHVibGljIGJvb2wgYXV0b19yZXZlcnNlIHsgZ2V0OyBzZXQ7IH0K KysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJCXB1YmxpYyB1aW50IGRlbGF5IHsgZ2V0 OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJCXB1YmxpYyBDbHV0dGVy LlRpbWVsaW5lRGlyZWN0aW9uIGRpcmVjdGlvbiB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMC42IildCisrCQlwdWJsaWMgdWludCBkdXJhdGlvbiB7IGdldDsgc2V0OyB9Cisr CQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIp XQorKwkJcHVibGljIGJvb2wgbG9vcCB7IGdldDsgc2V0OyB9CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIENsdXR0ZXIuQW5pbWF0aW9uTW9kZSBwcm9ncmVzc19tb2Rl IHsgZ2V0OyBzZXQ7IH0KKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg aW50IHJlcGVhdF9jb3VudCB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwg dm9pZCBjb21wbGV0ZWQgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC44IildCisrCQlwdWJs aWMgdmlydHVhbCBzaWduYWwgdm9pZCBtYXJrZXJfcmVhY2hlZCAoc3RyaW5nIG1hcmtlcl9uYW1l LCBpbnQgbXNlY3MpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgbmV3X2ZyYW1lIChp bnQgbXNlY3MpOworKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgcGF1c2VkICgpOworKwkJ cHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgc3RhcnRlZCAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjEyIildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwgdm9pZCBzdG9wcGVkIChib29s IGlzX2ZpbmlzaGVkKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBUaW1lb3V0UG9vbCB7 CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlwdWJsaWMg VGltZW91dFBvb2wgKGludCBwcmlvcml0eSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtDb21w YWN0XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgY2xhc3MgVG91Y2hF dmVudCA6IENsdXR0ZXIuRXZlbnQgeworKwkJcHVibGljIGRvdWJsZSBheGVzOworKwkJcHVibGlj IHdlYWsgQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVu dEZsYWdzIGZsYWdzOworKwkJcHVibGljIENsdXR0ZXIuTW9kaWZpZXJUeXBlIG1vZGlmaWVyX3N0 YXRlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5FdmVudFNlcXVlbmNlIHNlcXVlbmNlOworKwkJ cHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVy LlN0YWdlIHN0YWdlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIu RXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJCXB1YmxpYyBmbG9hdCB5Owor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhh c190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MjQiKV0KKysJcHVibGljIGNsYXNzIFRvdWNocGFkUGluY2hFdmVudCA6IENsdXR0ZXIuRXZlbnQg eworKwkJcHVibGljIGZsb2F0IGFuZ2xlX2RlbHRhOworKwkJcHVibGljIGZsb2F0IGR4OworKwkJ cHVibGljIGZsb2F0IGR5OworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFncyBmbGFnczsKKysJ CXB1YmxpYyB1aW50IG5fZmluZ2VyczsKKysJCXB1YmxpYyBDbHV0dGVyLlRvdWNocGFkR2VzdHVy ZVBoYXNlIHBoYXNlOworKwkJcHVibGljIGZsb2F0IHNjYWxlOworKwkJcHVibGljIHdlYWsgQ2x1 dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0YWdlOwor KwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7 CisrCQlwdWJsaWMgZmxvYXQgeDsKKysJCXB1YmxpYyBmbG9hdCB5OworKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFs c2UpXQorKwlbQ29tcGFjdF0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0KKysJcHVibGlj IGNsYXNzIFRvdWNocGFkU3dpcGVFdmVudCA6IENsdXR0ZXIuRXZlbnQgeworKwkJcHVibGljIGZs b2F0IGR4OworKwkJcHVibGljIGZsb2F0IGR5OworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRGbGFn cyBmbGFnczsKKysJCXB1YmxpYyB1aW50IG5fZmluZ2VyczsKKysJCXB1YmxpYyBDbHV0dGVyLlRv dWNocGFkR2VzdHVyZVBoYXNlIHBoYXNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBz b3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0YWdlOworKwkJcHVibGljIHVp bnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMg ZmxvYXQgeDsKKysJCXB1YmxpYyBmbG9hdCB5OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl90cmFuc2Zvcm1f bm9kZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgVHJhbnNmb3JtTm9kZSA6IENsdXR0 ZXIuUGFpbnROb2RlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNl LCB0eXBlID0gIkNsdXR0ZXJQYWludE5vZGUqIildCisrCQlwdWJsaWMgVHJhbnNmb3JtTm9kZSAo Q29nbC5NYXRyaXggcHJvamVjdGlvbik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RyYW5zaXRpb25fZ2V0 X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGFic3Ry YWN0IGNsYXNzIFRyYW5zaXRpb24gOiBDbHV0dGVyLlRpbWVsaW5lLCBDbHV0dGVyLlNjcmlwdGFi bGUgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJv dGVjdGVkIFRyYW5zaXRpb24gKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwg dm9pZCBhdHRhY2hlZCAoQ2x1dHRlci5BbmltYXRhYmxlIGFuaW1hdGFibGUpOworKwkJW05vV3Jh cHBlcl0KKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgY29tcHV0ZV92YWx1ZSAoQ2x1dHRlci5Bbmlt YXRhYmxlIGFuaW1hdGFibGUsIENsdXR0ZXIuSW50ZXJ2YWwgaW50ZXJ2YWwsIGRvdWJsZSBwcm9n cmVzcyk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBkZXRhY2hlZCAo Q2x1dHRlci5BbmltYXRhYmxlIGFuaW1hdGFibGUpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRl ci5BbmltYXRhYmxlIGdldF9hbmltYXRhYmxlICgpOworKwkJcHVibGljIHVub3duZWQgQ2x1dHRl ci5JbnRlcnZhbCBnZXRfaW50ZXJ2YWwgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfcmVtb3ZlX29u X2NvbXBsZXRlICgpOworKwkJcHVibGljIHZvaWQgc2V0X2FuaW1hdGFibGUgKENsdXR0ZXIuQW5p bWF0YWJsZT8gYW5pbWF0YWJsZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJ cHVibGljIHZvaWQgc2V0X2Zyb21fdmFsdWUgKEdMaWIuVmFsdWUgdmFsdWUpOworKwkJcHVibGlj IHZvaWQgc2V0X2ludGVydmFsIChDbHV0dGVyLkludGVydmFsPyBpbnRlcnZhbCk7CisrCQlwdWJs aWMgdm9pZCBzZXRfcmVtb3ZlX29uX2NvbXBsZXRlIChib29sIHJlbW92ZV9jb21wbGV0ZSk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHZvaWQgc2V0X3RvX3ZhbHVl IChHTGliLlZhbHVlIHZhbHVlKTsKKysJCXB1YmxpYyBDbHV0dGVyLkFuaW1hdGFibGUgYW5pbWF0 YWJsZSB7IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgQ2x1dHRlci5JbnRlcnZhbCBpbnRlcnZhbCB7 IGdldDsgc2V0OyB9CisrCQlwdWJsaWMgYm9vbCByZW1vdmVfb25fY29tcGxldGUgeyBnZXQ7IHNl dDsgfQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIHR5cGVfaWQgPSAiY2x1dHRlcl90cmFuc2l0aW9uX2dyb3VwX2dldF90eXBlICgpIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBjbGFzcyBUcmFuc2l0aW9uR3Jv dXAgOiBDbHV0dGVyLlRyYW5zaXRpb24sIENsdXR0ZXIuU2NyaXB0YWJsZSB7CisrCQlbQ0NvZGUg KGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDbHV0dGVyVHJhbnNpdGlv bioiKV0KKysJCXB1YmxpYyBUcmFuc2l0aW9uR3JvdXAgKCk7CisrCQlwdWJsaWMgdm9pZCBhZGRf dHJhbnNpdGlvbiAoQ2x1dHRlci5UcmFuc2l0aW9uIHRyYW5zaXRpb24pOworKwkJcHVibGljIHZv aWQgcmVtb3ZlX2FsbCAoKTsKKysJCXB1YmxpYyB2b2lkIHJlbW92ZV90cmFuc2l0aW9uIChDbHV0 dGVyLlRyYW5zaXRpb24gdHJhbnNpdGlvbik7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3ZpcnR1YWxfaW5w dXRfZGV2aWNlX2dldF90eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBWaXJ0dWFsSW5wdXREZXZp Y2UgOiBHTGliLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBm YWxzZSldCisrCQlwcm90ZWN0ZWQgVmlydHVhbElucHV0RGV2aWNlICgpOworKwkJcHVibGljIGlu dCBnZXRfZGV2aWNlX3R5cGUgKCk7CisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIG5vdGlmeV9hYnNv bHV0ZV9tb3Rpb24gKHVpbnQ2NCB0aW1lX3VzLCBkb3VibGUgeCwgZG91YmxlIHkpOworKwkJcHVi bGljIHZpcnR1YWwgdm9pZCBub3RpZnlfYnV0dG9uICh1aW50NjQgdGltZV91cywgdWludDMyIGJ1 dHRvbiwgQ2x1dHRlci5CdXR0b25TdGF0ZSBidXR0b25fc3RhdGUpOworKwkJcHVibGljIHZpcnR1 YWwgdm9pZCBub3RpZnlfZGlzY3JldGVfc2Nyb2xsICh1aW50NjQgdGltZV91cywgQ2x1dHRlci5T Y3JvbGxEaXJlY3Rpb24gZGlyZWN0aW9uLCBDbHV0dGVyLlNjcm9sbFNvdXJjZSBzY3JvbGxfc291 cmNlKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbm90aWZ5X2tleSAodWludDY0IHRpbWVfdXMs IHVpbnQzMiBrZXksIENsdXR0ZXIuS2V5U3RhdGUga2V5X3N0YXRlKTsKKysJCXB1YmxpYyB2aXJ0 dWFsIHZvaWQgbm90aWZ5X2tleXZhbCAodWludDY0IHRpbWVfdXMsIHVpbnQzMiBrZXl2YWwsIENs dXR0ZXIuS2V5U3RhdGUga2V5X3N0YXRlKTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbm90aWZ5 X3JlbGF0aXZlX21vdGlvbiAodWludDY0IHRpbWVfdXMsIGRvdWJsZSBkeCwgZG91YmxlIGR5KTsK KysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbm90aWZ5X3Njcm9sbF9jb250aW51b3VzICh1aW50NjQg dGltZV91cywgZG91YmxlIGR4LCBkb3VibGUgZHksIENsdXR0ZXIuU2Nyb2xsU291cmNlIHNjcm9s bF9zb3VyY2UsIENsdXR0ZXIuU2Nyb2xsRmluaXNoRmxhZ3MgZmluaXNoX2ZsYWdzKTsKKysJCXB1 YmxpYyB2aXJ0dWFsIHZvaWQgbm90aWZ5X3RvdWNoX2Rvd24gKHVpbnQ2NCB0aW1lX3VzLCBpbnQg c2xvdCwgZG91YmxlIHgsIGRvdWJsZSB5KTsKKysJCXB1YmxpYyB2aXJ0dWFsIHZvaWQgbm90aWZ5 X3RvdWNoX21vdGlvbiAodWludDY0IHRpbWVfdXMsIGludCBzbG90LCBkb3VibGUgeCwgZG91Ymxl IHkpOworKwkJcHVibGljIHZpcnR1YWwgdm9pZCBub3RpZnlfdG91Y2hfdXAgKHVpbnQ2NCB0aW1l X3VzLCBpbnQgc2xvdCk7CisrCQlwdWJsaWMgQ2x1dHRlci5JbnB1dERldmljZVR5cGUgZGV2aWNl X3R5cGUgeyBnZXQ7IGNvbnN0cnVjdDsgfQorKwkJW05vQWNjZXNzb3JNZXRob2RdCisrCQlwdWJs aWMgQ2x1dHRlci5TZWF0IHNlYXQgeyBvd25lZCBnZXQ7IGNvbnN0cnVjdDsgfQorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAi Y2x1dHRlcl96b29tX2FjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMiIpXQorKwlwdWJsaWMgY2xhc3MgWm9vbUFjdGlvbiA6IENsdXR0ZXIuR2VzdHVyZUFjdGlv biB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJD bHV0dGVyQWN0aW9uKiIpXQorKwkJcHVibGljIFpvb21BY3Rpb24gKCk7CisrCQlwdWJsaWMgdm9p ZCBnZXRfZm9jYWxfcG9pbnQgKEdyYXBoZW5lLlBvaW50IHBvaW50KTsKKysJCXB1YmxpYyB2b2lk IGdldF90cmFuc2Zvcm1lZF9mb2NhbF9wb2ludCAoR3JhcGhlbmUuUG9pbnQgcG9pbnQpOworKwkJ cHVibGljIENsdXR0ZXIuWm9vbUF4aXMgZ2V0X3pvb21fYXhpcyAoKTsKKysJCXB1YmxpYyB2b2lk IHNldF96b29tX2F4aXMgKENsdXR0ZXIuWm9vbUF4aXMgYXhpcyk7CisrCQlwdWJsaWMgQ2x1dHRl ci5ab29tQXhpcyB6b29tX2F4aXMgeyBnZXQ7IHNldDsgfQorKwkJcHVibGljIHZpcnR1YWwgc2ln bmFsIGJvb2wgem9vbSAoQ2x1dHRlci5BY3RvciBhY3RvciwgR3JhcGhlbmUuUG9pbnQgZm9jYWxf cG9pbnQsIGRvdWJsZSBmYWN0b3IpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIHR5cGVfY25hbWUgPSAiQ2x1dHRlckFuaW1hdGFibGVJbnRl cmZhY2UiLCB0eXBlX2lkID0gImNsdXR0ZXJfYW5pbWF0YWJsZV9nZXRfdHlwZSAoKSIpXQorKwlw dWJsaWMgaW50ZXJmYWNlIEFuaW1hdGFibGUgOiBHTGliLk9iamVjdCB7CisrCQlbTm9XcmFwcGVy XQorKwkJcHVibGljIGFic3RyYWN0IGJvb2wgYW5pbWF0ZV9wcm9wZXJ0eSAoQ2x1dHRlci5Bbmlt YXRpb24gYW5pbWF0aW9uLCBzdHJpbmcgcHJvcGVydHlfbmFtZSwgR0xpYi5WYWx1ZSBpbml0aWFs X3ZhbHVlLCBHTGliLlZhbHVlIGZpbmFsX3ZhbHVlLCBkb3VibGUgcHJvZ3Jlc3MsIEdMaWIuVmFs dWUgdmFsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIGFic3Ry YWN0IHVub3duZWQgR0xpYi5QYXJhbVNwZWMgZmluZF9wcm9wZXJ0eSAoc3RyaW5nIHByb3BlcnR5 X25hbWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIGFic3RyYWN0 IHZvaWQgZ2V0X2luaXRpYWxfc3RhdGUgKHN0cmluZyBwcm9wZXJ0eV9uYW1lLCBHTGliLlZhbHVl IHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBhYnN0cmFj dCBib29sIGludGVycG9sYXRlX3ZhbHVlIChzdHJpbmcgcHJvcGVydHlfbmFtZSwgQ2x1dHRlci5J bnRlcnZhbCBpbnRlcnZhbCwgZG91YmxlIHByb2dyZXNzLCBvdXQgR0xpYi5WYWx1ZSB2YWx1ZSk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBz ZXRfZmluYWxfc3RhdGUgKHN0cmluZyBwcm9wZXJ0eV9uYW1lLCBHTGliLlZhbHVlIHZhbHVlKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCB0 eXBlX2lkID0gImNsdXR0ZXJfY29udGFpbmVyX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIwLjQiKV0KKysJcHVibGljIGludGVyZmFjZSBDb250YWluZXIgOiBHTGliLk9iamVj dCB7CisrCQlwdWJsaWMgdm9pZCBhZGQgKHBhcmFtcyBDbHV0dGVyLkFjdG9yW10gYWN0b3JzKTsK KysJCVtDQ29kZSAodmZ1bmNfbmFtZSA9ICJhZGQiKV0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC40IildCisrCQlw dWJsaWMgYWJzdHJhY3Qgdm9pZCBhZGRfYWN0b3IgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgY2hpbGRfZ2V0IChDbHV0 dGVyLkFjdG9yIGFjdG9yLCAuLi4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJ cHVibGljIHZvaWQgY2hpbGRfZ2V0X3Byb3BlcnR5IChDbHV0dGVyLkFjdG9yIGNoaWxkLCBzdHJp bmcgcHJvcGVydHksIEdMaWIuVmFsdWUgdmFsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAu OCIpXQorKwkJcHVibGljIHZvaWQgY2hpbGRfc2V0IChDbHV0dGVyLkFjdG9yIGFjdG9yLCAuLi4p OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHZvaWQgY2hpbGRfc2V0 X3Byb3BlcnR5IChDbHV0dGVyLkFjdG9yIGNoaWxkLCBzdHJpbmcgcHJvcGVydHksIEdMaWIuVmFs dWUgdmFsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGljIHN0YXRp YyB1bm93bmVkIEdMaWIuUGFyYW1TcGVjIGNsYXNzX2ZpbmRfY2hpbGRfcHJvcGVydHkgKEdMaWIu T2JqZWN0Q2xhc3Mga2xhc3MsIHN0cmluZyBwcm9wZXJ0eV9uYW1lKTsKKysJCVtDQ29kZSAoYXJy YXlfbGVuZ3RoX3BvcyA9IDEuMSwgYXJyYXlfbGVuZ3RoX3R5cGUgPSAiZ3VpbnQiKV0KKysJCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJCXB1YmxpYyBzdGF0aWMgR0xpYi5QYXJhbVNwZWNb XSBjbGFzc19saXN0X2NoaWxkX3Byb3BlcnRpZXMgKEdMaWIuT2JqZWN0Q2xhc3Mga2xhc3MpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBjcmVh dGVfY2hpbGRfbWV0YSAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4yIildCisrCQlwdWJsaWMgdmlydHVhbCB2b2lkIGRlc3Ryb3lfY2hpbGRfbWV0YSAoQ2x1 dHRlci5BY3RvciBhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCQlwdWJs aWMgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGZpbmRfY2hpbGRfYnlfbmFtZSAoc3RyaW5nIGNoaWxk X25hbWUpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbnRhaW5lcl9jbGFzc19maW5k X2NoaWxkX3Byb3BlcnR5IildCisrCQlwdWJsaWMgY2xhc3MgdW5vd25lZCBHTGliLlBhcmFtU3Bl YyBmaW5kX2NoaWxkX3Byb3BlcnR5IChzdHJpbmcgcHJvcGVydHlfbmFtZSk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgdmlydHVhbCB1bm93bmVkIENsdXR0ZXIuQ2hp bGRNZXRhIGdldF9jaGlsZF9tZXRhIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsKKysJCVtWZXJzaW9u IChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAi MC40IildCisrCQlwdWJsaWMgR0xpYi5MaXN0PHdlYWsgQ2x1dHRlci5BY3Rvcj4gZ2V0X2NoaWxk cmVuICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjbHV0dGVyX2NvbnRhaW5lcl9jbGFzc19saXN0 X2NoaWxkX3Byb3BlcnRpZXMiKV0KKysJCXB1YmxpYyBjbGFzcyB1bm93bmVkIEdMaWIuUGFyYW1T cGVjW10gbGlzdF9jaGlsZF9wcm9wZXJ0aWVzICgpOworKwkJW0NDb2RlICh2ZnVuY19uYW1lID0g Imxvd2VyIildCisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2lu Y2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuNiIpXQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCBsb3dl cl9jaGlsZCAoQ2x1dHRlci5BY3RvciBhY3RvciwgQ2x1dHRlci5BY3Rvcj8gc2libGluZyA9IG51 bGwpOworKwkJW0NDb2RlICh2ZnVuY19uYW1lID0gInJhaXNlIildCisrCQlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMCIsIHNpbmNlID0gIjAuNiIp XQorKwkJcHVibGljIHZpcnR1YWwgdm9pZCByYWlzZV9jaGlsZCAoQ2x1dHRlci5BY3RvciBhY3Rv ciwgQ2x1dHRlci5BY3Rvcj8gc2libGluZyA9IG51bGwpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjQiKV0KKysJ CXB1YmxpYyB2b2lkIHJlbW92ZSAoLi4uKTsKKysJCVtDQ29kZSAodmZ1bmNfbmFtZSA9ICJyZW1v dmUiKV0KKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9 ICIxLjEwIiwgc2luY2UgPSAiMC40IildCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCByZW1vdmVf YWN0b3IgKENsdXR0ZXIuQWN0b3IgYWN0b3IpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTAiLCBzaW5jZSA9ICIwLjYiKV0KKysJCXB1Ymxp YyBhYnN0cmFjdCB2b2lkIHNvcnRfZGVwdGhfb3JkZXIgKCk7CisrCQlwdWJsaWMgdmlydHVhbCBz aWduYWwgdm9pZCBhY3Rvcl9hZGRlZCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlwdWJsaWMg dmlydHVhbCBzaWduYWwgdm9pZCBhY3Rvcl9yZW1vdmVkIChDbHV0dGVyLkFjdG9yIGFjdG9yKTsK KysJCVtIYXNFbWl0dGVyXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuOCIpXQorKwkJcHVibGlj IHZpcnR1YWwgc2lnbmFsIHZvaWQgY2hpbGRfbm90aWZ5IChDbHV0dGVyLkFjdG9yIGNoaWxkLCBH TGliLlBhcmFtU3BlYyBwc3BlYyk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgdHlwZV9jbmFtZSA9ICJDbHV0dGVyQ29udGVudEludGVyZmFj ZSIsIHR5cGVfaWQgPSAiY2x1dHRlcl9jb250ZW50X2dldF90eXBlICgpIildCisrCXB1YmxpYyBp bnRlcmZhY2UgQ29udGVudCA6IEdMaWIuT2JqZWN0IHsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCQlwdWJsaWMgYWJzdHJhY3QgYm9vbCBnZXRfcHJlZmVycmVkX3NpemUgKG91dCBm bG9hdCB3aWR0aCwgb3V0IGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4x MCIpXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgaW52YWxpZGF0ZSAoKTsKKysJCXB1YmxpYyBh YnN0cmFjdCB2b2lkIGludmFsaWRhdGVfc2l6ZSAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJs aWMgYWJzdHJhY3Qgdm9pZCBwYWludF9jb250ZW50IChDbHV0dGVyLkFjdG9yIGFjdG9yLCBDbHV0 dGVyLlBhaW50Tm9kZSBub2RlLCBDbHV0dGVyLlBhaW50Q29udGV4dCBwYWludF9jb250ZXh0KTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdmlydHVhbCBzaWduYWwg dm9pZCBhdHRhY2hlZCAoQ2x1dHRlci5BY3RvciBhY3Rvcik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIHZpcnR1YWwgc2lnbmFsIHZvaWQgZGV0YWNoZWQgKENsdXR0 ZXIuQWN0b3IgYWN0b3IpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zY3JpcHRhYmxlX2dldF90eXBlICgp IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJcHVibGljIGludGVyZmFjZSBTY3Jp cHRhYmxlIDogR0xpYi5PYmplY3QgeworKwkJcHVibGljIGFic3RyYWN0IHVub3duZWQgc3RyaW5n IGdldF9pZCAoKTsKKysJCXB1YmxpYyBhYnN0cmFjdCBib29sIHBhcnNlX2N1c3RvbV9ub2RlIChD bHV0dGVyLlNjcmlwdCBzY3JpcHQsIEdMaWIuVmFsdWUgdmFsdWUsIHN0cmluZyBuYW1lLCBKc29u Lk5vZGUgbm9kZSk7CisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzZXRfY3VzdG9tX3Byb3BlcnR5 IChDbHV0dGVyLlNjcmlwdCBzY3JpcHQsIHN0cmluZyBuYW1lLCBHTGliLlZhbHVlIHZhbHVlKTsK KysJCXB1YmxpYyBhYnN0cmFjdCB2b2lkIHNldF9pZCAoc3RyaW5nIGlkXyk7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1YmxpYyBp bnRlcmZhY2UgU3RhZ2VXaW5kb3cgOiBHTGliLk9iamVjdCB7CisrCQlbTm9XcmFwcGVyXQorKwkJ cHVibGljIGFic3RyYWN0IGludCBnZXRfcGVuZGluZ19zd2FwcyAoKTsKKysJCVtOb1dyYXBwZXJd CisrCQlwdWJsaWMgYWJzdHJhY3QgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGdldF93cmFwcGVyICgp OworKwkJW05vV3JhcHBlcl0KKysJCXB1YmxpYyBhYnN0cmFjdCBib29sIGhhc19yZWRyYXdfY2xp cHMgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgaGlkZSAoKTsK KysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3QgYm9vbCBpZ25vcmluZ19yZWRyYXdf Y2xpcHMgKCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IGJvb2wgcmVhbGl6 ZSAoKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCByZXNpemUgKGlu dCB3aWR0aCwgaW50IGhlaWdodCk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0 IHZvaWQgc2V0X2N1cnNvcl92aXNpYmxlIChib29sIGN1cnNvcl92aXNpYmxlKTsKKysJCVtOb1dy YXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzZXRfZnVsbHNjcmVlbiAoYm9vbCBpc19m dWxsc2NyZWVuKTsKKysJCVtOb1dyYXBwZXJdCisrCQlwdWJsaWMgYWJzdHJhY3Qgdm9pZCBzZXRf dGl0bGUgKHN0cmluZyB0aXRsZSk7CisrCQlbTm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0 IHZvaWQgc2V0X3VzZXJfcmVzaXphYmxlIChib29sIGlzX3Jlc2l6YWJsZSk7CisrCQlbTm9XcmFw cGVyXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgc2hvdyAoYm9vbCBkb19yYWlzZSk7CisrCQlb Tm9XcmFwcGVyXQorKwkJcHVibGljIGFic3RyYWN0IHZvaWQgdW5yZWFsaXplICgpOworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVu Y3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0 eXBlX2lkID0gImNsdXR0ZXJfYWN0b3JfYm94X2dldF90eXBlICgpIildCisrCXB1YmxpYyBzdHJ1 Y3QgQWN0b3JCb3ggeworKwkJcHVibGljIGZsb2F0IHgxOworKwkJcHVibGljIGZsb2F0IHkxOwor KwkJcHVibGljIGZsb2F0IHgyOworKwkJcHVibGljIGZsb2F0IHkyOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyBzdGF0aWMgQ2x1dHRlci5BY3RvckJveD8gYWxsb2Mg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCQlwdWJsaWMgc3RhdGljIHZvaWQg Y2xhbXBfdG9fcGl4ZWwgKHJlZiBDbHV0dGVyLkFjdG9yQm94IGJveCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgYm9vbCBjb250YWlucyAoZmxvYXQgeCwgZmxvYXQg eSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3Rv ckJveD8gY29weSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBi b29sIGVxdWFsIChDbHV0dGVyLkFjdG9yQm94IGJveF9iKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X2FyZWEgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X2hlaWdodCAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIGdldF9vcmlnaW4gKG91dCBmbG9hdCB4LCBv dXQgZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgdm9p ZCBnZXRfc2l6ZSAob3V0IGZsb2F0IHdpZHRoLCBvdXQgZmxvYXQgaGVpZ2h0KTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfd2lkdGggKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ggKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3kgKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHVub3duZWQgQ2x1dHRlci5BY3Rv ckJveD8gaW5pdCAoZmxvYXQgeF8xLCBmbG9hdCB5XzEsIGZsb2F0IHhfMiwgZmxvYXQgeV8yKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBpbml0X3JlY3Qg KGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHdpZHRoLCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIENsdXR0ZXIuQWN0b3JCb3ggaW50ZXJwb2xh dGUgKENsdXR0ZXIuQWN0b3JCb3ggZmluYWwsIGRvdWJsZSBwcm9ncmVzcyk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS42IildCisrCQlwdWJsaWMgdm9pZCBzY2FsZSAoZmxvYXQgc2NhbGUpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgc2V0X29yaWdpbiAo ZmxvYXQgeCwgZmxvYXQgeSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCQlwdWJs aWMgdm9pZCBzZXRfc2l6ZSAoZmxvYXQgd2lkdGgsIGZsb2F0IGhlaWdodCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgQ2x1dHRlci5BY3RvckJveCB1bmlvbiAoQ2x1 dHRlci5BY3RvckJveCBiKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJcHVibGljIHN0cnVjdCBBY3Rvckl0ZXIgeworKwkJcHVibGljIHZvaWQg ZGVzdHJveSAoKTsKKysJCXB1YmxpYyB2b2lkIGluaXQgKENsdXR0ZXIuQWN0b3Igcm9vdCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIGJvb2wgaXNfdmFsaWQgKCk7 CisrCQlwdWJsaWMgYm9vbCBuZXh0IChvdXQgdW5vd25lZCBDbHV0dGVyLkFjdG9yIGNoaWxkKTsK KysJCXB1YmxpYyBib29sIHByZXYgKG91dCB1bm93bmVkIENsdXR0ZXIuQWN0b3IgY2hpbGQpOwor KwkJcHVibGljIHZvaWQgcmVtb3ZlICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMg c3RydWN0IENhcHR1cmUgeworKwkJcHVibGljIHdlYWsgQ2Fpcm8uU3VyZmFjZSBpbWFnZTsKKysJ CXB1YmxpYyBDYWlyby5SZWN0YW5nbGVJbnQgcmVjdDsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0gImdfYm94ZWRf Y29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9ICJDTFVUVEVS X1RZUEVfQ09MT1IiKV0KKysJcHVibGljIHN0cnVjdCBDb2xvciB7CisrCQlwdWJsaWMgdWludDgg cmVkOworKwkJcHVibGljIHVpbnQ4IGdyZWVuOworKwkJcHVibGljIHVpbnQ4IGJsdWU7CisrCQlw dWJsaWMgdWludDggYWxwaGE7CisrCQlwdWJsaWMgQ2x1dHRlci5Db2xvciBhZGQgKENsdXR0ZXIu Q29sb3IgYik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwkJcHVibGljIHN0YXRp YyBDbHV0dGVyLkNvbG9yPyBhbGxvYyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0K KysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yPyBjb3B5ICgpOworKwkJcHVibGljIENsdXR0ZXIuQ29s b3IgZGFya2VuICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGljIGJv b2wgZXF1YWwgKENsdXR0ZXIuQ29sb3IgdjIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIp XQorKwkJcHVibGljIHZvaWQgZnJlZSAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9j b2xvcl9mcm9tX2hscyIpXQorKwkJcHVibGljIENvbG9yLmZyb21faGxzIChmbG9hdCBodWUsIGZs b2F0IGx1bWluYW5jZSwgZmxvYXQgc2F0dXJhdGlvbik7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNs dXR0ZXJfY29sb3JfZnJvbV9waXhlbCIpXQorKwkJcHVibGljIENvbG9yLmZyb21fcGl4ZWwgKHVp bnQzMiBwaXhlbCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfY29sb3JfZnJvbV9zdHJp bmciKV0KKysJCXB1YmxpYyBDb2xvci5mcm9tX3N0cmluZyAoc3RyaW5nIHN0cik7CisrCQlwdWJs aWMgc3RhdGljIHVub3duZWQgQ2x1dHRlci5Db2xvcj8gZ2V0X3N0YXRpYyAoQ2x1dHRlci5TdGF0 aWNDb2xvciBjb2xvcik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMg dWludCBoYXNoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJCXB1YmxpYyB1 bm93bmVkIENsdXR0ZXIuQ29sb3I/IGluaXQgKHVpbnQ4IHJlZCwgdWludDggZ3JlZW4sIHVpbnQ4 IGJsdWUsIHVpbnQ4IGFscGhhKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJCXB1 YmxpYyBDbHV0dGVyLkNvbG9yIGludGVycG9sYXRlIChDbHV0dGVyLkNvbG9yIGZpbmFsLCBkb3Vi bGUgcHJvZ3Jlc3MpOworKwkJcHVibGljIENsdXR0ZXIuQ29sb3IgbGlnaHRlbiAoKTsKKysJCVtD Q29kZSAoY25hbWUgPSAiY2x1dHRlcl9jb2xvcl9mcm9tX3N0cmluZyIpXQorKwkJcHVibGljIGJv b2wgcGFyc2Vfc3RyaW5nIChzdHJpbmcgc3RyKTsKKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIHNo YWRlIChkb3VibGUgZmFjdG9yKTsKKysJCXB1YmxpYyBDbHV0dGVyLkNvbG9yIHN1YnRyYWN0IChD bHV0dGVyLkNvbG9yIGIpOworKwkJcHVibGljIHZvaWQgdG9faGxzIChvdXQgZmxvYXQgaHVlLCBv dXQgZmxvYXQgbHVtaW5hbmNlLCBvdXQgZmxvYXQgc2F0dXJhdGlvbik7CisrCQlwdWJsaWMgdWlu dDMyIHRvX3BpeGVsICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwkJcHVibGlj IHN0cmluZyB0b19zdHJpbmcgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1 Y3QgS2JkQTExeVNldHRpbmdzIHsKKysJCXB1YmxpYyBDbHV0dGVyLktleWJvYXJkQTExeUZsYWdz IGNvbnRyb2xzOworKwkJcHVibGljIGludCBzbG93a2V5c19kZWxheTsKKysJCXB1YmxpYyBpbnQg ZGVib3VuY2VfZGVsYXk7CisrCQlwdWJsaWMgaW50IHRpbWVvdXRfZGVsYXk7CisrCQlwdWJsaWMg aW50IG1vdXNla2V5c19pbml0X2RlbGF5OworKwkJcHVibGljIGludCBtb3VzZWtleXNfbWF4X3Nw ZWVkOworKwkJcHVibGljIGludCBtb3VzZWtleXNfYWNjZWxfdGltZTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0g ImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX2tub3RfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIp XQorKwlwdWJsaWMgc3RydWN0IEtub3QgeworKwkJcHVibGljIGludCB4OworKwkJcHVibGljIGlu dCB5OworKwkJcHVibGljIENsdXR0ZXIuS25vdD8gY29weSAoKTsKKysJCXB1YmxpYyBib29sIGVx dWFsIChDbHV0dGVyLktub3Qga25vdF9iKTsKKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1 YmxpYyBzdHJ1Y3QgTWF0cml4IDogQ29nbC5NYXRyaXggeworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQor KwlwdWJsaWMgc3RydWN0IFBhZEJ1dHRvbkV2ZW50IHsKKysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50 VHlwZSB0eXBlOworKwkJcHVibGljIHVpbnQzMiB0aW1lOworKwkJcHVibGljIENsdXR0ZXIuRXZl bnRGbGFncyBmbGFnczsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuU3RhZ2Ugc3RhZ2U7CisrCQlw dWJsaWMgd2VhayBDbHV0dGVyLkFjdG9yIHNvdXJjZTsKKysJCXB1YmxpYyB1aW50MzIgYnV0dG9u OworKwkJcHVibGljIHVpbnQzMiBncm91cDsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuSW5wdXRE ZXZpY2UgZGV2aWNlOworKwkJcHVibGljIHVpbnQzMiBtb2RlOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2Up XQorKwlwdWJsaWMgc3RydWN0IFBhZFJpbmdFdmVudCB7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVu dFR5cGUgdHlwZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsKKysJCXB1YmxpYyBDbHV0dGVyLkV2 ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVyLlN0YWdlIHN0YWdlOworKwkJ cHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7CisrCQlwdWJsaWMgd2VhayBDbHV0dGVy LklucHV0RGV2aWNlIGRldmljZTsKKysJCXB1YmxpYyBDbHV0dGVyLklucHV0RGV2aWNlUGFkU291 cmNlIHJpbmdfc291cmNlOworKwkJcHVibGljIHVpbnQzMiByaW5nX251bWJlcjsKKysJCXB1Ymxp YyB1aW50MzIgZ3JvdXA7CisrCQlwdWJsaWMgZG91YmxlIGFuZ2xlOworKwkJcHVibGljIHVpbnQz MiBtb2RlOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IFBhZFN0cmlwRXZl bnQgeworKwkJcHVibGljIENsdXR0ZXIuRXZlbnRUeXBlIHR5cGU7CisrCQlwdWJsaWMgdWludDMy IHRpbWU7CisrCQlwdWJsaWMgQ2x1dHRlci5FdmVudEZsYWdzIGZsYWdzOworKwkJcHVibGljIHdl YWsgQ2x1dHRlci5TdGFnZSBzdGFnZTsKKysJCXB1YmxpYyB3ZWFrIENsdXR0ZXIuQWN0b3Igc291 cmNlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5JbnB1dERldmljZSBkZXZpY2U7CisrCQlwdWJs aWMgQ2x1dHRlci5JbnB1dERldmljZVBhZFNvdXJjZSBzdHJpcF9zb3VyY2U7CisrCQlwdWJsaWMg dWludDMyIHN0cmlwX251bWJlcjsKKysJCXB1YmxpYyB1aW50MzIgZ3JvdXA7CisrCQlwdWJsaWMg ZG91YmxlIHZhbHVlOworKwkJcHVibGljIHVpbnQzMiBtb2RlOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19i b3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNs dXR0ZXJfcGF0aF9ub2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAi KV0KKysJcHVibGljIHN0cnVjdCBQYXRoTm9kZSB7CisrCQlwdWJsaWMgQ2x1dHRlci5QYXRoTm9k ZVR5cGUgdHlwZTsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXQorKwkJcHVibGlj IHdlYWsgQ2x1dHRlci5Lbm90IHBvaW50c1szXTsKKysJCXB1YmxpYyBDbHV0dGVyLlBhdGhOb2Rl PyBjb3B5ICgpOworKwkJcHVibGljIGJvb2wgZXF1YWwgKENsdXR0ZXIuUGF0aE5vZGUgbm9kZV9i KTsKKysJCXB1YmxpYyB2b2lkIGZyZWUgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY29weV9mdW5jdGlvbiA9ICJnX2JveGVkX2NvcHki LCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAiY2x1dHRlcl9wZXJz cGVjdGl2ZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1 YmxpYyBzdHJ1Y3QgUGVyc3BlY3RpdmUgeworKwkJcHVibGljIGZsb2F0IGZvdnk7CisrCQlwdWJs aWMgZmxvYXQgYXNwZWN0OworKwkJcHVibGljIGZsb2F0IHpfbmVhcjsKKysJCXB1YmxpYyBmbG9h dCB6X2ZhcjsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBQb2ludGVyQTEx eVNldHRpbmdzIHsKKysJCXB1YmxpYyBDbHV0dGVyLlBvaW50ZXJBMTF5RmxhZ3MgY29udHJvbHM7 CisrCQlwdWJsaWMgQ2x1dHRlci5Qb2ludGVyQTExeUR3ZWxsQ2xpY2tUeXBlIGR3ZWxsX2NsaWNr X3R5cGU7CisrCQlwdWJsaWMgQ2x1dHRlci5Qb2ludGVyQTExeUR3ZWxsTW9kZSBkd2VsbF9tb2Rl OworKwkJcHVibGljIENsdXR0ZXIuUG9pbnRlckExMXlEd2VsbERpcmVjdGlvbiBkd2VsbF9nZXN0 dXJlX3NpbmdsZTsKKysJCXB1YmxpYyBDbHV0dGVyLlBvaW50ZXJBMTF5RHdlbGxEaXJlY3Rpb24g ZHdlbGxfZ2VzdHVyZV9kb3VibGU7CisrCQlwdWJsaWMgQ2x1dHRlci5Qb2ludGVyQTExeUR3ZWxs RGlyZWN0aW9uIGR3ZWxsX2dlc3R1cmVfZHJhZzsKKysJCXB1YmxpYyBDbHV0dGVyLlBvaW50ZXJB MTF5RHdlbGxEaXJlY3Rpb24gZHdlbGxfZ2VzdHVyZV9zZWNvbmRhcnk7CisrCQlwdWJsaWMgaW50 IHNlY29uZGFyeV9jbGlja19kZWxheTsKKysJCXB1YmxpYyBpbnQgZHdlbGxfZGVsYXk7CisrCQlw dWJsaWMgaW50IGR3ZWxsX3RocmVzaG9sZDsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMjgiKV0KKysJcHVibGljIHN0cnVjdCBQcm94aW1pdHlFdmVudCB7Cisr CQlwdWJsaWMgQ2x1dHRlci5FdmVudFR5cGUgdHlwZTsKKysJCXB1YmxpYyB1aW50MzIgdGltZTsK KysJCXB1YmxpYyBDbHV0dGVyLkV2ZW50RmxhZ3MgZmxhZ3M7CisrCQlwdWJsaWMgd2VhayBDbHV0 dGVyLlN0YWdlIHN0YWdlOworKwkJcHVibGljIHdlYWsgQ2x1dHRlci5BY3RvciBzb3VyY2U7Cisr CQlwdWJsaWMgd2VhayBDbHV0dGVyLklucHV0RGV2aWNlIGRldmljZTsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjb3B5X2Z1bmN0aW9uID0g ImdfYm94ZWRfY29weSIsIGZyZWVfZnVuY3Rpb24gPSAiZ19ib3hlZF9mcmVlIiwgdHlwZV9pZCA9 ICJDTFVUVEVSX1RZUEVfVU5JVFMiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlw dWJsaWMgc3RydWN0IFVuaXRzIHsKKysJCXB1YmxpYyBDbHV0dGVyLlVuaXRzPyBjb3B5ICgpOwor KwkJcHVibGljIHZvaWQgZnJlZSAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0 c19mcm9tX2NtIildCisrCQlwdWJsaWMgVW5pdHMuZnJvbV9jbSAoZmxvYXQgY20pOworKwkJW0ND b2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fZW0iKV0KKysJCXB1YmxpYyBVbml0cy5m cm9tX2VtIChmbG9hdCBlbSk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5pdHNfZnJv bV9lbV9mb3JfZm9udCIpXQorKwkJcHVibGljIFVuaXRzLmZyb21fZW1fZm9yX2ZvbnQgKHN0cmlu ZyBmb250X25hbWUsIGZsb2F0IGVtKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0 c19mcm9tX21tIildCisrCQlwdWJsaWMgVW5pdHMuZnJvbV9tbSAoZmxvYXQgbW0pOworKwkJW0ND b2RlIChjbmFtZSA9ICJjbHV0dGVyX3VuaXRzX2Zyb21fcGl4ZWxzIildCisrCQlwdWJsaWMgVW5p dHMuZnJvbV9waXhlbHMgKGludCBweCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfdW5p dHNfZnJvbV9wdCIpXQorKwkJcHVibGljIFVuaXRzLmZyb21fcHQgKGZsb2F0IHB0KTsKKysJCVtD Q29kZSAoY25hbWUgPSAiY2x1dHRlcl91bml0c19mcm9tX3N0cmluZyIpXQorKwkJcHVibGljIFVu aXRzLmZyb21fc3RyaW5nIChzdHJpbmcgc3RyKTsKKysJCXB1YmxpYyBDbHV0dGVyLlVuaXRUeXBl IGdldF91bml0X3R5cGUgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3VuaXRfdmFsdWUgKCk7Cisr CQlwdWJsaWMgZmxvYXQgdG9fcGl4ZWxzICgpOworKwkJcHVibGljIHN0cmluZyB0b19zdHJpbmcg KCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY3ByZWZpeCA9ICJDTFVUVEVSX0FDVE9SX0FMSUdOXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9h Y3Rvcl9hbGlnbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwlwdWJsaWMgZW51bSBBY3RvckFsaWduIHsKKysJCUZJTEwsCisrCQlTVEFSVCwKKysJCUNFTlRF UiwKKysJCUVORAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9BQ1RPUl8iLCB0eXBlX2lkID0gImNsdXR0ZXJf YWN0b3JfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMgZW51bSBBY3Rv ckZsYWdzIHsKKysJCU1BUFBFRCwKKysJCVJFQUxJWkVELAorKwkJUkVBQ1RJVkUsCisrCQlWSVNJ QkxFLAorKwkJTk9fTEFZT1VUCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0FMSUdOXyIsIHR5cGVfaWQgPSAi Y2x1dHRlcl9hbGlnbl9heGlzX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjQiKV0KKysJcHVibGljIGVudW0gQWxpZ25BeGlzIHsKKysJCVhfQVhJUywKKysJCVlfQVhJUywK KysJCUJPVEgKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2FsbG9jYXRp b25fZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCXB1YmxpYyBlbnVtIEFsbG9jYXRpb25GbGFncyB7CisrCQlBTExPQ0FUSU9OX05P TkUsCisrCQlBQlNPTFVURV9PUklHSU5fQ0hBTkdFRCwKKysJCURFTEVHQVRFX0xBWU9VVAorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVm aXggPSAiQ0xVVFRFUl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfYW5pbWF0aW9uX21vZGVfZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBBbmlt YXRpb25Nb2RlIHsKKysJCUNVU1RPTV9NT0RFLAorKwkJTElORUFSLAorKwkJRUFTRV9JTl9RVUFE LAorKwkJRUFTRV9PVVRfUVVBRCwKKysJCUVBU0VfSU5fT1VUX1FVQUQsCisrCQlFQVNFX0lOX0NV QklDLAorKwkJRUFTRV9PVVRfQ1VCSUMsCisrCQlFQVNFX0lOX09VVF9DVUJJQywKKysJCUVBU0Vf SU5fUVVBUlQsCisrCQlFQVNFX09VVF9RVUFSVCwKKysJCUVBU0VfSU5fT1VUX1FVQVJULAorKwkJ RUFTRV9JTl9RVUlOVCwKKysJCUVBU0VfT1VUX1FVSU5ULAorKwkJRUFTRV9JTl9PVVRfUVVJTlQs CisrCQlFQVNFX0lOX1NJTkUsCisrCQlFQVNFX09VVF9TSU5FLAorKwkJRUFTRV9JTl9PVVRfU0lO RSwKKysJCUVBU0VfSU5fRVhQTywKKysJCUVBU0VfT1VUX0VYUE8sCisrCQlFQVNFX0lOX09VVF9F WFBPLAorKwkJRUFTRV9JTl9DSVJDLAorKwkJRUFTRV9PVVRfQ0lSQywKKysJCUVBU0VfSU5fT1VU X0NJUkMsCisrCQlFQVNFX0lOX0VMQVNUSUMsCisrCQlFQVNFX09VVF9FTEFTVElDLAorKwkJRUFT RV9JTl9PVVRfRUxBU1RJQywKKysJCUVBU0VfSU5fQkFDSywKKysJCUVBU0VfT1VUX0JBQ0ssCisr CQlFQVNFX0lOX09VVF9CQUNLLAorKwkJRUFTRV9JTl9CT1VOQ0UsCisrCQlFQVNFX09VVF9CT1VO Q0UsCisrCQlFQVNFX0lOX09VVF9CT1VOQ0UsCisrCQlTVEVQUywKKysJCVNURVBfU1RBUlQsCisr CQlTVEVQX0VORCwKKysJCUNVQklDX0JFWklFUiwKKysJCUVBU0UsCisrCQlFQVNFX0lOLAorKwkJ RUFTRV9PVVQsCisrCQlFQVNFX0lOX09VVCwKKysJCUFOSU1BVElPTl9MQVNUCisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJD TFVUVEVSX0JJTl9BTElHTk1FTlRfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2Jpbl9hbGlnbm1lbnRf Z2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMiIpXQorKwlwdWJsaWMgZW51 bSBCaW5BbGlnbm1lbnQgeworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlKV0KKysJCUZJ WEVELAorKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlKV0KKysJCUZJTEwsCisrCQlTVEFS VCwKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSldCisrCQlFTkQsCisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUpXQorKwkJQ0VOVEVSCisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0JJTkRf IiwgdHlwZV9pZCA9ICJjbHV0dGVyX2JpbmRfY29vcmRpbmF0ZV9nZXRfdHlwZSAoKSIpXQorKwlb VmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCXB1YmxpYyBlbnVtIEJpbmRDb29yZGluYXRlIHsK KysJCVgsCisrCQlZLAorKwkJV0lEVEgsCisrCQlIRUlHSFQsCisrCQlQT1NJVElPTiwKKysJCVNJ WkUsCisrCQlBTEwKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQk9YX0FMSUdOTUVOVF8iLCB0eXBlX2lkID0g ImNsdXR0ZXJfYm94X2FsaWdubWVudF9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS4yIildCisrCXB1YmxpYyBlbnVtIEJveEFsaWdubWVudCB7CisrCQlTVEFSVCwKKysJCUVO RCwKKysJCUNFTlRFUgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9CVVRUT05fU1RBVEVfIiwgdHlwZV9pZCA9 ICJjbHV0dGVyX2J1dHRvbl9zdGF0ZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBCdXR0 b25TdGF0ZSB7CisrCQlSRUxFQVNFRCwKKysJCVBSRVNTRUQKKysJfQorKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQ09O VEVOVF9HUkFWSVRZXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9jb250ZW50X2dyYXZpdHlfZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGVudW0gQ29u dGVudEdyYXZpdHkgeworKwkJVE9QX0xFRlQsCisrCQlUT1AsCisrCQlUT1BfUklHSFQsCisrCQlM RUZULAorKwkJQ0VOVEVSLAorKwkJUklHSFQsCisrCQlCT1RUT01fTEVGVCwKKysJCUJPVFRPTSwK KysJCUJPVFRPTV9SSUdIVCwKKysJCVJFU0laRV9GSUxMLAorKwkJUkVTSVpFX0FTUEVDVAorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVm aXggPSAiQ0xVVFRFUl9SRVBFQVRfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2NvbnRlbnRfcmVwZWF0 X2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0K KysJcHVibGljIGVudW0gQ29udGVudFJlcGVhdCB7CisrCQlOT05FLAorKwkJWF9BWElTLAorKwkJ WV9BWElTLAorKwkJQk9USAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9ERUJVR18iLCB0eXBlX2lkID0gImNs dXR0ZXJfZGVidWdfZmxhZ19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVt IERlYnVnRmxhZyB7CisrCQlNSVNDLAorKwkJQUNUT1IsCisrCQlURVhUVVJFLAorKwkJRVZFTlQs CisrCQlQQUlOVCwKKysJCVBBTkdPLAorKwkJQkFDS0VORCwKKysJCVNDSEVEVUxFUiwKKysJCVND UklQVCwKKysJCVNIQURFUiwKKysJCU1VTFRJU1RBR0UsCisrCQlBTklNQVRJT04sCisrCQlMQVlP VVQsCisrCQlQSUNLLAorKwkJRVZFTlRMT09QLAorKwkJQ0xJUFBJTkcsCisrCQlPT0JfVFJBTlNG T1JNUworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9EUkFHXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9kcmFnX2F4 aXNfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMg ZW51bSBEcmFnQXhpcyB7CisrCQlBWElTX05PTkUsCisrCQlYX0FYSVMsCisrCQlZX0FYSVMKKysJ fQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJl Zml4ID0gIkNMVVRURVJfREVCVUdfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2RyYXdfZGVidWdfZmxh Z19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIERyYXdEZWJ1Z0ZsYWcg eworKwkJRElTQUJMRV9TV0FQX0VWRU5UUywKKysJCURJU0FCTEVfQ0xJUFBFRF9SRURSQVdTLAor KwkJUkVEUkFXUywKKysJCVBBSU5UX1ZPTFVNRVMsCisrCQlESVNBQkxFX0NVTExJTkcsCisrCQlE SVNBQkxFX09GRlNDUkVFTl9SRURJUkVDVCwKKysJCUNPTlRJTlVPVVNfUkVEUkFXLAorKwkJUEFJ TlRfREVGT1JNX1RJTEVTLAorKwkJUEFJTlRfREFNQUdFX1JFR0lPTgorKwl9CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRF Ul9FRkZFQ1RfUEFJTlRfQUNUT1JfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2VmZmVjdF9wYWludF9m bGFnc19nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIEVmZmVjdFBhaW50 RmxhZ3MgeworKwkJW0NDb2RlIChjbmFtZSA9ICJDTFVUVEVSX0VGRkVDVF9QQUlOVF9BQ1RPUl9E SVJUWSIpXQorKwkJQUNUT1JfRElSVFkKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfRVZFTlRfIiwgdHlwZV9p ZCA9ICJjbHV0dGVyX2V2ZW50X2ZsYWdzX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJW1Zl cnNpb24gKHNpbmNlID0gIjAuNiIpXQorKwlwdWJsaWMgZW51bSBFdmVudEZsYWdzIHsKKysJCU5P TkUsCisrCQlGTEFHX1NZTlRIRVRJQywKKysJCUZMQUdfSU5QVVRfTUVUSE9ELAorKwkJRkxBR19S RVBFQVRFRAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl8iLCB0eXBlX2lkID0gImNsdXR0ZXJfZXZlbnRfdHlw ZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBl bnVtIEV2ZW50VHlwZSB7CisrCQlOT1RISU5HLAorKwkJS0VZX1BSRVNTLAorKwkJS0VZX1JFTEVB U0UsCisrCQlNT1RJT04sCisrCQlFTlRFUiwKKysJCUxFQVZFLAorKwkJQlVUVE9OX1BSRVNTLAor KwkJQlVUVE9OX1JFTEVBU0UsCisrCQlTQ1JPTEwsCisrCQlTVEFHRV9TVEFURSwKKysJCURFU1RS T1lfTk9USUZZLAorKwkJQ0xJRU5UX01FU1NBR0UsCisrCQlERUxFVEUsCisrCQlUT1VDSF9CRUdJ TiwKKysJCVRPVUNIX1VQREFURSwKKysJCVRPVUNIX0VORCwKKysJCVRPVUNIX0NBTkNFTCwKKysJ CVRPVUNIUEFEX1BJTkNILAorKwkJVE9VQ0hQQURfU1dJUEUsCisrCQlQUk9YSU1JVFlfSU4sCisr CQlQUk9YSU1JVFlfT1VULAorKwkJUEFEX0JVVFRPTl9QUkVTUywKKysJCVBBRF9CVVRUT05fUkVM RUFTRSwKKysJCVBBRF9TVFJJUCwKKysJCVBBRF9SSU5HLAorKwkJRVZFTlRfTEFTVAorKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXgg PSAiQ0xVVFRFUl9GRUFUVVJFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9mZWF0dXJlX2ZsYWdzX2dl dF90eXBlICgpIildCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNCIpXQorKwlw dWJsaWMgZW51bSBGZWF0dXJlRmxhZ3MgeworKwkJVEVYVFVSRV9OUE9ULAorKwkJU1dBUF9USFJP VFRMRSwKKysJCVNUQUdFX1NUQVRJQywKKysJCVNUQUdFX0NVUlNPUiwKKysJCVNIQURFUlNfR0xT TCwKKysJCU9GRlNDUkVFTiwKKysJCVNUQUdFX01VTFRJUExFLAorKwkJU1dBUF9FVkVOVFM7Cisr CQlbQ0NvZGUgKGNuYW1lID0gImNsdXR0ZXJfZmVhdHVyZV9hdmFpbGFibGUiKV0KKysJCXB1Ymxp YyBib29sIGlzX2F2YWlsYWJsZSAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY2x1dHRlcl9mZWF0 dXJlX2dldF9hbGwiKV0KKysJCXB1YmxpYyBzdGF0aWMgQ2x1dHRlci5GZWF0dXJlRmxhZ3MgQGdl dCAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjcHJlZml4ID0gIkNMVVRURVJfRkxPV18iLCB0eXBlX2lkID0gImNsdXR0ZXJfZmxvd19v cmllbnRhdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisr CXB1YmxpYyBlbnVtIEZsb3dPcmllbnRhdGlvbiB7CisrCQlIT1JJWk9OVEFMLAorKwkJVkVSVElD QUwKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjcHJlZml4ID0gIkNMVVRURVJfR0VTVFVSRV9UUklHR0VSX0VER0VfIiwgdHlwZV9pZCA9ICJj bHV0dGVyX2dlc3R1cmVfdHJpZ2dlcl9lZGdlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjE4IildCisrCXB1YmxpYyBlbnVtIEdlc3R1cmVUcmlnZ2VyRWRnZSB7CisrCQlO T05FLAorKwkJQUZURVIsCisrCQlCRUZPUkUKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfR1JBVklUWV8iLCB0 eXBlX2lkID0gImNsdXR0ZXJfZ3Jhdml0eV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoZGVw cmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4yMiIsIHNpbmNlID0gIjAuMiIp XQorKwlwdWJsaWMgZW51bSBHcmF2aXR5IHsKKysJCU5PTkUsCisrCQlOT1JUSCwKKysJCU5PUlRI X0VBU1QsCisrCQlFQVNULAorKwkJU09VVEhfRUFTVCwKKysJCVNPVVRILAorKwkJU09VVEhfV0VT VCwKKysJCVdFU1QsCisrCQlOT1JUSF9XRVNULAorKwkJQ0VOVEVSCisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVS X0dSSURfUE9TSVRJT05fIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2dyaWRfcG9zaXRpb25fZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0KKysJcHVibGljIGVudW0gR3Jp ZFBvc2l0aW9uIHsKKysJCUxFRlQsCisrCQlSSUdIVCwKKysJCVRPUCwKKysJCUJPVFRPTQorKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVm aXggPSAiQ0xVVFRFUl9JTklUXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbml0X2Vycm9yX2dldF90 eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjIiKV0KKysJcHVibGljIGVudW0gSW5p dEVycm9yIHsKKysJCVNVQ0NFU1MsCisrCQlFUlJPUl9VTktOT1dOLAorKwkJRVJST1JfVEhSRUFE UywKKysJCUVSUk9SX0JBQ0tFTkQsCisrCQlFUlJPUl9JTlRFUk5BTDsKKysJCXB1YmxpYyBzdGF0 aWMgR0xpYi5RdWFyayBxdWFyayAoKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfSU5QVVRfQVhJU18iLCB0 eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfYXhpc19nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS42IildCisrCXB1YmxpYyBlbnVtIElucHV0QXhpcyB7CisrCQlJR05PUkUsCisr CQlYLAorKwkJWSwKKysJCVBSRVNTVVJFLAorKwkJWFRJTFQsCisrCQlZVElMVCwKKysJCVdIRUVM LAorKwkJRElTVEFOQ0UsCisrCQlST1RBVElPTiwKKysJCVNMSURFUiwKKysJCUxBU1QKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4 ID0gIkNMVVRURVJfSU5QVVRfQ09OVEVOVF9ISU5UXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1 dF9jb250ZW50X2hpbnRfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMg ZW51bSBJbnB1dENvbnRlbnRIaW50RmxhZ3MgeworKwkJQ09NUExFVElPTiwKKysJCVNQRUxMQ0hF Q0ssCisrCQlBVVRPX0NBUElUQUxJWkFUSU9OLAorKwkJTE9XRVJDQVNFLAorKwkJVVBQRVJDQVNF LAorKwkJVElUTEVDQVNFLAorKwkJSElEREVOX1RFWFQsCisrCQlTRU5TSVRJVkVfREFUQSwKKysJ CUxBVElOLAorKwkJTVVMVElMSU5FCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0lOUFVUX0NPTlRFTlRfUFVS UE9TRV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfY29udGVudF9wdXJwb3NlX2dldF90eXBl ICgpIildCisrCXB1YmxpYyBlbnVtIElucHV0Q29udGVudFB1cnBvc2UgeworKwkJTk9STUFMLAor KwkJQUxQSEEsCisrCQlESUdJVFMsCisrCQlOVU1CRVIsCisrCQlQSE9ORSwKKysJCVVSTCwKKysJ CUVNQUlMLAorKwkJTkFNRSwKKysJCVBBU1NXT1JELAorKwkJREFURSwKKysJCVRJTUUsCisrCQlE QVRFVElNRSwKKysJCVRFUk1JTkFMCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0lOUFVUX0RFVklDRV9NQVBQ SU5HXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9pbnB1dF9kZXZpY2VfbWFwcGluZ19nZXRfdHlwZSAo KSIpXQorKwlwdWJsaWMgZW51bSBJbnB1dERldmljZU1hcHBpbmcgeworKwkJQUJTT0xVVEUsCisr CQlSRUxBVElWRQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9JTlBVVF9ERVZJQ0VfUEFEX1NPVVJDRV8iLCB0 eXBlX2lkID0gImNsdXR0ZXJfaW5wdXRfZGV2aWNlX3BhZF9zb3VyY2VfZ2V0X3R5cGUgKCkiKV0K KysJcHVibGljIGVudW0gSW5wdXREZXZpY2VQYWRTb3VyY2UgeworKwkJVU5LTk9XTiwKKysJCUZJ TkdFUgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9JTlBVVF9ERVZJQ0VfVE9PTF8iLCB0eXBlX2lkID0gImNs dXR0ZXJfaW5wdXRfZGV2aWNlX3Rvb2xfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4yOCIpXQorKwlwdWJsaWMgZW51bSBJbnB1dERldmljZVRvb2xUeXBlIHsKKysJ CU5PTkUsCisrCQlQRU4sCisrCQlFUkFTRVIsCisrCQlCUlVTSCwKKysJCVBFTkNJTCwKKysJCUFJ UkJSVVNILAorKwkJTU9VU0UsCisrCQlMRU5TCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSXyIsIHR5cGVfaWQg PSAiY2x1dHRlcl9pbnB1dF9kZXZpY2VfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIElucHV0RGV2aWNlVHlwZSB7CisrCQlQT0lO VEVSX0RFVklDRSwKKysJCUtFWUJPQVJEX0RFVklDRSwKKysJCUVYVEVOU0lPTl9ERVZJQ0UsCisr CQlKT1lTVElDS19ERVZJQ0UsCisrCQlUQUJMRVRfREVWSUNFLAorKwkJVE9VQ0hQQURfREVWSUNF LAorKwkJVE9VQ0hTQ1JFRU5fREVWSUNFLAorKwkJUEVOX0RFVklDRSwKKysJCUVSQVNFUl9ERVZJ Q0UsCisrCQlDVVJTT1JfREVWSUNFLAorKwkJUEFEX0RFVklDRSwKKysJCU5fREVWSUNFX1RZUEVT CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y3ByZWZpeCA9ICJDTFVUVEVSX0lOUFVUX01PREVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2lucHV0 X21vZGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwlwdWJs aWMgZW51bSBJbnB1dE1vZGUgeworKwkJTUFTVEVSLAorKwkJU0xBVkUsCisrCQlGTE9BVElORwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNw cmVmaXggPSAiQ0xVVFRFUl9JTlBVVF9QQU5FTF9TVEFURV8iLCB0eXBlX2lkID0gImNsdXR0ZXJf aW5wdXRfcGFuZWxfc3RhdGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gSW5wdXRQYW5l bFN0YXRlIHsKKysJCU9GRiwKKysJCU9OLAorKwkJVE9HR0xFCisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0lO VEVSUE9MQVRJT05fIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2ludGVycG9sYXRpb25fZ2V0X3R5cGUg KCkiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0g IjEuMjIiLCBzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIGVudW0gSW50ZXJwb2xhdGlvbiB7Cisr CQlMSU5FQVIsCisrCQlDVUJJQworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9LRVlfU1RBVEVfIiwgdHlwZV9p ZCA9ICJjbHV0dGVyX2tleV9zdGF0ZV9nZXRfdHlwZSAoKSIpXQorKwlwdWJsaWMgZW51bSBLZXlT dGF0ZSB7CisrCQlSRUxFQVNFRCwKKysJCVBSRVNTRUQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQTExWV8i LCB0eXBlX2lkID0gImNsdXR0ZXJfa2V5Ym9hcmRfYTExeV9mbGFnc19nZXRfdHlwZSAoKSIpXQor KwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIEtleWJvYXJkQTExeUZsYWdzIHsKKysJCUtFWUJPQVJE X0VOQUJMRUQsCisrCQlUSU1FT1VUX0VOQUJMRUQsCisrCQlNT1VTRV9LRVlTX0VOQUJMRUQsCisr CQlTTE9XX0tFWVNfRU5BQkxFRCwKKysJCVNMT1dfS0VZU19CRUVQX1BSRVNTLAorKwkJU0xPV19L RVlTX0JFRVBfQUNDRVBULAorKwkJU0xPV19LRVlTX0JFRVBfUkVKRUNULAorKwkJQk9VTkNFX0tF WVNfRU5BQkxFRCwKKysJCUJPVU5DRV9LRVlTX0JFRVBfUkVKRUNULAorKwkJVE9HR0xFX0tFWVNf RU5BQkxFRCwKKysJCVNUSUNLWV9LRVlTX0VOQUJMRUQsCisrCQlTVElDS1lfS0VZU19UV09fS0VZ X09GRiwKKysJCVNUSUNLWV9LRVlTX0JFRVAsCisrCQlGRUFUVVJFX1NUQVRFX0NIQU5HRV9CRUVQ CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y3ByZWZpeCA9ICJDTFVUVEVSX0xPTkdfUFJFU1NfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX2xvbmdf cHJlc3Nfc3RhdGVfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQor KwlwdWJsaWMgZW51bSBMb25nUHJlc3NTdGF0ZSB7CisrCQlRVUVSWSwKKysJCUFDVElWQVRFLAor KwkJQ0FOQ0VMCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9tb2RpZmll cl90eXBlX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAu NCIpXQorKwlwdWJsaWMgZW51bSBNb2RpZmllclR5cGUgeworKwkJU0hJRlRfTUFTSywKKysJCUxP Q0tfTUFTSywKKysJCUNPTlRST0xfTUFTSywKKysJCU1PRDFfTUFTSywKKysJCU1PRDJfTUFTSywK KysJCU1PRDNfTUFTSywKKysJCU1PRDRfTUFTSywKKysJCU1PRDVfTUFTSywKKysJCUJVVFRPTjFf TUFTSywKKysJCUJVVFRPTjJfTUFTSywKKysJCUJVVFRPTjNfTUFTSywKKysJCUJVVFRPTjRfTUFT SywKKysJCUJVVFRPTjVfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzEzX01BU0ssCisrCQlN T0RJRklFUl9SRVNFUlZFRF8xNF9NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMTVfTUFTSywK KysJCU1PRElGSUVSX1JFU0VSVkVEXzE2X01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8xN19N QVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMThfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVE XzE5X01BU0ssCisrCQlNT0RJRklFUl9SRVNFUlZFRF8yMF9NQVNLLAorKwkJTU9ESUZJRVJfUkVT RVJWRURfMjFfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzIyX01BU0ssCisrCQlNT0RJRklF Ul9SRVNFUlZFRF8yM19NQVNLLAorKwkJTU9ESUZJRVJfUkVTRVJWRURfMjRfTUFTSywKKysJCU1P RElGSUVSX1JFU0VSVkVEXzI1X01BU0ssCisrCQlTVVBFUl9NQVNLLAorKwkJSFlQRVJfTUFTSywK KysJCU1FVEFfTUFTSywKKysJCU1PRElGSUVSX1JFU0VSVkVEXzI5X01BU0ssCisrCQlSRUxFQVNF X01BU0ssCisrCQlNT0RJRklFUl9NQVNLCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX09GRlNDUkVFTl9SRURJ UkVDVF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfb2Zmc2NyZWVuX3JlZGlyZWN0X2dldF90eXBlICgp IildCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwlwdWJsaWMgZW51 bSBPZmZzY3JlZW5SZWRpcmVjdCB7CisrCQlBVVRPTUFUSUNfRk9SX09QQUNJVFksCisrCQlBTFdB WVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjcHJlZml4ID0gIkNMVVRURVJfT1JJRU5UQVRJT05fIiwgdHlwZV9pZCA9ICJjbHV0dGVyX29y aWVudGF0aW9uX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisr CXB1YmxpYyBlbnVtIE9yaWVudGF0aW9uIHsKKysJCUhPUklaT05UQUwsCisrCQlWRVJUSUNBTAor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNw cmVmaXggPSAiQ0xVVFRFUl9QQU5fIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Bhbl9heGlzX2dldF90 eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBlbnVtIFBh bkF4aXMgeworKwkJQVhJU19OT05FLAorKwkJWF9BWElTLAorKwkJWV9BWElTLAorKwkJQVhJU19B VVRPCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY3ByZWZpeCA9ICJDTFVUVEVSX1BBVEhfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3BhdGhfbm9k ZV90eXBlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVi bGljIGVudW0gUGF0aE5vZGVUeXBlIHsKKysJCU1PVkVfVE8sCisrCQlMSU5FX1RPLAorKwkJQ1VS VkVfVE8sCisrCQlDTE9TRSwKKysJCVJFTF9NT1ZFX1RPLAorKwkJUkVMX0xJTkVfVE8sCisrCQlS RUxfQ1VSVkVfVE8KKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfREVCVUdfTk9QXyIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9waWNrX2RlYnVnX2ZsYWdfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQorKwlwdWJsaWMg ZW51bSBQaWNrRGVidWdGbGFnIHsKKysJCVBJQ0tJTkcKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfUElDS18i LCB0eXBlX2lkID0gImNsdXR0ZXJfcGlja19tb2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9u IChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGVudW0gUGlja01vZGUgeworKwkJTk9ORSwKKysJ CVJFQUNUSVZFLAorKwkJQUxMCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0ExMVlfRFdFTExfQ0xJQ0tfVFlQ RV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfcG9pbnRlcl9hMTF5X2R3ZWxsX2NsaWNrX3R5cGVfZ2V0 X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gUG9pbnRlckExMXlEd2VsbENsaWNrVHlwZSB7Cisr CQlOT05FLAorKwkJUFJJTUFSWSwKKysJCVNFQ09OREFSWSwKKysJCU1JRERMRSwKKysJCURPVUJM RSwKKysJCURSQUcKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfQTExWV9EV0VMTF9ESVJFQ1RJT05fIiwgdHlw ZV9pZCA9ICJjbHV0dGVyX3BvaW50ZXJfYTExeV9kd2VsbF9kaXJlY3Rpb25fZ2V0X3R5cGUgKCki KV0KKysJcHVibGljIGVudW0gUG9pbnRlckExMXlEd2VsbERpcmVjdGlvbiB7CisrCQlOT05FLAor KwkJTEVGVCwKKysJCVJJR0hULAorKwkJVVAsCisrCQlET1dOCisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX0Ex MVlfRFdFTExfTU9ERV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfcG9pbnRlcl9hMTF5X2R3ZWxsX21v ZGVfZ2V0X3R5cGUgKCkiKV0KKysJcHVibGljIGVudW0gUG9pbnRlckExMXlEd2VsbE1vZGUgewor KwkJV0lORE9XLAorKwkJR0VTVFVSRQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9BMTFZXyIsIHR5cGVfaWQg PSAiY2x1dHRlcl9wb2ludGVyX2ExMXlfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJW0ZsYWdzXQor KwlwdWJsaWMgZW51bSBQb2ludGVyQTExeUZsYWdzIHsKKysJCVNFQ09OREFSWV9DTElDS19FTkFC TEVELAorKwkJRFdFTExfRU5BQkxFRAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9BMTFZX1RJTUVPVVRfVFlQ RV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfcG9pbnRlcl9hMTF5X3RpbWVvdXRfdHlwZV9nZXRfdHlw ZSAoKSIpXQorKwlwdWJsaWMgZW51bSBQb2ludGVyQTExeVRpbWVvdXRUeXBlIHsKKysJCVNFQ09O REFSWV9DTElDSywKKysJCURXRUxMLAorKwkJR0VTVFVSRQorKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9SRVBB SU5UX0ZMQUdTXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9yZXBhaW50X2ZsYWdzX2dldF90eXBlICgp IildCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIGVu dW0gUmVwYWludEZsYWdzIHsKKysJCVBSRV9QQUlOVCwKKysJCVBPU1RfUEFJTlQsCisrCQlRVUVV RV9SRURSQVdfT05fQURECisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1JFUVVFU1RfIiwgdHlwZV9pZCA9ICJj bHV0dGVyX3JlcXVlc3RfbW9kZV9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MC44IildCisrCXB1YmxpYyBlbnVtIFJlcXVlc3RNb2RlIHsKKysJCUhFSUdIVF9GT1JfV0lEVEgs CisrCQlXSURUSF9GT1JfSEVJR0hULAorKwkJQ09OVEVOVF9TSVpFCisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVS XyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9yb3RhdGVfYXhpc19nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBlbnVtIFJvdGF0ZUF4aXMgeworKwkJWF9B WElTLAorKwkJWV9BWElTLAorKwkJWl9BWElTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1JPVEFURV8iLCB0 eXBlX2lkID0gImNsdXR0ZXJfcm90YXRlX2RpcmVjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4yMiIsIHNpbmNl ID0gIjAuNCIpXQorKwlwdWJsaWMgZW51bSBSb3RhdGVEaXJlY3Rpb24geworKwkJQ1csCisrCQlD Q1cKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgi LCBjcHJlZml4ID0gIkNMVVRURVJfU0NBTElOR19GSUxURVJfIiwgdHlwZV9pZCA9ICJjbHV0dGVy X3NjYWxpbmdfZmlsdGVyX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEw IildCisrCXB1YmxpYyBlbnVtIFNjYWxpbmdGaWx0ZXIgeworKwkJTElORUFSLAorKwkJTkVBUkVT VCwKKysJCVRSSUxJTkVBUgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0 dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9TQ1JPTExfIiwgdHlwZV9pZCA9ICJj bHV0dGVyX3Njcm9sbF9kaXJlY3Rpb25fZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNl ID0gIjAuNCIpXQorKwlwdWJsaWMgZW51bSBTY3JvbGxEaXJlY3Rpb24geworKwkJVVAsCisrCQlE T1dOLAorKwkJTEVGVCwKKysJCVJJR0hULAorKwkJU01PT1RICisrCX0KKysJW0NDb2RlIChjaGVh ZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1ND Uk9MTF9GSU5JU0hFRF8iLCB0eXBlX2lkID0gImNsdXR0ZXJfc2Nyb2xsX2ZpbmlzaF9mbGFnc19n ZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjI2IildCisr CXB1YmxpYyBlbnVtIFNjcm9sbEZpbmlzaEZsYWdzIHsKKysJCU5PTkUsCisrCQlIT1JJWk9OVEFM LAorKwkJVkVSVElDQUwKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRl ci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfU0NST0xMXyIsIHR5cGVfaWQgPSAiY2x1 dHRlcl9zY3JvbGxfbW9kZV9nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBlbnVtIFNjcm9sbE1vZGUgeworKwkJTk9ORSwKKysJ CUhPUklaT05UQUxMWSwKKysJCVZFUlRJQ0FMTFksCisrCQlCT1RICisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVS X1NDUk9MTF9TT1VSQ0VfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Njcm9sbF9zb3VyY2VfZ2V0X3R5 cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjYiKV0KKysJcHVibGljIGVudW0gU2Ny b2xsU291cmNlIHsKKysJCVVOS05PV04sCisrCQlXSEVFTCwKKysJCUZJTkdFUiwKKysJCUNPTlRJ TlVPVVMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjcHJlZml4ID0gIkNMVVRURVJfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3NoYWRlcl90eXBl X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIGVu dW0gU2hhZGVyVHlwZSB7CisrCQlWRVJURVhfU0hBREVSLAorKwkJRlJBR01FTlRfU0hBREVSCisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3By ZWZpeCA9ICJDTFVUVEVSX1NOQVBfRURHRV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfc25hcF9lZGdl X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJcHVibGljIGVu dW0gU25hcEVkZ2UgeworKwkJVE9QLAorKwkJUklHSFQsCisrCQlCT1RUT00sCisrCQlMRUZUCisr CX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3By ZWZpeCA9ICJDTFVUVEVSX1NUQUdFX1NUQVRFXyIsIHR5cGVfaWQgPSAiY2x1dHRlcl9zdGFnZV9z dGF0ZV9nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQi KV0KKysJcHVibGljIGVudW0gU3RhZ2VTdGF0ZSB7CisrCQlBQ1RJVkFURUQKKysJfQorKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNM VVRURVJfQ09MT1JfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3N0YXRpY19jb2xvcl9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS42IildCisrCXB1YmxpYyBlbnVtIFN0YXRpY0Nv bG9yIHsKKysJCVdISVRFLAorKwkJQkxBQ0ssCisrCQlSRUQsCisrCQlEQVJLX1JFRCwKKysJCUdS RUVOLAorKwkJREFSS19HUkVFTiwKKysJCUJMVUUsCisrCQlEQVJLX0JMVUUsCisrCQlDWUFOLAor KwkJREFSS19DWUFOLAorKwkJTUFHRU5UQSwKKysJCURBUktfTUFHRU5UQSwKKysJCVlFTExPVywK KysJCURBUktfWUVMTE9XLAorKwkJR1JBWSwKKysJCURBUktfR1JBWSwKKysJCUxJR0hUX0dSQVks CisrCQlCVVRURVIsCisrCQlCVVRURVJfTElHSFQsCisrCQlCVVRURVJfREFSSywKKysJCU9SQU5H RSwKKysJCU9SQU5HRV9MSUdIVCwKKysJCU9SQU5HRV9EQVJLLAorKwkJQ0hPQ09MQVRFLAorKwkJ Q0hPQ09MQVRFX0xJR0hULAorKwkJQ0hPQ09MQVRFX0RBUkssCisrCQlDSEFNRUxFT04sCisrCQlD SEFNRUxFT05fTElHSFQsCisrCQlDSEFNRUxFT05fREFSSywKKysJCVNLWV9CTFVFLAorKwkJU0tZ X0JMVUVfTElHSFQsCisrCQlTS1lfQkxVRV9EQVJLLAorKwkJUExVTSwKKysJCVBMVU1fTElHSFQs CisrCQlQTFVNX0RBUkssCisrCQlTQ0FSTEVUX1JFRCwKKysJCVNDQVJMRVRfUkVEX0xJR0hULAor KwkJU0NBUkxFVF9SRURfREFSSywKKysJCUFMVU1JTklVTV8xLAorKwkJQUxVTUlOSVVNXzIsCisr CQlBTFVNSU5JVU1fMywKKysJCUFMVU1JTklVTV80LAorKwkJQUxVTUlOSVVNXzUsCisrCQlBTFVN SU5JVU1fNiwKKysJCVRSQU5TUEFSRU5UCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1NURVBfTU9ERV8iLCB0 eXBlX2lkID0gImNsdXR0ZXJfc3RlcF9tb2RlX2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEyIildCisrCXB1YmxpYyBlbnVtIFN0ZXBNb2RlIHsKKysJCVNUQVJULAorKwkJ RU5ECisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IiwgY3ByZWZpeCA9ICJDTFVUVEVSX1NXSVBFX0RJUkVDVElPTl8iLCB0eXBlX2lkID0gImNsdXR0 ZXJfc3dpcGVfZGlyZWN0aW9uX2dldF90eXBlICgpIildCisrCVtGbGFnc10KKysJW1ZlcnNpb24g KHNpbmNlID0gIjEuOCIpXQorKwlwdWJsaWMgZW51bSBTd2lwZURpcmVjdGlvbiB7CisrCQlVUCwK KysJCURPV04sCisrCQlMRUZULAorKwkJUklHSFQKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0gIkNMVVRURVJfVEVYVF9ESVJF Q1RJT05fIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RleHRfZGlyZWN0aW9uX2dldF90eXBlICgpIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIiKV0KKysJcHVibGljIGVudW0gVGV4dERpcmVjdGlv biB7CisrCQlERUZBVUxULAorKwkJTFRSLAorKwkJUlRMCisrCX0KKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1RFWFRV UkVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3RleHR1cmVfZmxhZ3NfZ2V0X3R5cGUgKCkiKV0KKysJ W0ZsYWdzXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4yMiIsIHNpbmNlID0gIjAuNCIpXQorKwlwdWJsaWMgZW51bSBUZXh0dXJlRmxhZ3Mgewor KwkJTk9ORSwKKysJCVJHQl9GTEFHX0JHUiwKKysJCVJHQl9GTEFHX1BSRU1VTFQsCisrCQlZVVZf RkxBR19ZVVYyCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY3ByZWZpeCA9ICJDTFVUVEVSX1RFWFRVUkVfUVVBTElUWV8iLCB0eXBlX2lkID0g ImNsdXR0ZXJfdGV4dHVyZV9xdWFsaXR5X2dldF90eXBlICgpIildCisrCVtWZXJzaW9uIChkZXBy ZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjIyIiwgc2luY2UgPSAiMC44Iild CisrCXB1YmxpYyBlbnVtIFRleHR1cmVRdWFsaXR5IHsKKysJCUxPVywKKysJCU1FRElVTSwKKysJ CUhJR0gKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiLCBjcHJlZml4ID0gIkNMVVRURVJfVElNRUxJTkVfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3Rp bWVsaW5lX2RpcmVjdGlvbl9nZXRfdHlwZSAoKSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC42 IildCisrCXB1YmxpYyBlbnVtIFRpbWVsaW5lRGlyZWN0aW9uIHsKKysJCUZPUldBUkQsCisrCQlC QUNLV0FSRAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9UT1VDSFBBRF9HRVNUVVJFX1BIQVNFXyIsIHR5cGVf aWQgPSAiY2x1dHRlcl90b3VjaHBhZF9nZXN0dXJlX3BoYXNlX2dldF90eXBlICgpIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjI0IildCisrCXB1YmxpYyBlbnVtIFRvdWNocGFkR2VzdHVyZVBo YXNlIHsKKysJCUJFR0lOLAorKwkJVVBEQVRFLAorKwkJRU5ELAorKwkJQ0FOQ0VMCisrCX0KKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY3ByZWZpeCA9 ICJDTFVUVEVSX1VOSVRfIiwgdHlwZV9pZCA9ICJjbHV0dGVyX3VuaXRfdHlwZV9nZXRfdHlwZSAo KSIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBlbnVtIFVuaXRUeXBl IHsKKysJCVBJWEVMLAorKwkJRU0sCisrCQlNTSwKKysJCVBPSU5ULAorKwkJQ00KKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBjcHJlZml4ID0g IkNMVVRURVJfVklSVFVBTF9ERVZJQ0VfVFlQRV8iLCB0eXBlX2lkID0gImNsdXR0ZXJfdmlydHVh bF9kZXZpY2VfdHlwZV9nZXRfdHlwZSAoKSIpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBlbnVtIFZp cnR1YWxEZXZpY2VUeXBlIHsKKysJCU5PTkUsCisrCQlLRVlCT0FSRCwKKysJCVBPSU5URVIsCisr CQlUT1VDSFNDUkVFTgorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xVVFRFUl9aT09NXyIsIHR5cGVfaWQgPSAiY2x1dHRl cl96b29tX2F4aXNfZ2V0X3R5cGUgKCkiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTIiKV0K KysJcHVibGljIGVudW0gWm9vbUF4aXMgeworKwkJWF9BWElTLAorKwkJWV9BWElTLAorKwkJQk9U SAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIs IGNwcmVmaXggPSAiQ0xVVFRFUl9JTUFHRV9FUlJPUl9JTlZBTElEXyIpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgZXJyb3Jkb21haW4gSW1hZ2VFcnJvciB7CisrCQlE QVRBOworKwkJcHVibGljIHN0YXRpYyBHTGliLlF1YXJrIHF1YXJrICgpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGNwcmVmaXggPSAiQ0xV VFRFUl9TQ1JJUFRfRVJST1JfSU5WQUxJRF8iKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuNiIp XQorKwlwdWJsaWMgZXJyb3Jkb21haW4gU2NyaXB0RXJyb3IgeworKwkJVFlQRV9GVU5DVElPTiwK KysJCVBST1BFUlRZLAorKwkJVkFMVUU7CisrCQlwdWJsaWMgc3RhdGljIEdMaWIuUXVhcmsgcXVh cmsgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgaW5zdGFuY2VfcG9zID0gMS45KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMjQiKV0K KysJcHVibGljIGRlbGVnYXRlIENsdXR0ZXIuQWN0b3IgQWN0b3JDcmVhdGVDaGlsZEZ1bmMgKEdM aWIuT2JqZWN0IGl0ZW0pOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiLCBpbnN0YW5jZV9wb3MgPSAxLjkpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9 IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xMiIsIHNpbmNlID0gIjAuMiIpXQorKwlwdWJs aWMgZGVsZWdhdGUgZG91YmxlIEFscGhhRnVuYyAoQ2x1dHRlci5BbHBoYSBhbHBoYSk7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGluc3RhbmNlX3Bv cyA9IDQuOSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGRlbGVnYXRl IGJvb2wgQmluZGluZ0FjdGlvbkZ1bmMgKEdMaWIuT2JqZWN0IGdvYmplY3QsIHN0cmluZyBhY3Rp b25fbmFtZSwgdWludCBrZXlfdmFsLCBDbHV0dGVyLk1vZGlmaWVyVHlwZSBtb2RpZmllcnMpOwor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBpbnN0YW5j ZV9wb3MgPSAxLjkpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBDYWxsYmFjayAoQ2x1dHRlci5B Y3RvciBhY3Rvcik7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0 ZXIuaCIsIGhhc190YXJnZXQgPSBmYWxzZSldCisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIEVtaXRJ bnB1dERldmljZUV2ZW50IChDbHV0dGVyLkV2ZW50IGV2ZW50LCBDbHV0dGVyLklucHV0RGV2aWNl IGRldmljZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIu aCIsIGluc3RhbmNlX3BvcyA9IDEuOSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisr CXB1YmxpYyBkZWxlZ2F0ZSBib29sIEV2ZW50RmlsdGVyRnVuYyAoQ2x1dHRlci5FdmVudCBldmVu dCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIsIGlu c3RhbmNlX3BvcyA9IDEuOSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGlj IGRlbGVnYXRlIHZvaWQgUGF0aENhbGxiYWNrIChDbHV0dGVyLlBhdGhOb2RlIG5vZGUpOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiLCBoYXNfdGFyZ2V0 ID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBkZWxlZ2F0 ZSBib29sIFByb2dyZXNzRnVuYyAoR0xpYi5WYWx1ZSBhLCBHTGliLlZhbHVlIGIsIGRvdWJsZSBw cm9ncmVzcywgR0xpYi5WYWx1ZSByZXR2YWwpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY2x1dHRlci9jbHV0dGVyLmgiLCBpbnN0YW5jZV9wb3MgPSA2LjkpXQorKwlbVmVyc2lvbiAo c2luY2UgPSAiMC42IildCisrCXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIFNjcmlwdENvbm5lY3RGdW5j IChDbHV0dGVyLlNjcmlwdCBzY3JpcHQsIEdMaWIuT2JqZWN0IG9iamVjdCwgc3RyaW5nIHNpZ25h bF9uYW1lLCBzdHJpbmcgaGFuZGxlcl9uYW1lLCBHTGliLk9iamVjdCBjb25uZWN0X29iamVjdCwg R0xpYi5Db25uZWN0RmxhZ3MgZmxhZ3MpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y2x1dHRlci9jbHV0dGVyLmgiLCBpbnN0YW5jZV9wb3MgPSAzLjkpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwlwdWJsaWMgZGVsZWdhdGUgZG91YmxlIFRpbWVsaW5lUHJvZ3Jlc3NG dW5jIChDbHV0dGVyLlRpbWVsaW5lIHRpbWVsaW5lLCBkb3VibGUgZWxhcHNlZCwgZG91YmxlIHRv dGFsKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9DT0dMIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBjb25z dCBzdHJpbmcgQ09HTDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1 dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9DVVJSRU5UX1RJTUUiKV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjAuNCIpXQorKwlwdWJsaWMgY29uc3QgaW50IENVUlJFTlRfVElNRTsKKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwgY25hbWUgPSAiQ0xVVFRF Ul9GTEFWT1VSIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjEwIiwgc2luY2UgPSAiMC40IildCisrCXB1YmxpYyBjb25zdCBzdHJpbmcgRkxB Vk9VUjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIiwg Y25hbWUgPSAiQ0xVVFRFUl9QQVRIX1JFTEFUSVZFIildCisrCXB1YmxpYyBjb25zdCBpbnQgUEFU SF9SRUxBVElWRTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIiwgY25hbWUgPSAiQ0xVVFRFUl9QUklPUklUWV9SRURSQVciKV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjAuOCIpXQorKwlwdWJsaWMgY29uc3QgaW50IFBSSU9SSVRZX1JFRFJBVzsKKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1YmxpYyBz dGF0aWMgdm9pZCBiYXNlX2luaXQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMiIpXQorKwlwdWJs aWMgc3RhdGljIHZvaWQgY2Fpcm9fY2xlYXIgKENhaXJvLkNvbnRleHQgY3IpOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgY2Fpcm9fc2V0X3NvdXJjZV9jb2xv ciAoQ2Fpcm8uQ29udGV4dCBjciwgQ2x1dHRlci5Db2xvciBjb2xvcik7CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgY2hlY2tfd2luZG93aW5nX2JhY2tlbmQg KHN0cmluZyBiYWNrZW5kX3R5cGUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1 dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGNvbG9yX2Zyb21faGxzIChv dXQgQ2x1dHRlci5Db2xvciBjb2xvciwgZmxvYXQgaHVlLCBmbG9hdCBsdW1pbmFuY2UsIGZsb2F0 IHNhdHVyYXRpb24pOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0 dGVyLmgiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGNvbG9yX2Zyb21fcGl4ZWwgKG91dCBDbHV0 dGVyLkNvbG9yIGNvbG9yLCB1aW50MzIgcGl4ZWwpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQor KwlwdWJsaWMgc3RhdGljIGJvb2wgY29sb3JfZnJvbV9zdHJpbmcgKG91dCBDbHV0dGVyLkNvbG9y IGNvbG9yLCBzdHJpbmcgc3RyKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0 ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJcHVibGljIHN0 YXRpYyB1bm93bmVkIENsdXR0ZXIuQ29sb3I/IGNvbG9yX2dldF9zdGF0aWMgKENsdXR0ZXIuU3Rh dGljQ29sb3IgY29sb3IpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJcHVibGljIHN0YXRp YyB2b2lkIGRpc2FibGVfYWNjZXNzaWJpbGl0eSAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0K KysJcHVibGljIHN0YXRpYyB2b2lkIGRvX2V2ZW50IChDbHV0dGVyLkV2ZW50IGV2ZW50KTsKKysJ W0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJz aW9uIChzaW5jZSA9ICIxLjE4IildCisrCXB1YmxpYyBzdGF0aWMgdWludCBldmVudF9hZGRfZmls dGVyIChDbHV0dGVyLlN0YWdlPyBzdGFnZSwgW0NDb2RlIChkZWxlZ2F0ZV90YXJnZXRfcG9zID0g Mi4yLCBkZXN0cm95X25vdGlmeV9wb3MgPSAyLjEpXSBvd25lZCBDbHV0dGVyLkV2ZW50RmlsdGVy RnVuYyBmdW5jKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRl ci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIHN0YXRpYyBDbHV0 dGVyLkV2ZW50IGV2ZW50X2dldCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGlj IHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuRXZlbnQgZXZlbnRfcGVlayAoKTsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjE4IildCisrCXB1YmxpYyBzdGF0aWMgdm9pZCBldmVudF9yZW1vdmVfZmlsdGVyICh1 aW50IGlkKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5o IildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjQiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGV2 ZW50c19wZW5kaW5nICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9j bHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwlwdWJsaWMgc3RhdGlj IGJvb2wgZ2V0X2FjY2Vzc2liaWxpdHlfZW5hYmxlZCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIi KV0KKysJcHVibGljIHN0YXRpYyB1bm93bmVkIENsdXR0ZXIuRXZlbnQgZ2V0X2N1cnJlbnRfZXZl bnQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIp XQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCXB1YmxpYyBzdGF0aWMgdWludDMyIGdl dF9jdXJyZW50X2V2ZW50X3RpbWUgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj bHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC40IildCisrCXB1Ymxp YyBzdGF0aWMgdW5vd25lZCBDbHV0dGVyLkJhY2tlbmQgZ2V0X2RlZmF1bHRfYmFja2VuZCAoKTsK KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIwLjYiKV0KKysJcHVibGljIHN0YXRpYyB1aW50IGdldF9kZWZhdWx0 X2ZyYW1lX3JhdGUgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2Ns dXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4yIildCisrCXB1YmxpYyBzdGF0aWMg Q2x1dHRlci5UZXh0RGlyZWN0aW9uIGdldF9kZWZhdWx0X3RleHRfZGlyZWN0aW9uICgpOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgc3RhdGljIHVub3duZWQgUGFuZ28uRm9udE1h cCBnZXRfZm9udF9tYXAgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC4yIildCisrCXB1YmxpYyBzdGF0 aWMgR0xpYi5PcHRpb25Hcm91cCBnZXRfb3B0aW9uX2dyb3VwICgpOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0g IjAuOCIpXQorKwlwdWJsaWMgc3RhdGljIEdMaWIuT3B0aW9uR3JvdXAgZ2V0X29wdGlvbl9ncm91 cF93aXRob3V0X2luaXQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMC42IildCisrCXB1YmxpYyBzdGF0 aWMgdW5vd25lZCBzdHJpbmcgZ2V0X3NjcmlwdF9pZCAoR0xpYi5PYmplY3QgZ29iamVjdCk7Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVyL2NsdXR0ZXIuaCIpXQorKwlwdWJs aWMgc3RhdGljIENsdXR0ZXIuSW5pdEVycm9yIGluaXQgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoX2Nu YW1lID0gImFyZ2MiLCBhcnJheV9sZW5ndGhfcG9zID0gMC41KV0gcmVmIHVub3duZWQgc3RyaW5n W10/IGFyZ3YpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVy LmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjAuMiIpXQorKwlwdWJsaWMgc3RhdGljIENsdXR0 ZXIuSW5pdEVycm9yIGluaXRfd2l0aF9hcmdzIChbQ0NvZGUgKGFycmF5X2xlbmd0aF9jbmFtZSA9 ICJhcmdjIiwgYXJyYXlfbGVuZ3RoX3BvcyA9IDAuNSldIHJlZiB1bm93bmVkIHN0cmluZ1tdPyBh cmd2LCBzdHJpbmc/IHBhcmFtZXRlcl9zdHJpbmcsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFs c2UpXSBHTGliLk9wdGlvbkVudHJ5W10/IGVudHJpZXMsIHN0cmluZz8gdHJhbnNsYXRpb25fZG9t YWluKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNs dXR0ZXIvY2x1dHRlci5oIildCisrCXB1YmxpYyBzdGF0aWMgdWludDMyIGtleXN5bV90b191bmlj b2RlICh1aW50IGtleXZhbCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgbWFpbiAoKTsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCXB1YmxpYyBzdGF0aWMg aW50IG1haW5fbGV2ZWwgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjbHV0dGVy L2NsdXR0ZXIuaCIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgbWFpbl9xdWl0ICgpOworKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY2x1dHRlci9jbHV0dGVyLmgiKV0KKysJcHVibGljIHN0 YXRpYyB2b2lkIHNldF9jdXN0b21fYmFja2VuZF9mdW5jICh2b2lkKiBmdW5jKTsKKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNsdXR0ZXIvY2x1dHRlci5oIildCisrCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBzdGF0aWMgdWludCB1bmljb2RlX3RvX2tleXN5bSAo dWludDMyIHdjKTsKKyt9CitkaWZmIC0tZ2l0IGEvdmFwaS9tdXR0ZXItY29nbC02LWN1c3RvbS52 YWxhIGIvdmFwaS9tdXR0ZXItY29nbC02LWN1c3RvbS52YWxhCituZXcgZmlsZSBtb2RlIDEwMDY0 NAoraW5kZXggMDAwMDAwMDAuLmEyYzEwNjQ1CistLS0gL2Rldi9udWxsCisrKysgYi92YXBpL211 dHRlci1jb2dsLTYtY3VzdG9tLnZhbGEKK0BAIC0wLDAgKzEsMTI1IEBACisrbmFtZXNwYWNlIENv Z2wgeworKwlbQ29tcGFjdF0KKysJW0NDb2RlIChjbmFtZSA9ICJDb2dsSGFuZGxlIildCisrCXB1 YmxpYyBjbGFzcyBCaXRtYXA6IEhhbmRsZSB7CisrCQlwdWJsaWMgc3RhdGljIEJpdG1hcCBuZXdf ZnJvbV9maWxlIChzdHJpbmcgZmlsZW5hbWUpIHRocm93cyBHTGliLkVycm9yOworKwl9CisrCisr CVtDb21wYWN0XQorKwlbQ0NvZGUgKGNuYW1lID0gIkNvZ2xIYW5kbGUiKV0KKysJcHVibGljIGNs YXNzIEJ1ZmZlcjogSGFuZGxlIHsKKysJCXB1YmxpYyB1aW50IGdldF9zaXplICgpOworKwkJcHVi bGljIGJvb2wgc2V0X2RhdGEgKHNpemVfdCBvZmZzZXQsIFtDQ29kZSAoYXJyYXlfbGVuZ3RoX3R5 cGUgPSAic2l6ZV90IildIHVpbnQ4W10gZGF0YSk7CisrCQlwdWJsaWMgdm9pZCB1bm1hcCAoKTsK KysJfQorKworKwlbQ0NvZGUgKGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0 IENvbG9yIHsKKysJCXB1YmxpYyBDb2xvci5mcm9tXzRmIChmbG9hdCByZWQsIGZsb2F0IGdyZWVu LCBmbG9hdCBibHVlLCBmbG9hdCBhbHBoYSk7CisrCQlwdWJsaWMgQ29sb3IuZnJvbV80dWIgKHVp bnQ4IHJlZCwgdWludDggZ3JlZW4sIHVpbnQ4IGJsdWUsIHVpbnQ4IGFscGhhKTsKKysJfQorKwor KwlbQ29tcGFjdF0KKysJW0NDb2RlIChyZWZfZnVuY3Rpb24gPSAiY29nbF9oYW5kbGVfcmVmIiwg dW5yZWZfZnVuY3Rpb24gPSAiY29nbF9oYW5kbGVfdW5yZWYiKV0KKysJcHVibGljIGNsYXNzIEhh bmRsZSB7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfYml0bWFwIildCisrCQlwdWJsaWMg Ym9vbCBpc19iaXRtYXAgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfYnVmZmVyIild CisrCQlwdWJsaWMgYm9vbCBpc19idWZmZXIgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xf aXNfbWF0ZXJpYWwiKV0KKysJCXB1YmxpYyBib29sIGlzX21hdGVyaWFsICgpOworKwkJW0NDb2Rl IChjbmFtZSA9ICJjb2dsX2lzX29mZnNjcmVlbiIpXQorKwkJcHVibGljIGJvb2wgaXNfb2Zmc2Ny ZWVuICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX3BpeGVsX2J1ZmZlciIpXQorKwkJ cHVibGljIGJvb2wgaXNfcGl4ZWxfYnVmZmVyICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2ds X2lzX3Byb2dyYW0iKV0KKysJCXB1YmxpYyBib29sIGlzX3Byb2dyYW0gKCk7CisrCQlbQ0NvZGUg KGNuYW1lID0gImNvZ2xfaXNfc2hhZGVyIildCisrCQlwdWJsaWMgYm9vbCBpc19zaGFkZXIgKCk7 CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfdGV4dHVyZSIpXQorKwkJcHVibGljIGJvb2wg aXNfdGV4dHVyZSAoKTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc192ZXJ0ZXhfYnVmZmVy IildCisrCQlwdWJsaWMgYm9vbCBpc192ZXJ0ZXhfYnVmZmVyICgpOworKwl9CisrCisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNvcHlfZnVuY3Rpb24gPSAiY29n bF9wYXRoX2NvcHkiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBQYXRoIHsKKysJCXB1 YmxpYyBzdGF0aWMgdm9pZCBAbmV3ICgpOworKwl9CisrCisrCVtDb21wYWN0XQorKwlwdWJsaWMg Y2xhc3MgUGl4ZWxCdWZmZXI6IEhhbmRsZSB7CisrCQlwdWJsaWMgUGl4ZWxCdWZmZXIgKHVpbnQg c2l6ZSk7CisrCQlwdWJsaWMgUGl4ZWxCdWZmZXIuZm9yX3NpemUgKHVpbnQgd2lkdGgsIHVpbnQg aGVpZ2h0LCBDb2dsLlBpeGVsRm9ybWF0IGZvcm1hdCwgdWludCBzdHJpZGUpOworKwl9CisrCisr CVtDb21wYWN0XQorKwlbQ0NvZGUgKGNuYW1lID0gIkNvZ2xIYW5kbGUiLCByZWZfZnVuY3Rpb24g PSAiY29nbF9wcm9ncmFtX3JlZiIsIHVucmVmX2Z1bmN0aW9uID0gImNvZ2xfcHJvZ3JhbV91bnJl ZiIpXQorKwlwdWJsaWMgY2xhc3MgUHJvZ3JhbTogSGFuZGxlIHsKKysJCVtDQ29kZSAoY25hbWUg PSAiY29nbF9jcmVhdGVfcHJvZ3JhbSIsIHR5cGUgPSAiQ29nbEhhbmRsZSoiLCBoYXNfY29uc3Ry dWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIFByb2dyYW0gKCk7CisrCQlwdWJsaWMg dm9pZCBhdHRhY2hfc2hhZGVyIChDb2dsLlNoYWRlciBzaGFkZXJfaGFuZGxlKTsKKysJCXB1Ymxp YyBpbnQgZ2V0X3VuaWZvcm1fbG9jYXRpb24gKHN0cmluZyB1bmlmb3JtX25hbWUpOworKwkJcHVi bGljIHZvaWQgbGluayAoKTsKKysJCXB1YmxpYyBzdGF0aWMgdm9pZCB1bmlmb3JtXzFmIChpbnQg dW5pZm9ybV9ubywgZmxvYXQgdmFsdWUpOworKwkJcHVibGljIHN0YXRpYyB2b2lkIHVuaWZvcm1f MWkgKGludCB1bmlmb3JtX25vLCBpbnQgdmFsdWUpOworKwkJcHVibGljIHN0YXRpYyB2b2lkIHVu aWZvcm1fZmxvYXQgKGludCB1bmlmb3JtX25vLCBpbnQgc2l6ZSwgW0NDb2RlIChhcnJheV9sZW5n dGhfcG9zID0gMi45KV0gZmxvYXRbXSB2YWx1ZSk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgdW5p Zm9ybV9pbnQgKGludCB1bmlmb3JtX25vLCBpbnQgc2l6ZSwgW0NDb2RlIChhcnJheV9sZW5ndGhf cG9zID0gMi45KV0gaW50W10gdmFsdWUpOworKwkJcHVibGljIHN0YXRpYyB2b2lkIHVuaWZvcm1f bWF0cml4IChpbnQgdW5pZm9ybV9ubywgaW50IHNpemUsIGJvb2wgdHJhbnNwb3NlLCBbQ0NvZGUg KGFycmF5X2xlbmd0aF9wb3MgPSAyLjkpXSBmbG9hdFtdIHZhbHVlKTsKKysJCXB1YmxpYyB2b2lk IHVzZSAoKTsKKysJfQorKworKwlbQ29tcGFjdF0KKysJW0NDb2RlIChjbmFtZSA9ICJDb2dsSGFu ZGxlIiwgcmVmX2Z1bmN0aW9uID0gImNvZ2xfc2hhZGVyX3JlZiIsIHVucmVmX2Z1bmN0aW9uID0g ImNvZ2xfc2hhZGVyX3VucmVmIildCisrCXB1YmxpYyBjbGFzcyBTaGFkZXI6IEhhbmRsZSB7Cisr CQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfY3JlYXRlX3NoYWRlciIsIHR5cGUgPSAiQ29nbEhhbmRs ZSoiLCBoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHVibGljIFNoYWRlciAo Q29nbC5TaGFkZXJUeXBlIHNoYWRlcl90eXBlKTsKKysJCXB1YmxpYyB2b2lkIGNvbXBpbGUgKCk7 CisrCQlwdWJsaWMgc3RyaW5nIGdldF9pbmZvX2xvZyAoKTsKKysJCXB1YmxpYyBDb2dsLlNoYWRl clR5cGUgZ2V0X3R5cGUgKCk7CisrCQlwdWJsaWMgYm9vbCBpc19jb21waWxlZCAoKTsKKysJCXB1 YmxpYyB2b2lkIHNvdXJjZSAoc3RyaW5nIHNvdXJjZSk7CisrCX0KKysKKysJW0NvbXBhY3RdCisr CVtDQ29kZSAoY25hbWUgPSAiQ29nbEhhbmRsZSIsIHJlZl9mdW5jdGlvbiA9ICJjb2dsX3ZlcnRl eF9idWZmZXJfcmVmIiwgdW5yZWZfZnVuY3Rpb24gPSAiY29nbF92ZXJ0ZXhfYnVmZmVyX3VucmVm IildCisrCXB1YmxpYyBjbGFzcyBWZXJ0ZXhCdWZmZXI6IEhhbmRsZSB7CisrCQlbQ0NvZGUgKHR5 cGUgPSAiQ29nbEhhbmRsZSoiLCBoYXNfY29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJ cHVibGljIFZlcnRleEJ1ZmZlciAodWludCBuX3ZlcnRpY2VzKTsKKysJCXB1YmxpYyB2b2lkIGFk ZCAoc3RyaW5nIGF0dHJpYnV0ZV9uYW1lLCB1Y2hhciBuX2NvbXBvbmVudHMsIENvZ2wuQXR0cmli dXRlVHlwZSB0eXBlLCBib29sIG5vcm1hbGl6ZWQsIHVpbnQxNiBzdHJpZGUsIHZvaWQqIHBvaW50 ZXIpOworKwkJcHVibGljIHZvaWQgZGVsZXRlIChzdHJpbmcgYXR0cmlidXRlX25hbWUpOworKwkJ cHVibGljIHZvaWQgZGlzYWJsZSAoc3RyaW5nIGF0dHJpYnV0ZV9uYW1lKTsKKysJCXB1YmxpYyB2 b2lkIGRyYXcgKENvZ2wuVmVydGljZXNNb2RlIG1vZGUsIGludCBmaXJzdCwgaW50IGNvdW50KTsK KysJCXB1YmxpYyB2b2lkIGRyYXdfZWxlbWVudHMgKENvZ2wuVmVydGljZXNNb2RlIG1vZGUsIFZl cnRleEJ1ZmZlckluZGljZXMgaW5kaWNlcywgaW50IG1pbl9pbmRleCwgaW50IG1heF9pbmRleCwg aW50IGluZGljZXNfb2Zmc2V0LCBpbnQgY291bnQpOworKwkJcHVibGljIHZvaWQgZW5hYmxlIChz dHJpbmcgYXR0cmlidXRlX25hbWUpOworKwkJcHVibGljIHVpbnQgZ2V0X25fdmVydGljZXMgKCk7 CisrCQlwdWJsaWMgdm9pZCBzdWJtaXQgKCk7CisrCX0KKysKKysJW0NvbXBhY3RdCisrCVtDQ29k ZSAoY25hbWUgPSAiQ29nbEhhbmRsZSIpXQorKwlwdWJsaWMgY2xhc3MgVmVydGV4QnVmZmVySW5k aWNlczogSGFuZGxlIHsKKysJCXB1YmxpYyBWZXJ0ZXhCdWZmZXJJbmRpY2VzIChDb2dsLkluZGlj ZXNUeXBlIGluZGljZXNfdHlwZSwgdm9pZCogaW5kaWNlc19hcnJheSwgaW50IGluZGljZXNfbGVu KTsKKysJCXB1YmxpYyBzdGF0aWMgdW5vd25lZCBDb2dsLlZlcnRleEJ1ZmZlckluZGljZXMgZ2V0 X2Zvcl9xdWFkcyAodWludCBuX2luZGljZXMpOworKwkJcHVibGljIENvZ2wuSW5kaWNlc1R5cGUg Z2V0X3R5cGUgKCk7CisrCX0KKysKKysJW0NDb2RlICh0eXBlX2lkID0gIkNPR0xfVFlQRV9NQVRS SVgiLCBjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCXB1YmxpYyBzdHJ1Y3Qg TWF0cml4IHsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9tYXRyaXhfaW5pdF9mcm9tX2FycmF5 IiwgYXJyYXlfbGVuZ3RoID0gZmFsc2UsIGFycmF5X251bGxfdGVybWluYXRlZCA9IGZhbHNlKV0K KysJCXB1YmxpYyBNYXRyaXguZnJvbV9hcnJheSAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxz ZSldIGZsb2F0W10gYXJyYXkpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX21hdHJpeF9pbml0 X2lkZW50aXR5IildCisrCQlwdWJsaWMgTWF0cml4LmlkZW50aXR5ICgpOworKwkJW0NDb2RlIChj bmFtZSA9ICJjb2dsX21hdHJpeF9tdWx0aXBseSIpXQorKwkJcHVibGljIE1hdHJpeC5tdWx0aXBs eSAoQ29nbC5NYXRyaXggYSwgQ29nbC5NYXRyaXggYik7CisrCX0KKysKKysJW1NpbXBsZVR5cGVd CisrCVtHSVIgKG5hbWUgPSAiQm9vbCIpXQorKwlbQm9vbGVhblR5cGVdCisrCXB1YmxpYyBzdHJ1 Y3QgQm9vbCA6IGJvb2wgeworKwl9CisrCisrCXB1YmxpYyBzdGF0aWMgR0xpYi5DYWxsYmFjayBn ZXRfcHJvY19hZGRyZXNzKHN0cmluZyBzKTsKKyt9CitkaWZmIC0tZ2l0IGEvdmFwaS9tdXR0ZXIt Y29nbC02LmRlcHMgYi92YXBpL211dHRlci1jb2dsLTYuZGVwcworbmV3IGZpbGUgbW9kZSAxMDA2 NDQKK2luZGV4IDAwMDAwMDAwLi45OGNjYWM1YgorLS0tIC9kZXYvbnVsbAorKysrIGIvdmFwaS9t dXR0ZXItY29nbC02LmRlcHMKK0BAIC0wLDAgKzEgQEAKKytwYW5nbworZGlmZiAtLWdpdCBhL3Zh cGkvbXV0dGVyLWNvZ2wtNi52YXBpIGIvdmFwaS9tdXR0ZXItY29nbC02LnZhcGkKK25ldyBmaWxl IG1vZGUgMTAwNjQ0CitpbmRleCAwMDAwMDAwMC4uYzlhYjVkNTcKKy0tLSAvZGV2L251bGwKKysr KyBiL3ZhcGkvbXV0dGVyLWNvZ2wtNi52YXBpCitAQCAtMCwwICsxLDEwNzcgQEAKKysvKiBtdXR0 ZXItY29nbC02LnZhcGkgZ2VuZXJhdGVkIGJ5IHZhcGlnZW4sIGRvIG5vdCBtb2RpZnkuICovCisr CisrW0NDb2RlIChjcHJlZml4ID0gIkNvZ2wiLCBnaXJfbmFtZXNwYWNlID0gIkNvZ2wiLCBnaXJf dmVyc2lvbiA9ICI2IiwgbG93ZXJfY2FzZV9jcHJlZml4ID0gImNvZ2xfIildCisrbmFtZXNwYWNl IENvZ2wgeworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFt ZSA9ICJDb2dsSGFuZGxlIiwgdHlwZV9pZCA9ICJjb2dsX2JpdG1hcF9nZXRfZ3R5cGUgKCkiKV0K KysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBCaXRtYXAgOiBDb2dsLkhhbmRsZSB7CisrCQlw dWJsaWMgc3RhdGljIHVpbnQzMiBlcnJvcl9xdWFyayAoKTsKKysJCVtDQ29kZSAoaGFzX2NvbnN0 cnVjdF9mdW5jdGlvbiA9IGZhbHNlLCB0eXBlID0gIkNvZ2xCaXRtYXAqIildCisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgQml0bWFwLmZyb21fZmlsZSAoc3RyaW5nIGZp bGVuYW1lKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgQ29nbC5QaXhlbEZvcm1hdCBnZXRfZm9ybWF0ICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X2hlaWdodCAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgaW50IGdldF9yb3dzdHJpZGUgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4wIildCisrCQlwdWJsaWMgc3RhdGljIGJvb2wgZ2V0X3Np emVfZnJvbV9maWxlIChzdHJpbmcgZmlsZW5hbWUsIG91dCBpbnQgd2lkdGgsIG91dCBpbnQgaGVp Z2h0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgaW50IGdldF93 aWR0aCAoKTsKKysJCXB1YmxpYyBzdGF0aWMgQ29nbC5CaXRtYXAgbmV3X2Zyb21fZmlsZSAoc3Ry aW5nIGZpbGVuYW1lKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDb2dsSGFuZGxlIildCisrCVtDb21w YWN0XQorKwlwdWJsaWMgY2xhc3MgQnVmZmVyIDogQ29nbC5IYW5kbGUgeworKwkJcHVibGljIHVp bnQgZ2V0X3NpemUgKCk7CisrCQlwdWJsaWMgYm9vbCBzZXRfZGF0YSAoc2l6ZV90IG9mZnNldCwg W0NDb2RlIChhcnJheV9sZW5ndGhfdHlwZSA9ICJzaXplX3QiKV0gdWludDhbXSBkYXRhKTsKKysJ CXB1YmxpYyB2b2lkIHVubWFwICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjb2dsL2NvZ2wuaCIsIHR5cGVfaWQgPSAiY29nbF9jb250ZXh0X2dldF9ndHlwZSAoKSIpXQor KwlwdWJsaWMgY2xhc3MgQ29udGV4dCA6IENvZ2wuT2JqZWN0IHsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBDb250ZXh0ICgpOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNvcHlfZnVuY3Rp b24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBl X2lkID0gImNvZ2xfZnJhbWVfY2xvc3VyZV9nZXRfZ3R5cGUgKCkiKV0KKysJW0NvbXBhY3RdCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0IildCisrCXB1YmxpYyBjbGFzcyBGcmFtZUNsb3N1cmUg eworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIHJlZl9m dW5jdGlvbiA9ICJjb2dsX2hhbmRsZV9yZWYiLCB1bnJlZl9mdW5jdGlvbiA9ICJjb2dsX2hhbmRs ZV91bnJlZiIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNzIEhhbmRsZSB7CisrCQlbQ0Nv ZGUgKGNuYW1lID0gImNvZ2xfaXNfYml0bWFwIildCisrCQlwdWJsaWMgYm9vbCBpc19iaXRtYXAg KCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfYnVmZmVyIildCisrCQlwdWJsaWMgYm9v bCBpc19idWZmZXIgKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xfaXNfbWF0ZXJpYWwiKV0K KysJCXB1YmxpYyBib29sIGlzX21hdGVyaWFsICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2ds X2lzX29mZnNjcmVlbiIpXQorKwkJcHVibGljIGJvb2wgaXNfb2Zmc2NyZWVuICgpOworKwkJW0ND b2RlIChjbmFtZSA9ICJjb2dsX2lzX3BpeGVsX2J1ZmZlciIpXQorKwkJcHVibGljIGJvb2wgaXNf cGl4ZWxfYnVmZmVyICgpOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2lzX3Byb2dyYW0iKV0K KysJCXB1YmxpYyBib29sIGlzX3Byb2dyYW0gKCk7CisrCQlbQ0NvZGUgKGNuYW1lID0gImNvZ2xf aXNfc2hhZGVyIildCisrCQlwdWJsaWMgYm9vbCBpc19zaGFkZXIgKCk7CisrCQlbQ0NvZGUgKGNu YW1lID0gImNvZ2xfaXNfdGV4dHVyZSIpXQorKwkJcHVibGljIGJvb2wgaXNfdGV4dHVyZSAoKTsK KysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9pc192ZXJ0ZXhfYnVmZmVyIildCisrCQlwdWJsaWMg Ym9vbCBpc192ZXJ0ZXhfYnVmZmVyICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjb2dsL2NvZ2wuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9m dW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNvZ2xfbWF0ZXJpYWxfZ2V0X3R5 cGUgKCkiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBNYXRlcmlhbCB7CisrCQlbQ0Nv ZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlbVmVyc2lvbiAoZGVwcmVj YXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIE1hdGVy aWFsICgpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTYiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hbHBoYV90ZXN0 X2Z1bmN0aW9uIChDb2dsLk1hdGVyaWFsQWxwaGFGdW5jIGFscGhhX2Z1bmMsIGZsb2F0IGFscGhh X3JlZmVyZW5jZSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xNiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIGJvb2wgc2V0X2JsZW5k IChzdHJpbmcgYmxlbmRfc3RyaW5nKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9uIChk ZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2Iiwgc2luY2UgPSAiMS4w IildCisrCQlwdWJsaWMgdm9pZCBzZXRfYmxlbmRfY29uc3RhbnQgKENvZ2wuQ29sb3IgY29uc3Rh bnRfY29sb3IpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3Np bmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb2xvciAo Q29nbC5Db2xvciBjb2xvcik7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJl Y2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0 X2NvbG9yNHViICh1aW50OCByZWQsIHVpbnQ4IGdyZWVuLCB1aW50OCBibHVlLCB1aW50OCBhbHBo YSk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAi MS4xNiIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2xheWVyIChpbnQgbGF5 ZXJfaW5kZXgsIENvZ2wuSGFuZGxlIHRleHR1cmUpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQg PSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1 YmxpYyBib29sIHNldF9sYXllcl9jb21iaW5lIChpbnQgbGF5ZXJfaW5kZXgsIHN0cmluZyBibGVu ZF9zdHJpbmcpIHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiLCBzaW5jZSA9ICIxLjAiKV0KKysJCXB1Ymxp YyB2b2lkIHNldF9sYXllcl9jb21iaW5lX2NvbnN0YW50IChpbnQgbGF5ZXJfaW5kZXgsIENvZ2wu Q29sb3IgY29uc3RhbnQpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNh dGVkX3NpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXllcl9maWx0ZXJzIChp bnQgbGF5ZXJfaW5kZXgsIENvZ2wuTWF0ZXJpYWxGaWx0ZXIgbWluX2ZpbHRlciwgQ29nbC5NYXRl cmlhbEZpbHRlciBtYWdfZmlsdGVyKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwg ZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgdm9pZCBzZXRfbGF5ZXJfbWF0 cml4IChpbnQgbGF5ZXJfaW5kZXgsIENvZ2wuTWF0cml4IG1hdHJpeCk7CisrCQlbVmVyc2lvbiAo ZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNlID0gIjEu NCIpXQorKwkJcHVibGljIGJvb2wgc2V0X2xheWVyX3BvaW50X3Nwcml0ZV9jb29yZHNfZW5hYmxl ZCAoaW50IGxheWVyX2luZGV4LCBib29sIGVuYWJsZSkgdGhyb3dzIEdMaWIuRXJyb3I7CisrCQlb VmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNp bmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3BvaW50X3NpemUgKGZsb2F0IHBvaW50 X3NpemUpOworKwkJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNl ID0gIjEuMTYiLCBzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF91c2VyX3Byb2dy YW0gKENvZ2wuSGFuZGxlIHByb2dyYW0pOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjb2dsL2NvZ2wuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbQ29tcGFjdF0KKysJ cHVibGljIGNsYXNzIE1hdGVyaWFsTGF5ZXIgeworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxl bmFtZSA9ICJjb2dsL2NvZ2wuaCIsIHR5cGVfaWQgPSAiY29nbF9vYmplY3RfZ2V0X2d0eXBlICgp IildCisrCXB1YmxpYyBhYnN0cmFjdCBjbGFzcyBPYmplY3QgeworKwkJW0NDb2RlIChoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIE9iamVjdCAoKTsKKysJfQor KwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCB0eXBlX2lkID0gImNv Z2xfb2Zmc2NyZWVuX2dldF9ndHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgT2Zmc2NyZWVuIDog Q29nbC5PYmplY3QsIENvZ2wuRnJhbWVidWZmZXIgeworKwkJW0NDb2RlIChoYXNfY29uc3RydWN0 X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJcHJvdGVjdGVkIE9mZnNjcmVlbiAoKTsKKysJCVtDQ29k ZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgT2Zmc2Ny ZWVuLnRvX3RleHR1cmUgKENvZ2wuVGV4dHVyZSB0ZXh0dXJlKTsKKysJCVtDQ29kZSAoaGFzX2Nv bnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXB1YmxpYyBPZmZzY3JlZW4ud2l0aF90ZXh0 dXJlIChDb2dsLlRleHR1cmUgdGV4dHVyZSk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNvZ2wvY29nbC5oIiwgdHlwZV9pZCA9ICJjb2dsX29uc2NyZWVuX2dldF9ndHlwZSAo KSIpXQorKwlwdWJsaWMgY2xhc3MgT25zY3JlZW4gOiBDb2dsLk9iamVjdCwgQ29nbC5GcmFtZWJ1 ZmZlciB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlw cm90ZWN0ZWQgT25zY3JlZW4gKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xNiIpXQorKwkJ cHVibGljIENvZ2wuT25zY3JlZW5EaXJ0eUNsb3N1cmUgYWRkX2RpcnR5X2NhbGxiYWNrIChbQ0Nv ZGUgKGRlbGVnYXRlX3RhcmdldF9wb3MgPSAxLjUpXSBDb2dsLk9uc2NyZWVuRGlydHlDYWxsYmFj ayBjYWxsYmFjaywgQ29nbC5Vc2VyRGF0YURlc3Ryb3lDYWxsYmFjaz8gZGVzdHJveSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgQ29nbC5PbnNjcmVlblJlc2l6ZUNs b3N1cmUgYWRkX3Jlc2l6ZV9jYWxsYmFjayAoW0NDb2RlIChkZWxlZ2F0ZV90YXJnZXRfcG9zID0g MS41KV0gQ29nbC5PbnNjcmVlblJlc2l6ZUNhbGxiYWNrIGNhbGxiYWNrLCBDb2dsLlVzZXJEYXRh RGVzdHJveUNhbGxiYWNrPyBkZXN0cm95KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE0Iild CisrCQlwdWJsaWMgaW50IGdldF9idWZmZXJfYWdlICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTQiKV0KKysJCXB1YmxpYyBpbnQ2NCBnZXRfZnJhbWVfY291bnRlciAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBib29sIGdldF9yZXNpemFibGUgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBoaWRlICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTYiKV0KKysJCXB1YmxpYyB2b2lkIHJlbW92ZV9kaXJ0eV9j YWxsYmFjayAoQ29nbC5PbnNjcmVlbkRpcnR5Q2xvc3VyZSBjbG9zdXJlKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIxLjE0IildCisrCQlwdWJsaWMgdm9pZCByZW1vdmVfZnJhbWVfY2FsbGJhY2sg KENvZ2wuRnJhbWVDbG9zdXJlIGNsb3N1cmUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIp XQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX3Jlc2l6ZV9jYWxsYmFjayAoQ29nbC5PbnNjcmVlblJl c2l6ZUNsb3N1cmUgY2xvc3VyZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlw dWJsaWMgdm9pZCBzZXRfcmVzaXphYmxlIChib29sIHJlc2l6YWJsZSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzaG93ICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHN3YXBfYnVmZmVycyAoKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgdm9pZCBzd2FwX2J1ZmZlcnNfd2l0aF9k YW1hZ2UgKGludCByZWN0YW5nbGVzLCBpbnQgbl9yZWN0YW5nbGVzKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzd2FwX3JlZ2lvbiAoaW50IHJlY3Rhbmds ZXMsIGludCBuX3JlY3RhbmdsZXMpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9 ICJjb2dsL2NvZ2wuaCIsIGNvcHlfZnVuY3Rpb24gPSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5j dGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lkID0gImNvZ2xfb25zY3JlZW5fZGlydHlfY2xv c3VyZV9nZXRfZ3R5cGUgKCkiKV0KKysJW0NvbXBhY3RdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjE2IildCisrCXB1YmxpYyBjbGFzcyBPbnNjcmVlbkRpcnR5Q2xvc3VyZSB7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY29weV9mdW5jdGlvbiA9ICJn X2JveGVkX2NvcHkiLCBmcmVlX2Z1bmN0aW9uID0gImdfYm94ZWRfZnJlZSIsIHR5cGVfaWQgPSAi Y29nbF9vbnNjcmVlbl9yZXNpemVfY2xvc3VyZV9nZXRfZ3R5cGUgKCkiKV0KKysJW0NvbXBhY3Rd CisrCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJcHVibGljIGNsYXNzIE9uc2NyZWVuUmVz aXplQ2xvc3VyZSB7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29n bC5oIiwgY29weV9mdW5jdGlvbiA9ICJjb2dsX3BhdGhfY29weSIpXQorKwlbQ29tcGFjdF0KKysJ cHVibGljIGNsYXNzIFBhdGggeworKwkJcHVibGljIHN0YXRpYyB2b2lkIEBuZXcgKCk7CisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgdHlwZV9pZCA9ICJj b2dsX3BpcGVsaW5lX2dldF9ndHlwZSAoKSIpXQorKwlwdWJsaWMgY2xhc3MgUGlwZWxpbmUgOiBD b2dsLk9iamVjdCB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSld CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgUGlwZWxpbmUgKENvZ2wu Q29udGV4dCBjb250ZXh0KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1Ymxp YyBDb2dsLlBpcGVsaW5lIGNvcHkgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisr CQlwdWJsaWMgdm9pZCBmb3JlYWNoX2xheWVyIChDb2dsLlBpcGVsaW5lTGF5ZXJDYWxsYmFjayBj YWxsYmFjayk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgQ29nbC5Q aXBlbGluZUFscGhhRnVuYyBnZXRfYWxwaGFfdGVzdF9mdW5jdGlvbiAoKTsKKysJCVtWZXJzaW9u IChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfYWxwaGFfdGVzdF9yZWZlcmVu Y2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgQ29nbC5Db2xv ciBnZXRfY29sb3IgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMg Q29nbC5QaXBlbGluZUN1bGxGYWNlTW9kZSBnZXRfY3VsbF9mYWNlX21vZGUgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgQ29nbC5XaW5kaW5nIGdldF9mcm9udF9m YWNlX3dpbmRpbmcgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IENvZ2wuUGlwZWxpbmVGaWx0ZXIgZ2V0X2xheWVyX21hZ19maWx0ZXIgKGludCBsYXllcl9pbmRl eCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIENvZ2wuUGlwZWxp bmVGaWx0ZXIgZ2V0X2xheWVyX21pbl9maWx0ZXIgKGludCBsYXllcl9pbmRleCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgYm9vbCBnZXRfbGF5ZXJfcG9pbnRfc3By aXRlX2Nvb3Jkc19lbmFibGVkIChpbnQgbGF5ZXJfaW5kZXgpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuMTAiKV0KKysJCXB1YmxpYyB1bm93bmVkIENvZ2wuVGV4dHVyZSBnZXRfbGF5ZXJfdGV4 dHVyZSAoaW50IGxheWVyX2luZGV4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjYiKV0KKysJ CXB1YmxpYyBDb2dsLlBpcGVsaW5lV3JhcE1vZGUgZ2V0X2xheWVyX3dyYXBfbW9kZV9zIChpbnQg bGF5ZXJfaW5kZXgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIENv Z2wuUGlwZWxpbmVXcmFwTW9kZSBnZXRfbGF5ZXJfd3JhcF9tb2RlX3QgKGludCBsYXllcl9pbmRl eCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgaW50IGdldF9uX2xh eWVycyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBib29sIGdl dF9wZXJfdmVydGV4X3BvaW50X3NpemUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIild CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3BvaW50X3NpemUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMi4wIildCisrCQlwdWJsaWMgaW50IGdldF91bmlmb3JtX2xvY2F0aW9uIChzdHJpbmcgdW5p Zm9ybV9uYW1lKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB1bm93 bmVkIENvZ2wuSGFuZGxlIGdldF91c2VyX3Byb2dyYW0gKCk7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgcmVtb3ZlX2xheWVyIChpbnQgbGF5ZXJfaW5kZXgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2FscGhh X3Rlc3RfZnVuY3Rpb24gKENvZ2wuUGlwZWxpbmVBbHBoYUZ1bmMgYWxwaGFfZnVuYywgZmxvYXQg YWxwaGFfcmVmZXJlbmNlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1Ymxp YyBib29sIHNldF9ibGVuZCAoc3RyaW5nIGJsZW5kX3N0cmluZykgdGhyb3dzIEdMaWIuRXJyb3I7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfYmxlbmRf Y29uc3RhbnQgKENvZ2wuQ29sb3IgY29uc3RhbnRfY29sb3IpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2NvbG9yIChDb2dsLkNvbG9yIGNvbG9yKTsK KysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jb2xvcjRm IChmbG9hdCByZWQsIGZsb2F0IGdyZWVuLCBmbG9hdCBibHVlLCBmbG9hdCBhbHBoYSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29sb3I0dWIgKHVp bnQ4IHJlZCwgdWludDggZ3JlZW4sIHVpbnQ4IGJsdWUsIHVpbnQ4IGFscGhhKTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9jdWxsX2ZhY2VfbW9kZSAo Q29nbC5QaXBlbGluZUN1bGxGYWNlTW9kZSBjdWxsX2ZhY2VfbW9kZSk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfZnJvbnRfZmFjZV93aW5kaW5nIChD b2dsLldpbmRpbmcgZnJvbnRfd2luZGluZyk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIild CisrCQlwdWJsaWMgYm9vbCBzZXRfbGF5ZXJfY29tYmluZSAoaW50IGxheWVyX2luZGV4LCBzdHJp bmcgYmxlbmRfc3RyaW5nKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXllcl9jb21iaW5lX2NvbnN0YW50IChpbnQg bGF5ZXJfaW5kZXgsIENvZ2wuQ29sb3IgY29uc3RhbnQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0g IjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9sYXllcl9maWx0ZXJzIChpbnQgbGF5ZXJfaW5k ZXgsIENvZ2wuUGlwZWxpbmVGaWx0ZXIgbWluX2ZpbHRlciwgQ29nbC5QaXBlbGluZUZpbHRlciBt YWdfZmlsdGVyKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9p ZCBzZXRfbGF5ZXJfbWF0cml4IChpbnQgbGF5ZXJfaW5kZXgsIENvZ2wuTWF0cml4IG1hdHJpeCk7 CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2xheWVy X251bGxfdGV4dHVyZSAoaW50IGxheWVyX2luZGV4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIy LjAiKV0KKysJCXB1YmxpYyBib29sIHNldF9sYXllcl9wb2ludF9zcHJpdGVfY29vcmRzX2VuYWJs ZWQgKGludCBsYXllcl9pbmRleCwgYm9vbCBlbmFibGUpIHRocm93cyBHTGliLkVycm9yOworKwkJ cHVibGljIHZvaWQgc2V0X2xheWVyX3RleHR1cmUgKGludCBsYXllcl9pbmRleCwgQ29nbC5UZXh0 dXJlIHRleHR1cmUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZv aWQgc2V0X2xheWVyX3dyYXBfbW9kZSAoaW50IGxheWVyX2luZGV4LCBDb2dsLlBpcGVsaW5lV3Jh cE1vZGUgbW9kZSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9p ZCBzZXRfbGF5ZXJfd3JhcF9tb2RlX3MgKGludCBsYXllcl9pbmRleCwgQ29nbC5QaXBlbGluZVdy YXBNb2RlIG1vZGUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZv aWQgc2V0X2xheWVyX3dyYXBfbW9kZV90IChpbnQgbGF5ZXJfaW5kZXgsIENvZ2wuUGlwZWxpbmVX cmFwTW9kZSBtb2RlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyBi b29sIHNldF9wZXJfdmVydGV4X3BvaW50X3NpemUgKGJvb2wgZW5hYmxlKSB0aHJvd3MgR0xpYi5F cnJvcjsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9w b2ludF9zaXplIChmbG9hdCBwb2ludF9zaXplKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAi KV0KKysJCXB1YmxpYyB2b2lkIHNldF91bmlmb3JtXzFmIChpbnQgdW5pZm9ybV9sb2NhdGlvbiwg ZmxvYXQgdmFsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZv aWQgc2V0X3VuaWZvcm1fMWkgKGludCB1bmlmb3JtX2xvY2F0aW9uLCBpbnQgdmFsdWUpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3VuaWZvcm1fZmxv YXQgKGludCB1bmlmb3JtX2xvY2F0aW9uLCBpbnQgbl9jb21wb25lbnRzLCBpbnQgY291bnQsIGZs b2F0IHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJCXB1YmxpYyB2b2lk IHNldF91bmlmb3JtX2ludCAoaW50IHVuaWZvcm1fbG9jYXRpb24sIGludCBuX2NvbXBvbmVudHMs IGludCBjb3VudCwgaW50IHZhbHVlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJ CXB1YmxpYyB2b2lkIHNldF91bmlmb3JtX21hdHJpeCAoaW50IHVuaWZvcm1fbG9jYXRpb24sIGlu dCBkaW1lbnNpb25zLCBpbnQgY291bnQsIGJvb2wgdHJhbnNwb3NlLCBmbG9hdCB2YWx1ZSk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMgdm9pZCBzZXRfdXNlcl9wcm9n cmFtIChDb2dsLkhhbmRsZSBwcm9ncmFtKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBQaXhlbEJ1 ZmZlciA6IENvZ2wuSGFuZGxlIHsKKysJCXB1YmxpYyBQaXhlbEJ1ZmZlciAodWludCBzaXplKTsK KysJCXB1YmxpYyBQaXhlbEJ1ZmZlci5mb3Jfc2l6ZSAodWludCB3aWR0aCwgdWludCBoZWlnaHQs IENvZ2wuUGl4ZWxGb3JtYXQgZm9ybWF0LCB1aW50IHN0cmlkZSk7CisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ29nbEhhbmRsZSIsIHJl Zl9mdW5jdGlvbiA9ICJjb2dsX3Byb2dyYW1fcmVmIiwgdW5yZWZfZnVuY3Rpb24gPSAiY29nbF9w cm9ncmFtX3VucmVmIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgUHJvZ3JhbSA6IENv Z2wuSGFuZGxlIHsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9jcmVhdGVfcHJvZ3JhbSIsIGhh c19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSwgdHlwZSA9ICJDb2dsSGFuZGxlKiIpXQorKwkJ cHVibGljIFByb2dyYW0gKCk7CisrCQlwdWJsaWMgdm9pZCBhdHRhY2hfc2hhZGVyIChDb2dsLlNo YWRlciBzaGFkZXJfaGFuZGxlKTsKKysJCXB1YmxpYyBpbnQgZ2V0X3VuaWZvcm1fbG9jYXRpb24g KHN0cmluZyB1bmlmb3JtX25hbWUpOworKwkJcHVibGljIHZvaWQgbGluayAoKTsKKysJCXB1Ymxp YyBzdGF0aWMgdm9pZCB1bmlmb3JtXzFmIChpbnQgdW5pZm9ybV9ubywgZmxvYXQgdmFsdWUpOwor KwkJcHVibGljIHN0YXRpYyB2b2lkIHVuaWZvcm1fMWkgKGludCB1bmlmb3JtX25vLCBpbnQgdmFs dWUpOworKwkJcHVibGljIHN0YXRpYyB2b2lkIHVuaWZvcm1fZmxvYXQgKGludCB1bmlmb3JtX25v LCBpbnQgc2l6ZSwgW0NDb2RlIChhcnJheV9sZW5ndGhfcG9zID0gMi45KV0gZmxvYXRbXSB2YWx1 ZSk7CisrCQlwdWJsaWMgc3RhdGljIHZvaWQgdW5pZm9ybV9pbnQgKGludCB1bmlmb3JtX25vLCBp bnQgc2l6ZSwgW0NDb2RlIChhcnJheV9sZW5ndGhfcG9zID0gMi45KV0gaW50W10gdmFsdWUpOwor KwkJcHVibGljIHN0YXRpYyB2b2lkIHVuaWZvcm1fbWF0cml4IChpbnQgdW5pZm9ybV9ubywgaW50 IHNpemUsIGJvb2wgdHJhbnNwb3NlLCBbQ0NvZGUgKGFycmF5X2xlbmd0aF9wb3MgPSAyLjkpXSBm bG9hdFtdIHZhbHVlKTsKKysJCXB1YmxpYyB2b2lkIHVzZSAoKTsKKysJfQorKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDb2dsSGFuZGxlIiwgcmVm X2Z1bmN0aW9uID0gImNvZ2xfc2hhZGVyX3JlZiIsIHVucmVmX2Z1bmN0aW9uID0gImNvZ2xfc2hh ZGVyX3VucmVmIildCisrCVtDb21wYWN0XQorKwlwdWJsaWMgY2xhc3MgU2hhZGVyIDogQ29nbC5I YW5kbGUgeworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX2NyZWF0ZV9zaGFkZXIiLCBoYXNfY29u c3RydWN0X2Z1bmN0aW9uID0gZmFsc2UsIHR5cGUgPSAiQ29nbEhhbmRsZSoiKV0KKysJCXB1Ymxp YyBTaGFkZXIgKENvZ2wuU2hhZGVyVHlwZSBzaGFkZXJfdHlwZSk7CisrCQlwdWJsaWMgdm9pZCBj b21waWxlICgpOworKwkJcHVibGljIHN0cmluZyBnZXRfaW5mb19sb2cgKCk7CisrCQlwdWJsaWMg Q29nbC5TaGFkZXJUeXBlIGdldF90eXBlICgpOworKwkJcHVibGljIGJvb2wgaXNfY29tcGlsZWQg KCk7CisrCQlwdWJsaWMgdm9pZCBzb3VyY2UgKHN0cmluZyBzb3VyY2UpOworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGxvd2VyX2Nhc2VfY3N1ZmZpeCA9 ICJ0ZXh0dXJlXzJkIiwgdHlwZV9pZCA9ICJjb2dsX3RleHR1cmVfMmRfZ2V0X2d0eXBlICgpIild CisrCXB1YmxpYyBjbGFzcyBUZXh0dXJlMkQgOiBDb2dsLk9iamVjdCwgQ29nbC5UZXh0dXJlIHsK KysJCVtDQ29kZSAoaGFzX2NvbnN0cnVjdF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3Rl ZCBUZXh0dXJlMkQgKCk7CisrCQlwdWJsaWMgdm9pZCBlZ2xfaW1hZ2VfZXh0ZXJuYWxfYWxsb2Nf ZmluaXNoICh2b2lkKiB1c2VyX2RhdGEsIEdMaWIuRGVzdHJveU5vdGlmeSBkZXN0cm95KTsKKysJ CXB1YmxpYyB2b2lkIGVnbF9pbWFnZV9leHRlcm5hbF9iaW5kICgpOworKwkJW0NDb2RlIChoYXNf Y29uc3RydWN0X2Z1bmN0aW9uID0gZmFsc2UpXQorKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIp XQorKwkJcHVibGljIFRleHR1cmUyRC5mcm9tX2JpdG1hcCAoQ29nbC5CaXRtYXAgYml0bWFwKTsK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBsb3dlcl9j YXNlX2NzdWZmaXggPSAidGV4dHVyZV8yZF9zbGljZWQiLCB0eXBlX2lkID0gImNvZ2xfdGV4dHVy ZV8yZF9zbGljZWRfZ2V0X2d0eXBlICgpIildCisrCXB1YmxpYyBjbGFzcyBUZXh0dXJlMkRTbGlj ZWQgOiBDb2dsLk9iamVjdCwgQ29nbC5UZXh0dXJlIHsKKysJCVtDQ29kZSAoaGFzX2NvbnN0cnVj dF9mdW5jdGlvbiA9IGZhbHNlKV0KKysJCXByb3RlY3RlZCBUZXh0dXJlMkRTbGljZWQgKCk7Cisr CQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24gPSBmYWxzZSldCisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xNiIpXQorKwkJcHVibGljIFRleHR1cmUyRFNsaWNlZC5mcm9tX2JpdG1hcCAo Q29nbC5CaXRtYXAgYm1wLCBpbnQgbWF4X3dhc3RlKTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJf ZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDb2dsSGFuZGxlIiwgcmVmX2Z1bmN0 aW9uID0gImNvZ2xfdmVydGV4X2J1ZmZlcl9yZWYiLCB1bnJlZl9mdW5jdGlvbiA9ICJjb2dsX3Zl cnRleF9idWZmZXJfdW5yZWYiKV0KKysJW0NvbXBhY3RdCisrCXB1YmxpYyBjbGFzcyBWZXJ0ZXhC dWZmZXIgOiBDb2dsLkhhbmRsZSB7CisrCQlbQ0NvZGUgKGhhc19jb25zdHJ1Y3RfZnVuY3Rpb24g PSBmYWxzZSwgdHlwZSA9ICJDb2dsSGFuZGxlKiIpXQorKwkJcHVibGljIFZlcnRleEJ1ZmZlciAo dWludCBuX3ZlcnRpY2VzKTsKKysJCXB1YmxpYyB2b2lkIGFkZCAoc3RyaW5nIGF0dHJpYnV0ZV9u YW1lLCB1Y2hhciBuX2NvbXBvbmVudHMsIENvZ2wuQXR0cmlidXRlVHlwZSB0eXBlLCBib29sIG5v cm1hbGl6ZWQsIHVpbnQxNiBzdHJpZGUsIHZvaWQqIHBvaW50ZXIpOworKwkJcHVibGljIHZvaWQg QGRlbGV0ZSAoc3RyaW5nIGF0dHJpYnV0ZV9uYW1lKTsKKysJCXB1YmxpYyB2b2lkIGRpc2FibGUg KHN0cmluZyBhdHRyaWJ1dGVfbmFtZSk7CisrCQlwdWJsaWMgdm9pZCBkcmF3IChDb2dsLlZlcnRp Y2VzTW9kZSBtb2RlLCBpbnQgZmlyc3QsIGludCBjb3VudCk7CisrCQlwdWJsaWMgdm9pZCBkcmF3 X2VsZW1lbnRzIChDb2dsLlZlcnRpY2VzTW9kZSBtb2RlLCBDb2dsLlZlcnRleEJ1ZmZlckluZGlj ZXMgaW5kaWNlcywgaW50IG1pbl9pbmRleCwgaW50IG1heF9pbmRleCwgaW50IGluZGljZXNfb2Zm c2V0LCBpbnQgY291bnQpOworKwkJcHVibGljIHZvaWQgZW5hYmxlIChzdHJpbmcgYXR0cmlidXRl X25hbWUpOworKwkJcHVibGljIHVpbnQgZ2V0X25fdmVydGljZXMgKCk7CisrCQlwdWJsaWMgdm9p ZCBzdWJtaXQgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29n bC5oIiwgY25hbWUgPSAiQ29nbEhhbmRsZSIpXQorKwlbQ29tcGFjdF0KKysJcHVibGljIGNsYXNz IFZlcnRleEJ1ZmZlckluZGljZXMgOiBDb2dsLkhhbmRsZSB7CisrCQlwdWJsaWMgVmVydGV4QnVm ZmVySW5kaWNlcyAoQ29nbC5JbmRpY2VzVHlwZSBpbmRpY2VzX3R5cGUsIHZvaWQqIGluZGljZXNf YXJyYXksIGludCBpbmRpY2VzX2xlbik7CisrCQlwdWJsaWMgc3RhdGljIHVub3duZWQgQ29nbC5W ZXJ0ZXhCdWZmZXJJbmRpY2VzIGdldF9mb3JfcXVhZHMgKHVpbnQgbl9pbmRpY2VzKTsKKysJCXB1 YmxpYyBDb2dsLkluZGljZXNUeXBlIGdldF90eXBlICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIHR5cGVfaWQgPSAiY29nbF9mcmFtZWJ1ZmZlcl9n ZXRfZ3R5cGUgKCkiKV0KKysJcHVibGljIGludGVyZmFjZSBGcmFtZWJ1ZmZlciA6IENvZ2wuT2Jq ZWN0IHsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBib29sIGFsbG9j YXRlICgpIHRocm93cyBHTGliLkVycm9yOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQor KwkJcHVibGljIHZvaWQgY2xlYXIgKHVsb25nIGJ1ZmZlcnMsIENvZ2wuQ29sb3IgY29sb3IpOwor KwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgY2xlYXI0ZiAodWxv bmcgYnVmZmVycywgZmxvYXQgcmVkLCBmbG9hdCBncmVlbiwgZmxvYXQgYmx1ZSwgZmxvYXQgYWxw aGEpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHZvaWQgZGlzY2Fy ZF9idWZmZXJzICh1bG9uZyBidWZmZXJzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIild CisrCQlwdWJsaWMgdm9pZCBkcmF3X211bHRpdGV4dHVyZWRfcmVjdGFuZ2xlIChDb2dsLlBpcGVs aW5lIHBpcGVsaW5lLCBmbG9hdCB4XzEsIGZsb2F0IHlfMSwgZmxvYXQgeF8yLCBmbG9hdCB5XzIs IFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBmbG9hdFtdIHRleF9jb29yZHMsIGludCB0 ZXhfY29vcmRzX2xlbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGlj IHZvaWQgZHJhd19yZWN0YW5nbGUgKENvZ2wuUGlwZWxpbmUgcGlwZWxpbmUsIGZsb2F0IHhfMSwg ZmxvYXQgeV8xLCBmbG9hdCB4XzIsIGZsb2F0IHlfMik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIHZvaWQgZHJhd19yZWN0YW5nbGVzIChDb2dsLlBpcGVsaW5lIHBp cGVsaW5lLCBbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXRbXSBjb29yZGluYXRl cywgdWludCBuX3JlY3RhbmdsZXMpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJ CXB1YmxpYyB2b2lkIGRyYXdfdGV4dHVyZWRfcmVjdGFuZ2xlIChDb2dsLlBpcGVsaW5lIHBpcGVs aW5lLCBmbG9hdCB4XzEsIGZsb2F0IHlfMSwgZmxvYXQgeF8yLCBmbG9hdCB5XzIsIGZsb2F0IHNf MSwgZmxvYXQgdF8xLCBmbG9hdCBzXzIsIGZsb2F0IHRfMik7CisrCQlbVmVyc2lvbiAoc2luY2Ug PSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgZHJhd190ZXh0dXJlZF9yZWN0YW5nbGVzIChDb2ds LlBpcGVsaW5lIHBpcGVsaW5lLCBbQ0NvZGUgKGFycmF5X2xlbmd0aCA9IGZhbHNlKV0gZmxvYXRb XSBjb29yZGluYXRlcywgdWludCBuX3JlY3RhbmdsZXMpOworKwkJcHVibGljIHN0YXRpYyB1aW50 MzIgZXJyb3JfcXVhcmsgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVi bGljIHZvaWQgZmluaXNoICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1 YmxpYyB2b2lkIGZydXN0dW0gKGZsb2F0IGxlZnQsIGZsb2F0IHJpZ2h0LCBmbG9hdCBib3R0b20s IGZsb2F0IHRvcCwgZmxvYXQgel9uZWFyLCBmbG9hdCB6X2Zhcik7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS44IildCisrCQlwdWJsaWMgaW50IGdldF9hbHBoYV9iaXRzICgpOworKwkJW1ZlcnNp b24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGludCBnZXRfYmx1ZV9iaXRzICgpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIHVub3duZWQgQ29nbC5Db250ZXh0 IGdldF9jb250ZXh0ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGlj IGludCBnZXRfZGVwdGhfYml0cyAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4IildCisr CQlwdWJsaWMgYm9vbCBnZXRfZGVwdGhfd3JpdGVfZW5hYmxlZCAoKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBib29sIGdldF9kaXRoZXJfZW5hYmxlZCAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBpbnQgZ2V0X2dyZWVuX2JpdHMg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgaW50IGdldF9oZWln aHQgKCk7CisrCQlwdWJsaWMgYm9vbCBnZXRfaXNfc3RlcmVvICgpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyBDb2dsLk1hdHJpeCBnZXRfbW9kZWx2aWV3X21hdHJp eCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgQ29nbC5NYXRy aXggZ2V0X3Byb2plY3Rpb25fbWF0cml4ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIp XQorKwkJcHVibGljIGludCBnZXRfcmVkX2JpdHMgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIGludCBnZXRfc2FtcGxlc19wZXJfcGl4ZWwgKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4yMCIpXQorKwkJcHVibGljIENvZ2wuU3RlcmVvTW9kZSBnZXRfc3Rl cmVvX21vZGUgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9p ZCBnZXRfdmlld3BvcnQ0ZnYgKFtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXSBvdXQgdW5v d25lZCBmbG9hdCB2aWV3cG9ydFs0XSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisr CQlwdWJsaWMgZmxvYXQgZ2V0X3ZpZXdwb3J0X2hlaWdodCAoKTsKKysJCVtWZXJzaW9uIChzaW5j ZSA9ICIxLjgiKV0KKysJCXB1YmxpYyBmbG9hdCBnZXRfdmlld3BvcnRfd2lkdGggKCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3ZpZXdwb3J0X3gg KCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgZmxvYXQgZ2V0X3Zp ZXdwb3J0X3kgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgaW50 IGdldF93aWR0aCAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMg dm9pZCBpZGVudGl0eV9tYXRyaXggKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQor KwkJcHVibGljIHZvaWQgb3J0aG9ncmFwaGljIChmbG9hdCB4XzEsIGZsb2F0IHlfMSwgZmxvYXQg eF8yLCBmbG9hdCB5XzIsIGZsb2F0IG5lYXIsIGZsb2F0IGZhcik7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgcGVyc3BlY3RpdmUgKGZsb2F0IGZvdl95LCBm bG9hdCBhc3BlY3QsIGZsb2F0IHpfbmVhciwgZmxvYXQgel9mYXIpOworKwkJW1ZlcnNpb24gKHNp bmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHBvcF9jbGlwICgpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHBvcF9tYXRyaXggKCk7CisrCQlbVmVy c2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgcHVzaF9tYXRyaXggKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgcHVzaF9yZWN0YW5n bGVfY2xpcCAoZmxvYXQgeF8xLCBmbG9hdCB5XzEsIGZsb2F0IHhfMiwgZmxvYXQgeV8yKTsKKysJ CXB1YmxpYyB2b2lkIHB1c2hfcmVnaW9uX2NsaXAgKENhaXJvLlJlZ2lvbiByZWdpb24pOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHB1c2hfc2Npc3Nvcl9j bGlwIChpbnQgeCwgaW50IHksIGludCB3aWR0aCwgaW50IGhlaWdodCk7CisrCQlbVmVyc2lvbiAo c2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIGJvb2wgcmVhZF9waXhlbHMgKGludCB4LCBpbnQg eSwgaW50IHdpZHRoLCBpbnQgaGVpZ2h0LCBDb2dsLlBpeGVsRm9ybWF0IGZvcm1hdCwgdWludDgg cGl4ZWxzKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgYm9vbCBy ZWFkX3BpeGVsc19pbnRvX2JpdG1hcCAoaW50IHgsIGludCB5LCBDb2dsLlJlYWRQaXhlbHNGbGFn cyBzb3VyY2UsIENvZ2wuQml0bWFwIGJpdG1hcCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44 IildCisrCQlwdWJsaWMgdm9pZCByZXNvbHZlX3NhbXBsZXMgKCk7CisrCQlbVmVyc2lvbiAoc2lu Y2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCByZXNvbHZlX3NhbXBsZXNfcmVnaW9uIChpbnQg eCwgaW50IHksIGludCB3aWR0aCwgaW50IGhlaWdodCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwkJcHVibGljIHZvaWQgcm90YXRlIChmbG9hdCBhbmdsZSwgZmxvYXQgeCwgZmxv YXQgeSwgZmxvYXQgeik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCQlwdWJsaWMg dm9pZCByb3RhdGVfZXVsZXIgKEdyYXBoZW5lLkV1bGVyIGV1bGVyKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCBzY2FsZSAoZmxvYXQgeCwgZmxvYXQgeSwg ZmxvYXQgeik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIHZvaWQg c2V0X2RlcHRoX3dyaXRlX2VuYWJsZWQgKGJvb2wgZGVwdGhfd3JpdGVfZW5hYmxlZCk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZGl0aGVyX2VuYWJs ZWQgKGJvb2wgZGl0aGVyX2VuYWJsZWQpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0K KysJCXB1YmxpYyB2b2lkIHNldF9tb2RlbHZpZXdfbWF0cml4IChDb2dsLk1hdHJpeCBtYXRyaXgp OworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9wcm9q ZWN0aW9uX21hdHJpeCAoQ29nbC5NYXRyaXggbWF0cml4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9zYW1wbGVzX3Blcl9waXhlbCAoaW50IHNhbXBs ZXNfcGVyX3BpeGVsKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjIwIildCisrCQlwdWJsaWMg dm9pZCBzZXRfc3RlcmVvX21vZGUgKENvZ2wuU3RlcmVvTW9kZSBzdGVyZW9fbW9kZSk7CisrCQlb VmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCBzZXRfdmlld3BvcnQgKGZs b2F0IHgsIGZsb2F0IHksIGZsb2F0IHdpZHRoLCBmbG9hdCBoZWlnaHQpOworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuMTAiKV0KKysJCXB1YmxpYyB2b2lkIHRyYW5zZm9ybSAoQ29nbC5NYXRyaXgg bWF0cml4KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCB0 cmFuc2xhdGUgKGZsb2F0IHgsIGZsb2F0IHksIGZsb2F0IHopOworKwl9CisrCVtDQ29kZSAoY2hl YWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIHR5cGVfaWQgPSAiY29nbF90ZXh0dXJlX2dl dF9ndHlwZSAoKSIpXQorKwlwdWJsaWMgaW50ZXJmYWNlIFRleHR1cmUgOiBDb2dsLk9iamVjdCB7 CisrCQlwdWJsaWMgYm9vbCBhbGxvY2F0ZSAoKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCXB1Ymxp YyBzdGF0aWMgdWludDMyIGVycm9yX3F1YXJrICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTgiKV0KKysJCXB1YmxpYyBDb2dsLlRleHR1cmVDb21wb25lbnRzIGdldF9jb21wb25lbnRzICgp OworKwkJcHVibGljIGludCBnZXRfZGF0YSAoQ29nbC5QaXhlbEZvcm1hdCBmb3JtYXQsIHVpbnQg cm93c3RyaWRlLCB1aW50OCBkYXRhKTsKKysJCXB1YmxpYyBib29sIGdldF9nbF90ZXh0dXJlIChv dXQgdWludCBvdXRfZ2xfaGFuZGxlLCBvdXQgdWludCBvdXRfZ2xfdGFyZ2V0KTsKKysJCXB1Ymxp YyB1aW50IGdldF9oZWlnaHQgKCk7CisrCQlwdWJsaWMgaW50IGdldF9tYXhfd2FzdGUgKCk7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwkJcHVibGljIGJvb2wgZ2V0X3ByZW11bHRp cGxpZWQgKCk7CisrCQlwdWJsaWMgdWludCBnZXRfd2lkdGggKCk7CisrCQlwdWJsaWMgYm9vbCBp c19zbGljZWQgKCk7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRf c2luY2UgPSAiMS4xOCIsIHNpbmNlID0gIjEuMCIpXQorKwkJcHVibGljIHN0YXRpYyBDb2dsLlRl eHR1cmUgbmV3X2Zyb21fYml0bWFwIChDb2dsLkJpdG1hcCBiaXRtYXAsIENvZ2wuVGV4dHVyZUZs YWdzIGZsYWdzLCBDb2dsLlBpeGVsRm9ybWF0IGludGVybmFsX2Zvcm1hdCk7CisrCQlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIsIHNpbmNlID0g IjAuOCIpXQorKwkJcHVibGljIHN0YXRpYyBDb2dsLlRleHR1cmUgbmV3X2Zyb21fZGF0YSAoaW50 IHdpZHRoLCBpbnQgaGVpZ2h0LCBDb2dsLlRleHR1cmVGbGFncyBmbGFncywgQ29nbC5QaXhlbEZv cm1hdCBmb3JtYXQsIENvZ2wuUGl4ZWxGb3JtYXQgaW50ZXJuYWxfZm9ybWF0LCBpbnQgcm93c3Ry aWRlLCB1aW50OCBkYXRhKTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVj YXRlZF9zaW5jZSA9ICIxLjE4Iiwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIENv Z2wuVGV4dHVyZSBuZXdfZnJvbV9maWxlIChzdHJpbmcgZmlsZW5hbWUsIENvZ2wuVGV4dHVyZUZs YWdzIGZsYWdzLCBDb2dsLlBpeGVsRm9ybWF0IGludGVybmFsX2Zvcm1hdCkgdGhyb3dzIEdMaWIu RXJyb3I7CisrCQlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2Ug PSAiMS4xOCIsIHNpbmNlID0gIjEuMiIpXQorKwkJcHVibGljIENvZ2wuVGV4dHVyZSBuZXdfZnJv bV9zdWJfdGV4dHVyZSAoaW50IHN1Yl94LCBpbnQgc3ViX3ksIGludCBzdWJfd2lkdGgsIGludCBz dWJfaGVpZ2h0KTsKKysJCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjE4Iiwgc2luY2UgPSAiMC44IildCisrCQlwdWJsaWMgc3RhdGljIENvZ2wuVGV4 dHVyZSBuZXdfd2l0aF9zaXplICh1aW50IHdpZHRoLCB1aW50IGhlaWdodCwgQ29nbC5UZXh0dXJl RmxhZ3MgZmxhZ3MsIENvZ2wuUGl4ZWxGb3JtYXQgaW50ZXJuYWxfZm9ybWF0KTsKKysJCVtWZXJz aW9uIChzaW5jZSA9ICIxLjE4IildCisrCQlwdWJsaWMgdm9pZCBzZXRfY29tcG9uZW50cyAoQ29n bC5UZXh0dXJlQ29tcG9uZW50cyBjb21wb25lbnRzKTsKKysJCXB1YmxpYyBib29sIHNldF9kYXRh IChDb2dsLlBpeGVsRm9ybWF0IGZvcm1hdCwgaW50IHJvd3N0cmlkZSwgdWludDggZGF0YSwgaW50 IGxldmVsKSB0aHJvd3MgR0xpYi5FcnJvcjsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE4Iild CisrCQlwdWJsaWMgdm9pZCBzZXRfcHJlbXVsdGlwbGllZCAoYm9vbCBwcmVtdWx0aXBsaWVkKTsK KysJCXB1YmxpYyBib29sIHNldF9yZWdpb24gKGludCBzcmNfeCwgaW50IHNyY195LCBpbnQgZHN0 X3gsIGludCBkc3RfeSwgdWludCBkc3Rfd2lkdGgsIHVpbnQgZHN0X2hlaWdodCwgaW50IHdpZHRo LCBpbnQgaGVpZ2h0LCBDb2dsLlBpeGVsRm9ybWF0IGZvcm1hdCwgdWludCByb3dzdHJpZGUsIHVp bnQ4IGRhdGEpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwkJcHVibGljIGJvb2wg c2V0X3JlZ2lvbl9mcm9tX2JpdG1hcCAoaW50IHNyY194LCBpbnQgc3JjX3ksIGludCBkc3RfeCwg aW50IGRzdF95LCB1aW50IGRzdF93aWR0aCwgdWludCBkc3RfaGVpZ2h0LCBDb2dsLkJpdG1hcCBi aXRtYXApOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIp XQorKwlbU2ltcGxlVHlwZV0KKysJcHVibGljIHN0cnVjdCBBbmdsZSA6IGludDMyIHsKKysJfQor KwlbQm9vbGVhblR5cGVdCisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wu aCIpXQorKwlbR0lSIChuYW1lID0gIkJvb2wiKV0KKysJW1NpbXBsZVR5cGVdCisrCXB1YmxpYyBz dHJ1Y3QgQm9vbCA6IGJvb2wgeworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS4wIildCisrCXB1YmxpYyBzdHJ1Y3QgQ29sb3IgeworKwkJcHVibGljIENvZ2wuQ29sb3I/IGNv cHkgKCk7CisrCQlwdWJsaWMgQ29sb3IuZnJvbV80ZiAoZmxvYXQgcmVkLCBmbG9hdCBncmVlbiwg ZmxvYXQgYmx1ZSwgZmxvYXQgYWxwaGEpOworKwkJcHVibGljIENvbG9yLmZyb21fNHViICh1aW50 OCByZWQsIHVpbnQ4IGdyZWVuLCB1aW50OCBibHVlLCB1aW50OCBhbHBoYSk7CisrCQlwdWJsaWMg ZmxvYXQgZ2V0X2FscGhhICgpOworKwkJcHVibGljIHVpbnQ4IGdldF9hbHBoYV9ieXRlICgpOwor KwkJcHVibGljIGZsb2F0IGdldF9hbHBoYV9mbG9hdCAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRf Ymx1ZSAoKTsKKysJCXB1YmxpYyB1aW50OCBnZXRfYmx1ZV9ieXRlICgpOworKwkJcHVibGljIGZs b2F0IGdldF9ibHVlX2Zsb2F0ICgpOworKwkJcHVibGljIGZsb2F0IGdldF9ncmVlbiAoKTsKKysJ CXB1YmxpYyB1aW50OCBnZXRfZ3JlZW5fYnl0ZSAoKTsKKysJCXB1YmxpYyBmbG9hdCBnZXRfZ3Jl ZW5fZmxvYXQgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3JlZCAoKTsKKysJCXB1YmxpYyB1aW50 OCBnZXRfcmVkX2J5dGUgKCk7CisrCQlwdWJsaWMgZmxvYXQgZ2V0X3JlZF9mbG9hdCAoKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIGluaXRfZnJvbV80ZiAo ZmxvYXQgcmVkLCBmbG9hdCBncmVlbiwgZmxvYXQgYmx1ZSwgZmxvYXQgYWxwaGEpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgaW5pdF9mcm9tXzRmdiAoZmxv YXQgY29sb3JfYXJyYXkpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGlj IHZvaWQgaW5pdF9mcm9tXzR1YiAodWludDggcmVkLCB1aW50OCBncmVlbiwgdWludDggYmx1ZSwg dWludDggYWxwaGEpOworKwkJcHVibGljIHZvaWQgcHJlbXVsdGlwbHkgKCk7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfYWxwaGEgKGZsb2F0IGFscGhh KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9hbHBo YV9ieXRlICh1aW50OCBhbHBoYSk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40IildCisrCQlw dWJsaWMgdm9pZCBzZXRfYWxwaGFfZmxvYXQgKGZsb2F0IGFscGhhKTsKKysJCVtWZXJzaW9uIChz aW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9ibHVlIChmbG9hdCBibHVlKTsKKysJ CVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lkIHNldF9ibHVlX2J5dGUg KHVpbnQ4IGJsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZv aWQgc2V0X2JsdWVfZmxvYXQgKGZsb2F0IGJsdWUpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu NCIpXQorKwkJcHVibGljIHZvaWQgc2V0X2dyZWVuIChmbG9hdCBncmVlbik7CisrCQlbVmVyc2lv biAoc2luY2UgPSAiMS40IildCisrCQlwdWJsaWMgdm9pZCBzZXRfZ3JlZW5fYnl0ZSAodWludDgg Z3JlZW4pOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0 X2dyZWVuX2Zsb2F0IChmbG9hdCBncmVlbik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS40Iild CisrCQlwdWJsaWMgdm9pZCBzZXRfcmVkIChmbG9hdCByZWQpOworKwkJW1ZlcnNpb24gKHNpbmNl ID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3JlZF9ieXRlICh1aW50OCByZWQpOworKwkJ W1ZlcnNpb24gKHNpbmNlID0gIjEuNCIpXQorKwkJcHVibGljIHZvaWQgc2V0X3JlZF9mbG9hdCAo ZmxvYXQgcmVkKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCQlwdWJsaWMgdm9p ZCB0b19oc2wgKG91dCBmbG9hdCBodWUsIG91dCBmbG9hdCBzYXR1cmF0aW9uLCBvdXQgZmxvYXQg bHVtaW5hbmNlKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJCXB1YmxpYyB2b2lk IHVucHJlbXVsdGlwbHkgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNv Z2wvY29nbC5oIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjgiKV0KKysJcHVibGljIHN0cnVjdCBEZWJ1Z09iamVjdFR5cGVJbmZvIHsKKysJCXB1YmxpYyB3 ZWFrIHN0cmluZyBuYW1lOworKwkJcHVibGljIHVsb25nIGluc3RhbmNlX2NvdW50OworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNvcHlfZnVuY3Rpb24g PSAiZ19ib3hlZF9jb3B5IiwgZnJlZV9mdW5jdGlvbiA9ICJnX2JveGVkX2ZyZWUiLCB0eXBlX2lk ID0gIkNPR0xfVFlQRV9NQVRSSVgiKV0KKysJcHVibGljIHN0cnVjdCBNYXRyaXggeworKwkJcHVi bGljIGZsb2F0IHh4OworKwkJcHVibGljIGZsb2F0IHl4OworKwkJcHVibGljIGZsb2F0IHp4Owor KwkJcHVibGljIGZsb2F0IHd4OworKwkJcHVibGljIGZsb2F0IHh5OworKwkJcHVibGljIGZsb2F0 IHl5OworKwkJcHVibGljIGZsb2F0IHp5OworKwkJcHVibGljIGZsb2F0IHd5OworKwkJcHVibGlj IGZsb2F0IHh6OworKwkJcHVibGljIGZsb2F0IHl6OworKwkJcHVibGljIGZsb2F0IHp6OworKwkJ cHVibGljIGZsb2F0IHd6OworKwkJcHVibGljIGZsb2F0IHh3OworKwkJcHVibGljIGZsb2F0IHl3 OworKwkJcHVibGljIGZsb2F0IHp3OworKwkJcHVibGljIGZsb2F0IHd3OworKwkJW1ZlcnNpb24g KHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIENvZ2wuTWF0cml4PyBjb3B5ICgpOworKwkJW1Zl cnNpb24gKHNpbmNlID0gIjEuNiIpXQorKwkJcHVibGljIHZvaWQgZnJlZSAoKTsKKysJCVtDQ29k ZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UsIGFycmF5X251bGxfdGVybWluYXRlZCA9IGZhbHNlLCBj bmFtZSA9ICJjb2dsX21hdHJpeF9pbml0X2Zyb21fYXJyYXkiKV0KKysJCXB1YmxpYyBNYXRyaXgu ZnJvbV9hcnJheSAoW0NDb2RlIChhcnJheV9sZW5ndGggPSBmYWxzZSldIGZsb2F0W10gYXJyYXkp OworKwkJcHVibGljIHZvaWQgZnJ1c3R1bSAoZmxvYXQgbGVmdCwgZmxvYXQgcmlnaHQsIGZsb2F0 IGJvdHRvbSwgZmxvYXQgdG9wLCBmbG9hdCB6X25lYXIsIGZsb2F0IHpfZmFyKTsKKysJCXB1Ymxp YyB1bm93bmVkIGZsb2F0W10gZ2V0X2FycmF5ICgpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjEu MiIpXQorKwkJcHVibGljIGJvb2wgZ2V0X2ludmVyc2UgKG91dCBDb2dsLk1hdHJpeCBpbnZlcnNl KTsKKysJCVtDQ29kZSAoY25hbWUgPSAiY29nbF9tYXRyaXhfaW5pdF9pZGVudGl0eSIpXQorKwkJ cHVibGljIE1hdHJpeC5pZGVudGl0eSAoKTsKKysJCXB1YmxpYyB2b2lkIGluaXRfZnJvbV9ldWxl ciAoR3JhcGhlbmUuRXVsZXIgZXVsZXIpOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQor KwkJcHVibGljIHZvaWQgaW5pdF90cmFuc2xhdGlvbiAoZmxvYXQgdHgsIGZsb2F0IHR5LCBmbG9h dCB0eik7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgYm9vbCBpc19p ZGVudGl0eSAoKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2b2lk IGxvb2tfYXQgKGZsb2F0IGV5ZV9wb3NpdGlvbl94LCBmbG9hdCBleWVfcG9zaXRpb25feSwgZmxv YXQgZXllX3Bvc2l0aW9uX3osIGZsb2F0IG9iamVjdF94LCBmbG9hdCBvYmplY3RfeSwgZmxvYXQg b2JqZWN0X3osIGZsb2F0IHdvcmxkX3VwX3gsIGZsb2F0IHdvcmxkX3VwX3ksIGZsb2F0IHdvcmxk X3VwX3opOworKwkJW0NDb2RlIChjbmFtZSA9ICJjb2dsX21hdHJpeF9tdWx0aXBseSIpXQorKwkJ cHVibGljIE1hdHJpeC5tdWx0aXBseSAoQ29nbC5NYXRyaXggYSwgQ29nbC5NYXRyaXggYik7Cisr CQlbVmVyc2lvbiAoc2luY2UgPSAiMS4xMCIpXQorKwkJcHVibGljIHZvaWQgb3J0aG9ncmFwaGlj IChmbG9hdCB4XzEsIGZsb2F0IHlfMSwgZmxvYXQgeF8yLCBmbG9hdCB5XzIsIGZsb2F0IG5lYXIs IGZsb2F0IGZhcik7CisrCQlwdWJsaWMgdm9pZCBwZXJzcGVjdGl2ZSAoZmxvYXQgZm92X3ksIGZs b2F0IGFzcGVjdCwgZmxvYXQgel9uZWFyLCBmbG9hdCB6X2Zhcik7CisrCQlwdWJsaWMgdm9pZCBw cm9qZWN0X3BvaW50cyAoaW50IG5fY29tcG9uZW50cywgc2l6ZV90IHN0cmlkZV9pbiwgdm9pZCog cG9pbnRzX2luLCBzaXplX3Qgc3RyaWRlX291dCwgdm9pZCogcG9pbnRzX291dCwgaW50IG5fcG9p bnRzKTsKKysJCXB1YmxpYyB2b2lkIHJvdGF0ZSAoZmxvYXQgYW5nbGUsIGZsb2F0IHgsIGZsb2F0 IHksIGZsb2F0IHopOworKwkJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwkJcHVibGljIHZv aWQgcm90YXRlX2V1bGVyIChHcmFwaGVuZS5FdWxlciBldWxlcik7CisrCQlwdWJsaWMgdm9pZCBz Y2FsZSAoZmxvYXQgc3gsIGZsb2F0IHN5LCBmbG9hdCBzeik7CisrCQlwdWJsaWMgc3RhdGljIHZv aWQgdHJhbnNmb3JtX3BvaW50IChyZWYgQ29nbC5NYXRyaXggbWF0cml4LCByZWYgZmxvYXQgeCwg cmVmIGZsb2F0IHksIHJlZiBmbG9hdCB6LCByZWYgZmxvYXQgdyk7CisrCQlwdWJsaWMgdm9pZCB0 cmFuc2Zvcm1fcG9pbnRzIChpbnQgbl9jb21wb25lbnRzLCBzaXplX3Qgc3RyaWRlX2luLCB2b2lk KiBwb2ludHNfaW4sIHNpemVfdCBzdHJpZGVfb3V0LCB2b2lkKiBwb2ludHNfb3V0LCBpbnQgbl9w b2ludHMpOworKwkJcHVibGljIHZvaWQgdHJhbnNsYXRlIChmbG9hdCB4LCBmbG9hdCB5LCBmbG9h dCB6KTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCQlwdWJsaWMgdm9pZCB0cmFu c3Bvc2UgKCk7CisrCQlbVmVyc2lvbiAoc2luY2UgPSAiMS44IildCisrCQlwdWJsaWMgdm9pZCB2 aWV3XzJkX2luX2ZydXN0dW0gKGZsb2F0IGxlZnQsIGZsb2F0IHJpZ2h0LCBmbG9hdCBib3R0b20s IGZsb2F0IHRvcCwgZmxvYXQgel9uZWFyLCBmbG9hdCB6XzJkLCBmbG9hdCB3aWR0aF8yZCwgZmxv YXQgaGVpZ2h0XzJkKTsKKysJCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJCXB1YmxpYyB2 b2lkIHZpZXdfMmRfaW5fcGVyc3BlY3RpdmUgKGZsb2F0IGZvdl95LCBmbG9hdCBhc3BlY3QsIGZs b2F0IHpfbmVhciwgZmxvYXQgel8yZCwgZmxvYXQgd2lkdGhfMmQsIGZsb2F0IGhlaWdodF8yZCk7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgaGFzX3R5 cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCXB1YmxpYyBz dHJ1Y3QgT25zY3JlZW5EaXJ0eUluZm8geworKwkJcHVibGljIGludCB4OworKwkJcHVibGljIGlu dCB5OworKwkJcHVibGljIGludCB3aWR0aDsKKysJCXB1YmxpYyBpbnQgaGVpZ2h0OworKwl9Cisr CVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGhhc190eXBlX2lkID0g ZmFsc2UpXQorKwlwdWJsaWMgc3RydWN0IFRleHR1cmVWZXJ0ZXggeworKwkJcHVibGljIGZsb2F0 IHg7CisrCQlwdWJsaWMgZmxvYXQgeTsKKysJCXB1YmxpYyBmbG9hdCB6OworKwkJcHVibGljIGZs b2F0IHR4OworKwkJcHVibGljIGZsb2F0IHR5OworKwkJcHVibGljIENvZ2wuQ29sb3IgY29sb3I7 CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgaGFzX3R5 cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGljIHN0 cnVjdCBVc2VyRGF0YUtleSB7CisrCQlwdWJsaWMgaW50IHVudXNlZDsKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJfQ29nbENvbG9yU2l6 ZUNoZWNrIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBzdHJ1Y3QgX0NvbG9yU2l6 ZUNoZWNrIHsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXQorKwkJcHVibGljIHdl YWsgY2hhcltdIGNvbXBpbGVfdGltZV9hc3NlcnRfQ29nbENvbG9yX3NpemU7CisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiX0NvZ2xNYXRy aXhTaXplQ2hlY2siLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIHN0cnVjdCBfTWF0 cml4U2l6ZUNoZWNrIHsKKysJCVtDQ29kZSAoYXJyYXlfbGVuZ3RoID0gZmFsc2UpXQorKwkJcHVi bGljIHdlYWsgY2hhcltdIGNvbXBpbGVfdGltZV9hc3NlcnRfQ29nbE1hdHJpeF9zaXplOworKwl9 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1lID0gIl9D b2dsVGV4dHVyZVZlcnRleFNpemVDaGVjayIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJs aWMgc3RydWN0IF9UZXh0dXJlVmVydGV4U2l6ZUNoZWNrIHsKKysJCVtDQ29kZSAoYXJyYXlfbGVu Z3RoID0gZmFsc2UpXQorKwkJcHVibGljIHdlYWsgY2hhcltdIGNvbXBpbGVfdGltZV9hc3NlcnRf Q29nbFRleHR1cmVWZXJ0ZXhfc2l6ZTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfQVRUUklCVVRFX1RZUEVfIiwgaGFzX3R5 cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGVu dW0gQXR0cmlidXRlVHlwZSB7CisrCQlCWVRFLAorKwkJVU5TSUdORURfQllURSwKKysJCVNIT1JU LAorKwkJVU5TSUdORURfU0hPUlQsCisrCQlGTE9BVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9CSVRNQVBfRVJST1JfIiwg aGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVi bGljIGVudW0gQml0bWFwRXJyb3IgeworKwkJRkFJTEVELAorKwkJVU5LTk9XTl9UWVBFLAorKwkJ Q09SUlVQVF9JTUFHRQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2Nv Z2wuaCIsIGNwcmVmaXggPSAiQ09HTF9CTEVORF9TVFJJTkdfRVJST1JfIiwgaGFzX3R5cGVfaWQg PSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGVudW0gQmxl bmRTdHJpbmdFcnJvciB7CisrCQlQQVJTRV9FUlJPUiwKKysJCUFSR1VNRU5UX1BBUlNFX0VSUk9S LAorKwkJSU5WQUxJRF9FUlJPUiwKKysJCUdQVV9VTlNVUFBPUlRFRF9FUlJPUjsKKysJCXB1Ymxp YyBzdGF0aWMgdWludDMyIHF1YXJrICgpOworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9CVUZGRVJfQklUXyIsIGhhc190eXBl X2lkID0gZmFsc2UpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJ cHVibGljIGVudW0gQnVmZmVyQml0IHsKKysJCUNPTE9SLAorKwkJREVQVEgsCisrCQlTVEVOQ0lM CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZp eCA9ICJDT0dMXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbRmxhZ3NdCisrCVtWZXJzaW9u IChzaW5jZSA9ICIwLjgiKV0KKysJcHVibGljIGVudW0gQnVmZmVyVGFyZ2V0IHsKKysJCVdJTkRP V19CVUZGRVIsCisrCQlPRkZTQ1JFRU5fQlVGRkVSCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0RFUFRIX1RFU1RfRlVOQ1RJ T05fIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBlbnVtIERlcHRoVGVzdEZ1bmN0 aW9uIHsKKysJCU5FVkVSLAorKwkJTEVTUywKKysJCUVRVUFMLAorKwkJTEVRVUFMLAorKwkJR1JF QVRFUiwKKysJCU5PVEVRVUFMLAorKwkJR0VRVUFMLAorKwkJQUxXQVlTCisrCX0KKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0VHTF9J TUFHRV9GTEFHXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbRmxhZ3NdCisrCXB1YmxpYyBl bnVtIEVnbEltYWdlRmxhZ3MgeworKwkJTk9ORSwKKysJCU5PX0dFVF9EQVRBCisrCX0KKysJW0ND b2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX0ZF QVRVUkVfSURfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIx LjEwIildCisrCXB1YmxpYyBlbnVtIEZlYXR1cmVJRCB7CisrCQlbQ0NvZGUgKGNuYW1lID0gIkNP R0xfRkVBVFVSRV9JRF9VTlNJR05FRF9JTlRfSU5ESUNFUyIpXQorKwkJT0dMX0ZFQVRVUkVfSURf VU5TSUdORURfSU5UX0lORElDRVMsCisrCQlbQ0NvZGUgKGNuYW1lID0gIkNPR0xfRkVBVFVSRV9J RF9NQVBfQlVGRkVSX0ZPUl9SRUFEIildCisrCQlPR0xfRkVBVFVSRV9JRF9NQVBfQlVGRkVSX0ZP Ul9SRUFELAorKwkJW0NDb2RlIChjbmFtZSA9ICJDT0dMX0ZFQVRVUkVfSURfTUFQX0JVRkZFUl9G T1JfV1JJVEUiKV0KKysJCU9HTF9GRUFUVVJFX0lEX01BUF9CVUZGRVJfRk9SX1dSSVRFLAorKwkJ W0NDb2RlIChjbmFtZSA9ICJDT0dMX0ZFQVRVUkVfSURfU1dBUF9CVUZGRVJTX0VWRU5UIildCisr CQlPR0xfRkVBVFVSRV9JRF9TV0FQX0JVRkZFUlNfRVZFTlQsCisrCQlbQ0NvZGUgKGNuYW1lID0g IkNPR0xfRkVBVFVSRV9JRF9QUkVTRU5UQVRJT05fVElNRSIpXQorKwkJT0dMX0ZFQVRVUkVfSURf UFJFU0VOVEFUSU9OX1RJTUUsCisrCQlbQ0NvZGUgKGNuYW1lID0gIkNPR0xfRkVBVFVSRV9JRF9G RU5DRSIpXQorKwkJT0dMX0ZFQVRVUkVfSURfRkVOQ0UsCisrCQlbQ0NvZGUgKGNuYW1lID0gIkNP R0xfRkVBVFVSRV9JRF9URVhUVVJFX1JHIildCisrCQlPR0xfRkVBVFVSRV9JRF9URVhUVVJFX1JH LAorKwkJW0NDb2RlIChjbmFtZSA9ICJDT0dMX0ZFQVRVUkVfSURfQlVGRkVSX0FHRSIpXQorKwkJ T0dMX0ZFQVRVUkVfSURfQlVGRkVSX0FHRSwKKysJCVtDQ29kZSAoY25hbWUgPSAiQ09HTF9GRUFU VVJFX0lEX1RFWFRVUkVfRUdMX0lNQUdFX0VYVEVSTkFMIildCisrCQlPR0xfRkVBVFVSRV9JRF9U RVhUVVJFX0VHTF9JTUFHRV9FWFRFUk5BTAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFt ZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9GSUxURVJfIiwgaGFzX3R5cGVfaWQg PSBmYWxzZSldCisrCXB1YmxpYyBlbnVtIEZpbHRlclJldHVybiB7CisrCQlDT05USU5VRSwKKysJ CVJFTU9WRQorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIs IGNwcmVmaXggPSAiQ09HTF9GUkFNRV9FVkVOVF8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJ W1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJcHVibGljIGVudW0gRnJhbWVFdmVudCB7Cisr CQlTWU5DLAorKwkJQ09NUExFVEUKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAi Y29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfRlJBTUVCVUZGRVJfRVJST1JfIiwgaGFzX3R5 cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBlbnVtIEZyYW1lYnVmZmVyRXJyb3IgeworKwkJW0ND b2RlIChjbmFtZSA9ICJDT0dMX0ZSQU1FQlVGRkVSX0VSUk9SX0FMTE9DQVRFIildCisrCQlGUkFN RUJVRkZFUl9FUlJPUl9BTExPQ0FURTsKKysJCXB1YmxpYyBzdGF0aWMgdWludDMyIHF1YXJrICgp OworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVm aXggPSAiQ09HTF9HUkFQSElDU19SRVNFVF9TVEFUVVNfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSld CisrCXB1YmxpYyBlbnVtIEdyYXBoaWNzUmVzZXRTdGF0dXMgeworKwkJTk9fRVJST1IsCisrCQlH VUlMVFlfQ09OVEVYVF9SRVNFVCwKKysJCUlOTk9DRU5UX0NPTlRFWFRfUkVTRVQsCisrCQlVTktO T1dOX0NPTlRFWFRfUkVTRVQsCisrCQlQVVJHRURfQ09OVEVYVF9SRVNFVAorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9JTkRJ Q0VTX1RZUEVfVU5TSUdORURfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBlbnVt IEluZGljZXNUeXBlIHsKKysJCUJZVEUsCisrCQlTSE9SVCwKKysJCUlOVAorKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9NQVRF UklBTF9BTFBIQV9GVU5DXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBN YXRlcmlhbEFscGhhRnVuYyB7CisrCQlORVZFUiwKKysJCUxFU1MsCisrCQlFUVVBTCwKKysJCUxF UVVBTCwKKysJCUdSRUFURVIsCisrCQlOT1RFUVVBTCwKKysJCUdFUVVBTCwKKysJCUFMV0FZUwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXgg PSAiQ09HTF9NQVRFUklBTF9GSUxURVJfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1Ymxp YyBlbnVtIE1hdGVyaWFsRmlsdGVyIHsKKysJCU5FQVJFU1QsCisrCQlMSU5FQVIsCisrCQlORUFS RVNUX01JUE1BUF9ORUFSRVNULAorKwkJTElORUFSX01JUE1BUF9ORUFSRVNULAorKwkJTkVBUkVT VF9NSVBNQVBfTElORUFSLAorKwkJTElORUFSX01JUE1BUF9MSU5FQVIKKysJfQorKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xfTUFURVJJ QUxfV1JBUF9NT0RFXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2Ug PSAiMS40IildCisrCXB1YmxpYyBlbnVtIE1hdGVyaWFsV3JhcE1vZGUgeworKwkJUkVQRUFULAor KwkJQ0xBTVBfVE9fRURHRSwKKysJCUFVVE9NQVRJQworKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9QSVBFTElORV9BTFBIQV9G VU5DXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBQaXBlbGluZUFscGhh RnVuYyB7CisrCQlORVZFUiwKKysJCUxFU1MsCisrCQlFUVVBTCwKKysJCUxFUVVBTCwKKysJCUdS RUFURVIsCisrCQlOT1RFUVVBTCwKKysJCUdFUVVBTCwKKysJCUFMV0FZUworKwl9CisrCVtDQ29k ZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9QSVBF TElORV9DVUxMX0ZBQ0VfTU9ERV8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJcHVibGljIGVu dW0gUGlwZWxpbmVDdWxsRmFjZU1vZGUgeworKwkJTk9ORSwKKysJCUZST05ULAorKwkJQkFDSywK KysJCUJPVEgKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgi LCBjcHJlZml4ID0gIkNPR0xfUElQRUxJTkVfRklMVEVSXyIsIGhhc190eXBlX2lkID0gZmFsc2Up XQorKwlwdWJsaWMgZW51bSBQaXBlbGluZUZpbHRlciB7CisrCQlORUFSRVNULAorKwkJTElORUFS LAorKwkJTkVBUkVTVF9NSVBNQVBfTkVBUkVTVCwKKysJCUxJTkVBUl9NSVBNQVBfTkVBUkVTVCwK KysJCU5FQVJFU1RfTUlQTUFQX0xJTkVBUiwKKysJCUxJTkVBUl9NSVBNQVBfTElORUFSCisrCX0K KysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJD T0dMX1BJUEVMSU5FX1dSQVBfTU9ERV8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjIuMCIpXQorKwlwdWJsaWMgZW51bSBQaXBlbGluZVdyYXBNb2RlIHsKKysJ CVJFUEVBVCwKKysJCU1JUlJPUkVEX1JFUEVBVCwKKysJCUNMQU1QX1RPX0VER0UsCisrCQlBVVRP TUFUSUMKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBj cHJlZml4ID0gIkNPR0xfUElYRUxfRk9STUFUXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlb RmxhZ3NdCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjgiKV0KKysJcHVibGljIGVudW0gUGl4ZWxG b3JtYXQgeworKwkJQU5ZLAorKwkJQV84LAorKwkJUkdCXzU2NSwKKysJCVJHQkFfNDQ0NCwKKysJ CVJHQkFfNTU1MSwKKysJCVlVViwKKysJCUdfOCwKKysJCVJHXzg4LAorKwkJUkdCXzg4OCwKKysJ CUJHUl84ODgsCisrCQlSR0JBXzg4ODgsCisrCQlCR1JBXzg4ODgsCisrCQlBUkdCXzg4ODgsCisr CQlBQkdSXzg4ODgsCisrCQlSR0JBXzEwMTAxMDIsCisrCQlCR1JBXzEwMTAxMDIsCisrCQlBUkdC XzIxMDEwMTAsCisrCQlBQkdSXzIxMDEwMTAsCisrCQlSR0JBXzg4ODhfUFJFLAorKwkJQkdSQV84 ODg4X1BSRSwKKysJCUFSR0JfODg4OF9QUkUsCisrCQlBQkdSXzg4ODhfUFJFLAorKwkJUkdCQV80 NDQ0X1BSRSwKKysJCVJHQkFfNTU1MV9QUkUsCisrCQlSR0JBXzEwMTAxMDJfUFJFLAorKwkJQkdS QV8xMDEwMTAyX1BSRSwKKysJCUFSR0JfMjEwMTAxMF9QUkUsCisrCQlBQkdSXzIxMDEwMTBfUFJF LAorKwkJREVQVEhfMTYsCisrCQlERVBUSF8zMiwKKysJCURFUFRIXzI0X1NURU5DSUxfODsKKysJ CXB1YmxpYyBpbnQgZ2V0X2J5dGVzX3Blcl9waXhlbCAoaW50IHBsYW5lKTsKKysJCXB1YmxpYyBp bnQgZ2V0X25fcGxhbmVzICgpOworKwkJcHVibGljIHVub3duZWQgc3RyaW5nIHRvX3N0cmluZyAo KTsKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJl Zml4ID0gIkNPR0xfUkVBRF9QSVhFTFNfQ09MT1JfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisr CVtGbGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJsaWMgZW51bSBSZWFk UGl4ZWxzRmxhZ3MgeworKwkJW0NDb2RlIChjbmFtZSA9ICJDT0dMX1JFQURfUElYRUxTX0NPTE9S X0JVRkZFUiIpXQorKwkJUkVBRF9QSVhFTFNfQ09MT1JfQlVGRkVSCisrCX0KKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1JFTkRFUkVS X0VSUk9SXyIsIGhhc190eXBlX2lkID0gZmFsc2UpXQorKwlwdWJsaWMgZW51bSBSZW5kZXJlckVy cm9yIHsKKysJCVhMSUJfRElTUExBWV9PUEVOLAorKwkJQkFEX0NPTlNUUkFJTlQKKysJfQorKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4ID0gIkNPR0xf U0hBREVSX1RZUEVfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJcHVibGljIGVudW0gU2hhZGVyVHlwZSB7CisrCQlWRVJURVgsCisrCQlGUkFH TUVOVAorKwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNw cmVmaXggPSAiQ09HTF9TVEVSRU9fIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1YmxpYyBl bnVtIFN0ZXJlb01vZGUgeworKwkJQk9USCwKKysJCUxFRlQsCisrCQlSSUdIVAorKwl9CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNwcmVmaXggPSAiQ09HTF9T WVNURU1fRVJST1JfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjQiKV0KKysJcHVibGljIGVudW0gU3lzdGVtRXJyb3IgeworKwkJVU5TVVBQT1JURUQsCisr CQlOT19NRU1PUlkKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2ds LmgiLCBjcHJlZml4ID0gIkNPR0xfVEVYVFVSRV9DT01QT05FTlRTXyIsIGhhc190eXBlX2lkID0g ZmFsc2UpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMS4xOCIpXQorKwlwdWJsaWMgZW51bSBUZXh0 dXJlQ29tcG9uZW50cyB7CisrCQlBLAorKwkJUkcsCisrCQlSR0IsCisrCQlSR0JBLAorKwkJREVQ VEgKKysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJl Zml4ID0gIkNPR0xfVEVYVFVSRV9FUlJPUl8iLCBoYXNfdHlwZV9pZCA9IGZhbHNlKV0KKysJW1Zl cnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwlwdWJsaWMgZW51bSBUZXh0dXJlRXJyb3IgeworKwkJ U0laRSwKKysJCUZPUk1BVCwKKysJCUJBRF9QQVJBTUVURVIsCisrCQlUWVBFOworKwkJcHVibGlj IHN0YXRpYyB1aW50MzIgcXVhcmsgKCk7CisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1RFWFRVUkVfIiwgaGFzX3R5cGVfaWQg PSBmYWxzZSldCisrCVtGbGFnc10KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlwdWJs aWMgZW51bSBUZXh0dXJlRmxhZ3MgeworKwkJTk9ORSwKKysJCU5PX0FVVE9fTUlQTUFQLAorKwkJ Tk9fU0xJQ0lORywKKysJCU5PX0FUTEFTCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNvZ2wvY29nbC5oIiwgY3ByZWZpeCA9ICJDT0dMX1ZFUlRJQ0VTX01PREVfIiwgaGFzX3R5 cGVfaWQgPSBmYWxzZSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjAiKV0KKysJcHVibGljIGVu dW0gVmVydGljZXNNb2RlIHsKKysJCVBPSU5UUywKKysJCUxJTkVTLAorKwkJTElORV9MT09QLAor KwkJTElORV9TVFJJUCwKKysJCVRSSUFOR0xFUywKKysJCVRSSUFOR0xFX1NUUklQLAorKwkJVFJJ QU5HTEVfRkFOCisrCX0KKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5o IiwgY3ByZWZpeCA9ICJDT0dMX1dJTkRJTkdfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1 YmxpYyBlbnVtIFdpbmRpbmcgeworKwkJQ0xPQ0tXSVNFLAorKwkJQ09VTlRFUl9DTE9DS1dJU0UK KysJfQorKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBjcHJlZml4 ID0gIkNPR0xfV0lOU1lTX0ZFQVRVUkVfIiwgaGFzX3R5cGVfaWQgPSBmYWxzZSldCisrCXB1Ymxp YyBlbnVtIFdpbnN5c0ZlYXR1cmUgeworKwkJTVVMVElQTEVfT05TQ1JFRU4sCisrCQlTV0FQX1RI Uk9UVExFLAorKwkJVkJMQU5LX0NPVU5URVIsCisrCQlWQkxBTktfV0FJVCwKKysJCVRFWFRVUkVf RlJPTV9QSVhNQVAsCisrCQlTV0FQX0JVRkZFUlNfRVZFTlQsCisrCQlTV0FQX1JFR0lPTiwKKysJ CVNXQVBfUkVHSU9OX1RIUk9UVExFLAorKwkJU1dBUF9SRUdJT05fU1lOQ0hST05JWkVELAorKwkJ QlVGRkVSX0FHRSwKKysJCVNZTkNfQU5EX0NPTVBMRVRFX0VWRU5ULAorKwkJTl9GRUFUVVJFUwor Kwl9CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGluc3RhbmNl X3BvcyA9IDEuOSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJcHVibGljIGRlbGVn YXRlIHZvaWQgRGVidWdPYmplY3RGb3JlYWNoVHlwZUNhbGxiYWNrIChDb2dsLkRlYnVnT2JqZWN0 VHlwZUluZm8gaW5mbyk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wu aCIsIGluc3RhbmNlX3BvcyA9IDEuOSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIwLjEwIildCisr CXB1YmxpYyBkZWxlZ2F0ZSB2b2lkIEZlYXR1cmVDYWxsYmFjayAoQ29nbC5GZWF0dXJlSUQgZmVh dHVyZSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGluc3Rh bmNlX3BvcyA9IDIuOSldCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjE2IildCisrCXB1YmxpYyBk ZWxlZ2F0ZSB2b2lkIE9uc2NyZWVuRGlydHlDYWxsYmFjayAoQ29nbC5PbnNjcmVlbiBvbnNjcmVl biwgQ29nbC5PbnNjcmVlbkRpcnR5SW5mbyBpbmZvKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNvZ2wvY29nbC5oIiwgaW5zdGFuY2VfcG9zID0gMy45KV0KKysJW1ZlcnNpb24gKHNp bmNlID0gIjIuMCIpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBPbnNjcmVlblJlc2l6ZUNhbGxi YWNrIChDb2dsLk9uc2NyZWVuIG9uc2NyZWVuLCBpbnQgd2lkdGgsIGludCBoZWlnaHQpOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBpbnN0YW5jZV9wb3MgPSAy LjkpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAiMi4wIildCisrCXB1YmxpYyBkZWxlZ2F0ZSBib29s IFBpcGVsaW5lTGF5ZXJDYWxsYmFjayAoQ29nbC5QaXBlbGluZSBwaXBlbGluZSwgaW50IGxheWVy X2luZGV4KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgaW5z dGFuY2VfcG9zID0gMS45KV0KKysJcHVibGljIGRlbGVnYXRlIGJvb2wgVGV4dHVyZTJERUdMSW1h Z2VFeHRlcm5hbEFsbG9jIChDb2dsLlRleHR1cmUyRCB0ZXhfMmQpIHRocm93cyBHTGliLkVycm9y OworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiLCBoYXNfdGFyZ2V0 ID0gZmFsc2UpXQorKwlwdWJsaWMgZGVsZWdhdGUgdm9pZCBVc2VyRGF0YURlc3Ryb3lDYWxsYmFj ayAodm9pZCogZGF0YSk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wu aCIsIGNuYW1lID0gIkNPR0xfQUZJUlNUX0JJVCIpXQorKwlwdWJsaWMgY29uc3QgaW50IEFGSVJT VF9CSVQ7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIsIGNuYW1l ID0gIkNPR0xfQV9CSVQiKV0KKysJcHVibGljIGNvbnN0IGludCBBX0JJVDsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ09HTF9CR1JfQklUIild CisrCXB1YmxpYyBjb25zdCBpbnQgQkdSX0JJVDsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ09HTF9ERVBUSF9CSVQiKV0KKysJcHVibGljIGNv bnN0IGludCBERVBUSF9CSVQ7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2Nv Z2wuaCIsIGNuYW1lID0gIkNPR0xfUElYRUxfRk9STUFUX01BWF9QTEFORVMiKV0KKysJcHVibGlj IGNvbnN0IGludCBQSVhFTF9GT1JNQVRfTUFYX1BMQU5FUzsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNvZ2wvY29nbC5oIiwgY25hbWUgPSAiQ09HTF9QUkVNVUxUX0JJVCIpXQorKwlw dWJsaWMgY29uc3QgaW50IFBSRU1VTFRfQklUOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY29nbC9jb2dsLmgiLCBjbmFtZSA9ICJDT0dMX1NURU5DSUxfQklUIildCisrCXB1YmxpYyBj b25zdCBpbnQgU1RFTkNJTF9CSVQ7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2ds L2NvZ2wuaCIsIGNuYW1lID0gIkNPR0xfVEVYVFVSRV9NQVhfV0FTVEUiKV0KKysJcHVibGljIGNv bnN0IGludCBURVhUVVJFX01BWF9XQVNURTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0g ImNvZ2wvY29nbC5oIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBibGl0X2ZyYW1lYnVmZmVyIChD b2dsLkZyYW1lYnVmZmVyIHNyYywgQ29nbC5GcmFtZWJ1ZmZlciBkZXN0LCBpbnQgc3JjX3gsIGlu dCBzcmNfeSwgaW50IGRzdF94LCBpbnQgZHN0X3ksIGludCB3aWR0aCwgaW50IGhlaWdodCkgdGhy b3dzIEdMaWIuRXJyb3I7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wu aCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgY2x1dHRlcl93aW5zeXNfaGFzX2ZlYXR1cmVfQ0xV VFRFUiAoQ29nbC5XaW5zeXNGZWF0dXJlIGZlYXR1cmUpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmls ZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMCIpXQorKwlw dWJsaWMgc3RhdGljIGJvb2wgY29sb3JfZXF1YWwgKHZvaWQqIHYxLCB2b2lkKiB2Mik7CisrCVtD Q29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2lu Y2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgc3RhdGljIHZvaWQgY29sb3JfaW5pdF9mcm9tX2hzbCAo b3V0IENvZ2wuQ29sb3IgY29sb3IsIGZsb2F0IGh1ZSwgZmxvYXQgc2F0dXJhdGlvbiwgZmxvYXQg bHVtaW5hbmNlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIild CisrCVtWZXJzaW9uIChzaW5jZSA9ICIyLjAiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGRlYnVn X21hdHJpeF9wcmludCAoQ29nbC5NYXRyaXggbWF0cml4KTsKKysJW0NDb2RlIChjaGVhZGVyX2Zp bGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjgiKV0KKysJ cHVibGljIHN0YXRpYyB2b2lkIGRlYnVnX29iamVjdF9mb3JlYWNoX3R5cGUgKENvZ2wuRGVidWdP YmplY3RGb3JlYWNoVHlwZUNhbGxiYWNrIGZ1bmMpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuOCIpXQorKwlwdWJs aWMgc3RhdGljIHZvaWQgZGVidWdfb2JqZWN0X3ByaW50X2luc3RhbmNlcyAoKTsKKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9 ICIxLjAiKV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGZsdXNoICgpOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTAi KV0KKysJcHVibGljIHN0YXRpYyB2b2lkIGZvcmVhY2hfZmVhdHVyZSAoQ29nbC5Db250ZXh0IGNv bnRleHQsIENvZ2wuRmVhdHVyZUNhbGxiYWNrIGNhbGxiYWNrKTsKKysJW0NDb2RlIChjaGVhZGVy X2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1 ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2IildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBnZXRf YmFja2ZhY2VfY3VsbGluZ19lbmFibGVkICgpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUg PSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEuMTQiKV0KKysJcHVibGlj IHN0YXRpYyBpbnQ2NCBnZXRfY2xvY2tfdGltZSAoQ29nbC5Db250ZXh0IGNvbnRleHQpOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0 YXRpYyBib29sIGdldF9kZXB0aF90ZXN0X2VuYWJsZWQgKCk7CisrCVtDQ29kZSAoY2hlYWRlcl9m aWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlwdWJsaWMgc3RhdGljIENvZ2wuR3JhcGhpY3NS ZXNldFN0YXR1cyBnZXRfZ3JhcGhpY3NfcmVzZXRfc3RhdHVzIChDb2dsLkNvbnRleHQgY29udGV4 dCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVy c2lvbiAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIsIHNpbmNl ID0gIjEuMCIpXQorKwlwdWJsaWMgc3RhdGljIEdMaWIuT3B0aW9uR3JvdXAgZ2V0X29wdGlvbl9n cm91cCAoKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisr CXB1YmxpYyBzdGF0aWMgR0xpYi5DYWxsYmFjayBnZXRfcHJvY19hZGRyZXNzIChzdHJpbmcgcyk7 CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lv biAoZGVwcmVjYXRlZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xOCIpXQorKwlwdWJs aWMgc3RhdGljIEdMaWIuVHlwZSBndHlwZV9tYXRyaXhfZ2V0X3R5cGUgKCk7CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoc2luY2UgPSAi MS4xMCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgaGFzX2ZlYXR1cmUgKENvZ2wuQ29udGV4dCBj b250ZXh0LCBDb2dsLkZlYXR1cmVJRCBmZWF0dXJlKTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVu YW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1 YmxpYyBzdGF0aWMgYm9vbCBpc19jb250ZXh0ICh2b2lkKiBvYmplY3QpOworKwlbQ0NvZGUgKGNo ZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjEu MTAiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGlzX2ZyYW1lYnVmZmVyICh2b2lkKiBvYmplY3Qp OworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNp b24gKHNpbmNlID0gIjEuMTAiKV0KKysJcHVibGljIHN0YXRpYyBib29sIGlzX29uc2NyZWVuICh2 b2lkKiBvYmplY3QpOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgi KV0KKysJW1ZlcnNpb24gKHNpbmNlID0gIjIuMCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgaXNf cGlwZWxpbmUgKHZvaWQqIG9iamVjdCk7CisrCVtDQ29kZSAoY2hlYWRlcl9maWxlbmFtZSA9ICJj b2dsL2NvZ2wuaCIpXQorKwlwdWJsaWMgc3RhdGljIGJvb2wgaXNfdGV4dHVyZV8yZCAodm9pZCog b2JqZWN0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisr CVtWZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBzdGF0aWMgYm9vbCBpc190ZXh0 dXJlXzJkX3NsaWNlZCAodm9pZCogb2JqZWN0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1l ID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChzaW5jZSA9ICIxLjQiKV0KKysJcHVibGlj IHN0YXRpYyBib29sIG1hdHJpeF9lcXVhbCAodm9pZCogdjEsIHZvaWQqIHYyKTsKKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2IildCisrCXB1YmxpYyBzdGF0aWMg dm9pZCBzZXRfYmFja2ZhY2VfY3VsbGluZ19lbmFibGVkIChib29sIHNldHRpbmcpOworKwlbQ0Nv ZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJl Y2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0YXRp YyB2b2lkIHNldF9kZXB0aF90ZXN0X2VuYWJsZWQgKGJvb2wgc2V0dGluZyk7CisrCVtDQ29kZSAo Y2hlYWRlcl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRl ZCA9IHRydWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgc3RhdGljIHZv aWQgc2hhZGVyX2NvbXBpbGUgKENvZ2wuSGFuZGxlIGhhbmRsZSk7CisrCVtDQ29kZSAoY2hlYWRl cl9maWxlbmFtZSA9ICJjb2dsL2NvZ2wuaCIpXQorKwlbVmVyc2lvbiAoZGVwcmVjYXRlZCA9IHRy dWUsIGRlcHJlY2F0ZWRfc2luY2UgPSAiMS4xNiIpXQorKwlwdWJsaWMgc3RhdGljIHN0cmluZyBz aGFkZXJfZ2V0X2luZm9fbG9nIChDb2dsLkhhbmRsZSBoYW5kbGUpOworKwlbQ0NvZGUgKGNoZWFk ZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0 cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0YXRpYyBDb2dsLlNo YWRlclR5cGUgc2hhZGVyX2dldF90eXBlIChDb2dsLkhhbmRsZSBoYW5kbGUpOworKwlbQ0NvZGUg KGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0 ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTYiKV0KKysJcHVibGljIHN0YXRpYyBi b29sIHNoYWRlcl9pc19jb21waWxlZCAoQ29nbC5IYW5kbGUgaGFuZGxlKTsKKysJW0NDb2RlIChj aGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVk ID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE2IildCisrCXB1YmxpYyBzdGF0aWMgdm9p ZCBzaGFkZXJfc291cmNlIChDb2dsLkhhbmRsZSBzaGFkZXIsIHN0cmluZyBzb3VyY2UpOworKwlb Q0NvZGUgKGNoZWFkZXJfZmlsZW5hbWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRl cHJlY2F0ZWQgPSB0cnVlLCBkZXByZWNhdGVkX3NpbmNlID0gIjEuMTgiLCBzaW5jZSA9ICIxLjAi KV0KKysJcHVibGljIHN0YXRpYyBDb2dsLlRleHR1cmUgdGV4dHVyZV9uZXdfZnJvbV9iaXRtYXAg KENvZ2wuQml0bWFwIGJpdG1hcCwgQ29nbC5UZXh0dXJlRmxhZ3MgZmxhZ3MsIENvZ2wuUGl4ZWxG b3JtYXQgaW50ZXJuYWxfZm9ybWF0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNv Z2wvY29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNhdGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9z aW5jZSA9ICIxLjE4Iiwgc2luY2UgPSAiMC44IildCisrCXB1YmxpYyBzdGF0aWMgQ29nbC5UZXh0 dXJlIHRleHR1cmVfbmV3X2Zyb21fZGF0YSAoaW50IHdpZHRoLCBpbnQgaGVpZ2h0LCBDb2dsLlRl eHR1cmVGbGFncyBmbGFncywgQ29nbC5QaXhlbEZvcm1hdCBmb3JtYXQsIENvZ2wuUGl4ZWxGb3Jt YXQgaW50ZXJuYWxfZm9ybWF0LCBpbnQgcm93c3RyaWRlLCB1aW50OCBkYXRhKTsKKysJW0NDb2Rl IChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtWZXJzaW9uIChkZXByZWNh dGVkID0gdHJ1ZSwgZGVwcmVjYXRlZF9zaW5jZSA9ICIxLjE4Iiwgc2luY2UgPSAiMC44IildCisr CXB1YmxpYyBzdGF0aWMgQ29nbC5UZXh0dXJlIHRleHR1cmVfbmV3X2Zyb21fZmlsZSAoc3RyaW5n IGZpbGVuYW1lLCBDb2dsLlRleHR1cmVGbGFncyBmbGFncywgQ29nbC5QaXhlbEZvcm1hdCBpbnRl cm5hbF9mb3JtYXQpIHRocm93cyBHTGliLkVycm9yOworKwlbQ0NvZGUgKGNoZWFkZXJfZmlsZW5h bWUgPSAiY29nbC9jb2dsLmgiKV0KKysJW1ZlcnNpb24gKGRlcHJlY2F0ZWQgPSB0cnVlLCBkZXBy ZWNhdGVkX3NpbmNlID0gIjEuMTgiLCBzaW5jZSA9ICIwLjgiKV0KKysJcHVibGljIHN0YXRpYyBD b2dsLlRleHR1cmUgdGV4dHVyZV9uZXdfd2l0aF9zaXplICh1aW50IHdpZHRoLCB1aW50IGhlaWdo dCwgQ29nbC5UZXh0dXJlRmxhZ3MgZmxhZ3MsIENvZ2wuUGl4ZWxGb3JtYXQgaW50ZXJuYWxfZm9y bWF0KTsKKysJW0NDb2RlIChjaGVhZGVyX2ZpbGVuYW1lID0gImNvZ2wvY29nbC5oIildCisrCVtW ZXJzaW9uIChzaW5jZSA9ICIxLjEwIildCisrCXB1YmxpYyBzdGF0aWMgdWludDMyIHgxMV9vbnNj cmVlbl9nZXRfd2luZG93X3hpZCAoQ29nbC5PbnNjcmVlbiBvbnNjcmVlbik7CisrfQorLS0gCisy LjI1LjAKKwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9idWRnaWUtZGVza3RvcC90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvYnVkZ2llLWRlc2t0b3AvdGVtcGxhdGUKaW5kZXggYjMyZTc3MzRkM2IuLjE4MGNkYzAy ZjFmIDEwMDY0NAotLS0gYS9zcmNwa2dzL2J1ZGdpZS1kZXNrdG9wL3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3MvYnVkZ2llLWRlc2t0b3AvdGVtcGxhdGUKQEAgLTEsMjEgKzEsMjIgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ2J1ZGdpZS1kZXNrdG9wJwogcGtnbmFtZT1idWRnaWUtZGVza3RvcAogdmVy c2lvbj0xMC41LjEKLXJldmlzaW9uPTMKK3JldmlzaW9uPTQKIGJ1aWxkX3N0eWxlPW1lc29uCiBi dWlsZF9oZWxwZXI9Z2lyCiBjb25maWd1cmVfYXJncz0iLUR3aXRoLWd0ay1kb2M9ZmFsc2UgLUR3 aXRoLWRlc2t0b3AtaWNvbnM9bm9uZSIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBpbnRs dG9vbCB2YWxhIGdsaWItZGV2ZWwgZ29iamVjdC1pbnRyb3NwZWN0aW9uIHNhc3NjIgogbWFrZWRl cGVuZHM9ImFsc2EtbGliLWRldmVsIGxpYm5vdGlmeS1kZXZlbCBhY2NvdW50c3NlcnZpY2UtZGV2 ZWwgbGlicGVhcy1kZXZlbCBsaWJ3bmNrLWRldmVsCi1tdXR0ZXItZGV2ZWwgaWJ1cy1kZXZlbCBn bm9tZS1kZXNrdG9wLWRldmVsIHB1bHNlYXVkaW8tZGV2ZWwgdXBvd2VyLWRldmVsIGd0ayszLWRl dmVsIHBvbGtpdC1kZXZlbAotZ25vbWUtYmx1ZXRvb3RoLWRldmVsIGdub21lLW1lbnVzLWRldmVs IGdub21lLXNldHRpbmdzLWRhZW1vbi1kZXZlbCB2YWxhIGxpYnV1aWQtZGV2ZWwgbGlidXBvd2Vy LWdsaWIzIgotZGVwZW5kcz0iZ25vbWUtc2Vzc2lvbiBnbm9tZS1zZXR0aW5ncy1kYWVtb24gZ25v bWUtY29udHJvbC1jZW50ZXIgZWxvZ2luZCIKKyBtdXR0ZXItZGV2ZWwgaWJ1cy1kZXZlbCBnbm9t ZS1kZXNrdG9wLWRldmVsIHB1bHNlYXVkaW8tZGV2ZWwgdXBvd2VyLWRldmVsIGd0ayszLWRldmVs IHBvbGtpdC1kZXZlbAorIGdub21lLWJsdWV0b290aC1kZXZlbCBnbm9tZS1tZW51cy1kZXZlbCBn bm9tZS1zZXR0aW5ncy1kYWVtb24tZGV2ZWwgdmFsYSBsaWJ1dWlkLWRldmVsIGxpYnVwb3dlci1n bGliMyIKK2RlcGVuZHM9Imdub21lLXNlc3Npb24gZ25vbWUtc2V0dGluZ3MtZGFlbW9uIGdub21l LWNvbnRyb2wtY2VudGVyIGdub21lLXRoZW1lcy1leHRyYSBlbG9naW5kIgogc2hvcnRfZGVzYz0i TW9kZXJuIGRlc2t0b3AgZW52aXJvbm1lbnQgZnJvbSB0aGUgU29sdXMgUHJvamVjdCIKIG1haW50 YWluZXI9IkxvcmVtIDxub3Rsb3JlbWlwc3VtQHByb3Rvbm1haWwuY29tPiIKIGxpY2Vuc2U9IkdQ TC0yLjAtb25seSwgTEdQTC0yLjEtb25seSIKIGhvbWVwYWdlPSJodHRwczovL2dpdGh1Yi5jb20v c29sdXMtcHJvamVjdC9idWRnaWUtZGVza3RvcCIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIu Y29tL3NvbHVzLXByb2plY3QvYnVkZ2llLWRlc2t0b3AvcmVsZWFzZXMvZG93bmxvYWQvdiR7dmVy c2lvbn0vYnVkZ2llLWRlc2t0b3AtJHt2ZXJzaW9ufS50YXIueHoiCiBjaGVja3N1bT1kMDM1ZWM3 NjRlMDA5MzcyMmE4MzI0MTFhZWI2YWJhMjk2YzA5OTVkOTI3ZWEwNjliMjA1YjE5Yzg1YWFlNTY1 CitwYXRjaF9hcmdzPSItTnAxIgogCiBwcmVfY29uZmlndXJlKCkgewogCXZzZWQgLWkgJ3MvZXhl YyBnbm9tZS1zZXNzaW9uL2V4ZWMgZ25vbWUtc2Vzc2lvbiAtLWJ1aWx0aW4vJyBzcmMvc2Vzc2lv bi9idWRnaWUtZGVza3RvcC5pbgoKRnJvbSBjMTc3Njg1MjdkZWEwYzY1ZWFmYzEwZjA1OTUxNjQ3 YTJhN2Y4YjdjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1 QG91dGxvb2suY29tPgpEYXRlOiBUaHUsIDMwIEFwciAyMDIwIDEzOjQ2OjE2ICswNjAwClN1Ympl Y3Q6IFtQQVRDSCAyNy8zNl0geGRnLWRlc2t0b3AtcG9ydGFsLWd0azogcmVidWlsZCBhZ2FpbnN0 CiBsaWJnbm9tZS1kZXNrdG9wLTMuc28uMTkKCltjaSBza2lwXQotLS0KIGVkIDM1IChkZWx0YSAx KSwgcGFjay1yZXVzZWQgMCAgICAgICAgICB8IDI5ICsrKysrKysrKysrKysrKysrKysrKysrKysK IHNyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFsLWd0ay90ZW1wbGF0ZSB8ICAyICstCiAyIGZpbGVz IGNoYW5nZWQsIDMwIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKIGNyZWF0ZSBtb2RlIDEw MDY0NCBlZCAzNSAoZGVsdGEgMSksIHBhY2stcmV1c2VkIDAKCmRpZmYgLS1naXQgYS9lZCAzNSAo ZGVsdGEgMSksIHBhY2stcmV1c2VkIDAgYi9lZCAzNSAoZGVsdGEgMSksIHBhY2stcmV1c2VkIDAK bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjNmOGM2ODg1YjJkCi0tLSAv ZGV2L251bGwKKysrIGIvZWQgMzUgKGRlbHRhIDEpLCBwYWNrLXJldXNlZCAwCQpAQCAtMCwwICsx LDI5IEBACisbWzMzbWNvbW1pdCBmMTBhYzkzZDQwMDJkYTNjOTQzZTU4MmJkNjU2ZDRjZGM3ZDYx YWRiG1ttG1szM20gKBtbbRtbMTszNm1IRUFEG1ttG1szM20pG1ttCitBdXRob3I6IE5hZmlzIDxt bmFiaWQuMjVAb3V0bG9vay5jb20+CitEYXRlOiAgIFRodSBBcHIgMzAgMTM6NDY6MTYgMjAyMCAr MDYwMAorCisgICAgeGRnLWRlc2t0b3AtcG9ydGFsLWd0azogdXBkYXRlIHRvIDEuNy4xLgorICAg IAorICAgIFtjaSBza2lwXQorCisbWzFtZGlmZiAtLWdpdCBhL3NyY3BrZ3MveGRnLWRlc2t0b3At cG9ydGFsLWd0ay90ZW1wbGF0ZSBiL3NyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFsLWd0ay90ZW1w bGF0ZRtbbQorG1sxbWluZGV4IGRlZTBlNDYzMzguLmM3MTFhZDE1MzMgMTAwNjQ0G1ttCisbWzFt LS0tIGEvc3JjcGtncy94ZGctZGVza3RvcC1wb3J0YWwtZ3RrL3RlbXBsYXRlG1ttCisbWzFtKysr IGIvc3JjcGtncy94ZGctZGVza3RvcC1wb3J0YWwtZ3RrL3RlbXBsYXRlG1ttCisbWzM2bUBAIC0x LDYgKzEsNiBAQBtbbQorICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3hkZy1kZXNrdG9wLXBvcnRhbC1n dGsnG1ttCisgcGtnbmFtZT14ZGctZGVza3RvcC1wb3J0YWwtZ3RrG1ttCisbWzMxbS12ZXJzaW9u PTEuNi4wG1ttCisbWzMybSsbW20bWzMybXZlcnNpb249MS43LjEbW20KKyByZXZpc2lvbj0xG1tt CisgYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZRtbbQorIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNv bmZpZyBsaWJ4c2x0IGdsaWItZGV2ZWwgeGRnLWRlc2t0b3AtcG9ydGFsIGdldHRleHQiG1ttCisb WzM2bUBAIC0xMiw3ICsxMiw3IEBAG1ttIBtbbW1haW50YWluZXI9IkR1bmNhZW4gPGR1bmNhZW5A dm9pZGxpbnV4Lm9yZz4iG1ttCisgbGljZW5zZT0iTEdQTC0yLjEtb3ItbGF0ZXIiG1ttCisgaG9t ZXBhZ2U9Imh0dHBzOi8vZ2l0aHViLmNvbS9mbGF0cGFrL3hkZy1kZXNrdG9wLXBvcnRhbC1ndGsi G1ttCisgZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20vZmxhdHBhay8ke3BrZ25hbWV9L3Jl bGVhc2VzL2Rvd25sb2FkLyR7dmVyc2lvbn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIb W20KKxtbMzFtLWNoZWNrc3VtPTk1NmZkMTY2MDgyNDdlNzExOWQ0YzZkOTVhNmRjNjU3OGRjZTI1 N2QyZjI3MmQwM2IzNDk4NTcyMjU3ZTJmNzYbW20KKxtbMzJtKxtbbRtbMzJtY2hlY2tzdW09YjZm NmQyODQ1MWU4OTQ4OGRjMTEyMWJlOTM1NWYwNjY4NjU0NmY4NjliOGQxYTJkNjA3YzJmNjNiYmQ4 YmI1ZRtbbQorIBtbbQorIHBvc3RfaW5zdGFsbCgpIHsbW20KKyAJcm0gLXJmICIke0RFU1RESVJ9 L3Vzci9saWIvc3lzdGVtZCIbW20KZGlmZiAtLWdpdCBhL3NyY3BrZ3MveGRnLWRlc2t0b3AtcG9y dGFsLWd0ay90ZW1wbGF0ZSBiL3NyY3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFsLWd0ay90ZW1wbGF0 ZQppbmRleCBkZWUwZTQ2MzM4Ni4uNTU4Yzc1ZjUzOWQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MveGRn LWRlc2t0b3AtcG9ydGFsLWd0ay90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3hkZy1kZXNrdG9wLXBv cnRhbC1ndGsvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd4 ZGctZGVza3RvcC1wb3J0YWwtZ3RrJwogcGtnbmFtZT14ZGctZGVza3RvcC1wb3J0YWwtZ3RrCiB2 ZXJzaW9uPTEuNi4wCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1nbnUtY29u ZmlndXJlCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgbGlieHNsdCBnbGliLWRldmVsIHhk Zy1kZXNrdG9wLXBvcnRhbCBnZXR0ZXh0IgogbWFrZWRlcGVuZHM9ImZsYXRwYWstZGV2ZWwgZ3Rr KzMtZGV2ZWwgbGlieHNsdC1kZXZlbCBsaWJnbGliLWRldmVsCgpGcm9tIGU0NjEwM2U5Yjc5Yjc1 MTEzNzFjNDBiODQzODYwMWY3YThkZjY0YWUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 IE5hZmlzIDxtbmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFRodSwgMzAgQXByIDIwMjAgMDI6 NDk6MTMgKzA2MDAKU3ViamVjdDogW1BBVENIIDI4LzM2XSBjaGVlc2U6IHJlYnVpbGQgYWdhaW5z dCBsaWJnbm9tZS1kZXNrdG9wLTMuc28uMTkKCltjaSBza2lwXQotLS0KIHNyY3BrZ3MvY2hlZXNl L3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0 aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9jaGVlc2UvdGVtcGxhdGUgYi9zcmNwa2dzL2No ZWVzZS90ZW1wbGF0ZQppbmRleCA3YTU2YmEwMzlmYi4uMDM3Y2RhNDljOTggMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvY2hlZXNlL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvY2hlZXNlL3RlbXBsYXRlCkBA IC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnY2hlZXNlJwogcGtnbmFtZT1jaGVl c2UKIHZlcnNpb249My4zNC4wCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1t ZXNvbgogYnVpbGRfaGVscGVyPSJnaXIiCiBjb25maWd1cmVfYXJncz0iLURndGtfZG9jPSQodm9w dF9pZiBndGtfZG9jICd0cnVlJyAnZmFsc2UnKQoKRnJvbSA4NTAwOTc1MmZkYzUyNjViNTAwNmNm OWU0ZDUxZjg0N2IwMTU2NjhjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8 bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUaHUsIDMwIEFwciAyMDIwIDAyOjM0OjU0ICsw NjAwClN1YmplY3Q6IFtQQVRDSCAyOS8zNl0gZ25vbWUtYm9va3M6IHJlYnVpbGQgYWdhaW5zdCBs aWJnbm9tZS1kZXNrdG9wLTMuc28uMTkKCltjaSBza2lwXQotLS0KIHNyY3BrZ3MvZ25vbWUtYm9v a3MvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVs ZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWJvb2tzL3RlbXBsYXRlIGIvc3Jj cGtncy9nbm9tZS1ib29rcy90ZW1wbGF0ZQppbmRleCAxMTRiOWUwMzRjMi4uMWQ0OTc0ZmUxODMg MTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25vbWUtYm9va3MvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9n bm9tZS1ib29rcy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3Ig J2dub21lLWJvb2tzJwogcGtnbmFtZT1nbm9tZS1ib29rcwogdmVyc2lvbj0zLjM0LjAKLXJldmlz aW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogYnVpbGRfc3R5bGU9bWVzb24K IGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyB2YWxhIGdsaWItZGV2ZWwgbGlicnN2ZyBkb2Ni b29rLXhzbCBsaWJ4c2x0CgpGcm9tIDk1ZDVlNjdiYWM1MjM0ZjljNjlmODgzNDFiOWI1MzFmMzhm OGIxNDkgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxtbmFiaWQuMjVAb3V0 bG9vay5jb20+CkRhdGU6IFRodSwgMzAgQXByIDIwMjAgMDI6NDc6MzEgKzA2MDAKU3ViamVjdDog W1BBVENIIDMwLzM2XSBnbm9tZS1jaGFyYWN0ZXJzOiByZWJ1aWxkIGFnYWluc3QKIGxpYmdub21l LWRlc2t0b3AtMy5zby4xOQoKW2NpIHNraXBdCi0tLQogc3JjcGtncy9nbm9tZS1jaGFyYWN0ZXJz L3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0 aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbm9tZS1jaGFyYWN0ZXJzL3RlbXBsYXRlIGIv c3JjcGtncy9nbm9tZS1jaGFyYWN0ZXJzL3RlbXBsYXRlCmluZGV4IDg5ODY4ZjRiYzA0Li5hYzI2 NGU1MWE2YSAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1jaGFyYWN0ZXJzL3RlbXBsYXRlCisr KyBiL3NyY3BrZ3MvZ25vbWUtY2hhcmFjdGVycy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMg VGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLWNoYXJhY3RlcnMnCiBwa2duYW1lPWdub21lLWNoYXJh Y3RlcnMKIHZlcnNpb249My4zNC4wCi1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHls ZT1tZXNvbgogYnVpbGRfaGVscGVyPSJnaXIiCiBob3N0bWFrZWRlcGVuZHM9ImdldHRleHQgZ2pz IGdsaWItZGV2ZWwgaXRzdG9vbCBwa2ctY29uZmlnIgoKRnJvbSAyZGM4YWVkNjIyNDIxYzViNGNj ZTNjMDEwYjQ3ZmEzN2IzODBlMGFjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZp cyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUaHUsIDMwIEFwciAyMDIwIDAyOjUyOjEy ICswNjAwClN1YmplY3Q6IFtQQVRDSCAzMS8zNl0gZ25vbWUtY2xvY2tzOiByZWJ1aWxkIGFnYWlu c3QgbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5CgpbY2kgc2tpcF0KLS0tCiBzcmNwa2dzL2dub21l LWNsb2Nrcy90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwg MSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ25vbWUtY2xvY2tzL3RlbXBsYXRl IGIvc3JjcGtncy9nbm9tZS1jbG9ja3MvdGVtcGxhdGUKaW5kZXggM2UwNDliNDJmYjEuLmM2N2Zi NjM0Y2I4IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dub21lLWNsb2Nrcy90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL2dub21lLWNsb2Nrcy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUg ZmlsZSBmb3IgJ2dub21lLWNsb2NrcycKIHBrZ25hbWU9Z25vbWUtY2xvY2tzCiB2ZXJzaW9uPTMu MzYuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfaGVscGVyPSJnaXIiCiBidWlsZF9z dHlsZT1tZXNvbgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGludGx0b29sIGl0c3Rvb2wg Z2xpYi1kZXZlbCB2YWxhIgoKRnJvbSBlMTE4MGMzZDAxZTQ1MjE2ZDRkMzQzMGIxYjFjM2FlODI4 NDIzNWVjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91 dGxvb2suY29tPgpEYXRlOiBUaHUsIDMwIEFwciAyMDIwIDAyOjU1OjE4ICswNjAwClN1YmplY3Q6 IFtQQVRDSCAzMi8zNl0gZ25vbWUtZG9jdW1lbnRzOiByZWJ1aWxkIGFnYWluc3QKIGxpYmdub21l LWRlc2t0b3AtMy5zby4xOQoKW2NpIHNraXBdCi0tLQogc3JjcGtncy9nbm9tZS1kb2N1bWVudHMv dGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRp b24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWRvY3VtZW50cy90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvZ25vbWUtZG9jdW1lbnRzL3RlbXBsYXRlCmluZGV4IDk3YjUzZDYzNWQ3Li43ZTQ1Yjgy NWU3MSAxMDA2NDQKLS0tIGEvc3JjcGtncy9nbm9tZS1kb2N1bWVudHMvdGVtcGxhdGUKKysrIGIv c3JjcGtncy9nbm9tZS1kb2N1bWVudHMvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBs YXRlIGZpbGUgZm9yICdnbm9tZS1kb2N1bWVudHMnCiBwa2duYW1lPWdub21lLWRvY3VtZW50cwog dmVyc2lvbj0zLjM0LjAKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX2hlbHBlcj0iZ2ly IgogYnVpbGRfc3R5bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0iZG9jYm9vay14c2wgZ2V0dGV4 dCBpdHN0b29sIHBrZy1jb25maWcgZ2xpYi1kZXZlbCBsaWJ4c2x0IGdkay1waXhidWYKCkZyb20g YjA4MGE1ZTNjNGZmNDNlNGNmNWZjNzc3MTIyZjVjNzJhNDgwMDBmNCBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKRnJvbTogTmFmaXMgPG1uYWJpZC4yNUBvdXRsb29rLmNvbT4KRGF0ZTogVGh1LCAz MCBBcHIgMjAyMCAwMjo1Njo1NiArMDYwMApTdWJqZWN0OiBbUEFUQ0ggMzMvMzZdIGdub21lLWZv bnQtdmlld2VyOiByZWJ1aWxkIGFnYWluc3QKIGxpYmdub21lLWRlc2t0b3AtMy5zby4xOQoKW2Np IHNraXBdCi0tLQogc3JjcGtncy9nbm9tZS1mb250LXZpZXdlci90ZW1wbGF0ZSB8IDIgKy0KIDEg ZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvZ25vbWUtZm9udC12aWV3ZXIvdGVtcGxhdGUgYi9zcmNwa2dzL2dub21lLWZvbnQt dmlld2VyL3RlbXBsYXRlCmluZGV4IDZkMDM1MzY2ZDQ0Li5mNzRmY2JjYjAwMCAxMDA2NDQKLS0t IGEvc3JjcGtncy9nbm9tZS1mb250LXZpZXdlci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dub21l LWZvbnQtdmlld2VyL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZv ciAnZ25vbWUtZm9udC12aWV3ZXInCiBwa2duYW1lPWdub21lLWZvbnQtdmlld2VyCiB2ZXJzaW9u PTMuMzQuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9bWVzb24KIGhvc3Rt YWtlZGVwZW5kcz0icGtnLWNvbmZpZyBnbGliLWRldmVsIgogbWFrZWRlcGVuZHM9ImZvbnRjb25m aWctZGV2ZWwgZnJlZXR5cGUtZGV2ZWwgZ2xpYi1kZXZlbCBndGsrMy1kZXZlbAoKRnJvbSAyOWU4 MmFkYmY4ZGRmMjZkNzAzZGY1M2QzMmIzNDM5M2EwYTY1YTFlIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBUaHUsIDMwIEFw ciAyMDIwIDAyOjU3OjU3ICswNjAwClN1YmplY3Q6IFtQQVRDSCAzNC8zNl0gdG90ZW06IHJlYnVp bGQgYWdhaW5zdCBsaWJnbm9tZS1kZXNrdG9wLTMuc28uMTkKCltjaSBza2lwXQotLS0KIHNyY3Br Z3MvdG90ZW0vdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyks IDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3RvdGVtL3RlbXBsYXRlIGIvc3Jj cGtncy90b3RlbS90ZW1wbGF0ZQppbmRleCA4MTUyMmIzMTQ4OC4uZTQxODY2MzIxNTMgMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3MvdG90ZW0vdGVtcGxhdGUKKysrIGIvc3JjcGtncy90b3RlbS90ZW1wbGF0 ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3RvdGVtJwogcGtnbmFtZT10 b3RlbQogdmVyc2lvbj0zLjM0LjEKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxl PW1lc29uCiBidWlsZF9oZWxwZXI9ImdpciIKIGNvbmZpZ3VyZV9hcmdzPSItRGVuYWJsZS1weXRo b249bm8gLURlbmFibGUtbmF1dGlsdXM9eWVzCgpGcm9tIGJmYTYyYjZiZjVkYjcyN2MzNmQ0YTY5 NzgxMjA3YWRlZDBjZjQzNGYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hZmlzIDxt bmFiaWQuMjVAb3V0bG9vay5jb20+CkRhdGU6IFRodSwgMzAgQXByIDIwMjAgMDM6MDQ6MDcgKzA2 MDAKU3ViamVjdDogW1BBVENIIDM1LzM2XSBsdXRyaXM6IHJlYnVpbGQgYWdhaW5zdCBsaWJnbm9t ZS1kZXNrdG9wLTMuc28uMTkKCltjaSBza2lwXQotLS0KIHNyY3BrZ3MvbHV0cmlzL3RlbXBsYXRl IHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9sdXRyaXMvdGVtcGxhdGUgYi9zcmNwa2dzL2x1dHJpcy90ZW1w bGF0ZQppbmRleCBmODAxODQ0Yzc3YS4uMzk2MjI5YWU2MjcgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mv bHV0cmlzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbHV0cmlzL3RlbXBsYXRlCkBAIC0xLDcgKzEs NyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbHV0cmlzJwogcGtnbmFtZT1sdXRyaXMKIHZlcnNp b249MC41LjYKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGFyY2hzPW5vYXJjaAogYnVpbGRfc3R5 bGU9cHl0aG9uMy1tb2R1bGUKIGJ1aWxkX2hlbHBlcj0iZ2lyIgoKRnJvbSBlNDA5YjRiYTRmNGM4 OGRiYmJmNWNmM2FiNWY2NDY0NjA2OTBkYmVkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiBOYWZpcyA8bW5hYmlkLjI1QG91dGxvb2suY29tPgpEYXRlOiBXZWQsIDI5IEFwciAyMDIwIDE2 OjA4OjIzICswNjAwClN1YmplY3Q6IFtQQVRDSCAzNi8zNl0gZXZpbmNlOiByZWJ1aWxkIGFnYWlu c3QgbGliZ25vbWUtZGVza3RvcC0zLnNvLjE5CgpbY2kgc2tpcF0KLS0tCiBzcmNwa2dzL2V2aW5j ZS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxl dGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZXZpbmNlL3RlbXBsYXRlIGIvc3JjcGtncy9l dmluY2UvdGVtcGxhdGUKaW5kZXggYzMzN2EyNjZjZTAuLjE3MzA3MWE5Y2FkIDEwMDY0NAotLS0g YS9zcmNwa2dzL2V2aW5jZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2V2aW5jZS90ZW1wbGF0ZQpA QCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2V2aW5jZScKIHBrZ25hbWU9ZXZp bmNlCiB2ZXJzaW9uPTMuMzYuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfaGVscGVy PSJnaXIiCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iJCh2b3B0 X2VuYWJsZSBnaXIgaW50cm9zcGVjdGlvbikgLS1kaXNhYmxlLXNjaGVtYXMtY29tcGlsZQo= --===============8440972918407827596==--