ZGlmZiAtLWdpdCBhL3J1bnRpbWUvYXV0b2xvYWQvcGhwY29tcGxldGUudmltIGIvcnVudGltZS9hdXRvbG9hZC9waHBjb21wbGV0ZS52aW0KaW5kZXggZGJjNDBmZC4uNmRjZGRmZCAxMDA2NDQKLS0tIGEvcnVudGltZS9hdXRvbG9hZC9waHBjb21wbGV0ZS52aW0KKysrIGIvcnVudGltZS9hdXRvbG9hZC9waHBjb21wbGV0ZS52aW0KQEAgLTMsNyArMyw3IEBACiAiIE1haW50YWluZXI6CUTDoXZpZCBTemFiw7MgKCBjb21wbGV4ODU3IEFUIGdtYWlsIERPVCBjb20gKQogIiBQcmV2aW91cyBNYWludGFpbmVyOglNaWtvbGFqIE1hY2hvd3NraSAoIG1pa21hY2ggQVQgd3AgRE9UIHBsICkKICIgVVJMOiBodHRwczovL2dpdGh1Yi5jb20vc2hhd25jcGx1cy9waHBjb21wbGV0ZS52aW0KLSIgTGFzdCBDaGFuZ2U6ICAyMDE1IEZlYiAyOAorIiBMYXN0IENoYW5nZTogIDIwMTUgQXByIDAyCiAiCiAiCU9QVElPTlM6CiAiCkBAIC0xNDEsNzEgKzE0MSw4MCBAQAogCQlpZiBhOmJhc2UgIT0gIiIKIAkJCWxldCBjb250ZXh0ID0gc3Vic3RpdHV0ZShjb250ZXh0LCAnXHMqWyRhLXpBLVpfMC05XHg3Zi1ceGZmXSokJywgJycsICcnKQogCQllbmQKKwllbHNlCisJCWxldCBjb250ZXh0ID0gJycKIAllbmQKIAotCWxldCBbY3VycmVudF9uYW1lc3BhY2UsIGltcG9ydHNdID0gcGhwY29tcGxldGUjR2V0Q3VycmVudE5hbWVTcGFjZShnZXRsaW5lKDAsIGxpbmUoJy4nKSkpCisJdHJ5CisJCWxldCB3aW5oZWlnaHQgPSB3aW5oZWlnaHQoMCkKKwkJbGV0IHdpbm5yID0gd2lubnIoKQogCi0JaWYgY29udGV4dCA9fj8gJ151c2VccycgfHwgY29udGV4dCA9PT8gJ3VzZScKLQkJcmV0dXJuIHBocGNvbXBsZXRlI0NvbXBsZXRlVXNlKGE6YmFzZSkKLQllbmRpZgorCQlsZXQgW2N1cnJlbnRfbmFtZXNwYWNlLCBpbXBvcnRzXSA9IHBocGNvbXBsZXRlI0dldEN1cnJlbnROYW1lU3BhY2UoZ2V0bGluZSgwLCBsaW5lKCcuJykpKQogCi0JaWYgY29udGV4dCA9fiAnXCgtPlx8OjpcKSQnCi0JCSIge3t7Ci0JCSIgR2V0IG5hbWUgb2YgdGhlIGNsYXNzCi0JCWxldCBjbGFzc25hbWUgPSBwaHBjb21wbGV0ZSNHZXRDbGFzc05hbWUobGluZSgnLicpLCBjb250ZXh0LCBjdXJyZW50X25hbWVzcGFjZSwgaW1wb3J0cykKKwkJaWYgY29udGV4dCA9fj8gJ151c2VccycgfHwgY29udGV4dCA9PT8gJ3VzZScKKwkJCXJldHVybiBwaHBjb21wbGV0ZSNDb21wbGV0ZVVzZShhOmJhc2UpCisJCWVuZGlmCiAKLQkJIiBHZXQgbG9jYXRpb24gb2YgY2xhc3MgZGVmaW5pdGlvbiwgd2UgaGF2ZSB0byBpdGVyYXRlIHRocm91Z2ggYWxsCi0JCWlmIGNsYXNzbmFtZSAhPSAnJwotCQkJaWYgY2xhc3NuYW1lID1+ICdcJwotCQkJCSIgc3BsaXQgdGhlIGxhc3QgXCBzZWdtZW50IGFzIGEgY2xhc3NuYW1lLCBldmVyeXRoaW5nIGVsc2UgaXMgdGhlIG5hbWVzcGFjZQotCQkJCWxldCBjbGFzc25hbWVfcGFydHMgPSBzcGxpdChjbGFzc25hbWUsICdcJykKLQkJCQlsZXQgbmFtZXNwYWNlID0gam9pbihjbGFzc25hbWVfcGFydHNbMDotMl0sICdcJykKLQkJCQlsZXQgY2xhc3NuYW1lID0gY2xhc3NuYW1lX3BhcnRzWy0xXQorCQlpZiBjb250ZXh0ID1+ICdcKC0+XHw6OlwpJCcKKwkJCSIge3t7CisJCQkiIEdldCBuYW1lIG9mIHRoZSBjbGFzcworCQkJbGV0IGNsYXNzbmFtZSA9IHBocGNvbXBsZXRlI0dldENsYXNzTmFtZShsaW5lKCcuJyksIGNvbnRleHQsIGN1cnJlbnRfbmFtZXNwYWNlLCBpbXBvcnRzKQorCisJCQkiIEdldCBsb2NhdGlvbiBvZiBjbGFzcyBkZWZpbml0aW9uLCB3ZSBoYXZlIHRvIGl0ZXJhdGUgdGhyb3VnaCBhbGwKKwkJCWlmIGNsYXNzbmFtZSAhPSAnJworCQkJCWlmIGNsYXNzbmFtZSA9fiAnXCcKKwkJCQkJIiBzcGxpdCB0aGUgbGFzdCBcIHNlZ21lbnQgYXMgYSBjbGFzc25hbWUsIGV2ZXJ5dGhpbmcgZWxzZSBpcyB0aGUgbmFtZXNwYWNlCisJCQkJCWxldCBjbGFzc25hbWVfcGFydHMgPSBzcGxpdChjbGFzc25hbWUsICdcJykKKwkJCQkJbGV0IG5hbWVzcGFjZSA9IGpvaW4oY2xhc3NuYW1lX3BhcnRzWzA6LTJdLCAnXCcpCisJCQkJCWxldCBjbGFzc25hbWUgPSBjbGFzc25hbWVfcGFydHNbLTFdCisJCQkJZWxzZQorCQkJCQlsZXQgbmFtZXNwYWNlID0gJ1wnCisJCQkJZW5kaWYKKwkJCQlsZXQgY2xhc3Nsb2NhdGlvbiA9IHBocGNvbXBsZXRlI0dldENsYXNzTG9jYXRpb24oY2xhc3NuYW1lLCBuYW1lc3BhY2UpCiAJCQllbHNlCi0JCQkJbGV0IG5hbWVzcGFjZSA9ICdcJworCQkJCWxldCBjbGFzc2xvY2F0aW9uID0gJycKIAkJCWVuZGlmCi0JCQlsZXQgY2xhc3Nsb2NhdGlvbiA9IHBocGNvbXBsZXRlI0dldENsYXNzTG9jYXRpb24oY2xhc3NuYW1lLCBuYW1lc3BhY2UpCisKKwkJCWlmIGNsYXNzbG9jYXRpb24gIT0gJycKKwkJCQlpZiBjbGFzc2xvY2F0aW9uID09ICdWSU1QSFBfQlVJTFRJTk9CSkVDVCcgJiYgaGFzX2tleShnOnBocF9idWlsdGluX2NsYXNzZXMsIHRvbG93ZXIoY2xhc3NuYW1lKSkKKwkJCQkJcmV0dXJuIHBocGNvbXBsZXRlI0NvbXBsZXRlQnVpbHRJbkNsYXNzKGNvbnRleHQsIGNsYXNzbmFtZSwgYTpiYXNlKQorCQkJCWVuZGlmCisKKwkJCQlpZiBmaWxlcmVhZGFibGUoY2xhc3Nsb2NhdGlvbikKKwkJCQkJbGV0IGNsYXNzZmlsZSA9IHJlYWRmaWxlKGNsYXNzbG9jYXRpb24pCisJCQkJCWxldCBjbGFzc2NvbnRlbnQgPSAnJworCQkJCQlsZXQgY2xhc3Njb250ZW50IC49ICJcbiIucGhwY29tcGxldGUjR2V0Q2xhc3NDb250ZW50cyhjbGFzc2xvY2F0aW9uLCBjbGFzc25hbWUpCisJCQkJCWxldCBzY2NvbnRlbnQgPSBzcGxpdChjbGFzc2NvbnRlbnQsICJcbiIpCisJCQkJCWxldCB2aXNpYmlsaXR5ID0gZXhwYW5kKCclOnAnKSA9PSBmbmFtZW1vZGlmeShjbGFzc2xvY2F0aW9uLCAnOnAnKSA/ICdwcml2YXRlJyA6ICdwdWJsaWMnCisKKwkJCQkJcmV0dXJuIHBocGNvbXBsZXRlI0NvbXBsZXRlVXNlckNsYXNzKGNvbnRleHQsIGE6YmFzZSwgc2Njb250ZW50LCB2aXNpYmlsaXR5KQorCQkJCWVuZGlmCisJCQllbmRpZgorCisJCQlyZXR1cm4gcGhwY29tcGxldGUjQ29tcGxldGVVbmtub3duQ2xhc3MoYTpiYXNlLCBjb250ZXh0KQorCQkJIiB9fX0KKwkJZWxzZWlmIGNvbnRleHQgPX4/ICdpbXBsZW1lbnRzJworCQkJcmV0dXJuIHBocGNvbXBsZXRlI0NvbXBsZXRlQ2xhc3NOYW1lKGE6YmFzZSwgWydpJ10sIGN1cnJlbnRfbmFtZXNwYWNlLCBpbXBvcnRzKQorCQllbHNlaWYgY29udGV4dCA9fj8gJ2V4dGVuZHNcc1wrLlwrJCcgJiYgYTpiYXNlID09ICcnCisJCQlyZXR1cm4gWydpbXBsZW1lbnRzJ10KKwkJZWxzZWlmIGNvbnRleHQgPX4/ICdleHRlbmRzJworCQkJbGV0IGtpbmRzID0gY29udGV4dCA9fj8gJ2NsYXNzXHMnID8gWydjJ10gOiBbJ2knXQorCQkJcmV0dXJuIHBocGNvbXBsZXRlI0NvbXBsZXRlQ2xhc3NOYW1lKGE6YmFzZSwga2luZHMsIGN1cnJlbnRfbmFtZXNwYWNlLCBpbXBvcnRzKQorCQllbHNlaWYgY29udGV4dCA9fj8gJ2NsYXNzIFthLXpBLVpfXHg3Zi1ceGZmXFxdW2EtekEtWl8wLTlceDdmLVx4ZmZcXF0qJworCQkJIiBzcGVjaWFsIGNhc2Ugd2hlbiB5b3UndmUgdHlwZWQgdGhlIGNsYXNzIGtleXdvcmQgYW5kIHRoZSBuYW1lIHRvbywgb25seSBleHRlbmRzIGFuZCBpbXBsZW1lbnRzIGFsbG93ZWQgdGhlcmUKKwkJCXJldHVybiBmaWx0ZXIoWydleHRlbmRzJywgJ2ltcGxlbWVudHMnXSwgJ3N0cmlkeCh2OnZhbCwgYTpiYXNlKSA9PSAwJykKKwkJZWxzZWlmIGNvbnRleHQgPX4/ICduZXcnCisJCQlyZXR1cm4gcGhwY29tcGxldGUjQ29tcGxldGVDbGFzc05hbWUoYTpiYXNlLCBbJ2MnXSwgY3VycmVudF9uYW1lc3BhY2UsIGltcG9ydHMpCisJCWVuZGlmCisKKwkJaWYgYTpiYXNlID1+ICdeXCQnCisJCQlyZXR1cm4gcGhwY29tcGxldGUjQ29tcGxldGVWYXJpYWJsZShhOmJhc2UpCiAJCWVsc2UKLQkJCWxldCBjbGFzc2xvY2F0aW9uID0gJycKKwkJCXJldHVybiBwaHBjb21wbGV0ZSNDb21wbGV0ZUdlbmVyYWwoYTpiYXNlLCBjdXJyZW50X25hbWVzcGFjZSwgaW1wb3J0cykKIAkJZW5kaWYKLQotCQlpZiBjbGFzc2xvY2F0aW9uICE9ICcnCi0JCQlpZiBjbGFzc2xvY2F0aW9uID09ICdWSU1QSFBfQlVJTFRJTk9CSkVDVCcgJiYgaGFzX2tleShnOnBocF9idWlsdGluX2NsYXNzZXMsIHRvbG93ZXIoY2xhc3NuYW1lKSkKLQkJCQlyZXR1cm4gcGhwY29tcGxldGUjQ29tcGxldGVCdWlsdEluQ2xhc3MoY29udGV4dCwgY2xhc3NuYW1lLCBhOmJhc2UpCi0JCQllbmRpZgotCi0JCQlpZiBmaWxlcmVhZGFibGUoY2xhc3Nsb2NhdGlvbikKLQkJCQlsZXQgY2xhc3NmaWxlID0gcmVhZGZpbGUoY2xhc3Nsb2NhdGlvbikKLQkJCQlsZXQgY2xhc3Njb250ZW50ID0gJycKLQkJCQlsZXQgY2xhc3Njb250ZW50IC49ICJcbiIucGhwY29tcGxldGUjR2V0Q2xhc3NDb250ZW50cyhjbGFzc2xvY2F0aW9uLCBjbGFzc25hbWUpCi0JCQkJbGV0IHNjY29udGVudCA9IHNwbGl0KGNsYXNzY29udGVudCwgIlxuIikKLQkJCQlsZXQgdmlzaWJpbGl0eSA9IGV4cGFuZCgnJTpwJykgPT0gZm5hbWVtb2RpZnkoY2xhc3Nsb2NhdGlvbiwgJzpwJykgPyAncHJpdmF0ZScgOiAncHVibGljJwotCi0JCQkJcmV0dXJuIHBocGNvbXBsZXRlI0NvbXBsZXRlVXNlckNsYXNzKGNvbnRleHQsIGE6YmFzZSwgc2Njb250ZW50LCB2aXNpYmlsaXR5KQotCQkJZW5kaWYKLQkJZW5kaWYKLQotCQlyZXR1cm4gcGhwY29tcGxldGUjQ29tcGxldGVVbmtub3duQ2xhc3MoYTpiYXNlLCBjb250ZXh0KQotCQkiIH19fQotCWVsc2VpZiBjb250ZXh0ID1+PyAnaW1wbGVtZW50cycKLQkJcmV0dXJuIHBocGNvbXBsZXRlI0NvbXBsZXRlQ2xhc3NOYW1lKGE6YmFzZSwgWydpJ10sIGN1cnJlbnRfbmFtZXNwYWNlLCBpbXBvcnRzKQotCWVsc2VpZiBjb250ZXh0ID1+PyAnZXh0ZW5kc1xzXCsuXCskJyAmJiBhOmJhc2UgPT0gJycKLQkJcmV0dXJuIFsnaW1wbGVtZW50cyddCi0JZWxzZWlmIGNvbnRleHQgPX4/ICdleHRlbmRzJwotCQlsZXQga2luZHMgPSBjb250ZXh0ID1+PyAnY2xhc3NccycgPyBbJ2MnXSA6IFsnaSddCi0JCXJldHVybiBwaHBjb21wbGV0ZSNDb21wbGV0ZUNsYXNzTmFtZShhOmJhc2UsIGtpbmRzLCBjdXJyZW50X25hbWVzcGFjZSwgaW1wb3J0cykKLQllbHNlaWYgY29udGV4dCA9fj8gJ2NsYXNzIFthLXpBLVpfXHg3Zi1ceGZmXFxdW2EtekEtWl8wLTlceDdmLVx4ZmZcXF0qJwotCQkiIHNwZWNpYWwgY2FzZSB3aGVuIHlvdSd2ZSB0eXBlZCB0aGUgY2xhc3Mga2V5d29yZCBhbmQgdGhlIG5hbWUgdG9vLCBvbmx5IGV4dGVuZHMgYW5kIGltcGxlbWVudHMgYWxsb3dlZCB0aGVyZQotCQlyZXR1cm4gZmlsdGVyKFsnZXh0ZW5kcycsICdpbXBsZW1lbnRzJ10sICdzdHJpZHgodjp2YWwsIGE6YmFzZSkgPT0gMCcpCi0JZWxzZWlmIGNvbnRleHQgPX4/ICduZXcnCi0JCXJldHVybiBwaHBjb21wbGV0ZSNDb21wbGV0ZUNsYXNzTmFtZShhOmJhc2UsIFsnYyddLCBjdXJyZW50X25hbWVzcGFjZSwgaW1wb3J0cykKLQllbmRpZgotCi0JaWYgYTpiYXNlID1+ICdeXCQnCi0JCXJldHVybiBwaHBjb21wbGV0ZSNDb21wbGV0ZVZhcmlhYmxlKGE6YmFzZSkKLQllbHNlCi0JCXJldHVybiBwaHBjb21wbGV0ZSNDb21wbGV0ZUdlbmVyYWwoYTpiYXNlLCBjdXJyZW50X25hbWVzcGFjZSwgaW1wb3J0cykKLQllbmRpZgorCWZpbmFsbHkKKwkJc2lsZW50ISBleGVjIHdpbm5yLidyZXNpemUgJy53aW5oZWlnaHQKKwllbmR0cnkKIGVuZGZ1bmN0aW9uCiAiIH19fQogCkBAIC0xNTIzLDIxICsxNTMyLDE5IEBACiAJCQkJcmV0dXJuICcnCiAJCQllbmRpZgogCi0JCQlpZiBsaW5lID1+PyAnXHZeXHMqKGFic3RyYWN0XHMrfGZpbmFsXHMrKSpccypjbGFzcycKLQkJCQlsZXQgY2xhc3NfbmFtZSA9IG1hdGNoc3RyKGxpbmUsICdcY1xzKmNsYXNzXHMqXHpzJy5jbGFzc19uYW1lX3BhdHRlcm4uJ1x6ZScpCisJCQlpZiBsaW5lID1+PyAnXHZeXHMqKGFic3RyYWN0XHMrfGZpbmFsXHMrKSpccypjbGFzc1xzJworCQkJCWxldCBjbGFzc19uYW1lID0gbWF0Y2hzdHIobGluZSwgJ1xjY2xhc3Ncc1wrXHpzJy5jbGFzc19uYW1lX3BhdHRlcm4uJ1x6ZScpCiAJCQkJbGV0IGV4dGVuZGVkX2NsYXNzID0gbWF0Y2hzdHIobGluZSwgJ1xjY2xhc3Ncc1wrJy5jbGFzc19uYW1lX3BhdHRlcm4uJ1xzXCtleHRlbmRzXHNcK1x6cycuY2xhc3NfbmFtZV9wYXR0ZXJuLidcemUnKQogCiAJCQkJbGV0IGNsYXNzbmFtZV9jYW5kaWRhdGUgPSBhOmNvbnRleHQgPX4/ICdwYXJlbnQ6OicgPyBleHRlbmRlZF9jbGFzcyA6IGNsYXNzX25hbWUKLQkJCWVsc2UKLQkJCQlsZXQgaSArPSAxCi0JCQkJY29udGludWUKKwkJCQlpZiBjbGFzc25hbWVfY2FuZGlkYXRlICE9ICcnCisJCQkJCWxldCBbY2xhc3NuYW1lX2NhbmRpZGF0ZSwgY2xhc3NfY2FuZGlkYXRlX25hbWVzcGFjZV0gPSBwaHBjb21wbGV0ZSNHZXRDYWxsQ2hhaW5SZXR1cm5UeXBlKGNsYXNzbmFtZV9jYW5kaWRhdGUsIGNsYXNzX2NhbmRpZGF0ZV9uYW1lc3BhY2UsIGNsYXNzX2NhbmRpZGF0ZV9pbXBvcnRzLCBtZXRob2RzdGFjaykKKwkJCQkJIiByZXR1cm4gYWJzb2x1dGUgY2xhc3NuYW1lLCB3aXRob3V0IGxlYWRpbmcgXAorCQkJCQlyZXR1cm4gKGNsYXNzX2NhbmRpZGF0ZV9uYW1lc3BhY2UgPT0gJ1wnIHx8IGNsYXNzX2NhbmRpZGF0ZV9uYW1lc3BhY2UgPT0gJycpID8gY2xhc3NuYW1lX2NhbmRpZGF0ZSA6IGNsYXNzX2NhbmRpZGF0ZV9uYW1lc3BhY2UuJ1wnLmNsYXNzbmFtZV9jYW5kaWRhdGUKKwkJCQllbmRpZgogCQkJZW5kaWYKIAotCQkJaWYgY2xhc3NuYW1lX2NhbmRpZGF0ZSAhPSAnJwotCQkJCWxldCBbY2xhc3NuYW1lX2NhbmRpZGF0ZSwgY2xhc3NfY2FuZGlkYXRlX25hbWVzcGFjZV0gPSBwaHBjb21wbGV0ZSNHZXRDYWxsQ2hhaW5SZXR1cm5UeXBlKGNsYXNzbmFtZV9jYW5kaWRhdGUsIGNsYXNzX2NhbmRpZGF0ZV9uYW1lc3BhY2UsIGNsYXNzX2NhbmRpZGF0ZV9pbXBvcnRzLCBtZXRob2RzdGFjaykKLQkJCQkiIHJldHVybiBhYnNvbHV0ZSBjbGFzc25hbWUsIHdpdGhvdXQgbGVhZGluZyBcCi0JCQkJcmV0dXJuIChjbGFzc19jYW5kaWRhdGVfbmFtZXNwYWNlID09ICdcJyB8fCBjbGFzc19jYW5kaWRhdGVfbmFtZXNwYWNlID09ICcnKSA/IGNsYXNzbmFtZV9jYW5kaWRhdGUgOiBjbGFzc19jYW5kaWRhdGVfbmFtZXNwYWNlLidcJy5jbGFzc25hbWVfY2FuZGlkYXRlCi0JCQllbmRpZgorCQkJbGV0IGkgKz0gMQogCQllbmR3aGlsZQogCWVsc2VpZiBhOmNvbnRleHQgPX4/ICcoXHMqbmV3XHNcKycuY2xhc3NfbmFtZV9wYXR0ZXJuLidccyopLT4nCiAJCWxldCBjbGFzc25hbWVfY2FuZGlkYXRlID0gbWF0Y2hzdHIoYTpjb250ZXh0LCAnXGNuZXdcc1wrXHpzJy5jbGFzc19uYW1lX3BhdHRlcm4uJ1x6ZScpCkBAIC0yMDMxLDcgKzIwMzgsNyBAQAogCSIgcmVtZW1iZXIgdGhlIHdpbmRvdyB3ZSBzdGFydGVkIGF0CiAJbGV0IHBocGNvbXBsZXRlX29yaWdpbmFsX3dpbmRvdyA9IHdpbm5yKCkKIAotCXNpbGVudCEgdGFiIDFuZXcKKwlzaWxlbnQhIGJlbG93IDFuZXcKIAlzaWxlbnQhIDBwdXQgPWNmaWxlCiAJY2FsbCBzZWFyY2goJ1xjXChjbGFzc1x8aW50ZXJmYWNlXHx0cmFpdFwpXF9zXCsnLmE6Y2xhc3NfbmFtZS4nXChcPlx8JFwpJykKIAlsZXQgY2ZsaW5lID0gbGluZSgnLicpCkBAIC0yMzcwLDcgKzIzNzcsNyBAQAogZnVuY3Rpb24hIHBocGNvbXBsZXRlI0dldEN1cnJlbnROYW1lU3BhY2UoZmlsZV9saW5lcykgIiB7e3sKIAlsZXQgb3JpZ2luYWxfd2luZG93ID0gd2lubnIoKQogCi0Jc2lsZW50ISB0YWIgMW5ldworCXNpbGVudCEgYmVsb3cgMW5ldwogCXNpbGVudCEgMHB1dCA9YTpmaWxlX2xpbmVzCiAJbm9ybWFsISBHCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvZG9jL3RhZ3MgYi9ydW50aW1lL2RvYy90YWdzCmluZGV4IDRiNTE1MDcuLmI5NDNkNTkgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3RhZ3MKKysrIGIvcnVudGltZS9kb2MvdGFncwpAQCAtNDg3NSw2ICs0ODc1LDcgQEAKIGI6bmV0cndfbGFzdGZpbGUJcGlfbmV0cncudHh0CS8qYjpuZXRyd19sYXN0ZmlsZSoKIGI6dGV4X3N0eWxpc2gJc3ludGF4LnR4dAkvKmI6dGV4X3N0eWxpc2gqCiBiOnZhcglldmFsLnR4dAkvKmI6dmFyKgorYjp5YW1sX3NjaGVtYQlzeW50YXgudHh0CS8qYjp5YW1sX3NjaGVtYSoKIGJhYW4tZm9sZGluZwlzeW50YXgudHh0CS8qYmFhbi1mb2xkaW5nKgogYmFhbi1zeW50YXgJc3ludGF4LnR4dAkvKmJhYW4tc3ludGF4KgogYmFhbi52aW0Jc3ludGF4LnR4dAkvKmJhYW4udmltKgpAQCAtNTg4NCw2ICs1ODg1LDcgQEAKIGZ0LXhtbC1vbW5pCWluc2VydC50eHQJLypmdC14bWwtb21uaSoKIGZ0LXhtbC1zeW50YXgJc3ludGF4LnR4dAkvKmZ0LXhtbC1zeW50YXgqCiBmdC14cG0tc3ludGF4CXN5bnRheC50eHQJLypmdC14cG0tc3ludGF4KgorZnQteWFtbC1zeW50YXgJc3ludGF4LnR4dAkvKmZ0LXlhbWwtc3ludGF4KgogZnRfYWRhLnR4dAlmdF9hZGEudHh0CS8qZnRfYWRhLnR4dCoKIGZ0X3NxbC50eHQJZnRfc3FsLnR4dAkvKmZ0X3NxbC50eHQqCiBmdGRldGVjdAlmaWxldHlwZS50eHQJLypmdGRldGVjdCoKQEAgLTYxMTMsNiArNjExNSw3IEBACiBnOnZpbXN5bl9tYXhsaW5lcwlzeW50YXgudHh0CS8qZzp2aW1zeW5fbWF4bGluZXMqCiBnOnZpbXN5bl9taW5saW5lcwlzeW50YXgudHh0CS8qZzp2aW1zeW5fbWlubGluZXMqCiBnOnZpbXN5bl9ub2Vycm9yCXN5bnRheC50eHQJLypnOnZpbXN5bl9ub2Vycm9yKgorZzp5YW1sX3NjaGVtYQlzeW50YXgudHh0CS8qZzp5YW1sX3NjaGVtYSoKIGc6emlwX25vbWF4CXBpX3ppcC50eHQJLypnOnppcF9ub21heCoKIGc6emlwX3NocQlwaV96aXAudHh0CS8qZzp6aXBfc2hxKgogZzp6aXBfdW56aXBjbWQJcGlfemlwLnR4dAkvKmc6emlwX3VuemlwY21kKgpAQCAtODg4OSw2ICs4ODkyLDcgQEAKIHh0ZXJtLXNjcm9sbC1yZWdpb24JdGVybS50eHQJLyp4dGVybS1zY3JvbGwtcmVnaW9uKgogeHRlcm0tc2hpZnRlZC1rZXlzCXRlcm0udHh0CS8qeHRlcm0tc2hpZnRlZC1rZXlzKgogeQljaGFuZ2UudHh0CS8qeSoKK3lhbWwudmltCXN5bnRheC50eHQJLyp5YW1sLnZpbSoKIHlhbmsJY2hhbmdlLnR4dAkvKnlhbmsqCiB5ZS1vcHRpb24tZ29uZQl2ZXJzaW9uNC50eHQJLyp5ZS1vcHRpb24tZ29uZSoKIHllYXItMjAwMAlpbnRyby50eHQJLyp5ZWFyLTIwMDAqCmRpZmYgLS1naXQgYS9ydW50aW1lL2RvYy90b2RvLnR4dCBiL3J1bnRpbWUvZG9jL3RvZG8udHh0CmluZGV4IGEwOTU3NTcuLmFjZjhjMzMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvZG9jL3RvZG8udHh0CisrKyBiL3J1bnRpbWUvZG9jL3RvZG8udHh0CkBAIC0xLDQgKzEsNCBAQAotKnRvZG8udHh0KiAgICAgIEZvciBWaW0gdmVyc2lvbiA3LjQuICBMYXN0IGNoYW5nZTogMjAxNSBBcHIgMTIKKyp0b2RvLnR4dCogICAgICBGb3IgVmltIHZlcnNpb24gNy40LiAgTGFzdCBjaGFuZ2U6IDIwMTUgQXByIDEzCiAKIAogCQkgIFZJTSBSRUZFUkVOQ0UgTUFOVUFMCSAgYnkgQnJhbSBNb29sZW5hYXIKQEAgLTY4LDEzICs2OCw2IEBACiAtIHRoaXMgZG9lc24ndCB3b3JrOiAic3ludGF4IG1hdGNoIEVycm9yTXNnIC8uXCU5bFwlPjIwY1wmXCU8MjhjLyIuICBMZWF2aW5nCiAgIG91dCB0aGUgXCYgd29ya3MuICBTZWVtcyBhbnkgY29sdW1uIGNoZWNrIGFmdGVyIFwmIGZhaWxzLgogCi1QSFAgY29tcGxldGUgdXBkYXRlLCAoY29tcGxleCwgMjAxNSBBcHIgMikKLQotUEhQIHN5bnRheCBmaWxlIHVwZGF0ZS4gKEphc29uIFdvb2ZlbmRlbiwgMjAxNSBNYXIgMjQpCi0KLVVwZGF0ZWQgc3ludGF4IGZpbGVzLiAoQ2hhcmxlcyBDYW1wYmVsbCwgQXByIDIpCi1Ud28gbWVzc2FnZXMuCi0KIENoZWNrIG91dCBuZW92aW0gYnVnIHJlcG9ydHMgdGhhdCBhcHBseSB0byBWaW06CiBodHRwczovL2dpdGh1Yi5jb20vbmVvdmltL25lb3ZpbS9pc3N1ZXM/cT1sYWJlbCUzQWJ1Zy12aW0KIFNwZWNpZmljYWxseToKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L2NzaC52aW0gYi9ydW50aW1lL3N5bnRheC9jc2gudmltCmluZGV4IGE2N2NiMDkuLjlkYzJjNGUgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L2NzaC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvY3NoLnZpbQpAQCAtMSw4ICsxLDggQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOglDLXNoZWxsIChjc2gpCiAiIE1haW50YWluZXI6CUNoYXJsZXMgRS4gQ2FtcGJlbGwgPE5kck9jaGlwU0BQY2FtcGJlbGxBZmFtaWx5Lk1iaXo+Ci0iIFZlcnNpb246CTExCiAiIExhc3QgQ2hhbmdlOglPY3QgMjMsIDIwMTQKKyIgVmVyc2lvbjoJMTEKICIgVVJMOglodHRwOi8vd3d3LmRyY2hpcC5vcmcvYXN0cm9uYXV0L3ZpbS9pbmRleC5odG1sI1NZTlRBWF9DU0gKIAogIiBGb3IgdmVyc2lvbiA1Lng6IENsZWFyIGFsbCBzeW50YXggaXRlbXMKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3BocC52aW0gYi9ydW50aW1lL3N5bnRheC9waHAudmltCmluZGV4IDVlYzVkNWEuLmFhYzNlOTkgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3BocC52aW0KKysrIGIvcnVudGltZS9zeW50YXgvcGhwLnZpbQpAQCAtMSw4ICsxLDggQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOiBwaHAgUEhQIDMvNC81CiAiIE1haW50YWluZXI6IEphc29uIFdvb2ZlbmRlbiA8amFzb25AamFzb253b29mLmNvbT4KLSIgTGFzdCBDaGFuZ2U6IFNlcCAxOCwgMjAxNAotIiBVUkw6IGh0dHBzOi8vZ2l0b3Jpb3VzLm9yZy9qYXNvbndvb2YvdmltLXN5bnRheC9ibG9icy9tYXN0ZXIvcGhwLnZpbQorIiBMYXN0IENoYW5nZTogTWFyIDI0LCAyMDE1CisiIFVSTDogaHR0cHM6Ly9qYXNvbndvb2YuY29tL2dpdHdlYi8/cD12aW0tc3ludGF4LmdpdDthPWJsb2I7Zj1waHAudmltO2hiPUhFQUQKICIgRm9ybWVyIE1haW50YWluZXJzOiBQZXRlciBIb2RnZSA8dG9vbXVjaHBocC12aW1AeWFob28uY29tPgogIiAgICAgICAgIERlYmlhbiBWSU0gTWFpbnRhaW5lcnMgPHBrZy12aW0tbWFpbnRhaW5lcnNAbGlzdHMuYWxpb3RoLmRlYmlhbi5vcmc+CiAiCmRpZmYgLS1naXQgYS9ydW50aW1lL3N5bnRheC9zaC52aW0gYi9ydW50aW1lL3N5bnRheC9zaC52aW0KaW5kZXggZjMyMThmZi4uMWFhNTc5NCAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvc2gudmltCisrKyBiL3J1bnRpbWUvc3ludGF4L3NoLnZpbQpAQCAtMiw4ICsyLDggQEAKICIgTGFuZ3VhZ2U6CQlzaGVsbCAoc2gpIEtvcm4gc2hlbGwgKGtzaCkgYmFzaCAoc2gpCiAiIE1haW50YWluZXI6CQlDaGFybGVzIEUuIENhbXBiZWxsICA8TmRyT2NoaXBTQFBjYW1wYmVsbEFmYW1pbHkuTWJpej4KICIgUHJldmlvdXMgTWFpbnRhaW5lcjoJTGVubmFydCBTY2h1bHR6IDxMZW5uYXJ0LlNjaHVsdHpAZWNtd2YuaW50PgotIiBMYXN0IENoYW5nZToJCUphbiAwOCwgMjAxNQotIiBWZXJzaW9uOgkJMTM0CisiIExhc3QgQ2hhbmdlOgkJQXByIDAyLCAyMDE1CisiIFZlcnNpb246CQkxMzUKICIgVVJMOgkJaHR0cDovL3d3dy5kcmNoaXAub3JnL2FzdHJvbmF1dC92aW0vaW5kZXguaHRtbCNTWU5UQVhfU0gKICIgRm9yIG9wdGlvbnMgYW5kIHNldHRpbmdzLCBwbGVhc2UgdXNlOiAgICAgIDpoZWxwIGZ0LXNoLXN5bnRheAogIiBUaGlzIGZpbGUgaW5jbHVkZXMgbWFueSBpZGVhcyBmcm9tID9yaWMgQnJ1bmV0IChlcmljLmJydW5ldEBlbnMuZnIpCkBAIC0xMDQsNyArMTA0LDcgQEAKIGlmIGV4aXN0cygiYjppc19rb3Juc2hlbGwiKQogIHN5biBjbHVzdGVyIEVycm9yTGlzdCBhZGQ9c2hEVGVzdEVycm9yCiBlbmRpZgotc3luIGNsdXN0ZXIgc2hBcml0aFBhcmVuTGlzdAljb250YWlucz1zaEFyaXRobWV0aWMsc2hDYXNlRXNhYyxzaENvbW1lbnQsc2hEZXJlZixzaERlcmVmU2ltcGxlLHNoRG8sc2hFY2hvLHNoRXNjYXBlLHNoSWYsc2hGb3Isc2hOdW1iZXIsc2hPcGVyYXRvcixzaFBvc25QYXJtLHNoRXhTaW5nbGVRdW90ZSxzaEV4RG91YmxlUXVvdGUsc2hSZWRpcixzaFNpbmdsZVF1b3RlLHNoRG91YmxlUXVvdGUsc2hTdGF0ZW1lbnQsc2hWYXJpYWJsZSxzaEFsaWFzLHNoVGVzdCxzaEN0cmxTZXEsc2hTcGVjaWFsLHNoUGFyZW4sYmFzaFNwZWNpYWxWYXJpYWJsZXMsYmFzaFN0YXRlbWVudAorc3luIGNsdXN0ZXIgc2hBcml0aFBhcmVuTGlzdAljb250YWlucz1zaEFyaXRobWV0aWMsc2hDYXNlRXNhYyxzaENvbW1lbnQsc2hEZXJlZixzaERvLHNoRGVyZWZTaW1wbGUsc2hFY2hvLHNoRXNjYXBlLHNoTnVtYmVyLHNoT3BlcmF0b3Isc2hQb3NuUGFybSxzaEV4U2luZ2xlUXVvdGUsc2hFeERvdWJsZVF1b3RlLHNoUmVkaXIsc2hTaW5nbGVRdW90ZSxzaERvdWJsZVF1b3RlLHNoU3RhdGVtZW50LHNoVmFyaWFibGUsc2hBbGlhcyxzaFRlc3Qsc2hDdHJsU2VxLHNoU3BlY2lhbCxzaFBhcmVuLGJhc2hTcGVjaWFsVmFyaWFibGVzLGJhc2hTdGF0ZW1lbnQsc2hJZixzaEZvcgogc3luIGNsdXN0ZXIgc2hBcml0aExpc3QJY29udGFpbnM9QHNoQXJpdGhQYXJlbkxpc3Qsc2hQYXJlbkVycm9yCiBzeW4gY2x1c3RlciBzaENhc2VFc2FjTGlzdAljb250YWlucz1zaENhc2VTdGFydCxzaENhc2Usc2hDYXNlQmFyLHNoQ2FzZUluLHNoQ29tbWVudCxzaERlcmVmLHNoRGVyZWZTaW1wbGUsc2hDYXNlQ29tbWFuZFN1YixzaENhc2VFeFNpbmdsZVF1b3RlLHNoQ2FzZVNpbmdsZVF1b3RlLHNoQ2FzZURvdWJsZVF1b3RlLHNoQ3RybFNlcSxAc2hFcnJvckxpc3Qsc2hTdHJpbmdTcGVjaWFsLHNoQ2FzZVJhbmdlCiBzeW4gY2x1c3RlciBzaENhc2VMaXN0CWNvbnRhaW5zPUBzaENvbW1hbmRTdWJMaXN0LHNoQ2FzZUVzYWMsc2hDb2xvbixzaENvbW1hbmRTdWIsc2hDb21tZW50LHNoRG8sc2hFY2hvLHNoRXhwcixzaEZvcixzaEhlcmVEb2Msc2hJZixzaFJlZGlyLHNoU2V0TGlzdCxzaFNvdXJjZSxzaFN0YXRlbWVudCxzaFZhcmlhYmxlLHNoQ3RybFNlcQpAQCAtMTI3LDkgKzEyNyw5IEBACiBzeW4gY2x1c3RlciBzaEhlcmVMaXN0RFEJY29udGFpbnM9c2hCZWdpbkhlcmUsQHNoRGJsUXVvdGVMaXN0LHNoSGVyZVBheWxvYWQKIHN5biBjbHVzdGVyIHNoSWRMaXN0CWNvbnRhaW5zPXNoQ29tbWFuZFN1YixzaFdyYXBMaW5lT3BlcmF0b3Isc2hTZXRPcHRpb24sc2hEZXJlZixzaERlcmVmU2ltcGxlLHNoUmVkaXIsc2hFeFNpbmdsZVF1b3RlLHNoRXhEb3VibGVRdW90ZSxzaFNpbmdsZVF1b3RlLHNoRG91YmxlUXVvdGUsc2hFeHByLHNoQ3RybFNlcSxzaFN0cmluZ1NwZWNpYWwsc2hBdEV4cHIKIHN5biBjbHVzdGVyIHNoSWZMaXN0CWNvbnRhaW5zPUBzaExvb3BMaXN0LHNoRGJsQnJhY2Usc2hEYmxQYXJlbixzaEZ1bmN0aW9uS2V5LHNoRnVuY3Rpb25PbmUsc2hGdW5jdGlvblR3bwotc3luIGNsdXN0ZXIgc2hMb29wTGlzdAljb250YWlucz1Ac2hDYXNlTGlzdCxzaElmLHNoRm9yLHNoRm9yUFAsc2hUZXN0T3ByLHNoRXhwcixzaERibEJyYWNlLHNoQ29uZGl0aW9uYWwsc2hDYXNlRXNhYyxzaFRlc3QsQHNoRXJyb3JMaXN0LHNoU2V0LHNoT3B0aW9uCitzeW4gY2x1c3RlciBzaExvb3BMaXN0CWNvbnRhaW5zPUBzaENhc2VMaXMsdEBzaEVycm9yTGlzdCxzaENhc2VFc2FjLHNoQ29uZGl0aW9uYWwsc2hEYmxCcmFjZSxzaEV4cHIsc2hGb3Isc2hGb3JQUCxzaElmLHNoT3B0aW9uLHNoU2V0LHNoVGVzdCxzaFRlc3RPcHIKIHN5biBjbHVzdGVyIHNoU3ViU2hMaXN0CWNvbnRhaW5zPUBzaENvbW1hbmRTdWJMaXN0LHNoQ2FzZUVzYWMsc2hDb2xvbixzaENvbW1hbmRTdWIsc2hDb21tZW50LHNoRG8sc2hFY2hvLHNoRXhwcixzaEZvcixzaElmLHNoUmVkaXIsc2hTZXRMaXN0LHNoU291cmNlLHNoU3RhdGVtZW50LHNoVmFyaWFibGUsc2hDdHJsU2VxLHNoT3BlcmF0b3IKLXN5biBjbHVzdGVyIHNoVGVzdExpc3QJY29udGFpbnM9c2hDaGFyQ2xhc3Msc2hDb21tZW50LHNoQ29tbWFuZFN1YixzaERlcmVmLHNoRGVyZWZTaW1wbGUsc2hFeERvdWJsZVF1b3RlLHNoRG91YmxlUXVvdGUsc2hFeHByLHNoTnVtYmVyLHNoT3BlcmF0b3Isc2hFeFNpbmdsZVF1b3RlLHNoU2luZ2xlUXVvdGUsc2hUZXN0T3ByLHNoVGVzdCxzaEN0cmxTZXEKK3N5biBjbHVzdGVyIHNoVGVzdExpc3QJY29udGFpbnM9c2hDaGFyQ2xhc3Msc2hDb21tYW5kU3ViLHNoQ29tbWVudCxzaEN0cmxTZXEsc2hEZXJlZixzaERlcmVmU2ltcGxlLHNoRG91YmxlUXVvdGUsc2hFeERvdWJsZVF1b3RlLHNoRXhwcixzaEV4U2luZ2xlUXVvdGUsc2hOdW1iZXIsc2hPcGVyYXRvcixzaFNpbmdsZVF1b3RlLHNoVGVzdCxzaFRlc3RPcHIKICIgRWNobzoge3t7MQogIiA9PT09CiAiIFRoaXMgb25lIGlzIG5lZWRlZCBJTlNJREUgYSBDb21tYW5kU3ViLCBzbyB0aGF0IGBlY2hvIGJsYWAgYmUgY29ycmVjdApAQCAtMTk3LDEzICsxOTcsMTIgQEAKIHN5biBtYXRjaCAgc2hUZXN0T3ByCWNvbnRhaW5lZAkiPD1cfD49XHwhPVx8PT1cfC0uXD5cfC1cKG50XHxvdFx8ZWZcfGVxXHxuZVx8bHRcfGxlXHxndFx8Z2VcKVw+XHxbITw+XSIKIHN5biBtYXRjaCAgc2hUZXN0T3ByCWNvbnRhaW5lZAknPScgc2tpcHdoaXRlIG5leHRncm91cD1zaFRlc3REb3VibGVRdW90ZSxzaFRlc3RTaW5nbGVRdW90ZSxzaFRlc3RQYXR0ZXJuCiBzeW4gbWF0Y2ggIHNoVGVzdFBhdHRlcm4JY29udGFpbmVkCSdcd1wrJwotc3luIHJlZ2lvbiBzaFRlc3REb3VibGVRdW90ZQljb250YWluZWQJc3RhcnQ9JyInIHNraXA9J1xcIicgZW5kPSciJyBjb250YWlucz1zaEJRcGFpcnMKK3N5biByZWdpb24gc2hUZXN0RG91YmxlUXVvdGUJY29udGFpbmVkCXN0YXJ0PSdcJShcJShcXFxcXCkqXFxcKVxAPCEiJyBza2lwPStcXFxcXHxcXCIrIGVuZD0nIicKIHN5biBtYXRjaCAgc2hUZXN0U2luZ2xlUXVvdGUJY29udGFpbmVkCSdcXC4nCiBzeW4gbWF0Y2ggIHNoVGVzdFNpbmdsZVF1b3RlCWNvbnRhaW5lZAkiJ1teJ10qJyIKLXN5biBtYXRjaCAgc2hCUXBhaXJzCWNvbnRhaW5lZAknXFxcXCcKIGlmIGV4aXN0cygiYjppc19rb3Juc2hlbGwiKSB8fCBleGlzdHMoImI6aXNfYmFzaCIpCi0gc3luIHJlZ2lvbiAgc2hEYmxCcmFjZSBtYXRjaGdyb3VwPURlbGltaXRlciBzdGFydD0iXFtcWyIgc2tpcD0rXFxcXFx8XFwkKyBlbmQ9IlxdXF0iCWNvbnRhaW5zPUBzaFRlc3RMaXN0Ci0gc3luIHJlZ2lvbiAgc2hEYmxQYXJlbiBtYXRjaGdyb3VwPURlbGltaXRlciBzdGFydD0iKCgiIHNraXA9K1xcXFxcfFxcJCsgZW5kPSIpKSIJY29udGFpbnM9QHNoVGVzdExpc3QKKyBzeW4gcmVnaW9uICBzaERibEJyYWNlIG1hdGNoZ3JvdXA9RGVsaW1pdGVyIHN0YXJ0PSJcW1xbIiBza2lwPStcXFxcXHxcXCQrIGVuZD0iXF1cXSIJY29udGFpbnM9QHNoVGVzdExpc3Qsc2hDb21tZW50Cisgc3luIHJlZ2lvbiAgc2hEYmxQYXJlbiBtYXRjaGdyb3VwPURlbGltaXRlciBzdGFydD0iKCgiIHNraXA9K1xcXFxcfFxcJCsgZW5kPSIpKSIJY29udGFpbnM9QHNoVGVzdExpc3Qsc2hDb21tZW50CiBlbmRpZgogCiAiIENoYXJhY3RlciBDbGFzcyBJbiBSYW5nZToge3t7MQpAQCAtMjEzLDE1ICsyMTIsMTYgQEAKICIgTG9vcHM6IGRvLCBpZiwgd2hpbGUsIHVudGlsIHt7ezEKICIgPT09PT09CiBpZiBzOnNoX2ZvbGRfaWZkb2ZvcgotIHN5biByZWdpb24gc2hEbwlmb2xkIHRyYW5zcGFyZW50IG1hdGNoZ3JvdXA9c2hDb25kaXRpb25hbCBzdGFydD0iXDxkb1w+IiBtYXRjaGdyb3VwPXNoQ29uZGl0aW9uYWwgZW5kPSJcPGRvbmVcPiIgY29udGFpbnM9QHNoTG9vcExpc3QKLSBzeW4gcmVnaW9uIHNoSWYJZm9sZCB0cmFuc3BhcmVudCBtYXRjaGdyb3VwPXNoQ29uZGl0aW9uYWwgc3RhcnQ9Ilw8aWZcX3MiIG1hdGNoZ3JvdXA9c2hDb25kaXRpb25hbCBza2lwPSstZmlcPisgZW5kPSJcPDtcX3MqdGhlblw+IiBlbmQ9Ilw8ZmlcPiIgICBjb250YWlucz1Ac2hJZkxpc3QKLSBzeW4gcmVnaW9uIHNoRm9yCWZvbGQgbWF0Y2hncm91cD1zaExvb3Agc3RhcnQ9Ilw8Zm9yXHplXF9zXHMqXCUoKChcKVxAISIgZW5kPSJcPGluXF9zIiBlbmQ9Ilw8ZG9cPiJtZT1lLTIJY29udGFpbnM9QHNoTG9vcExpc3Qsc2hEYmxQYXJlbiBza2lwd2hpdGUgbmV4dGdyb3VwPXNoQ3VybHlJbgorIHN5biByZWdpb24gc2hEbwlmb2xkIHRyYW5zcGFyZW50IG1hdGNoZ3JvdXA9c2hDb25kaXRpb25hbCBzdGFydD0iXDxkb1w+IiBtYXRjaGdyb3VwPXNoQ29uZGl0aW9uYWwgZW5kPSJcPGRvbmVcPiIJCQljb250YWlucz1Ac2hMb29wTGlzdAorIHN5biByZWdpb24gc2hJZglmb2xkIHRyYW5zcGFyZW50IG1hdGNoZ3JvdXA9c2hDb25kaXRpb25hbCBzdGFydD0iXDxpZlxfcyIgbWF0Y2hncm91cD1zaENvbmRpdGlvbmFsIHNraXA9Ky1maVw+KyBlbmQ9Ilw8O1xfcyp0aGVuXD4iIGVuZD0iXDxmaVw+Igljb250YWlucz1Ac2hJZkxpc3QKKyBzeW4gcmVnaW9uIHNoRm9yCWZvbGQgbWF0Y2hncm91cD1zaExvb3Agc3RhcnQ9Ilw8Zm9yXHplXF9zXHMqXCUoKChcKVxAISIgZW5kPSJcPGluXF9zIiBlbmQ9Ilw8ZG9cPiJtZT1lLTIJCQkJY29udGFpbnM9QHNoTG9vcExpc3Qsc2hEYmxQYXJlbiBza2lwd2hpdGUgbmV4dGdyb3VwPXNoQ3VybHlJbgorIHN5biByZWdpb24gc2hGb3JQUAlmb2xkIG1hdGNoZ3JvdXA9c2hMb29wIHN0YXJ0PSdcPGZvclw+XF9zKigoJyBlbmQ9JykpJyBjb250YWlucz1zaFRlc3RPcHIKIGVsc2UKLSBzeW4gcmVnaW9uIHNoRG8JdHJhbnNwYXJlbnQgbWF0Y2hncm91cD1zaENvbmRpdGlvbmFsIHN0YXJ0PSJcPGRvXD4iIG1hdGNoZ3JvdXA9c2hDb25kaXRpb25hbCBlbmQ9Ilw8ZG9uZVw+Igljb250YWlucz1Ac2hMb29wTGlzdAotIHN5biByZWdpb24gc2hJZgl0cmFuc3BhcmVudCBtYXRjaGdyb3VwPXNoQ29uZGl0aW9uYWwgc3RhcnQ9Ilw8aWZcX3MiIG1hdGNoZ3JvdXA9c2hDb25kaXRpb25hbCBza2lwPSstZmlcPisgZW5kPSJcPDtcX3MqdGhlblw+IiBlbmQ9Ilw8ZmlcPiIgICBjb250YWlucz1Ac2hJZkxpc3QKLSBzeW4gcmVnaW9uIHNoRm9yCW1hdGNoZ3JvdXA9c2hMb29wIHN0YXJ0PSJcPGZvclx6ZVxfc1xzKlwlKCgoXClcQCEiIGVuZD0iXDxpblw+IiBlbmQ9Ilw8ZG9cPiJtZT1lLTIJY29udGFpbnM9QHNoTG9vcExpc3Qsc2hEYmxQYXJlbiBza2lwd2hpdGUgbmV4dGdyb3VwPXNoQ3VybHlJbgorIHN5biByZWdpb24gc2hEbwl0cmFuc3BhcmVudCBtYXRjaGdyb3VwPXNoQ29uZGl0aW9uYWwgc3RhcnQ9Ilw8ZG9cPiIgbWF0Y2hncm91cD1zaENvbmRpdGlvbmFsIGVuZD0iXDxkb25lXD4iCQkJY29udGFpbnM9QHNoTG9vcExpc3QKKyBzeW4gcmVnaW9uIHNoSWYJdHJhbnNwYXJlbnQgbWF0Y2hncm91cD1zaENvbmRpdGlvbmFsIHN0YXJ0PSJcPGlmXF9zIiBtYXRjaGdyb3VwPXNoQ29uZGl0aW9uYWwgc2tpcD0rLWZpXD4rIGVuZD0iXDw7XF9zKnRoZW5cPiIgZW5kPSJcPGZpXD4iCWNvbnRhaW5zPUBzaElmTGlzdAorIHN5biByZWdpb24gc2hGb3IJbWF0Y2hncm91cD1zaExvb3Agc3RhcnQ9Ilw8Zm9yXHplXF9zXHMqXCUoKChcKVxAISIgZW5kPSJcPGluXD4iIGVuZD0iXDxkb1w+Im1lPWUtMgkJCWNvbnRhaW5zPUBzaExvb3BMaXN0LHNoRGJsUGFyZW4gc2tpcHdoaXRlIG5leHRncm91cD1zaEN1cmx5SW4KKyBzeW4gcmVnaW9uIHNoRm9yUFAJbWF0Y2hncm91cD1zaExvb3Agc3RhcnQ9J1w8Zm9yXD5cX3MqKCgnIGVuZD0nKSknIGNvbnRhaW5zPXNoVGVzdE9wcgogZW5kaWYKLXN5biByZWdpb24gc2hGb3JQUAltYXRjaGdyb3VwPXNoTG9vcCBzdGFydD0nXDxmb3JcPlxfcyooKCcgZW5kPScpKScgY29udGFpbnM9c2hUZXN0T3ByCiBpZiBleGlzdHMoImI6aXNfa29ybnNoZWxsIikgfHwgZXhpc3RzKCJiOmlzX2Jhc2giKQogIHN5biBjbHVzdGVyIHNoQ2FzZUxpc3QJYWRkPXNoUmVwZWF0CiAgc3luIGNsdXN0ZXIgc2hGdW5jdGlvbkxpc3QJYWRkPXNoUmVwZWF0CkBAIC00MDksMTkgKzQwOSwyNyBAQAogCiBpZiBleGlzdHMoImI6aXNfYmFzaCIpCiAgaWYgczpzaF9mb2xkX2Z1bmN0aW9ucwotICBzeW4gcmVnaW9uIHNoRnVuY3Rpb25PbmUgZm9sZAltYXRjaGdyb3VwPXNoRnVuY3Rpb24gc3RhcnQ9Il5ccypcaFstYS16QS1aXzAtOV0qXHMqKClcX3MqeyIJZW5kPSJ9Igljb250YWlucz1Ac2hGdW5jdGlvbkxpc3QJCQlza2lwd2hpdGUgc2tpcG5sIG5leHRncm91cD1zaEZ1bmN0aW9uU3RhcnQsc2hRdWlja0NvbW1lbnQKLSAgc3luIHJlZ2lvbiBzaEZ1bmN0aW9uVHdvIGZvbGQJbWF0Y2hncm91cD1zaEZ1bmN0aW9uIHN0YXJ0PSJcaFstYS16QS1aXzAtOV0qXHMqXCUoKClcKVw9XF9zKnsiCWVuZD0ifSIJY29udGFpbnM9c2hGdW5jdGlvbktleSxAc2hGdW5jdGlvbkxpc3QgY29udGFpbmVkCXNraXB3aGl0ZSBza2lwbmwgbmV4dGdyb3VwPXNoRnVuY3Rpb25TdGFydCxzaFF1aWNrQ29tbWVudAorICBzeW4gcmVnaW9uIHNoRnVuY3Rpb25PbmUJZm9sZAltYXRjaGdyb3VwPXNoRnVuY3Rpb24gc3RhcnQ9Il5ccypcaFstYS16QS1aXzAtOV0qXHMqKClcX3MqeyIJZW5kPSJ9Igljb250YWlucz1Ac2hGdW5jdGlvbkxpc3QJCQlza2lwd2hpdGUgc2tpcG5sIG5leHRncm91cD1zaEZ1bmN0aW9uU3RhcnQsc2hRdWlja0NvbW1lbnQKKyAgc3luIHJlZ2lvbiBzaEZ1bmN0aW9uVHdvCWZvbGQJbWF0Y2hncm91cD1zaEZ1bmN0aW9uIHN0YXJ0PSJcaFstYS16QS1aXzAtOV0qXHMqXCUoKClcKVw9XF9zKnsiCWVuZD0ifSIJY29udGFpbnM9c2hGdW5jdGlvbktleSxAc2hGdW5jdGlvbkxpc3QgY29udGFpbmVkCXNraXB3aGl0ZSBza2lwbmwgbmV4dGdyb3VwPXNoRnVuY3Rpb25TdGFydCxzaFF1aWNrQ29tbWVudAorICBzeW4gcmVnaW9uIHNoRnVuY3Rpb25UaHJlZQlmb2xkCW1hdGNoZ3JvdXA9c2hGdW5jdGlvbiBzdGFydD0iXlxzKlxoWy1hLXpBLVpfMC05XSpccyooKVxfcyooIgllbmQ9IikiCWNvbnRhaW5zPUBzaEZ1bmN0aW9uTGlzdAkJCXNraXB3aGl0ZSBza2lwbmwgbmV4dGdyb3VwPXNoRnVuY3Rpb25TdGFydCxzaFF1aWNrQ29tbWVudAorICBzeW4gcmVnaW9uIHNoRnVuY3Rpb25Gb3VyCWZvbGQJbWF0Y2hncm91cD1zaEZ1bmN0aW9uIHN0YXJ0PSJcaFstYS16QS1aXzAtOV0qXHMqXCUoKClcKVw9XF9zKikiCWVuZD0iKSIJY29udGFpbnM9c2hGdW5jdGlvbktleSxAc2hGdW5jdGlvbkxpc3QgY29udGFpbmVkCXNraXB3aGl0ZSBza2lwbmwgbmV4dGdyb3VwPXNoRnVuY3Rpb25TdGFydCxzaFF1aWNrQ29tbWVudAogIGVsc2UKLSAgc3luIHJlZ2lvbiBzaEZ1bmN0aW9uT25lCW1hdGNoZ3JvdXA9c2hGdW5jdGlvbiBzdGFydD0iXlxzKlxoWy1hLXpBLVpfMC05XSpccyooKVxfcyp7IgllbmQ9In0iCWNvbnRhaW5zPUBzaEZ1bmN0aW9uTGlzdAotICBzeW4gcmVnaW9uIHNoRnVuY3Rpb25Ud28JbWF0Y2hncm91cD1zaEZ1bmN0aW9uIHN0YXJ0PSJcaFstYS16QS1aXzAtOV0qXHMqXCUoKClcKVw9XF9zKnsiCWVuZD0ifSIJY29udGFpbnM9c2hGdW5jdGlvbktleSxAc2hGdW5jdGlvbkxpc3QgY29udGFpbmVkCisgIHN5biByZWdpb24gc2hGdW5jdGlvbk9uZQkJbWF0Y2hncm91cD1zaEZ1bmN0aW9uIHN0YXJ0PSJeXHMqXGhbLWEtekEtWl8wLTldKlxzKigpXF9zKnsiCWVuZD0ifSIJY29udGFpbnM9QHNoRnVuY3Rpb25MaXN0CisgIHN5biByZWdpb24gc2hGdW5jdGlvblR3bwkJbWF0Y2hncm91cD1zaEZ1bmN0aW9uIHN0YXJ0PSJcaFstYS16QS1aXzAtOV0qXHMqXCUoKClcKVw9XF9zKnsiCWVuZD0ifSIJY29udGFpbnM9c2hGdW5jdGlvbktleSxAc2hGdW5jdGlvbkxpc3QgY29udGFpbmVkCisgIHN5biByZWdpb24gc2hGdW5jdGlvblRocmVlCQltYXRjaGdyb3VwPXNoRnVuY3Rpb24gc3RhcnQ9Il5ccypcaFstYS16QS1aXzAtOV0qXHMqKClcX3MqKCIJZW5kPSIpIgljb250YWlucz1Ac2hGdW5jdGlvbkxpc3QKKyAgc3luIHJlZ2lvbiBzaEZ1bmN0aW9uRm91cgkJbWF0Y2hncm91cD1zaEZ1bmN0aW9uIHN0YXJ0PSJcaFstYS16QS1aXzAtOV0qXHMqXCUoKClcKVw9XF9zKigiCWVuZD0iKSIJY29udGFpbnM9c2hGdW5jdGlvbktleSxAc2hGdW5jdGlvbkxpc3QgY29udGFpbmVkCiAgZW5kaWYKIGVsc2UKICBpZiBzOnNoX2ZvbGRfZnVuY3Rpb25zCi0gIHN5biByZWdpb24gc2hGdW5jdGlvbk9uZSBmb2xkCW1hdGNoZ3JvdXA9c2hGdW5jdGlvbiBzdGFydD0iXlxzKlxoXHcqXHMqKClcX3MqeyIgZW5kPSJ9Igljb250YWlucz1Ac2hGdW5jdGlvbkxpc3QJCQlza2lwd2hpdGUgc2tpcG5sIG5leHRncm91cD1zaEZ1bmN0aW9uU3RhcnQsc2hRdWlja0NvbW1lbnQKLSAgc3luIHJlZ2lvbiBzaEZ1bmN0aW9uVHdvIGZvbGQJbWF0Y2hncm91cD1zaEZ1bmN0aW9uIHN0YXJ0PSJcaFx3KlxzKlwlKCgpXClcPVxfcyp7IgllbmQ9In0iCWNvbnRhaW5zPXNoRnVuY3Rpb25LZXksQHNoRnVuY3Rpb25MaXN0IGNvbnRhaW5lZAlza2lwd2hpdGUgc2tpcG5sIG5leHRncm91cD1zaEZ1bmN0aW9uU3RhcnQsc2hRdWlja0NvbW1lbnQKKyAgc3luIHJlZ2lvbiBzaEZ1bmN0aW9uT25lCWZvbGQJbWF0Y2hncm91cD1zaEZ1bmN0aW9uIHN0YXJ0PSJeXHMqXGhcdypccyooKVxfcyp7IgllbmQ9In0iCWNvbnRhaW5zPUBzaEZ1bmN0aW9uTGlzdAkgICAgICAgc2tpcHdoaXRlIHNraXBubAkJbmV4dGdyb3VwPXNoRnVuY3Rpb25TdGFydCxzaFF1aWNrQ29tbWVudAorICBzeW4gcmVnaW9uIHNoRnVuY3Rpb25Ud28JZm9sZAltYXRjaGdyb3VwPXNoRnVuY3Rpb24gc3RhcnQ9IlxoXHcqXHMqXCUoKClcKVw9XF9zKnsiCWVuZD0ifSIJY29udGFpbnM9c2hGdW5jdGlvbktleSxAc2hGdW5jdGlvbkxpc3QgY29udGFpbmVkIHNraXB3aGl0ZSBza2lwbmwJbmV4dGdyb3VwPXNoRnVuY3Rpb25TdGFydCxzaFF1aWNrQ29tbWVudAorICBzeW4gcmVnaW9uIHNoRnVuY3Rpb25UaHJlZQlmb2xkCW1hdGNoZ3JvdXA9c2hGdW5jdGlvbiBzdGFydD0iXlxzKlxoXHcqXHMqKClcX3MqKCIJZW5kPSIpIgljb250YWlucz1Ac2hGdW5jdGlvbkxpc3QJICAgICAgIHNraXB3aGl0ZSBza2lwbmwJCW5leHRncm91cD1zaEZ1bmN0aW9uU3RhcnQsc2hRdWlja0NvbW1lbnQKKyAgc3luIHJlZ2lvbiBzaEZ1bmN0aW9uRm91cglmb2xkCW1hdGNoZ3JvdXA9c2hGdW5jdGlvbiBzdGFydD0iXGhcdypccypcJSgoKVwpXD1cX3MqKCIJZW5kPSIpIgljb250YWlucz1zaEZ1bmN0aW9uS2V5LEBzaEZ1bmN0aW9uTGlzdCBjb250YWluZWQgc2tpcHdoaXRlIHNraXBubAluZXh0Z3JvdXA9c2hGdW5jdGlvblN0YXJ0LHNoUXVpY2tDb21tZW50CiAgZWxzZQotICBzeW4gcmVnaW9uIHNoRnVuY3Rpb25PbmUJbWF0Y2hncm91cD1zaEZ1bmN0aW9uIHN0YXJ0PSJeXHMqXGhcdypccyooKVxfcyp7IgllbmQ9In0iCWNvbnRhaW5zPUBzaEZ1bmN0aW9uTGlzdAotICBzeW4gcmVnaW9uIHNoRnVuY3Rpb25Ud28JbWF0Y2hncm91cD1zaEZ1bmN0aW9uIHN0YXJ0PSJcaFx3KlxzKlwlKCgpXClcPVxfcyp7IgllbmQ9In0iCWNvbnRhaW5zPXNoRnVuY3Rpb25LZXksQHNoRnVuY3Rpb25MaXN0IGNvbnRhaW5lZAorICBzeW4gcmVnaW9uIHNoRnVuY3Rpb25PbmUJCW1hdGNoZ3JvdXA9c2hGdW5jdGlvbiBzdGFydD0iXlxzKlxoXHcqXHMqKClcX3MqeyIJZW5kPSJ9Igljb250YWlucz1Ac2hGdW5jdGlvbkxpc3QKKyAgc3luIHJlZ2lvbiBzaEZ1bmN0aW9uVHdvCQltYXRjaGdyb3VwPXNoRnVuY3Rpb24gc3RhcnQ9IlxoXHcqXHMqXCUoKClcKVw9XF9zKnsiCWVuZD0ifSIJY29udGFpbnM9c2hGdW5jdGlvbktleSxAc2hGdW5jdGlvbkxpc3QgY29udGFpbmVkCisgIHN5biByZWdpb24gc2hGdW5jdGlvblRocmVlCQltYXRjaGdyb3VwPXNoRnVuY3Rpb24gc3RhcnQ9Il5ccypcaFx3KlxzKigpXF9zKigiCWVuZD0iKSIJY29udGFpbnM9QHNoRnVuY3Rpb25MaXN0CisgIHN5biByZWdpb24gc2hGdW5jdGlvbkZvdXIJCW1hdGNoZ3JvdXA9c2hGdW5jdGlvbiBzdGFydD0iXGhcdypccypcJSgoKVwpXD1cX3MqKCIJZW5kPSIpIgljb250YWlucz1zaEZ1bmN0aW9uS2V5LEBzaEZ1bmN0aW9uTGlzdCBjb250YWluZWQKICBlbmRpZgogZW5kaWYKIApAQCAtNTc3LDcgKzU4NSw3IEBACiBoaSBkZWYgbGluayBzaEVjaG8Jc2hTdHJpbmcKIGhpIGRlZiBsaW5rIHNoRWNob0RlbGltCXNoT3BlcmF0b3IKIGhpIGRlZiBsaW5rIHNoRWNob1F1b3RlCXNoU3RyaW5nCi0iaGkgZGVmIGxpbmsgc2hGb3JQUAlzaExvb3AKK2hpIGRlZiBsaW5rIHNoRm9yUFAJc2hMb29wCiBoaSBkZWYgbGluayBzaEVtYmVkZGVkRWNobwlzaFN0cmluZwogaGkgZGVmIGxpbmsgc2hFc2NhcGUJc2hDb21tYW5kU3ViCiBoaSBkZWYgbGluayBzaEV4RG91YmxlUXVvdGUJc2hEb3VibGVRdW90ZQpAQCAtNjA0LDcgKzYxMiw2IEBACiBoaSBkZWYgbGluayBzaFRlc3RQYXR0ZXJuCXNoU3RyaW5nCiBoaSBkZWYgbGluayBzaFRlc3REb3VibGVRdW90ZQlzaFN0cmluZwogaGkgZGVmIGxpbmsgc2hUZXN0U2luZ2xlUXVvdGUJc2hTdHJpbmcKLWhpIGRlZiBsaW5rIHNoQlFwYWlycwlzaFN0cmluZwogaGkgZGVmIGxpbmsgc2hWYXJpYWJsZQlzaFNldExpc3QKIGhpIGRlZiBsaW5rIHNoV3JhcExpbmVPcGVyYXRvcglzaE9wZXJhdG9yCiAKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3NtLnZpbSBiL3J1bnRpbWUvc3ludGF4L3NtLnZpbQppbmRleCBhZDk2Y2RiLi44ZmRjMTRiIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC9zbS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvc20udmltCkBAIC0xLDggKzEsOCBAQAogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6CXNlbmRtYWlsCiAiIE1haW50YWluZXI6CUNoYXJsZXMgRS4gQ2FtcGJlbGwgPE5kck9jaGlwU0BQY2FtcGJlbGxBZmFtaWx5Lk1iaXo+Ci0iIExhc3QgQ2hhbmdlOglKYW4gMTMsIDIwMTUKLSIgVmVyc2lvbjoJNgorIiBMYXN0IENoYW5nZToJT2N0IDIzLCAyMDE0CisiIFZlcnNpb246CTcKICIgVVJMOglodHRwOi8vd3d3LmRyY2hpcC5vcmcvYXN0cm9uYXV0L3ZpbS9pbmRleC5odG1sI1NZTlRBWF9TTQogCiBpZiBleGlzdHMoImI6Y3VycmVudF9zeW50YXgiKQpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgvdGV4LnZpbSBiL3J1bnRpbWUvc3ludGF4L3RleC52aW0KaW5kZXggZGNkZWNhMi4uZjcwNDc2NiAxMDA2NDQKLS0tIGEvcnVudGltZS9zeW50YXgvdGV4LnZpbQorKysgYi9ydW50aW1lL3N5bnRheC90ZXgudmltCkBAIC0xLDggKzEsOCBAQAogIiBWaW0gc3ludGF4IGZpbGUKICIgTGFuZ3VhZ2U6CVRlWAogIiBNYWludGFpbmVyOglDaGFybGVzIEUuIENhbXBiZWxsIDxOZHJjaGlwT0BTY2FtcGJlbGxQZmFtaWx5LkFiaXpNPgotIiBMYXN0IENoYW5nZToJTm92IDE4LCAyMDE0Ci0iIFZlcnNpb246CTgzCisiIExhc3QgQ2hhbmdlOglBcHIgMDIsIDIwMTUKKyIgVmVyc2lvbjoJODQKICIgVVJMOgkJaHR0cDovL3d3dy5kcmNoaXAub3JnL2FzdHJvbmF1dC92aW0vaW5kZXguaHRtbCNTWU5UQVhfVEVYCiAiCiAiIE5vdGVzOiB7e3sxCkBAIC0zOTEsMTAgKzM5MSwxNyBAQAogIiBwYXJ0aWN1bGFyIHN1cHBvcnQgZm9yIGJvbGQgYW5kIGl0YWxpYyB7e3sxCiBpZiBzOnRleF9mYXN0ID1+ICdiJwogICBpZiBzOnRleF9jb25jZWFsID1+ICdiJwotICAgc3luIHJlZ2lvbiB0ZXhCb2xkU3R5bGUJbWF0Y2hncm91cD10ZXhUeXBlU3R5bGUgc3RhcnQ9IlxcdGV4dGJmXHMqeyIgZW5kPSJ9IiBjb25jZWFsZW5kcyBjb250YWlucz1AdGV4Qm9sZEdyb3VwCi0gICBzeW4gcmVnaW9uIHRleEJvbGRJdGFsU3R5bGUJbWF0Y2hncm91cD10ZXhUeXBlU3R5bGUgc3RhcnQ9IlxcdGV4dGl0XHMqeyIgZW5kPSJ9IiBjb25jZWFsZW5kcyBjb250YWlucz1AdGV4SXRhbEdyb3VwCi0gICBzeW4gcmVnaW9uIHRleEl0YWxTdHlsZQltYXRjaGdyb3VwPXRleFR5cGVTdHlsZSBzdGFydD0iXFx0ZXh0aXRccyp7IiBlbmQ9In0iIGNvbmNlYWxlbmRzIGNvbnRhaW5zPUB0ZXhJdGFsR3JvdXAKLSAgIHN5biByZWdpb24gdGV4SXRhbEJvbGRTdHlsZQltYXRjaGdyb3VwPXRleFR5cGVTdHlsZSBzdGFydD0iXFx0ZXh0YmZccyp7IiBlbmQ9In0iIGNvbmNlYWxlbmRzIGNvbnRhaW5zPUB0ZXhCb2xkR3JvdXAKKyAgIGlmICFleGlzdHMoImc6dGV4X25vc3BlbGwiKSB8fCAhZzp0ZXhfbm9zcGVsbAorICAgIHN5biByZWdpb24gdGV4Qm9sZFN0eWxlCW1hdGNoZ3JvdXA9dGV4VHlwZVN0eWxlIHN0YXJ0PSJcXHRleHRiZlxzKlx6ZXsiIG1hdGNoZ3JvdXA9RGVsaW1pdGVyIGVuZD0ifSIgY29uY2VhbGVuZHMgY29udGFpbnM9QHRleEJvbGRHcm91cCxAU3BlbGwKKyAgICBzeW4gcmVnaW9uIHRleEJvbGRJdGFsU3R5bGUJbWF0Y2hncm91cD10ZXhUeXBlU3R5bGUgc3RhcnQ9IlxcdGV4dGl0XHMqXHpleyIgbWF0Y2hncm91cD1EZWxpbWl0ZXIgZW5kPSJ9IiBjb25jZWFsZW5kcyBjb250YWlucz1AdGV4SXRhbEdyb3VwLEBTcGVsbAorICAgIHN5biByZWdpb24gdGV4SXRhbFN0eWxlCW1hdGNoZ3JvdXA9dGV4VHlwZVN0eWxlIHN0YXJ0PSJcXHRleHRpdFxzKlx6ZXsiIG1hdGNoZ3JvdXA9RGVsaW1pdGVyIGVuZD0ifSIgY29uY2VhbGVuZHMgY29udGFpbnM9QHRleEl0YWxHcm91cCxAU3BlbGwKKyAgICBzeW4gcmVnaW9uIHRleEl0YWxCb2xkU3R5bGUJbWF0Y2hncm91cD10ZXhUeXBlU3R5bGUgc3RhcnQ9IlxcdGV4dGJmXHMqXHpleyIgbWF0Y2hncm91cD1EZWxpbWl0ZXIgZW5kPSJ9IiBjb25jZWFsZW5kcyBjb250YWlucz1AdGV4Qm9sZEdyb3VwLEBTcGVsbAorICAgZWxzZQorICAgIHN5biByZWdpb24gdGV4Qm9sZFN0eWxlCW1hdGNoZ3JvdXA9dGV4VHlwZVN0eWxlIHN0YXJ0PSJcXHRleHRiZlxzKlx6ZXsiIG1hdGNoZ3JvdXA9RGVsaW1pdGVyIGVuZD0ifSIgY29uY2VhbGVuZHMgY29udGFpbnM9QHRleEJvbGRHcm91cAorICAgIHN5biByZWdpb24gdGV4Qm9sZEl0YWxTdHlsZQltYXRjaGdyb3VwPXRleFR5cGVTdHlsZSBzdGFydD0iXFx0ZXh0aXRccypcemV7IiBtYXRjaGdyb3VwPURlbGltaXRlciBlbmQ9In0iIGNvbmNlYWxlbmRzIGNvbnRhaW5zPUB0ZXhJdGFsR3JvdXAKKyAgICBzeW4gcmVnaW9uIHRleEl0YWxTdHlsZQltYXRjaGdyb3VwPXRleFR5cGVTdHlsZSBzdGFydD0iXFx0ZXh0aXRccypcemV7IiBtYXRjaGdyb3VwPURlbGltaXRlciBlbmQ9In0iIGNvbmNlYWxlbmRzIGNvbnRhaW5zPUB0ZXhJdGFsR3JvdXAKKyAgICBzeW4gcmVnaW9uIHRleEl0YWxCb2xkU3R5bGUJbWF0Y2hncm91cD10ZXhUeXBlU3R5bGUgc3RhcnQ9IlxcdGV4dGJmXHMqXHpleyIgbWF0Y2hncm91cD1EZWxpbWl0ZXIgZW5kPSJ9IiBjb25jZWFsZW5kcyBjb250YWlucz1AdGV4Qm9sZEdyb3VwCisgICBlbmRpZgogICBlbmRpZgogZW5kaWYKIApAQCAtNTc2LDE0ICs1ODMsMTQgQEAKICAgIHN5biBtYXRjaCAgdGV4Q29tbWVudAkiJS4qJCIJCQljb250YWlucz1AdGV4Q29tbWVudEdyb3VwCiAgICBpZiBzOnRleF9mYXN0ID1+ICdjJwogICAgIHN5biByZWdpb24gdGV4Q29tbWVudAlzdGFydD0iXlx6c1xzKiUuKlxfcyolIglza2lwPSJeXHMqJSIJZW5kPSdeXHplXHMqW14lXScgZm9sZAotICAgIHN5biByZWdpb24gdGV4Tm9TcGVsbAljb250YWluZWQJbWF0Y2hncm91cD10ZXhDb21tZW50IHN0YXJ0PSIlXHMqbm9zcGVsbFxzKnsiCQllbmQ9IiVccypub3NwZWxsXHMqfSIJZm9sZCBjb250YWlucz1AdGV4Rm9sZEdyb3VwLEBOb1NwZWxsCi0gICAgc3luIHJlZ2lvbiB0ZXhTcGVsbFpvbmUJCSAJbWF0Y2hncm91cD10ZXhDb21tZW50IHN0YXJ0PSIlXHMqc3BlbGx6b25lX3N0YXJ0IgllbmQ9IiVccypzcGVsbHpvbmVfZW5kIglmb2xkIGNvbnRhaW5zPUBTcGVsbCxAdGV4Rm9sZEdyb3VwCisgICAgc3luIHJlZ2lvbiB0ZXhOb1NwZWxsCWNvbnRhaW5lZAkJbWF0Y2hncm91cD10ZXhDb21tZW50IHN0YXJ0PSIlXHMqbm9zcGVsbFxzKnsiCQllbmQ9IiVccypub3NwZWxsXHMqfSIJZm9sZCBjb250YWlucz1AdGV4Rm9sZEdyb3VwLEBOb1NwZWxsCisgICAgc3luIHJlZ2lvbiB0ZXhTcGVsbFpvbmUJCSAJCW1hdGNoZ3JvdXA9dGV4Q29tbWVudCBzdGFydD0iJVxzKnNwZWxsem9uZV9zdGFydCIJZW5kPSIlXHMqc3BlbGx6b25lX2VuZCIJZm9sZCBjb250YWlucz1AU3BlbGwsQHRleEZvbGRHcm91cAogICAgZW5kaWYKICAgZWxzZQotICAgc3luIG1hdGNoIHRleENvbW1lbnQJCSIlLiokIgkJY29udGFpbnM9QHRleENvbW1lbnRHcm91cAorICAgc3luIG1hdGNoIHRleENvbW1lbnQJCSIlLiokIgkJCWNvbnRhaW5zPUB0ZXhDb21tZW50R3JvdXAKICAgIGlmIHM6dGV4X2Zhc3QgPX4gJ2MnCi0gICAgc3luIHJlZ2lvbiB0ZXhOb1NwZWxsCWNvbnRhaW5lZAltYXRjaGdyb3VwPXRleENvbW1lbnQgc3RhcnQ9IiVccypub3NwZWxsXHMqeyIJCWVuZD0iJVxzKm5vc3BlbGxccyp9Igljb250YWlucz1AdGV4Rm9sZEdyb3VwLEBOb1NwZWxsCi0gICAgc3luIHJlZ2lvbiAgdGV4U3BlbGxab25lCQkgCW1hdGNoZ3JvdXA9dGV4Q29tbWVudCBzdGFydD0iJVxzKnNwZWxsem9uZV9zdGFydCIJZW5kPSIlXHMqc3BlbGx6b25lX2VuZCIJY29udGFpbnM9QFNwZWxsLEB0ZXhGb2xkR3JvdXAKKyAgICBzeW4gcmVnaW9uIHRleE5vU3BlbGwJY29udGFpbmVkCQltYXRjaGdyb3VwPXRleENvbW1lbnQgc3RhcnQ9IiVccypub3NwZWxsXHMqeyIJCWVuZD0iJVxzKm5vc3BlbGxccyp9Igljb250YWlucz1AdGV4Rm9sZEdyb3VwLEBOb1NwZWxsCisgICAgc3luIHJlZ2lvbiAgdGV4U3BlbGxab25lCQkgCQltYXRjaGdyb3VwPXRleENvbW1lbnQgc3RhcnQ9IiVccypzcGVsbHpvbmVfc3RhcnQiCWVuZD0iJVxzKnNwZWxsem9uZV9lbmQiCWNvbnRhaW5zPUBTcGVsbCxAdGV4Rm9sZEdyb3VwCiAgICBlbmRpZgogICBlbmRpZgogZW5kaWYKZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3ludGF4L3ZpbS52aW0gYi9ydW50aW1lL3N5bnRheC92aW0udmltCmluZGV4IDcxYTU1NWUuLjFmNGJhOGMgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3ludGF4L3ZpbS52aW0KKysrIGIvcnVudGltZS9zeW50YXgvdmltLnZpbQpAQCAtMSw4ICsxLDggQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOglWaW0gNy40IHNjcmlwdAogIiBNYWludGFpbmVyOglDaGFybGVzIEUuIENhbXBiZWxsIDxOZHJPY2hpcFNAUGNhbXBiZWxsQWZhbWlseS5NYml6PgotIiBMYXN0IENoYW5nZToJSmFuIDEzLCAyMDE1Ci0iIFZlcnNpb246CTcuNC0yOAorIiBMYXN0IENoYW5nZToJQXByIDAyLCAyMDE1CisiIFZlcnNpb246CTcuNC0zMwogIiBBdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBrZXl3b3JkIGxpc3RzOiB7e3sxCiAKICIgUXVpdCB3aGVuIGEgc3ludGF4IGZpbGUgd2FzIGFscmVhZHkgbG9hZGVkIHt7ezIKQEAgLTE4LDIzICsxOCwyNCBAQAogc3luIGNsdXN0ZXIgdmltQ29tbWVudEdyb3VwCWNvbnRhaW5zPXZpbVRvZG8sQFNwZWxsCiAKICIgcmVndWxhciB2aW0gY29tbWFuZHMge3t7Mgotc3luIGtleXdvcmQgdmltQ29tbWFuZCBjb250YWluZWQJYSBhcmdhW2RkXSBhcltnc10gYmRbZWxldGVdIGJOW2V4dF0gYnJlYWtsW2lzdF0gYlt1ZmZlcl0gY2FkIGNiW3VmZmVyXSBjZltpbGVdIGNoYW5nZXMgY2xbaXN0XSBjbltleHRdIGNvbFtkZXJdIGNvbmZbaXJtXSBjcVt1aXRdIGN3W2luZG93XSBkZWxjW29tbWFuZF0gZGVsZXRsIGRlbHAgZGlmZnB1W3RdIGRpciBkb2F1IGVhIGVbZGl0XSBlbmRmb1tyXSBlbmVbd10gZmlsZXMgZmluaVtzaF0gZm9sZGRbb29wZW5dIGcgaCBoZWxwdFthZ3NdIGlhYmNbbGVhcl0gaW50cm8gayBsIGxhbiBsY1tkXSBsZWZ0YVtib3ZlXSBsZ1tldGZpbGVdIGxsYVtzdF0gbG5ld1tlcl0gbE5mW2lsZV0gbG9ja3ZbYXJdIGxzIGx2aW1ncmVwYVtkZF0gbWF0W2NoXSBta1tleHJjXSBtbyBuIG5bZXh0XSBudVttYmVyXSBvcHRbaW9uc10gcGVbcmxdIHByIHByb2ZbaWxlXSBwdGpbdW1wXSBwdHBbcmV2aW91c10gcHkzIHEgcltlYWRdIHJlZHJbYXddIHJldHVbcm5dIHJ1Ylt5XSBydltpbWluZm9dIHNiYVtsbF0gc2JOW2V4dF0gc2NyaXB0ZVtuY29kaW5nXSBzZXRmW2lsZXR5cGVdIHNoW2VsbF0gc2ltW2FsdF0gc21bYXBdIHNuaVtmZl0gc29yW3RdIHNwZWxsaVtuZm9dIHNwcltldmlvdXNdIHN0YXJ0IHN0W29wXSBzdW5tZW51IHN5biB0YSB0YWJmW2luZF0gdGFibmV3IHRhYnJbZXdpbmRdIHRjbGRbb10gdGpbdW1wXSB0TiB0ciB0dVtubWVudV0gdW5kb2pbb2luXSB1bnNbaWxlbnRdIHZlW3JzaW9uXSB2aW1ncmVwYVtkZF0gdnNbcGxpdF0gd2luY1ttZF0gd05bZXh0XSB3c1t2ZXJiXSB4W2l0XSB4bm9yZW1lbnUKLXN5biBrZXl3b3JkIHZpbUNvbW1hbmQgY29udGFpbmVkCWFiIGFyZ2RbZWxldGVdIGFyZ3VbbWVudF0gYmVsW293cmlnaHRdIGJvW3RyaWdodF0gYnJbZXdpbmRdIGJ1ZmZlcnMgY2FkZGJbdWZmZXJdIGNjIGNmaXJbc3RdIGNoZFtpcl0gY2xvW3NlXSBjTltleHRdIGNvbG9bcnNjaGVtZV0gY29uW3RpbnVlXSBjcltld2luZF0gZCBkZWxlbCBkZWxldHAgZGVwIGRpZmZzW3BsaXRdIGRpW3NwbGF5XSBkcCBlYXJsaWVyIGVsW3NlXSBlbmRmdW4gZXggZmlsZXQgZmlyW3N0XSBmb2xkb1twZW5dIGdvW3RvXSBoYVtyZGNvcHldIGhpIGlmIGlzW2VhcmNoXSBrZWVwYSBsYSBsYW5bZ3VhZ2VdIGxjaFtkaXJdIGxleFtwcl0gbGdyW2VwXSBsbGlbc3RdIGxuZVt4dF0gbG8gbG9sW2Rlcl0gbHRbYWddIGx3W2luZG93XSBtZW51dCBta3NbZXNzaW9uXSBtb2RbZV0gbmJjW2xvc2VdIG5tYXBjW2xlYXJdIG8gb3duc3ludGF4IHBlcmxkW29dIHByZVtzZXJ2ZV0gcHJvbXB0ZltpbmRdIHB0bFthc3RdIHB0cltld2luZF0gcHkzZG8gcWFbbGxdIHJlY1tvdmVyXSByZWRyYXdzW3RhdHVzXSByZXdbaW5kXSBydWJ5ZFtvXSBzYWxbbF0gc2JmW2lyc3RdIHNicFtyZXZpb3VzXSBzY3JpcFt0bmFtZXNdIHNldGdbbG9iYWxdIHNpIHNsIHNtZSBzbm9bbWFnaWNdIHNvW3VyY2VdIHNwZWxscltlcGFsbF0gc3JlW3dpbmRdIHN0YXJ0Z1tyZXBsYWNlXSBzdG9waVtuc2VydF0gc3VzW3BlbmRdIHN5bmMgdGFiIHRhYmZpcltzdF0gdGFibltleHRdIHRhYnMgdGNsZltpbGVdIHRsW2FzdF0gdG5bZXh0XSB0cltld2luZF0gdSB1bmRvbFtpc3RdIHVwW2RhdGVdIHZlcnRbaWNhbF0gdmlbc3VhbF0gdyB3aW5kbyB3cFtyZXZpb3VzXSB3dW5kbyB4bWFwY1tsZWFyXSB4dW5tZQotc3luIGtleXdvcmQgdmltQ29tbWFuZCBjb250YWluZWQJYWJjW2xlYXJdIGFyZ2RvIGFzW2NpaV0gYmZbaXJzdF0gYnBbcmV2aW91c10gYnJvW3dzZV0gYnVuW2xvYWRdIGNhZFtkZXhwcl0gY2NsW29zZV0gY2dldGJbdWZmZXJdIGNoZVtja3BhdGhdIGNtYXBjW2xlYXJdIGNuZiBjb20gY29wZVtuXSBjcyBkZSBkZWxlcCBkZWxmIGRpIGRpZmZ0W2hpc10gZGpbdW1wXSBkcltvcF0gZWMgZWxzZWlbZl0gZW5kZlt1bmN0aW9uXSBleGlbdF0gZmlsZXR5cGUgZml4W2RlbF0gZm9yIGdyW2VwXSBoW2VscF0gaGlkW2VdIGlqW3VtcF0gaXNwW2xpdF0ga2VlcGFsdCBsYWQgbGFbc3RdIGxjbFtvc2VdIGxmW2lsZV0gbGdyZXBhW2RkXSBsbWFrW2VdIGxOW2V4dF0gbG9hZGsgbG9wW2VuXSBsdWEgbWEgbWVudXRbcmFuc2xhdGVdIG1rc3BbZWxsXSBtW292ZV0gbmJba2V5XSBub2Egb2xbZGZpbGVzXSBwIHBvW3BdIHByZXZbaW91c10gcHJvbXB0cltlcGxdIHB0biBwdHNbZWxlY3RdIHB5ZG8gcVt1aXRdIHJlZCByZWdbaXN0ZXJzXSByaVtnaHRdIHJ1YnlmW2lsZV0gc2FuW2Rib3hdIHNibFthc3RdIHNicltld2luZF0gc2NzIHNldGxbb2NhbF0gc2lnIHNsYVtzdF0gc21lbnUgc25vcmVtZSBzcGUgc3BlbGx1W25kb10gc3Qgc3Rhclt0aW5zZXJ0XSBzdHNbZWxlY3RdIHN2W2lld10gc3luY2JpbmQgdGFiY1tsb3NlXSB0YWJsW2FzdF0gdGFiTltleHRdIHRhW2ddIHRlW2Fyb2ZmXSB0bSB0TltleHRdIHRyeSB1biB1bmhbaWRlXSB2IHZpIHZpdVtzYWdlXSB3YVtsbF0gd2lucFtvc10gd3Egd3ZbaW1pbmZvXSB4bWUgeHVubWVudQotc3luIGtleXdvcmQgdmltQ29tbWFuZCBjb250YWluZWQJYWJvW3ZlbGVmdF0gYXJnZVtkaXRdIGF1IGJsW2FzdF0gYnJlYVtrXSBidSBid1tpcGVvdXRdIGNhZGRmW2lsZV0gY2QgY2dldGVbeHByXSBjaGVja3RbaW1lXSBjbiBjTmYgY29tY1tsZWFyXSBjb1tweV0gY3Njb3BlIGRlYnVnIGRbZWxldGVdIGRlbGZbdW5jdGlvbl0gZGlmZmdbZXRdIGRpZmZ1W3BkYXRlXSBkbCBkc1tlYXJjaF0gZWNob2VbcnJdIGVtW2VudV0gZW5bZGlmXSBleHVbc2FnZV0gZmluIGZvW2xkXSBmdSBncmVwYVtkZF0gaGVscGNbbG9zZV0gaGlzW3RvcnldIGlsW2lzdF0gaXVuYVtiYnJldl0ga2VlcGpbdW1wc10gbGFkZGJbdWZmZXJdIGxhdCBsY3MgbGZpcltzdF0gbGhbZWxwZ3JlcF0gbG1hcGNbbGVhcl0gbG5mIGxvYWRrZXltYXAgbHBmW2lsZV0gbHVhZG8gbWFrW2VdIG1lcyBta3YgbXogbmJzW3RhcnRdIG5vYXV0b2NtZCBvbWFwY1tsZWFyXSBwY1tsb3NlXSBwb3B1IHBbcmludF0gcHNbZWFyY2hdIHB0TiBwdVt0XSBweWZbaWxlXSBxdWl0YVtsbF0gcmVkaVtyXSByZXNbaXplXSByaWdodGJbZWxvd10gcnVuZG8gc2Fbcmd1bWVudF0gc2JtW29kaWZpZWRdIHNiW3VmZmVyXSBzY3Njb3BlIHNmW2luZF0gc2lnbiBzbFtlZXBdIHNuW2V4dF0gc25vcmVtZW51IHNwZWxsZFt1bXBdIHNwZWxsd1tyb25nXSBzdGFbZ10gc3RhcnRyW2VwbGFjZV0gc3VuW2hpZGVdIHN3W2FwbmFtZV0gc3ludGltZSB0YWJkW29dIHRhYm1bb3ZlXSB0YWJvW25seV0gdGFncyB0ZltpcnN0XSB0bVtlbnVdIHRvW3BsZWZ0XSB0c1tlbGVjdF0gdW5hW2JicmV2aWF0ZV0gdW5sIHZlIHZpZVt3XSB2bWFwY1tsZWFyXSB3aFtpbGVdIHdpbltzaXplXSB3cWFbbGxdIHggeG1lbnUgeHdpbmluZm8KLXN5biBrZXl3b3JkIHZpbUNvbW1hbmQgY29udGFpbmVkCWFsW2xdIGFyZ2dbbG9iYWxdIGJhZFtkXSBibVtvZGlmaWVkXSBicmVha2FbZGRdIGJ1ZiBjIGNhbFtsXSBjZVtudGVyXSBjZ1tldGZpbGVdIGNsIGNOIGNuZltpbGVdIGNvbXBbaWxlcl0gY3BmW2lsZV0gY3N0YWcgZGVidWdnW3JlZWR5XSBkZWxldGVsIGRlbGwgZGlmZm9bZmZdIGRpZyBkbGlbc3RdIGRzcFtsaXRdIGVjaG9tW3NnXSBlbiBlbmR0W3J5XSBmIGZpbmFbbGx5XSBmb2xkY1tsb3NlXSBmdW4gZ3VpIGhlbHBmW2luZF0gaSBpbWFwY1tsZWFyXSBqW29pbl0ga2VlW3BtYXJrc10gbGFkW2RleHByXSBsYXRlciBsY3Njb3BlIGxnZXRiW3VmZmVyXSBsW2lzdF0gbE4gbE5mIGxvW2Fkdmlld10gbHBbcmV2aW91c10gbHVhZmlsZSBtYVtya10gbWVzc2FnZXMgbWt2aWVbd10gbXpmW2lsZV0gbmUgbm9oW2xzZWFyY2hdIG9uW2x5XSBwZSBwb3B1W3BdIHBybyBwdGFbZ10gcHRuW2V4dF0gcHdbZF0gcHlbdGhvbl0gciByZWRbb10gcmV0W2FiXSBydSBydVtudGltZV0gc2F2W2Vhc10gc2JuW2V4dF0gc2NyaXAgc2VbdF0gc2ZpcltzdF0gc2lsW2VudF0gc21bYWdpY10gc05bZXh0XSBzbyBzcGVbbGxnb29kXSBzcFtsaXRdIHN0YXIgc3RqW3VtcF0gc3VubWUgc3kgdCB0YWJlW2RpdF0gdGFiTiB0YWJwW3JldmlvdXNdIHRjW2xdIHRoW3Jvd10gdG4gdHBbcmV2aW91c10gdHUgdVtuZG9dIHVubG9bY2t2YXJdIHZlcmJbb3NlXSB2aW1bZ3JlcF0gdm5lW3ddIHdpbiB3bltleHRdIHdbcml0ZV0geGFbbGxdIHhub3JlbWUgeVthbmtdCi1zeW4ga2V5d29yZCB2aW1Db21tYW5kIGNvbnRhaW5lZAlhciBhcmdsW29jYWxdIGJhW2xsXSBibltleHRdIGJyZWFrZFtlbF0gYnVmZG8gY2FiY1tsZWFyXSBjYXRbY2hdIGNleFtwcl0gY1toYW5nZV0gY2xhW3N0XSBjbmV3W2VyXSBjTmZbaWxlXSBjb24gY3BbcmV2aW91c10gY3VuYVtiYnJldl0gZGVsIGRlbGV0ZXAgZGVsbVthcmtzXSBkaWZmcFthdGNoXSBkaWdbcmFwaHNdIGRvIGUgZWNob24gZW5kZiBlbmR3W2hpbGVdIGZbaWxlXSBmaW5bZF0gZm9sZGRvY1tsb3NlZF0gZnVbbmN0aW9uXSBndmltIGhlbHBnW3JlcF0gaWEgaW4ganVbbXBzXSBrZWVwcFthdHRlcm5zXSBsYWRkZltpbGVdIGxiW3VmZmVyXSBsZVtmdF0gbGdldGVbeHByXSBsbCBsbmUgbG5mW2lsZV0gbG9jW2ttYXJrc10gbHJbZXdpbmRdIGx2W2ltZ3JlcF0gbWFya3MgbWsgbWt2W2ltcmNdIG16W3NjaGVtZV0gbmV3IG5vc3dhcFtmaWxlXSBvW3Blbl0gcGVkW2l0XSBwcFtvcF0gcHJvZmRbZWxdIHB0ZltpcnN0XSBwdE5bZXh0XSBweSBweXRob24zIHJlIAorc3luIGtleXdvcmQgdmltQ29tbWFuZCBjb250YWluZWQJYSBhcmdhW2RkXSBhcmdsW29jYWxdIGJhW2xsXSBibltleHRdIGJyZWFrZFtlbF0gYnVmZG8gY2FiY1tsZWFyXSBjYlt1ZmZlcl0gY2ZbaWxlXSBjaGFuZ2VzIGNsW2lzdF0gY25bZXh0XSBjb2xbZGVyXSBjb25mW2lybV0gY3FbdWl0XSBjd1tpbmRvd10gZGVsY1tvbW1hbmRdIGRlbGV0bCBkZWxwIGRpZmZwdVt0XSBkaXIgZG9hdSBlYSBlW2RpdF0gZW5kZm9bcl0gZW5lW3ddIGZpbGVzIGZpbmlbc2hdIGZvbGRkW29vcGVuXSBnIGggaGVscHRbYWdzXSBpYWJjW2xlYXJdIGludHJvIGsgbCBsYW4gbGNbZF0gbGVmdGFbYm92ZV0gbGdbZXRmaWxlXSBsbGFbc3RdIGxuZXdbZXJdIGxOZltpbGVdIGxvY2t2W2FyXSBscyBsdmltZ3JlcGFbZGRdIG1hdFtjaF0gbWtbZXhyY10gbW8gbiBuW2V4dF0gbm9yZSBvbltseV0gcGUgcG9wdVtwXSBwcm8gcHRhW2ddIHB0bltleHRdIHB3W2RdIHB5W3Rob25dIHIgcmVkW29dIHJldHVbcm5dIHJ1Ylt5XSBydltpbWluZm9dIHNiYVtsbF0gc2JOW2V4dF0gc2NyaXB0ZVtuY29kaW5nXSBzZXRmW2lsZXR5cGVdIHNoW2VsbF0gc2wgc21lIHNub1ttYWdpY10gc29bdXJjZV0gc3BlbGxyW2VwYWxsXSBzcmVbd2luZF0gc3RhcnRnW3JlcGxhY2VdIHN0b3BpW25zZXJ0XSBzdXNbcGVuZF0gc3luYyB0YWIgdGFiZmlyW3N0XSB0YWJuW2V4dF0gdGFicyB0Y2xmW2lsZV0gdGxbYXN0XSB0bltleHRdIHRyW2V3aW5kXSB1IHVuZG9sW2lzdF0gdXBbZGF0ZV0gdmVydFtpY2FsXSB2aVtzdWFsXSB3IHdpbmRvIHdwW3JldmlvdXNdIHd1bmRvIHhtYXBjW2xlYXJdIHhwcm9wCitzeW4ga2V5d29yZCB2aW1Db21tYW5kIGNvbnRhaW5lZAlhYiBhcmdkIGFyW2dzXSBiZFtlbGV0ZV0gYk5bZXh0XSBicmVha2xbaXN0XSBiW3VmZmVyXSBjYWRbZGJ1ZmZlcl0gY2MgY2ZpcltzdF0gY2hkW2lyXSBjbG9bc2VdIGNOW2V4dF0gY29sb1tyc2NoZW1lXSBjb25bdGludWVdIGNyW2V3aW5kXSBkIGRlbGVsIGRlbGV0cCBkZXAgZGlmZnNbcGxpdF0gZGlbc3BsYXldIGRwIGVhcmxpZXIgZWxbc2VdIGVuZGZ1biBleCBmaWxldCBmaXJbc3RdIGZvbGRvW3Blbl0gZ29bdG9dIGhhW3JkY29weV0gaGkgaWYgaXNbZWFyY2hdIGtlZXBhIGxhIGxhbltndWFnZV0gbGNoW2Rpcl0gbGV4W3ByXSBsZ3JbZXBdIGxsaVtzdF0gbG5lW3h0XSBsbyBsb2xbZGVyXSBsdFthZ10gbHdbaW5kb3ddIG1lbnV0IG1rc1tlc3Npb25dIG1vZFtlXSBuYmNbbG9zZV0gbm1hcGNbbGVhcl0gbm9zW3dhcGZpbGVdIG9bcGVuXSBwZWRbaXRdIHBwW29wXSBwcm9mZFtlbF0gcHRmW2lyc3RdIHB0TltleHRdIHB5IHB5dGhvbjMgcmUgcmVkclthd10gcmV3W2luZF0gcnVieWRbb10gc2FsW2xdIHNiZltpcnN0XSBzYnBbcmV2aW91c10gc2NyW2lwdG5hbWVzXSBzZXRnW2xvYmFsXSBzaWcgc2xhW3N0XSBzbWVudSBzbm9yZW1lIHNwZSBzcGVsbHVbbmRvXSBzdCBzdGFyW3RpbnNlcnRdIHN0c1tlbGVjdF0gc3ZbaWV3XSBzeW5jYmluZCB0YWJjW2xvc2VdIHRhYmxbYXN0XSB0YWJOW2V4dF0gdGFbZ10gdGVbYXJvZmZdIHRtIHROW2V4dF0gdHJ5IHVuIHVuaFtpZGVdIHYgdmkgdml1W3NhZ2VdIHdhW2xsXSB3aW5wW29zXSB3cSB3dltpbWluZm9dIHhtZSB4dW5tZQorc3luIGtleXdvcmQgdmltQ29tbWFuZCBjb250YWluZWQJYWJjW2xlYXJdIGFyZ2RbZWxldGVdIGFyZ3VbbWVudF0gYmVsW293cmlnaHRdIGJvW3RyaWdodF0gYnJbZXdpbmRdIGJ1ZmZlcnMgY2FkZGVbeHByXSBjY2xbb3NlXSBjZ2V0Ylt1ZmZlcl0gY2hlW2NrcGF0aF0gY21hcGNbbGVhcl0gY25mIGNvbSBjb3BlW25dIGNzIGRlIGRlbGVwIGRlbGYgZGkgZGlmZnRbaGlzXSBkalt1bXBdIGRyW29wXSBlYyBlbHNlaVtmXSBlbmRmW3VuY3Rpb25dIGV4aVt0XSBmaWxldHlwZSBmaXhbZGVsXSBmb3IgZ3JbZXBdIGhbZWxwXSBoaWRbZV0gaWpbdW1wXSBpc3BbbGl0XSBrZWVwYWx0IGxhZCBsYVtzdF0gbGNsW29zZV0gbGZbaWxlXSBsZ3JlcGFbZGRdIGxtYWtbZV0gbE5bZXh0XSBsb2FkayBsb3BbZW5dIGx1YSBtYSBtZW51dFtyYW5zbGF0ZV0gbWtzcFtlbGxdIG1bb3ZlXSBuYltrZXldIG5vYSBudVttYmVyXSBvcHRbaW9uc10gcGVbcmxdIHByIHByb2ZbaWxlXSBwdGpbdW1wXSBwdHBbcmV2aW91c10gcHkzIHEgcltlYWRdIHJlZHJhd3NbdGF0dXNdIHJpW2dodF0gcnVieWZbaWxlXSBzYW5bZGJveF0gc2JsW2FzdF0gc2JyW2V3aW5kXSBzY3Mgc2V0bFtvY2FsXSBzaWduIHNsW2VlcF0gc25bZXh0XSBzbm9yZW1lbnUgc3BlbGxkW3VtcF0gc3BlbGx3W3JvbmddIHN0YVtnXSBzdGFydHJbZXBsYWNlXSBzdW5baGlkZV0gc3dbYXBuYW1lXSBzeW50aW1lIHRhYmRbb10gdGFibVtvdmVdIHRhYm9bbmx5XSB0YWdzIHRmW2lyc3RdIHRtW2VudV0gdG9bcGxlZnRdIHRzW2VsZWN0XSB1bmFbYmJyZXZpYXRlXSB1bmwgdmUgdmllW3ddIHZtYXBjW2xlYXJdIHdoW2lsZV0gd2luW3NpemVdIHdxYVtsbF0geCB4bWVudSB4dW5tZW51CitzeW4ga2V5d29yZCB2aW1Db21tYW5kIGNvbnRhaW5lZAlhYm9bdmVsZWZ0XSBhcmdkbyBhc1tjaWldIGJmW2lyc3RdIGJwW3JldmlvdXNdIGJyb1t3c2VdIGJ1bltsb2FkXSBjYWRkZltpbGVdIGNkIGNnZXRlW3hwcl0gY2hlY2t0W2ltZV0gY24gY05mIGNvbWNbbGVhcl0gY29bcHldIGNzY29wZSBkZWJ1ZyBkW2VsZXRlXSBkZWxmW3VuY3Rpb25dIGRpZmZnW2V0XSBkaWZmdVtwZGF0ZV0gZGwgZHNbZWFyY2hdIGVjaG9lW3JyXSBlbVtlbnVdIGVuW2RpZl0gZXh1W3NhZ2VdIGZpbiBmb1tsZF0gZnUgZ3JlcGFbZGRdIGhlbHBjW2xvc2VdIGhpc1t0b3J5XSBpbFtpc3RdIGl1bmFbYmJyZXZdIGtlZXBqW3VtcHNdIGxhZGRiW3VmZmVyXSBsYXQgbGNzIGxmaXJbc3RdIGxoW2VscGdyZXBdIGxtYXBjW2xlYXJdIGxuZiBsb2Fka2V5bWFwIGxwZltpbGVdIGx1YWRvIG1ha1tlXSBtZXMgbWt2IG16IG5ic1t0YXJ0XSBub2F1dG9jbWQgbyBvd25zeW50YXggcGVybGRbb10gcHJlW3NlcnZlXSBwcm9tcHRmW2luZF0gcHRsW2FzdF0gcHRyW2V3aW5kXSBweTNkbyBxYVtsbF0gcmVjW292ZXJdIHJlZ1tpc3RlcnNdIHJpZ2h0YltlbG93XSBydW5kbyBzYVtyZ3VtZW50XSBzYm1bb2RpZmllZF0gc2JbdWZmZXJdIHNjc2NvcGUgc2ZbaW5kXSBzaWxbZW50XSBzbVthZ2ljXSBzTltleHRdIHNvIHNwZVtsbGdvb2RdIHNwW2xpdF0gc3RhciBzdGpbdW1wXSBzdW5tZSBzeSB0IHRhYmVbZGl0XSB0YWJOIHRhYnBbcmV2aW91c10gdGNbbF0gdGhbcm93XSB0biB0cFtyZXZpb3VzXSB0dSB1W25kb10gdW5sb1tja3Zhcl0gdmVyYltvc2VdIHZpbVtncmVwXSB2bmVbd10gd2luIHduW2V4dF0gd1tyaXRlXSB4YVtsbF0geG5vcmVtZSB4d2luaW5mbworc3luIGtleXdvcmQgdmltQ29tbWFuZCBjb250YWluZWQJYWxbbF0gYXJnZVtkaXRdIGF1IGJsW2FzdF0gYnJlYVtrXSBidSBid1tpcGVvdXRdIGNhbFtsXSBjZVtudGVyXSBjZ1tldGZpbGVdIGNsIGNOIGNuZltpbGVdIGNvbXBbaWxlcl0gY3BmW2lsZV0gY3N0YWcgZGVidWdnW3JlZWR5XSBkZWxldGVsIGRlbGwgZGlmZm9bZmZdIGRpZyBkbGlbc3RdIGRzcFtsaXRdIGVjaG9tW3NnXSBlbiBlbmR0W3J5XSBmIGZpbmFbbGx5XSBmb2xkY1tsb3NlXSBmdW4gZ3VpIGhlbHBmW2luZF0gaSBpbWFwY1tsZWFyXSBqW29pbl0ga2VlW3BtYXJrc10gbGFkW2RleHByXSBsYXRlciBsY3Njb3BlIGxnZXRiW3VmZmVyXSBsW2lzdF0gbE4gbE5mIGxvW2Fkdmlld10gbHBbcmV2aW91c10gbHVhZmlsZSBtYVtya10gbWVzc2FnZXMgbWt2aWVbd10gbXpmW2lsZV0gbmUgbm9oW2xzZWFyY2hdIG9sW2RmaWxlc10gcCBwb1twXSBwcmV2W2lvdXNdIHByb21wdHJbZXBsXSBwdG4gcHRzW2VsZWN0XSBweWRvIHFbdWl0XSByZWQgcmVzW2l6ZV0gcnUgcnVbbnRpbWVdIHNhdltlYXNdIHNibltleHRdIHNjciBzZVt0XSBzZmlyW3N0XSBzaW1bYWx0XSBzbVthcF0gc25pW2ZmXSBzb3JbdF0gc3BlbGxpW25mb10gc3ByW2V2aW91c10gc3RhcnQgc3Rbb3BdIHN1bm1lbnUgc3luIHRhIHRhYmZbaW5kXSB0YWJuZXcgdGFicltld2luZF0gdGNsZFtvXSB0alt1bXBdIHROIHRyIHR1W25tZW51XSB1bmRvaltvaW5dIHVuc1tpbGVudF0gdmVbcnNpb25dIHZpbWdyZXBhW2RkXSB2c1twbGl0XSB3aW5jW21kXSB3TltleHRdIHdzW3ZlcmJdIHhbaXRdIHhub3JlbWVudSB5W2Fua10KK3N5biBrZXl3b3JkIHZpbUNvbW1hbmQgY29udGFpbmVkCWFyIGFyZ2dbbG9iYWxdIGJhZFtkXSBibVtvZGlmaWVkXSBicmVha2FbZGRdIGJ1ZiBjIGNhdFtjaF0gY2V4W3ByXSBjW2hhbmdlXSBjbGFbc3RdIGNuZXdbZXJdIGNOZltpbGVdIGNvbiBjcFtyZXZpb3VzXSBjdW5hW2JicmV2XSBkZWwgZGVsZXRlcCBkZWxtW2Fya3NdIGRpZmZwW2F0Y2hdIGRpZ1tyYXBoc10gZG8gZSBlY2hvbiBlbmRmIGVuZHdbaGlsZV0gZltpbGVdIGZpbltkXSBmb2xkZG9jW2xvc2VkXSBmdVtuY3Rpb25dIGd2aW0gaGVscGdbcmVwXSBpYSBpbiBqdVttcHNdIGtlZXBwW2F0dGVybnNdIGxhZGRmW2lsZV0gbGJbdWZmZXJdIGxlW2Z0XSBsZ2V0ZVt4cHJdIGxsIGxuZSBsbmZbaWxlXSBsb2Nba21hcmtzXSBscltld2luZF0gbHZbaW1ncmVwXSBtYXJrcyBtayBta3ZbaW1yY10gbXpbc2NoZW1lXSBuZXcgbm9yIG9tYXBjW2xlYXJdIHBjW2xvc2VdIHBvcHUgcFtyaW50XSBwc1tlYXJjaF0gcHROIHB1W3RdIHB5ZltpbGVdIHF1aXRhW2xsXSByZWRpW3JdIHJldFthYl0gCiBzeW4gbWF0Y2ggICB2aW1Db21tYW5kIGNvbnRhaW5lZAkiXDx6Wy0rXi49XVw9XD4iCiBzeW4ga2V5d29yZCB2aW1TdGRQbHVnaW4gY29udGFpbmVkCURpZmZPcmlnIE1hbiBOW2V4dF0gUFtyaW50XSBTIFRPaHRtbCBYTUxlbnQgWE1MbnMgCiAKICIgdmltT3B0aW9ucyBhcmUgY2F1Z2h0IG9ubHkgd2hlbiBjb250YWluZWQgaW4gYSB2aW1TZXQge3t7Mgotc3luIGtleXdvcmQgdmltT3B0aW9uIGNvbnRhaW5lZAlhY2QgYW1iaXdpZHRoIGFyYWJpY3NoYXBlIGF1dG93cml0ZWFsbCBiYWNrdXBkaXIgYmRsYXkgYmluYXJ5IGJyZWFrYXQgYnMgY2FzZW1hcCBjZiBjaW5rIGNtZGhlaWdodCBjb2xvcmNvbHVtbiBjb21wbGV0ZWZ1bmMgY29weWluZGVudCBjcnlwdG1ldGhvZCBjc2NvcGV2ZXJib3NlIGNzdmVyYiBkZWJ1ZyBkaWN0IGRpciBlYiBlbmMgZXJyb3JiZWxscyBleHBhbmR0YWIgZmRsIGZlbmMgZmlsZWVuY29kaW5ncyBma21hcCBmb2xkZW5hYmxlIGZvbGRtaW5saW5lcyBmb3JtYXRwcmcgZ2RlZmF1bHQgZ3AgZ3VpZm9udHNldCBoZWxwZmlsZSBoaWRkZW4gaGwgaWdub3JlY2FzZSBpbWNtZGxpbmUgaW1zZiBpbmRlbnRleHByIGlzIGlzcCBrZXl3b3JkcHJnIGxhc3RzdGF0dXMgbGlzcCBsb2FkcGx1Z2lucyBtYWNhdHN1aSBtYXhjb21iaW5lIG1lZiBtbHMgbW9kZWxpbmVzIG1vdXNlaGlkZSBtcCBudSBvbW5pZnVuYyBwYXJhZ3JhcGhzIHBlbmMgcG0gcHJpbnRkZXZpY2UgcHJpbnRvcHRpb25zIHF1b3RlZXNjYXBlIHJlbWFwIHJpZ2h0bGVmdGNtZCBydHAgc2JvIHNjcm9sbGp1bXAgc2VsIHNoZWxsIHNoZWxsdHlwZSBzaG9ydG5hbWUgc2hxIHNtIHNvIHNwZWxsZmlsZSBzcHIgc3Qgc3RzIHN3YXBzeW5jIHN5biB0YWcgdGIgdGVybWJpZGkgdGdzdCB0aXRsZW9sZCB0b3AgdHRpbWVvdXRsZW4gdHR5c2Nyb2xsIHVsIHVyIHZlcmJvc2VmaWxlIHZpc3VhbGJlbGwgd2NtIHdpIHdpbGRtZW51IHdpbmZpeHdpZHRoIHdtIHdyYXBzY2FuCi1zeW4ga2V5d29yZCB2aW1PcHRpb24gY29udGFpbmVkCWFpIGFtYncgYXJpIGF3IGJhY2t1cGV4dCBiZXZhbCBiaW9zayBicmVha2luZGVudCBic2RpciBjYiBjZnUgY2lua2V5cyBjbWR3aW5oZWlnaHQgY29sdW1ucyBjb21wbGV0ZW9wdCBjb3QgY3Njb3BlcGF0aGNvbXAgY3NwYyBjdWMgZGVjbyBkaWN0aW9uYXJ5IGRpcmVjdG9yeSBlZCBlbmNvZGluZyBlcnJvcmZpbGUgZXhyYyBmZGxzIGZlbmNzIGZpbGVmb3JtYXQgZmxwIGZvbGRleHByIGZvbGRuZXN0bWF4IGZwIGdmbSBncmVwZm9ybWF0IGd1aWZvbnR3aWRlIGhlbHBoZWlnaHQgaGlnaGxpZ2h0IGhsZyBpbSBpbWQgaW1zdGF0dXNmdW5jIGluZGVudGtleXMgaXNmIGlzcHJpbnQga20gbGF6eXJlZHJhdyBsaXNwd29yZHMgbHBsIG1hZ2ljIG1heGZ1bmNkZXB0aCBtZW51aXRlbXMgbW0gbW9kaWZpYWJsZSBtb3VzZW0gbXBzIG51bWJlciBvcGVuZGV2aWNlIHBhc3RlIHBleCBwbWJjcyBwcmludGVuY29kaW5nIHByb21wdCByZHQgcmVuZGVyb3B0aW9ucyBybCBydSBzYnIgc2Nyb2xsb2ZmIHNlbGVjdGlvbiBzaGVsbGNtZGZsYWcgc2hlbGx4ZXNjYXBlIHNob3dicmVhayBzaSBzbWFydGNhc2Ugc29mdHRhYnN0b3Agc3BlbGxsYW5nIHNwcyBzdGEgc3Ugc3diIHN5bm1heGNvbCB0YWdic2VhcmNoIHRiaSB0ZXJtZW5jb2RpbmcgdGhlc2F1cnVzIHRpdGxlc3RyaW5nIHRwbSB0dG0gdHR5dHlwZSB1bmRvZGlyIHV0IHZmaWxlIHZvcCB3ZCB3aWMgd2lsZG1vZGUgd2luaGVpZ2h0IHdtaCB3cml0ZQotc3luIGtleXdvcmQgdmltT3B0aW9uIGNvbnRhaW5lZAlha20gYW50aSBhcnNoYXBlIGF3YSBiYWNrdXBza2lwIGJleCBiaW9za2V5IGJyZWFraW5kZW50b3B0IGJzayBjYyBjaCBjaW5vIGNtcCBjb20gY29uY2VhbGN1cnNvciBjcCBjc2NvcGVwcmcgY3NwcmcgY3VsIGRlZiBkaWZmIGRpc3BsYXkgZWRjb21wYXRpYmxlIGVuZG9mbGluZSBlcnJvcmZvcm1hdCBmY2wgZmRtIGZleCBmaWxlZm9ybWF0cyBmbWwgZm9sZGlnbm9yZSBmb2xkb3BlbiBmcyBnZm4gZ3JlcHByZyBndWloZWFkcm9vbSBoZWxwbGFuZyBoaXN0b3J5IGhscyBpbWFjdGl2YXRlZnVuYyBpbWRpc2FibGUgaW5jIGluZGsgaXNmbmFtZSBqb2luc3BhY2VzIGttcCBsYnIgbGlzdCBscyBtYWtlZWYgbWF4bWFwZGVwdGggbWZkIG1tZCBtb2RpZmllZCBtb3VzZW1vZGVsIG1zbSBudW1iZXJ3aWR0aCBvcGVyYXRvcmZ1bmMgcGFzdGV0b2dnbGUgcGV4cHIgcG1iZm4gcHJpbnRleHByIHB0IHJlIHJlcG9ydCBybGMgcnVmIHNjIHNjcm9sbG9wdCBzZWxlY3Rtb2RlIHNoZWxscGlwZSBzaGVsbHhxdW90ZSBzaG93Y21kIHNpZGVzY3JvbGwgc21hcnRpbmRlbnQgc29sIHNwZWxsc3VnZ2VzdCBzciBzdGFsIHN1YSBzd2Ygc3ludGF4IHRhZ2xlbmd0aCB0YmlkaSB0ZXJzZSB0aWxkZW9wIHRsIHRyIHR0eSB0dyB1bmRvZmlsZSB2YiB2aSB3YSB3ZWlyZGludmVydCB3aWcgd2lsZG9wdGlvbnMgd2lubWluaGVpZ2h0IHdtbnUgd3JpdGVhbnkKLXN5biBrZXl3b3JkIHZpbU9wdGlvbiBjb250YWluZWQJYWwgYW50aWFsaWFzIGF1dG9jaGRpciBiYWNrZ3JvdW5kIGJhbGxvb25kZWxheSBiZXhwciBiayBicmkgYnQgY2N2IGNoYXJjb252ZXJ0IGNpbm9wdGlvbnMgY21zIGNvbW1lbnRzIGNvbmNlYWxsZXZlbCBjcG8gY3Njb3BlcXVpY2tmaXggY3NxZiBjdXJzb3JiaW5kIGRlZmluZSBkaWZmZXhwciBkeSBlZiBlb2wgZXNja2V5cyBmY3MgZmRuIGZmIGZpbGVpZ25vcmVjYXNlIGZtciBmb2xkbGV2ZWwgZm9sZHRleHQgZnN5bmMgZ2ZzIGd0bCBndWlvcHRpb25zIGhmIGhrIGhsc2VhcmNoIGltYWN0aXZhdGVrZXkgaW1pIGluY2x1ZGUgaW5leCBpc2kganMga3AgbGNzIGxpc3RjaGFycyBsc3AgbWFrZXByZyBtYXhtZW0gbWggbW1wIG1vcmUgbW91c2VzIG16cSBudXcgb3BmdW5jIHBhdGNoZXhwciBwZm4gcG9wdCBwcmludGZvbnQgcHVtaGVpZ2h0IHJlYWRvbmx5IHJlc3RvcmVzY3JlZW4gcm51IHJ1bGVyIHNjYiBzY3Mgc2Vzc2lvbm9wdGlvbnMgc2hlbGxxdW90ZSBzaGlmdHJvdW5kIHNob3dmdWxsdGFnIHNpZGVzY3JvbGxvZmYgc21hcnR0YWIgc3Agc3BmIHNyciBzdGFydG9mbGluZSBzdWZmaXhlcyBzd2l0Y2hidWYgdGEgdGFncmVsYXRpdmUgdGJpcyB0ZXh0YXV0byB0aW1lb3V0IHRtIHRzIHR0eWJ1aWx0aW4gdHggdW5kb2xldmVscyB2YnMgdmlld2RpciB3YWsgd2ZoIHdpbGRjaGFyIHdpbSB3aW5taW53aWR0aCB3bXcgd3JpdGViYWNrdXAKLXN5biBrZXl3b3JkIHZpbU9wdGlvbiBjb250YWluZWQJYWxlcGggYXIgYXV0b2luZGVudCBiYWNrc3BhY2UgYmFsbG9vbmV2YWwgYmcgYmtjIGJyaW9wdCBidWZoaWRkZW4gY2QgY2kgY2ludyBjbyBjb21tZW50c3RyaW5nIGNvbmZpcm0gY3BvcHRpb25zIGNzY29wZXJlbGF0aXZlIGNzcmUgY3Vyc29yY29sdW1uIGRlbGNvbWJpbmUgZGlmZm9wdCBlYSBlZm0gZXAgZXQgZmRjIGZkbyBmZnMgZmlsZXR5cGUgZm8gZm9sZGxldmVsc3RhcnQgZm9ybWF0ZXhwciBmdCBnZncgZ3R0IGd1aXB0eSBoaCBoa21hcCBpYyBpbWFmIGltaW5zZXJ0IGluY2x1ZGVleHByIGluZiBpc2lkZW50IGtleSBsYW5nbWFwIGxpbmVicmVhayBsbSBsdyBtYXQgbWF4bWVtcGF0dGVybiBtaXMgbW10IG1vdXNlIG1vdXNlc2hhcGUgbXpxdWFudHVtIG9kZXYgb3NmaWxldHlwZSBwYXRjaG1vZGUgcGggcHJlc2VydmVpbmRlbnQgcHJpbnRoZWFkZXIgcHZoIHJlZHJhd3RpbWUgcmV2aW5zIHJvIHJ1bGVyZm9ybWF0IHNjciBzZWN0IHNmdCBzaGVsbHJlZGlyIHNoaWZ0d2lkdGggc2hvd21hdGNoIHNpc28gc21jIHNwYyBzcGwgc3Mgc3RhdHVzbGluZSBzdWZmaXhlc2FkZCBzd3MgdGFibGluZSB0YWdzIHRicyB0ZXh0bW9kZSB0aW1lb3V0bGVuIHRvIHRzbCB0dHlmYXN0IHVjIHVuZG9yZWxvYWQgdmRpciB2aWV3b3B0aW9ucyB3YXJuIHdmdyB3aWxkY2hhcm0gd2luYWx0a2V5cyB3aW53aWR0aCB3b3Agd3JpdGVkZWxheQotc3luIGtleXdvcmQgdmltT3B0aW9uIGNvbnRhaW5lZAlhbGxvd3JldmlucyBhcmFiIGF1dG9yZWFkIGJhY2t1cCBiYWxsb29uZXhwciBiaCBibCBicmsgYnVmbGlzdGVkIGNkcGF0aCBjaW4gY2lud29yZHMgY29jdSBjb21wYXRpYmxlIGNvbnNrIGNwdCBjc2NvcGV0YWcgY3N0IGN1cnNvcmxpbmUgZGV4IGRpZ3JhcGggZWFkIGVpIGVxdWFsYWx3YXlzIGV2ZW50aWdub3JlIGZkZSBmZHQgZmljIGZpbGxjaGFycyBmb2xkY2xvc2UgZm9sZG1hcmtlciBmb3JtYXRsaXN0cGF0IGdjciBnaHIgZ3VpY3Vyc29yIGd1aXRhYmxhYmVsIGhpIGhrbWFwcCBpY29uIGltYWsgaW1zIGluY3NlYXJjaCBpbmZlcmNhc2UgaXNrIGtleW1hcCBsYW5nbWVudSBsaW5lcyBsbWFwIGx6IG1hdGNocGFpcnMgbWF4bWVtdG90IG1rc3BlbGxtZW0gbW9kIG1vdXNlZiBtb3VzZXQgbmYgb2Z0IHBhIHBhdGggcGhlYWRlciBwcmV2aWV3aGVpZ2h0IHByaW50bWJjaGFyc2V0IHB2dyByZWdleHBlbmdpbmUgcmkgcm9wIHJ1bnRpbWVwYXRoIHNjcm9sbCBzZWN0aW9ucyBzaCBzaGVsbHNsYXNoIHNobSBzaG93bW9kZSBzaiBzbWQgc3BlbGwgc3BsaXRiZWxvdyBzc2wgc3RsIHN3IHN4ZSB0YWJwYWdlbWF4IHRhZ3N0YWNrIHRlbmMgdGV4dHdpZHRoIHRpdGxlIHRvb2xiYXIgdHNyIHR0eW0gdWRmIHVwZGF0ZWNvdW50IHZlIHZpbWluZm8gd2Igd2ggd2lsZGlnbm9yZSB3aW5kb3cgd2l2IHdyYXAgd3MKLXN5biBrZXl3b3JkIHZpbU9wdGlvbiBjb250YWluZWQJYWx0a2V5bWFwIGFyYWJpYyBhdXRvd3JpdGUgYmFja3VwY29weSBiZGlyIGJpbiBib21iIGJyb3dzZWRpciBidWZ0eXBlIGNlZGl0IGNpbmRlbnQgY2xpcGJvYXJkIGNvbGUgY29tcGxldGUgY29uc2tleSBjcmIgY3Njb3BldGFnb3JkZXIgY3N0byBjd2ggZGcgZGlwIGVhZGlyZWN0aW9uIGVrIGVxdWFscHJnIGV4IGZkaSBmZW4gZmlsZWVuY29kaW5nIGZrIGZvbGRjb2x1bW4gZm9sZG1ldGhvZCBmb3JtYXRvcHRpb25zIGdkIGdvIGd1aWZvbnQgZ3VpdGFidG9vbHRpcCBoaWQgaGtwIGljb25zdHJpbmcgaW1jIGltc2VhcmNoIGluZGUgaW5zZXJ0bW9kZSBpc2tleXdvcmQga2V5bW9kZWwgbGFuZ25vcmVtYXAgbGluZXNwYWNlIGxuciBtYSBtYXRjaHRpbWUgbWNvIG1sIG1vZGVsaW5lIG1vdXNlZm9jdXMgbW91c2V0aW1lIG5yZm9ybWF0cyBvZnUgcGFyYSBwZGV2IHBpIHByZXZpZXd3aW5kb3cgcHJpbnRtYmZvbnQgcWUgcmVsYXRpdmVudW1iZXIgcmlnaHRsZWZ0IHJzIHNiIHNjcm9sbGJpbmQgc2VjdXJlIHNoY2Ygc2hlbGx0ZW1wIHNob3J0bWVzcyBzaG93dGFibGluZSBzbG0gc24gc3BlbGxjYXBjaGVjayBzcGxpdHJpZ2h0IHNzb3Agc3RtcCBzd2FwZmlsZSBzeHEgdGFic3RvcCB0YWwgdGVybSB0ZiB0aXRsZWxlbiB0b29sYmFyaWNvbnNpemUgdHRpbWVvdXQgdHR5bW91c2UgdWRpciB1cGRhdGV0aW1lIHZlcmJvc2UgdmlydHVhbGVkaXQgd2Mgd2hpY2h3cmFwIHdpbGRpZ25vcmVjYXNlIHdpbmZpeGhlaWdodCB3aXcgd3JhcG1hcmdpbiB3dworc3luIGtleXdvcmQgdmltT3B0aW9uIGNvbnRhaW5lZAlhY2QgYW1idyBhcmkgYXcgYmFja3VwZXh0IGJldmFsIGJpb3NrIGJyZWFraW5kZW50IGJzZGlyIGNiIGNmdSBjaW5rZXlzIGNtZGhlaWdodCBjb2xvcmNvbHVtbiBjb21wbGV0ZWZ1bmMgY29weWluZGVudCBjcnlwdG1ldGhvZCBjc2NvcGV2ZXJib3NlIGNzdmVyYiBkZWJ1ZyBkaWN0IGRpciBlYiBlbmMgZXJyb3JiZWxscyBleHBhbmR0YWIgZmRsIGZlbmMgZmlsZWVuY29kaW5ncyBma21hcCBmb2xkZW5hYmxlIGZvbGRtaW5saW5lcyBmb3JtYXRwcmcgZ2RlZmF1bHQgZ3AgZ3VpZm9udHNldCBoZWxwZmlsZSBoaWRkZW4gaGwgaWdub3JlY2FzZSBpbWNtZGxpbmUgaW1zZiBpbmRlbnRleHByIGlzIGlzcCBrZXl3b3JkcHJnIGxhc3RzdGF0dXMgbGlzcCBsb2FkcGx1Z2lucyBtYWNhdHN1aSBtYXhjb21iaW5lIG1lZiBtbHMgbW9kZWxpbmVzIG1vdXNlaGlkZSBtcCBudSBvbW5pZnVuYyBwYXJhZ3JhcGhzIHBlbmMgcG0gcHJpbnRkZXZpY2UgcHJpbnRvcHRpb25zIHF1b3RlZXNjYXBlIHJlbWFwIHJpZ2h0bGVmdGNtZCBydHAgc2JvIHNjcm9sbGp1bXAgc2VsIHNoZWxsIHNoZWxsdHlwZSBzaG9ydG5hbWUgc2hxIHNtIHNvIHNwZWxsZmlsZSBzcHIgc3Qgc3RzIHN3YXBzeW5jIHN5biB0YWcgdGIgdGVybWJpZGkgdGdzdCB0aXRsZW9sZCB0b3AgdHRpbWVvdXRsZW4gdHR5c2Nyb2xsIHVsIHVyIHZlcmJvc2VmaWxlIHZpc3VhbGJlbGwgd2NtIHdpIHdpbGRtZW51IHdpbmZpeHdpZHRoIHdtIHdyYXBzY2FuCitzeW4ga2V5d29yZCB2aW1PcHRpb24gY29udGFpbmVkCWFpIGFudGkgYXJzaGFwZSBhd2EgYmFja3Vwc2tpcCBiZXggYmlvc2tleSBicmVha2luZGVudG9wdCBic2sgY2MgY2ggY2lubyBjbWR3aW5oZWlnaHQgY29sdW1ucyBjb21wbGV0ZW9wdCBjb3QgY3Njb3BlcGF0aGNvbXAgY3NwYyBjdWMgZGVjbyBkaWN0aW9uYXJ5IGRpcmVjdG9yeSBlZCBlbmNvZGluZyBlcnJvcmZpbGUgZXhyYyBmZGxzIGZlbmNzIGZpbGVmb3JtYXQgZmxwIGZvbGRleHByIGZvbGRuZXN0bWF4IGZwIGdmbSBncmVwZm9ybWF0IGd1aWZvbnR3aWRlIGhlbHBoZWlnaHQgaGlnaGxpZ2h0IGhsZyBpbSBpbWQgaW1zdGF0dXNmdW5jIGluZGVudGtleXMgaXNmIGlzcHJpbnQga20gbGF6eXJlZHJhdyBsaXNwd29yZHMgbHBsIG1hZ2ljIG1heGZ1bmNkZXB0aCBtZW51aXRlbXMgbW0gbW9kaWZpYWJsZSBtb3VzZW0gbXBzIG51bWJlciBvcGVuZGV2aWNlIHBhc3RlIHBleCBwbWJjcyBwcmludGVuY29kaW5nIHByb21wdCByZHQgcmVuZGVyb3B0aW9ucyBybCBydSBzYnIgc2Nyb2xsb2ZmIHNlbGVjdGlvbiBzaGVsbGNtZGZsYWcgc2hlbGx4ZXNjYXBlIHNob3dicmVhayBzaSBzbWFydGNhc2Ugc29mdHRhYnN0b3Agc3BlbGxsYW5nIHNwcyBzdGEgc3Ugc3diIHN5bm1heGNvbCB0YWdic2VhcmNoIHRiaSB0ZXJtZW5jb2RpbmcgdGhlc2F1cnVzIHRpdGxlc3RyaW5nIHRwbSB0dG0gdHR5dHlwZSB1bmRvZGlyIHV0IHZmaWxlIHZvcCB3ZCB3aWMgd2lsZG1vZGUgd2luaGVpZ2h0IHdtaCB3cml0ZQorc3luIGtleXdvcmQgdmltT3B0aW9uIGNvbnRhaW5lZAlha20gYW50aWFsaWFzIGF1dG9jaGRpciBiYWNrZ3JvdW5kIGJhbGxvb25kZWxheSBiZXhwciBiayBicmkgYnQgY2N2IGNoYXJjb252ZXJ0IGNpbm9wdGlvbnMgY21wIGNvbSBjb25jZWFsY3Vyc29yIGNwIGNzY29wZXByZyBjc3ByZyBjdWwgZGVmIGRpZmYgZGlzcGxheSBlZGNvbXBhdGlibGUgZW5kb2ZsaW5lIGVycm9yZm9ybWF0IGZjbCBmZG0gZmV4IGZpbGVmb3JtYXRzIGZtbCBmb2xkaWdub3JlIGZvbGRvcGVuIGZzIGdmbiBncmVwcHJnIGd1aWhlYWRyb29tIGhlbHBsYW5nIGhpc3RvcnkgaGxzIGltYWN0aXZhdGVmdW5jIGltZGlzYWJsZSBpbmMgaW5kayBpc2ZuYW1lIGpvaW5zcGFjZXMga21wIGxiciBsaXN0IGxzIG1ha2VlZiBtYXhtYXBkZXB0aCBtZmQgbW1kIG1vZGlmaWVkIG1vdXNlbW9kZWwgbXNtIG51bWJlcndpZHRoIG9wZXJhdG9yZnVuYyBwYXN0ZXRvZ2dsZSBwZXhwciBwbWJmbiBwcmludGV4cHIgcHQgcmUgcmVwb3J0IHJsYyBydWYgc2Mgc2Nyb2xsb3B0IHNlbGVjdG1vZGUgc2hlbGxwaXBlIHNoZWxseHF1b3RlIHNob3djbWQgc2lkZXNjcm9sbCBzbWFydGluZGVudCBzb2wgc3BlbGxzdWdnZXN0IHNyIHN0YWwgc3VhIHN3ZiBzeW50YXggdGFnbGVuZ3RoIHRiaWRpIHRlcnNlIHRpbGRlb3AgdGwgdHIgdHR5IHR3IHVuZG9maWxlIHZiIHZpIHdhIHdlaXJkaW52ZXJ0IHdpZyB3aWxkb3B0aW9ucyB3aW5taW5oZWlnaHQgd21udSB3cml0ZWFueQorc3luIGtleXdvcmQgdmltT3B0aW9uIGNvbnRhaW5lZAlhbCBhciBhdXRvaW5kZW50IGJhY2tzcGFjZSBiYWxsb29uZXZhbCBiZyBia2MgYnJpb3B0IGJ1ZmhpZGRlbiBjZCBjaSBjaW53IGNtcyBjb21tZW50cyBjb25jZWFsbGV2ZWwgY3BvIGNzY29wZXF1aWNrZml4IGNzcWYgY3Vyc29yYmluZCBkZWZpbmUgZGlmZmV4cHIgZHkgZWYgZW9sIGVzY2tleXMgZmNzIGZkbiBmZiBmaWxlaWdub3JlY2FzZSBmbXIgZm9sZGxldmVsIGZvbGR0ZXh0IGZzeW5jIGdmcyBndGwgZ3Vpb3B0aW9ucyBoZiBoayBobHNlYXJjaCBpbWFjdGl2YXRla2V5IGltaSBpbmNsdWRlIGluZXggaXNpIGpzIGtwIGxjcyBsaXN0Y2hhcnMgbHNwIG1ha2VwcmcgbWF4bWVtIG1oIG1tcCBtb3JlIG1vdXNlcyBtenEgbnV3IG9wZnVuYyBwYXRjaGV4cHIgcGZuIHBvcHQgcHJpbnRmb250IHB1bWhlaWdodCByZWFkb25seSByZXN0b3Jlc2NyZWVuIHJudSBydWxlciBzY2Igc2NzIHNlc3Npb25vcHRpb25zIHNoZWxscXVvdGUgc2hpZnRyb3VuZCBzaG93ZnVsbHRhZyBzaWRlc2Nyb2xsb2ZmIHNtYXJ0dGFiIHNwIHNwZiBzcnIgc3RhcnRvZmxpbmUgc3VmZml4ZXMgc3dpdGNoYnVmIHRhIHRhZ3JlbGF0aXZlIHRiaXMgdGV4dGF1dG8gdGltZW91dCB0bSB0cyB0dHlidWlsdGluIHR4IHVuZG9sZXZlbHMgdmJzIHZpZXdkaXIgd2FrIHdmaCB3aWxkY2hhciB3aW0gd2lubWlud2lkdGggd213IHdyaXRlYmFja3VwCitzeW4ga2V5d29yZCB2aW1PcHRpb24gY29udGFpbmVkCWFsZXBoIGFyYWIgYXV0b3JlYWQgYmFja3VwIGJhbGxvb25leHByIGJoIGJsIGJyayBidWZsaXN0ZWQgY2RwYXRoIGNpbiBjaW53b3JkcyBjbyBjb21tZW50c3RyaW5nIGNvbmZpcm0gY3BvcHRpb25zIGNzY29wZXJlbGF0aXZlIGNzcmUgY3Vyc29yY29sdW1uIGRlbGNvbWJpbmUgZGlmZm9wdCBlYSBlZm0gZXAgZXQgZmRjIGZkbyBmZnMgZmlsZXR5cGUgZm8gZm9sZGxldmVsc3RhcnQgZm9ybWF0ZXhwciBmdCBnZncgZ3R0IGd1aXB0eSBoaCBoa21hcCBpYyBpbWFmIGltaW5zZXJ0IGluY2x1ZGVleHByIGluZiBpc2lkZW50IGtleSBsYW5nbWFwIGxpbmVicmVhayBsbSBsdyBtYXQgbWF4bWVtcGF0dGVybiBtaXMgbW10IG1vdXNlIG1vdXNlc2hhcGUgbXpxdWFudHVtIG9kZXYgb3NmaWxldHlwZSBwYXRjaG1vZGUgcGggcHJlc2VydmVpbmRlbnQgcHJpbnRoZWFkZXIgcHZoIHJlZHJhd3RpbWUgcmV2aW5zIHJvIHJ1bGVyZm9ybWF0IHNjciBzZWN0IHNmdCBzaGVsbHJlZGlyIHNoaWZ0d2lkdGggc2hvd21hdGNoIHNpc28gc21jIHNwYyBzcGwgc3Mgc3RhdHVzbGluZSBzdWZmaXhlc2FkZCBzd3MgdGFibGluZSB0YWdzIHRicyB0ZXh0bW9kZSB0aW1lb3V0bGVuIHRvIHRzbCB0dHlmYXN0IHVjIHVuZG9yZWxvYWQgdmRpciB2aWV3b3B0aW9ucyB3YXJuIHdmdyB3aWxkY2hhcm0gd2luYWx0a2V5cyB3aW53aWR0aCB3b3Agd3JpdGVkZWxheQorc3luIGtleXdvcmQgdmltT3B0aW9uIGNvbnRhaW5lZAlhbGxvd3JldmlucyBhcmFiaWMgYXV0b3dyaXRlIGJhY2t1cGNvcHkgYmRpciBiaW4gYm9tYiBicm93c2VkaXIgYnVmdHlwZSBjZWRpdCBjaW5kZW50IGNsaXBib2FyZCBjb2N1IGNvbXBhdGlibGUgY29uc2sgY3B0IGNzY29wZXRhZyBjc3QgY3Vyc29ybGluZSBkZXggZGlncmFwaCBlYWQgZWkgZXF1YWxhbHdheXMgZXZlbnRpZ25vcmUgZmRlIGZkdCBmaWMgZmlsbGNoYXJzIGZvbGRjbG9zZSBmb2xkbWFya2VyIGZvcm1hdGxpc3RwYXQgZ2NyIGdociBndWljdXJzb3IgZ3VpdGFibGFiZWwgaGkgaGttYXBwIGljb24gaW1hayBpbXMgaW5jc2VhcmNoIGluZmVyY2FzZSBpc2sga2V5bWFwIGxhbmdtZW51IGxpbmVzIGxtYXAgbHogbWF0Y2hwYWlycyBtYXhtZW10b3QgbWtzcGVsbG1lbSBtb2QgbW91c2VmIG1vdXNldCBuZiBvZnQgcGEgcGF0aCBwaGVhZGVyIHByZXZpZXdoZWlnaHQgcHJpbnRtYmNoYXJzZXQgcHZ3IHJlZ2V4cGVuZ2luZSByaSByb3AgcnVudGltZXBhdGggc2Nyb2xsIHNlY3Rpb25zIHNoIHNoZWxsc2xhc2ggc2htIHNob3dtb2RlIHNqIHNtZCBzcGVsbCBzcGxpdGJlbG93IHNzbCBzdGwgc3cgc3hlIHRhYnBhZ2VtYXggdGFnc3RhY2sgdGVuYyB0ZXh0d2lkdGggdGl0bGUgdG9vbGJhciB0c3IgdHR5bSB1ZGYgdXBkYXRlY291bnQgdmUgdmltaW5mbyB3YiB3aCB3aWxkaWdub3JlIHdpbmRvdyB3aXYgd3JhcCB3cworc3luIGtleXdvcmQgdmltT3B0aW9uIGNvbnRhaW5lZAlhbHRrZXltYXAgYXJhYmljc2hhcGUgYXV0b3dyaXRlYWxsIGJhY2t1cGRpciBiZGxheSBiaW5hcnkgYnJlYWthdCBicyBjYXNlbWFwIGNmIGNpbmsgY20gY29sZSBjb21wbGV0ZSBjb25za2V5IGNyYiBjc2NvcGV0YWdvcmRlciBjc3RvIGN3aCBkZyBkaXAgZWFkaXJlY3Rpb24gZWsgZXF1YWxwcmcgZXggZmRpIGZlbiBmaWxlZW5jb2RpbmcgZmsgZm9sZGNvbHVtbiBmb2xkbWV0aG9kIGZvcm1hdG9wdGlvbnMgZ2QgZ28gZ3VpZm9udCBndWl0YWJ0b29sdGlwIGhpZCBoa3AgaWNvbnN0cmluZyBpbWMgaW1zZWFyY2ggaW5kZSBpbnNlcnRtb2RlIGlza2V5d29yZCBrZXltb2RlbCBsYW5nbm9yZW1hcCBsaW5lc3BhY2UgbG5yIG1hIG1hdGNodGltZSBtY28gbWwgbW9kZWxpbmUgbW91c2Vmb2N1cyBtb3VzZXRpbWUgbnJmb3JtYXRzIG9mdSBwYXJhIHBkZXYgcGkgcHJldmlld3dpbmRvdyBwcmludG1iZm9udCBxZSByZWxhdGl2ZW51bWJlciByaWdodGxlZnQgcnMgc2Igc2Nyb2xsYmluZCBzZWN1cmUgc2hjZiBzaGVsbHRlbXAgc2hvcnRtZXNzIHNob3d0YWJsaW5lIHNsbSBzbiBzcGVsbGNhcGNoZWNrIHNwbGl0cmlnaHQgc3NvcCBzdG1wIHN3YXBmaWxlIHN4cSB0YWJzdG9wIHRhbCB0ZXJtIHRmIHRpdGxlbGVuIHRvb2xiYXJpY29uc2l6ZSB0dGltZW91dCB0dHltb3VzZSB1ZGlyIHVwZGF0ZXRpbWUgdmVyYm9zZSB2aXJ0dWFsZWRpdCB3YyB3aGljaHdyYXAgd2lsZGlnbm9yZWNhc2Ugd2luZml4aGVpZ2h0IHdpdyB3cmFwbWFyZ2luIHd3CitzeW4ga2V5d29yZCB2aW1PcHRpb24gY29udGFpbmVkCWFtYml3aWR0aCAKIAogIiB2aW1PcHRpb25zOiBUaGVzZSBhcmUgdGhlIHR1cm4tb2ZmIHNldHRpbmcgdmFyaWFudHMge3t7Mgogc3luIGtleXdvcmQgdmltT3B0aW9uIGNvbnRhaW5lZAlub2FjZCBub2FsbG93cmV2aW5zIG5vYW50aWFsaWFzIG5vYXJhYmljIG5vYXJzaGFwZSBub2F1dG9yZWFkIG5vYXcgbm9iYWxsb29uZXZhbCBub2JpbmFyeSBub2JrIG5vYnVmbGlzdGVkIG5vY2luIG5vY29uZmlybSBub2NvcHlpbmRlbnQgbm9jc2NvcGVyZWxhdGl2ZSBub2NzcmUgbm9jdWMgbm9jdXJzb3Jjb2x1bW4gbm9kZWxjb21iaW5lIG5vZGlncmFwaCBub2VkIG5vZW5kb2ZsaW5lIG5vZXJyb3JiZWxscyBub2V4IG5vZmVuIG5vZmsgbm9nZCBub2hpZCBub2hrbWFwIG5vaGtwIG5vaGxzZWFyY2ggbm9pY29uIG5vaW0gbm9pbWNtZGxpbmUgbm9pbWRpc2FibGUgbm9pbmYgbm9pbnNlcnRtb2RlIG5vam9pbnNwYWNlcyBub2xhenlyZWRyYXcgbm9saW5lYnJlYWsgbm9saXN0IG5vbHBsIG5vbWEgbm9tYWdpYyBub21sIG5vbW9kZWxpbmUgbm9tb2RpZmllZCBub21vdXNlZiBub21vdXNlaGlkZSBub251bWJlciBub29wZW5kZXZpY2Ugbm9waSBub3ByZXZpZXd3aW5kb3cgbm9wdncgbm9yZWxhdGl2ZW51bWJlciBub3Jlc3RvcmVzY3JlZW4gbm9yaSBub3JsIG5vcm8gbm9ydSBub3NiIG5vc2NiIG5vc2NzIG5vc2Z0IG5vc2hlbGx0ZW1wIG5vc2hvcnRuYW1lIG5vc2hvd2Z1bGx0YWcgbm9zaG93bW9kZSBub3NtIG5vc21hcnRpbmRlbnQgbm9zbWQgbm9zb2wgbm9zcGxpdGJlbG93IG5vc3ByIG5vc3NsIG5vc3RhcnRvZmxpbmUgbm9zd2FwZmlsZSBub3RhIG5vdGFncmVsYXRpdmUgbm90Ymkgbm90YnMgbm90ZXJzZSBub3RleHRtb2RlIG5vdGdzdCBub3RpbWVvdXQgbm90byBub3RyIG5vdHR5YnVpbHRpbiBub3R4IG5vdW5kb2ZpbGUgbm92aXN1YWxiZWxsIG5vd2FybiBub3dlaXJkaW52ZXJ0IG5vd2Z3IG5vd2lsZGlnbm9yZWNhc2Ugbm93aW5maXhoZWlnaHQgbm93aXYgbm93cmFwIG5vd3JpdGUgbm93cml0ZWJhY2t1cApAQCAtNDcsOCArNDgsOCBAQAogc3luIGtleXdvcmQgdmltT3B0aW9uIGNvbnRhaW5lZAlpbnZha20gaW52YW50aSBpbnZhcmFiIGludmFyaSBpbnZhdXRvaW5kZW50IGludmF1dG93cml0ZWFsbCBpbnZiYWNrdXAgaW52YmluIGludmJpb3NrZXkgaW52Ym9tYiBpbnZjaSBpbnZjb21wYXRpYmxlIGludmNvbnNrZXkgaW52Y3JiIGludmNzY29wZXZlcmJvc2UgaW52Y3N2ZXJiIGludmN1cnNvcmJpbmQgaW52ZGVjbyBpbnZkaWZmIGludmViIGludmVrIGludmVxdWFsYWx3YXlzIGludmV0IGludmV4cmMgaW52ZmlsZWlnbm9yZWNhc2UgaW52Zm9sZGVuYWJsZSBpbnZndWlwdHkgaW52aGsgCiAKICIgdGVybWNhcCBjb2RlcyAod2hpY2ggY2FuIGFsc28gYmUgc2V0KSB7e3syCi1zeW4ga2V5d29yZCB2aW1PcHRpb24gY29udGFpbmVkCXRfQUIgdF9hbCB0X2JjIHRfY2UgdF9jbCB0X0NvIHRfQ3MgdF9DUyB0X0NWIHRfZGEgdF9kYiB0X2RsIHRfREwgdF9FSSB0X0YxIHRfRjIgdF9GMyB0X0Y0IHRfRjUgdF9GNiB0X0Y3IHRfRjggdF9GOSB0X2ZzIHRfSUUgdF9JUyB0X2sxIHRfSzEgdF9rMiB0X2szIHRfSzMgdF9rNCB0X0s0IHRfazUgdF9LNSB0X2s2IHRfSzYgdF9rNyB0X0s3IHRfazggdF9LOCB0X2s5IHRfSzkgdF9LQSB0X2tiIHRfa0IgdF9LQiB0X0tDIHRfa2QgdF9rRCB0X0tEIHRfa2UgdF9LRSB0X0tGIHRfS0cgdF9raCB0X0tIIHRfa0kgdF9LSSB0X0tKIHRfS0sgdF9rbCB0X0tMIHRfa04gdF9rUCB0X2tyIHRfa3MgdF9rdSB0X2xlIHRfbWIgdF9tZCB0X21lIHRfbXIgdF9tcyB0X25kIHRfb3AgdF9SSSB0X1JWIHRfU2IgdF9zZSB0X1NmIHRfU0kgdF9TUiB0X3NvIHRfc3IgdF90ZSB0X3RpIHRfdHMgdF91NyB0X3VlIHRfdXMgdF91dCB0X3ZiIHRfdmUgdF92aSB0X3ZzIHRfV1AgdF9XUyB0X3hzIHRfWkggdF9aUgotc3luIGtleXdvcmQgdmltT3B0aW9uIGNvbnRhaW5lZAl0X0FGIHRfQUwgdF9jZCB0X0NlIHRfY20gdF9jcyAKK3N5biBrZXl3b3JkIHZpbU9wdGlvbiBjb250YWluZWQJdF9BQiB0X2FsIHRfYmMgdF9jZSB0X2NsIHRfQ28gdF9DcyB0X0NWIHRfZGEgdF9kYiB0X2RsIHRfREwgdF9FSSB0X0YxIHRfRjIgdF9GMyB0X0Y0IHRfRjUgdF9GNiB0X0Y3IHRfRjggdF9GOSB0X2ZzIHRfSUUgdF9JUyB0X2sxIHRfSzEgdF9rMiB0X2szIHRfSzMgdF9rNCB0X0s0IHRfazUgdF9LNSB0X2s2IHRfSzYgdF9rNyB0X0s3IHRfazggdF9LOCB0X2s5IHRfSzkgdF9LQSB0X2tiIHRfa0IgdF9LQiB0X0tDIHRfa2QgdF9rRCB0X0tEIHRfa2UgdF9LRSB0X0tGIHRfS0cgdF9raCB0X0tIIHRfa0kgdF9LSSB0X0tKIHRfS0sgdF9rbCB0X0tMIHRfa04gdF9rUCB0X2tyIHRfa3MgdF9rdSB0X2xlIHRfbWIgdF9tZCB0X21lIHRfbXIgdF9tcyB0X25kIHRfb3AgdF9SSSB0X1JWIHRfU2IgdF9zZSB0X1NmIHRfU0kgdF9zbyB0X3NyIHRfdGUgdF90aSB0X3RzIHRfdTcgdF91ZSB0X3VzIHRfdXQgdF92YiB0X3ZlIHRfdmkgdF92cyB0X1dQIHRfV1MgdF94biB0X3hzIHRfWkggdF9aUgorc3luIGtleXdvcmQgdmltT3B0aW9uIGNvbnRhaW5lZAl0X0FGIHRfQUwgdF9jZCB0X0NlIHRfY20gdF9jcyB0X0NTIAogc3luIG1hdGNoICAgdmltT3B0aW9uIGNvbnRhaW5lZAkidF8lMSIKIHN5biBtYXRjaCAgIHZpbU9wdGlvbiBjb250YWluZWQJInRfIzIiCiBzeW4gbWF0Y2ggICB2aW1PcHRpb24gY29udGFpbmVkCSJ0XyM0IgpAQCAtNzQsOSArNzUsOSBAQAogc3luIGNhc2UgbWF0Y2gKIAogIiBGdW5jdGlvbiBOYW1lcyB7e3syCi1zeW4ga2V5d29yZCB2aW1GdW5jTmFtZSBjb250YWluZWQJYWJzIGFuZCBhcmdpZHggYXNpbiBicm93c2UgYnVmbGlzdGVkIGJ1Zm5yIGJ5dGVpZHggY2VpbCBjaW5kZW50IGNvbXBsZXRlIGNvbmZpcm0gY29zaCBjdXJzb3IgZGlkX2ZpbGV0eXBlIGVtcHR5IGV2ZW50aGFuZGxlciBleGlzdHMgZXhwcjggZmlsZXJlYWRhYmxlIGZpbmRkaXIgZmxvb3IgZm5hbWVtb2RpZnkgZm9sZGxldmVsIGZvcmVncm91bmQgZ2V0IGdldGNoYXIgZ2V0Y21kcG9zIGdldGN3ZCBnZXRmc2l6ZSBnZXRsaW5lIGdldHBpZCBnZXRyZWcgZ2V0dGFid2ludmFyIGdldHdpbnZhciBoYXMgaGFzbWFwdG8gaGlzdGdldCBobElEIGluZGVudCBpbnB1dGRpYWxvZyBpbnB1dHNhdmUgaW52ZXJ0IGl0ZW1zIGxlbiBsaW5lIGxvY2FsdGltZSBsdWFldmFsIG1hcGNoZWNrIG1hdGNoYWRkcG9zIG1hdGNoZW5kIG1heCBtb2RlIG5yMmNoYXIgcG93IHB1bXZpc2libGUgcmFuZ2UgcmVsdGltZXN0ciByZW1vdGVfcGVlayByZW1vdmUgcmVzb2x2ZSBzY3JlZW5hdHRyIHNjcmVlbnJvdyBzZWFyY2hwYWlyIHNlcnZlcjJjbGllbnQgc2V0Y21kcG9zIHNldG1hdGNoZXMgc2V0cmVnIHNldHdpbnZhciBzaGlmdHdpZHRoIHNpbiBzb3J0IHNwZWxsYmFkd29yZCBzcGxpdCBzdHIyZmxvYXQgc3RyY2hhcnMgc3RyZnRpbWUgc3RyaW5nIHN0cnBhcnQgc3RydHJhbnMgc3VibWF0Y2ggc3luY29uY2VhbGVkIHN5bklEYXR0ciBzeW5zdGFjayBzeXN0ZW1saXN0IHRhYnBhZ2VuciB0YWdmaWxlcyB0YW4gdGVtcG5hbWUgdG91cHBlciB0cnVuYyB1bmRvZmlsZSB1bmlxIHZpcnRjb2wgd2lsZG1lbnVtb2RlIHdpbmNvbCB3aW5saW5lIHdpbnJlc3RjbWQgd2luc2F2ZXZpZXcgd3JpdGVmaWxlCi1zeW4ga2V5d29yZCB2aW1GdW5jTmFtZSBjb250YWluZWQJYWNvcyBhcHBlbmQgYXJnbGlzdGlkIGF0YW4gYnJvd3NlZGlyIGJ1ZmxvYWRlZCBidWZ3aW5uciBieXRlaWR4Y29tcCBjaGFuZ2VuciBjbGVhcm1hdGNoZXMgY29tcGxldGVfYWRkIGNvcHkgY291bnQgZGVlcGNvcHkgZGlmZl9maWxsZXIgZXNjYXBlIGV4ZWN1dGFibGUgZXhwIGV4dGVuZCBmaWxld3JpdGFibGUgZmluZGZpbGUgZm1vZCBmb2xkY2xvc2VkIGZvbGR0ZXh0IGZ1bmN0aW9uIGdldGJ1ZmxpbmUgZ2V0Y2hhcm1vZCBnZXRjbWR0eXBlIGdldGZvbnRuYW1lIGdldGZ0aW1lIGdldGxvY2xpc3QgZ2V0cG9zIGdldHJlZ3R5cGUgZ2V0d2lucG9zeCBnbG9iIGhhc19rZXkgaGlzdGFkZCBoaXN0bnIgaG9zdG5hbWUgaW5kZXggaW5wdXRsaXN0IGlucHV0c2VjcmV0IGlzZGlyZWN0b3J5IGpvaW4gbGliY2FsbCBsaW5lMmJ5dGUgbG9nIG1hcCBtYXRjaCBtYXRjaGFyZyBtYXRjaGxpc3QgbWluIG16ZXZhbCBvciBwcmV2bm9uYmxhbmsgcHkzZXZhbCByZWFkZmlsZSByZW1vdGVfZXhwciByZW1vdGVfcmVhZCByZW5hbWUgcmV2ZXJzZSBzY3JlZW5jaGFyIHNlYXJjaCBzZWFyY2hwYWlycG9zIHNlcnZlcmxpc3Qgc2V0bGluZSBzZXRwb3Mgc2V0dGFidmFyIHNoYTI1NiBzaW1wbGlmeSBzaW5oIHNvdW5kZm9sZCBzcGVsbHN1Z2dlc3Qgc3FydCBzdHIybnIgc3RyZGlzcGxheXdpZHRoIHN0cmlkeCBzdHJsZW4gc3RycmlkeCBzdHJ3aWR0aCBzdWJzdGl0dXRlIHN5bklEIHN5bklEdHJhbnMgc3lzdGVtIHRhYnBhZ2VidWZsaXN0IHRhYnBhZ2V3aW5uciB0YWdsaXN0IHRhbmggdG9sb3dlciB0ciB0eXBlIHVuZG90cmVlIHZhbHVlcyB2aXN1YWxtb2RlIHdpbmJ1Zm5yIHdpbmhlaWdodCB3aW5uciB3aW5yZXN0dmlldyB3aW53aWR0aCB4b3IKLXN5biBrZXl3b3JkIHZpbUZ1bmNOYW1lIGNvbnRhaW5lZAlhZGQgYXJnYyBhcmd2IGF0YW4yIGJ1ZmV4aXN0cyBidWZuYW1lIGJ5dGUybGluZSBjYWxsIGNoYXIybnIgY29sIGNvbXBsZXRlX2NoZWNrIGNvcyBjc2NvcGVfY29ubmVjdGlvbiBkZWxldGUgZGlmZl9obElEIGV2YWwgZXhlcGF0aCBleHBhbmQgZmVlZGtleXMgZmlsdGVyIGZsb2F0Mm5yIGZuYW1lZXNjYXBlIGZvbGRjbG9zZWRlbmQgZm9sZHRleHRyZXN1bHQgZ2FyYmFnZWNvbGxlY3QgZ2V0YnVmdmFyIGdldGNtZGxpbmUgZ2V0Y3VycG9zIGdldGZwZXJtIGdldGZ0eXBlIGdldG1hdGNoZXMgZ2V0cWZsaXN0IGdldHRhYnZhciBnZXR3aW5wb3N5IGdsb2JwYXRoIGhhc2xvY2FsZGlyIGhpc3RkZWwgaGxleGlzdHMgaWNvbnYgaW5wdXQgaW5wdXRyZXN0b3JlIGluc2VydCBpc2xvY2tlZCBrZXlzIGxpYmNhbGxuciBsaXNwaW5kZW50IGxvZzEwIG1hcGFyZyBtYXRjaGFkZCBtYXRjaGRlbGV0ZSBtYXRjaHN0ciBta2RpciBuZXh0bm9uYmxhbmsgcGF0aHNob3J0ZW4gcHJpbnRmIHB5ZXZhbCByZWx0aW1lIHJlbW90ZV9mb3JlZ3JvdW5kIHJlbW90ZV9zZW5kIHJlcGVhdCByb3VuZCBzY3JlZW5jb2wgc2VhcmNoZGVjbCBzZWFyY2hwb3Mgc2V0YnVmdmFyIHNldGxvY2xpc3Qgc2V0cWZsaXN0IHNldHRhYndpbnZhciBzaGVsbGVzY2FwZSAKK3N5biBrZXl3b3JkIHZpbUZ1bmNOYW1lIGNvbnRhaW5lZAlhYnMgYW5kIGFyZ2lkeCBhc2luIGJyb3dzZSBidWZsaXN0ZWQgYnVmbnIgYnl0ZWlkeCBjZWlsIGNpbmRlbnQgY29tcGxldGUgY29uZmlybSBjb3NoIGN1cnNvciBkaWRfZmlsZXR5cGUgZW1wdHkgZXZlbnRoYW5kbGVyIGV4aXN0cyBleHByOCBmaWxlcmVhZGFibGUgZmluZGRpciBmbG9vciBmbmFtZW1vZGlmeSBmb2xkbGV2ZWwgZm9yZWdyb3VuZCBnZXQgZ2V0Y2hhciBnZXRjbWRwb3MgZ2V0Y3VycG9zIGdldGZwZXJtIGdldGZ0eXBlIGdldG1hdGNoZXMgZ2V0cWZsaXN0IGdldHRhYnZhciBnZXR3aW5wb3N5IGdsb2IycmVncGF0IGhhc19rZXkgaGlzdGFkZCBoaXN0bnIgaG9zdG5hbWUgaW5kZXggaW5wdXRsaXN0IGlucHV0c2VjcmV0IGlzZGlyZWN0b3J5IGpvaW4gbGliY2FsbCBsaW5lMmJ5dGUgbG9nIG1hcCBtYXRjaCBtYXRjaGFyZyBtYXRjaGxpc3QgbWluIG16ZXZhbCBvciBwcmV2bm9uYmxhbmsgcHkzZXZhbCByZWFkZmlsZSByZW1vdGVfZXhwciByZW1vdGVfcmVhZCByZW5hbWUgcmV2ZXJzZSBzY3JlZW5jaGFyIHNlYXJjaCBzZWFyY2hwYWlycG9zIHNlcnZlcmxpc3Qgc2V0bGluZSBzZXRwb3Mgc2V0dGFidmFyIHNoYTI1NiBzaW1wbGlmeSBzb3J0IHNwZWxsYmFkd29yZCBzcGxpdCBzdHIyZmxvYXQgc3RyY2hhcnMgc3RyZnRpbWUgc3RyaW5nIHN0cnBhcnQgc3RydHJhbnMgc3VibWF0Y2ggc3luY29uY2VhbGVkIHN5bklEYXR0ciBzeW5zdGFjayBzeXN0ZW1saXN0IHRhYnBhZ2VuciB0YWdmaWxlcyB0YW4gdGVtcG5hbWUgdG91cHBlciB0cnVuYyB1bmRvZmlsZSB1bmlxIHZpcnRjb2wgd2lsZG1lbnVtb2RlIHdpbmNvbCB3aW5saW5lIHdpbnJlc3RjbWQgd2luc2F2ZXZpZXcgd3JpdGVmaWxlCitzeW4ga2V5d29yZCB2aW1GdW5jTmFtZSBjb250YWluZWQJYWNvcyBhcHBlbmQgYXJnbGlzdGlkIGF0YW4gYnJvd3NlZGlyIGJ1ZmxvYWRlZCBidWZ3aW5uciBieXRlaWR4Y29tcCBjaGFuZ2VuciBjbGVhcm1hdGNoZXMgY29tcGxldGVfYWRkIGNvcHkgY291bnQgZGVlcGNvcHkgZGlmZl9maWxsZXIgZXNjYXBlIGV4ZWN1dGFibGUgZXhwIGV4dGVuZCBmaWxld3JpdGFibGUgZmluZGZpbGUgZm1vZCBmb2xkY2xvc2VkIGZvbGR0ZXh0IGZ1bmN0aW9uIGdldGJ1ZmxpbmUgZ2V0Y2hhcm1vZCBnZXRjbWR0eXBlIGdldGN3ZCBnZXRmc2l6ZSBnZXRsaW5lIGdldHBpZCBnZXRyZWcgZ2V0dGFid2ludmFyIGdldHdpbnZhciBnbG9icGF0aCBoYXNsb2NhbGRpciBoaXN0ZGVsIGhsZXhpc3RzIGljb252IGlucHV0IGlucHV0cmVzdG9yZSBpbnNlcnQgaXNsb2NrZWQga2V5cyBsaWJjYWxsbnIgbGlzcGluZGVudCBsb2cxMCBtYXBhcmcgbWF0Y2hhZGQgbWF0Y2hkZWxldGUgbWF0Y2hzdHIgbWtkaXIgbmV4dG5vbmJsYW5rIHBhdGhzaG9ydGVuIHByaW50ZiBweWV2YWwgcmVsdGltZSByZW1vdGVfZm9yZWdyb3VuZCByZW1vdGVfc2VuZCByZXBlYXQgcm91bmQgc2NyZWVuY29sIHNlYXJjaGRlY2wgc2VhcmNocG9zIHNldGJ1ZnZhciBzZXRsb2NsaXN0IHNldHFmbGlzdCBzZXR0YWJ3aW52YXIgc2hlbGxlc2NhcGUgc2luIHNvdW5kZm9sZCBzcGVsbHN1Z2dlc3Qgc3FydCBzdHIybnIgc3RyZGlzcGxheXdpZHRoIHN0cmlkeCBzdHJsZW4gc3RycmlkeCBzdHJ3aWR0aCBzdWJzdGl0dXRlIHN5bklEIHN5bklEdHJhbnMgc3lzdGVtIHRhYnBhZ2VidWZsaXN0IHRhYnBhZ2V3aW5uciB0YWdsaXN0IHRhbmggdG9sb3dlciB0ciB0eXBlIHVuZG90cmVlIHZhbHVlcyB2aXN1YWxtb2RlIHdpbmJ1Zm5yIHdpbmhlaWdodCB3aW5uciB3aW5yZXN0dmlldyB3aW53aWR0aCB4b3IKK3N5biBrZXl3b3JkIHZpbUZ1bmNOYW1lIGNvbnRhaW5lZAlhZGQgYXJnYyBhcmd2IGF0YW4yIGJ1ZmV4aXN0cyBidWZuYW1lIGJ5dGUybGluZSBjYWxsIGNoYXIybnIgY29sIGNvbXBsZXRlX2NoZWNrIGNvcyBjc2NvcGVfY29ubmVjdGlvbiBkZWxldGUgZGlmZl9obElEIGV2YWwgZXhlcGF0aCBleHBhbmQgZmVlZGtleXMgZmlsdGVyIGZsb2F0Mm5yIGZuYW1lZXNjYXBlIGZvbGRjbG9zZWRlbmQgZm9sZHRleHRyZXN1bHQgZ2FyYmFnZWNvbGxlY3QgZ2V0YnVmdmFyIGdldGNtZGxpbmUgZ2V0Y21kd2ludHlwZSBnZXRmb250bmFtZSBnZXRmdGltZSBnZXRsb2NsaXN0IGdldHBvcyBnZXRyZWd0eXBlIGdldHdpbnBvc3ggZ2xvYiBoYXMgaGFzbWFwdG8gaGlzdGdldCBobElEIGluZGVudCBpbnB1dGRpYWxvZyBpbnB1dHNhdmUgaW52ZXJ0IGl0ZW1zIGxlbiBsaW5lIGxvY2FsdGltZSBsdWFldmFsIG1hcGNoZWNrIG1hdGNoYWRkcG9zIG1hdGNoZW5kIG1heCBtb2RlIG5yMmNoYXIgcG93IHB1bXZpc2libGUgcmFuZ2UgcmVsdGltZXN0ciByZW1vdGVfcGVlayByZW1vdmUgcmVzb2x2ZSBzY3JlZW5hdHRyIHNjcmVlbnJvdyBzZWFyY2hwYWlyIHNlcnZlcjJjbGllbnQgc2V0Y21kcG9zIHNldG1hdGNoZXMgc2V0cmVnIHNldHdpbnZhciBzaGlmdHdpZHRoIHNpbmggCiAKICItLS0gc3ludGF4IGhlcmUgYW5kIGFib3ZlIGdlbmVyYXRlZCBieSBta3ZpbXZpbSAtLS0KICIgU3BlY2lhbCBWaW0gSGlnaGxpZ2h0aW5nIChub3QgYXV0b21hdGljKSB7e3sxCkBAIC0xMDUsOSArMTA2LDkgQEAKICIgQWxsIHZpbUNvbW1hbmRzIGFyZSBjb250YWluZWQgYnkgdmltSXNDb21tYW5kcy4ge3t7Mgogc3luIG1hdGNoIHZpbUNtZFNlcAkiWzp8XVwrIglza2lwd2hpdGUgbmV4dGdyb3VwPXZpbUFkZHJlc3MsdmltQXV0b0NtZCx2aW1Jc0NvbW1hbmQsdmltRXh0Q21kLHZpbUZpbHRlcix2aW1MZXQsdmltTWFwLHZpbU1hcmssdmltU2V0LHZpbVN5bnRheCx2aW1Vc2VyQ21kCiBzeW4gbWF0Y2ggdmltSXNDb21tYW5kCSJcPFxoXHcqXD4iCWNvbnRhaW5zPXZpbUNvbW1hbmQKLXN5biBtYXRjaCB2aW1WYXIJCSJcPFtid2dsc2F2XTpcS1xrKlw+Igotc3luIG1hdGNoIHZpbVZhciAgICAgICAgY29udGFpbmVkCSJcPFxLXGsqXD4iCi1zeW4gbWF0Y2ggdmltRkJWYXIgICAgICBjb250YWluZWQgICAiXDxbYndnbHNhdl06XEtcaypcPiIKK3N5biBtYXRjaCB2aW1WYXIgICAgICAgIGNvbnRhaW5lZAkiXDxcaFthLXpBLVowLTkjX10qXD4iCitzeW4gbWF0Y2ggdmltVmFyCQkiXDxbYndnbHNhdl06XGhbYS16QS1aMC05I19dKlw+Igorc3luIG1hdGNoIHZpbUZCVmFyICAgICAgY29udGFpbmVkICAgIlw8W2J3Z2xzYXZdOlxoW2EtekEtWjAtOSNfXSpcPiIKIHN5biBrZXl3b3JkIHZpbUNvbW1hbmQgIGNvbnRhaW5lZAlpbgogCiAiIEluc2VydGlvbnMgQW5kIEFwcGVuZHM6IGluc2VydCBhcHBlbmQge3t7MgpAQCAtMTQxLDE5ICsxNDIsMTkgQEAKIGVsc2UKICBzeW4gcmVnaW9uICB2aW1BdWdyb3VwCW1hdGNoZ3JvdXA9dmltQXVncm91cEtleSBzdGFydD0iXDxhdWdcJVtyb3VwXVw+XHplXHNcK1xLXGsqIiBlbmQ9Ilw8YXVnXCVbcm91cF1cPlx6ZVxzXCtbZUVdW25OXVtkRF1cPiIJY29udGFpbnM9dmltQXV0b0NtZCxAdmltQXVncm91cExpc3QKIGVuZGlmCi1zeW4gbWF0Y2ggICB2aW1BdWdyb3VwCSJhdWdcJVtyb3VwXSEiIGNvbnRhaW5zPXZpbUF1Z3JvdXBLZXkKK3N5biBtYXRjaCAgIHZpbUF1Z3JvdXAJImF1Z1wlW3JvdXBdISIJY29udGFpbnM9dmltQXVncm91cEtleQogaWYgIWV4aXN0cygiZzp2aW1zeW5fbm9lcnJvciIpICYmICFleGlzdHMoImc6dmltc3luX25vYXVncm91cGVycm9yIikKICBzeW4gbWF0Y2ggICB2aW1BdWdyb3VwRXJyb3IJIlw8YXVnXCVbcm91cF1cPlxzXCtbZUVdW25OXVtkRF1cPiIKIGVuZGlmCi0ic3luIGtleXdvcmQgdmltQXVncm91cEtleSBjb250YWluZWQJYXVnW3JvdXBdCitzeW4ga2V5d29yZCB2aW1BdWdyb3VwS2V5IGNvbnRhaW5lZAlhdWdbcm91cF0KIAogIiBPcGVyYXRvcnM6IHt7ezIKICIgPT09PT09PT09CiBzeW4gY2x1c3Rlcgl2aW1PcGVyR3JvdXAJY29udGFpbnM9dmltRW52dmFyLHZpbUZ1bmMsdmltRnVuY1Zhcix2aW1PcGVyLHZpbU9wZXJQYXJlbix2aW1OdW1iZXIsdmltU3RyaW5nLHZpbVJlZ2lzdGVyLHZpbUNvbnRpbnVlCiBzeW4gbWF0Y2gJdmltT3BlcgkiXCg9PVx8IT1cfD49XHw8PVx8PVx+XHwhXH5cfD5cfDxcfD1cKVs/I11cezAsMn0iCXNraXB3aGl0ZSBuZXh0Z3JvdXA9dmltU3RyaW5nLHZpbVNwZWNGaWxlCiBzeW4gbWF0Y2gJdmltT3BlcgkifHxcfCYmXHxbLSsuXSIJc2tpcHdoaXRlIG5leHRncm91cD12aW1TdHJpbmcsdmltU3BlY0ZpbGUKLXN5biByZWdpb24JdmltT3BlclBhcmVuIAlvbmVsaW5lIG1hdGNoZ3JvdXA9dmltUGFyZW5TZXAJc3RhcnQ9IigiIGVuZD0iKSIgY29udGFpbnM9QHZpbU9wZXJHcm91cAotc3luIHJlZ2lvbgl2aW1PcGVyUGFyZW4Jb25lbGluZSBtYXRjaGdyb3VwPXZpbVNlcAlzdGFydD0ieyIgZW5kPSJ9IiBjb250YWlucz1AdmltT3Blckdyb3VwIG5leHRncm91cD12aW1WYXIsdmltRnVuY1Zhcgorc3luIHJlZ2lvbgl2aW1PcGVyUGFyZW4gCW1hdGNoZ3JvdXA9dmltUGFyZW5TZXAJc3RhcnQ9IigiIGVuZD0iKSIgY29udGFpbnM9QHZpbU9wZXJHcm91cAorc3luIHJlZ2lvbgl2aW1PcGVyUGFyZW4JbWF0Y2hncm91cD12aW1TZXAJCXN0YXJ0PSJ7IiBlbmQ9In0iIGNvbnRhaW5zPUB2aW1PcGVyR3JvdXAgbmV4dGdyb3VwPXZpbVZhcix2aW1GdW5jVmFyCiBpZiAhZXhpc3RzKCJnOnZpbXN5bl9ub2Vycm9yIikgJiYgIWV4aXN0cygiZzp2aW1zeW5fbm9vcGVyZXJyb3IiKQogIHN5biBtYXRjaAl2aW1PcGVyRXJyb3IJIikiCiBlbmRpZgpAQCAtMTY1LDkgKzE2Niw5IEBACiBzeW4gbWF0Y2gJdmltRnVuY3Rpb24JIlw8ZnVcJVtuY3Rpb25dIVw9XHNcK1wlKDxbc1NdW2lJXVtkRF0+XHxbc1NnR2JCd1d0VGxMXTpcKVw9XCUoXGlcfFsjLl1cfHsuXHstMSx9fVwpKlx6ZVxzKigiCWNvbnRhaW5zPUB2aW1GdW5jTGlzdCBuZXh0Z3JvdXA9dmltRnVuY0JvZHkKIAogaWYgZXhpc3RzKCJnOnZpbXN5bl9mb2xkaW5nIikgJiYgZzp2aW1zeW5fZm9sZGluZyA9fiAnZicKLSBzeW4gcmVnaW9uCXZpbUZ1bmNCb2R5ICBjb250YWluZWQJZm9sZCBzdGFydD0iXHplKCIJbWF0Y2hncm91cD12aW1Db21tYW5kIGVuZD0iXDxcKGVuZGZcPlx8ZW5kZnVcJVtuY3Rpb25dXD5cKSIJCWNvbnRhaW5zPUB2aW1GdW5jQm9keUxpc3QKKyBzeW4gcmVnaW9uCXZpbUZ1bmNCb2R5ICBjb250YWluZWQJZm9sZCBzdGFydD0iXHplXHMqKCIJbWF0Y2hncm91cD12aW1Db21tYW5kIGVuZD0iXDxcKGVuZGZcPlx8ZW5kZnVcJVtuY3Rpb25dXD5cKSIJCWNvbnRhaW5zPUB2aW1GdW5jQm9keUxpc3QKIGVsc2UKLSBzeW4gcmVnaW9uCXZpbUZ1bmNCb2R5ICBjb250YWluZWQJc3RhcnQ9Ilx6ZSgiCW1hdGNoZ3JvdXA9dmltQ29tbWFuZCBlbmQ9Ilw8XChlbmRmXD5cfGVuZGZ1XCVbbmN0aW9uXVw+XCkiCQljb250YWlucz1AdmltRnVuY0JvZHlMaXN0Cisgc3luIHJlZ2lvbgl2aW1GdW5jQm9keSAgY29udGFpbmVkCXN0YXJ0PSJcemVccyooIgltYXRjaGdyb3VwPXZpbUNvbW1hbmQgZW5kPSJcPFwoZW5kZlw+XHxlbmRmdVwlW25jdGlvbl1cPlwpIgkJY29udGFpbnM9QHZpbUZ1bmNCb2R5TGlzdAogZW5kaWYKIHN5biBtYXRjaAl2aW1GdW5jVmFyICAgY29udGFpbmVkCSJhOlwoXEtcaypcfFxkXCtcKSIKIHN5biBtYXRjaAl2aW1GdW5jU0lEICAgY29udGFpbmVkCSJcYzxzaWQ+XHxcPHM6IgpAQCAtMTkwLDE0ICsxOTEsMTYgQEAKICIgPT09PT09PT09PT09PT09PT09PT09PT0KIHN5biBjbHVzdGVyCXZpbVVzZXJDbWRMaXN0CWNvbnRhaW5zPXZpbUFkZHJlc3MsdmltU3ludGF4LHZpbUhpZ2hsaWdodCx2aW1BdXRvQ21kLHZpbUNtcGx4UmVwZWF0LHZpbUNvbW1lbnQsdmltQ3RybENoYXIsdmltRXNjYXBlQnJhY2UsdmltRmlsdGVyLHZpbUZ1bmMsdmltRnVuY05hbWUsdmltRnVuY3Rpb24sdmltRnVuY3Rpb25FcnJvcix2aW1Jc0NvbW1hbmQsdmltTWFyayx2aW1Ob3RhdGlvbix2aW1OdW1iZXIsdmltT3Blcix2aW1SZWdpb24sdmltUmVnaXN0ZXIsdmltTGV0LHZpbVNldCx2aW1TZXRFcXVhbCx2aW1TZXRTdHJpbmcsdmltU3BlY0ZpbGUsdmltU3RyaW5nLHZpbVN1YnN0LHZpbVN1YnN0UmVwLHZpbVN1YnN0UmFuZ2UsdmltU3luTGluZQogc3luIGtleXdvcmQJdmltVXNlckNvbW1hbmQJY29udGFpbmVkCWNvbVttYW5kXQotc3luIG1hdGNoCXZpbVVzZXJDbWQJIlw8Y29tXCVbbWFuZF0hXD1cPi4qJCIJY29udGFpbnM9dmltVXNlckF0dHJiLHZpbVVzZXJDb21tYW5kLEB2aW1Vc2VyQ21kTGlzdAotc3luIG1hdGNoCXZpbVVzZXJBdHRyYgljb250YWluZWQJIi1uXCVbYXJnc109WzAxKj8rXSIJY29udGFpbnM9dmltVXNlckF0dHJiS2V5LHZpbU9wZXIKLXN5biBtYXRjaAl2aW1Vc2VyQXR0cmIJY29udGFpbmVkCSItY29tXCVbcGxldGVdPSIJY29udGFpbnM9dmltVXNlckF0dHJiS2V5LHZpbU9wZXIgbmV4dGdyb3VwPXZpbVVzZXJBdHRyYkNtcGx0LHZpbVVzZXJDbWRFcnJvcgotc3luIG1hdGNoCXZpbVVzZXJBdHRyYgljb250YWluZWQJIi1yYVwlW25nZV1cKD0lXHw9XGRcK1wpXD0iCWNvbnRhaW5zPXZpbU51bWJlcix2aW1PcGVyLHZpbVVzZXJBdHRyYktleQotc3luIG1hdGNoCXZpbVVzZXJBdHRyYgljb250YWluZWQJIi1jb3VcJVtudF09XGRcKyIJY29udGFpbnM9dmltTnVtYmVyLHZpbU9wZXIsdmltVXNlckF0dHJiS2V5Ci1zeW4gbWF0Y2gJdmltVXNlckF0dHJiCWNvbnRhaW5lZAkiLWJhbmdcPVw+Igljb250YWlucz12aW1PcGVyLHZpbVVzZXJBdHRyYktleQotc3luIG1hdGNoCXZpbVVzZXJBdHRyYgljb250YWluZWQJIi1iYXJcPiIJY29udGFpbnM9dmltT3Blcix2aW1Vc2VyQXR0cmJLZXkKLXN5biBtYXRjaAl2aW1Vc2VyQXR0cmIJY29udGFpbmVkCSItcmVcJVtnaXN0ZXJdXD4iCWNvbnRhaW5zPXZpbU9wZXIsdmltVXNlckF0dHJiS2V5CitzeW4gbWF0Y2gJdmltVXNlckNtZAkiXDxjb21cJVttYW5kXSFcPVw+LiokIgljb250YWlucz12aW1Vc2VyQXR0cmIsdmltVXNlckF0dHJiRXJyb3IsdmltVXNlckNvbW1hbmQsQHZpbVVzZXJDbWRMaXN0CitzeW4gbWF0Y2gJdmltVXNlckF0dHJiRXJyb3IJY29udGFpbmVkCSItXGFcK1x6ZVxzIgorc3luIG1hdGNoCXZpbVVzZXJBdHRyYgljb250YWluZWQJIi1uYXJncz1bMDEqPytdIgljb250YWlucz12aW1Vc2VyQXR0cmJLZXksdmltT3Blcgorc3luIG1hdGNoCXZpbVVzZXJBdHRyYgljb250YWluZWQJIi1jb21wbGV0ZT0iCQljb250YWlucz12aW1Vc2VyQXR0cmJLZXksdmltT3BlciBuZXh0Z3JvdXA9dmltVXNlckF0dHJiQ21wbHQsdmltVXNlckNtZEVycm9yCitzeW4gbWF0Y2gJdmltVXNlckF0dHJiCWNvbnRhaW5lZAkiLXJhbmdlXCg9JVx8PVxkXCtcKVw9Igljb250YWlucz12aW1OdW1iZXIsdmltT3Blcix2aW1Vc2VyQXR0cmJLZXkKK3N5biBtYXRjaAl2aW1Vc2VyQXR0cmIJY29udGFpbmVkCSItY291bnRcKD1cZFwrXClcPSIJY29udGFpbnM9dmltTnVtYmVyLHZpbU9wZXIsdmltVXNlckF0dHJiS2V5CitzeW4gbWF0Y2gJdmltVXNlckF0dHJiCWNvbnRhaW5lZAkiLWJhbmdcPiIJCWNvbnRhaW5zPXZpbU9wZXIsdmltVXNlckF0dHJiS2V5CitzeW4gbWF0Y2gJdmltVXNlckF0dHJiCWNvbnRhaW5lZAkiLWJhclw+IgkJY29udGFpbnM9dmltT3Blcix2aW1Vc2VyQXR0cmJLZXkKK3N5biBtYXRjaAl2aW1Vc2VyQXR0cmIJY29udGFpbmVkCSItYnVmZmVyXD4iCQljb250YWlucz12aW1PcGVyLHZpbVVzZXJBdHRyYktleQorc3luIG1hdGNoCXZpbVVzZXJBdHRyYgljb250YWluZWQJIi1yZWdpc3Rlclw+IgkJY29udGFpbnM9dmltT3Blcix2aW1Vc2VyQXR0cmJLZXkKIGlmICFleGlzdHMoImc6dmltc3luX25vZXJyb3IiKSAmJiAhZXhpc3RzKCJnOnZpbXN5bl9ub3VzZXJjbWRlcnJvciIpCiAgc3luIG1hdGNoCXZpbVVzZXJDbWRFcnJvcgljb250YWluZWQJIlxTXCtcPiIKIGVuZGlmCkBAIC0yNzEsNyArMjc0LDcgQEAKIHN5biBtYXRjaAl2aW1NYXJrTnVtYmVyCSJbLStdXGRcKyIJCW5leHRncm91cD12aW1TdWJzdCBjb250YWluZWQgY29udGFpbnM9dmltT3Blcgogc3luIG1hdGNoCXZpbVBsYWluTWFyayBjb250YWluZWQJIidbYS16QS1aMC05XSIKIAotc3luIG1hdGNoCXZpbVJlZ2lzdGVyCSdbXiw7W3tdXHpzIlthLXpBLVowLTkuJSM6X1wtL11cemVbXmEtekEtWl8iOjAtOV0nCitzeW4gbWF0Y2gJdmltUmVnaXN0ZXIJJ1teLDtbezogXHRdXHpzIlthLXpBLVowLTkuJSM6X1wtL11cemVbXmEtekEtWl8iOjAtOV0nCiBzeW4gbWF0Y2gJdmltUmVnaXN0ZXIJJ1w8bm9ybVxzXCtcenMiW2EtekEtWjAtOV0nCiBzeW4gbWF0Y2gJdmltUmVnaXN0ZXIJJ1w8bm9ybWFsXHNcK1x6cyJbYS16QS1aMC05XScKIHN5biBtYXRjaAl2aW1SZWdpc3RlcgknQCInCkBAIC0yOTEsNyArMjk0LDcgQEAKIHN5biByZWdpb24JdmltU2V0CQltYXRjaGdyb3VwPXZpbUNvbW1hbmQgc3RhcnQ9Ilw8XCUoc2V0bFwlW29jYWxdXHxzZXRnXCVbbG9iYWxdXHxzZVwlW3RdXClcPiIgc2tpcD0iXCUoXFxcXFwpKlxcLiIgZW5kPSIkIiBtYXRjaGdyb3VwPXZpbU5vdGF0aW9uIGVuZD0iPFtjQ11bclJdPiIga2VlcGVuZCBvbmVsaW5lIGNvbnRhaW5zPXZpbVNldEVxdWFsLHZpbU9wdGlvbix2aW1FcnJTZXR0aW5nLHZpbUNvbW1lbnQsdmltU2V0U3RyaW5nLHZpbVNldE1vZAogc3luIHJlZ2lvbgl2aW1TZXRFcXVhbAljb250YWluZWQJc3RhcnQ9Ils9Ol1cfFstK15dPSIgc2tpcD0iXFxcXFx8XFxccyIgZW5kPSJbfCBcdF1cfCQibWU9ZS0xIGNvbnRhaW5zPXZpbUN0cmxDaGFyLHZpbVNldFNlcCx2aW1Ob3RhdGlvbix2aW1FbnZ2YXIgb25lbGluZQogc3luIHJlZ2lvbgl2aW1TZXRTdHJpbmcJY29udGFpbmVkCXN0YXJ0PSs9Iitocz1zKzEJc2tpcD0rXFxcXFx8XFwiKyAgZW5kPSsiKwljb250YWlucz12aW1DdHJsQ2hhcgotc3luIG1hdGNoCXZpbVNldFNlcAljb250YWluZWQJIlssOl0iCitzeW4gbWF0Y2gJdmltU2V0U2VwCWNvbnRhaW5lZAkiWyw6XSIgc2tpcHdoaXRlIG5leHRncm91cD12aW1Db21tYW5kCiBzeW4gbWF0Y2gJdmltU2V0TW9kCWNvbnRhaW5lZAkiJnZpbVw9XHxbISY/PF1cfGFsbCYiCiAKICIgTGV0IHt7ezIKQEAgLTMzMCw3ICszMzMsNyBAQAogc3luIG1hdGNoCXZpbU1hcFJocwljb250YWluZWQJIi4qIiBjb250YWlucz12aW1Ob3RhdGlvbix2aW1DdHJsQ2hhcglza2lwbmwgbmV4dGdyb3VwPXZpbU1hcFJoc0V4dGVuZAogc3luIG1hdGNoCXZpbU1hcFJoc0V4dGVuZAljb250YWluZWQJIl5ccypcXC4qJCIJCQljb250YWlucz12aW1Db250aW51ZQogc3luIGNhc2UgaWdub3JlCi1zeW4ga2V5d29yZAl2aW1NYXBNb2RLZXkJY29udGFpbmVkCWJ1ZmZlcglleHByCWxlYWRlcglsb2NhbGxlYWRlcglwbHVnCXNjcmlwdAlzaWQJc2lsZW50CXVuaXF1ZQorc3luIGtleXdvcmQJdmltTWFwTW9kS2V5CWNvbnRhaW5lZAlidWZmZXIJZXhwcglsZWFkZXIJbG9jYWxsZWFkZXIJbm93YWl0CXBsdWcJc2NyaXB0CXNpZAlzaWxlbnQJdW5pcXVlCiBzeW4gY2FzZSBtYXRjaAogCiAiIE1lbnVzIHt7ezIKQEAgLTM0OCw3ICszNTEsNyBAQAogIiBBbmdsZS1CcmFja2V0IE5vdGF0aW9uICh0bnggdG8gTWljaGFlbCBHZWRkZXMpIHt7ezIKICIgPT09PT09PT09PT09PT09PT09PT09PQogc3luIGNhc2UgaWdub3JlCi1zeW4gbWF0Y2gJdmltTm90YXRpb24JIlwoXFxcfDxsdD5cKVw9PFwoW3NjYW1kXS1cKVx7MCw0fXhcPVwoZlxkXHsxLDJ9XHxbXiBcdDpdXHxjclx8bGZcfGxpbmVmZWVkXHxyZXR1cm5cfGtcPWRlbFwlW2V0ZV1cfGJzXHxiYWNrc3BhY2VcfHRhYlx8ZXNjXHxyaWdodFx8bGVmdFx8aGVscFx8dW5kb1x8aW5zZXJ0XHxpbnNcfGtcPWhvbWVcfGtcPWVuZFx8a3BsdXNcfGttaW51c1x8a2RpdmlkZVx8a211bHRpcGx5XHxrZW50ZXJcfGtwb2ludFx8c3BhY2VcfGtcPVwocGFnZVwpXD1cKFx8ZG93blx8dXBcfGtbMC05XVwpXCk+IiBjb250YWlucz12aW1CcmFja2V0CitzeW4gbWF0Y2gJdmltTm90YXRpb24JIlwoXFxcfDxsdD5cKVw9PFwoW3NjYW1kXS1cKVx7MCw0fXhcPVwoZlxkXHsxLDJ9XHxbXiBcdDpdXHxjclx8bGZcfGxpbmVmZWVkXHxyZXR1cm5cfGtcPWRlbFwlW2V0ZV1cfGJzXHxiYWNrc3BhY2VcfHRhYlx8ZXNjXHxyaWdodFx8bGVmdFx8aGVscFx8dW5kb1x8aW5zZXJ0XHxpbnNcfGtcPWhvbWVcfGtcPWVuZFx8a3BsdXNcfGttaW51c1x8a2RpdmlkZVx8a211bHRpcGx5XHxrZW50ZXJcfGtwb2ludFx8c3BhY2VcfGtcPVwocGFnZVwpXD1cKFx8ZG93blx8dXBcfGtcZFw+XClcKT4iIGNvbnRhaW5zPXZpbUJyYWNrZXQKIHN5biBtYXRjaAl2aW1Ob3RhdGlvbgkiXChcXFx8PGx0PlwpXD08XChbc2NhbTItNF0tXClcezAsNH1cKHJpZ2h0XHxsZWZ0XHxtaWRkbGVcKVwobW91c2VcKVw9XChkcmFnXHxyZWxlYXNlXClcPT4iCWNvbnRhaW5zPXZpbUJyYWNrZXQKIHN5biBtYXRjaAl2aW1Ob3RhdGlvbgkiXChcXFx8PGx0PlwpXD08XChic2xhc2hcfHBsdWdcfHNpZFx8c3BhY2VcfGJhclx8bm9wXHxudWxcfGx0XCk+IgkJY29udGFpbnM9dmltQnJhY2tldAogc3luIG1hdGNoCXZpbU5vdGF0aW9uCSdcKFxcXHw8bHQ+XClcPTxDLVI+WzAtOWEteiIlIzouXC09XSdoZT1lLTEJCQljb250YWlucz12aW1CcmFja2V0CkBAIC00MjksNyArNDMyLDcgQEAKIHN5biByZWdpb24JdmltU3luTWF0Y2hSZWdpb24JY29udGFpbmVkIGtlZXBlbmQJbWF0Y2hncm91cD12aW1Hcm91cE5hbWUgc3RhcnQ9IlxrXCsiIG1hdGNoZ3JvdXA9dmltU2VwIGVuZD0ifFx8JCIgY29udGFpbnM9QHZpbVN5bk10Y2hHcm91cAogc3luIG1hdGNoCXZpbVN5bk10Y2hPcHQJY29udGFpbmVkCSJcPFwoY29uY2VhbFx8dHJhbnNwYXJlbnRcfGNvbnRhaW5lZFx8ZXhjbHVkZW5sXHxza2lwZW1wdHlcfHNraXB3aGl0ZVx8ZGlzcGxheVx8ZXh0ZW5kXHxza2lwbmxcfGZvbGRcKVw+IgogaWYgaGFzKCJjb25jZWFsIikKLSBzeW4gbWF0Y2gJdmltU3luTXRjaE9wdAljb250YWluZWQJIlw8Y2NoYXI9IgluZXh0Z3JvdXA9VmltU3luTXRjaENjaGFyCisgc3luIG1hdGNoCXZpbVN5bk10Y2hPcHQJY29udGFpbmVkCSJcPGNjaGFyPSIJbmV4dGdyb3VwPXZpbVN5bk10Y2hDY2hhcgogIHN5biBtYXRjaAl2aW1TeW5NdGNoQ2NoYXIJY29udGFpbmVkCSJcUyIKIGVuZGlmCiBzeW4gY2x1c3RlciB2aW1GdW5jQm9keUxpc3QgYWRkPXZpbVN5bk10Y2hHcm91cApAQCAtNTEwLDE3ICs1MTMsMTggQEAKIHN5biBtYXRjaAl2aW1IaVRlcm0JY29udGFpbmVkCSJcY3Rlcm09ImhlPWUtMQkJbmV4dGdyb3VwPXZpbUhpQXR0cmliTGlzdAogc3luIG1hdGNoCXZpbUhpU3RhcnRTdG9wCWNvbnRhaW5lZAkiXGNcKHN0YXJ0XHxzdG9wXCk9ImhlPWUtMQluZXh0Z3JvdXA9dmltSGlUZXJtY2FwLHZpbU9wdGlvbgogc3luIG1hdGNoCXZpbUhpQ1Rlcm0JY29udGFpbmVkCSJcY2N0ZXJtPSJoZT1lLTEJCW5leHRncm91cD12aW1IaUF0dHJpYkxpc3QKLXN5biBtYXRjaAl2aW1IaUN0ZXJtRmdCZwljb250YWluZWQJIlxjY3Rlcm1bZmJdZz0iaGU9ZS0xCW5leHRncm91cD12aW1OdW1iZXIsdmltSGlDdGVybUNvbG9yLHZpbUZnQmdBdHRyaWIsdmltSGlDdGVybUVycm9yCitzeW4gbWF0Y2gJdmltSGlDdGVybUZnQmcJY29udGFpbmVkCSJcY2N0ZXJtW2ZiXWc9ImhlPWUtMQluZXh0Z3JvdXA9dmltSGlObWJyLHZpbUhpQ3Rlcm1Db2xvcix2aW1GZ0JnQXR0cmliLHZpbUhpQ3Rlcm1FcnJvcgogc3luIG1hdGNoCXZpbUhpR3VpCWNvbnRhaW5lZAkiXGNndWk9ImhlPWUtMQkJbmV4dGdyb3VwPXZpbUhpQXR0cmliTGlzdAogc3luIG1hdGNoCXZpbUhpR3VpRm9udAljb250YWluZWQJIlxjZm9udD0iaGU9ZS0xCQluZXh0Z3JvdXA9dmltSGlGb250bmFtZQogc3luIG1hdGNoCXZpbUhpR3VpRmdCZwljb250YWluZWQJIlxjZ3VpXCUoW2ZiXWdcfHNwXCk9ImhlPWUtMQluZXh0Z3JvdXA9dmltSGlHcm91cCx2aW1IaUd1aUZvbnRuYW1lLHZpbUhpR3VpUmdiLHZpbUZnQmdBdHRyaWIKIHN5biBtYXRjaAl2aW1IaVRlcm1jYXAJY29udGFpbmVkCSJcU1wrIgkJY29udGFpbnM9dmltTm90YXRpb24KK3N5biBtYXRjaAl2aW1IaU5tYnIJY29udGFpbmVkCSdcZFwrJwogCiAiIEhpZ2hsaWdodDogY2xlYXIge3t7Mgogc3luIGtleXdvcmQJdmltSGlDbGVhcgljb250YWluZWQJY2xlYXIJbmV4dGdyb3VwPXZpbUhpR3JvdXAKIAogIiBIaWdobGlnaHQ6IGxpbmsge3t7Mgotc3luIHJlZ2lvbgl2aW1IaUxpbmsJY29udGFpbmVkIG9uZWxpbmUgbWF0Y2hncm91cD12aW1Db21tYW5kIHN0YXJ0PSJcPFwoZGVmXCVbYXVsdF1cc1wrXClcPWxpbmtcPlx8XDxkZWZcPiIgZW5kPSIkIgljb250YWlucz12aW1IaUdyb3VwLHZpbUdyb3VwLHZpbUhMR3JvdXAsdmltTm90YXRpb24KK3N5biByZWdpb24JdmltSGlMaW5rCWNvbnRhaW5lZCBvbmVsaW5lIG1hdGNoZ3JvdXA9dmltQ29tbWFuZCBzdGFydD0iXChcPGhpXCVbZ2hsaWdodF1cc1wrXClcQDw9XChcKGRlZlwlW2F1bHRdXHNcK1wpXD1saW5rXD5cfFw8ZGVmXD5cKSIgZW5kPSIkIgljb250YWlucz12aW1IaUdyb3VwLHZpbUdyb3VwLHZpbUhMR3JvdXAsdmltTm90YXRpb24KIHN5biBjbHVzdGVyIHZpbUZ1bmNCb2R5TGlzdCBhZGQ9dmltSGlMaW5rCiAKICIgQ29udHJvbCBDaGFyYWN0ZXJzIHt7ezIKQEAgLTU0OSwyNyArNTUzLDQzIEBACiAiIEFsbG93cyB1c2VycyB0byBzcGVjaWZ5IHRoZSB0eXBlIG9mIGVtYmVkZGVkIHNjcmlwdCBoaWdobGlnaHRpbmcKICIgdGhleSB3YW50OiAgKHBlcmwvcHl0aG9uL3J1YnkvdGNsIHN1cHBvcnQpCiAiICAgZzp2aW1zeW5fZW1iZWQgPT0gMCAgIDogZG9uJ3QgZW1iZWQgYW55IHNjcmlwdHMKLSIgICBnOnZpbXN5bl9lbWJlZCB+PSAnbCcgOiBlbWJlZCBsdWEgICAgICAoYnV0IG9ubHkgaWYgdmltIHN1cHBvcnRzIGl0KQotIiAgIGc6dmltc3luX2VtYmVkIH49ICdtJyA6IGVtYmVkIG16c2NoZW1lIChidXQgb25seSBpZiB2aW0gc3VwcG9ydHMgaXQpCi0iICAgZzp2aW1zeW5fZW1iZWQgfj0gJ3AnIDogZW1iZWQgcGVybCAgICAgKGJ1dCBvbmx5IGlmIHZpbSBzdXBwb3J0cyBpdCkKLSIgICBnOnZpbXN5bl9lbWJlZCB+PSAnUCcgOiBlbWJlZCBweXRob24gICAoYnV0IG9ubHkgaWYgdmltIHN1cHBvcnRzIGl0KQotIiAgIGc6dmltc3luX2VtYmVkIH49ICdyJyA6IGVtYmVkIHJ1YnkgICAgIChidXQgb25seSBpZiB2aW0gc3VwcG9ydHMgaXQpCi0iICAgZzp2aW1zeW5fZW1iZWQgfj0gJ3QnIDogZW1iZWQgdGNsICAgICAgKGJ1dCBvbmx5IGlmIHZpbSBzdXBwb3J0cyBpdCkKKyIgICBnOnZpbXN5bl9lbWJlZCA9fiAnbCcgOiBlbWJlZCBsdWEgICAgICAoYnV0IG9ubHkgaWYgdmltIHN1cHBvcnRzIGl0KQorIiAgIGc6dmltc3luX2VtYmVkID1+ICdtJyA6IGVtYmVkIG16c2NoZW1lIChidXQgb25seSBpZiB2aW0gc3VwcG9ydHMgaXQpCisiICAgZzp2aW1zeW5fZW1iZWQgPX4gJ3AnIDogZW1iZWQgcGVybCAgICAgKGJ1dCBvbmx5IGlmIHZpbSBzdXBwb3J0cyBpdCkKKyIgICBnOnZpbXN5bl9lbWJlZCA9fiAnUCcgOiBlbWJlZCBweXRob24gICAoYnV0IG9ubHkgaWYgdmltIHN1cHBvcnRzIGl0KQorIiAgIGc6dmltc3luX2VtYmVkID1+ICdyJyA6IGVtYmVkIHJ1YnkgICAgIChidXQgb25seSBpZiB2aW0gc3VwcG9ydHMgaXQpCisiICAgZzp2aW1zeW5fZW1iZWQgPX4gJ3QnIDogZW1iZWQgdGNsICAgICAgKGJ1dCBvbmx5IGlmIHZpbSBzdXBwb3J0cyBpdCkKK2lmIGhhcygid2luMzIiKSB8fCBoYXMoIndpbjk1IikgfHwgaGFzKCJ3aW42NCIpIHx8IGhhcygid2luMTYiKQorICIgYXBwYXJlbnRseSBoYXMoInRjbCIpIGhhcyBiZWVuIGhhbmdpbmcgdmltIG9uIHNvbWUgd2luZG93cyBzeXN0ZW1zIHdpdGggY3lnd2luCisgbGV0IHM6dHJ5dGNsPSAoJnNoZWxsICF+ICdcPFwlKGJhc2hcPlx8NFtuTl1bdFRdXHxcPHpzaFwpXD5cJShcLmV4ZVwpXD0kJykKK2Vsc2UKKyBsZXQgczp0cnl0Y2w9IDEKK2VuZGlmCiBpZiAhZXhpc3RzKCJnOnZpbXN5bl9lbWJlZCIpCi0gbGV0IGc6dmltc3luX2VtYmVkPSAibG1wUHIiCisgIiBmb3IgZGVmYXVsdCBnOnZpbXN5bl9lbWJlZCwgZGV0ZXJtaW5lIHdoYXQgdG8gYWxsb3cgYmFzZWQgb24gd2hldGhlciB0aGlzIHZpbSBzdXBwb3J0cyBpdAorIGxldCBnOnZpbXN5bl9lbWJlZD0gIiIKKyBpZiBoYXMoImx1YSIpICAgICAgICB8bGV0IGc6dmltc3luX2VtYmVkPSBnOnZpbXN5bl9lbWJlZC4ibCJ8ZW5kaWYKKyBpZiBoYXMoIm16c2NoZW1lIikgICB8bGV0IGc6dmltc3luX2VtYmVkPSBnOnZpbXN5bl9lbWJlZC4ibSJ8ZW5kaWYKKyBpZiBoYXMoInBlcmwiKSAgICAgICB8bGV0IGc6dmltc3luX2VtYmVkPSBnOnZpbXN5bl9lbWJlZC4icCJ8ZW5kaWYKKyBpZiAgICAgaGFzKCJweXRob24iKSB8bGV0IGc6dmltc3luX2VtYmVkPSBnOnZpbXN5bl9lbWJlZC4iUCIKKyBlbHNlaWYgaGFzKCJweXRob24zIil8bGV0IGc6dmltc3luX2VtYmVkPSBnOnZpbXN5bl9lbWJlZC4iUCJ8ZW5kaWYKKyBpZiBoYXMoInJ1YnkiKSAgICAgICB8bGV0IGc6dmltc3luX2VtYmVkPSBnOnZpbXN5bl9lbWJlZC4iciJ8ZW5kaWYKKyBpZiBzOnRyeXRjbCAgICAgICAgIAorICBpZiBoYXMoInRjbCIpICAgICAgIHxsZXQgZzp2aW1zeW5fZW1iZWQ9IGc6dmltc3luX2VtYmVkLiJ0InxlbmRpZgorIGVuZGlmCiBlbmRpZgogCiAiIFstLSBsdWEgLS1dIHt7ezMKIGxldCBzOmx1YXBhdGg9IGZuYW1lZXNjYXBlKGV4cGFuZCgiPHNmaWxlPjpwOmgiKS4iL2x1YS52aW0iKQogaWYgIWZpbGVyZWFkYWJsZShzOmx1YXBhdGgpCi0gZm9yIHM6bHVhcGF0aCBpbiBzcGxpdChnbG9icGF0aCgmcnRwLCJzeW50YXgvbHVhLnZpbSIpLCJcbiIpCi0gIGlmIGZpbGVyZWFkYWJsZShmbmFtZWVzY2FwZShzOmx1YXBhdGgpKQotICAgbGV0IHM6bHVhcGF0aD0gZm5hbWVlc2NhcGUoczpsdWFwYXRoKQorIGZvciBsdWFwYXRoIGluIHNwbGl0KGdsb2JwYXRoKCZydHAsInN5bnRheC9sdWEudmltIiksIlxuIikKKyAgaWYgZmlsZXJlYWRhYmxlKGx1YXBhdGgpCisgICBsZXQgczpsdWFwYXRoPSBmbmFtZWVzY2FwZShsdWFwYXRoKQogICAgYnJlYWsKICAgZW5kaWYKICBlbmRmb3IKIGVuZGlmCi1pZiAoZzp2aW1zeW5fZW1iZWQgPX4gJ2wnICYmIGhhcygibHVhIikpICYmIGZpbGVyZWFkYWJsZShzOmx1YXBhdGgpCitpZiBnOnZpbXN5bl9lbWJlZCA9fiAnbCcgJiYgaGFzKCJsdWEiKSAmJiBmaWxlcmVhZGFibGUoczpsdWFwYXRoKQogIHVubGV0ISBiOmN1cnJlbnRfc3ludGF4CiAgZXhlICJzeW4gaW5jbHVkZSBAdmltTHVhU2NyaXB0ICIuczpsdWFwYXRoCiAgaWYgZXhpc3RzKCJnOnZpbXN5bl9mb2xkaW5nIikgJiYgZzp2aW1zeW5fZm9sZGluZyA9fiAnbCcKQEAgLTU4OSwxNCArNjA5LDE0IEBACiAiIFstLSBwZXJsIC0tXSB7e3szCiBsZXQgczpwZXJscGF0aD0gZm5hbWVlc2NhcGUoZXhwYW5kKCI8c2ZpbGU+OnA6aCIpLiIvcGVybC52aW0iKQogaWYgIWZpbGVyZWFkYWJsZShzOnBlcmxwYXRoKQotIGZvciBzOnBlcmxwYXRoIGluIHNwbGl0KGdsb2JwYXRoKCZydHAsInN5bnRheC9wZXJsLnZpbSIpLCJcbiIpCi0gIGlmIGZpbGVyZWFkYWJsZShmbmFtZWVzY2FwZShzOnBlcmxwYXRoKSkKLSAgIGxldCBzOnBlcmxwYXRoPSBmbmFtZWVzY2FwZShzOnBlcmxwYXRoKQorIGZvciBwZXJscGF0aCBpbiBzcGxpdChnbG9icGF0aCgmcnRwLCJzeW50YXgvcGVybC52aW0iKSwiXG4iKQorICBpZiBmaWxlcmVhZGFibGUoZm5hbWVlc2NhcGUocGVybHBhdGgpKQorICAgbGV0IHM6cGVybHBhdGg9IGZuYW1lZXNjYXBlKHBlcmxwYXRoKQogICAgYnJlYWsKICAgZW5kaWYKICBlbmRmb3IKIGVuZGlmCi1pZiAoZzp2aW1zeW5fZW1iZWQgPX4gJ3AnICYmIGhhcygicGVybCIpKSAmJiBmaWxlcmVhZGFibGUoczpwZXJscGF0aCkKK2lmIGc6dmltc3luX2VtYmVkID1+ICdwJyAmJiBoYXMoInBlcmwiKSAmJiBmaWxlcmVhZGFibGUoczpwZXJscGF0aCkKICB1bmxldCEgYjpjdXJyZW50X3N5bnRheAogIGV4ZSAic3luIGluY2x1ZGUgQHZpbVBlcmxTY3JpcHQgIi5zOnBlcmxwYXRoCiAgaWYgZXhpc3RzKCJnOnZpbXN5bl9mb2xkaW5nIikgJiYgZzp2aW1zeW5fZm9sZGluZyA9fiAncCcKQEAgLTYxNiwxNCArNjM2LDE0IEBACiAiIFstLSBydWJ5IC0tXSB7e3szCiBsZXQgczpydWJ5cGF0aD0gZm5hbWVlc2NhcGUoZXhwYW5kKCI8c2ZpbGU+OnA6aCIpLiIvcnVieS52aW0iKQogaWYgIWZpbGVyZWFkYWJsZShzOnJ1YnlwYXRoKQotIGZvciBzOnJ1YnlwYXRoIGluIHNwbGl0KGdsb2JwYXRoKCZydHAsInN5bnRheC9ydWJ5LnZpbSIpLCJcbiIpCi0gIGlmIGZpbGVyZWFkYWJsZShmbmFtZWVzY2FwZShzOnJ1YnlwYXRoKSkKLSAgIGxldCBzOnJ1YnlwYXRoPSBmbmFtZWVzY2FwZShzOnJ1YnlwYXRoKQorIGZvciBydWJ5cGF0aCBpbiBzcGxpdChnbG9icGF0aCgmcnRwLCJzeW50YXgvcnVieS52aW0iKSwiXG4iKQorICBpZiBmaWxlcmVhZGFibGUoZm5hbWVlc2NhcGUocnVieXBhdGgpKQorICAgbGV0IHM6cnVieXBhdGg9IGZuYW1lZXNjYXBlKHJ1YnlwYXRoKQogICAgYnJlYWsKICAgZW5kaWYKICBlbmRmb3IKIGVuZGlmCi1pZiAoZzp2aW1zeW5fZW1iZWQgPX4gJ3InICYmIGhhcygicnVieSIpKSAmJiBmaWxlcmVhZGFibGUoczpydWJ5cGF0aCkKK2lmIGc6dmltc3luX2VtYmVkID1+ICdyJyAmJiBoYXMoInJ1YnkiKSAmJiBmaWxlcmVhZGFibGUoczpydWJ5cGF0aCkKICB1bmxldCEgYjpjdXJyZW50X3N5bnRheAogIGV4ZSAic3luIGluY2x1ZGUgQHZpbVJ1YnlTY3JpcHQgIi5zOnJ1YnlwYXRoCiAgaWYgZXhpc3RzKCJnOnZpbXN5bl9mb2xkaW5nIikgJiYgZzp2aW1zeW5fZm9sZGluZyA9fiAncicKQEAgLTY0Miw5ICs2NjIsOSBAQAogIiBbLS0gcHl0aG9uIC0tXSB7e3szCiBsZXQgczpweXRob25wYXRoPSBmbmFtZWVzY2FwZShleHBhbmQoIjxzZmlsZT46cDpoIikuIi9weXRob24udmltIikKIGlmICFmaWxlcmVhZGFibGUoczpweXRob25wYXRoKQotIGZvciBzOnB5dGhvbnBhdGggaW4gc3BsaXQoZ2xvYnBhdGgoJnJ0cCwic3ludGF4L3B5dGhvbi52aW0iKSwiXG4iKQotICBpZiBmaWxlcmVhZGFibGUoZm5hbWVlc2NhcGUoczpweXRob25wYXRoKSkKLSAgIGxldCBzOnB5dGhvbnBhdGg9IGZuYW1lZXNjYXBlKHM6cHl0aG9ucGF0aCkKKyBmb3IgcHl0aG9ucGF0aCBpbiBzcGxpdChnbG9icGF0aCgmcnRwLCJzeW50YXgvcHl0aG9uLnZpbSIpLCJcbiIpCisgIGlmIGZpbGVyZWFkYWJsZShmbmFtZWVzY2FwZShweXRob25wYXRoKSkKKyAgIGxldCBzOnB5dGhvbnBhdGg9IGZuYW1lZXNjYXBlKHB5dGhvbnBhdGgpCiAgICBicmVhawogICBlbmRpZgogIGVuZGZvcgpAQCAtNjczLDE4ICs2OTMsMTIgQEAKIHVubGV0IHM6cHl0aG9ucGF0aAogCiAiIFstLSB0Y2wgLS1dIHt7ezMKLWlmIGhhcygid2luMzIiKSB8fCBoYXMoIndpbjk1IikgfHwgaGFzKCJ3aW42NCIpIHx8IGhhcygid2luMTYiKQotICIgYXBwYXJlbnRseSBoYXMoInRjbCIpIGhhcyBiZWVuIGhhbmdpbmcgdmltIG9uIHNvbWUgd2luZG93cyBzeXN0ZW1zIHdpdGggY3lnd2luCi0gbGV0IHM6dHJ5dGNsPSAoJnNoZWxsICF+ICdcPFwlKGJhc2hcPlx8NFtuTl1bdFRdXHxcPHpzaFwpXD5cJShcLmV4ZVwpXD0kJykKLWVsc2UKLSBsZXQgczp0cnl0Y2w9IDEKLWVuZGlmCiBpZiBzOnRyeXRjbAogIGxldCBzOnRjbHBhdGg9IGZuYW1lZXNjYXBlKGV4cGFuZCgiPHNmaWxlPjpwOmgiKS4iL3RjbC52aW0iKQogIGlmICFmaWxlcmVhZGFibGUoczp0Y2xwYXRoKQotICBmb3Igczp0Y2xwYXRoIGluIHNwbGl0KGdsb2JwYXRoKCZydHAsInN5bnRheC90Y2wudmltIiksIlxuIikKLSAgIGlmIGZpbGVyZWFkYWJsZShmbmFtZWVzY2FwZShzOnRjbHBhdGgpKQotICAgIGxldCBzOnRjbHBhdGg9IGZuYW1lZXNjYXBlKHM6dGNscGF0aCkKKyAgZm9yIHRjbHBhdGggaW4gc3BsaXQoZ2xvYnBhdGgoJnJ0cCwic3ludGF4L3RjbC52aW0iKSwiXG4iKQorICAgaWYgZmlsZXJlYWRhYmxlKGZuYW1lZXNjYXBlKHRjbHBhdGgpKQorICAgIGxldCBzOnRjbHBhdGg9IGZuYW1lZXNjYXBlKHRjbHBhdGgpCiAgICAgYnJlYWsKICAgIGVuZGlmCiAgIGVuZGZvcgpAQCAtNzE0LDkgKzcyOCw5IEBACiAiIFstLSBtenNjaGVtZSAtLV0ge3t7MwogbGV0IHM6bXpzY2hlbWVwYXRoPSBmbmFtZWVzY2FwZShleHBhbmQoIjxzZmlsZT46cDpoIikuIi9zY2hlbWUudmltIikKIGlmICFmaWxlcmVhZGFibGUoczptenNjaGVtZXBhdGgpCi0gZm9yIHM6bXpzY2hlbWVwYXRoIGluIHNwbGl0KGdsb2JwYXRoKCZydHAsInN5bnRheC9tenNjaGVtZS52aW0iKSwiXG4iKQotICBpZiBmaWxlcmVhZGFibGUoZm5hbWVlc2NhcGUoczptenNjaGVtZXBhdGgpKQotICAgbGV0IHM6bXpzY2hlbWVwYXRoPSBmbmFtZWVzY2FwZShzOm16c2NoZW1lcGF0aCkKKyBmb3IgbXpzY2hlbWVwYXRoIGluIHNwbGl0KGdsb2JwYXRoKCZydHAsInN5bnRheC9tenNjaGVtZS52aW0iKSwiXG4iKQorICBpZiBmaWxlcmVhZGFibGUoZm5hbWVlc2NhcGUobXpzY2hlbWVwYXRoKSkKKyAgIGxldCBzOm16c2NoZW1lcGF0aD0gZm5hbWVlc2NhcGUobXpzY2hlbWVwYXRoKQogICAgYnJlYWsKICAgZW5kaWYKICBlbmRmb3IKQEAgLTc1Nyw5ICs3NzEsNiBAQAogIiBIaWdobGlnaHRpbmcgU2V0dGluZ3Mge3t7MgogIiA9PT09PT09PT09PT09PT09PT09PQogCi1oaSBkZWYgbGluayB2aW1TdWJzdDEJdmltU3Vic3QKLWhpIGRlZiBsaW5rIHZpbUJlaGF2ZU1vZGVsCXZpbUJlaGF2ZQotCiBpZiAhZXhpc3RzKCJnOnZpbXN5bl9ub2Vycm9yIikKICBoaSBkZWYgbGluayB2aW1CZWhhdmVFcnJvcgl2aW1FcnJvcgogIGhpIGRlZiBsaW5rIHZpbUNvbGxDbGFzc0Vycgl2aW1FcnJvcgpAQCAtNzgxLDIyICs3OTIsNDMgQEAKIGhpIGRlZiBsaW5rIHZpbUFiYgl2aW1Db21tYW5kCiBoaSBkZWYgbGluayB2aW1BZGRyZXNzCXZpbU1hcmsKIGhpIGRlZiBsaW5rIHZpbUF1Z3JvdXBLZXkJdmltQ29tbWFuZAoraGkgZGVmIGxpbmsgdmltQXVIaWdobGlnaHQJdmltSGlnaGxpZ2h0CiBoaSBkZWYgbGluayB2aW1BdXRvQ21kT3B0CXZpbU9wdGlvbgogaGkgZGVmIGxpbmsgdmltQXV0b0NtZAl2aW1Db21tYW5kCitoaSBkZWYgbGluayB2aW1BdXRvRXZlbnQJVHlwZQogaGkgZGVmIGxpbmsgdmltQXV0b1NldAl2aW1Db21tYW5kCitoaSBkZWYgbGluayB2aW1CZWhhdmVNb2RlbAl2aW1CZWhhdmUKIGhpIGRlZiBsaW5rIHZpbUJlaGF2ZQl2aW1Db21tYW5kCitoaSBkZWYgbGluayB2aW1CcmFja2V0CURlbGltaXRlcgoraGkgZGVmIGxpbmsgdmltQ21wbHhSZXBlYXQJU3BlY2lhbENoYXIKK2hpIGRlZiBsaW5rIHZpbUNvbW1hbmQJU3RhdGVtZW50CitoaSBkZWYgbGluayB2aW1Db21tZW50CUNvbW1lbnQKIGhpIGRlZiBsaW5rIHZpbUNvbW1lbnRTdHJpbmcJdmltU3RyaW5nCitoaSBkZWYgbGluayB2aW1Db21tZW50VGl0bGUJUHJlUHJvYwogaGkgZGVmIGxpbmsgdmltQ29uZEhMCXZpbUNvbW1hbmQKK2hpIGRlZiBsaW5rIHZpbUNvbnRpbnVlCVNwZWNpYWwKK2hpIGRlZiBsaW5rIHZpbUN0cmxDaGFyCVNwZWNpYWxDaGFyCiBoaSBkZWYgbGluayB2aW1FY2hvSExOb25lCXZpbUdyb3VwCiBoaSBkZWYgbGluayB2aW1FY2hvSEwJdmltQ29tbWFuZAoraGkgZGVmIGxpbmsgdmltRWxzZUlmRXJyCUVycm9yCiBoaSBkZWYgbGluayB2aW1FbHNlaWYJdmltQ29uZEhMCitoaSBkZWYgbGluayB2aW1FbnZ2YXIJUHJlUHJvYworaGkgZGVmIGxpbmsgdmltRXJyb3IJRXJyb3IKK2hpIGRlZiBsaW5rIHZpbUZCVmFyCXZpbVZhcgogaGkgZGVmIGxpbmsgdmltRmdCZ0F0dHJpYgl2aW1IaUF0dHJpYgoraGkgZGVmIGxpbmsgdmltRm9sZAlGb2xkZWQKIGhpIGRlZiBsaW5rIHZpbUZUQ21kCXZpbUNvbW1hbmQKIGhpIGRlZiBsaW5rIHZpbUZUT3B0aW9uCXZpbVN5blR5cGUKIGhpIGRlZiBsaW5rIHZpbUZ1bmNLZXkJdmltQ29tbWFuZAoraGkgZGVmIGxpbmsgdmltRnVuY05hbWUJRnVuY3Rpb24KK2hpIGRlZiBsaW5rIHZpbUZ1bmNTSUQJU3BlY2lhbAoraGkgZGVmIGxpbmsgdmltRnVuY1ZhcglJZGVudGlmaWVyCiBoaSBkZWYgbGluayB2aW1Hcm91cEFkZAl2aW1TeW5PcHRpb24KIGhpIGRlZiBsaW5rIHZpbUdyb3VwTmFtZQl2aW1Hcm91cAogaGkgZGVmIGxpbmsgdmltR3JvdXBSZW0JdmltU3luT3B0aW9uCitoaSBkZWYgbGluayB2aW1Hcm91cFNwZWNpYWwJU3BlY2lhbAoraGkgZGVmIGxpbmsgdmltR3JvdXAJVHlwZQoraGkgZGVmIGxpbmsgdmltSGlBdHRyaWIJUHJlUHJvYwogaGkgZGVmIGxpbmsgdmltSGlDbGVhcgl2aW1IaWdobGlnaHQKIGhpIGRlZiBsaW5rIHZpbUhpQ3Rlcm1GZ0JnCXZpbUhpVGVybQogaGkgZGVmIGxpbmsgdmltSGlDVGVybQl2aW1IaVRlcm0KQEAgLTgwNiwxMTEgKzgzOCw5NSBAQAogaGkgZGVmIGxpbmsgdmltSGlHdWlGb250CXZpbUhpVGVybQogaGkgZGVmIGxpbmsgdmltSGlHdWlSZ2IJdmltTnVtYmVyCiBoaSBkZWYgbGluayB2aW1IaUd1aQl2aW1IaVRlcm0KK2hpIGRlZiBsaW5rIHZpbUhpTm1icglOdW1iZXIKIGhpIGRlZiBsaW5rIHZpbUhpU3RhcnRTdG9wCXZpbUhpVGVybQoraGkgZGVmIGxpbmsgdmltSGlUZXJtCVR5cGUKIGhpIGRlZiBsaW5rIHZpbUhMR3JvdXAJdmltR3JvdXAKK2hpIGRlZiBsaW5rIHZpbUhMTW9kCVByZVByb2MKIGhpIGRlZiBsaW5rIHZpbUluc2VydAl2aW1TdHJpbmcKIGhpIGRlZiBsaW5rIHZpbUtleUNvZGUJdmltU3BlY0ZpbGUKK2hpIGRlZiBsaW5rIHZpbUtleXdvcmQJU3RhdGVtZW50CiBoaSBkZWYgbGluayB2aW1MZXQJdmltQ29tbWFuZAogaGkgZGVmIGxpbmsgdmltTGluZUNvbW1lbnQJdmltQ29tbWVudAogaGkgZGVmIGxpbmsgdmltTWFwQmFuZwl2aW1Db21tYW5kCiBoaSBkZWYgbGluayB2aW1NYXBNb2RLZXkJdmltRnVuY1NJRAogaGkgZGVmIGxpbmsgdmltTWFwTW9kCXZpbUJyYWNrZXQKIGhpIGRlZiBsaW5rIHZpbU1hcAl2aW1Db21tYW5kCitoaSBkZWYgbGluayB2aW1NYXJrCU51bWJlcgogaGkgZGVmIGxpbmsgdmltTWFya051bWJlcgl2aW1OdW1iZXIKIGhpIGRlZiBsaW5rIHZpbU1lbnVNb2QJdmltTWFwTW9kCiBoaSBkZWYgbGluayB2aW1NZW51TmFtZU1vcmUJdmltTWVudU5hbWUKK2hpIGRlZiBsaW5rIHZpbU1lbnVOYW1lCVByZVByb2MKIGhpIGRlZiBsaW5rIHZpbU10Y2hDb21tZW50CXZpbUNvbW1lbnQKIGhpIGRlZiBsaW5rIHZpbU5vcm0JdmltQ29tbWFuZAoraGkgZGVmIGxpbmsgdmltTm90YXRpb24JU3BlY2lhbAogaGkgZGVmIGxpbmsgdmltTm90RnVuYwl2aW1Db21tYW5kCiBoaSBkZWYgbGluayB2aW1Ob3RQYXRTZXAJdmltU3RyaW5nCitoaSBkZWYgbGluayB2aW1OdW1iZXIJTnVtYmVyCitoaSBkZWYgbGluayB2aW1PcGVyRXJyb3IJRXJyb3IKK2hpIGRlZiBsaW5rIHZpbU9wZXIJT3BlcmF0b3IKK2hpIGRlZiBsaW5rIHZpbU9wdGlvbglQcmVQcm9jCitoaSBkZWYgbGluayB2aW1QYXJlblNlcAlEZWxpbWl0ZXIKIGhpIGRlZiBsaW5rIHZpbVBhdFNlcEVycgl2aW1QYXRTZXAKIGhpIGRlZiBsaW5rIHZpbVBhdFNlcFIJdmltUGF0U2VwCitoaSBkZWYgbGluayB2aW1QYXRTZXAJU3BlY2lhbENoYXIKIGhpIGRlZiBsaW5rIHZpbVBhdFNlcFpvbmUJdmltU3RyaW5nCiBoaSBkZWYgbGluayB2aW1QYXRTZXBaCXZpbVBhdFNlcAoraGkgZGVmIGxpbmsgdmltUGF0dGVybglUeXBlCiBoaSBkZWYgbGluayB2aW1QbGFpbk1hcmsJdmltTWFyawogaGkgZGVmIGxpbmsgdmltUGxhaW5SZWdpc3Rlcgl2aW1SZWdpc3RlcgoraGkgZGVmIGxpbmsgdmltUmVnaXN0ZXIJU3BlY2lhbENoYXIKK2hpIGRlZiBsaW5rIHZpbVNjcmlwdERlbGltCUNvbW1lbnQKK2hpIGRlZiBsaW5rIHZpbVNlYXJjaERlbGltCVN0YXRlbWVudAogaGkgZGVmIGxpbmsgdmltU2VhcmNoCXZpbVN0cmluZworaGkgZGVmIGxpbmsgdmltU2VwCURlbGltaXRlcgogaGkgZGVmIGxpbmsgdmltU2V0TW9kCXZpbU9wdGlvbgoraGkgZGVmIGxpbmsgdmltU2V0U2VwCVN0YXRlbWVudAogaGkgZGVmIGxpbmsgdmltU2V0U3RyaW5nCXZpbVN0cmluZworaGkgZGVmIGxpbmsgdmltU3BlY0ZpbGUJSWRlbnRpZmllcgogaGkgZGVmIGxpbmsgdmltU3BlY0ZpbGVNb2QJdmltU3BlY0ZpbGUKK2hpIGRlZiBsaW5rIHZpbVNwZWNpYWwJVHlwZQoraGkgZGVmIGxpbmsgdmltU3RhdGVtZW50CVN0YXRlbWVudAogaGkgZGVmIGxpbmsgdmltU3RyaW5nQ29udAl2aW1TdHJpbmcKK2hpIGRlZiBsaW5rIHZpbVN0cmluZwlTdHJpbmcKK2hpIGRlZiBsaW5rIHZpbVN1YnN0MQl2aW1TdWJzdAoraGkgZGVmIGxpbmsgdmltU3Vic3REZWxpbQlEZWxpbWl0ZXIKK2hpIGRlZiBsaW5rIHZpbVN1YnN0RmxhZ3MJU3BlY2lhbAoraGkgZGVmIGxpbmsgdmltU3Vic3RTdWJzdHIJU3BlY2lhbENoYXIKIGhpIGRlZiBsaW5rIHZpbVN1YnN0VHdvQlMJdmltU3RyaW5nCiBoaSBkZWYgbGluayB2aW1TdWJzdAl2aW1Db21tYW5kCitoaSBkZWYgbGluayB2aW1TeW5DYXNlRXJyb3IJRXJyb3IKK2hpIGRlZiBsaW5rIHZpbVN5bkNhc2UJVHlwZQoraGkgZGVmIGxpbmsgdmltU3luY0MJVHlwZQoraGkgZGVmIGxpbmsgdmltU3luY0Vycm9yCUVycm9yCiBoaSBkZWYgbGluayB2aW1TeW5jR3JvdXBOYW1lCXZpbUdyb3VwTmFtZQogaGkgZGVmIGxpbmsgdmltU3luY0dyb3VwCXZpbUdyb3VwTmFtZQoraGkgZGVmIGxpbmsgdmltU3luY0tleQlUeXBlCitoaSBkZWYgbGluayB2aW1TeW5jTm9uZQlUeXBlCiBoaSBkZWYgbGluayB2aW1TeW5Db250YWlucwl2aW1TeW5PcHRpb24KK2hpIGRlZiBsaW5rIHZpbVN5bkVycm9yCUVycm9yCiBoaSBkZWYgbGluayB2aW1TeW5LZXlDb250YWluZWRpbgl2aW1TeW5Db250YWlucwogaGkgZGVmIGxpbmsgdmltU3luS2V5T3B0CXZpbVN5bk9wdGlvbgogaGkgZGVmIGxpbmsgdmltU3luTXRjaEdycAl2aW1TeW5PcHRpb24KIGhpIGRlZiBsaW5rIHZpbVN5bk10Y2hPcHQJdmltU3luT3B0aW9uCiBoaSBkZWYgbGluayB2aW1TeW5OZXh0Z3JvdXAJdmltU3luT3B0aW9uCiBoaSBkZWYgbGluayB2aW1TeW5Ob3RQYXRSYW5nZQl2aW1TeW5SZWdQYXQKK2hpIGRlZiBsaW5rIHZpbVN5bk9wdGlvbglTcGVjaWFsCiBoaSBkZWYgbGluayB2aW1TeW5QYXRSYW5nZQl2aW1TdHJpbmcKIGhpIGRlZiBsaW5rIHZpbVN5blJlZ09wdAl2aW1TeW5PcHRpb24KIGhpIGRlZiBsaW5rIHZpbVN5blJlZ1BhdAl2aW1TdHJpbmcKK2hpIGRlZiBsaW5rIHZpbVN5blJlZwlUeXBlCiBoaSBkZWYgbGluayB2aW1TeW50YXgJdmltQ29tbWFuZAogaGkgZGVmIGxpbmsgdmltU3luVHlwZQl2aW1TcGVjaWFsCitoaSBkZWYgbGluayB2aW1Ub2RvCVRvZG8KIGhpIGRlZiBsaW5rIHZpbVVubWFwCXZpbU1hcAoraGkgZGVmIGxpbmsgdmltVXNlckF0dHJiQ21wbHRGdW5jCVNwZWNpYWwKIGhpIGRlZiBsaW5rIHZpbVVzZXJBdHRyYkNtcGx0CXZpbVNwZWNpYWwKIGhpIGRlZiBsaW5rIHZpbVVzZXJBdHRyYktleQl2aW1PcHRpb24KIGhpIGRlZiBsaW5rIHZpbVVzZXJBdHRyYgl2aW1TcGVjaWFsCi1oaSBkZWYgbGluayB2aW1Vc2VyQ29tbWFuZAl2aW1Db21tYW5kCi0KLWhpIGRlZiBsaW5rIHZpbUF1dG9FdmVudAlUeXBlCi1oaSBkZWYgbGluayB2aW1CcmFja2V0CURlbGltaXRlcgotaGkgZGVmIGxpbmsgdmltQ21wbHhSZXBlYXQJU3BlY2lhbENoYXIKLWhpIGRlZiBsaW5rIHZpbUNvbW1hbmQJU3RhdGVtZW50Ci1oaSBkZWYgbGluayB2aW1Db21tZW50CUNvbW1lbnQKLWhpIGRlZiBsaW5rIHZpbUNvbW1lbnRUaXRsZQlQcmVQcm9jCi1oaSBkZWYgbGluayB2aW1Db250aW51ZQlTcGVjaWFsCi1oaSBkZWYgbGluayB2aW1DdHJsQ2hhcglTcGVjaWFsQ2hhcgotaGkgZGVmIGxpbmsgdmltRWxzZUlmRXJyCUVycm9yCi1oaSBkZWYgbGluayB2aW1FbnZ2YXIJUHJlUHJvYwotaGkgZGVmIGxpbmsgdmltRXJyb3IJRXJyb3IKLWhpIGRlZiBsaW5rIHZpbUZvbGQJRm9sZGVkCi1oaSBkZWYgbGluayB2aW1GdW5jTmFtZQlGdW5jdGlvbgotaGkgZGVmIGxpbmsgdmltRnVuY1NJRAlTcGVjaWFsCi1oaSBkZWYgbGluayB2aW1GdW5jVmFyCUlkZW50aWZpZXIKLWhpIGRlZiBsaW5rIHZpbUdyb3VwU3BlY2lhbAlTcGVjaWFsCi1oaSBkZWYgbGluayB2aW1Hcm91cAlUeXBlCi1oaSBkZWYgbGluayB2aW1IaUF0dHJpYglQcmVQcm9jCi1oaSBkZWYgbGluayB2aW1IaVRlcm0JVHlwZQotaGkgZGVmIGxpbmsgdmltSExNb2QJUHJlUHJvYwotaGkgZGVmIGxpbmsgdmltS2V5d29yZAlTdGF0ZW1lbnQKLWhpIGRlZiBsaW5rIHZpbU1hcmsJTnVtYmVyCi1oaSBkZWYgbGluayB2aW1NZW51TmFtZQlQcmVQcm9jCi1oaSBkZWYgbGluayB2aW1Ob3RhdGlvbglTcGVjaWFsCi1oaSBkZWYgbGluayB2aW1OdW1iZXIJTnVtYmVyCi1oaSBkZWYgbGluayB2aW1PcGVyRXJyb3IJRXJyb3IKLWhpIGRlZiBsaW5rIHZpbU9wZXIJT3BlcmF0b3IKLWhpIGRlZiBsaW5rIHZpbU9wdGlvbglQcmVQcm9jCi1oaSBkZWYgbGluayB2aW1QYXJlblNlcAlEZWxpbWl0ZXIKLWhpIGRlZiBsaW5rIHZpbVBhdFNlcAlTcGVjaWFsQ2hhcgotaGkgZGVmIGxpbmsgdmltUGF0dGVybglUeXBlCi1oaSBkZWYgbGluayB2aW1SZWdpc3RlcglTcGVjaWFsQ2hhcgotaGkgZGVmIGxpbmsgdmltU2NyaXB0RGVsaW0JQ29tbWVudAotaGkgZGVmIGxpbmsgdmltU2VhcmNoRGVsaW0JU3RhdGVtZW50Ci1oaSBkZWYgbGluayB2aW1TZXAJRGVsaW1pdGVyCi1oaSBkZWYgbGluayB2aW1TZXRTZXAJU3RhdGVtZW50Ci1oaSBkZWYgbGluayB2aW1TcGVjRmlsZQlJZGVudGlmaWVyCi1oaSBkZWYgbGluayB2aW1TcGVjaWFsCVR5cGUKLWhpIGRlZiBsaW5rIHZpbVN0YXRlbWVudAlTdGF0ZW1lbnQKLWhpIGRlZiBsaW5rIHZpbVN0cmluZwlTdHJpbmcKLWhpIGRlZiBsaW5rIHZpbVN1YnN0RGVsaW0JRGVsaW1pdGVyCi1oaSBkZWYgbGluayB2aW1TdWJzdEZsYWdzCVNwZWNpYWwKLWhpIGRlZiBsaW5rIHZpbVN1YnN0U3Vic3RyCVNwZWNpYWxDaGFyCi1oaSBkZWYgbGluayB2aW1TeW5DYXNlRXJyb3IJRXJyb3IKLWhpIGRlZiBsaW5rIHZpbVN5bkNhc2UJVHlwZQotaGkgZGVmIGxpbmsgdmltU3luY0MJVHlwZQotaGkgZGVmIGxpbmsgdmltU3luY0Vycm9yCUVycm9yCi1oaSBkZWYgbGluayB2aW1TeW5jS2V5CVR5cGUKLWhpIGRlZiBsaW5rIHZpbVN5bmNOb25lCVR5cGUKLWhpIGRlZiBsaW5rIHZpbVN5bkVycm9yCUVycm9yCi1oaSBkZWYgbGluayB2aW1TeW5PcHRpb24JU3BlY2lhbAotaGkgZGVmIGxpbmsgdmltU3luUmVnCVR5cGUKLWhpIGRlZiBsaW5rIHZpbVRvZG8JVG9kbwotaGkgZGVmIGxpbmsgdmltVXNlckF0dHJiQ21wbHRGdW5jCVNwZWNpYWwKK2hpIGRlZiBsaW5rIHZpbVVzZXJBdHRyYkVycm9yCUVycm9yCiBoaSBkZWYgbGluayB2aW1Vc2VyQ21kRXJyb3IJRXJyb3IKK2hpIGRlZiBsaW5rIHZpbVVzZXJDb21tYW5kCXZpbUNvbW1hbmQKIGhpIGRlZiBsaW5rIHZpbVVzZXJGdW5jCU5vcm1hbAogaGkgZGVmIGxpbmsgdmltVmFyCUlkZW50aWZpZXIKIGhpIGRlZiBsaW5rIHZpbVdhcm4JV2FybmluZ01zZwpkaWZmIC0tZ2l0IGEvcnVudGltZS9zeW50YXgveWFjYy52aW0gYi9ydW50aW1lL3N5bnRheC95YWNjLnZpbQppbmRleCA3MTQ0MzJiLi5jNjUxMDllIDEwMDY0NAotLS0gYS9ydW50aW1lL3N5bnRheC95YWNjLnZpbQorKysgYi9ydW50aW1lL3N5bnRheC95YWNjLnZpbQpAQCAtMSw4ICsxLDggQEAKICIgVmltIHN5bnRheCBmaWxlCiAiIExhbmd1YWdlOglZYWNjCiAiIE1haW50YWluZXI6CUNoYXJsZXMgRS4gQ2FtcGJlbGwgPE5kck9jaGlwU0BQY2FtcGJlbGxBZmFtaWx5Lk1iaXo+Ci0iIExhc3QgQ2hhbmdlOglKYW4gMTQsIDIwMTUKLSIgVmVyc2lvbjoJMTIKKyIgTGFzdCBDaGFuZ2U6CUFwciAwMiwgMjAxNQorIiBWZXJzaW9uOgkxMwogIiBVUkw6CWh0dHA6Ly9teXNpdGUudmVyaXpvbi5uZXQvYXN0cm9uYXV0L3ZpbS9pbmRleC5odG1sI3ZpbWxpbmtzX3N5bnRheAogIgogIiBPcHRpb25zOiB7e3sxCmRpZmYgLS1naXQgYS9ydW50aW1lL3R1dG9yL3R1dG9yLmRlIGIvcnVudGltZS90dXRvci90dXRvci5kZQppbmRleCAyYjljMDI5Li5mM2JkODZjIDEwMDY0NAotLS0gYS9ydW50aW1lL3R1dG9yL3R1dG9yLmRlCisrKyBiL3J1bnRpbWUvdHV0b3IvdHV0b3IuZGUKQEAgLTEsOTgyICsxLDk4MiBAQAotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KLT0gICAgICBXIGkgbCBsIGsgbyBtIG0gZSBuICAgaW0gICBWIEkgTSAgIFQgdSB0IG8gciAgICAtICAgIFZlcnNpb24gMS43LmRlLjEgID0NCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQotDQotICAgVmltIGlzdCBlaW4gc2VociBt5GNodGlnZXIgRWRpdG9yLCBkZXIgdmllbGUgQmVmZWhsZSBiZXJlaXRzdGVsbHQ7IHp1IHZpZWxlLA0KLSAgIHVtIGFsbGUgaW4gZWluZW0gVHV0b3Igd2llIGRpZXNlbSB6dSBlcmts5HJlbi4gIERpZXNlciBUdXRvciBpc3Qgc28NCi0gICBnZXN0YWx0ZXQsIHVtIGdlbnVnIEJlZmVobGUgdm9yenVzdGVsbGVuLCBkYXNzIER1IGRpZSBG5GhpZ2tlaXQgZXJsYW5nc3QsDQotICAgVmltIG1pdCBMZWljaHRpZ2tlaXQgYWxzIGVpbmVuIEFsbHp3ZWNrLUVkaXRvciB6dSB2ZXJ3ZW5kZW4uDQotICAgRGllIFplaXQgZvxyIGRhcyBEdXJjaGFyYmVpdGVuIGRpZXNlcyBUdXRvcnMgYmV0cuRndCBjYS4gMjUtMzAgTWludXRlbiwNCi0gICBhYmjkbmdpZyBkYXZvbiwgd2llIHZpZWwgWmVpdCBEdSBtaXQgRXhwZXJpbWVudGllcmVuIHZlcmJyaW5nc3QuDQotDQotICAgQUNIVFVORzoNCi0gICBEaWUgaW4gZGVuIExla3Rpb25lbiBhbmdld2VuZGV0ZW4gS29tbWFuZG9zIHdlcmRlbiBkZW4gVGV4dCBtb2RpZml6aWVyZW4uDQotICAgRXJzdGVsbGUgZWluZSBLb3BpZSBkaWVzZXIgRGF0ZWksIGluIGRlciBEdSD8YmVuIHdpbGxzdCAoZmFsbHMgRHUgInZpbXR1dG9yIg0KLSAgIGF1ZmdlcnVmZW4gaGFzdCwgaXN0IGRpZXMgYmVyZWl0cyBlaW5lIEtvcGllKS4NCi0NCi0gICBFcyBpc3Qgd2ljaHRpZywgc2ljaCB6dSB2ZXJnZWdlbnfkcnRpZ2VuLCBkYXNzIGRpZXNlciBUdXRvciBm/HIgZGFzIEFud2VuZGVuDQotICAga29uemlwaWVydCBpc3QuIERhcyBiZWRldXRldCwgZGFzcyBEdSBkaWUgQmVmZWhsZSBhbndlbmRlbiBtdXNzdCwgdW0gc2llDQotICAgcmljaHRpZyB6dSBsZXJuZW4uIFdlbm4gRHUgbnVyIGRlbiBUZXh0IGxpZXN0LCB2ZXJnaXNzdCBEdSBkaWUgQmVmZWhsZSENCi0NCi0gICBKZXR6dCBzdGVsbGUgc2ljaGVyLCBkYXNzIGRlaW5lIFVtc3RlbGx0YXN0ZSBOSUNIVCBnZWRy/GNrdCBpc3QgdW5kIGJldOR0aWdlDQotICAgZGllICAgaiAgIFRhc3RlIGdlbvxnZW5kIE1hbCwgdW0gZGVuIEN1cnNvciBuYWNoIHVudGVuIHp1IGJld2VnZW4sIHNvIGRhc3MNCi0gICBMZWt0aW9uIDEuMSBkZW4gQmlsZHNjaGlybSB2b2xsa29tbWVuIGF1c2b8bGx0Lg0KLX5+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+fg0KLQkJCUxla3Rpb24gMS4xOiBCRVdFR0VOIERFUyBDVVJTT1JTDQotDQotICAqKiBVbSBkZW4gQ3Vyc29yIHp1IGJld2VnZW4sIGRy/GNrZSBkaWUgaCxqLGssbCBUYXN0ZW4gd2llIHVudGVuIGdlemVpZ3QuICoqDQotCSAgICAgXgkJIEhpbGZlc3RlbGx1bmc6DQotCSAgICAgawkJIERpZSBoIFRhc3RlIGJlZmluZGV0IHNpY2ggbGlua3MgdW5kIGJld2VndCBuYWNoIGxpbmtzLg0KLSAgICAgICA8IGgJIGwgPgkgRGllIGwgVGFzdGUgbGllZ3QgcmVjaHRzIHVuZCBiZXdlZ3QgbmFjaCByZWNodHMuDQotCSAgICAgagkJIERpZSBqIFRhc3RlIORobmVsdCBlaW5lbSBQZmVpbCBuYWNoIHVudGVuLg0KLQkgICAgIHYNCi0gIDEuIEJld2VnZSBkZW4gQ3Vyc29yIGF1ZiBkZW0gQmlsZHNjaGlybSB1bWhlciwgYmlzIER1IERpY2ggc2ljaGVyIGb8aGxzdC4NCi0NCi0gIDIuIEhhbHRlIGRpZSBOYWNoLVVudGVuLVRhc3RlIChqKSBnZWRy/GNrdCwgYmlzIHNpZSBzaWNoIHdpZWRlcmhvbHQuDQotICAgICBKZXR6dCB3ZWnfdCBEdSwgd2llIER1IERpY2ggenVyIG7kY2hzdGVuIExla3Rpb24gYmV3ZWdlbiBrYW5uc3QuDQotDQotICAzLiBCZW51dHplIGRpZSBOYWNoLVVudGVuLVRhc3RlLCB1bSBEaWNoIHp1IExla3Rpb24gMS4yIHp1IGJld2VnZW4uDQotDQotQW5tZXJrdW5nOiBJbW1lciwgd2VubiBEdSBEaXIgdW5zaWNoZXIgYmlzdCD8YmVyIGRhcywgd2FzIER1IGdldGlwcHQgaGFzdCwNCi0JICAgZHL8Y2tlIDxFU0M+ICwgdW0gRGljaCBpbiBkZW4gTm9ybWFsbW9kdXMgenUgYmVnZWJlbi4NCi0JICAgRGFubiBnaWIgZGFzIGdld/xuc2NodGUgS29tbWFuZG8gbm9jaCBlaW5tYWwgZWluLg0KLQ0KLUFubWVya3VuZzogRGllIEN1cnNvci1UYXN0ZW4gc29sbHRlbiBlYmVuZmFsbHMgZnVua3Rpb25pZXJlbi4gIEFiZXIgd2VubiBEdQ0KLQkgICBoamtsIGJlbnV0enQsIHdpcnN0IER1IGluIGRlciBMYWdlIHNlaW4sIERpY2ggc2VociB2aWVsIHNjaG5lbGxlcg0KLQkgICB1bWhlcnp1YmV3ZWdlbiwgd2VubiBEdSBEaWNoIGVpbm1hbCBkYXJhbiBnZXf2aG50IGhhc3QuIFdpcmtsaWNoIQ0KLX5+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+fg0KLQkJCSAgICBMZWt0aW9uIDEuMjogVklNIEJFRU5ERU4NCi0NCi0NCi0gICEhIEhpbndlaXM6IEJldm9yIER1IGVpbmVuIGRlciB1bnRlbiBhdWZnZWb8aHJ0ZW4gU2Nocml0dGUgYXVzZvxocnN0LCBsaWVzDQotICAgICBkaWVzZSBnZXNhbXRlIExla3Rpb24hIQ0KLQ0KLSAgMS4gRHL8Y2tlIGRpZSA8RVNDPiBUYXN0ZSAodW0gc2ljaGVyenVzdGVsbGVuLCBkYXNzIER1IGltIE5vcm1hbG1vZHVzIGJpc3QpLg0KLQ0KLSAgMi4gVGlwcGU6CTpxISA8RU5URVI+Lg0KLSAgICAgRGllcyBiZWVuZGV0IGRlbiBFZGl0b3IgdW5kIFZFUldJUkZUIGFsbGUgxG5kZXJ1bmdlbiwgZGllIER1IGdlbWFjaHQgaGFzdC4NCi0NCi0gIDMuIFdlbm4gRHUgZGllIEVpbmdhYmVhdWZmb3JkZXJ1bmcgc2llaHN0LCBnaWIgZGFzIEtvbW1hbmRvIGVpbiwgZGFzIERpY2ggenUNCi0gICAgIGRpZXNlbSBUdXRvciBnZWb8aHJ0IGhhdC4gRGllcyB35HJlOgl2aW10dXRvciA8RU5URVI+DQotDQotICA0LiBXZW5uIER1IERpciBkaWVzZSBTY2hyaXR0ZSBlaW5nZXBy5Gd0IGhhc3QgdW5kIER1IERpY2ggc2ljaGVyIGb8aGxzdCwNCi0gICAgIGb8aHJlIFNjaHJpdHRlIDEgYmlzIDMgYXVzLCB1bSBkZW4gRWRpdG9yIHp1IHZlcmxhc3NlbiB1bmQgd2llZGVyDQotICAgICBoaW5laW56dWdlbGFuZ2VuLg0KLQ0KLUFubWVya3VuZzogIDpxISA8RU5URVI+ICB2ZXJ3aXJmdCBhbGxlIMRuZGVydW5nZW4sIGRpZSBEdSBnZW1hY2h0IGhhc3QuIEVpbmlnZQ0KLSAgICAgTGVrdGlvbmVuIHNw5HRlciBsZXJuc3QgRHUsIGRpZSDEbmRlcnVuZ2VuIGluIGVpbmVyIERhdGVpIHp1IHNwZWljaGVybi4NCi0NCi0gIDUuIEJld2VnZSBkZW4gQ3Vyc29yIGFid+RydHMgenUgTGVrdGlvbiAxLjMuDQotIH5+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+fg0KLQkJICAgICBMZWt0aW9uIDEuMzogVEVYVCBFRElUSUVSRU4gLSBM1lNDSEVODQotDQotDQotCSAqKiBEcvxja2UgIHggICwgdW0gZGFzIFplaWNoZW4gdW50ZXIgZGVtIEN1cnNvciB6dSBs9nNjaGVuLiAqKg0KLQ0KLSAgMS4gQmV3ZWdlIGRlbiBDdXJzb3IgenUgZGVyIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUgdW50ZW4uDQotDQotICAyLiBVbSBkaWUgRmVobGVyIHp1IGJlaGViZW4sIGJld2VnZSBkZW4gQ3Vyc29yLCBiaXMgZXIg/GJlciBkZW0gWmVpY2hlbiBzdGVodCwNCi0gICAgIGRhcyBnZWz2c2NodCB3ZXJkZW4gc29sbC4NCi0NCi0gIDMuIERy/GNrZSBkaWUgIHggIFRhc3RlLCB1bSBkYXMgdW5lcnf8bnNjaHRlIFplaWNoZW4genUgbPZzY2hlbi4NCi0NCi0gIDQuIFdpZWRlcmhvbGUgZGllIFNjaHJpdHRlIDIgYmlzIDQsIGJpcyBkZXIgU2F0eiBrb3JyZWt0IGlzdC4NCi0NCi0tLS0+IERpZSBLa3VoIHNwcmFuZ2cg/GJiZXJyIGRlZW4gTW9vbmQuDQotDQotICA1LiBOdW4sIGRhIGRpZSBaZWlsZSBrb3JyZWt0IGlzdCwgZ2VoZSB3ZWl0ZXIgenVyIExla3Rpb24gMS40Lg0KLQ0KLUFubWVya3VuZzogV+RocmVuZCBEdSBkdXJjaCBkaWVzZW4gVHV0b3IgZ2Voc3QsIHZlcnN1Y2hlIG5pY2h0LCBhdXN3ZW5kaWcgenUNCi0gICAgbGVybmVuLCBsZXJuZSB2aWVsbWVociBkdXJjaCBBbndlbmRlbi4NCi0NCi0NCi1+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+fn4NCi0JCSAgICAgTGVrdGlvbiAxLjQ6IFRFWFQgRURJVElFUkVOIC0gRUlORtxHRU4NCi0NCi0NCi0JCSAgICAqKiAgRHL8Y2tlICBpICAsIHVtIFRleHQgZWluenVm/Gdlbi4gKioNCi0NCi0gIDEuIEJld2VnZSBkZW4gQ3Vyc29yIHp1ciBlcnN0ZW4gdW50ZW4gc3RlaGVuZGVuIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUuDQotDQotICAyLiBVbSBkaWUgZXJzdGUgWmVpbGUgbWl0IGRlciB6d2VpdGVuIGdsZWljaHp1bWFjaGVuLCBiZXdlZ2UgZGVuIEN1cnNvciBhdWYNCi0gICAgIGRhcyBlcnN0ZSBaZWljaGVuIE5BQ0ggZGVyIFN0ZWxsZSwgYW4gZGVyIFRleHQgZWluZ2Vm/Gd0IHdlcmRlbiBzb2xsLg0KLQ0KLSAgMy4gRHL8Y2tlICBpICB1bmQgZ2liIGRpZSBu9nRpZ2VuIEVyZ+RuenVuZ2VuIGVpbi4NCi0NCi0gIDQuIFdlbm4gamV3ZWlscyBlaW4gRmVobGVyIGJlc2VpdGlndCBpc3QsIGRy/GNrZSA8RVNDPiAsIHVtIHp1bSBOb3JtYWxtb2R1cw0KLSAgICAgenVy/GNrenVrZWhyZW4uDQotCQkgV2llZGVyaG9sZSBTY2hyaXR0ZSAyIGJpcyA0LCB1bSBkZW4gU2F0eiB6dSBrb3JyaWdpZXJlbi4NCi0NCi0tLS0+IEluIGRpZXNlciBmdCBldHdhcyAuDQotLS0tPiBJbiBkaWVzZXIgWmVpbGUgZmVobHQgZXR3YXMgVGV4dC4NCi0NCi0gIDUuIFdlbm4gRHUgRGljaCBtaXQgZGVtIEVpbmb8Z2VuIHZvbiBUZXh0IHNpY2hlciBm/Ghsc3QsIGdlaGUgenUgTGVrdGlvbiAxLjUuDQotDQotDQotfn5+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+DQotCQkgICAgIExla3Rpb24gMS41OiBURVhUIEVESVRJRVJFTiAtIEFORtxHRU4NCi0NCi0NCi0JCSAgICAgKiogRHL8Y2tlICBBICAsIHVtIFRleHQgYW56dWb8Z2VuLiAqKg0KLQ0KLSAgMS4gQmV3ZWdlIGRlbiBDdXJzb3IgenVyIGVyc3RlbiB1bnRlbiBzdGVoZW5kZW4gbWl0IC0tLT4gbWFya2llcnRlbiBaZWlsZS4NCi0gICAgIERhYmVpIGlzdCBnbGVpY2hn/Gx0aWcsIGF1ZiB3ZWxjaGVtIFplaWNoZW4gZGVyIFplaWxlIGRlciBDdXJzb3Igc3RlaHQuDQotDQotICAyLiBEcvxja2UgIEEgIHVuZCBnaWIgZGllIGVyZm9yZGVybGljaGVuIEVyZ+RuenVuZ2VuIGVpbi4NCi0NCi0gIDMuIFdlbm4gZGFzIEFuZvxnZW4gYWJnZXNjaGxvc3NlbiBpc3QsIGRy/GNrZSA8RVNDPiwgdW0gaW4gZGVuIE5vcm1hbG1vZHVzDQotICAgICB6dXL8Y2t6dWtlaHJlbi4NCi0NCi0gIDQuIEJld2VnZSBkZW4gQ3Vyc29yIHp1ciB6d2VpdGVuIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUgdW5kIHdpZWRlcmhvbGUNCi0gICAgIGRpZSBTY2hyaXR0ZSAyIHVuZCAzLCB1bSBkZW4gU2F0eiB6dSBhdXN6dWJlc3Nlcm4uDQotDQotLS0tPiBJbiBkaWVzZXIgWmVpbGUgZmVoDQotICAgICBJbiBkaWVzZXIgWmVpbGUgZmVobHQgZXR3YXMgVGV4dC4NCi0tLS0+IEF1Y2ggaGllciBzdGVoDQotICAgICBBdWNoIGhpZXIgc3RlaHQgZXR3YXMgVW52b2xsc3TkbmRpZ2VzLg0KLQ0KLSAgNS4gV2VubiBEdSBkaWNoIG1pdCBkZW0gQW5m/GdlbiB2b24gVGV4dCBzaWNoZXIgZvxobHN0LCBnZWhlIHp1IExla3Rpb24gMS42Lg0KLX5+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+fg0KLQkJICAgICAgIExla3Rpb24gMS42OiBFSU5FIERBVEVJIEVESVRJRVJFTg0KLQ0KLQkJICoqIEJlbnV0emUgIDp3cSAgLCB1bSBlaW5lIERhdGVpIHp1IHNwZWljaGVybiB1bmQgVmltIHp1IHZlcmxhc3Nlbi4gKioNCi0NCi0gICEhIEhpbndlaXM6IEJldm9yIER1IGVpbmVuIGRlciB1bnRlbiBhdWZnZWb8aHJ0ZW4gU2Nocml0dGUgYXVzZvxocnN0LCBsaWVzDQotICAgICBkaWVzZSBnZXNhbXRlIExla3Rpb24hIQ0KLQ0KLSAgMS4gVmVybGFzc2UgZGVuIEVkaXRvciBzbyB3aWUgaW4gTGVrdGlvbiAxLjI6ICA6cSEgICAgICAgDQotCSAgIE9kZXIsIGZhbGxzIGR1IFp1Z3JpZmYgenUgZWluZW0gYW5kZXJlbiBUZXJtaW5hbCBoYXN0LCBm/GhyZSBkYXMgDQotCQkgRm9sZ2VuZGUgZG9ydCBhdXMuDQotDQotICAyLiBHaWIgZGllc2VzIEtvbW1hbmRvIGluIGRpZSBFaW5nYWJlYXVmZm9yZGVydW5nIGVpbjogIHZpbSB0dXRvciA8RU5URVI+DQotICAgICAndmltJyBpc3QgZGVyIEF1ZnJ1ZiBkZXMgRWRpdG9ycywgJ3R1dG9yJyBpc3QgZGllIHp1IGVkaXRpZXJlbmRlIERhdGVpLg0KLSAgICAgQmVudXR6ZSBlaW5lIERhdGVpLCBkaWUgZ2XkbmRlcnQgd2VyZGVuIGRhcmYuDQotDQotICAzLiBG/GdlIFRleHQgZWluIG9kZXIgbPZzY2hlIGlobiwgd2llIER1IGluIGRlbiB2b3JhbmdlaGVuZGVuIExla3Rpb25lbiANCi0gICAgIGdlbGVybnQgaGFzdC4NCi0NCi0gIDQuIFNwZWljaGVyZSBkaWUgZ2XkbmRlcnRlIERhdGVpIHVuZCB2ZXJsYXNzZSBWaW0gbWl0OiAgOndxICA8RU5URVI+DQotDQotICA1LiBGYWxscyBEdSBpbiBTY2hyaXR0IDEgZGVuIHZpbXR1dG9yIGJlZW5kZXQgaGFzdCwgc3RhcnRlIHZpbXR1dG9yIG5ldSB1bmQNCi0JICAgYmV3ZWdlIGRpY2ggYWJ35HJ0cyBiaXMgenVyIGZvbGdlbmRlbiBadXNhbW1lbmZhc3N1bmcuDQotDQotICA2LiBOYWNoZGVtIER1IG9iaWdlIFNjaHJpdHRlIGdlbGVzZW4gdW5kIHZlcnN0YW5kZW4gaGFzdDogZvxocmUgc2llIGR1cmNoLg0KLX5+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+fg0KLQkJCSBaVVNBTU1FTkZBU1NVTkcgVk9OIExFS1RJT04gMQ0KLQ0KLQ0KLSAgMS4gRGVyIEN1cnNvciB3aXJkIG1pdCBkZW4gUGZlaWx0YXN0ZW4gb2RlciBkZW4gVGFzdGVuIGhqa2wgYmV3ZWd0Lg0KLQkgaCAobGlua3MpICAgICBqICh1bnRlbikgICAgIGsgKGF1ZnfkcnRzKSAgICBsIChyZWNodHMpDQotDQotICAyLiBVbSBWaW0gYXVzIGRlciBFaW5nYWJlYXVmZm9yZGVydW5nIHp1IHN0YXJ0ZW4sIHRpcHBlOiB2aW0gREFURUkgPEVOVEVSPg0KLQ0KLSAgMy4gVW0gVmltIHp1IHZlcmxhc3NlbiB1bmQgYWxsZSDEbmRlcnVuZ2VuIHp1IHZlcndlcmZlbiwgdGlwcGU6DQotCQk8RVNDPiAgOnEhICA8RU5URVI+IC4NCi0NCi0gIDQuIFVtIGRhcyBaZWljaGVuIHVudGVyIGRlbSBDdXJzb3IgenUgbPZzY2hlbiwgdGlwcGU6ICB4DQotDQotICA1LiBVbSBUZXh0IGVpbnp1ZvxnZW4gb2RlciBhbnp1ZvxnZW4sIHRpcHBlOg0KLQkgaSAgIEVpbnp1ZvxnZW5kZW4gVGV4dCBlaW5nZWJlbiAgIDxFU0M+ICAgIEVpbmb8Z2VuIHZvciBkZW0gQ3Vyc29yDQotCSBBICAgQW56dWb8Z2VuZGVuIFRleHQgZWluZ2ViZW4gICAgPEVTQz4gICAgQW5m/GdlbiBuYWNoIGRlbSBaZWlsZW5lbmRlDQotDQotQW5tZXJrdW5nOiBEcvxja2VuIHZvbiA8RVNDPiBicmluZ3QgRGljaCBpbiBkZW4gTm9ybWFsbW9kdXMgb2RlciBicmljaHQgZWluDQotICAgICB1bmdld29sbHRlcywgZXJzdCB0ZWlsd2Vpc2UgZWluZ2VnZWJlbmVzIEtvbW1hbmRvIGFiLg0KLQ0KLSAgICAgTnVuIGZhaHJlIG1pdCBMZWt0aW9uIDIgZm9ydC4NCi1+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+fn4NCi0JCQkgIExla3Rpb24gMi4xOiBM1lNDSEtPTU1BTkRPUw0KLQ0KLQ0KLQkJICAgKiogVGlwcGUgIGR3ICAsIHVtIGVpbiBXb3J0IHp1IGz2c2NoZW4uICoqDQotDQotICAxLiBEcvxja2UgIDxFU0M+ICAsIHVtIHNpY2hlcnp1c3RlbGxlbiwgZGFzcyBEdSBpbSBOb3JtYWxtb2R1cyBiaXN0Lg0KLQ0KLSAgMi4gQmV3ZWdlIGRlbiBDdXJzb3IgenUgZGVyIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUgdW50ZW4uDQotDQotICAzLiBCZXdlZ2UgZGVuIEN1cnNvciB6dW0gQW5mYW5nIGVpbmVzIFdvcnRlcywgZGFzIGdlbPZzY2h0IHdlcmRlbiBzb2xsLg0KLQ0KLSAgNC4gVGlwcGUgIGR3ICAsIHVtIGRhcyBXb3J0IHp1IGVudGZlcm5lbi4NCi0NCi0gIEFubWVya3VuZzogRGVyIEJ1Y2hzdGFiZSAgZCAgZXJzY2hlaW50IGF1ZiBkZXIgdW50ZXJzdGVuIFplaWxlIGRlcyBTY2hpcm1zLA0KLSAgICAgICAgd2VubiBEdSBpaG4gZWluZ2lic3QuIFZpbSB3YXJ0ZXQgZGFyYXVmLCBkYXNzIER1ICB3ICBlaW5naWJzdC4gRmFsbHMgRHUNCi0gICAgICAgIGVpbiBhbmRlcmVzIFplaWNoZW4gYWxzICBkICBzaWVoc3QsIGhhc3QgRHUgZXR3YXMgRmFsc2NoZXMgZ2V0aXBwdDsNCi0gICAgICAgIGRy/GNrZSA8RVNDPiB1bmQgYmVnaW5uZSBub2NoIGVpbm1hbC4NCi0NCi0tLS0+IEVpbmlnZSBX9nJ0ZXIgbHVzdGlnIGdlaPZyZW4gbmljaHQgUGFwaWVyIGluIGRpZXNlbiBTYXR6Lg0KLQ0KLSAgNS4gV2llZGVyaG9sZSBkaWUgU2Nocml0dGUgMyB1bmQgNCwgYmlzIGRlciBTYXR6IGtvcnJla3QgaXN0IHVuZCBnZWhlDQotICAgICB6dXIgTGVrdGlvbiAyLjIuDQotfn5+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+DQotCQkgICAgICBMZWt0aW9uIDIuMjogV0VJVEVSRSBM1lNDSEtPTU1BTkRPUw0KLQ0KLQ0KLQkgICAgKiogVGlwcGUgIGQkICAsIHVtIGJpcyB6dW0gRW5kZSBkZXIgWmVpbGUgenUgbPZzY2hlbi4gKioNCi0NCi0gIDEuIERy/GNrZSA8RVNDPiAsIHVtIHNpY2hlcnp1c3RlbGxlbiwgZGFzcyBEdSBpbSBOb3JtYWxtb2R1cyBiaXN0Lg0KLQ0KLSAgMi4gQmV3ZWdlIGRlbiBDdXJzb3IgenUgZGVyIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUgdW50ZW4uDQotDQotICAzLiBCZXdlZ2UgZGVuIEN1cnNvciB6dW0gRW5kZSBkZXIga29ycmVrdGVuIFplaWxlIChOQUNIIGRlbSBlcnN0ZW4gLiApLg0KLQ0KLSAgNC4gVGlwcGUgICAgZCQgICAgLCB1bSBiaXMgenVtIFplaWxlbmVuZGUgenUgbPZzY2hlbi4NCi0NCi0tLS0+IEplbWFuZCBoYXQgZGFzIEVuZGUgZGVyIFplaWxlIGRvcHBlbHQgZWluZ2VnZWJlbi4gZG9wcGVsdCBlaW5nZWdlYmVuLg0KLQ0KLQ0KLSAgNS4gR2VoZSB3ZWl0ZXIgenVyIExla3Rpb24gMi4zICwgdW0genUgdmVyc3RlaGVuLCB3YXMgaGllcmJlaSB2b3JnZWh0Lg0KLQ0KLQ0KLQ0KLQ0KLQ0KLX5+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+fg0KLQkJIExla3Rpb24gMi4zOiDcQkVSIE9QRVJBVE9SRU4gVU5EIEJFV0VHVU5HU1rcR0UNCi0NCi0NCi0gIFZpZWxlIEtvbW1hbmRvcywgZGllIFRleHQg5G5kZXJuLCBzZXR6ZW4gc2ljaCBhdXMgZWluZW0gT3BlcmF0b3IgdW5kIGVpbmVyDQotICBCZXdlZ3VuZyB6dXNhbW1lbi4gRGFzIEZvcm1hdCBm/HIgZWluIEz2c2Noa29tbWFuZG8gbWl0IGRlbSBM9nNjaG9wZXJhdG9yICBkDQotICBsYXV0ZXQgd2llIGZvbGd0Og0KLQ0KLSAgICBkICBCZXdlZ3VuZw0KLQ0KLSAgd29iZWk6DQotICAgIGQgICAgICAgIC0gZGVyIEz2c2Nob3BlcmF0b3INCi0gICAgQmV3ZWd1bmcgLSB3b3JhdWYgZGVyIEz2c2Nob3BlcmF0b3IgYW5nZXdhbmR0IHdpcmQgKHVudGVuIGF1ZmdlZvxocnQpLg0KLQ0KLSAgRWluZSBrbGVpbmUgQXVmbGlzdHVuZyB2b24gQmV3ZWd1bmdlbjoNCi0gICAgdyAtIGJpcyB6dW0gQmVnaW5uIGRlcyBu5GNoc3RlbiBXb3J0ZXMgT0hORSBkZXNzZW4gZXJzdGVzIFplaWNoZW4uDQotICAgIGUgLSB6dW0gRW5kZSBkZXMgYWt0dWVsbGVuIFdvcnRlcyBNSVQgZGVzc2VuIGxldHp0ZW0gWmVpY2hlbi4NCi0gICAgJCAtIHp1bSBFbmRlIGRlciBaZWlsZSBNSVQgZGVtIGxldHp0ZW4gWmVpY2hlbi4NCi0NCi0gIERlbWVudHNwcmVjaGVuZCBs9nNjaHQgZGllIEVpbmdhYmUgdm9uICBkZSAgdm9tIEN1cnNvciBhbiBiaXMgenVtIFdvcnRlbmRlLg0KLQ0KLUFubWVya3VuZzogIERpZSBFaW5nYWJlIGxlZGlnbGljaCBkZXMgQmV3ZWd1bmdzdGVpbHMgaW0gTm9ybWFsbW9kdXMgYmV3ZWd0IGRlbg0KLSAgQ3Vyc29yIGVudHNwcmVjaGVuZC4NCi1+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+fn4NCi0JTGVrdGlvbiAyLjQ6IEFOV0VORFVORyBFSU5FUyBaxEhMRVJTIEbcUiBFSU5FTiBCRVdFR1VOR1NTQ0hSSVRUDQotDQotDQotICAgKiogRGllIEVpbmdhYmUgZWluZXIgWmFobCB2b3IgZWluZW0gQmV3ZWd1bmdzc2Nocml0dCB3aWVkZXJob2x0IGRpZXNlbi4gKioNCi0NCi0gIDEuIEJld2VnZSBkZW4gQ3Vyc29yIHp1bSBCZWdpbm4gZGVyIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUgdW50ZW4uDQotDQotICAyLiBUaXBwZSAgMncgICwgdW0gZGVuIEN1cnNvciB6d2VpIFf2cnRlciB2b3J35HJ0cyB6dSBiZXdlZ2VuLg0KLQ0KLSAgMy4gVGlwcGUgIDNlICAsIHVtIGRlbiBDdXJzb3IgenVtIEVuZGUgZGVzIGRyaXR0ZW4gV29ydGVzIHp1IGJld2VnZW4uDQotDQotICA0LiBUaXBwZSAgMCAgKE51bGwpICwgdW0genVtIEFuZmFuZyBkZXIgWmVpbGUgenUgZ2VsYW5nZW4uDQotDQotICA1LiBXaWVkZXJob2xlIFNjaHJpdHRlIDIgdW5kIDMgbWl0IHZlcnNjaGllZGVuZW4gTnVtbWVybi4NCi0NCi0gIC0tLT4gRGllcyBpc3QgbnVyIGVpbmUgWmVpbGUgYXVzIFf2cnRlcm4sIHVtIHNpY2ggZGFyaW4gaGVydW16dWJld2VnZW4uDQotDQotICA2LiBHZWhlIHdlaXRlciB6dSBMZWt0aW9uIDIuNS4NCi0NCi0NCi0NCi0NCi1+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+fn4NCi0JIExla3Rpb24gMi41OiBBTldFTkRVTkcgRUlORVMgWsRITEVSUyBG3FIgTUVIUkVSRSBM1lNDSFZPUkfETkdFDQotDQotDQotICAgKiogRGllIEVpbmdhYmUgZWluZXIgWmFobCBtaXQgZWluZW0gT3BlcmF0b3Igd2llZGVyaG9sdCBkaWVzZW4gbWVocmZhY2guICoqDQotDQotICBJbiBkZXIgS29tYmluYXRpb24gYXVzIEz2c2Nob3BlcmF0b3IgdW5kIEJld2VndW5nc3NjaHJpdHQgKHNpZWhlIG9iZW4pIA0KLSAgc3RlbGx0IG1hbiwgdW0gbWVociB6dSBs9nNjaGVuIGRlbSBTY2hyaXR0IGVpbmVuIFrkaGxlciB2b3JhbjoNCi0JIGQgIE51bW1lciAgQmV3ZWd1bmdzc2Nocml0dA0KLQ0KLSAgMS4gQmV3ZWdlIGRlbiBDdXJzb3IgenVtIGVyc3RlbiBXb3J0IGluIEdST1NTQlVDSFNUQUJFTiBpbiBkZXIgbWl0IC0tLT4NCi0gICAgIG1hcmtpZXJlbiBaZWlsZS4NCi0NCi0gIDIuIFRpcHBlICBkMncgICwgdW0gZGllIHp3ZWkgV/ZydGVyIGluIEdST1NTQlVDSFNUQUJFTiB6dSBs9nNjaGVuLg0KLQ0KLSAgMy4gV2llZGVyaG9sZSBTY2hyaXR0ZSAxIHVuZCAgMiBtaXQgZWluZW0gYW5kZXJlbiBa5GhsZXIsIHVtIGRpZSBkYXJhdWZmb2wtDQotICAgICBnZW5kZW4gV/ZydGVyIGluIEdST1NTQlVDSFNUQUJFTiBtaXQgZWluZW0gZWluemlnZW4gS29tbWFuZG8genUgbPZzY2hlbi4NCi0NCi0tLS0+ICBEaWVzZSBBQkMgREUgWmVpbGUgRkdISSBKSyBMTU4gT1AgbWl0IFf2cnRlcm4gaXN0IFEgUlMgVFVWIGJlcmVpbmlndC4NCi0NCi0NCi0NCi1+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+fn4NCi0JCQlMZWt0aW9uIDIuNjogQVJCRUlURU4gQVVGIFpFSUxFTg0KLQ0KLQ0KLQkgICAgICAgKiogVGlwcGUgIGRkICAsIHVtIGVpbmUgZ2FuemUgWmVpbGUgenUgbPZzY2hlbi4gKioNCi0NCi0gIFdlZ2VuIGRlciBI5HVmaWdrZWl0LCBkYXNzIG1hbiBnYW56ZSBaZWlsZW4gbPZzY2h0LCBrYW1lbiBkaWUgRW50d2lja2xlciB2b24NCi0gIFZpIGRhcmF1ZiwgZGFzcyBlcyBsZWljaHRlciB35HJlLCBlaW5mYWNoIHp3ZWkgZCdzIGVpbnp1Z2ViZW4sIHVtIGVpbmUgWmVpbGUNCi0gIHp1IGz2c2NoZW4uDQotDQotICAxLiBCZXdlZ2UgZGVuIEN1cnNvciB6dXIgendlaXRlbiBaZWlsZSBpbiBkZXIgdW50ZW4gc3RlaGVuZGVuIFJlZGV3ZW5kdW5nLg0KLSAgMi4gVGlwcGUgIGRkICAsIHVtIGRpZSBaZWlsZSB6dSBs9nNjaGVuLg0KLSAgMy4gTnVuIGJld2VnZSBEaWNoIHp1ciB2aWVydGVuIFplaWxlLg0KLSAgNC4gVGlwcGUgIDJkZCAgLCB1bSB6d2VpIFplaWxlbiB6dSBs9nNjaGVuLg0KLQ0KLS0tLT4gIDEpICBSb3NlbiBzaW5kIHJvdCwNCi0tLS0+ICAyKSAgTWF0c2NoIGlzdCBsdXN0aWcsDQotLS0tPiAgMykgIFZlaWxjaGVuIHNpbmQgYmxhdSwNCi0tLS0+ICA0KSAgSWNoIGhhYmUgZWluIEF1dG8sDQotLS0tPiAgNSkgIERpZSBVaHIgc2FndCBkaWUgWmVpdCwNCi0tLS0+ICA2KSAgWnVja2VyIGlzdCBz/N8sDQotLS0tPiAgNykgIFNvIHdpZSBEdSBhdWNoLg0KLQ0KLX5+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+fg0KLQkJICAgICBMZWt0aW9uIDIuNzogUtxDS0fETkdJRyBNQUNIRU4gKFVORE8pDQotDQotDQotCSAqKiBUaXBwZSB1ICwgdW0gZGllIGxldHp0ZW4gS29tbWFuZG9zIHL8Y2tn5G5naWcgenUgbWFjaGVuICoqDQotCSAgICAgICoqIG9kZXIgVSAsIHVtIGVpbmUgZ2FuemUgWmVpbGUgd2llZGVyaGVyenVzdGVsbGVuLiAqKg0KLQ0KLSAgMS4gQmV3ZWdlIGRlbiBDdXJzb3IgenUgZGVyIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUgdW50ZW4NCi0gICAgIHVuZCBzZXR6ZSBpaG4gYXVmIGRlbiBlcnN0ZW4gRmVobGVyLg0KLSAgMi4gVGlwcGUgIHggICwgdW0gZGFzIGVyc3RlIHVuZXJ3/G5zY2h0ZSBaZWljaGVuIHp1IGz2c2NoZW4uDQotICAzLiBOdW4gdGlwcGUgIHUgICwgdW0gZGFzIHNvZWJlbiBhdXNnZWb8aHJ0ZSBLb21tYW5kbyBy/GNrZ+RuZ2lnIHp1IG1hY2hlbi4NCi0gIDQuIEpldHp0IGJlaGViZSBhbGxlIEZlaGxlciBhdWYgZGVyIFplaWxlIG1pdCBIaWxmZSBkZXMgeCAgS29tbWFuZG9zLg0KLSAgNS4gTnVuIHRpcHBlIGVpbiBncm/fZXMgIFUgLCB1bSBkaWUgWmVpbGUgaW4gaWhyZW4gVXJzcHJ1bmdzenVzdGFuZA0KLSAgICAgd2llZGVyaGVyenVzdGVsbGVuLg0KLSAgNi4gTnVuIHRpcHBlICB1ICBlaW5pZ2UgTWFsZSwgdW0gZGFzIFUgdW5kIGRpZSB2b3JoZXJnZWhlbmRlbiBLb21tYW5kb3MNCi0gICAgIHL8Y2tn5G5naWcgenUgbWFjaGVuLg0KLSAgNy4gTnVuIHRpcHBlIENUUkwtUiAoaGFsdGUgQ1RSTCBnZWRy/GNrdCB1bmQgZHL8Y2tlIFIpIG1laHJlcmUgTWFsZSwgdW0gZGllDQotICAgICBLb21tYW5kb3Mgd2llZGVyaGVyenVzdGVsbGVuIChkaWUgUvxja2fkbmdpZ21hY2h1bmdlbiBy/GNrZ+RuZ2lnIG1hY2hlbikuDQotDQotLS0tPiBCZWVoZWJlIGRpZSBGZWhsbGVyIGRpZXNzZXIgWmVpbGUgdW5kIHN0dGVsbGUgc2llIG1pdHQgJ3VuZG8nIHdpZWRlciBoZXIuDQotDQotICA4LiBEaWVzIHNpbmQgc2VociBu/HR6bGljaGUgS29tbWFuZG9zLiAgTnVuIGdlaGUgd2VpdGVyIHp1ciBadXNhbW1lbmZhc3N1bmcgDQotICAgICB2b24gTGVrdGlvbiAyLg0KLX5+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+fg0KLQkJCSBaVVNBTU1FTkZBU1NVTkcgVk9OIExFS1RJT04gMg0KLQ0KLQ0KLSAgMS4gVW0gdm9tIEN1cnNvciBiaXMgenVtIG7kY2hzdGVuIFdvcnQgenUgbPZzY2hlbiwgdGlwcGU6ICAgIGR3DQotICAyLiBVbSB2b20gQ3Vyc29yIGJpcyB6dW0gRW5kZSBlaW5lciBaZWlsZSB6dSBs9nNjaGVuLCB0aXBwZTogICAgIGQkDQotICAzLiBVbSBlaW5lIGdhbnplIFplaWxlIHp1IGz2c2NoZW4sIHRpcHBlOiAgICBkZA0KLQ0KLSAgNC4gVW0gZWluZSBCZXdlZ3VuZyB6dSB3aWVkZXJob2xlbiwgc3RlbGxlIGVpbmUgTnVtbWVyIHZvcmFuOiAgIDJ3DQotICA1LiBEYXMgRm9ybWF0IGb8ciBlaW4gxG5kZXJ1bmdza29tbWFuZG8gaXN0Og0KLSAgICAgICAgICAgICAgIE9wZXJhdG9yICAgW0FuemFobF0gICBCZXdlZ3VuZ3NzY2hyaXR0DQotICAgICB3b2JlaToNCi0gICAgICAgT3BlcmF0b3IgLSBnaWJ0IGFuLCB3YXMgZ2V0YW4gd2VyZGVuIHNvbGwsIHp1bSBCZWlzcGllbCAgZCAgZvxyIGRlbGV0ZQ0KLSAgICAgICBbQW56YWhsXSAtIGVpbiBvcHRpb25hbGVyIFrkaGxlciwgdW0gZGVuIEJld2VndW5nc3NjaHJpdHQgenUgd2llZGVyaG9sZW4NCi0gICAgICAgQmV3ZWd1bmdzc2Nocml0dCAtIEJld2VndW5nIPxiZXIgZGVuIHp1IORuZGVybmRlbiBUZXh0LCB3aWUNCi0JCSAgdyAoV29ydCksICQgKHp1bSBFbmRlIGRlciBaZWlsZSksIGV0Yy4NCi0NCi0gIDYuIFVtIERpY2ggenVtIEFuZmFuZyBkZXIgWmVpbGUgenUgYmVnZWJlbiwgYmVudXR6ZSBkaWUgTnVsbDogIDANCi0NCi0gIDcuIFVtIHZvcmhlcmlnZSBBa3Rpb25lbiBy/GNrZ+RuZ2lnIHp1IG1hY2hlbiwgdGlwcGU6CQl1IChrbGVpbmVzIHUpDQotICAgICBVbSBhbGxlIMRuZGVydW5nZW4gYXVmIGVpbmVyIFplaWxlIHL8Y2tn5G5naWcgenUgbWFjaGVuOiAgIFUgKGdyb99lcyBVKQ0KLSAgICAgVW0gZGllIFL8Y2tn5G5naWdtYWNodW5nZW4gcvxja2fkbmdpZyB6dSBtYWNoZW4sIHRpcHBlOiAgICBDVFJMLVINCi0NCi1+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+fn4NCi0JCQkgICBMZWt0aW9uIDMuMTogQU5G3EdFTiAoUFVUKQ0KLQ0KLQ0KLSAgICAgKiogVGlwcGUgIHAgICwgdW0gdm9yaGVyIGdlbPZzY2h0ZW4gVGV4dCBuYWNoIGRlbSBDdXJzb3IgYW56dWb8Z2VuLiAqKg0KLQ0KLSAgMS4gQmV3ZWdlIGRlbiBDdXJzb3IgenVyIGVyc3RlbiB1bnRlbiBzdGVoZW5kZW4gbWl0IC0tLT4gbWFya2llcnRlbiBaZWlsZS4NCi0NCi0gIDIuIFRpcHBlICBkZCAgLCB1bSBkaWUgWmVpbGUgenUgbPZzY2hlbiB1bmQgc2llIGluIGVpbmVtIFZpbS1SZWdpc3RlciB6dQ0KLSAgICAgc3BlaWNoZXJuLg0KLQ0KLSAgMy4gQmV3ZWdlIGRlbiBDdXJzb3IgenVyIFplaWxlIGMpLCDcQkVSIGRlcmplbmlnZW4sIHdvIGRpZSBnZWz2c2NodGUgWmVpbGUNCi0gICAgIHBsYXR6aWVydCB3ZXJkZW4gc29sbC4NCi0NCi0gIDQuICBUaXBwZSAgIHAgICAsIHVtIGRpZSBaZWlsZSB1bnRlcmhhbGIgZGVzIEN1cnNvcnMgenUgcGxhdHppZXJlbi4NCi0NCi0gIDUuIFdpZWRlcmhvbGUgZGllIFNjaHJpdHRlIDIgYmlzIDQsIHVtIGFsbGUgWmVpbGVuIGluIGRpZSByaWNodGlnZQ0KLSAgICAgUmVpaGVuZm9sZ2UgenUgYnJpbmdlbi4NCi0NCi0tLS0+IGQpIEthbm5zdCBEdSBkYXMgYXVjaD8NCi0tLS0+IGIpIFZlaWxjaGVuIHNpbmQgYmxhdSwNCi0tLS0+IGMpIEludGVsbGlnZW56IGlzdCBsZXJuYmFyLA0KLS0tLT4gYSkgUm9zZW4gc2luZCByb3QsDQotfn5+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+DQotCQkJTGVrdGlvbiAzLjI6IEVSU0VUWkVOIChSRVBMQUNFKQ0KLQ0KLQ0KLSAgICoqIFRpcHBlICByeCAgLCB1bSBkYXMgWmVpY2hlbiB1bnRlciBkZW0gQ3Vyc29yIGR1cmNoICB4IHp1IGVyc2V0emVuLiAqKg0KLQ0KLSAgMS4gQmV3ZWdlIGRlbiBDdXJzb3IgenVyIGVyc3RlbiB1bnRlbiBzdGVoZW5kZW4gbWl0IC0tLT4gbWFya2llcnRlbiBaZWlsZS4NCi0NCi0gIDIuIEJld2VnZSBkZW4gQ3Vyc29yLCBiaXMgZXIgc2ljaCBhdWYgZGVtIGVyc3RlbiBGZWhsZXIgYmVmaW5kZXQuDQotDQotICAzLiBUaXBwZSAgciAgdW5kIGFuc2NobGll32VuZCBkYXMgWmVpY2hlbiwgd2VsY2hlcyBkb3J0IHN0ZWhlbiBzb2xsdGUuDQotDQotICA0LiBXaWVkZXJob2xlIFNjaHJpdHRlIDIgdW5kIDMsIGJpcyBkaWUgZXJzdGUgWmVpbGUgZ2xlaWNoIGRlciB6d2VpdGVuIGlzdC4NCi0NCi0tLS0+ICBBbGYgZGllc2UgWmVpdGUgZWluZ2Vnb2JlbiB3dXJkZSwgd3VyZGVuIGVpbmlrZSBmYWxzY2hlIFRhc3RlbiBnZWxpcHB0IQ0KLS0tLT4gIEFscyBkaWVzZSBaZWlsZSBlaW5nZWdlYmVuIHd1cmRlLCB3dXJkZW4gZWluaWdlIGZhbHNjaGUgVGFzdGVuIGdldGlwcHQhDQotDQotICA1LiBOdW4gZmFocmUgZm9ydCBtaXQgTGVrdGlvbiAzLjIuDQotDQotQW5tZXJrdW5nOiBFcmlubmVyZSBEaWNoIGRhcmFuLCBkYXNzIER1IGR1cmNoIEFud2VuZGVuIGxlcm5lbiBzb2xsdGVzdCwgbmljaHQgDQotICAgICBkdXJjaCBBdXN3ZW5kaWdsZXJuZW4uDQotDQotDQotfn5+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+DQotCQkJICBMZWt0aW9uIDMuMzogxE5ERVJOIChDSEFOR0UpDQotDQotDQotICAgICAgKiogVW0gZWluZSDEbmRlcnVuZyBiaXMgenVtIFdvcnRlbmRlIGR1cmNoenVm/GhyZW4sIHRpcHBlICBjZSAuICoqDQotDQotICAxLiBCZXdlZ2UgZGVuIEN1cnNvciB6dXIgZXJzdGVuIHVudGVuIHN0ZWhlbmRlbiBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlLg0KLQ0KLSAgMi4gUGxhdHppZXJlIGRlbiBDdXJzb3IgYXVmIGRhcyAgcyAgdm9uIFdzdHdyLg0KLQ0KLSAgMy4gVGlwcGUgIGNlICB1bmQgZGllIFdvcnRrb3JyZWt0dXIgZWluIChpbiBkaWVzZW0gRmFsbCB0aXBwZSAg9nJ0ZXIgKS4NCi0NCi0gIDQuIERy/GNrZSA8RVNDPiB1bmQgYmV3ZWdlIGRlbiBDdXJzb3IgenVtIG7kY2hzdGVuIHp1IORuZGVybmRlbiBaZWljaGVuLg0KLQ0KLSAgNS4gV2llZGVyaG9sZSBTY2hyaXR0ZSAzIHVuZCA0IGJpcyBkZXIgZXJzdGUgU2F0eiBnbGVpY2ggZGVtIHp3ZWl0ZW4gaXN0Lg0KLQ0KLS0tLT4gRWluaWdlIFdzdHdyIGRpZXNlciBabGF3dyBsYXNkamxhZiBtaXQgZGVtIMRuZGVybi1PcGVyYXRvciBnYWFhdXUgd2VyZGVuLg0KLS0tLT4gRWluaWdlIFf2cnRlciBkaWVzZXIgWmVpbGUgc29sbGVuIG1pdCBkZW0gxG5kZXJuLU9wZXJhdG9yIGdl5G5kZXJ0IHdlcmRlbi4NCi0NCi1CZWFjaHRlLCBkYXNzICBjZSAgZGFzIFdvcnQgbPZzY2h0IHVuZCBEaWNoIGluIGRlbiBFaW5nYWJlbW9kdXMgdmVyc2V0enQuDQotDQotDQotDQotfn5+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+DQotCQkgICAgIExla3Rpb24gMy40OiBNRUhSIMROREVSVU5HRU4gTUlUVEVMUyBjDQotDQotDQotICAgICAqKiBEYXMgY2hhbmdlLUtvbW1hbmRvIGFyYmVpdGV0IG1pdCBkZW5zZWxiZW4gQmV3ZWd1bmdlbiB3aWUgZGVsZXRlLiAgKioNCi0NCi0gIDEuIERlciBjaGFuZ2UgT3BlcmF0b3IgYXJiZWl0ZXQgaW4gZ2xlaWNoZXIgV2Vpc2Ugd2llIGRlbGV0ZS4gRGFzIEZvcm1hdCBpc3Q6DQotDQotICAgICAgICAgYyAgICBbQW56YWhsXSAgQmV3ZWd1bmdzc2Nocml0dA0KLQ0KLSAgMi4gRGllIEJld2VndW5nc3NjaHJpdHRlIHNpbmQgZGllIGdsZWljaGVuICwgc28gd2llICB3ICAoV29ydCkgdW5kICAkDQotICAgICAoWmVpbGVuZW5kZSkuDQotDQotICAzLiBCZXdlZ2UgRGljaCB6dXIgZXJzdGVuIHVudGVuIHN0ZWhlbmRlbiBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlLg0KLQ0KLSAgNC4gQmV3ZWdlIGRlbiBDdXJzb3IgenVtIGVyc3RlbiBGZWhsZXIuDQotDQotICA1LiBUaXBwZSAgYyQgICwgZ2liIGRlbiBSZXN0IGRlciBaZWlsZSB3aWUgaW4gZGVyIHp3ZWl0ZW4gZWluLCBkcvxja2UgPEVTQz4gLg0KLQ0KLS0tLT4gRGFzIEVuZGUgZGllc2VyIFplaWxlIHNvbGwgYW4gZGllIHp3ZWl0ZSBaZWlsZSBhbmdlZ2xpY2hlbiB3ZXJkZW4uDQotLS0tPiBEYXMgRW5kZSBkaWVzZXIgWmVpbGUgc29sbCBtaXQgZGVtICBjJCAgS29tbWFuZG8ga29ycmlnaWVydCB3ZXJkZW4uDQotDQotQW5tZXJrdW5nOiBEdSBrYW5uc3QgZGllIFL8Y2t0YXN0ZSBiZW51dHplbiwgdW0gVGlwcGZlaGxlciB6dSBrb3JyaWdpZXJlbi4NCi1+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+fn4NCi0JCQkgWlVTQU1NRU5GQVNTVU5HIFZPTiBMRUtUSU9OIDMNCi0NCi0NCi0gIDEuIFVtIGVpbmVuIHZvcmhlciBnZWz2c2NodGVuIFRleHQgYW56dWb8Z2VuLCB0aXBwZSAgIHAgLiBEaWVzIGb8Z3QgZGVuDQotICAgICBnZWz2c2NodGVuIFRleHQgTkFDSCBkZW0gQ3Vyc29yIGFuICh3ZW5uIGVpbmUgZ2FuemUgWmVpbGUgZ2Vs9nNjaHQgd3VyZGUsDQotICAgICB3aXJkIGRpZXNlIGluIGRpZSBaZWlsZSB1bnRlciBkZW0gQ3Vyc29yIGVpbmdlZvxndCkuDQotDQotICAyLiBVbSBkYXMgWmVpY2hlbiB1bnRlciBkZW0gQ3Vyc29yIHp1IGVyc2V0emVuLCB0aXBwZSAgIHIgICB1bmQgZGFuYWNoIGRhcyANCi0gICAgIGFuIGRpZXNlciBTdGVsbGUgZ2V3b2xsdGUgWmVpY2hlbi4NCi0NCi0gIDMuIERlciDEbmRlcnVuZ3MtIChjaGFuZ2UpIE9wZXJhdG9yIGVybGF1YnQsIHZvbSBDdXJzb3IgYmlzIHp1bSBFbmRlIGRlcw0KLSAgICAgQmV3ZWd1bmdzc2Nocml0dGVzIHp1IORuZGVybi4gVGlwcGUgIGNlICAsIHVtIGVpbmUgxG5kZXJ1bmcgdm9tIEN1cnNvciBiaXMNCi0gICAgIHp1bSBFbmRlIGRlcyBXb3J0ZXMgdm9yenVuZWhtZW47ICBjJCAgYmlzIHp1bSBFbmRlIGVpbmVyIFplaWxlLg0KLQ0KLSAgNC4gRGFzIEZvcm1hdCBm/HIgY2hhbmdlIGlzdDoNCi0NCi0JIGMgICBbQW56YWhsXSAgQmV3ZWd1bmdzc2Nocml0dA0KLQ0KLSAgTnVuIGZhaHJlIG1pdCBkZXIgbuRjaHN0ZW4gTGVrdGlvbiBmb3J0Lg0KLQ0KLQ0KLQ0KLX5+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+fg0KLQkJICBMZWt0aW9uIDQuMTogQ1VSU09SUE9TSVRJT04gVU5EIERBVEVJU1RBVFVTDQotDQotICoqIFRpcHBlIENUUkwtRyAsIHVtIGRlaW5lIERhdGVpcG9zaXRpb24gc293aWUgZGVuIERhdGVpc3RhdHVzIGFuenV6ZWlnZW4uICoqDQotICAgICAqKiBUaXBwZSBHICwgdW0gRGljaCB6dSBlaW5lciBaZWlsZSBpbiBkZXIgRGF0ZWkgenUgYmVnZWJlbi4gKioNCi0NCi1Bbm1lcmt1bmc6IExpZXMgZGllc2UgZ2VzYW10ZSBMZWt0aW9uLCBiZXZvciBEdSBpcmdlbmRlaW5lbiBTY2hyaXR0IGF1c2b8aHJzdCEhDQotDQotICAxLiBIYWx0ZSBkaWUgQ3RybCBUYXN0ZSB1bnRlbiB1bmQgZHL8Y2tlICBnIC4gRGllcyBuZW5uZW4gd2lyIENUUkwtRy4NCi0gICAgIEVpbmUgU3RhdHVzbWVsZHVuZyBhbSBGdd8gZGVyIFNlaXRlIGVyc2NoZWludCBtaXQgZGVtIERhdGVpbmFtZW4gdW5kIGRlcg0KLSAgICAgUG9zaXRpb24gaW5uZXJoYWxiIGRlciBEYXRlaS4gTWVya2UgRGlyIGRpZSBaZWlsZW5udW1tZXIgZvxyIFNjaHJpdHQgMy4NCi0NCi1Bbm1lcmt1bmc6IE32Z2xpY2hlcndlaXNlIHNpZWhzdCBEdSBkaWUgQ3Vyc29ycG9zaXRpb24gaW4gZGVyIHVudGVyZW4gcmVjaHRlbg0KLSAgICAgIEJpbGRzY2hpcm1lY2tlLiBEaWVzIGlzdCBBdXN3aXJrdW5nIGRlciAncnVsZXInIE9wdGlvbiANCi0JICAoc2llaGUgOmhlbHAgJ3J1bGVyJykNCi0NCi0gIDIuIERy/GNrZSAgRyAgLCB1bSBEaWNoIHp1bSBFbmRlIGRlciBEYXRlaSB6dSBiZWdlYmVuLg0KLSAgICAgVGlwcGUgIGdnICAsIHVtIERpY2ggenVtIEFuZmFuZyBkZXIgRGF0ZWkgenUgYmVnZWJlbi4NCi0NCi0gIDMuIEdpYiBkaWUgTnVtbWVyIGRlciBaZWlsZSBlaW4sIGF1ZiBkZXIgRHUgdm9yaGVyIHdhcnN0LCBnZWZvbGd0IHZvbiAgRyAuDQotICAgICBEaWVzIGJyaW5ndCBEaWNoIHp1cvxjayB6dSBkZXIgWmVpbGUsIGF1ZiBkZXIgRHUgZ2VzdGFuZGVuIGhhc3QsIGFscyBEdQ0KLSAgICAgZGFzIGVyc3RlIE1hbCBDVFJMLUcgZ2Vkcvxja3QgaGFzdC4NCi0NCi0gIDQuIFdlbm4gRHUgRGljaCBzaWNoZXIgZ2VudWcgZvxobHN0LCBm/GhyZSBkaWUgU2Nocml0dGUgMSBiaXMgMyBhdXMuDQotfn5+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+DQotCQkgICAgICAgTGVrdGlvbiA0LjI6IERBUyBTVUNIRU4gLSBLT01NQU5ETw0KLQ0KLQ0KLSAgKiogVGlwcGUgIC8gIGdlZm9sZ3Qgdm9uIGVpbmVtIEF1c2RydWNrLCB1bSBuYWNoIGRlbSBBdXNkcnVjayB6dSBzdWNoZW4uICoqDQotDQotICAxLiBJbSBOb3JtYWxtb2R1cywgdGlwcGUgZGFzICAvICBaZWljaGVuLiAgQmVhY2h0ZSwgZGFzcyBkYXMgIC8gdW5kIGRlcg0KLSAgICAgQ3Vyc29yIGFtIEZ13yBkZXMgU2NoaXJtcyBlcnNjaGVpbmVuLCBzbyB3aWUgYmVpbSA6CUtvbW1hbmRvLg0KLQ0KLSAgMi4gTnVuIHRpcHBlICdGZWhobGVyJyA8RU5URVI+LiBEaWVzIGlzdCBkYXMgV29ydCwgbmFjaCBkZW0gRHUgc3VjaGVuIHdpbGxzdC4NCi0NCi0gIDMuIFVtIG5hY2ggZGVtc2VsYmVuIEF1c2RydWNrIHdlaXRlcnp1c3VjaGVuLCB0aXBwZSBlaW5mYWNoICBuIChm/HIgbmV4dCkuDQotICAgICBVbSBuYWNoIGRlbXNlbGJlbiBBdXNkcnVjayBpbiBkZXIgR2VnZW5yaWNodHVuZyB6dSBzdWNoZW4sIHRpcHBlICBOIC4NCi0NCi0gIDQuIFVtIG5hY2ggZWluZW0gQXVzZHJ1Y2sgcvxja3fkcnRzIHp1IHN1Y2hlbiAsIGJlbnV0emUgID8gIHN0YXR0ICAvIC4NCi0NCi0gIDUuIFVtIGRhaGluIHp1cvxja3p1a2VocmVuLCB2b24gd28gRHUgZ2Vrb21tZW4gYmlzdCwgZHL8Y2tlIENUUkwtTyAoSGFsdGUNCi0gICAgIEN0cmwgdW50ZW4gdW5kIGRy/GNrZSBkZW4gQnVjaHN0YWJlbiBvKS4gV2llZGVyaG9sZSBkaWVzLCB1bSBub2NoIHdlaXRlcg0KLSAgICAgenVy/GNrenVnZWhlbi4gIENUUkwtSSBnZWh0IHZvcnfkcnRzLg0KLQ0KLS0tLT4gIEZlaGxlciBzY2hyZWlidCBzaWNoIG5pY2h0ICJGZWhobGVyIjsgRmVoaGxlciBpc3QgZWluIEZlaGxlcg0KLUFubWVya3VuZzogV2VubiBkaWUgU3VjaGUgZGFzIERhdGVpZW5kZSBlcnJlaWNodCBoYXQsIHdpcmQgc2llIGFtIEFuZmFuZw0KLSAgICAgICAgZm9ydGdlc2V0enQsIGVzIHNlaSBkZW5uLCBkaWUgJ3dyYXBzY2FuJyBPcHRpb24gd3VyZGUgYWJnZXNjaGFsdGV0Lg0KLX5+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+fg0KLQkJICAgICBMZWt0aW9uIDQuMzogUEFTU0VOREUgS0xBTU1FUk4gRklOREVODQotDQotDQotICAgKiogVGlwcGUgICUgLCB1bSBlaW5lIGdlZ2Vu/GJlcmxpZWdlbmRlbiBLbGFtbWVyICksXSwgb2RlciB9IHp1IGZpbmRlbi4gKioNCi0NCi0gIDEuIFBsYXR6aWVyZSBkZW4gQ3Vyc29yIGF1ZiBpcmdlbmRlaW5lbSBkZXIgWmVpY2hlbiAoLCBbLCBvZGVyIHsgaW4gZGVyIHVudGVuDQotICAgICBzdGVoZW5kZW4gWmVpbGUsIGRpZSBtaXQgLS0tPiBtYXJraWVydCBpc3QuDQotDQotICAyLiBOdW4gdGlwcGUgZGFzICAlICBaZWljaGVuLg0KLQ0KLSAgMy4gRGVyIEN1cnNvciBiZXdlZ3Qgc2ljaCB6dXIgcGFzc2VuZGVuIGdlZ2Vu/GJlcmxpZWdlbmRlbiBLbGFtbWVyLg0KLQ0KLSAgNC4gVGlwcGUgICUgLCB1bSBkZW4gQ3Vyc29yIHp1ciBwYXNzZW5kZW4gYW5kZXJlbiBLbGFtbWVyIHp1IGJld2VnZW4uDQotDQotICA1LiBTZXR6ZSBkZW4gQ3Vyc29yIGF1ZiBlaW4gYW5kZXJlcyAoLCksWyxdLHsgb2RlciB9IHVuZCBwcm9iaWVyZSAgJSAgYXVzLg0KLQ0KLS0tLT4gRGllcyAoIGlzdCBlaW5lIFRlc3R6ZWlsZSAoIG1pdCBbIHZlcnNjaGllZGVuZW4gXSB7IEtsYW1tZXJuIH0gIGRhcmluLiApKQ0KLQ0KLUFubWVya3VuZzogRGllc2UgRnVua3Rpb25hbGl05HQgaXN0IHNlaHIgbvx0emxpY2ggYmVpIGRlciBGZWhsZXJzdWNoZSBpbiBlaW5lbQ0KLSAgICAgUHJvZ3JhbW10ZXh0LCBpbiBkZW0gcGFzc2VuZGUgS2xhbW1lcm4gZmVobGVuIQ0KLQ0KLQ0KLX5+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+fg0KLQkJTGVrdGlvbiA0LjQ6IERBUyBFUlNFVFpVTkdTS09NTUFORE8gKFNVQlNUSVRVVEUpDQotDQotDQotCSAqKiBUaXBwZSA6cy9hbHQvbmV1L2cgICwgdW0gJ2FsdCcgZHVyY2ggJ25ldScgenUgZXJzZXR6ZW4uICoqDQotDQotICAxLiBCZXdlZ2UgZGVuIEN1cnNvciB6dSBkZXIgdW50ZW4gc3RlaGVuZGVuIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUuDQotDQotICAyLiBUaXBwZSAgOnMvZGllZS9kaWUgPEVOVEVSPiAuICBCZWFjaHRlLCBkYXNzIGRlciBCZWZlaGwgbnVyIGRhcyBlcnN0ZQ0KLSAgICAgVm9ya29tbWVuIHZvbiAiZGllZSIgZXJzZXR6dC4NCi0NCi0gIDMuIE51biB0aXBwZSAgIDpzL2RpZWUvZGllL2cgLiBEYXMgWnVm/GdlbiBkZXMgRmxhZ3MgIGcgICBiZWRldXRldCwgZWluZQ0KLSAgICAgZ2xvYmFsZSBFcnNldHp1bmcg/GJlciBkaWUgWmVpbGUgZHVyY2h6dWb8aHJlbiwgZGllcyBlcnNldHp0IGFsbGUgDQotCSBWb3Jrb21tZW4gdm9uICJkaWVlIiBhdWYgZGVyIFplaWxlLg0KLQ0KLS0tLT4gZGllZSBzY2j2bnN0ZSBaZWl0LCB1bSBkaWVlIEJsdW1lbiBhbnp1c2NoYXVlbiwgaXN0IGRpZWUgRnL8aGxpbmdzemVpdC4NCi0NCi0gIDQuIFVtIGFsbGUgVm9ya29tbWVuIGVpbmVyIFplaWNoZW5rZXR0ZSBpbm5lcmhhbGIgendlaWVyIFplaWxlbiB6dSDkbmRlcm4sDQotICAgICB0aXBwZSAgOiMsI3MvYWx0L25ldS9nICB3b2JlaSAjLCMgZGllIFplaWxlbm51bW1lcm4gZGVzIEJlcmVpY2hlcyBzaW5kLA0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gZGVtIGRpZSBFcnNldHp1bmcgZHVyY2hnZWb8aHJ0IHdlcmRlbiBzb2xsLg0KLSAgICAgVGlwcGUgIDolcy9hbHQvbmV1L2cgICAgdW0gYWxsZSBWb3Jrb21tZW4gaW4gZGVyIGdlc2FtdGVuIERhdGVpIHp1IORuZGVybi4NCi0gICAgIFRpcHBlICA6JXMvYWx0L25ldS9nYyAgIHVtIGFsbGUgVm9ya29tbWVuIGluIGRlciBnZXNhbXRlbiBEYXRlaSB6dSBmaW5kZW4NCi0gICAgICAgICAgICAgICAgICAgICBtaXQgZWluZW0gRnJhZ2VkaWFsb2csIG9iIGVyc2V0enQgd2VyZGVuIHNvbGwgb2RlciBuaWNodC4NCi1+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+fn4NCi0JCQkgWlVTQU1NRU5GQVNTVU5HIFZPTiBMRUtUSU9OIDQNCi0NCi0gIDEuIENUUkwtRyAgemVpZ3QgZGllIGFrdHVlbGxlIERhdGVpcG9zaXRpb24gc293aWUgZGVuIERhdGVpc3RhdHVzLg0KLSAgICAgICAgICAgICBHICBicmluZ3QgRGljaCB6dW0gRW5kZSBkZXIgRGF0ZWkuDQotICAgICBOdW1tZXIgIEcgIGJyaW5ndCBEaWNoIHp1ciBlbnRzcHJlY2hlbmRlbiBaZWlsZW5udW1tZXIuDQotICAgICAgICAgICAgZ2cgIGJyaW5ndCBEaWNoIHp1ciBlcnN0ZW4gWmVpbGUuDQotDQotICAyLiBEaWUgRWluZ2FiZSB2b24gIC8gIHBsdXMgZWluZW0gQXVzZHJ1Y2sgc3VjaHQgVk9SV8RSVFMgbmFjaCBkZW0gQXVzZHJ1Y2suDQotICAgICBEaWUgRWluZ2FiZSB2b24gID8gIHBsdXMgZWluZW0gQXVzZHJ1Y2sgc3VjaHQgUtxDS1fEUlRTIG5hY2ggZGVtIEF1c2RydWNrLg0KLSAgICAgVGlwcGUgbmFjaCBlaW5lciBTdWNoZSAgbiAgLCB1bSBkYXMgbuRjaHN0ZSBWb3Jrb21tZW4gaW4gZGVyIGdsZWljaGVuDQotICAgICBSaWNodHVuZyB6dSBmaW5kZW47IG9kZXIgIE4gICwgdW0gaW4gZGVyIEdlZ2VucmljaHR1bmcgenUgc3VjaGVuLg0KLSAgICAgQ1RSTC1PIGJyaW5ndCBEaWNoIHp1cvxjayB6dSDkbHRlcmVuIFBvc2l0aW9uZW4sIENUUkwtSSB6dSBuZXVlcmVuLg0KLQ0KLSAgMy4gRGllIEVpbmdhYmUgdm9uICAlICAsIHdlbm4gZGVyIEN1cnNvciBzaWNoIGF1ZiAoLCksWyxdLHssIG9kZXIgfQ0KLSAgICAgYmVmaW5kZXQsIGJyaW5ndCBEaWNoIHp1ciBHZWdlbmtsYW1tZXIuDQotDQotICA0LiBVbSBkYXMgZXJzdGUgVm9ya29tbWVuIHZvbiAiYWx0IiBpbiBlaW5lciBaZWlsZSBkdXJjaCAibmV1IiB6dSBlcnNldHplbiwNCi0gICAgICAgICAgICAgdGlwcGUgICAgICAgOnMvYWx0L25ldQ0KLSAgICAgVW0gYWxsZSBWb3Jrb21tZW4gdm9uICJhbHQiIGluIGRlciBaZWlsZSBlcnNldHplbiwgdGlwcGUgIDpzL2FsdC9uZXUvZw0KLSAgICAgVW0gQXVzZHL8Y2tlIGlubmVyaGFsYiB6d2VpZXIgWmVpbGVuICMgenUgZXJzZXR6ZW4gICAgICAgIDojLCNzL2FsdC9uZXUvZw0KLSAgICAgVW0gYWxsZSBWb3Jrb21tZW4gaW4gZGVyIGdhbnplbiBEYXRlaSB6dSBlcnNldHplbiwgdGlwcGUgIDolcy9hbHQvbmV1L2cNCi0gICAgIEb8ciBlaW5lIGplZGVzbWFsaWdlIEJlc3TkdGlndW5nLCBhZGRpZXJlICdjJyAoY29uZmlybSkgICA6JXMvYWx0L25ldS9nYw0KLX5+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+fg0KLQkJTGVrdGlvbiA1LjE6IEFVU0bcSFJFTiBFSU5FUyBFWFRFUk5FTiBLT01NQU5ET1MNCi0NCi0NCi0gICoqIEdpYiAgOiEgLCBnZWZvbGd0IHZvbiBlaW5lbSBleHRlcm5lbiBLb21tYW5kbyBlaW4sIHVtIGVzIGF1c3p1ZvxocmVuLiAqKg0KLQ0KLSAgMS4gVGlwcGUgZGFzIHZlcnRyYXV0ZSBLb21tYW5kbyAgOiAgLCB1bSBkZW4gQ3Vyc29yIGF1ZiBkZW4gRnXfIGRlcyBTY2hpcm1zDQotICAgICB6dSBzZXR6ZW4uIERpZXMgZXJsYXVidCBEaXIsIGVpbiBLb21tYW5kb3plaWxlbi1Lb21tYW5kbyBlaW56dWdlYmVuLg0KLQ0KLSAgMi4gTnVuIHRpcHBlIGVpbiAgISAgKEF1c3J1ZmV6ZWljaGVuKS4gIERpZXMgZXJt9mdsaWNodCBEaXIsIGVpbiBiZWxpZWJpZ2VzLA0KLSAgICAgZXh0ZXJuZXMgU2hlbGxrb21tYW5kbyBhdXN6dWb8aHJlbi4NCi0NCi0gIDMuIEFscyBCZWlzcGllbCB0aXBwZSAgIGxzICAgbmFjaCBkZW0gICEgIHVuZCBkcvxja2UgPEVOVEVSPi4gRGllcyBsaWVmZXJ0DQotICAgICBlaW5lIEF1Zmxpc3R1bmcgZGVpbmVzIFZlcnplaWNobmlzc2VzOyBnZW5hdXNvLCBhbHMgd2VubiBEdSBpbiBkZXINCi0gICAgIEVpbmdhYmVhdWZmb3JkZXJ1bmcgd+Ryc3QuICBPZGVyIHZlcndlbmRlICA6IWRpciAgLCBmYWxscyBscyBuaWNodCBnZWh0Lg0KLQ0KLUFubWVya3VuZzogIE1pdCBkaWVzZXIgTWV0aG9kZSBrYW5uIGplZGVzIGJlbGllYmlnZSBleHRlcm5lIEtvbW1hbmRvDQotICAgICBhdXNnZWb8aHJ0IHdlcmRlbiwgYXVjaCBtaXQgQXJndW1lbnRlbi4NCi0NCi1Bbm1lcmt1bmc6ICBBbGxlICA6ICBLb21tYW5kb3Mgbfxzc2VuIGR1cmNoIEVpbmdhYmUgdm9uIDxFTlRFUj4NCi0gICAgIGFiZ2VzY2hsb3NzZW4gd2VyZGVuLiBWb24gamV0enQgYW4gZXJ35GhuZW4gd2lyIGRpZXMgbmljaHQgamVkZXNtYWwuDQotDQotDQotfn5+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+DQotCQlMZWt0aW9uIDUuMjogTUVIUiDcQkVSIERBUyBTQ0hSRUlCRU4gVk9OIERBVEVJRU4NCi0NCi0NCi0qKiBVbSBhbSBUZXh0IGR1cmNoZ2Vm/GhydGUgxG5kZXJ1bmdlbiB6dSBzcGVpY2hlcm4sIHRpcHBlIDp3IERBVEVJTkFNRS4gKioNCi0NCi0gIDEuIFRpcHBlICA6IWRpciAgb2RlciAgOiFscyAgLCB1bSBlaW5lIEF1Zmxpc3R1bmcgZGVpbmVzIFZlcnplaWNobmlzc2VzIHp1DQotICAgICBlcmhhbHRlbi4gIER1IHdlad90IG51biBiZXJlaXRzLCBkYXNzIER1IGRhbmFjaCA8RU5URVI+IGVpbmdlYmVuIG11c3N0Lg0KLQ0KLSAgMi4gV+RobGUgZWluZW4gRGF0ZWluYW1lbiwgZGVyIG5vY2ggbmljaHQgZXhpc3RpZXJ0LCB6LkIuIFRFU1QuDQotDQotICAzLiBOdW4gdGlwcGU6ICA6dyBURVNUICAgKHdvYmVpIFRFU1QgZGVyIGdld+RobHRlIERhdGVpbmFtZSBpc3QpLg0KLQ0KLSAgNC4gRGllcyBzcGVpY2hlcnQgZGllIGdhbnplIERhdGVpIChkZW4gVmltIFR1dG9yKSB1bnRlciBkZW0gTmFtZW4gVEVTVC4NCi0gICAgIFVtIGRpZXMgenUg/GJlcnBy/GZlbiwgdGlwcGUgbm9jaG1hbHMgIDohbHMgIGJ6dy4gICFkaXIsIHVtIGRlaW5lbg0KLSAgICAgVmVyemVpY2huaXNpbmhhbHQgenUgc2VoZW4uDQotDQotQW5tZXJrdW5nOiBX/HJkZXN0IER1IFZpbSBqZXR6dCBiZWVuZGVuIHVuZCBkYW5hY2ggd2llZGVyIG1pdCB2aW0gVEVTVA0KLSAgICBzdGFydGVuLCBkYW5uIHfkcmUgZGllc2UgRGF0ZWkgZWluZSBleGFrdGUgS29waWUgZGVzIFR1dG9ycyB6dSBkZW0NCi0gICAgWmVpdHB1bmt0LCBhbHMgRHUgaWhuIGdlc3BlaWNoZXJ0IGhhc3QuDQotDQotICA1LiBOdW4gZW50ZmVybmUgZGllIERhdGVpIGR1cmNoIEVpbmdhYmUgdm9uIChNUy1ET1MpOiAgICA6IWRlbCBURVNUDQotICAgICAgICAgICAgICAgICAgICAgIG9kZXIgKFVuaXgpOiAgICAgICAgICAgICAgICAgICAgICAgICA6IXJtIFRFU1QNCi1+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+fn4NCi0JCSBMZWt0aW9uIDUuMzogQVVTV8RITEVOIFZPTiBURVhUIFpVTSBTQ0hSRUlCRU4NCi0NCi0qKiBVbSBlaW5lbiBBYnNjaG5pdHQgZGVyIERhdGVpIHp1IHNwZWljaGVybiwgIHRpcHBlICB2ICBCZXdlZ3VuZyAgOncgREFURUkgKioNCi0NCi0gIDEuIEJld2VnZSBkZW4gQ3Vyc29yIHp1IGRpZXNlciBaZWlsZS4NCi0NCi0gIDIuIFRpcHBlICB2ICB1bmQgYmV3ZWdlIGRlbiBDdXJzb3IgenVtIGb8bmZ0ZW4gQXVmbGlzdHVuZ3NwdW5rdCB1bnRlbi4NCi0gICAgIEJlYWNodGUsIGRhc3MgZGVyIFRleHQgaGVydm9yZ2Vob2JlbiB3aXJkLg0KLQ0KLSAgMy4gRHL8Y2tlIGRhcyBaZWljaGVuICA6IC4gQW0gRnXfIGRlcyBTY2hpcm1zIGVyc2NoZWludCAgOic8LCc+IC4NCi0NCi0gIDQuIFRpcHBlICB3IFRFU1QgICwgd29iZWkgVEVTVCBlaW4gbm9jaCBuaWNodCB2b3JoYW5kZW5lciBEYXRlaW5hbWUgaXN0Lg0KLSAgICAgVmVyZ2V3aXNzZXJlIERpY2gsIGRhc3MgRHUgIDonPCwnPncgVEVTVCAgc2llaHN0LCBiZXZvciBEdSA8RU5URVI+IGRy/GNrc3QuDQotDQotICA1LiBWaW0gc2NocmVpYnQgZGllIGF1c2dld+RobHRlbiBaZWlsZW4gaW4gZGllIERhdGVpIFRFU1QuIEJlbnV0emUgIDohZGlyDQotICAgICBvZGVyICA6IWxzICwgdW0gc2llIHp1IHNlaGVuLiBM9nNjaGUgc2llIG5vY2ggbmljaHQhIFdpciB3ZXJkZW4gc2llIGluDQotICAgICBkZXIgbuRjaHN0ZW4gTGVrdGlvbiBiZW51dHplbi4NCi0NCi1IaW53ZWlzOiBEcvxja2VuIHZvbiAgdiAgc3RhcnRldCBkaWUgVmlzdWVsbGUgQXVzd2FobC4gRHUga2FubnN0IGRlbiBDdXJzb3INCi0gICB1bWhlcmJld2VnZW4sIHVtIGRpZSBBdXN3YWhsIHp1IHZlcmdy9t9lcm4gb2RlciB6dSB2ZXJrbGVpbmVybi4gQW5zY2hsaWXfZW5kDQotICAgbORzc3Qgc2ljaCBlaW4gT3BlcmF0b3IgYW53ZW5kZW4sIHVtIG1pdCBkZW0gVGV4dCBldHdhcyB6dSB0dW4uIFp1bSBCZWlzcGllbA0KLSAgIGz2c2NodCAgZCAgZGVuIFRleHQuDQotDQotfn5+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+DQotCSAgICAgIExla3Rpb24gNS40OiBFSU5MRVNFTiBVTkQgWlVTQU1NRU5G3EhSRU4gVk9OIERBVEVJRU4NCi0NCi0NCi0gICAgICAgKiogVW0gZGVuIEluaGFsdCBlaW5lciBEYXRlaSBlaW56dWxlc2VuLCB0aXBwZSAgOnIgREFURUlOQU1FICAqKg0KLQ0KLSAgMS4gUGxhdHppZXJlIGRlbiBDdXJzb3IgZGlyZWt0IPxiZXIgZGllc2VyIFplaWxlLg0KLQ0KLUJFQUNIVEU6ICBOYWNoZGVtIER1IFNjaHJpdHQgMiBhdXNnZWb8aHJ0IGhhc3QsIHdpcnN0IER1IFRleHQgYXVzIExla3Rpb24gNS4zDQotICAgICAgIHNlaGVuLiBEYW5uIGJld2VnZSBEaWNoIHdpZWRlciBBQlfEUlRTLCBMZWt0aW9uIDUuNCB3aWVkZXJ6dXNlaGVuLg0KLQ0KLSAgMi4gTnVuIGxpZXMgZGVpbmUgRGF0ZWkgVEVTVCBlaW4gaW5kZW0gRHUgZGFzIEtvbW1hbmRvICA6ciBURVNUICBhdXNm/Ghyc3QsDQotICAgICB3b2JlaSBURVNUIGRlciB2b24gRGlyIHZlcndlbmRldGUgRGF0ZWluYW1lIGlzdC4NCi0gICAgIERpZSBlaW5nZWxlc2VuZSBEYXRlaSB3aXJkIHVudGVyaGFsYiBkZXIgQ3Vyc29yemVpbGUgZWluZ2Vm/Gd0Lg0KLQ0KLSAgMy4gVW0genUg/GJlcnBy/GZlbiwgZGFzcyBkaWUgRGF0ZWkgZWluZ2VsZXNlbiB3dXJkZSwgZ2VoZSB6dXL8Y2sgdW5kIA0KLSAgICAgYmVhY2h0ZSwgZGFzcyBlcyBqZXR6dCB6d2VpIEtvcGllbiB2b24gTGVrdGlvbiA1LjMgZ2lidCwgZGFzIE9yaWdpbmFsIHVuZCANCi0JIGRpZSBlaW5nZWb8Z3RlIERhdGVpdmVyc2lvbi4NCi0NCi1Bbm1lcmt1bmc6IER1IGthbm5zdCBhdWNoIGRpZSBBdXNnYWJlIGVpbmVzIGV4dGVybmVuIEtvbW1hbmRvcyBlaW5sZXNlbi4gWnVtDQotICAgICBCZWlzcGllbCBsaWVzdCAgOnIgIWxzICBkaWUgQXVzZ2FiZSBkZXMgS29tbWFuZG9zIGxzIGVpbiB1bmQgcGxhdHppZXJ0DQotICAgICBzaWUgdW50ZXJoYWxiIGRlcyBDdXJzb3JzLg0KLQ0KLX5+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+fg0KLQkJCSBaVVNBTU1FTkZBU1NVTkcgVk9OIExFS1RJT04gNQ0KLQ0KLQ0KLSAgMS4gOiFLb21tYW5kbyAgZvxocnQgZWluIGV4dGVybmVzIEtvbW1hbmRvIGF1cy4NCi0NCi0gICAgICBFaW5pZ2Ugbvx0emxpY2hlIEJlaXNwaWVsZSBzaW5kDQotCShNUy1ET1MpCSAgKFVuaXgpDQotCSA6IWRpcgkJICAgOiFscwkJICAgLSAgemVpZ3QgZWluZSBWZXJ6ZWljaG5pc2F1Zmxpc3R1bmcuDQotCSA6IWRlbCBEQVRFSU5BTUUgICA6IXJtIERBVEVJTkFNRSAgLSAgZW50ZmVybnQgRGF0ZWkgREFURUlOQU1FLg0KLQ0KLSAgMi4gOncgREFURUlOQU1FICBzcGVpY2hlcnQgZGllIGFrdHVlbGxlIFZpbS1EYXRlaSB1bnRlciBkZW0gTmFtZW4gIERBVEVJTkFNRS4NCi0NCi0gIDMuIHYgIEJld2VndW5nICA6dyBEQVRFSU5BTUUgIHNjaHJlaWJ0IGRpZSBWaXN1ZWxsIGF1c2dld+RobHRlbiBaZWlsZW4gaW4NCi0gICAgIGRpZSBEYXRlaSBEQVRFSU5BTUUuDQotDQotICA0LiA6ciBEQVRFSU5BTUUgIGzkZHQgZGllIERhdGVpIERBVEVJTkFNRSB1bmQgZvxndCBzaWUgdW50ZXJoYWxiIGRlcg0KLSAgICAgQ3Vyc29ycG9zaXRpb24gZWluLg0KLQ0KLSAgNS4gOnIgIWRpciAgbGllc3QgZGllIEF1c2dhYmUgZGVzIEtvbW1hbmRvcyBkaXIgdW5kIGb8Z3Qgc2llIHVudGVyaGFsYiBkZXINCi0gICAgIEN1cnNvcnBvc2l0aW9uIGVpbi4NCi0NCi0NCi1+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+fn4NCi0JCSAgICAgICBMZWt0aW9uIDYuMTogWkVJTEVOINZGRk5FTiAoT1BFTikNCi0NCi0NCi0gICAqKiBUaXBwZSAgbwksIHVtIGVpbmUgWmVpbGUgdW50ZXJoYWxiIGRlcyBDdXJzb3JzIHp1IPZmZm5lbiB1bmQgRGljaCBpbiAqKg0KLSAgICAgICAgICAgICAgICAgICAgICAqKiBkZW4gRWluZvxnZW1vZHVzIHp1IGJlZ2ViZW4uICoqDQotDQotICAxLiBCZXdlZ2UgZGVuIEN1cnNvciB6dSBkZXIgZXJzdGVuIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUgdW50ZW4uDQotDQotICAyLiBUaXBwZSBvIChrbGVpbiBnZXNjaHJpZWJlbiksIHVtIGVpbmUgWmVpbGUgVU5URVJIQUxCIGRlcyBDdXJzb3JzIHp1IPZmZm5lbg0KLSAgICAgdW5kIERpY2ggaW4gZGVuIEVpbmb8Z2Vtb2R1cyB6dSBiZWdlYmVuLg0KLQ0KLSAgMy4gTnVuIHRpcHBlIGV0d2FzIFRleHQgdW5kIGRy/GNrZSA8RVNDPiAsIHVtIGRlbiBFaW5m/GdlbW9kdXMgenUgdmVybGFzc2VuLg0KLQ0KLS0tLT4gTWl0ICBvICB3aXJkIGRlciBDdXJzb3IgYXVmIGRlciBvZmZlbmVuIFplaWxlIGltIEVpbmb8Z2Vtb2R1cyBwbGF0emllcnQuDQotDQotICA0LiBVbSBlaW5lIFplaWxlINxCRVJIQUxCIGRlcyBDdXJzb3JzIGF1Znp1bWFjaGVuLCBnaWIgZWluZmFjaCBlaW4gZ3Jv32VzICBPDQotICAgICBzdGF0dCBlaW5lbSBrbGVpbmVuICBvICBlaW4uIFZlcnN1Y2hlIGRpZXMgYXVmIGRlciB1bnRlbiBzdGVoZW5kZW4gWmVpbGUuDQotDQotLS0tPiDWZmZuZSBlaW5lIFplaWxlIPxiZXIgZGllc2VyIG1pdCBPICwgd2VubiBkZXIgQ3Vyc29yIGF1ZiBkaWVzZXIgWmVpbGUgaXN0Lg0KLQ0KLQ0KLQ0KLX5+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+fg0KLQkJICAgICAgIExla3Rpb24gNi4yOiBURVhUIEFORtxHRU4gKEFQUEVORCkNCi0NCi0NCi0JICAgICAqKiBUaXBwZSAgYSAgLCB1bSBUZXh0IE5BQ0ggZGVtIEN1cnNvciBlaW56dWb8Z2VuLiAqKg0KLQ0KLSAgMS4gQmV3ZWdlIGRlbiBDdXJzb3IgenVtIEFuZmFuZyBkZXIgZXJzdGVuINxidW5nc3plaWxlIG1pdCAtLS0+IHVudGVuLg0KLQ0KLSAgMi4gRHL8Y2tlICBlICAsIGJpcyBkZXIgQ3Vyc29yIGFtIEVuZGUgdm9uICBaZWkgIHN0ZWh0Lg0KLQ0KLSAgMy4gVGlwcGUgZWluIGtsZWluZXMgIGEgICwgdW0gVGV4dCBOQUNIIGRlbSBDdXJzb3IgYW56dWb8Z2VuLg0KLQ0KLSAgNC4gVmVydm9sbHN05G5kaWdlIGRhcyBXb3J0IHNvIHdpZSBpbiBkZXIgWmVpbGUgZGFydW50ZXIuICBEcvxja2UgPEVTQz4gLA0KLSAgICAgdW0gZGVuIEVpbmb8Z2Vtb2R1cyB6dSB2ZXJsYXNzZW4uDQotDQotICA1LiBCZXdlZ2UgRGljaCBtaXQgIGUgIHp1bSBu5GNoc3RlbiB1bnZvbGxzdORuZGlnZW4gV29ydCB1bmQgd2llZGVyaG9sZQ0KLSAgICAgU2Nocml0dGUgMyB1bmQgNC4NCi0NCi0tLS0+IERpZXNlIFplaSBiaWV0ZXQgR2VsZWdlbiAsIFRleHQgaW4gZWluZXIgWmVpbGUgYW56dWb8Lg0KLS0tLT4gRGllc2UgWmVpbGUgYmlldGV0IEdlbGVnZW5oZWl0LCBUZXh0IGluIGVpbmVyIFplaWxlIGFuenVm/Gdlbi4NCi0NCi1Bbm1lcmt1bmc6ICBhLCBpIHVuZCBBIGdlaGVuIGFsbGUgZ2xlaWNoZXJtYd9lbiBpbiBkZW4gRWluZvxnZW1vZHVzOyBkZXINCi0gICAgICAgICAgICBlaW56aWdlIFVudGVyc2NoaWVkIGlzdCwgd28gZGllIFplaWNoZW4gZWluZ2Vm/Gd0IHdlcmRlbi4NCi1+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+fn4NCi0JICAgICAgTGVrdGlvbiA2LjM6IEVJTkUgQU5ERVJFIEFSVCBERVMgRVJTRVRaRU5TIChSRVBMQUNFKQ0KLQ0KLQ0KLSAgICAgICAqKiBUaXBwZSBlaW4gZ3Jv32VzICBSICAsIHVtIG1laHIgYWxzIGVpbiBaZWljaGVuIHp1IGVyc2V0emVuLiAqKg0KLQ0KLSAgMS4gQmV3ZWdlIGRlbiBDdXJzb3IgenVyIGVyc3RlbiB1bnRlbiBzdGVoZW5kZW4sIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUuDQotICAgICBCZXdlZ2UgZGVuIEN1cnNvciB6dW0gQW5mYW5nIGRlcyBlcnN0ZW4gIHh4eCAuDQotDQotICAyLiBOdW4gZHL8Y2tlICBSICB1bmQgdGlwcGUgZGllIE51bW1lciwgZGllIGRhcnVudGVyIGluIGRlciB6d2VpdGVuIFplaWxlDQotICAgICBzdGVodCwgc28gZGFzcyBkaWVzZSBkYXMgeHh4IGVyc2V0enQuDQotDQotICAzLiBEcvxja2UgPEVTQz4gLCB1bSBkZW4gRXJzZXR6dW5nc21vZHVzIHp1IHZlcmxhc3Nlbi4gQmVhY2h0ZSwgZGFzcyBkZXIgUmVzdA0KLSAgICAgZGVyIFplaWxlIHVudmVy5G5kZXJ0IGJsZWlidC4NCi0NCi0gIDQuIFdpZWRlcmhvbGUgZGllIFNjaHJpdHRlLCB1bSBkYXMgdmVyYmxpZWJlbmUgeHh4IHp1IGVyc2V0emVuLg0KLQ0KLS0tLT4gRGFzIEFkZGllcmVuIHZvbiAxMjMgenUgeHh4IGVyZ2lidCB4eHguDQotLS0tPiBEYXMgQWRkaWVyZW4gdm9uIDEyMyB6dSA0NTYgZXJnaWJ0IDU3OS4NCi0NCi1Bbm1lcmt1bmc6IERlciBFcnNldHp1bmdzbW9kdXMgaXN0IHdpZSBkZXIgRWluZvxnZW1vZHVzLCBhYmVyIGplZGVzIGVpbmdldGlwcHRlDQotICAgICAgICAgICBaZWljaGVuIGz2c2NodCBlaW4gdm9yaGFuZGVuZXMgWmVpY2hlbi4NCi0NCi1+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+fn4NCi0JCSAgICBMZWt0aW9uIDYuNDogVEVYVCBLT1BJRVJFTiBVTkQgRUlORtxHRU4NCi0NCi0gKiogQmVudXR6ZSBkZW4gIHkgIE9wZXJhdG9yLCB1bSBUZXh0IHp1IGtvcGllcmVuOyAgcCAgLCB1bSBpaG4gZWluenVm/GdlbiAqKg0KLQ0KLSAgMS4gR2VoZSB6dSBkZXIgbWl0IC0tLT4gbWFya2llcnRlbiBaZWlsZSB1bnRlbjsgc2V0emUgZGVuIEN1cnNvciBoaW50ZXIgImEpIi4NCi0NCi0gIDIuIFN0YXJ0ZSBkZW4gVmlzdWVsbGVuIE1vZHVzIG1pdCAgdiAgLCBiZXdlZ2UgZGVuIEN1cnNvciBnZW5hdSB2b3IgImVyc3RlIi4NCi0NCi0gIDMuIFRpcHBlICB5ICAsIHVtIGRlbiBoZXJ2b3JnZWhvYmVuIFRleHQgenUga29waWVyZW4uDQotDQotICA0LiBCZXdlZ2UgZGVuIEN1cnNvciB6dW0gRW5kZSBkZXIgbuRjaHN0ZW4gWmVpbGU6ICBqJA0KLQ0KLSAgNS4gVGlwcGUgIHAgLCB1bSBkZW4gVGV4dCBlaW56dWb8Z2VuIHVuZCBhbnNjaGxpZd9lbmQ6ICBhIHp3ZWl0ZSA8RVNDPiAuDQotDQotICA2LiBCZW51dHplIGRlbiBWaXN1ZWxsZW4gTW9kdXMsIHVtICIgRWludHJhZy4iIGF1c3p1d+RobGVuLCBrb3BpZXJlIG1pdHRlbHMNCi0gICAgIHkgLCBiZXdlZ2UgRGljaCB6dW0gRW5kZSBkZXIgbuRjaHN0ZW4gWmVpbGUgbWl0ICBqJCAgdW5kIGb8Z2UgZGVuIFRleHQNCi0gICAgIGRvcnQgbWl0ICBwICBhbi4NCi0NCi0tLS0+ICBhKSBkaWVzIGlzdCBkZXIgZXJzdGUgRWludHJhZy4NCi0gICAgICBiKQ0KLQ0KLUFubWVya3VuZzogRHUga2FubnN0ICB5ICBhdWNoIGFscyBPcGVyYXRvciB2ZXJ3ZW5kZW47ICB5dyAga29waWVydCBlaW4gV29ydC4NCi1+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+fn4NCi0JCQkgIExla3Rpb24gNi41OiBPUFRJT05FTiBTRVRaRU4NCi0NCi0gICAgICAqKiBTZXR6ZSBlaW5lIE9wdGlvbiBzbywgZGFzcyBlaW5lIFN1Y2hlIG9kZXIgRXJzZXR6dW5nIEdyb98tICoqDQotCQkgICAgICAqKiB1bmQgS2xlaW5zY2hyZWlidW5nIGlnbm9yaWVydCAqKg0KLQ0KLSAgMS4gU3VjaGUgbmFjaCAnaWdub3JpZXJlJywgaW5kZW0gRHUgICAgL2lnbm9yaWVyZSAgIGVpbmdpYnN0Lg0KLSAgICAgV2llZGVyaG9sZSBkaWUgU3VjaGUgZWluaWdlIE1hbGUsIGluZGVtIER1IGRpZSBuIC0gVGFzdGUgZHL8Y2tzdC4NCi0NCi0gIDIuIFNldHplIGRpZSAnaWMnIChJZ25vcmUgY2FzZSkgLSBPcHRpb24sIGluZGVtIER1ICAgOnNldCBpYyAgIGVpbmdpYnN0Lg0KLQ0KLSAgMy4gTnVuIHN1Y2hlIHdpZWRlciBuYWNoICdpZ25vcmllcmUnLCBpbmRlbSBEdSAgbiAgdGlwcHN0Lg0KLSAgICAgQmVhY2h0ZSwgZGFzcyBqZXR6dCBJZ25vcmllcmUgdW5kIGF1Y2ggSUdOT1JJRVJFIGdlZnVuZGVuIHdpcmQuDQotDQotICA0LiBTZXR6ZSBkaWUgJ2hsc2VhcmNoJyB1bmQgJ2luY3NlYXJjaCcgLSBPcHRpb25lbjogICAgIDpzZXQgaGxzIGlzDQotDQotICA1LiBXaWVkZXJob2xlIGRpZSBTdWNoZSB1bmQgYmVvYmFjaHRlLCB3YXMgcGFzc2llcnQ6IC9pZ25vcmllcmUgPEVOVEVSPg0KLQ0KLSAgNi4gVW0gZGFzIElnbm9yaWVyZW4gdm9uIEdyb98vS2xlaW5zY2hyZWlidW5nIGFienVzY2hhbHRlbiwgdGlwcGU6ICA6c2V0IG5vaWMNCi0NCi1Bbm1lcmt1bmc6IFVtIGRpZSBIZXJ2b3JoZWJ1bmcgZGVyIFRyZWZmZXIgenUgZW50ZmVybmVuLCBnaWIgZWluOiAgOm5vaGxzZWFyY2gNCi1Bbm1lcmt1bmc6IFVtIGRpZSBTY2hyZWlid2Vpc2UgZvxyIGVpbmUgZWluemlnZSBTdWNoZSB6dSBpZ25vcmllcmVuLCBiZW51dHplIFxjDQotICAgICAgICAgICBpbSBTdWNoYXVzZHJ1Y2s6ICAvaWdub3JpZXJlXGMgIDxFTlRFUj4NCi1+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+fn4NCi0JCQkgWlVTQU1NRU5GQVNTVU5HIFZPTiBMRUtUSU9OIDYNCi0NCi0gMS4gVGlwcGUgIG8gICwgdW0gZWluZSBaZWlsZSBVTlRFUiBkZW0gQ3Vyc29yIHp1IPZmZm5lbiB1bmQgZGVuIEVpbmb8Z2Vtb2R1cw0KLSAgICAgICAgICAgICAgICB6dSBzdGFydGVuDQotICAgIFRpcHBlICBPICAsIHVtIGVpbmUgWmVpbGUg3EJFUiBkZW0gQ3Vyc29yIHp1IPZmZm5lbi4NCi0NCi0gMi4gVGlwcGUgIGEgICwgdW0gVGV4dCBOQUNIIGRlbSBDdXJzb3IgYW56dWb8Z2VuLg0KLSAgICBUaXBwZSAgQSAgLCB1bSBUZXh0IG5hY2ggZGVtIFplaWxlbmVuZGUgYW56dWb8Z2VuLg0KLQ0KLSAzLiBEYXMgS29tbWFuZG8gIGUgIGJyaW5ndCBEaWNoIHp1bSBFbmRlIGVpbmVzIFdvcnRlcy4NCi0NCi0gNC4gRGVyIE9wZXJhdG9yICB5ICAoeWFuaykga29waWVydCBUZXh0LCAgcCAgKHB1dCkgZvxndCBpaG4gZWluLg0KLQ0KLSA1LiBFaW4gZ3Jv32VzICBSICBnZWh0IGluIGRlbiBFcnNldHp1bmdzbW9kdXMgYmlzIHp1bSBEcvxja2VuIHZvbiAgPEVTQz4gLg0KLQ0KLSA2LiBEaWUgRWluZ2FiZSB2b24gIjpzZXQgeHh4IiBzZXR6dCBkaWUgT3B0aW9uICJ4eHgiLiBFaW5pZ2UgT3B0aW9uZW4gc2luZDoNCi0JJ2ljJyAnaWdub3JlY2FzZScgICAgSWdub3JpZXJlIEdyb98vS2xlaW5zY2hyZWlidW5nIGJlaSBlaW5lciBTdWNoZQ0KLQknaXMnICdpbmNzZWFyY2gnICAgICBaZWlnZSBUZWls/GJlcmVpbnN0aW1tdW5nZW4gZvxyIGVpbmVuIFN1Y2hhdXNkcnVjaw0KLQknaGxzJyAnaGxzZWFyY2gnICAgICBIZWJlIGFsbGUgcGFzc2VuZGVuIEF1c2Ry/GNrZSBoZXJ2b3INCi0gICAgRGVyIE9wdGlvbnNuYW1lIGthbm4gaW4gZGVyIEt1cnotIG9kZXIgZGVyIExhbmdmb3JtIGFuZ2VnZWJlbiB3ZXJkZW4uDQotDQotIDcuIFN0ZWxsZSBlaW5lciBPcHRpb24gIm5vIiB2b3JhbiwgdW0gc2llIGFienVzY2hhbHRlbjogICA6c2V0IG5vaWMNCi1+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+fn4NCi0JCQlMZWt0aW9uIDcuMSA6IEFVRlJVRkVOIFZPTiBISUxGRQ0KLQ0KLQ0KLQkJICAgICAqKiBOdXR6ZSBkYXMgZWluZ2ViYXV0ZSBIaWxmZXN5c3RlbSAqKg0KLQ0KLSAgVmltIGJlc2l0enQgZWluIHVtZmFzc2VuZGVzIGVpbmdlYmF1dGVzIEhpbGZlc3lzdGVtLiAgRvxyIGRlbiBBbmZhbmcgcHJvYmllcmUNCi0gIGVpbnMgZGVyIGRyZWkgZm9sZ2VuZGVuIERpbmdlIGF1czoNCi0JLSBEcvxja2UgZGllIDxIaWxmZT4gLSBUYXN0ZSAoZmFsbHMgRHUgZWluZSBiZXNpdHp0KQ0KLQktIERy/GNrZSBkaWUgPEYxPiBUYXN0ZSAoZmFsbHMgRHUgZWluZSBiZXNpdHp0KQ0KLQktIFRpcHBlICAgOmhlbHAgPEVOVEVSPg0KLQ0KLSAgTGllcyBkZW4gVGV4dCBpbSBIaWxmZWZlbnN0ZXIsIHVtIHp1IHZlcnN0ZWhlbiB3aWUgZGllIEhpbGZlIGZ1bmt0aW9uaWVydC4NCi0gIFRpcHBlICBDVFJMLVcgQ1RSTC1XICAgLCB1bSB2b24gZWluZW0gRmVuc3RlciB6dW0gYW5kZXJlbiB6dSBzcHJpbmdlbi4NCi0gIFRpcHBlICAgOnEgPEVOVEVSPiAgLCB1bSBkYXMgSGlsZmVmZW5zdGVyIHp1IHNjaGxpZd9lbi4NCi0NCi0gIER1IGthbm5zdCBIaWxmZSB6dSBwcmFrdGlzY2ggamVkZW0gVGhlbWEgZmluZGVuLCBpbmRlbSBEdSBkZW0gIjpoZWxwIi0NCi0gIEtvbW1hbmRvIGVpbiBBcmd1bWVudCBnaWJzdC4gIFByb2JpZXJlIGZvbGdlbmRlcyAoPEVOVEVSPiBuaWNodCB2ZXJnZXNzZW4pOg0KLQ0KLQk6aGVscCB3DQotCTpoZWxwIGNfQ1RSTC1EDQotCTpoZWxwIGluc2VydC1pbmRleA0KLQk6aGVscCB1c2VyLW1hbnVhbA0KLX5+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+fg0KLQkJICAgICBMZWt0aW9uIDcuMjogRVJTVEVMTEUgRUlOIFNUQVJULVNLUklQVA0KLQ0KLQ0KLQkgICAgICAgICAgKiogIEFrdGl2aWVyZSBkaWUgRmVhdHVyZXMgdm9uIFZpbSAqKg0KLQ0KLSAgVmltIGJlc2l0enQgdmllbGUgRnVua3Rpb25hbGl05HRlbiwgZGllIPxiZXIgVmkgaGluYXVzZ2VoZW4sIGFiZXIgZGllIG1laXN0ZW4NCi0gIHZvbiBpaG5lbiBzaW5kIHN0YW5kYXJkbeTfaWcgZGVha3RpdmllcnQuIFVtIG1laHIgRnVua3Rpb25hbGl05HRlbiB6dSBudXR6ZW4sDQotICBtdXNzdCBEdSBlaW5lICJ2aW1yYyIgLSBEYXRlaSBlcnN0ZWxsZW4uDQotDQotICAxLiBTdGFydGUgZGFzIEVkaXRpZXJlbiBkZXIgInZpbXJjIi1EYXRlaSwgYWJo5G5naWcgdm9uIGRlaW5lbSBTeXN0ZW06DQotCTplIH4vLnZpbXJjCQlm/HIgVW5peA0KLQk6ZSAkVklNL192aW1yYwkJZvxyIE1TLVdpbmRvd3MNCi0NCi0gIDIuIE51biBsaWVzIGRlbiBJbmhhbHQgZGVyIEJlaXNwaWVsLSJ2aW1yYyItRGF0ZWkgZWluOg0KLQk6ciAkVklNUlVOVElNRS92aW1yY19leGFtcGxlLnZpbQ0KLQ0KLSAgMy4gU3BlaWNoZXJlIGRpZSBEYXRlaSBtaXQ6DQotCTp3DQotDQotICBCZWltIG7kY2hzdGVuIFN0YXJ0IHZvbiBWaW0gd2lyZCBkaWUgU3ludGF4aGVydm9yaGVidW5nIGFrdGl2aWVydCBzZWluLg0KLSAgRHUga2FubnN0IGFsbCBkZWluZSBiZXZvcnp1Z3RlbiBPcHRpb25lbiB6dSBkaWVzZXIgInZpbXJjIi1EYXRlaSB6dWb8Z2VuLg0KLSAgRvxyIG1laHIgSW5mb3JtYXRpb25lbiB0aXBwZSAgOmhlbHAgdmltcmMtaW50cm8NCi1+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+fn4NCi0JCQkgTGVrdGlvbiA3LjM6IFZFUlZPTExTVMRORElHRU4NCi0NCi0NCi0JICAgKiogS29tbWFuZG96ZWlsZW52ZXJ2b2xsc3TkbmRpZ3VuZyBtaXQgQ1RSTC1EIHVuZCA8VEFCPiAqKg0KLQ0KLSAgMS4gU3RlbGxlIHNpY2hlciwgZGFzcyBWaW0gbmljaHQgaW0gVmktS29tcGF0aWJpbGl05HRzbW9kdXMgaXN0OiAgOnNldCBub2NwDQotDQotICAyLiBTaWVoZSBuYWNoLCB3ZWxjaGUgRGF0ZWllbiBpbSBWZXJ6ZWljaG5pcyBleGlzdGllcmVuOiAgOiFscyAgb2RlciAgOmRpcg0KLQ0KLSAgMy4gVGlwcGUgZGVuIEJlZ2lubiBlaW5lcyBLb21tYW5kb3M6ICA6ZQ0KLQ0KLSAgNC4gRHL8Y2tlICBDVFJMLUQgIHVuZCBWaW0gemVpZ3QgZWluZSBMaXN0ZSBtaXQgImUiIGJlZ2lubmVuZGVyIEtvbW1hbmRvcy4NCi0NCi0gIDUuIERy/GNrZSAgPFRBQj4gIHVuZCBWaW0gdmVydm9sbHN05G5kaWd0IGRlbiBLb21tYW5kb25hbWVuIHp1ICI6ZWRpdCIuDQotDQotICA2LiBOdW4gZvxnZSBlaW4gTGVlcnplaWNoZW4gdW5kIGRlbiBBbmZhbmcgZWluZXIgZXhpc3RpZXJlbmRlbiBEYXRlaSBhbjoNCi0gICAgIDplZGl0IERBVA0KLQ0KLSAgNy4gRHL8Y2tlIDxUQUI+LiBWaW0gdmVydm9sbHN05G5kaWd0IGRlbiBOYW1lbiAoZmFsbHMgZXIgZWluZGV1dGlnIGlzdCkuDQotDQotQW5tZXJrdW5nOiBWZXJ2b2xsc3TkbmRpZ3VuZyBmdW5rdGlvbmllcnQgZvxyIHZpZWxlIEtvbW1hbmRvcy4gUHJvYmllcmUNCi0gICAgIGVpbmZhY2ggQ1RSTC1EIHVuZCA8VEFCPi4gIERpZXMgaXN0IGluc2Jlc29uZGVyZSBu/HR6bGljaCBm/HIgIDpoZWxwIC4NCi1+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+fn4NCi0JCQkJICAgICBaVVNBTU1FTkZBU1NVTkcgVk9OIExFS1RJT04gNw0KLQ0KLQ0KLSAgMS4gVGlwcGUgIDpoZWxwICBvZGVyIGRy/GNrZSA8RjE+IG9kZXIgPEhlbHA+LCB1bSBlaW4gSGlsZmVmZW5zdGVyIHp1IPZmZm5lbi4NCi0NCi0gIDIuIFRpcHBlICA6aGVscCBLb21tYW5kbyAgLCB1bSBIaWxmZSD8YmVyICBLb21tYW5kbyAgenUgZXJoYWx0ZW4uDQotDQotICAzLiBUaXBwZSAgQ1RSTC1XIENUUkwtVyAgLCB1bSB6dW0gYW5kZXJlbiBGZW5zdGVyIHp1IHNwcmluZ2VuLg0KLQ0KLSAgNC4gVGlwcGUgIDpxICAsIHVtIGRhcyBIaWxmZWZlbnN0ZXIgenUgc2NobGll32VuLg0KLQ0KLSAgNS4gRXJzdGVsbGUgZWluIHZpbXJjIC0gU3RhcnRza3JpcHQgbWl0IGRlaW5lbiBiZXZvcnp1Z3RlciBFaW5zdGVsbHVuZ2VuLg0KLQ0KLSAgNi4gRHL8Y2tlIENUUkwtRCBuYWNoIGRlbSBUaXBwZW4gZWluZXMgIDogIEtvbW1hbmRvcywgdW0gbfZnbGljaGUNCi0gICAgIFZlcnZvbGxzdORuZGlndW5nZW4gYW56dXNlaGVuLg0KLSAgICAgRHL8Y2tlIDxUQUI+ICwgdW0gZWluZSBWZXJ2b2xsc3TkbmRpZ3VuZyB6dSBhbnp1d2VuZGVuLg0KLQ0KLQ0KLQ0KLQ0KLQ0KLQ0KLX5+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+fg0KLQ0KLSAgRGFtaXQgaXN0IGRlciBWaW0gVHV0b3IgYmVlbmRldC4gIFNlaW5lIEludGVudGlvbiB3YXIsIGVpbmVuIGt1cnplbiB1bmQNCi0gIGL8bmRpZ2VuINxiZXJibGljayD8YmVyIGRlbiBWaW0gRWRpdG9yIHp1IGdlYmVuOyBnZXJhZGUgZ2VudWcsIHVtIHJlbGF0aXYNCi0gIGxlaWNodCBtaXQgaWhtIHVtZ2VoZW4genUga/ZubmVuLiAgRGVyIFZpbSBUdXRvciBoYXQgbmljaHQgZGVuIGdlcmluZ3N0ZW4NCi0gIEFuc3BydWNoIGF1ZiBWb2xsc3TkbmRpZ2tlaXQ7IFZpbSBoYXQgbm9jaCB3ZWl0YXVzIG1laHIgS29tbWFuZG9zLiBMaWVzIGFscw0KLSAgbuRjaHN0ZXMgZGFzIFVzZXIgTWFudWFsOiAiOmhlbHAgdXNlci1tYW51YWwiLg0KLQ0KLSAgRvxyIHdlaXRlcmVzIExlc2VuIHVuZCBMZXJuZW4gaXN0IGZvbGdlbmRlcyBCdWNoIGVtcGZlaGxlbnN3ZXJ0IDoNCi0JVmltIC0gVmkgSW1wcm92ZWQgLSB2b24gU3RldmUgT3VhbGxpbmUNCi0JVmVybGFnOiBOZXcgUmlkZXJzDQotICBEYXMgZXJzdGUgQnVjaCwgd2VsY2hlcyBkdXJjaGfkbmdpZyBWaW0gZ2V3aWRtZXQgaXN0LiAgQmVzb25kZXJzIG78dHpsaWNoDQotICBm/HIgQW5m5G5nZXIuICBWaWVsZSBCZWlzcGllbGUgdW5kIEJpbGRlciBzaW5kIGVudGhhbHRlbi4NCi0gIFNpZWhlIGh0dHA6Ly9pY2NmLWhvbGxhbmQub3JnL2NsaWNrNS5odG1sDQotDQotICBGb2xnZW5kZXMgQnVjaCBpc3Qg5Gx0ZXIgdW5kIG1laHIg/GJlciBWaSBhbHMgVmltLCBhYmVyIGF1Y2ggZW1wZmVobGVuc3dlcnQ6DQotCVRleHRiZWFyYmVpdHVuZyBtaXQgZGVtIFZpLUVkaXRvciAgLSAgdm9uIExpbmRhIExhbWIgdW5kIEFybm9sZCBSb2JiaW5zDQotCVZlcmxhZyBPJ1JlaWxseSAtIElTQk46IDM4OTcyMTEyNjINCi0gIEluIGRpZXNlbSBCdWNoIGthbm4gbWFuIGZhc3QgYWxsZXMgZmluZGVuLCB3YXMgbWFuIG1pdCBWaSB0dW4gbfZjaHRlLg0KLSAgRGllIHNlY2hzdGUgQXVzZ2FiZSBlbnRo5Gx0IGF1Y2ggSW5mb3JtYXRpb25lbiD8YmVyIFZpbS4NCi0NCi0gIEFscyBha3R1ZWxsZSBSZWZlcmVueiBm/HIgVmVyc2lvbiA2LjIgdW5kIGtuYXBwZSBFaW5m/GhydW5nIGRpZW50IGRhcw0KLSAgZm9sZ2VuZGUgQnVjaDoNCi0JdmltIGdlLXBhY2t0IHZvbiBSZWluaGFyZCBXb2JzdA0KLQltaXRwLVZlcmxhZywgSVNCTiAzLTgyNjYtMTQyNS05DQotICBUcm90eiBkZXIga29tcGFrdGVuIERhcnN0ZWxsdW5nIGlzdCBlcyBkdXJjaCB2aWVsZSBu/HR6bGljaGUgQmVpc3BpZWxlIGF1Y2gNCi0gIGb8ciBFaW5zdGVpZ2VyIGVtcGZlaGxlbnN3ZXJ0LiAgUHJvYmVrYXBpdGVsIHVuZCBkaWUgQmVpc3BpZWxza3JpcHRlIHNpbmQNCi0gIG9ubGluZSBlcmjkbHRsaWNoLiAgU2llaGUgaHR0cDovL2ljY2YtaG9sbGFuZC5vcmcvY2xpY2s1Lmh0bWwNCi0NCi0gIERpZXNlcyBUdXRvcmlhbCB3dXJkZSBnZXNjaHJpZWJlbiB2b24gTWljaGFlbCBDLiBQaWVyY2UgdW5kIFJvYmVydCBLLiBXYXJlLA0KLSAgQ29sb3JhZG8gU2Nob29sIG9mIE1pbmVzLiBFcyBiZW51dHp0IElkZWVuLCBkaWUgQ2hhcmxlcyBTbWl0aCwgQ29sb3JhZG8gU3RhdGUNCi0gIFVuaXZlcnNpdHksIHp1ciBWZXJm/Gd1bmcgc3RlbGx0ZS4gIEUtTWFpbDogYndhcmVAbWluZXMuY29sb3JhZG8uZWR1Lg0KLQ0KLSAgQmVhcmJlaXRldCBm/HIgVmltIHZvbiBCcmFtIE1vb2xlbmFhci4NCi0gIERldXRzY2hlINxiZXJzZXR6dW5nIHZvbiBKb2FjaGltIEhvZm1hbm4gMjAxNS4gIEUtTWFpbDogSm9hY2hpbS5Ib2ZAZ214LmRlDQotDQotfn5+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+DQorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorPSAgICAgIFcgaSBsIGwgayBvIG0gbSBlIG4gICBpbSAgIFYgSSBNICAgVCB1IHQgbyByICAgIC0gICAgVmVyc2lvbiAxLjcuZGUuMSAgPQorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorCisgICBWaW0gaXN0IGVpbiBzZWhyIG3kY2h0aWdlciBFZGl0b3IsIGRlciB2aWVsZSBCZWZlaGxlIGJlcmVpdHN0ZWxsdDsgenUgdmllbGUsCisgICB1bSBhbGxlIGluIGVpbmVtIFR1dG9yIHdpZSBkaWVzZW0genUgZXJrbORyZW4uICBEaWVzZXIgVHV0b3IgaXN0IHNvCisgICBnZXN0YWx0ZXQsIHVtIGdlbnVnIEJlZmVobGUgdm9yenVzdGVsbGVuLCBkYXNzIER1IGRpZSBG5GhpZ2tlaXQgZXJsYW5nc3QsCisgICBWaW0gbWl0IExlaWNodGlna2VpdCBhbHMgZWluZW4gQWxsendlY2stRWRpdG9yIHp1IHZlcndlbmRlbi4KKyAgIERpZSBaZWl0IGb8ciBkYXMgRHVyY2hhcmJlaXRlbiBkaWVzZXMgVHV0b3JzIGJldHLkZ3QgY2EuIDI1LTMwIE1pbnV0ZW4sCisgICBhYmjkbmdpZyBkYXZvbiwgd2llIHZpZWwgWmVpdCBEdSBtaXQgRXhwZXJpbWVudGllcmVuIHZlcmJyaW5nc3QuCisKKyAgIEFDSFRVTkc6CisgICBEaWUgaW4gZGVuIExla3Rpb25lbiBhbmdld2VuZGV0ZW4gS29tbWFuZG9zIHdlcmRlbiBkZW4gVGV4dCBtb2RpZml6aWVyZW4uCisgICBFcnN0ZWxsZSBlaW5lIEtvcGllIGRpZXNlciBEYXRlaSwgaW4gZGVyIER1IPxiZW4gd2lsbHN0IChmYWxscyBEdSAidmltdHV0b3IiCisgICBhdWZnZXJ1ZmVuIGhhc3QsIGlzdCBkaWVzIGJlcmVpdHMgZWluZSBLb3BpZSkuCisKKyAgIEVzIGlzdCB3aWNodGlnLCBzaWNoIHp1IHZlcmdlZ2Vud+RydGlnZW4sIGRhc3MgZGllc2VyIFR1dG9yIGb8ciBkYXMgQW53ZW5kZW4KKyAgIGtvbnppcGllcnQgaXN0LiBEYXMgYmVkZXV0ZXQsIGRhc3MgRHUgZGllIEJlZmVobGUgYW53ZW5kZW4gbXVzc3QsIHVtIHNpZQorICAgcmljaHRpZyB6dSBsZXJuZW4uIFdlbm4gRHUgbnVyIGRlbiBUZXh0IGxpZXN0LCB2ZXJnaXNzdCBEdSBkaWUgQmVmZWhsZSEKKworICAgSmV0enQgc3RlbGxlIHNpY2hlciwgZGFzcyBkZWluZSBVbXN0ZWxsdGFzdGUgTklDSFQgZ2Vkcvxja3QgaXN0IHVuZCBiZXTkdGlnZQorICAgZGllICAgaiAgIFRhc3RlIGdlbvxnZW5kIE1hbCwgdW0gZGVuIEN1cnNvciBuYWNoIHVudGVuIHp1IGJld2VnZW4sIHNvIGRhc3MKKyAgIExla3Rpb24gMS4xIGRlbiBCaWxkc2NoaXJtIHZvbGxrb21tZW4gYXVzZvxsbHQuCit+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+fn4KKwkJCUxla3Rpb24gMS4xOiBCRVdFR0VOIERFUyBDVVJTT1JTCisKKyAgKiogVW0gZGVuIEN1cnNvciB6dSBiZXdlZ2VuLCBkcvxja2UgZGllIGgsaixrLGwgVGFzdGVuIHdpZSB1bnRlbiBnZXplaWd0LiAqKgorCSAgICAgXgkJIEhpbGZlc3RlbGx1bmc6CisJICAgICBrCQkgRGllIGggVGFzdGUgYmVmaW5kZXQgc2ljaCBsaW5rcyB1bmQgYmV3ZWd0IG5hY2ggbGlua3MuCisgICAgICAgPCBoCSBsID4JIERpZSBsIFRhc3RlIGxpZWd0IHJlY2h0cyB1bmQgYmV3ZWd0IG5hY2ggcmVjaHRzLgorCSAgICAgagkJIERpZSBqIFRhc3RlIORobmVsdCBlaW5lbSBQZmVpbCBuYWNoIHVudGVuLgorCSAgICAgdgorICAxLiBCZXdlZ2UgZGVuIEN1cnNvciBhdWYgZGVtIEJpbGRzY2hpcm0gdW1oZXIsIGJpcyBEdSBEaWNoIHNpY2hlciBm/Ghsc3QuCisKKyAgMi4gSGFsdGUgZGllIE5hY2gtVW50ZW4tVGFzdGUgKGopIGdlZHL8Y2t0LCBiaXMgc2llIHNpY2ggd2llZGVyaG9sdC4KKyAgICAgSmV0enQgd2Vp33QgRHUsIHdpZSBEdSBEaWNoIHp1ciBu5GNoc3RlbiBMZWt0aW9uIGJld2VnZW4ga2FubnN0LgorCisgIDMuIEJlbnV0emUgZGllIE5hY2gtVW50ZW4tVGFzdGUsIHVtIERpY2ggenUgTGVrdGlvbiAxLjIgenUgYmV3ZWdlbi4KKworQW5tZXJrdW5nOiBJbW1lciwgd2VubiBEdSBEaXIgdW5zaWNoZXIgYmlzdCD8YmVyIGRhcywgd2FzIER1IGdldGlwcHQgaGFzdCwKKwkgICBkcvxja2UgPEVTQz4gLCB1bSBEaWNoIGluIGRlbiBOb3JtYWxtb2R1cyB6dSBiZWdlYmVuLgorCSAgIERhbm4gZ2liIGRhcyBnZXf8bnNjaHRlIEtvbW1hbmRvIG5vY2ggZWlubWFsIGVpbi4KKworQW5tZXJrdW5nOiBEaWUgQ3Vyc29yLVRhc3RlbiBzb2xsdGVuIGViZW5mYWxscyBmdW5rdGlvbmllcmVuLiAgQWJlciB3ZW5uIER1CisJICAgaGprbCBiZW51dHp0LCB3aXJzdCBEdSBpbiBkZXIgTGFnZSBzZWluLCBEaWNoIHNlaHIgdmllbCBzY2huZWxsZXIKKwkgICB1bWhlcnp1YmV3ZWdlbiwgd2VubiBEdSBEaWNoIGVpbm1hbCBkYXJhbiBnZXf2aG50IGhhc3QuIFdpcmtsaWNoIQorfn5+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+CisJCQkgICAgTGVrdGlvbiAxLjI6IFZJTSBCRUVOREVOCisKKworICAhISBIaW53ZWlzOiBCZXZvciBEdSBlaW5lbiBkZXIgdW50ZW4gYXVmZ2Vm/GhydGVuIFNjaHJpdHRlIGF1c2b8aHJzdCwgbGllcworICAgICBkaWVzZSBnZXNhbXRlIExla3Rpb24hIQorCisgIDEuIERy/GNrZSBkaWUgPEVTQz4gVGFzdGUgKHVtIHNpY2hlcnp1c3RlbGxlbiwgZGFzcyBEdSBpbSBOb3JtYWxtb2R1cyBiaXN0KS4KKworICAyLiBUaXBwZToJOnEhIDxFTlRFUj4uCisgICAgIERpZXMgYmVlbmRldCBkZW4gRWRpdG9yIHVuZCBWRVJXSVJGVCBhbGxlIMRuZGVydW5nZW4sIGRpZSBEdSBnZW1hY2h0IGhhc3QuCisKKyAgMy4gV2VubiBEdSBkaWUgRWluZ2FiZWF1ZmZvcmRlcnVuZyBzaWVoc3QsIGdpYiBkYXMgS29tbWFuZG8gZWluLCBkYXMgRGljaCB6dQorICAgICBkaWVzZW0gVHV0b3IgZ2Vm/GhydCBoYXQuIERpZXMgd+RyZToJdmltdHV0b3IgPEVOVEVSPgorCisgIDQuIFdlbm4gRHUgRGlyIGRpZXNlIFNjaHJpdHRlIGVpbmdlcHLkZ3QgaGFzdCB1bmQgRHUgRGljaCBzaWNoZXIgZvxobHN0LAorICAgICBm/GhyZSBTY2hyaXR0ZSAxIGJpcyAzIGF1cywgdW0gZGVuIEVkaXRvciB6dSB2ZXJsYXNzZW4gdW5kIHdpZWRlcgorICAgICBoaW5laW56dWdlbGFuZ2VuLgorCitBbm1lcmt1bmc6ICA6cSEgPEVOVEVSPiAgdmVyd2lyZnQgYWxsZSDEbmRlcnVuZ2VuLCBkaWUgRHUgZ2VtYWNodCBoYXN0LiBFaW5pZ2UKKyAgICAgTGVrdGlvbmVuIHNw5HRlciBsZXJuc3QgRHUsIGRpZSDEbmRlcnVuZ2VuIGluIGVpbmVyIERhdGVpIHp1IHNwZWljaGVybi4KKworICA1LiBCZXdlZ2UgZGVuIEN1cnNvciBhYnfkcnRzIHp1IExla3Rpb24gMS4zLgorIH5+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+fgorCQkgICAgIExla3Rpb24gMS4zOiBURVhUIEVESVRJRVJFTiAtIEzWU0NIRU4KKworCisJICoqIERy/GNrZSAgeCAgLCB1bSBkYXMgWmVpY2hlbiB1bnRlciBkZW0gQ3Vyc29yIHp1IGz2c2NoZW4uICoqCisKKyAgMS4gQmV3ZWdlIGRlbiBDdXJzb3IgenUgZGVyIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUgdW50ZW4uCisKKyAgMi4gVW0gZGllIEZlaGxlciB6dSBiZWhlYmVuLCBiZXdlZ2UgZGVuIEN1cnNvciwgYmlzIGVyIPxiZXIgZGVtIFplaWNoZW4gc3RlaHQsCisgICAgIGRhcyBnZWz2c2NodCB3ZXJkZW4gc29sbC4KKworICAzLiBEcvxja2UgZGllICB4ICBUYXN0ZSwgdW0gZGFzIHVuZXJ3/G5zY2h0ZSBaZWljaGVuIHp1IGz2c2NoZW4uCisKKyAgNC4gV2llZGVyaG9sZSBkaWUgU2Nocml0dGUgMiBiaXMgNCwgYmlzIGRlciBTYXR6IGtvcnJla3QgaXN0LgorCistLS0+IERpZSBLa3VoIHNwcmFuZ2cg/GJiZXJyIGRlZW4gTW9vbmQuCisKKyAgNS4gTnVuLCBkYSBkaWUgWmVpbGUga29ycmVrdCBpc3QsIGdlaGUgd2VpdGVyIHp1ciBMZWt0aW9uIDEuNC4KKworQW5tZXJrdW5nOiBX5GhyZW5kIER1IGR1cmNoIGRpZXNlbiBUdXRvciBnZWhzdCwgdmVyc3VjaGUgbmljaHQsIGF1c3dlbmRpZyB6dQorICAgIGxlcm5lbiwgbGVybmUgdmllbG1laHIgZHVyY2ggQW53ZW5kZW4uCisKKworfn5+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+CisJCSAgICAgTGVrdGlvbiAxLjQ6IFRFWFQgRURJVElFUkVOIC0gRUlORtxHRU4KKworCisJCSAgICAqKiAgRHL8Y2tlICBpICAsIHVtIFRleHQgZWluenVm/Gdlbi4gKioKKworICAxLiBCZXdlZ2UgZGVuIEN1cnNvciB6dXIgZXJzdGVuIHVudGVuIHN0ZWhlbmRlbiBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlLgorCisgIDIuIFVtIGRpZSBlcnN0ZSBaZWlsZSBtaXQgZGVyIHp3ZWl0ZW4gZ2xlaWNoenVtYWNoZW4sIGJld2VnZSBkZW4gQ3Vyc29yIGF1ZgorICAgICBkYXMgZXJzdGUgWmVpY2hlbiBOQUNIIGRlciBTdGVsbGUsIGFuIGRlciBUZXh0IGVpbmdlZvxndCB3ZXJkZW4gc29sbC4KKworICAzLiBEcvxja2UgIGkgIHVuZCBnaWIgZGllIG72dGlnZW4gRXJn5G56dW5nZW4gZWluLgorCisgIDQuIFdlbm4gamV3ZWlscyBlaW4gRmVobGVyIGJlc2VpdGlndCBpc3QsIGRy/GNrZSA8RVNDPiAsIHVtIHp1bSBOb3JtYWxtb2R1cworICAgICB6dXL8Y2t6dWtlaHJlbi4KKwkJIFdpZWRlcmhvbGUgU2Nocml0dGUgMiBiaXMgNCwgdW0gZGVuIFNhdHogenUga29ycmlnaWVyZW4uCisKKy0tLT4gSW4gZGllc2VyIGZ0IGV0d2FzIC4KKy0tLT4gSW4gZGllc2VyIFplaWxlIGZlaGx0IGV0d2FzIFRleHQuCisKKyAgNS4gV2VubiBEdSBEaWNoIG1pdCBkZW0gRWluZvxnZW4gdm9uIFRleHQgc2ljaGVyIGb8aGxzdCwgZ2VoZSB6dSBMZWt0aW9uIDEuNS4KKworCit+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+fn4KKwkJICAgICBMZWt0aW9uIDEuNTogVEVYVCBFRElUSUVSRU4gLSBBTkbcR0VOCisKKworCQkgICAgICoqIERy/GNrZSAgQSAgLCB1bSBUZXh0IGFuenVm/Gdlbi4gKioKKworICAxLiBCZXdlZ2UgZGVuIEN1cnNvciB6dXIgZXJzdGVuIHVudGVuIHN0ZWhlbmRlbiBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlLgorICAgICBEYWJlaSBpc3QgZ2xlaWNoZ/xsdGlnLCBhdWYgd2VsY2hlbSBaZWljaGVuIGRlciBaZWlsZSBkZXIgQ3Vyc29yIHN0ZWh0LgorCisgIDIuIERy/GNrZSAgQSAgdW5kIGdpYiBkaWUgZXJmb3JkZXJsaWNoZW4gRXJn5G56dW5nZW4gZWluLgorCisgIDMuIFdlbm4gZGFzIEFuZvxnZW4gYWJnZXNjaGxvc3NlbiBpc3QsIGRy/GNrZSA8RVNDPiwgdW0gaW4gZGVuIE5vcm1hbG1vZHVzCisgICAgIHp1cvxja3p1a2VocmVuLgorCisgIDQuIEJld2VnZSBkZW4gQ3Vyc29yIHp1ciB6d2VpdGVuIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUgdW5kIHdpZWRlcmhvbGUKKyAgICAgZGllIFNjaHJpdHRlIDIgdW5kIDMsIHVtIGRlbiBTYXR6IHp1IGF1c3p1YmVzc2Vybi4KKworLS0tPiBJbiBkaWVzZXIgWmVpbGUgZmVoCisgICAgIEluIGRpZXNlciBaZWlsZSBmZWhsdCBldHdhcyBUZXh0LgorLS0tPiBBdWNoIGhpZXIgc3RlaAorICAgICBBdWNoIGhpZXIgc3RlaHQgZXR3YXMgVW52b2xsc3TkbmRpZ2VzLgorCisgIDUuIFdlbm4gRHUgZGljaCBtaXQgZGVtIEFuZvxnZW4gdm9uIFRleHQgc2ljaGVyIGb8aGxzdCwgZ2VoZSB6dSBMZWt0aW9uIDEuNi4KK35+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+fgorCQkgICAgICAgTGVrdGlvbiAxLjY6IEVJTkUgREFURUkgRURJVElFUkVOCisKKwkJICoqIEJlbnV0emUgIDp3cSAgLCB1bSBlaW5lIERhdGVpIHp1IHNwZWljaGVybiB1bmQgVmltIHp1IHZlcmxhc3Nlbi4gKioKKworICAhISBIaW53ZWlzOiBCZXZvciBEdSBlaW5lbiBkZXIgdW50ZW4gYXVmZ2Vm/GhydGVuIFNjaHJpdHRlIGF1c2b8aHJzdCwgbGllcworICAgICBkaWVzZSBnZXNhbXRlIExla3Rpb24hIQorCisgIDEuIFZlcmxhc3NlIGRlbiBFZGl0b3Igc28gd2llIGluIExla3Rpb24gMS4yOiAgOnEhICAgICAgIAorCSAgIE9kZXIsIGZhbGxzIGR1IFp1Z3JpZmYgenUgZWluZW0gYW5kZXJlbiBUZXJtaW5hbCBoYXN0LCBm/GhyZSBkYXMgCisJCSBGb2xnZW5kZSBkb3J0IGF1cy4KKworICAyLiBHaWIgZGllc2VzIEtvbW1hbmRvIGluIGRpZSBFaW5nYWJlYXVmZm9yZGVydW5nIGVpbjogIHZpbSB0dXRvciA8RU5URVI+CisgICAgICd2aW0nIGlzdCBkZXIgQXVmcnVmIGRlcyBFZGl0b3JzLCAndHV0b3InIGlzdCBkaWUgenUgZWRpdGllcmVuZGUgRGF0ZWkuCisgICAgIEJlbnV0emUgZWluZSBEYXRlaSwgZGllIGdl5G5kZXJ0IHdlcmRlbiBkYXJmLgorCisgIDMuIEb8Z2UgVGV4dCBlaW4gb2RlciBs9nNjaGUgaWhuLCB3aWUgRHUgaW4gZGVuIHZvcmFuZ2VoZW5kZW4gTGVrdGlvbmVuIAorICAgICBnZWxlcm50IGhhc3QuCisKKyAgNC4gU3BlaWNoZXJlIGRpZSBnZeRuZGVydGUgRGF0ZWkgdW5kIHZlcmxhc3NlIFZpbSBtaXQ6ICA6d3EgIDxFTlRFUj4KKworICA1LiBGYWxscyBEdSBpbiBTY2hyaXR0IDEgZGVuIHZpbXR1dG9yIGJlZW5kZXQgaGFzdCwgc3RhcnRlIHZpbXR1dG9yIG5ldSB1bmQKKwkgICBiZXdlZ2UgZGljaCBhYnfkcnRzIGJpcyB6dXIgZm9sZ2VuZGVuIFp1c2FtbWVuZmFzc3VuZy4KKworICA2LiBOYWNoZGVtIER1IG9iaWdlIFNjaHJpdHRlIGdlbGVzZW4gdW5kIHZlcnN0YW5kZW4gaGFzdDogZvxocmUgc2llIGR1cmNoLgorfn5+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+CisJCQkgWlVTQU1NRU5GQVNTVU5HIFZPTiBMRUtUSU9OIDEKKworCisgIDEuIERlciBDdXJzb3Igd2lyZCBtaXQgZGVuIFBmZWlsdGFzdGVuIG9kZXIgZGVuIFRhc3RlbiBoamtsIGJld2VndC4KKwkgaCAobGlua3MpICAgICBqICh1bnRlbikgICAgIGsgKGF1ZnfkcnRzKSAgICBsIChyZWNodHMpCisKKyAgMi4gVW0gVmltIGF1cyBkZXIgRWluZ2FiZWF1ZmZvcmRlcnVuZyB6dSBzdGFydGVuLCB0aXBwZTogdmltIERBVEVJIDxFTlRFUj4KKworICAzLiBVbSBWaW0genUgdmVybGFzc2VuIHVuZCBhbGxlIMRuZGVydW5nZW4genUgdmVyd2VyZmVuLCB0aXBwZToKKwkJPEVTQz4gIDpxISAgPEVOVEVSPiAuCisKKyAgNC4gVW0gZGFzIFplaWNoZW4gdW50ZXIgZGVtIEN1cnNvciB6dSBs9nNjaGVuLCB0aXBwZTogIHgKKworICA1LiBVbSBUZXh0IGVpbnp1ZvxnZW4gb2RlciBhbnp1ZvxnZW4sIHRpcHBlOgorCSBpICAgRWluenVm/GdlbmRlbiBUZXh0IGVpbmdlYmVuICAgPEVTQz4gICAgRWluZvxnZW4gdm9yIGRlbSBDdXJzb3IKKwkgQSAgIEFuenVm/GdlbmRlbiBUZXh0IGVpbmdlYmVuICAgIDxFU0M+ICAgIEFuZvxnZW4gbmFjaCBkZW0gWmVpbGVuZW5kZQorCitBbm1lcmt1bmc6IERy/GNrZW4gdm9uIDxFU0M+IGJyaW5ndCBEaWNoIGluIGRlbiBOb3JtYWxtb2R1cyBvZGVyIGJyaWNodCBlaW4KKyAgICAgdW5nZXdvbGx0ZXMsIGVyc3QgdGVpbHdlaXNlIGVpbmdlZ2ViZW5lcyBLb21tYW5kbyBhYi4KKworICAgICBOdW4gZmFocmUgbWl0IExla3Rpb24gMiBmb3J0Lgorfn5+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+CisJCQkgIExla3Rpb24gMi4xOiBM1lNDSEtPTU1BTkRPUworCisKKwkJICAgKiogVGlwcGUgIGR3ICAsIHVtIGVpbiBXb3J0IHp1IGz2c2NoZW4uICoqCisKKyAgMS4gRHL8Y2tlICA8RVNDPiAgLCB1bSBzaWNoZXJ6dXN0ZWxsZW4sIGRhc3MgRHUgaW0gTm9ybWFsbW9kdXMgYmlzdC4KKworICAyLiBCZXdlZ2UgZGVuIEN1cnNvciB6dSBkZXIgbWl0IC0tLT4gbWFya2llcnRlbiBaZWlsZSB1bnRlbi4KKworICAzLiBCZXdlZ2UgZGVuIEN1cnNvciB6dW0gQW5mYW5nIGVpbmVzIFdvcnRlcywgZGFzIGdlbPZzY2h0IHdlcmRlbiBzb2xsLgorCisgIDQuIFRpcHBlICBkdyAgLCB1bSBkYXMgV29ydCB6dSBlbnRmZXJuZW4uCisKKyAgQW5tZXJrdW5nOiBEZXIgQnVjaHN0YWJlICBkICBlcnNjaGVpbnQgYXVmIGRlciB1bnRlcnN0ZW4gWmVpbGUgZGVzIFNjaGlybXMsCisgICAgICAgIHdlbm4gRHUgaWhuIGVpbmdpYnN0LiBWaW0gd2FydGV0IGRhcmF1ZiwgZGFzcyBEdSAgdyAgZWluZ2lic3QuIEZhbGxzIER1CisgICAgICAgIGVpbiBhbmRlcmVzIFplaWNoZW4gYWxzICBkICBzaWVoc3QsIGhhc3QgRHUgZXR3YXMgRmFsc2NoZXMgZ2V0aXBwdDsKKyAgICAgICAgZHL8Y2tlIDxFU0M+IHVuZCBiZWdpbm5lIG5vY2ggZWlubWFsLgorCistLS0+IEVpbmlnZSBX9nJ0ZXIgbHVzdGlnIGdlaPZyZW4gbmljaHQgUGFwaWVyIGluIGRpZXNlbiBTYXR6LgorCisgIDUuIFdpZWRlcmhvbGUgZGllIFNjaHJpdHRlIDMgdW5kIDQsIGJpcyBkZXIgU2F0eiBrb3JyZWt0IGlzdCB1bmQgZ2VoZQorICAgICB6dXIgTGVrdGlvbiAyLjIuCit+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+fn4KKwkJICAgICAgTGVrdGlvbiAyLjI6IFdFSVRFUkUgTNZTQ0hLT01NQU5ET1MKKworCisJICAgICoqIFRpcHBlICBkJCAgLCB1bSBiaXMgenVtIEVuZGUgZGVyIFplaWxlIHp1IGz2c2NoZW4uICoqCisKKyAgMS4gRHL8Y2tlIDxFU0M+ICwgdW0gc2ljaGVyenVzdGVsbGVuLCBkYXNzIER1IGltIE5vcm1hbG1vZHVzIGJpc3QuCisKKyAgMi4gQmV3ZWdlIGRlbiBDdXJzb3IgenUgZGVyIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUgdW50ZW4uCisKKyAgMy4gQmV3ZWdlIGRlbiBDdXJzb3IgenVtIEVuZGUgZGVyIGtvcnJla3RlbiBaZWlsZSAoTkFDSCBkZW0gZXJzdGVuIC4gKS4KKworICA0LiBUaXBwZSAgICBkJCAgICAsIHVtIGJpcyB6dW0gWmVpbGVuZW5kZSB6dSBs9nNjaGVuLgorCistLS0+IEplbWFuZCBoYXQgZGFzIEVuZGUgZGVyIFplaWxlIGRvcHBlbHQgZWluZ2VnZWJlbi4gZG9wcGVsdCBlaW5nZWdlYmVuLgorCisKKyAgNS4gR2VoZSB3ZWl0ZXIgenVyIExla3Rpb24gMi4zICwgdW0genUgdmVyc3RlaGVuLCB3YXMgaGllcmJlaSB2b3JnZWh0LgorCisKKworCisKK35+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+fgorCQkgTGVrdGlvbiAyLjM6INxCRVIgT1BFUkFUT1JFTiBVTkQgQkVXRUdVTkdTWtxHRQorCisKKyAgVmllbGUgS29tbWFuZG9zLCBkaWUgVGV4dCDkbmRlcm4sIHNldHplbiBzaWNoIGF1cyBlaW5lbSBPcGVyYXRvciB1bmQgZWluZXIKKyAgQmV3ZWd1bmcgenVzYW1tZW4uIERhcyBGb3JtYXQgZvxyIGVpbiBM9nNjaGtvbW1hbmRvIG1pdCBkZW0gTPZzY2hvcGVyYXRvciAgZAorICBsYXV0ZXQgd2llIGZvbGd0OgorCisgICAgZCAgQmV3ZWd1bmcKKworICB3b2JlaToKKyAgICBkICAgICAgICAtIGRlciBM9nNjaG9wZXJhdG9yCisgICAgQmV3ZWd1bmcgLSB3b3JhdWYgZGVyIEz2c2Nob3BlcmF0b3IgYW5nZXdhbmR0IHdpcmQgKHVudGVuIGF1ZmdlZvxocnQpLgorCisgIEVpbmUga2xlaW5lIEF1Zmxpc3R1bmcgdm9uIEJld2VndW5nZW46CisgICAgdyAtIGJpcyB6dW0gQmVnaW5uIGRlcyBu5GNoc3RlbiBXb3J0ZXMgT0hORSBkZXNzZW4gZXJzdGVzIFplaWNoZW4uCisgICAgZSAtIHp1bSBFbmRlIGRlcyBha3R1ZWxsZW4gV29ydGVzIE1JVCBkZXNzZW4gbGV0enRlbSBaZWljaGVuLgorICAgICQgLSB6dW0gRW5kZSBkZXIgWmVpbGUgTUlUIGRlbSBsZXR6dGVuIFplaWNoZW4uCisKKyAgRGVtZW50c3ByZWNoZW5kIGz2c2NodCBkaWUgRWluZ2FiZSB2b24gIGRlICB2b20gQ3Vyc29yIGFuIGJpcyB6dW0gV29ydGVuZGUuCisKK0FubWVya3VuZzogIERpZSBFaW5nYWJlIGxlZGlnbGljaCBkZXMgQmV3ZWd1bmdzdGVpbHMgaW0gTm9ybWFsbW9kdXMgYmV3ZWd0IGRlbgorICBDdXJzb3IgZW50c3ByZWNoZW5kLgorfn5+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+CisJTGVrdGlvbiAyLjQ6IEFOV0VORFVORyBFSU5FUyBaxEhMRVJTIEbcUiBFSU5FTiBCRVdFR1VOR1NTQ0hSSVRUCisKKworICAgKiogRGllIEVpbmdhYmUgZWluZXIgWmFobCB2b3IgZWluZW0gQmV3ZWd1bmdzc2Nocml0dCB3aWVkZXJob2x0IGRpZXNlbi4gKioKKworICAxLiBCZXdlZ2UgZGVuIEN1cnNvciB6dW0gQmVnaW5uIGRlciBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlIHVudGVuLgorCisgIDIuIFRpcHBlICAydyAgLCB1bSBkZW4gQ3Vyc29yIHp3ZWkgV/ZydGVyIHZvcnfkcnRzIHp1IGJld2VnZW4uCisKKyAgMy4gVGlwcGUgIDNlICAsIHVtIGRlbiBDdXJzb3IgenVtIEVuZGUgZGVzIGRyaXR0ZW4gV29ydGVzIHp1IGJld2VnZW4uCisKKyAgNC4gVGlwcGUgIDAgIChOdWxsKSAsIHVtIHp1bSBBbmZhbmcgZGVyIFplaWxlIHp1IGdlbGFuZ2VuLgorCisgIDUuIFdpZWRlcmhvbGUgU2Nocml0dGUgMiB1bmQgMyBtaXQgdmVyc2NoaWVkZW5lbiBOdW1tZXJuLgorCisgIC0tLT4gRGllcyBpc3QgbnVyIGVpbmUgWmVpbGUgYXVzIFf2cnRlcm4sIHVtIHNpY2ggZGFyaW4gaGVydW16dWJld2VnZW4uCisKKyAgNi4gR2VoZSB3ZWl0ZXIgenUgTGVrdGlvbiAyLjUuCisKKworCisKK35+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+fgorCSBMZWt0aW9uIDIuNTogQU5XRU5EVU5HIEVJTkVTIFrESExFUlMgRtxSIE1FSFJFUkUgTNZTQ0hWT1JHxE5HRQorCisKKyAgICoqIERpZSBFaW5nYWJlIGVpbmVyIFphaGwgbWl0IGVpbmVtIE9wZXJhdG9yIHdpZWRlcmhvbHQgZGllc2VuIG1laHJmYWNoLiAqKgorCisgIEluIGRlciBLb21iaW5hdGlvbiBhdXMgTPZzY2hvcGVyYXRvciB1bmQgQmV3ZWd1bmdzc2Nocml0dCAoc2llaGUgb2JlbikgCisgIHN0ZWxsdCBtYW4sIHVtIG1laHIgenUgbPZzY2hlbiBkZW0gU2Nocml0dCBlaW5lbiBa5GhsZXIgdm9yYW46CisJIGQgIE51bW1lciAgQmV3ZWd1bmdzc2Nocml0dAorCisgIDEuIEJld2VnZSBkZW4gQ3Vyc29yIHp1bSBlcnN0ZW4gV29ydCBpbiBHUk9TU0JVQ0hTVEFCRU4gaW4gZGVyIG1pdCAtLS0+CisgICAgIG1hcmtpZXJlbiBaZWlsZS4KKworICAyLiBUaXBwZSAgZDJ3ICAsIHVtIGRpZSB6d2VpIFf2cnRlciBpbiBHUk9TU0JVQ0hTVEFCRU4genUgbPZzY2hlbi4KKworICAzLiBXaWVkZXJob2xlIFNjaHJpdHRlIDEgdW5kICAyIG1pdCBlaW5lbSBhbmRlcmVuIFrkaGxlciwgdW0gZGllIGRhcmF1ZmZvbC0KKyAgICAgZ2VuZGVuIFf2cnRlciBpbiBHUk9TU0JVQ0hTVEFCRU4gbWl0IGVpbmVtIGVpbnppZ2VuIEtvbW1hbmRvIHp1IGz2c2NoZW4uCisKKy0tLT4gIERpZXNlIEFCQyBERSBaZWlsZSBGR0hJIEpLIExNTiBPUCBtaXQgV/ZydGVybiBpc3QgUSBSUyBUVVYgYmVyZWluaWd0LgorCisKKworfn5+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+CisJCQlMZWt0aW9uIDIuNjogQVJCRUlURU4gQVVGIFpFSUxFTgorCisKKwkgICAgICAgKiogVGlwcGUgIGRkICAsIHVtIGVpbmUgZ2FuemUgWmVpbGUgenUgbPZzY2hlbi4gKioKKworICBXZWdlbiBkZXIgSOR1Zmlna2VpdCwgZGFzcyBtYW4gZ2FuemUgWmVpbGVuIGz2c2NodCwga2FtZW4gZGllIEVudHdpY2tsZXIgdm9uCisgIFZpIGRhcmF1ZiwgZGFzcyBlcyBsZWljaHRlciB35HJlLCBlaW5mYWNoIHp3ZWkgZCdzIGVpbnp1Z2ViZW4sIHVtIGVpbmUgWmVpbGUKKyAgenUgbPZzY2hlbi4KKworICAxLiBCZXdlZ2UgZGVuIEN1cnNvciB6dXIgendlaXRlbiBaZWlsZSBpbiBkZXIgdW50ZW4gc3RlaGVuZGVuIFJlZGV3ZW5kdW5nLgorICAyLiBUaXBwZSAgZGQgICwgdW0gZGllIFplaWxlIHp1IGz2c2NoZW4uCisgIDMuIE51biBiZXdlZ2UgRGljaCB6dXIgdmllcnRlbiBaZWlsZS4KKyAgNC4gVGlwcGUgIDJkZCAgLCB1bSB6d2VpIFplaWxlbiB6dSBs9nNjaGVuLgorCistLS0+ICAxKSAgUm9zZW4gc2luZCByb3QsCistLS0+ICAyKSAgTWF0c2NoIGlzdCBsdXN0aWcsCistLS0+ICAzKSAgVmVpbGNoZW4gc2luZCBibGF1LAorLS0tPiAgNCkgIEljaCBoYWJlIGVpbiBBdXRvLAorLS0tPiAgNSkgIERpZSBVaHIgc2FndCBkaWUgWmVpdCwKKy0tLT4gIDYpICBadWNrZXIgaXN0IHP83ywKKy0tLT4gIDcpICBTbyB3aWUgRHUgYXVjaC4KKworfn5+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+CisJCSAgICAgTGVrdGlvbiAyLjc6IFLcQ0tHxE5HSUcgTUFDSEVOIChVTkRPKQorCisKKwkgKiogVGlwcGUgdSAsIHVtIGRpZSBsZXR6dGVuIEtvbW1hbmRvcyBy/GNrZ+RuZ2lnIHp1IG1hY2hlbiAqKgorCSAgICAgICoqIG9kZXIgVSAsIHVtIGVpbmUgZ2FuemUgWmVpbGUgd2llZGVyaGVyenVzdGVsbGVuLiAqKgorCisgIDEuIEJld2VnZSBkZW4gQ3Vyc29yIHp1IGRlciBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlIHVudGVuCisgICAgIHVuZCBzZXR6ZSBpaG4gYXVmIGRlbiBlcnN0ZW4gRmVobGVyLgorICAyLiBUaXBwZSAgeCAgLCB1bSBkYXMgZXJzdGUgdW5lcnf8bnNjaHRlIFplaWNoZW4genUgbPZzY2hlbi4KKyAgMy4gTnVuIHRpcHBlICB1ICAsIHVtIGRhcyBzb2ViZW4gYXVzZ2Vm/GhydGUgS29tbWFuZG8gcvxja2fkbmdpZyB6dSBtYWNoZW4uCisgIDQuIEpldHp0IGJlaGViZSBhbGxlIEZlaGxlciBhdWYgZGVyIFplaWxlIG1pdCBIaWxmZSBkZXMgeCAgS29tbWFuZG9zLgorICA1LiBOdW4gdGlwcGUgZWluIGdyb99lcyAgVSAsIHVtIGRpZSBaZWlsZSBpbiBpaHJlbiBVcnNwcnVuZ3N6dXN0YW5kCisgICAgIHdpZWRlcmhlcnp1c3RlbGxlbi4KKyAgNi4gTnVuIHRpcHBlICB1ICBlaW5pZ2UgTWFsZSwgdW0gZGFzIFUgdW5kIGRpZSB2b3JoZXJnZWhlbmRlbiBLb21tYW5kb3MKKyAgICAgcvxja2fkbmdpZyB6dSBtYWNoZW4uCisgIDcuIE51biB0aXBwZSBDVFJMLVIgKGhhbHRlIENUUkwgZ2Vkcvxja3QgdW5kIGRy/GNrZSBSKSBtZWhyZXJlIE1hbGUsIHVtIGRpZQorICAgICBLb21tYW5kb3Mgd2llZGVyaGVyenVzdGVsbGVuIChkaWUgUvxja2fkbmdpZ21hY2h1bmdlbiBy/GNrZ+RuZ2lnIG1hY2hlbikuCisKKy0tLT4gQmVlaGViZSBkaWUgRmVobGxlciBkaWVzc2VyIFplaWxlIHVuZCBzdHRlbGxlIHNpZSBtaXR0ICd1bmRvJyB3aWVkZXIgaGVyLgorCisgIDguIERpZXMgc2luZCBzZWhyIG78dHpsaWNoZSBLb21tYW5kb3MuICBOdW4gZ2VoZSB3ZWl0ZXIgenVyIFp1c2FtbWVuZmFzc3VuZyAKKyAgICAgdm9uIExla3Rpb24gMi4KK35+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+fgorCQkJIFpVU0FNTUVORkFTU1VORyBWT04gTEVLVElPTiAyCisKKworICAxLiBVbSB2b20gQ3Vyc29yIGJpcyB6dW0gbuRjaHN0ZW4gV29ydCB6dSBs9nNjaGVuLCB0aXBwZTogICAgZHcKKyAgMi4gVW0gdm9tIEN1cnNvciBiaXMgenVtIEVuZGUgZWluZXIgWmVpbGUgenUgbPZzY2hlbiwgdGlwcGU6ICAgICBkJAorICAzLiBVbSBlaW5lIGdhbnplIFplaWxlIHp1IGz2c2NoZW4sIHRpcHBlOiAgICBkZAorCisgIDQuIFVtIGVpbmUgQmV3ZWd1bmcgenUgd2llZGVyaG9sZW4sIHN0ZWxsZSBlaW5lIE51bW1lciB2b3JhbjogICAydworICA1LiBEYXMgRm9ybWF0IGb8ciBlaW4gxG5kZXJ1bmdza29tbWFuZG8gaXN0OgorICAgICAgICAgICAgICAgT3BlcmF0b3IgICBbQW56YWhsXSAgIEJld2VndW5nc3NjaHJpdHQKKyAgICAgd29iZWk6CisgICAgICAgT3BlcmF0b3IgLSBnaWJ0IGFuLCB3YXMgZ2V0YW4gd2VyZGVuIHNvbGwsIHp1bSBCZWlzcGllbCAgZCAgZvxyIGRlbGV0ZQorICAgICAgIFtBbnphaGxdIC0gZWluIG9wdGlvbmFsZXIgWuRobGVyLCB1bSBkZW4gQmV3ZWd1bmdzc2Nocml0dCB6dSB3aWVkZXJob2xlbgorICAgICAgIEJld2VndW5nc3NjaHJpdHQgLSBCZXdlZ3VuZyD8YmVyIGRlbiB6dSDkbmRlcm5kZW4gVGV4dCwgd2llCisJCSAgdyAoV29ydCksICQgKHp1bSBFbmRlIGRlciBaZWlsZSksIGV0Yy4KKworICA2LiBVbSBEaWNoIHp1bSBBbmZhbmcgZGVyIFplaWxlIHp1IGJlZ2ViZW4sIGJlbnV0emUgZGllIE51bGw6ICAwCisKKyAgNy4gVW0gdm9yaGVyaWdlIEFrdGlvbmVuIHL8Y2tn5G5naWcgenUgbWFjaGVuLCB0aXBwZToJCXUgKGtsZWluZXMgdSkKKyAgICAgVW0gYWxsZSDEbmRlcnVuZ2VuIGF1ZiBlaW5lciBaZWlsZSBy/GNrZ+RuZ2lnIHp1IG1hY2hlbjogICBVIChncm/fZXMgVSkKKyAgICAgVW0gZGllIFL8Y2tn5G5naWdtYWNodW5nZW4gcvxja2fkbmdpZyB6dSBtYWNoZW4sIHRpcHBlOiAgICBDVFJMLVIKKworfn5+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+CisJCQkgICBMZWt0aW9uIDMuMTogQU5G3EdFTiAoUFVUKQorCisKKyAgICAgKiogVGlwcGUgIHAgICwgdW0gdm9yaGVyIGdlbPZzY2h0ZW4gVGV4dCBuYWNoIGRlbSBDdXJzb3IgYW56dWb8Z2VuLiAqKgorCisgIDEuIEJld2VnZSBkZW4gQ3Vyc29yIHp1ciBlcnN0ZW4gdW50ZW4gc3RlaGVuZGVuIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUuCisKKyAgMi4gVGlwcGUgIGRkICAsIHVtIGRpZSBaZWlsZSB6dSBs9nNjaGVuIHVuZCBzaWUgaW4gZWluZW0gVmltLVJlZ2lzdGVyIHp1CisgICAgIHNwZWljaGVybi4KKworICAzLiBCZXdlZ2UgZGVuIEN1cnNvciB6dXIgWmVpbGUgYyksINxCRVIgZGVyamVuaWdlbiwgd28gZGllIGdlbPZzY2h0ZSBaZWlsZQorICAgICBwbGF0emllcnQgd2VyZGVuIHNvbGwuCisKKyAgNC4gIFRpcHBlICAgcCAgICwgdW0gZGllIFplaWxlIHVudGVyaGFsYiBkZXMgQ3Vyc29ycyB6dSBwbGF0emllcmVuLgorCisgIDUuIFdpZWRlcmhvbGUgZGllIFNjaHJpdHRlIDIgYmlzIDQsIHVtIGFsbGUgWmVpbGVuIGluIGRpZSByaWNodGlnZQorICAgICBSZWloZW5mb2xnZSB6dSBicmluZ2VuLgorCistLS0+IGQpIEthbm5zdCBEdSBkYXMgYXVjaD8KKy0tLT4gYikgVmVpbGNoZW4gc2luZCBibGF1LAorLS0tPiBjKSBJbnRlbGxpZ2VueiBpc3QgbGVybmJhciwKKy0tLT4gYSkgUm9zZW4gc2luZCByb3QsCit+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+fn4KKwkJCUxla3Rpb24gMy4yOiBFUlNFVFpFTiAoUkVQTEFDRSkKKworCisgICAqKiBUaXBwZSAgcnggICwgdW0gZGFzIFplaWNoZW4gdW50ZXIgZGVtIEN1cnNvciBkdXJjaCAgeCB6dSBlcnNldHplbi4gKioKKworICAxLiBCZXdlZ2UgZGVuIEN1cnNvciB6dXIgZXJzdGVuIHVudGVuIHN0ZWhlbmRlbiBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlLgorCisgIDIuIEJld2VnZSBkZW4gQ3Vyc29yLCBiaXMgZXIgc2ljaCBhdWYgZGVtIGVyc3RlbiBGZWhsZXIgYmVmaW5kZXQuCisKKyAgMy4gVGlwcGUgIHIgIHVuZCBhbnNjaGxpZd9lbmQgZGFzIFplaWNoZW4sIHdlbGNoZXMgZG9ydCBzdGVoZW4gc29sbHRlLgorCisgIDQuIFdpZWRlcmhvbGUgU2Nocml0dGUgMiB1bmQgMywgYmlzIGRpZSBlcnN0ZSBaZWlsZSBnbGVpY2ggZGVyIHp3ZWl0ZW4gaXN0LgorCistLS0+ICBBbGYgZGllc2UgWmVpdGUgZWluZ2Vnb2JlbiB3dXJkZSwgd3VyZGVuIGVpbmlrZSBmYWxzY2hlIFRhc3RlbiBnZWxpcHB0IQorLS0tPiAgQWxzIGRpZXNlIFplaWxlIGVpbmdlZ2ViZW4gd3VyZGUsIHd1cmRlbiBlaW5pZ2UgZmFsc2NoZSBUYXN0ZW4gZ2V0aXBwdCEKKworICA1LiBOdW4gZmFocmUgZm9ydCBtaXQgTGVrdGlvbiAzLjIuCisKK0FubWVya3VuZzogRXJpbm5lcmUgRGljaCBkYXJhbiwgZGFzcyBEdSBkdXJjaCBBbndlbmRlbiBsZXJuZW4gc29sbHRlc3QsIG5pY2h0IAorICAgICBkdXJjaCBBdXN3ZW5kaWdsZXJuZW4uCisKKworfn5+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+CisJCQkgIExla3Rpb24gMy4zOiDETkRFUk4gKENIQU5HRSkKKworCisgICAgICAqKiBVbSBlaW5lIMRuZGVydW5nIGJpcyB6dW0gV29ydGVuZGUgZHVyY2h6dWb8aHJlbiwgdGlwcGUgIGNlIC4gKioKKworICAxLiBCZXdlZ2UgZGVuIEN1cnNvciB6dXIgZXJzdGVuIHVudGVuIHN0ZWhlbmRlbiBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlLgorCisgIDIuIFBsYXR6aWVyZSBkZW4gQ3Vyc29yIGF1ZiBkYXMgIHMgIHZvbiBXc3R3ci4KKworICAzLiBUaXBwZSAgY2UgIHVuZCBkaWUgV29ydGtvcnJla3R1ciBlaW4gKGluIGRpZXNlbSBGYWxsIHRpcHBlICD2cnRlciApLgorCisgIDQuIERy/GNrZSA8RVNDPiB1bmQgYmV3ZWdlIGRlbiBDdXJzb3IgenVtIG7kY2hzdGVuIHp1IORuZGVybmRlbiBaZWljaGVuLgorCisgIDUuIFdpZWRlcmhvbGUgU2Nocml0dGUgMyB1bmQgNCBiaXMgZGVyIGVyc3RlIFNhdHogZ2xlaWNoIGRlbSB6d2VpdGVuIGlzdC4KKworLS0tPiBFaW5pZ2UgV3N0d3IgZGllc2VyIFpsYXd3IGxhc2RqbGFmIG1pdCBkZW0gxG5kZXJuLU9wZXJhdG9yIGdhYWF1dSB3ZXJkZW4uCistLS0+IEVpbmlnZSBX9nJ0ZXIgZGllc2VyIFplaWxlIHNvbGxlbiBtaXQgZGVtIMRuZGVybi1PcGVyYXRvciBnZeRuZGVydCB3ZXJkZW4uCisKK0JlYWNodGUsIGRhc3MgIGNlICBkYXMgV29ydCBs9nNjaHQgdW5kIERpY2ggaW4gZGVuIEVpbmdhYmVtb2R1cyB2ZXJzZXR6dC4KKworCisKK35+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+fgorCQkgICAgIExla3Rpb24gMy40OiBNRUhSIMROREVSVU5HRU4gTUlUVEVMUyBjCisKKworICAgICAqKiBEYXMgY2hhbmdlLUtvbW1hbmRvIGFyYmVpdGV0IG1pdCBkZW5zZWxiZW4gQmV3ZWd1bmdlbiB3aWUgZGVsZXRlLiAgKioKKworICAxLiBEZXIgY2hhbmdlIE9wZXJhdG9yIGFyYmVpdGV0IGluIGdsZWljaGVyIFdlaXNlIHdpZSBkZWxldGUuIERhcyBGb3JtYXQgaXN0OgorCisgICAgICAgICBjICAgIFtBbnphaGxdICBCZXdlZ3VuZ3NzY2hyaXR0CisKKyAgMi4gRGllIEJld2VndW5nc3NjaHJpdHRlIHNpbmQgZGllIGdsZWljaGVuICwgc28gd2llICB3ICAoV29ydCkgdW5kICAkCisgICAgIChaZWlsZW5lbmRlKS4KKworICAzLiBCZXdlZ2UgRGljaCB6dXIgZXJzdGVuIHVudGVuIHN0ZWhlbmRlbiBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlLgorCisgIDQuIEJld2VnZSBkZW4gQ3Vyc29yIHp1bSBlcnN0ZW4gRmVobGVyLgorCisgIDUuIFRpcHBlICBjJCAgLCBnaWIgZGVuIFJlc3QgZGVyIFplaWxlIHdpZSBpbiBkZXIgendlaXRlbiBlaW4sIGRy/GNrZSA8RVNDPiAuCisKKy0tLT4gRGFzIEVuZGUgZGllc2VyIFplaWxlIHNvbGwgYW4gZGllIHp3ZWl0ZSBaZWlsZSBhbmdlZ2xpY2hlbiB3ZXJkZW4uCistLS0+IERhcyBFbmRlIGRpZXNlciBaZWlsZSBzb2xsIG1pdCBkZW0gIGMkICBLb21tYW5kbyBrb3JyaWdpZXJ0IHdlcmRlbi4KKworQW5tZXJrdW5nOiBEdSBrYW5uc3QgZGllIFL8Y2t0YXN0ZSBiZW51dHplbiwgdW0gVGlwcGZlaGxlciB6dSBrb3JyaWdpZXJlbi4KK35+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+fgorCQkJIFpVU0FNTUVORkFTU1VORyBWT04gTEVLVElPTiAzCisKKworICAxLiBVbSBlaW5lbiB2b3JoZXIgZ2Vs9nNjaHRlbiBUZXh0IGFuenVm/GdlbiwgdGlwcGUgICBwIC4gRGllcyBm/Gd0IGRlbgorICAgICBnZWz2c2NodGVuIFRleHQgTkFDSCBkZW0gQ3Vyc29yIGFuICh3ZW5uIGVpbmUgZ2FuemUgWmVpbGUgZ2Vs9nNjaHQgd3VyZGUsCisgICAgIHdpcmQgZGllc2UgaW4gZGllIFplaWxlIHVudGVyIGRlbSBDdXJzb3IgZWluZ2Vm/Gd0KS4KKworICAyLiBVbSBkYXMgWmVpY2hlbiB1bnRlciBkZW0gQ3Vyc29yIHp1IGVyc2V0emVuLCB0aXBwZSAgIHIgICB1bmQgZGFuYWNoIGRhcyAKKyAgICAgYW4gZGllc2VyIFN0ZWxsZSBnZXdvbGx0ZSBaZWljaGVuLgorCisgIDMuIERlciDEbmRlcnVuZ3MtIChjaGFuZ2UpIE9wZXJhdG9yIGVybGF1YnQsIHZvbSBDdXJzb3IgYmlzIHp1bSBFbmRlIGRlcworICAgICBCZXdlZ3VuZ3NzY2hyaXR0ZXMgenUg5G5kZXJuLiBUaXBwZSAgY2UgICwgdW0gZWluZSDEbmRlcnVuZyB2b20gQ3Vyc29yIGJpcworICAgICB6dW0gRW5kZSBkZXMgV29ydGVzIHZvcnp1bmVobWVuOyAgYyQgIGJpcyB6dW0gRW5kZSBlaW5lciBaZWlsZS4KKworICA0LiBEYXMgRm9ybWF0IGb8ciBjaGFuZ2UgaXN0OgorCisJIGMgICBbQW56YWhsXSAgQmV3ZWd1bmdzc2Nocml0dAorCisgIE51biBmYWhyZSBtaXQgZGVyIG7kY2hzdGVuIExla3Rpb24gZm9ydC4KKworCisKK35+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+fgorCQkgIExla3Rpb24gNC4xOiBDVVJTT1JQT1NJVElPTiBVTkQgREFURUlTVEFUVVMKKworICoqIFRpcHBlIENUUkwtRyAsIHVtIGRlaW5lIERhdGVpcG9zaXRpb24gc293aWUgZGVuIERhdGVpc3RhdHVzIGFuenV6ZWlnZW4uICoqCisgICAgICoqIFRpcHBlIEcgLCB1bSBEaWNoIHp1IGVpbmVyIFplaWxlIGluIGRlciBEYXRlaSB6dSBiZWdlYmVuLiAqKgorCitBbm1lcmt1bmc6IExpZXMgZGllc2UgZ2VzYW10ZSBMZWt0aW9uLCBiZXZvciBEdSBpcmdlbmRlaW5lbiBTY2hyaXR0IGF1c2b8aHJzdCEhCisKKyAgMS4gSGFsdGUgZGllIEN0cmwgVGFzdGUgdW50ZW4gdW5kIGRy/GNrZSAgZyAuIERpZXMgbmVubmVuIHdpciBDVFJMLUcuCisgICAgIEVpbmUgU3RhdHVzbWVsZHVuZyBhbSBGdd8gZGVyIFNlaXRlIGVyc2NoZWludCBtaXQgZGVtIERhdGVpbmFtZW4gdW5kIGRlcgorICAgICBQb3NpdGlvbiBpbm5lcmhhbGIgZGVyIERhdGVpLiBNZXJrZSBEaXIgZGllIFplaWxlbm51bW1lciBm/HIgU2Nocml0dCAzLgorCitBbm1lcmt1bmc6IE32Z2xpY2hlcndlaXNlIHNpZWhzdCBEdSBkaWUgQ3Vyc29ycG9zaXRpb24gaW4gZGVyIHVudGVyZW4gcmVjaHRlbgorICAgICAgQmlsZHNjaGlybWVja2UuIERpZXMgaXN0IEF1c3dpcmt1bmcgZGVyICdydWxlcicgT3B0aW9uIAorCSAgKHNpZWhlIDpoZWxwICdydWxlcicpCisKKyAgMi4gRHL8Y2tlICBHICAsIHVtIERpY2ggenVtIEVuZGUgZGVyIERhdGVpIHp1IGJlZ2ViZW4uCisgICAgIFRpcHBlICBnZyAgLCB1bSBEaWNoIHp1bSBBbmZhbmcgZGVyIERhdGVpIHp1IGJlZ2ViZW4uCisKKyAgMy4gR2liIGRpZSBOdW1tZXIgZGVyIFplaWxlIGVpbiwgYXVmIGRlciBEdSB2b3JoZXIgd2Fyc3QsIGdlZm9sZ3Qgdm9uICBHIC4KKyAgICAgRGllcyBicmluZ3QgRGljaCB6dXL8Y2sgenUgZGVyIFplaWxlLCBhdWYgZGVyIER1IGdlc3RhbmRlbiBoYXN0LCBhbHMgRHUKKyAgICAgZGFzIGVyc3RlIE1hbCBDVFJMLUcgZ2Vkcvxja3QgaGFzdC4KKworICA0LiBXZW5uIER1IERpY2ggc2ljaGVyIGdlbnVnIGb8aGxzdCwgZvxocmUgZGllIFNjaHJpdHRlIDEgYmlzIDMgYXVzLgorfn5+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+CisJCSAgICAgICBMZWt0aW9uIDQuMjogREFTIFNVQ0hFTiAtIEtPTU1BTkRPCisKKworICAqKiBUaXBwZSAgLyAgZ2Vmb2xndCB2b24gZWluZW0gQXVzZHJ1Y2ssIHVtIG5hY2ggZGVtIEF1c2RydWNrIHp1IHN1Y2hlbi4gKioKKworICAxLiBJbSBOb3JtYWxtb2R1cywgdGlwcGUgZGFzICAvICBaZWljaGVuLiAgQmVhY2h0ZSwgZGFzcyBkYXMgIC8gdW5kIGRlcgorICAgICBDdXJzb3IgYW0gRnXfIGRlcyBTY2hpcm1zIGVyc2NoZWluZW4sIHNvIHdpZSBiZWltIDoJS29tbWFuZG8uCisKKyAgMi4gTnVuIHRpcHBlICdGZWhobGVyJyA8RU5URVI+LiBEaWVzIGlzdCBkYXMgV29ydCwgbmFjaCBkZW0gRHUgc3VjaGVuIHdpbGxzdC4KKworICAzLiBVbSBuYWNoIGRlbXNlbGJlbiBBdXNkcnVjayB3ZWl0ZXJ6dXN1Y2hlbiwgdGlwcGUgZWluZmFjaCAgbiAoZvxyIG5leHQpLgorICAgICBVbSBuYWNoIGRlbXNlbGJlbiBBdXNkcnVjayBpbiBkZXIgR2VnZW5yaWNodHVuZyB6dSBzdWNoZW4sIHRpcHBlICBOIC4KKworICA0LiBVbSBuYWNoIGVpbmVtIEF1c2RydWNrIHL8Y2t35HJ0cyB6dSBzdWNoZW4gLCBiZW51dHplICA/ICBzdGF0dCAgLyAuCisKKyAgNS4gVW0gZGFoaW4genVy/GNrenVrZWhyZW4sIHZvbiB3byBEdSBnZWtvbW1lbiBiaXN0LCBkcvxja2UgQ1RSTC1PIChIYWx0ZQorICAgICBDdHJsIHVudGVuIHVuZCBkcvxja2UgZGVuIEJ1Y2hzdGFiZW4gbykuIFdpZWRlcmhvbGUgZGllcywgdW0gbm9jaCB3ZWl0ZXIKKyAgICAgenVy/GNrenVnZWhlbi4gIENUUkwtSSBnZWh0IHZvcnfkcnRzLgorCistLS0+ICBGZWhsZXIgc2NocmVpYnQgc2ljaCBuaWNodCAiRmVoaGxlciI7IEZlaGhsZXIgaXN0IGVpbiBGZWhsZXIKK0FubWVya3VuZzogV2VubiBkaWUgU3VjaGUgZGFzIERhdGVpZW5kZSBlcnJlaWNodCBoYXQsIHdpcmQgc2llIGFtIEFuZmFuZworICAgICAgICBmb3J0Z2VzZXR6dCwgZXMgc2VpIGRlbm4sIGRpZSAnd3JhcHNjYW4nIE9wdGlvbiB3dXJkZSBhYmdlc2NoYWx0ZXQuCit+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+fn4KKwkJICAgICBMZWt0aW9uIDQuMzogUEFTU0VOREUgS0xBTU1FUk4gRklOREVOCisKKworICAgKiogVGlwcGUgICUgLCB1bSBlaW5lIGdlZ2Vu/GJlcmxpZWdlbmRlbiBLbGFtbWVyICksXSwgb2RlciB9IHp1IGZpbmRlbi4gKioKKworICAxLiBQbGF0emllcmUgZGVuIEN1cnNvciBhdWYgaXJnZW5kZWluZW0gZGVyIFplaWNoZW4gKCwgWywgb2RlciB7IGluIGRlciB1bnRlbgorICAgICBzdGVoZW5kZW4gWmVpbGUsIGRpZSBtaXQgLS0tPiBtYXJraWVydCBpc3QuCisKKyAgMi4gTnVuIHRpcHBlIGRhcyAgJSAgWmVpY2hlbi4KKworICAzLiBEZXIgQ3Vyc29yIGJld2VndCBzaWNoIHp1ciBwYXNzZW5kZW4gZ2VnZW78YmVybGllZ2VuZGVuIEtsYW1tZXIuCisKKyAgNC4gVGlwcGUgICUgLCB1bSBkZW4gQ3Vyc29yIHp1ciBwYXNzZW5kZW4gYW5kZXJlbiBLbGFtbWVyIHp1IGJld2VnZW4uCisKKyAgNS4gU2V0emUgZGVuIEN1cnNvciBhdWYgZWluIGFuZGVyZXMgKCwpLFssXSx7IG9kZXIgfSB1bmQgcHJvYmllcmUgICUgIGF1cy4KKworLS0tPiBEaWVzICggaXN0IGVpbmUgVGVzdHplaWxlICggbWl0IFsgdmVyc2NoaWVkZW5lbiBdIHsgS2xhbW1lcm4gfSAgZGFyaW4uICkpCisKK0FubWVya3VuZzogRGllc2UgRnVua3Rpb25hbGl05HQgaXN0IHNlaHIgbvx0emxpY2ggYmVpIGRlciBGZWhsZXJzdWNoZSBpbiBlaW5lbQorICAgICBQcm9ncmFtbXRleHQsIGluIGRlbSBwYXNzZW5kZSBLbGFtbWVybiBmZWhsZW4hCisKKworfn5+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+CisJCUxla3Rpb24gNC40OiBEQVMgRVJTRVRaVU5HU0tPTU1BTkRPIChTVUJTVElUVVRFKQorCisKKwkgKiogVGlwcGUgOnMvYWx0L25ldS9nICAsIHVtICdhbHQnIGR1cmNoICduZXUnIHp1IGVyc2V0emVuLiAqKgorCisgIDEuIEJld2VnZSBkZW4gQ3Vyc29yIHp1IGRlciB1bnRlbiBzdGVoZW5kZW4gbWl0IC0tLT4gbWFya2llcnRlbiBaZWlsZS4KKworICAyLiBUaXBwZSAgOnMvZGllZS9kaWUgPEVOVEVSPiAuICBCZWFjaHRlLCBkYXNzIGRlciBCZWZlaGwgbnVyIGRhcyBlcnN0ZQorICAgICBWb3Jrb21tZW4gdm9uICJkaWVlIiBlcnNldHp0LgorCisgIDMuIE51biB0aXBwZSAgIDpzL2RpZWUvZGllL2cgLiBEYXMgWnVm/GdlbiBkZXMgRmxhZ3MgIGcgICBiZWRldXRldCwgZWluZQorICAgICBnbG9iYWxlIEVyc2V0enVuZyD8YmVyIGRpZSBaZWlsZSBkdXJjaHp1ZvxocmVuLCBkaWVzIGVyc2V0enQgYWxsZSAKKwkgVm9ya29tbWVuIHZvbiAiZGllZSIgYXVmIGRlciBaZWlsZS4KKworLS0tPiBkaWVlIHNjaPZuc3RlIFplaXQsIHVtIGRpZWUgQmx1bWVuIGFuenVzY2hhdWVuLCBpc3QgZGllZSBGcvxobGluZ3N6ZWl0LgorCisgIDQuIFVtIGFsbGUgVm9ya29tbWVuIGVpbmVyIFplaWNoZW5rZXR0ZSBpbm5lcmhhbGIgendlaWVyIFplaWxlbiB6dSDkbmRlcm4sCisgICAgIHRpcHBlICA6Iywjcy9hbHQvbmV1L2cgIHdvYmVpICMsIyBkaWUgWmVpbGVubnVtbWVybiBkZXMgQmVyZWljaGVzIHNpbmQsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGRlbSBkaWUgRXJzZXR6dW5nIGR1cmNoZ2Vm/GhydCB3ZXJkZW4gc29sbC4KKyAgICAgVGlwcGUgIDolcy9hbHQvbmV1L2cgICAgdW0gYWxsZSBWb3Jrb21tZW4gaW4gZGVyIGdlc2FtdGVuIERhdGVpIHp1IORuZGVybi4KKyAgICAgVGlwcGUgIDolcy9hbHQvbmV1L2djICAgdW0gYWxsZSBWb3Jrb21tZW4gaW4gZGVyIGdlc2FtdGVuIERhdGVpIHp1IGZpbmRlbgorICAgICAgICAgICAgICAgICAgICAgbWl0IGVpbmVtIEZyYWdlZGlhbG9nLCBvYiBlcnNldHp0IHdlcmRlbiBzb2xsIG9kZXIgbmljaHQuCit+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+fn4KKwkJCSBaVVNBTU1FTkZBU1NVTkcgVk9OIExFS1RJT04gNAorCisgIDEuIENUUkwtRyAgemVpZ3QgZGllIGFrdHVlbGxlIERhdGVpcG9zaXRpb24gc293aWUgZGVuIERhdGVpc3RhdHVzLgorICAgICAgICAgICAgIEcgIGJyaW5ndCBEaWNoIHp1bSBFbmRlIGRlciBEYXRlaS4KKyAgICAgTnVtbWVyICBHICBicmluZ3QgRGljaCB6dXIgZW50c3ByZWNoZW5kZW4gWmVpbGVubnVtbWVyLgorICAgICAgICAgICAgZ2cgIGJyaW5ndCBEaWNoIHp1ciBlcnN0ZW4gWmVpbGUuCisKKyAgMi4gRGllIEVpbmdhYmUgdm9uICAvICBwbHVzIGVpbmVtIEF1c2RydWNrIHN1Y2h0IFZPUlfEUlRTIG5hY2ggZGVtIEF1c2RydWNrLgorICAgICBEaWUgRWluZ2FiZSB2b24gID8gIHBsdXMgZWluZW0gQXVzZHJ1Y2sgc3VjaHQgUtxDS1fEUlRTIG5hY2ggZGVtIEF1c2RydWNrLgorICAgICBUaXBwZSBuYWNoIGVpbmVyIFN1Y2hlICBuICAsIHVtIGRhcyBu5GNoc3RlIFZvcmtvbW1lbiBpbiBkZXIgZ2xlaWNoZW4KKyAgICAgUmljaHR1bmcgenUgZmluZGVuOyBvZGVyICBOICAsIHVtIGluIGRlciBHZWdlbnJpY2h0dW5nIHp1IHN1Y2hlbi4KKyAgICAgQ1RSTC1PIGJyaW5ndCBEaWNoIHp1cvxjayB6dSDkbHRlcmVuIFBvc2l0aW9uZW4sIENUUkwtSSB6dSBuZXVlcmVuLgorCisgIDMuIERpZSBFaW5nYWJlIHZvbiAgJSAgLCB3ZW5uIGRlciBDdXJzb3Igc2ljaCBhdWYgKCwpLFssXSx7LCBvZGVyIH0KKyAgICAgYmVmaW5kZXQsIGJyaW5ndCBEaWNoIHp1ciBHZWdlbmtsYW1tZXIuCisKKyAgNC4gVW0gZGFzIGVyc3RlIFZvcmtvbW1lbiB2b24gImFsdCIgaW4gZWluZXIgWmVpbGUgZHVyY2ggIm5ldSIgenUgZXJzZXR6ZW4sCisgICAgICAgICAgICAgdGlwcGUgICAgICAgOnMvYWx0L25ldQorICAgICBVbSBhbGxlIFZvcmtvbW1lbiB2b24gImFsdCIgaW4gZGVyIFplaWxlIGVyc2V0emVuLCB0aXBwZSAgOnMvYWx0L25ldS9nCisgICAgIFVtIEF1c2Ry/GNrZSBpbm5lcmhhbGIgendlaWVyIFplaWxlbiAjIHp1IGVyc2V0emVuICAgICAgICA6Iywjcy9hbHQvbmV1L2cKKyAgICAgVW0gYWxsZSBWb3Jrb21tZW4gaW4gZGVyIGdhbnplbiBEYXRlaSB6dSBlcnNldHplbiwgdGlwcGUgIDolcy9hbHQvbmV1L2cKKyAgICAgRvxyIGVpbmUgamVkZXNtYWxpZ2UgQmVzdOR0aWd1bmcsIGFkZGllcmUgJ2MnIChjb25maXJtKSAgIDolcy9hbHQvbmV1L2djCit+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+fn4KKwkJTGVrdGlvbiA1LjE6IEFVU0bcSFJFTiBFSU5FUyBFWFRFUk5FTiBLT01NQU5ET1MKKworCisgICoqIEdpYiAgOiEgLCBnZWZvbGd0IHZvbiBlaW5lbSBleHRlcm5lbiBLb21tYW5kbyBlaW4sIHVtIGVzIGF1c3p1ZvxocmVuLiAqKgorCisgIDEuIFRpcHBlIGRhcyB2ZXJ0cmF1dGUgS29tbWFuZG8gIDogICwgdW0gZGVuIEN1cnNvciBhdWYgZGVuIEZ13yBkZXMgU2NoaXJtcworICAgICB6dSBzZXR6ZW4uIERpZXMgZXJsYXVidCBEaXIsIGVpbiBLb21tYW5kb3plaWxlbi1Lb21tYW5kbyBlaW56dWdlYmVuLgorCisgIDIuIE51biB0aXBwZSBlaW4gICEgIChBdXNydWZlemVpY2hlbikuICBEaWVzIGVybfZnbGljaHQgRGlyLCBlaW4gYmVsaWViaWdlcywKKyAgICAgZXh0ZXJuZXMgU2hlbGxrb21tYW5kbyBhdXN6dWb8aHJlbi4KKworICAzLiBBbHMgQmVpc3BpZWwgdGlwcGUgICBscyAgIG5hY2ggZGVtICAhICB1bmQgZHL8Y2tlIDxFTlRFUj4uIERpZXMgbGllZmVydAorICAgICBlaW5lIEF1Zmxpc3R1bmcgZGVpbmVzIFZlcnplaWNobmlzc2VzOyBnZW5hdXNvLCBhbHMgd2VubiBEdSBpbiBkZXIKKyAgICAgRWluZ2FiZWF1ZmZvcmRlcnVuZyB35HJzdC4gIE9kZXIgdmVyd2VuZGUgIDohZGlyICAsIGZhbGxzIGxzIG5pY2h0IGdlaHQuCisKK0FubWVya3VuZzogIE1pdCBkaWVzZXIgTWV0aG9kZSBrYW5uIGplZGVzIGJlbGllYmlnZSBleHRlcm5lIEtvbW1hbmRvCisgICAgIGF1c2dlZvxocnQgd2VyZGVuLCBhdWNoIG1pdCBBcmd1bWVudGVuLgorCitBbm1lcmt1bmc6ICBBbGxlICA6ICBLb21tYW5kb3Mgbfxzc2VuIGR1cmNoIEVpbmdhYmUgdm9uIDxFTlRFUj4KKyAgICAgYWJnZXNjaGxvc3NlbiB3ZXJkZW4uIFZvbiBqZXR6dCBhbiBlcnfkaG5lbiB3aXIgZGllcyBuaWNodCBqZWRlc21hbC4KKworCit+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+fn4KKwkJTGVrdGlvbiA1LjI6IE1FSFIg3EJFUiBEQVMgU0NIUkVJQkVOIFZPTiBEQVRFSUVOCisKKworKiogVW0gYW0gVGV4dCBkdXJjaGdlZvxocnRlIMRuZGVydW5nZW4genUgc3BlaWNoZXJuLCB0aXBwZSA6dyBEQVRFSU5BTUUuICoqCisKKyAgMS4gVGlwcGUgIDohZGlyICBvZGVyICA6IWxzICAsIHVtIGVpbmUgQXVmbGlzdHVuZyBkZWluZXMgVmVyemVpY2huaXNzZXMgenUKKyAgICAgZXJoYWx0ZW4uICBEdSB3ZWnfdCBudW4gYmVyZWl0cywgZGFzcyBEdSBkYW5hY2ggPEVOVEVSPiBlaW5nZWJlbiBtdXNzdC4KKworICAyLiBX5GhsZSBlaW5lbiBEYXRlaW5hbWVuLCBkZXIgbm9jaCBuaWNodCBleGlzdGllcnQsIHouQi4gVEVTVC4KKworICAzLiBOdW4gdGlwcGU6ICA6dyBURVNUICAgKHdvYmVpIFRFU1QgZGVyIGdld+RobHRlIERhdGVpbmFtZSBpc3QpLgorCisgIDQuIERpZXMgc3BlaWNoZXJ0IGRpZSBnYW56ZSBEYXRlaSAoZGVuIFZpbSBUdXRvcikgdW50ZXIgZGVtIE5hbWVuIFRFU1QuCisgICAgIFVtIGRpZXMgenUg/GJlcnBy/GZlbiwgdGlwcGUgbm9jaG1hbHMgIDohbHMgIGJ6dy4gICFkaXIsIHVtIGRlaW5lbgorICAgICBWZXJ6ZWljaG5pc2luaGFsdCB6dSBzZWhlbi4KKworQW5tZXJrdW5nOiBX/HJkZXN0IER1IFZpbSBqZXR6dCBiZWVuZGVuIHVuZCBkYW5hY2ggd2llZGVyIG1pdCB2aW0gVEVTVAorICAgIHN0YXJ0ZW4sIGRhbm4gd+RyZSBkaWVzZSBEYXRlaSBlaW5lIGV4YWt0ZSBLb3BpZSBkZXMgVHV0b3JzIHp1IGRlbQorICAgIFplaXRwdW5rdCwgYWxzIER1IGlobiBnZXNwZWljaGVydCBoYXN0LgorCisgIDUuIE51biBlbnRmZXJuZSBkaWUgRGF0ZWkgZHVyY2ggRWluZ2FiZSB2b24gKE1TLURPUyk6ICAgIDohZGVsIFRFU1QKKyAgICAgICAgICAgICAgICAgICAgICBvZGVyIChVbml4KTogICAgICAgICAgICAgICAgICAgICAgICAgOiFybSBURVNUCit+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+fn4KKwkJIExla3Rpb24gNS4zOiBBVVNXxEhMRU4gVk9OIFRFWFQgWlVNIFNDSFJFSUJFTgorCisqKiBVbSBlaW5lbiBBYnNjaG5pdHQgZGVyIERhdGVpIHp1IHNwZWljaGVybiwgIHRpcHBlICB2ICBCZXdlZ3VuZyAgOncgREFURUkgKioKKworICAxLiBCZXdlZ2UgZGVuIEN1cnNvciB6dSBkaWVzZXIgWmVpbGUuCisKKyAgMi4gVGlwcGUgIHYgIHVuZCBiZXdlZ2UgZGVuIEN1cnNvciB6dW0gZvxuZnRlbiBBdWZsaXN0dW5nc3B1bmt0IHVudGVuLgorICAgICBCZWFjaHRlLCBkYXNzIGRlciBUZXh0IGhlcnZvcmdlaG9iZW4gd2lyZC4KKworICAzLiBEcvxja2UgZGFzIFplaWNoZW4gIDogLiBBbSBGdd8gZGVzIFNjaGlybXMgZXJzY2hlaW50ICA6JzwsJz4gLgorCisgIDQuIFRpcHBlICB3IFRFU1QgICwgd29iZWkgVEVTVCBlaW4gbm9jaCBuaWNodCB2b3JoYW5kZW5lciBEYXRlaW5hbWUgaXN0LgorICAgICBWZXJnZXdpc3NlcmUgRGljaCwgZGFzcyBEdSAgOic8LCc+dyBURVNUICBzaWVoc3QsIGJldm9yIER1IDxFTlRFUj4gZHL8Y2tzdC4KKworICA1LiBWaW0gc2NocmVpYnQgZGllIGF1c2dld+RobHRlbiBaZWlsZW4gaW4gZGllIERhdGVpIFRFU1QuIEJlbnV0emUgIDohZGlyCisgICAgIG9kZXIgIDohbHMgLCB1bSBzaWUgenUgc2VoZW4uIEz2c2NoZSBzaWUgbm9jaCBuaWNodCEgV2lyIHdlcmRlbiBzaWUgaW4KKyAgICAgZGVyIG7kY2hzdGVuIExla3Rpb24gYmVudXR6ZW4uCisKK0hpbndlaXM6IERy/GNrZW4gdm9uICB2ICBzdGFydGV0IGRpZSBWaXN1ZWxsZSBBdXN3YWhsLiBEdSBrYW5uc3QgZGVuIEN1cnNvcgorICAgdW1oZXJiZXdlZ2VuLCB1bSBkaWUgQXVzd2FobCB6dSB2ZXJncvbfZXJuIG9kZXIgenUgdmVya2xlaW5lcm4uIEFuc2NobGll32VuZAorICAgbORzc3Qgc2ljaCBlaW4gT3BlcmF0b3IgYW53ZW5kZW4sIHVtIG1pdCBkZW0gVGV4dCBldHdhcyB6dSB0dW4uIFp1bSBCZWlzcGllbAorICAgbPZzY2h0ICBkICBkZW4gVGV4dC4KKworfn5+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+CisJICAgICAgTGVrdGlvbiA1LjQ6IEVJTkxFU0VOIFVORCBaVVNBTU1FTkbcSFJFTiBWT04gREFURUlFTgorCisKKyAgICAgICAqKiBVbSBkZW4gSW5oYWx0IGVpbmVyIERhdGVpIGVpbnp1bGVzZW4sIHRpcHBlICA6ciBEQVRFSU5BTUUgICoqCisKKyAgMS4gUGxhdHppZXJlIGRlbiBDdXJzb3IgZGlyZWt0IPxiZXIgZGllc2VyIFplaWxlLgorCitCRUFDSFRFOiAgTmFjaGRlbSBEdSBTY2hyaXR0IDIgYXVzZ2Vm/GhydCBoYXN0LCB3aXJzdCBEdSBUZXh0IGF1cyBMZWt0aW9uIDUuMworICAgICAgIHNlaGVuLiBEYW5uIGJld2VnZSBEaWNoIHdpZWRlciBBQlfEUlRTLCBMZWt0aW9uIDUuNCB3aWVkZXJ6dXNlaGVuLgorCisgIDIuIE51biBsaWVzIGRlaW5lIERhdGVpIFRFU1QgZWluIGluZGVtIER1IGRhcyBLb21tYW5kbyAgOnIgVEVTVCAgYXVzZvxocnN0LAorICAgICB3b2JlaSBURVNUIGRlciB2b24gRGlyIHZlcndlbmRldGUgRGF0ZWluYW1lIGlzdC4KKyAgICAgRGllIGVpbmdlbGVzZW5lIERhdGVpIHdpcmQgdW50ZXJoYWxiIGRlciBDdXJzb3J6ZWlsZSBlaW5nZWb8Z3QuCisKKyAgMy4gVW0genUg/GJlcnBy/GZlbiwgZGFzcyBkaWUgRGF0ZWkgZWluZ2VsZXNlbiB3dXJkZSwgZ2VoZSB6dXL8Y2sgdW5kIAorICAgICBiZWFjaHRlLCBkYXNzIGVzIGpldHp0IHp3ZWkgS29waWVuIHZvbiBMZWt0aW9uIDUuMyBnaWJ0LCBkYXMgT3JpZ2luYWwgdW5kIAorCSBkaWUgZWluZ2Vm/Gd0ZSBEYXRlaXZlcnNpb24uCisKK0FubWVya3VuZzogRHUga2FubnN0IGF1Y2ggZGllIEF1c2dhYmUgZWluZXMgZXh0ZXJuZW4gS29tbWFuZG9zIGVpbmxlc2VuLiBadW0KKyAgICAgQmVpc3BpZWwgbGllc3QgIDpyICFscyAgZGllIEF1c2dhYmUgZGVzIEtvbW1hbmRvcyBscyBlaW4gdW5kIHBsYXR6aWVydAorICAgICBzaWUgdW50ZXJoYWxiIGRlcyBDdXJzb3JzLgorCit+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+fn4KKwkJCSBaVVNBTU1FTkZBU1NVTkcgVk9OIExFS1RJT04gNQorCisKKyAgMS4gOiFLb21tYW5kbyAgZvxocnQgZWluIGV4dGVybmVzIEtvbW1hbmRvIGF1cy4KKworICAgICAgRWluaWdlIG78dHpsaWNoZSBCZWlzcGllbGUgc2luZAorCShNUy1ET1MpCSAgKFVuaXgpCisJIDohZGlyCQkgICA6IWxzCQkgICAtICB6ZWlndCBlaW5lIFZlcnplaWNobmlzYXVmbGlzdHVuZy4KKwkgOiFkZWwgREFURUlOQU1FICAgOiFybSBEQVRFSU5BTUUgIC0gIGVudGZlcm50IERhdGVpIERBVEVJTkFNRS4KKworICAyLiA6dyBEQVRFSU5BTUUgIHNwZWljaGVydCBkaWUgYWt0dWVsbGUgVmltLURhdGVpIHVudGVyIGRlbSBOYW1lbiAgREFURUlOQU1FLgorCisgIDMuIHYgIEJld2VndW5nICA6dyBEQVRFSU5BTUUgIHNjaHJlaWJ0IGRpZSBWaXN1ZWxsIGF1c2dld+RobHRlbiBaZWlsZW4gaW4KKyAgICAgZGllIERhdGVpIERBVEVJTkFNRS4KKworICA0LiA6ciBEQVRFSU5BTUUgIGzkZHQgZGllIERhdGVpIERBVEVJTkFNRSB1bmQgZvxndCBzaWUgdW50ZXJoYWxiIGRlcgorICAgICBDdXJzb3Jwb3NpdGlvbiBlaW4uCisKKyAgNS4gOnIgIWRpciAgbGllc3QgZGllIEF1c2dhYmUgZGVzIEtvbW1hbmRvcyBkaXIgdW5kIGb8Z3Qgc2llIHVudGVyaGFsYiBkZXIKKyAgICAgQ3Vyc29ycG9zaXRpb24gZWluLgorCisKK35+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+fgorCQkgICAgICAgTGVrdGlvbiA2LjE6IFpFSUxFTiDWRkZORU4gKE9QRU4pCisKKworICAgKiogVGlwcGUgIG8JLCB1bSBlaW5lIFplaWxlIHVudGVyaGFsYiBkZXMgQ3Vyc29ycyB6dSD2ZmZuZW4gdW5kIERpY2ggaW4gKioKKyAgICAgICAgICAgICAgICAgICAgICAqKiBkZW4gRWluZvxnZW1vZHVzIHp1IGJlZ2ViZW4uICoqCisKKyAgMS4gQmV3ZWdlIGRlbiBDdXJzb3IgenUgZGVyIGVyc3RlbiBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlIHVudGVuLgorCisgIDIuIFRpcHBlIG8gKGtsZWluIGdlc2NocmllYmVuKSwgdW0gZWluZSBaZWlsZSBVTlRFUkhBTEIgZGVzIEN1cnNvcnMgenUg9mZmbmVuCisgICAgIHVuZCBEaWNoIGluIGRlbiBFaW5m/GdlbW9kdXMgenUgYmVnZWJlbi4KKworICAzLiBOdW4gdGlwcGUgZXR3YXMgVGV4dCB1bmQgZHL8Y2tlIDxFU0M+ICwgdW0gZGVuIEVpbmb8Z2Vtb2R1cyB6dSB2ZXJsYXNzZW4uCisKKy0tLT4gTWl0ICBvICB3aXJkIGRlciBDdXJzb3IgYXVmIGRlciBvZmZlbmVuIFplaWxlIGltIEVpbmb8Z2Vtb2R1cyBwbGF0emllcnQuCisKKyAgNC4gVW0gZWluZSBaZWlsZSDcQkVSSEFMQiBkZXMgQ3Vyc29ycyBhdWZ6dW1hY2hlbiwgZ2liIGVpbmZhY2ggZWluIGdyb99lcyAgTworICAgICBzdGF0dCBlaW5lbSBrbGVpbmVuICBvICBlaW4uIFZlcnN1Y2hlIGRpZXMgYXVmIGRlciB1bnRlbiBzdGVoZW5kZW4gWmVpbGUuCisKKy0tLT4g1mZmbmUgZWluZSBaZWlsZSD8YmVyIGRpZXNlciBtaXQgTyAsIHdlbm4gZGVyIEN1cnNvciBhdWYgZGllc2VyIFplaWxlIGlzdC4KKworCisKK35+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+fgorCQkgICAgICAgTGVrdGlvbiA2LjI6IFRFWFQgQU5G3EdFTiAoQVBQRU5EKQorCisKKwkgICAgICoqIFRpcHBlICBhICAsIHVtIFRleHQgTkFDSCBkZW0gQ3Vyc29yIGVpbnp1ZvxnZW4uICoqCisKKyAgMS4gQmV3ZWdlIGRlbiBDdXJzb3IgenVtIEFuZmFuZyBkZXIgZXJzdGVuINxidW5nc3plaWxlIG1pdCAtLS0+IHVudGVuLgorCisgIDIuIERy/GNrZSAgZSAgLCBiaXMgZGVyIEN1cnNvciBhbSBFbmRlIHZvbiAgWmVpICBzdGVodC4KKworICAzLiBUaXBwZSBlaW4ga2xlaW5lcyAgYSAgLCB1bSBUZXh0IE5BQ0ggZGVtIEN1cnNvciBhbnp1ZvxnZW4uCisKKyAgNC4gVmVydm9sbHN05G5kaWdlIGRhcyBXb3J0IHNvIHdpZSBpbiBkZXIgWmVpbGUgZGFydW50ZXIuICBEcvxja2UgPEVTQz4gLAorICAgICB1bSBkZW4gRWluZvxnZW1vZHVzIHp1IHZlcmxhc3Nlbi4KKworICA1LiBCZXdlZ2UgRGljaCBtaXQgIGUgIHp1bSBu5GNoc3RlbiB1bnZvbGxzdORuZGlnZW4gV29ydCB1bmQgd2llZGVyaG9sZQorICAgICBTY2hyaXR0ZSAzIHVuZCA0LgorCistLS0+IERpZXNlIFplaSBiaWV0ZXQgR2VsZWdlbiAsIFRleHQgaW4gZWluZXIgWmVpbGUgYW56dWb8LgorLS0tPiBEaWVzZSBaZWlsZSBiaWV0ZXQgR2VsZWdlbmhlaXQsIFRleHQgaW4gZWluZXIgWmVpbGUgYW56dWb8Z2VuLgorCitBbm1lcmt1bmc6ICBhLCBpIHVuZCBBIGdlaGVuIGFsbGUgZ2xlaWNoZXJtYd9lbiBpbiBkZW4gRWluZvxnZW1vZHVzOyBkZXIKKyAgICAgICAgICAgIGVpbnppZ2UgVW50ZXJzY2hpZWQgaXN0LCB3byBkaWUgWmVpY2hlbiBlaW5nZWb8Z3Qgd2VyZGVuLgorfn5+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+CisJICAgICAgTGVrdGlvbiA2LjM6IEVJTkUgQU5ERVJFIEFSVCBERVMgRVJTRVRaRU5TIChSRVBMQUNFKQorCisKKyAgICAgICAqKiBUaXBwZSBlaW4gZ3Jv32VzICBSICAsIHVtIG1laHIgYWxzIGVpbiBaZWljaGVuIHp1IGVyc2V0emVuLiAqKgorCisgIDEuIEJld2VnZSBkZW4gQ3Vyc29yIHp1ciBlcnN0ZW4gdW50ZW4gc3RlaGVuZGVuLCBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlLgorICAgICBCZXdlZ2UgZGVuIEN1cnNvciB6dW0gQW5mYW5nIGRlcyBlcnN0ZW4gIHh4eCAuCisKKyAgMi4gTnVuIGRy/GNrZSAgUiAgdW5kIHRpcHBlIGRpZSBOdW1tZXIsIGRpZSBkYXJ1bnRlciBpbiBkZXIgendlaXRlbiBaZWlsZQorICAgICBzdGVodCwgc28gZGFzcyBkaWVzZSBkYXMgeHh4IGVyc2V0enQuCisKKyAgMy4gRHL8Y2tlIDxFU0M+ICwgdW0gZGVuIEVyc2V0enVuZ3Ntb2R1cyB6dSB2ZXJsYXNzZW4uIEJlYWNodGUsIGRhc3MgZGVyIFJlc3QKKyAgICAgZGVyIFplaWxlIHVudmVy5G5kZXJ0IGJsZWlidC4KKworICA0LiBXaWVkZXJob2xlIGRpZSBTY2hyaXR0ZSwgdW0gZGFzIHZlcmJsaWViZW5lIHh4eCB6dSBlcnNldHplbi4KKworLS0tPiBEYXMgQWRkaWVyZW4gdm9uIDEyMyB6dSB4eHggZXJnaWJ0IHh4eC4KKy0tLT4gRGFzIEFkZGllcmVuIHZvbiAxMjMgenUgNDU2IGVyZ2lidCA1NzkuCisKK0FubWVya3VuZzogRGVyIEVyc2V0enVuZ3Ntb2R1cyBpc3Qgd2llIGRlciBFaW5m/GdlbW9kdXMsIGFiZXIgamVkZXMgZWluZ2V0aXBwdGUKKyAgICAgICAgICAgWmVpY2hlbiBs9nNjaHQgZWluIHZvcmhhbmRlbmVzIFplaWNoZW4uCisKK35+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+fgorCQkgICAgTGVrdGlvbiA2LjQ6IFRFWFQgS09QSUVSRU4gVU5EIEVJTkbcR0VOCisKKyAqKiBCZW51dHplIGRlbiAgeSAgT3BlcmF0b3IsIHVtIFRleHQgenUga29waWVyZW47ICBwICAsIHVtIGlobiBlaW56dWb8Z2VuICoqCisKKyAgMS4gR2VoZSB6dSBkZXIgbWl0IC0tLT4gbWFya2llcnRlbiBaZWlsZSB1bnRlbjsgc2V0emUgZGVuIEN1cnNvciBoaW50ZXIgImEpIi4KKworICAyLiBTdGFydGUgZGVuIFZpc3VlbGxlbiBNb2R1cyBtaXQgIHYgICwgYmV3ZWdlIGRlbiBDdXJzb3IgZ2VuYXUgdm9yICJlcnN0ZSIuCisKKyAgMy4gVGlwcGUgIHkgICwgdW0gZGVuIGhlcnZvcmdlaG9iZW4gVGV4dCB6dSBrb3BpZXJlbi4KKworICA0LiBCZXdlZ2UgZGVuIEN1cnNvciB6dW0gRW5kZSBkZXIgbuRjaHN0ZW4gWmVpbGU6ICBqJAorCisgIDUuIFRpcHBlICBwICwgdW0gZGVuIFRleHQgZWluenVm/GdlbiB1bmQgYW5zY2hsaWXfZW5kOiAgYSB6d2VpdGUgPEVTQz4gLgorCisgIDYuIEJlbnV0emUgZGVuIFZpc3VlbGxlbiBNb2R1cywgdW0gIiBFaW50cmFnLiIgYXVzenV35GhsZW4sIGtvcGllcmUgbWl0dGVscworICAgICB5ICwgYmV3ZWdlIERpY2ggenVtIEVuZGUgZGVyIG7kY2hzdGVuIFplaWxlIG1pdCAgaiQgIHVuZCBm/GdlIGRlbiBUZXh0CisgICAgIGRvcnQgbWl0ICBwICBhbi4KKworLS0tPiAgYSkgZGllcyBpc3QgZGVyIGVyc3RlIEVpbnRyYWcuCisgICAgICBiKQorCitBbm1lcmt1bmc6IER1IGthbm5zdCAgeSAgYXVjaCBhbHMgT3BlcmF0b3IgdmVyd2VuZGVuOyAgeXcgIGtvcGllcnQgZWluIFdvcnQuCit+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+fn4KKwkJCSAgTGVrdGlvbiA2LjU6IE9QVElPTkVOIFNFVFpFTgorCisgICAgICAqKiBTZXR6ZSBlaW5lIE9wdGlvbiBzbywgZGFzcyBlaW5lIFN1Y2hlIG9kZXIgRXJzZXR6dW5nIEdyb98tICoqCisJCSAgICAgICoqIHVuZCBLbGVpbnNjaHJlaWJ1bmcgaWdub3JpZXJ0ICoqCisKKyAgMS4gU3VjaGUgbmFjaCAnaWdub3JpZXJlJywgaW5kZW0gRHUgICAgL2lnbm9yaWVyZSAgIGVpbmdpYnN0LgorICAgICBXaWVkZXJob2xlIGRpZSBTdWNoZSBlaW5pZ2UgTWFsZSwgaW5kZW0gRHUgZGllIG4gLSBUYXN0ZSBkcvxja3N0LgorCisgIDIuIFNldHplIGRpZSAnaWMnIChJZ25vcmUgY2FzZSkgLSBPcHRpb24sIGluZGVtIER1ICAgOnNldCBpYyAgIGVpbmdpYnN0LgorCisgIDMuIE51biBzdWNoZSB3aWVkZXIgbmFjaCAnaWdub3JpZXJlJywgaW5kZW0gRHUgIG4gIHRpcHBzdC4KKyAgICAgQmVhY2h0ZSwgZGFzcyBqZXR6dCBJZ25vcmllcmUgdW5kIGF1Y2ggSUdOT1JJRVJFIGdlZnVuZGVuIHdpcmQuCisKKyAgNC4gU2V0emUgZGllICdobHNlYXJjaCcgdW5kICdpbmNzZWFyY2gnIC0gT3B0aW9uZW46ICAgICA6c2V0IGhscyBpcworCisgIDUuIFdpZWRlcmhvbGUgZGllIFN1Y2hlIHVuZCBiZW9iYWNodGUsIHdhcyBwYXNzaWVydDogL2lnbm9yaWVyZSA8RU5URVI+CisKKyAgNi4gVW0gZGFzIElnbm9yaWVyZW4gdm9uIEdyb98vS2xlaW5zY2hyZWlidW5nIGFienVzY2hhbHRlbiwgdGlwcGU6ICA6c2V0IG5vaWMKKworQW5tZXJrdW5nOiBVbSBkaWUgSGVydm9yaGVidW5nIGRlciBUcmVmZmVyIHp1IGVudGZlcm5lbiwgZ2liIGVpbjogIDpub2hsc2VhcmNoCitBbm1lcmt1bmc6IFVtIGRpZSBTY2hyZWlid2Vpc2UgZvxyIGVpbmUgZWluemlnZSBTdWNoZSB6dSBpZ25vcmllcmVuLCBiZW51dHplIFxjCisgICAgICAgICAgIGltIFN1Y2hhdXNkcnVjazogIC9pZ25vcmllcmVcYyAgPEVOVEVSPgorfn5+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+CisJCQkgWlVTQU1NRU5GQVNTVU5HIFZPTiBMRUtUSU9OIDYKKworIDEuIFRpcHBlICBvICAsIHVtIGVpbmUgWmVpbGUgVU5URVIgZGVtIEN1cnNvciB6dSD2ZmZuZW4gdW5kIGRlbiBFaW5m/GdlbW9kdXMKKyAgICAgICAgICAgICAgICB6dSBzdGFydGVuCisgICAgVGlwcGUgIE8gICwgdW0gZWluZSBaZWlsZSDcQkVSIGRlbSBDdXJzb3IgenUg9mZmbmVuLgorCisgMi4gVGlwcGUgIGEgICwgdW0gVGV4dCBOQUNIIGRlbSBDdXJzb3IgYW56dWb8Z2VuLgorICAgIFRpcHBlICBBICAsIHVtIFRleHQgbmFjaCBkZW0gWmVpbGVuZW5kZSBhbnp1ZvxnZW4uCisKKyAzLiBEYXMgS29tbWFuZG8gIGUgIGJyaW5ndCBEaWNoIHp1bSBFbmRlIGVpbmVzIFdvcnRlcy4KKworIDQuIERlciBPcGVyYXRvciAgeSAgKHlhbmspIGtvcGllcnQgVGV4dCwgIHAgIChwdXQpIGb8Z3QgaWhuIGVpbi4KKworIDUuIEVpbiBncm/fZXMgIFIgIGdlaHQgaW4gZGVuIEVyc2V0enVuZ3Ntb2R1cyBiaXMgenVtIERy/GNrZW4gdm9uICA8RVNDPiAuCisKKyA2LiBEaWUgRWluZ2FiZSB2b24gIjpzZXQgeHh4IiBzZXR6dCBkaWUgT3B0aW9uICJ4eHgiLiBFaW5pZ2UgT3B0aW9uZW4gc2luZDoKKwknaWMnICdpZ25vcmVjYXNlJyAgICBJZ25vcmllcmUgR3Jv3y9LbGVpbnNjaHJlaWJ1bmcgYmVpIGVpbmVyIFN1Y2hlCisJJ2lzJyAnaW5jc2VhcmNoJyAgICAgWmVpZ2UgVGVpbPxiZXJlaW5zdGltbXVuZ2VuIGb8ciBlaW5lbiBTdWNoYXVzZHJ1Y2sKKwknaGxzJyAnaGxzZWFyY2gnICAgICBIZWJlIGFsbGUgcGFzc2VuZGVuIEF1c2Ry/GNrZSBoZXJ2b3IKKyAgICBEZXIgT3B0aW9uc25hbWUga2FubiBpbiBkZXIgS3Vyei0gb2RlciBkZXIgTGFuZ2Zvcm0gYW5nZWdlYmVuIHdlcmRlbi4KKworIDcuIFN0ZWxsZSBlaW5lciBPcHRpb24gIm5vIiB2b3JhbiwgdW0gc2llIGFienVzY2hhbHRlbjogICA6c2V0IG5vaWMKK35+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+fgorCQkJTGVrdGlvbiA3LjEgOiBBVUZSVUZFTiBWT04gSElMRkUKKworCisJCSAgICAgKiogTnV0emUgZGFzIGVpbmdlYmF1dGUgSGlsZmVzeXN0ZW0gKioKKworICBWaW0gYmVzaXR6dCBlaW4gdW1mYXNzZW5kZXMgZWluZ2ViYXV0ZXMgSGlsZmVzeXN0ZW0uICBG/HIgZGVuIEFuZmFuZyBwcm9iaWVyZQorICBlaW5zIGRlciBkcmVpIGZvbGdlbmRlbiBEaW5nZSBhdXM6CisJLSBEcvxja2UgZGllIDxIaWxmZT4gLSBUYXN0ZSAoZmFsbHMgRHUgZWluZSBiZXNpdHp0KQorCS0gRHL8Y2tlIGRpZSA8RjE+IFRhc3RlIChmYWxscyBEdSBlaW5lIGJlc2l0enQpCisJLSBUaXBwZSAgIDpoZWxwIDxFTlRFUj4KKworICBMaWVzIGRlbiBUZXh0IGltIEhpbGZlZmVuc3RlciwgdW0genUgdmVyc3RlaGVuIHdpZSBkaWUgSGlsZmUgZnVua3Rpb25pZXJ0LgorICBUaXBwZSAgQ1RSTC1XIENUUkwtVyAgICwgdW0gdm9uIGVpbmVtIEZlbnN0ZXIgenVtIGFuZGVyZW4genUgc3ByaW5nZW4uCisgIFRpcHBlICAgOnEgPEVOVEVSPiAgLCB1bSBkYXMgSGlsZmVmZW5zdGVyIHp1IHNjaGxpZd9lbi4KKworICBEdSBrYW5uc3QgSGlsZmUgenUgcHJha3Rpc2NoIGplZGVtIFRoZW1hIGZpbmRlbiwgaW5kZW0gRHUgZGVtICI6aGVscCItCisgIEtvbW1hbmRvIGVpbiBBcmd1bWVudCBnaWJzdC4gIFByb2JpZXJlIGZvbGdlbmRlcyAoPEVOVEVSPiBuaWNodCB2ZXJnZXNzZW4pOgorCisJOmhlbHAgdworCTpoZWxwIGNfQ1RSTC1ECisJOmhlbHAgaW5zZXJ0LWluZGV4CisJOmhlbHAgdXNlci1tYW51YWwKK35+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+fgorCQkgICAgIExla3Rpb24gNy4yOiBFUlNURUxMRSBFSU4gU1RBUlQtU0tSSVBUCisKKworCSAgICAgICAgICAqKiAgQWt0aXZpZXJlIGRpZSBGZWF0dXJlcyB2b24gVmltICoqCisKKyAgVmltIGJlc2l0enQgdmllbGUgRnVua3Rpb25hbGl05HRlbiwgZGllIPxiZXIgVmkgaGluYXVzZ2VoZW4sIGFiZXIgZGllIG1laXN0ZW4KKyAgdm9uIGlobmVuIHNpbmQgc3RhbmRhcmRt5N9pZyBkZWFrdGl2aWVydC4gVW0gbWVociBGdW5rdGlvbmFsaXTkdGVuIHp1IG51dHplbiwKKyAgbXVzc3QgRHUgZWluZSAidmltcmMiIC0gRGF0ZWkgZXJzdGVsbGVuLgorCisgIDEuIFN0YXJ0ZSBkYXMgRWRpdGllcmVuIGRlciAidmltcmMiLURhdGVpLCBhYmjkbmdpZyB2b24gZGVpbmVtIFN5c3RlbToKKwk6ZSB+Ly52aW1yYwkJZvxyIFVuaXgKKwk6ZSAkVklNL192aW1yYwkJZvxyIE1TLVdpbmRvd3MKKworICAyLiBOdW4gbGllcyBkZW4gSW5oYWx0IGRlciBCZWlzcGllbC0idmltcmMiLURhdGVpIGVpbjoKKwk6ciAkVklNUlVOVElNRS92aW1yY19leGFtcGxlLnZpbQorCisgIDMuIFNwZWljaGVyZSBkaWUgRGF0ZWkgbWl0OgorCTp3CisKKyAgQmVpbSBu5GNoc3RlbiBTdGFydCB2b24gVmltIHdpcmQgZGllIFN5bnRheGhlcnZvcmhlYnVuZyBha3RpdmllcnQgc2Vpbi4KKyAgRHUga2FubnN0IGFsbCBkZWluZSBiZXZvcnp1Z3RlbiBPcHRpb25lbiB6dSBkaWVzZXIgInZpbXJjIi1EYXRlaSB6dWb8Z2VuLgorICBG/HIgbWVociBJbmZvcm1hdGlvbmVuIHRpcHBlICA6aGVscCB2aW1yYy1pbnRybworfn5+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+CisJCQkgTGVrdGlvbiA3LjM6IFZFUlZPTExTVMRORElHRU4KKworCisJICAgKiogS29tbWFuZG96ZWlsZW52ZXJ2b2xsc3TkbmRpZ3VuZyBtaXQgQ1RSTC1EIHVuZCA8VEFCPiAqKgorCisgIDEuIFN0ZWxsZSBzaWNoZXIsIGRhc3MgVmltIG5pY2h0IGltIFZpLUtvbXBhdGliaWxpdOR0c21vZHVzIGlzdDogIDpzZXQgbm9jcAorCisgIDIuIFNpZWhlIG5hY2gsIHdlbGNoZSBEYXRlaWVuIGltIFZlcnplaWNobmlzIGV4aXN0aWVyZW46ICA6IWxzICBvZGVyICA6ZGlyCisKKyAgMy4gVGlwcGUgZGVuIEJlZ2lubiBlaW5lcyBLb21tYW5kb3M6ICA6ZQorCisgIDQuIERy/GNrZSAgQ1RSTC1EICB1bmQgVmltIHplaWd0IGVpbmUgTGlzdGUgbWl0ICJlIiBiZWdpbm5lbmRlciBLb21tYW5kb3MuCisKKyAgNS4gRHL8Y2tlICA8VEFCPiAgdW5kIFZpbSB2ZXJ2b2xsc3TkbmRpZ3QgZGVuIEtvbW1hbmRvbmFtZW4genUgIjplZGl0Ii4KKworICA2LiBOdW4gZvxnZSBlaW4gTGVlcnplaWNoZW4gdW5kIGRlbiBBbmZhbmcgZWluZXIgZXhpc3RpZXJlbmRlbiBEYXRlaSBhbjoKKyAgICAgOmVkaXQgREFUCisKKyAgNy4gRHL8Y2tlIDxUQUI+LiBWaW0gdmVydm9sbHN05G5kaWd0IGRlbiBOYW1lbiAoZmFsbHMgZXIgZWluZGV1dGlnIGlzdCkuCisKK0FubWVya3VuZzogVmVydm9sbHN05G5kaWd1bmcgZnVua3Rpb25pZXJ0IGb8ciB2aWVsZSBLb21tYW5kb3MuIFByb2JpZXJlCisgICAgIGVpbmZhY2ggQ1RSTC1EIHVuZCA8VEFCPi4gIERpZXMgaXN0IGluc2Jlc29uZGVyZSBu/HR6bGljaCBm/HIgIDpoZWxwIC4KK35+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+fgorCQkJCSAgICAgWlVTQU1NRU5GQVNTVU5HIFZPTiBMRUtUSU9OIDcKKworCisgIDEuIFRpcHBlICA6aGVscCAgb2RlciBkcvxja2UgPEYxPiBvZGVyIDxIZWxwPiwgdW0gZWluIEhpbGZlZmVuc3RlciB6dSD2ZmZuZW4uCisKKyAgMi4gVGlwcGUgIDpoZWxwIEtvbW1hbmRvICAsIHVtIEhpbGZlIPxiZXIgIEtvbW1hbmRvICB6dSBlcmhhbHRlbi4KKworICAzLiBUaXBwZSAgQ1RSTC1XIENUUkwtVyAgLCB1bSB6dW0gYW5kZXJlbiBGZW5zdGVyIHp1IHNwcmluZ2VuLgorCisgIDQuIFRpcHBlICA6cSAgLCB1bSBkYXMgSGlsZmVmZW5zdGVyIHp1IHNjaGxpZd9lbi4KKworICA1LiBFcnN0ZWxsZSBlaW4gdmltcmMgLSBTdGFydHNrcmlwdCBtaXQgZGVpbmVuIGJldm9yenVndGVyIEVpbnN0ZWxsdW5nZW4uCisKKyAgNi4gRHL8Y2tlIENUUkwtRCBuYWNoIGRlbSBUaXBwZW4gZWluZXMgIDogIEtvbW1hbmRvcywgdW0gbfZnbGljaGUKKyAgICAgVmVydm9sbHN05G5kaWd1bmdlbiBhbnp1c2VoZW4uCisgICAgIERy/GNrZSA8VEFCPiAsIHVtIGVpbmUgVmVydm9sbHN05G5kaWd1bmcgenUgYW56dXdlbmRlbi4KKworCisKKworCisKK35+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+fgorCisgIERhbWl0IGlzdCBkZXIgVmltIFR1dG9yIGJlZW5kZXQuICBTZWluZSBJbnRlbnRpb24gd2FyLCBlaW5lbiBrdXJ6ZW4gdW5kCisgIGL8bmRpZ2VuINxiZXJibGljayD8YmVyIGRlbiBWaW0gRWRpdG9yIHp1IGdlYmVuOyBnZXJhZGUgZ2VudWcsIHVtIHJlbGF0aXYKKyAgbGVpY2h0IG1pdCBpaG0gdW1nZWhlbiB6dSBr9m5uZW4uICBEZXIgVmltIFR1dG9yIGhhdCBuaWNodCBkZW4gZ2VyaW5nc3RlbgorICBBbnNwcnVjaCBhdWYgVm9sbHN05G5kaWdrZWl0OyBWaW0gaGF0IG5vY2ggd2VpdGF1cyBtZWhyIEtvbW1hbmRvcy4gTGllcyBhbHMKKyAgbuRjaHN0ZXMgZGFzIFVzZXIgTWFudWFsOiAiOmhlbHAgdXNlci1tYW51YWwiLgorCisgIEb8ciB3ZWl0ZXJlcyBMZXNlbiB1bmQgTGVybmVuIGlzdCBmb2xnZW5kZXMgQnVjaCBlbXBmZWhsZW5zd2VydCA6CisJVmltIC0gVmkgSW1wcm92ZWQgLSB2b24gU3RldmUgT3VhbGxpbmUKKwlWZXJsYWc6IE5ldyBSaWRlcnMKKyAgRGFzIGVyc3RlIEJ1Y2gsIHdlbGNoZXMgZHVyY2hn5G5naWcgVmltIGdld2lkbWV0IGlzdC4gIEJlc29uZGVycyBu/HR6bGljaAorICBm/HIgQW5m5G5nZXIuICBWaWVsZSBCZWlzcGllbGUgdW5kIEJpbGRlciBzaW5kIGVudGhhbHRlbi4KKyAgU2llaGUgaHR0cDovL2ljY2YtaG9sbGFuZC5vcmcvY2xpY2s1Lmh0bWwKKworICBGb2xnZW5kZXMgQnVjaCBpc3Qg5Gx0ZXIgdW5kIG1laHIg/GJlciBWaSBhbHMgVmltLCBhYmVyIGF1Y2ggZW1wZmVobGVuc3dlcnQ6CisJVGV4dGJlYXJiZWl0dW5nIG1pdCBkZW0gVmktRWRpdG9yICAtICB2b24gTGluZGEgTGFtYiB1bmQgQXJub2xkIFJvYmJpbnMKKwlWZXJsYWcgTydSZWlsbHkgLSBJU0JOOiAzODk3MjExMjYyCisgIEluIGRpZXNlbSBCdWNoIGthbm4gbWFuIGZhc3QgYWxsZXMgZmluZGVuLCB3YXMgbWFuIG1pdCBWaSB0dW4gbfZjaHRlLgorICBEaWUgc2VjaHN0ZSBBdXNnYWJlIGVudGjkbHQgYXVjaCBJbmZvcm1hdGlvbmVuIPxiZXIgVmltLgorCisgIEFscyBha3R1ZWxsZSBSZWZlcmVueiBm/HIgVmVyc2lvbiA2LjIgdW5kIGtuYXBwZSBFaW5m/GhydW5nIGRpZW50IGRhcworICBmb2xnZW5kZSBCdWNoOgorCXZpbSBnZS1wYWNrdCB2b24gUmVpbmhhcmQgV29ic3QKKwltaXRwLVZlcmxhZywgSVNCTiAzLTgyNjYtMTQyNS05CisgIFRyb3R6IGRlciBrb21wYWt0ZW4gRGFyc3RlbGx1bmcgaXN0IGVzIGR1cmNoIHZpZWxlIG78dHpsaWNoZSBCZWlzcGllbGUgYXVjaAorICBm/HIgRWluc3RlaWdlciBlbXBmZWhsZW5zd2VydC4gIFByb2Jla2FwaXRlbCB1bmQgZGllIEJlaXNwaWVsc2tyaXB0ZSBzaW5kCisgIG9ubGluZSBlcmjkbHRsaWNoLiAgU2llaGUgaHR0cDovL2ljY2YtaG9sbGFuZC5vcmcvY2xpY2s1Lmh0bWwKKworICBEaWVzZXMgVHV0b3JpYWwgd3VyZGUgZ2VzY2hyaWViZW4gdm9uIE1pY2hhZWwgQy4gUGllcmNlIHVuZCBSb2JlcnQgSy4gV2FyZSwKKyAgQ29sb3JhZG8gU2Nob29sIG9mIE1pbmVzLiBFcyBiZW51dHp0IElkZWVuLCBkaWUgQ2hhcmxlcyBTbWl0aCwgQ29sb3JhZG8gU3RhdGUKKyAgVW5pdmVyc2l0eSwgenVyIFZlcmb8Z3VuZyBzdGVsbHRlLiAgRS1NYWlsOiBid2FyZUBtaW5lcy5jb2xvcmFkby5lZHUuCisKKyAgQmVhcmJlaXRldCBm/HIgVmltIHZvbiBCcmFtIE1vb2xlbmFhci4KKyAgRGV1dHNjaGUg3GJlcnNldHp1bmcgdm9uIEpvYWNoaW0gSG9mbWFubiAyMDE1LiAgRS1NYWlsOiBKb2FjaGltLkhvZkBnbXguZGUKKworfn5+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+CmRpZmYgLS1naXQgYS9ydW50aW1lL3R1dG9yL3R1dG9yLmRlLnV0Zi04IGIvcnVudGltZS90dXRvci90dXRvci5kZS51dGYtOAppbmRleCAwOWJkNWY4Li43OTk5NjJjIDEwMDY0NAotLS0gYS9ydW50aW1lL3R1dG9yL3R1dG9yLmRlLnV0Zi04CisrKyBiL3J1bnRpbWUvdHV0b3IvdHV0b3IuZGUudXRmLTgKQEAgLTEsOTgyICsxLDk4MiBAQAotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KLT0gICAgICBXIGkgbCBsIGsgbyBtIG0gZSBuICAgaW0gICBWIEkgTSAgIFQgdSB0IG8gciAgICAtICAgIFZlcnNpb24gMS43LmRlLjEgID0NCi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQotDQotICAgVmltIGlzdCBlaW4gc2VociBtw6RjaHRpZ2VyIEVkaXRvciwgZGVyIHZpZWxlIEJlZmVobGUgYmVyZWl0c3RlbGx0OyB6dSB2aWVsZSwNCi0gICB1bSBhbGxlIGluIGVpbmVtIFR1dG9yIHdpZSBkaWVzZW0genUgZXJrbMOkcmVuLiAgRGllc2VyIFR1dG9yIGlzdCBzbw0KLSAgIGdlc3RhbHRldCwgdW0gZ2VudWcgQmVmZWhsZSB2b3J6dXN0ZWxsZW4sIGRhc3MgRHUgZGllIEbDpGhpZ2tlaXQgZXJsYW5nc3QsDQotICAgVmltIG1pdCBMZWljaHRpZ2tlaXQgYWxzIGVpbmVuIEFsbHp3ZWNrLUVkaXRvciB6dSB2ZXJ3ZW5kZW4uDQotICAgRGllIFplaXQgZsO8ciBkYXMgRHVyY2hhcmJlaXRlbiBkaWVzZXMgVHV0b3JzIGJldHLDpGd0IGNhLiAyNS0zMCBNaW51dGVuLA0KLSAgIGFiaMOkbmdpZyBkYXZvbiwgd2llIHZpZWwgWmVpdCBEdSBtaXQgRXhwZXJpbWVudGllcmVuIHZlcmJyaW5nc3QuDQotDQotICAgQUNIVFVORzoNCi0gICBEaWUgaW4gZGVuIExla3Rpb25lbiBhbmdld2VuZGV0ZW4gS29tbWFuZG9zIHdlcmRlbiBkZW4gVGV4dCBtb2RpZml6aWVyZW4uDQotICAgRXJzdGVsbGUgZWluZSBLb3BpZSBkaWVzZXIgRGF0ZWksIGluIGRlciBEdSDDvGJlbiB3aWxsc3QgKGZhbGxzIER1ICJ2aW10dXRvciINCi0gICBhdWZnZXJ1ZmVuIGhhc3QsIGlzdCBkaWVzIGJlcmVpdHMgZWluZSBLb3BpZSkuDQotDQotICAgRXMgaXN0IHdpY2h0aWcsIHNpY2ggenUgdmVyZ2VnZW53w6RydGlnZW4sIGRhc3MgZGllc2VyIFR1dG9yIGbDvHIgZGFzIEFud2VuZGVuDQotICAga29uemlwaWVydCBpc3QuIERhcyBiZWRldXRldCwgZGFzcyBEdSBkaWUgQmVmZWhsZSBhbndlbmRlbiBtdXNzdCwgdW0gc2llDQotICAgcmljaHRpZyB6dSBsZXJuZW4uIFdlbm4gRHUgbnVyIGRlbiBUZXh0IGxpZXN0LCB2ZXJnaXNzdCBEdSBkaWUgQmVmZWhsZSENCi0NCi0gICBKZXR6dCBzdGVsbGUgc2ljaGVyLCBkYXNzIGRlaW5lIFVtc3RlbGx0YXN0ZSBOSUNIVCBnZWRyw7xja3QgaXN0IHVuZCBiZXTDpHRpZ2UNCi0gICBkaWUgICBqICAgVGFzdGUgZ2Vuw7xnZW5kIE1hbCwgdW0gZGVuIEN1cnNvciBuYWNoIHVudGVuIHp1IGJld2VnZW4sIHNvIGRhc3MNCi0gICBMZWt0aW9uIDEuMSBkZW4gQmlsZHNjaGlybSB2b2xsa29tbWVuIGF1c2bDvGxsdC4NCi1+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+fn4NCi0JCQlMZWt0aW9uIDEuMTogQkVXRUdFTiBERVMgQ1VSU09SUw0KLQ0KLSAgKiogVW0gZGVuIEN1cnNvciB6dSBiZXdlZ2VuLCBkcsO8Y2tlIGRpZSBoLGosayxsIFRhc3RlbiB3aWUgdW50ZW4gZ2V6ZWlndC4gKioNCi0JICAgICBeCQkgSGlsZmVzdGVsbHVuZzoNCi0JICAgICBrCQkgRGllIGggVGFzdGUgYmVmaW5kZXQgc2ljaCBsaW5rcyB1bmQgYmV3ZWd0IG5hY2ggbGlua3MuDQotICAgICAgIDwgaAkgbCA+CSBEaWUgbCBUYXN0ZSBsaWVndCByZWNodHMgdW5kIGJld2VndCBuYWNoIHJlY2h0cy4NCi0JICAgICBqCQkgRGllIGogVGFzdGUgw6RobmVsdCBlaW5lbSBQZmVpbCBuYWNoIHVudGVuLg0KLQkgICAgIHYNCi0gIDEuIEJld2VnZSBkZW4gQ3Vyc29yIGF1ZiBkZW0gQmlsZHNjaGlybSB1bWhlciwgYmlzIER1IERpY2ggc2ljaGVyIGbDvGhsc3QuDQotDQotICAyLiBIYWx0ZSBkaWUgTmFjaC1VbnRlbi1UYXN0ZSAoaikgZ2VkcsO8Y2t0LCBiaXMgc2llIHNpY2ggd2llZGVyaG9sdC4NCi0gICAgIEpldHp0IHdlacOfdCBEdSwgd2llIER1IERpY2ggenVyIG7DpGNoc3RlbiBMZWt0aW9uIGJld2VnZW4ga2FubnN0Lg0KLQ0KLSAgMy4gQmVudXR6ZSBkaWUgTmFjaC1VbnRlbi1UYXN0ZSwgdW0gRGljaCB6dSBMZWt0aW9uIDEuMiB6dSBiZXdlZ2VuLg0KLQ0KLUFubWVya3VuZzogSW1tZXIsIHdlbm4gRHUgRGlyIHVuc2ljaGVyIGJpc3Qgw7xiZXIgZGFzLCB3YXMgRHUgZ2V0aXBwdCBoYXN0LA0KLQkgICBkcsO8Y2tlIDxFU0M+ICwgdW0gRGljaCBpbiBkZW4gTm9ybWFsbW9kdXMgenUgYmVnZWJlbi4NCi0JICAgRGFubiBnaWIgZGFzIGdld8O8bnNjaHRlIEtvbW1hbmRvIG5vY2ggZWlubWFsIGVpbi4NCi0NCi1Bbm1lcmt1bmc6IERpZSBDdXJzb3ItVGFzdGVuIHNvbGx0ZW4gZWJlbmZhbGxzIGZ1bmt0aW9uaWVyZW4uICBBYmVyIHdlbm4gRHUNCi0JICAgaGprbCBiZW51dHp0LCB3aXJzdCBEdSBpbiBkZXIgTGFnZSBzZWluLCBEaWNoIHNlaHIgdmllbCBzY2huZWxsZXINCi0JICAgdW1oZXJ6dWJld2VnZW4sIHdlbm4gRHUgRGljaCBlaW5tYWwgZGFyYW4gZ2V3w7ZobnQgaGFzdC4gV2lya2xpY2ghDQotfn5+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+DQotCQkJICAgIExla3Rpb24gMS4yOiBWSU0gQkVFTkRFTg0KLQ0KLQ0KLSAgISEgSGlud2VpczogQmV2b3IgRHUgZWluZW4gZGVyIHVudGVuIGF1ZmdlZsO8aHJ0ZW4gU2Nocml0dGUgYXVzZsO8aHJzdCwgbGllcw0KLSAgICAgZGllc2UgZ2VzYW10ZSBMZWt0aW9uISENCi0NCi0gIDEuIERyw7xja2UgZGllIDxFU0M+IFRhc3RlICh1bSBzaWNoZXJ6dXN0ZWxsZW4sIGRhc3MgRHUgaW0gTm9ybWFsbW9kdXMgYmlzdCkuDQotDQotICAyLiBUaXBwZToJOnEhIDxFTlRFUj4uDQotICAgICBEaWVzIGJlZW5kZXQgZGVuIEVkaXRvciB1bmQgVkVSV0lSRlQgYWxsZSDDhG5kZXJ1bmdlbiwgZGllIER1IGdlbWFjaHQgaGFzdC4NCi0NCi0gIDMuIFdlbm4gRHUgZGllIEVpbmdhYmVhdWZmb3JkZXJ1bmcgc2llaHN0LCBnaWIgZGFzIEtvbW1hbmRvIGVpbiwgZGFzIERpY2ggenUNCi0gICAgIGRpZXNlbSBUdXRvciBnZWbDvGhydCBoYXQuIERpZXMgd8OkcmU6CXZpbXR1dG9yIDxFTlRFUj4NCi0NCi0gIDQuIFdlbm4gRHUgRGlyIGRpZXNlIFNjaHJpdHRlIGVpbmdlcHLDpGd0IGhhc3QgdW5kIER1IERpY2ggc2ljaGVyIGbDvGhsc3QsDQotICAgICBmw7xocmUgU2Nocml0dGUgMSBiaXMgMyBhdXMsIHVtIGRlbiBFZGl0b3IgenUgdmVybGFzc2VuIHVuZCB3aWVkZXINCi0gICAgIGhpbmVpbnp1Z2VsYW5nZW4uDQotDQotQW5tZXJrdW5nOiAgOnEhIDxFTlRFUj4gIHZlcndpcmZ0IGFsbGUgw4RuZGVydW5nZW4sIGRpZSBEdSBnZW1hY2h0IGhhc3QuIEVpbmlnZQ0KLSAgICAgTGVrdGlvbmVuIHNww6R0ZXIgbGVybnN0IER1LCBkaWUgw4RuZGVydW5nZW4gaW4gZWluZXIgRGF0ZWkgenUgc3BlaWNoZXJuLg0KLQ0KLSAgNS4gQmV3ZWdlIGRlbiBDdXJzb3IgYWJ3w6RydHMgenUgTGVrdGlvbiAxLjMuDQotIH5+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+fg0KLQkJICAgICBMZWt0aW9uIDEuMzogVEVYVCBFRElUSUVSRU4gLSBMw5ZTQ0hFTg0KLQ0KLQ0KLQkgKiogRHLDvGNrZSAgeCAgLCB1bSBkYXMgWmVpY2hlbiB1bnRlciBkZW0gQ3Vyc29yIHp1IGzDtnNjaGVuLiAqKg0KLQ0KLSAgMS4gQmV3ZWdlIGRlbiBDdXJzb3IgenUgZGVyIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUgdW50ZW4uDQotDQotICAyLiBVbSBkaWUgRmVobGVyIHp1IGJlaGViZW4sIGJld2VnZSBkZW4gQ3Vyc29yLCBiaXMgZXIgw7xiZXIgZGVtIFplaWNoZW4gc3RlaHQsDQotICAgICBkYXMgZ2Vsw7ZzY2h0IHdlcmRlbiBzb2xsLg0KLQ0KLSAgMy4gRHLDvGNrZSBkaWUgIHggIFRhc3RlLCB1bSBkYXMgdW5lcnfDvG5zY2h0ZSBaZWljaGVuIHp1IGzDtnNjaGVuLg0KLQ0KLSAgNC4gV2llZGVyaG9sZSBkaWUgU2Nocml0dGUgMiBiaXMgNCwgYmlzIGRlciBTYXR6IGtvcnJla3QgaXN0Lg0KLQ0KLS0tLT4gRGllIEtrdWggc3ByYW5nZyDDvGJiZXJyIGRlZW4gTW9vbmQuDQotDQotICA1LiBOdW4sIGRhIGRpZSBaZWlsZSBrb3JyZWt0IGlzdCwgZ2VoZSB3ZWl0ZXIgenVyIExla3Rpb24gMS40Lg0KLQ0KLUFubWVya3VuZzogV8OkaHJlbmQgRHUgZHVyY2ggZGllc2VuIFR1dG9yIGdlaHN0LCB2ZXJzdWNoZSBuaWNodCwgYXVzd2VuZGlnIHp1DQotICAgIGxlcm5lbiwgbGVybmUgdmllbG1laHIgZHVyY2ggQW53ZW5kZW4uDQotDQotDQotfn5+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+DQotCQkgICAgIExla3Rpb24gMS40OiBURVhUIEVESVRJRVJFTiAtIEVJTkbDnEdFTg0KLQ0KLQ0KLQkJICAgICoqICBEcsO8Y2tlICBpICAsIHVtIFRleHQgZWluenVmw7xnZW4uICoqDQotDQotICAxLiBCZXdlZ2UgZGVuIEN1cnNvciB6dXIgZXJzdGVuIHVudGVuIHN0ZWhlbmRlbiBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlLg0KLQ0KLSAgMi4gVW0gZGllIGVyc3RlIFplaWxlIG1pdCBkZXIgendlaXRlbiBnbGVpY2h6dW1hY2hlbiwgYmV3ZWdlIGRlbiBDdXJzb3IgYXVmDQotICAgICBkYXMgZXJzdGUgWmVpY2hlbiBOQUNIIGRlciBTdGVsbGUsIGFuIGRlciBUZXh0IGVpbmdlZsO8Z3Qgd2VyZGVuIHNvbGwuDQotDQotICAzLiBEcsO8Y2tlICBpICB1bmQgZ2liIGRpZSBuw7Z0aWdlbiBFcmfDpG56dW5nZW4gZWluLg0KLQ0KLSAgNC4gV2VubiBqZXdlaWxzIGVpbiBGZWhsZXIgYmVzZWl0aWd0IGlzdCwgZHLDvGNrZSA8RVNDPiAsIHVtIHp1bSBOb3JtYWxtb2R1cw0KLSAgICAgenVyw7xja3p1a2VocmVuLg0KLQkJIFdpZWRlcmhvbGUgU2Nocml0dGUgMiBiaXMgNCwgdW0gZGVuIFNhdHogenUga29ycmlnaWVyZW4uDQotDQotLS0tPiBJbiBkaWVzZXIgZnQgZXR3YXMgLg0KLS0tLT4gSW4gZGllc2VyIFplaWxlIGZlaGx0IGV0d2FzIFRleHQuDQotDQotICA1LiBXZW5uIER1IERpY2ggbWl0IGRlbSBFaW5mw7xnZW4gdm9uIFRleHQgc2ljaGVyIGbDvGhsc3QsIGdlaGUgenUgTGVrdGlvbiAxLjUuDQotDQotDQotfn5+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+DQotCQkgICAgIExla3Rpb24gMS41OiBURVhUIEVESVRJRVJFTiAtIEFORsOcR0VODQotDQotDQotCQkgICAgICoqIERyw7xja2UgIEEgICwgdW0gVGV4dCBhbnp1ZsO8Z2VuLiAqKg0KLQ0KLSAgMS4gQmV3ZWdlIGRlbiBDdXJzb3IgenVyIGVyc3RlbiB1bnRlbiBzdGVoZW5kZW4gbWl0IC0tLT4gbWFya2llcnRlbiBaZWlsZS4NCi0gICAgIERhYmVpIGlzdCBnbGVpY2hnw7xsdGlnLCBhdWYgd2VsY2hlbSBaZWljaGVuIGRlciBaZWlsZSBkZXIgQ3Vyc29yIHN0ZWh0Lg0KLQ0KLSAgMi4gRHLDvGNrZSAgQSAgdW5kIGdpYiBkaWUgZXJmb3JkZXJsaWNoZW4gRXJnw6RuenVuZ2VuIGVpbi4NCi0NCi0gIDMuIFdlbm4gZGFzIEFuZsO8Z2VuIGFiZ2VzY2hsb3NzZW4gaXN0LCBkcsO8Y2tlIDxFU0M+LCB1bSBpbiBkZW4gTm9ybWFsbW9kdXMNCi0gICAgIHp1csO8Y2t6dWtlaHJlbi4NCi0NCi0gIDQuIEJld2VnZSBkZW4gQ3Vyc29yIHp1ciB6d2VpdGVuIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUgdW5kIHdpZWRlcmhvbGUNCi0gICAgIGRpZSBTY2hyaXR0ZSAyIHVuZCAzLCB1bSBkZW4gU2F0eiB6dSBhdXN6dWJlc3Nlcm4uDQotDQotLS0tPiBJbiBkaWVzZXIgWmVpbGUgZmVoDQotICAgICBJbiBkaWVzZXIgWmVpbGUgZmVobHQgZXR3YXMgVGV4dC4NCi0tLS0+IEF1Y2ggaGllciBzdGVoDQotICAgICBBdWNoIGhpZXIgc3RlaHQgZXR3YXMgVW52b2xsc3TDpG5kaWdlcy4NCi0NCi0gIDUuIFdlbm4gRHUgZGljaCBtaXQgZGVtIEFuZsO8Z2VuIHZvbiBUZXh0IHNpY2hlciBmw7xobHN0LCBnZWhlIHp1IExla3Rpb24gMS42Lg0KLX5+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+fg0KLQkJICAgICAgIExla3Rpb24gMS42OiBFSU5FIERBVEVJIEVESVRJRVJFTg0KLQ0KLQkJICoqIEJlbnV0emUgIDp3cSAgLCB1bSBlaW5lIERhdGVpIHp1IHNwZWljaGVybiB1bmQgVmltIHp1IHZlcmxhc3Nlbi4gKioNCi0NCi0gICEhIEhpbndlaXM6IEJldm9yIER1IGVpbmVuIGRlciB1bnRlbiBhdWZnZWbDvGhydGVuIFNjaHJpdHRlIGF1c2bDvGhyc3QsIGxpZXMNCi0gICAgIGRpZXNlIGdlc2FtdGUgTGVrdGlvbiEhDQotDQotICAxLiBWZXJsYXNzZSBkZW4gRWRpdG9yIHNvIHdpZSBpbiBMZWt0aW9uIDEuMjogIDpxISAgICAgICANCi0JICAgT2RlciwgZmFsbHMgZHUgWnVncmlmZiB6dSBlaW5lbSBhbmRlcmVuIFRlcm1pbmFsIGhhc3QsIGbDvGhyZSBkYXMgDQotCQkgRm9sZ2VuZGUgZG9ydCBhdXMuDQotDQotICAyLiBHaWIgZGllc2VzIEtvbW1hbmRvIGluIGRpZSBFaW5nYWJlYXVmZm9yZGVydW5nIGVpbjogIHZpbSB0dXRvciA8RU5URVI+DQotICAgICAndmltJyBpc3QgZGVyIEF1ZnJ1ZiBkZXMgRWRpdG9ycywgJ3R1dG9yJyBpc3QgZGllIHp1IGVkaXRpZXJlbmRlIERhdGVpLg0KLSAgICAgQmVudXR6ZSBlaW5lIERhdGVpLCBkaWUgZ2XDpG5kZXJ0IHdlcmRlbiBkYXJmLg0KLQ0KLSAgMy4gRsO8Z2UgVGV4dCBlaW4gb2RlciBsw7ZzY2hlIGlobiwgd2llIER1IGluIGRlbiB2b3JhbmdlaGVuZGVuIExla3Rpb25lbiANCi0gICAgIGdlbGVybnQgaGFzdC4NCi0NCi0gIDQuIFNwZWljaGVyZSBkaWUgZ2XDpG5kZXJ0ZSBEYXRlaSB1bmQgdmVybGFzc2UgVmltIG1pdDogIDp3cSAgPEVOVEVSPg0KLQ0KLSAgNS4gRmFsbHMgRHUgaW4gU2Nocml0dCAxIGRlbiB2aW10dXRvciBiZWVuZGV0IGhhc3QsIHN0YXJ0ZSB2aW10dXRvciBuZXUgdW5kDQotCSAgIGJld2VnZSBkaWNoIGFid8OkcnRzIGJpcyB6dXIgZm9sZ2VuZGVuIFp1c2FtbWVuZmFzc3VuZy4NCi0NCi0gIDYuIE5hY2hkZW0gRHUgb2JpZ2UgU2Nocml0dGUgZ2VsZXNlbiB1bmQgdmVyc3RhbmRlbiBoYXN0OiBmw7xocmUgc2llIGR1cmNoLg0KLX5+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+fg0KLQkJCSBaVVNBTU1FTkZBU1NVTkcgVk9OIExFS1RJT04gMQ0KLQ0KLQ0KLSAgMS4gRGVyIEN1cnNvciB3aXJkIG1pdCBkZW4gUGZlaWx0YXN0ZW4gb2RlciBkZW4gVGFzdGVuIGhqa2wgYmV3ZWd0Lg0KLQkgaCAobGlua3MpICAgICBqICh1bnRlbikgICAgIGsgKGF1ZnfDpHJ0cykgICAgbCAocmVjaHRzKQ0KLQ0KLSAgMi4gVW0gVmltIGF1cyBkZXIgRWluZ2FiZWF1ZmZvcmRlcnVuZyB6dSBzdGFydGVuLCB0aXBwZTogdmltIERBVEVJIDxFTlRFUj4NCi0NCi0gIDMuIFVtIFZpbSB6dSB2ZXJsYXNzZW4gdW5kIGFsbGUgw4RuZGVydW5nZW4genUgdmVyd2VyZmVuLCB0aXBwZToNCi0JCTxFU0M+ICA6cSEgIDxFTlRFUj4gLg0KLQ0KLSAgNC4gVW0gZGFzIFplaWNoZW4gdW50ZXIgZGVtIEN1cnNvciB6dSBsw7ZzY2hlbiwgdGlwcGU6ICB4DQotDQotICA1LiBVbSBUZXh0IGVpbnp1ZsO8Z2VuIG9kZXIgYW56dWbDvGdlbiwgdGlwcGU6DQotCSBpICAgRWluenVmw7xnZW5kZW4gVGV4dCBlaW5nZWJlbiAgIDxFU0M+ICAgIEVpbmbDvGdlbiB2b3IgZGVtIEN1cnNvcg0KLQkgQSAgIEFuenVmw7xnZW5kZW4gVGV4dCBlaW5nZWJlbiAgICA8RVNDPiAgICBBbmbDvGdlbiBuYWNoIGRlbSBaZWlsZW5lbmRlDQotDQotQW5tZXJrdW5nOiBEcsO8Y2tlbiB2b24gPEVTQz4gYnJpbmd0IERpY2ggaW4gZGVuIE5vcm1hbG1vZHVzIG9kZXIgYnJpY2h0IGVpbg0KLSAgICAgdW5nZXdvbGx0ZXMsIGVyc3QgdGVpbHdlaXNlIGVpbmdlZ2ViZW5lcyBLb21tYW5kbyBhYi4NCi0NCi0gICAgIE51biBmYWhyZSBtaXQgTGVrdGlvbiAyIGZvcnQuDQotfn5+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+DQotCQkJICBMZWt0aW9uIDIuMTogTMOWU0NIS09NTUFORE9TDQotDQotDQotCQkgICAqKiBUaXBwZSAgZHcgICwgdW0gZWluIFdvcnQgenUgbMO2c2NoZW4uICoqDQotDQotICAxLiBEcsO8Y2tlICA8RVNDPiAgLCB1bSBzaWNoZXJ6dXN0ZWxsZW4sIGRhc3MgRHUgaW0gTm9ybWFsbW9kdXMgYmlzdC4NCi0NCi0gIDIuIEJld2VnZSBkZW4gQ3Vyc29yIHp1IGRlciBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlIHVudGVuLg0KLQ0KLSAgMy4gQmV3ZWdlIGRlbiBDdXJzb3IgenVtIEFuZmFuZyBlaW5lcyBXb3J0ZXMsIGRhcyBnZWzDtnNjaHQgd2VyZGVuIHNvbGwuDQotDQotICA0LiBUaXBwZSAgZHcgICwgdW0gZGFzIFdvcnQgenUgZW50ZmVybmVuLg0KLQ0KLSAgQW5tZXJrdW5nOiBEZXIgQnVjaHN0YWJlICBkICBlcnNjaGVpbnQgYXVmIGRlciB1bnRlcnN0ZW4gWmVpbGUgZGVzIFNjaGlybXMsDQotICAgICAgICB3ZW5uIER1IGlobiBlaW5naWJzdC4gVmltIHdhcnRldCBkYXJhdWYsIGRhc3MgRHUgIHcgIGVpbmdpYnN0LiBGYWxscyBEdQ0KLSAgICAgICAgZWluIGFuZGVyZXMgWmVpY2hlbiBhbHMgIGQgIHNpZWhzdCwgaGFzdCBEdSBldHdhcyBGYWxzY2hlcyBnZXRpcHB0Ow0KLSAgICAgICAgZHLDvGNrZSA8RVNDPiB1bmQgYmVnaW5uZSBub2NoIGVpbm1hbC4NCi0NCi0tLS0+IEVpbmlnZSBXw7ZydGVyIGx1c3RpZyBnZWjDtnJlbiBuaWNodCBQYXBpZXIgaW4gZGllc2VuIFNhdHouDQotDQotICA1LiBXaWVkZXJob2xlIGRpZSBTY2hyaXR0ZSAzIHVuZCA0LCBiaXMgZGVyIFNhdHoga29ycmVrdCBpc3QgdW5kIGdlaGUNCi0gICAgIHp1ciBMZWt0aW9uIDIuMi4NCi1+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+fn4NCi0JCSAgICAgIExla3Rpb24gMi4yOiBXRUlURVJFIEzDllNDSEtPTU1BTkRPUw0KLQ0KLQ0KLQkgICAgKiogVGlwcGUgIGQkICAsIHVtIGJpcyB6dW0gRW5kZSBkZXIgWmVpbGUgenUgbMO2c2NoZW4uICoqDQotDQotICAxLiBEcsO8Y2tlIDxFU0M+ICwgdW0gc2ljaGVyenVzdGVsbGVuLCBkYXNzIER1IGltIE5vcm1hbG1vZHVzIGJpc3QuDQotDQotICAyLiBCZXdlZ2UgZGVuIEN1cnNvciB6dSBkZXIgbWl0IC0tLT4gbWFya2llcnRlbiBaZWlsZSB1bnRlbi4NCi0NCi0gIDMuIEJld2VnZSBkZW4gQ3Vyc29yIHp1bSBFbmRlIGRlciBrb3JyZWt0ZW4gWmVpbGUgKE5BQ0ggZGVtIGVyc3RlbiAuICkuDQotDQotICA0LiBUaXBwZSAgICBkJCAgICAsIHVtIGJpcyB6dW0gWmVpbGVuZW5kZSB6dSBsw7ZzY2hlbi4NCi0NCi0tLS0+IEplbWFuZCBoYXQgZGFzIEVuZGUgZGVyIFplaWxlIGRvcHBlbHQgZWluZ2VnZWJlbi4gZG9wcGVsdCBlaW5nZWdlYmVuLg0KLQ0KLQ0KLSAgNS4gR2VoZSB3ZWl0ZXIgenVyIExla3Rpb24gMi4zICwgdW0genUgdmVyc3RlaGVuLCB3YXMgaGllcmJlaSB2b3JnZWh0Lg0KLQ0KLQ0KLQ0KLQ0KLQ0KLX5+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+fg0KLQkJIExla3Rpb24gMi4zOiDDnEJFUiBPUEVSQVRPUkVOIFVORCBCRVdFR1VOR1Naw5xHRQ0KLQ0KLQ0KLSAgVmllbGUgS29tbWFuZG9zLCBkaWUgVGV4dCDDpG5kZXJuLCBzZXR6ZW4gc2ljaCBhdXMgZWluZW0gT3BlcmF0b3IgdW5kIGVpbmVyDQotICBCZXdlZ3VuZyB6dXNhbW1lbi4gRGFzIEZvcm1hdCBmw7xyIGVpbiBMw7ZzY2hrb21tYW5kbyBtaXQgZGVtIEzDtnNjaG9wZXJhdG9yICBkDQotICBsYXV0ZXQgd2llIGZvbGd0Og0KLQ0KLSAgICBkICBCZXdlZ3VuZw0KLQ0KLSAgd29iZWk6DQotICAgIGQgICAgICAgIC0gZGVyIEzDtnNjaG9wZXJhdG9yDQotICAgIEJld2VndW5nIC0gd29yYXVmIGRlciBMw7ZzY2hvcGVyYXRvciBhbmdld2FuZHQgd2lyZCAodW50ZW4gYXVmZ2Vmw7xocnQpLg0KLQ0KLSAgRWluZSBrbGVpbmUgQXVmbGlzdHVuZyB2b24gQmV3ZWd1bmdlbjoNCi0gICAgdyAtIGJpcyB6dW0gQmVnaW5uIGRlcyBuw6RjaHN0ZW4gV29ydGVzIE9ITkUgZGVzc2VuIGVyc3RlcyBaZWljaGVuLg0KLSAgICBlIC0genVtIEVuZGUgZGVzIGFrdHVlbGxlbiBXb3J0ZXMgTUlUIGRlc3NlbiBsZXR6dGVtIFplaWNoZW4uDQotICAgICQgLSB6dW0gRW5kZSBkZXIgWmVpbGUgTUlUIGRlbSBsZXR6dGVuIFplaWNoZW4uDQotDQotICBEZW1lbnRzcHJlY2hlbmQgbMO2c2NodCBkaWUgRWluZ2FiZSB2b24gIGRlICB2b20gQ3Vyc29yIGFuIGJpcyB6dW0gV29ydGVuZGUuDQotDQotQW5tZXJrdW5nOiAgRGllIEVpbmdhYmUgbGVkaWdsaWNoIGRlcyBCZXdlZ3VuZ3N0ZWlscyBpbSBOb3JtYWxtb2R1cyBiZXdlZ3QgZGVuDQotICBDdXJzb3IgZW50c3ByZWNoZW5kLg0KLX5+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+fg0KLQlMZWt0aW9uIDIuNDogQU5XRU5EVU5HIEVJTkVTIFrDhEhMRVJTIEbDnFIgRUlORU4gQkVXRUdVTkdTU0NIUklUVA0KLQ0KLQ0KLSAgICoqIERpZSBFaW5nYWJlIGVpbmVyIFphaGwgdm9yIGVpbmVtIEJld2VndW5nc3NjaHJpdHQgd2llZGVyaG9sdCBkaWVzZW4uICoqDQotDQotICAxLiBCZXdlZ2UgZGVuIEN1cnNvciB6dW0gQmVnaW5uIGRlciBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlIHVudGVuLg0KLQ0KLSAgMi4gVGlwcGUgIDJ3ICAsIHVtIGRlbiBDdXJzb3IgendlaSBXw7ZydGVyIHZvcnfDpHJ0cyB6dSBiZXdlZ2VuLg0KLQ0KLSAgMy4gVGlwcGUgIDNlICAsIHVtIGRlbiBDdXJzb3IgenVtIEVuZGUgZGVzIGRyaXR0ZW4gV29ydGVzIHp1IGJld2VnZW4uDQotDQotICA0LiBUaXBwZSAgMCAgKE51bGwpICwgdW0genVtIEFuZmFuZyBkZXIgWmVpbGUgenUgZ2VsYW5nZW4uDQotDQotICA1LiBXaWVkZXJob2xlIFNjaHJpdHRlIDIgdW5kIDMgbWl0IHZlcnNjaGllZGVuZW4gTnVtbWVybi4NCi0NCi0gIC0tLT4gRGllcyBpc3QgbnVyIGVpbmUgWmVpbGUgYXVzIFfDtnJ0ZXJuLCB1bSBzaWNoIGRhcmluIGhlcnVtenViZXdlZ2VuLg0KLQ0KLSAgNi4gR2VoZSB3ZWl0ZXIgenUgTGVrdGlvbiAyLjUuDQotDQotDQotDQotDQotfn5+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+DQotCSBMZWt0aW9uIDIuNTogQU5XRU5EVU5HIEVJTkVTIFrDhEhMRVJTIEbDnFIgTUVIUkVSRSBMw5ZTQ0hWT1JHw4ROR0UNCi0NCi0NCi0gICAqKiBEaWUgRWluZ2FiZSBlaW5lciBaYWhsIG1pdCBlaW5lbSBPcGVyYXRvciB3aWVkZXJob2x0IGRpZXNlbiBtZWhyZmFjaC4gKioNCi0NCi0gIEluIGRlciBLb21iaW5hdGlvbiBhdXMgTMO2c2Nob3BlcmF0b3IgdW5kIEJld2VndW5nc3NjaHJpdHQgKHNpZWhlIG9iZW4pIA0KLSAgc3RlbGx0IG1hbiwgdW0gbWVociB6dSBsw7ZzY2hlbiBkZW0gU2Nocml0dCBlaW5lbiBaw6RobGVyIHZvcmFuOg0KLQkgZCAgTnVtbWVyICBCZXdlZ3VuZ3NzY2hyaXR0DQotDQotICAxLiBCZXdlZ2UgZGVuIEN1cnNvciB6dW0gZXJzdGVuIFdvcnQgaW4gR1JPU1NCVUNIU1RBQkVOIGluIGRlciBtaXQgLS0tPg0KLSAgICAgbWFya2llcmVuIFplaWxlLg0KLQ0KLSAgMi4gVGlwcGUgIGQydyAgLCB1bSBkaWUgendlaSBXw7ZydGVyIGluIEdST1NTQlVDSFNUQUJFTiB6dSBsw7ZzY2hlbi4NCi0NCi0gIDMuIFdpZWRlcmhvbGUgU2Nocml0dGUgMSB1bmQgIDIgbWl0IGVpbmVtIGFuZGVyZW4gWsOkaGxlciwgdW0gZGllIGRhcmF1ZmZvbC0NCi0gICAgIGdlbmRlbiBXw7ZydGVyIGluIEdST1NTQlVDSFNUQUJFTiBtaXQgZWluZW0gZWluemlnZW4gS29tbWFuZG8genUgbMO2c2NoZW4uDQotDQotLS0tPiAgRGllc2UgQUJDIERFIFplaWxlIEZHSEkgSksgTE1OIE9QIG1pdCBXw7ZydGVybiBpc3QgUSBSUyBUVVYgYmVyZWluaWd0Lg0KLQ0KLQ0KLQ0KLX5+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+fg0KLQkJCUxla3Rpb24gMi42OiBBUkJFSVRFTiBBVUYgWkVJTEVODQotDQotDQotCSAgICAgICAqKiBUaXBwZSAgZGQgICwgdW0gZWluZSBnYW56ZSBaZWlsZSB6dSBsw7ZzY2hlbi4gKioNCi0NCi0gIFdlZ2VuIGRlciBIw6R1Zmlna2VpdCwgZGFzcyBtYW4gZ2FuemUgWmVpbGVuIGzDtnNjaHQsIGthbWVuIGRpZSBFbnR3aWNrbGVyIHZvbg0KLSAgVmkgZGFyYXVmLCBkYXNzIGVzIGxlaWNodGVyIHfDpHJlLCBlaW5mYWNoIHp3ZWkgZCdzIGVpbnp1Z2ViZW4sIHVtIGVpbmUgWmVpbGUNCi0gIHp1IGzDtnNjaGVuLg0KLQ0KLSAgMS4gQmV3ZWdlIGRlbiBDdXJzb3IgenVyIHp3ZWl0ZW4gWmVpbGUgaW4gZGVyIHVudGVuIHN0ZWhlbmRlbiBSZWRld2VuZHVuZy4NCi0gIDIuIFRpcHBlICBkZCAgLCB1bSBkaWUgWmVpbGUgenUgbMO2c2NoZW4uDQotICAzLiBOdW4gYmV3ZWdlIERpY2ggenVyIHZpZXJ0ZW4gWmVpbGUuDQotICA0LiBUaXBwZSAgMmRkICAsIHVtIHp3ZWkgWmVpbGVuIHp1IGzDtnNjaGVuLg0KLQ0KLS0tLT4gIDEpICBSb3NlbiBzaW5kIHJvdCwNCi0tLS0+ICAyKSAgTWF0c2NoIGlzdCBsdXN0aWcsDQotLS0tPiAgMykgIFZlaWxjaGVuIHNpbmQgYmxhdSwNCi0tLS0+ICA0KSAgSWNoIGhhYmUgZWluIEF1dG8sDQotLS0tPiAgNSkgIERpZSBVaHIgc2FndCBkaWUgWmVpdCwNCi0tLS0+ICA2KSAgWnVja2VyIGlzdCBzw7zDnywNCi0tLS0+ICA3KSAgU28gd2llIER1IGF1Y2guDQotDQotfn5+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+DQotCQkgICAgIExla3Rpb24gMi43OiBSw5xDS0fDhE5HSUcgTUFDSEVOIChVTkRPKQ0KLQ0KLQ0KLQkgKiogVGlwcGUgdSAsIHVtIGRpZSBsZXR6dGVuIEtvbW1hbmRvcyByw7xja2fDpG5naWcgenUgbWFjaGVuICoqDQotCSAgICAgICoqIG9kZXIgVSAsIHVtIGVpbmUgZ2FuemUgWmVpbGUgd2llZGVyaGVyenVzdGVsbGVuLiAqKg0KLQ0KLSAgMS4gQmV3ZWdlIGRlbiBDdXJzb3IgenUgZGVyIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUgdW50ZW4NCi0gICAgIHVuZCBzZXR6ZSBpaG4gYXVmIGRlbiBlcnN0ZW4gRmVobGVyLg0KLSAgMi4gVGlwcGUgIHggICwgdW0gZGFzIGVyc3RlIHVuZXJ3w7xuc2NodGUgWmVpY2hlbiB6dSBsw7ZzY2hlbi4NCi0gIDMuIE51biB0aXBwZSAgdSAgLCB1bSBkYXMgc29lYmVuIGF1c2dlZsO8aHJ0ZSBLb21tYW5kbyByw7xja2fDpG5naWcgenUgbWFjaGVuLg0KLSAgNC4gSmV0enQgYmVoZWJlIGFsbGUgRmVobGVyIGF1ZiBkZXIgWmVpbGUgbWl0IEhpbGZlIGRlcyB4ICBLb21tYW5kb3MuDQotICA1LiBOdW4gdGlwcGUgZWluIGdyb8OfZXMgIFUgLCB1bSBkaWUgWmVpbGUgaW4gaWhyZW4gVXJzcHJ1bmdzenVzdGFuZA0KLSAgICAgd2llZGVyaGVyenVzdGVsbGVuLg0KLSAgNi4gTnVuIHRpcHBlICB1ICBlaW5pZ2UgTWFsZSwgdW0gZGFzIFUgdW5kIGRpZSB2b3JoZXJnZWhlbmRlbiBLb21tYW5kb3MNCi0gICAgIHLDvGNrZ8OkbmdpZyB6dSBtYWNoZW4uDQotICA3LiBOdW4gdGlwcGUgQ1RSTC1SIChoYWx0ZSBDVFJMIGdlZHLDvGNrdCB1bmQgZHLDvGNrZSBSKSBtZWhyZXJlIE1hbGUsIHVtIGRpZQ0KLSAgICAgS29tbWFuZG9zIHdpZWRlcmhlcnp1c3RlbGxlbiAoZGllIFLDvGNrZ8OkbmdpZ21hY2h1bmdlbiByw7xja2fDpG5naWcgbWFjaGVuKS4NCi0NCi0tLS0+IEJlZWhlYmUgZGllIEZlaGxsZXIgZGllc3NlciBaZWlsZSB1bmQgc3R0ZWxsZSBzaWUgbWl0dCAndW5kbycgd2llZGVyIGhlci4NCi0NCi0gIDguIERpZXMgc2luZCBzZWhyIG7DvHR6bGljaGUgS29tbWFuZG9zLiAgTnVuIGdlaGUgd2VpdGVyIHp1ciBadXNhbW1lbmZhc3N1bmcgDQotICAgICB2b24gTGVrdGlvbiAyLg0KLX5+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+fg0KLQkJCSBaVVNBTU1FTkZBU1NVTkcgVk9OIExFS1RJT04gMg0KLQ0KLQ0KLSAgMS4gVW0gdm9tIEN1cnNvciBiaXMgenVtIG7DpGNoc3RlbiBXb3J0IHp1IGzDtnNjaGVuLCB0aXBwZTogICAgZHcNCi0gIDIuIFVtIHZvbSBDdXJzb3IgYmlzIHp1bSBFbmRlIGVpbmVyIFplaWxlIHp1IGzDtnNjaGVuLCB0aXBwZTogICAgIGQkDQotICAzLiBVbSBlaW5lIGdhbnplIFplaWxlIHp1IGzDtnNjaGVuLCB0aXBwZTogICAgZGQNCi0NCi0gIDQuIFVtIGVpbmUgQmV3ZWd1bmcgenUgd2llZGVyaG9sZW4sIHN0ZWxsZSBlaW5lIE51bW1lciB2b3JhbjogICAydw0KLSAgNS4gRGFzIEZvcm1hdCBmw7xyIGVpbiDDhG5kZXJ1bmdza29tbWFuZG8gaXN0Og0KLSAgICAgICAgICAgICAgIE9wZXJhdG9yICAgW0FuemFobF0gICBCZXdlZ3VuZ3NzY2hyaXR0DQotICAgICB3b2JlaToNCi0gICAgICAgT3BlcmF0b3IgLSBnaWJ0IGFuLCB3YXMgZ2V0YW4gd2VyZGVuIHNvbGwsIHp1bSBCZWlzcGllbCAgZCAgZsO8ciBkZWxldGUNCi0gICAgICAgW0FuemFobF0gLSBlaW4gb3B0aW9uYWxlciBaw6RobGVyLCB1bSBkZW4gQmV3ZWd1bmdzc2Nocml0dCB6dSB3aWVkZXJob2xlbg0KLSAgICAgICBCZXdlZ3VuZ3NzY2hyaXR0IC0gQmV3ZWd1bmcgw7xiZXIgZGVuIHp1IMOkbmRlcm5kZW4gVGV4dCwgd2llDQotCQkgIHcgKFdvcnQpLCAkICh6dW0gRW5kZSBkZXIgWmVpbGUpLCBldGMuDQotDQotICA2LiBVbSBEaWNoIHp1bSBBbmZhbmcgZGVyIFplaWxlIHp1IGJlZ2ViZW4sIGJlbnV0emUgZGllIE51bGw6ICAwDQotDQotICA3LiBVbSB2b3JoZXJpZ2UgQWt0aW9uZW4gcsO8Y2tnw6RuZ2lnIHp1IG1hY2hlbiwgdGlwcGU6CQl1IChrbGVpbmVzIHUpDQotICAgICBVbSBhbGxlIMOEbmRlcnVuZ2VuIGF1ZiBlaW5lciBaZWlsZSByw7xja2fDpG5naWcgenUgbWFjaGVuOiAgIFUgKGdyb8OfZXMgVSkNCi0gICAgIFVtIGRpZSBSw7xja2fDpG5naWdtYWNodW5nZW4gcsO8Y2tnw6RuZ2lnIHp1IG1hY2hlbiwgdGlwcGU6ICAgIENUUkwtUg0KLQ0KLX5+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+fg0KLQkJCSAgIExla3Rpb24gMy4xOiBBTkbDnEdFTiAoUFVUKQ0KLQ0KLQ0KLSAgICAgKiogVGlwcGUgIHAgICwgdW0gdm9yaGVyIGdlbMO2c2NodGVuIFRleHQgbmFjaCBkZW0gQ3Vyc29yIGFuenVmw7xnZW4uICoqDQotDQotICAxLiBCZXdlZ2UgZGVuIEN1cnNvciB6dXIgZXJzdGVuIHVudGVuIHN0ZWhlbmRlbiBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlLg0KLQ0KLSAgMi4gVGlwcGUgIGRkICAsIHVtIGRpZSBaZWlsZSB6dSBsw7ZzY2hlbiB1bmQgc2llIGluIGVpbmVtIFZpbS1SZWdpc3RlciB6dQ0KLSAgICAgc3BlaWNoZXJuLg0KLQ0KLSAgMy4gQmV3ZWdlIGRlbiBDdXJzb3IgenVyIFplaWxlIGMpLCDDnEJFUiBkZXJqZW5pZ2VuLCB3byBkaWUgZ2Vsw7ZzY2h0ZSBaZWlsZQ0KLSAgICAgcGxhdHppZXJ0IHdlcmRlbiBzb2xsLg0KLQ0KLSAgNC4gIFRpcHBlICAgcCAgICwgdW0gZGllIFplaWxlIHVudGVyaGFsYiBkZXMgQ3Vyc29ycyB6dSBwbGF0emllcmVuLg0KLQ0KLSAgNS4gV2llZGVyaG9sZSBkaWUgU2Nocml0dGUgMiBiaXMgNCwgdW0gYWxsZSBaZWlsZW4gaW4gZGllIHJpY2h0aWdlDQotICAgICBSZWloZW5mb2xnZSB6dSBicmluZ2VuLg0KLQ0KLS0tLT4gZCkgS2FubnN0IER1IGRhcyBhdWNoPw0KLS0tLT4gYikgVmVpbGNoZW4gc2luZCBibGF1LA0KLS0tLT4gYykgSW50ZWxsaWdlbnogaXN0IGxlcm5iYXIsDQotLS0tPiBhKSBSb3NlbiBzaW5kIHJvdCwNCi1+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+fn4NCi0JCQlMZWt0aW9uIDMuMjogRVJTRVRaRU4gKFJFUExBQ0UpDQotDQotDQotICAgKiogVGlwcGUgIHJ4ICAsIHVtIGRhcyBaZWljaGVuIHVudGVyIGRlbSBDdXJzb3IgZHVyY2ggIHggenUgZXJzZXR6ZW4uICoqDQotDQotICAxLiBCZXdlZ2UgZGVuIEN1cnNvciB6dXIgZXJzdGVuIHVudGVuIHN0ZWhlbmRlbiBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlLg0KLQ0KLSAgMi4gQmV3ZWdlIGRlbiBDdXJzb3IsIGJpcyBlciBzaWNoIGF1ZiBkZW0gZXJzdGVuIEZlaGxlciBiZWZpbmRldC4NCi0NCi0gIDMuIFRpcHBlICByICB1bmQgYW5zY2hsaWXDn2VuZCBkYXMgWmVpY2hlbiwgd2VsY2hlcyBkb3J0IHN0ZWhlbiBzb2xsdGUuDQotDQotICA0LiBXaWVkZXJob2xlIFNjaHJpdHRlIDIgdW5kIDMsIGJpcyBkaWUgZXJzdGUgWmVpbGUgZ2xlaWNoIGRlciB6d2VpdGVuIGlzdC4NCi0NCi0tLS0+ICBBbGYgZGllc2UgWmVpdGUgZWluZ2Vnb2JlbiB3dXJkZSwgd3VyZGVuIGVpbmlrZSBmYWxzY2hlIFRhc3RlbiBnZWxpcHB0IQ0KLS0tLT4gIEFscyBkaWVzZSBaZWlsZSBlaW5nZWdlYmVuIHd1cmRlLCB3dXJkZW4gZWluaWdlIGZhbHNjaGUgVGFzdGVuIGdldGlwcHQhDQotDQotICA1LiBOdW4gZmFocmUgZm9ydCBtaXQgTGVrdGlvbiAzLjIuDQotDQotQW5tZXJrdW5nOiBFcmlubmVyZSBEaWNoIGRhcmFuLCBkYXNzIER1IGR1cmNoIEFud2VuZGVuIGxlcm5lbiBzb2xsdGVzdCwgbmljaHQgDQotICAgICBkdXJjaCBBdXN3ZW5kaWdsZXJuZW4uDQotDQotDQotfn5+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+DQotCQkJICBMZWt0aW9uIDMuMzogw4ROREVSTiAoQ0hBTkdFKQ0KLQ0KLQ0KLSAgICAgICoqIFVtIGVpbmUgw4RuZGVydW5nIGJpcyB6dW0gV29ydGVuZGUgZHVyY2h6dWbDvGhyZW4sIHRpcHBlICBjZSAuICoqDQotDQotICAxLiBCZXdlZ2UgZGVuIEN1cnNvciB6dXIgZXJzdGVuIHVudGVuIHN0ZWhlbmRlbiBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlLg0KLQ0KLSAgMi4gUGxhdHppZXJlIGRlbiBDdXJzb3IgYXVmIGRhcyAgcyAgdm9uIFdzdHdyLg0KLQ0KLSAgMy4gVGlwcGUgIGNlICB1bmQgZGllIFdvcnRrb3JyZWt0dXIgZWluIChpbiBkaWVzZW0gRmFsbCB0aXBwZSAgw7ZydGVyICkuDQotDQotICA0LiBEcsO8Y2tlIDxFU0M+IHVuZCBiZXdlZ2UgZGVuIEN1cnNvciB6dW0gbsOkY2hzdGVuIHp1IMOkbmRlcm5kZW4gWmVpY2hlbi4NCi0NCi0gIDUuIFdpZWRlcmhvbGUgU2Nocml0dGUgMyB1bmQgNCBiaXMgZGVyIGVyc3RlIFNhdHogZ2xlaWNoIGRlbSB6d2VpdGVuIGlzdC4NCi0NCi0tLS0+IEVpbmlnZSBXc3R3ciBkaWVzZXIgWmxhd3cgbGFzZGpsYWYgbWl0IGRlbSDDhG5kZXJuLU9wZXJhdG9yIGdhYWF1dSB3ZXJkZW4uDQotLS0tPiBFaW5pZ2UgV8O2cnRlciBkaWVzZXIgWmVpbGUgc29sbGVuIG1pdCBkZW0gw4RuZGVybi1PcGVyYXRvciBnZcOkbmRlcnQgd2VyZGVuLg0KLQ0KLUJlYWNodGUsIGRhc3MgIGNlICBkYXMgV29ydCBsw7ZzY2h0IHVuZCBEaWNoIGluIGRlbiBFaW5nYWJlbW9kdXMgdmVyc2V0enQuDQotDQotDQotDQotfn5+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+DQotCQkgICAgIExla3Rpb24gMy40OiBNRUhSIMOETkRFUlVOR0VOIE1JVFRFTFMgYw0KLQ0KLQ0KLSAgICAgKiogRGFzIGNoYW5nZS1Lb21tYW5kbyBhcmJlaXRldCBtaXQgZGVuc2VsYmVuIEJld2VndW5nZW4gd2llIGRlbGV0ZS4gICoqDQotDQotICAxLiBEZXIgY2hhbmdlIE9wZXJhdG9yIGFyYmVpdGV0IGluIGdsZWljaGVyIFdlaXNlIHdpZSBkZWxldGUuIERhcyBGb3JtYXQgaXN0Og0KLQ0KLSAgICAgICAgIGMgICAgW0FuemFobF0gIEJld2VndW5nc3NjaHJpdHQNCi0NCi0gIDIuIERpZSBCZXdlZ3VuZ3NzY2hyaXR0ZSBzaW5kIGRpZSBnbGVpY2hlbiAsIHNvIHdpZSAgdyAgKFdvcnQpIHVuZCAgJA0KLSAgICAgKFplaWxlbmVuZGUpLg0KLQ0KLSAgMy4gQmV3ZWdlIERpY2ggenVyIGVyc3RlbiB1bnRlbiBzdGVoZW5kZW4gbWl0IC0tLT4gbWFya2llcnRlbiBaZWlsZS4NCi0NCi0gIDQuIEJld2VnZSBkZW4gQ3Vyc29yIHp1bSBlcnN0ZW4gRmVobGVyLg0KLQ0KLSAgNS4gVGlwcGUgIGMkICAsIGdpYiBkZW4gUmVzdCBkZXIgWmVpbGUgd2llIGluIGRlciB6d2VpdGVuIGVpbiwgZHLDvGNrZSA8RVNDPiAuDQotDQotLS0tPiBEYXMgRW5kZSBkaWVzZXIgWmVpbGUgc29sbCBhbiBkaWUgendlaXRlIFplaWxlIGFuZ2VnbGljaGVuIHdlcmRlbi4NCi0tLS0+IERhcyBFbmRlIGRpZXNlciBaZWlsZSBzb2xsIG1pdCBkZW0gIGMkICBLb21tYW5kbyBrb3JyaWdpZXJ0IHdlcmRlbi4NCi0NCi1Bbm1lcmt1bmc6IER1IGthbm5zdCBkaWUgUsO8Y2t0YXN0ZSBiZW51dHplbiwgdW0gVGlwcGZlaGxlciB6dSBrb3JyaWdpZXJlbi4NCi1+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+fn4NCi0JCQkgWlVTQU1NRU5GQVNTVU5HIFZPTiBMRUtUSU9OIDMNCi0NCi0NCi0gIDEuIFVtIGVpbmVuIHZvcmhlciBnZWzDtnNjaHRlbiBUZXh0IGFuenVmw7xnZW4sIHRpcHBlICAgcCAuIERpZXMgZsO8Z3QgZGVuDQotICAgICBnZWzDtnNjaHRlbiBUZXh0IE5BQ0ggZGVtIEN1cnNvciBhbiAod2VubiBlaW5lIGdhbnplIFplaWxlIGdlbMO2c2NodCB3dXJkZSwNCi0gICAgIHdpcmQgZGllc2UgaW4gZGllIFplaWxlIHVudGVyIGRlbSBDdXJzb3IgZWluZ2Vmw7xndCkuDQotDQotICAyLiBVbSBkYXMgWmVpY2hlbiB1bnRlciBkZW0gQ3Vyc29yIHp1IGVyc2V0emVuLCB0aXBwZSAgIHIgICB1bmQgZGFuYWNoIGRhcyANCi0gICAgIGFuIGRpZXNlciBTdGVsbGUgZ2V3b2xsdGUgWmVpY2hlbi4NCi0NCi0gIDMuIERlciDDhG5kZXJ1bmdzLSAoY2hhbmdlKSBPcGVyYXRvciBlcmxhdWJ0LCB2b20gQ3Vyc29yIGJpcyB6dW0gRW5kZSBkZXMNCi0gICAgIEJld2VndW5nc3NjaHJpdHRlcyB6dSDDpG5kZXJuLiBUaXBwZSAgY2UgICwgdW0gZWluZSDDhG5kZXJ1bmcgdm9tIEN1cnNvciBiaXMNCi0gICAgIHp1bSBFbmRlIGRlcyBXb3J0ZXMgdm9yenVuZWhtZW47ICBjJCAgYmlzIHp1bSBFbmRlIGVpbmVyIFplaWxlLg0KLQ0KLSAgNC4gRGFzIEZvcm1hdCBmw7xyIGNoYW5nZSBpc3Q6DQotDQotCSBjICAgW0FuemFobF0gIEJld2VndW5nc3NjaHJpdHQNCi0NCi0gIE51biBmYWhyZSBtaXQgZGVyIG7DpGNoc3RlbiBMZWt0aW9uIGZvcnQuDQotDQotDQotDQotfn5+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+DQotCQkgIExla3Rpb24gNC4xOiBDVVJTT1JQT1NJVElPTiBVTkQgREFURUlTVEFUVVMNCi0NCi0gKiogVGlwcGUgQ1RSTC1HICwgdW0gZGVpbmUgRGF0ZWlwb3NpdGlvbiBzb3dpZSBkZW4gRGF0ZWlzdGF0dXMgYW56dXplaWdlbi4gKioNCi0gICAgICoqIFRpcHBlIEcgLCB1bSBEaWNoIHp1IGVpbmVyIFplaWxlIGluIGRlciBEYXRlaSB6dSBiZWdlYmVuLiAqKg0KLQ0KLUFubWVya3VuZzogTGllcyBkaWVzZSBnZXNhbXRlIExla3Rpb24sIGJldm9yIER1IGlyZ2VuZGVpbmVuIFNjaHJpdHQgYXVzZsO8aHJzdCEhDQotDQotICAxLiBIYWx0ZSBkaWUgQ3RybCBUYXN0ZSB1bnRlbiB1bmQgZHLDvGNrZSAgZyAuIERpZXMgbmVubmVuIHdpciBDVFJMLUcuDQotICAgICBFaW5lIFN0YXR1c21lbGR1bmcgYW0gRnXDnyBkZXIgU2VpdGUgZXJzY2hlaW50IG1pdCBkZW0gRGF0ZWluYW1lbiB1bmQgZGVyDQotICAgICBQb3NpdGlvbiBpbm5lcmhhbGIgZGVyIERhdGVpLiBNZXJrZSBEaXIgZGllIFplaWxlbm51bW1lciBmw7xyIFNjaHJpdHQgMy4NCi0NCi1Bbm1lcmt1bmc6IE3DtmdsaWNoZXJ3ZWlzZSBzaWVoc3QgRHUgZGllIEN1cnNvcnBvc2l0aW9uIGluIGRlciB1bnRlcmVuIHJlY2h0ZW4NCi0gICAgICBCaWxkc2NoaXJtZWNrZS4gRGllcyBpc3QgQXVzd2lya3VuZyBkZXIgJ3J1bGVyJyBPcHRpb24gDQotCSAgKHNpZWhlIDpoZWxwICdydWxlcicpDQotDQotICAyLiBEcsO8Y2tlICBHICAsIHVtIERpY2ggenVtIEVuZGUgZGVyIERhdGVpIHp1IGJlZ2ViZW4uDQotICAgICBUaXBwZSAgZ2cgICwgdW0gRGljaCB6dW0gQW5mYW5nIGRlciBEYXRlaSB6dSBiZWdlYmVuLg0KLQ0KLSAgMy4gR2liIGRpZSBOdW1tZXIgZGVyIFplaWxlIGVpbiwgYXVmIGRlciBEdSB2b3JoZXIgd2Fyc3QsIGdlZm9sZ3Qgdm9uICBHIC4NCi0gICAgIERpZXMgYnJpbmd0IERpY2ggenVyw7xjayB6dSBkZXIgWmVpbGUsIGF1ZiBkZXIgRHUgZ2VzdGFuZGVuIGhhc3QsIGFscyBEdQ0KLSAgICAgZGFzIGVyc3RlIE1hbCBDVFJMLUcgZ2VkcsO8Y2t0IGhhc3QuDQotDQotICA0LiBXZW5uIER1IERpY2ggc2ljaGVyIGdlbnVnIGbDvGhsc3QsIGbDvGhyZSBkaWUgU2Nocml0dGUgMSBiaXMgMyBhdXMuDQotfn5+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+DQotCQkgICAgICAgTGVrdGlvbiA0LjI6IERBUyBTVUNIRU4gLSBLT01NQU5ETw0KLQ0KLQ0KLSAgKiogVGlwcGUgIC8gIGdlZm9sZ3Qgdm9uIGVpbmVtIEF1c2RydWNrLCB1bSBuYWNoIGRlbSBBdXNkcnVjayB6dSBzdWNoZW4uICoqDQotDQotICAxLiBJbSBOb3JtYWxtb2R1cywgdGlwcGUgZGFzICAvICBaZWljaGVuLiAgQmVhY2h0ZSwgZGFzcyBkYXMgIC8gdW5kIGRlcg0KLSAgICAgQ3Vyc29yIGFtIEZ1w58gZGVzIFNjaGlybXMgZXJzY2hlaW5lbiwgc28gd2llIGJlaW0gOglLb21tYW5kby4NCi0NCi0gIDIuIE51biB0aXBwZSAnRmVoaGxlcicgPEVOVEVSPi4gRGllcyBpc3QgZGFzIFdvcnQsIG5hY2ggZGVtIER1IHN1Y2hlbiB3aWxsc3QuDQotDQotICAzLiBVbSBuYWNoIGRlbXNlbGJlbiBBdXNkcnVjayB3ZWl0ZXJ6dXN1Y2hlbiwgdGlwcGUgZWluZmFjaCAgbiAoZsO8ciBuZXh0KS4NCi0gICAgIFVtIG5hY2ggZGVtc2VsYmVuIEF1c2RydWNrIGluIGRlciBHZWdlbnJpY2h0dW5nIHp1IHN1Y2hlbiwgdGlwcGUgIE4gLg0KLQ0KLSAgNC4gVW0gbmFjaCBlaW5lbSBBdXNkcnVjayByw7xja3fDpHJ0cyB6dSBzdWNoZW4gLCBiZW51dHplICA/ICBzdGF0dCAgLyAuDQotDQotICA1LiBVbSBkYWhpbiB6dXLDvGNrenVrZWhyZW4sIHZvbiB3byBEdSBnZWtvbW1lbiBiaXN0LCBkcsO8Y2tlIENUUkwtTyAoSGFsdGUNCi0gICAgIEN0cmwgdW50ZW4gdW5kIGRyw7xja2UgZGVuIEJ1Y2hzdGFiZW4gbykuIFdpZWRlcmhvbGUgZGllcywgdW0gbm9jaCB3ZWl0ZXINCi0gICAgIHp1csO8Y2t6dWdlaGVuLiAgQ1RSTC1JIGdlaHQgdm9yd8OkcnRzLg0KLQ0KLS0tLT4gIEZlaGxlciBzY2hyZWlidCBzaWNoIG5pY2h0ICJGZWhobGVyIjsgRmVoaGxlciBpc3QgZWluIEZlaGxlcg0KLUFubWVya3VuZzogV2VubiBkaWUgU3VjaGUgZGFzIERhdGVpZW5kZSBlcnJlaWNodCBoYXQsIHdpcmQgc2llIGFtIEFuZmFuZw0KLSAgICAgICAgZm9ydGdlc2V0enQsIGVzIHNlaSBkZW5uLCBkaWUgJ3dyYXBzY2FuJyBPcHRpb24gd3VyZGUgYWJnZXNjaGFsdGV0Lg0KLX5+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+fg0KLQkJICAgICBMZWt0aW9uIDQuMzogUEFTU0VOREUgS0xBTU1FUk4gRklOREVODQotDQotDQotICAgKiogVGlwcGUgICUgLCB1bSBlaW5lIGdlZ2Vuw7xiZXJsaWVnZW5kZW4gS2xhbW1lciApLF0sIG9kZXIgfSB6dSBmaW5kZW4uICoqDQotDQotICAxLiBQbGF0emllcmUgZGVuIEN1cnNvciBhdWYgaXJnZW5kZWluZW0gZGVyIFplaWNoZW4gKCwgWywgb2RlciB7IGluIGRlciB1bnRlbg0KLSAgICAgc3RlaGVuZGVuIFplaWxlLCBkaWUgbWl0IC0tLT4gbWFya2llcnQgaXN0Lg0KLQ0KLSAgMi4gTnVuIHRpcHBlIGRhcyAgJSAgWmVpY2hlbi4NCi0NCi0gIDMuIERlciBDdXJzb3IgYmV3ZWd0IHNpY2ggenVyIHBhc3NlbmRlbiBnZWdlbsO8YmVybGllZ2VuZGVuIEtsYW1tZXIuDQotDQotICA0LiBUaXBwZSAgJSAsIHVtIGRlbiBDdXJzb3IgenVyIHBhc3NlbmRlbiBhbmRlcmVuIEtsYW1tZXIgenUgYmV3ZWdlbi4NCi0NCi0gIDUuIFNldHplIGRlbiBDdXJzb3IgYXVmIGVpbiBhbmRlcmVzICgsKSxbLF0seyBvZGVyIH0gdW5kIHByb2JpZXJlICAlICBhdXMuDQotDQotLS0tPiBEaWVzICggaXN0IGVpbmUgVGVzdHplaWxlICggbWl0IFsgdmVyc2NoaWVkZW5lbiBdIHsgS2xhbW1lcm4gfSAgZGFyaW4uICkpDQotDQotQW5tZXJrdW5nOiBEaWVzZSBGdW5rdGlvbmFsaXTDpHQgaXN0IHNlaHIgbsO8dHpsaWNoIGJlaSBkZXIgRmVobGVyc3VjaGUgaW4gZWluZW0NCi0gICAgIFByb2dyYW1tdGV4dCwgaW4gZGVtIHBhc3NlbmRlIEtsYW1tZXJuIGZlaGxlbiENCi0NCi0NCi1+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+fn4NCi0JCUxla3Rpb24gNC40OiBEQVMgRVJTRVRaVU5HU0tPTU1BTkRPIChTVUJTVElUVVRFKQ0KLQ0KLQ0KLQkgKiogVGlwcGUgOnMvYWx0L25ldS9nICAsIHVtICdhbHQnIGR1cmNoICduZXUnIHp1IGVyc2V0emVuLiAqKg0KLQ0KLSAgMS4gQmV3ZWdlIGRlbiBDdXJzb3IgenUgZGVyIHVudGVuIHN0ZWhlbmRlbiBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlLg0KLQ0KLSAgMi4gVGlwcGUgIDpzL2RpZWUvZGllIDxFTlRFUj4gLiAgQmVhY2h0ZSwgZGFzcyBkZXIgQmVmZWhsIG51ciBkYXMgZXJzdGUNCi0gICAgIFZvcmtvbW1lbiB2b24gImRpZWUiIGVyc2V0enQuDQotDQotICAzLiBOdW4gdGlwcGUgICA6cy9kaWVlL2RpZS9nIC4gRGFzIFp1ZsO8Z2VuIGRlcyBGbGFncyAgZyAgIGJlZGV1dGV0LCBlaW5lDQotICAgICBnbG9iYWxlIEVyc2V0enVuZyDDvGJlciBkaWUgWmVpbGUgZHVyY2h6dWbDvGhyZW4sIGRpZXMgZXJzZXR6dCBhbGxlIA0KLQkgVm9ya29tbWVuIHZvbiAiZGllZSIgYXVmIGRlciBaZWlsZS4NCi0NCi0tLS0+IGRpZWUgc2Now7Zuc3RlIFplaXQsIHVtIGRpZWUgQmx1bWVuIGFuenVzY2hhdWVuLCBpc3QgZGllZSBGcsO8aGxpbmdzemVpdC4NCi0NCi0gIDQuIFVtIGFsbGUgVm9ya29tbWVuIGVpbmVyIFplaWNoZW5rZXR0ZSBpbm5lcmhhbGIgendlaWVyIFplaWxlbiB6dSDDpG5kZXJuLA0KLSAgICAgdGlwcGUgIDojLCNzL2FsdC9uZXUvZyAgd29iZWkgIywjIGRpZSBaZWlsZW5udW1tZXJuIGRlcyBCZXJlaWNoZXMgc2luZCwNCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluIGRlbSBkaWUgRXJzZXR6dW5nIGR1cmNoZ2Vmw7xocnQgd2VyZGVuIHNvbGwuDQotICAgICBUaXBwZSAgOiVzL2FsdC9uZXUvZyAgICB1bSBhbGxlIFZvcmtvbW1lbiBpbiBkZXIgZ2VzYW10ZW4gRGF0ZWkgenUgw6RuZGVybi4NCi0gICAgIFRpcHBlICA6JXMvYWx0L25ldS9nYyAgIHVtIGFsbGUgVm9ya29tbWVuIGluIGRlciBnZXNhbXRlbiBEYXRlaSB6dSBmaW5kZW4NCi0gICAgICAgICAgICAgICAgICAgICBtaXQgZWluZW0gRnJhZ2VkaWFsb2csIG9iIGVyc2V0enQgd2VyZGVuIHNvbGwgb2RlciBuaWNodC4NCi1+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+fn4NCi0JCQkgWlVTQU1NRU5GQVNTVU5HIFZPTiBMRUtUSU9OIDQNCi0NCi0gIDEuIENUUkwtRyAgemVpZ3QgZGllIGFrdHVlbGxlIERhdGVpcG9zaXRpb24gc293aWUgZGVuIERhdGVpc3RhdHVzLg0KLSAgICAgICAgICAgICBHICBicmluZ3QgRGljaCB6dW0gRW5kZSBkZXIgRGF0ZWkuDQotICAgICBOdW1tZXIgIEcgIGJyaW5ndCBEaWNoIHp1ciBlbnRzcHJlY2hlbmRlbiBaZWlsZW5udW1tZXIuDQotICAgICAgICAgICAgZ2cgIGJyaW5ndCBEaWNoIHp1ciBlcnN0ZW4gWmVpbGUuDQotDQotICAyLiBEaWUgRWluZ2FiZSB2b24gIC8gIHBsdXMgZWluZW0gQXVzZHJ1Y2sgc3VjaHQgVk9SV8OEUlRTIG5hY2ggZGVtIEF1c2RydWNrLg0KLSAgICAgRGllIEVpbmdhYmUgdm9uICA/ICBwbHVzIGVpbmVtIEF1c2RydWNrIHN1Y2h0IFLDnENLV8OEUlRTIG5hY2ggZGVtIEF1c2RydWNrLg0KLSAgICAgVGlwcGUgbmFjaCBlaW5lciBTdWNoZSAgbiAgLCB1bSBkYXMgbsOkY2hzdGUgVm9ya29tbWVuIGluIGRlciBnbGVpY2hlbg0KLSAgICAgUmljaHR1bmcgenUgZmluZGVuOyBvZGVyICBOICAsIHVtIGluIGRlciBHZWdlbnJpY2h0dW5nIHp1IHN1Y2hlbi4NCi0gICAgIENUUkwtTyBicmluZ3QgRGljaCB6dXLDvGNrIHp1IMOkbHRlcmVuIFBvc2l0aW9uZW4sIENUUkwtSSB6dSBuZXVlcmVuLg0KLQ0KLSAgMy4gRGllIEVpbmdhYmUgdm9uICAlICAsIHdlbm4gZGVyIEN1cnNvciBzaWNoIGF1ZiAoLCksWyxdLHssIG9kZXIgfQ0KLSAgICAgYmVmaW5kZXQsIGJyaW5ndCBEaWNoIHp1ciBHZWdlbmtsYW1tZXIuDQotDQotICA0LiBVbSBkYXMgZXJzdGUgVm9ya29tbWVuIHZvbiAiYWx0IiBpbiBlaW5lciBaZWlsZSBkdXJjaCAibmV1IiB6dSBlcnNldHplbiwNCi0gICAgICAgICAgICAgdGlwcGUgICAgICAgOnMvYWx0L25ldQ0KLSAgICAgVW0gYWxsZSBWb3Jrb21tZW4gdm9uICJhbHQiIGluIGRlciBaZWlsZSBlcnNldHplbiwgdGlwcGUgIDpzL2FsdC9uZXUvZw0KLSAgICAgVW0gQXVzZHLDvGNrZSBpbm5lcmhhbGIgendlaWVyIFplaWxlbiAjIHp1IGVyc2V0emVuICAgICAgICA6Iywjcy9hbHQvbmV1L2cNCi0gICAgIFVtIGFsbGUgVm9ya29tbWVuIGluIGRlciBnYW56ZW4gRGF0ZWkgenUgZXJzZXR6ZW4sIHRpcHBlICA6JXMvYWx0L25ldS9nDQotICAgICBGw7xyIGVpbmUgamVkZXNtYWxpZ2UgQmVzdMOkdGlndW5nLCBhZGRpZXJlICdjJyAoY29uZmlybSkgICA6JXMvYWx0L25ldS9nYw0KLX5+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+fg0KLQkJTGVrdGlvbiA1LjE6IEFVU0bDnEhSRU4gRUlORVMgRVhURVJORU4gS09NTUFORE9TDQotDQotDQotICAqKiBHaWIgIDohICwgZ2Vmb2xndCB2b24gZWluZW0gZXh0ZXJuZW4gS29tbWFuZG8gZWluLCB1bSBlcyBhdXN6dWbDvGhyZW4uICoqDQotDQotICAxLiBUaXBwZSBkYXMgdmVydHJhdXRlIEtvbW1hbmRvICA6ICAsIHVtIGRlbiBDdXJzb3IgYXVmIGRlbiBGdcOfIGRlcyBTY2hpcm1zDQotICAgICB6dSBzZXR6ZW4uIERpZXMgZXJsYXVidCBEaXIsIGVpbiBLb21tYW5kb3plaWxlbi1Lb21tYW5kbyBlaW56dWdlYmVuLg0KLQ0KLSAgMi4gTnVuIHRpcHBlIGVpbiAgISAgKEF1c3J1ZmV6ZWljaGVuKS4gIERpZXMgZXJtw7ZnbGljaHQgRGlyLCBlaW4gYmVsaWViaWdlcywNCi0gICAgIGV4dGVybmVzIFNoZWxsa29tbWFuZG8gYXVzenVmw7xocmVuLg0KLQ0KLSAgMy4gQWxzIEJlaXNwaWVsIHRpcHBlICAgbHMgICBuYWNoIGRlbSAgISAgdW5kIGRyw7xja2UgPEVOVEVSPi4gRGllcyBsaWVmZXJ0DQotICAgICBlaW5lIEF1Zmxpc3R1bmcgZGVpbmVzIFZlcnplaWNobmlzc2VzOyBnZW5hdXNvLCBhbHMgd2VubiBEdSBpbiBkZXINCi0gICAgIEVpbmdhYmVhdWZmb3JkZXJ1bmcgd8OkcnN0LiAgT2RlciB2ZXJ3ZW5kZSAgOiFkaXIgICwgZmFsbHMgbHMgbmljaHQgZ2VodC4NCi0NCi1Bbm1lcmt1bmc6ICBNaXQgZGllc2VyIE1ldGhvZGUga2FubiBqZWRlcyBiZWxpZWJpZ2UgZXh0ZXJuZSBLb21tYW5kbw0KLSAgICAgYXVzZ2Vmw7xocnQgd2VyZGVuLCBhdWNoIG1pdCBBcmd1bWVudGVuLg0KLQ0KLUFubWVya3VuZzogIEFsbGUgIDogIEtvbW1hbmRvcyBtw7xzc2VuIGR1cmNoIEVpbmdhYmUgdm9uIDxFTlRFUj4NCi0gICAgIGFiZ2VzY2hsb3NzZW4gd2VyZGVuLiBWb24gamV0enQgYW4gZXJ3w6RobmVuIHdpciBkaWVzIG5pY2h0IGplZGVzbWFsLg0KLQ0KLQ0KLX5+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+fg0KLQkJTGVrdGlvbiA1LjI6IE1FSFIgw5xCRVIgREFTIFNDSFJFSUJFTiBWT04gREFURUlFTg0KLQ0KLQ0KLSoqIFVtIGFtIFRleHQgZHVyY2hnZWbDvGhydGUgw4RuZGVydW5nZW4genUgc3BlaWNoZXJuLCB0aXBwZSA6dyBEQVRFSU5BTUUuICoqDQotDQotICAxLiBUaXBwZSAgOiFkaXIgIG9kZXIgIDohbHMgICwgdW0gZWluZSBBdWZsaXN0dW5nIGRlaW5lcyBWZXJ6ZWljaG5pc3NlcyB6dQ0KLSAgICAgZXJoYWx0ZW4uICBEdSB3ZWnDn3QgbnVuIGJlcmVpdHMsIGRhc3MgRHUgZGFuYWNoIDxFTlRFUj4gZWluZ2ViZW4gbXVzc3QuDQotDQotICAyLiBXw6RobGUgZWluZW4gRGF0ZWluYW1lbiwgZGVyIG5vY2ggbmljaHQgZXhpc3RpZXJ0LCB6LkIuIFRFU1QuDQotDQotICAzLiBOdW4gdGlwcGU6ICA6dyBURVNUICAgKHdvYmVpIFRFU1QgZGVyIGdld8OkaGx0ZSBEYXRlaW5hbWUgaXN0KS4NCi0NCi0gIDQuIERpZXMgc3BlaWNoZXJ0IGRpZSBnYW56ZSBEYXRlaSAoZGVuIFZpbSBUdXRvcikgdW50ZXIgZGVtIE5hbWVuIFRFU1QuDQotICAgICBVbSBkaWVzIHp1IMO8YmVycHLDvGZlbiwgdGlwcGUgbm9jaG1hbHMgIDohbHMgIGJ6dy4gICFkaXIsIHVtIGRlaW5lbg0KLSAgICAgVmVyemVpY2huaXNpbmhhbHQgenUgc2VoZW4uDQotDQotQW5tZXJrdW5nOiBXw7xyZGVzdCBEdSBWaW0gamV0enQgYmVlbmRlbiB1bmQgZGFuYWNoIHdpZWRlciBtaXQgdmltIFRFU1QNCi0gICAgc3RhcnRlbiwgZGFubiB3w6RyZSBkaWVzZSBEYXRlaSBlaW5lIGV4YWt0ZSBLb3BpZSBkZXMgVHV0b3JzIHp1IGRlbQ0KLSAgICBaZWl0cHVua3QsIGFscyBEdSBpaG4gZ2VzcGVpY2hlcnQgaGFzdC4NCi0NCi0gIDUuIE51biBlbnRmZXJuZSBkaWUgRGF0ZWkgZHVyY2ggRWluZ2FiZSB2b24gKE1TLURPUyk6ICAgIDohZGVsIFRFU1QNCi0gICAgICAgICAgICAgICAgICAgICAgb2RlciAoVW5peCk6ICAgICAgICAgICAgICAgICAgICAgICAgIDohcm0gVEVTVA0KLX5+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+fg0KLQkJIExla3Rpb24gNS4zOiBBVVNXw4RITEVOIFZPTiBURVhUIFpVTSBTQ0hSRUlCRU4NCi0NCi0qKiBVbSBlaW5lbiBBYnNjaG5pdHQgZGVyIERhdGVpIHp1IHNwZWljaGVybiwgIHRpcHBlICB2ICBCZXdlZ3VuZyAgOncgREFURUkgKioNCi0NCi0gIDEuIEJld2VnZSBkZW4gQ3Vyc29yIHp1IGRpZXNlciBaZWlsZS4NCi0NCi0gIDIuIFRpcHBlICB2ICB1bmQgYmV3ZWdlIGRlbiBDdXJzb3IgenVtIGbDvG5mdGVuIEF1Zmxpc3R1bmdzcHVua3QgdW50ZW4uDQotICAgICBCZWFjaHRlLCBkYXNzIGRlciBUZXh0IGhlcnZvcmdlaG9iZW4gd2lyZC4NCi0NCi0gIDMuIERyw7xja2UgZGFzIFplaWNoZW4gIDogLiBBbSBGdcOfIGRlcyBTY2hpcm1zIGVyc2NoZWludCAgOic8LCc+IC4NCi0NCi0gIDQuIFRpcHBlICB3IFRFU1QgICwgd29iZWkgVEVTVCBlaW4gbm9jaCBuaWNodCB2b3JoYW5kZW5lciBEYXRlaW5hbWUgaXN0Lg0KLSAgICAgVmVyZ2V3aXNzZXJlIERpY2gsIGRhc3MgRHUgIDonPCwnPncgVEVTVCAgc2llaHN0LCBiZXZvciBEdSA8RU5URVI+IGRyw7xja3N0Lg0KLQ0KLSAgNS4gVmltIHNjaHJlaWJ0IGRpZSBhdXNnZXfDpGhsdGVuIFplaWxlbiBpbiBkaWUgRGF0ZWkgVEVTVC4gQmVudXR6ZSAgOiFkaXINCi0gICAgIG9kZXIgIDohbHMgLCB1bSBzaWUgenUgc2VoZW4uIEzDtnNjaGUgc2llIG5vY2ggbmljaHQhIFdpciB3ZXJkZW4gc2llIGluDQotICAgICBkZXIgbsOkY2hzdGVuIExla3Rpb24gYmVudXR6ZW4uDQotDQotSGlud2VpczogRHLDvGNrZW4gdm9uICB2ICBzdGFydGV0IGRpZSBWaXN1ZWxsZSBBdXN3YWhsLiBEdSBrYW5uc3QgZGVuIEN1cnNvcg0KLSAgIHVtaGVyYmV3ZWdlbiwgdW0gZGllIEF1c3dhaGwgenUgdmVyZ3LDtsOfZXJuIG9kZXIgenUgdmVya2xlaW5lcm4uIEFuc2NobGllw59lbmQNCi0gICBsw6Rzc3Qgc2ljaCBlaW4gT3BlcmF0b3IgYW53ZW5kZW4sIHVtIG1pdCBkZW0gVGV4dCBldHdhcyB6dSB0dW4uIFp1bSBCZWlzcGllbA0KLSAgIGzDtnNjaHQgIGQgIGRlbiBUZXh0Lg0KLQ0KLX5+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+fg0KLQkgICAgICBMZWt0aW9uIDUuNDogRUlOTEVTRU4gVU5EIFpVU0FNTUVORsOcSFJFTiBWT04gREFURUlFTg0KLQ0KLQ0KLSAgICAgICAqKiBVbSBkZW4gSW5oYWx0IGVpbmVyIERhdGVpIGVpbnp1bGVzZW4sIHRpcHBlICA6ciBEQVRFSU5BTUUgICoqDQotDQotICAxLiBQbGF0emllcmUgZGVuIEN1cnNvciBkaXJla3Qgw7xiZXIgZGllc2VyIFplaWxlLg0KLQ0KLUJFQUNIVEU6ICBOYWNoZGVtIER1IFNjaHJpdHQgMiBhdXNnZWbDvGhydCBoYXN0LCB3aXJzdCBEdSBUZXh0IGF1cyBMZWt0aW9uIDUuMw0KLSAgICAgICBzZWhlbi4gRGFubiBiZXdlZ2UgRGljaCB3aWVkZXIgQUJXw4RSVFMsIExla3Rpb24gNS40IHdpZWRlcnp1c2VoZW4uDQotDQotICAyLiBOdW4gbGllcyBkZWluZSBEYXRlaSBURVNUIGVpbiBpbmRlbSBEdSBkYXMgS29tbWFuZG8gIDpyIFRFU1QgIGF1c2bDvGhyc3QsDQotICAgICB3b2JlaSBURVNUIGRlciB2b24gRGlyIHZlcndlbmRldGUgRGF0ZWluYW1lIGlzdC4NCi0gICAgIERpZSBlaW5nZWxlc2VuZSBEYXRlaSB3aXJkIHVudGVyaGFsYiBkZXIgQ3Vyc29yemVpbGUgZWluZ2Vmw7xndC4NCi0NCi0gIDMuIFVtIHp1IMO8YmVycHLDvGZlbiwgZGFzcyBkaWUgRGF0ZWkgZWluZ2VsZXNlbiB3dXJkZSwgZ2VoZSB6dXLDvGNrIHVuZCANCi0gICAgIGJlYWNodGUsIGRhc3MgZXMgamV0enQgendlaSBLb3BpZW4gdm9uIExla3Rpb24gNS4zIGdpYnQsIGRhcyBPcmlnaW5hbCB1bmQgDQotCSBkaWUgZWluZ2Vmw7xndGUgRGF0ZWl2ZXJzaW9uLg0KLQ0KLUFubWVya3VuZzogRHUga2FubnN0IGF1Y2ggZGllIEF1c2dhYmUgZWluZXMgZXh0ZXJuZW4gS29tbWFuZG9zIGVpbmxlc2VuLiBadW0NCi0gICAgIEJlaXNwaWVsIGxpZXN0ICA6ciAhbHMgIGRpZSBBdXNnYWJlIGRlcyBLb21tYW5kb3MgbHMgZWluIHVuZCBwbGF0emllcnQNCi0gICAgIHNpZSB1bnRlcmhhbGIgZGVzIEN1cnNvcnMuDQotDQotfn5+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+DQotCQkJIFpVU0FNTUVORkFTU1VORyBWT04gTEVLVElPTiA1DQotDQotDQotICAxLiA6IUtvbW1hbmRvICBmw7xocnQgZWluIGV4dGVybmVzIEtvbW1hbmRvIGF1cy4NCi0NCi0gICAgICBFaW5pZ2UgbsO8dHpsaWNoZSBCZWlzcGllbGUgc2luZA0KLQkoTVMtRE9TKQkgIChVbml4KQ0KLQkgOiFkaXIJCSAgIDohbHMJCSAgIC0gIHplaWd0IGVpbmUgVmVyemVpY2huaXNhdWZsaXN0dW5nLg0KLQkgOiFkZWwgREFURUlOQU1FICAgOiFybSBEQVRFSU5BTUUgIC0gIGVudGZlcm50IERhdGVpIERBVEVJTkFNRS4NCi0NCi0gIDIuIDp3IERBVEVJTkFNRSAgc3BlaWNoZXJ0IGRpZSBha3R1ZWxsZSBWaW0tRGF0ZWkgdW50ZXIgZGVtIE5hbWVuICBEQVRFSU5BTUUuDQotDQotICAzLiB2ICBCZXdlZ3VuZyAgOncgREFURUlOQU1FICBzY2hyZWlidCBkaWUgVmlzdWVsbCBhdXNnZXfDpGhsdGVuIFplaWxlbiBpbg0KLSAgICAgZGllIERhdGVpIERBVEVJTkFNRS4NCi0NCi0gIDQuIDpyIERBVEVJTkFNRSAgbMOkZHQgZGllIERhdGVpIERBVEVJTkFNRSB1bmQgZsO8Z3Qgc2llIHVudGVyaGFsYiBkZXINCi0gICAgIEN1cnNvcnBvc2l0aW9uIGVpbi4NCi0NCi0gIDUuIDpyICFkaXIgIGxpZXN0IGRpZSBBdXNnYWJlIGRlcyBLb21tYW5kb3MgZGlyIHVuZCBmw7xndCBzaWUgdW50ZXJoYWxiIGRlcg0KLSAgICAgQ3Vyc29ycG9zaXRpb24gZWluLg0KLQ0KLQ0KLX5+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+fg0KLQkJICAgICAgIExla3Rpb24gNi4xOiBaRUlMRU4gw5ZGRk5FTiAoT1BFTikNCi0NCi0NCi0gICAqKiBUaXBwZSAgbwksIHVtIGVpbmUgWmVpbGUgdW50ZXJoYWxiIGRlcyBDdXJzb3JzIHp1IMO2ZmZuZW4gdW5kIERpY2ggaW4gKioNCi0gICAgICAgICAgICAgICAgICAgICAgKiogZGVuIEVpbmbDvGdlbW9kdXMgenUgYmVnZWJlbi4gKioNCi0NCi0gIDEuIEJld2VnZSBkZW4gQ3Vyc29yIHp1IGRlciBlcnN0ZW4gbWl0IC0tLT4gbWFya2llcnRlbiBaZWlsZSB1bnRlbi4NCi0NCi0gIDIuIFRpcHBlIG8gKGtsZWluIGdlc2NocmllYmVuKSwgdW0gZWluZSBaZWlsZSBVTlRFUkhBTEIgZGVzIEN1cnNvcnMgenUgw7ZmZm5lbg0KLSAgICAgdW5kIERpY2ggaW4gZGVuIEVpbmbDvGdlbW9kdXMgenUgYmVnZWJlbi4NCi0NCi0gIDMuIE51biB0aXBwZSBldHdhcyBUZXh0IHVuZCBkcsO8Y2tlIDxFU0M+ICwgdW0gZGVuIEVpbmbDvGdlbW9kdXMgenUgdmVybGFzc2VuLg0KLQ0KLS0tLT4gTWl0ICBvICB3aXJkIGRlciBDdXJzb3IgYXVmIGRlciBvZmZlbmVuIFplaWxlIGltIEVpbmbDvGdlbW9kdXMgcGxhdHppZXJ0Lg0KLQ0KLSAgNC4gVW0gZWluZSBaZWlsZSDDnEJFUkhBTEIgZGVzIEN1cnNvcnMgYXVmenVtYWNoZW4sIGdpYiBlaW5mYWNoIGVpbiBncm/Dn2VzICBPDQotICAgICBzdGF0dCBlaW5lbSBrbGVpbmVuICBvICBlaW4uIFZlcnN1Y2hlIGRpZXMgYXVmIGRlciB1bnRlbiBzdGVoZW5kZW4gWmVpbGUuDQotDQotLS0tPiDDlmZmbmUgZWluZSBaZWlsZSDDvGJlciBkaWVzZXIgbWl0IE8gLCB3ZW5uIGRlciBDdXJzb3IgYXVmIGRpZXNlciBaZWlsZSBpc3QuDQotDQotDQotDQotfn5+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+DQotCQkgICAgICAgTGVrdGlvbiA2LjI6IFRFWFQgQU5Gw5xHRU4gKEFQUEVORCkNCi0NCi0NCi0JICAgICAqKiBUaXBwZSAgYSAgLCB1bSBUZXh0IE5BQ0ggZGVtIEN1cnNvciBlaW56dWbDvGdlbi4gKioNCi0NCi0gIDEuIEJld2VnZSBkZW4gQ3Vyc29yIHp1bSBBbmZhbmcgZGVyIGVyc3RlbiDDnGJ1bmdzemVpbGUgbWl0IC0tLT4gdW50ZW4uDQotDQotICAyLiBEcsO8Y2tlICBlICAsIGJpcyBkZXIgQ3Vyc29yIGFtIEVuZGUgdm9uICBaZWkgIHN0ZWh0Lg0KLQ0KLSAgMy4gVGlwcGUgZWluIGtsZWluZXMgIGEgICwgdW0gVGV4dCBOQUNIIGRlbSBDdXJzb3IgYW56dWbDvGdlbi4NCi0NCi0gIDQuIFZlcnZvbGxzdMOkbmRpZ2UgZGFzIFdvcnQgc28gd2llIGluIGRlciBaZWlsZSBkYXJ1bnRlci4gIERyw7xja2UgPEVTQz4gLA0KLSAgICAgdW0gZGVuIEVpbmbDvGdlbW9kdXMgenUgdmVybGFzc2VuLg0KLQ0KLSAgNS4gQmV3ZWdlIERpY2ggbWl0ICBlICB6dW0gbsOkY2hzdGVuIHVudm9sbHN0w6RuZGlnZW4gV29ydCB1bmQgd2llZGVyaG9sZQ0KLSAgICAgU2Nocml0dGUgMyB1bmQgNC4NCi0NCi0tLS0+IERpZXNlIFplaSBiaWV0ZXQgR2VsZWdlbiAsIFRleHQgaW4gZWluZXIgWmVpbGUgYW56dWbDvC4NCi0tLS0+IERpZXNlIFplaWxlIGJpZXRldCBHZWxlZ2VuaGVpdCwgVGV4dCBpbiBlaW5lciBaZWlsZSBhbnp1ZsO8Z2VuLg0KLQ0KLUFubWVya3VuZzogIGEsIGkgdW5kIEEgZ2VoZW4gYWxsZSBnbGVpY2hlcm1hw59lbiBpbiBkZW4gRWluZsO8Z2Vtb2R1czsgZGVyDQotICAgICAgICAgICAgZWluemlnZSBVbnRlcnNjaGllZCBpc3QsIHdvIGRpZSBaZWljaGVuIGVpbmdlZsO8Z3Qgd2VyZGVuLg0KLX5+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+fg0KLQkgICAgICBMZWt0aW9uIDYuMzogRUlORSBBTkRFUkUgQVJUIERFUyBFUlNFVFpFTlMgKFJFUExBQ0UpDQotDQotDQotICAgICAgICoqIFRpcHBlIGVpbiBncm/Dn2VzICBSICAsIHVtIG1laHIgYWxzIGVpbiBaZWljaGVuIHp1IGVyc2V0emVuLiAqKg0KLQ0KLSAgMS4gQmV3ZWdlIGRlbiBDdXJzb3IgenVyIGVyc3RlbiB1bnRlbiBzdGVoZW5kZW4sIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUuDQotICAgICBCZXdlZ2UgZGVuIEN1cnNvciB6dW0gQW5mYW5nIGRlcyBlcnN0ZW4gIHh4eCAuDQotDQotICAyLiBOdW4gZHLDvGNrZSAgUiAgdW5kIHRpcHBlIGRpZSBOdW1tZXIsIGRpZSBkYXJ1bnRlciBpbiBkZXIgendlaXRlbiBaZWlsZQ0KLSAgICAgc3RlaHQsIHNvIGRhc3MgZGllc2UgZGFzIHh4eCBlcnNldHp0Lg0KLQ0KLSAgMy4gRHLDvGNrZSA8RVNDPiAsIHVtIGRlbiBFcnNldHp1bmdzbW9kdXMgenUgdmVybGFzc2VuLiBCZWFjaHRlLCBkYXNzIGRlciBSZXN0DQotICAgICBkZXIgWmVpbGUgdW52ZXLDpG5kZXJ0IGJsZWlidC4NCi0NCi0gIDQuIFdpZWRlcmhvbGUgZGllIFNjaHJpdHRlLCB1bSBkYXMgdmVyYmxpZWJlbmUgeHh4IHp1IGVyc2V0emVuLg0KLQ0KLS0tLT4gRGFzIEFkZGllcmVuIHZvbiAxMjMgenUgeHh4IGVyZ2lidCB4eHguDQotLS0tPiBEYXMgQWRkaWVyZW4gdm9uIDEyMyB6dSA0NTYgZXJnaWJ0IDU3OS4NCi0NCi1Bbm1lcmt1bmc6IERlciBFcnNldHp1bmdzbW9kdXMgaXN0IHdpZSBkZXIgRWluZsO8Z2Vtb2R1cywgYWJlciBqZWRlcyBlaW5nZXRpcHB0ZQ0KLSAgICAgICAgICAgWmVpY2hlbiBsw7ZzY2h0IGVpbiB2b3JoYW5kZW5lcyBaZWljaGVuLg0KLQ0KLX5+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+fg0KLQkJICAgIExla3Rpb24gNi40OiBURVhUIEtPUElFUkVOIFVORCBFSU5Gw5xHRU4NCi0NCi0gKiogQmVudXR6ZSBkZW4gIHkgIE9wZXJhdG9yLCB1bSBUZXh0IHp1IGtvcGllcmVuOyAgcCAgLCB1bSBpaG4gZWluenVmw7xnZW4gKioNCi0NCi0gIDEuIEdlaGUgenUgZGVyIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUgdW50ZW47IHNldHplIGRlbiBDdXJzb3IgaGludGVyICJhKSIuDQotDQotICAyLiBTdGFydGUgZGVuIFZpc3VlbGxlbiBNb2R1cyBtaXQgIHYgICwgYmV3ZWdlIGRlbiBDdXJzb3IgZ2VuYXUgdm9yICJlcnN0ZSIuDQotDQotICAzLiBUaXBwZSAgeSAgLCB1bSBkZW4gaGVydm9yZ2Vob2JlbiBUZXh0IHp1IGtvcGllcmVuLg0KLQ0KLSAgNC4gQmV3ZWdlIGRlbiBDdXJzb3IgenVtIEVuZGUgZGVyIG7DpGNoc3RlbiBaZWlsZTogIGokDQotDQotICA1LiBUaXBwZSAgcCAsIHVtIGRlbiBUZXh0IGVpbnp1ZsO8Z2VuIHVuZCBhbnNjaGxpZcOfZW5kOiAgYSB6d2VpdGUgPEVTQz4gLg0KLQ0KLSAgNi4gQmVudXR6ZSBkZW4gVmlzdWVsbGVuIE1vZHVzLCB1bSAiIEVpbnRyYWcuIiBhdXN6dXfDpGhsZW4sIGtvcGllcmUgbWl0dGVscw0KLSAgICAgeSAsIGJld2VnZSBEaWNoIHp1bSBFbmRlIGRlciBuw6RjaHN0ZW4gWmVpbGUgbWl0ICBqJCAgdW5kIGbDvGdlIGRlbiBUZXh0DQotICAgICBkb3J0IG1pdCAgcCAgYW4uDQotDQotLS0tPiAgYSkgZGllcyBpc3QgZGVyIGVyc3RlIEVpbnRyYWcuDQotICAgICAgYikNCi0NCi1Bbm1lcmt1bmc6IER1IGthbm5zdCAgeSAgYXVjaCBhbHMgT3BlcmF0b3IgdmVyd2VuZGVuOyAgeXcgIGtvcGllcnQgZWluIFdvcnQuDQotfn5+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+DQotCQkJICBMZWt0aW9uIDYuNTogT1BUSU9ORU4gU0VUWkVODQotDQotICAgICAgKiogU2V0emUgZWluZSBPcHRpb24gc28sIGRhc3MgZWluZSBTdWNoZSBvZGVyIEVyc2V0enVuZyBHcm/Dny0gKioNCi0JCSAgICAgICoqIHVuZCBLbGVpbnNjaHJlaWJ1bmcgaWdub3JpZXJ0ICoqDQotDQotICAxLiBTdWNoZSBuYWNoICdpZ25vcmllcmUnLCBpbmRlbSBEdSAgICAvaWdub3JpZXJlICAgZWluZ2lic3QuDQotICAgICBXaWVkZXJob2xlIGRpZSBTdWNoZSBlaW5pZ2UgTWFsZSwgaW5kZW0gRHUgZGllIG4gLSBUYXN0ZSBkcsO8Y2tzdC4NCi0NCi0gIDIuIFNldHplIGRpZSAnaWMnIChJZ25vcmUgY2FzZSkgLSBPcHRpb24sIGluZGVtIER1ICAgOnNldCBpYyAgIGVpbmdpYnN0Lg0KLQ0KLSAgMy4gTnVuIHN1Y2hlIHdpZWRlciBuYWNoICdpZ25vcmllcmUnLCBpbmRlbSBEdSAgbiAgdGlwcHN0Lg0KLSAgICAgQmVhY2h0ZSwgZGFzcyBqZXR6dCBJZ25vcmllcmUgdW5kIGF1Y2ggSUdOT1JJRVJFIGdlZnVuZGVuIHdpcmQuDQotDQotICA0LiBTZXR6ZSBkaWUgJ2hsc2VhcmNoJyB1bmQgJ2luY3NlYXJjaCcgLSBPcHRpb25lbjogICAgIDpzZXQgaGxzIGlzDQotDQotICA1LiBXaWVkZXJob2xlIGRpZSBTdWNoZSB1bmQgYmVvYmFjaHRlLCB3YXMgcGFzc2llcnQ6IC9pZ25vcmllcmUgPEVOVEVSPg0KLQ0KLSAgNi4gVW0gZGFzIElnbm9yaWVyZW4gdm9uIEdyb8OfL0tsZWluc2NocmVpYnVuZyBhYnp1c2NoYWx0ZW4sIHRpcHBlOiAgOnNldCBub2ljDQotDQotQW5tZXJrdW5nOiBVbSBkaWUgSGVydm9yaGVidW5nIGRlciBUcmVmZmVyIHp1IGVudGZlcm5lbiwgZ2liIGVpbjogIDpub2hsc2VhcmNoDQotQW5tZXJrdW5nOiBVbSBkaWUgU2NocmVpYndlaXNlIGbDvHIgZWluZSBlaW56aWdlIFN1Y2hlIHp1IGlnbm9yaWVyZW4sIGJlbnV0emUgXGMNCi0gICAgICAgICAgIGltIFN1Y2hhdXNkcnVjazogIC9pZ25vcmllcmVcYyAgPEVOVEVSPg0KLX5+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+fg0KLQkJCSBaVVNBTU1FTkZBU1NVTkcgVk9OIExFS1RJT04gNg0KLQ0KLSAxLiBUaXBwZSAgbyAgLCB1bSBlaW5lIFplaWxlIFVOVEVSIGRlbSBDdXJzb3IgenUgw7ZmZm5lbiB1bmQgZGVuIEVpbmbDvGdlbW9kdXMNCi0gICAgICAgICAgICAgICAgenUgc3RhcnRlbg0KLSAgICBUaXBwZSAgTyAgLCB1bSBlaW5lIFplaWxlIMOcQkVSIGRlbSBDdXJzb3IgenUgw7ZmZm5lbi4NCi0NCi0gMi4gVGlwcGUgIGEgICwgdW0gVGV4dCBOQUNIIGRlbSBDdXJzb3IgYW56dWbDvGdlbi4NCi0gICAgVGlwcGUgIEEgICwgdW0gVGV4dCBuYWNoIGRlbSBaZWlsZW5lbmRlIGFuenVmw7xnZW4uDQotDQotIDMuIERhcyBLb21tYW5kbyAgZSAgYnJpbmd0IERpY2ggenVtIEVuZGUgZWluZXMgV29ydGVzLg0KLQ0KLSA0LiBEZXIgT3BlcmF0b3IgIHkgICh5YW5rKSBrb3BpZXJ0IFRleHQsICBwICAocHV0KSBmw7xndCBpaG4gZWluLg0KLQ0KLSA1LiBFaW4gZ3Jvw59lcyAgUiAgZ2VodCBpbiBkZW4gRXJzZXR6dW5nc21vZHVzIGJpcyB6dW0gRHLDvGNrZW4gdm9uICA8RVNDPiAuDQotDQotIDYuIERpZSBFaW5nYWJlIHZvbiAiOnNldCB4eHgiIHNldHp0IGRpZSBPcHRpb24gInh4eCIuIEVpbmlnZSBPcHRpb25lbiBzaW5kOg0KLQknaWMnICdpZ25vcmVjYXNlJyAgICBJZ25vcmllcmUgR3Jvw58vS2xlaW5zY2hyZWlidW5nIGJlaSBlaW5lciBTdWNoZQ0KLQknaXMnICdpbmNzZWFyY2gnICAgICBaZWlnZSBUZWlsw7xiZXJlaW5zdGltbXVuZ2VuIGbDvHIgZWluZW4gU3VjaGF1c2RydWNrDQotCSdobHMnICdobHNlYXJjaCcgICAgIEhlYmUgYWxsZSBwYXNzZW5kZW4gQXVzZHLDvGNrZSBoZXJ2b3INCi0gICAgRGVyIE9wdGlvbnNuYW1lIGthbm4gaW4gZGVyIEt1cnotIG9kZXIgZGVyIExhbmdmb3JtIGFuZ2VnZWJlbiB3ZXJkZW4uDQotDQotIDcuIFN0ZWxsZSBlaW5lciBPcHRpb24gIm5vIiB2b3JhbiwgdW0gc2llIGFienVzY2hhbHRlbjogICA6c2V0IG5vaWMNCi1+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+fn4NCi0JCQlMZWt0aW9uIDcuMSA6IEFVRlJVRkVOIFZPTiBISUxGRQ0KLQ0KLQ0KLQkJICAgICAqKiBOdXR6ZSBkYXMgZWluZ2ViYXV0ZSBIaWxmZXN5c3RlbSAqKg0KLQ0KLSAgVmltIGJlc2l0enQgZWluIHVtZmFzc2VuZGVzIGVpbmdlYmF1dGVzIEhpbGZlc3lzdGVtLiAgRsO8ciBkZW4gQW5mYW5nIHByb2JpZXJlDQotICBlaW5zIGRlciBkcmVpIGZvbGdlbmRlbiBEaW5nZSBhdXM6DQotCS0gRHLDvGNrZSBkaWUgPEhpbGZlPiAtIFRhc3RlIChmYWxscyBEdSBlaW5lIGJlc2l0enQpDQotCS0gRHLDvGNrZSBkaWUgPEYxPiBUYXN0ZSAoZmFsbHMgRHUgZWluZSBiZXNpdHp0KQ0KLQktIFRpcHBlICAgOmhlbHAgPEVOVEVSPg0KLQ0KLSAgTGllcyBkZW4gVGV4dCBpbSBIaWxmZWZlbnN0ZXIsIHVtIHp1IHZlcnN0ZWhlbiB3aWUgZGllIEhpbGZlIGZ1bmt0aW9uaWVydC4NCi0gIFRpcHBlICBDVFJMLVcgQ1RSTC1XICAgLCB1bSB2b24gZWluZW0gRmVuc3RlciB6dW0gYW5kZXJlbiB6dSBzcHJpbmdlbi4NCi0gIFRpcHBlICAgOnEgPEVOVEVSPiAgLCB1bSBkYXMgSGlsZmVmZW5zdGVyIHp1IHNjaGxpZcOfZW4uDQotDQotICBEdSBrYW5uc3QgSGlsZmUgenUgcHJha3Rpc2NoIGplZGVtIFRoZW1hIGZpbmRlbiwgaW5kZW0gRHUgZGVtICI6aGVscCItDQotICBLb21tYW5kbyBlaW4gQXJndW1lbnQgZ2lic3QuICBQcm9iaWVyZSBmb2xnZW5kZXMgKDxFTlRFUj4gbmljaHQgdmVyZ2Vzc2VuKToNCi0NCi0JOmhlbHAgdw0KLQk6aGVscCBjX0NUUkwtRA0KLQk6aGVscCBpbnNlcnQtaW5kZXgNCi0JOmhlbHAgdXNlci1tYW51YWwNCi1+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+fn4NCi0JCSAgICAgTGVrdGlvbiA3LjI6IEVSU1RFTExFIEVJTiBTVEFSVC1TS1JJUFQNCi0NCi0NCi0JICAgICAgICAgICoqICBBa3RpdmllcmUgZGllIEZlYXR1cmVzIHZvbiBWaW0gKioNCi0NCi0gIFZpbSBiZXNpdHp0IHZpZWxlIEZ1bmt0aW9uYWxpdMOkdGVuLCBkaWUgw7xiZXIgVmkgaGluYXVzZ2VoZW4sIGFiZXIgZGllIG1laXN0ZW4NCi0gIHZvbiBpaG5lbiBzaW5kIHN0YW5kYXJkbcOkw59pZyBkZWFrdGl2aWVydC4gVW0gbWVociBGdW5rdGlvbmFsaXTDpHRlbiB6dSBudXR6ZW4sDQotICBtdXNzdCBEdSBlaW5lICJ2aW1yYyIgLSBEYXRlaSBlcnN0ZWxsZW4uDQotDQotICAxLiBTdGFydGUgZGFzIEVkaXRpZXJlbiBkZXIgInZpbXJjIi1EYXRlaSwgYWJow6RuZ2lnIHZvbiBkZWluZW0gU3lzdGVtOg0KLQk6ZSB+Ly52aW1yYwkJZsO8ciBVbml4DQotCTplICRWSU0vX3ZpbXJjCQlmw7xyIE1TLVdpbmRvd3MNCi0NCi0gIDIuIE51biBsaWVzIGRlbiBJbmhhbHQgZGVyIEJlaXNwaWVsLSJ2aW1yYyItRGF0ZWkgZWluOg0KLQk6ciAkVklNUlVOVElNRS92aW1yY19leGFtcGxlLnZpbQ0KLQ0KLSAgMy4gU3BlaWNoZXJlIGRpZSBEYXRlaSBtaXQ6DQotCTp3DQotDQotICBCZWltIG7DpGNoc3RlbiBTdGFydCB2b24gVmltIHdpcmQgZGllIFN5bnRheGhlcnZvcmhlYnVuZyBha3RpdmllcnQgc2Vpbi4NCi0gIER1IGthbm5zdCBhbGwgZGVpbmUgYmV2b3J6dWd0ZW4gT3B0aW9uZW4genUgZGllc2VyICJ2aW1yYyItRGF0ZWkgenVmw7xnZW4uDQotICBGw7xyIG1laHIgSW5mb3JtYXRpb25lbiB0aXBwZSAgOmhlbHAgdmltcmMtaW50cm8NCi1+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+fn4NCi0JCQkgTGVrdGlvbiA3LjM6IFZFUlZPTExTVMOETkRJR0VODQotDQotDQotCSAgICoqIEtvbW1hbmRvemVpbGVudmVydm9sbHN0w6RuZGlndW5nIG1pdCBDVFJMLUQgdW5kIDxUQUI+ICoqDQotDQotICAxLiBTdGVsbGUgc2ljaGVyLCBkYXNzIFZpbSBuaWNodCBpbSBWaS1Lb21wYXRpYmlsaXTDpHRzbW9kdXMgaXN0OiAgOnNldCBub2NwDQotDQotICAyLiBTaWVoZSBuYWNoLCB3ZWxjaGUgRGF0ZWllbiBpbSBWZXJ6ZWljaG5pcyBleGlzdGllcmVuOiAgOiFscyAgb2RlciAgOmRpcg0KLQ0KLSAgMy4gVGlwcGUgZGVuIEJlZ2lubiBlaW5lcyBLb21tYW5kb3M6ICA6ZQ0KLQ0KLSAgNC4gRHLDvGNrZSAgQ1RSTC1EICB1bmQgVmltIHplaWd0IGVpbmUgTGlzdGUgbWl0ICJlIiBiZWdpbm5lbmRlciBLb21tYW5kb3MuDQotDQotICA1LiBEcsO8Y2tlICA8VEFCPiAgdW5kIFZpbSB2ZXJ2b2xsc3TDpG5kaWd0IGRlbiBLb21tYW5kb25hbWVuIHp1ICI6ZWRpdCIuDQotDQotICA2LiBOdW4gZsO8Z2UgZWluIExlZXJ6ZWljaGVuIHVuZCBkZW4gQW5mYW5nIGVpbmVyIGV4aXN0aWVyZW5kZW4gRGF0ZWkgYW46DQotICAgICA6ZWRpdCBEQVQNCi0NCi0gIDcuIERyw7xja2UgPFRBQj4uIFZpbSB2ZXJ2b2xsc3TDpG5kaWd0IGRlbiBOYW1lbiAoZmFsbHMgZXIgZWluZGV1dGlnIGlzdCkuDQotDQotQW5tZXJrdW5nOiBWZXJ2b2xsc3TDpG5kaWd1bmcgZnVua3Rpb25pZXJ0IGbDvHIgdmllbGUgS29tbWFuZG9zLiBQcm9iaWVyZQ0KLSAgICAgZWluZmFjaCBDVFJMLUQgdW5kIDxUQUI+LiAgRGllcyBpc3QgaW5zYmVzb25kZXJlIG7DvHR6bGljaCBmw7xyICA6aGVscCAuDQotfn5+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+DQotCQkJCSAgICAgWlVTQU1NRU5GQVNTVU5HIFZPTiBMRUtUSU9OIDcNCi0NCi0NCi0gIDEuIFRpcHBlICA6aGVscCAgb2RlciBkcsO8Y2tlIDxGMT4gb2RlciA8SGVscD4sIHVtIGVpbiBIaWxmZWZlbnN0ZXIgenUgw7ZmZm5lbi4NCi0NCi0gIDIuIFRpcHBlICA6aGVscCBLb21tYW5kbyAgLCB1bSBIaWxmZSDDvGJlciAgS29tbWFuZG8gIHp1IGVyaGFsdGVuLg0KLQ0KLSAgMy4gVGlwcGUgIENUUkwtVyBDVFJMLVcgICwgdW0genVtIGFuZGVyZW4gRmVuc3RlciB6dSBzcHJpbmdlbi4NCi0NCi0gIDQuIFRpcHBlICA6cSAgLCB1bSBkYXMgSGlsZmVmZW5zdGVyIHp1IHNjaGxpZcOfZW4uDQotDQotICA1LiBFcnN0ZWxsZSBlaW4gdmltcmMgLSBTdGFydHNrcmlwdCBtaXQgZGVpbmVuIGJldm9yenVndGVyIEVpbnN0ZWxsdW5nZW4uDQotDQotICA2LiBEcsO8Y2tlIENUUkwtRCBuYWNoIGRlbSBUaXBwZW4gZWluZXMgIDogIEtvbW1hbmRvcywgdW0gbcO2Z2xpY2hlDQotICAgICBWZXJ2b2xsc3TDpG5kaWd1bmdlbiBhbnp1c2VoZW4uDQotICAgICBEcsO8Y2tlIDxUQUI+ICwgdW0gZWluZSBWZXJ2b2xsc3TDpG5kaWd1bmcgenUgYW56dXdlbmRlbi4NCi0NCi0NCi0NCi0NCi0NCi0NCi1+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+fn4NCi0NCi0gIERhbWl0IGlzdCBkZXIgVmltIFR1dG9yIGJlZW5kZXQuICBTZWluZSBJbnRlbnRpb24gd2FyLCBlaW5lbiBrdXJ6ZW4gdW5kDQotICBiw7xuZGlnZW4gw5xiZXJibGljayDDvGJlciBkZW4gVmltIEVkaXRvciB6dSBnZWJlbjsgZ2VyYWRlIGdlbnVnLCB1bSByZWxhdGl2DQotICBsZWljaHQgbWl0IGlobSB1bWdlaGVuIHp1IGvDtm5uZW4uICBEZXIgVmltIFR1dG9yIGhhdCBuaWNodCBkZW4gZ2VyaW5nc3Rlbg0KLSAgQW5zcHJ1Y2ggYXVmIFZvbGxzdMOkbmRpZ2tlaXQ7IFZpbSBoYXQgbm9jaCB3ZWl0YXVzIG1laHIgS29tbWFuZG9zLiBMaWVzIGFscw0KLSAgbsOkY2hzdGVzIGRhcyBVc2VyIE1hbnVhbDogIjpoZWxwIHVzZXItbWFudWFsIi4NCi0NCi0gIEbDvHIgd2VpdGVyZXMgTGVzZW4gdW5kIExlcm5lbiBpc3QgZm9sZ2VuZGVzIEJ1Y2ggZW1wZmVobGVuc3dlcnQgOg0KLQlWaW0gLSBWaSBJbXByb3ZlZCAtIHZvbiBTdGV2ZSBPdWFsbGluZQ0KLQlWZXJsYWc6IE5ldyBSaWRlcnMNCi0gIERhcyBlcnN0ZSBCdWNoLCB3ZWxjaGVzIGR1cmNoZ8OkbmdpZyBWaW0gZ2V3aWRtZXQgaXN0LiAgQmVzb25kZXJzIG7DvHR6bGljaA0KLSAgZsO8ciBBbmbDpG5nZXIuICBWaWVsZSBCZWlzcGllbGUgdW5kIEJpbGRlciBzaW5kIGVudGhhbHRlbi4NCi0gIFNpZWhlIGh0dHA6Ly9pY2NmLWhvbGxhbmQub3JnL2NsaWNrNS5odG1sDQotDQotICBGb2xnZW5kZXMgQnVjaCBpc3Qgw6RsdGVyIHVuZCBtZWhyIMO8YmVyIFZpIGFscyBWaW0sIGFiZXIgYXVjaCBlbXBmZWhsZW5zd2VydDoNCi0JVGV4dGJlYXJiZWl0dW5nIG1pdCBkZW0gVmktRWRpdG9yICAtICB2b24gTGluZGEgTGFtYiB1bmQgQXJub2xkIFJvYmJpbnMNCi0JVmVybGFnIE8nUmVpbGx5IC0gSVNCTjogMzg5NzIxMTI2Mg0KLSAgSW4gZGllc2VtIEJ1Y2gga2FubiBtYW4gZmFzdCBhbGxlcyBmaW5kZW4sIHdhcyBtYW4gbWl0IFZpIHR1biBtw7ZjaHRlLg0KLSAgRGllIHNlY2hzdGUgQXVzZ2FiZSBlbnRow6RsdCBhdWNoIEluZm9ybWF0aW9uZW4gw7xiZXIgVmltLg0KLQ0KLSAgQWxzIGFrdHVlbGxlIFJlZmVyZW56IGbDvHIgVmVyc2lvbiA2LjIgdW5kIGtuYXBwZSBFaW5mw7xocnVuZyBkaWVudCBkYXMNCi0gIGZvbGdlbmRlIEJ1Y2g6DQotCXZpbSBnZS1wYWNrdCB2b24gUmVpbmhhcmQgV29ic3QNCi0JbWl0cC1WZXJsYWcsIElTQk4gMy04MjY2LTE0MjUtOQ0KLSAgVHJvdHogZGVyIGtvbXBha3RlbiBEYXJzdGVsbHVuZyBpc3QgZXMgZHVyY2ggdmllbGUgbsO8dHpsaWNoZSBCZWlzcGllbGUgYXVjaA0KLSAgZsO8ciBFaW5zdGVpZ2VyIGVtcGZlaGxlbnN3ZXJ0LiAgUHJvYmVrYXBpdGVsIHVuZCBkaWUgQmVpc3BpZWxza3JpcHRlIHNpbmQNCi0gIG9ubGluZSBlcmjDpGx0bGljaC4gIFNpZWhlIGh0dHA6Ly9pY2NmLWhvbGxhbmQub3JnL2NsaWNrNS5odG1sDQotDQotICBEaWVzZXMgVHV0b3JpYWwgd3VyZGUgZ2VzY2hyaWViZW4gdm9uIE1pY2hhZWwgQy4gUGllcmNlIHVuZCBSb2JlcnQgSy4gV2FyZSwNCi0gIENvbG9yYWRvIFNjaG9vbCBvZiBNaW5lcy4gRXMgYmVudXR6dCBJZGVlbiwgZGllIENoYXJsZXMgU21pdGgsIENvbG9yYWRvIFN0YXRlDQotICBVbml2ZXJzaXR5LCB6dXIgVmVyZsO8Z3VuZyBzdGVsbHRlLiAgRS1NYWlsOiBid2FyZUBtaW5lcy5jb2xvcmFkby5lZHUuDQotDQotICBCZWFyYmVpdGV0IGbDvHIgVmltIHZvbiBCcmFtIE1vb2xlbmFhci4NCi0gIERldXRzY2hlIMOcYmVyc2V0enVuZyB2b24gSm9hY2hpbSBIb2ZtYW5uIDIwMTUuICBFLU1haWw6IEpvYWNoaW0uSG9mQGdteC5kZQ0KLQ0KLX5+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+fg0KKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKz0gICAgICBXIGkgbCBsIGsgbyBtIG0gZSBuICAgaW0gICBWIEkgTSAgIFQgdSB0IG8gciAgICAtICAgIFZlcnNpb24gMS43LmRlLjEgID0KKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworICAgVmltIGlzdCBlaW4gc2VociBtw6RjaHRpZ2VyIEVkaXRvciwgZGVyIHZpZWxlIEJlZmVobGUgYmVyZWl0c3RlbGx0OyB6dSB2aWVsZSwKKyAgIHVtIGFsbGUgaW4gZWluZW0gVHV0b3Igd2llIGRpZXNlbSB6dSBlcmtsw6RyZW4uICBEaWVzZXIgVHV0b3IgaXN0IHNvCisgICBnZXN0YWx0ZXQsIHVtIGdlbnVnIEJlZmVobGUgdm9yenVzdGVsbGVuLCBkYXNzIER1IGRpZSBGw6RoaWdrZWl0IGVybGFuZ3N0LAorICAgVmltIG1pdCBMZWljaHRpZ2tlaXQgYWxzIGVpbmVuIEFsbHp3ZWNrLUVkaXRvciB6dSB2ZXJ3ZW5kZW4uCisgICBEaWUgWmVpdCBmw7xyIGRhcyBEdXJjaGFyYmVpdGVuIGRpZXNlcyBUdXRvcnMgYmV0csOkZ3QgY2EuIDI1LTMwIE1pbnV0ZW4sCisgICBhYmjDpG5naWcgZGF2b24sIHdpZSB2aWVsIFplaXQgRHUgbWl0IEV4cGVyaW1lbnRpZXJlbiB2ZXJicmluZ3N0LgorCisgICBBQ0hUVU5HOgorICAgRGllIGluIGRlbiBMZWt0aW9uZW4gYW5nZXdlbmRldGVuIEtvbW1hbmRvcyB3ZXJkZW4gZGVuIFRleHQgbW9kaWZpemllcmVuLgorICAgRXJzdGVsbGUgZWluZSBLb3BpZSBkaWVzZXIgRGF0ZWksIGluIGRlciBEdSDDvGJlbiB3aWxsc3QgKGZhbGxzIER1ICJ2aW10dXRvciIKKyAgIGF1ZmdlcnVmZW4gaGFzdCwgaXN0IGRpZXMgYmVyZWl0cyBlaW5lIEtvcGllKS4KKworICAgRXMgaXN0IHdpY2h0aWcsIHNpY2ggenUgdmVyZ2VnZW53w6RydGlnZW4sIGRhc3MgZGllc2VyIFR1dG9yIGbDvHIgZGFzIEFud2VuZGVuCisgICBrb256aXBpZXJ0IGlzdC4gRGFzIGJlZGV1dGV0LCBkYXNzIER1IGRpZSBCZWZlaGxlIGFud2VuZGVuIG11c3N0LCB1bSBzaWUKKyAgIHJpY2h0aWcgenUgbGVybmVuLiBXZW5uIER1IG51ciBkZW4gVGV4dCBsaWVzdCwgdmVyZ2lzc3QgRHUgZGllIEJlZmVobGUhCisKKyAgIEpldHp0IHN0ZWxsZSBzaWNoZXIsIGRhc3MgZGVpbmUgVW1zdGVsbHRhc3RlIE5JQ0hUIGdlZHLDvGNrdCBpc3QgdW5kIGJldMOkdGlnZQorICAgZGllICAgaiAgIFRhc3RlIGdlbsO8Z2VuZCBNYWwsIHVtIGRlbiBDdXJzb3IgbmFjaCB1bnRlbiB6dSBiZXdlZ2VuLCBzbyBkYXNzCisgICBMZWt0aW9uIDEuMSBkZW4gQmlsZHNjaGlybSB2b2xsa29tbWVuIGF1c2bDvGxsdC4KK35+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+fgorCQkJTGVrdGlvbiAxLjE6IEJFV0VHRU4gREVTIENVUlNPUlMKKworICAqKiBVbSBkZW4gQ3Vyc29yIHp1IGJld2VnZW4sIGRyw7xja2UgZGllIGgsaixrLGwgVGFzdGVuIHdpZSB1bnRlbiBnZXplaWd0LiAqKgorCSAgICAgXgkJIEhpbGZlc3RlbGx1bmc6CisJICAgICBrCQkgRGllIGggVGFzdGUgYmVmaW5kZXQgc2ljaCBsaW5rcyB1bmQgYmV3ZWd0IG5hY2ggbGlua3MuCisgICAgICAgPCBoCSBsID4JIERpZSBsIFRhc3RlIGxpZWd0IHJlY2h0cyB1bmQgYmV3ZWd0IG5hY2ggcmVjaHRzLgorCSAgICAgagkJIERpZSBqIFRhc3RlIMOkaG5lbHQgZWluZW0gUGZlaWwgbmFjaCB1bnRlbi4KKwkgICAgIHYKKyAgMS4gQmV3ZWdlIGRlbiBDdXJzb3IgYXVmIGRlbSBCaWxkc2NoaXJtIHVtaGVyLCBiaXMgRHUgRGljaCBzaWNoZXIgZsO8aGxzdC4KKworICAyLiBIYWx0ZSBkaWUgTmFjaC1VbnRlbi1UYXN0ZSAoaikgZ2VkcsO8Y2t0LCBiaXMgc2llIHNpY2ggd2llZGVyaG9sdC4KKyAgICAgSmV0enQgd2Vpw590IER1LCB3aWUgRHUgRGljaCB6dXIgbsOkY2hzdGVuIExla3Rpb24gYmV3ZWdlbiBrYW5uc3QuCisKKyAgMy4gQmVudXR6ZSBkaWUgTmFjaC1VbnRlbi1UYXN0ZSwgdW0gRGljaCB6dSBMZWt0aW9uIDEuMiB6dSBiZXdlZ2VuLgorCitBbm1lcmt1bmc6IEltbWVyLCB3ZW5uIER1IERpciB1bnNpY2hlciBiaXN0IMO8YmVyIGRhcywgd2FzIER1IGdldGlwcHQgaGFzdCwKKwkgICBkcsO8Y2tlIDxFU0M+ICwgdW0gRGljaCBpbiBkZW4gTm9ybWFsbW9kdXMgenUgYmVnZWJlbi4KKwkgICBEYW5uIGdpYiBkYXMgZ2V3w7xuc2NodGUgS29tbWFuZG8gbm9jaCBlaW5tYWwgZWluLgorCitBbm1lcmt1bmc6IERpZSBDdXJzb3ItVGFzdGVuIHNvbGx0ZW4gZWJlbmZhbGxzIGZ1bmt0aW9uaWVyZW4uICBBYmVyIHdlbm4gRHUKKwkgICBoamtsIGJlbnV0enQsIHdpcnN0IER1IGluIGRlciBMYWdlIHNlaW4sIERpY2ggc2VociB2aWVsIHNjaG5lbGxlcgorCSAgIHVtaGVyenViZXdlZ2VuLCB3ZW5uIER1IERpY2ggZWlubWFsIGRhcmFuIGdld8O2aG50IGhhc3QuIFdpcmtsaWNoIQorfn5+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+CisJCQkgICAgTGVrdGlvbiAxLjI6IFZJTSBCRUVOREVOCisKKworICAhISBIaW53ZWlzOiBCZXZvciBEdSBlaW5lbiBkZXIgdW50ZW4gYXVmZ2Vmw7xocnRlbiBTY2hyaXR0ZSBhdXNmw7xocnN0LCBsaWVzCisgICAgIGRpZXNlIGdlc2FtdGUgTGVrdGlvbiEhCisKKyAgMS4gRHLDvGNrZSBkaWUgPEVTQz4gVGFzdGUgKHVtIHNpY2hlcnp1c3RlbGxlbiwgZGFzcyBEdSBpbSBOb3JtYWxtb2R1cyBiaXN0KS4KKworICAyLiBUaXBwZToJOnEhIDxFTlRFUj4uCisgICAgIERpZXMgYmVlbmRldCBkZW4gRWRpdG9yIHVuZCBWRVJXSVJGVCBhbGxlIMOEbmRlcnVuZ2VuLCBkaWUgRHUgZ2VtYWNodCBoYXN0LgorCisgIDMuIFdlbm4gRHUgZGllIEVpbmdhYmVhdWZmb3JkZXJ1bmcgc2llaHN0LCBnaWIgZGFzIEtvbW1hbmRvIGVpbiwgZGFzIERpY2ggenUKKyAgICAgZGllc2VtIFR1dG9yIGdlZsO8aHJ0IGhhdC4gRGllcyB3w6RyZToJdmltdHV0b3IgPEVOVEVSPgorCisgIDQuIFdlbm4gRHUgRGlyIGRpZXNlIFNjaHJpdHRlIGVpbmdlcHLDpGd0IGhhc3QgdW5kIER1IERpY2ggc2ljaGVyIGbDvGhsc3QsCisgICAgIGbDvGhyZSBTY2hyaXR0ZSAxIGJpcyAzIGF1cywgdW0gZGVuIEVkaXRvciB6dSB2ZXJsYXNzZW4gdW5kIHdpZWRlcgorICAgICBoaW5laW56dWdlbGFuZ2VuLgorCitBbm1lcmt1bmc6ICA6cSEgPEVOVEVSPiAgdmVyd2lyZnQgYWxsZSDDhG5kZXJ1bmdlbiwgZGllIER1IGdlbWFjaHQgaGFzdC4gRWluaWdlCisgICAgIExla3Rpb25lbiBzcMOkdGVyIGxlcm5zdCBEdSwgZGllIMOEbmRlcnVuZ2VuIGluIGVpbmVyIERhdGVpIHp1IHNwZWljaGVybi4KKworICA1LiBCZXdlZ2UgZGVuIEN1cnNvciBhYnfDpHJ0cyB6dSBMZWt0aW9uIDEuMy4KKyB+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+fn4KKwkJICAgICBMZWt0aW9uIDEuMzogVEVYVCBFRElUSUVSRU4gLSBMw5ZTQ0hFTgorCisKKwkgKiogRHLDvGNrZSAgeCAgLCB1bSBkYXMgWmVpY2hlbiB1bnRlciBkZW0gQ3Vyc29yIHp1IGzDtnNjaGVuLiAqKgorCisgIDEuIEJld2VnZSBkZW4gQ3Vyc29yIHp1IGRlciBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlIHVudGVuLgorCisgIDIuIFVtIGRpZSBGZWhsZXIgenUgYmVoZWJlbiwgYmV3ZWdlIGRlbiBDdXJzb3IsIGJpcyBlciDDvGJlciBkZW0gWmVpY2hlbiBzdGVodCwKKyAgICAgZGFzIGdlbMO2c2NodCB3ZXJkZW4gc29sbC4KKworICAzLiBEcsO8Y2tlIGRpZSAgeCAgVGFzdGUsIHVtIGRhcyB1bmVyd8O8bnNjaHRlIFplaWNoZW4genUgbMO2c2NoZW4uCisKKyAgNC4gV2llZGVyaG9sZSBkaWUgU2Nocml0dGUgMiBiaXMgNCwgYmlzIGRlciBTYXR6IGtvcnJla3QgaXN0LgorCistLS0+IERpZSBLa3VoIHNwcmFuZ2cgw7xiYmVyciBkZWVuIE1vb25kLgorCisgIDUuIE51biwgZGEgZGllIFplaWxlIGtvcnJla3QgaXN0LCBnZWhlIHdlaXRlciB6dXIgTGVrdGlvbiAxLjQuCisKK0FubWVya3VuZzogV8OkaHJlbmQgRHUgZHVyY2ggZGllc2VuIFR1dG9yIGdlaHN0LCB2ZXJzdWNoZSBuaWNodCwgYXVzd2VuZGlnIHp1CisgICAgbGVybmVuLCBsZXJuZSB2aWVsbWVociBkdXJjaCBBbndlbmRlbi4KKworCit+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+fn4KKwkJICAgICBMZWt0aW9uIDEuNDogVEVYVCBFRElUSUVSRU4gLSBFSU5Gw5xHRU4KKworCisJCSAgICAqKiAgRHLDvGNrZSAgaSAgLCB1bSBUZXh0IGVpbnp1ZsO8Z2VuLiAqKgorCisgIDEuIEJld2VnZSBkZW4gQ3Vyc29yIHp1ciBlcnN0ZW4gdW50ZW4gc3RlaGVuZGVuIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUuCisKKyAgMi4gVW0gZGllIGVyc3RlIFplaWxlIG1pdCBkZXIgendlaXRlbiBnbGVpY2h6dW1hY2hlbiwgYmV3ZWdlIGRlbiBDdXJzb3IgYXVmCisgICAgIGRhcyBlcnN0ZSBaZWljaGVuIE5BQ0ggZGVyIFN0ZWxsZSwgYW4gZGVyIFRleHQgZWluZ2Vmw7xndCB3ZXJkZW4gc29sbC4KKworICAzLiBEcsO8Y2tlICBpICB1bmQgZ2liIGRpZSBuw7Z0aWdlbiBFcmfDpG56dW5nZW4gZWluLgorCisgIDQuIFdlbm4gamV3ZWlscyBlaW4gRmVobGVyIGJlc2VpdGlndCBpc3QsIGRyw7xja2UgPEVTQz4gLCB1bSB6dW0gTm9ybWFsbW9kdXMKKyAgICAgenVyw7xja3p1a2VocmVuLgorCQkgV2llZGVyaG9sZSBTY2hyaXR0ZSAyIGJpcyA0LCB1bSBkZW4gU2F0eiB6dSBrb3JyaWdpZXJlbi4KKworLS0tPiBJbiBkaWVzZXIgZnQgZXR3YXMgLgorLS0tPiBJbiBkaWVzZXIgWmVpbGUgZmVobHQgZXR3YXMgVGV4dC4KKworICA1LiBXZW5uIER1IERpY2ggbWl0IGRlbSBFaW5mw7xnZW4gdm9uIFRleHQgc2ljaGVyIGbDvGhsc3QsIGdlaGUgenUgTGVrdGlvbiAxLjUuCisKKworfn5+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+CisJCSAgICAgTGVrdGlvbiAxLjU6IFRFWFQgRURJVElFUkVOIC0gQU5Gw5xHRU4KKworCisJCSAgICAgKiogRHLDvGNrZSAgQSAgLCB1bSBUZXh0IGFuenVmw7xnZW4uICoqCisKKyAgMS4gQmV3ZWdlIGRlbiBDdXJzb3IgenVyIGVyc3RlbiB1bnRlbiBzdGVoZW5kZW4gbWl0IC0tLT4gbWFya2llcnRlbiBaZWlsZS4KKyAgICAgRGFiZWkgaXN0IGdsZWljaGfDvGx0aWcsIGF1ZiB3ZWxjaGVtIFplaWNoZW4gZGVyIFplaWxlIGRlciBDdXJzb3Igc3RlaHQuCisKKyAgMi4gRHLDvGNrZSAgQSAgdW5kIGdpYiBkaWUgZXJmb3JkZXJsaWNoZW4gRXJnw6RuenVuZ2VuIGVpbi4KKworICAzLiBXZW5uIGRhcyBBbmbDvGdlbiBhYmdlc2NobG9zc2VuIGlzdCwgZHLDvGNrZSA8RVNDPiwgdW0gaW4gZGVuIE5vcm1hbG1vZHVzCisgICAgIHp1csO8Y2t6dWtlaHJlbi4KKworICA0LiBCZXdlZ2UgZGVuIEN1cnNvciB6dXIgendlaXRlbiBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlIHVuZCB3aWVkZXJob2xlCisgICAgIGRpZSBTY2hyaXR0ZSAyIHVuZCAzLCB1bSBkZW4gU2F0eiB6dSBhdXN6dWJlc3Nlcm4uCisKKy0tLT4gSW4gZGllc2VyIFplaWxlIGZlaAorICAgICBJbiBkaWVzZXIgWmVpbGUgZmVobHQgZXR3YXMgVGV4dC4KKy0tLT4gQXVjaCBoaWVyIHN0ZWgKKyAgICAgQXVjaCBoaWVyIHN0ZWh0IGV0d2FzIFVudm9sbHN0w6RuZGlnZXMuCisKKyAgNS4gV2VubiBEdSBkaWNoIG1pdCBkZW0gQW5mw7xnZW4gdm9uIFRleHQgc2ljaGVyIGbDvGhsc3QsIGdlaGUgenUgTGVrdGlvbiAxLjYuCit+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+fn4KKwkJICAgICAgIExla3Rpb24gMS42OiBFSU5FIERBVEVJIEVESVRJRVJFTgorCisJCSAqKiBCZW51dHplICA6d3EgICwgdW0gZWluZSBEYXRlaSB6dSBzcGVpY2hlcm4gdW5kIFZpbSB6dSB2ZXJsYXNzZW4uICoqCisKKyAgISEgSGlud2VpczogQmV2b3IgRHUgZWluZW4gZGVyIHVudGVuIGF1ZmdlZsO8aHJ0ZW4gU2Nocml0dGUgYXVzZsO8aHJzdCwgbGllcworICAgICBkaWVzZSBnZXNhbXRlIExla3Rpb24hIQorCisgIDEuIFZlcmxhc3NlIGRlbiBFZGl0b3Igc28gd2llIGluIExla3Rpb24gMS4yOiAgOnEhICAgICAgIAorCSAgIE9kZXIsIGZhbGxzIGR1IFp1Z3JpZmYgenUgZWluZW0gYW5kZXJlbiBUZXJtaW5hbCBoYXN0LCBmw7xocmUgZGFzIAorCQkgRm9sZ2VuZGUgZG9ydCBhdXMuCisKKyAgMi4gR2liIGRpZXNlcyBLb21tYW5kbyBpbiBkaWUgRWluZ2FiZWF1ZmZvcmRlcnVuZyBlaW46ICB2aW0gdHV0b3IgPEVOVEVSPgorICAgICAndmltJyBpc3QgZGVyIEF1ZnJ1ZiBkZXMgRWRpdG9ycywgJ3R1dG9yJyBpc3QgZGllIHp1IGVkaXRpZXJlbmRlIERhdGVpLgorICAgICBCZW51dHplIGVpbmUgRGF0ZWksIGRpZSBnZcOkbmRlcnQgd2VyZGVuIGRhcmYuCisKKyAgMy4gRsO8Z2UgVGV4dCBlaW4gb2RlciBsw7ZzY2hlIGlobiwgd2llIER1IGluIGRlbiB2b3JhbmdlaGVuZGVuIExla3Rpb25lbiAKKyAgICAgZ2VsZXJudCBoYXN0LgorCisgIDQuIFNwZWljaGVyZSBkaWUgZ2XDpG5kZXJ0ZSBEYXRlaSB1bmQgdmVybGFzc2UgVmltIG1pdDogIDp3cSAgPEVOVEVSPgorCisgIDUuIEZhbGxzIER1IGluIFNjaHJpdHQgMSBkZW4gdmltdHV0b3IgYmVlbmRldCBoYXN0LCBzdGFydGUgdmltdHV0b3IgbmV1IHVuZAorCSAgIGJld2VnZSBkaWNoIGFid8OkcnRzIGJpcyB6dXIgZm9sZ2VuZGVuIFp1c2FtbWVuZmFzc3VuZy4KKworICA2LiBOYWNoZGVtIER1IG9iaWdlIFNjaHJpdHRlIGdlbGVzZW4gdW5kIHZlcnN0YW5kZW4gaGFzdDogZsO8aHJlIHNpZSBkdXJjaC4KK35+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+fgorCQkJIFpVU0FNTUVORkFTU1VORyBWT04gTEVLVElPTiAxCisKKworICAxLiBEZXIgQ3Vyc29yIHdpcmQgbWl0IGRlbiBQZmVpbHRhc3RlbiBvZGVyIGRlbiBUYXN0ZW4gaGprbCBiZXdlZ3QuCisJIGggKGxpbmtzKSAgICAgaiAodW50ZW4pICAgICBrIChhdWZ3w6RydHMpICAgIGwgKHJlY2h0cykKKworICAyLiBVbSBWaW0gYXVzIGRlciBFaW5nYWJlYXVmZm9yZGVydW5nIHp1IHN0YXJ0ZW4sIHRpcHBlOiB2aW0gREFURUkgPEVOVEVSPgorCisgIDMuIFVtIFZpbSB6dSB2ZXJsYXNzZW4gdW5kIGFsbGUgw4RuZGVydW5nZW4genUgdmVyd2VyZmVuLCB0aXBwZToKKwkJPEVTQz4gIDpxISAgPEVOVEVSPiAuCisKKyAgNC4gVW0gZGFzIFplaWNoZW4gdW50ZXIgZGVtIEN1cnNvciB6dSBsw7ZzY2hlbiwgdGlwcGU6ICB4CisKKyAgNS4gVW0gVGV4dCBlaW56dWbDvGdlbiBvZGVyIGFuenVmw7xnZW4sIHRpcHBlOgorCSBpICAgRWluenVmw7xnZW5kZW4gVGV4dCBlaW5nZWJlbiAgIDxFU0M+ICAgIEVpbmbDvGdlbiB2b3IgZGVtIEN1cnNvcgorCSBBICAgQW56dWbDvGdlbmRlbiBUZXh0IGVpbmdlYmVuICAgIDxFU0M+ICAgIEFuZsO8Z2VuIG5hY2ggZGVtIFplaWxlbmVuZGUKKworQW5tZXJrdW5nOiBEcsO8Y2tlbiB2b24gPEVTQz4gYnJpbmd0IERpY2ggaW4gZGVuIE5vcm1hbG1vZHVzIG9kZXIgYnJpY2h0IGVpbgorICAgICB1bmdld29sbHRlcywgZXJzdCB0ZWlsd2Vpc2UgZWluZ2VnZWJlbmVzIEtvbW1hbmRvIGFiLgorCisgICAgIE51biBmYWhyZSBtaXQgTGVrdGlvbiAyIGZvcnQuCit+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+fn4KKwkJCSAgTGVrdGlvbiAyLjE6IEzDllNDSEtPTU1BTkRPUworCisKKwkJICAgKiogVGlwcGUgIGR3ICAsIHVtIGVpbiBXb3J0IHp1IGzDtnNjaGVuLiAqKgorCisgIDEuIERyw7xja2UgIDxFU0M+ICAsIHVtIHNpY2hlcnp1c3RlbGxlbiwgZGFzcyBEdSBpbSBOb3JtYWxtb2R1cyBiaXN0LgorCisgIDIuIEJld2VnZSBkZW4gQ3Vyc29yIHp1IGRlciBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlIHVudGVuLgorCisgIDMuIEJld2VnZSBkZW4gQ3Vyc29yIHp1bSBBbmZhbmcgZWluZXMgV29ydGVzLCBkYXMgZ2Vsw7ZzY2h0IHdlcmRlbiBzb2xsLgorCisgIDQuIFRpcHBlICBkdyAgLCB1bSBkYXMgV29ydCB6dSBlbnRmZXJuZW4uCisKKyAgQW5tZXJrdW5nOiBEZXIgQnVjaHN0YWJlICBkICBlcnNjaGVpbnQgYXVmIGRlciB1bnRlcnN0ZW4gWmVpbGUgZGVzIFNjaGlybXMsCisgICAgICAgIHdlbm4gRHUgaWhuIGVpbmdpYnN0LiBWaW0gd2FydGV0IGRhcmF1ZiwgZGFzcyBEdSAgdyAgZWluZ2lic3QuIEZhbGxzIER1CisgICAgICAgIGVpbiBhbmRlcmVzIFplaWNoZW4gYWxzICBkICBzaWVoc3QsIGhhc3QgRHUgZXR3YXMgRmFsc2NoZXMgZ2V0aXBwdDsKKyAgICAgICAgZHLDvGNrZSA8RVNDPiB1bmQgYmVnaW5uZSBub2NoIGVpbm1hbC4KKworLS0tPiBFaW5pZ2UgV8O2cnRlciBsdXN0aWcgZ2Vow7ZyZW4gbmljaHQgUGFwaWVyIGluIGRpZXNlbiBTYXR6LgorCisgIDUuIFdpZWRlcmhvbGUgZGllIFNjaHJpdHRlIDMgdW5kIDQsIGJpcyBkZXIgU2F0eiBrb3JyZWt0IGlzdCB1bmQgZ2VoZQorICAgICB6dXIgTGVrdGlvbiAyLjIuCit+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+fn4KKwkJICAgICAgTGVrdGlvbiAyLjI6IFdFSVRFUkUgTMOWU0NIS09NTUFORE9TCisKKworCSAgICAqKiBUaXBwZSAgZCQgICwgdW0gYmlzIHp1bSBFbmRlIGRlciBaZWlsZSB6dSBsw7ZzY2hlbi4gKioKKworICAxLiBEcsO8Y2tlIDxFU0M+ICwgdW0gc2ljaGVyenVzdGVsbGVuLCBkYXNzIER1IGltIE5vcm1hbG1vZHVzIGJpc3QuCisKKyAgMi4gQmV3ZWdlIGRlbiBDdXJzb3IgenUgZGVyIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUgdW50ZW4uCisKKyAgMy4gQmV3ZWdlIGRlbiBDdXJzb3IgenVtIEVuZGUgZGVyIGtvcnJla3RlbiBaZWlsZSAoTkFDSCBkZW0gZXJzdGVuIC4gKS4KKworICA0LiBUaXBwZSAgICBkJCAgICAsIHVtIGJpcyB6dW0gWmVpbGVuZW5kZSB6dSBsw7ZzY2hlbi4KKworLS0tPiBKZW1hbmQgaGF0IGRhcyBFbmRlIGRlciBaZWlsZSBkb3BwZWx0IGVpbmdlZ2ViZW4uIGRvcHBlbHQgZWluZ2VnZWJlbi4KKworCisgIDUuIEdlaGUgd2VpdGVyIHp1ciBMZWt0aW9uIDIuMyAsIHVtIHp1IHZlcnN0ZWhlbiwgd2FzIGhpZXJiZWkgdm9yZ2VodC4KKworCisKKworCit+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+fn4KKwkJIExla3Rpb24gMi4zOiDDnEJFUiBPUEVSQVRPUkVOIFVORCBCRVdFR1VOR1Naw5xHRQorCisKKyAgVmllbGUgS29tbWFuZG9zLCBkaWUgVGV4dCDDpG5kZXJuLCBzZXR6ZW4gc2ljaCBhdXMgZWluZW0gT3BlcmF0b3IgdW5kIGVpbmVyCisgIEJld2VndW5nIHp1c2FtbWVuLiBEYXMgRm9ybWF0IGbDvHIgZWluIEzDtnNjaGtvbW1hbmRvIG1pdCBkZW0gTMO2c2Nob3BlcmF0b3IgIGQKKyAgbGF1dGV0IHdpZSBmb2xndDoKKworICAgIGQgIEJld2VndW5nCisKKyAgd29iZWk6CisgICAgZCAgICAgICAgLSBkZXIgTMO2c2Nob3BlcmF0b3IKKyAgICBCZXdlZ3VuZyAtIHdvcmF1ZiBkZXIgTMO2c2Nob3BlcmF0b3IgYW5nZXdhbmR0IHdpcmQgKHVudGVuIGF1ZmdlZsO8aHJ0KS4KKworICBFaW5lIGtsZWluZSBBdWZsaXN0dW5nIHZvbiBCZXdlZ3VuZ2VuOgorICAgIHcgLSBiaXMgenVtIEJlZ2lubiBkZXMgbsOkY2hzdGVuIFdvcnRlcyBPSE5FIGRlc3NlbiBlcnN0ZXMgWmVpY2hlbi4KKyAgICBlIC0genVtIEVuZGUgZGVzIGFrdHVlbGxlbiBXb3J0ZXMgTUlUIGRlc3NlbiBsZXR6dGVtIFplaWNoZW4uCisgICAgJCAtIHp1bSBFbmRlIGRlciBaZWlsZSBNSVQgZGVtIGxldHp0ZW4gWmVpY2hlbi4KKworICBEZW1lbnRzcHJlY2hlbmQgbMO2c2NodCBkaWUgRWluZ2FiZSB2b24gIGRlICB2b20gQ3Vyc29yIGFuIGJpcyB6dW0gV29ydGVuZGUuCisKK0FubWVya3VuZzogIERpZSBFaW5nYWJlIGxlZGlnbGljaCBkZXMgQmV3ZWd1bmdzdGVpbHMgaW0gTm9ybWFsbW9kdXMgYmV3ZWd0IGRlbgorICBDdXJzb3IgZW50c3ByZWNoZW5kLgorfn5+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+CisJTGVrdGlvbiAyLjQ6IEFOV0VORFVORyBFSU5FUyBaw4RITEVSUyBGw5xSIEVJTkVOIEJFV0VHVU5HU1NDSFJJVFQKKworCisgICAqKiBEaWUgRWluZ2FiZSBlaW5lciBaYWhsIHZvciBlaW5lbSBCZXdlZ3VuZ3NzY2hyaXR0IHdpZWRlcmhvbHQgZGllc2VuLiAqKgorCisgIDEuIEJld2VnZSBkZW4gQ3Vyc29yIHp1bSBCZWdpbm4gZGVyIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUgdW50ZW4uCisKKyAgMi4gVGlwcGUgIDJ3ICAsIHVtIGRlbiBDdXJzb3IgendlaSBXw7ZydGVyIHZvcnfDpHJ0cyB6dSBiZXdlZ2VuLgorCisgIDMuIFRpcHBlICAzZSAgLCB1bSBkZW4gQ3Vyc29yIHp1bSBFbmRlIGRlcyBkcml0dGVuIFdvcnRlcyB6dSBiZXdlZ2VuLgorCisgIDQuIFRpcHBlICAwICAoTnVsbCkgLCB1bSB6dW0gQW5mYW5nIGRlciBaZWlsZSB6dSBnZWxhbmdlbi4KKworICA1LiBXaWVkZXJob2xlIFNjaHJpdHRlIDIgdW5kIDMgbWl0IHZlcnNjaGllZGVuZW4gTnVtbWVybi4KKworICAtLS0+IERpZXMgaXN0IG51ciBlaW5lIFplaWxlIGF1cyBXw7ZydGVybiwgdW0gc2ljaCBkYXJpbiBoZXJ1bXp1YmV3ZWdlbi4KKworICA2LiBHZWhlIHdlaXRlciB6dSBMZWt0aW9uIDIuNS4KKworCisKKworfn5+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+CisJIExla3Rpb24gMi41OiBBTldFTkRVTkcgRUlORVMgWsOESExFUlMgRsOcUiBNRUhSRVJFIEzDllNDSFZPUkfDhE5HRQorCisKKyAgICoqIERpZSBFaW5nYWJlIGVpbmVyIFphaGwgbWl0IGVpbmVtIE9wZXJhdG9yIHdpZWRlcmhvbHQgZGllc2VuIG1laHJmYWNoLiAqKgorCisgIEluIGRlciBLb21iaW5hdGlvbiBhdXMgTMO2c2Nob3BlcmF0b3IgdW5kIEJld2VndW5nc3NjaHJpdHQgKHNpZWhlIG9iZW4pIAorICBzdGVsbHQgbWFuLCB1bSBtZWhyIHp1IGzDtnNjaGVuIGRlbSBTY2hyaXR0IGVpbmVuIFrDpGhsZXIgdm9yYW46CisJIGQgIE51bW1lciAgQmV3ZWd1bmdzc2Nocml0dAorCisgIDEuIEJld2VnZSBkZW4gQ3Vyc29yIHp1bSBlcnN0ZW4gV29ydCBpbiBHUk9TU0JVQ0hTVEFCRU4gaW4gZGVyIG1pdCAtLS0+CisgICAgIG1hcmtpZXJlbiBaZWlsZS4KKworICAyLiBUaXBwZSAgZDJ3ICAsIHVtIGRpZSB6d2VpIFfDtnJ0ZXIgaW4gR1JPU1NCVUNIU1RBQkVOIHp1IGzDtnNjaGVuLgorCisgIDMuIFdpZWRlcmhvbGUgU2Nocml0dGUgMSB1bmQgIDIgbWl0IGVpbmVtIGFuZGVyZW4gWsOkaGxlciwgdW0gZGllIGRhcmF1ZmZvbC0KKyAgICAgZ2VuZGVuIFfDtnJ0ZXIgaW4gR1JPU1NCVUNIU1RBQkVOIG1pdCBlaW5lbSBlaW56aWdlbiBLb21tYW5kbyB6dSBsw7ZzY2hlbi4KKworLS0tPiAgRGllc2UgQUJDIERFIFplaWxlIEZHSEkgSksgTE1OIE9QIG1pdCBXw7ZydGVybiBpc3QgUSBSUyBUVVYgYmVyZWluaWd0LgorCisKKworfn5+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+CisJCQlMZWt0aW9uIDIuNjogQVJCRUlURU4gQVVGIFpFSUxFTgorCisKKwkgICAgICAgKiogVGlwcGUgIGRkICAsIHVtIGVpbmUgZ2FuemUgWmVpbGUgenUgbMO2c2NoZW4uICoqCisKKyAgV2VnZW4gZGVyIEjDpHVmaWdrZWl0LCBkYXNzIG1hbiBnYW56ZSBaZWlsZW4gbMO2c2NodCwga2FtZW4gZGllIEVudHdpY2tsZXIgdm9uCisgIFZpIGRhcmF1ZiwgZGFzcyBlcyBsZWljaHRlciB3w6RyZSwgZWluZmFjaCB6d2VpIGQncyBlaW56dWdlYmVuLCB1bSBlaW5lIFplaWxlCisgIHp1IGzDtnNjaGVuLgorCisgIDEuIEJld2VnZSBkZW4gQ3Vyc29yIHp1ciB6d2VpdGVuIFplaWxlIGluIGRlciB1bnRlbiBzdGVoZW5kZW4gUmVkZXdlbmR1bmcuCisgIDIuIFRpcHBlICBkZCAgLCB1bSBkaWUgWmVpbGUgenUgbMO2c2NoZW4uCisgIDMuIE51biBiZXdlZ2UgRGljaCB6dXIgdmllcnRlbiBaZWlsZS4KKyAgNC4gVGlwcGUgIDJkZCAgLCB1bSB6d2VpIFplaWxlbiB6dSBsw7ZzY2hlbi4KKworLS0tPiAgMSkgIFJvc2VuIHNpbmQgcm90LAorLS0tPiAgMikgIE1hdHNjaCBpc3QgbHVzdGlnLAorLS0tPiAgMykgIFZlaWxjaGVuIHNpbmQgYmxhdSwKKy0tLT4gIDQpICBJY2ggaGFiZSBlaW4gQXV0bywKKy0tLT4gIDUpICBEaWUgVWhyIHNhZ3QgZGllIFplaXQsCistLS0+ICA2KSAgWnVja2VyIGlzdCBzw7zDnywKKy0tLT4gIDcpICBTbyB3aWUgRHUgYXVjaC4KKworfn5+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+CisJCSAgICAgTGVrdGlvbiAyLjc6IFLDnENLR8OETkdJRyBNQUNIRU4gKFVORE8pCisKKworCSAqKiBUaXBwZSB1ICwgdW0gZGllIGxldHp0ZW4gS29tbWFuZG9zIHLDvGNrZ8OkbmdpZyB6dSBtYWNoZW4gKioKKwkgICAgICAqKiBvZGVyIFUgLCB1bSBlaW5lIGdhbnplIFplaWxlIHdpZWRlcmhlcnp1c3RlbGxlbi4gKioKKworICAxLiBCZXdlZ2UgZGVuIEN1cnNvciB6dSBkZXIgbWl0IC0tLT4gbWFya2llcnRlbiBaZWlsZSB1bnRlbgorICAgICB1bmQgc2V0emUgaWhuIGF1ZiBkZW4gZXJzdGVuIEZlaGxlci4KKyAgMi4gVGlwcGUgIHggICwgdW0gZGFzIGVyc3RlIHVuZXJ3w7xuc2NodGUgWmVpY2hlbiB6dSBsw7ZzY2hlbi4KKyAgMy4gTnVuIHRpcHBlICB1ICAsIHVtIGRhcyBzb2ViZW4gYXVzZ2Vmw7xocnRlIEtvbW1hbmRvIHLDvGNrZ8OkbmdpZyB6dSBtYWNoZW4uCisgIDQuIEpldHp0IGJlaGViZSBhbGxlIEZlaGxlciBhdWYgZGVyIFplaWxlIG1pdCBIaWxmZSBkZXMgeCAgS29tbWFuZG9zLgorICA1LiBOdW4gdGlwcGUgZWluIGdyb8OfZXMgIFUgLCB1bSBkaWUgWmVpbGUgaW4gaWhyZW4gVXJzcHJ1bmdzenVzdGFuZAorICAgICB3aWVkZXJoZXJ6dXN0ZWxsZW4uCisgIDYuIE51biB0aXBwZSAgdSAgZWluaWdlIE1hbGUsIHVtIGRhcyBVIHVuZCBkaWUgdm9yaGVyZ2VoZW5kZW4gS29tbWFuZG9zCisgICAgIHLDvGNrZ8OkbmdpZyB6dSBtYWNoZW4uCisgIDcuIE51biB0aXBwZSBDVFJMLVIgKGhhbHRlIENUUkwgZ2VkcsO8Y2t0IHVuZCBkcsO8Y2tlIFIpIG1laHJlcmUgTWFsZSwgdW0gZGllCisgICAgIEtvbW1hbmRvcyB3aWVkZXJoZXJ6dXN0ZWxsZW4gKGRpZSBSw7xja2fDpG5naWdtYWNodW5nZW4gcsO8Y2tnw6RuZ2lnIG1hY2hlbikuCisKKy0tLT4gQmVlaGViZSBkaWUgRmVobGxlciBkaWVzc2VyIFplaWxlIHVuZCBzdHRlbGxlIHNpZSBtaXR0ICd1bmRvJyB3aWVkZXIgaGVyLgorCisgIDguIERpZXMgc2luZCBzZWhyIG7DvHR6bGljaGUgS29tbWFuZG9zLiAgTnVuIGdlaGUgd2VpdGVyIHp1ciBadXNhbW1lbmZhc3N1bmcgCisgICAgIHZvbiBMZWt0aW9uIDIuCit+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+fn4KKwkJCSBaVVNBTU1FTkZBU1NVTkcgVk9OIExFS1RJT04gMgorCisKKyAgMS4gVW0gdm9tIEN1cnNvciBiaXMgenVtIG7DpGNoc3RlbiBXb3J0IHp1IGzDtnNjaGVuLCB0aXBwZTogICAgZHcKKyAgMi4gVW0gdm9tIEN1cnNvciBiaXMgenVtIEVuZGUgZWluZXIgWmVpbGUgenUgbMO2c2NoZW4sIHRpcHBlOiAgICAgZCQKKyAgMy4gVW0gZWluZSBnYW56ZSBaZWlsZSB6dSBsw7ZzY2hlbiwgdGlwcGU6ICAgIGRkCisKKyAgNC4gVW0gZWluZSBCZXdlZ3VuZyB6dSB3aWVkZXJob2xlbiwgc3RlbGxlIGVpbmUgTnVtbWVyIHZvcmFuOiAgIDJ3CisgIDUuIERhcyBGb3JtYXQgZsO8ciBlaW4gw4RuZGVydW5nc2tvbW1hbmRvIGlzdDoKKyAgICAgICAgICAgICAgIE9wZXJhdG9yICAgW0FuemFobF0gICBCZXdlZ3VuZ3NzY2hyaXR0CisgICAgIHdvYmVpOgorICAgICAgIE9wZXJhdG9yIC0gZ2lidCBhbiwgd2FzIGdldGFuIHdlcmRlbiBzb2xsLCB6dW0gQmVpc3BpZWwgIGQgIGbDvHIgZGVsZXRlCisgICAgICAgW0FuemFobF0gLSBlaW4gb3B0aW9uYWxlciBaw6RobGVyLCB1bSBkZW4gQmV3ZWd1bmdzc2Nocml0dCB6dSB3aWVkZXJob2xlbgorICAgICAgIEJld2VndW5nc3NjaHJpdHQgLSBCZXdlZ3VuZyDDvGJlciBkZW4genUgw6RuZGVybmRlbiBUZXh0LCB3aWUKKwkJICB3IChXb3J0KSwgJCAoenVtIEVuZGUgZGVyIFplaWxlKSwgZXRjLgorCisgIDYuIFVtIERpY2ggenVtIEFuZmFuZyBkZXIgWmVpbGUgenUgYmVnZWJlbiwgYmVudXR6ZSBkaWUgTnVsbDogIDAKKworICA3LiBVbSB2b3JoZXJpZ2UgQWt0aW9uZW4gcsO8Y2tnw6RuZ2lnIHp1IG1hY2hlbiwgdGlwcGU6CQl1IChrbGVpbmVzIHUpCisgICAgIFVtIGFsbGUgw4RuZGVydW5nZW4gYXVmIGVpbmVyIFplaWxlIHLDvGNrZ8OkbmdpZyB6dSBtYWNoZW46ICAgVSAoZ3Jvw59lcyBVKQorICAgICBVbSBkaWUgUsO8Y2tnw6RuZ2lnbWFjaHVuZ2VuIHLDvGNrZ8OkbmdpZyB6dSBtYWNoZW4sIHRpcHBlOiAgICBDVFJMLVIKKworfn5+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+CisJCQkgICBMZWt0aW9uIDMuMTogQU5Gw5xHRU4gKFBVVCkKKworCisgICAgICoqIFRpcHBlICBwICAsIHVtIHZvcmhlciBnZWzDtnNjaHRlbiBUZXh0IG5hY2ggZGVtIEN1cnNvciBhbnp1ZsO8Z2VuLiAqKgorCisgIDEuIEJld2VnZSBkZW4gQ3Vyc29yIHp1ciBlcnN0ZW4gdW50ZW4gc3RlaGVuZGVuIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUuCisKKyAgMi4gVGlwcGUgIGRkICAsIHVtIGRpZSBaZWlsZSB6dSBsw7ZzY2hlbiB1bmQgc2llIGluIGVpbmVtIFZpbS1SZWdpc3RlciB6dQorICAgICBzcGVpY2hlcm4uCisKKyAgMy4gQmV3ZWdlIGRlbiBDdXJzb3IgenVyIFplaWxlIGMpLCDDnEJFUiBkZXJqZW5pZ2VuLCB3byBkaWUgZ2Vsw7ZzY2h0ZSBaZWlsZQorICAgICBwbGF0emllcnQgd2VyZGVuIHNvbGwuCisKKyAgNC4gIFRpcHBlICAgcCAgICwgdW0gZGllIFplaWxlIHVudGVyaGFsYiBkZXMgQ3Vyc29ycyB6dSBwbGF0emllcmVuLgorCisgIDUuIFdpZWRlcmhvbGUgZGllIFNjaHJpdHRlIDIgYmlzIDQsIHVtIGFsbGUgWmVpbGVuIGluIGRpZSByaWNodGlnZQorICAgICBSZWloZW5mb2xnZSB6dSBicmluZ2VuLgorCistLS0+IGQpIEthbm5zdCBEdSBkYXMgYXVjaD8KKy0tLT4gYikgVmVpbGNoZW4gc2luZCBibGF1LAorLS0tPiBjKSBJbnRlbGxpZ2VueiBpc3QgbGVybmJhciwKKy0tLT4gYSkgUm9zZW4gc2luZCByb3QsCit+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+fn4KKwkJCUxla3Rpb24gMy4yOiBFUlNFVFpFTiAoUkVQTEFDRSkKKworCisgICAqKiBUaXBwZSAgcnggICwgdW0gZGFzIFplaWNoZW4gdW50ZXIgZGVtIEN1cnNvciBkdXJjaCAgeCB6dSBlcnNldHplbi4gKioKKworICAxLiBCZXdlZ2UgZGVuIEN1cnNvciB6dXIgZXJzdGVuIHVudGVuIHN0ZWhlbmRlbiBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlLgorCisgIDIuIEJld2VnZSBkZW4gQ3Vyc29yLCBiaXMgZXIgc2ljaCBhdWYgZGVtIGVyc3RlbiBGZWhsZXIgYmVmaW5kZXQuCisKKyAgMy4gVGlwcGUgIHIgIHVuZCBhbnNjaGxpZcOfZW5kIGRhcyBaZWljaGVuLCB3ZWxjaGVzIGRvcnQgc3RlaGVuIHNvbGx0ZS4KKworICA0LiBXaWVkZXJob2xlIFNjaHJpdHRlIDIgdW5kIDMsIGJpcyBkaWUgZXJzdGUgWmVpbGUgZ2xlaWNoIGRlciB6d2VpdGVuIGlzdC4KKworLS0tPiAgQWxmIGRpZXNlIFplaXRlIGVpbmdlZ29iZW4gd3VyZGUsIHd1cmRlbiBlaW5pa2UgZmFsc2NoZSBUYXN0ZW4gZ2VsaXBwdCEKKy0tLT4gIEFscyBkaWVzZSBaZWlsZSBlaW5nZWdlYmVuIHd1cmRlLCB3dXJkZW4gZWluaWdlIGZhbHNjaGUgVGFzdGVuIGdldGlwcHQhCisKKyAgNS4gTnVuIGZhaHJlIGZvcnQgbWl0IExla3Rpb24gMy4yLgorCitBbm1lcmt1bmc6IEVyaW5uZXJlIERpY2ggZGFyYW4sIGRhc3MgRHUgZHVyY2ggQW53ZW5kZW4gbGVybmVuIHNvbGx0ZXN0LCBuaWNodCAKKyAgICAgZHVyY2ggQXVzd2VuZGlnbGVybmVuLgorCisKK35+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+fgorCQkJICBMZWt0aW9uIDMuMzogw4ROREVSTiAoQ0hBTkdFKQorCisKKyAgICAgICoqIFVtIGVpbmUgw4RuZGVydW5nIGJpcyB6dW0gV29ydGVuZGUgZHVyY2h6dWbDvGhyZW4sIHRpcHBlICBjZSAuICoqCisKKyAgMS4gQmV3ZWdlIGRlbiBDdXJzb3IgenVyIGVyc3RlbiB1bnRlbiBzdGVoZW5kZW4gbWl0IC0tLT4gbWFya2llcnRlbiBaZWlsZS4KKworICAyLiBQbGF0emllcmUgZGVuIEN1cnNvciBhdWYgZGFzICBzICB2b24gV3N0d3IuCisKKyAgMy4gVGlwcGUgIGNlICB1bmQgZGllIFdvcnRrb3JyZWt0dXIgZWluIChpbiBkaWVzZW0gRmFsbCB0aXBwZSAgw7ZydGVyICkuCisKKyAgNC4gRHLDvGNrZSA8RVNDPiB1bmQgYmV3ZWdlIGRlbiBDdXJzb3IgenVtIG7DpGNoc3RlbiB6dSDDpG5kZXJuZGVuIFplaWNoZW4uCisKKyAgNS4gV2llZGVyaG9sZSBTY2hyaXR0ZSAzIHVuZCA0IGJpcyBkZXIgZXJzdGUgU2F0eiBnbGVpY2ggZGVtIHp3ZWl0ZW4gaXN0LgorCistLS0+IEVpbmlnZSBXc3R3ciBkaWVzZXIgWmxhd3cgbGFzZGpsYWYgbWl0IGRlbSDDhG5kZXJuLU9wZXJhdG9yIGdhYWF1dSB3ZXJkZW4uCistLS0+IEVpbmlnZSBXw7ZydGVyIGRpZXNlciBaZWlsZSBzb2xsZW4gbWl0IGRlbSDDhG5kZXJuLU9wZXJhdG9yIGdlw6RuZGVydCB3ZXJkZW4uCisKK0JlYWNodGUsIGRhc3MgIGNlICBkYXMgV29ydCBsw7ZzY2h0IHVuZCBEaWNoIGluIGRlbiBFaW5nYWJlbW9kdXMgdmVyc2V0enQuCisKKworCit+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+fn4KKwkJICAgICBMZWt0aW9uIDMuNDogTUVIUiDDhE5ERVJVTkdFTiBNSVRURUxTIGMKKworCisgICAgICoqIERhcyBjaGFuZ2UtS29tbWFuZG8gYXJiZWl0ZXQgbWl0IGRlbnNlbGJlbiBCZXdlZ3VuZ2VuIHdpZSBkZWxldGUuICAqKgorCisgIDEuIERlciBjaGFuZ2UgT3BlcmF0b3IgYXJiZWl0ZXQgaW4gZ2xlaWNoZXIgV2Vpc2Ugd2llIGRlbGV0ZS4gRGFzIEZvcm1hdCBpc3Q6CisKKyAgICAgICAgIGMgICAgW0FuemFobF0gIEJld2VndW5nc3NjaHJpdHQKKworICAyLiBEaWUgQmV3ZWd1bmdzc2Nocml0dGUgc2luZCBkaWUgZ2xlaWNoZW4gLCBzbyB3aWUgIHcgIChXb3J0KSB1bmQgICQKKyAgICAgKFplaWxlbmVuZGUpLgorCisgIDMuIEJld2VnZSBEaWNoIHp1ciBlcnN0ZW4gdW50ZW4gc3RlaGVuZGVuIG1pdCAtLS0+IG1hcmtpZXJ0ZW4gWmVpbGUuCisKKyAgNC4gQmV3ZWdlIGRlbiBDdXJzb3IgenVtIGVyc3RlbiBGZWhsZXIuCisKKyAgNS4gVGlwcGUgIGMkICAsIGdpYiBkZW4gUmVzdCBkZXIgWmVpbGUgd2llIGluIGRlciB6d2VpdGVuIGVpbiwgZHLDvGNrZSA8RVNDPiAuCisKKy0tLT4gRGFzIEVuZGUgZGllc2VyIFplaWxlIHNvbGwgYW4gZGllIHp3ZWl0ZSBaZWlsZSBhbmdlZ2xpY2hlbiB3ZXJkZW4uCistLS0+IERhcyBFbmRlIGRpZXNlciBaZWlsZSBzb2xsIG1pdCBkZW0gIGMkICBLb21tYW5kbyBrb3JyaWdpZXJ0IHdlcmRlbi4KKworQW5tZXJrdW5nOiBEdSBrYW5uc3QgZGllIFLDvGNrdGFzdGUgYmVudXR6ZW4sIHVtIFRpcHBmZWhsZXIgenUga29ycmlnaWVyZW4uCit+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+fn4KKwkJCSBaVVNBTU1FTkZBU1NVTkcgVk9OIExFS1RJT04gMworCisKKyAgMS4gVW0gZWluZW4gdm9yaGVyIGdlbMO2c2NodGVuIFRleHQgYW56dWbDvGdlbiwgdGlwcGUgICBwIC4gRGllcyBmw7xndCBkZW4KKyAgICAgZ2Vsw7ZzY2h0ZW4gVGV4dCBOQUNIIGRlbSBDdXJzb3IgYW4gKHdlbm4gZWluZSBnYW56ZSBaZWlsZSBnZWzDtnNjaHQgd3VyZGUsCisgICAgIHdpcmQgZGllc2UgaW4gZGllIFplaWxlIHVudGVyIGRlbSBDdXJzb3IgZWluZ2Vmw7xndCkuCisKKyAgMi4gVW0gZGFzIFplaWNoZW4gdW50ZXIgZGVtIEN1cnNvciB6dSBlcnNldHplbiwgdGlwcGUgICByICAgdW5kIGRhbmFjaCBkYXMgCisgICAgIGFuIGRpZXNlciBTdGVsbGUgZ2V3b2xsdGUgWmVpY2hlbi4KKworICAzLiBEZXIgw4RuZGVydW5ncy0gKGNoYW5nZSkgT3BlcmF0b3IgZXJsYXVidCwgdm9tIEN1cnNvciBiaXMgenVtIEVuZGUgZGVzCisgICAgIEJld2VndW5nc3NjaHJpdHRlcyB6dSDDpG5kZXJuLiBUaXBwZSAgY2UgICwgdW0gZWluZSDDhG5kZXJ1bmcgdm9tIEN1cnNvciBiaXMKKyAgICAgenVtIEVuZGUgZGVzIFdvcnRlcyB2b3J6dW5laG1lbjsgIGMkICBiaXMgenVtIEVuZGUgZWluZXIgWmVpbGUuCisKKyAgNC4gRGFzIEZvcm1hdCBmw7xyIGNoYW5nZSBpc3Q6CisKKwkgYyAgIFtBbnphaGxdICBCZXdlZ3VuZ3NzY2hyaXR0CisKKyAgTnVuIGZhaHJlIG1pdCBkZXIgbsOkY2hzdGVuIExla3Rpb24gZm9ydC4KKworCisKK35+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+fgorCQkgIExla3Rpb24gNC4xOiBDVVJTT1JQT1NJVElPTiBVTkQgREFURUlTVEFUVVMKKworICoqIFRpcHBlIENUUkwtRyAsIHVtIGRlaW5lIERhdGVpcG9zaXRpb24gc293aWUgZGVuIERhdGVpc3RhdHVzIGFuenV6ZWlnZW4uICoqCisgICAgICoqIFRpcHBlIEcgLCB1bSBEaWNoIHp1IGVpbmVyIFplaWxlIGluIGRlciBEYXRlaSB6dSBiZWdlYmVuLiAqKgorCitBbm1lcmt1bmc6IExpZXMgZGllc2UgZ2VzYW10ZSBMZWt0aW9uLCBiZXZvciBEdSBpcmdlbmRlaW5lbiBTY2hyaXR0IGF1c2bDvGhyc3QhIQorCisgIDEuIEhhbHRlIGRpZSBDdHJsIFRhc3RlIHVudGVuIHVuZCBkcsO8Y2tlICBnIC4gRGllcyBuZW5uZW4gd2lyIENUUkwtRy4KKyAgICAgRWluZSBTdGF0dXNtZWxkdW5nIGFtIEZ1w58gZGVyIFNlaXRlIGVyc2NoZWludCBtaXQgZGVtIERhdGVpbmFtZW4gdW5kIGRlcgorICAgICBQb3NpdGlvbiBpbm5lcmhhbGIgZGVyIERhdGVpLiBNZXJrZSBEaXIgZGllIFplaWxlbm51bW1lciBmw7xyIFNjaHJpdHQgMy4KKworQW5tZXJrdW5nOiBNw7ZnbGljaGVyd2Vpc2Ugc2llaHN0IER1IGRpZSBDdXJzb3Jwb3NpdGlvbiBpbiBkZXIgdW50ZXJlbiByZWNodGVuCisgICAgICBCaWxkc2NoaXJtZWNrZS4gRGllcyBpc3QgQXVzd2lya3VuZyBkZXIgJ3J1bGVyJyBPcHRpb24gCisJICAoc2llaGUgOmhlbHAgJ3J1bGVyJykKKworICAyLiBEcsO8Y2tlICBHICAsIHVtIERpY2ggenVtIEVuZGUgZGVyIERhdGVpIHp1IGJlZ2ViZW4uCisgICAgIFRpcHBlICBnZyAgLCB1bSBEaWNoIHp1bSBBbmZhbmcgZGVyIERhdGVpIHp1IGJlZ2ViZW4uCisKKyAgMy4gR2liIGRpZSBOdW1tZXIgZGVyIFplaWxlIGVpbiwgYXVmIGRlciBEdSB2b3JoZXIgd2Fyc3QsIGdlZm9sZ3Qgdm9uICBHIC4KKyAgICAgRGllcyBicmluZ3QgRGljaCB6dXLDvGNrIHp1IGRlciBaZWlsZSwgYXVmIGRlciBEdSBnZXN0YW5kZW4gaGFzdCwgYWxzIER1CisgICAgIGRhcyBlcnN0ZSBNYWwgQ1RSTC1HIGdlZHLDvGNrdCBoYXN0LgorCisgIDQuIFdlbm4gRHUgRGljaCBzaWNoZXIgZ2VudWcgZsO8aGxzdCwgZsO8aHJlIGRpZSBTY2hyaXR0ZSAxIGJpcyAzIGF1cy4KK35+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+fgorCQkgICAgICAgTGVrdGlvbiA0LjI6IERBUyBTVUNIRU4gLSBLT01NQU5ETworCisKKyAgKiogVGlwcGUgIC8gIGdlZm9sZ3Qgdm9uIGVpbmVtIEF1c2RydWNrLCB1bSBuYWNoIGRlbSBBdXNkcnVjayB6dSBzdWNoZW4uICoqCisKKyAgMS4gSW0gTm9ybWFsbW9kdXMsIHRpcHBlIGRhcyAgLyAgWmVpY2hlbi4gIEJlYWNodGUsIGRhc3MgZGFzICAvIHVuZCBkZXIKKyAgICAgQ3Vyc29yIGFtIEZ1w58gZGVzIFNjaGlybXMgZXJzY2hlaW5lbiwgc28gd2llIGJlaW0gOglLb21tYW5kby4KKworICAyLiBOdW4gdGlwcGUgJ0ZlaGhsZXInIDxFTlRFUj4uIERpZXMgaXN0IGRhcyBXb3J0LCBuYWNoIGRlbSBEdSBzdWNoZW4gd2lsbHN0LgorCisgIDMuIFVtIG5hY2ggZGVtc2VsYmVuIEF1c2RydWNrIHdlaXRlcnp1c3VjaGVuLCB0aXBwZSBlaW5mYWNoICBuIChmw7xyIG5leHQpLgorICAgICBVbSBuYWNoIGRlbXNlbGJlbiBBdXNkcnVjayBpbiBkZXIgR2VnZW5yaWNodHVuZyB6dSBzdWNoZW4sIHRpcHBlICBOIC4KKworICA0LiBVbSBuYWNoIGVpbmVtIEF1c2RydWNrIHLDvGNrd8OkcnRzIHp1IHN1Y2hlbiAsIGJlbnV0emUgID8gIHN0YXR0ICAvIC4KKworICA1LiBVbSBkYWhpbiB6dXLDvGNrenVrZWhyZW4sIHZvbiB3byBEdSBnZWtvbW1lbiBiaXN0LCBkcsO8Y2tlIENUUkwtTyAoSGFsdGUKKyAgICAgQ3RybCB1bnRlbiB1bmQgZHLDvGNrZSBkZW4gQnVjaHN0YWJlbiBvKS4gV2llZGVyaG9sZSBkaWVzLCB1bSBub2NoIHdlaXRlcgorICAgICB6dXLDvGNrenVnZWhlbi4gIENUUkwtSSBnZWh0IHZvcnfDpHJ0cy4KKworLS0tPiAgRmVobGVyIHNjaHJlaWJ0IHNpY2ggbmljaHQgIkZlaGhsZXIiOyBGZWhobGVyIGlzdCBlaW4gRmVobGVyCitBbm1lcmt1bmc6IFdlbm4gZGllIFN1Y2hlIGRhcyBEYXRlaWVuZGUgZXJyZWljaHQgaGF0LCB3aXJkIHNpZSBhbSBBbmZhbmcKKyAgICAgICAgZm9ydGdlc2V0enQsIGVzIHNlaSBkZW5uLCBkaWUgJ3dyYXBzY2FuJyBPcHRpb24gd3VyZGUgYWJnZXNjaGFsdGV0Lgorfn5+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+CisJCSAgICAgTGVrdGlvbiA0LjM6IFBBU1NFTkRFIEtMQU1NRVJOIEZJTkRFTgorCisKKyAgICoqIFRpcHBlICAlICwgdW0gZWluZSBnZWdlbsO8YmVybGllZ2VuZGVuIEtsYW1tZXIgKSxdLCBvZGVyIH0genUgZmluZGVuLiAqKgorCisgIDEuIFBsYXR6aWVyZSBkZW4gQ3Vyc29yIGF1ZiBpcmdlbmRlaW5lbSBkZXIgWmVpY2hlbiAoLCBbLCBvZGVyIHsgaW4gZGVyIHVudGVuCisgICAgIHN0ZWhlbmRlbiBaZWlsZSwgZGllIG1pdCAtLS0+IG1hcmtpZXJ0IGlzdC4KKworICAyLiBOdW4gdGlwcGUgZGFzICAlICBaZWljaGVuLgorCisgIDMuIERlciBDdXJzb3IgYmV3ZWd0IHNpY2ggenVyIHBhc3NlbmRlbiBnZWdlbsO8YmVybGllZ2VuZGVuIEtsYW1tZXIuCisKKyAgNC4gVGlwcGUgICUgLCB1bSBkZW4gQ3Vyc29yIHp1ciBwYXNzZW5kZW4gYW5kZXJlbiBLbGFtbWVyIHp1IGJld2VnZW4uCisKKyAgNS4gU2V0emUgZGVuIEN1cnNvciBhdWYgZWluIGFuZGVyZXMgKCwpLFssXSx7IG9kZXIgfSB1bmQgcHJvYmllcmUgICUgIGF1cy4KKworLS0tPiBEaWVzICggaXN0IGVpbmUgVGVzdHplaWxlICggbWl0IFsgdmVyc2NoaWVkZW5lbiBdIHsgS2xhbW1lcm4gfSAgZGFyaW4uICkpCisKK0FubWVya3VuZzogRGllc2UgRnVua3Rpb25hbGl0w6R0IGlzdCBzZWhyIG7DvHR6bGljaCBiZWkgZGVyIEZlaGxlcnN1Y2hlIGluIGVpbmVtCisgICAgIFByb2dyYW1tdGV4dCwgaW4gZGVtIHBhc3NlbmRlIEtsYW1tZXJuIGZlaGxlbiEKKworCit+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+fn4KKwkJTGVrdGlvbiA0LjQ6IERBUyBFUlNFVFpVTkdTS09NTUFORE8gKFNVQlNUSVRVVEUpCisKKworCSAqKiBUaXBwZSA6cy9hbHQvbmV1L2cgICwgdW0gJ2FsdCcgZHVyY2ggJ25ldScgenUgZXJzZXR6ZW4uICoqCisKKyAgMS4gQmV3ZWdlIGRlbiBDdXJzb3IgenUgZGVyIHVudGVuIHN0ZWhlbmRlbiBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlLgorCisgIDIuIFRpcHBlICA6cy9kaWVlL2RpZSA8RU5URVI+IC4gIEJlYWNodGUsIGRhc3MgZGVyIEJlZmVobCBudXIgZGFzIGVyc3RlCisgICAgIFZvcmtvbW1lbiB2b24gImRpZWUiIGVyc2V0enQuCisKKyAgMy4gTnVuIHRpcHBlICAgOnMvZGllZS9kaWUvZyAuIERhcyBadWbDvGdlbiBkZXMgRmxhZ3MgIGcgICBiZWRldXRldCwgZWluZQorICAgICBnbG9iYWxlIEVyc2V0enVuZyDDvGJlciBkaWUgWmVpbGUgZHVyY2h6dWbDvGhyZW4sIGRpZXMgZXJzZXR6dCBhbGxlIAorCSBWb3Jrb21tZW4gdm9uICJkaWVlIiBhdWYgZGVyIFplaWxlLgorCistLS0+IGRpZWUgc2Now7Zuc3RlIFplaXQsIHVtIGRpZWUgQmx1bWVuIGFuenVzY2hhdWVuLCBpc3QgZGllZSBGcsO8aGxpbmdzemVpdC4KKworICA0LiBVbSBhbGxlIFZvcmtvbW1lbiBlaW5lciBaZWljaGVua2V0dGUgaW5uZXJoYWxiIHp3ZWllciBaZWlsZW4genUgw6RuZGVybiwKKyAgICAgdGlwcGUgIDojLCNzL2FsdC9uZXUvZyAgd29iZWkgIywjIGRpZSBaZWlsZW5udW1tZXJuIGRlcyBCZXJlaWNoZXMgc2luZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4gZGVtIGRpZSBFcnNldHp1bmcgZHVyY2hnZWbDvGhydCB3ZXJkZW4gc29sbC4KKyAgICAgVGlwcGUgIDolcy9hbHQvbmV1L2cgICAgdW0gYWxsZSBWb3Jrb21tZW4gaW4gZGVyIGdlc2FtdGVuIERhdGVpIHp1IMOkbmRlcm4uCisgICAgIFRpcHBlICA6JXMvYWx0L25ldS9nYyAgIHVtIGFsbGUgVm9ya29tbWVuIGluIGRlciBnZXNhbXRlbiBEYXRlaSB6dSBmaW5kZW4KKyAgICAgICAgICAgICAgICAgICAgIG1pdCBlaW5lbSBGcmFnZWRpYWxvZywgb2IgZXJzZXR6dCB3ZXJkZW4gc29sbCBvZGVyIG5pY2h0Lgorfn5+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+CisJCQkgWlVTQU1NRU5GQVNTVU5HIFZPTiBMRUtUSU9OIDQKKworICAxLiBDVFJMLUcgIHplaWd0IGRpZSBha3R1ZWxsZSBEYXRlaXBvc2l0aW9uIHNvd2llIGRlbiBEYXRlaXN0YXR1cy4KKyAgICAgICAgICAgICBHICBicmluZ3QgRGljaCB6dW0gRW5kZSBkZXIgRGF0ZWkuCisgICAgIE51bW1lciAgRyAgYnJpbmd0IERpY2ggenVyIGVudHNwcmVjaGVuZGVuIFplaWxlbm51bW1lci4KKyAgICAgICAgICAgIGdnICBicmluZ3QgRGljaCB6dXIgZXJzdGVuIFplaWxlLgorCisgIDIuIERpZSBFaW5nYWJlIHZvbiAgLyAgcGx1cyBlaW5lbSBBdXNkcnVjayBzdWNodCBWT1JXw4RSVFMgbmFjaCBkZW0gQXVzZHJ1Y2suCisgICAgIERpZSBFaW5nYWJlIHZvbiAgPyAgcGx1cyBlaW5lbSBBdXNkcnVjayBzdWNodCBSw5xDS1fDhFJUUyBuYWNoIGRlbSBBdXNkcnVjay4KKyAgICAgVGlwcGUgbmFjaCBlaW5lciBTdWNoZSAgbiAgLCB1bSBkYXMgbsOkY2hzdGUgVm9ya29tbWVuIGluIGRlciBnbGVpY2hlbgorICAgICBSaWNodHVuZyB6dSBmaW5kZW47IG9kZXIgIE4gICwgdW0gaW4gZGVyIEdlZ2VucmljaHR1bmcgenUgc3VjaGVuLgorICAgICBDVFJMLU8gYnJpbmd0IERpY2ggenVyw7xjayB6dSDDpGx0ZXJlbiBQb3NpdGlvbmVuLCBDVFJMLUkgenUgbmV1ZXJlbi4KKworICAzLiBEaWUgRWluZ2FiZSB2b24gICUgICwgd2VubiBkZXIgQ3Vyc29yIHNpY2ggYXVmICgsKSxbLF0seywgb2RlciB9CisgICAgIGJlZmluZGV0LCBicmluZ3QgRGljaCB6dXIgR2VnZW5rbGFtbWVyLgorCisgIDQuIFVtIGRhcyBlcnN0ZSBWb3Jrb21tZW4gdm9uICJhbHQiIGluIGVpbmVyIFplaWxlIGR1cmNoICJuZXUiIHp1IGVyc2V0emVuLAorICAgICAgICAgICAgIHRpcHBlICAgICAgIDpzL2FsdC9uZXUKKyAgICAgVW0gYWxsZSBWb3Jrb21tZW4gdm9uICJhbHQiIGluIGRlciBaZWlsZSBlcnNldHplbiwgdGlwcGUgIDpzL2FsdC9uZXUvZworICAgICBVbSBBdXNkcsO8Y2tlIGlubmVyaGFsYiB6d2VpZXIgWmVpbGVuICMgenUgZXJzZXR6ZW4gICAgICAgIDojLCNzL2FsdC9uZXUvZworICAgICBVbSBhbGxlIFZvcmtvbW1lbiBpbiBkZXIgZ2FuemVuIERhdGVpIHp1IGVyc2V0emVuLCB0aXBwZSAgOiVzL2FsdC9uZXUvZworICAgICBGw7xyIGVpbmUgamVkZXNtYWxpZ2UgQmVzdMOkdGlndW5nLCBhZGRpZXJlICdjJyAoY29uZmlybSkgICA6JXMvYWx0L25ldS9nYworfn5+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+CisJCUxla3Rpb24gNS4xOiBBVVNGw5xIUkVOIEVJTkVTIEVYVEVSTkVOIEtPTU1BTkRPUworCisKKyAgKiogR2liICA6ISAsIGdlZm9sZ3Qgdm9uIGVpbmVtIGV4dGVybmVuIEtvbW1hbmRvIGVpbiwgdW0gZXMgYXVzenVmw7xocmVuLiAqKgorCisgIDEuIFRpcHBlIGRhcyB2ZXJ0cmF1dGUgS29tbWFuZG8gIDogICwgdW0gZGVuIEN1cnNvciBhdWYgZGVuIEZ1w58gZGVzIFNjaGlybXMKKyAgICAgenUgc2V0emVuLiBEaWVzIGVybGF1YnQgRGlyLCBlaW4gS29tbWFuZG96ZWlsZW4tS29tbWFuZG8gZWluenVnZWJlbi4KKworICAyLiBOdW4gdGlwcGUgZWluICAhICAoQXVzcnVmZXplaWNoZW4pLiAgRGllcyBlcm3DtmdsaWNodCBEaXIsIGVpbiBiZWxpZWJpZ2VzLAorICAgICBleHRlcm5lcyBTaGVsbGtvbW1hbmRvIGF1c3p1ZsO8aHJlbi4KKworICAzLiBBbHMgQmVpc3BpZWwgdGlwcGUgICBscyAgIG5hY2ggZGVtICAhICB1bmQgZHLDvGNrZSA8RU5URVI+LiBEaWVzIGxpZWZlcnQKKyAgICAgZWluZSBBdWZsaXN0dW5nIGRlaW5lcyBWZXJ6ZWljaG5pc3NlczsgZ2VuYXVzbywgYWxzIHdlbm4gRHUgaW4gZGVyCisgICAgIEVpbmdhYmVhdWZmb3JkZXJ1bmcgd8OkcnN0LiAgT2RlciB2ZXJ3ZW5kZSAgOiFkaXIgICwgZmFsbHMgbHMgbmljaHQgZ2VodC4KKworQW5tZXJrdW5nOiAgTWl0IGRpZXNlciBNZXRob2RlIGthbm4gamVkZXMgYmVsaWViaWdlIGV4dGVybmUgS29tbWFuZG8KKyAgICAgYXVzZ2Vmw7xocnQgd2VyZGVuLCBhdWNoIG1pdCBBcmd1bWVudGVuLgorCitBbm1lcmt1bmc6ICBBbGxlICA6ICBLb21tYW5kb3MgbcO8c3NlbiBkdXJjaCBFaW5nYWJlIHZvbiA8RU5URVI+CisgICAgIGFiZ2VzY2hsb3NzZW4gd2VyZGVuLiBWb24gamV0enQgYW4gZXJ3w6RobmVuIHdpciBkaWVzIG5pY2h0IGplZGVzbWFsLgorCisKK35+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+fgorCQlMZWt0aW9uIDUuMjogTUVIUiDDnEJFUiBEQVMgU0NIUkVJQkVOIFZPTiBEQVRFSUVOCisKKworKiogVW0gYW0gVGV4dCBkdXJjaGdlZsO8aHJ0ZSDDhG5kZXJ1bmdlbiB6dSBzcGVpY2hlcm4sIHRpcHBlIDp3IERBVEVJTkFNRS4gKioKKworICAxLiBUaXBwZSAgOiFkaXIgIG9kZXIgIDohbHMgICwgdW0gZWluZSBBdWZsaXN0dW5nIGRlaW5lcyBWZXJ6ZWljaG5pc3NlcyB6dQorICAgICBlcmhhbHRlbi4gIER1IHdlacOfdCBudW4gYmVyZWl0cywgZGFzcyBEdSBkYW5hY2ggPEVOVEVSPiBlaW5nZWJlbiBtdXNzdC4KKworICAyLiBXw6RobGUgZWluZW4gRGF0ZWluYW1lbiwgZGVyIG5vY2ggbmljaHQgZXhpc3RpZXJ0LCB6LkIuIFRFU1QuCisKKyAgMy4gTnVuIHRpcHBlOiAgOncgVEVTVCAgICh3b2JlaSBURVNUIGRlciBnZXfDpGhsdGUgRGF0ZWluYW1lIGlzdCkuCisKKyAgNC4gRGllcyBzcGVpY2hlcnQgZGllIGdhbnplIERhdGVpIChkZW4gVmltIFR1dG9yKSB1bnRlciBkZW0gTmFtZW4gVEVTVC4KKyAgICAgVW0gZGllcyB6dSDDvGJlcnByw7xmZW4sIHRpcHBlIG5vY2htYWxzICA6IWxzICBiencuICAhZGlyLCB1bSBkZWluZW4KKyAgICAgVmVyemVpY2huaXNpbmhhbHQgenUgc2VoZW4uCisKK0FubWVya3VuZzogV8O8cmRlc3QgRHUgVmltIGpldHp0IGJlZW5kZW4gdW5kIGRhbmFjaCB3aWVkZXIgbWl0IHZpbSBURVNUCisgICAgc3RhcnRlbiwgZGFubiB3w6RyZSBkaWVzZSBEYXRlaSBlaW5lIGV4YWt0ZSBLb3BpZSBkZXMgVHV0b3JzIHp1IGRlbQorICAgIFplaXRwdW5rdCwgYWxzIER1IGlobiBnZXNwZWljaGVydCBoYXN0LgorCisgIDUuIE51biBlbnRmZXJuZSBkaWUgRGF0ZWkgZHVyY2ggRWluZ2FiZSB2b24gKE1TLURPUyk6ICAgIDohZGVsIFRFU1QKKyAgICAgICAgICAgICAgICAgICAgICBvZGVyIChVbml4KTogICAgICAgICAgICAgICAgICAgICAgICAgOiFybSBURVNUCit+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+fn4KKwkJIExla3Rpb24gNS4zOiBBVVNXw4RITEVOIFZPTiBURVhUIFpVTSBTQ0hSRUlCRU4KKworKiogVW0gZWluZW4gQWJzY2huaXR0IGRlciBEYXRlaSB6dSBzcGVpY2hlcm4sICB0aXBwZSAgdiAgQmV3ZWd1bmcgIDp3IERBVEVJICoqCisKKyAgMS4gQmV3ZWdlIGRlbiBDdXJzb3IgenUgZGllc2VyIFplaWxlLgorCisgIDIuIFRpcHBlICB2ICB1bmQgYmV3ZWdlIGRlbiBDdXJzb3IgenVtIGbDvG5mdGVuIEF1Zmxpc3R1bmdzcHVua3QgdW50ZW4uCisgICAgIEJlYWNodGUsIGRhc3MgZGVyIFRleHQgaGVydm9yZ2Vob2JlbiB3aXJkLgorCisgIDMuIERyw7xja2UgZGFzIFplaWNoZW4gIDogLiBBbSBGdcOfIGRlcyBTY2hpcm1zIGVyc2NoZWludCAgOic8LCc+IC4KKworICA0LiBUaXBwZSAgdyBURVNUICAsIHdvYmVpIFRFU1QgZWluIG5vY2ggbmljaHQgdm9yaGFuZGVuZXIgRGF0ZWluYW1lIGlzdC4KKyAgICAgVmVyZ2V3aXNzZXJlIERpY2gsIGRhc3MgRHUgIDonPCwnPncgVEVTVCAgc2llaHN0LCBiZXZvciBEdSA8RU5URVI+IGRyw7xja3N0LgorCisgIDUuIFZpbSBzY2hyZWlidCBkaWUgYXVzZ2V3w6RobHRlbiBaZWlsZW4gaW4gZGllIERhdGVpIFRFU1QuIEJlbnV0emUgIDohZGlyCisgICAgIG9kZXIgIDohbHMgLCB1bSBzaWUgenUgc2VoZW4uIEzDtnNjaGUgc2llIG5vY2ggbmljaHQhIFdpciB3ZXJkZW4gc2llIGluCisgICAgIGRlciBuw6RjaHN0ZW4gTGVrdGlvbiBiZW51dHplbi4KKworSGlud2VpczogRHLDvGNrZW4gdm9uICB2ICBzdGFydGV0IGRpZSBWaXN1ZWxsZSBBdXN3YWhsLiBEdSBrYW5uc3QgZGVuIEN1cnNvcgorICAgdW1oZXJiZXdlZ2VuLCB1bSBkaWUgQXVzd2FobCB6dSB2ZXJncsO2w59lcm4gb2RlciB6dSB2ZXJrbGVpbmVybi4gQW5zY2hsaWXDn2VuZAorICAgbMOkc3N0IHNpY2ggZWluIE9wZXJhdG9yIGFud2VuZGVuLCB1bSBtaXQgZGVtIFRleHQgZXR3YXMgenUgdHVuLiBadW0gQmVpc3BpZWwKKyAgIGzDtnNjaHQgIGQgIGRlbiBUZXh0LgorCit+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+fn4KKwkgICAgICBMZWt0aW9uIDUuNDogRUlOTEVTRU4gVU5EIFpVU0FNTUVORsOcSFJFTiBWT04gREFURUlFTgorCisKKyAgICAgICAqKiBVbSBkZW4gSW5oYWx0IGVpbmVyIERhdGVpIGVpbnp1bGVzZW4sIHRpcHBlICA6ciBEQVRFSU5BTUUgICoqCisKKyAgMS4gUGxhdHppZXJlIGRlbiBDdXJzb3IgZGlyZWt0IMO8YmVyIGRpZXNlciBaZWlsZS4KKworQkVBQ0hURTogIE5hY2hkZW0gRHUgU2Nocml0dCAyIGF1c2dlZsO8aHJ0IGhhc3QsIHdpcnN0IER1IFRleHQgYXVzIExla3Rpb24gNS4zCisgICAgICAgc2VoZW4uIERhbm4gYmV3ZWdlIERpY2ggd2llZGVyIEFCV8OEUlRTLCBMZWt0aW9uIDUuNCB3aWVkZXJ6dXNlaGVuLgorCisgIDIuIE51biBsaWVzIGRlaW5lIERhdGVpIFRFU1QgZWluIGluZGVtIER1IGRhcyBLb21tYW5kbyAgOnIgVEVTVCAgYXVzZsO8aHJzdCwKKyAgICAgd29iZWkgVEVTVCBkZXIgdm9uIERpciB2ZXJ3ZW5kZXRlIERhdGVpbmFtZSBpc3QuCisgICAgIERpZSBlaW5nZWxlc2VuZSBEYXRlaSB3aXJkIHVudGVyaGFsYiBkZXIgQ3Vyc29yemVpbGUgZWluZ2Vmw7xndC4KKworICAzLiBVbSB6dSDDvGJlcnByw7xmZW4sIGRhc3MgZGllIERhdGVpIGVpbmdlbGVzZW4gd3VyZGUsIGdlaGUgenVyw7xjayB1bmQgCisgICAgIGJlYWNodGUsIGRhc3MgZXMgamV0enQgendlaSBLb3BpZW4gdm9uIExla3Rpb24gNS4zIGdpYnQsIGRhcyBPcmlnaW5hbCB1bmQgCisJIGRpZSBlaW5nZWbDvGd0ZSBEYXRlaXZlcnNpb24uCisKK0FubWVya3VuZzogRHUga2FubnN0IGF1Y2ggZGllIEF1c2dhYmUgZWluZXMgZXh0ZXJuZW4gS29tbWFuZG9zIGVpbmxlc2VuLiBadW0KKyAgICAgQmVpc3BpZWwgbGllc3QgIDpyICFscyAgZGllIEF1c2dhYmUgZGVzIEtvbW1hbmRvcyBscyBlaW4gdW5kIHBsYXR6aWVydAorICAgICBzaWUgdW50ZXJoYWxiIGRlcyBDdXJzb3JzLgorCit+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+fn4KKwkJCSBaVVNBTU1FTkZBU1NVTkcgVk9OIExFS1RJT04gNQorCisKKyAgMS4gOiFLb21tYW5kbyAgZsO8aHJ0IGVpbiBleHRlcm5lcyBLb21tYW5kbyBhdXMuCisKKyAgICAgIEVpbmlnZSBuw7x0emxpY2hlIEJlaXNwaWVsZSBzaW5kCisJKE1TLURPUykJICAoVW5peCkKKwkgOiFkaXIJCSAgIDohbHMJCSAgIC0gIHplaWd0IGVpbmUgVmVyemVpY2huaXNhdWZsaXN0dW5nLgorCSA6IWRlbCBEQVRFSU5BTUUgICA6IXJtIERBVEVJTkFNRSAgLSAgZW50ZmVybnQgRGF0ZWkgREFURUlOQU1FLgorCisgIDIuIDp3IERBVEVJTkFNRSAgc3BlaWNoZXJ0IGRpZSBha3R1ZWxsZSBWaW0tRGF0ZWkgdW50ZXIgZGVtIE5hbWVuICBEQVRFSU5BTUUuCisKKyAgMy4gdiAgQmV3ZWd1bmcgIDp3IERBVEVJTkFNRSAgc2NocmVpYnQgZGllIFZpc3VlbGwgYXVzZ2V3w6RobHRlbiBaZWlsZW4gaW4KKyAgICAgZGllIERhdGVpIERBVEVJTkFNRS4KKworICA0LiA6ciBEQVRFSU5BTUUgIGzDpGR0IGRpZSBEYXRlaSBEQVRFSU5BTUUgdW5kIGbDvGd0IHNpZSB1bnRlcmhhbGIgZGVyCisgICAgIEN1cnNvcnBvc2l0aW9uIGVpbi4KKworICA1LiA6ciAhZGlyICBsaWVzdCBkaWUgQXVzZ2FiZSBkZXMgS29tbWFuZG9zIGRpciB1bmQgZsO8Z3Qgc2llIHVudGVyaGFsYiBkZXIKKyAgICAgQ3Vyc29ycG9zaXRpb24gZWluLgorCisKK35+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+fgorCQkgICAgICAgTGVrdGlvbiA2LjE6IFpFSUxFTiDDlkZGTkVOIChPUEVOKQorCisKKyAgICoqIFRpcHBlICBvCSwgdW0gZWluZSBaZWlsZSB1bnRlcmhhbGIgZGVzIEN1cnNvcnMgenUgw7ZmZm5lbiB1bmQgRGljaCBpbiAqKgorICAgICAgICAgICAgICAgICAgICAgICoqIGRlbiBFaW5mw7xnZW1vZHVzIHp1IGJlZ2ViZW4uICoqCisKKyAgMS4gQmV3ZWdlIGRlbiBDdXJzb3IgenUgZGVyIGVyc3RlbiBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlIHVudGVuLgorCisgIDIuIFRpcHBlIG8gKGtsZWluIGdlc2NocmllYmVuKSwgdW0gZWluZSBaZWlsZSBVTlRFUkhBTEIgZGVzIEN1cnNvcnMgenUgw7ZmZm5lbgorICAgICB1bmQgRGljaCBpbiBkZW4gRWluZsO8Z2Vtb2R1cyB6dSBiZWdlYmVuLgorCisgIDMuIE51biB0aXBwZSBldHdhcyBUZXh0IHVuZCBkcsO8Y2tlIDxFU0M+ICwgdW0gZGVuIEVpbmbDvGdlbW9kdXMgenUgdmVybGFzc2VuLgorCistLS0+IE1pdCAgbyAgd2lyZCBkZXIgQ3Vyc29yIGF1ZiBkZXIgb2ZmZW5lbiBaZWlsZSBpbSBFaW5mw7xnZW1vZHVzIHBsYXR6aWVydC4KKworICA0LiBVbSBlaW5lIFplaWxlIMOcQkVSSEFMQiBkZXMgQ3Vyc29ycyBhdWZ6dW1hY2hlbiwgZ2liIGVpbmZhY2ggZWluIGdyb8OfZXMgIE8KKyAgICAgc3RhdHQgZWluZW0ga2xlaW5lbiAgbyAgZWluLiBWZXJzdWNoZSBkaWVzIGF1ZiBkZXIgdW50ZW4gc3RlaGVuZGVuIFplaWxlLgorCistLS0+IMOWZmZuZSBlaW5lIFplaWxlIMO8YmVyIGRpZXNlciBtaXQgTyAsIHdlbm4gZGVyIEN1cnNvciBhdWYgZGllc2VyIFplaWxlIGlzdC4KKworCisKK35+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+fgorCQkgICAgICAgTGVrdGlvbiA2LjI6IFRFWFQgQU5Gw5xHRU4gKEFQUEVORCkKKworCisJICAgICAqKiBUaXBwZSAgYSAgLCB1bSBUZXh0IE5BQ0ggZGVtIEN1cnNvciBlaW56dWbDvGdlbi4gKioKKworICAxLiBCZXdlZ2UgZGVuIEN1cnNvciB6dW0gQW5mYW5nIGRlciBlcnN0ZW4gw5xidW5nc3plaWxlIG1pdCAtLS0+IHVudGVuLgorCisgIDIuIERyw7xja2UgIGUgICwgYmlzIGRlciBDdXJzb3IgYW0gRW5kZSB2b24gIFplaSAgc3RlaHQuCisKKyAgMy4gVGlwcGUgZWluIGtsZWluZXMgIGEgICwgdW0gVGV4dCBOQUNIIGRlbSBDdXJzb3IgYW56dWbDvGdlbi4KKworICA0LiBWZXJ2b2xsc3TDpG5kaWdlIGRhcyBXb3J0IHNvIHdpZSBpbiBkZXIgWmVpbGUgZGFydW50ZXIuICBEcsO8Y2tlIDxFU0M+ICwKKyAgICAgdW0gZGVuIEVpbmbDvGdlbW9kdXMgenUgdmVybGFzc2VuLgorCisgIDUuIEJld2VnZSBEaWNoIG1pdCAgZSAgenVtIG7DpGNoc3RlbiB1bnZvbGxzdMOkbmRpZ2VuIFdvcnQgdW5kIHdpZWRlcmhvbGUKKyAgICAgU2Nocml0dGUgMyB1bmQgNC4KKworLS0tPiBEaWVzZSBaZWkgYmlldGV0IEdlbGVnZW4gLCBUZXh0IGluIGVpbmVyIFplaWxlIGFuenVmw7wuCistLS0+IERpZXNlIFplaWxlIGJpZXRldCBHZWxlZ2VuaGVpdCwgVGV4dCBpbiBlaW5lciBaZWlsZSBhbnp1ZsO8Z2VuLgorCitBbm1lcmt1bmc6ICBhLCBpIHVuZCBBIGdlaGVuIGFsbGUgZ2xlaWNoZXJtYcOfZW4gaW4gZGVuIEVpbmbDvGdlbW9kdXM7IGRlcgorICAgICAgICAgICAgZWluemlnZSBVbnRlcnNjaGllZCBpc3QsIHdvIGRpZSBaZWljaGVuIGVpbmdlZsO8Z3Qgd2VyZGVuLgorfn5+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+CisJICAgICAgTGVrdGlvbiA2LjM6IEVJTkUgQU5ERVJFIEFSVCBERVMgRVJTRVRaRU5TIChSRVBMQUNFKQorCisKKyAgICAgICAqKiBUaXBwZSBlaW4gZ3Jvw59lcyAgUiAgLCB1bSBtZWhyIGFscyBlaW4gWmVpY2hlbiB6dSBlcnNldHplbi4gKioKKworICAxLiBCZXdlZ2UgZGVuIEN1cnNvciB6dXIgZXJzdGVuIHVudGVuIHN0ZWhlbmRlbiwgbWl0IC0tLT4gbWFya2llcnRlbiBaZWlsZS4KKyAgICAgQmV3ZWdlIGRlbiBDdXJzb3IgenVtIEFuZmFuZyBkZXMgZXJzdGVuICB4eHggLgorCisgIDIuIE51biBkcsO8Y2tlICBSICB1bmQgdGlwcGUgZGllIE51bW1lciwgZGllIGRhcnVudGVyIGluIGRlciB6d2VpdGVuIFplaWxlCisgICAgIHN0ZWh0LCBzbyBkYXNzIGRpZXNlIGRhcyB4eHggZXJzZXR6dC4KKworICAzLiBEcsO8Y2tlIDxFU0M+ICwgdW0gZGVuIEVyc2V0enVuZ3Ntb2R1cyB6dSB2ZXJsYXNzZW4uIEJlYWNodGUsIGRhc3MgZGVyIFJlc3QKKyAgICAgZGVyIFplaWxlIHVudmVyw6RuZGVydCBibGVpYnQuCisKKyAgNC4gV2llZGVyaG9sZSBkaWUgU2Nocml0dGUsIHVtIGRhcyB2ZXJibGllYmVuZSB4eHggenUgZXJzZXR6ZW4uCisKKy0tLT4gRGFzIEFkZGllcmVuIHZvbiAxMjMgenUgeHh4IGVyZ2lidCB4eHguCistLS0+IERhcyBBZGRpZXJlbiB2b24gMTIzIHp1IDQ1NiBlcmdpYnQgNTc5LgorCitBbm1lcmt1bmc6IERlciBFcnNldHp1bmdzbW9kdXMgaXN0IHdpZSBkZXIgRWluZsO8Z2Vtb2R1cywgYWJlciBqZWRlcyBlaW5nZXRpcHB0ZQorICAgICAgICAgICBaZWljaGVuIGzDtnNjaHQgZWluIHZvcmhhbmRlbmVzIFplaWNoZW4uCisKK35+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+fgorCQkgICAgTGVrdGlvbiA2LjQ6IFRFWFQgS09QSUVSRU4gVU5EIEVJTkbDnEdFTgorCisgKiogQmVudXR6ZSBkZW4gIHkgIE9wZXJhdG9yLCB1bSBUZXh0IHp1IGtvcGllcmVuOyAgcCAgLCB1bSBpaG4gZWluenVmw7xnZW4gKioKKworICAxLiBHZWhlIHp1IGRlciBtaXQgLS0tPiBtYXJraWVydGVuIFplaWxlIHVudGVuOyBzZXR6ZSBkZW4gQ3Vyc29yIGhpbnRlciAiYSkiLgorCisgIDIuIFN0YXJ0ZSBkZW4gVmlzdWVsbGVuIE1vZHVzIG1pdCAgdiAgLCBiZXdlZ2UgZGVuIEN1cnNvciBnZW5hdSB2b3IgImVyc3RlIi4KKworICAzLiBUaXBwZSAgeSAgLCB1bSBkZW4gaGVydm9yZ2Vob2JlbiBUZXh0IHp1IGtvcGllcmVuLgorCisgIDQuIEJld2VnZSBkZW4gQ3Vyc29yIHp1bSBFbmRlIGRlciBuw6RjaHN0ZW4gWmVpbGU6ICBqJAorCisgIDUuIFRpcHBlICBwICwgdW0gZGVuIFRleHQgZWluenVmw7xnZW4gdW5kIGFuc2NobGllw59lbmQ6ICBhIHp3ZWl0ZSA8RVNDPiAuCisKKyAgNi4gQmVudXR6ZSBkZW4gVmlzdWVsbGVuIE1vZHVzLCB1bSAiIEVpbnRyYWcuIiBhdXN6dXfDpGhsZW4sIGtvcGllcmUgbWl0dGVscworICAgICB5ICwgYmV3ZWdlIERpY2ggenVtIEVuZGUgZGVyIG7DpGNoc3RlbiBaZWlsZSBtaXQgIGokICB1bmQgZsO8Z2UgZGVuIFRleHQKKyAgICAgZG9ydCBtaXQgIHAgIGFuLgorCistLS0+ICBhKSBkaWVzIGlzdCBkZXIgZXJzdGUgRWludHJhZy4KKyAgICAgIGIpCisKK0FubWVya3VuZzogRHUga2FubnN0ICB5ICBhdWNoIGFscyBPcGVyYXRvciB2ZXJ3ZW5kZW47ICB5dyAga29waWVydCBlaW4gV29ydC4KK35+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+fgorCQkJICBMZWt0aW9uIDYuNTogT1BUSU9ORU4gU0VUWkVOCisKKyAgICAgICoqIFNldHplIGVpbmUgT3B0aW9uIHNvLCBkYXNzIGVpbmUgU3VjaGUgb2RlciBFcnNldHp1bmcgR3Jvw58tICoqCisJCSAgICAgICoqIHVuZCBLbGVpbnNjaHJlaWJ1bmcgaWdub3JpZXJ0ICoqCisKKyAgMS4gU3VjaGUgbmFjaCAnaWdub3JpZXJlJywgaW5kZW0gRHUgICAgL2lnbm9yaWVyZSAgIGVpbmdpYnN0LgorICAgICBXaWVkZXJob2xlIGRpZSBTdWNoZSBlaW5pZ2UgTWFsZSwgaW5kZW0gRHUgZGllIG4gLSBUYXN0ZSBkcsO8Y2tzdC4KKworICAyLiBTZXR6ZSBkaWUgJ2ljJyAoSWdub3JlIGNhc2UpIC0gT3B0aW9uLCBpbmRlbSBEdSAgIDpzZXQgaWMgICBlaW5naWJzdC4KKworICAzLiBOdW4gc3VjaGUgd2llZGVyIG5hY2ggJ2lnbm9yaWVyZScsIGluZGVtIER1ICBuICB0aXBwc3QuCisgICAgIEJlYWNodGUsIGRhc3MgamV0enQgSWdub3JpZXJlIHVuZCBhdWNoIElHTk9SSUVSRSBnZWZ1bmRlbiB3aXJkLgorCisgIDQuIFNldHplIGRpZSAnaGxzZWFyY2gnIHVuZCAnaW5jc2VhcmNoJyAtIE9wdGlvbmVuOiAgICAgOnNldCBobHMgaXMKKworICA1LiBXaWVkZXJob2xlIGRpZSBTdWNoZSB1bmQgYmVvYmFjaHRlLCB3YXMgcGFzc2llcnQ6IC9pZ25vcmllcmUgPEVOVEVSPgorCisgIDYuIFVtIGRhcyBJZ25vcmllcmVuIHZvbiBHcm/Dny9LbGVpbnNjaHJlaWJ1bmcgYWJ6dXNjaGFsdGVuLCB0aXBwZTogIDpzZXQgbm9pYworCitBbm1lcmt1bmc6IFVtIGRpZSBIZXJ2b3JoZWJ1bmcgZGVyIFRyZWZmZXIgenUgZW50ZmVybmVuLCBnaWIgZWluOiAgOm5vaGxzZWFyY2gKK0FubWVya3VuZzogVW0gZGllIFNjaHJlaWJ3ZWlzZSBmw7xyIGVpbmUgZWluemlnZSBTdWNoZSB6dSBpZ25vcmllcmVuLCBiZW51dHplIFxjCisgICAgICAgICAgIGltIFN1Y2hhdXNkcnVjazogIC9pZ25vcmllcmVcYyAgPEVOVEVSPgorfn5+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+CisJCQkgWlVTQU1NRU5GQVNTVU5HIFZPTiBMRUtUSU9OIDYKKworIDEuIFRpcHBlICBvICAsIHVtIGVpbmUgWmVpbGUgVU5URVIgZGVtIEN1cnNvciB6dSDDtmZmbmVuIHVuZCBkZW4gRWluZsO8Z2Vtb2R1cworICAgICAgICAgICAgICAgIHp1IHN0YXJ0ZW4KKyAgICBUaXBwZSAgTyAgLCB1bSBlaW5lIFplaWxlIMOcQkVSIGRlbSBDdXJzb3IgenUgw7ZmZm5lbi4KKworIDIuIFRpcHBlICBhICAsIHVtIFRleHQgTkFDSCBkZW0gQ3Vyc29yIGFuenVmw7xnZW4uCisgICAgVGlwcGUgIEEgICwgdW0gVGV4dCBuYWNoIGRlbSBaZWlsZW5lbmRlIGFuenVmw7xnZW4uCisKKyAzLiBEYXMgS29tbWFuZG8gIGUgIGJyaW5ndCBEaWNoIHp1bSBFbmRlIGVpbmVzIFdvcnRlcy4KKworIDQuIERlciBPcGVyYXRvciAgeSAgKHlhbmspIGtvcGllcnQgVGV4dCwgIHAgIChwdXQpIGbDvGd0IGlobiBlaW4uCisKKyA1LiBFaW4gZ3Jvw59lcyAgUiAgZ2VodCBpbiBkZW4gRXJzZXR6dW5nc21vZHVzIGJpcyB6dW0gRHLDvGNrZW4gdm9uICA8RVNDPiAuCisKKyA2LiBEaWUgRWluZ2FiZSB2b24gIjpzZXQgeHh4IiBzZXR6dCBkaWUgT3B0aW9uICJ4eHgiLiBFaW5pZ2UgT3B0aW9uZW4gc2luZDoKKwknaWMnICdpZ25vcmVjYXNlJyAgICBJZ25vcmllcmUgR3Jvw58vS2xlaW5zY2hyZWlidW5nIGJlaSBlaW5lciBTdWNoZQorCSdpcycgJ2luY3NlYXJjaCcgICAgIFplaWdlIFRlaWzDvGJlcmVpbnN0aW1tdW5nZW4gZsO8ciBlaW5lbiBTdWNoYXVzZHJ1Y2sKKwknaGxzJyAnaGxzZWFyY2gnICAgICBIZWJlIGFsbGUgcGFzc2VuZGVuIEF1c2Ryw7xja2UgaGVydm9yCisgICAgRGVyIE9wdGlvbnNuYW1lIGthbm4gaW4gZGVyIEt1cnotIG9kZXIgZGVyIExhbmdmb3JtIGFuZ2VnZWJlbiB3ZXJkZW4uCisKKyA3LiBTdGVsbGUgZWluZXIgT3B0aW9uICJubyIgdm9yYW4sIHVtIHNpZSBhYnp1c2NoYWx0ZW46ICAgOnNldCBub2ljCit+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+fn4KKwkJCUxla3Rpb24gNy4xIDogQVVGUlVGRU4gVk9OIEhJTEZFCisKKworCQkgICAgICoqIE51dHplIGRhcyBlaW5nZWJhdXRlIEhpbGZlc3lzdGVtICoqCisKKyAgVmltIGJlc2l0enQgZWluIHVtZmFzc2VuZGVzIGVpbmdlYmF1dGVzIEhpbGZlc3lzdGVtLiAgRsO8ciBkZW4gQW5mYW5nIHByb2JpZXJlCisgIGVpbnMgZGVyIGRyZWkgZm9sZ2VuZGVuIERpbmdlIGF1czoKKwktIERyw7xja2UgZGllIDxIaWxmZT4gLSBUYXN0ZSAoZmFsbHMgRHUgZWluZSBiZXNpdHp0KQorCS0gRHLDvGNrZSBkaWUgPEYxPiBUYXN0ZSAoZmFsbHMgRHUgZWluZSBiZXNpdHp0KQorCS0gVGlwcGUgICA6aGVscCA8RU5URVI+CisKKyAgTGllcyBkZW4gVGV4dCBpbSBIaWxmZWZlbnN0ZXIsIHVtIHp1IHZlcnN0ZWhlbiB3aWUgZGllIEhpbGZlIGZ1bmt0aW9uaWVydC4KKyAgVGlwcGUgIENUUkwtVyBDVFJMLVcgICAsIHVtIHZvbiBlaW5lbSBGZW5zdGVyIHp1bSBhbmRlcmVuIHp1IHNwcmluZ2VuLgorICBUaXBwZSAgIDpxIDxFTlRFUj4gICwgdW0gZGFzIEhpbGZlZmVuc3RlciB6dSBzY2hsaWXDn2VuLgorCisgIER1IGthbm5zdCBIaWxmZSB6dSBwcmFrdGlzY2ggamVkZW0gVGhlbWEgZmluZGVuLCBpbmRlbSBEdSBkZW0gIjpoZWxwIi0KKyAgS29tbWFuZG8gZWluIEFyZ3VtZW50IGdpYnN0LiAgUHJvYmllcmUgZm9sZ2VuZGVzICg8RU5URVI+IG5pY2h0IHZlcmdlc3Nlbik6CisKKwk6aGVscCB3CisJOmhlbHAgY19DVFJMLUQKKwk6aGVscCBpbnNlcnQtaW5kZXgKKwk6aGVscCB1c2VyLW1hbnVhbAorfn5+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+CisJCSAgICAgTGVrdGlvbiA3LjI6IEVSU1RFTExFIEVJTiBTVEFSVC1TS1JJUFQKKworCisJICAgICAgICAgICoqICBBa3RpdmllcmUgZGllIEZlYXR1cmVzIHZvbiBWaW0gKioKKworICBWaW0gYmVzaXR6dCB2aWVsZSBGdW5rdGlvbmFsaXTDpHRlbiwgZGllIMO8YmVyIFZpIGhpbmF1c2dlaGVuLCBhYmVyIGRpZSBtZWlzdGVuCisgIHZvbiBpaG5lbiBzaW5kIHN0YW5kYXJkbcOkw59pZyBkZWFrdGl2aWVydC4gVW0gbWVociBGdW5rdGlvbmFsaXTDpHRlbiB6dSBudXR6ZW4sCisgIG11c3N0IER1IGVpbmUgInZpbXJjIiAtIERhdGVpIGVyc3RlbGxlbi4KKworICAxLiBTdGFydGUgZGFzIEVkaXRpZXJlbiBkZXIgInZpbXJjIi1EYXRlaSwgYWJow6RuZ2lnIHZvbiBkZWluZW0gU3lzdGVtOgorCTplIH4vLnZpbXJjCQlmw7xyIFVuaXgKKwk6ZSAkVklNL192aW1yYwkJZsO8ciBNUy1XaW5kb3dzCisKKyAgMi4gTnVuIGxpZXMgZGVuIEluaGFsdCBkZXIgQmVpc3BpZWwtInZpbXJjIi1EYXRlaSBlaW46CisJOnIgJFZJTVJVTlRJTUUvdmltcmNfZXhhbXBsZS52aW0KKworICAzLiBTcGVpY2hlcmUgZGllIERhdGVpIG1pdDoKKwk6dworCisgIEJlaW0gbsOkY2hzdGVuIFN0YXJ0IHZvbiBWaW0gd2lyZCBkaWUgU3ludGF4aGVydm9yaGVidW5nIGFrdGl2aWVydCBzZWluLgorICBEdSBrYW5uc3QgYWxsIGRlaW5lIGJldm9yenVndGVuIE9wdGlvbmVuIHp1IGRpZXNlciAidmltcmMiLURhdGVpIHp1ZsO8Z2VuLgorICBGw7xyIG1laHIgSW5mb3JtYXRpb25lbiB0aXBwZSAgOmhlbHAgdmltcmMtaW50cm8KK35+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+fgorCQkJIExla3Rpb24gNy4zOiBWRVJWT0xMU1TDhE5ESUdFTgorCisKKwkgICAqKiBLb21tYW5kb3plaWxlbnZlcnZvbGxzdMOkbmRpZ3VuZyBtaXQgQ1RSTC1EIHVuZCA8VEFCPiAqKgorCisgIDEuIFN0ZWxsZSBzaWNoZXIsIGRhc3MgVmltIG5pY2h0IGltIFZpLUtvbXBhdGliaWxpdMOkdHNtb2R1cyBpc3Q6ICA6c2V0IG5vY3AKKworICAyLiBTaWVoZSBuYWNoLCB3ZWxjaGUgRGF0ZWllbiBpbSBWZXJ6ZWljaG5pcyBleGlzdGllcmVuOiAgOiFscyAgb2RlciAgOmRpcgorCisgIDMuIFRpcHBlIGRlbiBCZWdpbm4gZWluZXMgS29tbWFuZG9zOiAgOmUKKworICA0LiBEcsO8Y2tlICBDVFJMLUQgIHVuZCBWaW0gemVpZ3QgZWluZSBMaXN0ZSBtaXQgImUiIGJlZ2lubmVuZGVyIEtvbW1hbmRvcy4KKworICA1LiBEcsO8Y2tlICA8VEFCPiAgdW5kIFZpbSB2ZXJ2b2xsc3TDpG5kaWd0IGRlbiBLb21tYW5kb25hbWVuIHp1ICI6ZWRpdCIuCisKKyAgNi4gTnVuIGbDvGdlIGVpbiBMZWVyemVpY2hlbiB1bmQgZGVuIEFuZmFuZyBlaW5lciBleGlzdGllcmVuZGVuIERhdGVpIGFuOgorICAgICA6ZWRpdCBEQVQKKworICA3LiBEcsO8Y2tlIDxUQUI+LiBWaW0gdmVydm9sbHN0w6RuZGlndCBkZW4gTmFtZW4gKGZhbGxzIGVyIGVpbmRldXRpZyBpc3QpLgorCitBbm1lcmt1bmc6IFZlcnZvbGxzdMOkbmRpZ3VuZyBmdW5rdGlvbmllcnQgZsO8ciB2aWVsZSBLb21tYW5kb3MuIFByb2JpZXJlCisgICAgIGVpbmZhY2ggQ1RSTC1EIHVuZCA8VEFCPi4gIERpZXMgaXN0IGluc2Jlc29uZGVyZSBuw7x0emxpY2ggZsO8ciAgOmhlbHAgLgorfn5+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+CisJCQkJICAgICBaVVNBTU1FTkZBU1NVTkcgVk9OIExFS1RJT04gNworCisKKyAgMS4gVGlwcGUgIDpoZWxwICBvZGVyIGRyw7xja2UgPEYxPiBvZGVyIDxIZWxwPiwgdW0gZWluIEhpbGZlZmVuc3RlciB6dSDDtmZmbmVuLgorCisgIDIuIFRpcHBlICA6aGVscCBLb21tYW5kbyAgLCB1bSBIaWxmZSDDvGJlciAgS29tbWFuZG8gIHp1IGVyaGFsdGVuLgorCisgIDMuIFRpcHBlICBDVFJMLVcgQ1RSTC1XICAsIHVtIHp1bSBhbmRlcmVuIEZlbnN0ZXIgenUgc3ByaW5nZW4uCisKKyAgNC4gVGlwcGUgIDpxICAsIHVtIGRhcyBIaWxmZWZlbnN0ZXIgenUgc2NobGllw59lbi4KKworICA1LiBFcnN0ZWxsZSBlaW4gdmltcmMgLSBTdGFydHNrcmlwdCBtaXQgZGVpbmVuIGJldm9yenVndGVyIEVpbnN0ZWxsdW5nZW4uCisKKyAgNi4gRHLDvGNrZSBDVFJMLUQgbmFjaCBkZW0gVGlwcGVuIGVpbmVzICA6ICBLb21tYW5kb3MsIHVtIG3DtmdsaWNoZQorICAgICBWZXJ2b2xsc3TDpG5kaWd1bmdlbiBhbnp1c2VoZW4uCisgICAgIERyw7xja2UgPFRBQj4gLCB1bSBlaW5lIFZlcnZvbGxzdMOkbmRpZ3VuZyB6dSBhbnp1d2VuZGVuLgorCisKKworCisKKworfn5+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+CisKKyAgRGFtaXQgaXN0IGRlciBWaW0gVHV0b3IgYmVlbmRldC4gIFNlaW5lIEludGVudGlvbiB3YXIsIGVpbmVuIGt1cnplbiB1bmQKKyAgYsO8bmRpZ2VuIMOcYmVyYmxpY2sgw7xiZXIgZGVuIFZpbSBFZGl0b3IgenUgZ2ViZW47IGdlcmFkZSBnZW51ZywgdW0gcmVsYXRpdgorICBsZWljaHQgbWl0IGlobSB1bWdlaGVuIHp1IGvDtm5uZW4uICBEZXIgVmltIFR1dG9yIGhhdCBuaWNodCBkZW4gZ2VyaW5nc3RlbgorICBBbnNwcnVjaCBhdWYgVm9sbHN0w6RuZGlna2VpdDsgVmltIGhhdCBub2NoIHdlaXRhdXMgbWVociBLb21tYW5kb3MuIExpZXMgYWxzCisgIG7DpGNoc3RlcyBkYXMgVXNlciBNYW51YWw6ICI6aGVscCB1c2VyLW1hbnVhbCIuCisKKyAgRsO8ciB3ZWl0ZXJlcyBMZXNlbiB1bmQgTGVybmVuIGlzdCBmb2xnZW5kZXMgQnVjaCBlbXBmZWhsZW5zd2VydCA6CisJVmltIC0gVmkgSW1wcm92ZWQgLSB2b24gU3RldmUgT3VhbGxpbmUKKwlWZXJsYWc6IE5ldyBSaWRlcnMKKyAgRGFzIGVyc3RlIEJ1Y2gsIHdlbGNoZXMgZHVyY2hnw6RuZ2lnIFZpbSBnZXdpZG1ldCBpc3QuICBCZXNvbmRlcnMgbsO8dHpsaWNoCisgIGbDvHIgQW5mw6RuZ2VyLiAgVmllbGUgQmVpc3BpZWxlIHVuZCBCaWxkZXIgc2luZCBlbnRoYWx0ZW4uCisgIFNpZWhlIGh0dHA6Ly9pY2NmLWhvbGxhbmQub3JnL2NsaWNrNS5odG1sCisKKyAgRm9sZ2VuZGVzIEJ1Y2ggaXN0IMOkbHRlciB1bmQgbWVociDDvGJlciBWaSBhbHMgVmltLCBhYmVyIGF1Y2ggZW1wZmVobGVuc3dlcnQ6CisJVGV4dGJlYXJiZWl0dW5nIG1pdCBkZW0gVmktRWRpdG9yICAtICB2b24gTGluZGEgTGFtYiB1bmQgQXJub2xkIFJvYmJpbnMKKwlWZXJsYWcgTydSZWlsbHkgLSBJU0JOOiAzODk3MjExMjYyCisgIEluIGRpZXNlbSBCdWNoIGthbm4gbWFuIGZhc3QgYWxsZXMgZmluZGVuLCB3YXMgbWFuIG1pdCBWaSB0dW4gbcO2Y2h0ZS4KKyAgRGllIHNlY2hzdGUgQXVzZ2FiZSBlbnRow6RsdCBhdWNoIEluZm9ybWF0aW9uZW4gw7xiZXIgVmltLgorCisgIEFscyBha3R1ZWxsZSBSZWZlcmVueiBmw7xyIFZlcnNpb24gNi4yIHVuZCBrbmFwcGUgRWluZsO8aHJ1bmcgZGllbnQgZGFzCisgIGZvbGdlbmRlIEJ1Y2g6CisJdmltIGdlLXBhY2t0IHZvbiBSZWluaGFyZCBXb2JzdAorCW1pdHAtVmVybGFnLCBJU0JOIDMtODI2Ni0xNDI1LTkKKyAgVHJvdHogZGVyIGtvbXBha3RlbiBEYXJzdGVsbHVuZyBpc3QgZXMgZHVyY2ggdmllbGUgbsO8dHpsaWNoZSBCZWlzcGllbGUgYXVjaAorICBmw7xyIEVpbnN0ZWlnZXIgZW1wZmVobGVuc3dlcnQuICBQcm9iZWthcGl0ZWwgdW5kIGRpZSBCZWlzcGllbHNrcmlwdGUgc2luZAorICBvbmxpbmUgZXJow6RsdGxpY2guICBTaWVoZSBodHRwOi8vaWNjZi1ob2xsYW5kLm9yZy9jbGljazUuaHRtbAorCisgIERpZXNlcyBUdXRvcmlhbCB3dXJkZSBnZXNjaHJpZWJlbiB2b24gTWljaGFlbCBDLiBQaWVyY2UgdW5kIFJvYmVydCBLLiBXYXJlLAorICBDb2xvcmFkbyBTY2hvb2wgb2YgTWluZXMuIEVzIGJlbnV0enQgSWRlZW4sIGRpZSBDaGFybGVzIFNtaXRoLCBDb2xvcmFkbyBTdGF0ZQorICBVbml2ZXJzaXR5LCB6dXIgVmVyZsO8Z3VuZyBzdGVsbHRlLiAgRS1NYWlsOiBid2FyZUBtaW5lcy5jb2xvcmFkby5lZHUuCisKKyAgQmVhcmJlaXRldCBmw7xyIFZpbSB2b24gQnJhbSBNb29sZW5hYXIuCisgIERldXRzY2hlIMOcYmVyc2V0enVuZyB2b24gSm9hY2hpbSBIb2ZtYW5uIDIwMTUuICBFLU1haWw6IEpvYWNoaW0uSG9mQGdteC5kZQorCit+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+fn4K