ZGlmZiAtLWdpdCBhL2NwdS94c2NhbGUvc3RhcnQuUyBiL2NwdS94c2NhbGUvc3RhcnQuUwppbmRleCAzZDk3ODRlLi45NWIzMGU0IDEwMDY0NAotLS0gYS9jcHUveHNjYWxlL3N0YXJ0LlMKKysrIGIvY3B1L3hzY2FsZS9zdGFydC5TCkBAIC00LDggKzQsMTAgQEAKICAqICBDb3B5cmlnaHQgKEMpIDE5OTgJRGFuIE1hbGVrIDxkbWFsZWtAamxjLm5ldD4KICAqICBDb3B5cmlnaHQgKEMpIDE5OTkJTWFnbnVzIERhbW0gPGtpZXJheXBjMDEucC55LmtpZS5lcmEuZXJpY3Nzb24uc2U+CiAgKiAgQ29weXJpZ2h0IChDKSAyMDAwCVdvbGZnYW5nIERlbmsgPHdkQGRlbnguZGU+Ci0gKiAgQ29weXJpZ2h0IChjKSAyMDAxCUFsZXggWvxwa2UgPGF6dUBzeXNnby5kZT4KLSAqICBDb3B5cmlnaHQgKGMpIDIwMDIJS3lsZSBIYXJyaXMgPGtoYXJyaXNAbmV4dXMtdGVjaC5uZXQ+CisgKiAgQ29weXJpZ2h0IChDKSAyMDAxCUFsZXggWvxwa2UgPGF6dUBzeXNnby5kZT4KKyAqICBDb3B5cmlnaHQgKEMpIDIwMDIJS3lsZSBIYXJyaXMgPGtoYXJyaXNAbmV4dXMtdGVjaC5uZXQ+CisgKiAgQ29weXJpZ2h0IChDKSAyMDAzICBSb2JlcnQgU2Nod2ViZWwgPHIuc2Nod2ViZWxAcGVuZ3V0cm9uaXguZGU+CisgKiAgQ29weXJpZ2h0IChDKSAyMDAzICBLYWktVXdlIEJsb2VobSA8a2FpLXV3ZS5ibG9lbUBhdWVyc3dhbGQuZGU+CiAgKgogICogU2VlIGZpbGUgQ1JFRElUUyBmb3IgbGlzdCBvZiBwZW9wbGUgd2hvIGNvbnRyaWJ1dGVkIHRvIHRoaXMKICAqIHByb2plY3QuCkBAIC0yNiw4ICsyOCw2IEBACiAgKiBNQSAwMjExMS0xMzA3IFVTQQogICovCiAKLQotCiAjaW5jbHVkZSA8Y29uZmlnLmg+CiAjaW5jbHVkZSA8dmVyc2lvbi5oPgogCkBAIC0xMzYsMTMgKzEzNiwxNiBAQAogCiAJYmwJY3B1X2luaXRfY3JpdAkJLyogd2UgZG8gc3lzLWNyaXRpY2FsIGluaXRzCSAgICAqLwogCi1yZWxvY2F0ZToJCQkJLyogcmVsb2NhdGUgVS1Cb290IHRvIFJBTQkgICAqLwotCWFkcglyMCwgX3N0YXJ0CQkvKiByMCA8LSBjdXJyZW50IHBvc2l0aW9uIG9mIGNvZGUgKi8KK3JlbG9jYXRlOgkJCQkvKiByZWxvY2F0ZSBVLUJvb3QgdG8gUkFNCSAgICAqLworCWFkcglyMCwgX3N0YXJ0CQkvKiByMCA8LSBjdXJyZW50IHBvc2l0aW9uIG9mIGNvZGUgICAqLworCWxkcglyMSwgX1RFWFRfQkFTRQkJLyogdGVzdCBpZiB3ZSBydW4gZnJvbSBmbGFzaCBvciBSQU0gKi8JCisJY21wICAgICByMCwgcjEgICAgICAgICAgICAgICAgICAvKiBkb24ndCByZWxvYyBkdXJpbmcgZGVidWcgICAgICAgICAqLworCWJlcSAgICAgc3RhY2tfc2V0dXAKKwogCWxkcglyMiwgX2FybWJvb3Rfc3RhcnQKIAlsZHIJcjMsIF9hcm1ib290X2VuZAotCXN1YglyMiwgcjMsIHIyCQkvKiByMiA8LSBzaXplIG9mIGFybWJvb3QgKi8KLQlsZHIJcjEsIF9URVhUX0JBU0UKLQlhZGQJcjIsIHIwLCByMgkJLyogcjIgPC0gc291cmNlIGVuZCBhZGRyZXNzICovCisJc3ViCXIyLCByMywgcjIJCS8qIHIyIDwtIHNpemUgb2YgYXJtYm9vdCAgICAgICAgICAgICovCisJYWRkCXIyLCByMCwgcjIJCS8qIHIyIDwtIHNvdXJjZSBlbmQgYWRkcmVzcyAgICAgICAgICovCiAKIGNvcHlfbG9vcDoKIAlsZG1pYQlyMCEsIHtyMy1yMTB9CQkvKiBjb3B5IGZyb20gc291cmNlIGFkZHJlc3MgW3IwXSAgICAqLwpAQCAtMTUxLDYgKzE1NCw5IEBACiAJYmxlCWNvcHlfbG9vcAogCiAJLyogU2V0IHVwIHRoZSBzdGFjawkJCQkJCSAgICAqLworCitzdGFja19zZXR1cDoKKwogCWxkcglyMCwgX3Vib290X3JlbG9jCS8qIHVwcGVyIDEyOCBLaUI6IHJlbG9jYXRlZCB1Ym9vdCAgICovCiAJc3ViCXIwLCByMCwgI0NGR19NQUxMT0NfTEVOIC8qIG1hbGxvYyBhcmVhCQkJICAgICovCiAJCQkJCS8qIEZJWE1FOiBiZGluZm8gc2hvdWxkIGJlIGhlcmUJICAgICovCkBAIC0xODMsNyArMTg5LDcgQEAKIC8qCQkJCQkJCQkJICAgICovCiAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KIAotCS8qIEludGVycnVwdC1Db250cm9sbGVyIGJhc2UgYWRkcmVzcwkJCQkgICAgKi8KKy8qIEludGVycnVwdC1Db250cm9sbGVyIGJhc2UgYWRkcmVzcwkJCQkgICAgICAgICAgICAqLwogSUNfQkFTRToJICAgLndvcmQJICAgMHg0MGQwMDAwMAogI2RlZmluZSBJQ01SCTB4MDQKIApAQCAtMTkxLDE5ICsxOTcsMTkgQEAKIFJTVF9CQVNFOgkud29yZAkweDQwZjAwMDMwCiAjZGVmaW5lIFJDU1IJMHgwMAogCi0JLyogT3BlcmF0aW5nIFN5c3RlbSBUaW1lciAqLworLyogT3BlcmF0aW5nIFN5c3RlbSBUaW1lciAqLwogT1NUSU1FUl9CQVNFOgkud29yZAkweDQwYTAwMDAwCiAjZGVmaW5lIE9TTVIzCTB4MEMKICNkZWZpbmUgT1NDUgkweDEwCiAjZGVmaW5lIE9XRVIJMHgxOAogI2RlZmluZSBPSUVSCTB4MUMKIAotCS8qIENsb2NrIE1hbmFnZXIgUmVnaXN0ZXJzCQkJCQkgICAgKi8KLSNpZmRlZiBDRkdfQ1BVU1BFRUQKKy8qIENsb2NrIE1hbmFnZXIgUmVnaXN0ZXJzCQkJCQkgICAgICAgICAgICAqLwogQ0NfQkFTRToJLndvcmQJMHg0MTMwMDAwMAogI2RlZmluZSBDQ0NSCTB4MDAKIGNwdXNwZWVkOgkud29yZAlDRkdfQ1BVU1BFRUQKLSNlbmRpZgorCisKIAkvKiBSUzogPz8/CQkJCQkJCSAgICAqLwogCS5tYWNybyBDUFdBSVQKIAltcmMgIHAxNSwwLHIwLGMyLGMwLDAKQEAgLTIxOSwxMyArMjI1LDE2IEBACiAJbW92CXIxLCAjMHgwMAogCXN0cglyMSwgW3IwLCAjSUNNUl0KIAotI2lmZGVmIENGR19DUFVTUEVFRAorI2lmIGRlZmluZWQoQ0ZHX0NQVVNQRUVEKQorCiAJLyogc2V0IGNsb2NrIHNwZWVkICovCiAJbGRyCXIwLCBDQ19CQVNFCiAJbGRyCXIxLCBjcHVzcGVlZAogCXN0cglyMSwgW3IwLCAjQ0NDUl0KLQltb3YJcjAsICMzCisJbW92CXIwLCAjMgogCW1jcglwMTQsIDAsIHIwLCBjNiwgYzAsIDAKKworc2V0c3BlZWRfZG9uZToKICNlbmRpZgogCiAJLyoKQEAgLTQyOSwxNSArNDM4LDIxIEBACiAKICNlbmRpZgogCisvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyogUmVzZXQgZnVuY3Rpb246IHRoZSBQWEEyNTAgZG9lc24ndCBoYXZlIGEgcmVzZXQgZnVuY3Rpb24sIHNvIHdlIGhhdmUgdG8gICovCisvKiBwZXJmb3JtIGEgd2F0Y2hkb2cgdGltZW91dCBmb3IgYSBzb2Z0IHJlc2V0LiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKy8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCisKLS8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCi0vKgkJCQkJCQkJCSovCi0vKiBSZXNldCBmdW5jdGlvbjogdGhlIFBYQTI1MCBoYXMgbm8gcmVzZXQgZnVuY3Rpb24sIHNvIHdlIGhhdmUgdG8JKi8KLS8qIHBlcmZvcm0gYSB3YXRjaGRvZyB0aW1lb3V0IHRvIGNhdXNlIGEgcmVzZXQuCQkJCSovCi0vKgkJCQkJCQkJCSovCi0vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLwogCS5hbGlnbgk1CiAuZ2xvYmwgcmVzZXRfY3B1CisKKwkvKiBGSVhNRTogdGhpcyBjb2RlIGlzIFBYQTI1MCBzcGVjaWZpYy4gSG93IGlzIHRoaXMgaGFuZGxlZCBvbiAgICAgICovCisJLyogICAgICAgIG90aGVyIFhTY2FsZSBwcm9jZXNzb3JzPyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworCiByZXNldF9jcHU6CisKIAkvKiBXZSBzZXQgT1dFOldNRSAod2F0Y2hkb2cgZW5hYmxlKSBhbmQgd2FpdCB1bnRpbCB0aW1lb3V0IGhhcHBlbnMgICovCiAKIAlsZHIJcjAsIE9TVElNRVJfQkFTRQpAQCAtNDU2LDMgKzQ3MSw0IEBACiByZXNldF9lbmRsZXNzOgogCiAJYglyZXNldF9lbmRsZXNzCisK