ZGlmZiAtLWdpdCBhL3J1bnRpbWUvYXV0b2xvYWQvUkVBRE1FLnR4dCBiL3J1bnRpbWUvYXV0b2xvYWQvUkVBRE1FLnR4dAppbmRleCAwYzdmY2ZlLi4yMDM4ZmEyIDEwMDY0NAotLS0gYS9ydW50aW1lL2F1dG9sb2FkL1JFQURNRS50eHQKKysrIGIvcnVudGltZS9hdXRvbG9hZC9SRUFETUUudHh0CkBAIC00LDYgKzQsMTIgQEAKIGF1dG9tYXRpY2FsbHkgd2hlbiB0aGUgZnVuY3Rpb24gaXMgaW52b2tlZC4gIFNlZSAiOmhlbHAgYXV0b2xvYWQiLgogCiBnemlwLnZpbQlmb3IgZWRpdGluZyBjb21wcmVzc2VkIGZpbGVzCituZXRydy52aW0JYnJvd3NpbmcgKHJlbW90ZSkgZGlyZWN0b3JpZXMgYW5kIGVkaXRpbmcgcmVtb3RlIGZpbGVzCit0YXIudmltCQlicm93c2luZyB0YXIgZmlsZXMKK3ppcC52aW0JCWJyb3dzaW5nIHppcCBmaWxlcwogCiBPY2N1bHQgY29tcGxldGlvbiBmaWxlczoKLWNjb21wbGV0ZS52aW0JQworY2NvbXBsZXRlLnZpbQkJQworY3NzY29tcGxldGUudmltCQlIVE1MIC8gQ1NTCitodG1sY29tcGxldGUudmltCUhUTUwKKwpkaWZmIC0tZ2l0IGEvcnVudGltZS9hdXRvbG9hZC9jY29tcGxldGUudmltIGIvcnVudGltZS9hdXRvbG9hZC9jY29tcGxldGUudmltCmluZGV4IGM3MTg1MjUuLmEyMjEwZDcgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvYXV0b2xvYWQvY2NvbXBsZXRlLnZpbQorKysgYi9ydW50aW1lL2F1dG9sb2FkL2Njb21wbGV0ZS52aW0KQEAgLTEsNyArMSw3IEBACiAiIFZpbSBjb21wbGV0aW9uIHNjcmlwdAogIiBMYW5ndWFnZToJQwogIiBNYWludGFpbmVyOglCcmFtIE1vb2xlbmFhciA8QnJhbUB2aW0ub3JnPgotIiBMYXN0IENoYW5nZToJMjAwNSBTZXAgMTMKKyIgTGFzdCBDaGFuZ2U6CTIwMDUgT2N0IDA2CiAKIAogIiBUaGlzIGZ1bmN0aW9uIGlzIHVzZWQgZm9yIHRoZSAnb21uaWZ1bmMnIG9wdGlvbi4KQEAgLTEwLDI3ICsxMCw1MiBAQAogICAgICIgTG9jYXRlIHRoZSBzdGFydCBvZiB0aGUgaXRlbSwgaW5jbHVkaW5nICIuIiBhbmQgIi0+Ii4KICAgICBsZXQgbGluZSA9IGdldGxpbmUoJy4nKQogICAgIGxldCBzdGFydCA9IGNvbCgnLicpIC0gMQorICAgIGxldCBsYXN0d29yZCA9IC0xCiAgICAgd2hpbGUgc3RhcnQgPiAwCi0gICAgICBpZiBsaW5lW3N0YXJ0IC0gMV0gPX4gJ1x3XHxcLicKKyAgICAgIGlmIGxpbmVbc3RhcnQgLSAxXSA9fiAnXHcnCisJbGV0IHN0YXJ0IC09IDEKKyAgICAgIGVsc2VpZiBsaW5lW3N0YXJ0IC0gMV0gPX4gJ1wuJworCWlmIGxhc3R3b3JkID09IC0xCisJICBsZXQgbGFzdHdvcmQgPSBzdGFydAorCWVuZGlmCiAJbGV0IHN0YXJ0IC09IDEKICAgICAgIGVsc2VpZiBzdGFydCA+IDEgJiYgbGluZVtzdGFydCAtIDJdID09ICctJyAmJiBsaW5lW3N0YXJ0IC0gMV0gPT0gJz4nCisJaWYgbGFzdHdvcmQgPT0gLTEKKwkgIGxldCBsYXN0d29yZCA9IHN0YXJ0CisJZW5kaWYKIAlsZXQgc3RhcnQgLT0gMgogICAgICAgZWxzZQogCWJyZWFrCiAgICAgICBlbmRpZgogICAgIGVuZHdoaWxlCi0gICAgcmV0dXJuIHN0YXJ0CisKKyAgICAiIFJldHVybiB0aGUgY29sdW1uIG9mIHRoZSBsYXN0IHdvcmQsIHdoaWNoIGlzIGdvaW5nIHRvIGJlIGNoYW5nZWQuCisgICAgIiBSZW1lbWJlciB0aGUgdGV4dCB0aGF0IGNvbWVzIGJlZm9yZSBpdCBpbiBzOnByZXBlbmRlZC4KKyAgICBpZiBsYXN0d29yZCA9PSAtMQorICAgICAgbGV0IHM6cHJlcGVuZGVkID0gJycKKyAgICAgIHJldHVybiBzdGFydAorICAgIGVuZGlmCisgICAgbGV0IHM6cHJlcGVuZGVkID0gc3RycGFydChsaW5lLCBzdGFydCwgbGFzdHdvcmQgLSBzdGFydCkKKyAgICByZXR1cm4gbGFzdHdvcmQKICAgZW5kaWYKIAogICAiIFJldHVybiBsaXN0IG9mIG1hdGNoZXMuCiAKKyAgbGV0IGJhc2UgPSBzOnByZXBlbmRlZCAuIGE6YmFzZQorCiAgICIgU3BsaXQgaXRlbSBpbiB3b3Jkcywga2VlcCBlbXB0eSB3b3JkIGFmdGVyICIuIiBvciAiLT4iLgogICAiICJhYSIgLT4gWydhYSddLCAiYWEuIiAtPiBbJ2FhJywgJyddLCAiYWEuYmIiIC0+IFsnYWEnLCAnYmInXSwgZXRjLgotICBsZXQgaXRlbXMgPSBzcGxpdChhOmJhc2UsICdcLlx8LT4nLCAxKQorICBsZXQgaXRlbXMgPSBzcGxpdChiYXNlLCAnXC5cfC0+JywgMSkKICAgaWYgbGVuKGl0ZW1zKSA8PSAxCisgICAgIiBEb24ndCBkbyBhbnl0aGluZyBmb3IgYW4gZW1wdHkgYmFzZSwgd291bGQgcmVzdWx0IGluIGFsbCB0aGUgdGFncyBpbiB0aGUKKyAgICAiIHRhZ3MgZmlsZS4KKyAgICBpZiBiYXNlID09ICcnCisgICAgICByZXR1cm4gW10KKyAgICBlbmRpZgorCiAgICAgIiBPbmx5IG9uZSBwYXJ0LCBubyAiLiIgb3IgIi0+IjogY29tcGxldGUgZnJvbSB0YWdzIGZpbGUuCiAgICAgIiBXaGVuIGxvY2FsIGNvbXBsZXRpb24gaXMgd2FudGVkIENUUkwtTiB3b3VsZCBoYXZlIGJlZW4gdXNlZC4KLSAgICByZXR1cm4gbWFwKHRhZ2xpc3QoJ14nIC4gYTpiYXNlKSwgJ3Y6dmFsWyJuYW1lIl0nKQorICAgIHJldHVybiBtYXAodGFnbGlzdCgnXicgLiBiYXNlKSwgJ3Y6dmFsWyJuYW1lIl0nKQogICBlbmRpZgogCiAgICIgRmluZCB0aGUgdmFyaWFibGUgaXRlbXNbMF0uCkBAIC04OCwxMCArMTEzLDcgQEAKICAgICBlbmRpZgogICBlbmRpZgogCi0gICIgVGhlIGJhc2V0ZXh0IGlzIHVwIHRvIHRoZSBsYXN0ICIuIiBvciAiLT4iIGFuZCB3b24ndCBiZSBjaGFuZ2VkLiAgVGhlCi0gICIgbWF0Y2hpbmcgbWVtYmVycyBhcmUgY29uY2F0ZW5hdGVkIHRvIHRoaXMuCi0gIGxldCBiYXNldGV4dCA9IG1hdGNoc3RyKGE6YmFzZSwgJy4qXChcLlx8LT5cKScpCi0gIHJldHVybiBtYXAocmVzLCAnYmFzZXRleHQgLiB2OnZhbFsibWF0Y2giXScpCisgIHJldHVybiBtYXAocmVzLCAndjp2YWxbIm1hdGNoIl0nKQogZW5kZnVuYwogCiAiIEZpbmQgY29tcG9zaW5nIHR5cGUgaW4gImxlYWQiIGFuZCBtYXRjaCBpdGVtc1swXSB3aXRoIGl0LgpkaWZmIC0tZ2l0IGEvcnVudGltZS9hdXRvbG9hZC9jc3Njb21wbGV0ZS52aW0gYi9ydW50aW1lL2F1dG9sb2FkL2Nzc2NvbXBsZXRlLnZpbQppbmRleCBlYTUyNzg2Li4yOTNjMzcwIDEwMDY0NAotLS0gYS9ydW50aW1lL2F1dG9sb2FkL2Nzc2NvbXBsZXRlLnZpbQorKysgYi9ydW50aW1lL2F1dG9sb2FkL2Nzc2NvbXBsZXRlLnZpbQpAQCAtMSwxMiArMSwxOSBAQAogIiBWaW0gY29tcGxldGlvbiBzY3JpcHQKICIgTGFuZ3VhZ2U6CUNTUyAyLjEKICIgTWFpbnRhaW5lcjoJTWlrb2xhaiBNYWNob3dza2kgKCBtaWttYWNoIEFUIHdwIERPVCBwbCApCi0iIExhc3QgQ2hhbmdlOgkyMDA1IE9jdCAwMgorIiBMYXN0IENoYW5nZToJMjAwNSBPY3QgOQogCiBmdW5jdGlvbiEgY3NzY29tcGxldGUjQ29tcGxldGVDU1MoZmluZHN0YXJ0LCBiYXNlKQogaWYgYTpmaW5kc3RhcnQKIAkiIFdlIG5lZWQgd2hvbGUgbGluZSB0byBwcm9wZXIgY2hlY2tpbmcKLQlyZXR1cm4gMAorICAgIGxldCBsaW5lID0gZ2V0bGluZSgnLicpCisgICAgbGV0IHN0YXJ0ID0gY29sKCcuJykgLSAxCisJbGV0IGNvbXBsX2JlZ2luID0gY29sKCcuJykgLSAyCisJd2hpbGUgc3RhcnQgPj0gMCAmJiBsaW5lW3N0YXJ0IC0gMV0gPX4gJ1woXGtcfC1cKScKKwkJbGV0IHN0YXJ0IC09IDEKKwllbmR3aGlsZQorCWxldCBiOmNvbXBsX2NvbnRleHQgPSBnZXRsaW5lKCcuJylbMDpjb21wbF9iZWdpbl0KKwlyZXR1cm4gc3RhcnQKIGVsc2UKIAkiIFRoZXJlIGFyZSBmZXcgY2hhcnMgaW1wb3J0YW50IGZvciBjb250ZXh0OgogCSIgXiA7IDogeyB9IC8qICovCkBAIC0xNCwxNCArMjEsMTYgQEAKIAkiIERlcGVuZGluZyBvbiB0aGVpciByZWxhdGl2ZSBwb3NpdGlvbiB0byBjdXJzb3Igd2Ugd2lsbCBub3cgd2hhdCBzaG91bGQKIAkiIGJlIGNvbXBsZXRlZC4gCiAJIiAxLiBpZiBuZWFyZXN0IGFyZSBeIG9yIHsgb3IgOyBjdXJyZW50IHdvcmQgaXMgcHJvcGVydHkKLQkiIDIuIGlmIDogaXQgaXMgdmFsdWUKKwkiIDIuIGlmIDogaXQgaXMgdmFsdWUgKHdpdGggZXhjZXB0aW9uIG9mIHBzZXVkbyB0aGluZ3MpCiAJIiAzLiBpZiB9IHdlIGFyZSBvdXRzaWRlIG9mIGNzcyBkZWZpbml0aW9ucwogCSIgNC4gZm9yIGNvbW1lbnRzIGlnbm9yaW5nIGlzIGJlIHRoZSBlYXNpZXN0IGJ1dCBhc3N1bWUgdGhleSBhcmUgdGhlIHNhbWUKIAkiICAgIGFzIDEuIAogCSIgNS4gaWYgQCBjb21wbGV0ZSBhdC1ydWxlCiAJIiA2LiBpZiAhIGNvbXBsZXRlIGltcG9ydGFudAogCQotCWxldCBsaW5lID0gYTpiYXNlCisJbGV0IGxpbmUgPSBiOmNvbXBsX2NvbnRleHQKKwl1bmxldCEgYjpjb21wbF9jb250ZXh0CisKIAlsZXQgcmVzID0gW10KIAlsZXQgcmVzMiA9IFtdCiAJbGV0IGJvcmRlcnMgPSB7fQpAQCAtNjcsMTkgKzc2LDE5IEBACiAJCWxldCBib3JkZXJzW2V4Y2xhbV0gPSAiZXhjbGFtIgogCWVuZGlmCiAKKwogCWlmIGxlbihib3JkZXJzKSA9PSAwIHx8IGJvcmRlcnNbbWluKGtleXMoYm9yZGVycykpXSA9fiAnXlwob3BlbmJyYWNlXHxzZW1pY29sb25cfG9wZW5jb21tXHxjbG9zZWNvbW1cfHN0eWxlXCkkJwogCQkiIENvbXBsZXRlIHByb3BlcnRpZXMKIAotCQlsZXQgdmFsdWVzID0gc3BsaXQoImF6aW11dGggYmFja2dyb3VuZC1hdHRhY2htZW50IGJhY2tncm91bmQtY29sb3IgYmFja2dyb3VuZC1pbWFnZSBiYWNrZ3JvdW5kLXBvc2l0aW9uIGJhY2tncm91bmQtcmVwZWF0IGJhY2tncm91bmQgYm9yZGVyLWNvbGxhcHNlIGJvcmRlci1jb2xvciBib3JkZXItc3BhY2luZyBib3JkZXItc3R5bGUgYm9yZGVyLXRvcCBib3JkZXItcmlnaHQgYm9yZGVyLWJvdHRvbSBib3JkZXItbGVmdCBib3JkZXItdG9wLWNvbG9yIGJvcmRlci1yaWdodC1jb2xvciBib3JkZXItYm90dG9tLWNvbG9yIGJvcmRlci1sZWZ0LWNvbG9yICBib3JkZXItdG9wLXN0eWxlIGJvcmRlci1yaWdodC1zdHlsZSBib3JkZXItYm90dG9tLXN0eWxlIGJvcmRlci1sZWZ0LXN0eWxlIGJvcmRlci10b3Atd2lkdGggYm9yZGVyLXJpZ2h0LXdpZHRoIGJvcmRlci1ib3R0b20td2lkdGggYm9yZGVyLWxlZnQtd2lkdGggYm9yZGVyLXdpZHRoIGJvcmRlciBib3R0b20gY2FwdGlvbi1zaWRlIGNsZWFyIGNsaXAgY29sb3IgY29udGVudCBjb3VudGVyLWluY3JlbWVudCBjb3VudGVyLXJlc2V0IGN1ZS1hZnRlciBjdWUtYmVmb3JlIGN1ZSBjdXJzb3IgZGlyZWN0aW9uIGRpc3BsYXkgZWxldmF0aW9uIGVtcHR5LWNlbGxzIGZsb2F0IGZvbnQtZmFtaWx5IGZvbnQtc2l6ZSBmb250LXN0eWxlIGZvbnQtdmFyaWFudCBmb250LXdlaWdodCBmb250IGhlaWdodCBsZWZ0IGxldHRlci1zcGFjaW5nIGxpbmUtaGVpZ2h0IGxpc3Qtc3R5bGUtaW1hZ2UgbGlzdC1zdHlsZS1wb3NpdGlvbiBsaXN0LXN0eWxlLXR5cGUgbGlzdC1zdHlsZSBtYXJnaW4tcmlnaHQgbWFyZ2luLWxlZnQgbWFyZ2luLXRvcCBtYXJnaW4tYm90dG9tIG1heC1oZWlnaHQgbWF4LXdpZHRoIG1pbi1oZWlnaHQgbWluLXdpZHRoIG9ycGhhbnMgb3V0bGluZS1jb2xvciBvdXRsaW5lLXN0eWxlIG91dGxpbmUtd2lkdGggb3V0bGluZSBvdmVyZmxvdyBwYWRkaW5nLXRvcCBwYWRkaW5nLXJpZ2h0IHBhZGRpbmctYm90dG9tIHBhZGRpbmctbGVmdCBwYWRkaW5nIHBhZ2UtYnJlYWstYWZ0ZXIgcGFnZS1icmVhay1iZWZvcmUgcGFnZS1icmVhay1pbnNpZGUgcGF1c2UtYWZ0ZXIgcGF1c2UtYmVmb3JlIHBhdXNlIHBpdGNoLXJhbmdlIHBpdGNoIHBsYXktZHVyaW5nIHBvc2l0aW9uIHF1b3RlcyByaWNobmVzcyByaWdodCBzcGVhay1oZWFkZXIgc3BlYWstbnVtZXJhbCBzcGVhay1wdW5jdHVhdGlvbiBzcGVhayBzcGVlY2gtcmF0ZSBzdHJlc3MgdGFibGUtbGF5b3V0IHRleHQtYWxpZ24gdGV4dC1kZWNvcmF0aW9uIHRleHQtaW5kZW50IHRleHQtdHJhbnNmb3JtIHRvcCB1bmljb2RlLWJpZGkgdmVydGljYWwtYWxpZ24gdmlzaWJpbGl0eSB2b2ljZS1mYW1pbHkgdm9sdW1lIHdoaXRlLXNwYWNlIHdpZG93cyB3aWR0aCB3b3JkLXNwYWNpbmcgei1pbmRleCIpCisJCWxldCB2YWx1ZXMgPSBzcGxpdCgiYXppbXV0aCBiYWNrZ3JvdW5kIGJhY2tncm91bmQtYXR0YWNobWVudCBiYWNrZ3JvdW5kLWNvbG9yIGJhY2tncm91bmQtaW1hZ2UgYmFja2dyb3VuZC1wb3NpdGlvbiBiYWNrZ3JvdW5kLXJlcGVhdCBib3JkZXIgYm90dG9tIGJvcmRlci1jb2xsYXBzZSBib3JkZXItY29sb3IgYm9yZGVyLXNwYWNpbmcgYm9yZGVyLXN0eWxlIGJvcmRlci10b3AgYm9yZGVyLXJpZ2h0IGJvcmRlci1ib3R0b20gYm9yZGVyLWxlZnQgYm9yZGVyLXRvcC1jb2xvciBib3JkZXItcmlnaHQtY29sb3IgYm9yZGVyLWJvdHRvbS1jb2xvciBib3JkZXItbGVmdC1jb2xvciAgYm9yZGVyLXRvcC1zdHlsZSBib3JkZXItcmlnaHQtc3R5bGUgYm9yZGVyLWJvdHRvbS1zdHlsZSBib3JkZXItbGVmdC1zdHlsZSBib3JkZXItdG9wLXdpZHRoIGJvcmRlci1yaWdodC13aWR0aCBib3JkZXItYm90dG9tLXdpZHRoIGJvcmRlci1sZWZ0LXdpZHRoIGJvcmRlci13aWR0aCBjYXB0aW9uLXNpZGUgY2xlYXIgY2xpcCBjb2xvciBjb250ZW50IGNvdW50ZXItaW5jcmVtZW50IGNvdW50ZXItcmVzZXQgY3VlIGN1ZS1hZnRlciBjdWUtYmVmb3JlIGN1cnNvciBkaXNwbGF5IGRpcmVjdGlvbiBlbGV2YXRpb24gZW1wdHktY2VsbHMgZmxvYXQgZm9udCBmb250LWZhbWlseSBmb250LXNpemUgZm9udC1zdHlsZSBmb250LXZhcmlhbnQgZm9udC13ZWlnaHQgaGVpZ2h0IGxlZnQgbGV0dGVyLXNwYWNpbmcgbGluZS1oZWlnaHQgbGlzdC1zdHlsZSBsaXN0LXN0eWxlLWltYWdlIGxpc3Qtc3R5bGUtcG9zaXRpb24gbGlzdC1zdHlsZS10eXBlIG1hcmdpbiBtYXJnaW4tcmlnaHQgbWFyZ2luLWxlZnQgbWFyZ2luLXRvcCBtYXJnaW4tYm90dG9tIG1heC1oZWlnaHQgbWF4LXdpZHRoIG1pbi1oZWlnaHQgbWluLXdpZHRoIG9ycGhhbnMgb3V0bGluZSBvdXRsaW5lLWNvbG9yIG91dGxpbmUtc3R5bGUgb3V0bGluZS13aWR0aCBvdmVyZmxvdyBwYWRkaW5nIHBhZGRpbmctdG9wIHBhZGRpbmctcmlnaHQgcGFkZGluZy1ib3R0b20gcGFkZGluZy1sZWZ0IHBhZ2UtYnJlYWstYWZ0ZXIgcGFnZS1icmVhay1iZWZvcmUgcGFnZS1icmVhay1pbnNpZGUgcGF1c2UgcGF1c2UtYWZ0ZXIgcGF1c2UtYmVmb3JlIHBpdGNoIHBpdGNoLXJhbmdlIHBsYXktZHVyaW5nIHBvc2l0aW9uIHF1b3RlcyByaWdodCByaWNobmVzcyBzcGVhayBzcGVhay1oZWFkZXIgc3BlYWstbnVtZXJhbCBzcGVhay1wdW5jdHVhdGlvbiBzcGVlY2gtcmF0ZSBzdHJlc3MgdGFibGUtbGF5b3V0IHRleHQtYWxpZ24gdGV4dC1kZWNvcmF0aW9uIHRleHQtaW5kZW50IHRleHQtdHJhbnNmb3JtIHRvcCB1bmljb2RlLWJpZGkgdmVydGljYWwtYWxpZ24gdmlzaWJpbGl0eSB2b2ljZS1mYW1pbHkgdm9sdW1lIHdoaXRlLXNwYWNlIHdpZHRoIHdpZG93cyB3b3JkLXNwYWNpbmcgei1pbmRleCIpCiAKLQkJbGV0IHByb3BiYXNlID0gbWF0Y2hzdHIobGluZSwgJy5cey19XHplW2EtekEtWi1dKiQnKQogCQlsZXQgZW50ZXJlZF9wcm9wZXJ0eSA9IG1hdGNoc3RyKGxpbmUsICcuXHstfVx6c1thLXpBLVotXSokJykKIAogCQlmb3IgbSBpbiB2YWx1ZXMKIAkJCWlmIG0gPX4/ICdeJy5lbnRlcmVkX3Byb3BlcnR5Ci0JCQkJY2FsbCBhZGQocmVzLCBwcm9wYmFzZSAuIG0uJzogJykKKwkJCQljYWxsIGFkZChyZXMsIG0gLiAnOicpCiAJCQllbHNlaWYgbSA9fj8gZW50ZXJlZF9wcm9wZXJ0eQotCQkJCWNhbGwgYWRkKHJlczIsIHByb3BiYXNlIC4gbS4nOiAnKQorCQkJCWNhbGwgYWRkKHJlczIsIG0gLiAnOicpCiAJCQllbmRpZgogCQllbmRmb3IKIApAQCAtMzE1LDE0ICszMjQsMTMgQEAKIAkJZW5kaWYKIAogCQkiIENvbXBsZXRlIHZhbHVlcwotCQlsZXQgdmFsYmFzZSA9IG1hdGNoc3RyKGxpbmUsICcuXHstfVx6ZVthLXpBLVowLTkjLC4oXy1dKiQnKQogCQlsZXQgZW50ZXJlZF92YWx1ZSA9IG1hdGNoc3RyKGxpbmUsICcuXHstfVx6c1thLXpBLVowLTkjLC4oXy1dKiQnKQogCiAJCWZvciBtIGluIHZhbHVlcwogCQkJaWYgbSA9fj8gJ14nLmVudGVyZWRfdmFsdWUKLQkJCQljYWxsIGFkZChyZXMsIHZhbGJhc2UgLiBtKQorCQkJCWNhbGwgYWRkKHJlcywgbSkKIAkJCWVsc2VpZiBtID1+PyBlbnRlcmVkX3ZhbHVlCi0JCQkJY2FsbCBhZGQocmVzMiwgdmFsYmFzZSAuIG0pCisJCQkJY2FsbCBhZGQocmVzMiwgbSkKIAkJCWVuZGlmCiAJCWVuZGZvcgogCkBAIC0zMzUsMTQgKzM0MywxMyBAQAogCWVsc2VpZiBib3JkZXJzW21pbihrZXlzKGJvcmRlcnMpKV0gPT0gJ2V4Y2xhbScKIAogCQkiIENvbXBsZXRlIHZhbHVlcwotCQlsZXQgaW1wYmFzZSA9IG1hdGNoc3RyKGxpbmUsICcuXHstfSFccypcemVbYS16QS1aIF0qJCcpCiAJCWxldCBlbnRlcmVkX2ltcCA9IG1hdGNoc3RyKGxpbmUsICcuXHstfSFccypcenNbYS16QS1aIF0qJCcpCiAKIAkJbGV0IHZhbHVlcyA9IFsiaW1wb3J0YW50Il0KIAogCQlmb3IgbSBpbiB2YWx1ZXMKIAkJCWlmIG0gPX4/ICdeJy5lbnRlcmVkX2ltcAotCQkJCWNhbGwgYWRkKHJlcywgaW1wYmFzZSAuIG0pCisJCQkJY2FsbCBhZGQocmVzLCBtKQogCQkJZW5kaWYKIAkJZW5kZm9yCiAKQEAgLTM4OCw5ICszOTUsOSBAQAogCiAJCQlmb3IgbSBpbiB2YWx1ZXMKIAkJCQlpZiBtID1+PyAnXicuZW50ZXJlZF9hdHJ1bGVhZnRlcgotCQkJCQljYWxsIGFkZChyZXMsIGF0cnVsZWFmdGVyYmFzZSAuIG0pCisJCQkJCWNhbGwgYWRkKHJlcywgbSkKIAkJCQllbHNlaWYgbSA9fj8gZW50ZXJlZF9hdHJ1bGVhZnRlcgotCQkJCQljYWxsIGFkZChyZXMyLCBhdHJ1bGVhZnRlcmJhc2UgLiBtKQorCQkJCQljYWxsIGFkZChyZXMyLCBtKQogCQkJCWVuZGlmCiAJCQllbmRmb3IKIApAQCAtNDAwLDE0ICs0MDcsMTMgQEAKIAogCQlsZXQgdmFsdWVzID0gWyJjaGFyc2V0IiwgInBhZ2UiLCAibWVkaWEiLCAiaW1wb3J0IiwgImZvbnQtZmFjZSJdCiAKLQkJbGV0IGF0cnVsZWJhc2UgPSBtYXRjaHN0cihsaW5lLCAnLipAXHplW2EtekEtWiAtXSokJykKIAkJbGV0IGVudGVyZWRfYXRydWxlID0gbWF0Y2hzdHIobGluZSwgJy4qQFx6c1thLXpBLVotXSokJykKIAogCQlmb3IgbSBpbiB2YWx1ZXMKIAkJCWlmIG0gPX4/ICdeJy5lbnRlcmVkX2F0cnVsZQotCQkJCWNhbGwgYWRkKHJlcywgYXRydWxlYmFzZSAuIG0uJyAnKQorCQkJCWNhbGwgYWRkKHJlcywgbSAuJyAnKQogCQkJZWxzZWlmIG0gPX4/IGVudGVyZWRfYXRydWxlCi0JCQkJY2FsbCBhZGQocmVzMiwgYXRydWxlYmFzZSAuIG0uJyAnKQorCQkJCWNhbGwgYWRkKHJlczIsIG0gLicgJykKIAkJCWVuZGlmCiAJCWVuZGZvcgogCmRpZmYgLS1naXQgYS9ydW50aW1lL2F1dG9sb2FkL2h0bWxjb21wbGV0ZS52aW0gYi9ydW50aW1lL2F1dG9sb2FkL2h0bWxjb21wbGV0ZS52aW0KaW5kZXggOWRkNTgzMC4uYjNkYWUyZCAxMDA2NDQKLS0tIGEvcnVudGltZS9hdXRvbG9hZC9odG1sY29tcGxldGUudmltCisrKyBiL3J1bnRpbWUvYXV0b2xvYWQvaHRtbGNvbXBsZXRlLnZpbQpAQCAtMSwzOSArMSw3NiBAQAogIiBWaW0gY29tcGxldGlvbiBzY3JpcHQKICIgTGFuZ3VhZ2U6CVhIVE1MIDEuMCBTdHJpY3QKICIgTWFpbnRhaW5lcjoJTWlrb2xhaiBNYWNob3dza2kgKCBtaWttYWNoIEFUIHdwIERPVCBwbCApCi0iIExhc3QgQ2hhbmdlOgkyMDA1IFNlcCAyMworIiBMYXN0IENoYW5nZToJMjAwNSBPY3QgOQogCiBmdW5jdGlvbiEgaHRtbGNvbXBsZXRlI0NvbXBsZXRlVGFncyhmaW5kc3RhcnQsIGJhc2UpCiAgIGlmIGE6ZmluZHN0YXJ0CiAgICAgIiBsb2NhdGUgdGhlIHN0YXJ0IG9mIHRoZSB3b3JkCiAgICAgbGV0IGxpbmUgPSBnZXRsaW5lKCcuJykKICAgICBsZXQgc3RhcnQgPSBjb2woJy4nKSAtIDEKLSAgICB3aGlsZSBzdGFydCA+PSAwICYmIGxpbmVbc3RhcnQgLSAxXSAhfiAnPCcKLSAgICAgIGxldCBzdGFydCAtPSAxCisJbGV0IGNvbXBsX2JlZ2luID0gY29sKCcuJykgLSAyCisgICAgd2hpbGUgc3RhcnQgPj0gMCAmJiBsaW5lW3N0YXJ0IC0gMV0gPX4gJ1woXGtcfFs6Li1dXCknCisJCWxldCBzdGFydCAtPSAxCiAgICAgZW5kd2hpbGUKLQlpZiBzdGFydCA8IDAKKwlpZiBzdGFydCA+PSAwICYmIGxpbmVbc3RhcnQgLSAxXSA9fiAnJicKKwkJbGV0IGI6ZW50aXRpZXNjb21wbCA9IDEKKwkJbGV0IGI6Y29tcGxfY29udGV4dCA9ICcnCisJCXJldHVybiBzdGFydAorCWVuZGlmCisJbGV0IHN0eWxlc3RhcnQgPSBzZWFyY2hwYWlyKCc8c3R5bGVcPicsICcnLCAnPFwvc3R5bGVcPicsICJiblciKQorCWxldCBzdHlsZWVuZCAgID0gc2VhcmNocGFpcignPHN0eWxlXD4nLCAnJywgJzxcL3N0eWxlXD4nLCAiblciKQorCWlmIHN0eWxlc3RhcnQgIT0gMCAmJiBzdHlsZWVuZCAhPSAwIAogCQlsZXQgY3VycG9zID0gbGluZSgnLicpCi0JCWxldCBzdHlsZXN0YXJ0ID0gc2VhcmNocGFpcignPHN0eWxlXD4nLCAnJywgJzxcL3N0eWxlXD4nLCAiYm5XIikKLQkJbGV0IHN0eWxlZW5kICAgPSBzZWFyY2hwYWlyKCc8c3R5bGVcPicsICcnLCAnPFwvc3R5bGVcPicsICJuVyIpCi0JCWlmIHN0eWxlc3RhcnQgIT0gMCAmJiBzdHlsZWVuZCAhPSAwIAotCQkJaWYgc3R5bGVzdGFydCA8PSBjdXJwb3MgJiYgc3R5bGVlbmQgPj0gY3VycG9zCi0JCQkJbGV0IGI6Y3NzY29tcGwgPSAxCi0JCQkJbGV0IHN0YXJ0ID0gMAotCQkJZW5kaWYKKwkJaWYgc3R5bGVzdGFydCA8PSBjdXJwb3MgJiYgc3R5bGVlbmQgPj0gY3VycG9zCisJCQlsZXQgc3RhcnQgPSBjb2woJy4nKSAtIDEKKwkJCWxldCBiOmNzc2NvbXBsID0gMQorCQkJd2hpbGUgc3RhcnQgPj0gMCAmJiBsaW5lW3N0YXJ0IC0gMV0gPX4gJ1woXGtcfC1cKScKKwkJCQlsZXQgc3RhcnQgLT0gMQorCQkJZW5kd2hpbGUKIAkJZW5kaWYKIAllbmRpZgorCWlmICFleGlzdHMoImI6Y3NzY29tcGwiKQorCQlsZXQgYjpjb21wbF9jb250ZXh0ID0gZ2V0bGluZSgnLicpWzA6KGNvbXBsX2JlZ2luKV0KKwkJbGV0IGI6Y29tcGxfY29udGV4dCA9IG1hdGNoc3RyKGI6Y29tcGxfY29udGV4dCwgJy4qPFx6cy4qJykKKwllbHNlCisJCWxldCBiOmNvbXBsX2NvbnRleHQgPSBnZXRsaW5lKCcuJylbMDpjb21wbF9iZWdpbl0KKwllbmRpZgogICAgIHJldHVybiBzdGFydAogICBlbHNlCisJIiBJbml0aWFsaXplIGJhc2UgcmV0dXJuIGxpc3RzCisgICAgbGV0IHJlcyA9IFtdCisgICAgbGV0IHJlczIgPSBbXQorCSIgYTpiYXNlIGlzIHZlcnkgc2hvcnQgLSB3ZSBuZWVkIGNvbnRleHQKKwlsZXQgY29udGV4dCA9IGI6Y29tcGxfY29udGV4dAorCXVubGV0ISBiOmNvbXBsX2NvbnRleHQKIAkiIENoZWNrIGlmIHdlIHNob3VsZCBkbyBDU1MgY29tcGxldGlvbiBpbnNpZGUgb2YgPHN0eWxlPiB0YWcKIAlpZiBleGlzdHMoImI6Y3NzY29tcGwiKQogCQl1bmxldCEgYjpjc3Njb21wbAotCQlyZXR1cm4gY3NzY29tcGxldGUjQ29tcGxldGVDU1MoMCwgYTpiYXNlKQorCQlyZXR1cm4gY3NzY29tcGxldGUjQ29tcGxldGVDU1MoMCwgY29udGV4dCkKIAllbmRpZgotCWlmIGE6YmFzZSA9fiAnPicKLQkJIiBHZW5lcmFsbHkgaWYgYTpiYXNlIGNvbnRhaW5zID4gaXQgbWVhbnMgd2UgYXJlIG91dHNpZGUgb2YgdGFnIGFuZAorCSIgTWFrZSBlbnRpdGllcyBjb21wbGV0aW9uCisJaWYgZXhpc3RzKCJiOmVudGl0aWVzY29tcGwiKQorCQl1bmxldCEgYjplbnRpdGllc2NvbXBsCisKKwkJIiBWZXJ5LCB2ZXJ5IGxvbmcgbGluZQorICAgICAgICBsZXQgdmFsdWVzID0gWyJBRWxpZyIsICJBYWN1dGUiLCAiQWNpcmMiLCAiQWdyYXZlIiwgIkFscGhhIiwgIkFyaW5nIiwgIkF0aWxkZSIsICJBdW1sIiwgIkJldGEiLCAiQ2NlZGlsIiwgIkNoaSIsICJEYWdnZXIiLCAiRGVsdGEiLCAiRVRIIiwgIkVhY3V0ZSIsICJFY2lyYyIsICJFZ3JhdmUiLCAiRXBzaWxvbiIsICJFdGEiLCAiRXVtbCIsICJHYW1tYSIsICJJYWN1dGUiLCAiSWNpcmMiLCAiSWdyYXZlIiwgIklvdGEiLCAiSXVtbCIsICJLYXBwYSIsICJMYW1iZGEiLCAiTXUiLCAiTnRpbGRlIiwgIk51IiwgIk9FbGlnIiwgIk9hY3V0ZSIsICJPY2lyYyIsICJPZ3JhdmUiLCAiT21lZ2EiLCAiT21pY3JvbiIsICJPc2xhc2giLCAiT3RpbGRlIiwgIk91bWwiLCAiUGhpIiwgIlBpIiwgIlByaW1lIiwgIlBzaSIsICJSaG8iLCAiU2Nhcm9uIiwgIlNpZ21hIiwgIlRIT1JOIiwgIlRJVFkiLCAiVGF1IiwgIlRoZXRhIiwgIlVhY3V0ZSIsICJVY2lyYyIsICJVZ3JhdmUiLCAiVXBzaWxvbiIsICJVdW1sIiwgIlhpIiwgIllhY3V0ZSIsICJZdW1sIiwgIlpldGEiLCAiYWFjdXRlIiwgImFjaXJjIiwgImFjdXRlIiwgImFlbGlnIiwgImFncmF2ZSIsICJhbGVmc3ltIiwgImFscGhhIiwgImFtcCIsICJhbmQiLCAiYW5nIiwgImFwb3MiLCAiYXJpbmciLCAiYXN5bXAiLCAiYXRpbGRlIiwgImF1bWwiLCAiYmRxdW8iLCAiYmV0YSIsICJicnZiYXIiLCAiYnVsbCIsICJjYXAiLCAiY2NlZGlsIiwgImNlZGlsIiwgImNlbnQiLCAiY2hpIiwgImNpcmMiLCAiY2x1YnMiLCAiY29weSIsICJjb25nIiwgImNyYXJyIiwgImN1cCIsICJjdXJyZW4iLCAiZEFyciIsICJkYWdnZXIiLCAiZGFyciIsICJkZWciLCAiZGVsdGEiLCAiZGlhbXMiLCAiZGl2aWRlIiwgImVhY3V0ZSIsICJlY2lyYyIsICJlZ3JhdmUiLCAiZW1wdHkiLCAiZW5zcCIsICJlbXNwIiwgImVwc2lsb24iLCAiZXF1aXYiLCAiZXRhIiwgImV0aCIsICJldXJvIiwgImV1bWwiLCAiZXhpc3QiLCAiZm5vZiIsICJmb3JhbGwiLCAiZnJhYzEyIiwgImZyYWMxNCIsICJmcmFjMzQiLCAiZnJhc2wiLCAiZ3QiLCAiZ2FtbWEiLCAiZ2UiLCAiaEFyciIsICJoYXJyIiwgImhlYXJ0cyIsICJoZWxsaXAiLCAiaWFjdXRlIiwgImljaXJjIiwgImlleGNsIiwgImlncmF2ZSIsICJpbWFnZSIsICJpbmZpbiIsICJpbnQiLCAiaW90YSIsICJpcXVlc3QiLCAiaXNpbiIsICJpdW1sIiwgImthcHBhIiwgImx0IiwgImxhcXVvIiwgImxBcnIiLCAibGFtYmRhIiwgImxhbmciLCAibGFyciIsICJsY2VpbCIsICJsZHF1byIsICJsZSIsICJsZmxvb3IiLCAibG93YXN0IiwgImxveiIsICJscm0iLCAibHNhcXVvIiwgImxzcXVvIiwgIm1hY3IiLCAibWRhc2giLCAibWljcm8iLCAibWlkZG90IiwgIm1pbnVzIiwgIm11IiwgIm5ic3AiLCAibmFibGEiLCAibmRhc2giLCAibmUiLCAibmkiLCAibm90IiwgIm5vdGluIiwgIm5zdWIiLCAibnRpbGRlIiwgIm51IiwgIm9hY3V0ZSIsICJvY2lyYyIsICJvZWxpZyIsICJvZ3JhdmUiLCAib2xpbmUiLCAib21lZ2EiLCAib21pY3JvbiIsICJvcGx1cyIsICJvciIsICJvcmRmIiwgIm9yZG0iLCAib3NsYXNoIiwgIm90aWxkZSIsICJvdGltZXMiLCAib3VtbCIsICJwYXJhIiwgInBhcnQiLCAicGVybWlsIiwgInBlcnAiLCAicGhpIiwgInBpIiwgInBpdiIsICJwbHVzbW4iLCAicG91bmQiLCAicHJpbWUiLCAicHJvZCIsICJwcm9wIiwgInBzaSIsICJxdW90IiwgInJBcnIiLCAicmFxdW8iLCAicmFkaWMiLCAicmFuZyIsICJyYXJyIiwgInJjZWlsIiwgInJkcXVvIiwgInJlYWwiLCAicmVnIiwgInJmbG9vciIsICJyaG8iLCAicmxtIiwgInJzYXF1byIsICJyc3F1byIsICJzYnF1byIsICJzY2Fyb24iLCAic2RvdCIsICJzZWN0IiwgInNoeSIsICJzaWdtYSIsICJzaWdtYWYiLCAic2ltIiwgInNwYWRlcyIsICJzdWIiLCAic3ViZSIsICJzdW0iLCAic3VwIiwgInN1cDEiLCAic3VwMiIsICJzdXAzIiwgInN1cGUiLCAic3psaWciLCAidGF1IiwgInRoZXJlNCIsICJ0aGV0YSIsICJ0aGV0YXN5bSIsICJ0aGluc3AiLCAidGhvcm4iLCAidGlsZGUiLCAidGltZXMiLCAidHJhZGUiLCAidUFyciIsICJ1YWN1dGUiLCAidWFyciIsICJ1Y2lyYyIsICJ1Z3JhdmUiLCAidW1sIiwgInVwc2loIiwgInVwc2lsb24iLCAidXVtbCIsICJ3ZWllcnAiLCAieGkiLCAieWFjdXRlIiwgInllbiIsICJ5dW1sIiwgInpldGEiLCAiendqIiwgInp3bmoiXQorCisJCWZvciBtIGluIHNvcnQodmFsdWVzKQorCQkJaWYgbSA9fj8gJ14nLmE6YmFzZQorCQkJCWNhbGwgYWRkKHJlcywgbS4nOycpCisJCQllbHNlaWYgbSA9fj8gYTpiYXNlCisJCQkJY2FsbCBhZGQocmVzMiwgbS4nOycpCisJCQllbmRpZgorCQllbmRmb3IKKworCQlyZXR1cm4gcmVzICsgcmVzMgorCisJZW5kaWYKKwlpZiBjb250ZXh0ID1+ICc+JworCQkiIEdlbmVyYWxseSBpZiBjb250ZXh0IGNvbnRhaW5zID4gaXQgbWVhbnMgd2UgYXJlIG91dHNpZGUgb2YgdGFnIGFuZAogCQkiIHNob3VsZCBhYmFuZG9uIGFjdGlvbiAtIHdpdGggb25lIGV4Y2VwdGlvbjogPHN0eWxlPiBzcGFuIHsgYm8KLQkJaWYgYTpiYXNlID1+ICdzdHlsZVtePl1cey19PltePF1cey19JCcKLQkJCXJldHVybiBjc3Njb21wbGV0ZSNDb21wbGV0ZUNTUygwLCBhOmJhc2UpCisJCWlmIGNvbnRleHQgPX4gJ3N0eWxlW14+XVx7LX0+W148XVx7LX0kJworCQkJcmV0dXJuIGNzc2NvbXBsZXRlI0NvbXBsZXRlQ1NTKDAsIGNvbnRleHQpCiAJCWVsc2UKIAkJCXJldHVybiBbXQogCQllbmRpZgpAQCAtNDMsMzQgKzgwLDMyIEBACiAgICAgbGV0IGNvcmVhdHRycyA9IFsiaWQiLCAiY2xhc3MiLCAic3R5bGUiLCAidGl0bGUiXSAKICAgICBsZXQgaTE4biA9IFsibGFuZyIsICJ4bWw6bGFuZyIsICJkaXI9XCJsdHJcIiAiLCAiZGlyPVwicnRsXCIgIl0KICAgICBsZXQgZXZlbnRzID0gWyJvbmNsaWNrIiwgIm9uZGJsY2xpY2siLCAib25tb3VzZWRvd24iLCAib25tb3VzZXVwIiwgIm9ubW91c2Vtb3ZlIiwKLSAgICAJCQlcICJvbm1vdXNlb3V0IiwgIm9ua2V5cHJlc3MiLCAib25rZXlkb3duIiwgIm9ua2V5dXAiXQorICAgIAkJCVwgIm9ubW91c2VvdmVyIiwgIm9ubW91c2VvdXQiLCAib25rZXlwcmVzcyIsICJvbmtleWRvd24iLCAib25rZXl1cCJdCiAgICAgbGV0IGZvY3VzID0gWyJhY2Nlc3NrZXkiLCAidGFiaW5kZXgiLCAib25mb2N1cyIsICJvbmJsdXIiXQogICAgIGxldCBjb3JlZ3JvdXAgPSBjb3JlYXR0cnMgKyBpMThuICsgZXZlbnRzCi0gICAgbGV0IHJlcyA9IFtdCi0gICAgbGV0IHJlczIgPSBbXQotICAgICIgZmluZCB0YWdzIG1hdGNoaW5nIHdpdGggImE6YmFzZSIKLQkiIElmIGE6YmFzZSBjb250YWlucyA+IGl0IG1lYW5zIHdlIGFyZSBhbHJlYWR5IG91dHNpZGUgb2YgdGFnIGFuZCB3ZQorICAgICIgZmluZCB0YWdzIG1hdGNoaW5nIHdpdGggImNvbnRleHQiCisJIiBJZiBjb250ZXh0IGNvbnRhaW5zID4gaXQgbWVhbnMgd2UgYXJlIGFscmVhZHkgb3V0c2lkZSBvZiB0YWcgYW5kIHdlCiAJIiBzaG91bGQgYWJhbmRvbiBhY3Rpb24KLQkiIElmIGE6YmFzZSBjb250YWlucyB3aGl0ZSBzcGFjZSBpdCBpcyBhdHRyaWJ1dGUuIAorCSIgSWYgY29udGV4dCBjb250YWlucyB3aGl0ZSBzcGFjZSBpdCBpcyBhdHRyaWJ1dGUuIAogCSIgSXQgY291bGQgYmUgYWxzbyB2YWx1ZSBvZiBhdHRyaWJ1dGUuLi4KIAkiIFdlIGhhdmUgdG8gZ2V0IGZpcnN0IHdvcmQgdG8gb2ZmZXIKIAkiIHByb3BlciBjb21wbGV0aW9ucwotCWxldCB0YWcgPSBzcGxpdChhOmJhc2UpWzBdCisJaWYgY29udGV4dCA9PSAnJworCQlsZXQgdGFnID0gJycKKwllbHNlCisJCWxldCB0YWcgPSBzcGxpdChjb250ZXh0KVswXQorCWVuZGlmCiAJIiBHZXQgbGFzdCB3b3JkLCBpdCBzaG91bGQgYmUgYXR0ciBuYW1lCi0JbGV0IGF0dHIgPSBtYXRjaHN0cihhOmJhc2UsICcuKlxzXHpzLionKQorCWxldCBhdHRyID0gbWF0Y2hzdHIoY29udGV4dCwgJy4qXHNcenMuKicpCiAJIiBQb3NzaWJsZSBzaXR1YXRpb25zIHdoZXJlIGFueSBwcmVkaWN0aW9uIHdvdWxkIGJlIGRpZmZpY3VsdDoKIAkiIDEuIEV2ZW50cyBhdHRyaWJ1dGVzCi0JaWYgYTpiYXNlID1+ICdccycKKwlpZiBjb250ZXh0ID1+ICdccycKIAkJIiBTb3J0IG91dCBzdHlsZSwgY2xhc3MsIGFuZCBvbiogY2FzZXMKLQkJIiBQZXJmZWN0IHNvbHV0aW9uIGZvciBzdHlsZSB3b3VsZCBiZSBzd2l0Y2hpbmcgZm9yIENTUyBjb21wbGV0aW9uLiBJcwotCQkiIGl0IHBvc3NpYmxlPwotCQkiIEFsc28gcmV0cmlldmluZyBjbGFzcyBuYW1lcyBmcm9tIGN1cnJlbnQgZmlsZSBhbmQgbGlua2VkCi0JCSIgc3R5bGVzaGVldHMuCi0JCWlmIGE6YmFzZSA9fiAiXFwob25bYS16XSpcXHxpZFxcfHN0eWxlXFx8Y2xhc3NcXClcXHMqPVxccypbXCInXSIKLQkJCWlmIGE6YmFzZSA9fiAiXFwoaWRcXHxjbGFzc1xcKVxccyo9XFxzKltcIiddW2EtekEtWjAtOV8gLV0qJCIKLQkJCQlpZiBhOmJhc2UgPX4gImNsYXNzXFxzKj1cXHMqW1wiJ11bYS16QS1aMC05XyAtXSokIgorCQlpZiBjb250ZXh0ID1+ICJcXChvblthLXpdKlxcfGlkXFx8c3R5bGVcXHxjbGFzc1xcKVxccyo9XFxzKltcIiddIgorCQkJaWYgY29udGV4dCA9fiAiXFwoaWRcXHxjbGFzc1xcKVxccyo9XFxzKltcIiddW2EtekEtWjAtOV8gLV0qJCIKKwkJCQlpZiBjb250ZXh0ID1+ICJjbGFzc1xccyo9XFxzKltcIiddW2EtekEtWjAtOV8gLV0qJCIKIAkJCQkJbGV0IHNlYXJjaF9mb3IgPSAiY2xhc3MiCi0JCQkJZWxzZWlmIGE6YmFzZSA9fiAiaWRcXHMqPVxccypbXCInXVthLXpBLVowLTlfIC1dKiQiCisJCQkJZWxzZWlmIGNvbnRleHQgPX4gImlkXFxzKj1cXHMqW1wiJ11bYS16QS1aMC05XyAtXSokIgogCQkJCQlsZXQgc2VhcmNoX2ZvciA9ICJpZCIKIAkJCQllbmRpZgogCQkJCSIgSGFuZGxlIGNsYXNzIG5hbWUgY29tcGxldGlvbgpAQCAtMjE3LDI3ICsyNTIsMjcgQEAKIAkJCQllbmRpZgogCiAJCQkJIiBXZSBuZWVkIHNwZWNpYWwgdmVyc2lvbiBvZiBzYmFzZQotCQkJCWxldCBjbGFzc2Jhc2UgPSBtYXRjaHN0cihhOmJhc2UsICIuKltcIiddIikKKwkJCQlsZXQgY2xhc3NiYXNlID0gbWF0Y2hzdHIoY29udGV4dCwgIi4qW1wiJ10iKQogCQkJCWxldCBjbGFzc3F1b3RlID0gbWF0Y2hzdHIoY2xhc3NiYXNlLCAnLiQnKQogCiAJCQkJbGV0IGVudGVyZWRfY2xhc3MgPSBtYXRjaHN0cihhdHRyLCAiLio9XFxzKltcIiddXFx6cy4qIikKIAogCQkJCWZvciBtIGluIHNvcnQodmFsdWVzKQogCQkJCQlpZiBtID1+PyAnXicuZW50ZXJlZF9jbGFzcwotCQkJCQkJY2FsbCBhZGQocmVzLCBjbGFzc2Jhc2UgLiBtIC4gY2xhc3NxdW90ZSAuICcgJykKKwkJCQkJCWNhbGwgYWRkKHJlcywgbSAuIGNsYXNzcXVvdGUpCiAJCQkJCWVsc2VpZiBtID1+PyBlbnRlcmVkX2NsYXNzCi0JCQkJCQljYWxsIGFkZChyZXMyLCBjbGFzc2Jhc2UgLiBtIC4gY2xhc3NxdW90ZSAuICcgJykKKwkJCQkJCWNhbGwgYWRkKHJlczIsIG0gLiBjbGFzc3F1b3RlKQogCQkJCQllbmRpZgogCQkJCWVuZGZvcgogCiAJCQkJcmV0dXJuIHJlcyArIHJlczIKIAotCQkJZWxzZWlmIGE6YmFzZSA9fiAic3R5bGVcXHMqPVxccypbXCInXVteXCInXSokIgotCQkJCXJldHVybiBjc3Njb21wbGV0ZSNDb21wbGV0ZUNTUygwLCBhOmJhc2UpCisJCQllbHNlaWYgY29udGV4dCA9fiAic3R5bGVcXHMqPVxccypbXCInXVteXCInXSokIgorCQkJCXJldHVybiBjc3Njb21wbGV0ZSNDb21wbGV0ZUNTUygwLCBjb250ZXh0KQogCiAJCQllbmRpZgotCQkJbGV0IHN0cmlwYmFzZSA9IG1hdGNoc3RyKGE6YmFzZSwgIi4qXFwob25bYS16XSpcXHxzdHlsZVxcfGNsYXNzXFwpXFxzKj1cXHMqW1wiJ11cXHpzLioiKQotCQkJIiBOb3cgd2UgaGF2ZSBhOmJhc2Ugc3RyaXBwZWQgZnJvbSBhbGwgY2hhcnMgdXAgdG8gc3R5bGUvY2xhc3MuCisJCQlsZXQgc3RyaXBiYXNlID0gbWF0Y2hzdHIoY29udGV4dCwgIi4qXFwob25bYS16XSpcXHxzdHlsZVxcfGNsYXNzXFwpXFxzKj1cXHMqW1wiJ11cXHpzLioiKQorCQkJIiBOb3cgd2UgaGF2ZSBjb250ZXh0IHN0cmlwcGVkIGZyb20gYWxsIGNoYXJzIHVwIHRvIHN0eWxlL2NsYXNzLgogCQkJIiBJdCBtYXkgZmFpbCB3aXRoIHNvbWUgc3RyYW5nZSBzdHlsZSB2YWx1ZSBjb21iaW5hdGlvbnMuCiAJCQlpZiBzdHJpcGJhc2UgIX4gIltcIiddIgogCQkJCXJldHVybiBbXQpAQCAtMjU0LDcgKzI4OSw3IEBACiAJCQllbHNlaWYgYXR0cm5hbWUgPT0gJ3htbDpzcGFjZScKIAkJCQlsZXQgdmFsdWVzID0gWyJwcmVzZXJ2ZSJdCiAJCQllbHNlaWYgYXR0cm5hbWUgPT0gJ3NoYXBlJwotCQkJCWlmIGE6YmFzZSA9fiAnXmFcPicKKwkJCQlpZiBjb250ZXh0ID1+ICdeYVw+JwogCQkJCQlsZXQgdmFsdWVzID0gWyJyZWN0Il0KIAkJCQllbHNlCiAJCQkJCWxldCB2YWx1ZXMgPSBbInJlY3QiLCAiY2lyY2xlIiwgInBvbHkiLCAiZGVmYXVsdCJdCkBAIC0yODcsMTMgKzMyMiwxMyBAQAogCQkJCQllbmRmb3IKIAkJCQllbmRpZgogCQkJZWxzZWlmIGF0dHJuYW1lID09ICd0eXBlJwotCQkJCWlmIGE6YmFzZSA9fiAnXmlucHV0JworCQkJCWlmIGNvbnRleHQgPX4gJ15pbnB1dCcKIAkJCQkJbGV0IHZhbHVlcyA9IFsidGV4dCIsICJwYXNzd29yZCIsICJjaGVja2JveCIsICJyYWRpbyIsICJzdWJtaXQiLCAicmVzZXQiLCAiZmlsZSIsICJoaWRkZW4iLCAiaW1hZ2UiLCAiYnV0dG9uIl0KLQkJCQllbHNlaWYgYTpiYXNlID1+ICdeYnV0dG9uJworCQkJCWVsc2VpZiBjb250ZXh0ID1+ICdeYnV0dG9uJwogCQkJCQlsZXQgdmFsdWVzID0gWyJidXR0b24iLCAic3VibWl0IiwgInJlc2V0Il0KLQkJCQllbHNlaWYgYTpiYXNlID1+ICdec3R5bGUnCisJCQkJZWxzZWlmIGNvbnRleHQgPX4gJ15zdHlsZScKIAkJCQkJbGV0IHZhbHVlcyA9IFsidGV4dC9jc3MiXQotCQkJCWVsc2VpZiBhOmJhc2UgPX4gJ15zY3JpcHQnCisJCQkJZWxzZWlmIGNvbnRleHQgPX4gJ15zY3JpcHQnCiAJCQkJCWxldCB2YWx1ZXMgPSBbInRleHQvamF2YXNjcmlwdCJdCiAJCQkJZW5kaWYKIAkJCWVsc2UKQEAgLTMwNSw3ICszNDAsNyBAQAogCQkJZW5kaWYKIAogCQkJIiBXZSBuZWVkIHNwZWNpYWwgdmVyc2lvbiBvZiBzYmFzZQotCQkJbGV0IGF0dHJiYXNlID0gbWF0Y2hzdHIoYTpiYXNlLCAiLipbXCInXSIpCisJCQlsZXQgYXR0cmJhc2UgPSBtYXRjaHN0cihjb250ZXh0LCAiLipbXCInXSIpCiAJCQlsZXQgYXR0cnF1b3RlID0gbWF0Y2hzdHIoYXR0cmJhc2UsICcuJCcpCiAKIAkJCWZvciBtIGluIHZhbHVlcwpAQCAtMzEzLDIzICszNDgsMjMgQEAKIAkJCQkiIGFscGhhYmV0aWNhbGx5IGJ1dCBzb3J0IHRoZW0uIFRob3NlIGJlZ2lubmluZyB3aXRoIGVudGVyZWQKIAkJCQkiIHBhcnQgd2lsbCBiZSBhcyBmaXJzdCBjaG9pY2VzCiAJCQkJaWYgbSA9fiAnXicuZW50ZXJlZF92YWx1ZQotCQkJCQljYWxsIGFkZChyZXMsIGF0dHJiYXNlIC4gbSAuIGF0dHJxdW90ZS4nICcpCisJCQkJCWNhbGwgYWRkKHJlcywgbSAuIGF0dHJxdW90ZS4nICcpCiAJCQkJZWxzZWlmIG0gPX4gZW50ZXJlZF92YWx1ZQotCQkJCQljYWxsIGFkZChyZXMyLCBhdHRyYmFzZSAuIG0gLiBhdHRycXVvdGUuJyAnKQorCQkJCQljYWxsIGFkZChyZXMyLCBtIC4gYXR0cnF1b3RlLicgJykKIAkJCQllbmRpZgogCQkJZW5kZm9yCiAKIAkJCXJldHVybiByZXMgKyByZXMyCiAKIAkJZW5kaWYKLQkJIiBTaG9ydGVuIGE6YmFzZSB0byBub3QgaW5jbHVkZSBsYXN0IHdvcmQKLQkJbGV0IHNiYXNlID0gbWF0Y2hzdHIoYTpiYXNlLCAnLipcemVccy4qJykKLQkJaWYgdGFnID1+ICdeXChhYmJyXHxhY3JvbnltXHxiXHxiZG9cfGJpZ1x8Y2FwdGlvblx8Y2l0ZVx8Y29kZVx8ZGRcfGRmblx8ZGl2XHxkbFx8ZHRcfGVtXHxmaWVsZHNldFx8aFxkXHxrYmRcfGxpXHxub3NjcmlwdFx8b2xcfHBcfHNhbXBcfHNtYWxsXHxzcGFuXHxzdHJvbmdcfHN1Ylx8c3VwXHx0dFx8dWxcfHZhclwpJCcKKwkJIiBTaG9ydGVuIGNvbnRleHQgdG8gbm90IGluY2x1ZGUgbGFzdCB3b3JkCisJCWxldCBzYmFzZSA9IG1hdGNoc3RyKGNvbnRleHQsICcuKlx6ZVxzLionKQorCQlpZiB0YWcgPX4gJ15cKGFiYnJcfGFjcm9ueW1cfGFkZHJlc3NcfGJcfGJkb1x8YmlnXHxjYXB0aW9uXHxjaXRlXHxjb2RlXHxkZFx8ZGZuXHxkaXZcfGRsXHxkdFx8ZW1cfGZpZWxkc2V0XHxoXGRcfGhyXHxpXHxrYmRcfGxpXHxub3NjcmlwdFx8b2xcfHBcfHNhbXBcfHNtYWxsXHxzcGFuXHxzdHJvbmdcfHN1Ylx8c3VwXHx0dFx8dWxcfHZhclwpJCcKIAkJCWxldCBhdHRycyA9IGNvcmVncm91cAogCQllbHNlaWYgdGFnID09ICdhJwogCQkJbGV0IGF0dHJzID0gY29yZWdyb3VwICsgZm9jdXMgKyBbImNoYXJzZXQiLCAidHlwZSIsICJuYW1lIiwgImhyZWYiLCAiaHJlZmxhbmciLCAicmVsIiwgInJldiIsICJzaGFwZSIsICJjb29yZHMiXQogCQllbHNlaWYgdGFnID09ICdhcmVhJwotCQkJbGV0IGF0dHJzID0gY29yZWdyb3VwCisJCQlsZXQgYXR0cnMgPSBjb3JlZ3JvdXAgKyBmb2N1cyArIFsic2hhcGUiLCAiY29vcmRzIiwgImhyZWYiLCAibm9ocmVmIiwgImFsdCJdCiAJCWVsc2VpZiB0YWcgPT0gJ2Jhc2UnCiAJCQlsZXQgYXR0cnMgPSBbImhyZWYiLCAiaWQiXQogCQllbHNlaWYgdGFnID09ICdibG9ja3F1b3RlJwpAQCAtMzM5LDI3ICszNzQsMjcgQEAKIAkJZWxzZWlmIHRhZyA9PSAnYnInCiAJCQlsZXQgYXR0cnMgPSBjb3JlYXR0cnMKIAkJZWxzZWlmIHRhZyA9PSAnYnV0dG9uJwotCQkJbGV0IGF0dHJzID0gY29yZWF0dHJzICsgZm9jdXMgKyBbIm5hbWUiLCAidmFsdWUiLCAidHlwZSJdCisJCQlsZXQgYXR0cnMgPSBjb3JlZ3JvdXAgKyBmb2N1cyArIFsibmFtZSIsICJ2YWx1ZSIsICJ0eXBlIl0KIAkJZWxzZWlmIHRhZyA9PSAnXlwoY29sXHxjb2xncm91cFwpJCcKLQkJCWxldCBhdHRycyA9IGNvcmVhdHRycyArIFsic3BhbiIsICJ3aWR0aCIsICJhbGlnbiIsICJjaGFyIiwgImNoYXJvZmYiLCAidmFsaWduIl0KKwkJCWxldCBhdHRycyA9IGNvcmVncm91cCArIFsic3BhbiIsICJ3aWR0aCIsICJhbGlnbiIsICJjaGFyIiwgImNoYXJvZmYiLCAidmFsaWduIl0KIAkJZWxzZWlmIHRhZyA9fiAnXlwoZGVsXHxpbnNcKSQnCi0JCQlsZXQgYXR0cnMgPSBjb3JlYXR0cnMgKyBbImNpdGUiLCAiZGF0ZXRpbWUiXQorCQkJbGV0IGF0dHJzID0gY29yZWdyb3VwICsgWyJjaXRlIiwgImRhdGV0aW1lIl0KIAkJZWxzZWlmIHRhZyA9PSAnZm9ybScKLQkJCWxldCBhdHRycyA9IGNvcmVhdHRycyArIFsiYWN0aW9uIiwgIm1ldGhvZD1cImdldFwiICIsICJtZXRob2Q9XCJwb3N0XCIgIiwgImVuY3R5cGUiLCAib25zdWJtaXQiLCAib25yZXNldCIsICJhY2NlcHQiLCAiYWNjZXB0LWNoYXJzZXQiXQorCQkJbGV0IGF0dHJzID0gY29yZWdyb3VwICsgWyJhY3Rpb24iLCAibWV0aG9kPVwiZ2V0XCIgIiwgIm1ldGhvZD1cInBvc3RcIiAiLCAiZW5jdHlwZSIsICJvbnN1Ym1pdCIsICJvbnJlc2V0IiwgImFjY2VwdCIsICJhY2NlcHQtY2hhcnNldCJdCiAJCWVsc2VpZiB0YWcgPT0gJ2hlYWQnCiAJCQlsZXQgYXR0cnMgPSBpMThuICsgWyJpZCIsICJwcm9maWxlIl0KIAkJZWxzZWlmIHRhZyA9PSAnaHRtbCcKIAkJCWxldCBhdHRycyA9IGkxOG4gKyBbImlkIiwgInhtbG5zIl0KIAkJZWxzZWlmIHRhZyA9PSAnaW1nJwotCQkJbGV0IGF0dHJzID0gY29yZWF0dHJzICsgWyJzcmMiLCAiYWx0IiwgImxvbmdkZXNjIiwgImhlaWdodCIsICJ3aWR0aCIsICJ1c2VtYXAiLCAiaXNtYXAiXQorCQkJbGV0IGF0dHJzID0gY29yZWdyb3VwICsgWyJzcmMiLCAiYWx0IiwgImxvbmdkZXNjIiwgImhlaWdodCIsICJ3aWR0aCIsICJ1c2VtYXAiLCAiaXNtYXAiXQogCQllbHNlaWYgdGFnID09ICdpbnB1dCcKLQkJCWxldCBhdHRycyA9IGNvcmVhdHRycyArIGZvY3VzICsgWyJ0eXBlIiwgIm5hbWUiLCAidmFsdWUiLCAiY2hlY2tlZCIsICJkaXNhYmxlZCIsICJyZWFkb25seSIsICJzaXplIiwgIm1heGxlbmd0aCIsICJzcmMiLCAiYWx0IiwgInVzZW1hcCIsICJvbnNlbGVjdCIsICJvbmNoYW5nZSIsICJhY2NlcHQiXQorCQkJbGV0IGF0dHJzID0gY29yZWdyb3VwICsgWyJ0eXBlIiwgIm5hbWUiLCAidmFsdWUiLCAiY2hlY2tlZCIsICJkaXNhYmxlZCIsICJyZWFkb25seSIsICJzaXplIiwgIm1heGxlbmd0aCIsICJzcmMiLCAiYWx0IiwgInVzZW1hcCIsICJvbnNlbGVjdCIsICJvbmNoYW5nZSIsICJhY2NlcHQiXQogCQllbHNlaWYgdGFnID09ICdsYWJlbCcKLQkJCWxldCBhdHRycyA9IGNvcmVhdHRycyArIFsiZm9yIiwgImFjY2Vzc2tleSIsICJvbmZvY3VzIiwgIm9uYmx1ciJdCisJCQlsZXQgYXR0cnMgPSBjb3JlZ3JvdXAgKyBbImZvciIsICJhY2Nlc3NrZXkiLCAib25mb2N1cyIsICJvbmJsdXIiXQogCQllbHNlaWYgdGFnID09ICdsZWdlbmQnCi0JCQlsZXQgYXR0cnMgPSBjb3JlYXR0cnMgKyBbImFjY2Vzc2tleSJdCisJCQlsZXQgYXR0cnMgPSBjb3JlZ3JvdXAgKyBbImFjY2Vzc2tleSJdCiAJCWVsc2VpZiB0YWcgPT0gJ2xpbmsnCi0JCQlsZXQgYXR0cnMgPSBjb3JlYXR0cnMgKyBbImNoYXJzZXQiLCAiaHJlZiIsICJocmVmbGFuZyIsICJ0eXBlIiwgInJlbCIsICJyZXYiLCAibWVkaWEiXQorCQkJbGV0IGF0dHJzID0gY29yZWdyb3VwICsgWyJjaGFyc2V0IiwgImhyZWYiLCAiaHJlZmxhbmciLCAidHlwZSIsICJyZWwiLCAicmV2IiwgIm1lZGlhIl0KIAkJZWxzZWlmIHRhZyA9PSAnbWFwJwogCQkJbGV0IGF0dHJzID0gaTE4biArIGV2ZW50cyArIFsiaWQiLCAiY2xhc3MiLCAic3R5bGUiLCAidGl0bGUiLCAibmFtZSJdCiAJCWVsc2VpZiB0YWcgPT0gJ21ldGEnCkBAIC0zNjcsMzEgKzQwMiwzMSBAQAogCQllbHNlaWYgdGFnID09ICd0aXRsZScKIAkJCWxldCBhdHRycyA9IGkxOG4gKyBbImlkIl0KIAkJZWxzZWlmIHRhZyA9PSAnb2JqZWN0JwotCQkJbGV0IGF0dHJzID0gY29yZWF0dHJzICsgWyJkZWNsYXJlIiwgImNsYXNzaWQiLCAiY29kZWJhc2UiLCAiZGF0YSIsICJ0eXBlIiwgImNvZGV0eXBlIiwgImFyY2hpdmUiLCAic3RhbmRieSIsICJoZWlnaHQiLCAid2lkdGgiLCAidXNlbWFwIiwgIm5hbWUiLCAidGFiaW5kZXgiXQorCQkJbGV0IGF0dHJzID0gY29yZWdyb3VwICsgWyJkZWNsYXJlIiwgImNsYXNzaWQiLCAiY29kZWJhc2UiLCAiZGF0YSIsICJ0eXBlIiwgImNvZGV0eXBlIiwgImFyY2hpdmUiLCAic3RhbmRieSIsICJoZWlnaHQiLCAid2lkdGgiLCAidXNlbWFwIiwgIm5hbWUiLCAidGFiaW5kZXgiXQogCQllbHNlaWYgdGFnID09ICdvcHRncm91cCcKLQkJCWxldCBhdHRycyA9IGNvcmVhdHRycyArIFsiZGlzYmxlZCIsICJsYWJlbCJdCisJCQlsZXQgYXR0cnMgPSBjb3JlZ3JvdXAgKyBbImRpc2JsZWQiLCAibGFiZWwiXQogCQllbHNlaWYgdGFnID09ICdvcHRpb24nCi0JCQlsZXQgYXR0cnMgPSBjb3JlYXR0cnMgKyBbImRpc2JsZWQiLCAic2VsZWN0ZWQiLCAidmFsdWUiLCAibGFiZWwiXQorCQkJbGV0IGF0dHJzID0gY29yZWdyb3VwICsgWyJkaXNibGVkIiwgInNlbGVjdGVkIiwgInZhbHVlIiwgImxhYmVsIl0KIAkJZWxzZWlmIHRhZyA9PSAncGFyYW0nCiAJCQlsZXQgYXR0cnMgPSBbImlkIiwgIm5hbWUiLCAidmFsdWUiLCAidmFsdWV0eXBlIiwgInR5cGUiXQogCQllbHNlaWYgdGFnID09ICdwcmUnCi0JCQlsZXQgYXR0cnMgPSBjb3JlYXR0cnMgKyBbInhtbDpzcGFjZSJdCisJCQlsZXQgYXR0cnMgPSBjb3JlZ3JvdXAgKyBbInhtbDpzcGFjZSJdCiAJCWVsc2VpZiB0YWcgPT0gJ3EnCi0JCQlsZXQgYXR0cnMgPSBjb3JlYXR0cnMgKyBbImNpdGUiXQorCQkJbGV0IGF0dHJzID0gY29yZWdyb3VwICsgWyJjaXRlIl0KIAkJZWxzZWlmIHRhZyA9PSAnc2NyaXB0JwogCQkJbGV0IGF0dHJzID0gWyJpZCIsICJjaGFyc2V0IiwgInR5cGU9XCJ0ZXh0L2phdmFzY3JpcHRcIiIsICJ0eXBlIiwgInNyYyIsICJkZWZlciIsICJ4bWw6c3BhY2UiXQogCQllbHNlaWYgdGFnID09ICdzZWxlY3QnCi0JCQlsZXQgYXR0cnMgPSBjb3JlYXR0cnMgKyBbIm5hbWUiLCAic2l6ZSIsICJtdWx0aXBsZSIsICJkaXNhYmxlZCIsICJ0YWJpbmRleCIsICJvbmZvY3VzIiwgIm9uYmx1ciIsICJvbmNoYW5nZSJdCisJCQlsZXQgYXR0cnMgPSBjb3JlZ3JvdXAgKyBbIm5hbWUiLCAic2l6ZSIsICJtdWx0aXBsZSIsICJkaXNhYmxlZCIsICJ0YWJpbmRleCIsICJvbmZvY3VzIiwgIm9uYmx1ciIsICJvbmNoYW5nZSJdCiAJCWVsc2VpZiB0YWcgPT0gJ3N0eWxlJwogCQkJbGV0IGF0dHJzID0gY29yZWF0dHJzICsgWyJpZCIsICJ0eXBlPVwidGV4dC9jc3NcIiIsICJ0eXBlIiwgIm1lZGlhIiwgInRpdGxlIiwgInhtbDpzcGFjZSJdCiAJCWVsc2VpZiB0YWcgPT0gJ3RhYmxlJwotCQkJbGV0IGF0dHJzID0gY29yZWF0dHJzICsgWyJzdW1tYXJ5IiwgIndpZHRoIiwgImJvcmRlciIsICJmcmFtZSIsICJydWxlcyIsICJjZWxsc3BhY2luZyIsICJjZWxscGFkZGluZyJdCisJCQlsZXQgYXR0cnMgPSBjb3JlZ3JvdXAgKyBbInN1bW1hcnkiLCAid2lkdGgiLCAiYm9yZGVyIiwgImZyYW1lIiwgInJ1bGVzIiwgImNlbGxzcGFjaW5nIiwgImNlbGxwYWRkaW5nIl0KIAkJZWxzZWlmIHRhZyA9fiAnXlwodGhlYWRcfHRmb290XHx0Ym9keVx8dHJcKSQnCi0JCQlsZXQgYXR0cnMgPSBjb3JlYXR0cnMgKyBbImFsaWduIiwgImNoYXIiLCAiY2hhcm9mZiIsICJ2YWxpZ24iXQorCQkJbGV0IGF0dHJzID0gY29yZWdyb3VwICsgWyJhbGlnbiIsICJjaGFyIiwgImNoYXJvZmYiLCAidmFsaWduIl0KIAkJZWxzZWlmIHRhZyA9PSAndGV4dGFyZWEnCi0JCQlsZXQgYXR0cnMgPSBjb3JlYXR0cnMgKyBmb2N1cyArIFsibmFtZSIsICJyb3dzIiwgImNvbHMiLCAiZGlzYWJsZWQiLCAicmVhZG9ubHkiLCAib25zZWxlY3QiLCAib25jaGFuZ2UiXQorCQkJbGV0IGF0dHJzID0gY29yZWdyb3VwICsgWyJuYW1lIiwgInJvd3MiLCAiY29scyIsICJkaXNhYmxlZCIsICJyZWFkb25seSIsICJvbnNlbGVjdCIsICJvbmNoYW5nZSJdCiAJCWVsc2VpZiB0YWcgPX4gJ15cKHRoXHx0ZFwpJCcKLQkJCWxldCBhdHRycyA9IGNvcmVhdHRycyArIFsiYWJiciIsICJoZWFkZXJzIiwgInNjb3BlIiwgInJvd3NwYW4iLCAiY29sc3BhbiIsICJhbGlnbiIsICJjaGFyIiwgImNoYXJvZmYiLCAidmFsaWduIl0KKwkJCWxldCBhdHRycyA9IGNvcmVncm91cCArIFsiYWJiciIsICJoZWFkZXJzIiwgInNjb3BlIiwgInJvd3NwYW4iLCAiY29sc3BhbiIsICJhbGlnbiIsICJjaGFyIiwgImNoYXJvZmYiLCAidmFsaWduIl0KIAkJZWxzZQogCQkJcmV0dXJuIFtdCiAJCWVuZGlmCkBAIC0zOTksMTUgKzQzNCwxNSBAQAogCQlmb3IgbSBpbiBzb3J0KGF0dHJzKQogCQkJaWYgbSA9fiAnXicuYXR0cgogCQkJCWlmIG0gPX4gJ15cKGlzbWFwXHxkZWZlclx8ZGVjbGFyZVx8bm9ocmVmXHxjaGVja2VkXHxkaXNhYmxlZFx8c2VsZWN0ZWRcfHJlYWRvbmx5XCkkJyB8fCBtID1+ICc9JwotCQkJCQljYWxsIGFkZChyZXMsIHNiYXNlLicgJy5tKQorCQkJCQljYWxsIGFkZChyZXMsIG0pCiAJCQkJZWxzZQotCQkJCQljYWxsIGFkZChyZXMsIHNiYXNlLicgJy5tLic9IicpCisJCQkJCWNhbGwgYWRkKHJlcywgbS4nPSInKQogCQkJCWVuZGlmCiAJCQllbHNlaWYgbSA9fiBhdHRyCiAJCQkJaWYgbSA9fiAnXlwoaXNtYXBcfGRlZmVyXHxkZWNsYXJlXHxub2hyZWZcfGNoZWNrZWRcfGRpc2FibGVkXHxzZWxlY3RlZFx8cmVhZG9ubHlcKSQnIHx8IG0gPX4gJz0nCi0JCQkJCWNhbGwgYWRkKHJlczIsIHNiYXNlLicgJy5tKQorCQkJCQljYWxsIGFkZChyZXMyLCBtKQogCQkJCWVsc2UKLQkJCQkJY2FsbCBhZGQocmVzMiwgc2Jhc2UuJyAnLm0uJz0iJykKKwkJCQkJY2FsbCBhZGQocmVzMiwgbS4nPSInKQogCQkJCWVuZGlmCiAJCQllbmRpZgogCQllbmRmb3IKQEAgLTQxNyw5ICs0NTIsOSBAQAogCWVuZGlmCiAJIiBDbG9zZSB0YWcKIAlsZXQgYjp1bmFyeVRhZ3NTdGFjayA9ICJiYXNlIG1ldGEgbGluayBociBiciBwYXJhbSBpbWcgYXJlYSBpbnB1dCBjb2wiCi0JaWYgYTpiYXNlID1+ICdeXC8nCisJaWYgY29udGV4dCA9fiAnXlwvJwogCQlsZXQgb3BlbnRhZyA9IGh0bWxjb21wbGV0ZSNHZXRMYXN0T3BlblRhZygiYjp1bmFyeVRhZ3NTdGFjayIpCi0JCXJldHVybiBbIi8iLm9wZW50YWcuIj4iXQorCQlyZXR1cm4gW29wZW50YWcuIj4iXQogCWVuZGlmCiAJIiBEZWFsIHdpdGggdGFnIGNvbXBsZXRpb24uCiAJbGV0IG9wZW50YWcgPSBodG1sY29tcGxldGUjR2V0TGFzdE9wZW5UYWcoImI6dW5hcnlUYWdzU3RhY2siKQpAQCAtNDgxLDkgKzUxNiw5IEBACiAJZW5kaWYKIAogCWZvciBtIGluIHRhZ3MKLQkJaWYgbSA9fiAnXicuYTpiYXNlCisJCWlmIG0gPX4gJ14nLmNvbnRleHQKIAkJCWNhbGwgYWRkKHJlcywgbSkKLQkJZWxzZWlmIG0gPX4gYTpiYXNlCisJCWVsc2VpZiBtID1+IGNvbnRleHQKIAkJCWNhbGwgYWRkKHJlczIsIG0pCiAJCWVuZGlmCiAJZW5kZm9yCmRpZmYgLS1naXQgYS9ydW50aW1lL2NvbXBpbGVyL3J1YnkudmltIGIvcnVudGltZS9jb21waWxlci9ydWJ5LnZpbQppbmRleCA2MTg3MmM5Li44OGI2ODNmIDEwMDY0NAotLS0gYS9ydW50aW1lL2NvbXBpbGVyL3J1YnkudmltCisrKyBiL3J1bnRpbWUvY29tcGlsZXIvcnVieS52aW0KQEAgLTE0LDkgKzE0LDkgQEAKICIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogIgogIiBDaGFuZ2Vsb2c6Ci0iIDAuMjogIHNjcmlwdCBzYXZlcyBhbmQgcmVzdG9yZXMgJ2Nwb3B0aW9ucycgdmFsdWUgdG8gcHJldmVudCBwcm9ibGVtcyB3aXRoCi0iICAgICAgIGxpbmUgY29udGludWF0aW9ucwotIiAwLjE6ICBpbml0aWFsIHJlbGVhc2UKKyIgMC4yOglzY3JpcHQgc2F2ZXMgYW5kIHJlc3RvcmVzICdjcG9wdGlvbnMnIHZhbHVlIHRvIHByZXZlbnQgcHJvYmxlbXMgd2l0aAorIglsaW5lIGNvbnRpbnVhdGlvbnMKKyIgMC4xOglpbml0aWFsIHJlbGVhc2UKICIKICIgQ29udHJpYnV0b3JzOgogIiAgIEh1Z2ggU2Fzc2UgPGhnc0BkbXUuYWMudWs+CmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy9hdXRvY21kLnR4dCBiL3J1bnRpbWUvZG9jL2F1dG9jbWQudHh0CmluZGV4IGYyYjIwNTEuLmUyY2E2N2EgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL2F1dG9jbWQudHh0CisrKyBiL3J1bnRpbWUvZG9jL2F1dG9jbWQudHh0CkBAIC0xLDQgKzEsNCBAQAotKmF1dG9jbWQudHh0KiAgIEZvciBWaW0gdmVyc2lvbiA3LjBhYS4gIExhc3QgY2hhbmdlOiAyMDA1IEp1bCAzMAorKmF1dG9jbWQudHh0KiAgIEZvciBWaW0gdmVyc2lvbiA3LjBhYS4gIExhc3QgY2hhbmdlOiAyMDA1IE9jdCAxMAogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpAQCAtMzI0LDkgKzMyNCwxMSBAQAogCQkJCWZpbGUuICBDYW4gYmUgdXNlZCB0byBjaGVjay1vdXQgdGhlIGZpbGUgZnJvbQogCQkJCWEgc291cmNlIGNvbnRyb2wgc3lzdGVtLiAgTm90IHRyaWdnZXJlZCB3aGVuCiAJCQkJdGhlIGNoYW5nZSB3YXMgY2F1c2VkIGJ5IGFuIGF1dG9jb21tYW5kLgotCQkJCVdBUk5JTkc6IFRoaXMgZXZlbnQgaXMgdHJpZ2dlcmVkIHdoZW4gbWFraW5nIGEKLQkJCQljaGFuZ2UsIGp1c3QgYmVmb3JlIHRoZSBjaGFuZ2UgaXMgYXBwbGllZCB0bwotCQkJCXRoZSB0ZXh0LiAgSWYgdGhlIGF1dG9jb21tYW5kIG1vdmVzIHRoZSBjdXJzb3IKKwkJCQlUaGlzIGV2ZW50IGlzIHRyaWdnZXJlZCB3aGVuIG1ha2luZyB0aGUgZmlyc3QKKwkJCQljaGFuZ2UgaW4gYSBidWZmZXIgb3IgdGhlIGZpcnN0IGNoYW5nZSBhZnRlcgorCQkJCSdyZWFkb25seScgd2FzIHNldCwKKwkJCQlqdXN0IGJlZm9yZSB0aGUgY2hhbmdlIGlzIGFwcGxpZWQgdG8gdGhlIHRleHQuCisJCQkJV0FSTklORzogSWYgdGhlIGF1dG9jb21tYW5kIG1vdmVzIHRoZSBjdXJzb3IKIAkJCQl0aGUgZWZmZWN0IG9mIHRoZSBjaGFuZ2UgaXMgdW5kZWZpbmVkLgogCQkJCQkJCSpGb2N1c0dhaW5lZCoKIEZvY3VzR2FpbmVkCQkJV2hlbiBWaW0gZ290IGlucHV0IGZvY3VzLiAgT25seSBmb3IgdGhlIEdVSQpkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2MvZXZhbC50eHQgYi9ydW50aW1lL2RvYy9ldmFsLnR4dAppbmRleCBhMDZiNmY2Li43MDBkYzVlIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9ldmFsLnR4dAorKysgYi9ydW50aW1lL2RvYy9ldmFsLnR4dApAQCAtMSw0ICsxLDQgQEAKLSpldmFsLnR4dCogICAgICBGb3IgVmltIHZlcnNpb24gNy4wYWEuICBMYXN0IGNoYW5nZTogMjAwNSBPY3QgMDIKKypldmFsLnR4dCogICAgICBGb3IgVmltIHZlcnNpb24gNy4wYWEuICBMYXN0IGNoYW5nZTogMjAwNSBPY3QgMTAKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKQEAgLTE4NzcsNiArMTg3Nyw3IEBACiAJCXJlbGV2YW50LiAge2xudW19IGlzIHVzZWQganVzdCBsaWtlIGluIHxnZXRsaW5lKCl8LgogCQlXaGVuIHtsbnVtfSBpcyBpbnZhbGlkIG9yIFZpbSB3YXMgbm90IGNvbXBpbGVkIHRoZSB8K2NpbmRlbnR8CiAJCWZlYXR1cmUsIC0xIGlzIHJldHVybmVkLgorCQlTZWUgfEMtaW5kZW50aW5nfC4KIAogCQkJCQkJCSpjb2woKSoKIGNvbCh7ZXhwcn0pCVRoZSByZXN1bHQgaXMgYSBOdW1iZXIsIHdoaWNoIGlzIHRoZSBieXRlIGluZGV4IG9mIHRoZSBjb2x1bW4KZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL21lc3NhZ2UudHh0IGIvcnVudGltZS9kb2MvbWVzc2FnZS50eHQKaW5kZXggMTQ3OTdkZS4uYzY0YjQ1NCAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvbWVzc2FnZS50eHQKKysrIGIvcnVudGltZS9kb2MvbWVzc2FnZS50eHQKQEAgLTEsNCArMSw0IEBACi0qbWVzc2FnZS50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMGFhLiAgTGFzdCBjaGFuZ2U6IDIwMDUgT2N0IDAyCisqbWVzc2FnZS50eHQqICAgRm9yIFZpbSB2ZXJzaW9uIDcuMGFhLiAgTGFzdCBjaGFuZ2U6IDIwMDUgT2N0IDEwCiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMICAgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC01ODksNiArNTg5LDcgQEAKIHRoZSB8RmlsZUNoYW5nZWRST3wgYXV0b2NvbW1hbmQgZXZlbnQgdG8gYXZvaWQgdGhpcyBtZXNzYWdlICh0aGUgYXV0b2NvbW1hbmQKIG11c3QgcmVzZXQgdGhlICdyZWFkb25seScgb3B0aW9uKS4gIFNlZSAnbW9kaWZpYWJsZScgdG8gY29tcGxldGVseSBkaXNhbGxvdwogbWFraW5nIGNoYW5nZXMgdG8gYSBmaWxlLgorVGhpcyBtZXNzYWdlIGlzIG9ubHkgZ2l2ZW4gZm9yIHRoZSBmaXJzdCBjaGFuZ2UgYWZ0ZXIgJ3JlYWRvbmx5JyBoYXMgYmVlbiBzZXQuCiAKIAkJCQkJCQkqVzEzKiAgPgogICBXYXJuaW5nOiBGaWxlICJ7ZmlsZW5hbWV9IiBoYXMgYmVlbiBjcmVhdGVkIGFmdGVyIGVkaXRpbmcgc3RhcnRlZApkaWZmIC0tZ2l0IGEvcnVudGltZS9kb2Mvb3B0aW9ucy50eHQgYi9ydW50aW1lL2RvYy9vcHRpb25zLnR4dAppbmRleCA1MGJhZTIwLi5mY2JkNDQ1IDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy9vcHRpb25zLnR4dAorKysgYi9ydW50aW1lL2RvYy9vcHRpb25zLnR4dApAQCAtMSw0ICsxLDQgQEAKLSpvcHRpb25zLnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMGFhLiAgTGFzdCBjaGFuZ2U6IDIwMDUgT2N0IDAyCisqb3B0aW9ucy50eHQqCUZvciBWaW0gdmVyc2lvbiA3LjBhYS4gIExhc3QgY2hhbmdlOiAyMDA1IE9jdCAwNQogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTAkgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC0xNjE3LDcgKzE2MTcsNyBAQAogCU9uIHRoZSBzZWNvbmQgaW52b2NhdGlvbiB0aGUgYXJndW1lbnRzIGFyZToKIAkgICBhOmZpbmRzdGFydCAgMAogCSAgIGE6YmFzZQl0aGUgdGV4dCB3aXRoIHdoaWNoIG1hdGNoZXMgc2hvdWxkIG1hdGNoLCB3aGF0IHdhcwotCSAgIAkJbG9jYXRlZCBpbiB0aGUgZmlyc3QgY2FsbAorCSAgIAkJbG9jYXRlZCBpbiB0aGUgZmlyc3QgY2FsbCAoY2FuIGJlIGVtcHR5KQogCiAJVGhlIGZ1bmN0aW9uIG11c3QgcmV0dXJuIGEgTGlzdCB3aXRoIHRoZSBtYXRjaGluZyB3b3Jkcy4gIFRoZXNlCiAJbWF0Y2hlcyB1c3VhbGx5IGluY2x1ZGUgdGhlICJhOmJhc2UiIHRleHQuICBXaGVuIHRoZXJlIGFyZSBubyBtYXRjaGVzCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy90b2RvLnR4dCBiL3J1bnRpbWUvZG9jL3RvZG8udHh0CmluZGV4IDkwNzM3MGQuLjlmYjZiN2QgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3RvZG8udHh0CisrKyBiL3J1bnRpbWUvZG9jL3RvZG8udHh0CkBAIC0xLDQgKzEsNCBAQAotKnRvZG8udHh0KiAgICAgIEZvciBWaW0gdmVyc2lvbiA3LjBhYS4gIExhc3QgY2hhbmdlOiAyMDA1IE9jdCAwNAorKnRvZG8udHh0KiAgICAgIEZvciBWaW0gdmVyc2lvbiA3LjBhYS4gIExhc3QgY2hhbmdlOiAyMDA1IE9jdCAxMAogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTAkgIGJ5IEJyYW0gTW9vbGVuYWFyCkBAIC0zMCwxOCArMzAsMTggQEAKIAkJCQkJCQkqa25vd24tYnVncyoKIC0tLS0tLS0tLS0tLS0tLS0tLS0tIEtub3duIGJ1Z3MgYW5kIGN1cnJlbnQgd29yayAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCi1WaW0gNi40OgotLSBJbmNsdWRlIGZpeCBmb3IgZEYgYW5kIHRoZW4gZDsuIChkY3Vhcm9uKQotLSBwb3NpdGlvbmluZyBzdGF0dXNsaW5lIHdoZW4gImxhc3RzdGF0dXM9MiIgYW5kICJjbWRoZWlnaHQ9MiIgaW4gdGhlCi0gIC52aW1yYy8uZ3ZpbXJjIHdoZW4gZ3ZpbSBpcyBzdGFydGVkLiAoUm9iaW5zb24pCi0KLVVuZGVyY3VybCBkb2Vzbid0IHdvcmsgaW4gSFRNTCBpdGFsaWMuIChNaWNoYWwgQm96b24pCi1XaGVuICdmb2xkY29sdW1uJyBpcyAxIHNob3cgbW9yZSArIHRvIGJlIGFibGUgdG8gb3BlbiBhbGwgZm9sZHM/IChEb25vaHVlKQotCiBjY29tcGxldGU6CistIFdoZW4gYW4gb3B0aW9uIGlzIHNldDogSW4gY29tcGxldGlvbiBtb2RlIGFuZCB0aGUgdXNlciB0eXBlcyAoaWRlbnRpZmllcikKKyAgY2hhcmFjdGVycywgYWR2YW5jZSB0byB0aGUgZmlyc3QgbWF0Y2ggaW5zdGVhZCBvZiByZW1vdmluZyB0aGUgcG9wdXAgbWVudS4KKyAgSWYgdGhlcmUgaXMgbm8gbWF0Y2ggcmVtb3ZlIHRoZSBzZWxlY3Rpb24uIChZZWdhcHBhbiBMYWtzaG1hbmFuKQogLSBXaGVuIGNvbXBsZXRpbmcgc29tZXRoaW5nIHRoYXQgaXMgYSBzdHJ1Y3R1cmUsIGFkZCB0aGUgIi4iIG9yICItPiIuCiAtIFdoZW4gYSB0eXBlZGVmIG9yIHN0cnVjdCBpcyBsb2NhbCB0byBhIGZpbGUgb25seSB1c2UgaXQgaW4gdGhhdCBmaWxlPwogCitzcGVsbGluZzoKKy0gV2hlbiBhIHJlY29nbml6ZWQgd29yZCBlbmRzIGluIGEgLiBkb24ndCBoYXZlICdzcGVsbGNhcGNoZWNrIiBtYXRjaCBpdC4KKy0gVXNlIEtFRVBDQVBXT1JEIGluc3RlYWQgb2YgIktFUCIgYW5kIGFkZCBLRUVQQ0FQUk9PVCAoYWZmaXhlcyBtYXkgYmUKKyAgY2FwYXRhbGl6ZWQpLgorCiBNYWMgdW5pY29kZSBwYXRjaCAoRGEgV29vbiBKdW5nKToKIC0gc2VsZWN0aW5nIHByb3BvcnRpb25hbCBmb250IGJyZWFrcyBkaXNwbGF5CiAtIFVURi04IHRleHQgY2F1c2VzIGRpc3BsYXkgcHJvYmxlbXMuICBGb250IHJlcGxhY2VtZW50IGNhdXNlcyB0aGlzLgpAQCAtNjEsNiArNjEsOCBAQAogICAgIGhlbHBmaWxlIGRvYy9teXNjcmlwdC50eHQKICAgRm9yIHRoZSAiaGVscGZpbGUiIGl0ZW0gIjpoZWxwdGFncyIgaXMgcnVuLgogCitBZGQgIjpzbWFwIiwgU2VsZWN0IG1vZGUgbWFwcGluZz8KKwogQXdhaXRpbmcgcmVzcG9uc2U6CiAtICAgV2luMzI6IHRlYXJvZmYgbWVudSB3aW5kb3cgc2hvdWxkIGhhdmUgYSBzY3JvbGxiYXIgd2hlbiBpdCdzIHRhbGxlciB0aGFuCiAgICAgdGhlIHNjcmVlbi4KQEAgLTc4Myw3ICs3ODUsNyBAQAogOCAgIE9TLzI6IEFkZCBFeHRlbmRlZCBBdHRyaWJ1dGVzIHN1cHBvcnQgYW5kIGRlZmluZSBIQVZFX0FDTC4KIDggICBPUy8yOiBXaGVuIGVkaXRpbmcgYSBmaWxlIG5hbWUgImZvby50eHQiIHRoYXQgaXMgYWN0dWFsbHkgY2FsbGVkIEZPTy50eHQsCiAgICAgd3JpdGluZyB1c2VzICJmb28udHh0Ii4gIFNob3VsZCBvYnRhaW4gdGhlIHJlYWwgZmlsZSBuYW1lLgotOCAgIFNob3VsZCAkVVNFUlBST0ZJTEUgYmUgdXNlZCBpbnN0ZWFkIG9mICRIT01FRFJJVkUvJEhPTUVQQVRIPworOCAgIFNob3VsZCAkVVNFUlBST0ZJTEUgYmUgcHJlZmVycmVkIGFib3ZlICRIT01FRFJJVkUvJEhPTUVQQVRIPwogOCAgIFdpbjMyIGNvbnNvbGU6IDxNLVVwPiBhbmQgPE0tRG93bj4gZG9uJ3Qgd29yay4gKEdlZGRlcykgIFdlIGRvbid0IGhhdmUKICAgICBzcGVjaWFsIGtleXMgZm9yIHRoZXNlLiAgU2hvdWxkIHVzZSBtb2RpZmllciArIGtleS4KIDggICBXaW4zMiBjb25zb2xlOiBjYXBzLWxvY2sgbWFrZXMgbm9uLWFscGhhIGtleXMgd29yayBsaWtlIHdpdGggc2hpZnQuCkBAIC04NDgsNiArODUwLDcgQEAKIAogCiBNYWNpbnRvc2g6Cis3ICAgSW1wbGVtZW50ICJ1bmRlcmN1cmwiLgogNyAgIFBhdGNoIHRvIGFkZCAndHJhbnNwYXJlbmN5JyBvcHRpb24uICBEaXNhZHZhbnRhZ2U6IGl0J3Mgc2xvdy4gKEVja2VoYXJkCiAgICAgQmVybnMsIDIwMDQgTWF5IDkpIGh0dHA6Ly9lY2tpLnRvL3ZpbS9UcmFuc0JhY2stMjAwNC0wNS0wOS5kaWZmCiAgICAgTmVlZHMgbW9yZSB3b3JrLiAgQWRkIHdoZW4gc29tZW9uZSByZWFsbHkgd2FudHMgaXQuCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy91c3JfMDUudHh0IGIvcnVudGltZS9kb2MvdXNyXzA1LnR4dAppbmRleCA2ZDJkNTdlLi5jNTEyOGFlIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy91c3JfMDUudHh0CisrKyBiL3J1bnRpbWUvZG9jL3Vzcl8wNS50eHQKQEAgLTEsNCArMSw0IEBACi0qdXNyXzA1LnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMGFhLiAgTGFzdCBjaGFuZ2U6IDIwMDUgT2N0IDAyCisqdXNyXzA1LnR4dCoJRm9yIFZpbSB2ZXJzaW9uIDcuMGFhLiAgTGFzdCBjaGFuZ2U6IDIwMDUgT2N0IDA0CiAKIAkJICAgICBWSU0gVVNFUiBNQU5VQUwgLSBieSBCcmFtIE1vb2xlbmFhcgogCkBAIC0zMjcsOCArMzI3LDEwIEBACiBUaGF0J3MgYWxsISAgTm93IHlvdSBjYW4gdXNlIHRoZSBjb21tYW5kcyBkZWZpbmVkIGluIHRoaXMgcGx1Z2luIHRvIGp1c3RpZnkKIHRleHQuCiAKLUlmIHlvdXIgcGx1Z2luIGRpcmVjdG9yeSBpcyBnZXR0aW5nIGZ1bGw6IFlvdSBjYW4gYWxzbyBwdXQgdGhlbSBzdWJkaXJlY3RpZXMuCi1Gb3IgZXhhbXBsZSwgdXNlICJ+Ly52aW0vcGx1Z2luL3BlcmwvKi52aW0iIGZvciBhbGwgeW91ciBQZXJsIHBsdWdpbnMuCitJbnN0ZWFkIG9mIHB1dHRpbmcgcGx1Z2lucyBkaXJlY3RseSBpbnRvIHRoZSBwbHVnaW4vIGRpcmVjdG9yeSwgeW91IG1heQorYmV0dGVyIG9yZ2FuaXplIHRoZW0gYnkgcHV0dGluZyB0aGVtIGludG8gc3ViZGlyZWN0b3JpZXMgdW5kZXIgcGx1Z2luLy4KK0FzIGFuIGV4YW1wbGUsIGNvbnNpZGVyIHVzaW5nICJ+Ly52aW0vcGx1Z2luL3BlcmwvKi52aW0iIGZvciBhbGwgeW91ciBQZXJsCitwbHVnaW5zLgogCiAKIEZJTEVUWVBFIFBMVUdJTlMJCQkqYWRkLWZpbGV0eXBlLXBsdWdpbiogKmZ0cGx1Z2lucyoKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3ZlcnNpb242LnR4dCBiL3J1bnRpbWUvZG9jL3ZlcnNpb242LnR4dAppbmRleCBkNGEyMmIzLi4zZjE3ZWJiIDEwMDY0NAotLS0gYS9ydW50aW1lL2RvYy92ZXJzaW9uNi50eHQKKysrIGIvcnVudGltZS9kb2MvdmVyc2lvbjYudHh0CkBAIC0xLDQgKzEsNCBAQAotKnZlcnNpb242LnR4dCogIEZvciBWaW0gdmVyc2lvbiA3LjBhYS4gIExhc3QgY2hhbmdlOiAyMDA1IEFwciAxOAorKnZlcnNpb242LnR4dCogIEZvciBWaW0gdmVyc2lvbiA3LjBhYS4gIExhc3QgY2hhbmdlOiAyMDA1IE9jdCAwOQogCiAKIAkJICBWSU0gUkVGRVJFTkNFIE1BTlVBTCAgICBieSBCcmFtIE1vb2xlbmFhcgpAQCAtODAsNiArODAsMTEgQEAKIEFkZGVkCQkJCQl8YWRkZWQtNi4zfAogRml4ZWQJCQkJCXxmaXhlZC02LjN8CiAKK1ZFUlNJT04gNi40CQkJfHZlcnNpb24tNi40fAorQ2hhbmdlZAkJCQkJfGNoYW5nZWQtNi40fAorQWRkZWQJCQkJCXxhZGRlZC02LjR8CitGaXhlZAkJCQkJfGZpeGVkLTYuNHwKKwogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiBJTkNPTVBBVElCTEUgQ0hBTkdFUwkJCQkqaW5jb21wYXRpYmxlLTYqCiAKQEAgLTEzODQxLDQgKzEzODQ2LDYzMCBAQAogU29sdXRpb246ICAgRG9uJ3Qgc3RvcmUgdGhlIHNpemUgb2YgdGhlIFZpc3VhbCBhcmVhIHdoZW4gcmVkbyBpcyBhY3RpdmUuCiBGaWxlczoJICAgIHNyYy9ub3JtYWwuYwogCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KK1ZFUlNJT04gNi40CQkJCQkJKnZlcnNpb24tNi40KgorCitUaGlzIHNlY3Rpb24gaXMgYWJvdXQgaW1wcm92ZW1lbnRzIG1hZGUgYmV0d2VlbiB2ZXJzaW9uIDYuMyBhbmQgNi40LgorCitUaGlzIGlzIGEgYnVnLWZpeCByZWxlYXNlLiAgVGhlcmUgYXJlIGFsc28gYSBmZXcgbmV3IGZlYXR1cmVzLiAgVGhlIG1ham9yCitudW1iZXIgb2YgbmV3IGl0ZW1zIGlzIGluIHRoZSBydW50aW1lIGZpbGVzIGFuZCB0cmFuc2xhdGlvbnMuCisKK1RoZSBiaWcgTVMtV2luZG93cyB2ZXJzaW9uIG5vdyB1c2VzOgorCVJ1YnkgdmVyc2lvbiAxLjguMworCVBlcmwgdmVyc2lvbiA1LjguNworCVB5dGhvbiB2ZXJzaW9uIDIuNC4yCisKKworQ2hhbmdlZAkJCQkJCQkqY2hhbmdlZC02LjQqCistLS0tLS0tCisKK05vdGhpbmcgcmVsZXZhbnQuCisKKworQWRkZWQJCQkJCQkJKmFkZGVkLTYuNCoKKy0tLS0tCisKK05ldHJjIHN5bnRheCBmaWxlLiAoTmlrb2xhaSBXZWlidWxsKQorU3Vkb2VycyBzeW50YXggZmlsZS4gKE5pa29sYWkgV2VpYnVsbCkKK1NNVFByYyBzeW50YXggZmlsZS4gKEtvcm5lbCBLaWVsY3pld3NraSkKK0VzdGVyZWwgc3ludGF4IGZpbGUuIChNYXVyaXppbyBUcmFuY2hlcm8pCisKKworRml4ZWQJCQkJCQkJKmZpeGVkLTYuNCoKKy0tLS0tCisKKyJkRnhkOyIgZGVsZXRlZCB0aGUgY2hhcmFjdGVyIHVuZGVyIHRoZSBjdXJzb3IsICJkOyIgZGlkbid0IHJlbWVtYmVyIHRoZQorZXhjbHVzaXZlbmVzcyBvZiB0aGUgbW90aW9uLgorCitXaGVuIHVzaW5nICJzZXQgbGFzdHN0YXR1cz0yIGNtZGhlaWdodD0yIiBpbiB0aGUgLmd2aW1yYyB5b3UgbWF5IG9ubHkgZ2V0IG9uZQorbGluZSBmb3IgdGhlIGNtZGxpbmUuIChDaHJpc3RpYW4gUm9iaW5zb24pICBJbnZva2UgY29tbWFuZF9oZWlnaHQoKSBhZnRlciB0aGUKK0dVSSBoYXMgc3RhcnRlZCB1cC4KKworR2NjIHdvdWxkIHdhcm4gImRlcmVmZXJlbmNpbmcgdHlwZS1wdW5uZWQgcG9pbnRlciB3aWxsIGJyZWFrIHN0cmljdCAtYWxpYXNpbmcKK3J1bGVzIi4gIEF2b2lkIHVzaW5nIHR5cGVjYXN0cyBmb3IgdmFyaWFibGUgcG9pbnRlcnMuCisKK1BhdGNoIDYuMy4wMDEKK1Byb2JsZW06ICAgICI6YnJvd3NlIHNwbGl0IiBnaXZlcyB0aGUgZmlsZSBzZWxlY3Rpb24gZGlhbG9nIHR3aWNlLiAoR29yZG9uCisJICAgIEJhemVsZXkpICBTYW1lIHByb2JsZW0gZm9yICI6YnJvd3NlIGRpZmZwYXRjaCIuCitTb2x1dGlvbjogICBSZXNldCBjbWRtb2QuYnJvd3NlIGJlZm9yZSBjYWxsaW5nIGRvX2VjbWQoKS4KK0ZpbGVzOgkgICAgc3JjL2RpZmYuYywgc3JjL2V4X2RvY21kLmMKKworUGF0Y2ggNi4zLjAwMgorUHJvYmxlbTogICAgV2hlbiB1c2luZyB0cmFuc2xhdGVkIGhlbHAgZmlsZXMgd2l0aCBub24tQVNDSUkgbGF0aW4xIGNoYXJhY3RlcnMKKwkgICAgaW4gdGhlIGZpcnN0IGxpbmUgdGhlIHV0Zi04IGRldGVjdGlvbiBpcyB3cm9uZy4KK1NvbHV0aW9uOiAgIFByb3Blcmx5IGRldGVjdCB1dGYtOCBjaGFyYWN0ZXJzLiAgV2hlbiBhIG1peCBvZiBlbmNvZGluZ3MgaXMKKwkgICAgZGV0ZWN0ZWQgY29udGludWUgd2l0aCB0aGUgbmV4dCBsYW5ndWFnZSBhbmQgYXZvaWQgYSAibm8gbWF0Y2hlcyIKKwkgICAgZXJyb3IgYmVjYXVzZSBvZiAiZ290X2ludCIgYmVpbmcgc2V0LiAgQWRkIHRoZSBkaXJlY3RvcnkgbmFtZSB0bworCSAgICB0aGUgZXJyb3IgbWVzc2FnZSBmb3IgYSBkdXBsaWNhdGUgdGFnLgorRmlsZXM6CSAgICBzcmMvZXhfY21kcy5jCisKK1BhdGNoIDYuMy4wMDMKK1Byb2JsZW06ICAgIENyYXNoIHdoZW4gdXNpbmcgYSBjb25zb2xlIGRpYWxvZyBhbmQgdGhlIGZpcnN0IGNob2ljZSBkb2VzIG5vdAorCSAgICBoYXZlIGEgZGVmYXVsdCBidXR0b24uIChEYXJpbiBPaGFzaGkpCitTb2x1dGlvbjogICBBbGxvY2F0ZSB0d28gbW9yZSBjaGFyYWN0ZXJzIGZvciB0aGUgW10gYXJvdW5kIHRoZSBjaGFyYWN0ZXIgZm9yCisJICAgIHRoZSBkZWZhdWx0IGNob2ljZS4KK0ZpbGVzOgkgICAgc3JjL21lc3NhZ2UuYworCitQYXRjaCA2LjMuMDA0CitQcm9ibGVtOiAgICBXaGVuIHNlYXJjaGluZyBmb3IgYSBsb25nIHN0cmluZyAoMTQwIGNoYXJzIGluIGEgODAgY29sdW1uCisJICAgIHRlcm1pbmFsKSBnZXQgdGhyZWUgaGl0LWVudGVyIHByb21wdHMuIChSb2JlcnQgV2ViYikKK1NvbHV0aW9uOiAgIEF2b2lkIHRoZSBoaXQtZW50ZXIgcHJvbXB0IHdoZW4gZ2l2aW5nIHRoZSBtZXNzYWdlIGZvciB3cmFwcGluZworCSAgICBhcm91bmQgdGhlIGVuZCBvZiB0aGUgYnVmZmVyLiAgRG9uJ3QgZ2l2ZSB0aGF0IG1lc3NhZ2UgYWdhaW4gd2hlbgorCSAgICB0aGUgc3RyaW5nIHdhcyBub3QgZm91bmQuCitGaWxlczoJICAgIHNyYy9tZXNzYWdlLmMsIHNyYy9zZWFyY2guYworCitQYXRjaCA2LjMuMDA1CitQcm9ibGVtOiAgICBDcmFzaCB3aGVuIHNlYXJjaGluZyBmb3IgYSBwYXR0ZXJuIHdpdGggYSBjaGFyYWN0ZXIgb2Zmc2V0IGFuZAorCSAgICBzdGFydGluZyBpbiBhIGNsb3NlZCBmb2xkLiAoRnJhbmsgQnV0bGVyKQorU29sdXRpb246ICAgQ2hlY2sgZm9yIHRoZSBjb2x1bW4gdG8gYmUgcGFzdCB0aGUgZW5kIG9mIHRoZSBsaW5lLiAgQWxzbyBmaXgKKwkgICAgdGhhdCBhIHBhdHRlcm4gd2l0aCBhIGNoYXJhY3RlciBvZmZzZXQgcmVsYXRpdmUgdG8gdGhlIGVuZCBpc24ndAorCSAgICByZWFkIGJhY2sgZnJvbSB0aGUgdmltaW5mbyBwcm9wZXJseS4KK0ZpbGVzOgkgICAgc3JjL3NlYXJjaC5jCisKK1BhdGNoIDYuMy4wMDYKK1Byb2JsZW06ICAgICI6YnJlYWthZGQgZmlsZSAqZm9vIiBwcmVwZW5kcyB0aGUgY3VycmVudCBkaXJlY3RvcnkgdG8gdGhlIGZpbGUKKwkgICAgcGF0dGVybi4gKEhhcmkgS3Jpc2huYSBEYXJhKQorU29sdXRpb246ICAgS2VlcCB0aGUgcGF0dGVybiBhcy1pcy4KK0ZpbGVzOgkgICAgc3JjL2V4X2NtZHMyLmMKKworUGF0Y2ggNi4zLjAwNworUHJvYmxlbTogICAgV2hlbiB0aGVyZSBpcyBhIGJ1ZmZlciB3aXRoICdidWZ0eXBlJyBzZXQgdG8gIm5vZmlsZSIgYW5kIHVzaW5nIGEKKwkgICAgIjpjZCIgY29tbWFuZCwgdGhlIHN3YXAgZmlsZSBpcyBub3QgZGVsZXRlZCB3aGVuIGV4aXRpbmcuCitTb2x1dGlvbjogICBVc2UgdGhlIGZ1bGwgcGF0aCBvZiB0aGUgc3dhcCBmaWxlIGFsc28gZm9yICJub2ZpbGUiIGJ1ZmZlcnMuCitGaWxlczoJICAgIHNyYy9maWxlaW8uYworCitQYXRjaCA2LjMuMDA4CitQcm9ibGVtOiAgICBDb21waWxpbmcgZmFpbHMgdW5kZXIgT1MvMi4KK1NvbHV0aW9uOiAgIEluY2x1ZGUgImVfc2NyZWVubW9kZSIgYWxzbyBmb3IgT1MvMi4gKERhdmlkIFNhbmRlcnMpCitGaWxlczoJICAgIHNyYy9nbG9iYWxzLmgKKworUGF0Y2ggNi4zLjAwOSAoYWZ0ZXIgNi4zLjAwNikKK1Byb2JsZW06ICAgICI6YnJlYWthZGQgZmlsZSAvcGF0aC9mb28udmltIiBkb2VzIG5vdCBtYXRjaCB3aGVuIGEgc3ltYm9saWMgbGluaworCSAgICBpcyBpbnZvbHZlZC4gIChTZXJ2YXRpdXMgQnJhbmR0KQorU29sdXRpb246ICAgRG8gZXhwYW5kIHRoZSBwYXR0ZXJuIHdoZW4gaXQgZG9lcyBub3Qgc3RhcnQgd2l0aCAiKiIuCitGaWxlczoJICAgIHJ1bnRpbWUvZG9jL3JlcGVhdC50eHQsIHNyYy9leF9jbWRzMi5jCisKK1BhdGNoIDYuMy4wMTAKK1Byb2JsZW06ICAgIFdoZW4gd3JpdGluZyB0byBhIG5hbWVkIHBpcGUgdGhlcmUgaXMgYW4gZXJyb3IgZm9yIGZzeW5jKCkKKwkgICAgZmFpbGluZy4KK1NvbHV0aW9uOiAgIElnbm9yZSB0aGUgZnN5bmMoKSBlcnJvciBmb3IgZGV2aWNlcy4KK0ZpbGVzOgkgICAgc3JjL2ZpbGVpby5jCisKK1BhdGNoIDYuMy4wMTEKK1Byb2JsZW06ICAgIENyYXNoIHdoZW4gdGhlIGNvbXBsZXRpb24gZnVuY3Rpb24gb2YgYSB1c2VyLWNvbW1hbmQgdXNlcyBhCisJICAgICJub3JtYWwgOmNtZCIgY29tbWFuZC4gIChIYXJpIEtyaXNobmEgRGFyYSkKK1NvbHV0aW9uOiAgIFNhdmUgdGhlIGNvbW1hbmQgbGluZSB3aGVuIGludm9raW5nIHRoZSBjb21wbGV0aW9uIGZ1bmN0aW9uLgorRmlsZXM6CSAgICBzcmMvZXhfZ2V0bG4uYworCitQYXRjaCA2LjMuMDEyCitQcm9ibGVtOiAgICBJbnRlcm5hbCBsYWxsb2MoMCkgZXJyb3Igd2hlbiB1c2luZyBhIGNvbXBsaWNhdGVkIG11bHRpLWxpbmUKKwkgICAgcGF0dGVybiBpbiBhIHN1YnN0aXR1dGUgY29tbWFuZC4gKEx1YyBIZXJtaXR0ZSkKK1NvbHV0aW9uOiAgIEF2b2lkIGdvaW5nIHBhc3QgdGhlIGVuZCBvZiBhIGxpbmUuCitGaWxlczoJICAgIHNyYy9leF9jbWRzLmMKKworUGF0Y2ggNi4zLjAxMworUHJvYmxlbTogICAgQ3Jhc2ggd2hlbiBlZGl0aW5nIGEgY29tbWFuZCBsaW5lIGFuZCB0eXBpbmcgQ1RSTC1SID0gdG8gZXZhbHVhdGUKKwkgICAgYSBmdW5jdGlvbiB0aGF0IHVzZXMgIm5vcm1hbCA6Y21kIi4gKEhhcmkgS3Jpc2huYSBEYXJhKQorU29sdXRpb246ICAgU2F2ZSBhbmQgcmVzdG9yZSB0aGUgY29tbWFuZCBsaW5lIHdoZW4gZXZhbHVhdGluZyBhbiBleHByZXNzaW9uCisJICAgIGZvciBDVFJMLVIgPS4KK0ZpbGVzOgkgICAgc3JjL2V4X2dldGxuLmMsIHNyYy9vcHMuYywgc3JjL3Byb3RvL2V4X2dldGxuLnBybywKKwkgICAgc3JjL3Byb3RvL29wcy5wcm8KKworUGF0Y2ggNi4zLjAxNAorUHJvYmxlbTogICAgV2hlbiB1c2luZyBDaGluZXNlIG9yIFRhaXdhbmVzZSB0aGUgZGVmYXVsdCBmb3IgJ2hlbHBsYW5nJyBpcworCSAgICB3cm9uZy4gKFNpbW9uIExpYW5nKQorU29sdXRpb246ICAgVXNlIHRoZSBwYXJ0IG9mIHRoZSBsb2NhbGUgbmFtZSBhZnRlciAiemhfIi4KK0ZpbGVzOgkgICAgc3JjL29wdGlvbi5jCisKK1BhdGNoIDYuMy4wMTUKK1Byb2JsZW06ICAgIFRoZSBzdHJpbmcgdGhhdCB3aW5yZXN0Y21kKCkgcmV0dXJucyBtYXkgZW5kIGluIGdhcmJhZ2UuCitTb2x1dGlvbjogICBOVUwtdGVybWluYXRlIHRoZSBzdHJpbmcuIChXYWx0ZXIgQnJpc2NvZSkKK0ZpbGVzOgkgICAgc3JjL2V2YWwuYworCitQYXRjaCA2LjMuMDE2CitQcm9ibGVtOiAgICBUaGUgZGVmYXVsdCB2YWx1ZSBmb3IgJ2RlZmluZScgaGFzICJccyIgYmVmb3JlICcjJy4KK1NvbHV0aW9uOiAgIEFkZCBhIHN0YXIgYWZ0ZXIgIlxzIi4gKEhlcmN1bGFubyBkZSBMaW1hIEVpbmxvZnQgTmV0bykKK0ZpbGVzOgkgICAgc3JjL29wdGlvbi5jCisKK1BhdGNoIDYuMy4wMTcKK1Byb2JsZW06ICAgICI4enoiIG1heSBsZWF2ZSB0aGUgY3Vyc29yIGJleW9uZCB0aGUgZW5kIG9mIHRoZSBsaW5lLiAoTmlrbworCSAgICBNYWF0amVzKQorU29sdXRpb246ICAgQ29ycmVjdCB0aGUgY3Vyc29yIGNvbHVtbiBhZnRlciBtb3ZpbmcgdG8gYW5vdGhlciBsaW5lLgorRmlsZXM6CSAgICBzcmMvbm9ybWFsLmMKKworUGF0Y2ggNi4zLjAxOAorUHJvYmxlbTogICAgIjowYXJnYWRkIHplcm8iIGFkZGVkIHRoZSBhcmd1bWVudCBhZnRlciB0aGUgZmlyc3Qgb25lLCBpbnN0ZWFkIG9mCisJICAgIGJlZm9yZSBpdC4gKEFkcmkgVmVyaG9lZikKK1NvbHV0aW9uOiAgIEFjY2VwdCBhIHplcm8gcmFuZ2UgZm9yICI6YXJnYWRkIi4KK0ZpbGVzOgkgICAgc3JjL2V4X2NtZHMuaAorCitQYXRjaCA2LjMuMDE5CitQcm9ibGVtOiAgICBDcmFzaCBpbiBzdGFydHVwIGZvciBkZWJ1ZyB2ZXJzaW9uLiAoRGF2aWQgUmVubmFscykKK1NvbHV0aW9uOiAgIE1vdmUgdGhlIGNhbGwgdG8gbmJkZWJ1Z193YWl0KCkgdG8gYWZ0ZXIgYWxsb2NhdGluZyBOYW1lQnVmZi4KK0ZpbGVzOgkgICAgc3JjL21haW4uYworCitQYXRjaCA2LjMuMDIwCitQcm9ibGVtOiAgICBXaGVuICdlbmNvZGluZycgaXMgInV0Zi04IiBhbmQgJ2RlbGNvbWJpbmUnIGlzIHNldCwgImR3IiBkb2VzIG5vdAorCSAgICBkZWxldGUgYSB3b3JkIGJ1dCBvbmx5IGEgY29tYmluaW5nIGNoYXJhY3RlciBvZiB0aGUgZmlyc3QKKwkgICAgY2hhcmFjdGVyLCBpZiB0aGVyZSBpcyBvbmUuIChSYXBoYWVsIEZpbmtlbCkKK1NvbHV0aW9uOiAgIENvcnJlY3RseSBjaGVjayB0aGF0IG9uZSBjaGFyYWN0ZXIgaXMgYmVpbmcgZGVsZXRlZC4KK0ZpbGVzOgkgICAgc3JjL21pc2MxLmMKKworUGF0Y2ggNi4zLjAyMQorUHJvYmxlbTogICAgV2hlbiB0aGUgbGFzdCBjaGFyYWN0ZXIgb2YgYSBmaWxlIG5hbWUgaXMgYSBtdWx0aS1ieXRlIGNoYXJhY3RlcgorCSAgICBhbmQgdGhlIGxhc3QgYnl0ZSBpcyBhIHBhdGggc2VwYXJhdG9yLCB0aGUgZmlsZSBjYW5ub3QgYmUgZWRpdGVkLgorU29sdXRpb246ICAgQ2hlY2sgZm9yIHRoZSBsYXN0IGJ5dGUgdG8gYmUgcGFydCBvZiBhIG11bHRpLWJ5dGUgY2hhcmFjdGVyLgorCSAgICAoVGFybyBNdXJhb2thKQorRmlsZXM6CSAgICBzcmMvZmlsZWlvLmMKKworUGF0Y2ggNi4zLjAyMiAoZXh0cmEpCitQcm9ibGVtOiAgICBXaW4zMjogV2hlbiB0aGUgbGFzdCBjaGFyYWN0ZXIgb2YgYSBmaWxlIG5hbWUgaXMgYSBtdWx0aS1ieXRlCisJICAgIGNoYXJhY3RlciBhbmQgdGhlIGxhc3QgYnl0ZSBpcyBhIHBhdGggc2VwYXJhdG9yLCB0aGUgZmlsZSBjYW5ub3QKKwkgICAgYmUgd3JpdHRlbi4gIEEgdHJhaWwgYnl0ZSB0aGF0IGlzIGEgc3BhY2UgbWFrZXMgdGhhdCBhIGZpbGUgY2Fubm90CisJICAgIGJlIG9wZW5lZCBmcm9tIHRoZSBjb21tYW5kIGxpbmUuCitTb2x1dGlvbjogICBSZWNvZ25pemUgZG91YmxlLWJ5dGUgY2hhcmFjdGVycyB3aGVuIHBhcnNpbmcgdGhlIGNvbW1hbmQgbGluZS4KKwkgICAgSW4gbWNoX3N0YXQoKSBjaGVjayBmb3IgdGhlIGxhc3QgYnl0ZSB0byBiZSBwYXJ0IG9mIGEgbXVsdGktYnl0ZQorCSAgICBjaGFyYWN0ZXIuICAoVGFybyBNdXJhb2thKQorRmlsZXM6CSAgICBzcmMvZ3VpX3c0OC5jLCBzcmMvb3NfbXN3aW4uYworCitQYXRjaCA2LjMuMDIzCitQcm9ibGVtOiAgICBXaGVuIHRoZSAidG8iIHBhcnQgb2YgYSBtYXBwaW5nIHN0YXJ0cyB3aXRoIGl0cyAiZnJvbSIgcGFydCwKKwkgICAgYWJicmV2aWF0aW9ucyBmb3IgdGhlIHNhbWUgY2hhcmFjdGVycyBpcyBub3QgcG9zc2libGUuICBGb3IKKwkgICAgZXhhbXBsZSwgd2hlbiA8U3BhY2U+IGlzIG1hcHBlZCB0byBzb21ldGhpbmcgdGhhdCBzdGFydHMgd2l0aCBhCisJICAgIHNwYWNlLCB0eXBpbmcgPFNwYWNlPiBkb2VzIG5vdCBleHBhbmQgYWJicmV2aWF0aW9ucy4KK1NvbHV0aW9uOiAgIE9ubHkgZGlzYWJsZSBleHBhbmRpbmcgYWJicmV2aWF0aW9ucyB3aGVuIGEgbWFwcGluZyBpcyBub3QKKwkgICAgcmVtYXBwZWQsIGRvbid0IGRpc2FibGUgaXQgd2hlbiB0aGUgUkhTIG9mIGEgbWFwcGluZyBzdGFydHMgd2l0aAorCSAgICB0aGUgTEhTLgorRmlsZXM6CSAgICBzcmMvZ2V0Y2hhci5jLCBzcmMvdmltLmgKKworUGF0Y2ggNi4zLjAyNAorUHJvYmxlbTogICAgSW4gYSBmZXcgcGxhY2VzIGEgc3RyaW5nIGluIGFsbG9jYXRlZCBtZW1vcnkgaXMgbm90IHRlcm1pbmF0ZWQKKwkgICAgd2l0aCBhIE5VTC4KK1NvbHV0aW9uOiAgIEFkZCBnYV9hcHBlbmQoTlVMKSBpbiBzY3JpcHRfZ2V0KCksIGd1aV9kb19maW5kcmVwbCgpIGFuZAorCSAgICBzZXJ2ZXJHZXRWaW1OYW1lcygpLgorRmlsZXM6CSAgICBzcmMvZXhfZ2V0bG4uYywgc3JjL2d1aS5jLCBzcmMvaWZfeGNtZHNydi5jLCBzcmMvb3NfbXN3aW4uYworCitQYXRjaCA2LjMuMDI1IChleHRyYSkKK1Byb2JsZW06ICAgIE1pc3NpbmcgTlVMIGZvciBsaXN0IG9mIHNlcnZlciBuYW1lcy4KK1NvbHV0aW9uOiAgIEFkZCBnYV9hcHBlbmQoTlVMKSBpbiBzZXJ2ZXJHZXRWaW1OYW1lcygpLgorRmlsZXM6CSAgICBzcmMvb3NfbXN3aW4uYworCitQYXRjaCA2LjMuMDI2CitQcm9ibGVtOiAgICBXaGVuIH4vLnZpbS9hZnRlci9zeW50YXgvc3luY29sb3IudmltIGNvbnRhaW5zIGEgY29tbWFuZCB0aGF0CisJICAgIHJlbG9hZHMgdGhlIGNvbG9ycyBhbiBlbmxlc3MgbG9vcCBhbmQvb3IgYSBjcmFzaCBtYXkgb2NjdXIuCitTb2x1dGlvbjogICBPbmx5IGZyZWUgdGhlIG9sZCB2YWx1ZSBvZiBhbiBvcHRpb24gd2hlbiBpdCB3YXMgb3JpZ2luYWxseQorCSAgICBhbGxvY2F0ZWQuICBMaW1pdCByZWN1cnNpdmVuZXNzIG9mIGluaXRfaGlnaGxpZ2h0KCkgdG8gNSBsZXZlbHMuCitGaWxlczoJICAgIHNyYy9vcHRpb24uYywgc3JjL3N5bnRheC5jCisKK1BhdGNoIDYuMy4wMjcKK1Byb2JsZW06ICAgIFZNUzogV3JpdGluZyBhIGZpbGUgbWF5IGluc2VydCBleHRyYSBDUiBjaGFyYWN0ZXJzLiAgTm90IGFsbAorCSAgICB0ZXJtaW5hbHMgYXJlIHJlY29nbml6ZWQgY29ycmVjdGx5LiAgVnQzMjAgZG9lc24ndCBzdXBwb3J0IGNvbG9ycy4KKwkgICAgRW52aXJvbm1lbnQgdmFyaWFibGVzIGFyZSBub3QgZXhwYW5kZWQgY29ycmVjdGx5LgorU29sdXRpb246ICAgVXNlIGFub3RoZXIgbWV0aG9kIHRvIHdyaXRlIGZpbGVzLiAgQWRkIHZ0MzIwIHRlcm1jYXAgY29kZXMgZm9yCisJICAgIGNvbG9ycy4gIChab2x0YW4gQXJwYWRmZnkpCitGaWxlczoJICAgIHNyYy9maWxlaW8uYywgc3JjL21pc2MxLmMsIHNyYy9vc191bml4LmMsIHNyYy9zdHJ1Y3RzLmgsCisJICAgIHNyYy90ZXJtLmMKKworUGF0Y2ggNi4zLjAyOAorUHJvYmxlbTogICAgV2hlbiBhcHBlbmRpbmcgdG8gYSBmaWxlIHRoZSBCT00gbWFya2VyIG1heSBiZSB3cml0dGVuLiAgKEFsZXgKKwkgICAgSmFrdXNoZXYpCitTb2x1dGlvbjogICBEbyBub3Qgd3JpdGUgdGhlIEJPTSBtYXJrZXIgd2hlbiBhcHBlbmRpbmcuCitGaWxlczoJICAgIHNyYy9maWxlaW8uYworCitQYXRjaCA2LjMuMDI5CitQcm9ibGVtOiAgICBDcmFzaCB3aGVuIGluc2VydGluZyBhIGxpbmUgYnJlYWsuIChXYWx0ZXIgQnJpc2NvZSkKK1NvbHV0aW9uOiAgIEluIHRoZSBzeW50YXggaGlnaGxpZ2h0aW5nIGNvZGUsIGRvbid0IHVzZSBhbiBvbGQgc3RhdGUgYWZ0ZXIgYQorCSAgICBjaGFuZ2Ugd2FzIG1hZGUsIGN1cnJlbnRfY29sIG1heSBiZSBwYXN0IHRoZSBlbmQgb2YgdGhlIGxpbmUuCitGaWxlczoJICAgIHNyYy9zeW50YXguYworCitQYXRjaCA2LjMuMDMwCitQcm9ibGVtOiAgICBHVEsgMjogQ3Jhc2ggd2hlbiBzb3VyY2luZyBhIHNjcmlwdCB0aGF0IGRlbGV0ZXMgdGhlIG1lbnVzLCBzZXRzCisJICAgICdlbmNvZGluZycgdG8gInV0Zi04IiBhbmQgbG9hZHMgdGhlIG1lbnVzIGFnYWluLiAgR1RLIGVycm9yCisJICAgIG1lc3NhZ2Ugd2hlbiB0b29sdGlwIHRleHQgaXMgaW4gYSB3cm9uZyBlbmNvZGluZy4KK1NvbHV0aW9uOiAgIERvbid0IGNvcHkgY2hhcmFjdGVycyBmcm9tIHRoZSBvbGQgc2NyZWVuIHRvIHRoZSBuZXcgc2NyZWVuIHdoZW4KKwkgICAgc3dpdGNoaW5nICdlbmNvZGluZycgdG8gdXRmLTgsIHRoZXkgbWF5IGJlIGludmFsaWQuICBPbmx5IHNldCB0aGUKKwkgICAgdG9vbHRpcCB3aGVuIGl0IGlzIHZhbGlkIHV0Zi04LgorRmlsZXM6CSAgICBzcmMvZ3VpX2d0ay5jLCBzcmMvbWJ5dGUuYywgc3JjL3Byb3RvL21ieXRlLnBybywgc3JjL3NjcmVlbi5jCisKK1BhdGNoIDYuMy4wMzEKK1Byb2JsZW06ICAgIFdoZW4gZW50ZXJpbmcgYSBtYXBwaW5nIGFuZCBwcmVzc2luZyBUYWIgaGFsZndheSB0aGUgY29tbWFuZCBsaW5lCisJICAgIGlzbid0IHJlZHJhd24gcHJvcGVybHkuIChBZHJpIFZlcmhvZWYpCitTb2x1dGlvbjogICBSZXBvc2l0aW9uIHRoZSBjdXJzb3IgYWZ0ZXIgZHJhd2luZyBvdmVyIHRoZSAiLi4uIiBvZiB0aGUKKwkgICAgY29tcGxldGlvbiBhdHRlbXB0LgorRmlsZXM6CSAgICBzcmMvZXhfZ2V0bG4uYworCitQYXRjaCA2LjMuMDMyCitQcm9ibGVtOiAgICBVc2luZyBQeXRob24gMi4zIHdpdGggdGhyZWFkcyBkb2Vzbid0IHdvcmsgcHJvcGVybHkuCitTb2x1dGlvbjogICBSZWxlYXNlIHRoZSBsb2NrIGFmdGVyIGluaXRpYWxpemF0aW9uLgorRmlsZXM6CSAgICBzcmMvaWZfcHl0aG9uLmMKKworUGF0Y2ggNi4zLjAzMworUHJvYmxlbTogICAgV2hlbiBhIG1hcHBpbmcgZW5kcyBpbiBhIE5vcm1hbCBtb2RlIGNvbW1hbmQgb2YgbW9yZSB0aGFuIG9uZQorCSAgICBjaGFyYWN0ZXIgVmltIGRvZXNuJ3QgcmV0dXJuIHRvIEluc2VydCBtb2RlLgorU29sdXRpb246ICAgQ2hlY2sgdGhhdCB0aGUgbWFwcGluZyBoYXMgZW5kZWQgYWZ0ZXIgb2J0YWluaW5nIGFsbCBjaGFyYWN0ZXJzIG9mCisJICAgIHRoZSBOb3JtYWwgbW9kZSBjb21tYW5kLgorRmlsZXM6CSAgICBzcmMvbm9ybWFsLmMKKworUGF0Y2ggNi4zLjAzNAorUHJvYmxlbTogICAgVk1TOiBjcmFzaCB3aGVuIHVzaW5nICI6aGVscCIuIAorU29sdXRpb246ICAgQXZvaWQgdXNpbmcgInRhZ3MtPz8iLCBzb21lIE9wZW4gVk1TIHN5c3RlbXMgY2FuJ3QgaGFuZGxlIHRoZSAiPyIKKwkgICAgd2lsZGNhcmQuICAoWm9sdGFuIEFycGFkZmZ5KQorRmlsZXM6CSAgICBzcmMvdGFnLmMKKworUGF0Y2ggNi4zLjAzNSAoZXh0cmEpCitQcm9ibGVtOiAgICBSSVNDIE9TOiBDb21waWxlIGVycm9ycy4KK1NvbHV0aW9uOiAgIENoYW5nZSBlX3NjcmVubW9kZSB0byBlX3NjcmVlbm1vZGUuICBDaGFuZ2UgdGhlIHdheQorCSAgICBfX3Jpc2Nvc2lmeV9jb250cm9sIGlzIHNldC4gIEltcHJvdmUgdGhlIG1ha2VmaWxlLiAgKEFuZHkgV2luZ2F0ZSkKK0ZpbGVzOgkgICAgc3JjL29zX3Jpc2Nvcy5jLCBzcmMvc2VhcmNoLmMsIHNyYy9NYWtlX3JvLm1haworCitQYXRjaCA2LjMuMDM2CitQcm9ibGVtOiAgICBtbF9nZXQgZXJyb3JzIHdoZW4gdGhlIHdob2xlIGZpbGUgaXMgYSBmb2xkLCBzd2l0Y2hpbmcKKwkgICAgJ2ZvbGRtZXRob2QnIGFuZCBkb2luZyAiemoiLiAoQ2hyaXN0aWFuIEouIFJvYmluc29uKSBXYXMgbm90CisJICAgIGRlbGV0aW5nIHRoZSBmb2xkIGJ1dCBjcmVhdGluZyBhIGZvbGQgd2l0aCB6ZXJvIGxpbmVzLgorU29sdXRpb246ICAgRGVsZXRlIHRoZSBmb2xkIHByb3Blcmx5LgorRmlsZXM6CSAgICBzcmMvZm9sZC5jCisKK1BhdGNoIDYuMy4wMzcgKGFmdGVyIDYuMy4wMzIpCitQcm9ibGVtOiAgICBXYXJuaW5nIGZvciB1bnVzZWQgdmFyaWFibGUuCitTb2x1dGlvbjogICBDaGFuZ2UgdGhlICNpZmRlZnMgZm9yIHRoZSBzYXZlZCB0aHJlYWQgc3R1ZmYuCitGaWxlczoJICAgIHNyYy9pZl9weXRob24uYworCitQYXRjaCA2LjMuMDM4IChleHRyYSkKK1Byb2JsZW06ICAgIFdpbjMyOiBXaGVuIHRoZSAiZmlsZSBjaGFuZ2VkIiBkaWFsb2cgcG9wcyB1cCBhZnRlciBhIGNsaWNrIHRoYXQKKwkgICAgZ2l2ZXMgZ3ZpbSBmb2N1cyBhbmQgbm90IG1vdmluZyB0aGUgbW91c2UgYWZ0ZXIgdGhhdCwgdGhlIGVmZmVjdAorCSAgICBvZiB0aGUgY2xpY2sgbWF5IG9jY3VyIHdoZW4gbW92aW5nIHRoZSBtb3VzZSBsYXRlci4gKEtlbiBDbGFyaykKKwkgICAgSGFwcGVuZWQgYmVjYXVzZSB0aGUgcmVsZWFzZSBldmVudCB3YXMgbWlzc2VkLgorU29sdXRpb246ICAgQ2xlYXIgdGhlIHNfYnV0dG9uX3BlbmRpbmcgdmFyaWFibGUgd2hlbiBhbnkgaW5wdXQgaXMgcmVjZWl2ZWQuCitGaWxlczoJICAgIHNyYy9ndWlfdzQ4LmMKKworUGF0Y2ggNi4zLjAzOQorUHJvYmxlbTogICAgV2hlbiAnbnVtYmVyJyBpcyBzZXQgYW5kIGluc2VydGluZyBsaW5lcyBqdXN0IGFib3ZlIHRoZSBmaXJzdAorCSAgICBkaXNwbGF5ZWQgbGluZSAoaW4gYW5vdGhlciB3aW5kb3cgb24gdGhlIHNhbWUgYnVmZmVyKSwgdGhlIGxpbmUKKwkgICAgbnVtYmVycyBhcmUgbm90IHVwZGF0ZWQuICAoSGl0aWVyIFN5bHZhaW4pCitTb2x1dGlvbjogICBXaGVuICdudW1iZXInIGlzIHNldCBhbmQgbGluZXMgYXJlIGluc2VydGVkL2RlbGV0ZWQgcmVkcmF3IGFsbAorCSAgICBsaW5lcyBiZWxvdyB0aGUgY2hhbmdlLgorRmlsZXM6CSAgICBzcmMvc2NyZWVuLmMKKworUGF0Y2ggNi4zLjA0MAorUHJvYmxlbTogICAgRXJyb3IgaGFuZGxpbmcgZG9lcyBub3QgYWx3YXlzIHdvcmsgcHJvcGVybHkgYW5kIG1heSBjYXVzZSBhCisJICAgIGJ1ZmZlciB0byBiZSBtYXJrZWQgYXMgaWYgaXQncyB2aWV3ZWQgaW4gYSB3aW5kb3cgd2hpbGUgaXQgaXNuJ3QuCisJICAgIEFsc28gd2hlbiBzZWxlY3RpbmcgIkFib3J0IiBhdCB0aGUgYXR0ZW50aW9uIHByb21wdC4KK1NvbHV0aW9uOiAgIEFkZCBlbnRlcl9jbGVhbnVwKCkgYW5kIGxlYXZlX2NsZWFudXAoKSBmdW5jdGlvbnMgdG8gbW92ZQorCSAgICBzYXZpbmcvcmVzdG9yaW5nIHRoaW5ncyBmb3IgZXJyb3IgaGFuZGxpbmcgdG8gb25lIHBsYWNlLgorCSAgICBDbGVhciBhIGJ1ZmZlciByZWFkIGVycm9yIHdoZW4gaXQncyB1bmxvYWRlZC4KK0ZpbGVzOgkgICAgc3JjL2J1ZmZlci5jLCBzcmMvZXhfZG9jbWQuYywgc3JjL2V4X2V2YWwuYywKKwkgICAgc3JjL3Byb3RvL2V4X2V2YWwucHJvLCBzcmMvc3RydWN0cy5oLCBzcmMvdmltLmgKKworUGF0Y2ggNi4zLjA0MSAoZXh0cmEpCitQcm9ibGVtOiAgICBXaW4zMjogV2hlbiB0aGUgcGF0aCB0byBhIGZpbGUgaGFzIFJ1c3NpYW4gY2hhcmFjdGVycywgIjpjZCAlOnA6aCIKKwkgICAgZG9lc24ndCB3b3JrLiAoVmFsZXJ5IEtvbmRha29mZikKK1NvbHV0aW9uOiAgIFVzZSBhIHdpZGUgZnVuY3Rpb24gdG8gY2hhbmdlIGRpcmVjdG9yeS4KK0ZpbGVzOgkgICAgc3JjL29zX21zd2luLmMKKworUGF0Y2ggNi4zLjA0MgorUHJvYmxlbTogICAgV2hlbiB0aGVyZSBpcyBhIGNsb3NlZCBmb2xkIGF0IHRoZSB0b3Agb2YgdGhlIHdpbmRvdywgQ1RSTC1YCisJICAgIENUUkwtRSBpbiBJbnNlcnQgbW9kZSByZWR1Y2VzIHRoZSBzaXplIG9mIHRoZSBmb2xkIGluc3RlYWQgb2YKKwkgICAgc2Nyb2xsaW5nIHRoZSB0ZXh0IHVwLiAoR2F1dGFtKQorU29sdXRpb246ICAgU2Nyb2xsIG92ZXIgdGhlIGNsb3NlZCBmb2xkLgorRmlsZXM6CSAgICBzcmMvbW92ZS5jCisKK1BhdGNoIDYuMy4wNDMKK1Byb2JsZW06ICAgICdobHNlYXJjaCcgaGlnaGxpZ2h0aW5nIHNvbWV0aW1lcyBkaXNhcHBlYXJzIHdoZW4gaW5zZXJ0aW5nIHRleHQKKwkgICAgaW4gUEhQIGNvZGUgd2l0aCBzeW50YXggaGlnaGxpZ2h0aW5nLiAoTWFyY2VsIFN2aXRhbHNreSkKK1NvbHV0aW9uOiAgIERvbid0IHVzZSBwb2ludGVycyB0byByZW1lbWJlciB3aGVyZSBhIG1hdGNoIHdhcyBmb3VuZCwgdXNlIGFuCisJICAgIGluZGV4LiAgVGhlIHBvaW50ZXJzIG1heSBiZWNvbWUgaW52YWxpZCB3aGVuIHNlYXJjaGluZyBpbiBvdGhlcgorCSAgICBsaW5lcy4KK0ZpbGVzOgkgICAgc3JjL3NjcmVlbi5jCisKK1BhdGNoIDYuMy4wNDQgKGV4dHJhKQorUHJvYmxlbTogICAgTWFjOiBXaGVuICdsaW5lc3BhY2UnIGlzIG5vbi16ZXJvIHRoZSBJbnNlcnQgbW9kZSBjdXJzb3IgbGVhdmVzCisJICAgIHBpeGVscyBiZWhpbmQuIChSaWNoYXJkIFNhbmRpbGFuZHMpCitTb2x1dGlvbjogICBFcmFzZSB0aGUgY2hhcmFjdGVyIGNlbGwgYmVmb3JlIGRyYXdpbmcgdGhlIHRleHQgd2hlbiBuZWVkZWQuCitGaWxlczoJICAgIHNyYy9ndWlfbWFjLmMKKworCitQYXRjaCA2LjMuMDQ1CitQcm9ibGVtOiAgICBVbnVzdWFsIGNoYXJhY3RlcnMgaW4gYW4gb3B0aW9uIHZhbHVlIG1heSBjYXVzZSB1bmV4cGVjdGVkCisJICAgIGJlaGF2aW9yLCBlc3BlY2lhbGx5IGZvciBhIG1vZGVsaW5lLiAoQ2lhcmFuIE1jQ3JlZXNoKQorU29sdXRpb246ICAgRG9uJ3QgYWxsb3cgc2V0dGluZyB0ZXJtY2FwIG9wdGlvbnMgb3IgJ3ByaW50ZGV2aWNlJyBpbiBhCisJICAgIG1vZGVsaW5lLiAgRG9uJ3QgbGlzdCBvcHRpb25zIGZvciAidGVybWNhcCIgYW5kICJhbGwiIGluIGEKKwkgICAgbW9kZWxpbmUuICBEb24ndCBhbGxvdyB1bnVzdWFsIGNoYXJhY3RlcnMgaW4gJ2ZpbGV0eXBlJywgJ3N5bnRheCcsCisJICAgICdiYWNrdXBleHQnLCAna2V5bWFwJywgJ3BhdGNobW9kZScgYW5kICdsYW5nbWVudScuCitGaWxlczoJICAgIHNyYy9vcHRpb24uYywgcnVudGltZS9kb2Mvb3B0aW9ucy50eHQKKworUGF0Y2ggNi4zLjA0NgorUHJvYmxlbTogICAgIjpyZWdpc3RlcnMiIGRvZXNuJ3Qgc2hvdyBtdWx0aS1ieXRlIGNoYXJhY3RlcnMgcHJvcGVybHkuCisJICAgIChWYWxlcnkgS29uZGFrb2ZmKQorU29sdXRpb246ICAgR2V0IHRoZSBsZW5ndGggb2YgZWFjaCBjaGFyYWN0ZXIgYmVmb3JlIGRpc3BsYXlpbmcgaXQuCitGaWxlczoJICAgIHNyYy9vcHMuYworCitQYXRjaCA2LjMuMDQ3IChleHRyYSkKK1Byb2JsZW06ICAgIFdpbjMyIHdpdGggQm9ybGFuZCBDIDUuNSBvbiBXaW5kb3dzIFhQOiBBIG5ldyBmaWxlIGlzIGNyZWF0ZWQgd2l0aAorCSAgICByZWFkLW9ubHkgYXR0cmlidXRlcy4gKFRvbnkgTWVjaGVseW5jaykKK1NvbHV0aW9uOiAgIERvbid0IHVzZSB0aGUgX3dvcGVuKCkgZnVuY3Rpb24gZm9yIEJvcmxhbmQuCitGaWxlczoJICAgIHNyYy9vc193aW4zMi5jCisKK1BhdGNoIDYuMy4wNDggKGV4dHJhKQorUHJvYmxlbTogICAgQnVpbGQgcHJvYmxlbXMgd2l0aCBWTVMgb24gSUE2NC4KK1NvbHV0aW9uOiAgIEFkZCBkZXBlbmRlbmNpZXMgdG8gdGhlIGJ1aWxkIGZpbGUuIChab2x0YW4gQXJwYWRmZnkpCitGaWxlczoJICAgIHNyYy9NYWtlX3Ztcy5tbXMKKworUGF0Y2ggNi4zLjA0OSAoYWZ0ZXIgNi4zLjA0NSkKK1Byb2JsZW06ICAgIENvbXBpbGVyIHdhcm5pbmcgZm9yICJjaGFyIiB2cyAiY2hhcl91IiBtaXh1cC4gKFpvbHRhbiBBcnBhZGZmeSkKK1NvbHV0aW9uOiAgIEFkZCBhIHR5cGVjYXN0LgorRmlsZXM6CSAgICBzcmMvb3B0aW9uLmMKKworUGF0Y2ggNi4zLjA1MAorUHJvYmxlbTogICAgV2hlbiBTSUdIVVAgaXMgcmVjZWl2ZWQgd2hpbGUgYnVzeSBleGl0aW5nLCBub24tcmVlbnRyYW50CisJICAgIGZ1bmN0aW9ucyBzdWNoIGFzIGZyZWUoKSBtYXkgY2F1c2UgYSBjcmFzaC4KK1NvbHV0aW9uOiAgIElnbm9yZSBTSUdIVVAgd2hlbiBleGl0aW5nIGJlY2F1c2Ugb2YgYW4gZXJyb3IuIChTY290dCBBbmRlcnNvbikKK0ZpbGVzOgkgICAgc3JjL21pc2MxLmMsIHNyYy9tYWluLmMKKworUGF0Y2ggNi4zLjA1MQorUHJvYmxlbTogICAgV2hlbiAnd2lsZG1lbnUnIGlzIHNldCBhbmQgY29tcGxldGVkIGZpbGUgbmFtZXMgY29udGFpbiBtdWx0aS1ieXRlCisJICAgIGNoYXJhY3RlcnMgVmltIG1heSBjcmFzaC4KK1NvbHV0aW9uOiAgIFJlc2VydmUgcm9vbSBmb3IgbXVsdGktYnl0ZSBjaGFyYWN0ZXJzLiAoWWFzdWhpcm8gTWF0c3Vtb3RvKQorRmlsZXM6CSAgICBzcmMvc2NyZWVuLmMKKworUGF0Y2ggNi4zLjA1MiAoZXh0cmEpCitQcm9ibGVtOiAgICBXaW5kb3dzIDk4OiB0eXBlZCBrZXlzIHRoYXQgYXJlIG5vdCBBU0NJSSBtYXkgbm90IHdvcmsgcHJvcGVybHkuCisJICAgIEZvciBleGFtcGxlIHdpdGggYSBSdXNzaWFuIGlucHV0IG1ldGhvZC4gKEppcmkgSmV6ZGluc2t5KQorU29sdXRpb246ICAgQXNzdW1lIHRoYXQgdGhlIGNoYXJhY3RlcnMgYXJyaXZlIGluIHRoZSBjdXJyZW50IGNvZGVwYWdlIGluc3RlYWQKKwkgICAgb2YgVUNTLTIuICBQZXJmb3JtIGNvbnZlcnNpb24gYmFzZWQgb24gdGhhdC4KK0ZpbGVzOgkgICAgc3JjL2d1aV93NDguYworCitQYXRjaCA2LjMuMDUzCitQcm9ibGVtOiAgICBXaW4zMjogIjpsb2FkdmlldyIgY2Fubm90IGZpbmQgYSBmaWxlIHdpdGggbm9uLUFTQ0lJIGNoYXJhY3RlcnMuCisJICAgIChWYWxlcmllIEtvbmRha29mZikKK1NvbHV0aW9uOiAgIFVzZSBtY2hfb3BlbigpIGluc3RlYWQgb2Ygb3BlbigpIHRvIG9wZW4gdGhlIGZpbGUuCitGaWxlczoJICAgIHNyYy9leF9jbWRzMi5jCisKK1BhdGNoIDYuMy4wNTQKK1Byb2JsZW06ICAgIFdoZW4gJ2luc2VydG1vZGUnIGlzIHNldCA8Qy1MPjRpeHh4PEMtTD4gaGFuZ3MgVmltLiAoSmVucyBQYXVsdXMpCisJICAgIFZpbSBpcyBhY3R1YWxseSBzdGlsbCB3b3JraW5nIGJ1dCByZWRyYXcgaXMgZGlzYWJsZWQuCitTb2x1dGlvbjogICBXaGVuIHN0b3BwaW5nIEluc2VydCBtb2RlIHdpdGggQ1RSTC1MIGRvbid0IHB1dCBhbiBFc2MgaW4gdGhlIHJlZG8KKwkgICAgYnVmZmVyIGJ1dCBhIENUUkwtTC4KK0ZpbGVzOgkgICAgc3JjL2VkaXQuYworCitQYXRjaCA2LjMuMDU1IChhZnRlciA2LjMuMDEzKQorUHJvYmxlbTogICAgQ2FuJ3QgdXNlIGdldGNtZGxpbmUoKSwgZ2V0Y21kcG9zKCkgb3Igc2V0Y21kcG9zKCkgd2l0aCA8Qy1SPj0KKwkgICAgd2hlbiBlZGl0aW5nIGEgY29tbWFuZCBsaW5lLiAgVXNpbmcgPEMtXD5lIG1heSBjcmFzaCBWaW0uIChQZXRlcgorCSAgICBXaW50ZXJzKQorU29sdXRpb246ICAgV2hlbiBtb3ZpbmcgY2NsaW5lIG91dCBvZiB0aGUgd2F5IGZvciByZWN1cnNpdmUgdXNlLCBtYWtlIGl0CisJICAgIGF2YWlsYWJsZSB0byB0aGUgZnVuY3Rpb25zIHRoYXQgbmVlZCBpdC4gIEFsc28gc2F2ZSBhbmQgcmVzdG9yZQorCSAgICBjY2xpbmUgd2hlbiBjYWxsaW5nIGdldF9leHByX2xpbmUoKS4gIE1ha2UgY2NsaW5lLmNtZGJ1ZiBOVUxMIGF0CisJICAgIHRoZSBlbmQgb2YgZ2V0Y21kbGluZSgpLgorRmlsZXM6CSAgICBzcmMvZXhfZ2V0bG4uYworCitQYXRjaCA2LjMuMDU2CitQcm9ibGVtOiAgICBUaGUgbGFzdCBjaGFyYWN0ZXJzIG9mIGEgbXVsdGktYnl0ZSBmaWxlIG5hbWUgbWF5IG5vdCBiZSBkaXNwbGF5ZWQKKwkgICAgaW4gdGhlIHdpbmRvdyB0aXRsZS4KK1NvbHV0aW9uOiAgIEF2b2lkIHRvIHJlbW92ZSBhIG11bHRpLWJ5dGUgY2hhcmFjdGVyIHdoZXJlIHRoZSBsYXN0IGJ5dGUgbG9va3MKKwkgICAgbGlrZSBhIHBhdGggc2VwYXJhdG9yIGNoYXJhY3Rlci4gKFlhc3VoaXJvIE1hdHN1bW90bykKK0ZpbGVzOgkgICAgc3JjL2J1ZmZlci5jLCBzcmMvZXhfZ2V0bG4uYworCitQYXRjaCA2LjMuMDU3CitQcm9ibGVtOiAgICBXaGVuIGZpbHRlcmluZyBsaW5lcyBmb2xkcyBhcmUgbm90IHVwZGF0ZWQuIChDYXJsIE9zdGVyd2lzY2gpCitTb2x1dGlvbjogICBVcGRhdGUgZm9sZHMgZm9yIGZpbHRlcmVkIGxpbmVzLgorRmlsZXM6CSAgICBzcmMvZXhfY21kcy5jCisKK1BhdGNoIDYuMy4wNTgKK1Byb2JsZW06ICAgIFdoZW4gJ2ZvbGRjb2x1bW4nIGlzIGVxdWFsIHRvIHRoZSB3aW5kb3cgd2lkdGggYW5kICd3cmFwJyBpcyBvbgorCSAgICBWaW0gbWF5IGNyYXNoLiAgRGlzYWJsaW5nIHRoZSB2ZXJ0aWNhbCBzcGxpdCBmZWF0dXJlIGJyZWFrcworCSAgICBjb21waWxpbmcuICAoUGV0ZXIgV2ludGVycykKK1NvbHV0aW9uOiAgIENoZWNrIGZvciB6ZXJvIHJvb20gZm9yIHdyYXBwZWQgdGV4dC4gIE1ha2UgY29tcGlsaW5nIHdpdGhvdXQKKwkgICAgdmVydGljYWwgc3BsaXRzIHBvc3NpYmxlLgorRmlsZXM6CSAgICBzcmMvbW92ZS5jLCBzcmMvcXVpY2tmaXguYywgc3JjL3NjcmVlbi5jLCBzcmMvbmV0YmVhbnMuYworCitQYXRjaCA2LjMuMDU5CitQcm9ibGVtOiAgICBDcmFzaCB3aGVuIGV4cGFuZGluZyBhbiAiOmVkaXQiIGNvbW1hbmQgY29udGFpbmluZyBzZXZlcmFsIHNwYWNlcworCSAgICB3aXRoIHRoZSBzaGVsbC4gKEJyaWFuIEhpcnQpCitTb2x1dGlvbjogICBBbGxvY2F0ZSBlbm91Z2ggc3BhY2UgZm9yIHRoZSBxdW90ZXMuCitGaWxlczoJICAgIHNyYy9vc191bml4LmMKKworUGF0Y2ggNi4zLjA2MAorUHJvYmxlbTogICAgVXNpbmcgQ1RSTC1SIENUUkwtTyBpbiBJbnNlcnQgbW9kZSB3aXRoIGFuIGludmFsaWQgcmVnaXN0ZXIgbmFtZQorCSAgICBzdGlsbCBjYXVzZXMgc29tZXRoaW5nIHRvIGJlIGluc2VydGVkLgorU29sdXRpb246ICAgQ2hlY2sgdGhlIHJlZ2lzdGVyIG5hbWUgZm9yIGJlaW5nIHZhbGlkLgorRmlsZXM6CSAgICBzcmMvZWRpdC5jCisKK1BhdGNoIDYuMy4wNjEKK1Byb2JsZW06ICAgIFdoZW4gZWRpdGluZyBhIHV0Zi04IGZpbGUgaW4gYW4gdXRmLTggeHRlcm0gYW5kIHRoZXJlIGlzIGEKKwkgICAgbXVsdGktYnl0ZSBjaGFyYWN0ZXIgaW4gdGhlIGxhc3QgY29sdW1uLCBkaXNwbGF5aW5nIGlzIG1lc3NlZCB1cC4KKwkgICAgKEpv62wgUmlvKQorU29sdXRpb246ICAgQ2hlY2sgZm9yIGEgbXVsdGktYnl0ZSBjaGFyYWN0ZXIsIG5vdCBhIG11bHRpLWNvbHVtbiBjaGFyYWN0ZXIuCitGaWxlczoJICAgIHNyYy9zY3JlZW4uYworCitQYXRjaCA2LjMuMDYyCitQcm9ibGVtOiAgICAiOm5vcm1hbCEgZ1EiIGhhbmdzLgorU29sdXRpb246ICAgUXVpdCBnZXRjbWRsaW5lKCkgYW5kIGRvX2V4bW9kZSgpIHdoZW4gb3V0IG9mIHR5cGVhaGVhZC4KK0ZpbGVzOgkgICAgc3JjL2V4X2dldGxuLmMsIHNyYy9leF9kb2NtZC5jCisKK1BhdGNoIDYuMy4wNjMKK1Byb2JsZW06ICAgIFdoZW4gYSBDdXJzb3JIb2xkIGF1dG9jb21tYW5kIGNoYW5nZXMgdG8gYW5vdGhlciB3aW5kb3cKKwkgICAgKHRlbXBvcmFyaWx5KSAnbW91c2Vmb2N1cycgc3RvcHMgd29ya2luZy4KK1NvbHV0aW9uOiAgIENhbGwgZ3VpX21vdXNlX2NvcnJlY3QoKSBhZnRlciB0cmlnZ2VyaW5nIEN1cnNvckhvbGQuCitGaWxlczoJICAgIHNyYy9ndWkuYworCitQYXRjaCA2LjMuMDY0CitQcm9ibGVtOiAgICBsaW5lMmJ5dGUobGluZSgiJCIpICsgMSkgc29tZXRpbWVzIHJldHVybnMgdGhlIHdyb25nIG51bWJlci4KKwkgICAgKENoYXJsZXMgQ2FtcGJlbGwpCitTb2x1dGlvbjogICBGbHVzaCB0aGUgY2FjaGVkIGxpbmUgYmVmb3JlIGNvdW50aW5nIHRoZSBieXRlcy4KK0ZpbGVzOgkgICAgc3JjL21lbWxpbmUuYworCitQYXRjaCA2LjMuMDY1CitQcm9ibGVtOiAgICBUaGUgZXVybyBkaWdyYXBoIGRvZXNuJ3QgYWx3YXlzIHdvcmsuCitTb2x1dGlvbjogICBBZGQgYW4gImU9IiBkaWdyYXBoIGZvciBVbmljb2RlIGV1cm8gY2hhcmFjdGVyIGFuZCBhZGp1c3QgdGhlCisJICAgIGhlbHAgZmlsZXMuCitGaWxlczoJICAgIHNyYy9kaWdyYXBoLmMsIHJ1bnRpbWUvZG9jL2RpZ3JhcGgudHh0CisKK1BhdGNoIDYuMy4wNjYKK1Byb2JsZW06ICAgIEJhY2t1cCBmaWxlIG1heSBnZXQgd3JvbmcgcGVybWlzc2lvbnMuCitTb2x1dGlvbjogICBVc2UgcGVybWlzc2lvbnMgb2Ygb3JpZ2luYWwgZmlsZSBmb3IgYmFja3VwIGZpbGUgaW4gbW9yZSBwbGFjZXMuCitGaWxlczoJICAgIHNyYy9maWxlaW8uYworCitQYXRjaCA2LjMuMDY3IChhZnRlciA2LjMuMDY2KQorUHJvYmxlbTogICAgTmV3bHkgY3JlYXRlZCBmaWxlIGdldHMgZXhlY3V0ZSBwZXJtaXNzaW9uLgorU29sdXRpb246ICAgQ2hlY2sgZm9yICJwZXJtIiB0byBiZSBuZWdhdGl2ZSBiZWZvcmUgdXNpbmcgaXQuCitGaWxlczoJICAgIHNyYy9maWxlaW8uYworCitQYXRjaCA2LjMuMDY4CitQcm9ibGVtOiAgICBXaGVuIGVkaXRpbmcgYSBjb21wcmVzc2VkIGZpbGUgeHh4Lmd6IHdoaWNoIGlzIGEgc3ltYm9saWMgbGluayB0bworCSAgICB0aGUgYWN0dWFsIGZpbGUgYSAiOndyaXRlIiByZW5hbWVzIHRoZSBsaW5rLgorU29sdXRpb246ICAgUmVzb2x2ZSB0aGUgbGluaywgc28gdGhhdCB0aGUgYWN0dWFsIGZpbGUgaXMgcmVuYW1lZCBhbmQKKwkgICAgY29tcHJlc3NlZC4KK0ZpbGVzOgkgICAgcnVudGltZS9wbHVnaW4vZ3ppcC52aW0KKworUGF0Y2ggNi4zLjA2OQorUHJvYmxlbTogICAgV2hlbiBjb252ZXJ0aW5nIHRleHQgd2l0aCBpbGxlZ2FsIGNoYXJhY3RlcnMgVmltIG1heSBjcmFzaC4KK1NvbHV0aW9uOiAgIEF2b2lkIHRoYXQgdG9vIG11Y2ggaXMgc3VidHJhY3RlZCBmcm9tIHRoZSBsZW5ndGguIChEYSBXb29uIEp1bmcpCitGaWxlczoJICAgIHNyYy9tYnl0ZS5jCisKK1BhdGNoIDYuMy4wNzAKK1Byb2JsZW06ICAgIEFmdGVyICI6c2V0IG51bWJlciBsaW5lYnJlYWsgd3JhcCIgYW5kIGEgdmVydGljYWwgc3BsaXQsIG1vdmluZworCSAgICB0aGUgdmVydGljYWwgc2VwYXJhdG9yIGZhciBsZWZ0IHdpbGwgY3Jhc2ggVmltLiAoR2VvcmcgRGFobikKK1NvbHV0aW9uOiAgIEF2b2lkIGRpdmlkaW5nIGJ5IHplcm8uCitGaWxlczoJICAgIHNyYy9jaGFyc2V0LmMKKworUGF0Y2ggNi4zLjA3MQorUHJvYmxlbTogICAgVGhlIG1lc3NhZ2UgZm9yIENUUkwtWCBtb2RlIGlzIHN0aWxsIGRpc3BsYXllZCBhZnRlciBhbiBlcnJvciBmb3IKKwkgICAgJ3RoZXNhdXJ1cycgb3IgJ2RpY3Rpb25hcnknIGJlaW5nIGVtcHR5LgorU29sdXRpb246ICAgQ2xlYXIgImVkaXRfc3VibW9kZSIuCitGaWxlczoJICAgIHNyYy9lZGl0LmMKKworUGF0Y2ggNi4zLjA3MgorUHJvYmxlbTogICAgQ3Jhc2ggaW4gZ2l2aW5nIHN1YnN0aXR1dGUgbWVzc2FnZSB3aGVuIGxhbmd1YWdlIGlzIENoaW5lc2UgYW5kCisJICAgIGVuY29kaW5nIGlzIHV0Zi04LiAoWW9uZ3dlaSkKK1NvbHV0aW9uOiAgIE1ha2UgdGhlIG1zZ19idWYgc2l6ZSBsYXJnZXIgd2hlbiB1c2luZyBtdWx0aS1ieXRlLgorRmlsZXM6CSAgICBzcmMvdmltLmgKKworUGF0Y2ggNi4zLjA3MworUHJvYmxlbTogICAgV2luMzIgR1VJOiBXaGVuIHRoZSBWaW0gd2luZG93IGlzIHBhcnRseSBhYm92ZSBvciBiZWxvdyB0aGUKKwkgICAgc2NyZWVuLCBzY3JvbGxpbmcgY2F1c2VzIGRpc3BsYXkgZXJyb3JzIHdoZW4gdGhlIHRhc2tiYXIgaXMgbm90IG9uCisJICAgIHRoYXQgc2lkZS4KK1NvbHV0aW9uOiAgIFVzZSB0aGUgU1dfSU5WQUxJREFURSBmbGFnIHdoZW4gdGhlIFZpbSB3aW5kb3cgaXMgcGFydGx5IGJlbG93IG9yCisJICAgIGFib3ZlIHRoZSBzY3JlZW4uCitGaWxlczoJICAgIHNyYy9ndWlfdzQ4LmMKKworUGF0Y2ggNi4zLjA3NAorUHJvYmxlbTogICAgV2hlbiBtc3dpbi52aW0gaXMgdXNlZCBhbmQgJ2luc2VydG1vZGUnIGlzIHNldCwgdHlwaW5nIHRleHQgaW4KKwkgICAgU2VsZWN0IG1vZGUgYW5kIHRoZW4gdXNpbmcgQ1RSTC1WIHJlc3VsdHMgaW4gPFNOUj45OV9QYXN0ZWdpLgorCSAgICAoR2VvcmcgRGFobikKK1NvbHV0aW9uOiAgIFdoZW4gcmVzdGFydF9lZGl0IGlzIHNldCB1c2UgImQiIGluc3RlYWQgb2YgImMiIHRvIHJlbW92ZSB0aGUKKwkgICAgc2VsZWN0ZWQgdGV4dCB0byBhdm9pZCBjYWxsaW5nIGVkaXQoKSB0d2ljZS4KK0ZpbGVzOgkgICAgc3JjL25vcm1hbC5jCisKK1BhdGNoIDYuMy4wNzUKK1Byb2JsZW06ICAgIEFmdGVyIHVubG9hZGluZyBhbm90aGVyIGJ1ZmZlciwgc3ludGF4IGhpZ2hsaWdodGluZyBpbiB0aGUgY3VycmVudAorCSAgICBidWZmZXIgbWF5IGJlIHdyb25nIHdoZW4gaXQgdXNlcyAiY29udGFpbmVkaW4iLiAoRXJpYyBBcm5vbGQpCitTb2x1dGlvbjogICBVc2UgImJ1ZiIgaW50ZWFkIG9mICJjdXJidWYiIGluIHN5bnRheF9jbGVhcigpLgorRmlsZXM6CSAgICBzcmMvc3ludGF4LmMKKworUGF0Y2ggNi4zLjA3NgorUHJvYmxlbTogICAgQ3Jhc2ggd2hlbiB1c2luZyBjc2NvcGUgYW5kIHRoZXJlIGlzIGEgcGFyc2UgZXJyb3IgKGUuZy4sIGxpbmUgdG9vCisJICAgIGxvbmcpLiAoQWxleGV5IEkuIEZyb2xvZmYpCitTb2x1dGlvbjogICBQYXNzIHRoZSBhY3R1YWwgbnVtYmVyIG9mIG1hdGNoZXMgdG8gY3NfbWFuYWdlX21hdGNoZXMoKSBhbmQKKwkgICAgY29ycmVjdGx5IGhhbmRsZSB0aGUgZXJyb3Igc2l0dWF0aW9uLgorRmlsZXM6CSAgICBzcmMvaWZfY3Njb3BlLmMKKworUGF0Y2ggNi4zLjA3NyAoZXh0cmEpCitQcm9ibGVtOiAgICBWTVM6IEZpcnN0IGNoYXJhY3RlciBpbnB1dCBhZnRlciBFU0Mgd2FzIG5vdCByZWNvZ25pemVkLgorU29sdXRpb246ICAgQWRkZWQgVFJNJE1fVE1fVElNRUQgaW4gdm1zX3JlYWQoKS4gIChab2x0YW4gQXJwYWRmZnkpCitGaWxlczoJICAgIHNyYy9vc192bXMuYworCitQYXRjaCA2LjMuMDc4IChleHRyYSwgYWZ0ZXIgNi4zLjA3NykKK1Byb2JsZW06ICAgIFZNUzogUGVyZm9ybWFuY2UgaXNzdWUgYWZ0ZXIgcGF0Y2ggNi4zLjA3NworU29sdXRpb246ICAgQWRkIGEgdGltZW91dCBpbiB0aGUgaXRlbWxpc3QuICAoWm9sdGFuIEFycGFkZmZ5KQorRmlsZXM6CSAgICBzcmMvb3Nfdm1zLmMKKworUGF0Y2ggNi4zLjA3OQorUHJvYmxlbTogICAgQ3Jhc2ggd2hlbiBleGVjdXRpbmcgYSBjb21tYW5kIGluIHRoZSBjb21tYW5kIGxpbmUgd2luZG93IHdoaWxlCisJICAgIHN5bnRheCBoaWdobGlnaHRpbmcgaXMgZW5hYmxlZC4gKFBlcm8gQnJib3JhKQorU29sdXRpb246ICAgRG9uJ3QgdXNlIGEgcG9pbnRlciB0byBhIGJ1ZmZlciB0aGF0IGhhcyBiZWVuIGRlbGV0ZWQuCitGaWxlczoJICAgIHNyYy9zeW50YXguYworCitQYXRjaCA2LjMuMDgwIChleHRyYSkKK1Byb2JsZW06ICAgIFdpbjMyOiBXaXRoICdlbmNvZGluZycgc2V0IHRvIHV0Zi04IHdoaWxlIHRoZSBjdXJyZW50IGNvZGVwYWdlIGlzCisJICAgIENoaW5lc2UgZWRpdGluZyBhIGZpbGUgd2l0aCBzb21lIHNwZWNpZmljIGNoYXJhY3RlcnMgaW4gdGhlIG5hbWUKKwkgICAgZmFpbHMuCitTb2x1dGlvbjogICBVc2UgX3dmdWxscGF0aCgpIGluc3RlYWQgb2YgX2Z1bGxwYXRoKCkgd2hlbiBuZWNlc3NhcnkuCitGaWxlczoJICAgIHNyYy9vc19tc3dpbi5jCisKK1BhdGNoIDYuMy4wODEKK1Byb2JsZW06ICAgIFVuaXg6IGdsb2IoKSBtYXkgZXhlY3V0ZSBhIHNoZWxsIGNvbW1hbmQgd2hlbiBpdCdzIG5vdCB3YW50ZWQuCisJICAgIChHZW9yZ2kgR3VuaW5za2kpCitTb2x1dGlvbjogICBWZXJpZnkgdGhlIHNhbmRib3ggZmxhZyBpcyBub3Qgc2V0LgorRmlsZXM6CSAgICBzcmMvb3NfdW5peC5jCisKK1BhdGNoIDYuMy4wODIgKGFmdGVyIDYuMy4wODEpCitQcm9ibGVtOiAgICBVbml4OiBleHBhbmQoKSBtYXkgZXhlY3V0ZSBhIHNoZWxsIGNvbW1hbmQgd2hlbiBpdCdzIG5vdCB3YW50ZWQuCisJICAgIChHZW9yZ2kgR3VuaW5za2kpCitTb2x1dGlvbjogICBBIG1vcmUgZ2VuZXJpYyBzb2x1dGlvbiB0aGFuIDYuMy4wODEuCitGaWxlczoJICAgIHNyYy9vc191bml4LmMKKworUGF0Y2ggNi4zLjA4MworUHJvYmxlbTogICAgVk1TOiBUaGUgdnQzMjAgdGVybWNhcCBlbnRyeSBpcyBpbmNvbXBsZXRlLgorU29sdXRpb246ICAgQWRkIG1pc3NpbmcgZnVuY3Rpb24ga2V5cy4gIChab2x0YW4gQXJwYWRmZnkpCitGaWxlczoJICAgIHNyYy90ZXJtLmMKKworUGF0Y2ggNi4zLjA4NCAoZXh0cmEpCitQcm9ibGVtOiAgICBDeWd3aW46IGNvbXBpbGluZyB3aXRoIERFQlVHIGRvZXNuJ3Qgd29yay4gIFBlcmwgcGF0aCB3YXMgaWdub3JlZC4KKwkgICAgRmFpbHVyZSB3aGVuICQoT1VURElSKSBhbHJlYWR5IGV4aXN0cy4gICJwbyIgbWFrZWZpbGUgaXMgbWlzc2luZy4KK1NvbHV0aW9uOiAgIFVzZSBjaGFuZ2VzIHRlc3RlZCBpbiBWaW0gNy4gKFRvbnkgTWVjaGVseW5jaykKK0ZpbGVzOgkgICAgc3JjL01ha2VfY3lnLm1haywgc3JjL3BvL01ha2VfY3lnLm1haworCitQYXRjaCA2LjMuMDg1CitQcm9ibGVtOiAgICBDcmFzaCBpbiBzeW50YXggaGlnaGxpZ2h0aW5nIGNvZGUuIChNYXJjIEVzcGllKQorU29sdXRpb246ICAgUHJldmVudCBjdXJyZW50X2NvbCBnb2luZyBwYXN0IHRoZSBlbmQgb2YgdGhlIGxpbmUuCitGaWxlczoJICAgIHNyYy9zeW50YXguYworCitQYXRjaCA2LjMuMDg2IChleHRyYSkKK1Byb2JsZW06ICAgIENhbid0IHByb2R1Y2UgbWVzc2FnZSB0cmFuc2xhdGlvbiBmaWxlIHdpdGggbXNnZm10IHRoYXQgY2hlY2tzCisJICAgIHByaW50ZiBzdHJpbmdzLgorU29sdXRpb246ICAgRml4IHRoZSBSdXNzaWFuIHRyYW5zbGF0aW9uLgorRmlsZXM6CSAgICBzcmMvcG8vcnUucG8sIHNyYy9wby9ydS5jcDEyNTEucG8KKworUGF0Y2ggNi4zLjA4NworUHJvYmxlbTogICAgTVMtRE9TOiBDcmFzaC4gKEphc29uIEhvb2QpCitTb2x1dGlvbjogICBEb24ndCBjYWxsIGZuYW1lX2Nhc2UoKSB3aXRoIGEgTlVMTCBwb2ludGVyLgorRmlsZXM6CSAgICBzcmMvZXhfY21kcy5jCisKK1BhdGNoIDYuMy4wODgKK1Byb2JsZW06ICAgIEVkaXRpbmcgIi5pbiIgY2F1c2VzIGVycm9yIEUyMTguIChTdGVmYW4gS2FybHNzb24pCitTb2x1dGlvbjogICBSZXF1aXJlIHNvbWUgY2hhcmFjdGVycyBiZWZvcmUgIi5pbiIuICBTYW1lIGZvciAiLm9yaWciIGFuZCBvdGhlcnMuCitGaWxlczoJICAgIHJ1bnRpbWUvZmlsZXR5cGUudmltCisKK1BhdGNoIDYuMy4wODkKK1Byb2JsZW06ICAgIEEgc2Vzc2lvbiBmaWxlIGRvZXNuJ3Qgd29yayB3aGVuIGNyZWF0ZWQgd2hpbGUgdGhlIGN1cnJlbnQKKwkgICAgZGlyZWN0b3J5IGNvbnRhaW5zIGEgc3BhY2Ugb3IgdGhlIGRpcmVjdG9yeSBvZiB0aGUgc2Vzc2lvbiBmaWxlcworCSAgICBjb250YWlucyBhIHNwYWNlLiAoUGFvbG8gR2lhcnJ1c3NvKQorU29sdXRpb246ICAgRXNjYXBlIHNwYWNlcyB3aXRoIGEgYmFja3NsYXNoLgorRmlsZXM6CSAgICBzcmMvZXhfZG9jbWQuYworCitQYXRjaCA2LjMuMDkwCitQcm9ibGVtOiAgICBBIHZlcnkgYmlnIHZhbHVlIGZvciAnY29sdW1ucycgb3IgJ2xpbmVzJyBtYXkgY2F1c2UgYSBjcmFzaC4KK1NvbHV0aW9uOiAgIExpbWl0IHRoZSB2YWx1ZXMgdG8gMTAwMDAgYW5kIDEwMDAuCitGaWxlczoJICAgIHNyYy9vcHRpb24uYworCisKICB2aW06dHc9Nzg6dHM9ODpmdD1oZWxwOm5vcmw6CmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy92ZXJzaW9uNy50eHQgYi9ydW50aW1lL2RvYy92ZXJzaW9uNy50eHQKaW5kZXggY2Q3ZTdlNi4uMGNhOGNiYSAxMDA2NDQKLS0tIGEvcnVudGltZS9kb2MvdmVyc2lvbjcudHh0CisrKyBiL3J1bnRpbWUvZG9jL3ZlcnNpb243LnR4dApAQCAtMSw0ICsxLDQgQEAKLSp2ZXJzaW9uNy50eHQqICBGb3IgVmltIHZlcnNpb24gNy4wYWEuICBMYXN0IGNoYW5nZTogMjAwNSBPY3QgMDIKKyp2ZXJzaW9uNy50eHQqICBGb3IgVmltIHZlcnNpb24gNy4wYWEuICBMYXN0IGNoYW5nZTogMjAwNSBPY3QgMTAKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKQEAgLTgzOCw2ICs4MzgsMTIgQEAKIExvYWRpbmcgcGx1Z2lucyBvbiBzdGFydHVwIG5vdyBzdXBwb3J0cyBzdWJkaXJlY3RvcmllcyBpbiB0aGUgcGx1Z2luCiBkaXJlY3RvcnkuIHxsb2FkLXBsdWdpbnN8CiAKK0luIHRoZSBmb2xkY29sdW1uIGFsd2F5cyBzaG93IHRoZSAnKycgZm9yIGEgY2xvc2VkIGZvbGQsIHNvIHRoYXQgaXQgY2FuIGJlCitvcGVuZWQgZWFzaWx5LiAgSXQgbWF5IG92ZXJ3cml0ZSBhbm90aGVyIGNoYXJhY3RlciwgZXNwLiBpZiAnZm9sZGNvbHVtbicgaXMgMS4KKworSXQgaXMgbm93IHBvc3NpYmxlIHRvIGdldCB0aGUgVzEwIG1lc3NhZ2UgYWdhaW4gYnkgc2V0dGluZyAncmVhZG9ubHknLiAgVXNlZnVsCitpbiB0aGUgRmlsZUNoYW5nZWRSTyBhdXRvY29tbWFuZCB3aGVuIGNoZWNraW5nIG91dCB0aGUgZmlsZSBmYWlscy4KKwogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiBDT01QSUxFIFRJTUUgQ0hBTkdFUwkJCQkJKmNvbXBpbGUtY2hhbmdlcy03KgogCkBAIC0xMDY2LDEwICsxMDcyLDYgQEAKIEFuZGVyc29uKSAgQWxzbyBwb3N0cG9uZSBTSUdIVVAsIFNJR1FVSVQgYW5kIFNJR1RFUk0gdW50aWwgaXQncyBzYWZlIHRvCiBoYW5kbGUuICBBZGRlZCBoYW5kbGVfc2lnbmFsKCkuCiAKLVdoZW4gdXNpbmcgInNldCBsYXN0c3RhdHVzPTIgY21kaGVpZ2h0PTIiIGluIHRoZSAuZ3ZpbXJjIHlvdSBtYXkgb25seSBnZXQgb25lCi1saW5lIGZvciB0aGUgY21kbGluZS4gKENocmlzdGlhbiBSb2JpbnNvbikgIEludm9rZSBjb21tYW5kX2hlaWdodCgpIGFmdGVyIHRoZQotR1VJIGhhcyBzdGFydGVkIHVwLgotCiBXaGVuIGNvbXBsZXRpbmcgYSBmaWxlIG5hbWUgb24gdGhlIGNvbW1hbmQgbGluZSBiYWNrc2xhc2hlcyBhcmUgcmVxdWlyZWQgZm9yCiB3aGl0ZSBzcGFjZS4gIFdhcyBvbmx5IGRvbmUgZm9yIGEgc3BhY2UsIG5vdCBmb3IgYSBUYWIuCiAKQEAgLTEzODcsOSArMTM4OSw2IEBACiBHVUk6IFdoZW4gc2Nyb2xsaW5nIHdpdGggdGhlIHNjcm9sbGJhciBhbmQgdGhlcmUgaXMgYSBsaW5lIHRoYXQgZG9lc24ndCBmaXQKIHJlZHJhd2luZyBtYXkgZmFpbC4gIE1ha2Ugc3VyZSB3X3NraXBjb2wgaXMgdmFsaWQgYmVmb3JlIHJlZHJhd2luZy4KIAotImRGeGQ7IiBkZWxldGVkIHRoZSBjaGFyYWN0ZXIgdW5kZXIgdGhlIGN1cnNvciwgImQ7IiBkaWRuJ3QgcmVtZW1iZXIgdGhlCi1leGNsdXNpdmVuZXNzIG9mIHRoZSBtb3Rpb24uCi0KIExpbWl0IHRoZSB2YWx1ZXMgb2YgJ2NvbHVtbnMnIGFuZCAnbGluZXMnIHRvIGF2b2lkIGFuIG92ZXJmbG93IGluIFJvd3MgKgogQ29sdW1ucy4gIEZpeGVkIGJhZCBlZmZlY3RzIHdoZW4gcnVubmluZyBvdXQgb2YgbWVtb3J5IChjb21tYW5kIGxpbmUgd291bGQgYmUKIHJldmVyc2VkLCAiOnFhISIgcmVzdWx0ZWQgaW4gIjohYXEiKS4KZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3Zpc3VhbC50eHQgYi9ydW50aW1lL2RvYy92aXN1YWwudHh0CmluZGV4IGNkOTI0YTMuLmY4ZTFlZmMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3Zpc3VhbC50eHQKKysrIGIvcnVudGltZS9kb2MvdmlzdWFsLnR4dApAQCAtMSw0ICsxLDQgQEAKLSp2aXN1YWwudHh0KiAgICBGb3IgVmltIHZlcnNpb24gNy4wYWEuICBMYXN0IGNoYW5nZTogMjAwNSBBcHIgMDEKKyp2aXN1YWwudHh0KiAgICBGb3IgVmltIHZlcnNpb24gNy4wYWEuICBMYXN0IGNoYW5nZTogMjAwNSBPY3QgMDkKIAogCiAJCSAgVklNIFJFRkVSRU5DRSBNQU5VQUwgICAgYnkgQnJhbSBNb29sZW5hYXIKQEAgLTg2LDcgKzg2LDcgQEAKIGJsb2Nrd2lzZSBWaXN1YWwgICAgVmlzdWFsCSAgIE5vcm1hbAkJICBsaW5ld2lzZSBWaXN1YWwKIGxpbmV3aXNlIFZpc3VhbCAgICAgVmlzdWFsCSAgIGJsb2Nrd2lzZSBWaXN1YWwJICBOb3JtYWwKIAotCQkJCQkJCSpndiogKnZfZ3YqCisJCQkJCQkqZ3YqICp2X2d2KiAqcmVzZWxlY3QtVmlzdWFsKgogZ3YJCQlTdGFydCBWaXN1YWwgbW9kZSB3aXRoIHRoZSBzYW1lIGFyZWEgYXMgdGhlIHByZXZpb3VzCiAJCQlhcmVhIGFuZCB0aGUgc2FtZSBtb2RlLgogCQkJSW4gVmlzdWFsIG1vZGUgdGhlIGN1cnJlbnQgYW5kIHRoZSBwcmV2aW91cyBWaXN1YWwKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vZXJ1YnkudmltIGIvcnVudGltZS9mdHBsdWdpbi9lcnVieS52aW0KaW5kZXggNDcxMTI2MC4uZWQwMTBkMCAxMDA2NDQKLS0tIGEvcnVudGltZS9mdHBsdWdpbi9lcnVieS52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9lcnVieS52aW0KQEAgLTEsMTAgKzEsMTAgQEAKICIgVmltIGZpbGV0eXBlIHBsdWdpbgogIiBMYW5ndWFnZToJZVJ1YnkKICIgTWFpbnRhaW5lcjoJRG91ZyBLZWFybnMgPGRqa2VhMiBhdCBndXMuZ3NjaXQubW9uYXNoLmVkdS5hdT4KLSIgSW5mbzogICAgICAgICAkSWQkCi0iIFVSTDogICAgICAgICAgaHR0cDovL3ZpbS1ydWJ5LnNvdXJjZWZvcmdlLm5ldAotIiBBbm9uIENWUzogICAgIFNlZSBhYm92ZSBzaXRlCi0iIExpY2VuY2U6ICAgICAgR1BMIChodHRwOi8vd3d3LmdudS5vcmcpCisiIEluZm86CQkkSWQkCisiIFVSTDoJCWh0dHA6Ly92aW0tcnVieS5zb3VyY2Vmb3JnZS5uZXQKKyIgQW5vbiBDVlM6CVNlZSBhYm92ZSBzaXRlCisiIExpY2VuY2U6CUdQTCAoaHR0cDovL3d3dy5nbnUub3JnKQogIiBEaXNjbGFpbWVyOgogIiAgICBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKICIgICAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZnRwbHVnaW4vcnVieS52aW0gYi9ydW50aW1lL2Z0cGx1Z2luL3J1YnkudmltCmluZGV4IGIyNjIyNTguLjZmMDY1NjEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZnRwbHVnaW4vcnVieS52aW0KKysrIGIvcnVudGltZS9mdHBsdWdpbi9ydWJ5LnZpbQpAQCAtMSwxMCArMSwxMCBAQAogIiBWaW0gZmlsZXR5cGUgcGx1Z2luCiAiIExhbmd1YWdlOglSdWJ5CiAiIE1haW50YWluZXI6CUdhdmluIFNpbmNsYWlyIDxnc2luY2xhaXIgYXQgc295YWJlYW4uY29tLmF1PgotIiBJbmZvOiAgICAgICAgICRJZCQKLSIgVVJMOiAgICAgICAgICBodHRwOi8vdmltLXJ1Ynkuc291cmNlZm9yZ2UubmV0Ci0iIEFub24gQ1ZTOiAgICAgU2VlIGFib3ZlIHNpdGUKLSIgTGljZW5jZTogICAgICBHUEwgKGh0dHA6Ly93d3cuZ251Lm9yZykKKyIgSW5mbzoJCSRJZCQKKyIgVVJMOgkJaHR0cDovL3ZpbS1ydWJ5LnNvdXJjZWZvcmdlLm5ldAorIiBBbm9uIENWUzoJU2VlIGFib3ZlIHNpdGUKKyIgTGljZW5jZToJR1BMIChodHRwOi8vd3d3LmdudS5vcmcpCiAiIERpc2NsYWltZXI6CiAiICAgIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAogIiAgICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgpAQCAtMTIsNyArMTIsNyBAQAogIiAgICBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgogIiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAiCi0iIE9yaWdpbmFsIG1hdGNoaXQgc3VwcG9ydCB0aGFua3MgdG8gTmVkIEtvbnouICBTZWUgaGlzIGZ0cGx1Z2luL3J1YnkudmltIGF0CisiIE9yaWdpbmFsIG1hdGNoaXQgc3VwcG9ydCB0aGFua3MgdG8gTmVkIEtvbnouCVNlZSBoaXMgZnRwbHVnaW4vcnVieS52aW0gYXQKICIgICBodHRwOi8vYmlrZS1ub21hZC5jb20vdmltL3J1YnkudmltLgogIiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAKQEAgLTMyLDE4ICszMiwxOCBAQAogICIgVE9ETzogaW1wcm92ZSBvcHRpb25hbCBkbyBsb29wcwogIGxldCBiOm1hdGNoX3dvcmRzID0KICAgICBcICdcJSgnIC4KLSAgICBcICAgICAnXCUoXCUoXC5cfFw6XDpcKVxzKlwpXEA8IVw8XCUoY2xhc3NcfG1vZHVsZVx8YmVnaW5cfGRlZlx8Y2FzZVx8Zm9yXHxkb1wpXD4nIC4KLSAgICBcICAgJ1x8JyAuCi0gICAgXCAgICAgJ1wlKFwlKF5cfFwuXC5cLlw9XHxbXCw7PShbPD5+XCovJSEmXnwrLV1cKVxzKlwpXEA8PVwlKGlmXHx1bmxlc3NcfHVudGlsXHx3aGlsZVwpXD4nIC4KKyAgICBcCSAgJ1wlKFwlKFwuXHxcOlw6XClccypcfFw6XClcQDwhXDxcJShjbGFzc1x8bW9kdWxlXHxiZWdpblx8ZGVmXHxjYXNlXHxmb3JcfGRvXClcPicgLgorICAgIFwJJ1x8JyAuCisgICAgXAkgICdcJShcJSheXHxcLlwuXC5cPVx8W1wsOz0oWzw+flwqLyUhJl58Ky1dXClccypcKVxAPD1cJShpZlx8dW5sZXNzXHx1bnRpbFx8d2hpbGVcKVw+JyAuCiAgICAgXCAnXCknIC4KICAgICBcICc6JyAuCiAgICAgXCAnXCUoJyAuCi0gICAgXCAgICAgJ1wlKFwlKFwuXHxcOlw6XClccypcKVxAPCFcPFwlKGVsc2VcfGVsc2lmXHxlbnN1cmVcfHdoZW5cKVw+JyAuCi0gICAgXCAgICdcfCcgLgotICAgIFwgICAgICdcJShcJSheXHw7XClccypcKVxAPD1cPHJlc2N1ZVw+JyAuCisgICAgXAkgICdcJShcJShcLlx8XDpcOlwpXHMqXHxcOlwpXEA8IVw8XCUoZWxzZVx8ZWxzaWZcfGVuc3VyZVx8d2hlblwpXD4nIC4KKyAgICBcCSdcfCcgLgorICAgIFwJICAnXCUoXCUoXlx8O1wpXHMqXClcQDw9XDxyZXNjdWVcPicgLgogICAgIFwgJ1wpJyAuCiAgICAgXCAnOicgLgotICAgIFwgJ1wlKFwlKFwuXHxcOlw6XClccypcKVxAPCFcPGVuZFw+JworICAgIFwgJ1wlKFwlKFwuXHxcOlw6XClccypcfFw6XClcQDwhXDxlbmRcPicKIAogICBsZXQgYjptYXRjaF9za2lwID0KICAgICAgXCAic3luSURhdHRyKHN5bklEKGxpbmUoJy4nKSxjb2woJy4nKSwwKSwnbmFtZScpID1+ICciIC4KQEAgLTY2LDEyICs2NiwxMyBAQAogCiBpZiAhZXhpc3RzKCJzOnJ1YnlwYXRoIikKICAgaWYgZXhlY3V0YWJsZSgicnVieSIpCisgICAgbGV0IHM6Y29kZSA9ICJwcmludCAoJDogKyBiZWdpbjsgcmVxdWlyZSAlcXtydWJ5Z2Vtc307IEdlbS5hbGxfbG9hZF9wYXRocy5zb3J0LnVuaXE7IHJlc2N1ZSBMb2FkRXJyb3I7IFtdOyBlbmQpLmpvaW4oJXF7LH0pIgogICAgIGlmICZzaGVsbHhxdW90ZSA9PSAiJyIKLSAgICAgIGxldCBzOnJ1YnlwYXRoID0gc3lzdGVtKCdydWJ5IC1lICJwdXRzIChiZWdpbjsgcmVxdWlyZSAlcXtydWJ5Z2Vtc307IEdlbS5hbGxfbG9hZF9wYXRoczsgcmVzY3VlIExvYWRFcnJvcjsgW107IGVuZCArICQ6KS5qb2luKCVxeyx9KSInKQorICAgICAgbGV0IHM6cnVieXBhdGggPSBzeXN0ZW0oJ3J1YnkgLWUgIicgLiBzOmNvZGUgLiAnIicpCiAgICAgZWxzZQotICAgICAgbGV0IHM6cnVieXBhdGggPSBzeXN0ZW0oInJ1YnkgLWUgJ3B1dHMgKGJlZ2luOyByZXF1aXJlICVxe3J1YnlnZW1zfTsgR2VtLmFsbF9sb2FkX3BhdGhzOyByZXNjdWUgTG9hZEVycm9yOyBbXTsgZW5kICsgJDopLmpvaW4oJXF7LH0pJyIpCisgICAgICBsZXQgczpydWJ5cGF0aCA9IHN5c3RlbSgicnVieSAtZSAnIiAuIHM6Y29kZSAuICInIikKICAgICBlbmRpZgotICAgIGxldCBzOnJ1YnlwYXRoID0gc3Vic3RpdHV0ZShzOnJ1YnlwYXRoLCcsLiQnLCcsLCcsJycpCisgICAgbGV0IHM6cnVieXBhdGggPSAnLiwnIC4gc3Vic3RpdHV0ZShzOnJ1YnlwYXRoLCAnXCUoXlx8LFwpXC5cJSgsXHwkXCknLCAnLCwnLCAnJykKICAgZWxzZQogICAgICIgSWYgd2UgY2FuJ3QgY2FsbCBydWJ5IHRvIGdldCBpdHMgcGF0aCwganVzdCBkZWZhdWx0IHRvIHVzaW5nIHRoZQogICAgICIgY3VycmVudCBkaXJlY3RvcnkgYW5kIHRoZSBkaXJlY3Rvcnkgb2YgdGhlIGN1cnJlbnQgZmlsZS4KQEAgLTgzLDcgKzg0LDcgQEAKIAogaWYgaGFzKCJndWlfd2luMzIiKSAmJiAhZXhpc3RzKCJiOmJyb3dzZWZpbHRlciIpCiAgIGxldCBiOmJyb3dzZWZpbHRlciA9ICJSdWJ5IFNvdXJjZSBGaWxlcyAoKi5yYilcdCoucmJcbiIgLgotICAgICAgICAgICAgICAgICAgICAgXCAiQWxsIEZpbGVzICgqLiopXHQqLipcbiIKKwkJICAgICBcICJBbGwgRmlsZXMgKCouKilcdCouKlxuIgogZW5kaWYKIAogbGV0IGI6dW5kb19mdHBsdWdpbiA9ICJzZXRsIGZvPCBpbmM8IGluZXg8IHN1YTwgZGVmPCBjb208IGNtczwgcGF0aDwgIgpAQCAtOTcsNyArOTgsNyBAQAogIgogIiAxLiBMb29rIGZvciB0aGUgbGF0ZXN0ICJtYXRjaGl0IiBwbHVnaW4gYXQKICIKLSIgICAgICAgICBodHRwOi8vd3d3LnZpbS5vcmcvc2NyaXB0cy9zY3JpcHQucGhwP3NjcmlwdF9pZD0zOQorIgkgIGh0dHA6Ly93d3cudmltLm9yZy9zY3JpcHRzL3NjcmlwdC5waHA/c2NyaXB0X2lkPTM5CiAiCiAiICAgIEl0IGlzIGFsc28gcGFja2FnZWQgd2l0aCBWaW0sIGluIHRoZSAkVklNUlVOVElNRS9tYWNyb3MgZGlyZWN0b3J5LgogIgpAQCAtMTA4LDE2ICsxMDksMTYgQEAKICIgNC4gRW5zdXJlIHRoaXMgZmlsZSAoZnRwbHVnaW4vcnVieS52aW0pIGlzIGluc3RhbGxlZC4KICIKICIgNS4gRW5zdXJlIHlvdSBoYXZlIHRoaXMgbGluZSBpbiB5b3VyICRIT01FLy52aW1yYzoKLSIgICAgICAgICBmaWxldHlwZSBwbHVnaW4gb24KKyIJICBmaWxldHlwZSBwbHVnaW4gb24KICIKICIgNi4gUmVzdGFydCBWaW0gYW5kIGNyZWF0ZSB0aGUgbWF0Y2hpdCBkb2N1bWVudGF0aW9uOgogIgotIiAgICAgICAgIDpoZWxwdGFncyB+Ly52aW0vZG9jCisiCSAgOmhlbHB0YWdzIH4vLnZpbS9kb2MKICIKICIgICAgTm93IHlvdSBjYW4gZG8gIjpoZWxwIG1hdGNoaXQiLCBhbmQgeW91IHNob3VsZCBiZSBhYmxlIHRvIHVzZSAiJSIgb24gUnVieQotIiAgICBrZXl3b3Jkcy4gIFRyeSAiOmVjaG8gYjptYXRjaF93b3JkcyIgdG8gYmUgc3VyZS4KKyIgICAga2V5d29yZHMuCVRyeSAiOmVjaG8gYjptYXRjaF93b3JkcyIgdG8gYmUgc3VyZS4KICIKLSIgVGhhbmtzIHRvIE1hcmsgSi4gUmVlZCBmb3IgdGhlIGluc3RydWN0aW9ucy4gIFNlZSAiOmhlbHAgdmltcmMiIGZvciB0aGUKKyIgVGhhbmtzIHRvIE1hcmsgSi4gUmVlZCBmb3IgdGhlIGluc3RydWN0aW9ucy4JU2VlICI6aGVscCB2aW1yYyIgZm9yIHRoZQogIiBsb2NhdGlvbnMgb2YgcGx1Z2luIGRpcmVjdG9yaWVzLCBldGMuLCBhcyB0aGVyZSBhcmUgc2V2ZXJhbCBvcHRpb25zLCBhbmQgaXQKICIgZGlmZmVycyBvbiBXaW5kb3dzLiAgRW1haWwgZ3NpbmNsYWlyQHNveWFiZWFuLmNvbS5hdSBpZiB5b3UgbmVlZCBoZWxwLgogIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9pbmRlbnQvZXJ1YnkudmltIGIvcnVudGltZS9pbmRlbnQvZXJ1YnkudmltCmluZGV4IDY2NGY5YzIuLjgxZjdjMWEgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvaW5kZW50L2VydWJ5LnZpbQorKysgYi9ydW50aW1lL2luZGVudC9lcnVieS52aW0KQEAgLTEsMTAgKzEsMTAgQEAKICIgVmltIGluZGVudCBmaWxlCi0iIExhbmd1YWdlOiAgICAgUnVieQorIiBMYW5ndWFnZToJUnVieQogIiBNYWludGFpbmVyOglEb3VnIEtlYXJucyA8ZGprZWEyIGF0IGd1cy5nc2NpdC5tb25hc2guZWR1LmF1PgotIiBJbmZvOiAgICAgICAgICRJZCQKLSIgVVJMOiAgICAgICAgICBodHRwOi8vdmltLXJ1YnkucnVieWZvcmdlLm9yZy8KLSIgQW5vbiBDVlM6ICAgICBTZWUgYWJvdmUgc2l0ZQotIiBMaWNlbmNlOiAgICAgIEdQTCAoaHR0cDovL3d3dy5nbnUub3JnKQorIiBJbmZvOgkJJElkJAorIiBVUkw6CQlodHRwOi8vdmltLXJ1YnkucnVieWZvcmdlLm9yZy8KKyIgQW5vbiBDVlM6CVNlZSBhYm92ZSBzaXRlCisiIExpY2VuY2U6CUdQTCAoaHR0cDovL3d3dy5nbnUub3JnKQogIiBEaXNjbGFpbWVyOgogIiAgICBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKICIgICAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKZGlmZiAtLWdpdCBhL3J1bnRpbWUvbGFuZy9tZW51X3N2X3NlLmxhdGluMS52aW0gYi9ydW50aW1lL2xhbmcvbWVudV9zdl9zZS5sYXRpbjEudmltCmluZGV4IGU0MzZkOTQuLjc0NGQyNzIgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvbGFuZy9tZW51X3N2X3NlLmxhdGluMS52aW0KKysrIGIvcnVudGltZS9sYW5nL21lbnVfc3Zfc2UubGF0aW4xLnZpbQpAQCAtMSw2ICsxLDYgQEAKICIgTWVudSBUcmFuc2xhdGlvbnM6ICAgIFN3ZWRpc2gKICIgTWFpbnRhaW5lcjoJCUpvaGFuIFN2ZWRiZXJnIDxqb2hhbkBzdmVkYmVyZy5jb20+Ci0iIExhc3QgQ2hhbmdlOgkJMjAwNSBBcHJpbCAyMworIiBMYXN0IENoYW5nZToJCTIwMDUgT2N0IDA5CiAKICIgUXVpdCB3aGVuIG1lbnUgdHJhbnNsYXRpb25zIGhhdmUgYWxyZWFkeSBiZWVuIGRvbmUuCiBpZiBleGlzdHMoImRpZF9tZW51X3RyYW5zIikKQEAgLTIyLDggKzIyLDggQEAKIG1lbnV0cmFucyAmRmluZFwuXC5cLgkJJlP2a1wuXC5cLgogbWVudXRyYW5zICZDcmVkaXRzCQkmVGFjawogbWVudXRyYW5zIENvJnB5aW5nCQkmS29waWVyaW5nc3LkdHRpZ2hldGVyCi1tZW51dHJhbnMgJlNwb25zb3IvUmVnaXN0ZXIJJlNwb25zcmEvUmVnaXN0cmVyaW5nCi1tZW51dHJhbnMgTyZycGhhbnMJCUYm9nLkbGRlcmz2c2EKK21lbnV0cmFucyAmU3BvbnNvci9SZWdpc3RlcgkmU3BvbnNyYS9SZWdpc3RyZXJhCittZW51dHJhbnMgTyZycGhhbnMJCSZG9nLkbGRyYWz2c2EKIG1lbnV0cmFucyAmVmVyc2lvbgkJJlZlcnNpb24KIG1lbnV0cmFucyAmQWJvdXQJCSZPbQogCkBAIC03Niw3ICs3Niw3IEBACiBtZW51dHJhbnMgQmxvY2tcIGFuZFwgSW5zZXJ0CQlCbG9ja1wgb2NoXCBpbmZvZ25pbmcKIG1lbnV0cmFucyBBbHdheXMJCQlBbGx0aWQKIG1lbnV0cmFucyBUb2dnbGVcIEluc2VydFwgJk1vZGU8VGFiPjpzZXRcIGltIQlW5HhsYVwgaW5mb2duaW5nc2zkZ2U8VGFiPjpzZXRcIGltIQotbWVudXRyYW5zIFRvZ2dsZVwgVmlcIEMmb21wYXRpYmxlPFRhYj46c2V0XCBjcCEJVuR4bGFcIFZpLWtvbXBhdGliZWxpdGV0PFRhYj46c2V0XCBjcCEKK21lbnV0cmFucyBUb2dnbGVcIFZpXCBDJm9tcGF0aWJsZTxUYWI+OnNldFwgY3AhCVbkeGxhXCBWaS1rb21wYWJpbGl0ZXQ8VGFiPjpzZXRcIGNwIQogbWVudXRyYW5zIFNlYXJjaFwgJlBhdGhcLlwuXC4JCVP2a3bkZ1wuXC5cLgogbWVudXRyYW5zIFRhJmdcIEZpbGVzXC5cLlwuCQlUYWdnZmlsZXJcLlwuXC4KIG1lbnV0cmFucyBUb2dnbGVcICZUb29sYmFyCQlW5HhsYVwgdmVya3R5Z3NyYWQKQEAgLTkzLDggKzkzLDggQEAKIG1lbnV0cmFucyBUb2dnbGVcICZleHBhbmQtdGFiPFRhYj46c2V0XCBldCEJCVbkeGxhXCB0YWItZXhwYW5kZXJpbmc8VGFiPjpzZXRcIGV0IQogbWVudXRyYW5zIFRvZ2dsZVwgJmF1dG8taW5kZW50PFRhYj46c2V0XCBhaSEJCVbkeGxhXCBhdXRvLWluZGVudGVyaW5nPFRhYj46c2V0XCBhaSEKIG1lbnV0cmFucyBUb2dnbGVcICZDLWluZGVudGluZzxUYWI+OnNldFwgY2luIQkJVuR4bGFcIEMtaW5kZW50ZXJpbmc8VGFiPjpzZXRcIGNpbiEKLW1lbnV0cmFucyAmU2hpZnR3aWR0aAkJCQkJJlNoaWZ0YnJlZGQKLW1lbnV0cmFucyBTb2Z0XCAmVGFic3RvcAkJCQlNanVrYVwgJlRhYmJzdG9wcAorbWVudXRyYW5zICZTaGlmdHdpZHRoCQkJCQlTaGlmdGJyZWRkCittZW51dHJhbnMgU29mdCAmVGFic3RvcAkJCQkJTWp1ayB0YWItc3RvcHAKIG1lbnV0cmFucyBUZSZ4dFwgV2lkdGhcLlwuXC4JCQkJVGV4dGJyZWRkXC5cLlwuCiBtZW51dHJhbnMgJkZpbGVcIEZvcm1hdFwuXC5cLgkJCQlGaWxmb3JtYXRcLlwuXC4KIApAQCAtMTI3LDcgKzEyNyw3IEBACiBtZW51dHJhbnMgTyZwZW5cIG1vcmVcIGZvbGRzPFRhYj56cgnWcHBuYVwgbWVyXCB2ZWNrPFRhYj56cgogbWVudXRyYW5zICZPcGVuXCBhbGxcIGZvbGRzPFRhYj56UgnWcHBuYVwgbWVyXCB2ZWNrPFRhYj56UgogbWVudXRyYW5zIEZvbGRcIE1ldCZob2QJCQlWZWNrbWV0b2QKLW1lbnV0cmFucyBNJmFudWFsCQkJTWFudWVsbAorbWVudXRyYW5zIE0mYW51YWwJCQlNYW51YWwKIG1lbnV0cmFucyBJJm5kZW50CQkJSW5kZW50ZXJpbmcKIG1lbnV0cmFucyBFJnhwcmVzc2lvbgkJCVV0dHJ5Y2sKIG1lbnV0cmFucyBTJnludGF4CQkJU3ludGF4CkBAIC0yMjEsMTcgKzIyMSwxNSBAQAogZW5kaWYKIAogIiBTeW50YXggbWVudQotbWVudXRyYW5zICZTeW50YXgJCSZTeW50YXgKLW1lbnV0cmFucyBTZXRcICcmc3ludGF4J1wgb25seQlT5HR0XCBiYXJhXCAnc3ludGF4JwotbWVudXRyYW5zIFNldFwgJyZmaWxldHlwZSdcIHRvbwlT5HR0XCAnZmlsZXR5cGUnXCBvY2tz5QotbWVudXRyYW5zICZPZmYJCQkmQXYKLW1lbnV0cmFucyAmTWFudWFsCQkmTWFudWFsCi1tZW51dHJhbnMgQSZ1dG9tYXRpYwkJQXV0b21hdGlza3QKK21lbnV0cmFucyAmU3ludGF4CQkJJlN5bnRheAorbWVudXRyYW5zICZTaG93XCBmaWxldHlwZXNcIGluXCBtZW51CSZWaXNhXCBmaWx0eXBlclwgaVwgbWVueQorbWVudXRyYW5zICZPZmYJCQkJJkF2CittZW51dHJhbnMgJk1hbnVhbAkJCSZNYW51ZWxsdAorbWVudXRyYW5zIEEmdXRvbWF0aWMJCQlBdXRvbWF0aXNrdAogbWVudXRyYW5zIG9uL29mZlwgZm9yXCAmVGhpc1wgZmlsZQlBdi9Q5VwgZvZyXCBha3R1ZWxsXCBmaWwKLW1lbnV0cmFucyBDbyZsb3JcIHRlc3QJCUbkcmd0ZXN0Ci1tZW51dHJhbnMgJkhpZ2hsaWdodFwgdGVzdAlGcmFtaOR2bmluZ3N0ZXN0Ci1tZW51dHJhbnMgJkNvbnZlcnRcIHRvXCBIVE1MCUtvbnZlcnRlcmFcIHRpbGxcICZIVE1MCi1tZW51dHJhbnMgJlNob3dcIGluZGl2aWR1YWxcIGNob2ljZXMJVmlzYVwgaW5kaXZpZHVlbGxhXCB2YWwKK21lbnV0cmFucyBDbyZsb3JcIHRlc3QJCQlG5HJndGVzdAorbWVudXRyYW5zICZIaWdobGlnaHRcIHRlc3QJCUZyYW1o5HZuaW5nc3Rlc3QKK21lbnV0cmFucyAmQ29udmVydFwgdG9cIEhUTUwJCUtvbnZlcnRlcmFcIHRpbGxcICZIVE1MCiAKICIgZGlhbG9nIHRleHRzCiBsZXQgbWVudXRyYW5zX25vX2ZpbGUgPSAiW0luZ2VuIGZpbF0iCmRpZmYgLS1naXQgYS9ydW50aW1lL3NwZWxsL2VuLmFzY2lpLnNwbCBiL3J1bnRpbWUvc3BlbGwvZW4uYXNjaWkuc3BsCmluZGV4IGQ3ODMxNDUuLjEwZWQzYjYgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3BlbGwvZW4uYXNjaWkuc3BsCisrKyBiL3J1bnRpbWUvc3BlbGwvZW4uYXNjaWkuc3BsCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3BlbGwvZW4ubGF0aW4xLnNwbCBiL3J1bnRpbWUvc3BlbGwvZW4ubGF0aW4xLnNwbAppbmRleCA2YTg0MzhmLi5mYjUyMmVhIDEwMDY0NAotLS0gYS9ydW50aW1lL3NwZWxsL2VuLmxhdGluMS5zcGwKKysrIGIvcnVudGltZS9zcGVsbC9lbi5sYXRpbjEuc3BsCkJpbmFyeSBmaWxlcyBkaWZmZXIKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3BlbGwvZW4udXRmLTguc3BsIGIvcnVudGltZS9zcGVsbC9lbi51dGYtOC5zcGwKaW5kZXggYmVjYmQ2Yy4uNDlkZGQ4YSAxMDA2NDQKLS0tIGEvcnVudGltZS9zcGVsbC9lbi51dGYtOC5zcGwKKysrIGIvcnVudGltZS9zcGVsbC9lbi51dGYtOC5zcGwKQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zcGVsbC9lbi9lbl9BVS5kaWZmIGIvcnVudGltZS9zcGVsbC9lbi9lbl9BVS5kaWZmCmluZGV4IDJkNmU0MmMuLjE2MjFlYzMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3BlbGwvZW4vZW5fQVUuZGlmZgorKysgYi9ydW50aW1lL3NwZWxsL2VuL2VuX0FVLmRpZmYKQEAgLTIzNTIsNyArMjM1Miw3IEBACiAhIFNGWCAzIG8gaXN0J3MgbwogISBTRlggMyAwIGlzdCdzIFteZW95XQogKioqIGVuX0FVLm9yaWcuZGljCUZyaSBBcHIgMTUgMTM6MjA6MzYgMjAwNQotLS0tIGVuX0FVLmRpYwlUdWUgQXVnIDE2IDE3OjAzOjQ0IDIwMDUKKy0tLSBlbl9BVS5kaWMJU2F0IE9jdCAgOCAxNTo1NDowNSAyMDA1CiAqKioqKioqKioqKioqKioKICoqKiA5MTIsOTE0ICoqKioKICAgQWxhc2thL00KQEAgLTI0MTksMTEgKzI0MTksMTcgQEAKICAgZWEKIC0tLSAxMjUxOCwxMjUxOSAtLS0tCiAqKioqKioqKioqKioqKioKKyoqKiAxMjc5MiwxMjc5NCAqKioqCisgIGUuZy4KKy0gZS5nLi4KKyAgZWdhZAorLS0tIDEyNzkzLDEyNzk0IC0tLS0KKyoqKioqKioqKioqKioqKgogKioqIDEzNzc5LDEzNzgxICoqKioKICAgZXN0dWFyeS9NUwogISBldAogICBFVEEKLS0tLSAxMzc4MCwxMzc4MyAtLS0tCistLS0gMTM3NzksMTM3ODIgLS0tLQogICBlc3R1YXJ5L01TCiAhIGV0IGNldGVyYQogISBldCBhbC4KQEAgLTI0MzMsNyArMjQzOSw3IEBACiAgIGZqb3JkL1NNCiAhIGYvSwogICBmbGFiLzJ6Wk0KLS0tLSAxNTI5OCwxNTMwMCAtLS0tCistLS0gMTUyOTcsMTUyOTkgLS0tLQogICBmam9yZC9TTQogISBwcmVmCiAgIGZsYWIvMnpaTQpAQCAtMjQ0MiwxOSArMjQ0OCwxOSBAQAogICBGWUkKIC0gZy83CiAgIGdhYmFyZGluZS9TTQotLS0tIDE2NDgyLDE2NDgzIC0tLS0KKy0tLSAxNjQ4MSwxNjQ4MiAtLS0tCiAqKioqKioqKioqKioqKioKICoqKiAxODU5OSwxODYwMSAqKioqCiAgIEhEVFYKIC0gaC9FCiAgIGhlYWRhY2hlL1NNCi0tLS0gMTg2MDAsMTg2MDEgLS0tLQorLS0tIDE4NTk5LDE4NjAwIC0tLS0KICoqKioqKioqKioqKioqKgogKioqIDE5MjE0LDE5MjE2ICoqKioKICAgSG9iYmVzCiAhIGhvYmJpdAogICBob2JibGUvUkdTRAotLS0tIDE5MjE0LDE5MjE2IC0tLS0KKy0tLSAxOTIxMywxOTIxNSAtLS0tCiAgIEhvYmJlcwogISBob2JiaXQvTVMKICAgaG9iYmxlL1JHU0QKQEAgLTI0NjMsMzQgKzI0NjksMzQgQEAKICAgaml2ZS9EU01HCiAtIGovawogICBqbnIuCi0tLS0gMjE3OTEsMjE3OTIgLS0tLQorLS0tIDIxNzkwLDIxNzkxIC0tLS0KICoqKioqKioqKioqKioqKgogKioqIDIyMTI1LDIyMTI3ICoqKioKICAga2NhbAogLSBrL0UKICAgS2VhbmUKLS0tLSAyMjEyNCwyMjEyNSAtLS0tCistLS0gMjIxMjMsMjIxMjQgLS0tLQogKioqKioqKioqKioqKioqCiAqKiogMjI2MDYsMjI2MDggKioqKgogICBLeXVzaHUvTQogLSBsLzMKICAgbGFiZWwvQUdhU0QKLS0tLSAyMjYwNCwyMjYwNSAtLS0tCistLS0gMjI2MDMsMjI2MDQgLS0tLQogKioqKioqKioqKioqKioqCiAqKiogMjI4ODUsMjI4ODcgKioqKgogICBsYXNzL1NNCiAtIGxhc3QtZGl0Y2gKICAgbGFzdGVkL2UKLS0tLSAyMjg4MiwyMjg4MyAtLS0tCistLS0gMjI4ODEsMjI4ODIgLS0tLQogKioqKioqKioqKioqKioqCiAqKiogMjI4OTAsMjI4OTIgKioqKgogICBsYXN0L2tKWURTRwogLSBsYXN0LW1pbnV0ZQogICBsYXN0cy9lCi0tLS0gMjI4ODYsMjI4ODcgLS0tLQorLS0tIDIyODg1LDIyODg2IC0tLS0KICoqKioqKioqKioqKioqKgogKioqIDI2NDE3LDI2NDE4ICoqKioKLS0tLSAyNjQxMiwyNjQxNCAtLS0tCistLS0gMjY0MTEsMjY0MTMgLS0tLQogICBNb29sYXdhdGFuYQogKyBNb29sZW5hYXIvTQogICBNb29tYmEKQEAgLTI1MDEsNyArMjUwNyw3IEBACiAgIG5hdGlvbmhvb2QvTQogISBuYXRpb24vTQogICBuYXRpb253aWRlCi0tLS0gMjcxODQsMjcxODggLS0tLQorLS0tIDI3MTgzLDI3MTg3IC0tLS0KICAgbmF0aW9uYWxzLzQKICEgbmF0aW9uYWwvc1FxM1NaCiAgIG5hdGlvbmhvb2QvTQpAQCAtMjUwOSw3ICsyNTE1LDcgQEAKICAgbmF0aW9ud2lkZQogKioqKioqKioqKioqKioqCiAqKiogMjcxOTQsMjcxOTUgKioqKgotLS0tIDI3MTkwLDI3MTkzIC0tLS0KKy0tLSAyNzE4OSwyNzE5MiAtLS0tCiAgIG5hdGl2aXR5L01TCiArIG5hdGl2ZWx5CiArIG5hdGl2ZW5lc3MKQEAgLTI1MTksMjggKzI1MjUsMjggQEAKICAgbnV6emxlL1NERwogLSBuL3h2dU5WbgogICBOeWFoCi0tLS0gMjgzNjMsMjgzNjQgLS0tLQorLS0tIDI4MzYyLDI4MzYzIC0tLS0KICoqKioqKioqKioqKioqKgogKioqIDI5NDY0LDI5NDY2ICoqKioKICAgb3oKIC0gby96CiAgIE96YXJrL01TCi0tLS0gMjk0NjEsMjk0NjIgLS0tLQorLS0tIDI5NDYwLDI5NDYxIC0tLS0KICoqKioqKioqKioqKioqKgogKioqIDMxMDM1LDMxMDM3ICoqKioKICAgUGsKIC0gcC9LRgogICBwbC4KLS0tLSAzMTAzMSwzMTAzMiAtLS0tCistLS0gMzEwMzAsMzEwMzEgLS0tLQogKioqKioqKioqKioqKioqCiAqKiogMzEyODgsMzEyODkgKioqKgotLS0tIDMxMjgzLDMxMjg1IC0tLS0KKy0tLSAzMTI4MiwzMTI4NCAtLS0tCiAgIHBuZXVtb25pYS9NUwogKyBwbmV1bW9uaWMKICAgUE8KICoqKioqKioqKioqKioqKgogKioqIDMxNDYwLDMxNDYxICoqKioKLS0tLSAzMTQ1NiwzMTQ1OCAtLS0tCistLS0gMzE0NTUsMzE0NTcgLS0tLQogICBwb21wb20vTVMKICsgcG9tcG9uL00KICAgcG9tcG9zaXR5L01TCkBAIC0yNTQ5LDI1ICsyNTU1LDI1IEBACiAgIHB5eC9TCiAtIHEKICAgUWF0YXIKLS0tLSAzMjg2MiwzMjg2MyAtLS0tCistLS0gMzI4NjEsMzI4NjIgLS0tLQogKioqKioqKioqKioqKioqCiAqKiogMzMzNzgsMzMzODAgKioqKgogICByYXp6bWF0YXp6CiAtIHIvZAogICBSZC9NCi0tLS0gMzMzNzQsMzMzNzUgLS0tLQorLS0tIDMzMzczLDMzMzc0IC0tLS0KICoqKioqKioqKioqKioqKgogKioqIDM0OTc5LDM0OTgxICoqKioKICAgUlNQQ0EKIC0gcnRlCiAgIHJ1Yi1hLWR1YgotLS0tIDM0OTc0LDM0OTc1IC0tLS0KKy0tLSAzNDk3MywzNDk3NCAtLS0tCiAqKioqKioqKioqKioqKioKICoqKiAzNjAxMiwzNjAxNCAqKioqCiAgIHNlYy4KICEgcy9lY2EKICAgc2VjYW50L01TCi0tLS0gMzYwMDYsMzYwMDggLS0tLQorLS0tIDM2MDA1LDM2MDA3IC0tLS0KICAgc2VjLgogISBvdXRzCiAgIHNlY2FudC9NUwpAQCAtMjU3Niw3ICsyNTgyLDcgQEAKICAgU3plY2h3YW4vTQogISB0LzdrCiAgIFRhCi0tLS0gNDAyMzYsNDAyMzggLS0tLQorLS0tIDQwMjM1LDQwMjM3IC0tLS0KICAgU3plY2h3YW4vTQogISB0aW5nbHkKICAgVGEKQEAgLTI1ODUsMTAgKzI1OTEsMTAgQEAKICAgVHlzb24vTQogLSB1CiAgIHViaXF1aXRvdXNuZXNzCi0tLS0gNDI2MTAsNDI2MTEgLS0tLQorLS0tIDQyNjA5LDQyNjEwIC0tLS0KICoqKioqKioqKioqKioqKgogKioqIDQyOTkwLDQyOTkxICoqKioKLS0tLSA0Mjk4Myw0Mjk4NSAtLS0tCistLS0gNDI5ODIsNDI5ODQgLS0tLQogICB1bnNjcnVwdWxvdXMKICsgc2VhcmNoYWJsZQogICB1bnNlYXJjaGFibGUKQEAgLTI1OTcsMTMgKzI2MDMsMTMgQEAKICAgVXppL00KIC0gdgogICB2YWNhbmN5L01TCi0tLS0gNDMyNDYsNDMyNDcgLS0tLQorLS0tIDQzMjQ1LDQzMjQ2IC0tLS0KICoqKioqKioqKioqKioqKgogKioqIDQzNzQ5LDQzNzUxICoqKioKICAgVmlsbml1cy9NCiAhIHZpbS9NCiAgIHZpbmFpZ3JldHRlL01TCi0tLS0gNDM3NDIsNDM3NDUgLS0tLQorLS0tIDQzNzQxLDQzNzQ0IC0tLS0KICAgVmlsbml1cy9NCiAhIFZpbS9NCiAhIHZpbS8/CkBAIC0yNjEzLDE2ICsyNjE5LDE2IEBACiAgIHlpcHBlZQogLSB5L0sKICAgWU1DQQotLS0tIDQ1NDg4LDQ1NDg5IC0tLS0KKy0tLSA0NTQ4Nyw0NTQ4OCAtLS0tCiAqKioqKioqKioqKioqKioKICoqKiA0NTU4Niw0NTU4OCAqKioqCiAgIHphcC9TR1JECiAtIHovZAogICBaZWFsYW5kZXJzCi0tLS0gNDU1NzksNDU1ODAgLS0tLQorLS0tIDQ1NTc4LDQ1NTc5IC0tLS0KICoqKioqKioqKioqKioqKgogKioqIDQ1NjU1ICoqKioKLS0tLSA0NTY0Nyw0NTY1NCAtLS0tCistLS0gNDU2NDYsNDU2NTMgLS0tLQogICB6eW11cmd5L1MKICsgbmQKICsgdGhlIHRoZS8hCmRpZmYgLS1naXQgYS9ydW50aW1lL3NwZWxsL2VuL2VuX0NBLmRpZmYgYi9ydW50aW1lL3NwZWxsL2VuL2VuX0NBLmRpZmYKaW5kZXggYzYzMTljZS4uNTI4YmFiNCAxMDA2NDQKLS0tIGEvcnVudGltZS9zcGVsbC9lbi9lbl9DQS5kaWZmCisrKyBiL3J1bnRpbWUvc3BlbGwvZW4vZW5fQ0EuZGlmZgpAQCAtMTY1LDcgKzE2NSw3IEBACiAhIFNGWCBHICAgMCAgICAgaW5nICAgICAgICBbXmVdCiAgIAogKioqIGVuX0NBLm9yaWcuZGljCVNhdCBBcHIgMTYgMTQ6NDA6MDYgMjAwNQotLS0tIGVuX0NBLmRpYwlUdWUgQXVnIDE2IDE3OjAzOjU1IDIwMDUKKy0tLSBlbl9DQS5kaWMJU2F0IE9jdCAgOCAxNTo1NDoxNiAyMDA1CiAqKioqKioqKioqKioqKioKICoqKiA0Niw0OCAqKioqCiAgIFIvRwpAQCAtNDM3LDcgKzQzNyw3IEBACiAgIGZlbGljaXRvdXMvSVkKICoqKioqKioqKioqKioqKgogKioqIDYyMzQxICoqKioKLS0tLSA2MjM0Myw2MjM1MCAtLS0tCistLS0gNjIzNDMsNjIzNTEgLS0tLQogICBkYXRhL00KICsgZXQgYWwuCiArIHRoZSB0aGUvIQpAQCAtNDQ2LDMgKzQ0Niw0IEBACiArIGFuIGEvIQogKyBhbiBhbi8hCiArIFBheVBhbAorKyBlLmcuCmRpZmYgLS1naXQgYS9ydW50aW1lL3NwZWxsL2VuL2VuX1VTLmRpZmYgYi9ydW50aW1lL3NwZWxsL2VuL2VuX1VTLmRpZmYKaW5kZXggMTJkZTczMi4uYjBkYjJiMyAxMDA2NDQKLS0tIGEvcnVudGltZS9zcGVsbC9lbi9lbl9VUy5kaWZmCisrKyBiL3J1bnRpbWUvc3BlbGwvZW4vZW5fVVMuZGlmZgpAQCAtMTk1LDcgKzE5NSw3IEBACiArIFJFUCBhX2FuIGEKICsgUkVQIGFfYW4gYW4KICoqKiBlbl9VUy5vcmlnLmRpYwlGcmkgQXByIDE1IDEzOjIwOjM2IDIwMDUKLS0tLSBlbl9VUy5kaWMJV2VkIFNlcCAyMSAxMTozNjowNiAyMDA1CistLS0gZW5fVVMuZGljCVNhdCBPY3QgIDggMTU6NTQ6MjYgMjAwNQogKioqKioqKioqKioqKioqCiAqKiogNTk0NCw1OTQ2ICoqKioKICAgYmsKQEAgLTU2NSw3ICs1NjUsNyBAQAogICBadWJlbmVsZ2VudWJpL00KICoqKioqKioqKioqKioqKgogKioqIDYyMDc3ICoqKioKLS0tLSA2MjA3Nyw2MjA4OCAtLS0tCistLS0gNjIwNzcsNjIwODkgLS0tLQogICB6eW11cmd5L1MKICsgbmQKICsgdGhlIHRoZS8hCkBAIC01NzgsMyArNTc4LDQgQEAKICsgYSB0aGUvIQogKyBhbiB0aGUvIQogKyBQYXlQYWwKKysgZS5nLgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvcGVybC52aW0gYi9ydW50aW1lL3N5bnRheC9wZXJsLnZpbQppbmRleCAzMjdjYzExLi44Y2Q0MGI0IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9wZXJsLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9wZXJsLnZpbQpAQCAtMSw3ICsxLDcgQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOglQZXJsCiAiIE1haW50YWluZXI6CU5pY2sgSGlibWEgPG5faGlibWFAdmFuLWxhYXJob3Zlbi5vcmc+Ci0iIExhc3QgQ2hhbmdlOgkyMDA0IEF1ZyAyOQorIiBMYXN0IENoYW5nZToJMjAwNSBPY3QgMDYKICIgTG9jYXRpb246CWh0dHA6Ly93d3cudmFuLWxhYXJob3Zlbi5vcmcvdmltL3N5bnRheC9wZXJsLnZpbQogIgogIiBQbGVhc2UgZG93bmxvYWQgbW9zdCByZWNlbnQgdmVyc2lvbiBmaXJzdCBiZWZvcmUgbWFpbGluZwpAQCAtODcsMTEgKzg3LDEwIEBACiBlbmRpZgogc3luIGtleXdvcmQgcGVybE9wZXJhdG9yCQlkZWZpbmVkIHVuZGVmIGFuZCBvciBub3QgYmxlc3MgcmVmCiBpZiBleGlzdHMoInBlcmxfZm9sZCIpCi0gICIgaWYgQkVHSU4vRU5EIGlzIGEga2V5d29yZCB0aGUgcGVybEJFR0lORU5ERm9sZCBkb2VzIG5vdCB3b3JrCi0gIHN5biBtYXRjaCBwZXJsQ29udHJvbAkJCSJcPEJFR0lOXD4iIGNvbnRhaW5lZAotICBzeW4gbWF0Y2ggcGVybENvbnRyb2wJCQkiXDxFTkRcPiIgY29udGFpbmVkCisgICIgaWYgQkVHSU4vRU5EIHdvdWxkIGJlIGEga2V5d29yZCB0aGUgcGVybEJFR0lORU5ERm9sZCBkb2VzIG5vdCB3b3JrCisgIHN5biBtYXRjaCBwZXJsQ29udHJvbAkJCSJcPEJFR0lOXHxDSEVDS1x8SU5JVFx8RU5EXD4iIGNvbnRhaW5lZAogZWxzZQotICBzeW4ga2V5d29yZCBwZXJsQ29udHJvbAkJQkVHSU4gRU5ECisgIHN5biBrZXl3b3JkIHBlcmxDb250cm9sCQlCRUdJTiBFTkQgQ0hFQ0sgSU5JVAogZW5kaWYKIAogc3luIGtleXdvcmQgcGVybFN0YXRlbWVudFN0b3JhZ2UJbXkgbG9jYWwgb3VyCkBAIC0xODIsNyArMTgxLDcgQEAKICIgU3BlY2lhbCBjaGFyYWN0ZXJzIGluIHN0cmluZ3MgYW5kIG1hdGNoZXMKIHN5biBtYXRjaCAgcGVybFNwZWNpYWxTdHJpbmcJIlxcXChcZFwrXHxbeFhdXHhcK1x8Y1x1XHwuXCkiIGNvbnRhaW5lZAogc3luIG1hdGNoICBwZXJsU3BlY2lhbFN0cmluZ1UJIlxcWydcXF0iIGNvbnRhaW5lZAotc3luIG1hdGNoICBwZXJsU3BlY2lhbE1hdGNoCSJ7XGRcKCxcZFwpXD19IiBjb250YWluZWQKK3N5biBtYXRjaCAgcGVybFNwZWNpYWxNYXRjaAkie1xkXCtcKCxcKFxkXCtcKVw9XClcPX0iIGNvbnRhaW5lZAogc3luIG1hdGNoICBwZXJsU3BlY2lhbE1hdGNoCSJcW1woXF1cfC1cKVw9W15cW1xdXSpcKFxbXHxcLVwpXD1cXSIgY29udGFpbmVkCiBzeW4gbWF0Y2ggIHBlcmxTcGVjaWFsTWF0Y2gJIlsrKigpPy5dIiBjb250YWluZWQKIHN5biBtYXRjaCAgcGVybFNwZWNpYWxNYXRjaAkiKD9bIzo9IV0iIGNvbnRhaW5lZApAQCAtMzg5LDcgKzM4OCw3IEBACiBpZiBleGlzdHMoInBlcmxfZm9sZCIpCiAgIHN5biByZWdpb24gcGVybFBhY2thZ2VGb2xkIHN0YXJ0PSJecGFja2FnZSBcU1wrOyQiIGVuZD0iXjE7JCIgZW5kPSJcblwrcGFja2FnZSJtZT1zLTEgdHJhbnNwYXJlbnQgZm9sZCBrZWVwZW5kCiAgIHN5biByZWdpb24gcGVybFN1YkZvbGQgICAgIHN0YXJ0PSJeXHooXHMqXClcPHN1Ylw+LipbXn07XSQiIGVuZD0iXlx6MX1ccyokIiBlbmQ9Il5cejF9XHMqXCMuKiQiIHRyYW5zcGFyZW50IGZvbGQga2VlcGVuZAotICBzeW4gcmVnaW9uIHBlcmxCRUdJTkVOREZvbGQgc3RhcnQ9Il5ceihccypcKVw8XChCRUdJTlx8RU5EXClcPi4qW159O10kIiBlbmQ9Il5cejF9XHMqJCIgdHJhbnNwYXJlbnQgZm9sZCBrZWVwZW5kCisgIHN5biByZWdpb24gcGVybEJFR0lORU5ERm9sZCBzdGFydD0iXlx6KFxzKlwpXDxcKEJFR0lOXHxFTkRcfENIRUNLXHxJTklUXClcPi4qW159O10kIiBlbmQ9Il5cejF9XHMqJCIgdHJhbnNwYXJlbnQgZm9sZCBrZWVwZW5kCiAKICAgaWYgZXhpc3RzKCJwZXJsX2ZvbGRfYmxvY2tzIikKICAgICBzeW4gcmVnaW9uIHBlcmxJZkZvbGQgc3RhcnQ9Il5ceihccypcKVwoaWZcfHVubGVzc1x8Zm9yXHx3aGlsZVx8dW50aWxcKVxzKiguKilccyp7XHMqJCIgc3RhcnQ9Il5ceihccypcKWZvcmVhY2hccypcKFwobXlcfG91clwpXD1ccypcU1wrXHMqXClcPSguKilccyp7XHMqJCIgZW5kPSJeXHoxfVxzKjtcPSQiIHRyYW5zcGFyZW50IGZvbGQga2VlcGVuZApkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvcmF0cG9pc29uLnZpbSBiL3J1bnRpbWUvc3ludGF4L3JhdHBvaXNvbi52aW0KaW5kZXggMDJhMGE5Mi4uYjE0NzU2MCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvcmF0cG9pc29uLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9yYXRwb2lzb24udmltCkBAIC0xLDkgKzEsOCBAQAogIiBWaW0gc3ludGF4IGZpbGUKLSIgRmlsZW5hbWU6CXJhdHBvaXNvbi52aW0KICIgTGFuZ3VhZ2U6CVJhdHBvaXNvbiBjb25maWd1cmF0aW9uL2NvbW1hbmRzIGZpbGUgKCAvZXRjL3JhdHBvaXNvbnJjIH4vLnJhdHBvaXNvbnJjICkKICIgTWFpbnRhaW5lcjoJRG91ZyBLZWFybnMgPGRqa2VhMkBndXMuZ3NjaXQubW9uYXNoLmVkdS5hdT4KICIgVVJMOgkJaHR0cDovL2d1cy5nc2NpdC5tb25hc2guZWR1LmF1L35kamtlYTIvdmltL3N5bnRheC9yYXRwb2lzb24udmltCi0iIExhc3QgQ2hhbmdlOgkyMDA0IE5vdiAyNworIiBMYXN0IENoYW5nZToJMjAwNSBPY3QgMDYKIAogIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKICIgRm9yIHZlcnNpb24gNi54OiBRdWl0IHdoZW4gYSBzeW50YXggZmlsZSB3YXMgYWxyZWFkeSBsb2FkZWQKQEAgLTIxLDI2ICsyMCwyNyBAQAogc3luIGtleXdvcmQgcmF0cG9pc29uQm9vbGVhbkFyZwlvbiBvZmYJCQljb250YWluZWQKIHN5biBjYXNlIG1hdGNoCiAKLXN5biBrZXl3b3JkIHJhdHBvaXNvbkNvbW1hbmRBcmcgYWJvcnQgYWRkaG9vayBhbGlhcyBiYW5pc2ggYmluZAkJCQkJCWNvbnRhaW5lZAotc3luIGtleXdvcmQgcmF0cG9pc29uQ29tbWFuZEFyZyBjaGRpciBjbHJ1bm1hbmFnZWQgY29sb24gY3VyZnJhbWUgZGVmYmFyYm9yZGVyCQkJCWNvbnRhaW5lZAotc3luIGtleXdvcmQgcmF0cG9pc29uQ29tbWFuZEFyZyBkZWZiYXJncmF2aXR5IGRlZmJhcnBhZGRpbmcgZGVmYmdjb2xvciBkZWZib3JkZXIgZGVmZmdjb2xvcgkJY29udGFpbmVkCi1zeW4ga2V5d29yZCByYXRwb2lzb25Db21tYW5kQXJnIGRlZmZvbnQgZGVmZnJhbWVzZWxzIGRlZmluZWtleSBkZWZpbnB1dHdpZHRoIGRlZm1heHNpemVncmF2aXR5CQljb250YWluZWQKLXN5biBrZXl3b3JkIHJhdHBvaXNvbkNvbW1hbmRBcmcgZGVmcGFkZGluZyBkZWZyZXNpemV1bml0IGRlZnRyYW5zZ3Jhdml0eSBkZWZ3YWl0Y3Vyc29yIGRlZndpbmZtdAljb250YWluZWQKLXN5biBrZXl3b3JkIHJhdHBvaXNvbkNvbW1hbmRBcmcgZGVmd2luZ3Jhdml0eSBkZWZ3aW5saXN0c3R5bGUgZGVmd2lubmFtZSBkZWxldGUgZGVsa21hcAkJCWNvbnRhaW5lZAotc3luIGtleXdvcmQgcmF0cG9pc29uQ29tbWFuZEFyZyBlY2hvIGVzY2FwZSBleGVjIGZkdW1wIGZvY3VzCQkJCQkJY29udGFpbmVkCi1zeW4ga2V5d29yZCByYXRwb2lzb25Db21tYW5kQXJnIGZvY3VzZG93biBmb2N1c2xhc3QgZm9jdXNsZWZ0IGZvY3VzcmlnaHQgZm9jdXN1cAkJCWNvbnRhaW5lZAotc3luIGtleXdvcmQgcmF0cG9pc29uQ29tbWFuZEFyZyBmcmVzdG9yZSBmc2VsZWN0IGdkZWxldGUgZ2V0ZW52IGdtZXJnZQkJCQkJY29udGFpbmVkCi1zeW4ga2V5d29yZCByYXRwb2lzb25Db21tYW5kQXJnIGdtb3ZlIGduZXcgZ25ld2JnIGduZXh0IGdwcmV2CQkJCQkJY29udGFpbmVkCi1zeW4ga2V5d29yZCByYXRwb2lzb25Db21tYW5kQXJnIGdyYXZpdHkgZ3JvdXBzIGdzZWxlY3QgaGVscCBoc3BsaXQJCQkJCWNvbnRhaW5lZAotc3luIGtleXdvcmQgcmF0cG9pc29uQ29tbWFuZEFyZyBpbmZvIGtpbGwgbGFzdG1zZyBsaWNlbnNlIGxpbmsJCQkJCQljb250YWluZWQKLXN5biBrZXl3b3JkIHJhdHBvaXNvbkNvbW1hbmRBcmcgbGlzdGhvb2sgbWV0YSBtc2d3YWl0IG5ld2ttYXAgbmV3d20JCQkJCWNvbnRhaW5lZAotc3luIGtleXdvcmQgcmF0cG9pc29uQ29tbWFuZEFyZyBuZXh0IG5leHRzY3JlZW4gbnVtYmVyIG9ubHkgb3RoZXIJCQkJCWNvbnRhaW5lZAotc3luIGtleXdvcmQgcmF0cG9pc29uQ29tbWFuZEFyZyBwcmV2IHByZXZzY3JlZW4gcXVpdCByZWFka2V5IHJlZGlzcGxheQkJCQkJY29udGFpbmVkCi1zeW4ga2V5d29yZCByYXRwb2lzb25Db21tYW5kQXJnIHJlbWhvb2sgcmVtb3ZlIHJlc2l6ZSByZXN0YXJ0IHJ1ZGVuZXNzCQkJCQljb250YWluZWQKLXN5biBrZXl3b3JkIHJhdHBvaXNvbkNvbW1hbmRBcmcgc2VsZWN0IHNldGVudiBzaHJpbmsgc291cmNlIHNwbGl0CQkJCQljb250YWluZWQKLXN5biBrZXl3b3JkIHJhdHBvaXNvbkNvbW1hbmRBcmcgc3RhcnR1cF9tZXNzYWdlIHRpbWUgdGl0bGUgdG1wd20gdW5hbGlhcwkJCQljb250YWluZWQKLXN5biBrZXl3b3JkIHJhdHBvaXNvbkNvbW1hbmRBcmcgdW5iaW5kIHVubWFuYWdlIHVuc2V0ZW52IHZlcmJleGVjIHZlcnNpb24JCQkJY29udGFpbmVkCi1zeW4ga2V5d29yZCByYXRwb2lzb25Db21tYW5kQXJnIHZzcGxpdCB3YXJwIHdpbmRvd3Mgc3luIGNhc2UgaWdub3JlCQkJCQljb250YWluZWQKK3N5biBrZXl3b3JkIHJhdHBvaXNvbkNvbW1hbmRBcmcgYWJvcnQgYWRkaG9vayBhbGlhcyBiYW5pc2ggY2hkaXIJCWNvbnRhaW5lZAorc3luIGtleXdvcmQgcmF0cG9pc29uQ29tbWFuZEFyZyBjbHJ1bm1hbmFnZWQgY25leHQgY29sb24gY29tcGF0IGNvdGhlcgkJY29udGFpbmVkCitzeW4ga2V5d29yZCByYXRwb2lzb25Db21tYW5kQXJnIGNwcmV2IGN1cmZyYW1lIGRlZGljYXRlIGRlZmluZWtleSBkZWxldGUJY29udGFpbmVkCitzeW4ga2V5d29yZCByYXRwb2lzb25Db21tYW5kQXJnIGRlbGttYXAgZGVzY3JpYmVrZXkgZWNobyBlc2NhcGUgZXhlYwkJY29udGFpbmVkCitzeW4ga2V5d29yZCByYXRwb2lzb25Db21tYW5kQXJnIGZkdW1wIGZvY3VzIGZvY3VzZG93biBmb2N1c2xhc3QgZm9jdXNsZWZ0CWNvbnRhaW5lZAorc3luIGtleXdvcmQgcmF0cG9pc29uQ29tbWFuZEFyZyBmb2N1c3ByZXYgZm9jdXNyaWdodCBmb2N1c3VwIGZyZXN0b3JlIGZzZWxlY3QJY29udGFpbmVkCitzeW4ga2V5d29yZCByYXRwb2lzb25Db21tYW5kQXJnIGdkZWxldGUgZ2V0ZW52IGdldHNlbCBnbWVyZ2UgZ21vdmUJCWNvbnRhaW5lZAorc3luIGtleXdvcmQgcmF0cG9pc29uQ29tbWFuZEFyZyBnbmV3IGduZXdiZyBnbmV4dCBncHJldiBncmF2aXR5CQkJY29udGFpbmVkCitzeW4ga2V5d29yZCByYXRwb2lzb25Db21tYW5kQXJnIGdyb3VwcyBnc2VsZWN0IGhlbHAgaHNwbGl0IGluZXh0CQljb250YWluZWQKK3N5biBrZXl3b3JkIHJhdHBvaXNvbkNvbW1hbmRBcmcgaW5mbyBpb3RoZXIgaXByZXYga2lsbCBsYXN0bXNnCQkJY29udGFpbmVkCitzeW4ga2V5d29yZCByYXRwb2lzb25Db21tYW5kQXJnIGxpY2Vuc2UgbGluayBsaXN0aG9vayBtZXRhIG1zZ3dhaXQJCWNvbnRhaW5lZAorc3luIGtleXdvcmQgcmF0cG9pc29uQ29tbWFuZEFyZyBuZXdrbWFwIG5ld3dtIG5leHQgbmV4dHNjcmVlbiBudW1iZXIJCWNvbnRhaW5lZAorc3luIGtleXdvcmQgcmF0cG9pc29uQ29tbWFuZEFyZyBvbmx5IG90aGVyIHByZXYgcHJldnNjcmVlbiBwcm9tcHQJCWNvbnRhaW5lZAorc3luIGtleXdvcmQgcmF0cG9pc29uQ29tbWFuZEFyZyBwdXRzZWwgcXVpdCByYXRjbGljayByYXRob2xkIHJhdHJlbHdhcnAJCWNvbnRhaW5lZAorc3luIGtleXdvcmQgcmF0cG9pc29uQ29tbWFuZEFyZyByYXR3YXJwIHJlYWRrZXkgcmVkaXNwbGF5IHJlZG8gcmVtaG9vawkJY29udGFpbmVkCitzeW4ga2V5d29yZCByYXRwb2lzb25Db21tYW5kQXJnIHJlbW92ZSByZXNpemUgcmVzdGFydCBydWRlbmVzcyBzZHVtcAkJY29udGFpbmVkCitzeW4ga2V5d29yZCByYXRwb2lzb25Db21tYW5kQXJnIHNlbGVjdCBzZXQgc2V0ZW52IHNmZHVtcCBzaHJpbmsJCQljb250YWluZWQKK3N5biBrZXl3b3JkIHJhdHBvaXNvbkNvbW1hbmRBcmcgc291cmNlIHNzZWxlY3Qgc3RhcnR1cF9tZXNzYWdlIHRpbWUgdGl0bGUJY29udGFpbmVkCitzeW4ga2V5d29yZCByYXRwb2lzb25Db21tYW5kQXJnIHRtcHdtIHVuYWxpYXMgdW5kZWZpbmVrZXkgdW5kbyB1bm1hbmFnZQkJY29udGFpbmVkCitzeW4ga2V5d29yZCByYXRwb2lzb25Db21tYW5kQXJnIHVuc2V0ZW52IHZlcmJleGVjIHZlcnNpb24gdnNwbGl0IHdhcnAJCWNvbnRhaW5lZAorc3luIGtleXdvcmQgcmF0cG9pc29uQ29tbWFuZEFyZyB3aW5kb3dzCQkJCQkJY29udGFpbmVkCiAKIHN5biBtYXRjaCAgIHJhdHBvaXNvbkdyYXZpdHlBcmcgIlw8XChuXHxub3J0aFwpXD4iCWNvbnRhaW5lZAogc3luIG1hdGNoICAgcmF0cG9pc29uR3Jhdml0eUFyZyAiXDxcKG53XHxub3J0aHdlc3RcKVw+Igljb250YWluZWQKQEAgLTEzOSw4ICsxMzksMTAgQEAKIHN5biBtYXRjaCAgIHJhdHBvaXNvblN0cmluZ0NvbW1hbmQJIl5ccypcenNiaW5kXHplXHMqIgkJbmV4dGdyb3VwPXJhdHBvaXNvbktleVNlcUFyZwogc3luIG1hdGNoICAgcmF0cG9pc29uU3RyaW5nQ29tbWFuZAkiXlxzKlx6c2NoZGlyXHplXHMqIgogc3luIG1hdGNoICAgcmF0cG9pc29uU3RyaW5nQ29tbWFuZAkiXlxzKlx6c2NvbG9uXHplXHMqIgkJbmV4dGdyb3VwPXJhdHBvaXNvbkNvbW1hbmRBcmcKK3N5biBtYXRjaCAgIHJhdHBvaXNvblN0cmluZ0NvbW1hbmQJIl5ccypcenNkZWRpY2F0ZVx6ZVxzKiIJCW5leHRncm91cD1yYXRwb2lzb25OdW1iZXJBcmcKIHN5biBtYXRjaCAgIHJhdHBvaXNvblN0cmluZ0NvbW1hbmQJIl5ccypcenNkZWZpbmVrZXlcemVccyoiCiBzeW4gbWF0Y2ggICByYXRwb2lzb25TdHJpbmdDb21tYW5kCSJeXHMqXHpzZGVsa21hcFx6ZVxzKiIKK3N5biBtYXRjaCAgIHJhdHBvaXNvblN0cmluZ0NvbW1hbmQJIl5ccypcenNkZXNjcmliZWtleVx6ZVxzKiIKIHN5biBtYXRjaCAgIHJhdHBvaXNvblN0cmluZ0NvbW1hbmQJIl5ccypcenNlY2hvXHplXHMqIgogc3luIG1hdGNoICAgcmF0cG9pc29uU3RyaW5nQ29tbWFuZAkiXlxzKlx6c2VzY2FwZVx6ZVxzKiIJCW5leHRncm91cD1yYXRwb2lzb25LZXlTZXFBcmcKIHN5biBtYXRjaCAgIHJhdHBvaXNvblN0cmluZ0NvbW1hbmQJIl5ccypcenNleGVjXHplXHMqIgpAQCAtMTU1LDYgKzE1NywxMSBAQAogc3luIG1hdGNoICAgcmF0cG9pc29uU3RyaW5nQ29tbWFuZAkiXlxzKlx6c25ld2ttYXBcemVccyoiCiBzeW4gbWF0Y2ggICByYXRwb2lzb25TdHJpbmdDb21tYW5kCSJeXHMqXHpzbmV3d21cemVccyoiCiBzeW4gbWF0Y2ggICByYXRwb2lzb25TdHJpbmdDb21tYW5kCSJeXHMqXHpzbnVtYmVyXHplXHMqIgkJbmV4dGdyb3VwPXJhdHBvaXNvbk51bWJlckFyZworc3luIG1hdGNoICAgcmF0cG9pc29uU3RyaW5nQ29tbWFuZAkiXlxzKlx6c3Byb21wdFx6ZVxzKiIKK3N5biBtYXRjaCAgIHJhdHBvaXNvblN0cmluZ0NvbW1hbmQJIl5ccypcenNyYXR3YXJwXHplXHMqIgorc3luIG1hdGNoICAgcmF0cG9pc29uU3RyaW5nQ29tbWFuZAkiXlxzKlx6c3JhdHJlbHdhcnBcemVccyoiCitzeW4gbWF0Y2ggICByYXRwb2lzb25TdHJpbmdDb21tYW5kCSJeXHMqXHpzcmF0Y2xpY2tcemVccyoiCitzeW4gbWF0Y2ggICByYXRwb2lzb25TdHJpbmdDb21tYW5kCSJeXHMqXHpzcmF0aG9sZFx6ZVxzKiIKIHN5biBtYXRjaCAgIHJhdHBvaXNvblN0cmluZ0NvbW1hbmQJIl5ccypcenNyZWFka2V5XHplXHMqIgogc3luIG1hdGNoICAgcmF0cG9pc29uU3RyaW5nQ29tbWFuZAkiXlxzKlx6c3JlbWhvb2tcemVccyoiCQluZXh0Z3JvdXA9cmF0cG9pc29uSG9va0FyZwogc3luIG1hdGNoICAgcmF0cG9pc29uU3RyaW5nQ29tbWFuZAkiXlxzKlx6c3Jlc2l6ZVx6ZVxzKiIJCW5leHRncm91cD1yYXRwb2lzb25OdW1iZXJBcmcKQEAgLTE2MiwxMSArMTY5LDEzIEBACiBzeW4gbWF0Y2ggICByYXRwb2lzb25TdHJpbmdDb21tYW5kCSJeXHMqXHpzc2VsZWN0XHplXHMqIgkJbmV4dGdyb3VwPXJhdHBvaXNvbk51bWJlckFyZwogc3luIG1hdGNoICAgcmF0cG9pc29uU3RyaW5nQ29tbWFuZAkiXlxzKlx6c3NldGVudlx6ZVxzKiIKIHN5biBtYXRjaCAgIHJhdHBvaXNvblN0cmluZ0NvbW1hbmQJIl5ccypcenNzb3VyY2VcemVccyoiCitzeW4gbWF0Y2ggICByYXRwb2lzb25TdHJpbmdDb21tYW5kCSJeXHMqXHpzc3NlbGVjdFx6ZVxzKiIKIHN5biBtYXRjaCAgIHJhdHBvaXNvblN0cmluZ0NvbW1hbmQJIl5ccypcenNzdGFydHVwX21lc3NhZ2VcemVccyoiCW5leHRncm91cD1yYXRwb2lzb25Cb29sZWFuQXJnCiBzeW4gbWF0Y2ggICByYXRwb2lzb25TdHJpbmdDb21tYW5kCSJeXHMqXHpzdGl0bGVcemVccyoiCiBzeW4gbWF0Y2ggICByYXRwb2lzb25TdHJpbmdDb21tYW5kCSJeXHMqXHpzdG1wd21cemVccyoiCiBzeW4gbWF0Y2ggICByYXRwb2lzb25TdHJpbmdDb21tYW5kCSJeXHMqXHpzdW5hbGlhc1x6ZVxzKiIKIHN5biBtYXRjaCAgIHJhdHBvaXNvblN0cmluZ0NvbW1hbmQJIl5ccypcenN1bmJpbmRcemVccyoiCQluZXh0Z3JvdXA9cmF0cG9pc29uS2V5U2VxQXJnCitzeW4gbWF0Y2ggICByYXRwb2lzb25TdHJpbmdDb21tYW5kCSJeXHMqXHpzdW5kZWZpbmVrZXlcemVccyoiCiBzeW4gbWF0Y2ggICByYXRwb2lzb25TdHJpbmdDb21tYW5kCSJeXHMqXHpzdW5tYW5hZ2VcemVccyoiCiBzeW4gbWF0Y2ggICByYXRwb2lzb25TdHJpbmdDb21tYW5kCSJeXHMqXHpzdW5zZXRlbnZcemVccyoiCiBzeW4gbWF0Y2ggICByYXRwb2lzb25TdHJpbmdDb21tYW5kCSJeXHMqXHpzdmVyYmV4ZWNcemVccyoiCkBAIC0xNzUsMTUgKzE4NCwyMSBAQAogc3luIG1hdGNoICAgcmF0cG9pc29uVm9pZENvbW1hbmQJIl5ccypcenNhYm9ydFx6ZVxzKiQiCiBzeW4gbWF0Y2ggICByYXRwb2lzb25Wb2lkQ29tbWFuZAkiXlxzKlx6c2JhbmlzaFx6ZVxzKiQiCiBzeW4gbWF0Y2ggICByYXRwb2lzb25Wb2lkQ29tbWFuZAkiXlxzKlx6c2NscnVubWFuYWdlZFx6ZVxzKiQiCitzeW4gbWF0Y2ggICByYXRwb2lzb25Wb2lkQ29tbWFuZAkiXlxzKlx6c2NuZXh0XHplXHMqJCIKK3N5biBtYXRjaCAgIHJhdHBvaXNvblZvaWRDb21tYW5kCSJeXHMqXHpzY29tcGF0XHplXHMqJCIKK3N5biBtYXRjaCAgIHJhdHBvaXNvblZvaWRDb21tYW5kCSJeXHMqXHpzY290aGVyXHplXHMqJCIKK3N5biBtYXRjaCAgIHJhdHBvaXNvblZvaWRDb21tYW5kCSJeXHMqXHpzY3ByZXZcemVccyokIgogc3luIG1hdGNoICAgcmF0cG9pc29uVm9pZENvbW1hbmQJIl5ccypcenNjdXJmcmFtZVx6ZVxzKiQiCiBzeW4gbWF0Y2ggICByYXRwb2lzb25Wb2lkQ29tbWFuZAkiXlxzKlx6c2RlbGV0ZVx6ZVxzKiQiCiBzeW4gbWF0Y2ggICByYXRwb2lzb25Wb2lkQ29tbWFuZAkiXlxzKlx6c2ZvY3VzZG93blx6ZVxzKiQiCiBzeW4gbWF0Y2ggICByYXRwb2lzb25Wb2lkQ29tbWFuZAkiXlxzKlx6c2ZvY3VzbGFzdFx6ZVxzKiQiCiBzeW4gbWF0Y2ggICByYXRwb2lzb25Wb2lkQ29tbWFuZAkiXlxzKlx6c2ZvY3VzbGVmdFx6ZVxzKiQiCitzeW4gbWF0Y2ggICByYXRwb2lzb25Wb2lkQ29tbWFuZAkiXlxzKlx6c2ZvY3VzcHJldlx6ZVxzKiQiCiBzeW4gbWF0Y2ggICByYXRwb2lzb25Wb2lkQ29tbWFuZAkiXlxzKlx6c2ZvY3VzcmlnaHRcemVccyokIgotc3luIG1hdGNoICAgcmF0cG9pc29uVm9pZENvbW1hbmQJIl5ccypcenNmb2N1c1x6ZVxzKiQiCiBzeW4gbWF0Y2ggICByYXRwb2lzb25Wb2lkQ29tbWFuZAkiXlxzKlx6c2ZvY3VzdXBcemVccyokIgorc3luIG1hdGNoICAgcmF0cG9pc29uVm9pZENvbW1hbmQJIl5ccypcenNmb2N1c1x6ZVxzKiQiCiBzeW4gbWF0Y2ggICByYXRwb2lzb25Wb2lkQ29tbWFuZAkiXlxzKlx6c2ZzZWxlY3RcemVccyokIgorc3luIG1hdGNoICAgcmF0cG9pc29uVm9pZENvbW1hbmQJIl5ccypcenNnZXRzZWxcemVccyokIgogc3luIG1hdGNoICAgcmF0cG9pc29uVm9pZENvbW1hbmQJIl5ccypcenNnbWVyZ2VcemVccyokIgogc3luIG1hdGNoICAgcmF0cG9pc29uVm9pZENvbW1hbmQJIl5ccypcenNnbW92ZVx6ZVxzKiQiCiBzeW4gbWF0Y2ggICByYXRwb2lzb25Wb2lkQ29tbWFuZAkiXlxzKlx6c2duZXdiZ1x6ZVxzKiQiCkBAIC0xOTMsMjQgKzIwOCwzMiBAQAogc3luIG1hdGNoICAgcmF0cG9pc29uVm9pZENvbW1hbmQJIl5ccypcenNncm91cHNcemVccyokIgogc3luIG1hdGNoICAgcmF0cG9pc29uVm9pZENvbW1hbmQJIl5ccypcenNoZWxwXHplXHMqJCIKIHN5biBtYXRjaCAgIHJhdHBvaXNvblZvaWRDb21tYW5kCSJeXHMqXHpzaHNwbGl0XHplXHMqJCIKK3N5biBtYXRjaCAgIHJhdHBvaXNvblZvaWRDb21tYW5kCSJeXHMqXHpzaW5leHRcemVccyokIgogc3luIG1hdGNoICAgcmF0cG9pc29uVm9pZENvbW1hbmQJIl5ccypcenNpbmZvXHplXHMqJCIKK3N5biBtYXRjaCAgIHJhdHBvaXNvblZvaWRDb21tYW5kCSJeXHMqXHpzaW90aGVyXHplXHMqJCIKK3N5biBtYXRjaCAgIHJhdHBvaXNvblZvaWRDb21tYW5kCSJeXHMqXHpzaXByZXZcemVccyokIgogc3luIG1hdGNoICAgcmF0cG9pc29uVm9pZENvbW1hbmQJIl5ccypcenNraWxsXHplXHMqJCIKIHN5biBtYXRjaCAgIHJhdHBvaXNvblZvaWRDb21tYW5kCSJeXHMqXHpzbGFzdG1zZ1x6ZVxzKiQiCiBzeW4gbWF0Y2ggICByYXRwb2lzb25Wb2lkQ29tbWFuZAkiXlxzKlx6c2xpY2Vuc2VcemVccyokIgogc3luIG1hdGNoICAgcmF0cG9pc29uVm9pZENvbW1hbmQJIl5ccypcenNtZXRhXHplXHMqJCIKLXN5biBtYXRjaCAgIHJhdHBvaXNvblZvaWRDb21tYW5kCSJeXHMqXHpzbmV4dFx6ZVxzKiQiCiBzeW4gbWF0Y2ggICByYXRwb2lzb25Wb2lkQ29tbWFuZAkiXlxzKlx6c25leHRzY3JlZW5cemVccyokIgorc3luIG1hdGNoICAgcmF0cG9pc29uVm9pZENvbW1hbmQJIl5ccypcenNuZXh0XHplXHMqJCIKIHN5biBtYXRjaCAgIHJhdHBvaXNvblZvaWRDb21tYW5kCSJeXHMqXHpzb25seVx6ZVxzKiQiCiBzeW4gbWF0Y2ggICByYXRwb2lzb25Wb2lkQ29tbWFuZAkiXlxzKlx6c290aGVyXHplXHMqJCIKLXN5biBtYXRjaCAgIHJhdHBvaXNvblZvaWRDb21tYW5kCSJeXHMqXHpzcHJldlx6ZVxzKiQiCiBzeW4gbWF0Y2ggICByYXRwb2lzb25Wb2lkQ29tbWFuZAkiXlxzKlx6c3ByZXZzY3JlZW5cemVccyokIgorc3luIG1hdGNoICAgcmF0cG9pc29uVm9pZENvbW1hbmQJIl5ccypcenNwcmV2XHplXHMqJCIKK3N5biBtYXRjaCAgIHJhdHBvaXNvblZvaWRDb21tYW5kCSJeXHMqXHpzcHV0c2VsXHplXHMqJCIKIHN5biBtYXRjaCAgIHJhdHBvaXNvblZvaWRDb21tYW5kCSJeXHMqXHpzcXVpdFx6ZVxzKiQiCiBzeW4gbWF0Y2ggICByYXRwb2lzb25Wb2lkQ29tbWFuZAkiXlxzKlx6c3JlZGlzcGxheVx6ZVxzKiQiCitzeW4gbWF0Y2ggICByYXRwb2lzb25Wb2lkQ29tbWFuZAkiXlxzKlx6c3JlZG9cemVccyokIgogc3luIG1hdGNoICAgcmF0cG9pc29uVm9pZENvbW1hbmQJIl5ccypcenNyZW1vdmVcemVccyokIgogc3luIG1hdGNoICAgcmF0cG9pc29uVm9pZENvbW1hbmQJIl5ccypcenNyZXN0YXJ0XHplXHMqJCIKK3N5biBtYXRjaCAgIHJhdHBvaXNvblZvaWRDb21tYW5kCSJeXHMqXHpzc2R1bXBcemVccyokIgorc3luIG1hdGNoICAgcmF0cG9pc29uVm9pZENvbW1hbmQJIl5ccypcenNzZmR1bXBcemVccyokIgogc3luIG1hdGNoICAgcmF0cG9pc29uVm9pZENvbW1hbmQJIl5ccypcenNzaHJpbmtcemVccyokIgogc3luIG1hdGNoICAgcmF0cG9pc29uVm9pZENvbW1hbmQJIl5ccypcenNzcGxpdFx6ZVxzKiQiCiBzeW4gbWF0Y2ggICByYXRwb2lzb25Wb2lkQ29tbWFuZAkiXlxzKlx6c3RpbWVcemVccyokIgorc3luIG1hdGNoICAgcmF0cG9pc29uVm9pZENvbW1hbmQJIl5ccypcenN1bmRvXHplXHMqJCIKIHN5biBtYXRjaCAgIHJhdHBvaXNvblZvaWRDb21tYW5kCSJeXHMqXHpzdmVyc2lvblx6ZVxzKiQiCiBzeW4gbWF0Y2ggICByYXRwb2lzb25Wb2lkQ29tbWFuZAkiXlxzKlx6c3ZzcGxpdFx6ZVxzKiQiCiBzeW4gbWF0Y2ggICByYXRwb2lzb25Wb2lkQ29tbWFuZAkiXlxzKlx6c3dpbmRvd3NcemVccyokIgpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvcnVieS52aW0gYi9ydW50aW1lL3N5bnRheC9ydWJ5LnZpbQppbmRleCBhYmE4Njk3Li4yMzA3OWU5IDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9ydWJ5LnZpbQorKysgYi9ydW50aW1lL3N5bnRheC9ydWJ5LnZpbQpAQCAtOTEsMTMgKzkxLDEzIEBACiAic3luIG1hdGNoIHJ1YnlQcmVkZWZpbmVkQ29uc3RhbnQgIlwlKDo6XClcPVx6c1wlKE5vdEltcGxlbWVudEVycm9yXClcPiIKIAogIiBOb3JtYWwgUmVndWxhciBFeHByZXNzaW9uCi1zeW4gcmVnaW9uIHJ1YnlTdHJpbmcgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIHN0YXJ0PSJcJShcJSheXHxcPFwlKGFuZFx8b3JcfHdoaWxlXHx1bnRpbFx8dW5sZXNzXHxpZlx8ZWxzaWZcfHdoZW5cfG5vdFx8dGhlblwpXHxbXH49IXwmKCxbXVwpXHMqXClcQDw9LyIgZW5kPSIvW2lvbXhdKiIgc2tpcD0iXFxcXFx8XFwvIiBjb250YWlucz1AcnVieVN0cmluZ1NwZWNpYWwKK3N5biByZWdpb24gcnVieVN0cmluZyBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgc3RhcnQ9IlwlKFwlKF5cfFw8XCUoYW5kXHxvclx8d2hpbGVcfHVudGlsXHx1bmxlc3NcfGlmXHxlbHNpZlx8d2hlblx8bm90XHx0aGVuXClcfFs7XH49IXwmKCxbPl1cKVxzKlwpXEA8PS8iIGVuZD0iL1tpb214XSoiIHNraXA9IlxcXFxcfFxcLyIgY29udGFpbnM9QHJ1YnlTdHJpbmdTcGVjaWFsCiBzeW4gcmVnaW9uIHJ1YnlTdHJpbmcgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIHN0YXJ0PSJcJShcPFwlKHNwbGl0XHxzY2FuXHxnc3ViXHxzdWJcKVxzKlwpXEA8PS8iIGVuZD0iL1tpb214XSoiIHNraXA9IlxcXFxcfFxcLyIgY29udGFpbnM9QHJ1YnlTdHJpbmdTcGVjaWFsCiAKICIgTm9ybWFsIFN0cmluZyBhbmQgU2hlbGwgQ29tbWFuZCBPdXRwdXQKIHN5biByZWdpb24gcnVieVN0cmluZyBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgc3RhcnQ9IlwiIiBlbmQ9IlwiIiBza2lwPSJcXFxcXHxcXFwiIiBjb250YWlucz1AcnVieVN0cmluZ1NwZWNpYWwKLXN5biByZWdpb24gcnVieVN0cmluZyBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgc3RhcnQ9IiciICBlbmQ9IiciICBza2lwPSJcXFxcXHxcXCciCi1zeW4gcmVnaW9uIHJ1YnlTdHJpbmcgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIHN0YXJ0PSJgIiAgZW5kPSJgIiAgc2tpcD0iXFxcXFx8XFxgIiAgY29udGFpbnM9QHJ1YnlTdHJpbmdTcGVjaWFsCitzeW4gcmVnaW9uIHJ1YnlTdHJpbmcgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIHN0YXJ0PSInIgllbmQ9IiciICBza2lwPSJcXFxcXHxcXCciCitzeW4gcmVnaW9uIHJ1YnlTdHJpbmcgbWF0Y2hncm91cD1ydWJ5U3RyaW5nRGVsaW1pdGVyIHN0YXJ0PSJgIgllbmQ9ImAiICBza2lwPSJcXFxcXHxcXGAiICBjb250YWlucz1AcnVieVN0cmluZ1NwZWNpYWwKIAogIiBHZW5lcmFsaXplZCBSZWd1bGFyIEV4cHJlc3Npb24KIHN5biByZWdpb24gcnVieVN0cmluZyBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgc3RhcnQ9IiVyXHooW35gIUAjJCVeJipfXC0rPXxcOjsiJywuPy9dXCkiCWVuZD0iXHoxW2lvbXhdKiIgc2tpcD0iXFxcXFx8XFxcejEiIGNvbnRhaW5zPUBydWJ5U3RyaW5nU3BlY2lhbCBmb2xkCkBAIC0xMzksMTkgKzEzOSwxOSBAQAogc3luIHJlZ2lvbiBydWJ5U3RyaW5nIHN0YXJ0PStcJShcJShjbGFzc1xzKlx8XCUoXC5cfDo6XClcKVxfcypcKVxAPCE8PC1gXHooW15gXSpcKWBcemUraHM9cyszICBtYXRjaGdyb3VwPXJ1YnlTdHJpbmdEZWxpbWl0ZXIgZW5kPSteXHMqXHpzXHoxJCsgY29udGFpbnM9cnVieUhlcmVkb2NTdGFydCxAcnVieVN0cmluZ1NwZWNpYWwgbmV4dGdyb3VwPXJ1YnlGdW5jdGlvbiBmb2xkIGtlZXBlbmQKIAogaWYgZXhpc3RzKCdtYWluX3N5bnRheCcpICYmIG1haW5fc3ludGF4ID09ICdlcnVieScKLSAgbGV0IHJ1Ynlfbm9fZXhwZW5zaXZlID0gMQorICBsZXQgYjpydWJ5X25vX2V4cGVuc2l2ZSA9IDEKIGVuZAogCiAiIEV4cGVuc2l2ZSBNb2RlIC0gY29sb3JpemUgKmVuZCogYWNjb3JkaW5nIHRvIG9wZW5pbmcgc3RhdGVtZW50Ci1pZiAhZXhpc3RzKCJydWJ5X25vX2V4cGVuc2l2ZSIpCi0gIHN5biByZWdpb24gcnVieUZ1bmN0aW9uIG1hdGNoZ3JvdXA9cnVieURlZmluZSBzdGFydD0iXDxkZWZcc1wrIiAgICBlbmQ9Ilx6ZVwlKFxzXHwoXHw7XHwkXCkiIG9uZWxpbmUKLSAgc3luIHJlZ2lvbiBydWJ5Q2xhc3MgICAgbWF0Y2hncm91cD1ydWJ5RGVmaW5lIHN0YXJ0PSJcPGNsYXNzXHNcKyIgIGVuZD0iXHplXCUoXHNcfDxcfDtcfCRcKSIgb25lbGluZQoraWYgIWV4aXN0cygiYjpydWJ5X25vX2V4cGVuc2l2ZSIpICYmICFleGlzdHMoInJ1Ynlfbm9fZXhwZW5zaXZlIikKKyAgc3luIHJlZ2lvbiBydWJ5RnVuY3Rpb24gbWF0Y2hncm91cD1ydWJ5RGVmaW5lIHN0YXJ0PSJcPGRlZlxzXCsiICAgIGVuZD0iXCUoXHMqXCUoXHNcfChcfDtcfCRcfCNcKVwpXEA9IiBvbmVsaW5lCisgIHN5biByZWdpb24gcnVieUNsYXNzCSAgbWF0Y2hncm91cD1ydWJ5RGVmaW5lIHN0YXJ0PSJcPGNsYXNzXHNcKyIgIGVuZD0iXCUoXHMqXCUoXHNcfDxcfDtcfCRcfCNcKVwpXEA9IiBvbmVsaW5lCiAgIHN5biBtYXRjaCAgcnVieURlZmluZSAgICJcPGNsYXNzXHplPDwiCi0gIHN5biByZWdpb24gcnVieU1vZHVsZSAgIG1hdGNoZ3JvdXA9cnVieURlZmluZSBzdGFydD0iXDxtb2R1bGVcc1wrIiBlbmQ9Ilx6ZVwlKFxzXHw7XHwkXCkiICAgIG9uZWxpbmUKKyAgc3luIHJlZ2lvbiBydWJ5TW9kdWxlICAgbWF0Y2hncm91cD1ydWJ5RGVmaW5lIHN0YXJ0PSJcPG1vZHVsZVxzXCsiIGVuZD0iXCUoXHMqXCUoXHNcfDtcfCRcfCNcKVwpXEA9IgkgIG9uZWxpbmUKIAotICBzeW4gcmVnaW9uIHJ1YnlCbG9jayBzdGFydD0iXDxkZWZcPiIgICAgbWF0Y2hncm91cD1ydWJ5RGVmaW5lIGVuZD0iXDxlbmRcPiIgY29udGFpbnM9QUxMQlVULEBydWJ5RXh0ZW5kZWRTdHJpbmdTcGVjaWFsLHJ1YnlUb2RvIG5leHRncm91cD1ydWJ5RnVuY3Rpb24gZm9sZAotICBzeW4gcmVnaW9uIHJ1YnlCbG9jayBzdGFydD0iXDxjbGFzc1w+IiAgbWF0Y2hncm91cD1ydWJ5RGVmaW5lIGVuZD0iXDxlbmRcPiIgY29udGFpbnM9QUxMQlVULEBydWJ5RXh0ZW5kZWRTdHJpbmdTcGVjaWFsLHJ1YnlUb2RvIG5leHRncm91cD1ydWJ5Q2xhc3MgICAgZm9sZAotICBzeW4gcmVnaW9uIHJ1YnlCbG9jayBzdGFydD0iXDxtb2R1bGVcPiIgbWF0Y2hncm91cD1ydWJ5RGVmaW5lIGVuZD0iXDxlbmRcPiIgY29udGFpbnM9QUxMQlVULEBydWJ5RXh0ZW5kZWRTdHJpbmdTcGVjaWFsLHJ1YnlUb2RvIG5leHRncm91cD1ydWJ5TW9kdWxlICAgZm9sZAorICBzeW4gcmVnaW9uIHJ1YnlCbG9jayBzdGFydD0iXDxkZWZcPiIJICBtYXRjaGdyb3VwPXJ1YnlEZWZpbmUgZW5kPSJcPGVuZFw+IiBjb250YWlucz1BTExCVVQsQHJ1YnlFeHRlbmRlZFN0cmluZ1NwZWNpYWwscnVieVRvZG8gbmV4dGdyb3VwPXJ1YnlGdW5jdGlvbiBmb2xkCisgIHN5biByZWdpb24gcnVieUJsb2NrIHN0YXJ0PSJcPGNsYXNzXD4iICBtYXRjaGdyb3VwPXJ1YnlEZWZpbmUgZW5kPSJcPGVuZFw+IiBjb250YWlucz1BTExCVVQsQHJ1YnlFeHRlbmRlZFN0cmluZ1NwZWNpYWwscnVieVRvZG8gbmV4dGdyb3VwPXJ1YnlDbGFzcwkgZm9sZAorICBzeW4gcmVnaW9uIHJ1YnlCbG9jayBzdGFydD0iXDxtb2R1bGVcPiIgbWF0Y2hncm91cD1ydWJ5RGVmaW5lIGVuZD0iXDxlbmRcPiIgY29udGFpbnM9QUxMQlVULEBydWJ5RXh0ZW5kZWRTdHJpbmdTcGVjaWFsLHJ1YnlUb2RvIG5leHRncm91cD1ydWJ5TW9kdWxlCSBmb2xkCiAKICAgIiBtb2RpZmllcnMKICAgc3luIG1hdGNoICBydWJ5Q29udHJvbCAiXDxcJShpZlx8dW5sZXNzXHx3aGlsZVx8dW50aWxcKVw+IiBkaXNwbGF5CkBAIC0xNzgsNyArMTc4LDcgQEAKICAgc3luIHJlZ2lvbiAgcnVieUZ1bmN0aW9uIG1hdGNoZ3JvdXA9cnVieUNvbnRyb2wgc3RhcnQ9Ilw8ZGVmXHNcKyIgICAgZW5kPSJcemVcJShcc1x8KFx8O1x8JFwpIiBvbmVsaW5lCiAgIHN5biByZWdpb24gIHJ1YnlDbGFzcyAgICBtYXRjaGdyb3VwPXJ1YnlDb250cm9sIHN0YXJ0PSJcPGNsYXNzXHNcKyIgIGVuZD0iXHplXCUoXHNcfDxcfDtcfCRcKSIgb25lbGluZQogICBzeW4gbWF0Y2ggICBydWJ5Q29udHJvbCAgIlw8Y2xhc3NcemU8PCIKLSAgc3luIHJlZ2lvbiAgcnVieU1vZHVsZSAgIG1hdGNoZ3JvdXA9cnVieUNvbnRyb2wgc3RhcnQ9Ilw8bW9kdWxlXHNcKyIgZW5kPSJcemVcJShcc1x8O1x8JFwpIiAgICBvbmVsaW5lCisgIHN5biByZWdpb24gIHJ1YnlNb2R1bGUgICBtYXRjaGdyb3VwPXJ1YnlDb250cm9sIHN0YXJ0PSJcPG1vZHVsZVxzXCsiIGVuZD0iXHplXCUoXHNcfDtcfCRcKSIJIG9uZWxpbmUKICAgc3luIGtleXdvcmQgcnVieUNvbnRyb2wgY2FzZSBiZWdpbiBkbyBmb3IgaWYgdW5sZXNzIHdoaWxlIHVudGlsIGVuZAogZW5kaWYKIApAQCAtMTk3LDcgKzE5Nyw3IEBACiAgIHN5biBrZXl3b3JkIHJ1YnlBY2Nlc3MgICAgcHVibGljIHByb3RlY3RlZCBwcml2YXRlCiAgIHN5biBrZXl3b3JkIHJ1YnlBdHRyaWJ1dGUgYXR0ciBhdHRyX2FjY2Vzc29yIGF0dHJfcmVhZGVyIGF0dHJfd3JpdGVyCiAgIHN5biBtYXRjaCAgIHJ1YnlDb250cm9sICAgIlw8XCUoZXhpdCFcfFwlKGFib3J0XHxhdF9leGl0XHxleGl0XHxmb3JrXHxsb29wXHx0cmFwXClcPlwpIgotICBzeW4ga2V5d29yZCBydWJ5RXZhbCAgICAgIGV2YWwgY2xhc3NfZXZhbCBpbnN0YW5jZV9ldmFsIG1vZHVsZV9ldmFsCisgIHN5biBrZXl3b3JkIHJ1YnlFdmFsCSAgICBldmFsIGNsYXNzX2V2YWwgaW5zdGFuY2VfZXZhbCBtb2R1bGVfZXZhbAogICBzeW4ga2V5d29yZCBydWJ5RXhjZXB0aW9uIHJhaXNlIGZhaWwgY2F0Y2ggdGhyb3cKICAgc3luIGtleXdvcmQgcnVieUluY2x1ZGUgICBhdXRvbG9hZCBleHRlbmQgaW5jbHVkZSBsb2FkIHJlcXVpcmUKICAgc3luIGtleXdvcmQgcnVieUtleXdvcmQgICBjYWxsY2MgY2FsbGVyIGxhbWJkYSBwcm9jCkBAIC0yMDUsNyArMjA1LDcgQEAKIAogIiBDb21tZW50cyBhbmQgRG9jdW1lbnRhdGlvbgogc3luIG1hdGNoICAgcnVieVNoYXJwQmFuZyAgICAgIlwlXiMhLioiIGRpc3BsYXkKLXN5biBrZXl3b3JkIHJ1YnlUb2RvICAgICAgICAgIEZJWE1FIE5PVEUgVE9ETyBYWFggY29udGFpbmVkCitzeW4ga2V5d29yZCBydWJ5VG9kbwkgICAgICBGSVhNRSBOT1RFIFRPRE8gWFhYIGNvbnRhaW5lZAogc3luIG1hdGNoICAgcnVieUNvbW1lbnQgICAgICAgIiMuKiIgY29udGFpbnM9cnVieVNoYXJwQmFuZyxydWJ5U3BhY2VFcnJvcixydWJ5VG9kbyxAU3BlbGwKIHN5biByZWdpb24gIHJ1YnlEb2N1bWVudGF0aW9uIHN0YXJ0PSJePWJlZ2luIiBlbmQ9Il49ZW5kLiokIiBjb250YWlucz1ydWJ5U3BhY2VFcnJvcixydWJ5VG9kbyxAU3BlbGwgZm9sZAogCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC90aWR5LnZpbSBiL3J1bnRpbWUvc3ludGF4L3RpZHkudmltCmluZGV4IGJmZmI2MTcuLmIyM2RjM2EgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3RpZHkudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3RpZHkudmltCkBAIC0xLDkgKzEsOCBAQAogIiBWaW0gc3ludGF4IGZpbGUKLSIgRmlsZW5hbWU6CXRpZHkudmltCiAiIExhbmd1YWdlOglITVRMIFRpZHkgY29uZmlndXJhdGlvbiBmaWxlICggL2V0Yy90aWR5cmMgfi8udGlkeXJjICkKICIgTWFpbnRhaW5lcjoJRG91ZyBLZWFybnMgPGRqa2VhMkBndXMuZ3NjaXQubW9uYXNoLmVkdS5hdT4KICIgVVJMOgkJaHR0cDovL2d1cy5nc2NpdC5tb25hc2guZWR1LmF1L35kamtlYTIvdmltL3N5bnRheC90aWR5LnZpbQotIiBMYXN0IENoYW5nZToJMjAwNCBOb3YgMjcKKyIgTGFzdCBDaGFuZ2U6CTIwMDUgT2N0IDA2CiAKICIgRm9yIHZlcnNpb24gNS54OiBDbGVhciBhbGwgc3ludGF4IGl0ZW1zCiAiIEZvciB2ZXJzaW9uIDYueDogUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkCkBAIC0zMywxNCArMzIsMTYgQEAKIHN5biBjYXNlIGlnbm9yZQogc3luIGtleXdvcmQJdGlkeUJvb2xlYW4JCXRbcnVlXSBmW2Fsc2VdIHlbZXNdIG5bb10gY29udGFpbmVkCiBzeW4gY2FzZSBtYXRjaAotc3luIG1hdGNoCXRpZHlEb2N0eXBlCQkiXDxvbWl0XHxhdXRvXHxzdHJpY3RcfGxvb3NlXHx0cmFuc2l0aW9uYWxcPiIgY29udGFpbmVkCi0iIE5PVEU6IHVzZSBtYXRjaCByYXRoZXIgdGhhbiBrZXl3b3JkIGhlcmUgc28gdGhhdCB0aWR5RW5jb2RpbmcgcmF3IGRvZXMgbm90IGFsd2F5cyBoYXZlIHByZWNlZGVuY2Ugb3ZlciB0aWR5T3B0aW9uIHJhdwotc3luIG1hdGNoCXRpZHlFbmNvZGluZwkJIlw8XChhc2NpaVx8bGF0aW4xXHxyYXdcfHV0ZjhcfGlzbzIwMjJcfG1hY1x8dXRmMTZsZVx8dXRmMTZiZVx8dXRmMTZcfHdpbjEyNTJcfGJpZzVcfHNoaWZ0amlzXClcPiIgY29udGFpbmVkCitzeW4gbWF0Y2gJdGlkeURvY3R5cGUJCSJcPG9taXRcfGF1dG9cfHN0cmljdFx8bG9vc2VcfHRyYW5zaXRpb25hbFx8dXNlclw+IiBjb250YWluZWQKKyIgTk9URTogdXNlIG1hdGNoIHJhdGhlciB0aGFuIGtleXdvcmQgaGVyZSBzbyB0aGF0IHRpZHlFbmNvZGluZyAncmF3JyBkb2VzIG5vdAorIiAgICAgICBhbHdheXMgaGF2ZSBwcmVjZWRlbmNlIG92ZXIgdGlkeU9wdGlvbiAncmF3Jworc3luIG1hdGNoCXRpZHlFbmNvZGluZwkJIlw8XChhc2NpaVx8bGF0aW4wXHxsYXRpbjFcfHJhd1x8dXRmOFx8aXNvMjAyMlx8bWFjXHx1dGYxNmxlXHx1dGYxNmJlXHx1dGYxNlx8d2luMTI1Mlx8aWJtODU4XHxiaWc1XHxzaGlmdGppc1wpXD4iIGNvbnRhaW5lZAorc3luIG1hdGNoCXRpZHlOZXdsaW5lCQkiXDxcKExGXHxDUkxGXHxDUlwpXD4iCiBzeW4gbWF0Y2gJdGlkeU51bWJlcgkJIlw8XGRcK1w+IiBjb250YWluZWQKIHN5biBtYXRjaAl0aWR5UmVwZWF0CQkiXDxrZWVwLWZpcnN0XHxrZWVwLWxhc3RcPiIgY29udGFpbmVkCiBzeW4gcmVnaW9uCXRpZHlTdHJpbmcJCXN0YXJ0PSsiKyBza2lwPStcXFxcXHxcXCIrIGVuZD0rIisgY29udGFpbmVkIG9uZWxpbmUKIHN5biByZWdpb24JdGlkeVN0cmluZwkJc3RhcnQ9KycrIHNraXA9K1xcXFxcfFxcJysgZW5kPSsnKyBjb250YWluZWQgb25lbGluZQotc3luIGNsdXN0ZXIJdGlkeVZhbHVlCQljb250YWlucz10aWR5Qm9vbGVhbix0aWR5RG9jdHlwZSx0aWR5RW5jb2RpbmcsdGlkeU51bWJlcix0aWR5UmVwZWF0LHRpZHlTdHJpbmcKK3N5biBjbHVzdGVyCXRpZHlWYWx1ZQkJY29udGFpbnM9dGlkeUJvb2xlYW4sdGlkeURvY3R5cGUsdGlkeUVuY29kaW5nLHRpZHlOZXdsaW5lLHRpZHlOdW1iZXIsdGlkeVJlcGVhdCx0aWR5U3RyaW5nCiAKIHN5biBtYXRjaAl0aWR5T3B0aW9uCQkiXmFjY2Vzc2liaWxpdHktY2hlY2siCQljb250YWluZWQKIHN5biBtYXRjaAl0aWR5T3B0aW9uCQkiXmFkZC14bWwtZGVjbCIJCQljb250YWluZWQKQEAgLTU1LDYgKzU2LDcgQEAKIHN5biBtYXRjaAl0aWR5T3B0aW9uCQkiXmNsZWFuIgkJCWNvbnRhaW5lZAogc3luIG1hdGNoCXRpZHlPcHRpb24JCSJeY3NzLXByZWZpeCIJCQljb250YWluZWQKIHN5biBtYXRjaAl0aWR5T3B0aW9uCQkiXmRvY3R5cGUiCQkJY29udGFpbmVkCitzeW4gbWF0Y2gJdGlkeU9wdGlvbgkJIl5kb2N0eXBlLW1vZGUiCQkJY29udGFpbmVkCiBzeW4gbWF0Y2gJdGlkeU9wdGlvbgkJIl5kcm9wLWVtcHR5LXBhcmFzIgkJY29udGFpbmVkCiBzeW4gbWF0Y2gJdGlkeU9wdGlvbgkJIl5kcm9wLWZvbnQtdGFncyIJCWNvbnRhaW5lZAogc3luIG1hdGNoCXRpZHlPcHRpb24JCSJeZHJvcC1wcm9wcmlldGFyeS1hdHRyaWJ1dGVzIgljb250YWluZWQKQEAgLTY3LDYgKzY5LDcgQEAKIHN5biBtYXRjaAl0aWR5T3B0aW9uCQkiXmZpeC11cmkiCQkJY29udGFpbmVkCiBzeW4gbWF0Y2gJdGlkeU9wdGlvbgkJIl5mb3JjZS1vdXRwdXQiCQkJY29udGFpbmVkCiBzeW4gbWF0Y2gJdGlkeU9wdGlvbgkJIl5nbnUtZW1hY3MiCQkJY29udGFpbmVkCitzeW4gbWF0Y2gJdGlkeU9wdGlvbgkJIl5nbnUtZW1hY3MtZmlsZSIJCWNvbnRhaW5lZAogc3luIG1hdGNoCXRpZHlPcHRpb24JCSJeaGlkZS1jb21tZW50cyIJCWNvbnRhaW5lZAogc3luIG1hdGNoCXRpZHlPcHRpb24JCSJeaGlkZS1lbmR0YWdzIgkJCWNvbnRhaW5lZAogc3luIG1hdGNoCXRpZHlPcHRpb24JCSJeaW5kZW50IgkJCWNvbnRhaW5lZApAQCAtODMsMTMgKzg2LDE3IEBACiBzeW4gbWF0Y2gJdGlkeU9wdGlvbgkJIl5sb2dpY2FsLWVtcGhhc2lzIgkJY29udGFpbmVkCiBzeW4gbWF0Y2gJdGlkeU9wdGlvbgkJIl5sb3dlci1saXRlcmFscyIJCWNvbnRhaW5lZAogc3luIG1hdGNoCXRpZHlPcHRpb24JCSJebWFya3VwIgkJCWNvbnRhaW5lZAorc3luIG1hdGNoCXRpZHlPcHRpb24JCSJebWVyZ2UtZGl2cyIJCQljb250YWluZWQKIHN5biBtYXRjaAl0aWR5T3B0aW9uCQkiXm5jciIJCQkJY29udGFpbmVkCitzeW4gbWF0Y2gJdGlkeU9wdGlvbgkJIl5uZXdsaW5lIgkJCWNvbnRhaW5lZAogc3luIG1hdGNoCXRpZHlPcHRpb24JCSJebnVtZXJpYy1lbnRpdGllcyIJCWNvbnRhaW5lZAogc3luIG1hdGNoCXRpZHlPcHRpb24JCSJeb3V0cHV0LWJvbSIJCQljb250YWluZWQKIHN5biBtYXRjaAl0aWR5T3B0aW9uCQkiXm91dHB1dC1lbmNvZGluZyIJCWNvbnRhaW5lZAorc3luIG1hdGNoCXRpZHlPcHRpb24JCSJeb3V0cHV0LWZpbGUiCQkJY29udGFpbmVkCiBzeW4gbWF0Y2gJdGlkeU9wdGlvbgkJIl5vdXRwdXQtaHRtbCIJCQljb250YWluZWQKIHN5biBtYXRjaAl0aWR5T3B0aW9uCQkiXm91dHB1dC14aHRtbCIJCQljb250YWluZWQKIHN5biBtYXRjaAl0aWR5T3B0aW9uCQkiXm91dHB1dC14bWwiCQkJY29udGFpbmVkCitzeW4gbWF0Y2gJdGlkeU9wdGlvbgkJIl5wdW5jdHVhdGlvbi13cmFwIgkJY29udGFpbmVkCiBzeW4gbWF0Y2gJdGlkeU9wdGlvbgkJIl5xdWlldCIJCQljb250YWluZWQKIHN5biBtYXRjaAl0aWR5T3B0aW9uCQkiXnF1b3RlLWFtcGVyc2FuZCIJCWNvbnRhaW5lZAogc3luIG1hdGNoCXRpZHlPcHRpb24JCSJecXVvdGUtbWFya3MiCQkJY29udGFpbmVkCkBAIC0xMTUsNiArMTIyLDcgQEAKIHN5biBtYXRjaAl0aWR5T3B0aW9uCQkiXndyYXAtc2NyaXB0LWxpdGVyYWxzIgkJY29udGFpbmVkCiBzeW4gbWF0Y2gJdGlkeU9wdGlvbgkJIl53cmFwLXNlY3Rpb25zIgkJY29udGFpbmVkCiBzeW4gbWF0Y2gJdGlkeU9wdGlvbgkJIl53cml0ZS1iYWNrIgkJCWNvbnRhaW5lZAorc3luIG1hdGNoCXRpZHlPcHRpb24JCSJedmVydGljYWwtc3BhY2UiCQljb250YWluZWQKIHN5biBtYXRjaAl0aWR5TmV3VGFnT3B0aW9uCSJebmV3LWJsb2NrbGV2ZWwtdGFncyIJCWNvbnRhaW5lZAogc3luIG1hdGNoCXRpZHlOZXdUYWdPcHRpb24JIl5uZXctZW1wdHktdGFncyIJCWNvbnRhaW5lZAogc3luIG1hdGNoCXRpZHlOZXdUYWdPcHRpb24JIl5uZXctaW5saW5lLXRhZ3MiCQljb250YWluZWQKQEAgLTEzNiw2ICsxNDQsNyBAQAogICBIaUxpbmsgdGlkeURlbGltaXRlcgkJU3BlY2lhbAogICBIaUxpbmsgdGlkeURvY3R5cGUJCUNvbnN0YW50CiAgIEhpTGluayB0aWR5RW5jb2RpbmcJCUNvbnN0YW50CisgIEhpTGluayB0aWR5TmV3bGluZQkJQ29uc3RhbnQKICAgSGlMaW5rIHRpZHlOZXdUYWdEZWxpbWl0ZXIJU3BlY2lhbAogICBIaUxpbmsgdGlkeU5ld1RhZ09wdGlvbglJZGVudGlmaWVyCiAgIEhpTGluayB0aWR5TmV3VGFnVmFsdWUJQ29uc3RhbnQKZGlmZiAtLWdpdCBhL3J1bnRpbWUvdHV0b3IvdHV0b3Iuc3YgYi9ydW50aW1lL3R1dG9yL3R1dG9yLnN2CmluZGV4IDYyZTNkYjAuLjU5ZjBmNjUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvdHV0b3IvdHV0b3Iuc3YKKysrIGIvcnVudGltZS90dXRvci90dXRvci5zdgpAQCAtMTksOCArMTksOCBAQAogICAgICBrb21tYW5kb25hIQogCiAgICAgIEb2cnPka3JhIGRpZyBudSBvbSBhdHQgZGluIENhcHMtTG9jayB0YW5nZW50IElOVEUg5HIgYWt0aXYgb2NoIHRyeWNrIHDlCi0gICAgIGotdGFuZ2VudGVuIHRpbGxy5GNrbGlndCBt5W5nYSBn5W5nZW4gZvZyIGF0dCBm9nJmbHl0dGEgbWFya/ZyZW4gc+UgYXR0Ci0gICAgIExla3Rpb24gMS4xIGZ5bGxlciBza+RybWVuIHNr5HJtZW4gaGVsdC4KKyAgICAgai10YW5nZW50ZW4gdGlsbHLkY2tsaWd0IG3lbmdhIGflbmdlciBm9nIgYXR0IGb2cmZseXR0YSBtYXJr9nJlbiBz5SBhdHQKKyAgICAgTGVrdGlvbiAxLjEgZnlsbGVyIHNr5HJtZW4gaGVsdC4KIH5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogCQkJTGVrdGlvbiAxLjE6IEZMWVRUQSBNQVJL1lJFTgogCg==