ZGlmZiAtLWdpdCBhL3N5cy9wbGF5ZXIvZmFvLmggYi9zeXMvcGxheWVyL2Zhby5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNjMDE2YTQKLS0tIC9kZXYvbnVsbAorKysgYi9zeXMvcGxheWVyL2Zhby5oCkBAIC0wLDAgKzEsNDcgQEAKKy8vIE1vcmdlbkdyYXVlbiBNVURsaWIKKy8vCisKKyNpZm5kZWYgX19QTEFZRVJfRkFPX0hfXworI2RlZmluZSBfX1BMQVlFUl9GQU9fSF9fCisKKyNkZWZpbmUgRkFPX01BU1RFUiAgICAgICIvZC9lYmVuZS9taXJpbC9mcmF0ZXJuaXRhcy9zZWN1cmUvZmFvbWFzdGVyIiAvLyBkaWUgemVudHJhbGUgc3RlbGxlIGRlcyBmYW8KKworLy8gZGllIExpc3RlIGRlciB2ZXJm/GdiYXJlbiBQb3J0YWxlIGZ1ZXIgZGFzIGVyc3RlIHBvcnRhbGdlc2NoZW5rCisjZGVmaW5lIEZBT19QT1JUQUxTMV9MSVNUICh7MiwzLDQsNSw2LDcsOCw5LDEwLDEzLDE0LDE1LDE2LDE5LDIwLDIxLDI1LDI5LDMzfSkKKy8vIGRpZSBMaXN0ZSBkZXIgdmVyZvxnYmFyZW4gUG9ydGFsZSBmdWVyIGRhcyB6d2VpdGUgcG9ydGFsZ2VzY2hlbmsKKyNkZWZpbmUgRkFPX1BPUlRBTFMyX0xJU1QgRkFPX1BPUlRBTFMxX0xJU1QrKHsxLDExLDEyLDE3LDE4LDI0LDI2LDI3LDI4LDMxLDM0LDM2LDM3LDM4fSkKKy8vIGRpZSBhbnphaGwgZGVyIHp1IHdhZWhsZW5kZW4gcG9ydGFsZSBmdWVyIGRhcyBlcnN0ZSBwb3J0YWxnZXNjaGVuaworI2RlZmluZSBGQU9fUE9SVEFMUzFfTlVNICA1CisvLyBkaWUgYW56YWhsIGRlciB6dSB3YWVobGVuZGVuIHBvcnRhbGUgZnVlciBkYXMgendlaXRlIHBvcnRhbGdlc2NoZW5rCisjZGVmaW5lIEZBT19QT1JUQUxTMl9OVU0gIDUKKworLy8gcHJvcGVydGllcworI2RlZmluZSBQX0ZBTyAgICAgICAgICAgImZyYXRlcm5pdGFzZG9ub2FyY2htYWdvcnVtIiAgLy8gZW50aGFlbHQgZGllIGRvbmkKKyNkZWZpbmUgUF9GQU9fUE9SVEFMUyAgIFBfRkFPKyJQT1JUQUxTIiAvLyBlbnRoYWVsdCBkaWUgZGVtIHNwaWVsZXIgdWViZXJnZWJlbmVuIHBvcnRhbGUKKworLy8gYml0bWFza3MKKyNkZWZpbmUgRkFPX1RJVExFICAgMHgwMQorI2RlZmluZSBGQU9fUE9SVEFMUzEgICAgMHgwMgorI2RlZmluZSBGQU9fUE9SVEFMUzIgIDB4MDQKKyNkZWZpbmUgRkFPX1NFRVJfUE9SVEFMIDB4MDgKKyNkZWZpbmUgRkFPX01FTUJFUiAweDEwCisKKy8vIGhpbGZyZWljaGUgbWFrcm9zCisjZGVmaW5lIEZBT19IQVNfVElUTEVfR0lGVCh4KSAgICh4IT0wICYmIHF1ZXJ5X29uY2VfaW50ZXJhY3RpdmUoeCkgXAorICAgICYmICgoaW50KXgtPlF1ZXJ5UHJvcChQX0ZBTykmRkFPX1RJVExFKSE9MCkKKyNkZWZpbmUgRkFPX0hBU19QT1JUQUxTMV9HSUZUKHgpICAoeCE9MCAmJiBxdWVyeV9vbmNlX2ludGVyYWN0aXZlKHgpIFwKKyAgICAmJiAoKGludCl4LT5RdWVyeVByb3AoUF9GQU8pJkZBT19QT1JUQUxTMSkhPTApCisjZGVmaW5lIEZBT19IQVNfUE9SVEFMUzJfR0lGVCh4KSAgKHghPTAgJiYgcXVlcnlfb25jZV9pbnRlcmFjdGl2ZSh4KSBcCisgICAgJiYgKChpbnQpeC0+UXVlcnlQcm9wKFBfRkFPKSZGQU9fUE9SVEFMUzIpIT0wKQorI2RlZmluZSBGQU9fSEFTX1BPUlRBTFNfR0lGVCh4KSAgIChGQU9fSEFTX1BPUlRBTFMxX0dJRlQoeCkgfHwgRkFPX0hBU19QT1JUQUxTMl9HSUZUKHgpKQorI2RlZmluZSBGQU9fTUFZX1VTRV9QT1JUQUwoeCxwKSAgIChpbnRwKHApICYmICgoRkFPX0hBU19QT1JUQUxTMV9HSUZUKHgpICYmIFwKKyAgICAgICAgbWVtYmVyKEZBT19QT1JUQUxTMV9MSVNULHApIT0tMSApfHwoRkFPX0hBU19QT1JUQUxTMl9HSUZUKHgpICYmIFwKKyAgICAgICAgbWVtYmVyKEZBT19QT1JUQUxTMl9MSVNULHApIT0tMSkgKSAmJiBcCisgICAgKHBvaW50ZXJwKChpbnQqKXgtPlF1ZXJ5UHJvcChQX0ZBT19QT1JUQUxTKSkgXAorICAgICAmJiBtZW1iZXIoKGludCopeC0+UXVlcnlQcm9wKFBfRkFPX1BPUlRBTFMpLHApIT0tMSkgKQorI2RlZmluZSBGQU9fSEFTX1NFRVJfUE9SVEFMX0dJRlQoeCkgICAgICh4IT0wICYmIHF1ZXJ5X29uY2VfaW50ZXJhY3RpdmUoeCkgXAorICAgICYmICgoaW50KXgtPlF1ZXJ5UHJvcChQX0ZBTykmRkFPX1NFRVJfUE9SVEFMKSE9MCkKKyNkZWZpbmUgRkFPX0lTX01FTUJFUih4KSAoeCE9MCAmJiBxdWVyeV9vbmNlX2ludGVyYWN0aXZlKHgpIFwKKyAgICAmJiAoKGludCl4LT5RdWVyeVByb3AoUF9GQU8pJkZBT19NRU1CRVIpIT0wKQorI2VuZGlmIC8vIF9fUExBWUVSX0ZBT19IX18KKwo=