ZGlmZiAtLWdpdCBhL0xpYi9pZGxlbGliL0NSRURJVFMudHh0IGIvTGliL2lkbGVsaWIvQ1JFRElUUy50eHQKaW5kZXggMzA1NjFhOS4uNDU2MDc5YiAxMDA2NDQKLS0tIGEvTGliL2lkbGVsaWIvQ1JFRElUUy50eHQKKysrIGIvTGliL2lkbGVsaWIvQ1JFRElUUy50eHQKQEAgLTIsOSArMiw5IEBACiBvcmlnaW5hbCBjcmVhdG9yIG9mIElETEUuICBPdGhlciBjb250cmlidXRvcnMgcHJpb3IgdG8gVmVyc2lvbiAwLjggaW5jbHVkZQogTWFyayBIYW1tb25kLCBKZXJlbXkgSHlsdG9uLCBUaW0gUGV0ZXJzLCBhbmQgTW9zaGUgWmFka2EuCiAKLUlETEUncyByZWNlbnQgZGV2ZWxvcG1lbnQgaGFzIGJlZW4gY2FycmllZCBvdXQgaW4gdGhlIElETEVmb3JrIHByb2plY3QuCi1UaGUgb2JqZWN0aXZlIHdhcyB0byBkZXZlbG9wIGEgdmVyc2lvbiBvZiBJRExFIHdoaWNoIGhhZCBhbiBleGVjdXRpb24KLWVudmlyb25tZW50IHdoaWNoIGNvdWxkIGJlIGluaXRpYWxpemVkIHByaW9yIHRvIGVhY2ggcnVuIG9mIHVzZXIgY29kZS4KK0lETEUncyByZWNlbnQgZGV2ZWxvcG1lbnQgd2FzIGNhcnJpZWQgb3V0IGluIHRoZSBTRiBJRExFZm9yayBwcm9qZWN0LiBUaGUKK29iamVjdGl2ZSB3YXMgdG8gZGV2ZWxvcCBhIHZlcnNpb24gb2YgSURMRSB3aGljaCBoYWQgYW4gZXhlY3V0aW9uIGVudmlyb25tZW50Cit3aGljaCBjb3VsZCBiZSBpbml0aWFsaXplZCBwcmlvciB0byBlYWNoIHJ1biBvZiB1c2VyIGNvZGUuCiAKIFRoZSBJRExFZm9yayBwcm9qZWN0IHdhcyBpbml0aWF0ZWQgYnkgRGF2aWQgU2NoZXJlciwgd2l0aCBzb21lIGhlbHAgZnJvbSBQZXRlcgogU2NobmVpZGVyLUthbXAgYW5kIE5pY2hvbGFzIFJpbGV5LiAgRGF2aWQgd3JvdGUgdGhlIGZpcnN0IHZlcnNpb24gb2YgdGhlIFJQQwpAQCAtMTIsNyArMTIsNyBAQAogdGhlIFJQQyBjb2RlIGFuZCBSZW1vdGUgRGVidWdnZXIgY3VycmVudGx5IGludGVncmF0ZWQgaW4gSURMRS4gIEJydWNlIFNoZXJ3b29kCiBjb250cmlidXRlZCBjb25zaWRlcmFibGUgdGltZSB0ZXN0aW5nIGFuZCBzdWdnZXN0aW5nIGltcHJvdmVtZW50cy4KIAotQmVzaWRlcyBEYXZpZCBhbmQgR3VpZG8sIHRoZSBtYWluIGRldmVsb3BlcnMgd2hvIGhhdmUgYmVlbiBhY3RpdmUgb24gSURMRWZvcmsKK0Jlc2lkZXMgRGF2aWQgYW5kIEd1aWRvLCB0aGUgbWFpbiBkZXZlbG9wZXJzIHdobyB3ZXJlIGFjdGl2ZSBvbiBJRExFZm9yawogYXJlIFN0ZXBoZW4gTS4gR2F2YSwgd2hvIGltcGxlbWVudGVkIHRoZSBjb25maWd1cmF0aW9uIEdVSSwgdGhlIG5ldwogY29uZmlndXJhdGlvbiBzeXN0ZW0sIGFuZCB0aGUgQWJvdXQgZGlhbG9nLCBhbmQgS3VydCBCLiBLYWlzZXIsIHdobyBjb21wbGV0ZWQKIHRoZSBpbnRlZ3JhdGlvbiBvZiB0aGUgUlBDIGFuZCByZW1vdGUgZGVidWdnZXIsIGltcGxlbWVudGVkIHRoZSB0aHJlYWRlZApAQCAtMjQsOCArMjQsOSBAQAogaW50ZWdyYXRpb24sIGRlYnVnZ2VyIGludGVncmF0aW9uIGFuZCBwZXJzaXN0ZW50IGJyZWFrcG9pbnRzKS4KIAogU2NvdHQgRGF2aWQgRGFuaWVscywgVGFsIEVpbmF0LCBIZXJuYW4gRm9mZmFuaSwgQ2hyaXN0b3MgR2Vvcmdpb3UsCi1KaW0gSmV3ZXR0LCBNYXJ0aW4gdi4gTPZ3aXMsIEphc29uIE9yZW5kb3JmZiwgSm9zaCBSb2JiLCBOaWdlbCBSb3dlLAotQnJ1Y2UgU2hlcndvb2QsIGFuZCBKZWZmIFNodXRlIGhhdmUgc3VibWl0dGVkIHVzZWZ1bCBwYXRjaGVzLiAgVGhhbmtzLCBndXlzIQorSmltIEpld2V0dCwgTWFydGluIHYuIEz2d2lzLCBKYXNvbiBPcmVuZG9yZmYsIEd1aWxoZXJtZSBQb2xvLCBKb3NoIFJvYmIsCitOaWdlbCBSb3dlLCBCcnVjZSBTaGVyd29vZCwgYW5kIEplZmYgU2h1dGUgaGF2ZSBzdWJtaXR0ZWQgdXNlZnVsIHBhdGNoZXMuCitUaGFua3MsIGd1eXMhCiAKIEZvciBhZGRpdGlvbmFsIGRldGFpbHMgcmVmZXIgdG8gTkVXUy50eHQgYW5kIENoYW5nZWxvZy4KIApkaWZmIC0tZ2l0IGEvTGliL2lkbGVsaWIvRWRpdG9yV2luZG93LnB5IGIvTGliL2lkbGVsaWIvRWRpdG9yV2luZG93LnB5CmluZGV4IDEwNGI2M2IuLjY3NDRjOTEgMTAwNjQ0Ci0tLSBhL0xpYi9pZGxlbGliL0VkaXRvcldpbmRvdy5weQorKysgYi9MaWIvaWRsZWxpYi9FZGl0b3JXaW5kb3cucHkKQEAgLTIyLDYgKzIyLDE2IEBACiAjIFRoZSBkZWZhdWx0IHRhYiBzZXR0aW5nIGZvciBhIFRleHQgd2lkZ2V0LCBpbiBhdmVyYWdlLXdpZHRoIGNoYXJhY3RlcnMuCiBUS19UQUJXSURUSF9ERUZBVUxUID0gOAogCitkZWYgX3NwaGlueF92ZXJzaW9uKCk6CisgICAgIkZvcm1hdCBzeXMudmVyc2lvbl9pbmZvIHRvIHByb2R1Y2UgdGhlIFNwaGlueCB2ZXJzaW9uIHN0cmluZyB1c2VkIHRvIGluc3RhbGwgdGhlIGNobSBkb2NzIgorICAgIG1ham9yLCBtaW5vciwgbWljcm8sIGxldmVsLCBzZXJpYWwgPSBzeXMudmVyc2lvbl9pbmZvCisgICAgcmVsZWFzZSA9ICclcyVzJyAlIChtYWpvciwgbWlub3IpCisgICAgaWYgbWljcm86CisgICAgICAgIHJlbGVhc2UgKz0gJyVzJyAlIG1pY3JvCisgICAgaWYgbGV2ZWwgIT0gJ2ZpbmFsJzoKKyAgICAgICAgcmVsZWFzZSArPSAnJXMlcycgJSAobGV2ZWxbMF0sIHNlcmlhbCkKKyAgICByZXR1cm4gcmVsZWFzZQorCiBkZWYgX2ZpbmRfbW9kdWxlKGZ1bGxuYW1lLCBwYXRoPU5vbmUpOgogICAgICIiIlZlcnNpb24gb2YgaW1wLmZpbmRfbW9kdWxlKCkgdGhhdCBoYW5kbGVzIGhpZXJhcmNoaWNhbCBtb2R1bGUgbmFtZXMiIiIKIApAQCAtNjQsMTUgKzc0LDEzIEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ0RvYycsICdpbmRleC5odG1sJykKICAgICAgICAgICAgIGVsaWYgc3lzLnBsYXRmb3JtWzozXSA9PSAnd2luJzoKICAgICAgICAgICAgICAgICBjaG1maWxlID0gb3MucGF0aC5qb2luKHN5cy5wcmVmaXgsICdEb2MnLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1B5dGhvbiVkJWQuY2htJyAlIHN5cy52ZXJzaW9uX2luZm9bOjJdKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ1B5dGhvbiVzLmNobScgJSBfc3BoaW54X3ZlcnNpb24oKSkKICAgICAgICAgICAgICAgICBpZiBvcy5wYXRoLmlzZmlsZShjaG1maWxlKToKICAgICAgICAgICAgICAgICAgICAgZG9jaG9tZSA9IGNobWZpbGUKLQogICAgICAgICAgICAgZWxpZiBtYWNvc3hTdXBwb3J0LnJ1bm5pbmdBc09TWEFwcCgpOgogICAgICAgICAgICAgICAgICMgZG9jdW1lbnRhdGlvbiBpcyBzdG9yZWQgaW5zaWRlIHRoZSBweXRob24gZnJhbWV3b3JrCiAgICAgICAgICAgICAgICAgZG9jaG9tZSA9IG9zLnBhdGguam9pbihzeXMucHJlZml4LAogICAgICAgICAgICAgICAgICAgICAgICAgJ1Jlc291cmNlcy9FbmdsaXNoLmxwcm9qL0RvY3VtZW50YXRpb24vaW5kZXguaHRtbCcpCi0KICAgICAgICAgICAgIGRvY2hvbWUgPSBvcy5wYXRoLm5vcm1wYXRoKGRvY2hvbWUpCiAgICAgICAgICAgICBpZiBvcy5wYXRoLmlzZmlsZShkb2Nob21lKToKICAgICAgICAgICAgICAgICBFZGl0b3JXaW5kb3cuaGVscF91cmwgPSBkb2Nob21lCmRpZmYgLS1naXQgYS9MaWIvaWRsZWxpYi9ORVdTLnR4dCBiL0xpYi9pZGxlbGliL05FV1MudHh0CmluZGV4IDBiNmZhNjEuLjJkNzRiZTQgMTAwNjQ0Ci0tLSBhL0xpYi9pZGxlbGliL05FV1MudHh0CisrKyBiL0xpYi9pZGxlbGliL05FV1MudHh0CkBAIC0xLDcgKzEsMjIgQEAKLVdoYXQncyBOZXcgaW4gSURMRSAyLjZhMz8KLT09PT09PT09PT09PT09PT09PT09PT09PT0KK1doYXQncyBOZXcgaW4gSURMRSAyLjYuM3JjMT8KKz09PT09PT09PT09PT09PT09PT09PT09PT09PT0KIAotKlJlbGVhc2UgZGF0ZTogWFgtWFhYLTIwMDgqCisqUmVsZWFzZSBkYXRlOiBYWC1YWFgtMjAwOSoKKworLSBXaW5kb3dzOiBWZXJzaW9uIHN0cmluZyBmb3IgdGhlIC5jaG0gaGVscCBmaWxlIGNoYW5nZWQsIGZpbGUgbm90IGJlaW5nCisgIGFjY2Vzc2VkICBQYXRjaCA1NzgzIEd1aWxoZXJtZSBQb2xvCisKK1doYXQncyBOZXcgaW4gSURMRSAyLjYuMnJjMT8KKz09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKworKlJlbGVhc2UgZGF0ZTogMDYtQXByLTIwMDkqCisKKy0gSXNzdWUgIzM1NDk6IE9uIE1hY09TIHRoZSBwcmVmZXJlbmNlcyBtZW51IHdhcyBub3QgcHJlc2VudAorCitXaGF0J3MgTmV3IGluIElETEUgMi42PworPT09PT09PT09PT09PT09PT09PT09PT0KKworKlJlbGVhc2UgZGF0ZTogMDEtT2N0LTIwMDgqCiAKIC0gSXNzdWUgIzI2NjU6IE9uIFdpbmRvd3MsIGFuIElETEUgaW5zdGFsbGF0aW9uIHVwZ3JhZGVkIGZyb20gYW4gb2xkIHZlcnNpb24KICAgd291bGQgbm90IHN0YXJ0IGlmIGEgY3VzdG9tIHRoZW1lIHdhcyBkZWZpbmVkLgpAQCAtMjMsNyArMzgsNyBAQAogICBpbiB0aGUgY29uZmlnIGRpYWxvZyB3b3VsZCBjYXVzZSBub24tUHl0aG9uIGZpbGVzIHRvIGJlIGNvbG9yZWQgYXMgaWYgdGhleQogICB3ZXJlIFB5dGhvbiBzb3VyY2U7IGltcHJvdmUgdXNlIG9mIENvbG9yRGVsYWdhdG9yLiAgUGF0Y2ggMTMzNC4gVGFsIEVpbmF0LgogCi0tIFNjcmlwdEJpbmRpbmcgZXZlbnQgaGFuZGxlcnMgd2VyZW4ndCByZXR1cm5pbmcgJ2JyZWFrJy4gUGF0Y2ggMjA1MCwgVGFsIEVpbmF0LgorLSBTY3JpcHRCaW5kaW5nIGV2ZW50IGhhbmRsZXJzIHdlcmVuJ3QgcmV0dXJuaW5nICdicmVhaycuIFBhdGNoIDIwNTAsIFRhbCBFaW5hdAogCiAtIFRoZXJlIHdhcyBhbiBlcnJvciBvbiBleGl0IGlmIG5vIHN5cy5leGl0ZnVuYyB3YXMgZGVmaW5lZC4gSXNzdWUgMTY0Ny4KIApkaWZmIC0tZ2l0IGEvTGliL2lkbGVsaWIvaWRsZXZlci5weSBiL0xpYi9pZGxlbGliL2lkbGV2ZXIucHkKaW5kZXggZDA0NTY5NC4uYmE5ZGJiZCAxMDA2NDQKLS0tIGEvTGliL2lkbGVsaWIvaWRsZXZlci5weQorKysgYi9MaWIvaWRsZWxpYi9pZGxldmVyLnB5CkBAIC0xICsxIEBACi1JRExFX1ZFUlNJT04gPSAiMi42LjIiCitJRExFX1ZFUlNJT04gPSAiMi42LjNyYzEiCg==