From: marko.makela Date: May 22 2012 8:29am Subject: bzr push into mysql-trunk-wl6255 branch (marko.makela:3849 to 3852) List-Archive: http://lists.mysql.com/commits/143886 Message-Id: <201205220829.q4M8TjM9000642@acsmt358.oracle.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 IDM4NTIgTWFya28gTcOka2Vsw6QJMjAxMi0wNS0yMgogICAgICBBZGQgZnVuY3Rpb24gYXR0cmli dXRlcy4KCiAgICBtb2RpZmllZDoKICAgICAgc3RvcmFnZS9pbm5vYmFzZS9pbmNsdWRlL3JlbTBy ZWMuaAogMzg1MSBNYXJrbyBNw6RrZWzDpAkyMDEyLTA1LTIyCiAgICAgIFJlbW92ZSBhIHN0YWxl IGNvbW1lbnQuCgogICAgbW9kaWZpZWQ6CiAgICAgIHN0b3JhZ2UvaW5ub2Jhc2Uvcm93L3JvdzBt ZXJnZS5jYwogMzg1MCBNYXJrbyBNw6RrZWzDpAkyMDEyLTA1LTIyCiAgICAgIFJlbW92ZSBhIHN0 YWxlIGNvbW1lbnQuCgogICAgbW9kaWZpZWQ6CiAgICAgIHN0b3JhZ2UvaW5ub2Jhc2Uvcm93L3Jv dzBtZXJnZS5jYwogMzg0OSBNYXJrbyBNw6RrZWzDpAkyMDEyLTA1LTIyCiAgICAgIFdMIzU1MjYg b3B0aW1pemF0aW9uOiBEbyBub3QgbG9nIHRyeF9pZCBmb3IgUk9XX09QX1BVUkdFLgoKICAgIG1v ZGlmaWVkOgogICAgICBzdG9yYWdlL2lubm9iYXNlL3Jvdy9yb3cwbG9nLmNjCj09PSBtb2RpZmll ZCBmaWxlICdzdG9yYWdlL2lubm9iYXNlL2luY2x1ZGUvcmVtMHJlYy5oJwotLS0gYS9zdG9yYWdl L2lubm9iYXNlL2luY2x1ZGUvcmVtMHJlYy5oCXJldmlkOm1hcmtvLm1ha2VsYUBvcmFjbGUuY29t LTIwMTIwNTIyMDc0NzUxLXNzamNsY2hwMmxxa3E1bXUKKysrIGIvc3RvcmFnZS9pbm5vYmFzZS9p bmNsdWRlL3JlbTByZWMuaAlyZXZpZDptYXJrby5tYWtlbGFAb3JhY2xlLmNvbS0yMDEyMDUyMjA4 Mjg0NS1rcDlhb3BibDJnanE3YW5hCkBAIC04OCw3ICs4OCw4IEBAIGNvbnN0IHJlY190KgogcmVj X2dldF9uZXh0X3B0cl9jb25zdCgKIC8qPT09PT09PT09PT09PT09PT09PSovCiAJY29uc3QgcmVj X3QqCXJlYywJLyohPCBpbjogcGh5c2ljYWwgcmVjb3JkICovCi0JdWxpbnQJCWNvbXApOwkvKiE8 IGluOiBub256ZXJvPWNvbXBhY3QgcGFnZSBmb3JtYXQgKi8KKwl1bGludAkJY29tcCkJLyohPCBp bjogbm9uemVybz1jb21wYWN0IHBhZ2UgZm9ybWF0ICovCisJX19hdHRyaWJ1dGVfXygobm9ubnVs bCwgcHVyZSwgd2Fybl91bnVzZWRfcmVzdWx0KSk7CiAvKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy8qKgogVGhlIGZvbGxvd2luZyBmdW5jdGlv biBpcyB1c2VkIHRvIGdldCB0aGUgcG9pbnRlciBvZiB0aGUgbmV4dCBjaGFpbmVkIHJlY29yZAog b24gdGhlIHNhbWUgcGFnZS4KQEAgLTk4LDcgKzk5LDggQEAgcmVjX3QqCiByZWNfZ2V0X25leHRf cHRyKAogLyo9PT09PT09PT09PT09Ki8KIAlyZWNfdCoJcmVjLAkvKiE8IGluOiBwaHlzaWNhbCBy ZWNvcmQgKi8KLQl1bGludAljb21wKTsJLyohPCBpbjogbm9uemVybz1jb21wYWN0IHBhZ2UgZm9y bWF0ICovCisJdWxpbnQJY29tcCkJLyohPCBpbjogbm9uemVybz1jb21wYWN0IHBhZ2UgZm9ybWF0 ICovCisJX19hdHRyaWJ1dGVfXygobm9ubnVsbCwgcHVyZSwgd2Fybl91bnVzZWRfcmVzdWx0KSk7 CiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq Ly8qKgogVGhlIGZvbGxvd2luZyBmdW5jdGlvbiBpcyB1c2VkIHRvIGdldCB0aGUgb2Zmc2V0IG9m IHRoZQogbmV4dCBjaGFpbmVkIHJlY29yZCBvbiB0aGUgc2FtZSBwYWdlLgpAQCAtMTA4LDcgKzEx MCw4IEBAIHVsaW50CiByZWNfZ2V0X25leHRfb2ZmcygKIC8qPT09PT09PT09PT09PT0qLwogCWNv bnN0IHJlY190KglyZWMsCS8qITwgaW46IHBoeXNpY2FsIHJlY29yZCAqLwotCXVsaW50CQljb21w KTsJLyohPCBpbjogbm9uemVybz1jb21wYWN0IHBhZ2UgZm9ybWF0ICovCisJdWxpbnQJCWNvbXAp CS8qITwgaW46IG5vbnplcm89Y29tcGFjdCBwYWdlIGZvcm1hdCAqLworCV9fYXR0cmlidXRlX18o KG5vbm51bGwsIHB1cmUsIHdhcm5fdW51c2VkX3Jlc3VsdCkpOwogLyoqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vKioKIFRoZSBmb2xsb3dpbmcg ZnVuY3Rpb24gaXMgdXNlZCB0byBzZXQgdGhlIG5leHQgcmVjb3JkIG9mZnNldCBmaWVsZAogb2Yg YW4gb2xkLXN0eWxlIHJlY29yZC4gKi8KQEAgLTExNyw3ICsxMjAsOCBAQCB2b2lkCiByZWNfc2V0 X25leHRfb2Zmc19vbGQoCiAvKj09PT09PT09PT09PT09PT09PSovCiAJcmVjX3QqCXJlYywJLyoh PCBpbjogb2xkLXN0eWxlIHBoeXNpY2FsIHJlY29yZCAqLwotCXVsaW50CW5leHQpOwkvKiE8IGlu OiBvZmZzZXQgb2YgdGhlIG5leHQgcmVjb3JkICovCisJdWxpbnQJbmV4dCkJLyohPCBpbjogb2Zm c2V0IG9mIHRoZSBuZXh0IHJlY29yZCAqLworCV9fYXR0cmlidXRlX18oKG5vbm51bGwpKTsKIC8q KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovLyoq CiBUaGUgZm9sbG93aW5nIGZ1bmN0aW9uIGlzIHVzZWQgdG8gc2V0IHRoZSBuZXh0IHJlY29yZCBv ZmZzZXQgZmllbGQKIG9mIGEgbmV3LXN0eWxlIHJlY29yZC4gKi8KQEAgLTEyNiw3ICsxMzAsOCBA QCB2b2lkCiByZWNfc2V0X25leHRfb2Zmc19uZXcoCiAvKj09PT09PT09PT09PT09PT09PSovCiAJ cmVjX3QqCXJlYywJLyohPCBpbi9vdXQ6IG5ldy1zdHlsZSBwaHlzaWNhbCByZWNvcmQgKi8KLQl1 bGludAluZXh0KTsJLyohPCBpbjogb2Zmc2V0IG9mIHRoZSBuZXh0IHJlY29yZCAqLworCXVsaW50 CW5leHQpCS8qITwgaW46IG9mZnNldCBvZiB0aGUgbmV4dCByZWNvcmQgKi8KKwlfX2F0dHJpYnV0 ZV9fKChub25udWxsKSk7CiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqLy8qKgogVGhlIGZvbGxvd2luZyBmdW5jdGlvbiBpcyB1c2VkIHRvIGdl dCB0aGUgbnVtYmVyIG9mIGZpZWxkcwogaW4gYW4gb2xkLXN0eWxlIHJlY29yZC4KQEAgLTEzNSw3 ICsxNDAsOCBAQCBVTklWX0lOTElORQogdWxpbnQKIHJlY19nZXRfbl9maWVsZHNfb2xkKAogLyo9 PT09PT09PT09PT09PT09PSovCi0JY29uc3QgcmVjX3QqCXJlYyk7CS8qITwgaW46IHBoeXNpY2Fs IHJlY29yZCAqLworCWNvbnN0IHJlY190KglyZWMpCS8qITwgaW46IHBoeXNpY2FsIHJlY29yZCAq LworCV9fYXR0cmlidXRlX18oKG5vbm51bGwsIHB1cmUsIHdhcm5fdW51c2VkX3Jlc3VsdCkpOwog LyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8v KioKIFRoZSBmb2xsb3dpbmcgZnVuY3Rpb24gaXMgdXNlZCB0byBnZXQgdGhlIG51bWJlciBvZiBm aWVsZHMKIGluIGEgcmVjb3JkLgpAQCAtMTQ1LDcgKzE1MSw4IEBAIHVsaW50CiByZWNfZ2V0X25f ZmllbGRzKAogLyo9PT09PT09PT09PT09Ki8KIAljb25zdCByZWNfdCoJCXJlYywJLyohPCBpbjog cGh5c2ljYWwgcmVjb3JkICovCi0JY29uc3QgZGljdF9pbmRleF90KglpbmRleCk7CS8qITwgaW46 IHJlY29yZCBkZXNjcmlwdG9yICovCisJY29uc3QgZGljdF9pbmRleF90KglpbmRleCkJLyohPCBp bjogcmVjb3JkIGRlc2NyaXB0b3IgKi8KKwlfX2F0dHJpYnV0ZV9fKChub25udWxsLCBwdXJlLCB3 YXJuX3VudXNlZF9yZXN1bHQpKTsKIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKiovLyoqCiBUaGUgZm9sbG93aW5nIGZ1bmN0aW9uIGlzIHVzZWQg dG8gZ2V0IHRoZSBudW1iZXIgb2YgcmVjb3JkcyBvd25lZCBieSB0aGUKIHByZXZpb3VzIGRpcmVj dG9yeSByZWNvcmQuCkBAIC0xNTQsNyArMTYxLDggQEAgVU5JVl9JTkxJTkUKIHVsaW50CiByZWNf Z2V0X25fb3duZWRfb2xkKAogLyo9PT09PT09PT09PT09PT09Ki8KLQljb25zdCByZWNfdCoJcmVj KTsJLyohPCBpbjogb2xkLXN0eWxlIHBoeXNpY2FsIHJlY29yZCAqLworCWNvbnN0IHJlY190Kgly ZWMpCS8qITwgaW46IG9sZC1zdHlsZSBwaHlzaWNhbCByZWNvcmQgKi8KKwlfX2F0dHJpYnV0ZV9f KChub25udWxsLCBwdXJlLCB3YXJuX3VudXNlZF9yZXN1bHQpKTsKIC8qKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovLyoqCiBUaGUgZm9sbG93aW5n IGZ1bmN0aW9uIGlzIHVzZWQgdG8gc2V0IHRoZSBudW1iZXIgb2Ygb3duZWQgcmVjb3Jkcy4gKi8K IFVOSVZfSU5MSU5FCkBAIC0xNjIsNyArMTcwLDggQEAgdm9pZAogcmVjX3NldF9uX293bmVkX29s ZCgKIC8qPT09PT09PT09PT09PT09PSovCiAJcmVjX3QqCXJlYywJCS8qITwgaW46IG9sZC1zdHls ZSBwaHlzaWNhbCByZWNvcmQgKi8KLQl1bGludAluX293bmVkKTsJLyohPCBpbjogdGhlIG51bWJl ciBvZiBvd25lZCAqLworCXVsaW50CW5fb3duZWQpCS8qITwgaW46IHRoZSBudW1iZXIgb2Ygb3du ZWQgKi8KKwlfX2F0dHJpYnV0ZV9fKChub25udWxsKSk7CiAvKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy8qKgogVGhlIGZvbGxvd2luZyBmdW5j dGlvbiBpcyB1c2VkIHRvIGdldCB0aGUgbnVtYmVyIG9mIHJlY29yZHMgb3duZWQgYnkgdGhlCiBw cmV2aW91cyBkaXJlY3RvcnkgcmVjb3JkLgpAQCAtMTcxLDcgKzE4MCw4IEBAIFVOSVZfSU5MSU5F CiB1bGludAogcmVjX2dldF9uX293bmVkX25ldygKIC8qPT09PT09PT09PT09PT09PSovCi0JY29u c3QgcmVjX3QqCXJlYyk7CS8qITwgaW46IG5ldy1zdHlsZSBwaHlzaWNhbCByZWNvcmQgKi8KKwlj b25zdCByZWNfdCoJcmVjKQkvKiE8IGluOiBuZXctc3R5bGUgcGh5c2ljYWwgcmVjb3JkICovCisJ X19hdHRyaWJ1dGVfXygobm9ubnVsbCwgcHVyZSwgd2Fybl91bnVzZWRfcmVzdWx0KSk7CiAvKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy8qKgog VGhlIGZvbGxvd2luZyBmdW5jdGlvbiBpcyB1c2VkIHRvIHNldCB0aGUgbnVtYmVyIG9mIG93bmVk IHJlY29yZHMuICovCiBVTklWX0lOTElORQpAQCAtMTgwLDcgKzE5MCw4IEBAIHJlY19zZXRfbl9v d25lZF9uZXcoCiAvKj09PT09PT09PT09PT09PT0qLwogCXJlY190KgkJcmVjLAkvKiE8IGluL291 dDogbmV3LXN0eWxlIHBoeXNpY2FsIHJlY29yZCAqLwogCXBhZ2VfemlwX2Rlc190KglwYWdlX3pp cCwvKiE8IGluL291dDogY29tcHJlc3NlZCBwYWdlLCBvciBOVUxMICovCi0JdWxpbnQJCW5fb3du ZWQpOy8qITwgaW46IHRoZSBudW1iZXIgb2Ygb3duZWQgKi8KKwl1bGludAkJbl9vd25lZCkvKiE8 IGluOiB0aGUgbnVtYmVyIG9mIG93bmVkICovCisJX19hdHRyaWJ1dGVfXygobm9ubnVsbCgxKSkp OwogLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq Ki8vKioKIFRoZSBmb2xsb3dpbmcgZnVuY3Rpb24gaXMgdXNlZCB0byByZXRyaWV2ZSB0aGUgaW5m byBiaXRzIG9mCiBhIHJlY29yZC4KQEAgLTE5MCw3ICsyMDEsOCBAQCB1bGludAogcmVjX2dldF9p bmZvX2JpdHMoCiAvKj09PT09PT09PT09PT09Ki8KIAljb25zdCByZWNfdCoJcmVjLAkvKiE8IGlu OiBwaHlzaWNhbCByZWNvcmQgKi8KLQl1bGludAkJY29tcCk7CS8qITwgaW46IG5vbnplcm89Y29t cGFjdCBwYWdlIGZvcm1hdCAqLworCXVsaW50CQljb21wKQkvKiE8IGluOiBub256ZXJvPWNvbXBh Y3QgcGFnZSBmb3JtYXQgKi8KKwlfX2F0dHJpYnV0ZV9fKChub25udWxsLCBwdXJlLCB3YXJuX3Vu dXNlZF9yZXN1bHQpKTsKIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKiovLyoqCiBUaGUgZm9sbG93aW5nIGZ1bmN0aW9uIGlzIHVzZWQgdG8gc2V0 IHRoZSBpbmZvIGJpdHMgb2YgYSByZWNvcmQuICovCiBVTklWX0lOTElORQpAQCAtMTk4LDcgKzIx MCw4IEBAIHZvaWQKIHJlY19zZXRfaW5mb19iaXRzX29sZCgKIC8qPT09PT09PT09PT09PT09PT09 Ki8KIAlyZWNfdCoJcmVjLAkvKiE8IGluOiBvbGQtc3R5bGUgcGh5c2ljYWwgcmVjb3JkICovCi0J dWxpbnQJYml0cyk7CS8qITwgaW46IGluZm8gYml0cyAqLworCXVsaW50CWJpdHMpCS8qITwgaW46 IGluZm8gYml0cyAqLworCV9fYXR0cmlidXRlX18oKG5vbm51bGwpKTsKIC8qKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovLyoqCiBUaGUgZm9sbG93 aW5nIGZ1bmN0aW9uIGlzIHVzZWQgdG8gc2V0IHRoZSBpbmZvIGJpdHMgb2YgYSByZWNvcmQuICov CiBVTklWX0lOTElORQpAQCAtMjA2LDcgKzIxOSw4IEBAIHZvaWQKIHJlY19zZXRfaW5mb19iaXRz X25ldygKIC8qPT09PT09PT09PT09PT09PT09Ki8KIAlyZWNfdCoJcmVjLAkvKiE8IGluL291dDog bmV3LXN0eWxlIHBoeXNpY2FsIHJlY29yZCAqLwotCXVsaW50CWJpdHMpOwkvKiE8IGluOiBpbmZv IGJpdHMgKi8KKwl1bGludAliaXRzKQkvKiE8IGluOiBpbmZvIGJpdHMgKi8KKwlfX2F0dHJpYnV0 ZV9fKChub25udWxsKSk7CiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqLy8qKgogVGhlIGZvbGxvd2luZyBmdW5jdGlvbiByZXRyaWV2ZXMgdGhl IHN0YXR1cyBiaXRzIG9mIGEgbmV3LXN0eWxlIHJlY29yZC4KIEByZXR1cm4Jc3RhdHVzIGJpdHMg Ki8KQEAgLTIxNCw3ICsyMjgsOCBAQCBVTklWX0lOTElORQogdWxpbnQKIHJlY19nZXRfc3RhdHVz KAogLyo9PT09PT09PT09PSovCi0JY29uc3QgcmVjX3QqCXJlYyk7CS8qITwgaW46IHBoeXNpY2Fs IHJlY29yZCAqLworCWNvbnN0IHJlY190KglyZWMpCS8qITwgaW46IHBoeXNpY2FsIHJlY29yZCAq LworCV9fYXR0cmlidXRlX18oKG5vbm51bGwsIHB1cmUsIHdhcm5fdW51c2VkX3Jlc3VsdCkpOwog CiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq Ly8qKgogVGhlIGZvbGxvd2luZyBmdW5jdGlvbiBpcyB1c2VkIHRvIHNldCB0aGUgc3RhdHVzIGJp dHMgb2YgYSBuZXctc3R5bGUgcmVjb3JkLiAqLwpAQCAtMjIzLDcgKzIzOCw4IEBAIHZvaWQKIHJl Y19zZXRfc3RhdHVzKAogLyo9PT09PT09PT09PSovCiAJcmVjX3QqCXJlYywJLyohPCBpbi9vdXQ6 IHBoeXNpY2FsIHJlY29yZCAqLwotCXVsaW50CWJpdHMpOwkvKiE8IGluOiBpbmZvIGJpdHMgKi8K Kwl1bGludAliaXRzKQkvKiE8IGluOiBpbmZvIGJpdHMgKi8KKwlfX2F0dHJpYnV0ZV9fKChub25u dWxsKSk7CiAKIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKiovLyoqCiBUaGUgZm9sbG93aW5nIGZ1bmN0aW9uIGlzIHVzZWQgdG8gcmV0cmlldmUg dGhlIGluZm8gYW5kIHN0YXR1cwpAQCAtMjM0LDcgKzI1MCw4IEBAIHVsaW50CiByZWNfZ2V0X2lu Zm9fYW5kX3N0YXR1c19iaXRzKAogLyo9PT09PT09PT09PT09PT09PT09PT09PT09Ki8KIAljb25z dCByZWNfdCoJcmVjLAkvKiE8IGluOiBwaHlzaWNhbCByZWNvcmQgKi8KLQl1bGludAkJY29tcCk7 CS8qITwgaW46IG5vbnplcm89Y29tcGFjdCBwYWdlIGZvcm1hdCAqLworCXVsaW50CQljb21wKQkv KiE8IGluOiBub256ZXJvPWNvbXBhY3QgcGFnZSBmb3JtYXQgKi8KKwlfX2F0dHJpYnV0ZV9fKChu b25udWxsLCBwdXJlLCB3YXJuX3VudXNlZF9yZXN1bHQpKTsKIC8qKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovLyoqCiBUaGUgZm9sbG93aW5nIGZ1 bmN0aW9uIGlzIHVzZWQgdG8gc2V0IHRoZSBpbmZvIGFuZCBzdGF0dXMKIGJpdHMgb2YgYSByZWNv cmQuICAoT25seSBjb21wYWN0IHJlY29yZHMgaGF2ZSBzdGF0dXMgYml0cy4pICovCkBAIC0yNDMs NyArMjYwLDggQEAgdm9pZAogcmVjX3NldF9pbmZvX2FuZF9zdGF0dXNfYml0cygKIC8qPT09PT09 PT09PT09PT09PT09PT09PT09PSovCiAJcmVjX3QqCXJlYywJLyohPCBpbi9vdXQ6IGNvbXBhY3Qg cGh5c2ljYWwgcmVjb3JkICovCi0JdWxpbnQJYml0cyk7CS8qITwgaW46IGluZm8gYml0cyAqLwor CXVsaW50CWJpdHMpCS8qITwgaW46IGluZm8gYml0cyAqLworCV9fYXR0cmlidXRlX18oKG5vbm51 bGwpKTsKIAogLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKi8vKioKIFRoZSBmb2xsb3dpbmcgZnVuY3Rpb24gdGVsbHMgaWYgcmVjb3JkIGlzIGRl bGV0ZSBtYXJrZWQuCkBAIC0yNTMsNyArMjcxLDggQEAgdWxpbnQKIHJlY19nZXRfZGVsZXRlZF9m bGFnKAogLyo9PT09PT09PT09PT09PT09PSovCiAJY29uc3QgcmVjX3QqCXJlYywJLyohPCBpbjog cGh5c2ljYWwgcmVjb3JkICovCi0JdWxpbnQJCWNvbXApOwkvKiE8IGluOiBub256ZXJvPWNvbXBh Y3QgcGFnZSBmb3JtYXQgKi8KKwl1bGludAkJY29tcCkJLyohPCBpbjogbm9uemVybz1jb21wYWN0 IHBhZ2UgZm9ybWF0ICovCisJX19hdHRyaWJ1dGVfXygobm9ubnVsbCwgcHVyZSwgd2Fybl91bnVz ZWRfcmVzdWx0KSk7CiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqLy8qKgogVGhlIGZvbGxvd2luZyBmdW5jdGlvbiBpcyB1c2VkIHRvIHNldCB0 aGUgZGVsZXRlZCBiaXQuICovCiBVTklWX0lOTElORQpAQCAtMjYxLDcgKzI4MCw4IEBAIHZvaWQK IHJlY19zZXRfZGVsZXRlZF9mbGFnX29sZCgKIC8qPT09PT09PT09PT09PT09PT09PT09Ki8KIAly ZWNfdCoJcmVjLAkvKiE8IGluOiBvbGQtc3R5bGUgcGh5c2ljYWwgcmVjb3JkICovCi0JdWxpbnQJ ZmxhZyk7CS8qITwgaW46IG5vbnplcm8gaWYgZGVsZXRlIG1hcmtlZCAqLworCXVsaW50CWZsYWcp CS8qITwgaW46IG5vbnplcm8gaWYgZGVsZXRlIG1hcmtlZCAqLworCV9fYXR0cmlidXRlX18oKG5v bm51bGwpKTsKIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKiovLyoqCiBUaGUgZm9sbG93aW5nIGZ1bmN0aW9uIGlzIHVzZWQgdG8gc2V0IHRoZSBk ZWxldGVkIGJpdC4gKi8KIFVOSVZfSU5MSU5FCkBAIC0yNzAsNyArMjkwLDggQEAgcmVjX3NldF9k ZWxldGVkX2ZsYWdfbmV3KAogLyo9PT09PT09PT09PT09PT09PT09PT0qLwogCXJlY190KgkJcmVj LAkvKiE8IGluL291dDogbmV3LXN0eWxlIHBoeXNpY2FsIHJlY29yZCAqLwogCXBhZ2VfemlwX2Rl c190KglwYWdlX3ppcCwvKiE8IGluL291dDogY29tcHJlc3NlZCBwYWdlLCBvciBOVUxMICovCi0J dWxpbnQJCWZsYWcpOwkvKiE8IGluOiBub256ZXJvIGlmIGRlbGV0ZSBtYXJrZWQgKi8KKwl1bGlu dAkJZmxhZykJLyohPCBpbjogbm9uemVybyBpZiBkZWxldGUgbWFya2VkICovCisJX19hdHRyaWJ1 dGVfXygobm9ubnVsbCgxKSkpOwogLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKi8vKioKIFRoZSBmb2xsb3dpbmcgZnVuY3Rpb24gdGVsbHMgaWYg YSBuZXctc3R5bGUgcmVjb3JkIGlzIGEgbm9kZSBwb2ludGVyLgogQHJldHVybglUUlVFIGlmIG5v ZGUgcG9pbnRlciAqLwpAQCAtMjc4LDcgKzI5OSw4IEBAIFVOSVZfSU5MSU5FCiBpYm9vbAogcmVj X2dldF9ub2RlX3B0cl9mbGFnKAogLyo9PT09PT09PT09PT09PT09PT0qLwotCWNvbnN0IHJlY190 KglyZWMpOwkvKiE8IGluOiBwaHlzaWNhbCByZWNvcmQgKi8KKwljb25zdCByZWNfdCoJcmVjKQkv KiE8IGluOiBwaHlzaWNhbCByZWNvcmQgKi8KKwlfX2F0dHJpYnV0ZV9fKChub25udWxsLCBwdXJl LCB3YXJuX3VudXNlZF9yZXN1bHQpKTsKIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKiovLyoqCiBUaGUgZm9sbG93aW5nIGZ1bmN0aW9uIGlzIHVz ZWQgdG8gZ2V0IHRoZSBvcmRlciBudW1iZXIKIG9mIGFuIG9sZC1zdHlsZSByZWNvcmQgaW4gdGhl IGhlYXAgb2YgdGhlIGluZGV4IHBhZ2UuCkBAIC0yODcsNyArMzA5LDggQEAgVU5JVl9JTkxJTkUK IHVsaW50CiByZWNfZ2V0X2hlYXBfbm9fb2xkKAogLyo9PT09PT09PT09PT09PT09Ki8KLQljb25z dCByZWNfdCoJcmVjKTsJLyohPCBpbjogcGh5c2ljYWwgcmVjb3JkICovCisJY29uc3QgcmVjX3Qq CXJlYykJLyohPCBpbjogcGh5c2ljYWwgcmVjb3JkICovCisJX19hdHRyaWJ1dGVfXygobm9ubnVs bCwgcHVyZSwgd2Fybl91bnVzZWRfcmVzdWx0KSk7CiAvKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy8qKgogVGhlIGZvbGxvd2luZyBmdW5jdGlv biBpcyB1c2VkIHRvIHNldCB0aGUgaGVhcCBudW1iZXIKIGZpZWxkIGluIGFuIG9sZC1zdHlsZSBy ZWNvcmQuICovCkBAIC0yOTYsNyArMzE5LDggQEAgdm9pZAogcmVjX3NldF9oZWFwX25vX29sZCgK IC8qPT09PT09PT09PT09PT09PSovCiAJcmVjX3QqCXJlYywJLyohPCBpbjogcGh5c2ljYWwgcmVj b3JkICovCi0JdWxpbnQJaGVhcF9ubyk7LyohPCBpbjogdGhlIGhlYXAgbnVtYmVyICovCisJdWxp bnQJaGVhcF9ubykvKiE8IGluOiB0aGUgaGVhcCBudW1iZXIgKi8KKwlfX2F0dHJpYnV0ZV9fKChu b25udWxsKSk7CiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqLy8qKgogVGhlIGZvbGxvd2luZyBmdW5jdGlvbiBpcyB1c2VkIHRvIGdldCB0aGUg b3JkZXIgbnVtYmVyCiBvZiBhIG5ldy1zdHlsZSByZWNvcmQgaW4gdGhlIGhlYXAgb2YgdGhlIGlu ZGV4IHBhZ2UuCkBAIC0zMDUsNyArMzI5LDggQEAgVU5JVl9JTkxJTkUKIHVsaW50CiByZWNfZ2V0 X2hlYXBfbm9fbmV3KAogLyo9PT09PT09PT09PT09PT09Ki8KLQljb25zdCByZWNfdCoJcmVjKTsJ LyohPCBpbjogcGh5c2ljYWwgcmVjb3JkICovCisJY29uc3QgcmVjX3QqCXJlYykJLyohPCBpbjog cGh5c2ljYWwgcmVjb3JkICovCisJX19hdHRyaWJ1dGVfXygobm9ubnVsbCwgcHVyZSwgd2Fybl91 bnVzZWRfcmVzdWx0KSk7CiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqLy8qKgogVGhlIGZvbGxvd2luZyBmdW5jdGlvbiBpcyB1c2VkIHRvIHNl dCB0aGUgaGVhcCBudW1iZXIKIGZpZWxkIGluIGEgbmV3LXN0eWxlIHJlY29yZC4gKi8KQEAgLTMx NCw3ICszMzksOCBAQCB2b2lkCiByZWNfc2V0X2hlYXBfbm9fbmV3KAogLyo9PT09PT09PT09PT09 PT09Ki8KIAlyZWNfdCoJcmVjLAkvKiE8IGluL291dDogcGh5c2ljYWwgcmVjb3JkICovCi0JdWxp bnQJaGVhcF9ubyk7LyohPCBpbjogdGhlIGhlYXAgbnVtYmVyICovCisJdWxpbnQJaGVhcF9ubykv KiE8IGluOiB0aGUgaGVhcCBudW1iZXIgKi8KKwlfX2F0dHJpYnV0ZV9fKChub25udWxsKSk7CiAv KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy8q KgogVGhlIGZvbGxvd2luZyBmdW5jdGlvbiBpcyB1c2VkIHRvIHRlc3Qgd2hldGhlciB0aGUgZGF0 YSBvZmZzZXRzCiBpbiB0aGUgcmVjb3JkIGFyZSBzdG9yZWQgaW4gb25lLWJ5dGUgb3IgdHdvLWJ5 dGUgZm9ybWF0LgpAQCAtMzIzLDcgKzM0OSw4IEBAIFVOSVZfSU5MSU5FCiBpYm9vbAogcmVjX2dl dF8xYnl0ZV9vZmZzX2ZsYWcoCiAvKj09PT09PT09PT09PT09PT09PT09Ki8KLQljb25zdCByZWNf dCoJcmVjKTsJLyohPCBpbjogcGh5c2ljYWwgcmVjb3JkICovCisJY29uc3QgcmVjX3QqCXJlYykJ LyohPCBpbjogcGh5c2ljYWwgcmVjb3JkICovCisJX19hdHRyaWJ1dGVfXygobm9ubnVsbCwgcHVy ZSwgd2Fybl91bnVzZWRfcmVzdWx0KSk7CiAKIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKiovLyoqCiBEZXRlcm1pbmUgaG93IG1hbnkgb2YgdGhl IGZpcnN0IG4gY29sdW1ucyBpbiBhIGNvbXBhY3QKQEAgLTMzNSw4ICszNjIsOCBAQCByZWNfZ2V0 X25fZXh0ZXJuX25ldygKIC8qPT09PT09PT09PT09PT09PT0qLwogCWNvbnN0IHJlY190KglyZWMs CS8qITwgaW46IGNvbXBhY3QgcGh5c2ljYWwgcmVjb3JkICovCiAJZGljdF9pbmRleF90KglpbmRl eCwJLyohPCBpbjogcmVjb3JkIGRlc2NyaXB0b3IgKi8KLQl1bGludAkJbik7CS8qITwgaW46IG51 bWJlciBvZiBjb2x1bW5zIHRvIHNjYW4gKi8KLQorCXVsaW50CQluKQkvKiE8IGluOiBudW1iZXIg b2YgY29sdW1ucyB0byBzY2FuICovCisJX19hdHRyaWJ1dGVfXygobm9ubnVsbCwgd2Fybl91bnVz ZWRfcmVzdWx0KSk7CiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqLy8qKgogVGhlIGZvbGxvd2luZyBmdW5jdGlvbiBkZXRlcm1pbmVzIHRoZSBv ZmZzZXRzIHRvIGVhY2ggZmllbGQKIGluIHRoZSByZWNvcmQuCUl0IGNhbiByZXVzZSBhIHByZXZp b3VzbHkgYWxsb2NhdGVkIGFycmF5LgpAQCAtMzk3LDkgKzQyNCwxMCBAQCByZWNfZ2V0X29mZnNl dHNfcmV2ZXJzZSgKIAljb25zdCBkaWN0X2luZGV4X3QqCWluZGV4LAkvKiE8IGluOiByZWNvcmQg ZGVzY3JpcHRvciAqLwogCXVsaW50CQkJbm9kZV9wdHIsLyohPCBpbjogbm9uemVybz1ub2RlIHBv aW50ZXIsCiAJCQkJCTA9bGVhZiBub2RlICovCi0JdWxpbnQqCQkJb2Zmc2V0cyk7LyohPCBpbi9v dXQ6IGFycmF5IGNvbnNpc3Rpbmcgb2YKKwl1bGludCoJCQlvZmZzZXRzKS8qITwgaW4vb3V0OiBh cnJheSBjb25zaXN0aW5nIG9mCiAJCQkJCW9mZnNldHNbMF0gYWxsb2NhdGVkIGVsZW1lbnRzICov Ci0KKwlfX2F0dHJpYnV0ZV9fKChub25udWxsKSk7CisjaWZkZWYgVU5JVl9ERUJVRwogLyoqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8v KioKIFZhbGlkYXRlcyBvZmZzZXRzIHJldHVybmVkIGJ5IHJlY19nZXRfb2Zmc2V0cygpLgogQHJl dHVybglUUlVFIGlmIHZhbGlkICovCkBAIC00MDksOSArNDM3LDkgQEAgcmVjX29mZnNfdmFsaWRh dGUoCiAvKj09PT09PT09PT09PT09Ki8KIAljb25zdCByZWNfdCoJCXJlYywJLyohPCBpbjogcmVj b3JkIG9yIE5VTEwgKi8KIAljb25zdCBkaWN0X2luZGV4X3QqCWluZGV4LAkvKiE8IGluOiByZWNv cmQgZGVzY3JpcHRvciBvciBOVUxMICovCi0JY29uc3QgdWxpbnQqCQlvZmZzZXRzKTsvKiE8IGlu OiBhcnJheSByZXR1cm5lZCBieQorCWNvbnN0IHVsaW50KgkJb2Zmc2V0cykvKiE8IGluOiBhcnJh eSByZXR1cm5lZCBieQogCQkJCQlyZWNfZ2V0X29mZnNldHMoKSAqLwotI2lmZGVmIFVOSVZfREVC VUcKKwlfX2F0dHJpYnV0ZV9fKChub25udWxsKDMpLCB3YXJuX3VudXNlZF9yZXN1bHQpKTsKIC8q KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KiovLyoqCiBVcGRhdGVzIGRlYnVnIGRhdGEgaW4gb2Zmc2V0cywgaW4gb3JkZXIgdG8gYXZvaWQg Ym9ndXMKIHJlY19vZmZzX3ZhbGlkYXRlKCkgZmFpbHVyZXMuICovCkBAIC00MzgsOCArNDY2LDkg QEAgcmVjX2dldF9udGhfZmllbGRfb2Zmc19vbGQoCiAvKj09PT09PT09PT09PT09PT09PT09PT09 Ki8KIAljb25zdCByZWNfdCoJcmVjLAkvKiE8IGluOiByZWNvcmQgKi8KIAl1bGludAkJbiwJLyoh PCBpbjogaW5kZXggb2YgdGhlIGZpZWxkICovCi0JdWxpbnQqCQlsZW4pOwkvKiE8IG91dDogbGVu Z3RoIG9mIHRoZSBmaWVsZDsgVU5JVl9TUUxfTlVMTAorCXVsaW50KgkJbGVuKQkvKiE8IG91dDog bGVuZ3RoIG9mIHRoZSBmaWVsZDsgVU5JVl9TUUxfTlVMTAogCQkJCWlmIFNRTCBudWxsICovCisJ X19hdHRyaWJ1dGVfXygobm9ubnVsbCkpOwogI2RlZmluZSByZWNfZ2V0X250aF9maWVsZF9vbGQo cmVjLCBuLCBsZW4pIFwKICgocmVjKSArIHJlY19nZXRfbnRoX2ZpZWxkX29mZnNfb2xkKHJlYywg biwgbGVuKSkKIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKiovLyoqCkBAIC00NTIsNyArNDgxLDggQEAgdWxpbnQKIHJlY19nZXRfbnRo X2ZpZWxkX3NpemUoCiAvKj09PT09PT09PT09PT09PT09PT0qLwogCWNvbnN0IHJlY190KglyZWMs CS8qITwgaW46IHJlY29yZCAqLwotCXVsaW50CQluKTsJLyohPCBpbjogaW5kZXggb2YgdGhlIGZp ZWxkICovCisJdWxpbnQJCW4pCS8qITwgaW46IGluZGV4IG9mIHRoZSBmaWVsZCAqLworCV9fYXR0 cmlidXRlX18oKG5vbm51bGwsIHB1cmUsIHdhcm5fdW51c2VkX3Jlc3VsdCkpOwogLyoqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vKioK IFRoZSBmb2xsb3dpbmcgZnVuY3Rpb24gaXMgdXNlZCB0byBnZXQgYW4gb2Zmc2V0IHRvIHRoZSBu dGgKIGRhdGEgZmllbGQgaW4gYSByZWNvcmQuCkBAIC00NjMsOCArNDkzLDkgQEAgcmVjX2dldF9u dGhfZmllbGRfb2ZmcygKIC8qPT09PT09PT09PT09PT09PT09PSovCiAJY29uc3QgdWxpbnQqCW9m ZnNldHMsLyohPCBpbjogYXJyYXkgcmV0dXJuZWQgYnkgcmVjX2dldF9vZmZzZXRzKCkgKi8KIAl1 bGludAkJbiwJLyohPCBpbjogaW5kZXggb2YgdGhlIGZpZWxkICovCi0JdWxpbnQqCQlsZW4pOwkv KiE8IG91dDogbGVuZ3RoIG9mIHRoZSBmaWVsZDsgVU5JVl9TUUxfTlVMTAorCXVsaW50KgkJbGVu KQkvKiE8IG91dDogbGVuZ3RoIG9mIHRoZSBmaWVsZDsgVU5JVl9TUUxfTlVMTAogCQkJCWlmIFNR TCBudWxsICovCisJX19hdHRyaWJ1dGVfXygobm9ubnVsbCkpOwogI2RlZmluZSByZWNfZ2V0X250 aF9maWVsZChyZWMsIG9mZnNldHMsIG4sIGxlbikgXAogKChyZWMpICsgcmVjX2dldF9udGhfZmll bGRfb2ZmcyhvZmZzZXRzLCBuLCBsZW4pKQogLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKi8vKioKQEAgLTQ3NSw3ICs1MDYsOCBAQCBVTklWX0lO TElORQogdWxpbnQKIHJlY19vZmZzX2NvbXAoCiAvKj09PT09PT09PT0qLwotCWNvbnN0IHVsaW50 KglvZmZzZXRzKTsvKiE8IGluOiBhcnJheSByZXR1cm5lZCBieSByZWNfZ2V0X29mZnNldHMoKSAq LworCWNvbnN0IHVsaW50KglvZmZzZXRzKS8qITwgaW46IGFycmF5IHJldHVybmVkIGJ5IHJlY19n ZXRfb2Zmc2V0cygpICovCisJX19hdHRyaWJ1dGVfXygobm9ubnVsbCwgcHVyZSwgd2Fybl91bnVz ZWRfcmVzdWx0KSk7CiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqLy8qKgogRGV0ZXJtaW5lIGlmIHRoZSBvZmZzZXRzIGFyZSBmb3IgYSByZWNv cmQgY29udGFpbmluZwogZXh0ZXJuYWxseSBzdG9yZWQgY29sdW1ucy4KQEAgLTQ4NCw3ICs1MTYs OCBAQCBVTklWX0lOTElORQogdWxpbnQKIHJlY19vZmZzX2FueV9leHRlcm4oCiAvKj09PT09PT09 PT09PT09PT0qLwotCWNvbnN0IHVsaW50KglvZmZzZXRzKTsvKiE8IGluOiBhcnJheSByZXR1cm5l ZCBieSByZWNfZ2V0X29mZnNldHMoKSAqLworCWNvbnN0IHVsaW50KglvZmZzZXRzKS8qITwgaW46 IGFycmF5IHJldHVybmVkIGJ5IHJlY19nZXRfb2Zmc2V0cygpICovCisJX19hdHRyaWJ1dGVfXygo bm9ubnVsbCwgcHVyZSwgd2Fybl91bnVzZWRfcmVzdWx0KSk7CiAvKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy8qKgogRGV0ZXJtaW5lIGlmIHRo ZSBvZmZzZXRzIGFyZSBmb3IgYSByZWNvcmQgY29udGFpbmluZyBudWxsIEJMT0IgcG9pbnRlcnMu CiBAcmV0dXJuCWZpcnN0IGZpZWxkIGNvbnRhaW5pbmcgYSBudWxsIEJMT0IgcG9pbnRlciwgb3Ig TlVMTCBpZiBub25lIGZvdW5kICovCkBAIC00OTQsNyArNTI3LDcgQEAgcmVjX29mZnNfYW55X251 bGxfZXh0ZXJuKAogLyo9PT09PT09PT09PT09PT09PT09PT0qLwogCWNvbnN0IHJlY190KglyZWMs CQkvKiE8IGluOiByZWNvcmQgKi8KIAljb25zdCB1bGludCoJb2Zmc2V0cykJLyohPCBpbjogcmVj X2dldF9vZmZzZXRzKHJlYykgKi8KLQlfX2F0dHJpYnV0ZV9fKChub25udWxsLCB3YXJuX3VudXNl ZF9yZXN1bHQpKTsKKwlfX2F0dHJpYnV0ZV9fKChub25udWxsLCBwdXJlLCB3YXJuX3VudXNlZF9y ZXN1bHQpKTsKIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKiovLyoqCiBSZXR1cm5zIG5vbnplcm8gaWYgdGhlIGV4dGVybiBiaXQgaXMgc2V0IGlu IG50aCBmaWVsZCBvZiByZWMuCiBAcmV0dXJuCW5vbnplcm8gaWYgZXh0ZXJuYWxseSBzdG9yZWQg Ki8KQEAgLTUwMyw3ICs1MzYsOCBAQCB1bGludAogcmVjX29mZnNfbnRoX2V4dGVybigKIC8qPT09 PT09PT09PT09PT09PSovCiAJY29uc3QgdWxpbnQqCW9mZnNldHMsLyohPCBpbjogYXJyYXkgcmV0 dXJuZWQgYnkgcmVjX2dldF9vZmZzZXRzKCkgKi8KLQl1bGludAkJbik7CS8qITwgaW46IG50aCBm aWVsZCAqLworCXVsaW50CQluKQkvKiE8IGluOiBudGggZmllbGQgKi8KKwlfX2F0dHJpYnV0ZV9f KChub25udWxsLCBwdXJlLCB3YXJuX3VudXNlZF9yZXN1bHQpKTsKIC8qKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovLyoqCiBSZXR1cm5zIG5vbnpl cm8gaWYgdGhlIFNRTCBOVUxMIGJpdCBpcyBzZXQgaW4gbnRoIGZpZWxkIG9mIHJlYy4KIEByZXR1 cm4Jbm9uemVybyBpZiBTUUwgTlVMTCAqLwpAQCAtNTEyLDcgKzU0Niw4IEBAIHVsaW50CiByZWNf b2Zmc19udGhfc3FsX251bGwoCiAvKj09PT09PT09PT09PT09PT09PSovCiAJY29uc3QgdWxpbnQq CW9mZnNldHMsLyohPCBpbjogYXJyYXkgcmV0dXJuZWQgYnkgcmVjX2dldF9vZmZzZXRzKCkgKi8K LQl1bGludAkJbik7CS8qITwgaW46IG50aCBmaWVsZCAqLworCXVsaW50CQluKQkvKiE8IGluOiBu dGggZmllbGQgKi8KKwlfX2F0dHJpYnV0ZV9fKChub25udWxsLCBwdXJlLCB3YXJuX3VudXNlZF9y ZXN1bHQpKTsKIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKiovLyoqCiBHZXRzIHRoZSBwaHlzaWNhbCBzaXplIG9mIGEgZmllbGQuCiBAcmV0dXJu CWxlbmd0aCBvZiBmaWVsZCAqLwpAQCAtNTIxLDcgKzU1Niw4IEBAIHVsaW50CiByZWNfb2Zmc19u dGhfc2l6ZSgKIC8qPT09PT09PT09PT09PT0qLwogCWNvbnN0IHVsaW50KglvZmZzZXRzLC8qITwg aW46IGFycmF5IHJldHVybmVkIGJ5IHJlY19nZXRfb2Zmc2V0cygpICovCi0JdWxpbnQJCW4pOwkv KiE8IGluOiBudGggZmllbGQgKi8KKwl1bGludAkJbikJLyohPCBpbjogbnRoIGZpZWxkICovCisJ X19hdHRyaWJ1dGVfXygobm9ubnVsbCwgcHVyZSwgd2Fybl91bnVzZWRfcmVzdWx0KSk7CiAKIC8q KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovLyoq CiBSZXR1cm5zIHRoZSBudW1iZXIgb2YgZXh0ZXJuIGJpdHMgc2V0IGluIGEgcmVjb3JkLgpAQCAt NTMwLDcgKzU2Niw4IEBAIFVOSVZfSU5MSU5FCiB1bGludAogcmVjX29mZnNfbl9leHRlcm4oCiAv Kj09PT09PT09PT09PT09Ki8KLQljb25zdCB1bGludCoJb2Zmc2V0cyk7LyohPCBpbjogYXJyYXkg cmV0dXJuZWQgYnkgcmVjX2dldF9vZmZzZXRzKCkgKi8KKwljb25zdCB1bGludCoJb2Zmc2V0cykv KiE8IGluOiBhcnJheSByZXR1cm5lZCBieSByZWNfZ2V0X29mZnNldHMoKSAqLworCV9fYXR0cmli dXRlX18oKG5vbm51bGwsIHB1cmUsIHdhcm5fdW51c2VkX3Jlc3VsdCkpOwogLyoqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy8qKgogVGhp cyBpcyB1c2VkIHRvIG1vZGlmeSB0aGUgdmFsdWUgb2YgYW4gYWxyZWFkeSBleGlzdGluZyBmaWVs ZCBpbiBhIHJlY29yZC4KIFRoZSBwcmV2aW91cyB2YWx1ZSBtdXN0IGhhdmUgZXhhY3RseSB0aGUg c2FtZSBzaXplIGFzIHRoZSBuZXcgdmFsdWUuIElmIGxlbgpAQCAtNTQ1LDExICs1ODIsMTIgQEAg cmVjX3NldF9udGhfZmllbGQoCiAJY29uc3QgdWxpbnQqCW9mZnNldHMsLyohPCBpbjogYXJyYXkg cmV0dXJuZWQgYnkgcmVjX2dldF9vZmZzZXRzKCkgKi8KIAl1bGludAkJbiwJLyohPCBpbjogaW5k ZXggbnVtYmVyIG9mIHRoZSBmaWVsZCAqLwogCWNvbnN0IHZvaWQqCWRhdGEsCS8qITwgaW46IHBv aW50ZXIgdG8gdGhlIGRhdGEgaWYgbm90IFNRTCBudWxsICovCi0JdWxpbnQJCWxlbik7CS8qITwg aW46IGxlbmd0aCBvZiB0aGUgZGF0YSBvciBVTklWX1NRTF9OVUxMLgorCXVsaW50CQlsZW4pCS8q ITwgaW46IGxlbmd0aCBvZiB0aGUgZGF0YSBvciBVTklWX1NRTF9OVUxMLgogCQkJCUlmIG5vdCBT UUwgbnVsbCwgbXVzdCBoYXZlIHRoZSBzYW1lCiAJCQkJbGVuZ3RoIGFzIHRoZSBwcmV2aW91cyB2 YWx1ZS4KIAkJCQlJZiBTUUwgbnVsbCwgcHJldmlvdXMgdmFsdWUgbXVzdCBiZQogCQkJCVNRTCBu dWxsLiAqLworCV9fYXR0cmlidXRlX18oKG5vbm51bGwoMSwyKSkpOwogLyoqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovLyoqCiBUaGUgZm9s bG93aW5nIGZ1bmN0aW9uIHJldHVybnMgdGhlIGRhdGEgc2l6ZSBvZiBhbiBvbGQtc3R5bGUgcGh5 c2ljYWwKIHJlY29yZCwgdGhhdCBpcyB0aGUgc3VtIG9mIGZpZWxkIGxlbmd0aHMuIFNRTCBudWxs IGZpZWxkcwpAQCAtNTYwLDcgKzU5OCw4IEBAIFVOSVZfSU5MSU5FCiB1bGludAogcmVjX2dldF9k YXRhX3NpemVfb2xkKAogLyo9PT09PT09PT09PT09PT09PT0qLwotCWNvbnN0IHJlY190KglyZWMp OwkvKiE8IGluOiBwaHlzaWNhbCByZWNvcmQgKi8KKwljb25zdCByZWNfdCoJcmVjKQkvKiE8IGlu OiBwaHlzaWNhbCByZWNvcmQgKi8KKwlfX2F0dHJpYnV0ZV9fKChub25udWxsLCBwdXJlLCB3YXJu X3VudXNlZF9yZXN1bHQpKTsKIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqLy8qKgogVGhlIGZvbGxvd2luZyBmdW5jdGlvbiByZXR1cm5z IHRoZSBudW1iZXIgb2YgYWxsb2NhdGVkIGVsZW1lbnRzCiBmb3IgYW4gYXJyYXkgb2Ygb2Zmc2V0 cy4KQEAgLTU2OSw3ICs2MDgsOCBAQCBVTklWX0lOTElORQogdWxpbnQKIHJlY19vZmZzX2dldF9u X2FsbG9jKAogLyo9PT09PT09PT09PT09PT09PSovCi0JY29uc3QgdWxpbnQqCW9mZnNldHMpOy8q ITwgaW46IGFycmF5IGZvciByZWNfZ2V0X29mZnNldHMoKSAqLworCWNvbnN0IHVsaW50KglvZmZz ZXRzKS8qITwgaW46IGFycmF5IGZvciByZWNfZ2V0X29mZnNldHMoKSAqLworCV9fYXR0cmlidXRl X18oKG5vbm51bGwsIHB1cmUsIHdhcm5fdW51c2VkX3Jlc3VsdCkpOwogLyoqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovLyoqCiBUaGUgZm9s bG93aW5nIGZ1bmN0aW9uIHNldHMgdGhlIG51bWJlciBvZiBhbGxvY2F0ZWQgZWxlbWVudHMKIGZv ciBhbiBhcnJheSBvZiBvZmZzZXRzLiAqLwpAQCAtNTc5LDcgKzYxOSw4IEBAIHJlY19vZmZzX3Nl dF9uX2FsbG9jKAogLyo9PT09PT09PT09PT09PT09PSovCiAJdWxpbnQqCW9mZnNldHMsCS8qITwg b3V0OiBhcnJheSBmb3IgcmVjX2dldF9vZmZzZXRzKCksCiAJCQkJbXVzdCBiZSBhbGxvY2F0ZWQg Ki8KLQl1bGludAluX2FsbG9jKTsJLyohPCBpbjogbnVtYmVyIG9mIGVsZW1lbnRzICovCisJdWxp bnQJbl9hbGxvYykJLyohPCBpbjogbnVtYmVyIG9mIGVsZW1lbnRzICovCisJX19hdHRyaWJ1dGVf Xygobm9ubnVsbCkpOwogI2RlZmluZSByZWNfb2Zmc19pbml0KG9mZnNldHMpIFwKIAlyZWNfb2Zm c19zZXRfbl9hbGxvYyhvZmZzZXRzLCAoc2l6ZW9mIG9mZnNldHMpIC8gc2l6ZW9mICpvZmZzZXRz KQogLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKiovLyoqCkBAIC01ODksNyArNjMwLDggQEAgVU5JVl9JTkxJTkUKIHVsaW50CiByZWNfb2Zm c19uX2ZpZWxkcygKIC8qPT09PT09PT09PT09PT0qLwotCWNvbnN0IHVsaW50KglvZmZzZXRzKTsv KiE8IGluOiBhcnJheSByZXR1cm5lZCBieSByZWNfZ2V0X29mZnNldHMoKSAqLworCWNvbnN0IHVs aW50KglvZmZzZXRzKS8qITwgaW46IGFycmF5IHJldHVybmVkIGJ5IHJlY19nZXRfb2Zmc2V0cygp ICovCisJX19hdHRyaWJ1dGVfXygobm9ubnVsbCwgcHVyZSwgd2Fybl91bnVzZWRfcmVzdWx0KSk7 CiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKi8vKioKIFRoZSBmb2xsb3dpbmcgZnVuY3Rpb24gcmV0dXJucyB0aGUgZGF0YSBzaXplIG9m IGEgcGh5c2ljYWwKIHJlY29yZCwgdGhhdCBpcyB0aGUgc3VtIG9mIGZpZWxkIGxlbmd0aHMuIFNR TCBudWxsIGZpZWxkcwpAQCAtNjAwLDcgKzY0Miw4IEBAIFVOSVZfSU5MSU5FCiB1bGludAogcmVj X29mZnNfZGF0YV9zaXplKAogLyo9PT09PT09PT09PT09PT0qLwotCWNvbnN0IHVsaW50KglvZmZz ZXRzKTsvKiE8IGluOiBhcnJheSByZXR1cm5lZCBieSByZWNfZ2V0X29mZnNldHMoKSAqLworCWNv bnN0IHVsaW50KglvZmZzZXRzKS8qITwgaW46IGFycmF5IHJldHVybmVkIGJ5IHJlY19nZXRfb2Zm c2V0cygpICovCisJX19hdHRyaWJ1dGVfXygobm9ubnVsbCwgcHVyZSwgd2Fybl91bnVzZWRfcmVz dWx0KSk7CiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKi8vKioKIFJldHVybnMgdGhlIHRvdGFsIHNpemUgb2YgcmVjb3JkIG1pbnVzIGRh dGEgc2l6ZSBvZiByZWNvcmQuCiBUaGUgdmFsdWUgcmV0dXJuZWQgYnkgdGhlIGZ1bmN0aW9uIGlz IHRoZSBkaXN0YW5jZSBmcm9tIHJlY29yZApAQCAtNjEwLDcgKzY1Myw4IEBAIFVOSVZfSU5MSU5F CiB1bGludAogcmVjX29mZnNfZXh0cmFfc2l6ZSgKIC8qPT09PT09PT09PT09PT09PSovCi0JY29u c3QgdWxpbnQqCW9mZnNldHMpOy8qITwgaW46IGFycmF5IHJldHVybmVkIGJ5IHJlY19nZXRfb2Zm c2V0cygpICovCisJY29uc3QgdWxpbnQqCW9mZnNldHMpLyohPCBpbjogYXJyYXkgcmV0dXJuZWQg YnkgcmVjX2dldF9vZmZzZXRzKCkgKi8KKwlfX2F0dHJpYnV0ZV9fKChub25udWxsLCBwdXJlLCB3 YXJuX3VudXNlZF9yZXN1bHQpKTsKIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqLy8qKgogUmV0dXJucyB0aGUgdG90YWwgc2l6ZSBvZiBh IHBoeXNpY2FsIHJlY29yZC4KIEByZXR1cm4Jc2l6ZSAqLwpAQCAtNjE4LDcgKzY2Miw4IEBAIFVO SVZfSU5MSU5FCiB1bGludAogcmVjX29mZnNfc2l6ZSgKIC8qPT09PT09PT09PSovCi0JY29uc3Qg dWxpbnQqCW9mZnNldHMpOy8qITwgaW46IGFycmF5IHJldHVybmVkIGJ5IHJlY19nZXRfb2Zmc2V0 cygpICovCisJY29uc3QgdWxpbnQqCW9mZnNldHMpLyohPCBpbjogYXJyYXkgcmV0dXJuZWQgYnkg cmVjX2dldF9vZmZzZXRzKCkgKi8KKwlfX2F0dHJpYnV0ZV9fKChub25udWxsLCBwdXJlLCB3YXJu X3VudXNlZF9yZXN1bHQpKTsKICNpZmRlZiBVTklWX0RFQlVHCiAvKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vKioKIFJldHVybnMgYSBw b2ludGVyIHRvIHRoZSBzdGFydCBvZiB0aGUgcmVjb3JkLgpAQCAtNjI4LDcgKzY3Myw4IEBAIGJ5 dGUqCiByZWNfZ2V0X3N0YXJ0KAogLyo9PT09PT09PT09Ki8KIAljb25zdCByZWNfdCoJcmVjLAkv KiE8IGluOiBwb2ludGVyIHRvIHJlY29yZCAqLwotCWNvbnN0IHVsaW50KglvZmZzZXRzKTsvKiE8 IGluOiBhcnJheSByZXR1cm5lZCBieSByZWNfZ2V0X29mZnNldHMoKSAqLworCWNvbnN0IHVsaW50 KglvZmZzZXRzKS8qITwgaW46IGFycmF5IHJldHVybmVkIGJ5IHJlY19nZXRfb2Zmc2V0cygpICov CisJX19hdHRyaWJ1dGVfXygobm9ubnVsbCwgcHVyZSwgd2Fybl91bnVzZWRfcmVzdWx0KSk7CiAv KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq Ki8vKioKIFJldHVybnMgYSBwb2ludGVyIHRvIHRoZSBlbmQgb2YgdGhlIHJlY29yZC4KIEByZXR1 cm4JcG9pbnRlciB0byBlbmQgKi8KQEAgLTYzNyw3ICs2ODMsOCBAQCBieXRlKgogcmVjX2dldF9l bmQoCiAvKj09PT09PT09Ki8KIAljb25zdCByZWNfdCoJcmVjLAkvKiE8IGluOiBwb2ludGVyIHRv IHJlY29yZCAqLwotCWNvbnN0IHVsaW50KglvZmZzZXRzKTsvKiE8IGluOiBhcnJheSByZXR1cm5l ZCBieSByZWNfZ2V0X29mZnNldHMoKSAqLworCWNvbnN0IHVsaW50KglvZmZzZXRzKS8qITwgaW46 IGFycmF5IHJldHVybmVkIGJ5IHJlY19nZXRfb2Zmc2V0cygpICovCisJX19hdHRyaWJ1dGVfXygo bm9ubnVsbCwgcHVyZSwgd2Fybl91bnVzZWRfcmVzdWx0KSk7CiAjZWxzZSAvKiBVTklWX0RFQlVH ICovCiAjIGRlZmluZSByZWNfZ2V0X3N0YXJ0KHJlYywgb2Zmc2V0cykgKChyZWMpIC0gcmVjX29m ZnNfZXh0cmFfc2l6ZShvZmZzZXRzKSkKICMgZGVmaW5lIHJlY19nZXRfZW5kKHJlYywgb2Zmc2V0 cykgKChyZWMpICsgcmVjX29mZnNfZGF0YV9zaXplKG9mZnNldHMpKQpAQCAtNjUxLDcgKzY5OCw4 IEBAIHJlY19jb3B5KAogLyo9PT09PSovCiAJdm9pZCoJCWJ1ZiwJLyohPCBpbjogYnVmZmVyICov CiAJY29uc3QgcmVjX3QqCXJlYywJLyohPCBpbjogcGh5c2ljYWwgcmVjb3JkICovCi0JY29uc3Qg dWxpbnQqCW9mZnNldHMpOy8qITwgaW46IGFycmF5IHJldHVybmVkIGJ5IHJlY19nZXRfb2Zmc2V0 cygpICovCisJY29uc3QgdWxpbnQqCW9mZnNldHMpLyohPCBpbjogYXJyYXkgcmV0dXJuZWQgYnkg cmVjX2dldF9vZmZzZXRzKCkgKi8KKwlfX2F0dHJpYnV0ZV9fKChub25udWxsKSk7CiAjaWZuZGVm IFVOSVZfSE9UQkFDS1VQCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKiovLyoqCiBDb3BpZXMgdGhlIGZpcnN0IG4gZmllbGRzIG9m IGEgcGh5c2ljYWwgcmVjb3JkIHRvIGEgbmV3IHBoeXNpY2FsIHJlY29yZCBpbgpAQCAtNjY4LDcg KzcxNiw4IEBAIHJlY19jb3B5X3ByZWZpeF90b19idWYoCiAJYnl0ZSoqCQkJYnVmLAkJLyohPCBp bi9vdXQ6IG1lbW9yeSBidWZmZXIKIAkJCQkJCWZvciB0aGUgY29waWVkIHByZWZpeCwKIAkJCQkJ CW9yIE5VTEwgKi8KLQl1bGludCoJCQlidWZfc2l6ZSk7CS8qITwgaW4vb3V0OiBidWZmZXIgc2l6 ZSAqLworCXVsaW50KgkJCWJ1Zl9zaXplKQkvKiE8IGluL291dDogYnVmZmVyIHNpemUgKi8KKwlf X2F0dHJpYnV0ZV9fKChub25udWxsKSk7CiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy8qKgogRm9sZHMgYSBwcmVmaXggb2YgYSBw aHlzaWNhbCByZWNvcmQgdG8gYSB1bGludC4KIEByZXR1cm4JdGhlIGZvbGRlZCB2YWx1ZSAqLwpA QCAtNjg0LDcgKzczMyw3IEBAIHJlY19mb2xkKAogCXVsaW50CQluX2J5dGVzLAkvKiE8IGluOiBu dW1iZXIgb2YgYnl0ZXMgdG8gZm9sZAogCQkJCQlpbiBhbiBpbmNvbXBsZXRlIGxhc3QgZmllbGQg Ki8KIAlpbmRleF9pZF90CXRyZWVfaWQpCS8qITwgaW46IGluZGV4IHRyZWUgaWQgKi8KLQlfX2F0 dHJpYnV0ZV9fKChwdXJlKSk7CisJX19hdHRyaWJ1dGVfXygobm9ubnVsbCwgcHVyZSwgd2Fybl91 bnVzZWRfcmVzdWx0KSk7CiAjZW5kaWYgLyogIVVOSVZfSE9UQkFDS1VQICovCiAvKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy8qKgogQnVp bGRzIGEgUk9XX0ZPUk1BVD1DT01QQUNUIHJlY29yZCBvdXQgb2YgYSBkYXRhIHR1cGxlLiAqLwpA QCAtNzE2LDggKzc2NSw5IEBAIHJlY19jb252ZXJ0X2R0dXBsZV90b19yZWMoCiAJCQkJCXBoeXNp Y2FsIHJlY29yZCAqLwogCWNvbnN0IGRpY3RfaW5kZXhfdCoJaW5kZXgsCS8qITwgaW46IHJlY29y ZCBkZXNjcmlwdG9yICovCiAJY29uc3QgZHR1cGxlX3QqCQlkdHVwbGUsCS8qITwgaW46IGRhdGEg dHVwbGUgKi8KLQl1bGludAkJCW5fZXh0KTsJLyohPCBpbjogbnVtYmVyIG9mCisJdWxpbnQJCQlu X2V4dCkJLyohPCBpbjogbnVtYmVyIG9mCiAJCQkJCWV4dGVybmFsbHkgc3RvcmVkIGNvbHVtbnMg Ki8KKwlfX2F0dHJpYnV0ZV9fKChub25udWxsLCB3YXJuX3VudXNlZF9yZXN1bHQpKTsKIC8qKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy8q KgogUmV0dXJucyB0aGUgZXh0cmEgc2l6ZSBvZiBhbiBvbGQtc3R5bGUgcGh5c2ljYWwgcmVjb3Jk IGlmIHdlIGtub3cgaXRzCiBkYXRhIHNpemUgYW5kIG51bWJlciBvZiBmaWVsZHMuCkBAIC03OTAs NyArODQwLDggQEAgcmVjX2NvcHlfcHJlZml4X3RvX2R0dXBsZSgKIAljb25zdCBkaWN0X2luZGV4 X3QqCWluZGV4LAkJLyohPCBpbjogcmVjb3JkIGRlc2NyaXB0b3IgKi8KIAl1bGludAkJCW5fZmll bGRzLAkvKiE8IGluOiBudW1iZXIgb2YgZmllbGRzCiAJCQkJCQl0byBjb3B5ICovCi0JbWVtX2hl YXBfdCoJCWhlYXApOwkJLyohPCBpbjogbWVtb3J5IGhlYXAgKi8KKwltZW1faGVhcF90KgkJaGVh cCkJCS8qITwgaW46IG1lbW9yeSBoZWFwICovCisJX19hdHRyaWJ1dGVfXygobm9ubnVsbCkpOwog I2VuZGlmIC8qICFVTklWX0hPVEJBQ0tVUCAqLwogLyoqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8vKioKIFZhbGlkYXRlcyB0aGUg Y29uc2lzdGVuY3kgb2YgYSBwaHlzaWNhbCByZWNvcmQuCkBAIC04MDAsNyArODUxLDggQEAgaWJv b2wKIHJlY192YWxpZGF0ZSgKIC8qPT09PT09PT09Ki8KIAljb25zdCByZWNfdCoJcmVjLAkvKiE8 IGluOiBwaHlzaWNhbCByZWNvcmQgKi8KLQljb25zdCB1bGludCoJb2Zmc2V0cyk7LyohPCBpbjog YXJyYXkgcmV0dXJuZWQgYnkgcmVjX2dldF9vZmZzZXRzKCkgKi8KKwljb25zdCB1bGludCoJb2Zm c2V0cykvKiE8IGluOiBhcnJheSByZXR1cm5lZCBieSByZWNfZ2V0X29mZnNldHMoKSAqLworCV9f YXR0cmlidXRlX18oKG5vbm51bGwpKTsKIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovLyoqCiBQcmludHMgYW4gb2xkLXN0eWxl IHBoeXNpY2FsIHJlY29yZC4gKi8KIFVOSVZfSU5URVJOCkBAIC04MDgsNyArODYwLDggQEAgdm9p ZAogcmVjX3ByaW50X29sZCgKIC8qPT09PT09PT09PSovCiAJRklMRSoJCWZpbGUsCS8qITwgaW46 IGZpbGUgd2hlcmUgdG8gcHJpbnQgKi8KLQljb25zdCByZWNfdCoJcmVjKTsJLyohPCBpbjogcGh5 c2ljYWwgcmVjb3JkICovCisJY29uc3QgcmVjX3QqCXJlYykJLyohPCBpbjogcGh5c2ljYWwgcmVj b3JkICovCisJX19hdHRyaWJ1dGVfXygobm9ubnVsbCkpOwogI2lmbmRlZiBVTklWX0hPVEJBQ0tV UAogLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKi8vKioKIFByaW50cyBhIHBoeXNpY2FsIHJlY29yZCBpbiBST1dfRk9STUFUPUNP TVBBQ1QuICBJZ25vcmVzIHRoZQpAQCAtODE5LDcgKzg3Miw4IEBAIHJlY19wcmludF9jb21wKAog Lyo9PT09PT09PT09PSovCiAJRklMRSoJCWZpbGUsCS8qITwgaW46IGZpbGUgd2hlcmUgdG8gcHJp bnQgKi8KIAljb25zdCByZWNfdCoJcmVjLAkvKiE8IGluOiBwaHlzaWNhbCByZWNvcmQgKi8KLQlj b25zdCB1bGludCoJb2Zmc2V0cyk7LyohPCBpbjogYXJyYXkgcmV0dXJuZWQgYnkgcmVjX2dldF9v ZmZzZXRzKCkgKi8KKwljb25zdCB1bGludCoJb2Zmc2V0cykvKiE8IGluOiBhcnJheSByZXR1cm5l ZCBieSByZWNfZ2V0X29mZnNldHMoKSAqLworCV9fYXR0cmlidXRlX18oKG5vbm51bGwpKTsKIC8q KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKiovLyoqCiBQcmludHMgYSBwaHlzaWNhbCByZWNvcmQuICovCiBVTklWX0lOVEVSTgpAQCAt ODI4LDcgKzg4Miw4IEBAIHJlY19wcmludF9uZXcoCiAvKj09PT09PT09PT0qLwogCUZJTEUqCQlm aWxlLAkvKiE8IGluOiBmaWxlIHdoZXJlIHRvIHByaW50ICovCiAJY29uc3QgcmVjX3QqCXJlYywJ LyohPCBpbjogcGh5c2ljYWwgcmVjb3JkICovCi0JY29uc3QgdWxpbnQqCW9mZnNldHMpOy8qITwg aW46IGFycmF5IHJldHVybmVkIGJ5IHJlY19nZXRfb2Zmc2V0cygpICovCisJY29uc3QgdWxpbnQq CW9mZnNldHMpLyohPCBpbjogYXJyYXkgcmV0dXJuZWQgYnkgcmVjX2dldF9vZmZzZXRzKCkgKi8K KwlfX2F0dHJpYnV0ZV9fKChub25udWxsKSk7CiAvKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy8qKgogUHJpbnRzIGEgcGh5c2lj YWwgcmVjb3JkLiAqLwogVU5JVl9JTlRFUk4KQEAgLTgzNyw3ICs4OTIsOCBAQCByZWNfcHJpbnQo CiAvKj09PT09PSovCiAJRklMRSoJCQlmaWxlLAkvKiE8IGluOiBmaWxlIHdoZXJlIHRvIHByaW50 ICovCiAJY29uc3QgcmVjX3QqCQlyZWMsCS8qITwgaW46IHBoeXNpY2FsIHJlY29yZCAqLwotCWNv bnN0IGRpY3RfaW5kZXhfdCoJaW5kZXgpOwkvKiE8IGluOiByZWNvcmQgZGVzY3JpcHRvciAqLwor CWNvbnN0IGRpY3RfaW5kZXhfdCoJaW5kZXgpCS8qITwgaW46IHJlY29yZCBkZXNjcmlwdG9yICov CisJX19hdHRyaWJ1dGVfXygobm9ubnVsbCkpOwogCiAjIGlmZGVmIFVOSVZfREVCVUcKIC8qKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiov LyoqCgo9PT0gbW9kaWZpZWQgZmlsZSAnc3RvcmFnZS9pbm5vYmFzZS9yb3cvcm93MG1lcmdlLmNj JwotLS0gYS9zdG9yYWdlL2lubm9iYXNlL3Jvdy9yb3cwbWVyZ2UuY2MJcmV2aWQ6bWFya28ubWFr ZWxhQG9yYWNsZS5jb20tMjAxMjA1MjIwNzQ3NTEtc3NqY2xjaHAybHFrcTVtdQorKysgYi9zdG9y YWdlL2lubm9iYXNlL3Jvdy9yb3cwbWVyZ2UuY2MJcmV2aWQ6bWFya28ubWFrZWxhQG9yYWNsZS5j b20tMjAxMjA1MjIwODI4NDUta3A5YW9wYmwyZ2pxN2FuYQpAQCAtMTYxOSwxMSArMTYxOSw3IEBA IHdyaXRlX2J1ZmZlcnM6CiAJCQkJCSAgICAgICBidWYsIGZ0c19pbmRleCwgcHNvcnRfaW5mbywK IAkJCQkJICAgICAgIHJvdywgZXh0LCAmZG9jX2lkKSkpKSB7CiAJCQkJCS8qIEFuIGVtcHR5IGJ1 ZmZlciBzaG91bGQgaGF2ZSBlbm91Z2gKLQkJCQkJcm9vbSBmb3IgYXQgbGVhc3Qgb25lIHJlY29y ZC4KLQkJCQkJVE9ETzogZm9yIEZUUyBpbmRleCBidWlsZGluZywgd2UnbGwKLQkJCQkJbmVlZCB0 byBwcmVwYXJlZCBmb3IgY29waW5nIHdpdGggdmVyeQotCQkJCQlsYXJnZSB0ZXh0L2Jsb2IgZGF0 YSBpbiBhIHNpbmdsZSByb3cKLQkJCQkJdGhhdCBjb3VsZCBmaWxsIHVwIHRoZSBtZXJnZSBmaWxl ICovCisJCQkJCXJvb20gZm9yIGF0IGxlYXN0IG9uZSByZWNvcmQuICovCiAJCQkJCXV0X2Vycm9y OwogCQkJCX0KIApAQCAtMTY5MCwxMiArMTY4Niw2IEBAIHdhaXRfYWdhaW46CiB9CiAKIC8qKiBX cml0ZSBhIHJlY29yZCB2aWEgYnVmZmVyIDIgYW5kIHJlYWQgdGhlIG5leHQgcmVjb3JkIHRvIGJ1 ZmZlciBOLgotQHBhcmFtIE0JRlRTIG1lcmdlIGluZm8gc3RydWN0dXJlCi1AcGFyYW0gTglpbmRl eCBpbnRvIGFycmF5IG9mIG1lcmdlIGluZm8gc3RydWN0dXJlCi1AcGFyYW0gSU5ERVgJdGhlIEZU UyBpbmRleCAqLwotCi0KLS8qKiBXcml0ZSBhIHJlY29yZCB2aWEgYnVmZmVyIDIgYW5kIHJlYWQg dGhlIG5leHQgcmVjb3JkIHRvIGJ1ZmZlciBOLgogQHBhcmFtIE4JbnVtYmVyIG9mIHRoZSBidWZm ZXIgKDAgb3IgMSkKIEBwYXJhbSBBVF9FTkQJc3RhdGVtZW50IHRvIGV4ZWN1dGUgYXQgZW5kIG9m IGlucHV0ICovCiAjZGVmaW5lIFJPV19NRVJHRV9XUklURV9HRVRfTkVYVChOLCBBVF9FTkQpCQkJ CVwKCk5vIGJ1bmRsZSAocmVhc29uOiB1c2VsZXNzIGZvciBwdXNoIGVtYWlscyku