Date: Sun, 27 May 2012 16:25:25 -0700 From: Garrett Cooper <yanegomi@gmail.com> To: Willem Jan Withagen <wjw@digiware.nl> Cc: Doug Barton <dougb@freebsd.org>, FreeBSD Current <freebsd-current@freebsd.org> Subject: Re: Daily, weekly, security scripts.... Message-ID: <CAGH67wTbVBxhDa_v09Co18At%2B3HshYZ7BYe26b85sMH%2B6-pHig@mail.gmail.com> In-Reply-To: <4FBE7778.4070004@digiware.nl> References: <4FBDE81C.9010909@digiware.nl> <4FBE6A6C.6030708@FreeBSD.org> <4FBE7778.4070004@digiware.nl>
next in thread | previous in thread | raw e-mail | index | archive | help
--f46d04478973948c0b04c10cea48 Content-Type: text/plain; charset=ISO-8859-1 On Thu, May 24, 2012 at 11:01 AM, Willem Jan Withagen <wjw@digiware.nl> wrote: > On 2012-05-24 19:05, Doug Barton wrote: >> On 05/24/2012 03:49 AM, Willem Jan Withagen wrote: >>> [I looked for a better list to drop this on, but other that freebsd-rc >>> nothing seems close.] >> >> freebsd-rc@ is not appropriate for discussing periodic, as the 2 are >> totally unrelated. > > Hence I dropped it in current. > >> At this time there is no dedicated maintainer for periodic, so if you >> find behavior that you don't like, and you've thoroughly exhausted the >> available configuration options, your only recourse is to submit a patch. > > I have not exhausted all options, because I keep discovering things. > > And given the long time with FreeBSD, I tend to reexamine man pages to > see what people have added and/or documented. > > So before I start hammering at the scripts, I'll need to go through wat > is already there.. Here's a revised patch (based on something I brought up earlier) that converts periodic over to an rc.subr-like paradigm. This can be directly applied to HEAD; you will need to backport r231849 first if you want to apply the patch to 9-STABLE, etc (the change wasn't MFCed -- not sure why). Thanks! -Garrett --f46d04478973948c0b04c10cea48 Content-Type: application/octet-stream; name="etc-periodic-refactoring.patch" Content-Disposition: attachment; filename="etc-periodic-refactoring.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_h2qqi75k0 SW5kZXg6IGV0Yy9NYWtlZmlsZQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBldGMvTWFrZWZpbGUJKHJldmlzaW9u IDIzNjE2NCkKKysrIGV0Yy9NYWtlZmlsZQkod29ya2luZyBjb3B5KQpAQCAtMzIsNiArMzIsNyBA QAogCW5ldHdvcmtzIFwKIAluZXdzeXNsb2cuY29uZiBcCiAJbnNzd2l0Y2guY29uZiBcCisJcGVy aW9kaWMuc3ViciBcCiAJcGhvbmVzIFwKIAlwcm9maWxlIFwKIAlwcm90b2NvbHMgXApJbmRleDog ZXRjL2RlZmF1bHRzL3BlcmlvZGljLmNvbmYKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gZXRjL2RlZmF1bHRzL3Bl cmlvZGljLmNvbmYJKHJldmlzaW9uIDIzNjE2NCkKKysrIGV0Yy9kZWZhdWx0cy9wZXJpb2RpYy5j b25mCSh3b3JraW5nIGNvcHkpCkBAIC0xNDgsMTEgKzE0OCwxMyBAQAogZGFpbHlfcXVldWVydW5f ZW5hYmxlPSJZRVMiCQkJCSMgUnVuIG1haWwgcXVldWUKIGRhaWx5X3N1Ym1pdF9xdWV1ZXJ1bj0i WUVTIgkJCQkjIEFsc28gc3VibWl0IHF1ZXVlCiAKLSMgODAwLnNjcnViLXpmcwotZGFpbHlfc2Ny dWJfemZzX2VuYWJsZT0iTk8iCi1kYWlseV9zY3J1Yl96ZnNfcG9vbHM9IiIJCQkjIGVtcHR5IHN0 cmluZyBzZWxlY3RzIGFsbCBwb29scwotZGFpbHlfc2NydWJfemZzX2RlZmF1bHRfdGhyZXNob2xk PSIzNSIJCSMgZGF5cyBiZXR3ZWVuIHNjcnVicwotI2RhaWx5X3NjcnViX3pmc18ke3Bvb2xuYW1l fV90aHJlc2hvbGQ9IjM1IgkjIHBvb2wgc3BlY2lmaWMgdGhyZXNob2xkCisjIDgwMC56ZnNfc2Ny dWIKK2RhaWx5X3NjcnViX3pmc19lbmFibGU9IllFUyIJCQkJIyBTY3J1YiB6cG9vbHMKK2RhaWx5 X3NjcnViX3pmc19kZWZhdWx0X3RocmVzaG9sZD0iMzUiCQkJIyBzY3J1YiBldmVyeSA1IHdlZWtz CitkYWlseV9zY3J1Yl96ZnNfcG9vbHM9IiIJCQkJIyB6cG9vbHMgdG8gc2NydWI7CisJCQkJCQkJ IyBkZWZhdWx0cyB0byBhbGwKKyNkYWlseV9zY3J1Yl96ZnNfJHtwb29sbmFtZX1fdGhyZXNob2xk PSIzNSIJCSMgcG9vbCBzcGVjaWZpYyBzY3J1YgorCQkJCQkJCSMgdGhyZXNob2xkCiAKICMgOTk5 LmxvY2FsCiBkYWlseV9sb2NhbD0iL2V0Yy9kYWlseS5sb2NhbCIJCQkJIyBMb2NhbCBzY3JpcHRz CkBAIC0yNjQsNiArMjY2LDkgQEAKIAogIyAyMDAuYWNjb3VudGluZwogbW9udGhseV9hY2NvdW50 aW5nX2VuYWJsZT0iWUVTIgkJCQkjIExvZ2luIGFjY291bnRpbmcKK21vbnRobHlfYWNjb3VudGlu Z192ZXJib3NlPSJOTyIJCQkJIyBCZSB2ZXJib3NlIHdoZW4KKwkJCQkJCQkjIHJlcG9ydGluZyBs b2dpbgorCQkJCQkJCSMgYWNjb3VudGluZyBpbmZvLgogCiAjIDk5OS5sb2NhbAogbW9udGhseV9s b2NhbD0iL2V0Yy9tb250aGx5LmxvY2FsIgkJCSMgTG9jYWwgc2NyaXB0cwpJbmRleDogZXRjL3Bl cmlvZGljL3dlZWtseS8zMjAud2hhdGlzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGV0Yy9wZXJpb2RpYy93ZWVr bHkvMzIwLndoYXRpcwkocmV2aXNpb24gMjM2MTY0KQorKysgZXRjL3BlcmlvZGljL3dlZWtseS8z MjAud2hhdGlzCSh3b3JraW5nIGNvcHkpCkBAIC0zLDIxICszLDE1IEBACiAjICRGcmVlQlNEJAog IwogCi0jIElmIHRoZXJlIGlzIGEgZ2xvYmFsIHN5c3RlbSBjb25maWd1cmF0aW9uIGZpbGUsIHN1 Y2sgaXQgaW4uCi0jCi1pZiBbIC1yIC9ldGMvZGVmYXVsdHMvcGVyaW9kaWMuY29uZiBdCi10aGVu Ci0gICAgLiAvZXRjL2RlZmF1bHRzL3BlcmlvZGljLmNvbmYKLSAgICBzb3VyY2VfcGVyaW9kaWNf Y29uZnMKLWZpCisuIC9ldGMvcGVyaW9kaWMuc3VicgogCi1jYXNlICIkd2Vla2x5X3doYXRpc19l bmFibGUiIGluCi0gICAgW1l5XVtFZV1bU3NdKQorcmM9MAorCitpZiBjaGVja3llc25vIHdlZWts eV93aGF0aXNfZW5hYmxlOyB0aGVuCiAJZWNobyAiIgogCWVjaG8gIlJlYnVpbGRpbmcgd2hhdGlz IGRhdGFiYXNlOiIKIAotCU1BTlBBVEg9YC91c3IvYmluL21hbnBhdGggLXFgCi0JaWYgWyAkPyA9 IDAgXQorCWlmIE1BTlBBVEg9JCgvdXNyL2Jpbi9tYW5wYXRoIC1xKQogCXRoZW4KIAkgICAgaWYg WyAteiAiJHtNQU5QQVRIfSIgXQogCSAgICB0aGVuCkBAIC0yNSw3ICsxOSw2IEBACiAJCXJjPTMK IAkgICAgZWxzZQogCQltYW5fbG9jYWxlcz1gL3Vzci9iaW4vbWFucGF0aCAtcUxgCi0JCXJjPTAK IAogCSAgICAgICAgIyBCdWlsZCB3aGF0aXMoMSkgZGF0YWJhc2UocykgZm9yIG9yaWdpbmFsLCBu b24tbG9jYWxpemVkCiAJCSMgIG1hbnBhZ2VzLgpAQCAtNDMsOSArMzYsNyBAQAogCSAgICBmaQog CWVsc2UKIAkgICAgcmM9MwotCWZpOzsKKwlmaQorZmkKIAotICAgICopICByYz0wOzsKLWVzYWMK LQogZXhpdCAkcmMKSW5kZXg6IGV0Yy9wZXJpb2RpYy93ZWVrbHkvOTk5LmxvY2FsCj09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT0KLS0tIGV0Yy9wZXJpb2RpYy93ZWVrbHkvOTk5LmxvY2FsCShyZXZpc2lvbiAyMzYxNjQpCisr KyBldGMvcGVyaW9kaWMvd2Vla2x5Lzk5OS5sb2NhbAkod29ya2luZyBjb3B5KQpAQCAtMywxNSAr MywxMCBAQAogIyAkRnJlZUJTRCQKICMKIAotIyBJZiB0aGVyZSBpcyBhIGdsb2JhbCBzeXN0ZW0g Y29uZmlndXJhdGlvbiBmaWxlLCBzdWNrIGl0IGluLgotIwotaWYgWyAtciAvZXRjL2RlZmF1bHRz L3BlcmlvZGljLmNvbmYgXQotdGhlbgotICAgIC4gL2V0Yy9kZWZhdWx0cy9wZXJpb2RpYy5jb25m Ci0gICAgc291cmNlX3BlcmlvZGljX2NvbmZzCi1maQorLiAvZXRjL3BlcmlvZGljLnN1YnIKIAog cmM9MAorCiBmb3Igc2NyaXB0IGluICR3ZWVrbHlfbG9jYWwKIGRvCiAgICAgZWNobyAnJwpJbmRl eDogZXRjL3BlcmlvZGljL3dlZWtseS80MDAuc3RhdHVzLXBrZwo9PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBldGMv cGVyaW9kaWMvd2Vla2x5LzQwMC5zdGF0dXMtcGtnCShyZXZpc2lvbiAyMzYxNjQpCisrKyBldGMv cGVyaW9kaWMvd2Vla2x5LzQwMC5zdGF0dXMtcGtnCSh3b3JraW5nIGNvcHkpCkBAIC0zLDE2ICsz LDExIEBACiAjICRGcmVlQlNEJAogIwogCi0jIElmIHRoZXJlIGlzIGEgZ2xvYmFsIHN5c3RlbSBj b25maWd1cmF0aW9uIGZpbGUsIHN1Y2sgaXQgaW4uCi0jCi1pZiBbIC1yIC9ldGMvZGVmYXVsdHMv cGVyaW9kaWMuY29uZiBdCi10aGVuCi0gICAgLiAvZXRjL2RlZmF1bHRzL3BlcmlvZGljLmNvbmYK LSAgICBzb3VyY2VfcGVyaW9kaWNfY29uZnMKLWZpCisuIC9ldGMvcGVyaW9kaWMuc3VicgogCi1j YXNlICIkd2Vla2x5X3N0YXR1c19wa2dfZW5hYmxlIiBpbgotICAgIFtZeV1bRWVdW1NzXSkKK3Jj PTAKKworaWYgY2hlY2t5ZXNubyB3ZWVrbHlfc3RhdHVzX3BrZ19lbmFibGU7IHRoZW4KIAllY2hv ICIiCiAJZWNobyAiQ2hlY2sgZm9yIG91dCBvZiBkYXRlIHBhY2thZ2VzOiIKIApAQCAtMjUsOSAr MjAsNyBAQAogCQktZSAncy9eXChbXiBdKi1bXiBdKlwpICAqPyAqXChvcnBoYW5lZDouKlwpJC8g IFwxIHdhcyBcMi9wJyB8CiAJICAgIHRlZSAvZGV2L3N0ZGVyciB8CiAJICAgIHdjIC1sKQotCVsg JHJjIC1ndCAxIF0gJiYgcmM9MTs7CisJWyAkcmMgLWd0IDEgXSAmJiByYz0xCitmaQogCi0gICAg KikgIHJjPTA7OwotZXNhYwotCiBleGl0ICRyYwpJbmRleDogZXRjL3BlcmlvZGljL3dlZWtseS8z MzAuY2F0bWFuCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT0KLS0tIGV0Yy9wZXJpb2RpYy93ZWVrbHkvMzMwLmNhdG1hbgko cmV2aXNpb24gMjM2MTY0KQorKysgZXRjL3BlcmlvZGljL3dlZWtseS8zMzAuY2F0bWFuCSh3b3Jr aW5nIGNvcHkpCkBAIC0zLDU2ICszLDQ0IEBACiAjICRGcmVlQlNEJAogIwogCi0jIElmIHRoZXJl IGlzIGEgZ2xvYmFsIHN5c3RlbSBjb25maWd1cmF0aW9uIGZpbGUsIHN1Y2sgaXQgaW4uCi0jCi1p ZiBbIC1yIC9ldGMvZGVmYXVsdHMvcGVyaW9kaWMuY29uZiBdCi10aGVuCi0gICAgLiAvZXRjL2Rl ZmF1bHRzL3BlcmlvZGljLmNvbmYKLSAgICBzb3VyY2VfcGVyaW9kaWNfY29uZnMKLWZpCisuIC9l dGMvcGVyaW9kaWMuc3VicgogCi1jYXNlICIkd2Vla2x5X2NhdG1hbl9lbmFibGUiIGluCi0gICAg W1l5XVtFZV1bU3NdKQorcmM9MAorCitpZiBjaGVja3llc25vIHdlZWtseV9jYXRtYW5fZW5hYmxl OyB0aGVuCiAJaWYgWyAhIC1kIC91c3Ivc2hhcmUvbWFuL2NhdDEgXQogCXRoZW4KLQkgICAgZWNo byAnJHdlZWtseV9jYXRtYW5fZW5hYmxlIGlzIHNldCBidXQgL3Vzci9zaGFyZS9tYW4vY2F0MScg XAorCSAgICBlcnIgMiAnJHdlZWtseV9jYXRtYW5fZW5hYmxlIGlzIHNldCBidXQgL3Vzci9zaGFy ZS9tYW4vY2F0MScgXAogCQkiZG9lc24ndCBleGlzdCIKLQkgICAgcmM9MgotCWVsc2UKLQkgICAg ZWNobyAiIgotCSAgICBlY2hvICJSZWZvcm1hdHRpbmcgbWFudWFsIHBhZ2VzOiIKKwlmaQorCWVj aG8gIiIKKwllY2hvICJSZWZvcm1hdHRpbmcgbWFudWFsIHBhZ2VzOiIKIAotCSAgICBNQU5QQVRI PWAvdXNyL2Jpbi9tYW5wYXRoIC1xYAotCSAgICBpZiBbICQ/ID0gMCBdCisJaWYgTUFOUEFUSD1g L3Vzci9iaW4vbWFucGF0aCAtcWAKKwl0aGVuCisJICAgIGlmIFsgLXogIiR7TUFOUEFUSH0iIF0K IAkgICAgdGhlbgotCQlpZiBbIC16ICIke01BTlBBVEh9IiBdCi0JCXRoZW4KLQkJICAgIGVjaG8g Im1hbnBhdGggZmFpbGVkIHRvIGZpbmQgYW55IG1hbnBhdGggZGlyZWN0b3JpZXMiCi0JCSAgICBy Yz0zCi0JCWVsc2UKLQkJICAgIG1hbl9sb2NhbGVzPWAvdXNyL2Jpbi9tYW5wYXRoIC1xTGAKLQkJ ICAgIHJjPTAKKwkgICAgICAgIGVyciAzICJtYW5wYXRoIGZhaWxlZCB0byBmaW5kIGFueSBtYW5w YXRoIGRpcmVjdG9yaWVzIgorCSAgICBlbHNlCisJICAgICAgICBtYW5fbG9jYWxlcz1gL3Vzci9i aW4vbWFucGF0aCAtcUxgCiAKLQkJICAgICMgUHJlZm9ybWF0IG9yaWdpbmFsLCBub24tbG9jYWxp emVkIG1hbnBhZ2VzCi0JCSAgICBlY2hvIC91c3IvbGliZXhlYy9jYXRtYW4ubG9jYWwgLXIgIiRN QU5QQVRIIiB8Ci0JCQlzdSAtZm0gbWFuIHx8IHJjPTMKKwkgICAgICAgICMgUHJlZm9ybWF0IG9y aWdpbmFsLCBub24tbG9jYWxpemVkIG1hbnBhZ2VzCisJCWVjaG8gL3Vzci9saWJleGVjL2NhdG1h bi5sb2NhbCAtciAiJE1BTlBBVEgiIHwKKwkJICAgIHN1IC1mbSBtYW4gfHwgcmM9MwogCi0JCSAg ICAjIFByZWZvcm1hdCBsb2NhbGl6ZWQgbWFucGFnZXMuCi0JCSAgICBpZiBbIC1uICIkbWFuX2xv Y2FsZXMiIF0KLQkJICAgIHRoZW4KLQkJCWZvciBpIGluICRtYW5fbG9jYWxlcwotCQkJZG8KLQkJ CSAgICBlY2hvIC91c3IvbGliZXhlYy9jYXRtYW4ubG9jYWwgLUxyIFwKLQkJCQkiJE1BTlBBVEgi IHwgTENfQUxMPSRpIHN1IC1mbSBtYW4gfHwgcmM9MwotCQkJZG9uZQotCQkgICAgZmkKKwkJIyBQ cmVmb3JtYXQgbG9jYWxpemVkIG1hbnBhZ2VzLgorCQlpZiBbIC1uICIkbWFuX2xvY2FsZXMiIF0K KwkJdGhlbgorCQkgICAgZm9yIGkgaW4gJG1hbl9sb2NhbGVzCisJCSAgICBkbworCQkgICAgICAg IGVjaG8gL3Vzci9saWJleGVjL2NhdG1hbi5sb2NhbCAtTHIgXAorCQkJIiRNQU5QQVRIIiB8IExD X0FMTD0kaSBzdSAtZm0gbWFuIHx8IHJjPTMKKwkJICAgIGRvbmUKIAkJZmkKLQkgICAgZWxzZQot CQlyYz0zCiAJICAgIGZpCi0JZmk7OworCWVsc2UKKwkgICAgcmM9MworCWZpCitmaQogCi0gICAg KikgIHJjPTA7OwotZXNhYwotCiBleGl0ICRyYwpJbmRleDogZXRjL3BlcmlvZGljL3dlZWtseS8z MTAubG9jYXRlCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT0KLS0tIGV0Yy9wZXJpb2RpYy93ZWVrbHkvMzEwLmxvY2F0ZQko cmV2aXNpb24gMjM2MTY0KQorKysgZXRjL3BlcmlvZGljL3dlZWtseS8zMTAubG9jYXRlCSh3b3Jr aW5nIGNvcHkpCkBAIC0zLDMwICszLDIzIEBACiAjICRGcmVlQlNEJAogIwogCi0jIElmIHRoZXJl IGlzIGEgZ2xvYmFsIHN5c3RlbSBjb25maWd1cmF0aW9uIGZpbGUsIHN1Y2sgaXQgaW4uCi0jCi1p ZiBbIC1yIC9ldGMvZGVmYXVsdHMvcGVyaW9kaWMuY29uZiBdCi10aGVuCi0gICAgLiAvZXRjL2Rl ZmF1bHRzL3BlcmlvZGljLmNvbmYKLSAgICBzb3VyY2VfcGVyaW9kaWNfY29uZnMKLWZpCisuIC9l dGMvcGVyaW9kaWMuc3VicgogCi1jYXNlICIkd2Vla2x5X2xvY2F0ZV9lbmFibGUiIGluCi0gICAg W1l5XVtFZV1bU3NdKQorcmM9MAorCitpZiBjaGVja3llc25vIHdlZWtseV9sb2NhdGVfZW5hYmxl OyB0aGVuCiAJZWNobyAiIgogCWVjaG8gIlJlYnVpbGRpbmcgbG9jYXRlIGRhdGFiYXNlOiIKIAog CWxvY2RiPS92YXIvZGIvbG9jYXRlLmRhdGFiYXNlCiAKLQl0b3VjaCAkbG9jZGIgJiYgcmM9MCB8 fCByYz0zCisJdG91Y2ggJGxvY2RiIHx8IHJjPTMKIAljaG93biBub2JvZHkgJGxvY2RiIHx8IHJj PTMKIAljaG1vZCA2NDQgJGxvY2RiIHx8IHJjPTMKIAogCWNkIC8KIAllY2hvIC91c3IvbGliZXhl Yy9sb2NhdGUudXBkYXRlZGIgfCBuaWNlIC1uIDUgc3UgLWZtIG5vYm9keSB8fCByYz0zCi0JY2ht b2QgNDQ0ICRsb2NkYiB8fCByYz0zOzsKKwljaG1vZCA0NDQgJGxvY2RiIHx8IHJjPTMKK2ZpCiAK LSAgICAqKSAgcmM9MDs7Ci1lc2FjCi0KIGV4aXQgJHJjCkluZGV4OiBldGMvcGVyaW9kaWMvd2Vl a2x5LzM0MC5ub2lkCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGV0Yy9wZXJpb2RpYy93ZWVrbHkvMzQwLm5vaWQJ KHJldmlzaW9uIDIzNjE2NCkKKysrIGV0Yy9wZXJpb2RpYy93ZWVrbHkvMzQwLm5vaWQJKHdvcmtp bmcgY29weSkKQEAgLTMsMTYgKzMsMTEgQEAKICMgJEZyZWVCU0QkCiAjCiAKLSMgSWYgdGhlcmUg aXMgYSBnbG9iYWwgc3lzdGVtIGNvbmZpZ3VyYXRpb24gZmlsZSwgc3VjayBpdCBpbi4KLSMKLWlm IFsgLXIgL2V0Yy9kZWZhdWx0cy9wZXJpb2RpYy5jb25mIF0KLXRoZW4KLSAgICAuIC9ldGMvZGVm YXVsdHMvcGVyaW9kaWMuY29uZgotICAgIHNvdXJjZV9wZXJpb2RpY19jb25mcwotZmkKKy4gL2V0 Yy9wZXJpb2RpYy5zdWJyCiAKLWNhc2UgIiR3ZWVrbHlfbm9pZF9lbmFibGUiIGluCi0gICAgW1l5 XVtFZV1bU3NdKQorcmM9MAorCitpZiBjaGVja3llc25vIHdlZWtseV9ub2lkX2VuYWJsZTsgdGhl bgogCWVjaG8gIiIKIAllY2hvICJDaGVjayBmb3IgZmlsZXMgd2l0aCBhbiB1bmtub3duIHVzZXIg b3IgZ3JvdXA6IgogCkBAIC0yMSw5ICsxNiw2IEBACiAJICAgIFwoIC1ub2dyb3VwIC1vIC1ub3Vz ZXIgXCkgLXByaW50IHwgc2VkICdzL14vICAvJyB8CiAJICAgIHRlZSAvZGV2L3N0ZGVyciB8IHdj IC1sKQogCVsgJHJjIC1ndCAxIF0gJiYgcmM9MQotCTs7CitmaQogCi0gICAgKikgIHJjPTA7Owot ZXNhYwotCiBleGl0ICRyYwpJbmRleDogZXRjL3BlcmlvZGljL2RhaWx5LzMzMC5uZXdzCj09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT0KLS0tIGV0Yy9wZXJpb2RpYy9kYWlseS8zMzAubmV3cwkocmV2aXNpb24gMjM2MTY0KQor KysgZXRjL3BlcmlvZGljL2RhaWx5LzMzMC5uZXdzCSh3b3JraW5nIGNvcHkpCkBAIC02LDI5ICs2 LDIxIEBACiAjIChUaGlzIGlzIHByZXNlbnQgb25seSBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxp dHksIHVzdWFsbHkgdGhlIG5ld3MKICMgc3lzdGVtIGhhbmRsZXMgdGhpcyBvbiBpdHMgb3duKS4K IAotIyBJZiB0aGVyZSBpcyBhIGdsb2JhbCBzeXN0ZW0gY29uZmlndXJhdGlvbiBmaWxlLCBzdWNr IGl0IGluLgotIwotaWYgWyAtciAvZXRjL2RlZmF1bHRzL3BlcmlvZGljLmNvbmYgXQotdGhlbgot ICAgIC4gL2V0Yy9kZWZhdWx0cy9wZXJpb2RpYy5jb25mCi0gICAgc291cmNlX3BlcmlvZGljX2Nv bmZzCi1maQorLiAvZXRjL3BlcmlvZGljLnN1YnIKIAotY2FzZSAiJGRhaWx5X25ld3NfZXhwaXJl X2VuYWJsZSIgaW4KLSAgICBbWXldW0VlXVtTc10pCityYz0wCisKK2lmIGNoZWNreWVzbm8gZGFp bHlfbmV3c19leHBpcmVfZW5hYmxlOyB0aGVuCiAJaWYgWyAhIC1mIC9ldGMvbmV3cy5leHBpcmUg XQogCXRoZW4KLQkgICAgZWNobyAnJGRhaWx5X25ld3NfZXhwaXJlX2VuYWJsZSBpcyBzZXQgYnV0 IC9ldGMvbmV3cy5leHBpcmUnIFwKKwkgICAgZXJyIDIgJyRkYWlseV9uZXdzX2V4cGlyZV9lbmFi bGUgaXMgc2V0IGJ1dCAvZXRjL25ld3MuZXhwaXJlJyBcCiAJCSJkb2Vzbid0IGV4aXN0IgotCSAg ICByYz0yCiAJZWxzZQogCSAgICBlY2hvICIiCiAJICAgIGVjaG8gIlJ1bm5pbmcgbmV3cy5leHBp cmU6IgogCiAJICAgIC9ldGMvbmV3cy5leHBpcmUgJiYgcmM9MCB8fCByYz0zCi0JZmk7OworCWZp CitmaQogCi0gICAgKikgIHJjPTA7OwotZXNhYwotCiBleGl0ICRyYwpJbmRleDogZXRjL3Blcmlv ZGljL2RhaWx5Lzk5OS5sb2NhbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBldGMvcGVyaW9kaWMvZGFpbHkvOTk5 LmxvY2FsCShyZXZpc2lvbiAyMzYxNjQpCisrKyBldGMvcGVyaW9kaWMvZGFpbHkvOTk5LmxvY2Fs CSh3b3JraW5nIGNvcHkpCkBAIC02LDEzICs2LDcgQEAKICMgY29tcGF0aWJpbGl0eSBtb3JlIHRo YW4gYW55dGhpbmcgZWxzZS4KICMKIAotIyBJZiB0aGVyZSBpcyBhIGdsb2JhbCBzeXN0ZW0gY29u ZmlndXJhdGlvbiBmaWxlLCBzdWNrIGl0IGluLgotIwotaWYgWyAtciAvZXRjL2RlZmF1bHRzL3Bl cmlvZGljLmNvbmYgXQotdGhlbgotICAgIC4gL2V0Yy9kZWZhdWx0cy9wZXJpb2RpYy5jb25mCi0g ICAgc291cmNlX3BlcmlvZGljX2NvbmZzCi1maQorLiAvZXRjL3BlcmlvZGljLnN1YnIKIAogcmM9 MAogZm9yIHNjcmlwdCBpbiAkZGFpbHlfbG9jYWwKSW5kZXg6IGV0Yy9wZXJpb2RpYy9kYWlseS80 OTAuc3RhdHVzLXBrZy1jaGFuZ2VzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGV0Yy9wZXJpb2RpYy9kYWlseS80 OTAuc3RhdHVzLXBrZy1jaGFuZ2VzCShyZXZpc2lvbiAyMzYxNjQpCisrKyBldGMvcGVyaW9kaWMv ZGFpbHkvNDkwLnN0YXR1cy1wa2ctY2hhbmdlcwkod29ya2luZyBjb3B5KQpAQCAtMywyMiArMywx NiBAQAogIyAkRnJlZUJTRCQKICMKIAotIyBJZiB0aGVyZSBpcyBhIGdsb2JhbCBzeXN0ZW0gY29u ZmlndXJhdGlvbiBmaWxlLCBzdWNrIGl0IGluLgotIwotaWYgWyAtciAvZXRjL2RlZmF1bHRzL3Bl cmlvZGljLmNvbmYgXTsgdGhlbgotICAgIC4gL2V0Yy9kZWZhdWx0cy9wZXJpb2RpYy5jb25mCi0g ICAgc291cmNlX3BlcmlvZGljX2NvbmZzCi1maQorLiAvZXRjL3BlcmlvZGljLnN1YnIKIAotY2Fz ZSAiJGRhaWx5X3N0YXR1c19wa2dfY2hhbmdlc19lbmFibGUiIGluCi0gICAgW1l5XVtFZV1bU3Nd KQorcmM9MAorCitpZiBjaGVja3llc25vIGRhaWx5X3N0YXR1c19wa2dfY2hhbmdlc19lbmFibGU7 IHRoZW4KIAlpZiBbICEgLWYgL3Vzci9zYmluL3BrZ19pbmZvIF07IHRoZW4KLQkgICAgZWNobyAn JGRhaWx5X3N0YXR1c19wa2dfY2hhbmdlc19lbmFibGUgaXMgZW5hYmxlZCBidXQnIFwKKwkgICAg ZXJyIDIgJyRkYWlseV9zdGF0dXNfcGtnX2NoYW5nZXNfZW5hYmxlIGlzIGVuYWJsZWQgYnV0JyBc CiAJCSAiL3Vzci9zYmluL3BrZ19pbmZvIGRvZXNuJ3QgZXhpc3QiCi0JICAgIHJjPTIKIAllbHNl CiAJICAgIGJhaz0vdmFyL2JhY2t1cHMKLQkgICAgcmM9MAogCiAJICAgIGlmIFsgLWYgJGJhay9w a2dfaW5mby5iYWsgXTsgdGhlbgogCSAgICAJbXYgLWYgJGJhay9wa2dfaW5mby5iYWsgJGJhay9w a2dfaW5mby5iYWsyCkBAIC0zMywxMSArMjcsNiBAQAogCQl8IGdyZXAgJ15bLStdW14tK10nIHwg c29ydCAtayAxLjIKIAkgICAgZmkKIAlmaQotCTs7CitmaQogCi0gICAgKikKLQlyYz0wCi0JOzsK LWVzYWMKLQogZXhpdCAkcmMKSW5kZXg6IGV0Yy9wZXJpb2RpYy9kYWlseS84MDAuc2NydWItemZz Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT0KLS0tIGV0Yy9wZXJpb2RpYy9kYWlseS84MDAuc2NydWItemZzCShyZXZpc2lv biAyMzYxNjQpCisrKyBldGMvcGVyaW9kaWMvZGFpbHkvODAwLnNjcnViLXpmcwkod29ya2luZyBj b3B5KQpAQCAtMywyMiArMywxMyBAQAogIyAkRnJlZUJTRCQKICMKIAotIyBJZiB0aGVyZSBpcyBh IGdsb2JhbCBzeXN0ZW0gY29uZmlndXJhdGlvbiBmaWxlLCBzdWNrIGl0IGluLgotIworLiAvZXRj L3BlcmlvZGljLnN1YnIKIAotbmV3bGluZT0iCi0iICMgQSBzaW5nbGUgbmV3bGluZQorbmV3bGlu ZT0kKGVjaG8gLW5lICJcbiIpCiAKLWlmIFsgLXIgL2V0Yy9kZWZhdWx0cy9wZXJpb2RpYy5jb25m IF0KLXRoZW4KLSAgICAuIC9ldGMvZGVmYXVsdHMvcGVyaW9kaWMuY29uZgotICAgIHNvdXJjZV9w ZXJpb2RpY19jb25mcwotZmkKK3JjPTAKIAotOiAke2RhaWx5X3NjcnViX3pmc19kZWZhdWx0X3Ro cmVzaG9sZD0zNX0KLQotY2FzZSAiJGRhaWx5X3NjcnViX3pmc19lbmFibGUiIGluCi0gICAgW1l5 XVtFZV1bU3NdKQoraWYgY2hlY2t5ZXNubyBkYWlseV9zY3J1Yl96ZnNfZW5hYmxlOyB0aGVuCiAJ ZWNobwogCWVjaG8gJ1NjcnViYmluZyBvZiB6ZnMgcG9vbHM6JwogCkBAIC0yNiw3ICsxNyw2IEBA CiAJCWRhaWx5X3NjcnViX3pmc19wb29scz0iJCh6cG9vbCBsaXN0IC1IIC1vIG5hbWUpIgogCWZp CiAKLQlyYz0wCiAJZm9yIHBvb2wgaW4gJHtkYWlseV9zY3J1Yl96ZnNfcG9vbHN9OyBkbwogCQkj IHNhbml0eSBjaGVjawogCQlfc3RhdHVzPSQoenBvb2wgbGlzdCAiJHtwb29sfSIgMj4gL2Rldi9u dWxsKQpAQCAtODgsMTEgKzc4LDYgQEAKIAogCQllY2hvICIgICAgICBjb25zdWx0ICd6cG9vbCBz dGF0dXMgJHtwb29sfScgZm9yIHRoZSByZXN1bHQiCiAJZG9uZQotCTs7CitmaQogCi0gICAgKikK LQlyYz0wCi0JOzsKLWVzYWMKLQogZXhpdCAkcmMKSW5kZXg6IGV0Yy9wZXJpb2RpYy9kYWlseS80 NDAuc3RhdHVzLW1haWxxCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGV0Yy9wZXJpb2RpYy9kYWlseS80NDAuc3Rh dHVzLW1haWxxCShyZXZpc2lvbiAyMzYxNjQpCisrKyBldGMvcGVyaW9kaWMvZGFpbHkvNDQwLnN0 YXR1cy1tYWlscQkod29ya2luZyBjb3B5KQpAQCAtMyw2NCArMyw1MyBAQAogIyAkRnJlZUJTRCQK ICMKIAotIyBJZiB0aGVyZSBpcyBhIGdsb2JhbCBzeXN0ZW0gY29uZmlndXJhdGlvbiBmaWxlLCBz dWNrIGl0IGluLgotIwotaWYgWyAtciAvZXRjL2RlZmF1bHRzL3BlcmlvZGljLmNvbmYgXQotdGhl bgotICAgIC4gL2V0Yy9kZWZhdWx0cy9wZXJpb2RpYy5jb25mCi0gICAgc291cmNlX3BlcmlvZGlj X2NvbmZzCi1maQorLiAvZXRjL3BlcmlvZGljLnN1YnIKIAotY2FzZSAiJGRhaWx5X3N0YXR1c19t YWlscV9lbmFibGUiIGluCi0gICAgW1l5XVtFZV1bU3NdKQorcmM9MAorCitpZiBjaGVja3llc25v IGRhaWx5X3N0YXR1c19tYWlscV9lbmFibGU7IHRoZW4KIAlpZiBbICEgLXggL3Vzci9iaW4vbWFp bHEgXQogCXRoZW4KLQkgICAgZWNobyAnJGRhaWx5X3N0YXR1c19tYWlscV9lbmFibGUgaXMgc2V0 IGJ1dCAvdXNyL2Jpbi9tYWlscScgXAorCSAgICBlcnIgMiAnJGRhaWx5X3N0YXR1c19tYWlscV9l bmFibGUgaXMgc2V0IGJ1dCAvdXNyL2Jpbi9tYWlscScgXAogCQkiaXNuJ3QgZXhlY3V0YWJsZSIK LQkgICAgcmM9MgogCWVsc2UKIAkgICAgZWNobyAiIgogCSAgICBlY2hvICJNYWlsIGluIGxvY2Fs IHF1ZXVlOiIKIAotCSAgICByYz0kKGNhc2UgIiRkYWlseV9zdGF0dXNfbWFpbHFfc2hvcnRlbiIg aW4KLQkJW1l5XVtFZV1bU3NdKQorCSAgICBuPSQoaWYgY2hlY2t5ZXNubyBkYWlseV9zdGF0dXNf bWFpbHFfc2hvcnRlbjsgdGhlbgogCQkgICAgbWFpbHEgfAogCQkJZWdyZXAgLWUgJ15bWzpzcGFj ZTpdXStbXls6c3BhY2U6XV0rQCcgfAogCQkJc29ydCB8CiAJCQl1bmlxIC1jIHwKIAkJCXNvcnQg LW5yIHwKLQkJCWF3ayAnJDEgPj0gMSB7cHJpbnQgJDEsICQyfSc7OwotCQkqKQotCQkgICAgbWFp bHE7OwotCSAgICBlc2FjIHwgdGVlIC9kZXYvc3RkZXJyIHwKKwkJCWF3ayAnJDEgPj0gMSB7cHJp bnQgJDEsICQyfScKKwkJZWxzZQorCQkgICAgbWFpbHEKKwkgICAgICAgIGZpIHwgdGVlIC9kZXYv c3RkZXJyIHwKIAkgICAgZWdyZXAgLXYgJyhtcXVldWUgaXMgZW1wdHl8VG90YWwgcmVxdWVzdHMp JyB8IHdjIC1sKQotCSAgICBbICRyYyAtZ3QgMCBdICYmIHJjPTEgfHwgcmM9MAorCSAgICBbICRu IC1ndCAwIF0gJiYgcmM9MQogCi0JICAgIGNhc2UgIiRkYWlseV9zdGF0dXNfaW5jbHVkZV9zdWJt aXRfbWFpbHEiIGluCi0JICAgIFtZeV1bRWVdW1NzXSkKKwkgICAgaWYgY2hlY2t5ZXNubyBkYWls eV9zdGF0dXNfaW5jbHVkZV9zdWJtaXRfbWFpbHE7IHRoZW4KIAkJaWYgWyAtZiAvZXRjL21haWwv c3VibWl0LmNmIF0KIAkJdGhlbgogCQkgICAgZWNobyAiIgogCQkgICAgZWNobyAiTWFpbCBpbiBz dWJtaXQgcXVldWU6IgogCi0JCSAgICByY19zdWJtaXQ9JChjYXNlICIkZGFpbHlfc3RhdHVzX21h aWxxX3Nob3J0ZW4iIGluCi0JCQlbWXldW0VlXVtTc10pCisJCSAgICBuPSQoaWYgY2hlY2t5ZXNu byBkYWlseV9zdGF0dXNfbWFpbHFfc2hvcnRlbjsgdGhlbgogCQkJICAgIG1haWxxIC1BYyB8CiAJ CQkJZWdyZXAgLWUgJ15bWzpzcGFjZTpdXStbXls6c3BhY2U6XV0rQCcgfAogCQkJCXNvcnQgfAog CQkJCXVuaXEgLWMgfAogCQkJCXNvcnQgLW5yIHwKLQkJCQlhd2sgJyQxID49IDEge3ByaW50ICQx LCAkMn0nOzsKLQkJCSopCi0JCQkgICAgbWFpbHEgLUFjOzsKLQkJICAgIGVzYWMgfCB0ZWUgL2Rl di9zdGRlcnIgfAorCQkJCWF3ayAnJDEgPj0gMSB7cHJpbnQgJDEsICQyfScKKwkJCWVsc2UKKwkJ CSAgICBtYWlscSAtQWMKKwkJICAgICAgICBmaSB8IHRlZSAvZGV2L3N0ZGVyciB8CiAJCSAgICBl Z3JlcCAtdiAnKG1xdWV1ZSBpcyBlbXB0eXxUb3RhbCByZXF1ZXN0cyknIHwgd2MgLWwpCi0JCSAg ICBbICRyY19zdWJtaXQgLWd0IDAgXSAmJiByYz0xCi0JCWZpOzsKLQkgICAgZXNhYwotCWZpOzsK KwkJICAgIFsgJG4gLWd0IDAgXSAmJiByYz0xCisJCWZpCisJICAgIGZpCisJZmkKK2ZpCiAKLSAg ICAqKSAgcmM9MDs7Ci1lc2FjCi0KIGV4aXQgJHJjCkluZGV4OiBldGMvcGVyaW9kaWMvZGFpbHkv MTMwLmNsZWFuLW1zZ3MKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gZXRjL3BlcmlvZGljL2RhaWx5LzEzMC5jbGVh bi1tc2dzCShyZXZpc2lvbiAyMzYxNjQpCisrKyBldGMvcGVyaW9kaWMvZGFpbHkvMTMwLmNsZWFu LW1zZ3MJKHdvcmtpbmcgY29weSkKQEAgLTUsMjEgKzUsMTUgQEAKICMgUmVtb3ZlIHN5c3RlbQlt ZXNzYWdlcwogIwogCi0jIElmIHRoZXJlIGlzIGEgZ2xvYmFsIHN5c3RlbSBjb25maWd1cmF0aW9u IGZpbGUsIHN1Y2sgaXQgaW4uCi0jCi1pZiBbIC1yIC9ldGMvZGVmYXVsdHMvcGVyaW9kaWMuY29u ZiBdCi10aGVuCi0gICAgLiAvZXRjL2RlZmF1bHRzL3BlcmlvZGljLmNvbmYKLSAgICBzb3VyY2Vf cGVyaW9kaWNfY29uZnMKLWZpCisuIC9ldGMvcGVyaW9kaWMuc3VicgogCi1jYXNlICIkZGFpbHlf Y2xlYW5fbXNnc19lbmFibGUiIGluCi0gICAgW1l5XVtFZV1bU3NdKQorcmM9MAorCitpZiBjaGVj a3llc25vIGRhaWx5X2NsZWFuX21zZ3NfZW5hYmxlOyB0aGVuCiAJaWYgWyAhIC1kIC92YXIvbXNn cyBdCiAJdGhlbgotCSAgICBlY2hvICckZGFpbHlfY2xlYW5fbXNnc19lbmFibGUgaXMgc2V0IGJ1 dCAvdmFyL21zZ3MnIFwKKwkgICAgZXJyIDIgJyRkYWlseV9jbGVhbl9tc2dzX2VuYWJsZSBpcyBz ZXQgYnV0IC92YXIvbXNncycgXAogCQkiZG9lc24ndCBleGlzdCIKLQkgICAgcmM9MgogCWVsc2UK IAkgICAgZWNobyAiIgogCSAgICBlY2hvICJDbGVhbmluZyBvdXQgb2xkIHN5c3RlbSBhbm5vdW5j ZW1lbnRzOiIKQEAgLTI3LDkgKzIxLDcgQEAKIAkgICAgWyAtbiAiJGRhaWx5X2NsZWFuX21zZ3Nf ZGF5cyIgXSAmJgogCQlhcmc9LSR7ZGFpbHlfY2xlYW5fbXNnc19kYXlzIy19IHx8IGFyZz0KIAkg ICAgbXNncyAtYyAkYXJnICYmIHJjPTAgfHwgcmM9MwotCWZpOzsKKwlmaQorZmkKIAotICAgICop ICByYz0wOzsKLWVzYWMKLQogZXhpdCAkcmMKSW5kZXg6IGV0Yy9wZXJpb2RpYy9kYWlseS8xMDAu Y2xlYW4tZGlza3MKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PQotLS0gZXRjL3BlcmlvZGljL2RhaWx5LzEwMC5jbGVhbi1k aXNrcwkocmV2aXNpb24gMjM2MTY0KQorKysgZXRjL3BlcmlvZGljL2RhaWx5LzEwMC5jbGVhbi1k aXNrcwkod29ya2luZyBjb3B5KQpAQCAtNSw1MSArNSw0MCBAQAogIyBSZW1vdmUgZ2FyYmFnZSBm aWxlcyBtb3JlIHRoYW4gJGRhaWx5X2NsZWFuX2Rpc2tzX2RheXMgZGF5cyBvbGQKICMKIAotIyBJ ZiB0aGVyZSBpcyBhIGdsb2JhbCBzeXN0ZW0gY29uZmlndXJhdGlvbiBmaWxlLCBzdWNrIGl0IGlu LgotIwotaWYgWyAtciAvZXRjL2RlZmF1bHRzL3BlcmlvZGljLmNvbmYgXQotdGhlbgotICAgIC4g L2V0Yy9kZWZhdWx0cy9wZXJpb2RpYy5jb25mCi0gICAgc291cmNlX3BlcmlvZGljX2NvbmZzCi1m aQorLiAvZXRjL3BlcmlvZGljLnN1YnIKIAotY2FzZSAiJGRhaWx5X2NsZWFuX2Rpc2tzX2VuYWJs ZSIgaW4KLSAgICBbWXldW0VlXVtTc10pCityYz0wCisKK2lmIGNoZWNreWVzbm8gZGFpbHlfY2xl YW5fZGlza3NfZW5hYmxlOyB0aGVuCiAJaWYgWyAteiAiJGRhaWx5X2NsZWFuX2Rpc2tzX2RheXMi IF0KIAl0aGVuCi0JICAgIGVjaG8gJyRkYWlseV9jbGVhbl9kaXNrc19lbmFibGUgaXMgc2V0IGJ1 dCcgXAorCSAgICBlcnIgMiAnJGRhaWx5X2NsZWFuX2Rpc2tzX2VuYWJsZSBpcyBzZXQgYnV0JyBc CiAJCSckZGFpbHlfY2xlYW5fZGlza3NfZGF5cyBpcyBub3QnCi0JICAgIHJjPTIKIAllbGlmIFsg LXogIiRkYWlseV9jbGVhbl9kaXNrc19maWxlcyIgXQogCXRoZW4KLQkgICAgZWNobyAnJGRhaWx5 X2NsZWFuX2Rpc2tzX2VuYWJsZSBpcyBzZXQgYnV0JyBcCisJICAgIGVyciAyICckZGFpbHlfY2xl YW5fZGlza3NfZW5hYmxlIGlzIHNldCBidXQnIFwKIAkJJyRkYWlseV9jbGVhbl9kaXNrc19maWxl cyBpcyBub3QnCi0JICAgIHJjPTIKIAllbHNlCi0JICAgIGVjaG8gIiIKLQkgICAgZWNobyAiQ2xl YW5pbmcgZGlza3M6IgorCSAgICBpZiBjaGVja3llc25vIGRhaWx5X2NsZWFuX2Rpc2tzX3ZlcmJv c2U7IHRoZW4KKwkJZWNobyAiIgorCQllY2hvICJDbGVhbmluZyBkaXNrczoiCisKKwkJcHJpbnQ9 LXByaW50CisJICAgIGVsc2UKKwkJcHJpbnQ9CisJICAgIGZpCiAJICAgIHNldCAtZiBub2dsb2IK IAkgICAgYXJncz0iLW5hbWUgImBlY2hvICIkZGFpbHlfY2xlYW5fZGlza3NfZmlsZXMiIHwKIAkJ c2VkIC1lICdzL15bIAldKi8vJyBcCiAJCSAgICAtZSAncy9bIAldKiQvLycgXAogCQkgICAgLWUg J3MvWyAJXVsgCV0qLyAtbyAtbmFtZSAvZydgCiAKLQkgICAgY2FzZSAiJGRhaWx5X2NsZWFuX2Rp c2tzX3ZlcmJvc2UiIGluCi0JCVtZeV1bRWVdW1NzXSkKLQkJICAgIHByaW50PS1wcmludDs7Ci0J CSopCi0JCSAgICBwcmludD07OwotCSAgICBlc2FjCi0KIAkgICAgcmM9JChmaW5kIC8gXCggISAt ZnN0eXBlIGxvY2FsIC1vIC1mc3R5cGUgcmRvbmx5IFwpIC1wcnVuZSAtbyBcCiAJCVwoICRhcmdz IFwpIC1hdGltZSArJGRhaWx5X2NsZWFuX2Rpc2tzX2RheXMgXAogCQktZXhlY2RpciBybSAtZGYg e30gXDsgJHByaW50IHwgdGVlIC9kZXYvc3RkZXJyIHwgd2MgLWwpCi0JICAgIFsgLXogIiRwcmlu dCIgXSAmJiByYz0wCiAJICAgIFsgJHJjIC1ndCAxIF0gJiYgcmM9MQogCSAgICBzZXQgLWYgZ2xv YgotCWZpOzsKKwlmaQorZmkKIAotICAgICopICByYz0wOzsKLWVzYWMKLQogZXhpdCAkcmMKSW5k ZXg6IGV0Yy9wZXJpb2RpYy9kYWlseS80NTAuc3RhdHVzLXNlY3VyaXR5Cj09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t IGV0Yy9wZXJpb2RpYy9kYWlseS80NTAuc3RhdHVzLXNlY3VyaXR5CShyZXZpc2lvbiAyMzYxNjQp CisrKyBldGMvcGVyaW9kaWMvZGFpbHkvNDUwLnN0YXR1cy1zZWN1cml0eQkod29ya2luZyBjb3B5 KQpAQCAtMywzOSArMywzMSBAQAogIyAkRnJlZUJTRCQKICMKIAotIyBJZiB0aGVyZSBpcyBhIGds b2JhbCBzeXN0ZW0gY29uZmlndXJhdGlvbiBmaWxlLCBzdWNrIGl0IGluLgotIwotaWYgWyAtciAv ZXRjL2RlZmF1bHRzL3BlcmlvZGljLmNvbmYgXQotdGhlbgotICAgIC4gL2V0Yy9kZWZhdWx0cy9w ZXJpb2RpYy5jb25mCi0gICAgc291cmNlX3BlcmlvZGljX2NvbmZzCi1maQorLiAvZXRjL3Blcmlv ZGljLnN1YnIKIAotY2FzZSAiJGRhaWx5X3N0YXR1c19zZWN1cml0eV9lbmFibGUiIGluCi0gICAg W1l5XVtFZV1bU3NdKQorcmM9MAorCitpZiBjaGVja3llc25vIGRhaWx5X3N0YXR1c19zZWN1cml0 eV9lbmFibGU7IHRoZW4KIAllY2hvICIiCiAJZWNobyAiU2VjdXJpdHkgY2hlY2s6IgogCi0JY2Fz ZSAiJGRhaWx5X3N0YXR1c19zZWN1cml0eV9pbmxpbmUiIGluCi0JICAgIFtZeV1bRWVdW1NzXSkK KwlpZiBjaGVja3llc25vIGRhaWx5X3N0YXR1c19zZWN1cml0eV9pbmxpbmU7IHRoZW4KIAkJZXhw b3J0IHNlY3VyaXR5X291dHB1dD0iIjs7Ci0JICAgICopCisJZWxzZQogCQlleHBvcnQgc2VjdXJp dHlfb3V0cHV0PSIke2RhaWx5X3N0YXR1c19zZWN1cml0eV9vdXRwdXR9IgogCQljYXNlICIke2Rh aWx5X3N0YXR1c19zZWN1cml0eV9vdXRwdXR9IiBpbgogCQkgICAgIiIpCiAJCQlyYz0zOzsKIAkJ ICAgIC8qKQogCQkJZWNobyAiICAgIChvdXRwdXQgbG9nZ2VkIHNlcGFyYXRlbHkpIgotCQkJcmM9 MDs7CisJCQk7OwogCQkgICAgKikKIAkJCWVjaG8gIiAgICAob3V0cHV0IG1haWxlZCBzZXBhcmF0 ZWx5KSIKLQkJCXJjPTA7OwotCQllc2FjOzsKLQllc2FjCisJCQk7OworCQllc2FjCisJZmkKIAot CXBlcmlvZGljIHNlY3VyaXR5IHx8IHJjPTM7OworCXBlcmlvZGljIHNlY3VyaXR5IHx8IHJjPTMK K2ZpCiAKLSAgICAqKSAgcmM9MDs7Ci1lc2FjCi0KIGV4aXQgJHJjCkluZGV4OiBldGMvcGVyaW9k aWMvZGFpbHkvMTQwLmNsZWFuLXJ3aG8KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gZXRjL3BlcmlvZGljL2RhaWx5 LzE0MC5jbGVhbi1yd2hvCShyZXZpc2lvbiAyMzYxNjQpCisrKyBldGMvcGVyaW9kaWMvZGFpbHkv MTQwLmNsZWFuLXJ3aG8JKHdvcmtpbmcgY29weSkKQEAgLTUsNDkgKzUsMzcgQEAKICMgUmVtb3Zl IHN0YWxlIGZpbGVzIGluIC92YXIvcndobwogIwogCi0jIElmIHRoZXJlIGlzIGEgZ2xvYmFsIHN5 c3RlbSBjb25maWd1cmF0aW9uIGZpbGUsIHN1Y2sgaXQgaW4uCi0jCi1pZiBbIC1yIC9ldGMvZGVm YXVsdHMvcGVyaW9kaWMuY29uZiBdCi10aGVuCi0gICAgLiAvZXRjL2RlZmF1bHRzL3BlcmlvZGlj LmNvbmYKLSAgICBzb3VyY2VfcGVyaW9kaWNfY29uZnMKLWZpCisuIC9ldGMvcGVyaW9kaWMuc3Vi cgogCi1jYXNlICIkZGFpbHlfY2xlYW5fcndob19lbmFibGUiIGluCi0gICAgW1l5XVtFZV1bU3Nd KQorcmM9MAorCitpZiBjaGVja3llc25vIGRhaWx5X2NsZWFuX3J3aG9fZW5hYmxlOyB0aGVuCiAJ aWYgWyAteiAiJGRhaWx5X2NsZWFuX3J3aG9fZGF5cyIgXQogCXRoZW4KLQkgICAgZWNobyAnJGRh aWx5X2NsZWFuX3J3aG9fZW5hYmxlIGlzIGVuYWJsZWQgYnV0JyBcCisJICAgIGVyciAyICckZGFp bHlfY2xlYW5fcndob19lbmFibGUgaXMgZW5hYmxlZCBidXQnIFwKIAkJJyRkYWlseV9jbGVhbl9y d2hvX2RheXMgaXMgbm90IHNldCcKLQkgICAgcmM9MgogCWVsaWYgWyAhIC1kIC92YXIvcndobyBd CiAJdGhlbgotCSAgICBlY2hvICckZGFpbHlfY2xlYW5fcndob19lbmFibGUgaXMgZW5hYmxlZCBi dXQgL3Zhci9yd2hvJyBcCisJICAgIGVyciAyICckZGFpbHlfY2xlYW5fcndob19lbmFibGUgaXMg ZW5hYmxlZCBidXQgL3Zhci9yd2hvJyBcCiAJCSJkb2Vzbid0IGV4aXN0IgotCSAgICByYz0yCiAJ ZWxzZQotCSAgICBlY2hvICIiCi0JICAgIGVjaG8gIlJlbW92aW5nIHN0YWxlIGZpbGVzIGZyb20g L3Zhci9yd2hvOiIKKwkgICAgaWYgY2hlY2t5ZXNubyBkYWlseV9jbGVhbl9yd2hvX3ZlcmJvc2U7 IHRoZW4KKwkJZWNobyAiIgorCQllY2hvICJSZW1vdmluZyBzdGFsZSBmaWxlcyBmcm9tIC92YXIv cndobzoiCiAKLQkgICAgY2FzZSAiJGRhaWx5X2NsZWFuX3J3aG9fdmVyYm9zZSIgaW4KLQkJW1l5 XVtFZV1bU3NdKQotCQkgICAgcHJpbnQ9LXByaW50OzsKLQkJKikKLQkJICAgIHByaW50PTs7Ci0J ICAgIGVzYWMKLQorCQlwcmludD0tcHJpbnQKKwkgICAgZWxzZQorCQlwcmludD0KKwkgICAgZmkK IAkgICAgaWYgY2QgL3Zhci9yd2hvCiAJICAgIHRoZW4KIAkJcmM9JChmaW5kIC4gISAtbmFtZSAu IC1tdGltZSArJGRhaWx5X2NsZWFuX3J3aG9fZGF5cyBcCiAJCSAgICAtZGVsZXRlICRwcmludCB8 IHRlZSAvZGV2L3N0ZGVyciB8IHdjIC1sKQotCQlbIC16ICIkcHJpbnQiIF0gJiYgcmM9MAogCQlb ICRyYyAtZ3QgMSBdICYmIHJjPTEKIAkgICAgZWxzZQogCQlyYz0zCiAJICAgIGZpCi0JZmk7Owor CWZpCitmaQogCi0gICAgKikgIHJjPTA7OwotZXNhYwotCiBleGl0ICRyYwpJbmRleDogZXRjL3Bl cmlvZGljL2RhaWx5LzExMC5jbGVhbi10bXBzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGV0Yy9wZXJpb2RpYy9k YWlseS8xMTAuY2xlYW4tdG1wcwkocmV2aXNpb24gMjM2MTY0KQorKysgZXRjL3BlcmlvZGljL2Rh aWx5LzExMC5jbGVhbi10bXBzCSh3b3JraW5nIGNvcHkpCkBAIC02LDI1ICs2LDI0IEBACiAjIGRv bid0IGVuZCB1cCB3aXRoIGV4Y2Vzc2l2ZWx5IG9sZCBmaWxlcyB0aGVyZS4KICMKIAotIyBJZiB0 aGVyZSBpcyBhIGdsb2JhbCBzeXN0ZW0gY29uZmlndXJhdGlvbiBmaWxlLCBzdWNrIGl0IGluLgot IwotaWYgWyAtciAvZXRjL2RlZmF1bHRzL3BlcmlvZGljLmNvbmYgXQotdGhlbgotICAgIC4gL2V0 Yy9kZWZhdWx0cy9wZXJpb2RpYy5jb25mCi0gICAgc291cmNlX3BlcmlvZGljX2NvbmZzCi1maQor LiAvZXRjL3BlcmlvZGljLnN1YnIKIAotY2FzZSAiJGRhaWx5X2NsZWFuX3RtcHNfZW5hYmxlIiBp bgotICAgIFtZeV1bRWVdW1NzXSkKK3JjPTAKKworaWYgY2hlY2t5ZXNubyBkYWlseV9jbGVhbl90 bXBzX2VuYWJsZTsgdGhlbgogCWlmIFsgLXogIiRkYWlseV9jbGVhbl90bXBzX2RheXMiIF0KIAl0 aGVuCi0JICAgIGVjaG8gJyRkYWlseV9jbGVhbl90bXBzX2VuYWJsZSBpcyBzZXQgYnV0JyBcCisJ ICAgIGVyciAyICckZGFpbHlfY2xlYW5fdG1wc19lbmFibGUgaXMgc2V0IGJ1dCcgXAogCQknJGRh aWx5X2NsZWFuX3RtcHNfZGF5cyBpcyBub3QnCi0JICAgIHJjPTIKIAllbHNlCi0JICAgIGVjaG8g IiIKLQkgICAgZWNobyAiUmVtb3Zpbmcgb2xkIHRlbXBvcmFyeSBmaWxlczoiCisJICAgIGlmIGNo ZWNreWVzbm8gZGFpbHlfY2xlYW5fdG1wc192ZXJib3NlOyB0aGVuCisJCWVjaG8gIiIKKwkJZWNo byAiUmVtb3Zpbmcgb2xkIHRlbXBvcmFyeSBmaWxlczoiCiAKKwkJcHJpbnQ9LXByaW50CisJICAg IGVsc2UKKwkJcHJpbnQ9CisJICAgIGZpCiAJICAgIHNldCAtZiBub2dsb2IKIAkgICAgYXJncz0i LWF0aW1lICskZGFpbHlfY2xlYW5fdG1wc19kYXlzIC1tdGltZSArJGRhaWx5X2NsZWFuX3RtcHNf ZGF5cyIKIAkgICAgYXJncz0iJHthcmdzfSAtY3RpbWUgKyRkYWlseV9jbGVhbl90bXBzX2RheXMi CkBAIC0zNSwxMyArMzQsNiBAQAogCQlkYXJncz0iJGRhcmdzICJgZWNobyAiICR7ZGFpbHlfY2xl YW5fdG1wc19pZ25vcmUlIH0iIHwKIAkJICAgIHNlZCAncy9bIAldWyAJXSovICEgLW5hbWUgL2cn YAogCSAgICB9Ci0JICAgIGNhc2UgIiRkYWlseV9jbGVhbl90bXBzX3ZlcmJvc2UiIGluCi0JCVtZ eV1bRWVdW1NzXSkKLQkJICAgIHByaW50PS1wcmludDs7Ci0JCSopCi0JCSAgICBwcmludD07Owot CSAgICBlc2FjCi0KIAkgICAgcmM9JChmb3IgZGlyIGluICRkYWlseV9jbGVhbl90bXBzX2RpcnMK IAkJZG8KIAkJICAgIFsgLiIke2RpciMvfSIgIT0gLiIkZGlyIiAtYSAtZCAkZGlyIF0gJiYgY2Qg JGRpciAmJiB7CkBAIC00OSwxMiArNDEsOSBAQAogCQkJZmluZCAtZCAuICEgLW5hbWUgLiAtdHlw ZSBkICRkYXJncyAtZGVsZXRlICRwcmludAogCQkgICAgfSB8IHNlZCAicyxeXFwuLCAgJGRpciwi CiAJCWRvbmUgfCB0ZWUgL2Rldi9zdGRlcnIgfCB3YyAtbCkKLQkgICAgWyAteiAiJHByaW50IiBd ICYmIHJjPTAKIAkgICAgWyAkcmMgLWd0IDEgXSAmJiByYz0xCiAJICAgIHNldCAtZiBnbG9iCi0J Zmk7OworCWZpCitmaQogCi0gICAgKikgIHJjPTA7OwotZXNhYwotCiBleGl0ICRyYwpJbmRleDog ZXRjL3BlcmlvZGljL2RhaWx5LzQzMC5zdGF0dXMtcndobwo9PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBldGMvcGVy aW9kaWMvZGFpbHkvNDMwLnN0YXR1cy1yd2hvCShyZXZpc2lvbiAyMzYxNjQpCisrKyBldGMvcGVy aW9kaWMvZGFpbHkvNDMwLnN0YXR1cy1yd2hvCSh3b3JraW5nIGNvcHkpCkBAIC0zLDE2ICszLDEx IEBACiAjICRGcmVlQlNEJAogIwogCi0jIElmIHRoZXJlIGlzIGEgZ2xvYmFsIHN5c3RlbSBjb25m aWd1cmF0aW9uIGZpbGUsIHN1Y2sgaXQgaW4uCi0jCi1pZiBbIC1yIC9ldGMvZGVmYXVsdHMvcGVy aW9kaWMuY29uZiBdCi10aGVuCi0gICAgLiAvZXRjL2RlZmF1bHRzL3BlcmlvZGljLmNvbmYKLSAg ICBzb3VyY2VfcGVyaW9kaWNfY29uZnMKLWZpCisuIC9ldGMvcGVyaW9kaWMuc3VicgogCi1jYXNl ICIkZGFpbHlfc3RhdHVzX3J3aG9fZW5hYmxlIiBpbgotICAgIFtZeV1bRWVdW1NzXSkKK3JjPTAK KworaWYgY2hlY2t5ZXNubyBkYWlseV9zdGF0dXNfcndob19lbmFibGU7IHRoZW4KIAlyd2hvPSQo ZWNobyAvdmFyL3J3aG8vKikKICAgICAgICAgaWYgWyAtZiAiJHtyd2hvJSUgKn0iIF0KICAgICAg ICAgdGhlbgpAQCAtMjQsMTUgKzE5LDEzIEBACiAJICAgIGVjaG8gIkxvY2FsIHN5c3RlbSBzdGF0 dXM6IgogCSAgICBwcm9nPXVwdGltZQogCWZpCi0JcmM9JCgkcHJvZyB8IHRlZSAvZGV2L3N0ZGVy ciB8IHdjIC1sKQorCW49JCgkcHJvZyB8IHRlZSAvZGV2L3N0ZGVyciB8IHdjIC1sKQogCWlmIFsg JD8gLWVxIDAgXQogCXRoZW4KLQkgICAgWyAkcmMgLWd0IDEgXSAmJiByYz0xCisJICAgIFsgJG4g LWd0IDEgXSAmJiByYz0xCiAJZWxzZQogCSAgICByYz0zCi0JZmk7OworCWZpCitmaQogCi0gICAg KikgIHJjPTA7OwotZXNhYwotCiBleGl0ICRyYwpJbmRleDogZXRjL3BlcmlvZGljL2RhaWx5LzQ2 MC5zdGF0dXMtbWFpbC1yZWplY3RzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGV0Yy9wZXJpb2RpYy9kYWlseS80 NjAuc3RhdHVzLW1haWwtcmVqZWN0cwkocmV2aXNpb24gMjM2MTY0KQorKysgZXRjL3BlcmlvZGlj L2RhaWx5LzQ2MC5zdGF0dXMtbWFpbC1yZWplY3RzCSh3b3JraW5nIGNvcHkpCkBAIC0zLDM2ICsz LDI5IEBACiAjICRGcmVlQlNEJAogIwogCi0jIElmIHRoZXJlIGlzIGEgZ2xvYmFsIHN5c3RlbSBj b25maWd1cmF0aW9uIGZpbGUsIHN1Y2sgaXQgaW4uCi0jCi1pZiBbIC1yIC9ldGMvZGVmYXVsdHMv cGVyaW9kaWMuY29uZiBdCi10aGVuCi0gICAgLiAvZXRjL2RlZmF1bHRzL3BlcmlvZGljLmNvbmYK LSAgICBzb3VyY2VfcGVyaW9kaWNfY29uZnMKKy4gL2V0Yy9wZXJpb2RpYy5zdWJyCisKK3JjPTAK KworaWYgY2hlY2t5ZXNubyBkYWlseV9zdGF0dXNfbWFpbF9yZWplY3RzX3Nob3J0ZW47IHRoZW4K KwlzaG9ydGVuPSdjdXQgLWQiICIgLWYyLDMnCitlbHNlCisJc2hvcnRlbj1jYXQKIGZpCiAKLWNh c2UgIiRkYWlseV9zdGF0dXNfbWFpbF9yZWplY3RzX3Nob3J0ZW4iIGluCi1bWXldW0VlXVtTc10p CXNob3J0ZW49J2N1dCAtZCIgIiAtZjIsMyc7OwotKikJCXNob3J0ZW49Y2F0OzsKLWVzYWMKLQot Y2FzZSAiJGRhaWx5X3N0YXR1c19tYWlsX3JlamVjdHNfZW5hYmxlIiBpbgotICAgIFtZeV1bRWVd W1NzXSkKK2lmIGNoZWNreWVzbm8gZGFpbHlfc3RhdHVzX21haWxfcmVqZWN0c19lbmFibGU7IHRo ZW4KIAlpZiBbICEgLWQgL2V0Yy9tYWlsIF0KIAl0aGVuCi0JICAgIGVjaG8gJyRkYWlseV9zdGF0 dXNfbWFpbF9yZWplY3RzX2VuYWJsZSBpcyBzZXQgYnV0IC9ldGMvbWFpbCcgXAorCSAgICBlcnIg MiAnJGRhaWx5X3N0YXR1c19tYWlsX3JlamVjdHNfZW5hYmxlIGlzIHNldCBidXQgL2V0Yy9tYWls JyBcCiAJCSJkb2Vzbid0IGV4aXN0IgotCSAgICByYz0yCiAJZWxpZiBbICEgLWYgL3Zhci9sb2cv bWFpbGxvZyBdCiAJdGhlbgotCSAgICBlY2hvICckZGFpbHlfc3RhdHVzX21haWxfcmVqZWN0c19l bmFibGUgaXMgc2V0IGJ1dCAnIFwKKwkgICAgZXJyIDIgJyRkYWlseV9zdGF0dXNfbWFpbF9yZWpl Y3RzX2VuYWJsZSBpcyBzZXQgYnV0ICcgXAogCQkiL3Zhci9sb2cvbWFpbGxvZyBkb2Vzbid0IGV4 aXN0IgotCSAgICByYz0yCiAJZWxpZiBbICIkZGFpbHlfc3RhdHVzX21haWxfcmVqZWN0c19sb2dz IiAtbGUgMCBdCiAJdGhlbgotCSAgICBlY2hvICckZGFpbHlfc3RhdHVzX21haWxfcmVqZWN0c19l bmFibGUgaXMgc2V0IGJ1dCAnIFwKKwkgICAgZXJyIDIgJyRkYWlseV9zdGF0dXNfbWFpbF9yZWpl Y3RzX2VuYWJsZSBpcyBzZXQgYnV0ICcgXAogCQknJGRhaWx5X3N0YXR1c19tYWlsX3JlamVjdHNf bG9ncyBpcyBub3QgZ3JlYXRlciB0aGFuIHplcm8nCi0JICAgIHJjPTIKIAllbHNlCiAJICAgIGVj aG8KIAkgICAgZWNobyBDaGVja2luZyBmb3IgcmVqZWN0ZWQgbWFpbCBob3N0czoKQEAgLTY1LDkg KzU4LDcgQEAKIAkJICAgIDplbmQKIAkJfScgfCBldmFsICRzaG9ydGVuIHwgc29ydCAtZiB8IHVu aXEgLWljIHwgc29ydCAtZm5yIHwgdGVlIC9kZXYvc3RkZXJyIHwgd2MgLWwpCiAJICAgIFsgJHJj IC1ndCAwIF0gJiYgcmM9MQotCWZpOzsKKwlmaQorZmkKIAotICAgICopICByYz0wOzsKLWVzYWMK LQogZXhpdCAkcmMKSW5kZXg6IGV0Yy9wZXJpb2RpYy9kYWlseS80MDUuc3RhdHVzLWF0YS1yYWlk Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT0KLS0tIGV0Yy9wZXJpb2RpYy9kYWlseS80MDUuc3RhdHVzLWF0YS1yYWlkCShy ZXZpc2lvbiAyMzYxNjQpCisrKyBldGMvcGVyaW9kaWMvZGFpbHkvNDA1LnN0YXR1cy1hdGEtcmFp ZAkod29ya2luZyBjb3B5KQpAQCAtMSwzMyArMCwwIEBACi0jIS9iaW4vc2gKLSMKLSMgJEZyZWVC U0QkCi0jCi0KLSMgSWYgdGhlcmUgaXMgYSBnbG9iYWwgc3lzdGVtIGNvbmZpZ3VyYXRpb24gZmls ZSwgc3VjayBpdCBpbi4KLSMKLWlmIFsgLXIgL2V0Yy9kZWZhdWx0cy9wZXJpb2RpYy5jb25mIF0K LXRoZW4KLSAgICAuIC9ldGMvZGVmYXVsdHMvcGVyaW9kaWMuY29uZgotICAgIHNvdXJjZV9wZXJp b2RpY19jb25mcwotZmkKLQotY2FzZSAiJGRhaWx5X3N0YXR1c19hdGFfcmFpZF9lbmFibGUiIGlu Ci0gICAgW1l5XVtFZV1bU3NdKQotCWVjaG8KLQllY2hvICdDaGVja2luZyBzdGF0dXMgb2YgQVRB IHJhaWQgcGFydGl0aW9uczonCi0KLQlyYz0wCi0JZm9yIHJhaWQgaW4gYGZpbmQgL2Rldi8gLW5h bWUgJ2FyWzAtOV0qJyAtdHlwZSBjIHwgZWdyZXAgJ1swLTldJCcgXAotCQl8IGVncmVwIC12ICdz WzAtOV0nIHwgY3V0IC1kIC8gLWYgM2AKLQkgICAgIGRvCi0JCXN0YXR1cz1gL3NiaW4vYXRhY29u dHJvbCBzdGF0dXMgJHJhaWRgCi0JCWVjaG8gJHN0YXR1cwotCQlyYWlkX3JjPWBlY2hvICRzdGF0 dXMgfCBncmVwIC12IFJFQURZIHwgd2MgLWxgCi0JCVsgJHJjIC1lcSAwIF0gJiYgWyAkcmFpZF9y YyAtZ3QgMCBdICYmIHJjPTMKLQkgICAgIGRvbmUKLQk7OwotCi0gICAgKikgIHJjPTA7OwotZXNh YwotCi1leGl0ICRyYwpJbmRleDogZXRjL3BlcmlvZGljL2RhaWx5LzMwMC5jYWxlbmRhcgo9PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09Ci0tLSBldGMvcGVyaW9kaWMvZGFpbHkvMzAwLmNhbGVuZGFyCShyZXZpc2lvbiAyMzYx NjQpCisrKyBldGMvcGVyaW9kaWMvZGFpbHkvMzAwLmNhbGVuZGFyCSh3b3JraW5nIGNvcHkpCkBA IC04LDIyICs4LDE1IEBACiAjIG9yIHJ1biBpdCBmcm9tIHlvdXIgfi8ucHJvZmlsZSBvciB+Ly5s b2dpbi4KICMKIAotIyBJZiB0aGVyZSBpcyBhIGdsb2JhbCBzeXN0ZW0gY29uZmlndXJhdGlvbiBm aWxlLCBzdWNrIGl0IGluLgotIwotaWYgWyAtciAvZXRjL2RlZmF1bHRzL3BlcmlvZGljLmNvbmYg XQotdGhlbgotICAgIC4gL2V0Yy9kZWZhdWx0cy9wZXJpb2RpYy5jb25mCi0gICAgc291cmNlX3Bl cmlvZGljX2NvbmZzCi1maQorLiAvZXRjL3BlcmlvZGljLnN1YnIKIAotY2FzZSAiJGRhaWx5X2Nh bGVuZGFyX2VuYWJsZSIgaW4KLSAgICBbWXldW0VlXVtTc10pCityYz0wCisKK2lmIGNoZWNreWVz bm8gZGFpbHlfY2FsZW5kYXJfZW5hYmxlOyB0aGVuCiAJZWNobyAiIgogCWVjaG8gIlJ1bm5pbmcg Y2FsZW5kYXI6IgogCi0JY2FsZW5kYXIgLWEgJiYgcmM9MCB8fCByYz0zOzsKKwljYWxlbmRhciAt YSAmJiByYz0wIHx8IHJjPTMKK2ZpCiAKLSAgICAqKSAgcmM9MDs7Ci1lc2FjCi0KIGV4aXQgJHJj CkluZGV4OiBldGMvcGVyaW9kaWMvZGFpbHkvNDA5LnN0YXR1cy1nY29uY2F0Cj09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K LS0tIGV0Yy9wZXJpb2RpYy9kYWlseS80MDkuc3RhdHVzLWdjb25jYXQJKHJldmlzaW9uIDIzNjE2 NCkKKysrIGV0Yy9wZXJpb2RpYy9kYWlseS80MDkuc3RhdHVzLWdjb25jYXQJKHdvcmtpbmcgY29w eSkKQEAgLTMsMTYgKzMsMTEgQEAKICMgJEZyZWVCU0QkCiAjCiAKLSMgSWYgdGhlcmUgaXMgYSBn bG9iYWwgc3lzdGVtIGNvbmZpZ3VyYXRpb24gZmlsZSwgc3VjayBpdCBpbi4KLSMKLWlmIFsgLXIg L2V0Yy9kZWZhdWx0cy9wZXJpb2RpYy5jb25mIF0KLXRoZW4KLSAgICAuIC9ldGMvZGVmYXVsdHMv cGVyaW9kaWMuY29uZgotICAgIHNvdXJjZV9wZXJpb2RpY19jb25mcwotZmkKKy4gL2V0Yy9wZXJp b2RpYy5zdWJyCiAKLWNhc2UgIiRkYWlseV9zdGF0dXNfZ2NvbmNhdF9lbmFibGUiIGluCi0gICAg W1l5XVtFZV1bU3NdKQorcmM9MAorCitpZiBjaGVja3llc25vIGRhaWx5X3N0YXR1c19nY29uY2F0 X2VuYWJsZTsgdGhlbgogCWVjaG8KIAllY2hvICdDaGVja2luZyBzdGF0dXMgb2YgZ2NvbmNhdCg4 KSBkZXZpY2VzOicKIApAQCAtMjAsMTUgKzE1LDEwIEBACiAJCWNvbXBvbmVudHM9IiQoZ2NvbmNh dCBzdGF0dXMgLXMgfCBmZ3JlcCAtdiBVUCkiCiAJCWlmIFsgIiR7Y29tcG9uZW50c30iIF07IHRo ZW4KIAkJCXJjPTMKLQkJZWxzZQotCQkJcmM9MAogCQlmaQogCWVsc2UKIAkJcmM9MgogCWZpCi0J OzsKK2ZpCiAKLSAgICAqKSAgcmM9MDs7Ci1lc2FjCi0KIGV4aXQgJHJjCkluZGV4OiBldGMvcGVy aW9kaWMvZGFpbHkvNDA2LnN0YXR1cy1nbWlycm9yCj09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGV0Yy9wZXJpb2Rp Yy9kYWlseS80MDYuc3RhdHVzLWdtaXJyb3IJKHJldmlzaW9uIDIzNjE2NCkKKysrIGV0Yy9wZXJp b2RpYy9kYWlseS80MDYuc3RhdHVzLWdtaXJyb3IJKHdvcmtpbmcgY29weSkKQEAgLTMsMTYgKzMs MTEgQEAKICMgJEZyZWVCU0QkCiAjCiAKLSMgSWYgdGhlcmUgaXMgYSBnbG9iYWwgc3lzdGVtIGNv bmZpZ3VyYXRpb24gZmlsZSwgc3VjayBpdCBpbi4KLSMKLWlmIFsgLXIgL2V0Yy9kZWZhdWx0cy9w ZXJpb2RpYy5jb25mIF0KLXRoZW4KLSAgICAuIC9ldGMvZGVmYXVsdHMvcGVyaW9kaWMuY29uZgot ICAgIHNvdXJjZV9wZXJpb2RpY19jb25mcwotZmkKKy4gL2V0Yy9wZXJpb2RpYy5zdWJyCiAKLWNh c2UgIiRkYWlseV9zdGF0dXNfZ21pcnJvcl9lbmFibGUiIGluCi0gICAgW1l5XVtFZV1bU3NdKQor cmM9MAorCitpZiBjaGVja3llc25vIGRhaWx5X3N0YXR1c19nbWlycm9yX2VuYWJsZTsgdGhlbgog CWVjaG8KIAllY2hvICdDaGVja2luZyBzdGF0dXMgb2YgZ21pcnJvcig4KSBkZXZpY2VzOicKIApA QCAtMjAsMTUgKzE1LDEwIEBACiAJCWNvbXBvbmVudHM9IiQoZ21pcnJvciBzdGF0dXMgLXMgfCBm Z3JlcCAtdiBDT01QTEVURSkiCiAJCWlmIFsgIiR7Y29tcG9uZW50c30iIF07IHRoZW4KIAkJCXJj PTMKLQkJZWxzZQotCQkJcmM9MAogCQlmaQogCWVsc2UKIAkJcmM9MgogCWZpCi0JOzsKK2ZpCiAK LSAgICAqKSAgcmM9MDs7Ci1lc2FjCi0KIGV4aXQgJHJjCkluZGV4OiBldGMvcGVyaW9kaWMvZGFp bHkvNTAwLnF1ZXVlcnVuCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGV0Yy9wZXJpb2RpYy9kYWlseS81MDAucXVl dWVydW4JKHJldmlzaW9uIDIzNjE2NCkKKysrIGV0Yy9wZXJpb2RpYy9kYWlseS81MDAucXVldWVy dW4JKHdvcmtpbmcgY29weSkKQEAgLTMsMzQgKzMsMjIgQEAKICMgJEZyZWVCU0QkCiAjCiAKLSMg SWYgdGhlcmUgaXMgYSBnbG9iYWwgc3lzdGVtIGNvbmZpZ3VyYXRpb24gZmlsZSwgc3VjayBpdCBp bi4KLSMKLWlmIFsgLXIgL2V0Yy9kZWZhdWx0cy9wZXJpb2RpYy5jb25mIF0KLXRoZW4KLSAgICAu IC9ldGMvZGVmYXVsdHMvcGVyaW9kaWMuY29uZgotICAgIHNvdXJjZV9wZXJpb2RpY19jb25mcwot ZmkKKy4gL2V0Yy9wZXJpb2RpYy5zdWJyCiAKLWNhc2UgIiRkYWlseV9xdWV1ZXJ1bl9lbmFibGUi IGluCi0gICAgW1l5XVtFZV1bU3NdKQorcmM9MAorCitpZiBjaGVja3llc25vIGRhaWx5X3F1ZXVl cnVuX2VuYWJsZTsgdGhlbgogCWlmIFsgISAteCAvdXNyL3NiaW4vc2VuZG1haWwgXQogCXRoZW4K LQkgICAgZWNobyAnJGRhaWx5X3F1ZXVlcnVuX2VuYWJsZSBpcyBzZXQgYnV0IC91c3Ivc2Jpbi9z ZW5kbWFpbCcgXAorCSAgICBlcnIgMiAnJGRhaWx5X3F1ZXVlcnVuX2VuYWJsZSBpcyBzZXQgYnV0 IC91c3Ivc2Jpbi9zZW5kbWFpbCcgXAogCQkiaXNuJ3QgZXhlY3V0YWJsZSIKLQkgICAgcmM9Mgot CWVsc2UKLQkgICAgL3Vzci9zYmluL3NlbmRtYWlsIC1xID4vZGV2L251bGwgMj4mMSAmCi0JICAg IGNhc2UgIiRkYWlseV9zdWJtaXRfcXVldWVydW4iIGluCi0JICAgIFtZeV1bRWVdW1NzXSkKLQkJ aWYgWyAtZiAvZXRjL21haWwvc3VibWl0LmNmIF0KLQkJdGhlbgotCQkgICAgL3Vzci9zYmluL3Nl bmRtYWlsIC1xIC1BYyA+L2Rldi9udWxsIDI+JjEgJgotCQlmaTs7Ci0JICAgIGVzYWMKLQkgICAg cmM9MAotCWZpOzsKKwlmaQorCS91c3Ivc2Jpbi9zZW5kbWFpbCAtcSA+L2Rldi9udWxsIDI+JjEg JgorCWlmIGNoZWNreWVzbm8gZGFpbHlfc3VibWl0X3F1ZXVlcnVuOyB0aGVuCisJICAgIGlmIFsg LWYgL2V0Yy9tYWlsL3N1Ym1pdC5jZiBdOyB0aGVuCisJCS91c3Ivc2Jpbi9zZW5kbWFpbCAtcSAt QWMgPi9kZXYvbnVsbCAyPiYxICYKKwkgICAgZmkKKwlmaQorZmkKIAotICAgICopICByYz0wOzsK LWVzYWMKLQogZXhpdCAkcmMKSW5kZXg6IGV0Yy9wZXJpb2RpYy9kYWlseS9NYWtlZmlsZQo9PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09Ci0tLSBldGMvcGVyaW9kaWMvZGFpbHkvTWFrZWZpbGUJKHJldmlzaW9uIDIzNjE2NCkK KysrIGV0Yy9wZXJpb2RpYy9kYWlseS9NYWtlZmlsZQkod29ya2luZyBjb3B5KQpAQCAtOSw3ICs5 LDYgQEAKIAkyMjAuYmFja3VwLXBrZ2RiIFwKIAkzMzAubmV3cyBcCiAJNDAwLnN0YXR1cy1kaXNr cyBcCi0JNDA1LnN0YXR1cy1hdGEtcmFpZCBcCiAJNDA2LnN0YXR1cy1nbWlycm9yIFwKIAk0MDcu c3RhdHVzLWdyYWlkMyBcCiAJNDA4LnN0YXR1cy1nc3RyaXBlIFwKSW5kZXg6IGV0Yy9wZXJpb2Rp Yy9kYWlseS80MjAuc3RhdHVzLW5ldHdvcmsKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gZXRjL3BlcmlvZGljL2Rh aWx5LzQyMC5zdGF0dXMtbmV0d29yawkocmV2aXNpb24gMjM2MTY0KQorKysgZXRjL3BlcmlvZGlj L2RhaWx5LzQyMC5zdGF0dXMtbmV0d29yawkod29ya2luZyBjb3B5KQpAQCAtMywyNyArMywyMCBA QAogIyAkRnJlZUJTRCQKICMKIAotIyBJZiB0aGVyZSBpcyBhIGdsb2JhbCBzeXN0ZW0gY29uZmln dXJhdGlvbiBmaWxlLCBzdWNrIGl0IGluLgotIwotaWYgWyAtciAvZXRjL2RlZmF1bHRzL3Blcmlv ZGljLmNvbmYgXQotdGhlbgotICAgIC4gL2V0Yy9kZWZhdWx0cy9wZXJpb2RpYy5jb25mCi0gICAg c291cmNlX3BlcmlvZGljX2NvbmZzCi1maQorLiAvZXRjL3BlcmlvZGljLnN1YnIKIAotY2FzZSAi JGRhaWx5X3N0YXR1c19uZXR3b3JrX2VuYWJsZSIgaW4KLSAgICBbWXldW0VlXVtTc10pCityYz0w CisKK2lmIGNoZWNreWVzbm8gZGFpbHlfc3RhdHVzX25ldHdvcmtfZW5hYmxlOyB0aGVuCiAJZWNo byAiIgogCWVjaG8gIk5ldHdvcmsgaW50ZXJmYWNlIHN0YXR1czoiCiAKLQljYXNlICIkZGFpbHlf c3RhdHVzX25ldHdvcmtfdXNlZG5zIiBpbgotCSAgICBbWXldW0VlXVtTc10pCi0JCW5ldHN0YXQg LWlkICYmIHJjPTAgfHwgcmM9Mzs7Ci0JICAgICopCi0JCW5ldHN0YXQgLWlkbiAmJiByYz0wIHx8 IHJjPTM7OwotCWVzYWM7OworCWlmIGNoZWNreWVzbm8gZGFpbHlfc3RhdHVzX25ldHdvcmtfdXNl ZG5zOyB0aGVuCisJCW5ldHN0YXRfZmxhZ3M9Ii1pIgorCWVsc2UKKwkJbmV0c3RhdF9mbGFncz0i LWluIgorCWZpCisJbmV0c3RhdCAkbmV0c3RhdF9mbGFncyB8fCByYz0zCitmaQogCi0gICAgKikg IHJjPTA7OwotZXNhYwotCiBleGl0ICRyYwpJbmRleDogZXRjL3BlcmlvZGljL2RhaWx5LzQ3MC5z dGF0dXMtbmFtZWQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PQotLS0gZXRjL3BlcmlvZGljL2RhaWx5LzQ3MC5zdGF0dXMt bmFtZWQJKHJldmlzaW9uIDIzNjE2NCkKKysrIGV0Yy9wZXJpb2RpYy9kYWlseS80NzAuc3RhdHVz LW5hbWVkCSh3b3JraW5nIGNvcHkpCkBAIC0zLDQzICszLDI0IEBACiAjICRGcmVlQlNEJAogIwog Ci0jIElmIHRoZXJlIGlzIGEgZ2xvYmFsIHN5c3RlbSBjb25maWd1cmF0aW9uIGZpbGUsIHN1Y2sg aXQgaW4uCi0jCi1pZiBbIC1yIC9ldGMvZGVmYXVsdHMvcGVyaW9kaWMuY29uZiBdCi10aGVuCi0g ICAgLiAvZXRjL2RlZmF1bHRzL3BlcmlvZGljLmNvbmYKLSAgICBzb3VyY2VfcGVyaW9kaWNfY29u ZnMKLWZpCisuIC9ldGMvcGVyaW9kaWMuc3VicgogCi1jYXRtc2dzKCkgewotCWZpbmQgL3Zhci9s b2cgLW5hbWUgJ21lc3NhZ2VzLionIC1tdGltZSAtMiB8Ci0JICAgIHNvcnQgLXQuIC1yIC1uIC1r IDIsMiB8Ci0JICAgIHdoaWxlIHJlYWQgZgotCSAgICBkbwotCQljYXNlICRmIGluCi0JCSAgICAq Lmd6KQl6Y2F0IC1mICRmOzsKLQkJICAgICouYnoyKQliemNhdCAtZiAkZjs7Ci0JCWVzYWMKLQkg ICAgZG9uZQotCVsgLWYgL3Zhci9sb2cvbWVzc2FnZXMgXSAmJiBjYXQgL3Zhci9sb2cvbWVzc2Fn ZXMKLX0KK3JjPTAKIAotY2FzZSAiJGRhaWx5X3N0YXR1c19uYW1lZF9lbmFibGUiIGluCi0gICAg W1l5XVtFZV1bU3NdKQoraWYgY2hlY2t5ZXNubyBkYWlseV9zdGF0dXNfbmFtZWRfZW5hYmxlOyB0 aGVuCiAJZWNobwogCWVjaG8gJ0NoZWNraW5nIGZvciBkZW5pZWQgem9uZSB0cmFuc2ZlcnMgKEFY RlIgYW5kIElYRlIpOicKIAogCXN0YXJ0PWBkYXRlIC12LTFkICcrJWIgJWUnYAotCXJjPSQoY2F0 bXNncyB8CisJcmM9JChjYXRsb2dzIC92YXIvbG9nICJtZXNzYWdlcyIgfAogCSAgICBmZ3JlcCAt RSAiXiRzdGFydC4qbmFtZWRcW1tbOmRpZ2l0Ol1dK1xdOiB0cmFuc2ZlciBvZiAuKmZhaWxlZCAu KjogUkVGVVNFRCIgfAogCSAgICBzZWQgLWUgInMvLip0cmFuc2ZlciBvZiBcJ1woLipcKVwvSU5c JyBmcm9tIFwoLipcKSNbMC05XSo6IC4qL1wxIGZyb20gXDIvIiB8CiAJICAgIHNvcnQgLWYgfCB1 bmlxIC1pYyB8ICgKLQkJdXNlZG5zPTAKLQkJY2FzZSAiJGRhaWx5X3N0YXR1c19uYW1lZF91c2Vk bnMiIGluCi0JCScnKSA7OwotCQlbeVldW2VFXVtzU10pIHVzZWRucz0xIDs7Ci0JCWVzYWMKLQor CQlpZiBjaGVja3llc25vIGRhaWx5X3N0YXR1c19uYW1lZF91c2VkbnM7IHRoZW4KKwkJCXVzZWRu cz0xCisJCWVsc2UKKwkJCXVzZWRucz0wCisJCWZpCiAJCXdoaWxlIHJlYWQgbGluZSA7ZG8KIAkJ CWlwYWRkcj1gZWNobyAiJGxpbmUiIHwgc2VkIC1lICdzL14uKmZyb20gLy8nYAogCQkJaWYgWyAk dXNlZG5zIC1lcSAxIF07IHRoZW4KQEAgLTU0LDkgKzM1LDYgQEAKIAkJZG9uZSApIHwgXAogCQl0 ZWUgL2Rldi9zdGRlcnIgfCB3YyAtbCkKIAlbICRyYyAtZ3QgMCBdICYmIHJjPTEKLQk7OworZmkK IAotICAgICopICByYz0wOzsKLWVzYWMKLQogZXhpdCAkcmMKSW5kZXg6IGV0Yy9wZXJpb2RpYy9k YWlseS8yMTAuYmFja3VwLWFsaWFzZXMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gZXRjL3BlcmlvZGljL2RhaWx5 LzIxMC5iYWNrdXAtYWxpYXNlcwkocmV2aXNpb24gMjM2MTY0KQorKysgZXRjL3BlcmlvZGljL2Rh aWx5LzIxMC5iYWNrdXAtYWxpYXNlcwkod29ya2luZyBjb3B5KQpAQCAtMywxNiArMywxMSBAQAog IyAkRnJlZUJTRCQKICMKIAotIyBJZiB0aGVyZSBpcyBhIGdsb2JhbCBzeXN0ZW0gY29uZmlndXJh dGlvbiBmaWxlLCBzdWNrIGl0IGluLgotIwotaWYgWyAtciAvZXRjL2RlZmF1bHRzL3BlcmlvZGlj LmNvbmYgXQotdGhlbgotICAgIC4gL2V0Yy9kZWZhdWx0cy9wZXJpb2RpYy5jb25mCi0gICAgc291 cmNlX3BlcmlvZGljX2NvbmZzCi1maQorLiAvZXRjL3BlcmlvZGljLnN1YnIKIAotY2FzZSAiJGRh aWx5X2JhY2t1cF9hbGlhc2VzX2VuYWJsZSIgaW4KLSAgICBbWXldW0VlXVtTc10pCityYz0wCisK K2lmIGNoZWNreWVzbm8gZGFpbHlfYmFja3VwX2FsaWFzZXNfZW5hYmxlOyB0aGVuCiAJaWYgWyAh IC1mIC9ldGMvbWFpbC9hbGlhc2VzIF0KIAl0aGVuCiAJICAgIGVjaG8gJyRkYWlseV9iYWNrdXBf YWxpYXNlc19lbmFibGUgaXMgZW5hYmxlZCBidXQnIFwKQEAgLTIwLDcgKzE1LDYgQEAKIAkgICAg cmM9MgogCWVsc2UKIAkgICAgYmFrPS92YXIvYmFja3VwcwotCSAgICByYz0wCiAKIAkgICAgZWNo byAiIgogCSAgICBlY2hvICJCYWNraW5nIHVwIG1haWwgYWxpYXNlczoiCkBAIC0zMSwxNyArMjUs MTQgQEAKIAkJY3AgLXAgL2V0Yy9tYWlsL2FsaWFzZXMgJGJhay9hbGlhc2VzLmJhayB8fCByYz0z CiAJICAgIGZpCiAKLQkgICAgaWYgISBjbXAgLXMgJGJhay9hbGlhc2VzLmJhayAvZXRjL21haWwv YWxpYXNlcworCSAgICBpZiBbICRyYyAtZXEgMCBdICYmICEgY21wIC1zICRiYWsvYWxpYXNlcy5i YWsgL2V0Yy9tYWlsL2FsaWFzZXMKIAkgICAgdGhlbgotCQlbICRyYyAtbHQgMSBdICYmIHJjPTEK IAkJZWNobyAiJGhvc3QgYWxpYXNlcyBkaWZmczoiCiAJCWRpZmYgLXUgJGJhay9hbGlhc2VzLmJh ayAvZXRjL21haWwvYWxpYXNlcwogCQltdiAkYmFrL2FsaWFzZXMuYmFrICRiYWsvYWxpYXNlcy5i YWsyCiAJCWNwIC1wIC9ldGMvbWFpbC9hbGlhc2VzICRiYWsvYWxpYXNlcy5iYWsgfHwgcmM9Mwog CSAgICBmaQotCWZpOzsKKwlmaQorZmkKIAotICAgICopICByYz0wOzsKLWVzYWMKLQogZXhpdCAk cmMKSW5kZXg6IGV0Yy9wZXJpb2RpYy9kYWlseS80MDQuc3RhdHVzLXpmcwo9PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t LSBldGMvcGVyaW9kaWMvZGFpbHkvNDA0LnN0YXR1cy16ZnMJKHJldmlzaW9uIDIzNjE2NCkKKysr IGV0Yy9wZXJpb2RpYy9kYWlseS80MDQuc3RhdHVzLXpmcwkod29ya2luZyBjb3B5KQpAQCAtMywx NiArMywxMSBAQAogIyAkRnJlZUJTRCQKICMKIAotIyBJZiB0aGVyZSBpcyBhIGdsb2JhbCBzeXN0 ZW0gY29uZmlndXJhdGlvbiBmaWxlLCBzdWNrIGl0IGluLgotIwotaWYgWyAtciAvZXRjL2RlZmF1 bHRzL3BlcmlvZGljLmNvbmYgXQotdGhlbgotICAgIC4gL2V0Yy9kZWZhdWx0cy9wZXJpb2RpYy5j b25mCi0gICAgc291cmNlX3BlcmlvZGljX2NvbmZzCi1maQorLiAvZXRjL3BlcmlvZGljLnN1YnIK IAotY2FzZSAiJGRhaWx5X3N0YXR1c196ZnNfZW5hYmxlIiBpbgotICAgIFtZeV1bRWVdW1NzXSkK K3JjPTAKKworaWYgY2hlY2t5ZXNubyBkYWlseV9zdGF0dXNfemZzX2VuYWJsZTsgdGhlbgogCWVj aG8KIAllY2hvICdDaGVja2luZyBzdGF0dXMgb2YgemZzIHBvb2xzOicKIApAQCAtMzUsMTEgKzMw LDYgQEAKIAllbHNlCiAJCXJjPTEKIAlmaQotCTs7CitmaQogCi0gICAgKikKLQlyYz0wCi0JOzsK LWVzYWMKLQogZXhpdCAkcmMKSW5kZXg6IGV0Yy9wZXJpb2RpYy9kYWlseS8yMjAuYmFja3VwLXBr Z2RiCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT0KLS0tIGV0Yy9wZXJpb2RpYy9kYWlseS8yMjAuYmFja3VwLXBrZ2RiCShy ZXZpc2lvbiAyMzYxNjQpCisrKyBldGMvcGVyaW9kaWMvZGFpbHkvMjIwLmJhY2t1cC1wa2dkYgko d29ya2luZyBjb3B5KQpAQCAtMywxOCArMywxMSBAQAogIyAkRnJlZUJTRCQKICMKIAotIyBJZiB0 aGVyZSBpcyBhIGdsb2JhbCBzeXN0ZW0gY29uZmlndXJhdGlvbiBmaWxlLCBzdWNrIGl0IGluLgot IwotaWYgWyAtciAvZXRjL2RlZmF1bHRzL3BlcmlvZGljLmNvbmYgXQotdGhlbgotICAgIC4gL2V0 Yy9kZWZhdWx0cy9wZXJpb2RpYy5jb25mCi0gICAgc291cmNlX3BlcmlvZGljX2NvbmZzCi1maQor LiAvZXRjL3BlcmlvZGljLnN1YnIKIAogcmM9MAogCi1jYXNlICIkZGFpbHlfYmFja3VwX3BrZ2Ri X2VuYWJsZSIgaW4KLSAgICBbWXldW0VlXVtTc10pCitpZiBjaGVja3llc25vIGRhaWx5X2JhY2t1 cF9wa2dkYl9lbmFibGU7IHRoZW4KIAliYWs9IiR7ZGFpbHlfYmFja3VwX3BrZ2RiX2RpcjotL3Zh ci9iYWNrdXBzfSIKIAliYWtfZmlsZT0iJHtiYWt9L3BrZ2RiLmJhay50YnoiCiAKQEAgLTIzLDEw ICsxNiwxMCBAQAogCiAJaWYgWyAhIC1kICIkYmFrIiBdCiAJdGhlbgotCSAgICBpbnN0YWxsIC1k IC1vIHJvb3QgLWcgd2hlZWwgLW0gNzUwICRiYWsgfHwgewotCQllY2hvICckZGFpbHlfYmFja3Vw X3BrZ2RiX2VuYWJsZSBpcyBlbmFibGVkIGJ1dCcgXAotCQkgICAgIiRkYWlseV9iYWNrdXBfcGtn ZGJfZGlyIGRvZXNuJ3QgZXhpc3QiIDsKLQkJZXhpdCAyIDsgfQorCSAgICBpZiAhIGluc3RhbGwg LWQgLW8gcm9vdCAtZyB3aGVlbCAtbSA3NTAgJGJhazsgdGhlbgorCQllcnIgMiAnJGRhaWx5X2Jh Y2t1cF9wa2dkYl9lbmFibGUgaXMgZW5hYmxlZCBidXQnIFwKKwkJICAgICIkZGFpbHlfYmFja3Vw X3BrZ2RiX2RiZGlyIGRvZXNuJ3QgZXhpc3QiIDsKKwkgICAgZmkKIAlmaQogCiAJZWNobyAnJwpA QCAtNDUsNyArMzgsNyBAQAogCSAgICBtdiAiJHtuZXdfYmFrX2ZpbGV9IiAiJHtiYWtfZmlsZX0i CiAJZWxzZQogCSAgICByYz0zCi0JZmkgOzsKLWVzYWMKKwlmaQorZmkKIAogZXhpdCAkcmMKSW5k ZXg6IGV0Yy9wZXJpb2RpYy9kYWlseS8zMTAuYWNjb3VudGluZwo9PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBldGMv cGVyaW9kaWMvZGFpbHkvMzEwLmFjY291bnRpbmcJKHJldmlzaW9uIDIzNjE2NCkKKysrIGV0Yy9w ZXJpb2RpYy9kYWlseS8zMTAuYWNjb3VudGluZwkod29ya2luZyBjb3B5KQpAQCAtMywxNiArMywx MSBAQAogIyAkRnJlZUJTRCQKICMKIAotIyBJZiB0aGVyZSBpcyBhIGdsb2JhbCBzeXN0ZW0gY29u ZmlndXJhdGlvbiBmaWxlLCBzdWNrIGl0IGluLgotIwotaWYgWyAtciAvZXRjL2RlZmF1bHRzL3Bl cmlvZGljLmNvbmYgXQotdGhlbgotICAgIC4gL2V0Yy9kZWZhdWx0cy9wZXJpb2RpYy5jb25mCi0g ICAgc291cmNlX3BlcmlvZGljX2NvbmZzCi1maQorLiAvZXRjL3BlcmlvZGljLnN1YnIKIAotY2Fz ZSAiJGRhaWx5X2FjY291bnRpbmdfZW5hYmxlIiBpbgotICAgIFtZeV1bRWVdW1NzXSkKK3JjPTAK KworaWYgY2hlY2t5ZXNubyBkYWlseV9hY2NvdW50aW5nX2VuYWJsZTsgdGhlbgogCWlmIFsgISAt ZiAvdmFyL2FjY291bnQvYWNjdCBdCiAJdGhlbgogCSAgICBlY2hvICckZGFpbHlfYWNjb3VudGlu Z19lbmFibGUgaXMgc2V0IGJ1dCAvdmFyL2FjY291bnQvYWNjdCcgXApAQCAtMjgsNyArMjMsNiBA QAogCSAgICBlY2hvICJSb3RhdGluZyBhY2NvdW50aW5nIGxvZ3MgYW5kIGdhdGhlcmluZyBzdGF0 aXN0aWNzOiIKIAogCSAgICBjZCAvdmFyL2FjY291bnQKLQkgICAgcmM9MAogCiAJICAgIG49JCgo ICRkYWlseV9hY2NvdW50aW5nX3NhdmUgLSAxICkpCiAJICAgIGZvciBmIGluIGFjY3QuKjsgZG8K QEAgLTUzLDEzICs0NywxMCBAQAogCSAgICBzYSAtcyAkZGFpbHlfYWNjb3VudGluZ19mbGFncyAv dmFyL2FjY291bnQvYWNjdC5tZXJnZSB8fCByYz0zCiAJICAgIHJtIGFjY3QubWVyZ2UKIAotCSAg ICBjYXNlICIkZGFpbHlfYWNjb3VudGluZ19jb21wcmVzcyIgaW4KLQkJW1l5XVtFZV1bU3NdKQot CQkgICAgZ3ppcCAtZiBhY2N0LjAgfHwgcmM9Mzs7Ci0JICAgIGVzYWMKLQlmaTs7CisJICAgIGlm IGNoZWNreWVzbm8gZGFpbHlfYWNjb3VudGluZ19jb21wcmVzczsgdGhlbgorCQlnemlwIC1mIGFj Y3QuMCB8fCByYz0zCisJICAgIGZpCisJZmkKK2ZpCiAKLSAgICAqKSAgcmM9MDs7Ci1lc2FjCi0K IGV4aXQgJHJjCkluZGV4OiBldGMvcGVyaW9kaWMvZGFpbHkvMTUwLmNsZWFuLWhvc3RzdGF0Cj09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT0KLS0tIGV0Yy9wZXJpb2RpYy9kYWlseS8xNTAuY2xlYW4taG9zdHN0YXQJKHJldmlz aW9uIDIzNjE2NCkKKysrIGV0Yy9wZXJpb2RpYy9kYWlseS8xNTAuY2xlYW4taG9zdHN0YXQJKHdv cmtpbmcgY29weSkKQEAgLTUsMjUgKzUsMTggQEAKICMgUmVtb3ZlIHN0YWxlIHBlcnNpc3RlbnQg aG9zdCBzdGF0dXMgZmlsZXMKICMKIAotIyBJZiB0aGVyZSBpcyBhIGdsb2JhbCBzeXN0ZW0gY29u ZmlndXJhdGlvbiBmaWxlLCBzdWNrIGl0IGluLgotIwotaWYgWyAtciAvZXRjL2RlZmF1bHRzL3Bl cmlvZGljLmNvbmYgXTsgdGhlbgotICAgIC4gL2V0Yy9kZWZhdWx0cy9wZXJpb2RpYy5jb25mCi0g ICAgc291cmNlX3BlcmlvZGljX2NvbmZzCi1maQorLiAvZXRjL3BlcmlvZGljLnN1YnIKIAotY2Fz ZSAiJGRhaWx5X2NsZWFuX2hvc3RzdGF0X2VuYWJsZSIgaW4KLSAgICBbWXldW0VlXVtTc10pCity Yz0wCisKK2lmIGNoZWNreWVzbm8gZGFpbHlfY2xlYW5faG9zdHN0YXRfZW5hYmxlOyB0aGVuCiAJ aWYgWyAteiAiJChob3N0c3RhdCAyPiYxKSIgXTsgdGhlbgogCSAgICByYz0yCiAJZWxzZQogCSAg ICBlY2hvICIiCiAJICAgIGVjaG8gIlJlbW92aW5nIHN0YWxlIGVudHJpZXMgZnJvbSBzZW5kbWFp bCBob3N0IHN0YXR1cyBjYWNoZToiCi0JICAgIHJjPTAKIAkgICAgcHVyZ2VzdGF0IHx8IHJjPTEK LQlmaTs7CisJZmkKK2ZpCiAKLSAgICAqKSAgcmM9MDs7Ci1lc2FjCi0KIGV4aXQgJHJjCkluZGV4 OiBldGMvcGVyaW9kaWMvZGFpbHkvNDAwLnN0YXR1cy1kaXNrcwo9PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBldGMv cGVyaW9kaWMvZGFpbHkvNDAwLnN0YXR1cy1kaXNrcwkocmV2aXNpb24gMjM2MTY0KQorKysgZXRj L3BlcmlvZGljL2RhaWx5LzQwMC5zdGF0dXMtZGlza3MJKHdvcmtpbmcgY29weSkKQEAgLTMsMTYg KzMsMTEgQEAKICMgJEZyZWVCU0QkCiAjCiAKLSMgSWYgdGhlcmUgaXMgYSBnbG9iYWwgc3lzdGVt IGNvbmZpZ3VyYXRpb24gZmlsZSwgc3VjayBpdCBpbi4KLSMKLWlmIFsgLXIgL2V0Yy9kZWZhdWx0 cy9wZXJpb2RpYy5jb25mIF0KLXRoZW4KLSAgICAuIC9ldGMvZGVmYXVsdHMvcGVyaW9kaWMuY29u ZgotICAgIHNvdXJjZV9wZXJpb2RpY19jb25mcwotZmkKKy4gL2V0Yy9wZXJpb2RpYy5zdWJyCiAK LWNhc2UgIiRkYWlseV9zdGF0dXNfZGlza3NfZW5hYmxlIiBpbgotICAgIFtZeV1bRWVdW1NzXSkK K3JjPTAKKworaWYgY2hlY2t5ZXNubyBkYWlseV9zdGF0dXNfZGlza3NfZW5hYmxlOyB0aGVuCiAJ ZWNobyAiIgogCWVjaG8gIkRpc2sgc3RhdHVzOiIKIApAQCAtMjQsOSArMTksNyBAQAogCWZpCiAK IAllY2hvICIiCi0JZHVtcCBXIHx8IHJjPTM7OworCWR1bXAgVyB8fCByYz0zCitmaQogCi0gICAg KikgIHJjPTA7OwotZXNhYwotCiBleGl0ICRyYwpJbmRleDogZXRjL3BlcmlvZGljL2RhaWx5LzQ4 MC5zdGF0dXMtbnRwZAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBldGMvcGVyaW9kaWMvZGFpbHkvNDgwLnN0YXR1 cy1udHBkCShyZXZpc2lvbiAyMzYxNjQpCisrKyBldGMvcGVyaW9kaWMvZGFpbHkvNDgwLnN0YXR1 cy1udHBkCSh3b3JraW5nIGNvcHkpCkBAIC0zLDE4ICszLDExIEBACiAjICRGcmVlQlNEJAogIwog Ci0jIElmIHRoZXJlIGlzIGEgZ2xvYmFsIHN5c3RlbSBjb25maWd1cmF0aW9uIGZpbGUsIHN1Y2sg aXQgaW4uCi0jCi1pZiBbIC1yIC9ldGMvZGVmYXVsdHMvcGVyaW9kaWMuY29uZiBdCi10aGVuCi0g ICAgLiAvZXRjL2RlZmF1bHRzL3BlcmlvZGljLmNvbmYKLSAgICBzb3VyY2VfcGVyaW9kaWNfY29u ZnMKLWZpCisuIC9ldGMvcGVyaW9kaWMuc3VicgogCiByYz0wCiAKLWNhc2UgIiRkYWlseV9zdGF0 dXNfbnRwZF9lbmFibGUiIGluCi0gICAgW1l5XVtFZV1bU3NdKQoraWYgY2hlY2t5ZXNubyBkYWls eV9zdGF0dXNfbnRwZF9lbmFibGU7IHRoZW4KIAllY2hvICIiCiAJZWNobyAiTlRQIHN0YXR1czoi CiAKQEAgLTIyLDcgKzE1LDYgQEAKIAlpZiBbIC16ICIkc3luY2hyb25pemVkIiBdOyB0aGVuCiAJ CXJjPTEKIAlmaQotCTs7Ci1lc2FjCitmaQogCiBleGl0ICRyYwpJbmRleDogZXRjL3BlcmlvZGlj L2RhaWx5LzQwNy5zdGF0dXMtZ3JhaWQzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGV0Yy9wZXJpb2RpYy9kYWls eS80MDcuc3RhdHVzLWdyYWlkMwkocmV2aXNpb24gMjM2MTY0KQorKysgZXRjL3BlcmlvZGljL2Rh aWx5LzQwNy5zdGF0dXMtZ3JhaWQzCSh3b3JraW5nIGNvcHkpCkBAIC0zLDE2ICszLDExIEBACiAj ICRGcmVlQlNEJAogIwogCi0jIElmIHRoZXJlIGlzIGEgZ2xvYmFsIHN5c3RlbSBjb25maWd1cmF0 aW9uIGZpbGUsIHN1Y2sgaXQgaW4uCi0jCi1pZiBbIC1yIC9ldGMvZGVmYXVsdHMvcGVyaW9kaWMu Y29uZiBdCi10aGVuCi0gICAgLiAvZXRjL2RlZmF1bHRzL3BlcmlvZGljLmNvbmYKLSAgICBzb3Vy Y2VfcGVyaW9kaWNfY29uZnMKLWZpCisuIC9ldGMvcGVyaW9kaWMuc3VicgogCi1jYXNlICIkZGFp bHlfc3RhdHVzX2dyYWlkM19lbmFibGUiIGluCi0gICAgW1l5XVtFZV1bU3NdKQorcmM9MAorCitp ZiBjaGVja3llc25vIGRhaWx5X3N0YXR1c19ncmFpZDNfZW5hYmxlOyB0aGVuCiAJZWNobwogCWVj aG8gJ0NoZWNraW5nIHN0YXR1cyBvZiBncmFpZDMoOCkgZGV2aWNlczonCiAKQEAgLTIwLDE1ICsx NSwxMCBAQAogCQljb21wb25lbnRzPSIkKGdyYWlkMyBzdGF0dXMgLXMgfCBmZ3JlcCAtdiBDT01Q TEVURSkiCiAJCWlmIFsgIiR7Y29tcG9uZW50c30iIF07IHRoZW4KIAkJCXJjPTMKLQkJZWxzZQot CQkJcmM9MAogCQlmaQogCWVsc2UKIAkJcmM9MgogCWZpCi0JOzsKK2ZpCiAKLSAgICAqKSAgcmM9 MDs7Ci1lc2FjCi0KIGV4aXQgJHJjCkluZGV4OiBldGMvcGVyaW9kaWMvZGFpbHkvMjAwLmJhY2t1 cC1wYXNzd2QKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PQotLS0gZXRjL3BlcmlvZGljL2RhaWx5LzIwMC5iYWNrdXAtcGFz c3dkCShyZXZpc2lvbiAyMzYxNjQpCisrKyBldGMvcGVyaW9kaWMvZGFpbHkvMjAwLmJhY2t1cC1w YXNzd2QJKHdvcmtpbmcgY29weSkKQEAgLTMsMTYgKzMsMTEgQEAKICMgJEZyZWVCU0QkCiAjCiAK LSMgSWYgdGhlcmUgaXMgYSBnbG9iYWwgc3lzdGVtIGNvbmZpZ3VyYXRpb24gZmlsZSwgc3VjayBp dCBpbi4KLSMKLWlmIFsgLXIgL2V0Yy9kZWZhdWx0cy9wZXJpb2RpYy5jb25mIF0KLXRoZW4KLSAg ICAuIC9ldGMvZGVmYXVsdHMvcGVyaW9kaWMuY29uZgotICAgIHNvdXJjZV9wZXJpb2RpY19jb25m cwotZmkKKy4gL2V0Yy9wZXJpb2RpYy5zdWJyCiAKLWNhc2UgIiRkYWlseV9iYWNrdXBfcGFzc3dk X2VuYWJsZSIgaW4KLSAgICBbWXldW0VlXVtTc10pCityYz0wCisKK2lmIGNoZWNreWVzbm8gZGFp bHlfYmFja3VwX3Bhc3N3ZF9lbmFibGU7IHRoZW4KIAlpZiBbICEgLWYgL2V0Yy9tYXN0ZXIucGFz c3dkIF0KIAl0aGVuCiAJICAgIGVjaG8gJyRkYWlseV9iYWNrdXBfcGFzc3dkX2VuYWJsZSIgaXMg c2V0IGJ1dCAvZXRjL21hc3Rlci5wYXNzd2QnIFwKQEAgLTI1LDcgKzIwLDYgQEAKIAkgICAgcmM9 MgogCWVsc2UKIAkgICAgYmFrPS92YXIvYmFja3VwcwotCSAgICByYz0wCiAKIAkgICAgZWNobyAi IgogCSAgICBlY2hvICJCYWNrdXAgcGFzc3dkIGFuZCBncm91cCBmaWxlczoiCkBAIC02OSw5ICs2 Myw3IEBACiAJCWVjaG8gIlZlcmlmeWluZyBncm91cCBmaWxlIHN5bnRheDoiCiAJICAgICAgICBj aGtncnAgL2V0Yy9ncm91cCB8fCByYz0zCiAJICAgIGZpCi0JZmk7OworCWZpCitmaQogCi0gICAg KikgIHJjPTA7OwotZXNhYwotCiBleGl0ICRyYwpJbmRleDogZXRjL3BlcmlvZGljL2RhaWx5LzQw OC5zdGF0dXMtZ3N0cmlwZQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBldGMvcGVyaW9kaWMvZGFpbHkvNDA4LnN0 YXR1cy1nc3RyaXBlCShyZXZpc2lvbiAyMzYxNjQpCisrKyBldGMvcGVyaW9kaWMvZGFpbHkvNDA4 LnN0YXR1cy1nc3RyaXBlCSh3b3JraW5nIGNvcHkpCkBAIC0zLDE2ICszLDExIEBACiAjICRGcmVl QlNEJAogIwogCi0jIElmIHRoZXJlIGlzIGEgZ2xvYmFsIHN5c3RlbSBjb25maWd1cmF0aW9uIGZp bGUsIHN1Y2sgaXQgaW4uCi0jCi1pZiBbIC1yIC9ldGMvZGVmYXVsdHMvcGVyaW9kaWMuY29uZiBd Ci10aGVuCi0gICAgLiAvZXRjL2RlZmF1bHRzL3BlcmlvZGljLmNvbmYKLSAgICBzb3VyY2VfcGVy aW9kaWNfY29uZnMKLWZpCisuIC9ldGMvcGVyaW9kaWMuc3VicgogCi1jYXNlICIkZGFpbHlfc3Rh dHVzX2dzdHJpcGVfZW5hYmxlIiBpbgotICAgIFtZeV1bRWVdW1NzXSkKK3JjPTAKKworaWYgY2hl Y2t5ZXNubyBkYWlseV9zdGF0dXNfZ3N0cmlwZV9lbmFibGU7IHRoZW4KIAllY2hvCiAJZWNobyAn Q2hlY2tpbmcgc3RhdHVzIG9mIGdzdHJpcGUoOCkgZGV2aWNlczonCiAKQEAgLTIwLDE1ICsxNSwx MCBAQAogCQljb21wb25lbnRzPSIkKGdzdHJpcGUgc3RhdHVzIC1zIHwgZmdyZXAgLXYgVVApIgog CQlpZiBbICIke2NvbXBvbmVudHN9IiBdOyB0aGVuCiAJCQlyYz0zCi0JCWVsc2UKLQkJCXJjPTAK IAkJZmkKIAllbHNlCiAJCXJjPTIKIAlmaQotCTs7CitmaQogCi0gICAgKikgIHJjPTA7OwotZXNh YwotCiBleGl0ICRyYwpJbmRleDogZXRjL3BlcmlvZGljL2RhaWx5LzEyMC5jbGVhbi1wcmVzZXJ2 ZQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09Ci0tLSBldGMvcGVyaW9kaWMvZGFpbHkvMTIwLmNsZWFuLXByZXNlcnZlCShy ZXZpc2lvbiAyMzYxNjQpCisrKyBldGMvcGVyaW9kaWMvZGFpbHkvMTIwLmNsZWFuLXByZXNlcnZl CSh3b3JraW5nIGNvcHkpCkBAIC01LDQ5ICs1LDM3IEBACiAjIFJlbW92ZSBzdGFsZSBmaWxlcyBp biAvdmFyL3ByZXNlcnZlCiAjCiAKLSMgSWYgdGhlcmUgaXMgYSBnbG9iYWwgc3lzdGVtIGNvbmZp Z3VyYXRpb24gZmlsZSwgc3VjayBpdCBpbi4KLSMKLWlmIFsgLXIgL2V0Yy9kZWZhdWx0cy9wZXJp b2RpYy5jb25mIF0KLXRoZW4KLSAgICAuIC9ldGMvZGVmYXVsdHMvcGVyaW9kaWMuY29uZgotICAg IHNvdXJjZV9wZXJpb2RpY19jb25mcwotZmkKKy4gL2V0Yy9wZXJpb2RpYy5zdWJyCiAKLWNhc2Ug IiRkYWlseV9jbGVhbl9wcmVzZXJ2ZV9lbmFibGUiIGluCi0gICAgW1l5XVtFZV1bU3NdKQorcmM9 MAorCitpZiBjaGVja3llc25vIGRhaWx5X2NsZWFuX3ByZXNlcnZlX2VuYWJsZTsgdGhlbgogCWlm IFsgLXogIiRkYWlseV9jbGVhbl9wcmVzZXJ2ZV9kYXlzIiBdCiAJdGhlbgotCSAgICBlY2hvICck ZGFpbHlfY2xlYW5fcHJlc2VydmVfZW5hYmxlIGlzIHNldCBidXQnIFwKKwkgICAgZXJyIDIgJyRk YWlseV9jbGVhbl9wcmVzZXJ2ZV9lbmFibGUgaXMgc2V0IGJ1dCcgXAogCQknJGRhaWx5X2NsZWFu X3ByZXNlcnZlX2RheXMgaXMgbm90JwotCSAgICByYz0yCiAJZWxpZiBbICEgLWQgL3Zhci9wcmVz ZXJ2ZSBdCiAJdGhlbgotCSAgICBlY2hvICckZGFpbHlfY2xlYW5fcHJlc2VydmVfZW5hYmxlIGlz IHNldCBidXQgL3Zhci9wcmVzZXJ2ZScgXAorCSAgICBlcnIgMiAnJGRhaWx5X2NsZWFuX3ByZXNl cnZlX2VuYWJsZSBpcyBzZXQgYnV0IC92YXIvcHJlc2VydmUnIFwKIAkJImRvZXNuJ3QgZXhpc3Qi Ci0JICAgIHJjPTIKIAllbHNlCi0JICAgIGVjaG8gIiIKLQkgICAgZWNobyAiUmVtb3Zpbmcgc3Rh bGUgZmlsZXMgZnJvbSAvdmFyL3ByZXNlcnZlOiIKKwkgICAgaWYgY2hlY2t5ZXNubyBkYWlseV9j bGVhbl9wcmVzZXJ2ZV92ZXJib3NlOyB0aGVuCisJCWVjaG8gIiIKKwkJZWNobyAiUmVtb3Zpbmcg c3RhbGUgZmlsZXMgZnJvbSAvdmFyL3ByZXNlcnZlOiIKIAorCQlwcmludD0tcHJpbnQKKwkgICAg ZWxzZQorCQlwcmludD0KKwkgICAgZmkKIAkgICAgaWYgY2QgL3Zhci9wcmVzZXJ2ZQogCSAgICB0 aGVuCi0JCWNhc2UgIiRkYWlseV9jbGVhbl9wcmVzZXJ2ZV92ZXJib3NlIiBpbgotCQkgICAgW1l5 XVtFZV1bU3NdKQotCQkJcHJpbnQ9LXByaW50OzsKLQkJICAgICopCi0JCQlwcmludD07OwotCQll c2FjCi0KIAkJcmM9JChmaW5kIC4gISAtbmFtZSAuIC1tdGltZSArJGRhaWx5X2NsZWFuX3ByZXNl cnZlX2RheXMgXAogCQkgICAgLWRlbGV0ZSAkcHJpbnQgfCB0ZWUgL2Rldi9zdGRlcnIgfCB3YyAt bCkKLQkJWyAteiAiJHByaW50IiBdICYmIHJjPTAKIAkJWyAkcmMgLWd0IDEgXSAmJiByYz0xCiAJ ICAgIGVsc2UKIAkJcmM9MwogCSAgICBmaQotCWZpOzsKKwlmaQorZmkKIAotICAgICopICByYz0w OzsKLWVzYWMKLQogZXhpdCAkcmMKSW5kZXg6IGV0Yy9wZXJpb2RpYy9zZWN1cml0eS81MDAuaXBm d2RlbmllZAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09Ci0tLSBldGMvcGVyaW9kaWMvc2VjdXJpdHkvNTAwLmlwZndkZW5p ZWQJKHJldmlzaW9uIDIzNjE2NCkKKysrIGV0Yy9wZXJpb2RpYy9zZWN1cml0eS81MDAuaXBmd2Rl bmllZAkod29ya2luZyBjb3B5KQpAQCAtMjcsMjcgKzI3LDI0IEBACiAjICRGcmVlQlNEJAogIwog Ci0jIElmIHRoZXJlIGlzIGEgZ2xvYmFsIHN5c3RlbSBjb25maWd1cmF0aW9uIGZpbGUsIHN1Y2sg aXQgaW4uCi0jCi1pZiBbIC1yIC9ldGMvZGVmYXVsdHMvcGVyaW9kaWMuY29uZiBdCi10aGVuCi0g ICAgLiAvZXRjL2RlZmF1bHRzL3BlcmlvZGljLmNvbmYKLSAgICBzb3VyY2VfcGVyaW9kaWNfY29u ZnMKLWZpCi0KKy4gL2V0Yy9wZXJpb2RpYy5zdWJyCiAuIC9ldGMvcGVyaW9kaWMvc2VjdXJpdHkv c2VjdXJpdHkuZnVuY3Rpb25zCiAKIHJjPTAKIAotY2FzZSAiJGRhaWx5X3N0YXR1c19zZWN1cml0 eV9pcGZ3ZGVuaWVkX2VuYWJsZSIgaW4KLSAgICBbWXldW0VlXVtTc10pCi0JVE1QPWBta3RlbXAg LXQgc2VjdXJpdHlgCi0JaWYgaXBmdyAtYSBsaXN0IDI+L2Rldi9udWxsIHwgZWdyZXAgImRlbnl8 cmVzZXR8dW5yZWFjaCIgPiAke1RNUH07IHRoZW4KLQkgIGNoZWNrX2RpZmYgbmV3X29ubHkgaXBm dyAke1RNUH0gIiR7aG9zdH0gaXBmdyBkZW5pZWQgcGFja2V0czoiCitpZiBjaGVja3llc25vIGRh aWx5X3N0YXR1c19zZWN1cml0eV9pcGZ3ZGVuaWVkX2VuYWJsZTsgdGhlbgorCWlmIFRNUD0kKG1r dGVtcCAtdCBzZWN1cml0eSk7IHRoZW4KKwkJaWYgaXBmdyAtYSBsaXN0IDI+L2Rldi9udWxsIHwg ZWdyZXAgImRlbnl8cmVzZXR8dW5yZWFjaCIgPiAke1RNUH07IHRoZW4KKwkJCWNoZWNrX2RpZmYg bmV3X29ubHkgaXBmdyAke1RNUH0gXAorCQkJICAgICIke2hvc3R9IGlwZncgZGVuaWVkIHBhY2tl dHM6IgorCQkJcmM9JD8KKwkJZWxzZQorCQkJcmM9MQorCQlmaQorCQlybSAtZiAke1RNUH0KKwll bHNlCisJCXJjPTMKIAlmaQotCXJjPSQ/Ci0Jcm0gLWYgJHtUTVB9OzsKLSAgICAqKQlyYz0wOzsK LWVzYWMKK2ZpCiAKIGV4aXQgJHJjCkluZGV4OiBldGMvcGVyaW9kaWMvc2VjdXJpdHkvMTAwLmNo a3NldHVpZAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09Ci0tLSBldGMvcGVyaW9kaWMvc2VjdXJpdHkvMTAwLmNoa3NldHVp ZAkocmV2aXNpb24gMjM2MTY0KQorKysgZXRjL3BlcmlvZGljL3NlY3VyaXR5LzEwMC5jaGtzZXR1 aWQJKHdvcmtpbmcgY29weSkKQEAgLTI3LDIwICsyNywxMiBAQAogIyAkRnJlZUJTRCQKICMKIAot IyBJZiB0aGVyZSBpcyBhIGdsb2JhbCBzeXN0ZW0gY29uZmlndXJhdGlvbiBmaWxlLCBzdWNrIGl0 IGluLgotIwotaWYgWyAtciAvZXRjL2RlZmF1bHRzL3BlcmlvZGljLmNvbmYgXQotdGhlbgotICAg IC4gL2V0Yy9kZWZhdWx0cy9wZXJpb2RpYy5jb25mCi0gICAgc291cmNlX3BlcmlvZGljX2NvbmZz Ci1maQotCisuIC9ldGMvcGVyaW9kaWMuc3VicgogLiAvZXRjL3BlcmlvZGljL3NlY3VyaXR5L3Nl Y3VyaXR5LmZ1bmN0aW9ucwogCiByYz0wCiAKLWNhc2UgIiRkYWlseV9zdGF0dXNfc2VjdXJpdHlf Y2hrc2V0dWlkX2VuYWJsZSIgaW4KLSAgICBbWXldW0VlXVtTc10pCitpZiBjaGVja3llc25vIGRh aWx5X3N0YXR1c19zZWN1cml0eV9jaGtzZXR1aWRfZW5hYmxlOyB0aGVuCiAJZWNobyAiIgogCWVj aG8gJ0NoZWNraW5nIHNldHVpZCBmaWxlcyBhbmQgZGV2aWNlczonCiAJTVA9YG1vdW50IC10IHVm cyx6ZnMgfCBhd2sgJyQwICF+IC9ubyhzdWlkfGV4ZWMpLyB7IHByaW50ICQzIH0nYApAQCAtNDks MTAgKzQxLDYgQEAKIAkgICAgXCggLXBlcm0gLXUrcyAtb3IgLXBlcm0gLWcrcyBcKSAtZXhlYyBs cyAtbGlUZCBce1x9IFwrIHwKIAljaGVja19kaWZmIHNldHVpZCAtICIke2hvc3R9IHNldHVpZCBk aWZmczoiCiAJcmM9JD8KLQk7OwotICAgICopCi0JcmM9MAotCTs7Ci1lc2FjCitmaQogCiBleGl0 ICRyYwpJbmRleDogZXRjL3BlcmlvZGljL3NlY3VyaXR5LzUyMC5wZmRlbmllZAo9PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 Ci0tLSBldGMvcGVyaW9kaWMvc2VjdXJpdHkvNTIwLnBmZGVuaWVkCShyZXZpc2lvbiAyMzYxNjQp CisrKyBldGMvcGVyaW9kaWMvc2VjdXJpdHkvNTIwLnBmZGVuaWVkCSh3b3JraW5nIGNvcHkpCkBA IC0yNywyNyArMjcsMzIgQEAKICMgJEZyZWVCU0QkCiAjCiAKLSMgSWYgdGhlcmUgaXMgYSBnbG9i YWwgc3lzdGVtIGNvbmZpZ3VyYXRpb24gZmlsZSwgc3VjayBpdCBpbi4KLSMKLWlmIFsgLXIgL2V0 Yy9kZWZhdWx0cy9wZXJpb2RpYy5jb25mIF0KLXRoZW4KLSAgICAuIC9ldGMvZGVmYXVsdHMvcGVy aW9kaWMuY29uZgotICAgIHNvdXJjZV9wZXJpb2RpY19jb25mcwotZmkKLQorLiAvZXRjL3Blcmlv ZGljLnN1YnIKIC4gL2V0Yy9wZXJpb2RpYy9zZWN1cml0eS9zZWN1cml0eS5mdW5jdGlvbnMKIAog cmM9MAogCi1jYXNlICIkZGFpbHlfc3RhdHVzX3NlY3VyaXR5X3BmZGVuaWVkX2VuYWJsZSIgaW4K LSAgICBbWXldW0VlXVtTc10pCi0JVE1QPWBta3RlbXAgLXQgc2VjdXJpdHlgCi0JaWYgcGZjdGwg LXNyIC12IDI+L2Rldi9udWxsIHwgbmF3ayAne2lmICgvXmJsb2NrLykge2J1Zj0kMDsgZ2V0bGlu ZTsgZ3N1YigiICsiLCIgIiwkMCk7IHByaW50IGJ1ZiQwO30gfScgPiAke1RNUH07IHRoZW4KLQkg IGNoZWNrX2RpZmYgbmV3X29ubHkgcGYgJHtUTVB9ICIke2hvc3R9IHBmIGRlbmllZCBwYWNrZXRz OiIKK2lmIGNoZWNreWVzbm8gZGFpbHlfc3RhdHVzX3NlY3VyaXR5X3BmZGVuaWVkX2VuYWJsZTsg dGhlbgorCWlmIFRNUD0kKG1rdGVtcCAtdCBzZWN1cml0eSk7IHRoZW4KKwkJcGZjdGwgLXNyIC12 IDI+L2Rldi9udWxsIHwgXAorCQkgICAgbmF3ayAneworCQkJaWYgKC9eYmxvY2svKSB7CisJCQkJ YnVmPSQwOworCQkJCWdldGxpbmU7CisJCQkJZ3N1YigiICsiLCIgIiwkMCk7CisJCQkJcHJpbnQg YnVmJDA7CisJCQl9CisJCX0nID4gJHtUTVB9CisJCWlmIFsgJD8gLWVxIDAgXTsgdGhlbgorCQkJ Y2hlY2tfZGlmZiBuZXdfb25seSBwZiAke1RNUH0gIiR7aG9zdH0gcGYgZGVuaWVkIHBhY2tldHM6 IgorCQkJcmM9JD8KKwkJZWxzZQorCQkJcmM9MQorCQlmaQorCQlybSAtZiAke1RNUH0KKwllbHNl CisJCXJjPTMKIAlmaQotCXJjPSQ/Ci0Jcm0gLWYgJHtUTVB9OzsKLSAgICAqKQlyYz0wOzsKLWVz YWMKK2ZpCiAKIGV4aXQgJHJjCkluZGV4OiBldGMvcGVyaW9kaWMvc2VjdXJpdHkvMzAwLmNoa3Vp ZDAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PQotLS0gZXRjL3BlcmlvZGljL3NlY3VyaXR5LzMwMC5jaGt1aWQwCShyZXZp c2lvbiAyMzYxNjQpCisrKyBldGMvcGVyaW9kaWMvc2VjdXJpdHkvMzAwLmNoa3VpZDAJKHdvcmtp bmcgY29weSkKQEAgLTI3LDI1ICsyNywxOCBAQAogIyAkRnJlZUJTRCQKICMKIAorLiAvZXRjL3Bl cmlvZGljLnN1YnIKIAotIyBJZiB0aGVyZSBpcyBhIGdsb2JhbCBzeXN0ZW0gY29uZmlndXJhdGlv biBmaWxlLCBzdWNrIGl0IGluLgotIwotaWYgWyAtciAvZXRjL2RlZmF1bHRzL3BlcmlvZGljLmNv bmYgXQotdGhlbgotICAgIC4gL2V0Yy9kZWZhdWx0cy9wZXJpb2RpYy5jb25mCi0gICAgc291cmNl X3BlcmlvZGljX2NvbmZzCi1maQorcmM9MAogCi1jYXNlICIkZGFpbHlfc3RhdHVzX3NlY3VyaXR5 X2Noa3VpZDBfZW5hYmxlIiBpbgotICAgIFtZeV1bRWVdW1NzXSkKK2lmIGNoZWNreWVzbm8gZGFp bHlfc3RhdHVzX3NlY3VyaXR5X2Noa3VpZDBfZW5hYmxlOyB0aGVuCiAJZWNobyAiIgogCWVjaG8g J0NoZWNraW5nIGZvciB1aWRzIG9mIDA6JwogCW49JChhd2sgLUY6ICcvXiMvIHtuZXh0fSAkMz09 MCB7cHJpbnQgJDEsJDN9JyAvZXRjL21hc3Rlci5wYXNzd2QgfAogCXRlZSAvZGV2L3N0ZGVyciB8 CiAJc2VkIC1lICcvXnJvb3QgMCQvZCcgLWUgJy9edG9vciAwJC9kJyB8CiAJd2MgLWwpCi0JWyAk biAtZ3QgMCBdICYmIHJjPTEgfHwgcmM9MDs7Ci0gICAgKikJcmM9MDs7Ci1lc2FjCisJWyAkbiAt Z3QgMCBdICYmIHJjPTEKK2ZpCiAKLWV4aXQgIiRyYyIKK2V4aXQgJHJjCkluZGV4OiBldGMvcGVy aW9kaWMvc2VjdXJpdHkvNzAwLmtlcm5lbG1zZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBldGMvcGVyaW9kaWMv c2VjdXJpdHkvNzAwLmtlcm5lbG1zZwkocmV2aXNpb24gMjM2MTY0KQorKysgZXRjL3BlcmlvZGlj L3NlY3VyaXR5LzcwMC5rZXJuZWxtc2cJKHdvcmtpbmcgY29weSkKQEAgLTMwLDI0ICszMCwxNSBA QAogIyBTaG93IGtlcm5lbCBsb2cgbWVzc2FnZXMKICMKIAotIyBJZiB0aGVyZSBpcyBhIGdsb2Jh bCBzeXN0ZW0gY29uZmlndXJhdGlvbiBmaWxlLCBzdWNrIGl0IGluLgotIwotaWYgWyAtciAvZXRj L2RlZmF1bHRzL3BlcmlvZGljLmNvbmYgXQotdGhlbgotICAgIC4gL2V0Yy9kZWZhdWx0cy9wZXJp b2RpYy5jb25mCi0gICAgc291cmNlX3BlcmlvZGljX2NvbmZzCi1maQotCisuIC9ldGMvcGVyaW9k aWMuc3VicgogLiAvZXRjL3BlcmlvZGljL3NlY3VyaXR5L3NlY3VyaXR5LmZ1bmN0aW9ucwogCiBy Yz0wCiAKLWNhc2UgIiRkYWlseV9zdGF0dXNfc2VjdXJpdHlfa2VybmVsbXNnX2VuYWJsZSIgaW4K LSAgICBbWXldW0VlXVtTc10pCitpZiBjaGVja3llc25vIGRhaWx5X3N0YXR1c19zZWN1cml0eV9r ZXJuZWxtc2dfZW5hYmxlOyB0aGVuCiAJZG1lc2cgMj4vZGV2L251bGwgfAogCSAgICBjaGVja19k aWZmIG5ld19vbmx5IGRtZXNnIC0gIiR7aG9zdH0ga2VybmVsIGxvZyBtZXNzYWdlczoiCi0JcmM9 JD87OwotICAgICopCXJjPTA7OwotZXNhYworCXJjPSQ/CitmaQogCiBleGl0ICRyYwpJbmRleDog ZXRjL3BlcmlvZGljL3NlY3VyaXR5LzQ2MC5jaGtwb3J0c3VtCj09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGV0Yy9w ZXJpb2RpYy9zZWN1cml0eS80NjAuY2hrcG9ydHN1bQkocmV2aXNpb24gMjM2MTY0KQorKysgZXRj L3BlcmlvZGljL3NlY3VyaXR5LzQ2MC5jaGtwb3J0c3VtCSh3b3JraW5nIGNvcHkpCkBAIC0yNyw0 MiArMjcsNDAgQEAKICMgJEZyZWVCU0QkCiAjCiAKLWlmIFsgLXIgL2V0Yy9kZWZhdWx0cy9wZXJp b2RpYy5jb25mIF0KLXRoZW4KLSAgICAuIC9ldGMvZGVmYXVsdHMvcGVyaW9kaWMuY29uZgotICAg IHNvdXJjZV9wZXJpb2RpY19jb25mcwotZmkKLQorLiAvZXRjL3BlcmlvZGljLnN1YnIKIC4gL2V0 Yy9wZXJpb2RpYy9zZWN1cml0eS9zZWN1cml0eS5mdW5jdGlvbnMKIAogcmM9MAogCi1lY2hvICIi Ci1lY2hvICdDaGVja2luZyBmb3IgcG9ydHMgd2l0aCBtaXNtYXRjaGVkIGNoZWNrc3VtczonCi0K LWNhc2UgIiR7ZGFpbHlfc3RhdHVzX3NlY3VyaXR5X2Noa3BvcnRzdW1fZW5hYmxlfSIgaW4KLQlb WXldW0VlXVtTc10pCi0Jc2V0IC1mCi0JcGtnX2luZm8gLWdhIDI+L2Rldi9udWxsIHwgXAotCXdo aWxlIElGUz0gcmVhZCAtciBsaW5lOyBkbwotCQlzZXQgLS0gJGxpbmUKLQkJY2FzZSAkMSBpbgor aWYgY2hlY2t5ZXNubyBkYWlseV9zdGF0dXNfc2VjdXJpdHlfY2hrcG9ydHN1bV9lbmFibGU7IHRo ZW4KKwlpZiBUTVA9JChta3RlbXAgLXQgY2hrcG9ydHN1bSk7IHRoZW4KKwkJZWNobyAiIgorCQll Y2hvICdDaGVja2luZyBmb3IgcG9ydHMgd2l0aCBtaXNtYXRjaGVkIGNoZWNrc3VtczonCisJCXNl dCAtZgorCQlwa2dfaW5mbyAtZ2EgMj4vZGV2L251bGwgfCBcCisJCXdoaWxlIElGUz0gcmVhZCAt ciBsaW5lOyBkbworCQkJc2V0IC0tICRsaW5lCisJCQljYXNlICQxIGluCiAJCQlJbmZvcm1hdGlv bikKLQkJCWNhc2UgJDIgaW4KKwkJCQljYXNlICQyIGluCiAJCQkJZm9yKSBuYW1lPSIkezMlJTp9 IiA7OwogCQkJCSopIG5hbWU9Jz8/JyA7OwotCQkJZXNhYwotCQkJOzsKKwkJCQllc2FjCisJCQkJ OzsKIAkJCU1pc21hdGNoZWR8JycpIDs7CiAJCQkqKSBbIC1uICIke25hbWV9IiBdICYmCiAJCQkJ ZWNobyAiJHtuYW1lfTogJHtsaW5lJSUgZmFpbHMgdGhlIG9yaWdpbmFsIE1ENSBjaGVja3N1bX0i Ci0JCQk7OwotCQllc2FjCi0JZG9uZQotCTs7Ci0JKikKLQlyYz0wCi0JOzsKLWVzYWMKKwkJCQk7 OworCQkJZXNhYworCQlkb25lID4gJFRNUAorCQlpZiBbICQod2MgLWwgJFRNUCkgLWd0IDAgXTsg dGhlbgorCQkJY2F0ICRUTVAKKwkJCXJjPTEKKwkJZmkKKwkJcm0gLWYgJFRNUAorCWVsc2UKKwkJ cmM9MworCWZpCitmaQogCiBleGl0ICRyYwpJbmRleDogZXRjL3BlcmlvZGljL3NlY3VyaXR5LzQx MC5sb2dpbmNoZWNrCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGV0Yy9wZXJpb2RpYy9zZWN1cml0eS80MTAubG9n aW5jaGVjawkocmV2aXNpb24gMjM2MTY0KQorKysgZXRjL3BlcmlvZGljL3NlY3VyaXR5LzQxMC5s b2dpbmNoZWNrCSh3b3JraW5nIGNvcHkpCkBAIC0yNywyNiArMjcsMTYgQEAKICMgJEZyZWVCU0Qk CiAjCiAKLSMgSWYgdGhlcmUgaXMgYSBnbG9iYWwgc3lzdGVtIGNvbmZpZ3VyYXRpb24gZmlsZSwg c3VjayBpdCBpbi4KLSMKLWlmIFsgLXIgL2V0Yy9kZWZhdWx0cy9wZXJpb2RpYy5jb25mIF0KLXRo ZW4KLSAgICAuIC9ldGMvZGVmYXVsdHMvcGVyaW9kaWMuY29uZgotICAgIHNvdXJjZV9wZXJpb2Rp Y19jb25mcwotZmkKKy4gL2V0Yy9wZXJpb2RpYy5zdWJyCiAKLWNhc2UgIiRkYWlseV9zdGF0dXNf c2VjdXJpdHlfbG9naW5jaGVja19lbmFibGUiIGluCi0gICAgW1l5XVtFZV1bU3NdKQorcmM9MAor CitpZiBjaGVja3llc25vIGRhaWx5X3N0YXR1c19zZWN1cml0eV9sb2dpbmNoZWNrX2VuYWJsZTsg dGhlbgogCWVjaG8gIiIKIAllY2hvICdDaGVja2luZyBsb2dpbi5jb25mIHBlcm1pc3Npb25zOicK LQlpZiBbIC1HIC9ldGMvbG9naW4uY29uZiAtYSAtTyAvZXRjL2xvZ2luLmNvbmYgXTsgdGhlbgot CSAgICBuPTAKLQllbHNlCi0JICAgIGVjaG8gIkJhZCBvd25lcnNoaXAgb2YgL2V0Yy9sb2dpbi5j b25mIgotCSAgICBuPTEKKwlpZiAhIFsgLUcgL2V0Yy9sb2dpbi5jb25mIC1hIC1PIC9ldGMvbG9n aW4uY29uZiBdOyB0aGVuCisJCWVyciAxICJCYWQgb3duZXJzaGlwIG9mIC9ldGMvbG9naW4uY29u ZiIKIAlmaQotCVsgJG4gLWd0IDAgXSAmJiByYz0xIHx8IHJjPTA7OwotICAgICopCXJjPTA7Owot ZXNhYworZmkKIAotZXhpdCAiJHJjIgorZXhpdCAkcmMKSW5kZXg6IGV0Yy9wZXJpb2RpYy9zZWN1 cml0eS84MDAubG9naW5mYWlsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGV0Yy9wZXJpb2RpYy9zZWN1cml0eS84 MDAubG9naW5mYWlsCShyZXZpc2lvbiAyMzYxNjQpCisrKyBldGMvcGVyaW9kaWMvc2VjdXJpdHkv ODAwLmxvZ2luZmFpbAkod29ya2luZyBjb3B5KQpAQCAtMzAsMzkgKzMwLDIwIEBACiAjIFNob3cg bG9naW4gZmFpbHVyZXMKICMKIAotIyBJZiB0aGVyZSBpcyBhIGdsb2JhbCBzeXN0ZW0gY29uZmln dXJhdGlvbiBmaWxlLCBzdWNrIGl0IGluLgotIwotaWYgWyAtciAvZXRjL2RlZmF1bHRzL3Blcmlv ZGljLmNvbmYgXQotdGhlbgotICAgIC4gL2V0Yy9kZWZhdWx0cy9wZXJpb2RpYy5jb25mCi0gICAg c291cmNlX3BlcmlvZGljX2NvbmZzCi1maQorLiAvZXRjL3BlcmlvZGljLnN1YnIKIAogTE9HPSIk e2RhaWx5X3N0YXR1c19zZWN1cml0eV9sb2dkaXJ9IgogCityYz0wCisKIHllc3RlcmRheT1gZGF0 ZSAtdi0xZCAiKyViICVlICJgCiAKLWNhdG1zZ3MoKSB7Ci0JZmluZCAke0xPR30gLW5hbWUgJ2F1 dGgubG9nLionIC1tdGltZSAtMiB8Ci0JICAgIHNvcnQgLXQuIC1yIC1uIC1rIDIsMiB8Ci0JICAg IHdoaWxlIHJlYWQgZgotCSAgICBkbwotCQljYXNlICRmIGluCi0JCSAgICAqLmd6KQl6Y2F0IC1m ICRmOzsKLQkJICAgICouYnoyKQliemNhdCAtZiAkZjs7Ci0JCWVzYWMKLQkgICAgZG9uZQotCVsg LWYgJHtMT0d9L2F1dGgubG9nIF0gJiYgY2F0ICRMT0cvYXV0aC5sb2cKLX0KLQotY2FzZSAiJGRh aWx5X3N0YXR1c19zZWN1cml0eV9sb2dpbmZhaWxfZW5hYmxlIiBpbgotICAgIFtZeV1bRWVdW1Nz XSkKK2lmIGNoZWNreWVzbm8gZGFpbHlfc3RhdHVzX3NlY3VyaXR5X2xvZ2luZmFpbF9lbmFibGU7 IHRoZW4KIAllY2hvICIiCiAJZWNobyAiJHtob3N0fSBsb2dpbiBmYWlsdXJlczoiCi0Jbj0kKGNh dG1zZ3MgfCBlZ3JlcCAtaWEgIl4keWVzdGVyZGF5Lio6IC4qKGZhaWx8aW52YWxpZHxiYWR8aWxs ZWdhbCkiIHwKKwluPSQoY2F0bG9ncyAkTE9HIGF1dGggfCBlZ3JlcCAtaWEgIl4keWVzdGVyZGF5 Lio6IC4qKGZhaWx8aW52YWxpZHxiYWR8aWxsZWdhbCkiIHwKIAkgICAgdGVlIC9kZXYvc3RkZXJy IHwgd2MgLWwpCi0JWyAkbiAtZ3QgMCBdICYmIHJjPTEgfHwgcmM9MDs7Ci0gICAgKikJcmM9MDs7 Ci1lc2FjCisJWyAkbiAtZ3QgMCBdICYmIHJjPTEKK2ZpCiAKIGV4aXQgJHJjCkluZGV4OiBldGMv cGVyaW9kaWMvc2VjdXJpdHkvMjAwLmNoa21vdW50cwo9PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBldGMvcGVyaW9k aWMvc2VjdXJpdHkvMjAwLmNoa21vdW50cwkocmV2aXNpb24gMjM2MTY0KQorKysgZXRjL3Blcmlv ZGljL3NlY3VyaXR5LzIwMC5jaGttb3VudHMJKHdvcmtpbmcgY29weSkKQEAgLTMwLDMzICszMCwy NyBAQAogIyBTaG93IGNoYW5nZXMgaW4gdGhlIHdheSBmaWxlc3lzdGVtcyBhcmUgbW91bnRlZAog IwogCi0jIElmIHRoZXJlIGlzIGEgZ2xvYmFsIHN5c3RlbSBjb25maWd1cmF0aW9uIGZpbGUsIHN1 Y2sgaXQgaW4uCi0jCi1pZiBbIC1yIC9ldGMvZGVmYXVsdHMvcGVyaW9kaWMuY29uZiBdCi10aGVu Ci0gICAgLiAvZXRjL2RlZmF1bHRzL3BlcmlvZGljLmNvbmYKLSAgICBzb3VyY2VfcGVyaW9kaWNf Y29uZnMKLWZpCi0KKy4gL2V0Yy9wZXJpb2RpYy5zdWJyCiAuIC9ldGMvcGVyaW9kaWMvc2VjdXJp dHkvc2VjdXJpdHkuZnVuY3Rpb25zCiAKIGlnbm9yZT0iJHtkYWlseV9zdGF0dXNfc2VjdXJpdHlf Y2hrbW91bnRzX2lnbm9yZX0iCisKIHJjPTAKIAotY2FzZSAiJGRhaWx5X3N0YXR1c19zZWN1cml0 eV9jaGttb3VudHNfZW5hYmxlIiBpbgotICAgIFtZeV1bRWVdW1NzXSkKLQljYXNlICIkZGFpbHlf c3RhdHVzX3NlY3VyaXR5X25vYW1kIiBpbgotCSAgICBbWXldW0VlXVtTc10pCitpZiBjaGVja3ll c25vIGRhaWx5X3N0YXR1c19zZWN1cml0eV9jaGttb3VudHNfZW5hYmxlOyB0aGVuCisJaWYgY2hl Y2t5ZXNubyBkYWlseV9zdGF0dXNfc2VjdXJpdHlfbm9hbWQ7IHRoZW4KIAkJaWdub3JlPSIke2ln bm9yZX18XmFtZDoiCi0JZXNhYwotCVsgLW4gIiRpZ25vcmUiIF0gJiYgY21kPSJlZ3JlcCAtdiAk e2lnbm9yZSN8fSIgfHwgY21kPWNhdAotCWlmICEgWyAtZiAvZXRjL2ZzdGFiIF07IHRoZW4KKwlm aQorCWlmIFsgLW4gIiRpZ25vcmUiIF07IHRoZW4KKwkJY21kPSJlZ3JlcCAtdiAke2lnbm9yZSN8 fSIKKwllbHNlCisJCWNtZD1jYXQKKwlmaQorCWlmIFsgISAtZiAvZXRjL2ZzdGFiIF07IHRoZW4K IAkJZXhwb3J0IFBBVEhfRlNUQUI9L2Rldi9udWxsCiAJZmkKIAltb3VudCAtcCB8IHNvcnQgfCAk e2NtZH0gfAogCSAgY2hlY2tfZGlmZiBtb3VudCAtICIke2hvc3R9IGNoYW5nZXMgaW4gbW91bnRl ZCBmaWxlc3lzdGVtczoiCi0JcmM9JD87OwotICAgICopCXJjPTA7OwotZXNhYwotCi1leGl0ICIk cmMiCisJcmM9JD8KK2ZpCitleGl0ICRyYwpJbmRleDogZXRjL3BlcmlvZGljL3NlY3VyaXR5LzU1 MC5pcGZ3bGltaXQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PQotLS0gZXRjL3BlcmlvZGljL3NlY3VyaXR5LzU1MC5pcGZ3 bGltaXQJKHJldmlzaW9uIDIzNjE2NCkKKysrIGV0Yy9wZXJpb2RpYy9zZWN1cml0eS81NTAuaXBm d2xpbWl0CSh3b3JraW5nIGNvcHkpCkBAIC0zMCwzOSArMzAsMzMgQEAKICMgU2hvdyBpcGZ3IHJ1 bGVzIHdoaWNoIGhhdmUgcmVhY2hlZCB0aGUgbG9nIGxpbWl0CiAjCiAKLSMgSWYgdGhlcmUgaXMg YSBnbG9iYWwgc3lzdGVtIGNvbmZpZ3VyYXRpb24gZmlsZSwgc3VjayBpdCBpbi4KLSMKLWlmIFsg LXIgL2V0Yy9kZWZhdWx0cy9wZXJpb2RpYy5jb25mIF0KLXRoZW4KLSAgICAuIC9ldGMvZGVmYXVs dHMvcGVyaW9kaWMuY29uZgotICAgIHNvdXJjZV9wZXJpb2RpY19jb25mcwotZmkKKy4gL2V0Yy9w ZXJpb2RpYy5zdWJyCiAKIHJjPTAKIAotY2FzZSAiJGRhaWx5X3N0YXR1c19zZWN1cml0eV9pcGZ3 bGltaXRfZW5hYmxlIiBpbgotICAgIFtZeV1bRWVdW1NzXSkKK2lmIGNoZWNreWVzbm8gZGFpbHlf c3RhdHVzX3NlY3VyaXR5X2lwZndsaW1pdF9lbmFibGU7IHRoZW4KIAlJUEZXX1ZFUkJPU0U9YHN5 c2N0bCAtbiBuZXQuaW5ldC5pcC5mdy52ZXJib3NlIDI+IC9kZXYvbnVsbGAKLQlpZiBbICQ/IC1u ZSAwIF0gfHwgWyAiJElQRldfVkVSQk9TRSIgLWVxIDAgXTsgdGhlbgorCWlmIFsgJD8gLW5lIDAg LW8gIiRJUEZXX1ZFUkJPU0UiIC1lcSAwIF07IHRoZW4KIAkJZXhpdCAwCiAJZmkKLQlUTVA9YG1r dGVtcCAtdCBzZWN1cml0eWAKLQlpcGZ3IC1hIGxpc3QgfCBncmVwICIgbG9nICIgfCBcCi0JZ3Jl cCAnXltbOmRpZ2l0Ol1dXCtbWzpzcGFjZTpdXVwrW1s6ZGlnaXQ6XV1cKycgfCBcCi0JYXdrIFwK LQkJJ3tpZiAoJDYgPT0gImxvZ2Ftb3VudCIpIHsKLQkJCWlmICgkMiA+ICQ3KQotCQkJCXtwcmlu dCAkMH19Ci0JCX0nID4gJHtUTVB9CisJaWYgVE1QPWBta3RlbXAgLXQgc2VjdXJpdHlgOyB0aGVu CisJCWlwZncgLWEgbGlzdCB8IGdyZXAgIiBsb2cgIiB8IFwKKwkJZ3JlcCAnXltbOmRpZ2l0Ol1d XCtbWzpzcGFjZTpdXVwrW1s6ZGlnaXQ6XV1cKycgfCBcCisJCWF3ayBcCisJCQkne2lmICgkNiA9 PSAibG9nYW1vdW50IikgeworCQkJCWlmICgkMiA+ICQ3KQorCQkJCQl7cHJpbnQgJDB9fQorCQkJ fScgPiAke1RNUH0KIAotCWlmIFsgLXMgIiR7VE1QfSIgXTsgdGhlbgotCQlyYz0xCi0JCWVjaG8g IiIKLQkJZWNobyAnaXBmdyBsb2cgbGltaXQgcmVhY2hlZDonCi0JCWNhdCAke1RNUH0KKwkJaWYg WyAtcyAiJHtUTVB9IiBdOyB0aGVuCisJCQlyYz0xCisJCQllY2hvICIiCisJCQllY2hvICdpcGZ3 IGxvZyBsaW1pdCByZWFjaGVkOicKKwkJCWNhdCAke1RNUH0KKwkJZmkKKwkJcm0gLWYgJHtUTVB9 CisJZWxzZQorCQlyYz0zCiAJZmkKLQlybSAtZiAke1RNUH07OwotICAgICopCXJjPTA7OwotZXNh YwotCitmaQogZXhpdCAkcmMKSW5kZXg6IGV0Yy9wZXJpb2RpYy9zZWN1cml0eS9zZWN1cml0eS5m dW5jdGlvbnMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PQotLS0gZXRjL3BlcmlvZGljL3NlY3VyaXR5L3NlY3VyaXR5LmZ1 bmN0aW9ucwkocmV2aXNpb24gMjM2MTY0KQorKysgZXRjL3BlcmlvZGljL3NlY3VyaXR5L3NlY3Vy aXR5LmZ1bmN0aW9ucwkod29ya2luZyBjb3B5KQpAQCAtNzMsNiArNzMsNSBAQAogICAgIG12ICR7 dG1wZn0gJHtMT0d9LyR7bGFiZWx9LnRvZGF5IHx8IHJjPTMKICAgZmkKIAotICBybSAtZiAke3Rt cGZ9Ci0gIGV4aXQgJHtyY30KKyAgcmV0dXJuICR7cmN9CiB9CkluZGV4OiBldGMvcGVyaW9kaWMv c2VjdXJpdHkvNjEwLmlwZjZkZW5pZWQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gZXRjL3BlcmlvZGljL3NlY3Vy aXR5LzYxMC5pcGY2ZGVuaWVkCShyZXZpc2lvbiAyMzYxNjQpCisrKyBldGMvcGVyaW9kaWMvc2Vj dXJpdHkvNjEwLmlwZjZkZW5pZWQJKHdvcmtpbmcgY29weSkKQEAgLTI3LDI3ICsyNywyMyBAQAog IyAkRnJlZUJTRCQKICMKIAotIyBJZiB0aGVyZSBpcyBhIGdsb2JhbCBzeXN0ZW0gY29uZmlndXJh dGlvbiBmaWxlLCBzdWNrIGl0IGluLgotIwotaWYgWyAtciAvZXRjL2RlZmF1bHRzL3BlcmlvZGlj LmNvbmYgXQotdGhlbgotICAgIC4gL2V0Yy9kZWZhdWx0cy9wZXJpb2RpYy5jb25mCi0gICAgc291 cmNlX3BlcmlvZGljX2NvbmZzCi1maQotCisuIC9ldGMvcGVyaW9kaWMuc3VicgogLiAvZXRjL3Bl cmlvZGljL3NlY3VyaXR5L3NlY3VyaXR5LmZ1bmN0aW9ucwogCiByYz0wCiAKLWNhc2UgIiRkYWls eV9zdGF0dXNfc2VjdXJpdHlfaXBmNmRlbmllZF9lbmFibGUiIGluCi0gICAgW1l5XVtFZV1bU3Nd KQotCVRNUD1gbWt0ZW1wICR7VE1QRElSOi0vdG1wfS9zZWN1cml0eS5YWFhYWFhYWFhYYAotCWlm IGlwZnN0YXQgLW5oaW82IDI+L2Rldi9udWxsIHwgZ3JlcCBibG9jayA+ICR7VE1QfTsgdGhlbgot CSBjaGVja19kaWZmIG5ld19vbmx5IGlwZjYgJHtUTVB9ICIke2hvc3R9IGlwZjYgZGVuaWVkIHBh Y2tldHM6IgoraWYgY2hlY2t5ZXNubyBkYWlseV9zdGF0dXNfc2VjdXJpdHlfaXBmNmRlbmllZF9l bmFibGU7IHRoZW4KKwlpZiBUTVA9JChta3RlbXAgLXQgc2VjdXJpdHkpOyB0aGVuCisJCWlmIGlw ZnN0YXQgLW5oaW82IDI+L2Rldi9udWxsIHwgZ3JlcCBibG9jayA+ICR7VE1QfTsgdGhlbgorCQkJ Y2hlY2tfZGlmZiBuZXdfb25seSBpcGY2ICR7VE1QfSAiJHtob3N0fSBpcGY2IGRlbmllZCBwYWNr ZXRzOiIKKwkJCXJjPSQ/CisJCWVsc2UKKwkJCXJjPTEKKwkJZmkKKwkJcm0gLWYgJHtUTVB9CisJ ZWxzZQorCQlyYz0zCiAJZmkKLQlyYz0kPwotCXJtIC1mICR7VE1QfTs7Ci0gICAgKikJcmM9MDs7 Ci1lc2FjCitmaQogCiBleGl0ICRyYwpJbmRleDogZXRjL3BlcmlvZGljL3NlY3VyaXR5LzQwMC5w YXNzd2RsZXNzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT0KLS0tIGV0Yy9wZXJpb2RpYy9zZWN1cml0eS80MDAucGFzc3dk bGVzcwkocmV2aXNpb24gMjM2MTY0KQorKysgZXRjL3BlcmlvZGljL3NlY3VyaXR5LzQwMC5wYXNz d2RsZXNzCSh3b3JraW5nIGNvcHkpCkBAIC0yNywyMiArMjcsMTYgQEAKICMgJEZyZWVCU0QkCiAj CiAKLSMgSWYgdGhlcmUgaXMgYSBnbG9iYWwgc3lzdGVtIGNvbmZpZ3VyYXRpb24gZmlsZSwgc3Vj ayBpdCBpbi4KLSMKLWlmIFsgLXIgL2V0Yy9kZWZhdWx0cy9wZXJpb2RpYy5jb25mIF0KLXRoZW4K LSAgICAuIC9ldGMvZGVmYXVsdHMvcGVyaW9kaWMuY29uZgotICAgIHNvdXJjZV9wZXJpb2RpY19j b25mcwotZmkKKy4gL2V0Yy9wZXJpb2RpYy5zdWJyCiAKLWNhc2UgIiRkYWlseV9zdGF0dXNfc2Vj dXJpdHlfcGFzc3dkbGVzc19lbmFibGUiIGluCi0gICAgW1l5XVtFZV1bU3NdKQorcmM9MAorCitp ZiBjaGVja3llc25vIGRhaWx5X3N0YXR1c19zZWN1cml0eV9wYXNzd2RsZXNzX2VuYWJsZTsgdGhl bgogCWVjaG8gIiIKIAllY2hvICdDaGVja2luZyBmb3IgcGFzc3dvcmRsZXNzIGFjY291bnRzOicK IAluPSQoYXdrIC1GOiAnTkYgPiAxICYmICQxICF+IC9eWyMrLV0vICYmICQyPT0iIiB7cHJpbnQg JDB9JyAvZXRjL21hc3Rlci5wYXNzd2QgfAogCSAgICB0ZWUgL2Rldi9zdGRlcnIgfCB3YyAtbCkK LQlbICRuIC1ndCAwIF0gJiYgcmM9MSB8fCByYz0wOzsKLSAgICAqKQlyYz0wOzsKLWVzYWMKKwlb ICRuIC1ndCAwIF0gJiYgcmM9MQorZmkKIAotZXhpdCAiJHJjIgorZXhpdCAkcmMKSW5kZXg6IGV0 Yy9wZXJpb2RpYy9zZWN1cml0eS81MTAuaXBmZGVuaWVkCj09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIGV0Yy9wZXJp b2RpYy9zZWN1cml0eS81MTAuaXBmZGVuaWVkCShyZXZpc2lvbiAyMzYxNjQpCisrKyBldGMvcGVy aW9kaWMvc2VjdXJpdHkvNTEwLmlwZmRlbmllZAkod29ya2luZyBjb3B5KQpAQCAtMjcsMjcgKzI3 LDIzIEBACiAjICRGcmVlQlNEJAogIwogCi0jIElmIHRoZXJlIGlzIGEgZ2xvYmFsIHN5c3RlbSBj b25maWd1cmF0aW9uIGZpbGUsIHN1Y2sgaXQgaW4uCi0jCi1pZiBbIC1yIC9ldGMvZGVmYXVsdHMv cGVyaW9kaWMuY29uZiBdCi10aGVuCi0gICAgLiAvZXRjL2RlZmF1bHRzL3BlcmlvZGljLmNvbmYK LSAgICBzb3VyY2VfcGVyaW9kaWNfY29uZnMKLWZpCi0KKy4gL2V0Yy9wZXJpb2RpYy5zdWJyCiAu IC9ldGMvcGVyaW9kaWMvc2VjdXJpdHkvc2VjdXJpdHkuZnVuY3Rpb25zCiAKIHJjPTAKIAotY2Fz ZSAiJGRhaWx5X3N0YXR1c19zZWN1cml0eV9pcGZkZW5pZWRfZW5hYmxlIiBpbgotICAgIFtZeV1b RWVdW1NzXSkKLQlUTVA9YG1rdGVtcCAtdCBzZWN1cml0eWAKLQlpZiBpcGZzdGF0IC1uaGlvIDI+ L2Rldi9udWxsIHwgZ3JlcCBibG9jayA+ICR7VE1QfTsgdGhlbgotCSAgY2hlY2tfZGlmZiBuZXdf b25seSBpcGYgJHtUTVB9ICIke2hvc3R9IGlwZiBkZW5pZWQgcGFja2V0czoiCitpZiBjaGVja3ll c25vIGRhaWx5X3N0YXR1c19zZWN1cml0eV9pcGZkZW5pZWRfZW5hYmxlOyB0aGVuCisJaWYgVE1Q PSQobWt0ZW1wIC10IHNlY3VyaXR5KTsgdGhlbgorCQlpZiBpcGZzdGF0IC1uaGlvIDI+L2Rldi9u dWxsIHwgZ3JlcCBibG9jayA+ICR7VE1QfTsgdGhlbgorCQkJY2hlY2tfZGlmZiBuZXdfb25seSBp cGYgJHtUTVB9ICIke2hvc3R9IGlwZiBkZW5pZWQgcGFja2V0czoiCisJCQlyYz0kPworCQllbHNl CisJCQlyYz0xCisJCWZpCisJCXJtIC1mICR7VE1QfQorCWVsc2UKKwkJcmM9MwogCWZpCi0JcmM9 JD8KLQlybSAtZiAke1RNUH07OwotICAgICopCXJjPTA7OwotZXNhYworZmkKIAogZXhpdCAkcmMK SW5kZXg6IGV0Yy9wZXJpb2RpYy9zZWN1cml0eS8xMTAubmVnZ3JwcGVybQo9PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t LSBldGMvcGVyaW9kaWMvc2VjdXJpdHkvMTEwLm5lZ2dycHBlcm0JKHJldmlzaW9uIDIzNjE2NCkK KysrIGV0Yy9wZXJpb2RpYy9zZWN1cml0eS8xMTAubmVnZ3JwcGVybQkod29ya2luZyBjb3B5KQpA QCAtMjcsMTggKzI3LDExIEBACiAjICRGcmVlQlNEJAogIwogCi0jIElmIHRoZXJlIGlzIGEgZ2xv YmFsIHN5c3RlbSBjb25maWd1cmF0aW9uIGZpbGUsIHN1Y2sgaXQgaW4uCi0jCi1pZiBbIC1yIC9l dGMvZGVmYXVsdHMvcGVyaW9kaWMuY29uZiBdCi10aGVuCi0gICAgLiAvZXRjL2RlZmF1bHRzL3Bl cmlvZGljLmNvbmYKLSAgICBzb3VyY2VfcGVyaW9kaWNfY29uZnMKLWZpCisuIC9ldGMvcGVyaW9k aWMuc3VicgogCiByYz0wCiAKLWNhc2UgIiRkYWlseV9zdGF0dXNfc2VjdXJpdHlfbmVnZ3JwcGVy bV9lbmFibGUiIGluCi0gICAgW1l5XVtFZV1bU3NdKQoraWYgY2hlY2t5ZXNubyBkYWlseV9zdGF0 dXNfc2VjdXJpdHlfbmVnZ3JwcGVybV9lbmFibGU7IHRoZW4KIAllY2hvICIiCiAJZWNobyAnQ2hl Y2tpbmcgbmVnYXRpdmUgZ3JvdXAgcGVybWlzc2lvbnM6JwogCU1QPWBtb3VudCAtdCB1ZnMsemZz IHwgYXdrICckMCAhfiAvbm8oc3VpZHxleGVjKS8geyBwcmludCAkMyB9J2AKQEAgLTQ3LDggKzQw LDcgQEAKIAkgICAgXCggISAtcGVybSArMDIwIC1hbmQgLXBlcm0gKzAwMiBcKSAtb3IgXAogCSAg ICBcKCAhIC1wZXJtICswNDAgLWFuZCAtcGVybSArMDA0IFwpIFwpIFwKIAkgICAgLWV4ZWMgbHMg LWxpVGQgXHtcfSBcKyB8IHRlZSAvZGV2L3N0ZGVyciB8IHdjIC1sKQotCVsgJG4gLWd0IDAgXSAm JiByYz0xIHx8IHJjPTAKLQk7OwotZXNhYworCVsgJG4gLWd0IDAgXSAmJiByYz0xCitmaQogCiBl eGl0ICRyYwpJbmRleDogZXRjL3BlcmlvZGljL21vbnRobHkvOTk5LmxvY2FsCj09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K LS0tIGV0Yy9wZXJpb2RpYy9tb250aGx5Lzk5OS5sb2NhbAkocmV2aXNpb24gMjM2MTY0KQorKysg ZXRjL3BlcmlvZGljL21vbnRobHkvOTk5LmxvY2FsCSh3b3JraW5nIGNvcHkpCkBAIC0zLDE1ICsz LDEwIEBACiAjICRGcmVlQlNEJAogIwogCi0jIElmIHRoZXJlIGlzIGEgZ2xvYmFsIHN5c3RlbSBj b25maWd1cmF0aW9uIGZpbGUsIHN1Y2sgaXQgaW4uCi0jCi1pZiBbIC1yIC9ldGMvZGVmYXVsdHMv cGVyaW9kaWMuY29uZiBdCi10aGVuCi0gICAgLiAvZXRjL2RlZmF1bHRzL3BlcmlvZGljLmNvbmYK LSAgICBzb3VyY2VfcGVyaW9kaWNfY29uZnMKLWZpCisuIC9ldGMvcGVyaW9kaWMuY29uZgogCiBy Yz0wCisKIGZvciBzY3JpcHQgaW4gJG1vbnRobHlfbG9jYWwKIGRvCiAgICAgZWNobyAnJwpJbmRl eDogZXRjL3BlcmlvZGljL21vbnRobHkvMjAwLmFjY291bnRpbmcKPT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gZXRj L3BlcmlvZGljL21vbnRobHkvMjAwLmFjY291bnRpbmcJKHJldmlzaW9uIDIzNjE2NCkKKysrIGV0 Yy9wZXJpb2RpYy9tb250aGx5LzIwMC5hY2NvdW50aW5nCSh3b3JraW5nIGNvcHkpCkBAIC0zLDIw ICszLDEzIEBACiAjICRGcmVlQlNEJAogIwogCi0jIElmIHRoZXJlIGlzIGEgZ2xvYmFsIHN5c3Rl bSBjb25maWd1cmF0aW9uIGZpbGUsIHN1Y2sgaXQgaW4uCi0jCi1pZiBbIC1yIC9ldGMvZGVmYXVs dHMvcGVyaW9kaWMuY29uZiBdCi10aGVuCi0gICAgLiAvZXRjL2RlZmF1bHRzL3BlcmlvZGljLmNv bmYKLSAgICBzb3VyY2VfcGVyaW9kaWNfY29uZnMKLWZpCisuIC9ldGMvcGVyaW9kaWMuc3Vicgog Ci1vbGRtYXNrPSQodW1hc2spCityYz0wCisKIHVtYXNrIDA2NgotY2FzZSAiJG1vbnRobHlfYWNj b3VudGluZ19lbmFibGUiIGluCi0gICAgW1l5XVtFZV1bU3NdKQoraWYgY2hlY2t5ZXNubyBtb250 aGx5X2FjY291bnRpbmdfZW5hYmxlOyB0aGVuCiAJVz0vdmFyL2xvZy91dHgubG9nCi0JcmM9MAog CXJlbW92ZT1OTwogCWlmIFsgISAtZiAkVy4wIF0KIAl0aGVuCkBAIC0yOSwyMyArMjIsMjAgQEAK IAkJcmVtb3ZlPVlFUwogCQliemNhdCAkVy4wLmJ6MiA+ICRXLjAgfHwgcmM9MQogCSAgICBlbHNl Ci0JCWVjaG8gJyRtb250aGx5X2FjY291bnRpbmdfZW5hYmxlIGlzIHNldCBidXQnIFwKKwkJZXJy IDIgJyRtb250aGx5X2FjY291bnRpbmdfZW5hYmxlIGlzIHNldCBidXQnIFwKIAkJICAgICIkVy4w IGRvZXNuJ3QgZXhpc3QiCi0JCXJjPTIKIAkgICAgZmkKIAlmaQogCWlmIFsgJHJjIC1lcSAwIF0K IAl0aGVuCi0JICAgIGVjaG8gIiIKLQkgICAgZWNobyAiRG9pbmcgbG9naW4gYWNjb3VudGluZzoi Ci0KKwkgICAgaWYgY2hlY2t5ZXNubyBtb250aGx5X2FjY291bnRpbmdfdmVyYm9zZTsgdGhlbgor CQllY2hvICIiCisJCWVjaG8gIkRvaW5nIGxvZ2luIGFjY291bnRpbmc6IgorCSAgICBmaQogCSAg ICByYz0kKGFjIC1wIC13ICRXLjAgfCBzb3J0IC1uciAtayAyIHwgdGVlIC9kZXYvc3RkZXJyIHwg d2MgLWwpCiAJICAgIFsgJHJjIC1ndCAwIF0gJiYgcmM9MQogCWZpCi0JWyAkcmVtb3ZlID0gWUVT IF0gJiYgcm0gLWYgJFcuMDs7CisJWyAkcmVtb3ZlID0gWUVTIF0gJiYgcm0gLWYgJFcuMAorZmkK IAotICAgICopICByYz0wOzsKLWVzYWMKLQotdW1hc2sgJG9sZG1hc2sKIGV4aXQgJHJjCkluZGV4 OiBldGMvcGVyaW9kaWMuc3Vicgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBldGMvcGVyaW9kaWMuc3VicgkocmV2 aXNpb24gMCkKKysrIGV0Yy9wZXJpb2RpYy5zdWJyCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEs ODIgQEAKKyMhL2Jpbi9zaAorIyAkRnJlZUJTRCQKKyMKKyMgQ29weXJpZ2h0IChjKSAyMDEyIFRo ZSBGcmVlQlNEIFByb2plY3QuCisjIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisjCisjIFJlZGlzdHJp YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91 dAorIyBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93 aW5nIGNvbmRpdGlvbnMKKyMgYXJlIG1ldDoKKyMgMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyMgICAgbm90aWNlLCB0aGlz IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorIyAyLiBS ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv cHlyaWdodAorIyAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s bG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisjICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy IG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisjCisjIFRISVMgU09G VFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEZSRUVCU0QgUFJPSkVDVCBBTkQgQ09OVFJJQlVUT1JT CisjIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNM VURJTkcsIEJVVCBOT1QgTElNSVRFRAorIyBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBN RVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorIyBQVVJQT1NFIEFS RSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEZPVU5EQVRJT04gT1IgQ09OVFJJ QlVUT1JTCisjIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyMgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyMgU1VCU1RJVFVURSBHT09E UyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNT CisjIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElB QklMSVRZLCBXSEVUSEVSIElOCisjIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JU IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisjIEFSSVNJTkcgSU4gQU5ZIFdB WSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF CisjIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorIworIyBwZXJpb2RpYy5zdWJyCisjCWZ1 bmN0aW9ucyB1c2VkIGJ5IHBlcmlvZGljKDUpIHNjcmlwdHMKKyMKKworOiAke3JjdmFyX21hbnBh Z2U6PSdwZXJpb2RpYy5jb25mKDUpJ30KKworaWYgWyAteiAiJHtfcGVyaW9kaWNfc3Vicl9sb2Fk ZWR9IiBdOyB0aGVuCisKK19wZXJpb2RpY19zdWJyX2xvYWRlZD0iWUVTIgorCisjIElmIHRoZXJl IGlzIGEgZ2xvYmFsIHN5c3RlbSBjb25maWd1cmF0aW9uIGZpbGUsIHN1Y2sgaXQgaW4uCisjCitp ZiBbIC1yIC9ldGMvZGVmYXVsdHMvcGVyaW9kaWMuY29uZiBdOyB0aGVuCisJLiAvZXRjL2RlZmF1 bHRzL3BlcmlvZGljLmNvbmYKKwlzb3VyY2VfcGVyaW9kaWNfY29uZnMKK2ZpCisKKy4gL2V0Yy9y Yy5zdWJyCisKKyMgQ2F0IG91dCBhIFtjb21wcmVzc2VkXSBzZXQgb2YgbG9nKHMpLgorIworIyBQ YXJhbWV0ZXJzOgorIyAxIC0gbG9nIGRpcmVjdG9yeS4KKyMgMiAtIGxvZyBiYXNlbmFtZSwgZS5n LiBhdXRoLCBtZXNzYWdlcywgZXRjLgorY2F0bG9ncygpIHsKKwlsb2NhbCBfbG9nZGlyIF9sb2df YmFzZW5hbWUgcmMKKworCV9sb2dkaXI9IiQxIgorCV9sb2dfYmFzZW5hbWU9IiQyIgorCisJaWYg WyAhIC1kICIke19sb2dkaXI6LX0iIF07IHRoZW4KKwkJZXJyIDMgImxvZyBkaXJlY3Rvcnkgc3Bl Y2lmaWVkIC0gJHtfbG9nZGlyfSBkb2Vzbid0IGV4aXN0IgorCWVsaWYgWyAteiAiJHtfbG9nX2Jh c2VuYW1lOi19IiBdOyB0aGVuCisJCWVyciAzICJ5b3UgbXVzdCBzdXBwbHkgYSBub24temVybyBs ZW5ndGggbG9nIGJhc2VuYW1lIgorCWZpCisKKwkjIENhdCBvdXQgdGhlIGNvbXByZXNzZWQgbG9n cy4KKwlmaW5kICIke19sb2dkaXJ9IiAtbmFtZSAiJGxvZ19iYXNlbmFtZS4qIiAtbXRpbWUgLTIg fAorCSAgICBzb3J0IC10LiAtciAtbiAtayAyLDIgfAorCSAgICB3aGlsZSByZWFkIGYKKwkgICAg ZG8KKwkJY2FzZSAkZiBpbgorCQkqLmd6KQl6Y2F0IC1mICRmOzsKKwkJKi5iejIpCWJ6Y2F0IC1m ICRmOzsKKwkJZXNhYworCSAgICBkb25lCisJIyBDYXQgb3V0IHRoZSBvcmlnaW5hbCBsb2cuCisJ aWYgWyAtZiAiJF9sb2dkaXIvJF9sb2dfYmFzZW5hbWUiIF07IHRoZW4KKwkJY2F0ICIkX2xvZ2Rp ci8kX2xvZ19iYXNlbmFtZSIKKwlmaQorfQorCitmaSAjIFsgLXogIiR7X3BlcmlvZGljX3N1YnJf bG9hZGVkfSIgXQorCitfcGVyaW9kaWNfc3Vicl9sb2FkZWQ9OgoKUHJvcGVydHkgY2hhbmdlcyBv bjogZXRjL3BlcmlvZGljLnN1YnIKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3ZuOmV4ZWN1dGFibGUKIyMg LTAsMCArMSAjIworKgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIHByb3BlcnR5Cg== --f46d04478973948c0b04c10cea48--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAGH67wTbVBxhDa_v09Co18At%2B3HshYZ7BYe26b85sMH%2B6-pHig>