ZGlmZiAtLWdpdCBhL2xpYmMvQW5kcm9pZC5tayBiL2xpYmMvQW5kcm9pZC5tawppbmRleCBhNDAzMTQ2Li42YzUzNWRjIDEwMDY0NAotLS0gYS9saWJjL0FuZHJvaWQubWsKKysrIGIvbGliYy9BbmRyb2lkLm1rCkBAIC00NjUsNiArNDY1LDEzIEBACiAgIGxpYmNfY29tbW9uX2NmbGFncyArPSAtRERFQlVHCiBlbmRpZgogCisjIFRvIGN1c3RvbWl6ZSBkbG1hbGxvYydzIGFsaWdubWVudCwgc2V0IEJPQVJEX01BTExPQ19BTElHTk1FTlQgaW4KKyMgdGhlIGFwcHJvcHJpYXRlIEJvYXJkQ29uZmlnLm1rIGZpbGUuCisjCitpZm5lcSAoJChCT0FSRF9NQUxMT0NfQUxJR05NRU5UKSwpCisgIGxpYmNfY29tbW9uX2NmbGFncyArPSAtRE1BTExPQ19BTElHTk1FTlQ9JChCT0FSRF9NQUxMT0NfQUxJR05NRU5UKQorZW5kaWYKKwogaWZlcSAoJChUQVJHRVRfQVJDSCksYXJtKQogICBsaWJjX2NvbW1vbl9jZmxhZ3MgKz0gLWZzdHJpY3QtYWxpYXNpbmcKICAgbGliY19jcnRfdGFyZ2V0X2NmbGFncyA6PSAtbXRodW1iLWludGVyd29yawpAQCAtNDc4LDYgKzQ4NSwxNCBAQAogICBpZmVxICgkKEFSQ0hfQVJNX0hBVkVfVExTX1JFR0lTVEVSKSx0cnVlKQogICAgIGxpYmNfY29tbW9uX2NmbGFncyArPSAtREhBVkVfQVJNX1RMU19SRUdJU1RFUgogICBlbmRpZgorICAjCisgICMgRGVmaW5lIEhBVkVfMzJfQllURV9DQUNIRV9MSU5FUyB0byBpbmRpY2F0ZSB0byBDCisgICMgbGlicmFyeSBpdCBzaG91bGQgdXNlIHRvIDMyLWJ5dGUgdmVyc2lvbiBvZiBtZW1jcHksIGFuZCBub3QKKyAgIyB0aGUgNjQtYnl0ZSB2ZXJzaW9uLgorICAjCisgIGlmZXEgKCQoQVJDSF9BUk1fSEFWRV8zMl9CWVRFX0NBQ0hFX0xJTkVTKSx0cnVlKQorICAgIGxpYmNfY29tbW9uX2NmbGFncyArPSAtREhBVkVfMzJfQllURV9DQUNIRV9MSU5FCisgIGVuZGlmCiAgIGlmZXEgKCQoQVJDSF9BUk1fVVNFX05PTl9ORU9OX01FTUNQWSksdHJ1ZSkKICAgICBsaWJjX2NvbW1vbl9jZmxhZ3MgKz0gLURBUkNIX0FSTV9VU0VfTk9OX05FT05fTUVNQ1BZCiAgIGVuZGlmCmRpZmYgLS1naXQgYS9saWJjL1NZU0NBTExTLlRYVCBiL2xpYmMvU1lTQ0FMTFMuVFhUCmluZGV4IDE5MjNlYTAuLjUwNGEwNTAgMTAwNjQ0Ci0tLSBhL2xpYmMvU1lTQ0FMTFMuVFhUCisrKyBiL2xpYmMvU1lTQ0FMTFMuVFhUCkBAIC0yMiwxOCArMjIsMTggQEAKICMgICAgICAgIGFzc2VtYmxlciB0ZW1wbGF0ZSBmb3IgdGhlIHN5c2NhbGw7IGl0J3MgdXAgdG8gdGhlIGJpb25pYyBpbXBsZW1lbnRhdGlvbiB0byBwcm92aWRlCiAjICAgICAgICBhIHJlbGV2YW50IEMgc3R1YgogIwotIyAgICAgIC0gYWRkaXRpb25hbGx5LCBpZiB0aGUgc3lzY2FsbCBudW1iZXIgaXMgZGlmZmVyZW50IGFtb3VuZyBBUk0sIGFuZCB4ODYsIHVzZToKLSMgICAgICAgIHJldHVybl90eXBlIGZ1bmNuYW1lWzpzeXNjYWxsX25hbWVdKHBhcmFtZXRlcnMpIGFybV9udW1iZXIseDg2X251bWJlcgorIyAgICAgIC0gYWRkaXRpb25hbGx5LCBpZiB0aGUgc3lzY2FsbCBudW1iZXIgaXMgZGlmZmVyZW50IGFtb3VuZyBBUk0sIGFuZCB4ODYsIE1JUFMgdXNlOgorIyAgICAgICAgcmV0dXJuX3R5cGUgZnVuY25hbWVbOnN5c2NhbGxfbmFtZV0ocGFyYW1ldGVycykgYXJtX251bWJlcix4ODZfbnVtYmVyLCBtaXBzX251bWJlcgogIwogIyB0aGUgZmlsZSBpcyBwcm9jZXNzZWQgYnkgYSBweXRob24gc2NyaXB0IG5hbWVkIGdlbnN5c2NhbGxzLnB5CiAjCiAKICMgcHJvY2VzcyBtYW5hZ2VtZW50Ci12b2lkICAgIF9leGl0OmV4aXRfZ3JvdXAgKGludCkgICAgICAyNDgsMjUyCit2b2lkICAgIF9leGl0OmV4aXRfZ3JvdXAgKGludCkgICAgICAyNDgsMjUyLDI0Ngogdm9pZCAgICBfZXhpdF90aHJlYWQ6ZXhpdCAoaW50KSAgICAgMQogcGlkX3QgICBfX2Zvcms6Zm9yayAodm9pZCkgICAgICAgICAgIDIKLXBpZF90ICAgX3dhaXRwaWQ6d2FpdHBpZCAocGlkX3QsIGludCosIGludCwgc3RydWN0IHJ1c2FnZSopICAgLTEsNwotaW50ICAgICBfX3dhaXRpZDp3YWl0aWQoaW50LCBwaWRfdCwgc3RydWN0IHNpZ2luZm9fdCosIGludCx2b2lkKikgICAgICAgICAgMjgwLDI4NAorcGlkX3QgICBfd2FpdHBpZDp3YWl0cGlkIChwaWRfdCwgaW50KiwgaW50LCBzdHJ1Y3QgcnVzYWdlKikgICAtMSw3LDcKK2ludCAgICAgX193YWl0aWQ6d2FpdGlkKGludCwgcGlkX3QsIHN0cnVjdCBzaWdpbmZvX3QqLCBpbnQsdm9pZCopICAgICAgICAgIDI4MCwyODQsMjc4CiAKICMgTk9URTogdGhpcyBzeXN0ZW0gY2FsbCBpcyBuZXZlciBjYWxsZWQgZGlyZWN0bHksIGJ1dCB3ZSBsaXN0IGl0IHRoZXJlCiAjICAgICAgIHRvIGhhdmUgX19OUl9jbG9uZSBwcm9wZXJseSBkZWZpbmVkLgpAQCAtNDIsNzIgKzQyLDg3IEBACiAKIGludCAgICAgZXhlY3ZlIChjb25zdCBjaGFyKiwgY2hhciogY29uc3QqLCBjaGFyKiBjb25zdCopICAxMQogCi1pbnQgICAgIF9fc2V0dWlkOnNldHVpZDMyICh1aWRfdCkgICAgMjEzCi11aWRfdCAgIGdldHVpZDpnZXR1aWQzMiAoKSAgICAgICAgIDE5OQotZ2lkX3QgICBnZXRnaWQ6Z2V0Z2lkMzIgKCkgICAgICAgICAyMDAKLXVpZF90ICAgZ2V0ZXVpZDpnZXRldWlkMzIgKCkgICAgICAgMjAxCi1naWRfdCAgIGdldGVnaWQ6Z2V0ZWdpZDMyICgpICAgICAgIDIwMgotdWlkX3QgICBnZXRyZXN1aWQ6Z2V0cmVzdWlkMzIgKHVpZF90ICpydWlkLCB1aWRfdCAqZXVpZCwgdWlkX3QgKnN1aWQpICAgMjA5Ci1naWRfdCAgIGdldHJlc2dpZDpnZXRyZXNnaWQzMiAoZ2lkX3QgKnJnaWQsIGdpZF90ICplZ2lkLCBnaWRfdCAqc2dpZCkgICAyMTEKLXBpZF90ICAgZ2V0dGlkKCkgICAgICAgICAgICAgICAgICAgMjI0Ci1zc2l6ZV90IHJlYWRhaGVhZChpbnQsIG9mZjY0X3QsIHNpemVfdCkgICAgIDIyNQotaW50ICAgICBnZXRncm91cHM6Z2V0Z3JvdXBzMzIoaW50LCBnaWRfdCAqKSAgICAyMDUKK2ludCAgICAgX19zZXR1aWQ6c2V0dWlkMzIgKHVpZF90KSAgICAyMTMsMjEzLC0xCitpbnQgICAgIF9fc2V0dWlkOnNldHVpZCAodWlkX3QpICAgLTEsLTEsMjMKK3VpZF90ICAgZ2V0dWlkOmdldHVpZDMyICgpICAgICAgICAgMTk5LDE5OSwtMQordWlkX3QgICBnZXR1aWQ6Z2V0dWlkICgpICAgICAgICAgICAtMSwtMSwyNAorZ2lkX3QgICBnZXRnaWQ6Z2V0Z2lkMzIgKCkgICAgICAgICAyMDAsMjAwLC0xCitnaWRfdCAgIGdldGdpZDpnZXRnaWQgKCkgICAgICAgICAgIC0xLC0xLDQ3Cit1aWRfdCAgIGdldGV1aWQ6Z2V0ZXVpZDMyICgpICAgICAgIDIwMSwyMDEsLTEKK3VpZF90ICAgZ2V0ZXVpZDpnZXRldWlkICgpICAgICAgICAgLTEsLTEsNDkKK2dpZF90ICAgZ2V0ZWdpZDpnZXRlZ2lkMzIgKCkgICAgICAgMjAyLDIwMiwtMQorZ2lkX3QgICBnZXRlZ2lkOmdldGVnaWQgKCkgICAgICAgICAtMSwtMSw1MAordWlkX3QgICBnZXRyZXN1aWQ6Z2V0cmVzdWlkMzIgKHVpZF90ICpydWlkLCB1aWRfdCAqZXVpZCwgdWlkX3QgKnN1aWQpICAgMjA5LDIwOSwtMQordWlkX3QgICBnZXRyZXN1aWQ6Z2V0cmVzdWlkICh1aWRfdCAqcnVpZCwgdWlkX3QgKmV1aWQsIHVpZF90ICpzdWlkKSAgICAgLTEsLTEsMTg2CitnaWRfdCAgIGdldHJlc2dpZDpnZXRyZXNnaWQzMiAoZ2lkX3QgKnJnaWQsIGdpZF90ICplZ2lkLCBnaWRfdCAqc2dpZCkgICAyMTEsMjExLC0xCitnaWRfdCAgIGdldHJlc2dpZDpnZXRyZXNnaWQgKGdpZF90ICpyZ2lkLCBnaWRfdCAqZWdpZCwgZ2lkX3QgKnNnaWQpICAgICAtMSwtMSwxOTEKK3BpZF90ICAgZ2V0dGlkKCkgICAgICAgICAgICAgICAgICAgMjI0LDIyNCwyMjIKK3NzaXplX3QgcmVhZGFoZWFkKGludCwgb2ZmNjRfdCwgc2l6ZV90KSAgICAgMjI1LDIyNSwyMjMKK2ludCAgICAgZ2V0Z3JvdXBzOmdldGdyb3VwczMyKGludCwgZ2lkX3QgKikgICAgMjA1LDIwNSwtMQoraW50ICAgICBnZXRncm91cHM6Z2V0Z3JvdXBzKGludCwgZ2lkX3QgKikgICAgICAtMSwtMSw4MAogcGlkX3QgICBnZXRwZ2lkKHBpZF90KSAgICAgICAgICAgICAxMzIKIHBpZF90ICAgZ2V0cHBpZCgpICAgICAgICAgICAgICAgICAgNjQKIHBpZF90ICAgc2V0c2lkKCkgICAgICAgICAgICAgICAgICAgNjYKLWludCAgICAgc2V0Z2lkOnNldGdpZDMyKGdpZF90KSAgICAgMjE0CitpbnQgICAgIHNldGdpZDpzZXRnaWQzMihnaWRfdCkgICAgIDIxNCwyMTQsLTEKK2ludCAgICAgc2V0Z2lkOnNldGdpZChnaWRfdCkgICAgICAgLTEsLTEsNDYKIGludCAgICAgc2V0ZXVpZDpzZXRldWlkMzIodWlkX3QpICAgc3R1YgotaW50ICAgICBfX3NldHJldWlkOnNldHJldWlkMzIodWlkX3QsIHVpZF90KSAgIDIwMwotaW50ICAgICBfX3NldHJlc3VpZDpzZXRyZXN1aWQzMih1aWRfdCwgdWlkX3QsIHVpZF90KSAgIDIwOAotaW50ICAgICBzZXRyZXNnaWQ6c2V0cmVzZ2lkMzIoZ2lkX3QsIGdpZF90LCBnaWRfdCkgICAyMTAKK2ludCAgICAgX19zZXRyZXVpZDpzZXRyZXVpZDMyKHVpZF90LCB1aWRfdCkgICAyMDMsMjAzLC0xCitpbnQgICAgIF9fc2V0cmV1aWQ6c2V0cmV1aWQodWlkX3QsIHVpZF90KSAgICAgLTEsLTEsNzAKK2ludCAgICAgX19zZXRyZXN1aWQ6c2V0cmVzdWlkMzIodWlkX3QsIHVpZF90LCB1aWRfdCkgICAyMDgsMjA4LC0xCitpbnQgICAgIF9fc2V0cmVzdWlkOnNldHJlc3VpZCh1aWRfdCwgdWlkX3QsIHVpZF90KSAgICAgLTEsLTEsMTg1CitpbnQgICAgIHNldHJlc2dpZDpzZXRyZXNnaWQzMihnaWRfdCwgZ2lkX3QsIGdpZF90KSAgIDIxMCwyMTAsLTEKK2ludCAgICAgc2V0cmVzZ2lkOnNldHJlc2dpZChnaWRfdCwgZ2lkX3QsIGdpZF90KSAgICAgLTEsLTEsMTkwCiB2b2lkKiAgIF9fYnJrOmJyayh2b2lkKikgICAgICAgICAgIDQ1CiAjIHNlZSBjb21tZW50cyBpbiBhcmNoLWFybS9iaW9uaWMva2lsbC5TIHRvIHVuZGVyc3RhbmQgd2h5IHdlIGRvbid0IGdlbmVyYXRlIGFuIEFSTSBzdHViIGZvciBraWxsL3RraWxsCi1pbnQgICAgIGtpbGwocGlkX3QsIGludCkgICAgICAgICAgIC0xLDM3Ci1pbnQgICAgIHRraWxsKHBpZF90IHRpZCwgaW50IHNpZykgIC0xLDIzOAotaW50ICAgICB0Z2tpbGwocGlkX3QgdGdpZCwgcGlkX3QgdGlkLCBpbnQgc2lnKSAgLTEsMjcwCitpbnQgICAgIGtpbGwocGlkX3QsIGludCkgICAgICAgICAgIC0xLDM3LDM3CitpbnQgICAgIHRraWxsKHBpZF90IHRpZCwgaW50IHNpZykgIC0xLDIzOCwyMzYKK2ludCAgICAgdGdraWxsKHBpZF90IHRnaWQsIHBpZF90IHRpZCwgaW50IHNpZykgIC0xLDI3MCwyNjYKIGludCAgICAgX19wdHJhY2U6cHRyYWNlKGludCByZXF1ZXN0LCBpbnQgcGlkLCB2b2lkKiBhZGRyLCB2b2lkKiBkYXRhKSAgMjYKLWludCAgICAgX19zZXRfdGhyZWFkX2FyZWE6c2V0X3RocmVhZF9hcmVhKHZvaWQqICB1c2VyX2Rlc2MpICAtMSwyNDMKK2ludCAgICAgX19zZXRfdGhyZWFkX2FyZWE6c2V0X3RocmVhZF9hcmVhKHZvaWQqICB1c2VyX2Rlc2MpICAtMSwyNDMsMjgzCiBpbnQgICAgIF9fZ2V0cHJpb3JpdHk6Z2V0cHJpb3JpdHkoaW50LCBpbnQpICA5NgogaW50ICAgICBzZXRwcmlvcml0eShpbnQsIGludCwgaW50KSAgIDk3CiBpbnQgICAgIHNldHJsaW1pdChpbnQgcmVzb3VyY2UsIGNvbnN0IHN0cnVjdCBybGltaXQgKnJscCkgIDc1Ci1pbnQgICAgIGdldHJsaW1pdDp1Z2V0cmxpbWl0KGludCByZXNvdXJjZSwgc3RydWN0IHJsaW1pdCAqcmxwKSAgMTkxCitpbnQgICAgIGdldHJsaW1pdDp1Z2V0cmxpbWl0KGludCByZXNvdXJjZSwgc3RydWN0IHJsaW1pdCAqcmxwKSAgMTkxLDE5MSwtMQoraW50ICAgICBnZXRybGltaXQ6Z2V0cmxpbWl0KGludCByZXNvdXJjZSwgc3RydWN0IHJsaW1pdCAqcmxwKSAgLTEsLTEsNzYKIGludCAgICAgZ2V0cnVzYWdlKGludCB3aG8sIHN0cnVjdCBydXNhZ2UqICByX3VzYWdlKSAgNzcKLWludCAgICAgc2V0Z3JvdXBzOnNldGdyb3VwczMyKGludCwgY29uc3QgZ2lkX3QgKikgICAyMDYKK2ludCAgICAgc2V0Z3JvdXBzOnNldGdyb3VwczMyKGludCwgY29uc3QgZ2lkX3QgKikgICAyMDYsMjA2LC0xCitpbnQgICAgIHNldGdyb3VwczpzZXRncm91cHMoaW50LCBjb25zdCBnaWRfdCAqKSAgICAgLTEsLTEsODEKIHBpZF90ICAgZ2V0cGdycCh2b2lkKSAgc3R1YgogaW50ICAgICBzZXRwZ2lkKHBpZF90LCBwaWRfdCkgIDU3Ci1waWRfdCAgIHZmb3JrKHZvaWQpICAxOTAsLTEsMTkwCi1pbnQgICAgIHNldHJlZ2lkOnNldHJlZ2lkMzIoZ2lkX3QsIGdpZF90KSAgMjA0CitwaWRfdCAgIHZmb3JrKHZvaWQpICAxOTAsLTEsLTEKK2ludCAgICAgc2V0cmVnaWQ6c2V0cmVnaWQzMihnaWRfdCwgZ2lkX3QpICAyMDQsMjA0LC0xCitpbnQgICAgIHNldHJlZ2lkOnNldHJlZ2lkKGdpZF90LCBnaWRfdCkgICAgLTEsLTEsNzEKIGludCAgICAgY2hyb290KGNvbnN0IGNoYXIgKikgIDYxCiAjIElNUE9SVEFOVDogRXZlbiB0aG91Z2ggPHN5cy9wcmN0bC5oPiBkZWNsYXJlcyBwcmN0bChpbnQsLi4uKSwgdGhlIHN5c2NhbGwgc3R1YiBtdXN0IHRha2UgNiBhcmd1bWVudHMKICMgICAgICAgICAgICB0byBtYXRjaCB0aGUga2VybmVsIGltcGxlbWVudGF0aW9uLgotaW50ICAgICBwcmN0bChpbnQgb3B0aW9uLCB1bnNpZ25lZCBpbnQgYXJnMiwgdW5zaWduZWQgaW50IGFyZzMsIHVuc2lnbmVkIGludCBhcmc0LCB1bnNpZ25lZCBpbnQgYXJnNSkgIDE3MgotaW50ICAgICBjYXBnZXQoY2FwX3VzZXJfaGVhZGVyX3QgaGVhZGVyLCBjYXBfdXNlcl9kYXRhX3QgZGF0YSkgMTg0Ci1pbnQgICAgIGNhcHNldChjYXBfdXNlcl9oZWFkZXJfdCBoZWFkZXIsIGNvbnN0IGNhcF91c2VyX2RhdGFfdCBkYXRhKSAxODUKLWludCAgICAgc2lnYWx0c3RhY2soY29uc3Qgc3RhY2tfdCosIHN0YWNrX3QqKSAxODYKK2ludCAgICAgcHJjdGwoaW50IG9wdGlvbiwgdW5zaWduZWQgaW50IGFyZzIsIHVuc2lnbmVkIGludCBhcmczLCB1bnNpZ25lZCBpbnQgYXJnNCwgdW5zaWduZWQgaW50IGFyZzUpICAxNzIsMTcyLDE5MgoraW50ICAgICBjYXBnZXQoY2FwX3VzZXJfaGVhZGVyX3QgaGVhZGVyLCBjYXBfdXNlcl9kYXRhX3QgZGF0YSkgMTg0LDE4NCwyMDQKK2ludCAgICAgY2Fwc2V0KGNhcF91c2VyX2hlYWRlcl90IGhlYWRlciwgY29uc3QgY2FwX3VzZXJfZGF0YV90IGRhdGEpIDE4NSwxODUsMjA1CitpbnQgICAgIHNpZ2FsdHN0YWNrKGNvbnN0IHN0YWNrX3QqLCBzdGFja190KikgMTg2LDE4NiwyMDYKIGludCAgICAgYWNjdChjb25zdCBjaGFyKiAgZmlsZXBhdGgpICA1MQogCiAjIGZpbGUgZGVzY3JpcHRvcnMKIHNzaXplX3QgICAgIHJlYWQgKGludCwgdm9pZCosIHNpemVfdCkgICAgICAgIDMKIHNzaXplX3QgICAgIHdyaXRlIChpbnQsIGNvbnN0IHZvaWQqLCBzaXplX3QpICAgICAgIDQKLXNzaXplX3QgICAgIHByZWFkNjQgKGludCwgdm9pZCAqLCBzaXplX3QsIG9mZjY0X3QpIDE4MAotc3NpemVfdCAgICAgcHdyaXRlNjQgKGludCwgdm9pZCAqLCBzaXplX3QsIG9mZjY0X3QpIDE4MQorc3NpemVfdCAgICAgcHJlYWQ2NCAoaW50LCB2b2lkICosIHNpemVfdCwgb2ZmNjRfdCkgMTgwLDE4MCwyMDAKK3NzaXplX3QgICAgIHB3cml0ZTY0IChpbnQsIHZvaWQgKiwgc2l6ZV90LCBvZmY2NF90KSAxODEsMTgxLDIwMQogaW50ICAgICAgICAgX19vcGVuOm9wZW4gKGNvbnN0IGNoYXIqLCBpbnQsIG1vZGVfdCkgIDUKLWludCAgICAgICAgIF9fb3BlbmF0Om9wZW5hdCAoaW50LCBjb25zdCBjaGFyKiwgaW50LCBtb2RlX3QpICAzMjIsMjk1CitpbnQgICAgICAgICBfX29wZW5hdDpvcGVuYXQgKGludCwgY29uc3QgY2hhciosIGludCwgbW9kZV90KSAgMzIyLDI5NSwyODgKIGludCAgICAgICAgIGNsb3NlIChpbnQpICAgICAgICAgICAgICAgICAgICAgIDYKIGludCAgICAgICAgIGNyZWF0KGNvbnN0IGNoYXIqLCBtb2RlX3QpICAgICAgIHN0dWIKIG9mZl90ICAgICAgIGxzZWVrKGludCwgb2ZmX3QsIGludCkgICAgICAgICAgIDE5CiBpbnQgICAgICAgICBfX2xsc2VlazpfbGxzZWVrIChpbnQsIHVuc2lnbmVkIGxvbmcsIHVuc2lnbmVkIGxvbmcsIGxvZmZfdCosIGludCkgIDE0MAogcGlkX3QgICAgICAgZ2V0cGlkICgpICAgIDIwCiB2b2lkICogICAgICBtbWFwKHZvaWQgKiwgc2l6ZV90LCBpbnQsIGludCwgaW50LCBsb25nKSAgc3R1Ygotdm9pZCAqICAgICAgX19tbWFwMjptbWFwMih2b2lkKiwgc2l6ZV90LCBpbnQsIGludCwgaW50LCBsb25nKSAgIDE5Mgordm9pZCAqICAgICAgX19tbWFwMjptbWFwMih2b2lkKiwgc2l6ZV90LCBpbnQsIGludCwgaW50LCBsb25nKSAgIDE5MiwxOTIsMjEwCiBpbnQgICAgICAgICBtdW5tYXAodm9pZCAqLCBzaXplX3QpICA5MQotdm9pZCAqICAgICAgbXJlbWFwKHZvaWQgKiwgc2l6ZV90LCBzaXplX3QsIHVuc2lnbmVkIGxvbmcpICAxNjMKK3ZvaWQgKiAgICAgIG1yZW1hcCh2b2lkICosIHNpemVfdCwgc2l6ZV90LCB1bnNpZ25lZCBsb25nKSAgMTYzLDE2MywxNjcKIGludCAgICAgICAgIG1zeW5jKGNvbnN0IHZvaWQgKiwgc2l6ZV90LCBpbnQpICAgIDE0NAogaW50ICAgICAgICAgbXByb3RlY3QoY29uc3Qgdm9pZCAqLCBzaXplX3QsIGludCkgIDEyNQotaW50ICAgICAgICAgbWFkdmlzZShjb25zdCB2b2lkICosIHNpemVfdCwgaW50KSAgMjIwLDIxOQotaW50ICAgICAgICAgbWxvY2soY29uc3Qgdm9pZCAqYWRkciwgc2l6ZV90IGxlbikgICAgMTUwCi1pbnQgICAgICAgICBtdW5sb2NrKGNvbnN0IHZvaWQgKmFkZHIsIHNpemVfdCBsZW4pICAgMTUxCi1pbnQgICAgICAgICBtaW5jb3JlKHZvaWQqICBzdGFydCwgc2l6ZV90ICBsZW5ndGgsIHVuc2lnbmVkIGNoYXIqICB2ZWMpICAgMjE5LDIxOAoraW50ICAgICAgICAgbWFkdmlzZShjb25zdCB2b2lkICosIHNpemVfdCwgaW50KSAgMjIwLDIxOSwyMTgKK2ludCAgICAgICAgIG1sb2NrKGNvbnN0IHZvaWQgKmFkZHIsIHNpemVfdCBsZW4pICAgIDE1MCwxNTAsMTU0CitpbnQgICAgICAgICBtdW5sb2NrKGNvbnN0IHZvaWQgKmFkZHIsIHNpemVfdCBsZW4pICAgMTUxLDE1MSwxNTUKK2ludCAgICAgICAgIG1pbmNvcmUodm9pZCogIHN0YXJ0LCBzaXplX3QgIGxlbmd0aCwgdW5zaWduZWQgY2hhciogIHZlYykgICAyMTksMjE4LDIxNwogaW50ICAgICAgICAgX19pb2N0bDppb2N0bChpbnQsIGludCwgdm9pZCAqKSAgNTQKIGludCAgICAgICAgIHJlYWR2KGludCwgY29uc3Qgc3RydWN0IGlvdmVjICosIGludCkgICAxNDUKIGludCAgICAgICAgIHdyaXRldihpbnQsIGNvbnN0IHN0cnVjdCBpb3ZlYyAqLCBpbnQpICAxNDYKQEAgLTExNSwxNDQgKzEzMCwxNDcgQEAKIGludCAgICAgICAgIGZsb2NrKGludCwgaW50KSAgIDE0MwogaW50ICAgICAgICAgZmNobW9kKGludCwgbW9kZV90KSAgOTQKIGludCAgICAgICAgIGR1cChpbnQpICA0MQotaW50ICAgICAgICAgcGlwZShpbnQgKikgIDQyLDQyCi1pbnQgICAgICAgICBwaXBlMihpbnQgKiwgaW50KSAzNTksMzMxCitpbnQgICAgICAgICBwaXBlKGludCAqKSAgNDIsNDIsLTEKK2ludCAgICAgICAgIHBpcGUyKGludCAqLCBpbnQpIDM1OSwzMzEsMzI4CiBpbnQgICAgICAgICBkdXAyKGludCwgaW50KSAgIDYzCiBpbnQgICAgICAgICBzZWxlY3Q6X25ld3NlbGVjdChpbnQsIHN0cnVjdCBmZF9zZXQgKiwgc3RydWN0IGZkX3NldCAqLCBzdHJ1Y3QgZmRfc2V0ICosIHN0cnVjdCB0aW1ldmFsICopICAxNDIKIGludCAgICAgICAgIGZ0cnVuY2F0ZShpbnQsIG9mZl90KSAgOTMKLWludCAgICAgICAgIGZ0cnVuY2F0ZTY0KGludCwgb2ZmNjRfdCkgMTk0Ci1pbnQgICAgICAgICBnZXRkZW50czpnZXRkZW50czY0KHVuc2lnbmVkIGludCwgc3RydWN0IGRpcmVudCAqLCB1bnNpZ25lZCBpbnQpICAgMjE3LDIyMAoraW50ICAgICAgICAgZnRydW5jYXRlNjQoaW50LCBvZmY2NF90KSAxOTQsMTk0LDIxMgoraW50ICAgICAgICAgZ2V0ZGVudHM6Z2V0ZGVudHM2NCh1bnNpZ25lZCBpbnQsIHN0cnVjdCBkaXJlbnQgKiwgdW5zaWduZWQgaW50KSAgIDIxNywyMjAsMjE5CiBpbnQgICAgICAgICBmc3luYyhpbnQpICAxMTgKLWludCAgICAgICAgIGZkYXRhc3luYyhpbnQpIDE0OAotaW50ICAgICAgICAgZmNob3duOmZjaG93bjMyKGludCwgdWlkX3QsIGdpZF90KSAgMjA3CitpbnQgICAgICAgICBmZGF0YXN5bmMoaW50KSAxNDgsMTQ4LDE1MgoraW50ICAgICAgICAgZmNob3duOmZjaG93bjMyKGludCwgdWlkX3QsIGdpZF90KSAgMjA3LDIwNywtMQoraW50ICAgICAgICAgZmNob3duOmZjaG93bihpbnQsIHVpZF90LCBnaWRfdCkgICAgLTEsLTEsOTUKIHZvaWQgICAgICAgIHN5bmModm9pZCkgIDM2Ci1pbnQgICAgICAgICBfX2ZjbnRsNjQ6ZmNudGw2NChpbnQsIGludCwgdm9pZCAqKSAgMjIxCi1pbnQgICAgICAgICBfX2ZzdGF0ZnM2NDpmc3RhdGZzNjQoaW50LCBzaXplX3QsIHN0cnVjdCBzdGF0ZnMgKikgIDI2NywyNjkKLXNzaXplX3QgICAgIHNlbmRmaWxlKGludCBvdXRfZmQsIGludCBpbl9mZCwgb2ZmX3QgKm9mZnNldCwgc2l6ZV90IGNvdW50KSAgMTg3Ci1pbnQgICAgICAgICBmc3RhdGF0OmZzdGF0YXQ2NChpbnQgZGlyZmQsIGNvbnN0IGNoYXIgKnBhdGgsIHN0cnVjdCBzdGF0ICpidWYsIGludCBmbGFncykgICAzMjcsMzAwCi1pbnQgICAgICAgICBta2RpcmF0KGludCBkaXJmZCwgY29uc3QgY2hhciAqcGF0aG5hbWUsIG1vZGVfdCBtb2RlKSAgMzIzLDI5NgotaW50ICAgICAgICAgZmNob3duYXQoaW50IGRpcmZkLCBjb25zdCBjaGFyICpwYXRoLCB1aWRfdCBvd25lciwgZ2lkX3QgZ3JvdXAsIGludCBmbGFncykgIDMyNSwyOTgKLWludCAgICAgICAgIGZjaG1vZGF0KGludCBkaXJmZCwgY29uc3QgY2hhciAqcGF0aCwgbW9kZV90IG1vZGUsIGludCBmbGFncykgIDMzMywzMDYKLWludCAgICAgICAgIHJlbmFtZWF0KGludCBvbGRkaXJmZCwgY29uc3QgY2hhciAqb2xkcGF0aCwgaW50IG5ld2RpcmZkLCBjb25zdCBjaGFyICpuZXdwYXRoKSAgMzI5LDMwMgotaW50ICAgICAgICAgZnNldHhhdHRyKGludCwgY29uc3QgY2hhciAqLCBjb25zdCB2b2lkICosIHNpemVfdCwgaW50KSAyMjgKLXNzaXplX3QgICAgIGZnZXR4YXR0cihpbnQsIGNvbnN0IGNoYXIgKiwgdm9pZCAqLCBzaXplX3QpIDIzMQotc3NpemVfdCAgICAgZmxpc3R4YXR0cihpbnQsIGNoYXIgKiwgc2l6ZV90KSAyMzQKLWludCAgICAgICAgIGZyZW1vdmV4YXR0cihpbnQsIGNvbnN0IGNoYXIgKikgMjM3CitpbnQgICAgICAgICBfX2ZjbnRsNjQ6ZmNudGw2NChpbnQsIGludCwgdm9pZCAqKSAgMjIxLDIyMSwyMjAKK2ludCAgICAgICAgIF9fZnN0YXRmczY0OmZzdGF0ZnM2NChpbnQsIHNpemVfdCwgc3RydWN0IHN0YXRmcyAqKSAgMjY3LDI2OSwyNTYKK3NzaXplX3QgICAgIHNlbmRmaWxlKGludCBvdXRfZmQsIGludCBpbl9mZCwgb2ZmX3QgKm9mZnNldCwgc2l6ZV90IGNvdW50KSAgMTg3LDE4NywyMDcKK2ludCAgICAgICAgIGZzdGF0YXQ6ZnN0YXRhdDY0KGludCBkaXJmZCwgY29uc3QgY2hhciAqcGF0aCwgc3RydWN0IHN0YXQgKmJ1ZiwgaW50IGZsYWdzKSAgIDMyNywzMDAsMjkzCitpbnQgICAgICAgICBta2RpcmF0KGludCBkaXJmZCwgY29uc3QgY2hhciAqcGF0aG5hbWUsIG1vZGVfdCBtb2RlKSAgMzIzLDI5NiwyODkKK2ludCAgICAgICAgIGZjaG93bmF0KGludCBkaXJmZCwgY29uc3QgY2hhciAqcGF0aCwgdWlkX3Qgb3duZXIsIGdpZF90IGdyb3VwLCBpbnQgZmxhZ3MpICAzMjUsMjk4LDI5MQoraW50ICAgICAgICAgZmNobW9kYXQoaW50IGRpcmZkLCBjb25zdCBjaGFyICpwYXRoLCBtb2RlX3QgbW9kZSwgaW50IGZsYWdzKSAgMzMzLDMwNiwyOTkKK2ludCAgICAgICAgIHJlbmFtZWF0KGludCBvbGRkaXJmZCwgY29uc3QgY2hhciAqb2xkcGF0aCwgaW50IG5ld2RpcmZkLCBjb25zdCBjaGFyICpuZXdwYXRoKSAgMzI5LDMwMiwyOTUKK2ludCAgICAgICAgIGZzZXR4YXR0cihpbnQsIGNvbnN0IGNoYXIgKiwgY29uc3Qgdm9pZCAqLCBzaXplX3QsIGludCkgMjI4LDIyOCwyMjYKK3NzaXplX3QgICAgIGZnZXR4YXR0cihpbnQsIGNvbnN0IGNoYXIgKiwgdm9pZCAqLCBzaXplX3QpIDIzMSwyMzEsMjI5Citzc2l6ZV90ICAgICBmbGlzdHhhdHRyKGludCwgY2hhciAqLCBzaXplX3QpIDIzNCwyMzQsMjMyCitpbnQgICAgICAgICBmcmVtb3ZleGF0dHIoaW50LCBjb25zdCBjaGFyICopIDIzNywyMzcsMjM1CiAKICMgZmlsZSBzeXN0ZW0KIGludCAgICAgbGluayAoY29uc3QgY2hhciosIGNvbnN0IGNoYXIqKSAgOQogaW50ICAgICB1bmxpbmsgKGNvbnN0IGNoYXIqKSAgICAgICAgICAgICAxMAotaW50ICAgICB1bmxpbmthdCAoaW50LCBjb25zdCBjaGFyICosIGludCkgICAzMjgsMzAxCitpbnQgICAgIHVubGlua2F0IChpbnQsIGNvbnN0IGNoYXIgKiwgaW50KSAgIDMyOCwzMDEsMjk0CiBpbnQgICAgIGNoZGlyIChjb25zdCBjaGFyKikgICAgICAgICAgICAgIDEyCiBpbnQgICAgIG1rbm9kIChjb25zdCBjaGFyKiwgbW9kZV90LCBkZXZfdCkgIDE0CiBpbnQgICAgIGNobW9kIChjb25zdCBjaGFyKixtb2RlX3QpICAgICAgICAgIDE1Ci1pbnQgICAgIGNob3duOmNob3duMzIoY29uc3QgY2hhciAqLCB1aWRfdCwgZ2lkX3QpICAyMTIKLWludCAgICAgbGNob3duOmxjaG93bjMyIChjb25zdCBjaGFyKiwgdWlkX3QsIGdpZF90KSAgMTk4CitpbnQgICAgIGNob3duOmNob3duMzIoY29uc3QgY2hhciAqLCB1aWRfdCwgZ2lkX3QpICAyMTIsMjEyLC0xCitpbnQgICAgIGNob3duOmNob3duKGNvbnN0IGNoYXIgKiwgdWlkX3QsIGdpZF90KSAgICAtMSwtMSwyMDIKK2ludCAgICAgbGNob3duOmxjaG93bjMyIChjb25zdCBjaGFyKiwgdWlkX3QsIGdpZF90KSAgMTk4LDE5OCwtMQoraW50ICAgICBsY2hvd246bGNob3duIChjb25zdCBjaGFyKiwgdWlkX3QsIGdpZF90KSAgLTEsLTEsMTYKIGludCAgICAgbW91bnQgKGNvbnN0IGNoYXIqLCBjb25zdCBjaGFyKiwgY29uc3QgY2hhciosIHVuc2lnbmVkIGxvbmcsIGNvbnN0IHZvaWQqKSAgMjEKIGludCAgICAgdW1vdW50KGNvbnN0IGNoYXIqKSAgc3R1YgogaW50ICAgICB1bW91bnQyIChjb25zdCBjaGFyKiwgaW50KSAgNTIKLWludCAgICAgZnN0YXQ6ZnN0YXQ2NChpbnQsIHN0cnVjdCBzdGF0KikgICAgMTk3Ci1pbnQgICAgIHN0YXQ6c3RhdDY0KGNvbnN0IGNoYXIgKiwgc3RydWN0IHN0YXQgKikgIDE5NQotaW50ICAgICBsc3RhdDpsc3RhdDY0KGNvbnN0IGNoYXIgKiwgc3RydWN0IHN0YXQgKikgIDE5NgoraW50ICAgICBmc3RhdDpmc3RhdDY0KGludCwgc3RydWN0IHN0YXQqKSAgICAxOTcsMTk3LDIxNQoraW50ICAgICBzdGF0OnN0YXQ2NChjb25zdCBjaGFyICosIHN0cnVjdCBzdGF0ICopICAxOTUsMTk1LDIxMworaW50ICAgICBsc3RhdDpsc3RhdDY0KGNvbnN0IGNoYXIgKiwgc3RydWN0IHN0YXQgKikgIDE5NiwxOTYsMjE0CiBpbnQgICAgIG1rZGlyKGNvbnN0IGNoYXIgKiwgbW9kZV90KSAzOQogaW50ICAgICByZWFkbGluayhjb25zdCBjaGFyICosIGNoYXIgKiwgc2l6ZV90KSAgODUKIGludCAgICAgcm1kaXIoY29uc3QgY2hhciAqKSAgNDAKIGludCAgICAgcmVuYW1lKGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqKSAgMzgKLWludCAgICAgX19nZXRjd2Q6Z2V0Y3dkKGNoYXIgKiBidWYsIHNpemVfdCBzaXplKSAgMTgzCitpbnQgICAgIF9fZ2V0Y3dkOmdldGN3ZChjaGFyICogYnVmLCBzaXplX3Qgc2l6ZSkgIDE4MywxODMsMjAzCiBpbnQgICAgIGFjY2Vzcyhjb25zdCBjaGFyICosIGludCkgIDMzCi1pbnQgICAgIGZhY2Nlc3NhdChpbnQsIGNvbnN0IGNoYXIgKiwgaW50LCBpbnQpICAzMzQsMzA3CitpbnQgICAgIGZhY2Nlc3NhdChpbnQsIGNvbnN0IGNoYXIgKiwgaW50LCBpbnQpICAzMzQsMzA3LDMwMAogaW50ICAgICBzeW1saW5rKGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqKSAgODMKIGludCAgICAgZmNoZGlyKGludCkgICAgMTMzCiBpbnQgICAgIHRydW5jYXRlKGNvbnN0IGNoYXIqLCBvZmZfdCkgICAgOTIKLWludCAgICAgc2V0eGF0dHIoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICosIGNvbnN0IHZvaWQgKiwgc2l6ZV90LCBpbnQpIDIyNgotaW50ICAgICBsc2V0eGF0dHIoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICosIGNvbnN0IHZvaWQgKiwgc2l6ZV90LCBpbnQpIDIyNwotc3NpemVfdCBnZXR4YXR0cihjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKiwgdm9pZCAqLCBzaXplX3QpIDIyOQotc3NpemVfdCBsZ2V0eGF0dHIoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICosIHZvaWQgKiwgc2l6ZV90KSAyMzAKLXNzaXplX3QgbGlzdHhhdHRyKGNvbnN0IGNoYXIgKiwgY2hhciAqLCBzaXplX3QpIDIzMgotc3NpemVfdCBsbGlzdHhhdHRyKGNvbnN0IGNoYXIgKiwgY2hhciAqLCBzaXplX3QpIDIzMwotaW50ICAgICByZW1vdmV4YXR0cihjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKikgMjM1Ci1pbnQgICAgIGxyZW1vdmV4YXR0cihjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKikgMjM2Ci1pbnQgICAgIF9fc3RhdGZzNjQ6c3RhdGZzNjQoY29uc3QgY2hhciAqLCBzaXplX3QsIHN0cnVjdCBzdGF0ZnMgKikgIDI2NiwyNjgKK2ludCAgICAgc2V0eGF0dHIoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICosIGNvbnN0IHZvaWQgKiwgc2l6ZV90LCBpbnQpIDIyNiwyMjYsMjI0CitpbnQgICAgIGxzZXR4YXR0cihjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKiwgY29uc3Qgdm9pZCAqLCBzaXplX3QsIGludCkgMjI3LDIyNywyMjUKK3NzaXplX3QgZ2V0eGF0dHIoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICosIHZvaWQgKiwgc2l6ZV90KSAyMjksMjI5LDIyNworc3NpemVfdCBsZ2V0eGF0dHIoY29uc3QgY2hhciAqLCBjb25zdCBjaGFyICosIHZvaWQgKiwgc2l6ZV90KSAyMzAsMjMwLDIyOAorc3NpemVfdCBsaXN0eGF0dHIoY29uc3QgY2hhciAqLCBjaGFyICosIHNpemVfdCkgMjMyLDIzMiwyMzAKK3NzaXplX3QgbGxpc3R4YXR0cihjb25zdCBjaGFyICosIGNoYXIgKiwgc2l6ZV90KSAyMzMsMjMzLDIzMQoraW50ICAgICByZW1vdmV4YXR0cihjb25zdCBjaGFyICosIGNvbnN0IGNoYXIgKikgMjM1LDIzNSwyMzMKK2ludCAgICAgbHJlbW92ZXhhdHRyKGNvbnN0IGNoYXIgKiwgY29uc3QgY2hhciAqKSAyMzYsMjM2LDIzNAoraW50ICAgICBfX3N0YXRmczY0OnN0YXRmczY0KGNvbnN0IGNoYXIgKiwgc2l6ZV90LCBzdHJ1Y3Qgc3RhdGZzICopICAyNjYsMjY4LDI1NQogCiAjIHRpbWUKIGludCAgICAgICAgICAgcGF1c2UgKCkgICAgICAgICAgICAgICAgICAgICAgIDI5CiBpbnQgICAgICAgICAgIGdldHRpbWVvZmRheShzdHJ1Y3QgdGltZXZhbCosIHN0cnVjdCB0aW1lem9uZSopICAgICAgIDc4CiBpbnQgICAgICAgICAgIHNldHRpbWVvZmRheShjb25zdCBzdHJ1Y3QgdGltZXZhbCosIGNvbnN0IHN0cnVjdCB0aW1lem9uZSopICAgNzkKIGNsb2NrX3QgICAgICAgdGltZXMoc3RydWN0IHRtcyAqKSAgICAgICA0MwotaW50ICAgICAgICAgICBuYW5vc2xlZXAoY29uc3Qgc3RydWN0IHRpbWVzcGVjICosIHN0cnVjdCB0aW1lc3BlYyAqKSAgIDE2MgotaW50ICAgICAgICAgICBjbG9ja19nZXR0aW1lKGNsb2NraWRfdCBjbGtfaWQsIHN0cnVjdCB0aW1lc3BlYyAqdHApICAgIDI2MywyNjUKLWludCAgICAgICAgICAgY2xvY2tfc2V0dGltZShjbG9ja2lkX3QgY2xrX2lkLCBjb25zdCBzdHJ1Y3QgdGltZXNwZWMgKnRwKSAgMjYyLDI2NAotaW50ICAgICAgICAgICBjbG9ja19nZXRyZXMoY2xvY2tpZF90IGNsa19pZCwgc3RydWN0IHRpbWVzcGVjICpyZXMpICAgMjY0LDI2NgotaW50ICAgICAgICAgICBjbG9ja19uYW5vc2xlZXAoY2xvY2tpZF90IGNsb2NrX2lkLCBpbnQgZmxhZ3MsIGNvbnN0IHN0cnVjdCB0aW1lc3BlYyAqcmVxLCBzdHJ1Y3QgdGltZXNwZWMgKnJlbSkgIDI2NSwyNjcKK2ludCAgICAgICAgICAgbmFub3NsZWVwKGNvbnN0IHN0cnVjdCB0aW1lc3BlYyAqLCBzdHJ1Y3QgdGltZXNwZWMgKikgICAxNjIsMTYyLDE2NgoraW50ICAgICAgICAgICBjbG9ja19nZXR0aW1lKGNsb2NraWRfdCBjbGtfaWQsIHN0cnVjdCB0aW1lc3BlYyAqdHApICAgIDI2MywyNjUsMjYzCitpbnQgICAgICAgICAgIGNsb2NrX3NldHRpbWUoY2xvY2tpZF90IGNsa19pZCwgY29uc3Qgc3RydWN0IHRpbWVzcGVjICp0cCkgIDI2MiwyNjQsMjYyCitpbnQgICAgICAgICAgIGNsb2NrX2dldHJlcyhjbG9ja2lkX3QgY2xrX2lkLCBzdHJ1Y3QgdGltZXNwZWMgKnJlcykgICAyNjQsMjY2LDI2NAoraW50ICAgICAgICAgICBjbG9ja19uYW5vc2xlZXAoY2xvY2tpZF90IGNsb2NrX2lkLCBpbnQgZmxhZ3MsIGNvbnN0IHN0cnVjdCB0aW1lc3BlYyAqcmVxLCBzdHJ1Y3QgdGltZXNwZWMgKnJlbSkgIDI2NSwyNjcsMjY1CiBpbnQgICAgICAgICAgIGdldGl0aW1lcihpbnQsIGNvbnN0IHN0cnVjdCBpdGltZXJ2YWwgKikgICAxMDUKIGludCAgICAgICAgICAgc2V0aXRpbWVyKGludCwgY29uc3Qgc3RydWN0IGl0aW1lcnZhbCAqLCBzdHJ1Y3QgaXRpbWVydmFsICopICAxMDQKLWludCAgICAgICAgICAgX190aW1lcl9jcmVhdGU6dGltZXJfY3JlYXRlKGNsb2NraWRfdCBjbG9ja2lkLCBzdHJ1Y3Qgc2lnZXZlbnQgKmV2cCwgdGltZXJfdCAqdGltZXJpZCkgICAgMjU3LDI1OQotaW50ICAgICAgICAgICBfX3RpbWVyX3NldHRpbWU6dGltZXJfc2V0dGltZSh0aW1lcl90LCBpbnQsIGNvbnN0IHN0cnVjdCBpdGltZXJzcGVjKiwgc3RydWN0IGl0aW1lcnNwZWMqKSAyNTgsMjYwCi1pbnQgICAgICAgICAgIF9fdGltZXJfZ2V0dGltZTp0aW1lcl9nZXR0aW1lKHRpbWVyX3QsIHN0cnVjdCBpdGltZXJzcGVjKikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDI1OSwyNjEKLWludCAgICAgICAgICAgX190aW1lcl9nZXRvdmVycnVuOnRpbWVyX2dldG92ZXJydW4odGltZXJfdCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMjYwLDI2MgotaW50ICAgICAgICAgICBfX3RpbWVyX2RlbGV0ZTp0aW1lcl9kZWxldGUodGltZXJfdCkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyNjEsMjYzCi1pbnQgICAgICAgICAgIHV0aW1lcyhjb25zdCBjaGFyKiwgY29uc3Qgc3RydWN0IHRpbWV2YWwgdHZwWzJdKSAgICAgICAgICAgICAgICAgICAgICAgICAgMjY5LCAyNzEKLWludCAgICAgICAgICAgdXRpbWVuc2F0KGludCwgY29uc3QgY2hhciAqLCBjb25zdCBzdHJ1Y3QgdGltZXNwZWMgdGltZXNbMl0sIGludCkgICAgICAgICAzNDgsIDMyMCwgMzIwCitpbnQgICAgICAgICAgIF9fdGltZXJfY3JlYXRlOnRpbWVyX2NyZWF0ZShjbG9ja2lkX3QgY2xvY2tpZCwgc3RydWN0IHNpZ2V2ZW50ICpldnAsIHRpbWVyX3QgKnRpbWVyaWQpICAgIDI1NywyNTksMjU3CitpbnQgICAgICAgICAgIF9fdGltZXJfc2V0dGltZTp0aW1lcl9zZXR0aW1lKHRpbWVyX3QsIGludCwgY29uc3Qgc3RydWN0IGl0aW1lcnNwZWMqLCBzdHJ1Y3QgaXRpbWVyc3BlYyopIDI1OCwyNjAsMjU4CitpbnQgICAgICAgICAgIF9fdGltZXJfZ2V0dGltZTp0aW1lcl9nZXR0aW1lKHRpbWVyX3QsIHN0cnVjdCBpdGltZXJzcGVjKikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDI1OSwyNjEsMjU5CitpbnQgICAgICAgICAgIF9fdGltZXJfZ2V0b3ZlcnJ1bjp0aW1lcl9nZXRvdmVycnVuKHRpbWVyX3QpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDI2MCwyNjIsMjYwCitpbnQgICAgICAgICAgIF9fdGltZXJfZGVsZXRlOnRpbWVyX2RlbGV0ZSh0aW1lcl90KSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDI2MSwyNjMsMjYxCitpbnQgICAgICAgICAgIHV0aW1lcyhjb25zdCBjaGFyKiwgY29uc3Qgc3RydWN0IHRpbWV2YWwgdHZwWzJdKSAgICAgICAgICAgICAgICAgICAgICAgICAgMjY5LDI3MSwyNjcKK2ludCAgICAgICAgICAgdXRpbWVuc2F0KGludCwgY29uc3QgY2hhciAqLCBjb25zdCBzdHJ1Y3QgdGltZXNwZWMgdGltZXNbMl0sIGludCkgICAgICAgICAzNDgsMzIwLDMxNgogCiAjIHNpZ25hbHMKIGludCAgICAgc2lnYWN0aW9uKGludCwgY29uc3Qgc3RydWN0IHNpZ2FjdGlvbiAqLCBzdHJ1Y3Qgc2lnYWN0aW9uICopICA2NwogaW50ICAgICBzaWdwcm9jbWFzayhpbnQsIGNvbnN0IHNpZ3NldF90ICosIHNpZ3NldF90ICopICAxMjYKIGludCAgICAgX19zaWdzdXNwZW5kOnNpZ3N1c3BlbmQoaW50IHVudXNlZDEsIGludCB1bnVzZWQyLCB1bnNpZ25lZCBtYXNrKSAgNzIKLWludCAgICAgX19ydF9zaWdhY3Rpb246cnRfc2lnYWN0aW9uIChpbnQgc2lnLCBjb25zdCBzdHJ1Y3Qgc2lnYWN0aW9uICphY3QsIHN0cnVjdCBzaWdhY3Rpb24gKm9hY3QsIHNpemVfdCBzaWdzZXRzaXplKSAgMTc0Ci1pbnQgICAgIF9fcnRfc2lncHJvY21hc2s6cnRfc2lncHJvY21hc2sgKGludCAgaG93LCBjb25zdCBzaWdzZXRfdCAqc2V0LCBzaWdzZXRfdCAqb3NldCwgc2l6ZV90IHNpZ3NldHNpemUpICAxNzUKLWludCAgICAgX19ydF9zaWd0aW1lZHdhaXQ6cnRfc2lndGltZWR3YWl0KGNvbnN0IHNpZ3NldF90ICpzZXQsIHN0cnVjdCBzaWdpbmZvX3QgICppbmZvLCBzdHJ1Y3QgdGltZXNwZWNfdCAgKnRpbWVvdXQsIHNpemVfdCAgc2lnc2V0X3NpemUpICAxNzcKK2ludCAgICAgX19ydF9zaWdhY3Rpb246cnRfc2lnYWN0aW9uIChpbnQgc2lnLCBjb25zdCBzdHJ1Y3Qgc2lnYWN0aW9uICphY3QsIHN0cnVjdCBzaWdhY3Rpb24gKm9hY3QsIHNpemVfdCBzaWdzZXRzaXplKSAgMTc0LDE3NCwxOTQKK2ludCAgICAgX19ydF9zaWdwcm9jbWFzazpydF9zaWdwcm9jbWFzayAoaW50ICBob3csIGNvbnN0IHNpZ3NldF90ICpzZXQsIHNpZ3NldF90ICpvc2V0LCBzaXplX3Qgc2lnc2V0c2l6ZSkgIDE3NSwxNzUsMTk1CitpbnQgICAgIF9fcnRfc2lndGltZWR3YWl0OnJ0X3NpZ3RpbWVkd2FpdChjb25zdCBzaWdzZXRfdCAqc2V0LCBzdHJ1Y3Qgc2lnaW5mb190ICAqaW5mbywgc3RydWN0IHRpbWVzcGVjX3QgICp0aW1lb3V0LCBzaXplX3QgIHNpZ3NldF9zaXplKSAgMTc3LDE3NywxOTcKIGludCAgICAgc2lncGVuZGluZyhzaWdzZXRfdCAqKSAgNzMKIAogIyBzb2NrZXRzCi1pbnQgICAgICAgICAgIHNvY2tldChpbnQsIGludCwgaW50KSAgICAgICAgICAgICAgMjgxLC0xCi1pbnQgICAgICAgICAgIHNvY2tldHBhaXIoaW50LCBpbnQsIGludCwgaW50KikgICAgMjg4LC0xCi1pbnQgICAgICAgICAgIGJpbmQoaW50LCBzdHJ1Y3Qgc29ja2FkZHIgKiwgaW50KSAgMjgyLC0xCi1pbnQgICAgICAgICAgIGNvbm5lY3QoaW50LCBzdHJ1Y3Qgc29ja2FkZHIgKiwgc29ja2xlbl90KSAgIDI4MywtMQotaW50ICAgICAgICAgICBsaXN0ZW4oaW50LCBpbnQpICAgICAgICAgICAgICAgICAgIDI4NCwtMQotaW50ICAgICAgICAgICBhY2NlcHQoaW50LCBzdHJ1Y3Qgc29ja2FkZHIgKiwgc29ja2xlbl90ICopICAyODUsLTEKLWludCAgICAgICAgICAgZ2V0c29ja25hbWUoaW50LCBzdHJ1Y3Qgc29ja2FkZHIgKiwgc29ja2xlbl90ICopICAyODYsLTEKLWludCAgICAgICAgICAgZ2V0cGVlcm5hbWUoaW50LCBzdHJ1Y3Qgc29ja2FkZHIgKiwgc29ja2xlbl90ICopICAyODcsLTEKLWludCAgICAgICAgICAgc2VuZHRvKGludCwgY29uc3Qgdm9pZCAqLCBzaXplX3QsIGludCwgY29uc3Qgc3RydWN0IHNvY2thZGRyICosIHNvY2tsZW5fdCkgIDI5MCwtMQotaW50ICAgICAgICAgICByZWN2ZnJvbShpbnQsIHZvaWQgKiwgc2l6ZV90LCB1bnNpZ25lZCBpbnQsIHN0cnVjdCBzb2NrYWRkciAqLCBzb2NrbGVuX3QgKikgIDI5MiwtMQotaW50ICAgICAgICAgICBzaHV0ZG93bihpbnQsIGludCkgIDI5MywtMQotaW50ICAgICAgICAgICBzZXRzb2Nrb3B0KGludCwgaW50LCBpbnQsIGNvbnN0IHZvaWQgKiwgc29ja2xlbl90KSAgMjk0LC0xCi1pbnQgICAgICAgICAgIGdldHNvY2tvcHQoaW50LCBpbnQsIGludCwgdm9pZCAqLCBzb2NrbGVuX3QgKikgICAgMjk1LC0xCi1pbnQgICAgICAgICAgIHNlbmRtc2coaW50LCBjb25zdCBzdHJ1Y3QgbXNnaGRyICosIHVuc2lnbmVkIGludCkgIDI5NiwtMQotaW50ICAgICAgICAgICByZWN2bXNnKGludCwgc3RydWN0IG1zZ2hkciAqLCB1bnNpZ25lZCBpbnQpICAgMjk3LC0xCitpbnQgICAgICAgICAgIHNvY2tldChpbnQsIGludCwgaW50KSAgICAgICAgICAgICAgMjgxLC0xLDE4MworaW50ICAgICAgICAgICBzb2NrZXRwYWlyKGludCwgaW50LCBpbnQsIGludCopICAgIDI4OCwtMSwxODQKK2ludCAgICAgICAgICAgYmluZChpbnQsIHN0cnVjdCBzb2NrYWRkciAqLCBpbnQpICAyODIsLTEsMTY5CitpbnQgICAgICAgICAgIGNvbm5lY3QoaW50LCBzdHJ1Y3Qgc29ja2FkZHIgKiwgc29ja2xlbl90KSAgIDI4MywtMSwxNzAKK2ludCAgICAgICAgICAgbGlzdGVuKGludCwgaW50KSAgICAgICAgICAgICAgICAgICAyODQsLTEsMTc0CitpbnQgICAgICAgICAgIGFjY2VwdChpbnQsIHN0cnVjdCBzb2NrYWRkciAqLCBzb2NrbGVuX3QgKikgIDI4NSwtMSwxNjgKK2ludCAgICAgICAgICAgZ2V0c29ja25hbWUoaW50LCBzdHJ1Y3Qgc29ja2FkZHIgKiwgc29ja2xlbl90ICopICAyODYsLTEsMTcyCitpbnQgICAgICAgICAgIGdldHBlZXJuYW1lKGludCwgc3RydWN0IHNvY2thZGRyICosIHNvY2tsZW5fdCAqKSAgMjg3LC0xLDE3MQoraW50ICAgICAgICAgICBzZW5kdG8oaW50LCBjb25zdCB2b2lkICosIHNpemVfdCwgaW50LCBjb25zdCBzdHJ1Y3Qgc29ja2FkZHIgKiwgc29ja2xlbl90KSAgMjkwLC0xLDE4MAoraW50ICAgICAgICAgICByZWN2ZnJvbShpbnQsIHZvaWQgKiwgc2l6ZV90LCB1bnNpZ25lZCBpbnQsIHN0cnVjdCBzb2NrYWRkciAqLCBzb2NrbGVuX3QgKikgIDI5MiwtMSwxNzYKK2ludCAgICAgICAgICAgc2h1dGRvd24oaW50LCBpbnQpICAyOTMsLTEsMTgyCitpbnQgICAgICAgICAgIHNldHNvY2tvcHQoaW50LCBpbnQsIGludCwgY29uc3Qgdm9pZCAqLCBzb2NrbGVuX3QpICAyOTQsLTEsMTgxCitpbnQgICAgICAgICAgIGdldHNvY2tvcHQoaW50LCBpbnQsIGludCwgdm9pZCAqLCBzb2NrbGVuX3QgKikgICAgMjk1LC0xLDE3MworaW50ICAgICAgICAgICBzZW5kbXNnKGludCwgY29uc3Qgc3RydWN0IG1zZ2hkciAqLCB1bnNpZ25lZCBpbnQpICAyOTYsLTEsMTc5CitpbnQgICAgICAgICAgIHJlY3Ztc2coaW50LCBzdHJ1Y3QgbXNnaGRyICosIHVuc2lnbmVkIGludCkgICAyOTcsLTEsMTc3CiAKICMgc29ja2V0cyBmb3IgeDg2LiBUaGVzZSBhcmUgZG9uZSBhcyBhbiAiaW5kZXhlZCIgY2FsbCB0byBzb2NrZXRjYWxsIHN5c2NhbGwuCi1pbnQgICAgICAgICAgIHNvY2tldDpzb2NrZXRjYWxsOjEgKGludCwgaW50LCBpbnQpIC0xLDEwMgotaW50ICAgICAgICAgICBiaW5kOnNvY2tldGNhbGw6MiAoaW50LCBzdHJ1Y3Qgc29ja2FkZHIgKiwgaW50KSAgLTEsMTAyCi1pbnQgICAgICAgICAgIGNvbm5lY3Q6c29ja2V0Y2FsbDozKGludCwgc3RydWN0IHNvY2thZGRyICosIHNvY2tsZW5fdCkgICAtMSwxMDIKLWludCAgICAgICAgICAgbGlzdGVuOnNvY2tldGNhbGw6NChpbnQsIGludCkgICAgICAgICAgICAgICAgICAgLTEsMTAyCi1pbnQgICAgICAgICAgIGFjY2VwdDpzb2NrZXRjYWxsOjUoaW50LCBzdHJ1Y3Qgc29ja2FkZHIgKiwgc29ja2xlbl90ICopICAtMSwxMDIKLWludCAgICAgICAgICAgZ2V0c29ja25hbWU6c29ja2V0Y2FsbDo2KGludCwgc3RydWN0IHNvY2thZGRyICosIHNvY2tsZW5fdCAqKSAgLTEsMTAyCi1pbnQgICAgICAgICAgIGdldHBlZXJuYW1lOnNvY2tldGNhbGw6NyhpbnQsIHN0cnVjdCBzb2NrYWRkciAqLCBzb2NrbGVuX3QgKikgIC0xLDEwMgotaW50ICAgICAgICAgICBzb2NrZXRwYWlyOnNvY2tldGNhbGw6OChpbnQsIGludCwgaW50LCBpbnQqKSAgICAtMSwxMDIKLWludCAgICAgICAgICAgc2VuZHRvOnNvY2tldGNhbGw6MTEoaW50LCBjb25zdCB2b2lkICosIHNpemVfdCwgaW50LCBjb25zdCBzdHJ1Y3Qgc29ja2FkZHIgKiwgc29ja2xlbl90KSAgLTEsMTAyCi1pbnQgICAgICAgICAgIHJlY3Zmcm9tOnNvY2tldGNhbGw6MTIoaW50LCB2b2lkICosIHNpemVfdCwgdW5zaWduZWQgaW50LCBzdHJ1Y3Qgc29ja2FkZHIgKiwgc29ja2xlbl90ICopICAtMSwxMDIKK2ludCAgICAgICAgICAgc29ja2V0OnNvY2tldGNhbGw6MSAoaW50LCBpbnQsIGludCkgLTEsMTAyLC0xCitpbnQgICAgICAgICAgIGJpbmQ6c29ja2V0Y2FsbDoyIChpbnQsIHN0cnVjdCBzb2NrYWRkciAqLCBpbnQpICAtMSwxMDIsLTEKK2ludCAgICAgICAgICAgY29ubmVjdDpzb2NrZXRjYWxsOjMoaW50LCBzdHJ1Y3Qgc29ja2FkZHIgKiwgc29ja2xlbl90KSAgIC0xLDEwMiwtMQoraW50ICAgICAgICAgICBsaXN0ZW46c29ja2V0Y2FsbDo0KGludCwgaW50KSAgICAgICAgICAgICAgICAgICAtMSwxMDIsLTEKK2ludCAgICAgICAgICAgYWNjZXB0OnNvY2tldGNhbGw6NShpbnQsIHN0cnVjdCBzb2NrYWRkciAqLCBzb2NrbGVuX3QgKikgIC0xLDEwMiwtMQoraW50ICAgICAgICAgICBnZXRzb2NrbmFtZTpzb2NrZXRjYWxsOjYoaW50LCBzdHJ1Y3Qgc29ja2FkZHIgKiwgc29ja2xlbl90ICopICAtMSwxMDIsLTEKK2ludCAgICAgICAgICAgZ2V0cGVlcm5hbWU6c29ja2V0Y2FsbDo3KGludCwgc3RydWN0IHNvY2thZGRyICosIHNvY2tsZW5fdCAqKSAgLTEsMTAyLC0xCitpbnQgICAgICAgICAgIHNvY2tldHBhaXI6c29ja2V0Y2FsbDo4KGludCwgaW50LCBpbnQsIGludCopICAgIC0xLDEwMiwtMQoraW50ICAgICAgICAgICBzZW5kdG86c29ja2V0Y2FsbDoxMShpbnQsIGNvbnN0IHZvaWQgKiwgc2l6ZV90LCBpbnQsIGNvbnN0IHN0cnVjdCBzb2NrYWRkciAqLCBzb2NrbGVuX3QpICAtMSwxMDIsLTEKK2ludCAgICAgICAgICAgcmVjdmZyb206c29ja2V0Y2FsbDoxMihpbnQsIHZvaWQgKiwgc2l6ZV90LCB1bnNpZ25lZCBpbnQsIHN0cnVjdCBzb2NrYWRkciAqLCBzb2NrbGVuX3QgKikgIC0xLDEwMiwtMQogaW50ICAgICAgICAgICBzaHV0ZG93bjpzb2NrZXRjYWxsOjEzKGludCwgaW50KSAgLTEsMTAyLC0xCi1pbnQgICAgICAgICAgIHNldHNvY2tvcHQ6c29ja2V0Y2FsbDoxNChpbnQsIGludCwgaW50LCBjb25zdCB2b2lkICosIHNvY2tsZW5fdCkgIC0xLDEwMgotaW50ICAgICAgICAgICBnZXRzb2Nrb3B0OnNvY2tldGNhbGw6MTUoaW50LCBpbnQsIGludCwgdm9pZCAqLCBzb2NrbGVuX3QgKikgICAgLTEsMTAyCi1pbnQgICAgICAgICAgIHNlbmRtc2c6c29ja2V0Y2FsbDoxNihpbnQsIGNvbnN0IHN0cnVjdCBtc2doZHIgKiwgdW5zaWduZWQgaW50KSAgLTEsMTAyCi1pbnQgICAgICAgICAgIHJlY3Ztc2c6c29ja2V0Y2FsbDoxNyhpbnQsIHN0cnVjdCBtc2doZHIgKiwgdW5zaWduZWQgaW50KSAgIC0xLDEwMgoraW50ICAgICAgICAgICBzZXRzb2Nrb3B0OnNvY2tldGNhbGw6MTQoaW50LCBpbnQsIGludCwgY29uc3Qgdm9pZCAqLCBzb2NrbGVuX3QpICAtMSwxMDIsLTEKK2ludCAgICAgICAgICAgZ2V0c29ja29wdDpzb2NrZXRjYWxsOjE1KGludCwgaW50LCBpbnQsIHZvaWQgKiwgc29ja2xlbl90ICopICAgIC0xLDEwMiwtMQoraW50ICAgICAgICAgICBzZW5kbXNnOnNvY2tldGNhbGw6MTYoaW50LCBjb25zdCBzdHJ1Y3QgbXNnaGRyICosIHVuc2lnbmVkIGludCkgIC0xLDEwMiwtMQoraW50ICAgICAgICAgICByZWN2bXNnOnNvY2tldGNhbGw6MTcoaW50LCBzdHJ1Y3QgbXNnaGRyICosIHVuc2lnbmVkIGludCkgICAtMSwxMDIsLTEKIAogIyBzY2hlZHVsZXIgJiByZWFsLXRpbWUKLWludCBzY2hlZF9zZXRzY2hlZHVsZXIocGlkX3QgcGlkLCBpbnQgcG9saWN5LCBjb25zdCBzdHJ1Y3Qgc2NoZWRfcGFyYW0gKnBhcmFtKSAgMTU2Ci1pbnQgc2NoZWRfZ2V0c2NoZWR1bGVyKHBpZF90IHBpZCkgIDE1NwotaW50IHNjaGVkX3lpZWxkKHZvaWQpICAxNTgKLWludCBzY2hlZF9zZXRwYXJhbShwaWRfdCBwaWQsIGNvbnN0IHN0cnVjdCBzY2hlZF9wYXJhbSAqcGFyYW0pICAxNTQKLWludCBzY2hlZF9nZXRwYXJhbShwaWRfdCBwaWQsIHN0cnVjdCBzY2hlZF9wYXJhbSAqcGFyYW0pICAxNTUKLWludCBzY2hlZF9nZXRfcHJpb3JpdHlfbWF4KGludCBwb2xpY3kpICAxNTkKLWludCBzY2hlZF9nZXRfcHJpb3JpdHlfbWluKGludCBwb2xpY3kpICAxNjAKLWludCBzY2hlZF9ycl9nZXRfaW50ZXJ2YWwocGlkX3QgcGlkLCBzdHJ1Y3QgdGltZXNwZWMgKmludGVydmFsKSAgMTYxCi1pbnQgc2NoZWRfc2V0YWZmaW5pdHkocGlkX3QgcGlkLCBzaXplX3Qgc2V0c2l6ZSwgY29uc3QgY3B1X3NldF90KiBzZXQpIDI0MQotaW50IF9fc2NoZWRfZ2V0YWZmaW5pdHk6c2NoZWRfZ2V0YWZmaW5pdHkocGlkX3QgcGlkLCBzaXplX3Qgc2V0c2l6ZSwgY3B1X3NldF90KiBzZXQpICAyNDIKLWludCBfX2dldGNwdTpnZXRjcHUodW5zaWduZWQgKmNwdSwgdW5zaWduZWQgKm5vZGUsIHZvaWQgKnVudXNlZCkgMzQ1LDMxOAoraW50IHNjaGVkX3NldHNjaGVkdWxlcihwaWRfdCBwaWQsIGludCBwb2xpY3ksIGNvbnN0IHN0cnVjdCBzY2hlZF9wYXJhbSAqcGFyYW0pICAxNTYsMTU2LDE2MAoraW50IHNjaGVkX2dldHNjaGVkdWxlcihwaWRfdCBwaWQpICAxNTcsMTU3LDE2MQoraW50IHNjaGVkX3lpZWxkKHZvaWQpICAxNTgsMTU4LDE2MgoraW50IHNjaGVkX3NldHBhcmFtKHBpZF90IHBpZCwgY29uc3Qgc3RydWN0IHNjaGVkX3BhcmFtICpwYXJhbSkgIDE1NCwxNTQsMTU4CitpbnQgc2NoZWRfZ2V0cGFyYW0ocGlkX3QgcGlkLCBzdHJ1Y3Qgc2NoZWRfcGFyYW0gKnBhcmFtKSAgMTU1LDE1NSwxNTkKK2ludCBzY2hlZF9nZXRfcHJpb3JpdHlfbWF4KGludCBwb2xpY3kpICAxNTksMTU5LDE2MworaW50IHNjaGVkX2dldF9wcmlvcml0eV9taW4oaW50IHBvbGljeSkgIDE2MCwxNjAsMTY0CitpbnQgc2NoZWRfcnJfZ2V0X2ludGVydmFsKHBpZF90IHBpZCwgc3RydWN0IHRpbWVzcGVjICppbnRlcnZhbCkgIDE2MSwxNjEsMTY1CitpbnQgc2NoZWRfc2V0YWZmaW5pdHkocGlkX3QgcGlkLCBzaXplX3Qgc2V0c2l6ZSwgY29uc3QgY3B1X3NldF90KiBzZXQpIDI0MSwyNDEsMjM5CitpbnQgX19zY2hlZF9nZXRhZmZpbml0eTpzY2hlZF9nZXRhZmZpbml0eShwaWRfdCBwaWQsIHNpemVfdCBzZXRzaXplLCBjcHVfc2V0X3QqIHNldCkgIDI0MiwyNDIsMjQwCitpbnQgX19nZXRjcHU6Z2V0Y3B1KHVuc2lnbmVkICpjcHUsIHVuc2lnbmVkICpub2RlLCB2b2lkICp1bnVzZWQpIDM0NSwzMTgsMzEyCiAKICMgaW8gcHJpb3JpdGllcwotaW50IGlvcHJpb19zZXQoaW50IHdoaWNoLCBpbnQgd2hvLCBpbnQgaW9wcmlvKSAzMTQsMjg5Ci1pbnQgaW9wcmlvX2dldChpbnQgd2hpY2gsIGludCB3aG8pIDMxNSwyOTAKK2ludCBpb3ByaW9fc2V0KGludCB3aGljaCwgaW50IHdobywgaW50IGlvcHJpbykgMzE0LDI4OSwzMTQKK2ludCBpb3ByaW9fZ2V0KGludCB3aGljaCwgaW50IHdobykgMzE1LDI5MCwzMTUKIAogIyBvdGhlcgogaW50ICAgICB1bmFtZShzdHJ1Y3QgdXRzbmFtZSAqKSAgMTIyCkBAIC0yNjgsMjEgKzI4NiwyNSBAQAogbG9uZyAgICBwZXJmX2V2ZW50X29wZW4oc3RydWN0IHBlcmZfZXZlbnRfYXR0ciAqYXR0cl91cHRyLCBwaWRfdCBwaWQsIGludCBjcHUsIGludCBncm91cF9mZCwgdW5zaWduZWQgbG9uZyBmbGFncykgMzY0CiAKICMgZnV0ZXgKLWludAlmdXRleCh2b2lkICosIGludCwgaW50LCB2b2lkICosIHZvaWQgKiwgaW50KSAyNDAKK2ludAlmdXRleCh2b2lkICosIGludCwgaW50LCB2b2lkICosIHZvaWQgKiwgaW50KSAyNDAsMjQwLDIzOAogCiAjIGVwb2xsCi1pbnQgICAgIGVwb2xsX2NyZWF0ZShpbnQgc2l6ZSkgICAgIDI1MCwyNTQKLWludCAgICAgZXBvbGxfY3RsKGludCBlcGZkLCBpbnQgb3AsIGludCBmZCwgc3RydWN0IGVwb2xsX2V2ZW50ICpldmVudCkgICAgMjUxLDI1NQotaW50ICAgICBlcG9sbF93YWl0KGludCBlcGZkLCBzdHJ1Y3QgZXBvbGxfZXZlbnQgKmV2ZW50cywgaW50IG1heCwgaW50IHRpbWVvdXQpICAgMjUyLDI1NgoraW50ICAgICBlcG9sbF9jcmVhdGUoaW50IHNpemUpICAgICAyNTAsMjU0LDI0OAoraW50ICAgICBlcG9sbF9jdGwoaW50IGVwZmQsIGludCBvcCwgaW50IGZkLCBzdHJ1Y3QgZXBvbGxfZXZlbnQgKmV2ZW50KSAgICAyNTEsMjU1LDI0OQoraW50ICAgICBlcG9sbF93YWl0KGludCBlcGZkLCBzdHJ1Y3QgZXBvbGxfZXZlbnQgKmV2ZW50cywgaW50IG1heCwgaW50IHRpbWVvdXQpICAgMjUyLDI1NiwyNTAKIAotaW50ICAgICBpbm90aWZ5X2luaXQodm9pZCkgICAgICAzMTYsMjkxLDI5MAotaW50ICAgICBpbm90aWZ5X2FkZF93YXRjaChpbnQsIGNvbnN0IGNoYXIgKiwgdW5zaWduZWQgaW50KSAgMzE3LDI5MgotaW50ICAgICBpbm90aWZ5X3JtX3dhdGNoKGludCwgdW5zaWduZWQgaW50KSAgMzE4LDI5MworaW50ICAgICBpbm90aWZ5X2luaXQodm9pZCkgICAgICAzMTYsMjkxLDI4NAoraW50ICAgICBpbm90aWZ5X2FkZF93YXRjaChpbnQsIGNvbnN0IGNoYXIgKiwgdW5zaWduZWQgaW50KSAgMzE3LDI5MiwyODUKK2ludCAgICAgaW5vdGlmeV9ybV93YXRjaChpbnQsIHVuc2lnbmVkIGludCkgIDMxOCwyOTMsMjg2CiAKLWludCAgICAgcG9sbChzdHJ1Y3QgcG9sbGZkICosIHVuc2lnbmVkIGludCwgbG9uZykgIDE2OAoraW50ICAgICBwb2xsKHN0cnVjdCBwb2xsZmQgKiwgdW5zaWduZWQgaW50LCBsb25nKSAgMTY4LDE2OCwxODgKIAotaW50ICAgICBldmVudGZkOmV2ZW50ZmQyKHVuc2lnbmVkIGludCwgaW50KSAgMzU2LDMyOAoraW50ICAgICBldmVudGZkOmV2ZW50ZmQyKHVuc2lnbmVkIGludCwgaW50KSAgMzU2LDMyOCwzMjUKIAogIyBBUk0tc3BlY2lmaWMgQVJNX05SX0JBU0UgPT0gMHgwZjAwMDAgPT0gOTgzMDQwCi1pbnQgICAgIF9fc2V0X3RsczpBUk1fc2V0X3Rscyh2b2lkKikgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA5ODMwNDUsLTEKLWludCAgICAgY2FjaGVmbHVzaDpBUk1fY2FjaGVmbHVzaChsb25nIHN0YXJ0LCBsb25nIGVuZCwgbG9uZyBmbGFncykgIDk4MzA0MiwtMQoraW50ICAgICBfX3NldF90bHM6QVJNX3NldF90bHModm9pZCopICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOTgzMDQ1LC0xLC0xCitpbnQgICAgIGNhY2hlZmx1c2g6QVJNX2NhY2hlZmx1c2gobG9uZyBzdGFydCwgbG9uZyBlbmQsIGxvbmcgZmxhZ3MpICA5ODMwNDIsLTEsLTEKKworIyBNSVBTLXNwZWNpZmljCitpbnQJX2ZsdXNoX2NhY2hlOmNhY2hlZmx1c2goY2hhciAqYWRkciwgY29uc3QgaW50IG5ieXRlcywgY29uc3QgaW50IG9wKQktMSwtMSwxNDcKK2ludAlzeXNjYWxsKGludCBudW1iZXIsLi4uKSAtMSwtMSwwCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtYXJtL2Jpb25pYy9tZW1jcHkuUyBiL2xpYmMvYXJjaC1hcm0vYmlvbmljL21lbWNweS5TCmluZGV4IDhjMGI0ZDcuLjg0NTNjYzAgMTAwNjQ0Ci0tLSBhL2xpYmMvYXJjaC1hcm0vYmlvbmljL21lbWNweS5TCisrKyBiL2xpYmMvYXJjaC1hcm0vYmlvbmljL21lbWNweS5TCkBAIC0zNCwyMyArMzQsMjggQEAKICAgICAgICAgLnRleHQKICAgICAgICAgLmZwdSAgICBuZW9uCiAKKyNpZmRlZiBIQVZFXzMyX0JZVEVfQ0FDSEVfTElORQorLyogYSBwcmVmZXRjaCBkaXN0YW5jZSBvZiAyIGNhY2hlLWxpbmVzICovCisjZGVmaW5lIENBQ0hFX0xJTkVfU0laRSAgICAgMzIKKyNkZWZpbmUgUFJFRkVUQ0hfRElTVEFOQ0UgICAoQ0FDSEVfTElORV9TSVpFKjIpCisjZWxzZQogLyogYSBwcmVmZXRjaCBkaXN0YW5jZSBvZiA0IGNhY2hlLWxpbmVzIHdvcmtzIGJlc3QgZXhwZXJpbWVudGFsbHkgKi8KICNkZWZpbmUgQ0FDSEVfTElORV9TSVpFICAgICA2NAogI2RlZmluZSBQUkVGRVRDSF9ESVNUQU5DRSAgIChDQUNIRV9MSU5FX1NJWkUqNCkKKyNlbmRpZgogCiBFTlRSWShtZW1jcHkpCiAgICAgICAgIC5zYXZlICAgICAgIHtyMCwgbHJ9Ci0gICAgICAgIHN0bWZkICAgICAgIHNwISwge3IwLCBscn0KLQogICAgICAgICAvKiBzdGFydCBwcmVsb2FkaW5nIGFzIGVhcmx5IGFzIHBvc3NpYmxlICovCiAgICAgICAgIHBsZCAgICAgICAgIFtyMSwgIyhDQUNIRV9MSU5FX1NJWkUqMCldCisgICAgICAgIHN0bWZkICAgICAgIHNwISwge3IwLCBscn0KICAgICAgICAgcGxkICAgICAgICAgW3IxLCAjKENBQ0hFX0xJTkVfU0laRSoxKV0KIAogICAgICAgICAvKiBkbyB3ZSBoYXZlIGF0IGxlYXN0IDE2LWJ5dGVzIHRvIGNvcHkgKG5lZWRlZCBmb3IgYWxpZ25tZW50IGJlbG93KSAqLwogICAgICAgICBjbXAgICAgICAgICByMiwgIzE2CiAgICAgICAgIGJsbyAgICAgICAgIDVmCiAKLSAgICAgICAgLyogYWxpZ24gZGVzdGluYXRpb24gdG8gaGFsZiBjYWNoZS1saW5lIGZvciB0aGUgd3JpdGUtYnVmZmVyICovCisgICAgICAgIC8qIGFsaWduIGRlc3RpbmF0aW9uIHRvIGNhY2hlLWxpbmUgZm9yIHRoZSB3cml0ZS1idWZmZXIgKi8KICAgICAgICAgcnNiICAgICAgICAgcjMsIHIwLCAjMAogICAgICAgICBhbmRzICAgICAgICByMywgcjMsICMweEYKICAgICAgICAgYmVxICAgICAgICAgMGYKQEAgLTc5LDYgKzg0LDI2IEBACiAgICAgICAgIHBsZCAgICAgICAgIFtyMSwgIyhDQUNIRV9MSU5FX1NJWkUqMCldCiAgICAgICAgIHBsZCAgICAgICAgIFtyMSwgIyhDQUNIRV9MSU5FX1NJWkUqMSldCiAKKyNpZmRlZiBIQVZFXzMyX0JZVEVfQ0FDSEVfTElORQorICAgICAgICAvKiBtYWtlIHN1cmUgd2UgaGF2ZSBhdCBsZWFzdCAzMiBieXRlcyB0byBjb3B5ICovCisgICAgICAgIHN1YnMgICAgICAgIHIyLCByMiwgIzMyCisgICAgICAgIGJsbyAgICAgICAgIDRmCisKKyAgICAgICAgLyogcHJlbG9hZCBhbGwgdGhlIGNhY2hlIGxpbmVzIHdlIG5lZWQuCisgICAgICAgICAqIE5PVEU6IHRoZSBudW1iZXIgb2YgcGxkIGJlbG93IGRlcGVuZHMgb24gUFJFRkVUQ0hfRElTVEFOQ0UsCisgICAgICAgICAqIGlkZWFsbHkgd291bGQgd291bGQgaW5jcmVhc2UgdGhlIGRpc3RhbmNlIGluIHRoZSBtYWluIGxvb3AgdG8KKyAgICAgICAgICogYXZvaWQgdGhlIGdvb2Z5IGNvZGUgYmVsb3cuIEluIHByYWN0aWNlIHRoaXMgZG9lc24ndCBzZWVtIHRvIG1ha2UKKyAgICAgICAgICogYSBiaWcgZGlmZmVyZW5jZS4KKyAgICAgICAgICovCisgICAgICAgIHBsZCAgICAgICAgIFtyMSwgIyhQUkVGRVRDSF9ESVNUQU5DRSldCisKKzE6ICAgICAgLyogVGhlIG1haW4gbG9vcCBjb3BpZXMgMzIgYnl0ZXMgYXQgYSB0aW1lICovCisgICAgICAgIHZsZDEuOCAgICAgIHtkMCAgLSBkM30sICAgW3IxXSEKKyAgICAgICAgcGxkICAgICAgICAgW3IxLCAjKFBSRUZFVENIX0RJU1RBTkNFKV0KKyAgICAgICAgc3VicyAgICAgICAgcjIsIHIyLCAjMzIKKyAgICAgICAgdnN0MS44ICAgICAge2QwICAtIGQzfSwgICBbcjAsIDoxMjhdIQorICAgICAgICBiaHMgICAgICAgICAxYgorI2Vsc2UKICAgICAgICAgLyogbWFrZSBzdXJlIHdlIGhhdmUgYXQgbGVhc3QgNjQgYnl0ZXMgdG8gY29weSAqLwogICAgICAgICBzdWJzICAgICAgICByMiwgcjIsICM2NAogICAgICAgICBibG8gICAgICAgICAyZgpAQCAtMTEyLDcgKzEzNyw3IEBACiAgICAgICAgIHN1YnMgICAgICAgIHIyLCByMiwgIzMyCiAgICAgICAgIHZzdDEuOCAgICAgIHtkMCAtIGQzfSwgIFtyMCwgOjEyOF0hCiAgICAgICAgIGJocyAgICAgICAgIDNiCi0KKyNlbmRpZgogNDogICAgICAvKiBsZXNzIHRoYW4gMzIgbGVmdCAqLwogICAgICAgICBhZGQgICAgICAgICByMiwgcjIsICMzMgogICAgICAgICB0c3QgICAgICAgICByMiwgIzB4MTAKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzLm1rIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMubWsKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGMwYzRkYwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzLm1rCkBAIC0wLDAgKzEsMjAxIEBACisjIGF1dG8tZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5LCBkbyBub3QgdG91Y2gKK3N5c2NhbGxfc3JjIDo9IAorc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL19leGl0LlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9fZXhpdF90aHJlYWQuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL19fZm9yay5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvX3dhaXRwaWQuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL19fd2FpdGlkLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9fX3N5c19jbG9uZS5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvZXhlY3ZlLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9fX3NldHVpZC5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvZ2V0dWlkLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9nZXRnaWQuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL2dldGV1aWQuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL2dldGVnaWQuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL2dldHJlc3VpZC5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvZ2V0cmVzZ2lkLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9nZXR0aWQuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL3JlYWRhaGVhZC5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvZ2V0Z3JvdXBzLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9nZXRwZ2lkLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9nZXRwcGlkLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9zZXRzaWQuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL3NldGdpZC5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvX19zZXRyZXVpZC5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvX19zZXRyZXN1aWQuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL3NldHJlc2dpZC5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvX19icmsuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL2tpbGwuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL3RraWxsLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy90Z2tpbGwuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL19fcHRyYWNlLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9fX3NldF90aHJlYWRfYXJlYS5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvX19nZXRwcmlvcml0eS5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvc2V0cHJpb3JpdHkuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL3NldHJsaW1pdC5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvZ2V0cmxpbWl0LlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9nZXRydXNhZ2UuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL3NldGdyb3Vwcy5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvc2V0cGdpZC5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvc2V0cmVnaWQuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL2Nocm9vdC5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvcHJjdGwuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL2NhcGdldC5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvY2Fwc2V0LlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9zaWdhbHRzdGFjay5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvYWNjdC5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvcmVhZC5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvd3JpdGUuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL3ByZWFkNjQuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL3B3cml0ZTY0LlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9fX29wZW4uUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL19fb3BlbmF0LlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9jbG9zZS5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvbHNlZWsuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL19fbGxzZWVrLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9nZXRwaWQuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL19fbW1hcDIuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL211bm1hcC5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvbXJlbWFwLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9tc3luYy5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvbXByb3RlY3QuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL21hZHZpc2UuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL21sb2NrLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9tdW5sb2NrLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9taW5jb3JlLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9fX2lvY3RsLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9yZWFkdi5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvd3JpdGV2LlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9fX2ZjbnRsLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9mbG9jay5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvZmNobW9kLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9kdXAuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL3BpcGUyLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9kdXAyLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9zZWxlY3QuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL2Z0cnVuY2F0ZS5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvZnRydW5jYXRlNjQuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL2dldGRlbnRzLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9mc3luYy5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvZmRhdGFzeW5jLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9mY2hvd24uUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL3N5bmMuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL19fZmNudGw2NC5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvX19mc3RhdGZzNjQuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL3NlbmRmaWxlLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9mc3RhdGF0LlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9ta2RpcmF0LlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9mY2hvd25hdC5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvZmNobW9kYXQuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL3JlbmFtZWF0LlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9mc2V0eGF0dHIuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL2ZnZXR4YXR0ci5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvZmxpc3R4YXR0ci5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvZnJlbW92ZXhhdHRyLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9saW5rLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy91bmxpbmsuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL3VubGlua2F0LlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9jaGRpci5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvbWtub2QuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL2NobW9kLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9jaG93bi5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvbGNob3duLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9tb3VudC5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvdW1vdW50Mi5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvZnN0YXQuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL3N0YXQuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL2xzdGF0LlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9ta2Rpci5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvcmVhZGxpbmsuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL3JtZGlyLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9yZW5hbWUuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL19fZ2V0Y3dkLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9hY2Nlc3MuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL2ZhY2Nlc3NhdC5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvc3ltbGluay5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvZmNoZGlyLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy90cnVuY2F0ZS5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvc2V0eGF0dHIuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL2xzZXR4YXR0ci5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvZ2V0eGF0dHIuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL2xnZXR4YXR0ci5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvbGlzdHhhdHRyLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9sbGlzdHhhdHRyLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9yZW1vdmV4YXR0ci5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvbHJlbW92ZXhhdHRyLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9fX3N0YXRmczY0LlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9wYXVzZS5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvZ2V0dGltZW9mZGF5LlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9zZXR0aW1lb2ZkYXkuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL3RpbWVzLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9uYW5vc2xlZXAuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL2Nsb2NrX2dldHRpbWUuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL2Nsb2NrX3NldHRpbWUuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL2Nsb2NrX2dldHJlcy5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvY2xvY2tfbmFub3NsZWVwLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9nZXRpdGltZXIuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL3NldGl0aW1lci5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvX190aW1lcl9jcmVhdGUuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL19fdGltZXJfc2V0dGltZS5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvX190aW1lcl9nZXR0aW1lLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9fX3RpbWVyX2dldG92ZXJydW4uUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL19fdGltZXJfZGVsZXRlLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy91dGltZXMuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL3V0aW1lbnNhdC5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvc2lnYWN0aW9uLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9zaWdwcm9jbWFzay5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvX19zaWdzdXNwZW5kLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9fX3J0X3NpZ2FjdGlvbi5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvX19ydF9zaWdwcm9jbWFzay5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvX19ydF9zaWd0aW1lZHdhaXQuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL3NpZ3BlbmRpbmcuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL3NvY2tldC5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvc29ja2V0cGFpci5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvYmluZC5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvY29ubmVjdC5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvbGlzdGVuLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9hY2NlcHQuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL2dldHNvY2tuYW1lLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9nZXRwZWVybmFtZS5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvc2VuZHRvLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9yZWN2ZnJvbS5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvc2h1dGRvd24uUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL3NldHNvY2tvcHQuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL2dldHNvY2tvcHQuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL3NlbmRtc2cuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL3JlY3Ztc2cuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL3NjaGVkX3NldHNjaGVkdWxlci5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvc2NoZWRfZ2V0c2NoZWR1bGVyLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9zY2hlZF95aWVsZC5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvc2NoZWRfc2V0cGFyYW0uUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL3NjaGVkX2dldHBhcmFtLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9zY2hlZF9nZXRfcHJpb3JpdHlfbWF4LlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9zY2hlZF9nZXRfcHJpb3JpdHlfbWluLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9zY2hlZF9ycl9nZXRfaW50ZXJ2YWwuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL3NjaGVkX3NldGFmZmluaXR5LlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9fX3NjaGVkX2dldGFmZmluaXR5LlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9fX2dldGNwdS5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvaW9wcmlvX3NldC5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvaW9wcmlvX2dldC5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvdW5hbWUuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL19fd2FpdDQuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL3VtYXNrLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9fX3JlYm9vdC5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvX19zeXNsb2cuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL2luaXRfbW9kdWxlLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9kZWxldGVfbW9kdWxlLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9rbG9nY3RsLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9zeXNpbmZvLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9wZXJzb25hbGl0eS5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvcGVyZl9ldmVudF9vcGVuLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9mdXRleC5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvZXBvbGxfY3JlYXRlLlMKK3N5c2NhbGxfc3JjICs9IGFyY2gtbWlwcy9zeXNjYWxscy9lcG9sbF9jdGwuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL2Vwb2xsX3dhaXQuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL2lub3RpZnlfaW5pdC5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvaW5vdGlmeV9hZGRfd2F0Y2guUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL2lub3RpZnlfcm1fd2F0Y2guUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL3BvbGwuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL2V2ZW50ZmQuUworc3lzY2FsbF9zcmMgKz0gYXJjaC1taXBzL3N5c2NhbGxzL19mbHVzaF9jYWNoZS5TCitzeXNjYWxsX3NyYyArPSBhcmNoLW1pcHMvc3lzY2FsbHMvc3lzY2FsbC5TCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX2Jyay5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19icmsuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xZjA5NzcyCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19icmsuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgX19icmsKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgX19icmsKKworX19icms6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9icmsKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBfX2JyawpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19mY250bC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19mY250bC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZkZDc2ZTMKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX2ZjbnRsLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIF9fZmNudGwKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgX19mY250bAorCitfX2ZjbnRsOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfZmNudGwKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBfX2ZjbnRsCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX2ZjbnRsNjQuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fZmNudGw2NC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU4MmUzODIKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX2ZjbnRsNjQuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgX19mY250bDY0CisgICAgLmFsaWduIDQKKyAgICAuZW50IF9fZmNudGw2NAorCitfX2ZjbnRsNjQ6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9mY250bDY0CisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgX19mY250bDY0CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX2ZvcmsuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fZm9yay5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRiMzA0NzIKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX2ZvcmsuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgX19mb3JrCisgICAgLmFsaWduIDQKKyAgICAuZW50IF9fZm9yaworCitfX2Zvcms6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9mb3JrCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgX19mb3JrCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX2ZzdGF0ZnM2NC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19mc3RhdGZzNjQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NDg1ZDEwCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19mc3RhdGZzNjQuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgX19mc3RhdGZzNjQKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgX19mc3RhdGZzNjQKKworX19mc3RhdGZzNjQ6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9mc3RhdGZzNjQKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBfX2ZzdGF0ZnM2NApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19nZXRjcHUuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fZ2V0Y3B1LlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTBkNTlmNAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fZ2V0Y3B1LlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIF9fZ2V0Y3B1CisgICAgLmFsaWduIDQKKyAgICAuZW50IF9fZ2V0Y3B1CisKK19fZ2V0Y3B1OgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfZ2V0Y3B1CisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgX19nZXRjcHUKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fZ2V0Y3dkLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX2dldGN3ZC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU4ZmEzNDAKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX2dldGN3ZC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBfX2dldGN3ZAorICAgIC5hbGlnbiA0CisgICAgLmVudCBfX2dldGN3ZAorCitfX2dldGN3ZDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2dldGN3ZAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIF9fZ2V0Y3dkCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX2dldHByaW9yaXR5LlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX2dldHByaW9yaXR5LlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uN2NhYmQzMQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fZ2V0cHJpb3JpdHkuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgX19nZXRwcmlvcml0eQorICAgIC5hbGlnbiA0CisgICAgLmVudCBfX2dldHByaW9yaXR5CisKK19fZ2V0cHJpb3JpdHk6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9nZXRwcmlvcml0eQorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIF9fZ2V0cHJpb3JpdHkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19faW9jdGwuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19faW9jdGwuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yNTI0ZTAyCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19pb2N0bC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBfX2lvY3RsCisgICAgLmFsaWduIDQKKyAgICAuZW50IF9faW9jdGwKKworX19pb2N0bDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2lvY3RsCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgX19pb2N0bApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19sbHNlZWsuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fbGxzZWVrLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmJmZDU4MwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fbGxzZWVrLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIF9fbGxzZWVrCisgICAgLmFsaWduIDQKKyAgICAuZW50IF9fbGxzZWVrCisKK19fbGxzZWVrOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfX2xsc2VlaworICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIF9fbGxzZWVrCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX21tYXAyLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX21tYXAyLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOThmOTdlYgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fbW1hcDIuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgX19tbWFwMgorICAgIC5hbGlnbiA0CisgICAgLmVudCBfX21tYXAyCisKK19fbW1hcDI6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9tbWFwMgorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIF9fbW1hcDIKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fb3Blbi5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19vcGVuLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGNjYjI4NgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fb3Blbi5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBfX29wZW4KKyAgICAuYWxpZ24gNAorICAgIC5lbnQgX19vcGVuCisKK19fb3BlbjoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX29wZW4KKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBfX29wZW4KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fb3BlbmF0LlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX29wZW5hdC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA0Mzk5YjQKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX29wZW5hdC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBfX29wZW5hdAorICAgIC5hbGlnbiA0CisgICAgLmVudCBfX29wZW5hdAorCitfX29wZW5hdDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX29wZW5hdAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIF9fb3BlbmF0CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3B0cmFjZS5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19wdHJhY2UuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wYmNiYTlmCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19wdHJhY2UuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgX19wdHJhY2UKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgX19wdHJhY2UKKworX19wdHJhY2U6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9wdHJhY2UKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBfX3B0cmFjZQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19yZWJvb3QuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fcmVib290LlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNWU4ZTU3YQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fcmVib290LlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIF9fcmVib290CisgICAgLmFsaWduIDQKKyAgICAuZW50IF9fcmVib290CisKK19fcmVib290OgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfcmVib290CisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgX19yZWJvb3QKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fcnRfc2lnYWN0aW9uLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3J0X3NpZ2FjdGlvbi5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQzYTU3MWEKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3J0X3NpZ2FjdGlvbi5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBfX3J0X3NpZ2FjdGlvbgorICAgIC5hbGlnbiA0CisgICAgLmVudCBfX3J0X3NpZ2FjdGlvbgorCitfX3J0X3NpZ2FjdGlvbjoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3J0X3NpZ2FjdGlvbgorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIF9fcnRfc2lnYWN0aW9uCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3J0X3NpZ3Byb2NtYXNrLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3J0X3NpZ3Byb2NtYXNrLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNTlhODg5NAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fcnRfc2lncHJvY21hc2suUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgX19ydF9zaWdwcm9jbWFzaworICAgIC5hbGlnbiA0CisgICAgLmVudCBfX3J0X3NpZ3Byb2NtYXNrCisKK19fcnRfc2lncHJvY21hc2s6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9ydF9zaWdwcm9jbWFzaworICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIF9fcnRfc2lncHJvY21hc2sKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fcnRfc2lndGltZWR3YWl0LlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3J0X3NpZ3RpbWVkd2FpdC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmRhZTg3MmUKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3J0X3NpZ3RpbWVkd2FpdC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBfX3J0X3NpZ3RpbWVkd2FpdAorICAgIC5hbGlnbiA0CisgICAgLmVudCBfX3J0X3NpZ3RpbWVkd2FpdAorCitfX3J0X3NpZ3RpbWVkd2FpdDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3J0X3NpZ3RpbWVkd2FpdAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIF9fcnRfc2lndGltZWR3YWl0CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3NjaGVkX2dldGFmZmluaXR5LlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3NjaGVkX2dldGFmZmluaXR5LlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2MwMWZmMgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fc2NoZWRfZ2V0YWZmaW5pdHkuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgX19zY2hlZF9nZXRhZmZpbml0eQorICAgIC5hbGlnbiA0CisgICAgLmVudCBfX3NjaGVkX2dldGFmZmluaXR5CisKK19fc2NoZWRfZ2V0YWZmaW5pdHk6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9zY2hlZF9nZXRhZmZpbml0eQorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIF9fc2NoZWRfZ2V0YWZmaW5pdHkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fc2V0X3RocmVhZF9hcmVhLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3NldF90aHJlYWRfYXJlYS5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJhYWM5MDEKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3NldF90aHJlYWRfYXJlYS5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBfX3NldF90aHJlYWRfYXJlYQorICAgIC5hbGlnbiA0CisgICAgLmVudCBfX3NldF90aHJlYWRfYXJlYQorCitfX3NldF90aHJlYWRfYXJlYToKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3NldF90aHJlYWRfYXJlYQorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIF9fc2V0X3RocmVhZF9hcmVhCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3NldHJlc3VpZC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19zZXRyZXN1aWQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lMDBkMmUxCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19zZXRyZXN1aWQuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgX19zZXRyZXN1aWQKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgX19zZXRyZXN1aWQKKworX19zZXRyZXN1aWQ6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9zZXRyZXN1aWQKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBfX3NldHJlc3VpZApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19zZXRyZXVpZC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19zZXRyZXVpZC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI0NWYzZmMKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3NldHJldWlkLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIF9fc2V0cmV1aWQKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgX19zZXRyZXVpZAorCitfX3NldHJldWlkOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfc2V0cmV1aWQKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBfX3NldHJldWlkCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3NldHVpZC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19zZXR1aWQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jMjIxNTI2Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19zZXR1aWQuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgX19zZXR1aWQKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgX19zZXR1aWQKKworX19zZXR1aWQ6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9zZXR1aWQKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBfX3NldHVpZApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19zaWdzdXNwZW5kLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3NpZ3N1c3BlbmQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iNjIyZWZlCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19zaWdzdXNwZW5kLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIF9fc2lnc3VzcGVuZAorICAgIC5hbGlnbiA0CisgICAgLmVudCBfX3NpZ3N1c3BlbmQKKworX19zaWdzdXNwZW5kOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfc2lnc3VzcGVuZAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIF9fc2lnc3VzcGVuZApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19zdGF0ZnM2NC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19zdGF0ZnM2NC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRkMWIxN2YKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3N0YXRmczY0LlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIF9fc3RhdGZzNjQKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgX19zdGF0ZnM2NAorCitfX3N0YXRmczY0OgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfc3RhdGZzNjQKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBfX3N0YXRmczY0CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3N5c19jbG9uZS5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19zeXNfY2xvbmUuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zNDUxZTAyCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19zeXNfY2xvbmUuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgX19zeXNfY2xvbmUKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgX19zeXNfY2xvbmUKKworX19zeXNfY2xvbmU6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9jbG9uZQorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIF9fc3lzX2Nsb25lCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3N5c2xvZy5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19zeXNsb2cuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iZGMxOTRkCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX19zeXNsb2cuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgX19zeXNsb2cKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgX19zeXNsb2cKKworX19zeXNsb2c6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9zeXNsb2cKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBfX3N5c2xvZwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX190aW1lcl9jcmVhdGUuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fdGltZXJfY3JlYXRlLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTQwZDBkMQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fdGltZXJfY3JlYXRlLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIF9fdGltZXJfY3JlYXRlCisgICAgLmFsaWduIDQKKyAgICAuZW50IF9fdGltZXJfY3JlYXRlCisKK19fdGltZXJfY3JlYXRlOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfdGltZXJfY3JlYXRlCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgX190aW1lcl9jcmVhdGUKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fdGltZXJfZGVsZXRlLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3RpbWVyX2RlbGV0ZS5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRmMzYyZTYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3RpbWVyX2RlbGV0ZS5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBfX3RpbWVyX2RlbGV0ZQorICAgIC5hbGlnbiA0CisgICAgLmVudCBfX3RpbWVyX2RlbGV0ZQorCitfX3RpbWVyX2RlbGV0ZToKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3RpbWVyX2RlbGV0ZQorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIF9fdGltZXJfZGVsZXRlCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3RpbWVyX2dldG92ZXJydW4uUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fdGltZXJfZ2V0b3ZlcnJ1bi5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY4YWZhMWMKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3RpbWVyX2dldG92ZXJydW4uUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgX190aW1lcl9nZXRvdmVycnVuCisgICAgLmFsaWduIDQKKyAgICAuZW50IF9fdGltZXJfZ2V0b3ZlcnJ1bgorCitfX3RpbWVyX2dldG92ZXJydW46CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl90aW1lcl9nZXRvdmVycnVuCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgX190aW1lcl9nZXRvdmVycnVuCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3RpbWVyX2dldHRpbWUuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fdGltZXJfZ2V0dGltZS5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRhNzBkYTYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3RpbWVyX2dldHRpbWUuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgX190aW1lcl9nZXR0aW1lCisgICAgLmFsaWduIDQKKyAgICAuZW50IF9fdGltZXJfZ2V0dGltZQorCitfX3RpbWVyX2dldHRpbWU6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl90aW1lcl9nZXR0aW1lCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgX190aW1lcl9nZXR0aW1lCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3RpbWVyX3NldHRpbWUuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fdGltZXJfc2V0dGltZS5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFkODQ2MDYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3RpbWVyX3NldHRpbWUuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgX190aW1lcl9zZXR0aW1lCisgICAgLmFsaWduIDQKKyAgICAuZW50IF9fdGltZXJfc2V0dGltZQorCitfX3RpbWVyX3NldHRpbWU6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl90aW1lcl9zZXR0aW1lCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgX190aW1lcl9zZXR0aW1lCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3dhaXQ0LlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3dhaXQ0LlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzEzYjdjYgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fd2FpdDQuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgX193YWl0NAorICAgIC5hbGlnbiA0CisgICAgLmVudCBfX3dhaXQ0CisKK19fd2FpdDQ6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl93YWl0NAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIF9fd2FpdDQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19fd2FpdGlkLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3dhaXRpZC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjgzZTVhYTMKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fX3dhaXRpZC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBfX3dhaXRpZAorICAgIC5hbGlnbiA0CisgICAgLmVudCBfX3dhaXRpZAorCitfX3dhaXRpZDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3dhaXRpZAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIF9fd2FpdGlkCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fZXhpdC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX2V4aXQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iN2VjODc2Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX2V4aXQuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgX2V4aXQKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgX2V4aXQKKworX2V4aXQ6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9leGl0X2dyb3VwCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgX2V4aXQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19leGl0X3RocmVhZC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX2V4aXRfdGhyZWFkLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMGFmOWQzZAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19leGl0X3RocmVhZC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBfZXhpdF90aHJlYWQKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgX2V4aXRfdGhyZWFkCisKK19leGl0X3RocmVhZDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2V4aXQKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBfZXhpdF90aHJlYWQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19mbHVzaF9jYWNoZS5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvX2ZsdXNoX2NhY2hlLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDdkZWU2NgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL19mbHVzaF9jYWNoZS5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBfZmx1c2hfY2FjaGUKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgX2ZsdXNoX2NhY2hlCisKK19mbHVzaF9jYWNoZToKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2NhY2hlZmx1c2gKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBfZmx1c2hfY2FjaGUKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL193YWl0cGlkLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fd2FpdHBpZC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIwZGIzYTgKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9fd2FpdHBpZC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBfd2FpdHBpZAorICAgIC5hbGlnbiA0CisgICAgLmVudCBfd2FpdHBpZAorCitfd2FpdHBpZDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3dhaXRwaWQKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBfd2FpdHBpZApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvYWNjZXB0LlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9hY2NlcHQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jMTkyMTZlCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvYWNjZXB0LlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIGFjY2VwdAorICAgIC5hbGlnbiA0CisgICAgLmVudCBhY2NlcHQKKworYWNjZXB0OgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfYWNjZXB0CisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgYWNjZXB0CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9hY2Nlc3MuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2FjY2Vzcy5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmEyMmVkOTIKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9hY2Nlc3MuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgYWNjZXNzCisgICAgLmFsaWduIDQKKyAgICAuZW50IGFjY2VzcworCithY2Nlc3M6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9hY2Nlc3MKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBhY2Nlc3MKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2FjY3QuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2FjY3QuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41MjM1ZWRlCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvYWNjdC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBhY2N0CisgICAgLmFsaWduIDQKKyAgICAuZW50IGFjY3QKKworYWNjdDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2FjY3QKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBhY2N0CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9iaW5kLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9iaW5kLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGYwMDkyMgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2JpbmQuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgYmluZAorICAgIC5hbGlnbiA0CisgICAgLmVudCBiaW5kCisKK2JpbmQ6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9iaW5kCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgYmluZApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvY2FwZ2V0LlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9jYXBnZXQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44MGU1NWVlCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvY2FwZ2V0LlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIGNhcGdldAorICAgIC5hbGlnbiA0CisgICAgLmVudCBjYXBnZXQKKworY2FwZ2V0OgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfY2FwZ2V0CisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgY2FwZ2V0CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9jYXBzZXQuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2NhcHNldC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjBlNGEzYmUKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9jYXBzZXQuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgY2Fwc2V0CisgICAgLmFsaWduIDQKKyAgICAuZW50IGNhcHNldAorCitjYXBzZXQ6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9jYXBzZXQKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBjYXBzZXQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2NoZGlyLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9jaGRpci5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjQyZWIzN2MKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9jaGRpci5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBjaGRpcgorICAgIC5hbGlnbiA0CisgICAgLmVudCBjaGRpcgorCitjaGRpcjoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2NoZGlyCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgY2hkaXIKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2NobW9kLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9jaG1vZC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjdlYTNlZGUKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9jaG1vZC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBjaG1vZAorICAgIC5hbGlnbiA0CisgICAgLmVudCBjaG1vZAorCitjaG1vZDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2NobW9kCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgY2htb2QKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2Nob3duLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9jaG93bi5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVmYjFlMzIKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9jaG93bi5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBjaG93bgorICAgIC5hbGlnbiA0CisgICAgLmVudCBjaG93bgorCitjaG93bjoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2Nob3duCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgY2hvd24KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2Nocm9vdC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvY2hyb290LlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZmFmYjZhMgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2Nocm9vdC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBjaHJvb3QKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgY2hyb290CisKK2Nocm9vdDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2Nocm9vdAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIGNocm9vdApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvY2xvY2tfZ2V0cmVzLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9jbG9ja19nZXRyZXMuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40MDIxYjE0Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvY2xvY2tfZ2V0cmVzLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIGNsb2NrX2dldHJlcworICAgIC5hbGlnbiA0CisgICAgLmVudCBjbG9ja19nZXRyZXMKKworY2xvY2tfZ2V0cmVzOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfY2xvY2tfZ2V0cmVzCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgY2xvY2tfZ2V0cmVzCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9jbG9ja19nZXR0aW1lLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9jbG9ja19nZXR0aW1lLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYmE3YWZiOQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2Nsb2NrX2dldHRpbWUuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgY2xvY2tfZ2V0dGltZQorICAgIC5hbGlnbiA0CisgICAgLmVudCBjbG9ja19nZXR0aW1lCisKK2Nsb2NrX2dldHRpbWU6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9jbG9ja19nZXR0aW1lCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgY2xvY2tfZ2V0dGltZQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvY2xvY2tfbmFub3NsZWVwLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9jbG9ja19uYW5vc2xlZXAuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xYTlhZWY1Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvY2xvY2tfbmFub3NsZWVwLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIGNsb2NrX25hbm9zbGVlcAorICAgIC5hbGlnbiA0CisgICAgLmVudCBjbG9ja19uYW5vc2xlZXAKKworY2xvY2tfbmFub3NsZWVwOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfY2xvY2tfbmFub3NsZWVwCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgY2xvY2tfbmFub3NsZWVwCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9jbG9ja19zZXR0aW1lLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9jbG9ja19zZXR0aW1lLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjVkNDM4OAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2Nsb2NrX3NldHRpbWUuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgY2xvY2tfc2V0dGltZQorICAgIC5hbGlnbiA0CisgICAgLmVudCBjbG9ja19zZXR0aW1lCisKK2Nsb2NrX3NldHRpbWU6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9jbG9ja19zZXR0aW1lCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgY2xvY2tfc2V0dGltZQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvY2xvc2UuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2Nsb3NlLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMDdmZjRlMwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2Nsb3NlLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIGNsb3NlCisgICAgLmFsaWduIDQKKyAgICAuZW50IGNsb3NlCisKK2Nsb3NlOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfY2xvc2UKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBjbG9zZQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvY29ubmVjdC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvY29ubmVjdC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQxZmMyODAKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9jb25uZWN0LlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIGNvbm5lY3QKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgY29ubmVjdAorCitjb25uZWN0OgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfY29ubmVjdAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIGNvbm5lY3QKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2RlbGV0ZV9tb2R1bGUuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2RlbGV0ZV9tb2R1bGUuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kYjgwYmE3Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZGVsZXRlX21vZHVsZS5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBkZWxldGVfbW9kdWxlCisgICAgLmFsaWduIDQKKyAgICAuZW50IGRlbGV0ZV9tb2R1bGUKKworZGVsZXRlX21vZHVsZToKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2RlbGV0ZV9tb2R1bGUKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBkZWxldGVfbW9kdWxlCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9kdXAuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2R1cC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU4MTU3NDkKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9kdXAuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgZHVwCisgICAgLmFsaWduIDQKKyAgICAuZW50IGR1cAorCitkdXA6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9kdXAKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBkdXAKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2R1cDIuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2R1cDIuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42ZmIxNTFmCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZHVwMi5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBkdXAyCisgICAgLmFsaWduIDQKKyAgICAuZW50IGR1cDIKKworZHVwMjoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2R1cDIKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBkdXAyCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9lcG9sbF9jcmVhdGUuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2Vwb2xsX2NyZWF0ZS5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU1ZTQyMGIKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9lcG9sbF9jcmVhdGUuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgZXBvbGxfY3JlYXRlCisgICAgLmFsaWduIDQKKyAgICAuZW50IGVwb2xsX2NyZWF0ZQorCitlcG9sbF9jcmVhdGU6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9lcG9sbF9jcmVhdGUKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBlcG9sbF9jcmVhdGUKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2Vwb2xsX2N0bC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZXBvbGxfY3RsLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjRmOWYwNQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2Vwb2xsX2N0bC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBlcG9sbF9jdGwKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgZXBvbGxfY3RsCisKK2Vwb2xsX2N0bDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2Vwb2xsX2N0bAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIGVwb2xsX2N0bApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZXBvbGxfd2FpdC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZXBvbGxfd2FpdC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY0ZDMzZmIKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9lcG9sbF93YWl0LlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIGVwb2xsX3dhaXQKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgZXBvbGxfd2FpdAorCitlcG9sbF93YWl0OgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfZXBvbGxfd2FpdAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIGVwb2xsX3dhaXQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2V2ZW50ZmQuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2V2ZW50ZmQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41YzRlMjJiCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZXZlbnRmZC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBldmVudGZkCisgICAgLmFsaWduIDQKKyAgICAuZW50IGV2ZW50ZmQKKworZXZlbnRmZDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2V2ZW50ZmQyCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgZXZlbnRmZApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZXhlY3ZlLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9leGVjdmUuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zMWI5Mjc2Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZXhlY3ZlLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIGV4ZWN2ZQorICAgIC5hbGlnbiA0CisgICAgLmVudCBleGVjdmUKKworZXhlY3ZlOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfZXhlY3ZlCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgZXhlY3ZlCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mYWNjZXNzYXQuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2ZhY2Nlc3NhdC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk3ZGI0YzAKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mYWNjZXNzYXQuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgZmFjY2Vzc2F0CisgICAgLmFsaWduIDQKKyAgICAuZW50IGZhY2Nlc3NhdAorCitmYWNjZXNzYXQ6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9mYWNjZXNzYXQKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBmYWNjZXNzYXQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2ZjaGRpci5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZmNoZGlyLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTMyOThiZAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2ZjaGRpci5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBmY2hkaXIKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgZmNoZGlyCisKK2ZjaGRpcjoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2ZjaGRpcgorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIGZjaGRpcgpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZmNobW9kLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mY2htb2QuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mNDgzNTY3Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZmNobW9kLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIGZjaG1vZAorICAgIC5hbGlnbiA0CisgICAgLmVudCBmY2htb2QKKworZmNobW9kOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfZmNobW9kCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgZmNobW9kCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mY2htb2RhdC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZmNobW9kYXQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44YmExYmJlCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZmNobW9kYXQuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgZmNobW9kYXQKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgZmNobW9kYXQKKworZmNobW9kYXQ6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9mY2htb2RhdAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIGZjaG1vZGF0CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mY2hvd24uUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2ZjaG93bi5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjI0ZmMwOGYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mY2hvd24uUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgZmNob3duCisgICAgLmFsaWduIDQKKyAgICAuZW50IGZjaG93bgorCitmY2hvd246CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9mY2hvd24KKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBmY2hvd24KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2ZjaG93bmF0LlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mY2hvd25hdC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk4M2VkNTYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mY2hvd25hdC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBmY2hvd25hdAorICAgIC5hbGlnbiA0CisgICAgLmVudCBmY2hvd25hdAorCitmY2hvd25hdDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2ZjaG93bmF0CisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgZmNob3duYXQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2ZkYXRhc3luYy5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZmRhdGFzeW5jLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzEyNDM5ZAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2ZkYXRhc3luYy5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBmZGF0YXN5bmMKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgZmRhdGFzeW5jCisKK2ZkYXRhc3luYzoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2ZkYXRhc3luYworICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIGZkYXRhc3luYwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZmdldHhhdHRyLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mZ2V0eGF0dHIuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ZTc3ZTYxCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZmdldHhhdHRyLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIGZnZXR4YXR0cgorICAgIC5hbGlnbiA0CisgICAgLmVudCBmZ2V0eGF0dHIKKworZmdldHhhdHRyOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfZmdldHhhdHRyCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgZmdldHhhdHRyCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mbGlzdHhhdHRyLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mbGlzdHhhdHRyLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMjZlMjZlMQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2ZsaXN0eGF0dHIuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgZmxpc3R4YXR0cgorICAgIC5hbGlnbiA0CisgICAgLmVudCBmbGlzdHhhdHRyCisKK2ZsaXN0eGF0dHI6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9mbGlzdHhhdHRyCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgZmxpc3R4YXR0cgpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZmxvY2suUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2Zsb2NrLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjlhMzE0MgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2Zsb2NrLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIGZsb2NrCisgICAgLmFsaWduIDQKKyAgICAuZW50IGZsb2NrCisKK2Zsb2NrOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfZmxvY2sKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBmbG9jawpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZnJlbW92ZXhhdHRyLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mcmVtb3ZleGF0dHIuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kYjNlYjZjCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZnJlbW92ZXhhdHRyLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIGZyZW1vdmV4YXR0cgorICAgIC5hbGlnbiA0CisgICAgLmVudCBmcmVtb3ZleGF0dHIKKworZnJlbW92ZXhhdHRyOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfZnJlbW92ZXhhdHRyCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgZnJlbW92ZXhhdHRyCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mc2V0eGF0dHIuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2ZzZXR4YXR0ci5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjllNjY2ZjIKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mc2V0eGF0dHIuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgZnNldHhhdHRyCisgICAgLmFsaWduIDQKKyAgICAuZW50IGZzZXR4YXR0cgorCitmc2V0eGF0dHI6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9mc2V0eGF0dHIKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBmc2V0eGF0dHIKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2ZzdGF0LlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mc3RhdC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjczZDcyMzUKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mc3RhdC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBmc3RhdAorICAgIC5hbGlnbiA0CisgICAgLmVudCBmc3RhdAorCitmc3RhdDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2ZzdGF0NjQKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBmc3RhdApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZnN0YXRhdC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZnN0YXRhdC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNhZTIyOWUKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mc3RhdGF0LlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIGZzdGF0YXQKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgZnN0YXRhdAorCitmc3RhdGF0OgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfZnN0YXRhdDY0CisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgZnN0YXRhdApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZnN5bmMuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2ZzeW5jLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTFjZDMxNgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2ZzeW5jLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIGZzeW5jCisgICAgLmFsaWduIDQKKyAgICAuZW50IGZzeW5jCisKK2ZzeW5jOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfZnN5bmMKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBmc3luYwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZnRydW5jYXRlLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mdHJ1bmNhdGUuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41ZDcyYjQzCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZnRydW5jYXRlLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIGZ0cnVuY2F0ZQorICAgIC5hbGlnbiA0CisgICAgLmVudCBmdHJ1bmNhdGUKKworZnRydW5jYXRlOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfZnRydW5jYXRlCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgZnRydW5jYXRlCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mdHJ1bmNhdGU2NC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZnRydW5jYXRlNjQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMTZhZTM4Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZnRydW5jYXRlNjQuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgZnRydW5jYXRlNjQKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgZnRydW5jYXRlNjQKKworZnRydW5jYXRlNjQ6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9mdHJ1bmNhdGU2NAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIGZ0cnVuY2F0ZTY0CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9mdXRleC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZnV0ZXguUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NWU1MzdhCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZnV0ZXguUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgZnV0ZXgKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgZnV0ZXgKKworZnV0ZXg6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9mdXRleAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIGZ1dGV4CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9nZXRkZW50cy5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZ2V0ZGVudHMuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44ZmYwZjI2Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZ2V0ZGVudHMuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgZ2V0ZGVudHMKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgZ2V0ZGVudHMKKworZ2V0ZGVudHM6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9nZXRkZW50czY0CisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgZ2V0ZGVudHMKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2dldGVnaWQuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2dldGVnaWQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kYzJhMDRiCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZ2V0ZWdpZC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBnZXRlZ2lkCisgICAgLmFsaWduIDQKKyAgICAuZW50IGdldGVnaWQKKworZ2V0ZWdpZDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2dldGVnaWQKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBnZXRlZ2lkCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9nZXRldWlkLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9nZXRldWlkLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGJlY2E4OAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2dldGV1aWQuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgZ2V0ZXVpZAorICAgIC5hbGlnbiA0CisgICAgLmVudCBnZXRldWlkCisKK2dldGV1aWQ6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9nZXRldWlkCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgZ2V0ZXVpZApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZ2V0Z2lkLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9nZXRnaWQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42YTYxNWVlCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZ2V0Z2lkLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIGdldGdpZAorICAgIC5hbGlnbiA0CisgICAgLmVudCBnZXRnaWQKKworZ2V0Z2lkOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfZ2V0Z2lkCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgZ2V0Z2lkCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9nZXRncm91cHMuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2dldGdyb3Vwcy5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhiZTczMDgKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9nZXRncm91cHMuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgZ2V0Z3JvdXBzCisgICAgLmFsaWduIDQKKyAgICAuZW50IGdldGdyb3VwcworCitnZXRncm91cHM6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9nZXRncm91cHMKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBnZXRncm91cHMKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2dldGl0aW1lci5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZ2V0aXRpbWVyLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2RmMWQxMQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2dldGl0aW1lci5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBnZXRpdGltZXIKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgZ2V0aXRpbWVyCisKK2dldGl0aW1lcjoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2dldGl0aW1lcgorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIGdldGl0aW1lcgpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZ2V0cGVlcm5hbWUuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2dldHBlZXJuYW1lLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGEzYmVkYQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2dldHBlZXJuYW1lLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIGdldHBlZXJuYW1lCisgICAgLmFsaWduIDQKKyAgICAuZW50IGdldHBlZXJuYW1lCisKK2dldHBlZXJuYW1lOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfZ2V0cGVlcm5hbWUKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBnZXRwZWVybmFtZQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZ2V0cGdpZC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZ2V0cGdpZC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZkNzkzNTEKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9nZXRwZ2lkLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIGdldHBnaWQKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgZ2V0cGdpZAorCitnZXRwZ2lkOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfZ2V0cGdpZAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIGdldHBnaWQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2dldHBpZC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZ2V0cGlkLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjUyZTMxYgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2dldHBpZC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBnZXRwaWQKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgZ2V0cGlkCisKK2dldHBpZDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2dldHBpZAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIGdldHBpZApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZ2V0cHBpZC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZ2V0cHBpZC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVlM2ZlMTkKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9nZXRwcGlkLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIGdldHBwaWQKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgZ2V0cHBpZAorCitnZXRwcGlkOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfZ2V0cHBpZAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIGdldHBwaWQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2dldHJlc2dpZC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZ2V0cmVzZ2lkLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGU5YmYzOQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2dldHJlc2dpZC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBnZXRyZXNnaWQKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgZ2V0cmVzZ2lkCisKK2dldHJlc2dpZDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2dldHJlc2dpZAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIGdldHJlc2dpZApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZ2V0cmVzdWlkLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9nZXRyZXN1aWQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mZjI3Y2RlCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZ2V0cmVzdWlkLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIGdldHJlc3VpZAorICAgIC5hbGlnbiA0CisgICAgLmVudCBnZXRyZXN1aWQKKworZ2V0cmVzdWlkOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfZ2V0cmVzdWlkCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgZ2V0cmVzdWlkCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9nZXRybGltaXQuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2dldHJsaW1pdC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjcyZWQ3ZDgKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9nZXRybGltaXQuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgZ2V0cmxpbWl0CisgICAgLmFsaWduIDQKKyAgICAuZW50IGdldHJsaW1pdAorCitnZXRybGltaXQ6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9nZXRybGltaXQKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBnZXRybGltaXQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2dldHJ1c2FnZS5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZ2V0cnVzYWdlLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGMwZjdkMAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2dldHJ1c2FnZS5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBnZXRydXNhZ2UKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgZ2V0cnVzYWdlCisKK2dldHJ1c2FnZToKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2dldHJ1c2FnZQorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIGdldHJ1c2FnZQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZ2V0c29ja25hbWUuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2dldHNvY2tuYW1lLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTNkNDFmOQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2dldHNvY2tuYW1lLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIGdldHNvY2tuYW1lCisgICAgLmFsaWduIDQKKyAgICAuZW50IGdldHNvY2tuYW1lCisKK2dldHNvY2tuYW1lOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfZ2V0c29ja25hbWUKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBnZXRzb2NrbmFtZQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZ2V0c29ja29wdC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZ2V0c29ja29wdC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ1NWFlNmEKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9nZXRzb2Nrb3B0LlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIGdldHNvY2tvcHQKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgZ2V0c29ja29wdAorCitnZXRzb2Nrb3B0OgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfZ2V0c29ja29wdAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIGdldHNvY2tvcHQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2dldHRpZC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZ2V0dGlkLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZGUzN2RmNQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2dldHRpZC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBnZXR0aWQKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgZ2V0dGlkCisKK2dldHRpZDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2dldHRpZAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIGdldHRpZApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZ2V0dGltZW9mZGF5LlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9nZXR0aW1lb2ZkYXkuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hOWE5M2E1Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvZ2V0dGltZW9mZGF5LlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIGdldHRpbWVvZmRheQorICAgIC5hbGlnbiA0CisgICAgLmVudCBnZXR0aW1lb2ZkYXkKKworZ2V0dGltZW9mZGF5OgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfZ2V0dGltZW9mZGF5CisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgZ2V0dGltZW9mZGF5CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9nZXR1aWQuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2dldHVpZC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU1YmE2OTgKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9nZXR1aWQuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgZ2V0dWlkCisgICAgLmFsaWduIDQKKyAgICAuZW50IGdldHVpZAorCitnZXR1aWQ6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9nZXR1aWQKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBnZXR1aWQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2dldHhhdHRyLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9nZXR4YXR0ci5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjZjNzA1NzkKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9nZXR4YXR0ci5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBnZXR4YXR0cgorICAgIC5hbGlnbiA0CisgICAgLmVudCBnZXR4YXR0cgorCitnZXR4YXR0cjoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2dldHhhdHRyCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgZ2V0eGF0dHIKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2luaXRfbW9kdWxlLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9pbml0X21vZHVsZS5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVjZmJkMmYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9pbml0X21vZHVsZS5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBpbml0X21vZHVsZQorICAgIC5hbGlnbiA0CisgICAgLmVudCBpbml0X21vZHVsZQorCitpbml0X21vZHVsZToKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2luaXRfbW9kdWxlCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgaW5pdF9tb2R1bGUKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2lub3RpZnlfYWRkX3dhdGNoLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9pbm90aWZ5X2FkZF93YXRjaC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhkZGU2NjcKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9pbm90aWZ5X2FkZF93YXRjaC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBpbm90aWZ5X2FkZF93YXRjaAorICAgIC5hbGlnbiA0CisgICAgLmVudCBpbm90aWZ5X2FkZF93YXRjaAorCitpbm90aWZ5X2FkZF93YXRjaDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2lub3RpZnlfYWRkX3dhdGNoCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgaW5vdGlmeV9hZGRfd2F0Y2gKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2lub3RpZnlfaW5pdC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvaW5vdGlmeV9pbml0LlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2RlNDY2NwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2lub3RpZnlfaW5pdC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBpbm90aWZ5X2luaXQKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgaW5vdGlmeV9pbml0CisKK2lub3RpZnlfaW5pdDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2lub3RpZnlfaW5pdAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIGlub3RpZnlfaW5pdApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvaW5vdGlmeV9ybV93YXRjaC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvaW5vdGlmeV9ybV93YXRjaC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjFiMjk2NGUKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9pbm90aWZ5X3JtX3dhdGNoLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIGlub3RpZnlfcm1fd2F0Y2gKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgaW5vdGlmeV9ybV93YXRjaAorCitpbm90aWZ5X3JtX3dhdGNoOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfaW5vdGlmeV9ybV93YXRjaAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIGlub3RpZnlfcm1fd2F0Y2gKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2lvcHJpb19nZXQuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2lvcHJpb19nZXQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mN2YyNDQxCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvaW9wcmlvX2dldC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBpb3ByaW9fZ2V0CisgICAgLmFsaWduIDQKKyAgICAuZW50IGlvcHJpb19nZXQKKworaW9wcmlvX2dldDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2lvcHJpb19nZXQKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBpb3ByaW9fZ2V0CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9pb3ByaW9fc2V0LlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9pb3ByaW9fc2V0LlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzNhMzBlNwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2lvcHJpb19zZXQuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgaW9wcmlvX3NldAorICAgIC5hbGlnbiA0CisgICAgLmVudCBpb3ByaW9fc2V0CisKK2lvcHJpb19zZXQ6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9pb3ByaW9fc2V0CisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgaW9wcmlvX3NldApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMva2lsbC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMva2lsbC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE2NjQwZmYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9raWxsLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIGtpbGwKKyAgICAuYWxpZ24gNAorICAgIC5lbnQga2lsbAorCitraWxsOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfa2lsbAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIGtpbGwKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2tsb2djdGwuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2tsb2djdGwuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44YzQxZGNmCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMva2xvZ2N0bC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBrbG9nY3RsCisgICAgLmFsaWduIDQKKyAgICAuZW50IGtsb2djdGwKKwora2xvZ2N0bDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3N5c2xvZworICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIGtsb2djdGwKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2xjaG93bi5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvbGNob3duLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOWZiNDY2MAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2xjaG93bi5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBsY2hvd24KKyAgICAuYWxpZ24gNAorICAgIC5lbnQgbGNob3duCisKK2xjaG93bjoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2xjaG93bgorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIGxjaG93bgpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvbGdldHhhdHRyLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9sZ2V0eGF0dHIuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kNTQ2ZDI4Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvbGdldHhhdHRyLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIGxnZXR4YXR0cgorICAgIC5hbGlnbiA0CisgICAgLmVudCBsZ2V0eGF0dHIKKworbGdldHhhdHRyOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfbGdldHhhdHRyCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgbGdldHhhdHRyCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9saW5rLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9saW5rLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDA5NmI0NAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2xpbmsuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgbGluaworICAgIC5hbGlnbiA0CisgICAgLmVudCBsaW5rCisKK2xpbms6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9saW5rCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgbGluawpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvbGlzdGVuLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9saXN0ZW4uUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mMzY1ZDFkCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvbGlzdGVuLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIGxpc3RlbgorICAgIC5hbGlnbiA0CisgICAgLmVudCBsaXN0ZW4KKworbGlzdGVuOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfbGlzdGVuCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgbGlzdGVuCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9saXN0eGF0dHIuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2xpc3R4YXR0ci5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjkwYjQ1NDQKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9saXN0eGF0dHIuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgbGlzdHhhdHRyCisgICAgLmFsaWduIDQKKyAgICAuZW50IGxpc3R4YXR0cgorCitsaXN0eGF0dHI6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9saXN0eGF0dHIKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBsaXN0eGF0dHIKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2xsaXN0eGF0dHIuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2xsaXN0eGF0dHIuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5lNzRiZjg1Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvbGxpc3R4YXR0ci5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBsbGlzdHhhdHRyCisgICAgLmFsaWduIDQKKyAgICAuZW50IGxsaXN0eGF0dHIKKworbGxpc3R4YXR0cjoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2xsaXN0eGF0dHIKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBsbGlzdHhhdHRyCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9scmVtb3ZleGF0dHIuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2xyZW1vdmV4YXR0ci5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE4ZDhkZjkKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9scmVtb3ZleGF0dHIuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgbHJlbW92ZXhhdHRyCisgICAgLmFsaWduIDQKKyAgICAuZW50IGxyZW1vdmV4YXR0cgorCitscmVtb3ZleGF0dHI6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9scmVtb3ZleGF0dHIKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBscmVtb3ZleGF0dHIKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2xzZWVrLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9sc2Vlay5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJmNDg2YWMKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9sc2Vlay5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBsc2VlaworICAgIC5hbGlnbiA0CisgICAgLmVudCBsc2VlaworCitsc2VlazoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2xzZWVrCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgbHNlZWsKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2xzZXR4YXR0ci5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvbHNldHhhdHRyLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTlhMGZkZgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2xzZXR4YXR0ci5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBsc2V0eGF0dHIKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgbHNldHhhdHRyCisKK2xzZXR4YXR0cjoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX2xzZXR4YXR0cgorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIGxzZXR4YXR0cgpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvbHN0YXQuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2xzdGF0LlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzU1ZDFkYQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL2xzdGF0LlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIGxzdGF0CisgICAgLmFsaWduIDQKKyAgICAuZW50IGxzdGF0CisKK2xzdGF0OgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfbHN0YXQ2NAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIGxzdGF0CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9tYWR2aXNlLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9tYWR2aXNlLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNGRmNzMyNQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL21hZHZpc2UuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgbWFkdmlzZQorICAgIC5hbGlnbiA0CisgICAgLmVudCBtYWR2aXNlCisKK21hZHZpc2U6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9tYWR2aXNlCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgbWFkdmlzZQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvbWluY29yZS5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvbWluY29yZS5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjhmNDY3Y2QKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9taW5jb3JlLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIG1pbmNvcmUKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgbWluY29yZQorCittaW5jb3JlOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfbWluY29yZQorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIG1pbmNvcmUKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL21rZGlyLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9ta2Rpci5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFiZjdkYjgKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9ta2Rpci5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBta2RpcgorICAgIC5hbGlnbiA0CisgICAgLmVudCBta2RpcgorCitta2RpcjoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX21rZGlyCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgbWtkaXIKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL21rZGlyYXQuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL21rZGlyYXQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40Y2NiZTNiCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvbWtkaXJhdC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBta2RpcmF0CisgICAgLmFsaWduIDQKKyAgICAuZW50IG1rZGlyYXQKKworbWtkaXJhdDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX21rZGlyYXQKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBta2RpcmF0CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9ta25vZC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvbWtub2QuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41ZWJiMGFkCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvbWtub2QuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgbWtub2QKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgbWtub2QKKworbWtub2Q6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9ta25vZAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIG1rbm9kCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9tbG9jay5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvbWxvY2suUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45OWFjYTZlCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvbWxvY2suUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgbWxvY2sKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgbWxvY2sKKworbWxvY2s6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9tbG9jaworICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIG1sb2NrCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9tb3VudC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvbW91bnQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xYjMzODVhCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvbW91bnQuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgbW91bnQKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgbW91bnQKKworbW91bnQ6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9tb3VudAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIG1vdW50CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9tcHJvdGVjdC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvbXByb3RlY3QuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40ZGMzYmVhCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvbXByb3RlY3QuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgbXByb3RlY3QKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgbXByb3RlY3QKKworbXByb3RlY3Q6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9tcHJvdGVjdAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIG1wcm90ZWN0CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9tcmVtYXAuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL21yZW1hcC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjcyMWNjZDkKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9tcmVtYXAuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgbXJlbWFwCisgICAgLmFsaWduIDQKKyAgICAuZW50IG1yZW1hcAorCittcmVtYXA6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9tcmVtYXAKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBtcmVtYXAKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL21zeW5jLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9tc3luYy5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjM3ZTFjOWEKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9tc3luYy5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBtc3luYworICAgIC5hbGlnbiA0CisgICAgLmVudCBtc3luYworCittc3luYzoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX21zeW5jCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgbXN5bmMKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL211bmxvY2suUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL211bmxvY2suUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5iZWZjMjgyCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvbXVubG9jay5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBtdW5sb2NrCisgICAgLmFsaWduIDQKKyAgICAuZW50IG11bmxvY2sKKworbXVubG9jazoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX211bmxvY2sKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBtdW5sb2NrCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9tdW5tYXAuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL211bm1hcC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjViNzE3YTkKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9tdW5tYXAuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgbXVubWFwCisgICAgLmFsaWduIDQKKyAgICAuZW50IG11bm1hcAorCittdW5tYXA6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9tdW5tYXAKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBtdW5tYXAKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL25hbm9zbGVlcC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvbmFub3NsZWVwLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNThhY2UxMgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL25hbm9zbGVlcC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBuYW5vc2xlZXAKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgbmFub3NsZWVwCisKK25hbm9zbGVlcDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX25hbm9zbGVlcAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIG5hbm9zbGVlcApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvcGF1c2UuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3BhdXNlLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzAzNDZiNAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3BhdXNlLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIHBhdXNlCisgICAgLmFsaWduIDQKKyAgICAuZW50IHBhdXNlCisKK3BhdXNlOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfcGF1c2UKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBwYXVzZQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvcGVyZl9ldmVudF9vcGVuLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9wZXJmX2V2ZW50X29wZW4uUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yMmM5YzNjCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvcGVyZl9ldmVudF9vcGVuLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIHBlcmZfZXZlbnRfb3BlbgorICAgIC5hbGlnbiA0CisgICAgLmVudCBwZXJmX2V2ZW50X29wZW4KKworcGVyZl9ldmVudF9vcGVuOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfcGVyZl9ldmVudF9vcGVuCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgcGVyZl9ldmVudF9vcGVuCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9wZXJzb25hbGl0eS5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvcGVyc29uYWxpdHkuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wMDIwNDY5Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvcGVyc29uYWxpdHkuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgcGVyc29uYWxpdHkKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgcGVyc29uYWxpdHkKKworcGVyc29uYWxpdHk6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9wZXJzb25hbGl0eQorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIHBlcnNvbmFsaXR5CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9waXBlMi5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvcGlwZTIuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi45ZGZkZTI5Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvcGlwZTIuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgcGlwZTIKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgcGlwZTIKKworcGlwZTI6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9waXBlMgorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIHBpcGUyCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9wb2xsLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9wb2xsLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzFmZWM5NwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3BvbGwuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgcG9sbAorICAgIC5hbGlnbiA0CisgICAgLmVudCBwb2xsCisKK3BvbGw6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9wb2xsCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgcG9sbApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvcHJjdGwuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3ByY3RsLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYWFmMTM0NAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3ByY3RsLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIHByY3RsCisgICAgLmFsaWduIDQKKyAgICAuZW50IHByY3RsCisKK3ByY3RsOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfcHJjdGwKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBwcmN0bApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvcHJlYWQ2NC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvcHJlYWQ2NC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg2ZTgxN2MKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9wcmVhZDY0LlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIHByZWFkNjQKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgcHJlYWQ2NAorCitwcmVhZDY0OgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfcHJlYWQ2NAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIHByZWFkNjQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3B3cml0ZTY0LlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9wd3JpdGU2NC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmE4ZGNkOTgKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9wd3JpdGU2NC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBwd3JpdGU2NAorICAgIC5hbGlnbiA0CisgICAgLmVudCBwd3JpdGU2NAorCitwd3JpdGU2NDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3B3cml0ZTY0CisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgcHdyaXRlNjQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3JlYWQuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3JlYWQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43NTgxNmNkCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvcmVhZC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCByZWFkCisgICAgLmFsaWduIDQKKyAgICAuZW50IHJlYWQKKworcmVhZDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3JlYWQKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCByZWFkCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9yZWFkYWhlYWQuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3JlYWRhaGVhZC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjVlYzYwMGQKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9yZWFkYWhlYWQuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgcmVhZGFoZWFkCisgICAgLmFsaWduIDQKKyAgICAuZW50IHJlYWRhaGVhZAorCityZWFkYWhlYWQ6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9yZWFkYWhlYWQKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCByZWFkYWhlYWQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3JlYWRsaW5rLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9yZWFkbGluay5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNjZGQ1OTYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9yZWFkbGluay5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCByZWFkbGluaworICAgIC5hbGlnbiA0CisgICAgLmVudCByZWFkbGluaworCityZWFkbGluazoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3JlYWRsaW5rCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgcmVhZGxpbmsKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3JlYWR2LlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9yZWFkdi5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA1NjFjMTgKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9yZWFkdi5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCByZWFkdgorICAgIC5hbGlnbiA0CisgICAgLmVudCByZWFkdgorCityZWFkdjoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3JlYWR2CisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgcmVhZHYKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3JlY3Zmcm9tLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9yZWN2ZnJvbS5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmNmMzQ0MWQKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9yZWN2ZnJvbS5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCByZWN2ZnJvbQorICAgIC5hbGlnbiA0CisgICAgLmVudCByZWN2ZnJvbQorCityZWN2ZnJvbToKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3JlY3Zmcm9tCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgcmVjdmZyb20KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3JlY3Ztc2cuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3JlY3Ztc2cuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41ZjIyYzQ5Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvcmVjdm1zZy5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCByZWN2bXNnCisgICAgLmFsaWduIDQKKyAgICAuZW50IHJlY3Ztc2cKKworcmVjdm1zZzoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3JlY3Ztc2cKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCByZWN2bXNnCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9yZW1vdmV4YXR0ci5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvcmVtb3ZleGF0dHIuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ZDEyYjk2Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvcmVtb3ZleGF0dHIuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgcmVtb3ZleGF0dHIKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgcmVtb3ZleGF0dHIKKworcmVtb3ZleGF0dHI6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9yZW1vdmV4YXR0cgorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIHJlbW92ZXhhdHRyCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9yZW5hbWUuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3JlbmFtZS5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk1MGQ1NzkKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9yZW5hbWUuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgcmVuYW1lCisgICAgLmFsaWduIDQKKyAgICAuZW50IHJlbmFtZQorCityZW5hbWU6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9yZW5hbWUKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCByZW5hbWUKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3JlbmFtZWF0LlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9yZW5hbWVhdC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmEyZjNjNGYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9yZW5hbWVhdC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCByZW5hbWVhdAorICAgIC5hbGlnbiA0CisgICAgLmVudCByZW5hbWVhdAorCityZW5hbWVhdDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3JlbmFtZWF0CisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgcmVuYW1lYXQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3JtZGlyLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9ybWRpci5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJmNzdkMGQKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9ybWRpci5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBybWRpcgorICAgIC5hbGlnbiA0CisgICAgLmVudCBybWRpcgorCitybWRpcjoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3JtZGlyCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgcm1kaXIKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NjaGVkX2dldF9wcmlvcml0eV9tYXguUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NjaGVkX2dldF9wcmlvcml0eV9tYXguUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xNThiMGZlCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc2NoZWRfZ2V0X3ByaW9yaXR5X21heC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBzY2hlZF9nZXRfcHJpb3JpdHlfbWF4CisgICAgLmFsaWduIDQKKyAgICAuZW50IHNjaGVkX2dldF9wcmlvcml0eV9tYXgKKworc2NoZWRfZ2V0X3ByaW9yaXR5X21heDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3NjaGVkX2dldF9wcmlvcml0eV9tYXgKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBzY2hlZF9nZXRfcHJpb3JpdHlfbWF4CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zY2hlZF9nZXRfcHJpb3JpdHlfbWluLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zY2hlZF9nZXRfcHJpb3JpdHlfbWluLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGMwN2Q3MgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NjaGVkX2dldF9wcmlvcml0eV9taW4uUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgc2NoZWRfZ2V0X3ByaW9yaXR5X21pbgorICAgIC5hbGlnbiA0CisgICAgLmVudCBzY2hlZF9nZXRfcHJpb3JpdHlfbWluCisKK3NjaGVkX2dldF9wcmlvcml0eV9taW46CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9zY2hlZF9nZXRfcHJpb3JpdHlfbWluCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgc2NoZWRfZ2V0X3ByaW9yaXR5X21pbgpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc2NoZWRfZ2V0cGFyYW0uUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NjaGVkX2dldHBhcmFtLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNmFiYTdjZgotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NjaGVkX2dldHBhcmFtLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIHNjaGVkX2dldHBhcmFtCisgICAgLmFsaWduIDQKKyAgICAuZW50IHNjaGVkX2dldHBhcmFtCisKK3NjaGVkX2dldHBhcmFtOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfc2NoZWRfZ2V0cGFyYW0KKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBzY2hlZF9nZXRwYXJhbQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc2NoZWRfZ2V0c2NoZWR1bGVyLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zY2hlZF9nZXRzY2hlZHVsZXIuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zM2Q3ZjQ5Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc2NoZWRfZ2V0c2NoZWR1bGVyLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIHNjaGVkX2dldHNjaGVkdWxlcgorICAgIC5hbGlnbiA0CisgICAgLmVudCBzY2hlZF9nZXRzY2hlZHVsZXIKKworc2NoZWRfZ2V0c2NoZWR1bGVyOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfc2NoZWRfZ2V0c2NoZWR1bGVyCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgc2NoZWRfZ2V0c2NoZWR1bGVyCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zY2hlZF9ycl9nZXRfaW50ZXJ2YWwuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NjaGVkX3JyX2dldF9pbnRlcnZhbC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmU2MzRlZDAKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zY2hlZF9ycl9nZXRfaW50ZXJ2YWwuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgc2NoZWRfcnJfZ2V0X2ludGVydmFsCisgICAgLmFsaWduIDQKKyAgICAuZW50IHNjaGVkX3JyX2dldF9pbnRlcnZhbAorCitzY2hlZF9ycl9nZXRfaW50ZXJ2YWw6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9zY2hlZF9ycl9nZXRfaW50ZXJ2YWwKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBzY2hlZF9ycl9nZXRfaW50ZXJ2YWwKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NjaGVkX3NldGFmZmluaXR5LlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zY2hlZF9zZXRhZmZpbml0eS5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFlZmMyNDAKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zY2hlZF9zZXRhZmZpbml0eS5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBzY2hlZF9zZXRhZmZpbml0eQorICAgIC5hbGlnbiA0CisgICAgLmVudCBzY2hlZF9zZXRhZmZpbml0eQorCitzY2hlZF9zZXRhZmZpbml0eToKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3NjaGVkX3NldGFmZmluaXR5CisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgc2NoZWRfc2V0YWZmaW5pdHkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NjaGVkX3NldHBhcmFtLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zY2hlZF9zZXRwYXJhbS5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRkNjQ2YmQKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zY2hlZF9zZXRwYXJhbS5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBzY2hlZF9zZXRwYXJhbQorICAgIC5hbGlnbiA0CisgICAgLmVudCBzY2hlZF9zZXRwYXJhbQorCitzY2hlZF9zZXRwYXJhbToKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3NjaGVkX3NldHBhcmFtCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgc2NoZWRfc2V0cGFyYW0KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NjaGVkX3NldHNjaGVkdWxlci5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc2NoZWRfc2V0c2NoZWR1bGVyLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTc5ZTM5YwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NjaGVkX3NldHNjaGVkdWxlci5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBzY2hlZF9zZXRzY2hlZHVsZXIKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgc2NoZWRfc2V0c2NoZWR1bGVyCisKK3NjaGVkX3NldHNjaGVkdWxlcjoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3NjaGVkX3NldHNjaGVkdWxlcgorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIHNjaGVkX3NldHNjaGVkdWxlcgpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc2NoZWRfeWllbGQuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NjaGVkX3lpZWxkLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzdjOTlkYwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NjaGVkX3lpZWxkLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIHNjaGVkX3lpZWxkCisgICAgLmFsaWduIDQKKyAgICAuZW50IHNjaGVkX3lpZWxkCisKK3NjaGVkX3lpZWxkOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfc2NoZWRfeWllbGQKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBzY2hlZF95aWVsZApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc2VsZWN0LlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zZWxlY3QuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jZTQxMTJmCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc2VsZWN0LlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIHNlbGVjdAorICAgIC5hbGlnbiA0CisgICAgLmVudCBzZWxlY3QKKworc2VsZWN0OgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfX25ld3NlbGVjdAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIHNlbGVjdApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc2VuZGZpbGUuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NlbmRmaWxlLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzRjMTc2ZQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NlbmRmaWxlLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIHNlbmRmaWxlCisgICAgLmFsaWduIDQKKyAgICAuZW50IHNlbmRmaWxlCisKK3NlbmRmaWxlOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfc2VuZGZpbGUKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBzZW5kZmlsZQpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc2VuZG1zZy5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc2VuZG1zZy5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE5MTNmMTMKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zZW5kbXNnLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIHNlbmRtc2cKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgc2VuZG1zZworCitzZW5kbXNnOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfc2VuZG1zZworICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIHNlbmRtc2cKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NlbmR0by5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc2VuZHRvLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZjE3NzQzZAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NlbmR0by5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBzZW5kdG8KKyAgICAuYWxpZ24gNAorICAgIC5lbnQgc2VuZHRvCisKK3NlbmR0bzoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3NlbmR0bworICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIHNlbmR0bwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc2V0Z2lkLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zZXRnaWQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44M2RiZmU1Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc2V0Z2lkLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIHNldGdpZAorICAgIC5hbGlnbiA0CisgICAgLmVudCBzZXRnaWQKKworc2V0Z2lkOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfc2V0Z2lkCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgc2V0Z2lkCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zZXRncm91cHMuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NldGdyb3Vwcy5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmVmOTMyN2QKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zZXRncm91cHMuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgc2V0Z3JvdXBzCisgICAgLmFsaWduIDQKKyAgICAuZW50IHNldGdyb3VwcworCitzZXRncm91cHM6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9zZXRncm91cHMKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBzZXRncm91cHMKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NldGl0aW1lci5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc2V0aXRpbWVyLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYjA0MmUwNwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NldGl0aW1lci5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBzZXRpdGltZXIKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgc2V0aXRpbWVyCisKK3NldGl0aW1lcjoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3NldGl0aW1lcgorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIHNldGl0aW1lcgpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc2V0cGdpZC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc2V0cGdpZC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJkZGM4MjgKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zZXRwZ2lkLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIHNldHBnaWQKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgc2V0cGdpZAorCitzZXRwZ2lkOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfc2V0cGdpZAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIHNldHBnaWQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NldHByaW9yaXR5LlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zZXRwcmlvcml0eS5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjAyNTUwZTkKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zZXRwcmlvcml0eS5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBzZXRwcmlvcml0eQorICAgIC5hbGlnbiA0CisgICAgLmVudCBzZXRwcmlvcml0eQorCitzZXRwcmlvcml0eToKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3NldHByaW9yaXR5CisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgc2V0cHJpb3JpdHkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NldHJlZ2lkLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zZXRyZWdpZC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjYxOWIzYTEKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zZXRyZWdpZC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBzZXRyZWdpZAorICAgIC5hbGlnbiA0CisgICAgLmVudCBzZXRyZWdpZAorCitzZXRyZWdpZDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3NldHJlZ2lkCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgc2V0cmVnaWQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NldHJlc2dpZC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc2V0cmVzZ2lkLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uM2ZmOTRjNwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NldHJlc2dpZC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBzZXRyZXNnaWQKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgc2V0cmVzZ2lkCisKK3NldHJlc2dpZDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3NldHJlc2dpZAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIHNldHJlc2dpZApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc2V0cmxpbWl0LlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zZXRybGltaXQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zZWMzN2M1Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc2V0cmxpbWl0LlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIHNldHJsaW1pdAorICAgIC5hbGlnbiA0CisgICAgLmVudCBzZXRybGltaXQKKworc2V0cmxpbWl0OgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfc2V0cmxpbWl0CisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgc2V0cmxpbWl0CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zZXRzaWQuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NldHNpZC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJhMDk2NjMKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zZXRzaWQuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgc2V0c2lkCisgICAgLmFsaWduIDQKKyAgICAuZW50IHNldHNpZAorCitzZXRzaWQ6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9zZXRzaWQKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBzZXRzaWQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NldHNvY2tvcHQuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NldHNvY2tvcHQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kYzVlNjJmCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc2V0c29ja29wdC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBzZXRzb2Nrb3B0CisgICAgLmFsaWduIDQKKyAgICAuZW50IHNldHNvY2tvcHQKKworc2V0c29ja29wdDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3NldHNvY2tvcHQKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBzZXRzb2Nrb3B0CmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zZXR0aW1lb2ZkYXkuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NldHRpbWVvZmRheS5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmY3YzAzZWEKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zZXR0aW1lb2ZkYXkuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgc2V0dGltZW9mZGF5CisgICAgLmFsaWduIDQKKyAgICAuZW50IHNldHRpbWVvZmRheQorCitzZXR0aW1lb2ZkYXk6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9zZXR0aW1lb2ZkYXkKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBzZXR0aW1lb2ZkYXkKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NldHhhdHRyLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zZXR4YXR0ci5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJhYTc4YTQKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zZXR4YXR0ci5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBzZXR4YXR0cgorICAgIC5hbGlnbiA0CisgICAgLmVudCBzZXR4YXR0cgorCitzZXR4YXR0cjoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3NldHhhdHRyCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgc2V0eGF0dHIKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NodXRkb3duLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zaHV0ZG93bi5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI4MGQ5OWIKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zaHV0ZG93bi5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBzaHV0ZG93bgorICAgIC5hbGlnbiA0CisgICAgLmVudCBzaHV0ZG93bgorCitzaHV0ZG93bjoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3NodXRkb3duCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgc2h1dGRvd24KZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NpZ2FjdGlvbi5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc2lnYWN0aW9uLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNzAwZGE1NAotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NpZ2FjdGlvbi5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBzaWdhY3Rpb24KKyAgICAuYWxpZ24gNAorICAgIC5lbnQgc2lnYWN0aW9uCisKK3NpZ2FjdGlvbjoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3NpZ2FjdGlvbgorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIHNpZ2FjdGlvbgpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc2lnYWx0c3RhY2suUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NpZ2FsdHN0YWNrLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZDJhNGE5YQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NpZ2FsdHN0YWNrLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIHNpZ2FsdHN0YWNrCisgICAgLmFsaWduIDQKKyAgICAuZW50IHNpZ2FsdHN0YWNrCisKK3NpZ2FsdHN0YWNrOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfc2lnYWx0c3RhY2sKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBzaWdhbHRzdGFjawpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc2lncGVuZGluZy5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc2lncGVuZGluZy5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjY4ZGY0ZGIKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zaWdwZW5kaW5nLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIHNpZ3BlbmRpbmcKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgc2lncGVuZGluZworCitzaWdwZW5kaW5nOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfc2lncGVuZGluZworICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIHNpZ3BlbmRpbmcKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NpZ3Byb2NtYXNrLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zaWdwcm9jbWFzay5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE3YzAxY2IKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zaWdwcm9jbWFzay5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBzaWdwcm9jbWFzaworICAgIC5hbGlnbiA0CisgICAgLmVudCBzaWdwcm9jbWFzaworCitzaWdwcm9jbWFzazoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3NpZ3Byb2NtYXNrCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgc2lncHJvY21hc2sKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NvY2tldC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc29ja2V0LlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uZTdkNDNmOQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3NvY2tldC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBzb2NrZXQKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgc29ja2V0CisKK3NvY2tldDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3NvY2tldAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIHNvY2tldApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc29ja2V0cGFpci5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc29ja2V0cGFpci5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk3YzY3YWYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zb2NrZXRwYWlyLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIHNvY2tldHBhaXIKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgc29ja2V0cGFpcgorCitzb2NrZXRwYWlyOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfc29ja2V0cGFpcgorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIHNvY2tldHBhaXIKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3N0YXQuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3N0YXQuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hZWM5MTBkCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc3RhdC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBzdGF0CisgICAgLmFsaWduIDQKKyAgICAuZW50IHN0YXQKKworc3RhdDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3N0YXQ2NAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIHN0YXQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3N5bWxpbmsuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3N5bWxpbmsuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mODFjNmRkCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc3ltbGluay5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBzeW1saW5rCisgICAgLmFsaWduIDQKKyAgICAuZW50IHN5bWxpbmsKKworc3ltbGluazoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3N5bWxpbmsKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBzeW1saW5rCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zeW5jLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zeW5jLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTEyMjg3MwotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3N5bmMuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgc3luYworICAgIC5hbGlnbiA0CisgICAgLmVudCBzeW5jCisKK3N5bmM6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl9zeW5jCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgc3luYwpkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc3lzY2FsbC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc3lzY2FsbC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjIxOTJiZDUKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy9zeXNjYWxsLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIHN5c2NhbGwKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgc3lzY2FsbAorCitzeXNjYWxsOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfc3lzY2FsbAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIHN5c2NhbGwKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3N5c2luZm8uUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3N5c2luZm8uUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi40NTc3YWY5Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvc3lzaW5mby5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCBzeXNpbmZvCisgICAgLmFsaWduIDQKKyAgICAuZW50IHN5c2luZm8KKworc3lzaW5mbzoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3N5c2luZm8KKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCBzeXNpbmZvCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy90Z2tpbGwuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3Rna2lsbC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjU3YjNhODUKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy90Z2tpbGwuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgdGdraWxsCisgICAgLmFsaWduIDQKKyAgICAuZW50IHRna2lsbAorCit0Z2tpbGw6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl90Z2tpbGwKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCB0Z2tpbGwKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3RpbWVzLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy90aW1lcy5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjNlODk1MGQKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy90aW1lcy5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCB0aW1lcworICAgIC5hbGlnbiA0CisgICAgLmVudCB0aW1lcworCit0aW1lczoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3RpbWVzCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgdGltZXMKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3RraWxsLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy90a2lsbC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjMwMzdiYWEKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy90a2lsbC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCB0a2lsbAorICAgIC5hbGlnbiA0CisgICAgLmVudCB0a2lsbAorCit0a2lsbDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3RraWxsCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgdGtpbGwKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3RydW5jYXRlLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy90cnVuY2F0ZS5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRhOGYxMmMKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy90cnVuY2F0ZS5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCB0cnVuY2F0ZQorICAgIC5hbGlnbiA0CisgICAgLmVudCB0cnVuY2F0ZQorCit0cnVuY2F0ZToKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3RydW5jYXRlCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgdHJ1bmNhdGUKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3VtYXNrLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy91bWFzay5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmVlZTkxMWUKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy91bWFzay5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCB1bWFzaworICAgIC5hbGlnbiA0CisgICAgLmVudCB1bWFzaworCit1bWFzazoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3VtYXNrCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgdW1hc2sKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3Vtb3VudDIuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3Vtb3VudDIuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jNmQ5ZGY2Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvdW1vdW50Mi5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCB1bW91bnQyCisgICAgLmFsaWduIDQKKyAgICAuZW50IHVtb3VudDIKKwordW1vdW50MjoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3Vtb3VudDIKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCB1bW91bnQyCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy91bmFtZS5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvdW5hbWUuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43ZTRmNzgwCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvdW5hbWUuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgdW5hbWUKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgdW5hbWUKKwordW5hbWU6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl91bmFtZQorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIHVuYW1lCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy91bmxpbmsuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3VubGluay5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZkOGRhZDkKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy91bmxpbmsuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgdW5saW5rCisgICAgLmFsaWduIDQKKyAgICAuZW50IHVubGluaworCit1bmxpbms6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl91bmxpbmsKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCB1bmxpbmsKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3VubGlua2F0LlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy91bmxpbmthdC5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjc5M2FiNWUKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy91bmxpbmthdC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCB1bmxpbmthdAorICAgIC5hbGlnbiA0CisgICAgLmVudCB1bmxpbmthdAorCit1bmxpbmthdDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3VubGlua2F0CisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgdW5saW5rYXQKZGlmZiAtLWdpdCBhL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3V0aW1lbnNhdC5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvdXRpbWVuc2F0LlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNDM1YzQ5ZQotLS0gL2Rldi9udWxsCisrKyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3V0aW1lbnNhdC5TCkBAIC0wLDAgKzEsMjIgQEAKKy8qIGF1dG9nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHkgKi8KKyNpbmNsdWRlIDxzeXMvbGludXgtc3lzY2FsbHMuaD4KKyAgICAudGV4dAorICAgIC5nbG9ibCB1dGltZW5zYXQKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgdXRpbWVuc2F0CisKK3V0aW1lbnNhdDoKKyAgICAuc2V0IG5vcmVvcmRlcgorICAgIC5jcGxvYWQgJHQ5CisgICAgbGkgJHYwLCBfX05SX3V0aW1lbnNhdAorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIHV0aW1lbnNhdApkaWZmIC0tZ2l0IGEvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvdXRpbWVzLlMgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy91dGltZXMuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44Y2UxZTQ0Ci0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvdXRpbWVzLlMKQEAgLTAsMCArMSwyMiBAQAorLyogYXV0b2dlbmVyYXRlZCBieSBnZW5zeXNjYWxscy5weSAqLworI2luY2x1ZGUgPHN5cy9saW51eC1zeXNjYWxscy5oPgorICAgIC50ZXh0CisgICAgLmdsb2JsIHV0aW1lcworICAgIC5hbGlnbiA0CisgICAgLmVudCB1dGltZXMKKwordXRpbWVzOgorICAgIC5zZXQgbm9yZW9yZGVyCisgICAgLmNwbG9hZCAkdDkKKyAgICBsaSAkdjAsIF9fTlJfdXRpbWVzCisgICAgc3lzY2FsbAorICAgIGJuZXogJGEzLCAxZgorICAgIG1vdmUgJGEwLCAkdjAKKyAgICBqICRyYQorICAgIG5vcAorMToKKyAgICBsYSAkdDksX19zZXRfZXJybm8KKyAgICBqICR0OQorICAgIG5vcAorICAgIC5zZXQgcmVvcmRlcgorICAgIC5lbmQgdXRpbWVzCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy93cml0ZS5TIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvd3JpdGUuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hNzcyYWNlCi0tLSAvZGV2L251bGwKKysrIGIvbGliYy9hcmNoLW1pcHMvc3lzY2FsbHMvd3JpdGUuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgd3JpdGUKKyAgICAuYWxpZ24gNAorICAgIC5lbnQgd3JpdGUKKword3JpdGU6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl93cml0ZQorICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kIHdyaXRlCmRpZmYgLS1naXQgYS9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy93cml0ZXYuUyBiL2xpYmMvYXJjaC1taXBzL3N5c2NhbGxzL3dyaXRldi5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmJkYWNiNDIKLS0tIC9kZXYvbnVsbAorKysgYi9saWJjL2FyY2gtbWlwcy9zeXNjYWxscy93cml0ZXYuUwpAQCAtMCwwICsxLDIyIEBACisvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgd3JpdGV2CisgICAgLmFsaWduIDQKKyAgICAuZW50IHdyaXRldgorCit3cml0ZXY6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgX19OUl93cml0ZXYKKyAgICBzeXNjYWxsCisgICAgYm5leiAkYTMsIDFmCisgICAgbW92ZSAkYTAsICR2MAorICAgIGogJHJhCisgICAgbm9wCisxOgorICAgIGxhICR0OSxfX3NldF9lcnJubworICAgIGogJHQ5CisgICAgbm9wCisgICAgLnNldCByZW9yZGVyCisgICAgLmVuZCB3cml0ZXYKZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL21hbGxvY19kZWJ1Z19sZWFrLmMgYi9saWJjL2Jpb25pYy9tYWxsb2NfZGVidWdfbGVhay5jCmluZGV4IGUwYmNlZTkuLmU1ODQ1MDIgMTAwNjQ0Ci0tLSBhL2xpYmMvYmlvbmljL21hbGxvY19kZWJ1Z19sZWFrLmMKKysrIGIvbGliYy9iaW9uaWMvbWFsbG9jX2RlYnVnX2xlYWsuYwpAQCAtMjUsMjYgKzI1LDI2IEBACiAgKiBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKICAqIFNVQ0ggREFNQUdFLgogICovCisKKyNpbmNsdWRlIDxkbGZjbi5oPgogI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8ZmNudGwuaD4KICNpbmNsdWRlIDxwdGhyZWFkLmg+CisjaW5jbHVkZSA8c3RkYXJnLmg+CisjaW5jbHVkZSA8c3RkZGVmLmg+CisjaW5jbHVkZSA8c3RkaW50Lmg+CiAjaW5jbHVkZSA8c3RkaW8uaD4KLSNpbmNsdWRlIDxhcnBhL2luZXQuaD4KLSNpbmNsdWRlIDxzeXMvc29ja2V0Lmg+CiAjaW5jbHVkZSA8c3RkbGliLmg+CiAjaW5jbHVkZSA8c3RyaW5nLmg+CiAjaW5jbHVkZSA8dW5pc3RkLmg+Ci0jaW5jbHVkZSA8ZXJybm8uaD4KLSNpbmNsdWRlIDxzdGRkZWYuaD4KLSNpbmNsdWRlIDxzdGRhcmcuaD4KLSNpbmNsdWRlIDxmY250bC5oPgogI2luY2x1ZGUgPHVud2luZC5oPgotI2luY2x1ZGUgPGRsZmNuLmg+CiAKLSNpbmNsdWRlIDxzeXMvc29ja2V0Lmg+Ci0jaW5jbHVkZSA8c3lzL3VuLmg+CisjaW5jbHVkZSA8YXJwYS9pbmV0Lmg+CiAjaW5jbHVkZSA8c3lzL3NlbGVjdC5oPgotI2luY2x1ZGUgPHN5cy90eXBlcy5oPgorI2luY2x1ZGUgPHN5cy9zb2NrZXQuaD4KICNpbmNsdWRlIDxzeXMvc3lzdGVtX3Byb3BlcnRpZXMuaD4KKyNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KKyNpbmNsdWRlIDxzeXMvdW4uaD4KIAogI2luY2x1ZGUgImRsbWFsbG9jLmgiCiAjaW5jbHVkZSAibG9nZC5oIgpAQCAtMzcyLDcgKzM3MiwxMSBAQAogCiB2b2lkKiBjaGtfbWFsbG9jKHNpemVfdCBieXRlcykKIHsKLSAgICBjaGFyKiBidWZmZXIgPSAoY2hhciopZGxtYWxsb2MoYnl0ZXMgKyBDSEtfT1ZFUkhFQURfU0laRSk7CisgICAgc2l6ZV90IHNpemUgPSBieXRlcyArIENIS19PVkVSSEVBRF9TSVpFOworICAgIGlmIChzaXplIDwgYnl0ZXMpIHsgLy8gT3ZlcmZsb3cuCisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgICB1aW50OF90KiBidWZmZXIgPSAodWludDhfdCopIGRsbWFsbG9jKHNpemUpOwogICAgIGlmIChidWZmZXIpIHsKICAgICAgICAgbWVtc2V0KGJ1ZmZlciwgQ0hLX1NFTlRJTkVMX1ZBTFVFLCBieXRlcyArIENIS19PVkVSSEVBRF9TSVpFKTsKICAgICAgICAgc2l6ZV90IG9mZnNldCA9IGRsbWFsbG9jX3VzYWJsZV9zaXplKGJ1ZmZlcikgLSBzaXplb2Yoc2l6ZV90KTsKQEAgLTUwNSw3ICs1MDksMTIgQEAKICAgICAvLyAxLiBhbGxvY2F0ZSBlbm91Z2ggbWVtb3J5IGFuZCBpbmNsdWRlIG91ciBoZWFkZXIKICAgICAvLyAyLiBzZXQgdGhlIGJhc2UgcG9pbnRlciB0byBiZSByaWdodCBhZnRlciBvdXIgaGVhZGVyCiAKLSAgICB2b2lkKiBiYXNlID0gZGxtYWxsb2MoYnl0ZXMgKyBzaXplb2YoQWxsb2NhdGlvbkVudHJ5KSk7CisgICAgc2l6ZV90IHNpemUgPSBieXRlcyArIHNpemVvZihBbGxvY2F0aW9uRW50cnkpOworICAgIGlmIChzaXplIDwgYnl0ZXMpIHsgLy8gT3ZlcmZsb3cuCisgICAgICAgIHJldHVybiBOVUxMOworICAgIH0KKworICAgIHZvaWQqIGJhc2UgPSBkbG1hbGxvYyhzaXplKTsKICAgICBpZiAoYmFzZSAhPSBOVUxMKSB7CiAgICAgICAgIHB0aHJlYWRfbXV0ZXhfbG9jaygmZ0FsbG9jYXRpb25zTXV0ZXgpOwogCkBAIC02MTUsNiArNjI0LDEwIEBACiAgICAgLy8gd2Ugd2lsbCBhbGlnbiBieSBhdCBsZWFzdCBNQUxMT0NfQUxJR05NRU5UIGJ5dGVzCiAgICAgLy8gYW5kIGF0IG1vc3QgYWxpZ25tZW50LU1BTExPQ19BTElHTk1FTlQgYnl0ZXMKICAgICBzaXplX3Qgc2l6ZSA9IChhbGlnbm1lbnQtTUFMTE9DX0FMSUdOTUVOVCkgKyBieXRlczsKKyAgICBpZiAoc2l6ZSA8IGJ5dGVzKSB7IC8vIE92ZXJmbG93LgorICAgICAgICByZXR1cm4gTlVMTDsKKyAgICB9CisKICAgICB2b2lkKiBiYXNlID0gbGVha19tYWxsb2Moc2l6ZSk7CiAgICAgaWYgKGJhc2UgIT0gTlVMTCkgewogICAgICAgICBpbnRwdHJfdCBwdHIgPSAoaW50cHRyX3QpYmFzZTsKZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3B0aHJlYWQuYyBiL2xpYmMvYmlvbmljL3B0aHJlYWQuYwppbmRleCA1Y2FkMTY3Li4yZTJjMDlkIDEwMDY0NAotLS0gYS9saWJjL2Jpb25pYy9wdGhyZWFkLmMKKysrIGIvbGliYy9iaW9uaWMvcHRocmVhZC5jCkBAIC0yNSwzMSArMjUsMzIgQEAKICAqIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgogICogU1VDSCBEQU1BR0UuCiAgKi8KLSNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KLSNpbmNsdWRlIDx1bmlzdGQuaD4KKworI2luY2x1ZGUgPGFzc2VydC5oPgorI2luY2x1ZGUgPGVycm5vLmg+CisjaW5jbHVkZSA8ZmNudGwuaD4KKyNpbmNsdWRlIDxsaW1pdHMuaD4KKyNpbmNsdWRlIDxtYWxsb2MuaD4KKyNpbmNsdWRlIDxtZW1vcnkuaD4KKyNpbmNsdWRlIDxwdGhyZWFkLmg+CiAjaW5jbHVkZSA8c2lnbmFsLmg+CiAjaW5jbHVkZSA8c3RkaW50Lmg+CiAjaW5jbHVkZSA8c3RkaW8uaD4KICNpbmNsdWRlIDxzdGRsaWIuaD4KLSNpbmNsdWRlIDxlcnJuby5oPgogI2luY2x1ZGUgPHN5cy9hdG9taWNzLmg+Ci0jaW5jbHVkZSA8YmlvbmljX3Rscy5oPgogI2luY2x1ZGUgPHN5cy9tbWFuLmg+Ci0jaW5jbHVkZSA8cHRocmVhZC5oPgotI2luY2x1ZGUgPHRpbWUuaD4KLSNpbmNsdWRlICJwdGhyZWFkX2ludGVybmFsLmgiCi0jaW5jbHVkZSAidGhyZWFkX3ByaXZhdGUuaCIKLSNpbmNsdWRlIDxsaW1pdHMuaD4KLSNpbmNsdWRlIDxtZW1vcnkuaD4KLSNpbmNsdWRlIDxhc3NlcnQuaD4KLSNpbmNsdWRlIDxtYWxsb2MuaD4KLSNpbmNsdWRlIDxiaW9uaWNfZnV0ZXguaD4KLSNpbmNsdWRlIDxiaW9uaWNfYXRvbWljX2lubGluZS5oPgogI2luY2x1ZGUgPHN5cy9wcmN0bC5oPgogI2luY2x1ZGUgPHN5cy9zdGF0Lmg+Ci0jaW5jbHVkZSA8ZmNudGwuaD4KLSNpbmNsdWRlIDxzdGRpby5oPgotI2luY2x1ZGUgPGJpb25pY19wdGhyZWFkLmg+CisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisjaW5jbHVkZSA8dGltZS5oPgorI2luY2x1ZGUgPHVuaXN0ZC5oPgorCisjaW5jbHVkZSAiYmlvbmljX2F0b21pY19pbmxpbmUuaCIKKyNpbmNsdWRlICJiaW9uaWNfZnV0ZXguaCIKKyNpbmNsdWRlICJiaW9uaWNfcHRocmVhZC5oIgorI2luY2x1ZGUgImJpb25pY190bHMuaCIKKyNpbmNsdWRlICJwdGhyZWFkX2ludGVybmFsLmgiCisjaW5jbHVkZSAidGhyZWFkX3ByaXZhdGUuaCIKIAogZXh0ZXJuIHZvaWQgcHRocmVhZF9kZWJ1Z19tdXRleF9sb2NrX2NoZWNrKHB0aHJlYWRfbXV0ZXhfdCAqbXV0ZXgpOwogZXh0ZXJuIHZvaWQgcHRocmVhZF9kZWJ1Z19tdXRleF91bmxvY2tfY2hlY2socHRocmVhZF9tdXRleF90ICptdXRleCk7CkBAIC04MCw2ICs4MSw4IEBACiAKIHZvaWQgQVRUUklCVVRFUyBfdGhyZWFkX2NyZWF0ZWRfaG9vayhwaWRfdCB0aHJlYWRfaWQpOwogCitzdGF0aWMgY29uc3QgaW50IGtQdGhyZWFkSW5pdEZhaWxlZCA9IDE7CisKICNkZWZpbmUgUFRIUkVBRF9BVFRSX0ZMQUdfREVUQUNIRUQgICAgICAweDAwMDAwMDAxCiAjZGVmaW5lIFBUSFJFQURfQVRUUl9GTEFHX1VTRVJfU1RBQ0sgICAgMHgwMDAwMDAwMgogCkBAIC05NywzNSArMTAwLDE2IEBACiAgICAgLnNjaGVkX3ByaW9yaXR5ID0gMAogfTsKIAotI2RlZmluZSAgSU5JVF9USFJFQURTICAxCi0KLXN0YXRpYyBwdGhyZWFkX2ludGVybmFsX3QqICBnVGhyZWFkTGlzdCA9IE5VTEw7CitzdGF0aWMgcHRocmVhZF9pbnRlcm5hbF90KiBnVGhyZWFkTGlzdCA9IE5VTEw7CiBzdGF0aWMgcHRocmVhZF9tdXRleF90IGdUaHJlYWRMaXN0TG9jayA9IFBUSFJFQURfTVVURVhfSU5JVElBTElaRVI7CiBzdGF0aWMgcHRocmVhZF9tdXRleF90IGdEZWJ1Z2dlck5vdGlmaWNhdGlvbkxvY2sgPSBQVEhSRUFEX01VVEVYX0lOSVRJQUxJWkVSOwogCiAKLS8qIHdlIHNpbXBseSBtYWxsb2MvZnJlZSB0aGUgaW50ZXJuYWwgcHRocmVhZF9pbnRlcm5hbF90IHN0cnVjdHVyZXMuIHdlIG1heQotICogd2FudCB0byB1c2UgYSBkaWZmZXJlbnQgYWxsb2NhdGlvbiBzY2hlbWUgaW4gdGhlIGZ1dHVyZSwgYnV0IHRoaXMgb25lIHNob3VsZAotICogYmUgbGFyZ2VseSBlbm91Z2gKLSAqLwotc3RhdGljIHB0aHJlYWRfaW50ZXJuYWxfdCoKLV9wdGhyZWFkX2ludGVybmFsX2FsbG9jKHZvaWQpCi17Ci0gICAgcHRocmVhZF9pbnRlcm5hbF90KiAgIHRocmVhZDsKLQotICAgIHRocmVhZCA9IGNhbGxvYyggc2l6ZW9mKCp0aHJlYWQpLCAxICk7Ci0gICAgaWYgKHRocmVhZCkKLSAgICAgICAgdGhyZWFkLT5pbnRlcm4gPSAxOwotCi0gICAgcmV0dXJuIHRocmVhZDsKLX0KLQogc3RhdGljIHZvaWQKLV9wdGhyZWFkX2ludGVybmFsX2ZyZWUoIHB0aHJlYWRfaW50ZXJuYWxfdCogIHRocmVhZCApCitfcHRocmVhZF9pbnRlcm5hbF9mcmVlKHB0aHJlYWRfaW50ZXJuYWxfdCogdGhyZWFkKQogewotICAgIGlmICh0aHJlYWQgJiYgdGhyZWFkLT5pbnRlcm4pIHsKLSAgICAgICAgdGhyZWFkLT5pbnRlcm4gPSAwOyAgLyoganVzdCBpbiBjYXNlICovCi0gICAgICAgIGZyZWUgKHRocmVhZCk7CisgICAgaWYgKHRocmVhZCAhPSBOVUxMKSB7CisgICAgICAgIGZyZWUodGhyZWFkKTsKICAgICB9CiB9CiAKQEAgLTE5NCwzMiArMTc4LDM1IEBACiAKIAogLyoKLSAqIFRoaXMgdHJhbXBvbGluZSBpcyBjYWxsZWQgZnJvbSB0aGUgYXNzZW1ibHkgY2xvbmUoKSBmdW5jdGlvbgorICogVGhpcyB0cmFtcG9saW5lIGlzIGNhbGxlZCBmcm9tIHRoZSBhc3NlbWJseSBfcHRocmVhZF9jbG9uZSgpIGZ1bmN0aW9uLgogICovCiB2b2lkIF9fdGhyZWFkX2VudHJ5KGludCAoKmZ1bmMpKHZvaWQqKSwgdm9pZCAqYXJnLCB2b2lkICoqdGxzKQogewotICAgIGludCByZXRWYWx1ZTsKLSAgICBwdGhyZWFkX2ludGVybmFsX3QgKiB0aHJJbmZvOwotCiAgICAgLy8gV2FpdCBmb3Igb3VyIGNyZWF0aW5nIHRocmVhZCB0byByZWxlYXNlIHVzLiBUaGlzIGxldHMgaXQgaGF2ZSB0aW1lIHRvCi0gICAgLy8gbm90aWZ5IGdkYiBhYm91dCB0aGlzIHRocmVhZCBiZWZvcmUgaXQgc3RhcnRzIGRvaW5nIGFueXRoaW5nLgorICAgIC8vIG5vdGlmeSBnZGIgYWJvdXQgdGhpcyB0aHJlYWQgYmVmb3JlIHdlIHN0YXJ0IGRvaW5nIGFueXRoaW5nLgogICAgIC8vCiAgICAgLy8gVGhpcyBhbHNvIHByb3ZpZGVzIHRoZSBtZW1vcnkgYmFycmllciBuZWVkZWQgdG8gZW5zdXJlIHRoYXQgYWxsIG1lbW9yeQogICAgIC8vIGFjY2Vzc2VzIHByZXZpb3VzbHkgbWFkZSBieSB0aGUgY3JlYXRpbmcgdGhyZWFkIGFyZSB2aXNpYmxlIHRvIHVzLgotICAgIHB0aHJlYWRfbXV0ZXhfdCAqIHN0YXJ0X211dGV4ID0gKHB0aHJlYWRfbXV0ZXhfdCAqKSZ0bHNbVExTX1NMT1RfU0VMRl07CisgICAgcHRocmVhZF9tdXRleF90KiBzdGFydF9tdXRleCA9IChwdGhyZWFkX211dGV4X3QqKSAmdGxzW1RMU19TTE9UX1NFTEZdOwogICAgIHB0aHJlYWRfbXV0ZXhfbG9jayhzdGFydF9tdXRleCk7CiAgICAgcHRocmVhZF9tdXRleF9kZXN0cm95KHN0YXJ0X211dGV4KTsKIAotICAgIHRockluZm8gPSAocHRocmVhZF9pbnRlcm5hbF90ICopIHRsc1tUTFNfU0xPVF9USFJFQURfSURdOworICAgIHB0aHJlYWRfaW50ZXJuYWxfdCogdGhyZWFkID0gKHB0aHJlYWRfaW50ZXJuYWxfdCopIHRsc1tUTFNfU0xPVF9USFJFQURfSURdOworICAgIF9faW5pdF90bHModGxzLCB0aHJlYWQpOwogCi0gICAgX19pbml0X3RscyggdGxzLCB0aHJJbmZvICk7CisgICAgaWYgKCh0aHJlYWQtPmludGVybmFsX2ZsYWdzICYga1B0aHJlYWRJbml0RmFpbGVkKSAhPSAwKSB7CisgICAgICAgIHB0aHJlYWRfZXhpdChOVUxMKTsKKyAgICB9CiAKLSAgICBwdGhyZWFkX2V4aXQoICh2b2lkKilmdW5jKGFyZykgKTsKKyAgICBpbnQgcmVzdWx0ID0gZnVuYyhhcmcpOworICAgIHB0aHJlYWRfZXhpdCgodm9pZCopIHJlc3VsdCk7CiB9CiAKIF9fTElCQ19BQklfUFJJVkFURV9fCi12b2lkIF9pbml0X3RocmVhZChwdGhyZWFkX2ludGVybmFsX3QgKiB0aHJlYWQsIHBpZF90IGtlcm5lbF9pZCwgcHRocmVhZF9hdHRyX3QgKiBhdHRyLCB2b2lkICogc3RhY2tfYmFzZSkKK2ludCBfaW5pdF90aHJlYWQocHRocmVhZF9pbnRlcm5hbF90ICogdGhyZWFkLCBwaWRfdCBrZXJuZWxfaWQsIHB0aHJlYWRfYXR0cl90ICogYXR0ciwgdm9pZCAqIHN0YWNrX2Jhc2UpCiB7CisgICAgaW50IGVycm9yID0gMDsKKwogICAgIGlmIChhdHRyID09IE5VTEwpIHsKICAgICAgICAgdGhyZWFkLT5hdHRyID0gZ0RlZmF1bHRQdGhyZWFkQXR0cjsKICAgICB9IGVsc2UgewpAQCAtMjI4LDQwICsyMTUsNDIgQEAKICAgICB0aHJlYWQtPmF0dHIuc3RhY2tfYmFzZSA9IHN0YWNrX2Jhc2U7CiAgICAgdGhyZWFkLT5rZXJuZWxfaWQgICAgICAgPSBrZXJuZWxfaWQ7CiAKLSAgICAvLyBzZXQgdGhlIHNjaGVkdWxpbmcgcG9saWN5L3ByaW9yaXR5IG9mIHRoZSB0aHJlYWQKKyAgICAvLyBNYWtlIGEgbm90ZSBvZiB3aGV0aGVyIHRoZSB1c2VyIHN1cHBsaWVkIHRoaXMgc3RhY2sgKHNvIHdlIGtub3cgd2hldGhlciBvciBub3QgdG8gZnJlZSBpdCkuCisgICAgaWYgKGF0dHItPnN0YWNrX2Jhc2UgPT0gc3RhY2tfYmFzZSkgeworICAgICAgICB0aHJlYWQtPmF0dHIuZmxhZ3MgfD0gUFRIUkVBRF9BVFRSX0ZMQUdfVVNFUl9TVEFDSzsKKyAgICB9CisKKyAgICAvLyBTZXQgdGhlIHNjaGVkdWxpbmcgcG9saWN5L3ByaW9yaXR5IG9mIHRoZSB0aHJlYWQuCiAgICAgaWYgKHRocmVhZC0+YXR0ci5zY2hlZF9wb2xpY3kgIT0gU0NIRURfTk9STUFMKSB7CiAgICAgICAgIHN0cnVjdCBzY2hlZF9wYXJhbSBwYXJhbTsKICAgICAgICAgcGFyYW0uc2NoZWRfcHJpb3JpdHkgPSB0aHJlYWQtPmF0dHIuc2NoZWRfcHJpb3JpdHk7Ci0gICAgICAgIHNjaGVkX3NldHNjaGVkdWxlcihrZXJuZWxfaWQsIHRocmVhZC0+YXR0ci5zY2hlZF9wb2xpY3ksICZwYXJhbSk7CisgICAgICAgIGlmIChzY2hlZF9zZXRzY2hlZHVsZXIoa2VybmVsX2lkLCB0aHJlYWQtPmF0dHIuc2NoZWRfcG9saWN5LCAmcGFyYW0pID09IC0xKSB7CisgICAgICAgICAgICBlcnJvciA9IGVycm5vOworICAgICAgICB9CiAgICAgfQogCiAgICAgcHRocmVhZF9jb25kX2luaXQoJnRocmVhZC0+am9pbl9jb25kLCBOVUxMKTsKICAgICB0aHJlYWQtPmpvaW5fY291bnQgPSAwOwogCiAgICAgdGhyZWFkLT5jbGVhbnVwX3N0YWNrID0gTlVMTDsKKworICAgIF9wdGhyZWFkX2ludGVybmFsX2FkZCh0aHJlYWQpOworICAgIHJldHVybiBlcnJvcjsKIH0KIAotCi0vKiBYWFggc3RhY2tzIG5vdCByZWNsYWltZWQgaWYgdGhyZWFkIHNwYXduIGZhaWxzICovCi0vKiBYWFggc3RhY2tzIGFkZHJlc3Mgc3BhY2VzIHNob3VsZCBiZSByZXVzZWQgaWYgYXZhaWxhYmxlIGFnYWluICovCi0KIHN0YXRpYyB2b2lkICpta3N0YWNrKHNpemVfdCBzaXplLCBzaXplX3QgZ3VhcmRfc2l6ZSkKIHsKLSAgICB2b2lkICogc3RhY2s7Ci0KICAgICBwdGhyZWFkX211dGV4X2xvY2soJm1tYXBfbG9jayk7CiAKLSAgICBzdGFjayA9IG1tYXAoTlVMTCwgc2l6ZSwKLSAgICAgICAgICAgICAgICAgUFJPVF9SRUFEIHwgUFJPVF9XUklURSwKLSAgICAgICAgICAgICAgICAgTUFQX1BSSVZBVEUgfCBNQVBfQU5PTllNT1VTIHwgTUFQX05PUkVTRVJWRSwKLSAgICAgICAgICAgICAgICAgLTEsIDApOwotCi0gICAgaWYoc3RhY2sgPT0gTUFQX0ZBSUxFRCkgeworICAgIGludCBwcm90ID0gUFJPVF9SRUFEIHwgUFJPVF9XUklURTsKKyAgICBpbnQgZmxhZ3MgPSBNQVBfUFJJVkFURSB8IE1BUF9BTk9OWU1PVVMgfCBNQVBfTk9SRVNFUlZFOworICAgIHZvaWQqIHN0YWNrID0gbW1hcChOVUxMLCBzaXplLCBwcm90LCBmbGFncywgLTEsIDApOworICAgIGlmIChzdGFjayA9PSBNQVBfRkFJTEVEKSB7CiAgICAgICAgIHN0YWNrID0gTlVMTDsKICAgICAgICAgZ290byBkb25lOwogICAgIH0KIAotICAgIGlmKG1wcm90ZWN0KHN0YWNrLCBndWFyZF9zaXplLCBQUk9UX05PTkUpKXsKKyAgICBpZiAobXByb3RlY3Qoc3RhY2ssIGd1YXJkX3NpemUsIFBST1RfTk9ORSkgPT0gLTEpIHsKICAgICAgICAgbXVubWFwKHN0YWNrLCBzaXplKTsKICAgICAgICAgc3RhY2sgPSBOVUxMOwogICAgICAgICBnb3RvIGRvbmU7CkBAIC0yOTgsMTMgKzI4Nyw3IEBACiBpbnQgcHRocmVhZF9jcmVhdGUocHRocmVhZF90ICp0aHJlYWRfb3V0LCBwdGhyZWFkX2F0dHJfdCBjb25zdCAqIGF0dHIsCiAgICAgICAgICAgICAgICAgICAgdm9pZCAqKCpzdGFydF9yb3V0aW5lKSh2b2lkICopLCB2b2lkICogYXJnKQogewotICAgIGNoYXIqICAgc3RhY2s7Ci0gICAgdm9pZCoqICB0bHM7Ci0gICAgaW50IHRpZDsKLSAgICBwdGhyZWFkX211dGV4X3QgKiBzdGFydF9tdXRleDsKLSAgICBwdGhyZWFkX2ludGVybmFsX3QgKiB0aHJlYWQ7Ci0gICAgaW50ICAgICAgICAgICAgICAgICAgbWFkZXN0YWNrID0gMDsKLSAgICBpbnQgICAgIG9sZF9lcnJubyA9IGVycm5vOworICAgIGludCBvbGRfZXJybm8gPSBlcnJubzsKIAogICAgIC8qIHRoaXMgd2lsbCBpbmZvcm0gdGhlIHJlc3Qgb2YgdGhlIEMgbGlicmFyeSB0aGF0IGF0IGxlYXN0IG9uZSB0aHJlYWQKICAgICAgKiB3YXMgY3JlYXRlZC4gdGhpcyB3aWxsIGVuZm9yY2UgY2VydGFpbiBmdW5jdGlvbnMgdG8gYWNxdWlyZS9yZWxlYXNlCkBAIC0zMTUsMzEgKzI5OCwyOCBAQAogICAgICAqLwogICAgIF9faXN0aHJlYWRlZCA9IDE7CiAKLSAgICB0aHJlYWQgPSBfcHRocmVhZF9pbnRlcm5hbF9hbGxvYygpOwotICAgIGlmICh0aHJlYWQgPT0gTlVMTCkKKyAgICBwdGhyZWFkX2ludGVybmFsX3QqIHRocmVhZCA9IGNhbGxvYyhzaXplb2YoKnRocmVhZCksIDEpOworICAgIGlmICh0aHJlYWQgPT0gTlVMTCkgewogICAgICAgICByZXR1cm4gRU5PTUVNOworICAgIH0KIAogICAgIGlmIChhdHRyID09IE5VTEwpIHsKICAgICAgICAgYXR0ciA9ICZnRGVmYXVsdFB0aHJlYWRBdHRyOwogICAgIH0KIAogICAgIC8vIG1ha2Ugc3VyZSB0aGUgc3RhY2sgaXMgUEFHRV9TSVpFIGFsaWduZWQKLSAgICBzaXplX3Qgc3RhY2tTaXplID0gKGF0dHItPnN0YWNrX3NpemUgKwotICAgICAgICAgICAgICAgICAgICAgICAgKFBBR0VfU0laRS0xKSkgJiB+KFBBR0VfU0laRS0xKTsKLQotICAgIGlmICghYXR0ci0+c3RhY2tfYmFzZSkgewotICAgICAgICBzdGFjayA9IG1rc3RhY2soc3RhY2tTaXplLCBhdHRyLT5ndWFyZF9zaXplKTsKLSAgICAgICAgaWYoc3RhY2sgPT0gTlVMTCkgeworICAgIHNpemVfdCBzdGFja19zaXplID0gKGF0dHItPnN0YWNrX3NpemUgKyAoUEFHRV9TSVpFLTEpKSAmIH4oUEFHRV9TSVpFLTEpOworICAgIHVpbnQ4X3QqIHN0YWNrID0gYXR0ci0+c3RhY2tfYmFzZTsKKyAgICBpZiAoc3RhY2sgPT0gTlVMTCkgeworICAgICAgICBzdGFjayA9IG1rc3RhY2soc3RhY2tfc2l6ZSwgYXR0ci0+Z3VhcmRfc2l6ZSk7CisgICAgICAgIGlmIChzdGFjayA9PSBOVUxMKSB7CiAgICAgICAgICAgICBfcHRocmVhZF9pbnRlcm5hbF9mcmVlKHRocmVhZCk7CiAgICAgICAgICAgICByZXR1cm4gRU5PTUVNOwogICAgICAgICB9Ci0gICAgICAgIG1hZGVzdGFjayA9IDE7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgc3RhY2sgPSBhdHRyLT5zdGFja19iYXNlOwogICAgIH0KIAogICAgIC8vIE1ha2Ugcm9vbSBmb3IgVExTCi0gICAgdGxzID0gKHZvaWQqKikoc3RhY2sgKyBzdGFja1NpemUgLSBCSU9OSUNfVExTX1NMT1RTKnNpemVvZih2b2lkKikpOworICAgIHZvaWQqKiB0bHMgPSAodm9pZCoqKShzdGFjayArIHN0YWNrX3NpemUgLSBCSU9OSUNfVExTX1NMT1RTKnNpemVvZih2b2lkKikpOwogCiAgICAgLy8gQ3JlYXRlIGEgbXV0ZXggZm9yIHRoZSB0aHJlYWQgaW4gVExTX1NMT1RfU0VMRiB0byB3YWl0IG9uIG9uY2UgaXQgc3RhcnRzIHNvIHdlIGNhbiBrZWVwCiAgICAgLy8gaXQgZnJvbSBkb2luZyBhbnl0aGluZyB1bnRpbCBhZnRlciB3ZSBub3RpZnkgdGhlIGRlYnVnZ2VyIGFib3V0IGl0CkBAIC0zNDcsNDMgKzMyNyw0NyBAQAogICAgIC8vIFRoaXMgYWxzbyBwcm92aWRlcyB0aGUgbWVtb3J5IGJhcnJpZXIgd2UgbmVlZCB0byBlbnN1cmUgdGhhdCBhbGwKICAgICAvLyBtZW1vcnkgYWNjZXNzZXMgcHJldmlvdXNseSBwZXJmb3JtZWQgYnkgdGhpcyB0aHJlYWQgYXJlIHZpc2libGUgdG8KICAgICAvLyB0aGUgbmV3IHRocmVhZC4KLSAgICBzdGFydF9tdXRleCA9IChwdGhyZWFkX211dGV4X3QgKikgJnRsc1tUTFNfU0xPVF9TRUxGXTsKKyAgICBwdGhyZWFkX211dGV4X3QqIHN0YXJ0X211dGV4ID0gKHB0aHJlYWRfbXV0ZXhfdCopICZ0bHNbVExTX1NMT1RfU0VMRl07CiAgICAgcHRocmVhZF9tdXRleF9pbml0KHN0YXJ0X211dGV4LCBOVUxMKTsKICAgICBwdGhyZWFkX211dGV4X2xvY2soc3RhcnRfbXV0ZXgpOwogCiAgICAgdGxzW1RMU19TTE9UX1RIUkVBRF9JRF0gPSB0aHJlYWQ7CiAKLSAgICB0aWQgPSBfX3B0aHJlYWRfY2xvbmUoKGludCgqKSh2b2lkKikpc3RhcnRfcm91dGluZSwgdGxzLAotICAgICAgICAgICAgICAgIENMT05FX0ZJTEVTIHwgQ0xPTkVfRlMgfCBDTE9ORV9WTSB8IENMT05FX1NJR0hBTkQKLSAgICAgICAgICAgICAgICB8IENMT05FX1RIUkVBRCB8IENMT05FX1NZU1ZTRU0gfCBDTE9ORV9ERVRBQ0hFRCwKLSAgICAgICAgICAgICAgICBhcmcpOworICAgIGludCBmbGFncyA9IENMT05FX0ZJTEVTIHwgQ0xPTkVfRlMgfCBDTE9ORV9WTSB8IENMT05FX1NJR0hBTkQgfAorICAgICAgICAgICAgICAgIENMT05FX1RIUkVBRCB8IENMT05FX1NZU1ZTRU0gfCBDTE9ORV9ERVRBQ0hFRDsKKyAgICBpbnQgdGlkID0gX19wdGhyZWFkX2Nsb25lKChpbnQoKikodm9pZCopKXN0YXJ0X3JvdXRpbmUsIHRscywgZmxhZ3MsIGFyZyk7CiAKLSAgICBpZih0aWQgPCAwKSB7Ci0gICAgICAgIGludCAgcmVzdWx0OwotICAgICAgICBpZiAobWFkZXN0YWNrKQotICAgICAgICAgICAgbXVubWFwKHN0YWNrLCBzdGFja1NpemUpOworICAgIGlmICh0aWQgPCAwKSB7CisgICAgICAgIGludCBjbG9uZV9lcnJubyA9IGVycm5vOworICAgICAgICBwdGhyZWFkX211dGV4X3VubG9jayhzdGFydF9tdXRleCk7CisgICAgICAgIGlmIChzdGFjayAhPSBhdHRyLT5zdGFja19iYXNlKSB7CisgICAgICAgICAgICBtdW5tYXAoc3RhY2ssIHN0YWNrX3NpemUpOworICAgICAgICB9CiAgICAgICAgIF9wdGhyZWFkX2ludGVybmFsX2ZyZWUodGhyZWFkKTsKLSAgICAgICAgcmVzdWx0ID0gZXJybm87CiAgICAgICAgIGVycm5vID0gb2xkX2Vycm5vOwotICAgICAgICByZXR1cm4gcmVzdWx0OworICAgICAgICByZXR1cm4gY2xvbmVfZXJybm87CiAgICAgfQogCi0gICAgX2luaXRfdGhyZWFkKHRocmVhZCwgdGlkLCAocHRocmVhZF9hdHRyX3QqKWF0dHIsIHN0YWNrKTsKKyAgICBpbnQgaW5pdF9lcnJubyA9IF9pbml0X3RocmVhZCh0aHJlYWQsIHRpZCwgKHB0aHJlYWRfYXR0cl90KikgYXR0ciwgc3RhY2spOworICAgIGlmIChpbml0X2Vycm5vICE9IDApIHsKKyAgICAgICAgLy8gTWFyayB0aGUgdGhyZWFkIGRldGFjaGVkIGFuZCBsZXQgaXRzIF9fdGhyZWFkX2VudHJ5IHJ1biB0bworICAgICAgICAvLyBjb21wbGV0aW9uLiAoSXQnbGwganVzdCBleGl0IGltbWVkaWF0ZWx5LCBjbGVhbmluZyB1cCBpdHMgcmVzb3VyY2VzLikKKyAgICAgICAgdGhyZWFkLT5pbnRlcm5hbF9mbGFncyB8PSBrUHRocmVhZEluaXRGYWlsZWQ7CisgICAgICAgIHRocmVhZC0+YXR0ci5mbGFncyB8PSBQVEhSRUFEX0FUVFJfRkxBR19ERVRBQ0hFRDsKKyAgICAgICAgcHRocmVhZF9tdXRleF91bmxvY2soc3RhcnRfbXV0ZXgpOworICAgICAgICBlcnJubyA9IG9sZF9lcnJubzsKKyAgICAgICAgcmV0dXJuIGluaXRfZXJybm87CisgICAgfQogCi0gICAgX3B0aHJlYWRfaW50ZXJuYWxfYWRkKHRocmVhZCk7Ci0KLSAgICBpZiAoIW1hZGVzdGFjaykKLSAgICAgICAgdGhyZWFkLT5hdHRyLmZsYWdzIHw9IFBUSFJFQURfQVRUUl9GTEFHX1VTRVJfU1RBQ0s7Ci0KLSAgICAvLyBOb3RpZnkgYW55IGRlYnVnZ2VycyBhYm91dCB0aGUgbmV3IHRocmVhZAorICAgIC8vIE5vdGlmeSBhbnkgZGVidWdnZXJzIGFib3V0IHRoZSBuZXcgdGhyZWFkLgogICAgIHB0aHJlYWRfbXV0ZXhfbG9jaygmZ0RlYnVnZ2VyTm90aWZpY2F0aW9uTG9jayk7CiAgICAgX3RocmVhZF9jcmVhdGVkX2hvb2sodGlkKTsKICAgICBwdGhyZWFkX211dGV4X3VubG9jaygmZ0RlYnVnZ2VyTm90aWZpY2F0aW9uTG9jayk7CiAKLSAgICAvLyBMZXQgdGhlIHRocmVhZCBkbyBpdCdzIHRoaW5nCisgICAgLy8gTGV0IHRoZSB0aHJlYWQgcnVuLgogICAgIHB0aHJlYWRfbXV0ZXhfdW5sb2NrKHN0YXJ0X211dGV4KTsKIAotICAgICp0aHJlYWRfb3V0ID0gKHB0aHJlYWRfdCl0aHJlYWQ7CisgICAgKnRocmVhZF9vdXQgPSAocHRocmVhZF90KSB0aHJlYWQ7CiAgICAgcmV0dXJuIDA7CiB9CiAKQEAgLTU5Myw2ICs1NzcsMTcgQEAKICAgICAgICAgX3B0aHJlYWRfaW50ZXJuYWxfcmVtb3ZlKHRocmVhZCk7CiAgICAgICAgIF9wdGhyZWFkX2ludGVybmFsX2ZyZWUodGhyZWFkKTsKICAgICB9IGVsc2UgeworICAgICAgICBwdGhyZWFkX211dGV4X2xvY2soJmdUaHJlYWRMaXN0TG9jayk7CisKKyAgICAgICAvKiBtYWtlIHN1cmUgdGhhdCB0aGUgdGhyZWFkIHN0cnVjdCBkb2Vzbid0IGhhdmUgc3RhbGUgcG9pbnRlcnMgdG8gYSBzdGFjayB0aGF0CisgICAgICAgICogd2lsbCBiZSB1bm1hcHBlZCBhZnRlciB0aGUgZXhpdCBjYWxsIGJlbG93LgorICAgICAgICAqLworICAgICAgICBpZiAoIXVzZXJfc3RhY2spIHsKKyAgICAgICAgICAgIHRocmVhZC0+YXR0ci5zdGFja19iYXNlID0gTlVMTDsKKyAgICAgICAgICAgIHRocmVhZC0+YXR0ci5zdGFja19zaXplID0gMDsKKyAgICAgICAgICAgIHRocmVhZC0+dGxzID0gTlVMTDsKKyAgICAgICAgfQorCiAgICAgICAgLyogdGhlIGpvaW5fY291bnQgZmllbGQgaXMgdXNlZCB0byBzdG9yZSB0aGUgbnVtYmVyIG9mIHRocmVhZHMgd2FpdGluZyBmb3IKICAgICAgICAgKiB0aGUgdGVybWluYXRpb24gb2YgdGhpcyB0aHJlYWQgd2l0aCBwdGhyZWFkX2pvaW4oKSwKICAgICAgICAgKgpAQCAtNjA1LDcgKzYwMCw2IEBACiAgICAgICAgICogaXMgZ29uZSAoYXMgd2VsbCBhcyBpdHMgVExTIGFyZWEpLiB3aGVuIGFub3RoZXIgdGhyZWFkIGNhbGxzIHB0aHJlYWRfam9pbigpCiAgICAgICAgICogb24gaXQsIGl0IHdpbGwgaW1tZWRpYXRlbHkgZnJlZSB0aGUgdGhyZWFkIGFuZCByZXR1cm4uCiAgICAgICAgICovCi0gICAgICAgIHB0aHJlYWRfbXV0ZXhfbG9jaygmZ1RocmVhZExpc3RMb2NrKTsKICAgICAgICAgdGhyZWFkLT5yZXR1cm5fdmFsdWUgPSByZXR2YWw7CiAgICAgICAgIGlmICh0aHJlYWQtPmpvaW5fY291bnQgPiAwKSB7CiAgICAgICAgICAgICBwdGhyZWFkX2NvbmRfYnJvYWRjYXN0KCZ0aHJlYWQtPmpvaW5fY29uZCk7CkBAIC0xOTU4LDcgKzE5NTIsOSBAQAogICAgICAgICAgKiBzaW1pbGFybHksIGl0IGlzIHBvc3NpYmxlIHRvIGhhdmUgdGhyLT50bHMgPT0gTlVMTCBmb3IgdGhyZWFkcyB0aGF0CiAgICAgICAgICAqIHdlcmUganVzdCByZWNlbnRseSBjcmVhdGVkIHRocm91Z2ggcHRocmVhZF9jcmVhdGUoKSBidXQgd2hvc2UKICAgICAgICAgICogc3RhcnR1cCB0cmFtcG9saW5lIChfX3RocmVhZF9lbnRyeSkgaGFzbid0IGJlZW4gcnVuIHlldCBieSB0aGUKLSAgICAgICAgICogc2NoZWR1bGVyLiBzbyBjaGVjayBmb3IgdGhpcyB0b28uCisgICAgICAgICAqIHNjaGVkdWxlci4gdGhyLT50bHMgd2lsbCBhbHNvIGJlIE5VTEwgYWZ0ZXIgaXQncyBzdGFjayBoYXMgYmVlbgorICAgICAgICAgKiB1bm1hcHBlZCBidXQgYmVmb3JlIHRoZSBvbmdvaW5nIHB0aHJlYWRfam9pbigpIGlzIGZpbmlzaGVkLgorICAgICAgICAgKiBzbyBjaGVjayBmb3IgdGhpcyB0b28uCiAgICAgICAgICAqLwogICAgICAgICBpZiAodGhyLT5qb2luX2NvdW50IDwgMCB8fCAhdGhyLT50bHMpCiAgICAgICAgICAgICBjb250aW51ZTsKZGlmZiAtLWdpdCBhL2xpYmMvYmlvbmljL3B0aHJlYWRfaW50ZXJuYWwuaCBiL2xpYmMvYmlvbmljL3B0aHJlYWRfaW50ZXJuYWwuaAppbmRleCAyNjhjYWNmLi4yYmQxMTBjIDEwMDY0NAotLS0gYS9saWJjL2Jpb25pYy9wdGhyZWFkX2ludGVybmFsLmgKKysrIGIvbGliYy9iaW9uaWMvcHRocmVhZF9pbnRlcm5hbC5oCkBAIC00MSwxMiArNDEsMTIgQEAKICAgICBwdGhyZWFkX2NvbmRfdCAgICAgICAgICAgICAgam9pbl9jb25kOwogICAgIGludCAgICAgICAgICAgICAgICAgICAgICAgICBqb2luX2NvdW50OwogICAgIHZvaWQqICAgICAgICAgICAgICAgICAgICAgICByZXR1cm5fdmFsdWU7Ci0gICAgaW50ICAgICAgICAgICAgICAgICAgICAgICAgIGludGVybjsKKyAgICBpbnQgICAgICAgICAgICAgICAgICAgICAgICAgaW50ZXJuYWxfZmxhZ3M7CiAgICAgX19wdGhyZWFkX2NsZWFudXBfdCogICAgICAgIGNsZWFudXBfc3RhY2s7CiAgICAgdm9pZCoqICAgICAgICAgICAgICAgICAgICAgIHRsczsgICAgICAgICAvKiB0aHJlYWQtbG9jYWwgc3RvcmFnZSBhcmVhICovCiB9IHB0aHJlYWRfaW50ZXJuYWxfdDsKIAotZXh0ZXJuIHZvaWQgX2luaXRfdGhyZWFkKHB0aHJlYWRfaW50ZXJuYWxfdCAqIHRocmVhZCwgcGlkX3Qga2VybmVsX2lkLCBwdGhyZWFkX2F0dHJfdCAqIGF0dHIsIHZvaWQgKiBzdGFja19iYXNlKTsKK2V4dGVybiBpbnQgX2luaXRfdGhyZWFkKHB0aHJlYWRfaW50ZXJuYWxfdCAqIHRocmVhZCwgcGlkX3Qga2VybmVsX2lkLCBwdGhyZWFkX2F0dHJfdCAqIGF0dHIsIHZvaWQgKiBzdGFja19iYXNlKTsKIHZvaWQgX3B0aHJlYWRfaW50ZXJuYWxfYWRkKCBwdGhyZWFkX2ludGVybmFsX3QqICB0aHJlYWQgKTsKIHB0aHJlYWRfaW50ZXJuYWxfdCogX19nZXRfdGhyZWFkKHZvaWQpOwogCmRpZmYgLS1naXQgYS9saWJjL2luY2x1ZGUvc3lzL2xpbnV4LXN5c2NhbGxzLmggYi9saWJjL2luY2x1ZGUvc3lzL2xpbnV4LXN5c2NhbGxzLmgKaW5kZXggZDA5ZTk1NS4uYzhhNjU0YyAxMDA2NDQKLS0tIGEvbGliYy9pbmNsdWRlL3N5cy9saW51eC1zeXNjYWxscy5oCisrKyBiL2xpYmMvaW5jbHVkZS9zeXMvbGludXgtc3lzY2FsbHMuaApAQCAtMSwxNyArMSw5NCBAQAogLyogYXV0by1nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHksIGRvIG5vdCB0b3VjaCAqLwogI2lmbmRlZiBfQklPTklDX0xJTlVYX1NZU0NBTExTX0hfCisjZGVmaW5lIF9CSU9OSUNfTElOVVhfU1lTQ0FMTFNfSF8KIAotI2lmICFkZWZpbmVkIF9fQVNNX0FSTV9VTklTVERfSCAmJiAhZGVmaW5lZCBfX0FTTV9JMzg2X1VOSVNURF9ICisjaWYgIWRlZmluZWQgX19BU01fQVJNX1VOSVNURF9IICYmICFkZWZpbmVkIF9fQVNNX0kzODZfVU5JU1REX0ggJiYgIWRlZmluZWQgX19BU01fTUlQU19VTklTVERfSAogI2lmIGRlZmluZWQgX19hcm1fXyAmJiAhZGVmaW5lZCBfX0FSTV9FQUJJX18gJiYgIWRlZmluZWQgX190aHVtYl9fCi0gICMgIGRlZmluZSBfX05SX1NZU0NBTExfQkFTRSAgMHg5MDAwMDAKLSAgI2Vsc2UKLSAgIyAgZGVmaW5lICBfX05SX1NZU0NBTExfQkFTRSAgMAotICAjZW5kaWYKKyAgIyAgZGVmaW5lIF9fTlJfU1lTQ0FMTF9CQVNFIDB4OTAwMDAwCisjZWxpZiBkZWZpbmVkKF9fbWlwc19fKQorICAjICBkZWZpbmUgX19OUl9TWVNDQUxMX0JBU0UgNDAwMAorI2Vsc2UKKyAgIyAgZGVmaW5lIF9fTlJfU1lTQ0FMTF9CQVNFIDAKKyNlbmRpZgogCiAjZGVmaW5lIF9fTlJfZXhpdCAgICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxKQogI2RlZmluZSBfX05SX2ZvcmsgICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMikKLSNkZWZpbmUgX19OUl9jbG9uZSAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDEyMCkKKyNkZWZpbmUgX19OUl9yZWFkICAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDMpCisjZGVmaW5lIF9fTlJfd3JpdGUgICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA0KQorI2RlZmluZSBfX05SX29wZW4gICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNSkKKyNkZWZpbmUgX19OUl9jbG9zZSAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDYpCisjZGVmaW5lIF9fTlJfbGluayAgICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA5KQorI2RlZmluZSBfX05SX3VubGluayAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTApCiAjZGVmaW5lIF9fTlJfZXhlY3ZlICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMSkKKyNkZWZpbmUgX19OUl9jaGRpciAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDEyKQorI2RlZmluZSBfX05SX21rbm9kICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTQpCisjZGVmaW5lIF9fTlJfY2htb2QgICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNSkKKyNkZWZpbmUgX19OUl9sc2VlayAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDE5KQorI2RlZmluZSBfX05SX2dldHBpZCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjApCisjZGVmaW5lIF9fTlJfbW91bnQgICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMSkKKyNkZWZpbmUgX19OUl9wdHJhY2UgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDI2KQorI2RlZmluZSBfX05SX3BhdXNlICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjkpCisjZGVmaW5lIF9fTlJfYWNjZXNzICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAzMykKKyNkZWZpbmUgX19OUl9zeW5jICAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDM2KQorI2RlZmluZSBfX05SX3JlbmFtZSAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzgpCisjZGVmaW5lIF9fTlJfbWtkaXIgICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAzOSkKKyNkZWZpbmUgX19OUl9ybWRpciAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDQwKQorI2RlZmluZSBfX05SX2R1cCAgICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNDEpCisjZGVmaW5lIF9fTlJfdGltZXMgICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA0MykKKyNkZWZpbmUgX19OUl9icmsgICAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDQ1KQorI2RlZmluZSBfX05SX2FjY3QgICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNTEpCisjZGVmaW5lIF9fTlJfdW1vdW50MiAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA1MikKKyNkZWZpbmUgX19OUl9pb2N0bCAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDU0KQorI2RlZmluZSBfX05SX2ZjbnRsICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNTUpCisjZGVmaW5lIF9fTlJfc2V0cGdpZCAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA1NykKKyNkZWZpbmUgX19OUl91bWFzayAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDYwKQorI2RlZmluZSBfX05SX2Nocm9vdCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNjEpCisjZGVmaW5lIF9fTlJfZHVwMiAgICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA2MykKKyNkZWZpbmUgX19OUl9nZXRwcGlkICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDY0KQorI2RlZmluZSBfX05SX3NldHNpZCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNjYpCisjZGVmaW5lIF9fTlJfc2lnYWN0aW9uICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA2NykKKyNkZWZpbmUgX19OUl9zaWdzdXNwZW5kICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDcyKQorI2RlZmluZSBfX05SX3NpZ3BlbmRpbmcgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNzMpCisjZGVmaW5lIF9fTlJfc2V0cmxpbWl0ICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA3NSkKKyNkZWZpbmUgX19OUl9nZXRydXNhZ2UgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDc3KQorI2RlZmluZSBfX05SX2dldHRpbWVvZmRheSAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNzgpCisjZGVmaW5lIF9fTlJfc2V0dGltZW9mZGF5ICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA3OSkKKyNkZWZpbmUgX19OUl9zeW1saW5rICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDgzKQorI2RlZmluZSBfX05SX3JlYWRsaW5rICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgODUpCisjZGVmaW5lIF9fTlJfcmVib290ICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA4OCkKKyNkZWZpbmUgX19OUl9tdW5tYXAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDkxKQorI2RlZmluZSBfX05SX3RydW5jYXRlICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgOTIpCisjZGVmaW5lIF9fTlJfZnRydW5jYXRlICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA5MykKKyNkZWZpbmUgX19OUl9mY2htb2QgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDk0KQorI2RlZmluZSBfX05SX2dldHByaW9yaXR5ICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgOTYpCisjZGVmaW5lIF9fTlJfc2V0cHJpb3JpdHkgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA5NykKKyNkZWZpbmUgX19OUl9zeXNsb2cgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDEwMykKKyNkZWZpbmUgX19OUl9zeXNsb2cgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDEwMykKKyNkZWZpbmUgX19OUl9zZXRpdGltZXIgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDEwNCkKKyNkZWZpbmUgX19OUl9nZXRpdGltZXIgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDEwNSkKKyNkZWZpbmUgX19OUl93YWl0NCAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDExNCkKKyNkZWZpbmUgX19OUl9zeXNpbmZvICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDExNikKKyNkZWZpbmUgX19OUl9mc3luYyAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDExOCkKKyNkZWZpbmUgX19OUl9jbG9uZSAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDEyMCkKKyNkZWZpbmUgX19OUl91bmFtZSAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDEyMikKKyNkZWZpbmUgX19OUl9tcHJvdGVjdCAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDEyNSkKKyNkZWZpbmUgX19OUl9zaWdwcm9jbWFzayAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDEyNikKKyNkZWZpbmUgX19OUl9pbml0X21vZHVsZSAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDEyOCkKKyNkZWZpbmUgX19OUl9kZWxldGVfbW9kdWxlICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDEyOSkKKyNkZWZpbmUgX19OUl9nZXRwZ2lkICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDEzMikKKyNkZWZpbmUgX19OUl9mY2hkaXIgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDEzMykKKyNkZWZpbmUgX19OUl9wZXJzb25hbGl0eSAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDEzNikKKyNkZWZpbmUgX19OUl9fbGxzZWVrICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDE0MCkKKyNkZWZpbmUgX19OUl9fbmV3c2VsZWN0ICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDE0MikKKyNkZWZpbmUgX19OUl9mbG9jayAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDE0MykKKyNkZWZpbmUgX19OUl9tc3luYyAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDE0NCkKKyNkZWZpbmUgX19OUl9yZWFkdiAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDE0NSkKKyNkZWZpbmUgX19OUl93cml0ZXYgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDE0NikKKyNkZWZpbmUgX19OUl9wZXJmX2V2ZW50X29wZW4gICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDM2NCkKKworI2lmZGVmIF9fYXJtX18KKyNkZWZpbmUgX19OUl9leGl0X2dyb3VwICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDI0OCkKKyNkZWZpbmUgX19OUl93YWl0aWQgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDI4MCkKICNkZWZpbmUgX19OUl9zZXR1aWQzMiAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDIxMykKICNkZWZpbmUgX19OUl9nZXR1aWQzMiAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDE5OSkKICNkZWZpbmUgX19OUl9nZXRnaWQzMiAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDIwMCkKQEAgLTIyLDg4ICs5OSw1MyBAQAogI2RlZmluZSBfX05SX2dldHRpZCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjI0KQogI2RlZmluZSBfX05SX3JlYWRhaGVhZCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjI1KQogI2RlZmluZSBfX05SX2dldGdyb3VwczMyICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjA1KQotI2RlZmluZSBfX05SX2dldHBnaWQgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTMyKQotI2RlZmluZSBfX05SX2dldHBwaWQgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNjQpCi0jZGVmaW5lIF9fTlJfc2V0c2lkICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA2NikKICNkZWZpbmUgX19OUl9zZXRnaWQzMiAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDIxNCkKICNkZWZpbmUgX19OUl9zZXRyZXVpZDMyICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDIwMykKICNkZWZpbmUgX19OUl9zZXRyZXN1aWQzMiAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDIwOCkKICNkZWZpbmUgX19OUl9zZXRyZXNnaWQzMiAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDIxMCkKLSNkZWZpbmUgX19OUl9icmsgICAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDQ1KQotI2RlZmluZSBfX05SX3B0cmFjZSAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjYpCi0jZGVmaW5lIF9fTlJfZ2V0cHJpb3JpdHkgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA5NikKLSNkZWZpbmUgX19OUl9zZXRwcmlvcml0eSAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDk3KQotI2RlZmluZSBfX05SX3NldHJsaW1pdCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNzUpCiAjZGVmaW5lIF9fTlJfdWdldHJsaW1pdCAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxOTEpCi0jZGVmaW5lIF9fTlJfZ2V0cnVzYWdlICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA3NykKICNkZWZpbmUgX19OUl9zZXRncm91cHMzMiAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDIwNikKLSNkZWZpbmUgX19OUl9zZXRwZ2lkICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDU3KQorI2RlZmluZSBfX05SX3Zmb3JrICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTkwKQogI2RlZmluZSBfX05SX3NldHJlZ2lkMzIgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjA0KQotI2RlZmluZSBfX05SX2Nocm9vdCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNjEpCiAjZGVmaW5lIF9fTlJfcHJjdGwgICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNzIpCiAjZGVmaW5lIF9fTlJfY2FwZ2V0ICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxODQpCiAjZGVmaW5lIF9fTlJfY2Fwc2V0ICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxODUpCiAjZGVmaW5lIF9fTlJfc2lnYWx0c3RhY2sgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxODYpCi0jZGVmaW5lIF9fTlJfYWNjdCAgICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA1MSkKLSNkZWZpbmUgX19OUl9yZWFkICAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDMpCi0jZGVmaW5lIF9fTlJfd3JpdGUgICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA0KQogI2RlZmluZSBfX05SX3ByZWFkNjQgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTgwKQogI2RlZmluZSBfX05SX3B3cml0ZTY0ICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTgxKQotI2RlZmluZSBfX05SX29wZW4gICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNSkKLSNkZWZpbmUgX19OUl9jbG9zZSAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDYpCi0jZGVmaW5lIF9fTlJfbHNlZWsgICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxOSkKLSNkZWZpbmUgX19OUl9fbGxzZWVrICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDE0MCkKLSNkZWZpbmUgX19OUl9nZXRwaWQgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDIwKQorI2RlZmluZSBfX05SX29wZW5hdCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzIyKQogI2RlZmluZSBfX05SX21tYXAyICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTkyKQotI2RlZmluZSBfX05SX211bm1hcCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgOTEpCiAjZGVmaW5lIF9fTlJfbXJlbWFwICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNjMpCi0jZGVmaW5lIF9fTlJfbXN5bmMgICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNDQpCi0jZGVmaW5lIF9fTlJfbXByb3RlY3QgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMjUpCisjZGVmaW5lIF9fTlJfbWFkdmlzZSAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAyMjApCiAjZGVmaW5lIF9fTlJfbWxvY2sgICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNTApCiAjZGVmaW5lIF9fTlJfbXVubG9jayAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNTEpCi0jZGVmaW5lIF9fTlJfaW9jdGwgICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA1NCkKLSNkZWZpbmUgX19OUl9yZWFkdiAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDE0NSkKLSNkZWZpbmUgX19OUl93cml0ZXYgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDE0NikKLSNkZWZpbmUgX19OUl9mY250bCAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDU1KQotI2RlZmluZSBfX05SX2Zsb2NrICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTQzKQotI2RlZmluZSBfX05SX2ZjaG1vZCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgOTQpCi0jZGVmaW5lIF9fTlJfZHVwICAgICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA0MSkKKyNkZWZpbmUgX19OUl9taW5jb3JlICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDIxOSkKICNkZWZpbmUgX19OUl9waXBlICAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDQyKQotI2RlZmluZSBfX05SX2R1cDIgICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNjMpCi0jZGVmaW5lIF9fTlJfX25ld3NlbGVjdCAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNDIpCi0jZGVmaW5lIF9fTlJfZnRydW5jYXRlICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA5MykKKyNkZWZpbmUgX19OUl9waXBlMiAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDM1OSkKICNkZWZpbmUgX19OUl9mdHJ1bmNhdGU2NCAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDE5NCkKLSNkZWZpbmUgX19OUl9mc3luYyAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDExOCkKKyNkZWZpbmUgX19OUl9nZXRkZW50czY0ICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDIxNykKICNkZWZpbmUgX19OUl9mZGF0YXN5bmMgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDE0OCkKICNkZWZpbmUgX19OUl9mY2hvd24zMiAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDIwNykKLSNkZWZpbmUgX19OUl9zeW5jICAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDM2KQogI2RlZmluZSBfX05SX2ZjbnRsNjQgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjIxKQorI2RlZmluZSBfX05SX2ZzdGF0ZnM2NCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjY3KQogI2RlZmluZSBfX05SX3NlbmRmaWxlICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTg3KQorI2RlZmluZSBfX05SX2ZzdGF0YXQ2NCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzI3KQorI2RlZmluZSBfX05SX21rZGlyYXQgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzIzKQorI2RlZmluZSBfX05SX2ZjaG93bmF0ICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzI1KQorI2RlZmluZSBfX05SX2ZjaG1vZGF0ICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzMzKQorI2RlZmluZSBfX05SX3JlbmFtZWF0ICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzI5KQogI2RlZmluZSBfX05SX2ZzZXR4YXR0ciAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjI4KQogI2RlZmluZSBfX05SX2ZnZXR4YXR0ciAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjMxKQogI2RlZmluZSBfX05SX2ZsaXN0eGF0dHIgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjM0KQogI2RlZmluZSBfX05SX2ZyZW1vdmV4YXR0ciAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjM3KQotI2RlZmluZSBfX05SX2xpbmsgICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgOSkKLSNkZWZpbmUgX19OUl91bmxpbmsgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDEwKQotI2RlZmluZSBfX05SX2NoZGlyICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTIpCi0jZGVmaW5lIF9fTlJfbWtub2QgICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNCkKLSNkZWZpbmUgX19OUl9jaG1vZCAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDE1KQorI2RlZmluZSBfX05SX3VubGlua2F0ICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzI4KQogI2RlZmluZSBfX05SX2Nob3duMzIgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjEyKQogI2RlZmluZSBfX05SX2xjaG93bjMyICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTk4KQotI2RlZmluZSBfX05SX21vdW50ICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjEpCi0jZGVmaW5lIF9fTlJfdW1vdW50MiAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA1MikKICNkZWZpbmUgX19OUl9mc3RhdDY0ICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDE5NykKICNkZWZpbmUgX19OUl9zdGF0NjQgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDE5NSkKICNkZWZpbmUgX19OUl9sc3RhdDY0ICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDE5NikKLSNkZWZpbmUgX19OUl9ta2RpciAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDM5KQotI2RlZmluZSBfX05SX3JlYWRsaW5rICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgODUpCi0jZGVmaW5lIF9fTlJfcm1kaXIgICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA0MCkKLSNkZWZpbmUgX19OUl9yZW5hbWUgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDM4KQogI2RlZmluZSBfX05SX2dldGN3ZCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTgzKQotI2RlZmluZSBfX05SX2FjY2VzcyAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzMpCi0jZGVmaW5lIF9fTlJfc3ltbGluayAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA4MykKLSNkZWZpbmUgX19OUl9mY2hkaXIgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDEzMykKLSNkZWZpbmUgX19OUl90cnVuY2F0ZSAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDkyKQorI2RlZmluZSBfX05SX2ZhY2Nlc3NhdCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzM0KQogI2RlZmluZSBfX05SX3NldHhhdHRyICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjI2KQogI2RlZmluZSBfX05SX2xzZXR4YXR0ciAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjI3KQogI2RlZmluZSBfX05SX2dldHhhdHRyICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjI5KQpAQCAtMTEyLDYyICsxNTQsOCBAQAogI2RlZmluZSBfX05SX2xsaXN0eGF0dHIgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjMzKQogI2RlZmluZSBfX05SX3JlbW92ZXhhdHRyICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjM1KQogI2RlZmluZSBfX05SX2xyZW1vdmV4YXR0ciAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjM2KQotI2RlZmluZSBfX05SX3BhdXNlICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjkpCi0jZGVmaW5lIF9fTlJfZ2V0dGltZW9mZGF5ICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA3OCkKLSNkZWZpbmUgX19OUl9zZXR0aW1lb2ZkYXkgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDc5KQotI2RlZmluZSBfX05SX3RpbWVzICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNDMpCi0jZGVmaW5lIF9fTlJfbmFub3NsZWVwICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNjIpCi0jZGVmaW5lIF9fTlJfZ2V0aXRpbWVyICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMDUpCi0jZGVmaW5lIF9fTlJfc2V0aXRpbWVyICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMDQpCi0jZGVmaW5lIF9fTlJfc2lnYWN0aW9uICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA2NykKLSNkZWZpbmUgX19OUl9zaWdwcm9jbWFzayAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDEyNikKLSNkZWZpbmUgX19OUl9zaWdzdXNwZW5kICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDcyKQotI2RlZmluZSBfX05SX3J0X3NpZ2FjdGlvbiAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTc0KQotI2RlZmluZSBfX05SX3J0X3NpZ3Byb2NtYXNrICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTc1KQotI2RlZmluZSBfX05SX3J0X3NpZ3RpbWVkd2FpdCAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTc3KQotI2RlZmluZSBfX05SX3NpZ3BlbmRpbmcgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNzMpCi0jZGVmaW5lIF9fTlJfc2NoZWRfc2V0c2NoZWR1bGVyICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNTYpCi0jZGVmaW5lIF9fTlJfc2NoZWRfZ2V0c2NoZWR1bGVyICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNTcpCi0jZGVmaW5lIF9fTlJfc2NoZWRfeWllbGQgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNTgpCi0jZGVmaW5lIF9fTlJfc2NoZWRfc2V0cGFyYW0gICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNTQpCi0jZGVmaW5lIF9fTlJfc2NoZWRfZ2V0cGFyYW0gICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNTUpCi0jZGVmaW5lIF9fTlJfc2NoZWRfZ2V0X3ByaW9yaXR5X21heCAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNTkpCi0jZGVmaW5lIF9fTlJfc2NoZWRfZ2V0X3ByaW9yaXR5X21pbiAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNjApCi0jZGVmaW5lIF9fTlJfc2NoZWRfcnJfZ2V0X2ludGVydmFsICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNjEpCi0jZGVmaW5lIF9fTlJfc2NoZWRfc2V0YWZmaW5pdHkgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNDEpCi0jZGVmaW5lIF9fTlJfc2NoZWRfZ2V0YWZmaW5pdHkgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNDIpCi0jZGVmaW5lIF9fTlJfdW5hbWUgICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMjIpCi0jZGVmaW5lIF9fTlJfd2FpdDQgICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxMTQpCi0jZGVmaW5lIF9fTlJfdW1hc2sgICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA2MCkKLSNkZWZpbmUgX19OUl9yZWJvb3QgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDg4KQotI2RlZmluZSBfX05SX3N5c2xvZyAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTAzKQotI2RlZmluZSBfX05SX2luaXRfbW9kdWxlICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTI4KQotI2RlZmluZSBfX05SX2RlbGV0ZV9tb2R1bGUgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTI5KQotI2RlZmluZSBfX05SX3N5c2xvZyAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTAzKQotI2RlZmluZSBfX05SX3N5c2luZm8gICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTE2KQotI2RlZmluZSBfX05SX3BlcnNvbmFsaXR5ICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTM2KQotI2RlZmluZSBfX05SX3BlcmZfZXZlbnRfb3BlbiAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzY0KQotI2RlZmluZSBfX05SX2Z1dGV4ICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjQwKQotI2RlZmluZSBfX05SX3BvbGwgICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTY4KQotCi0jaWZkZWYgX19hcm1fXwotI2RlZmluZSBfX05SX2V4aXRfZ3JvdXAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjQ4KQotI2RlZmluZSBfX05SX3dhaXRpZCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjgwKQotI2RlZmluZSBfX05SX3Zmb3JrICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTkwKQotI2RlZmluZSBfX05SX29wZW5hdCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzIyKQotI2RlZmluZSBfX05SX21hZHZpc2UgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjIwKQotI2RlZmluZSBfX05SX21pbmNvcmUgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjE5KQotI2RlZmluZSBfX05SX3BpcGUyICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzU5KQotI2RlZmluZSBfX05SX2dldGRlbnRzNjQgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjE3KQotI2RlZmluZSBfX05SX2ZzdGF0ZnM2NCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjY3KQotI2RlZmluZSBfX05SX2ZzdGF0YXQ2NCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzI3KQotI2RlZmluZSBfX05SX21rZGlyYXQgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzIzKQotI2RlZmluZSBfX05SX2ZjaG93bmF0ICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzI1KQotI2RlZmluZSBfX05SX2ZjaG1vZGF0ICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzMzKQotI2RlZmluZSBfX05SX3JlbmFtZWF0ICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzI5KQotI2RlZmluZSBfX05SX3VubGlua2F0ICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzI4KQotI2RlZmluZSBfX05SX2ZhY2Nlc3NhdCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzM0KQogI2RlZmluZSBfX05SX3N0YXRmczY0ICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjY2KQorI2RlZmluZSBfX05SX25hbm9zbGVlcCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTYyKQogI2RlZmluZSBfX05SX2Nsb2NrX2dldHRpbWUgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjYzKQogI2RlZmluZSBfX05SX2Nsb2NrX3NldHRpbWUgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjYyKQogI2RlZmluZSBfX05SX2Nsb2NrX2dldHJlcyAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjY0KQpAQCAtMTc5LDYgKzE2Nyw5IEBACiAjZGVmaW5lIF9fTlJfdGltZXJfZGVsZXRlICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNjEpCiAjZGVmaW5lIF9fTlJfdXRpbWVzICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAyNjkpCiAjZGVmaW5lIF9fTlJfdXRpbWVuc2F0ICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNDgpCisjZGVmaW5lIF9fTlJfcnRfc2lnYWN0aW9uICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNzQpCisjZGVmaW5lIF9fTlJfcnRfc2lncHJvY21hc2sgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNzUpCisjZGVmaW5lIF9fTlJfcnRfc2lndGltZWR3YWl0ICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNzcpCiAjZGVmaW5lIF9fTlJfc29ja2V0ICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAyODEpCiAjZGVmaW5lIF9fTlJfc29ja2V0cGFpciAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAyODgpCiAjZGVmaW5lIF9fTlJfYmluZCAgICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAyODIpCkBAIC0xOTQsNjQgKzE4NSwyNzEgQEAKICNkZWZpbmUgX19OUl9nZXRzb2Nrb3B0ICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDI5NSkKICNkZWZpbmUgX19OUl9zZW5kbXNnICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDI5NikKICNkZWZpbmUgX19OUl9yZWN2bXNnICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDI5NykKKyNkZWZpbmUgX19OUl9zY2hlZF9zZXRzY2hlZHVsZXIgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDE1NikKKyNkZWZpbmUgX19OUl9zY2hlZF9nZXRzY2hlZHVsZXIgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDE1NykKKyNkZWZpbmUgX19OUl9zY2hlZF95aWVsZCAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDE1OCkKKyNkZWZpbmUgX19OUl9zY2hlZF9zZXRwYXJhbSAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDE1NCkKKyNkZWZpbmUgX19OUl9zY2hlZF9nZXRwYXJhbSAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDE1NSkKKyNkZWZpbmUgX19OUl9zY2hlZF9nZXRfcHJpb3JpdHlfbWF4ICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDE1OSkKKyNkZWZpbmUgX19OUl9zY2hlZF9nZXRfcHJpb3JpdHlfbWluICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDE2MCkKKyNkZWZpbmUgX19OUl9zY2hlZF9ycl9nZXRfaW50ZXJ2YWwgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDE2MSkKKyNkZWZpbmUgX19OUl9zY2hlZF9zZXRhZmZpbml0eSAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDI0MSkKKyNkZWZpbmUgX19OUl9zY2hlZF9nZXRhZmZpbml0eSAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDI0MikKICNkZWZpbmUgX19OUl9nZXRjcHUgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDM0NSkKICNkZWZpbmUgX19OUl9pb3ByaW9fc2V0ICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDMxNCkKICNkZWZpbmUgX19OUl9pb3ByaW9fZ2V0ICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDMxNSkKKyNkZWZpbmUgX19OUl9mdXRleCAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDI0MCkKICNkZWZpbmUgX19OUl9lcG9sbF9jcmVhdGUgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDI1MCkKICNkZWZpbmUgX19OUl9lcG9sbF9jdGwgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDI1MSkKICNkZWZpbmUgX19OUl9lcG9sbF93YWl0ICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDI1MikKICNkZWZpbmUgX19OUl9pbm90aWZ5X2luaXQgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDMxNikKICNkZWZpbmUgX19OUl9pbm90aWZ5X2FkZF93YXRjaCAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDMxNykKICNkZWZpbmUgX19OUl9pbm90aWZ5X3JtX3dhdGNoICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDMxOCkKKyNkZWZpbmUgX19OUl9wb2xsICAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDE2OCkKICNkZWZpbmUgX19OUl9ldmVudGZkMiAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDM1NikKICNkZWZpbmUgX19OUl9BUk1fc2V0X3RscyAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDk4MzA0NSkKICNkZWZpbmUgX19OUl9BUk1fY2FjaGVmbHVzaCAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDk4MzA0MikKICNlbmRpZgogCiAjaWZkZWYgX19pMzg2X18KLSNkZWZpbmUgX19OUl9leGl0X2dyb3VwICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDI1MikKICNkZWZpbmUgX19OUl93YWl0cGlkICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDcpCi0jZGVmaW5lIF9fTlJfd2FpdGlkICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAyODQpCiAjZGVmaW5lIF9fTlJfa2lsbCAgICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNykKLSNkZWZpbmUgX19OUl90a2lsbCAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDIzOCkKLSNkZWZpbmUgX19OUl90Z2tpbGwgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDI3MCkKLSNkZWZpbmUgX19OUl9zZXRfdGhyZWFkX2FyZWEgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDI0MykKLSNkZWZpbmUgX19OUl9vcGVuYXQgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDI5NSkKLSNkZWZpbmUgX19OUl9tYWR2aXNlICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDIxOSkKKyNkZWZpbmUgX19OUl9waXBlICAgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDQyKQorI2RlZmluZSBfX05SX3NvY2tldGNhbGwgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTAyKQorI2RlZmluZSBfX05SX2ZkYXRhc3luYyAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTQ4KQorI2RlZmluZSBfX05SX21sb2NrICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTUwKQorI2RlZmluZSBfX05SX211bmxvY2sgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTUxKQorI2RlZmluZSBfX05SX3NjaGVkX3NldHBhcmFtICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTU0KQorI2RlZmluZSBfX05SX3NjaGVkX2dldHBhcmFtICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTU1KQorI2RlZmluZSBfX05SX3NjaGVkX3NldHNjaGVkdWxlciAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTU2KQorI2RlZmluZSBfX05SX3NjaGVkX2dldHNjaGVkdWxlciAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTU3KQorI2RlZmluZSBfX05SX3NjaGVkX3lpZWxkICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTU4KQorI2RlZmluZSBfX05SX3NjaGVkX2dldF9wcmlvcml0eV9tYXggICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTU5KQorI2RlZmluZSBfX05SX3NjaGVkX2dldF9wcmlvcml0eV9taW4gICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTYwKQorI2RlZmluZSBfX05SX3NjaGVkX3JyX2dldF9pbnRlcnZhbCAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTYxKQorI2RlZmluZSBfX05SX25hbm9zbGVlcCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTYyKQorI2RlZmluZSBfX05SX21yZW1hcCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTYzKQorI2RlZmluZSBfX05SX3BvbGwgICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTY4KQorI2RlZmluZSBfX05SX3ByY3RsICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTcyKQorI2RlZmluZSBfX05SX3J0X3NpZ2FjdGlvbiAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTc0KQorI2RlZmluZSBfX05SX3J0X3NpZ3Byb2NtYXNrICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTc1KQorI2RlZmluZSBfX05SX3J0X3NpZ3RpbWVkd2FpdCAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTc3KQorI2RlZmluZSBfX05SX3ByZWFkNjQgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTgwKQorI2RlZmluZSBfX05SX3B3cml0ZTY0ICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTgxKQorI2RlZmluZSBfX05SX2dldGN3ZCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTgzKQorI2RlZmluZSBfX05SX2NhcGdldCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTg0KQorI2RlZmluZSBfX05SX2NhcHNldCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTg1KQorI2RlZmluZSBfX05SX3NpZ2FsdHN0YWNrICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTg2KQorI2RlZmluZSBfX05SX3NlbmRmaWxlICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTg3KQorI2RlZmluZSBfX05SX3VnZXRybGltaXQgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTkxKQorI2RlZmluZSBfX05SX21tYXAyICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTkyKQorI2RlZmluZSBfX05SX2Z0cnVuY2F0ZTY0ICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTk0KQorI2RlZmluZSBfX05SX3N0YXQ2NCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTk1KQorI2RlZmluZSBfX05SX2xzdGF0NjQgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTk2KQorI2RlZmluZSBfX05SX2ZzdGF0NjQgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTk3KQorI2RlZmluZSBfX05SX2xjaG93bjMyICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTk4KQorI2RlZmluZSBfX05SX2dldHVpZDMyICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTk5KQorI2RlZmluZSBfX05SX2dldGdpZDMyICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjAwKQorI2RlZmluZSBfX05SX2dldGV1aWQzMiAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjAxKQorI2RlZmluZSBfX05SX2dldGVnaWQzMiAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjAyKQorI2RlZmluZSBfX05SX3NldHJldWlkMzIgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjAzKQorI2RlZmluZSBfX05SX3NldHJlZ2lkMzIgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjA0KQorI2RlZmluZSBfX05SX2dldGdyb3VwczMyICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjA1KQorI2RlZmluZSBfX05SX3NldGdyb3VwczMyICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjA2KQorI2RlZmluZSBfX05SX2ZjaG93bjMyICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjA3KQorI2RlZmluZSBfX05SX3NldHJlc3VpZDMyICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjA4KQorI2RlZmluZSBfX05SX2dldHJlc3VpZDMyICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjA5KQorI2RlZmluZSBfX05SX3NldHJlc2dpZDMyICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjEwKQorI2RlZmluZSBfX05SX2dldHJlc2dpZDMyICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjExKQorI2RlZmluZSBfX05SX2Nob3duMzIgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjEyKQorI2RlZmluZSBfX05SX3NldHVpZDMyICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjEzKQorI2RlZmluZSBfX05SX3NldGdpZDMyICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjE0KQogI2RlZmluZSBfX05SX21pbmNvcmUgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjE4KQotI2RlZmluZSBfX05SX3BpcGUyICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzMxKQorI2RlZmluZSBfX05SX21hZHZpc2UgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjE5KQogI2RlZmluZSBfX05SX2dldGRlbnRzNjQgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjIwKQotI2RlZmluZSBfX05SX2ZzdGF0ZnM2NCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjY5KQotI2RlZmluZSBfX05SX2ZzdGF0YXQ2NCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzAwKQotI2RlZmluZSBfX05SX21rZGlyYXQgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjk2KQotI2RlZmluZSBfX05SX2ZjaG93bmF0ICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjk4KQotI2RlZmluZSBfX05SX2ZjaG1vZGF0ICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzA2KQotI2RlZmluZSBfX05SX3JlbmFtZWF0ICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzAyKQotI2RlZmluZSBfX05SX3VubGlua2F0ICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzAxKQotI2RlZmluZSBfX05SX2ZhY2Nlc3NhdCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzA3KQotI2RlZmluZSBfX05SX3N0YXRmczY0ICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjY4KQotI2RlZmluZSBfX05SX2Nsb2NrX2dldHRpbWUgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjY1KQotI2RlZmluZSBfX05SX2Nsb2NrX3NldHRpbWUgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjY0KQotI2RlZmluZSBfX05SX2Nsb2NrX2dldHJlcyAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjY2KQotI2RlZmluZSBfX05SX2Nsb2NrX25hbm9zbGVlcCAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjY3KQorI2RlZmluZSBfX05SX2ZjbnRsNjQgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjIxKQorI2RlZmluZSBfX05SX2dldHRpZCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjI0KQorI2RlZmluZSBfX05SX3JlYWRhaGVhZCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjI1KQorI2RlZmluZSBfX05SX3NldHhhdHRyICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjI2KQorI2RlZmluZSBfX05SX2xzZXR4YXR0ciAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjI3KQorI2RlZmluZSBfX05SX2ZzZXR4YXR0ciAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjI4KQorI2RlZmluZSBfX05SX2dldHhhdHRyICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjI5KQorI2RlZmluZSBfX05SX2xnZXR4YXR0ciAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjMwKQorI2RlZmluZSBfX05SX2ZnZXR4YXR0ciAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjMxKQorI2RlZmluZSBfX05SX2xpc3R4YXR0ciAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjMyKQorI2RlZmluZSBfX05SX2xsaXN0eGF0dHIgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjMzKQorI2RlZmluZSBfX05SX2ZsaXN0eGF0dHIgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjM0KQorI2RlZmluZSBfX05SX3JlbW92ZXhhdHRyICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjM1KQorI2RlZmluZSBfX05SX2xyZW1vdmV4YXR0ciAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjM2KQorI2RlZmluZSBfX05SX2ZyZW1vdmV4YXR0ciAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjM3KQorI2RlZmluZSBfX05SX3RraWxsICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjM4KQorI2RlZmluZSBfX05SX2Z1dGV4ICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjQwKQorI2RlZmluZSBfX05SX3NjaGVkX3NldGFmZmluaXR5ICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjQxKQorI2RlZmluZSBfX05SX3NjaGVkX2dldGFmZmluaXR5ICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjQyKQorI2RlZmluZSBfX05SX3NldF90aHJlYWRfYXJlYSAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjQzKQorI2RlZmluZSBfX05SX2V4aXRfZ3JvdXAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjUyKQorI2RlZmluZSBfX05SX2Vwb2xsX2NyZWF0ZSAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjU0KQorI2RlZmluZSBfX05SX2Vwb2xsX2N0bCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjU1KQorI2RlZmluZSBfX05SX2Vwb2xsX3dhaXQgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjU2KQogI2RlZmluZSBfX05SX3RpbWVyX2NyZWF0ZSAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjU5KQogI2RlZmluZSBfX05SX3RpbWVyX3NldHRpbWUgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjYwKQogI2RlZmluZSBfX05SX3RpbWVyX2dldHRpbWUgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjYxKQogI2RlZmluZSBfX05SX3RpbWVyX2dldG92ZXJydW4gICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjYyKQogI2RlZmluZSBfX05SX3RpbWVyX2RlbGV0ZSAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjYzKQorI2RlZmluZSBfX05SX2Nsb2NrX3NldHRpbWUgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjY0KQorI2RlZmluZSBfX05SX2Nsb2NrX2dldHRpbWUgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjY1KQorI2RlZmluZSBfX05SX2Nsb2NrX2dldHJlcyAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjY2KQorI2RlZmluZSBfX05SX2Nsb2NrX25hbm9zbGVlcCAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjY3KQorI2RlZmluZSBfX05SX3N0YXRmczY0ICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjY4KQorI2RlZmluZSBfX05SX2ZzdGF0ZnM2NCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjY5KQorI2RlZmluZSBfX05SX3Rna2lsbCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjcwKQogI2RlZmluZSBfX05SX3V0aW1lcyAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjcxKQotI2RlZmluZSBfX05SX3V0aW1lbnNhdCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzIwKQotI2RlZmluZSBfX05SX3NvY2tldGNhbGwgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTAyKQotI2RlZmluZSBfX05SX2dldGNwdSAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzE4KQorI2RlZmluZSBfX05SX3dhaXRpZCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjg0KQogI2RlZmluZSBfX05SX2lvcHJpb19zZXQgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjg5KQogI2RlZmluZSBfX05SX2lvcHJpb19nZXQgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjkwKQotI2RlZmluZSBfX05SX2Vwb2xsX2NyZWF0ZSAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjU0KQotI2RlZmluZSBfX05SX2Vwb2xsX2N0bCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjU1KQotI2RlZmluZSBfX05SX2Vwb2xsX3dhaXQgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjU2KQogI2RlZmluZSBfX05SX2lub3RpZnlfaW5pdCAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjkxKQogI2RlZmluZSBfX05SX2lub3RpZnlfYWRkX3dhdGNoICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjkyKQogI2RlZmluZSBfX05SX2lub3RpZnlfcm1fd2F0Y2ggICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjkzKQorI2RlZmluZSBfX05SX29wZW5hdCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjk1KQorI2RlZmluZSBfX05SX21rZGlyYXQgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjk2KQorI2RlZmluZSBfX05SX2ZjaG93bmF0ICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjk4KQorI2RlZmluZSBfX05SX2ZzdGF0YXQ2NCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzAwKQorI2RlZmluZSBfX05SX3VubGlua2F0ICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzAxKQorI2RlZmluZSBfX05SX3JlbmFtZWF0ICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzAyKQorI2RlZmluZSBfX05SX2ZjaG1vZGF0ICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzA2KQorI2RlZmluZSBfX05SX2ZhY2Nlc3NhdCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzA3KQorI2RlZmluZSBfX05SX2dldGNwdSAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzE4KQorI2RlZmluZSBfX05SX3V0aW1lbnNhdCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzIwKQogI2RlZmluZSBfX05SX2V2ZW50ZmQyICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzI4KQorI2RlZmluZSBfX05SX3BpcGUyICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzMxKQorI2VuZGlmCisKKyNpZmRlZiBfX21pcHNfXworI2RlZmluZSBfX05SX3N5c2NhbGwgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMCkKKyNkZWZpbmUgX19OUl93YWl0cGlkICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDcpCisjZGVmaW5lIF9fTlJfbGNob3duICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAxNikKKyNkZWZpbmUgX19OUl9zZXR1aWQgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDIzKQorI2RlZmluZSBfX05SX2dldHVpZCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjQpCisjZGVmaW5lIF9fTlJfa2lsbCAgICAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyAzNykKKyNkZWZpbmUgX19OUl9zZXRnaWQgICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDQ2KQorI2RlZmluZSBfX05SX2dldGdpZCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNDcpCisjZGVmaW5lIF9fTlJfZ2V0ZXVpZCAgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA0OSkKKyNkZWZpbmUgX19OUl9nZXRlZ2lkICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDUwKQorI2RlZmluZSBfX05SX3NldHJldWlkICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgNzApCisjZGVmaW5lIF9fTlJfc2V0cmVnaWQgICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA3MSkKKyNkZWZpbmUgX19OUl9nZXRybGltaXQgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDc2KQorI2RlZmluZSBfX05SX2dldGdyb3VwcyAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgODApCisjZGVmaW5lIF9fTlJfc2V0Z3JvdXBzICAgICAgICAgICAgICAgICAgICAoX19OUl9TWVNDQUxMX0JBU0UgKyA4MSkKKyNkZWZpbmUgX19OUl9mY2hvd24gICAgICAgICAgICAgICAgICAgICAgIChfX05SX1NZU0NBTExfQkFTRSArIDk1KQorI2RlZmluZSBfX05SX2NhY2hlZmx1c2ggICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTQ3KQorI2RlZmluZSBfX05SX2ZkYXRhc3luYyAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTUyKQorI2RlZmluZSBfX05SX21sb2NrICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTU0KQorI2RlZmluZSBfX05SX211bmxvY2sgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTU1KQorI2RlZmluZSBfX05SX3NjaGVkX3NldHBhcmFtICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTU4KQorI2RlZmluZSBfX05SX3NjaGVkX2dldHBhcmFtICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTU5KQorI2RlZmluZSBfX05SX3NjaGVkX3NldHNjaGVkdWxlciAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTYwKQorI2RlZmluZSBfX05SX3NjaGVkX2dldHNjaGVkdWxlciAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTYxKQorI2RlZmluZSBfX05SX3NjaGVkX3lpZWxkICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTYyKQorI2RlZmluZSBfX05SX3NjaGVkX2dldF9wcmlvcml0eV9tYXggICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTYzKQorI2RlZmluZSBfX05SX3NjaGVkX2dldF9wcmlvcml0eV9taW4gICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTY0KQorI2RlZmluZSBfX05SX3NjaGVkX3JyX2dldF9pbnRlcnZhbCAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTY1KQorI2RlZmluZSBfX05SX25hbm9zbGVlcCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTY2KQorI2RlZmluZSBfX05SX21yZW1hcCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTY3KQorI2RlZmluZSBfX05SX2FjY2VwdCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTY4KQorI2RlZmluZSBfX05SX2JpbmQgICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTY5KQorI2RlZmluZSBfX05SX2Nvbm5lY3QgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTcwKQorI2RlZmluZSBfX05SX2dldHBlZXJuYW1lICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTcxKQorI2RlZmluZSBfX05SX2dldHNvY2tuYW1lICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTcyKQorI2RlZmluZSBfX05SX2dldHNvY2tvcHQgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTczKQorI2RlZmluZSBfX05SX2xpc3RlbiAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTc0KQorI2RlZmluZSBfX05SX3JlY3Zmcm9tICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTc2KQorI2RlZmluZSBfX05SX3JlY3Ztc2cgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTc3KQorI2RlZmluZSBfX05SX3NlbmRtc2cgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTc5KQorI2RlZmluZSBfX05SX3NlbmR0byAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTgwKQorI2RlZmluZSBfX05SX3NldHNvY2tvcHQgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTgxKQorI2RlZmluZSBfX05SX3NodXRkb3duICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTgyKQorI2RlZmluZSBfX05SX3NvY2tldCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTgzKQorI2RlZmluZSBfX05SX3NvY2tldHBhaXIgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTg0KQorI2RlZmluZSBfX05SX3NldHJlc3VpZCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTg1KQorI2RlZmluZSBfX05SX2dldHJlc3VpZCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTg2KQorI2RlZmluZSBfX05SX3BvbGwgICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTg4KQorI2RlZmluZSBfX05SX3NldHJlc2dpZCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTkwKQorI2RlZmluZSBfX05SX2dldHJlc2dpZCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTkxKQorI2RlZmluZSBfX05SX3ByY3RsICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTkyKQorI2RlZmluZSBfX05SX3J0X3NpZ2FjdGlvbiAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTk0KQorI2RlZmluZSBfX05SX3J0X3NpZ3Byb2NtYXNrICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTk1KQorI2RlZmluZSBfX05SX3J0X3NpZ3RpbWVkd2FpdCAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMTk3KQorI2RlZmluZSBfX05SX3ByZWFkNjQgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjAwKQorI2RlZmluZSBfX05SX3B3cml0ZTY0ICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjAxKQorI2RlZmluZSBfX05SX2Nob3duICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjAyKQorI2RlZmluZSBfX05SX2dldGN3ZCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjAzKQorI2RlZmluZSBfX05SX2NhcGdldCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjA0KQorI2RlZmluZSBfX05SX2NhcHNldCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjA1KQorI2RlZmluZSBfX05SX3NpZ2FsdHN0YWNrICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjA2KQorI2RlZmluZSBfX05SX3NlbmRmaWxlICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjA3KQorI2RlZmluZSBfX05SX21tYXAyICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjEwKQorI2RlZmluZSBfX05SX2Z0cnVuY2F0ZTY0ICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjEyKQorI2RlZmluZSBfX05SX3N0YXQ2NCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjEzKQorI2RlZmluZSBfX05SX2xzdGF0NjQgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjE0KQorI2RlZmluZSBfX05SX2ZzdGF0NjQgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjE1KQorI2RlZmluZSBfX05SX21pbmNvcmUgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjE3KQorI2RlZmluZSBfX05SX21hZHZpc2UgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjE4KQorI2RlZmluZSBfX05SX2dldGRlbnRzNjQgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjE5KQorI2RlZmluZSBfX05SX2ZjbnRsNjQgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjIwKQorI2RlZmluZSBfX05SX2dldHRpZCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjIyKQorI2RlZmluZSBfX05SX3JlYWRhaGVhZCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjIzKQorI2RlZmluZSBfX05SX3NldHhhdHRyICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjI0KQorI2RlZmluZSBfX05SX2xzZXR4YXR0ciAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjI1KQorI2RlZmluZSBfX05SX2ZzZXR4YXR0ciAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjI2KQorI2RlZmluZSBfX05SX2dldHhhdHRyICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjI3KQorI2RlZmluZSBfX05SX2xnZXR4YXR0ciAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjI4KQorI2RlZmluZSBfX05SX2ZnZXR4YXR0ciAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjI5KQorI2RlZmluZSBfX05SX2xpc3R4YXR0ciAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjMwKQorI2RlZmluZSBfX05SX2xsaXN0eGF0dHIgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjMxKQorI2RlZmluZSBfX05SX2ZsaXN0eGF0dHIgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjMyKQorI2RlZmluZSBfX05SX3JlbW92ZXhhdHRyICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjMzKQorI2RlZmluZSBfX05SX2xyZW1vdmV4YXR0ciAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjM0KQorI2RlZmluZSBfX05SX2ZyZW1vdmV4YXR0ciAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjM1KQorI2RlZmluZSBfX05SX3RraWxsICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjM2KQorI2RlZmluZSBfX05SX2Z1dGV4ICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjM4KQorI2RlZmluZSBfX05SX3NjaGVkX3NldGFmZmluaXR5ICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjM5KQorI2RlZmluZSBfX05SX3NjaGVkX2dldGFmZmluaXR5ICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjQwKQorI2RlZmluZSBfX05SX2V4aXRfZ3JvdXAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjQ2KQorI2RlZmluZSBfX05SX2Vwb2xsX2NyZWF0ZSAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjQ4KQorI2RlZmluZSBfX05SX2Vwb2xsX2N0bCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjQ5KQorI2RlZmluZSBfX05SX2Vwb2xsX3dhaXQgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjUwKQorI2RlZmluZSBfX05SX3N0YXRmczY0ICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjU1KQorI2RlZmluZSBfX05SX2ZzdGF0ZnM2NCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjU2KQorI2RlZmluZSBfX05SX3RpbWVyX2NyZWF0ZSAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjU3KQorI2RlZmluZSBfX05SX3RpbWVyX3NldHRpbWUgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjU4KQorI2RlZmluZSBfX05SX3RpbWVyX2dldHRpbWUgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjU5KQorI2RlZmluZSBfX05SX3RpbWVyX2dldG92ZXJydW4gICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjYwKQorI2RlZmluZSBfX05SX3RpbWVyX2RlbGV0ZSAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjYxKQorI2RlZmluZSBfX05SX2Nsb2NrX3NldHRpbWUgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjYyKQorI2RlZmluZSBfX05SX2Nsb2NrX2dldHRpbWUgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjYzKQorI2RlZmluZSBfX05SX2Nsb2NrX2dldHJlcyAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjY0KQorI2RlZmluZSBfX05SX2Nsb2NrX25hbm9zbGVlcCAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjY1KQorI2RlZmluZSBfX05SX3Rna2lsbCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjY2KQorI2RlZmluZSBfX05SX3V0aW1lcyAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjY3KQorI2RlZmluZSBfX05SX3dhaXRpZCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjc4KQorI2RlZmluZSBfX05SX3NldF90aHJlYWRfYXJlYSAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjgzKQorI2RlZmluZSBfX05SX2lub3RpZnlfaW5pdCAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjg0KQorI2RlZmluZSBfX05SX2lub3RpZnlfYWRkX3dhdGNoICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjg1KQorI2RlZmluZSBfX05SX2lub3RpZnlfcm1fd2F0Y2ggICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjg2KQorI2RlZmluZSBfX05SX29wZW5hdCAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjg4KQorI2RlZmluZSBfX05SX21rZGlyYXQgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjg5KQorI2RlZmluZSBfX05SX2ZjaG93bmF0ICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjkxKQorI2RlZmluZSBfX05SX2ZzdGF0YXQ2NCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjkzKQorI2RlZmluZSBfX05SX3VubGlua2F0ICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjk0KQorI2RlZmluZSBfX05SX3JlbmFtZWF0ICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjk1KQorI2RlZmluZSBfX05SX2ZjaG1vZGF0ICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMjk5KQorI2RlZmluZSBfX05SX2ZhY2Nlc3NhdCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzAwKQorI2RlZmluZSBfX05SX2dldGNwdSAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzEyKQorI2RlZmluZSBfX05SX2lvcHJpb19zZXQgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzE0KQorI2RlZmluZSBfX05SX2lvcHJpb19nZXQgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzE1KQorI2RlZmluZSBfX05SX3V0aW1lbnNhdCAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzE2KQorI2RlZmluZSBfX05SX2V2ZW50ZmQyICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzI1KQorI2RlZmluZSBfX05SX3BpcGUyICAgICAgICAgICAgICAgICAgICAgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgMzI4KQogI2VuZGlmCiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvbGliYy9rZXJuZWwvYXJjaC1taXBzL2FzbS9zaWduYWwuaCBiL2xpYmMva2VybmVsL2FyY2gtbWlwcy9hc20vc2lnbmFsLmgKaW5kZXggYjUxYWQ3MS4uNWY1YWM3NyAxMDA2NDQKLS0tIGEvbGliYy9rZXJuZWwvYXJjaC1taXBzL2FzbS9zaWduYWwuaAorKysgYi9saWJjL2tlcm5lbC9hcmNoLW1pcHMvYXNtL3NpZ25hbC5oCkBAIC05MiwzMiArOTIsMzMgQEAKICNkZWZpbmUgTUlOU0lHU1RLU1ogMjA0OAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KICNkZWZpbmUgU0lHU1RLU1ogODE5Mgorc3RydWN0IHNpZ2luZm87CiAjZGVmaW5lIFNJR19CTE9DSyAxICAKICNkZWZpbmUgU0lHX1VOQkxPQ0sgMiAgCi0jZGVmaW5lIFNJR19TRVRNQVNLIDMgIAogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyNkZWZpbmUgU0lHX1NFVE1BU0sgMyAgCiAjaW5jbHVkZSA8YXNtLWdlbmVyaWMvc2lnbmFsLmg+CiBzdHJ1Y3Qgc2lnYWN0aW9uIHsKICB1bnNpZ25lZCBpbnQgc2FfZmxhZ3M7Ci0gdW5pb24gewogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyB1bmlvbiB7CiAgX19zaWdoYW5kbGVyX3Qgc2FfaGFuZGxlcjsKICB2b2lkICgqc2Ffc2lnYWN0aW9uKSAoaW50LCBzdHJ1Y3Qgc2lnaW5mbyAqLCB2b2lkICopOwogIH0gX19zaWdhY3Rpb25faGFuZGxlcjsKLSNkZWZpbmUgc2FfaGFuZGxlciBfX3NpZ2FjdGlvbl9oYW5kbGVyLnNhX2hhbmRsZXIKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZGVmaW5lIHNhX2hhbmRsZXIgX19zaWdhY3Rpb25faGFuZGxlci5zYV9oYW5kbGVyCiAjZGVmaW5lIHNhX3NpZ2FjdGlvbiBfX3NpZ2FjdGlvbl9oYW5kbGVyLnNhX3NpZ2FjdGlvbgogIHNpZ3NldF90IHNhX21hc2s7CiB9Owotc3RydWN0IGtfc2lnYWN0aW9uIHsKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCitzdHJ1Y3Qga19zaWdhY3Rpb24gewogIHN0cnVjdCBzaWdhY3Rpb24gc2E7CiB9OwogdHlwZWRlZiBzdHJ1Y3Qgc2lnYWx0c3RhY2sgewotIHZvaWQgKnNzX3NwOwogLyogV0FSTklORzogRE8gTk9UIEVESVQsIEFVVE8tR0VORVJBVEVEIENPREUgLSBTRUUgVE9QIEZPUiBJTlNUUlVDVElPTlMgKi8KKyB2b2lkICpzc19zcDsKICBzaXplX3Qgc3Nfc2l6ZTsKICBpbnQgc3NfZmxhZ3M7CiB9IHN0YWNrX3Q7Ci0jZW5kaWYKIC8qIFdBUk5JTkc6IERPIE5PVCBFRElULCBBVVRPLUdFTkVSQVRFRCBDT0RFIC0gU0VFIFRPUCBGT1IgSU5TVFJVQ1RJT05TICovCisjZW5kaWYKZGlmZiAtLWdpdCBhL2xpYmMvbmV0YnNkL3Jlc29sdi9yZXNfY2FjaGUuYyBiL2xpYmMvbmV0YnNkL3Jlc29sdi9yZXNfY2FjaGUuYwppbmRleCA5YWU2MjdjLi4wYmIyZjIzIDEwMDY0NAotLS0gYS9saWJjL25ldGJzZC9yZXNvbHYvcmVzX2NhY2hlLmMKKysrIGIvbGliYy9uZXRic2QvcmVzb2x2L3Jlc19jYWNoZS5jCkBAIC0xNDMzLDYgKzE0MzMsMjcgQEAKICAgICBfY2FjaGVfcmVtb3ZlX3AoY2FjaGUsIGxvb2t1cCk7CiB9CiAKKy8qIFJlbW92ZSBhbGwgZXhwaXJlZCBlbnRyaWVzIGZyb20gdGhlIGhhc2ggdGFibGUuCisgKi8KK3N0YXRpYyB2b2lkIF9jYWNoZV9yZW1vdmVfZXhwaXJlZChDYWNoZSogY2FjaGUpIHsKKyAgICBFbnRyeSogZTsKKyAgICB0aW1lX3Qgbm93ID0gX3RpbWVfbm93KCk7CisKKyAgICBmb3IgKGUgPSBjYWNoZS0+bXJ1X2xpc3QubXJ1X25leHQ7IGUgIT0gJmNhY2hlLT5tcnVfbGlzdDspIHsKKyAgICAgICAgLy8gRW50cnkgaXMgb2xkLCByZW1vdmUKKyAgICAgICAgaWYgKG5vdyA+PSBlLT5leHBpcmVzKSB7CisgICAgICAgICAgICBFbnRyeSoqIGxvb2t1cCA9IF9jYWNoZV9sb29rdXBfcChjYWNoZSwgZSk7CisgICAgICAgICAgICBpZiAoKmxvb2t1cCA9PSBOVUxMKSB7IC8qIHNob3VsZCBub3QgaGFwcGVuICovCisgICAgICAgICAgICAgICAgWExPRygiJXM6IEVOVFJZIE5PVCBJTiBIVEFCTEUgPyIsIF9fRlVOQ1RJT05fXyk7CisgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAgICAgfQorICAgICAgICAgICAgZSA9IGUtPm1ydV9uZXh0OworICAgICAgICAgICAgX2NhY2hlX3JlbW92ZV9wKGNhY2hlLCBsb29rdXApOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgZSA9IGUtPm1ydV9uZXh0OworICAgICAgICB9CisgICAgfQorfQogCiBSZXNvbHZDYWNoZVN0YXR1cwogX3Jlc29sdl9jYWNoZV9sb29rdXAoIHN0cnVjdCByZXNvbHZfY2FjaGUqICBjYWNoZSwKQEAgLTE1NDcsNyArMTU2OCwxMCBAQAogICAgIH0KIAogICAgIGlmIChjYWNoZS0+bnVtX2VudHJpZXMgPj0gY2FjaGUtPm1heF9lbnRyaWVzKSB7Ci0gICAgICAgIF9jYWNoZV9yZW1vdmVfb2xkZXN0KGNhY2hlKTsKKyAgICAgICAgX2NhY2hlX3JlbW92ZV9leHBpcmVkKGNhY2hlKTsKKyAgICAgICAgaWYgKGNhY2hlLT5udW1fZW50cmllcyA+PSBjYWNoZS0+bWF4X2VudHJpZXMpIHsKKyAgICAgICAgICAgIF9jYWNoZV9yZW1vdmVfb2xkZXN0KGNhY2hlKTsKKyAgICAgICAgfQogICAgICAgICAvKiBuZWVkIHRvIGxvb2t1cCBhZ2FpbiAqLwogICAgICAgICBsb29rdXAgPSBfY2FjaGVfbG9va3VwX3AoY2FjaGUsIGtleSk7CiAgICAgICAgIGUgICAgICA9ICpsb29rdXA7CmRpZmYgLS1naXQgYS9saWJjL3Rvb2xzL2Jpb25pY191dGlscy5weSBiL2xpYmMvdG9vbHMvYmlvbmljX3V0aWxzLnB5CmluZGV4IDBiYzk0N2IuLmFiYjc4MjAgMTAwNjQ0Ci0tLSBhL2xpYmMvdG9vbHMvYmlvbmljX3V0aWxzLnB5CisrKyBiL2xpYmMvdG9vbHMvYmlvbmljX3V0aWxzLnB5CkBAIC00LDEzICs0LDEzIEBACiAKICMgc3VwcG9ydCBCaW9uaWMgYXJjaGl0ZWN0dXJlcywgYWRkIG5ldyBvbmVzIGFzIGFwcHJvcHJpYXRlCiAjCi1iaW9uaWNfYXJjaHMgPSBbICJhcm0iLCAieDg2IiBdCitiaW9uaWNfYXJjaHMgPSBbICJhcm0iLCAieDg2IiwgIm1pcHMiIF0KIAogIyBiYXNpYyBkZWJ1Z2dpbmcgdHJhY2Ugc3VwcG9ydAogIyBjYWxsIERfc2V0bGV2ZWwgdG8gc2V0IHRoZSB2ZXJib3NpdHkgbGV2ZWwKICMgYW5kIEQoKSwgRDIoKSwgRDMoKSwgRDQoKSB0byBhZGQgdHJhY2VzCiAjCi12ZXJib3NlID0gMQordmVyYm9zZSA9IDAKIAogZGVmIEQobXNnKToKICAgICBnbG9iYWwgdmVyYm9zZQpAQCAtMTc4LDcgKzE3OCw3IEBACiAgICAgICAgIHNlbGYuc3lzY2FsbHMgPSBbXQogICAgICAgICBzZWxmLmxpbmVubyAgID0gMAogCi0gICAgZGVmIEUobXNnKToKKyAgICBkZWYgRShzZWxmLCBtc2cpOgogICAgICAgICBwcmludCAiJWQ6ICVzIiAlIChzZWxmLmxpbmVubywgbXNnKQogCiAgICAgZGVmIHBhcnNlX2xpbmUoc2VsZiwgbGluZSk6CkBAIC0yMzgsMzYgKzIzOCw1NSBAQAogCiAgICAgICAgIG51bWJlciA9IGxpbmVbcG9zX3JwYXJlbisxOl0uc3RyaXAoKQogICAgICAgICBpZiBudW1iZXIgPT0gInN0dWIiOgotICAgICAgICAgICAgc3lzY2FsbF9pZCAgPSAtMQotICAgICAgICAgICAgc3lzY2FsbF9pZDIgPSAtMQorICAgICAgICAgICAgc3lzY2FsbF9jb21tb24gPSAtMQorICAgICAgICAgICAgc3lzY2FsbF9hcm0gID0gLTEKKyAgICAgICAgICAgIHN5c2NhbGxfeDg2ID0gLTEKKyAgICAgICAgICAgIHN5c2NhbGxfbWlwcyA9IC0xCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICB0cnk6CiAgICAgICAgICAgICAgICAgaWYgbnVtYmVyWzBdID09ICcjJzoKICAgICAgICAgICAgICAgICAgICAgbnVtYmVyID0gbnVtYmVyWzE6XS5zdHJpcCgpCiAgICAgICAgICAgICAgICAgbnVtYmVycyA9IHN0cmluZy5zcGxpdChudW1iZXIsJywnKQotICAgICAgICAgICAgICAgIHN5c2NhbGxfaWQgID0gaW50KG51bWJlcnNbMF0pCi0gICAgICAgICAgICAgICAgc3lzY2FsbF9pZDIgPSBzeXNjYWxsX2lkCi0gICAgICAgICAgICAgICAgaWYgbGVuKG51bWJlcnMpID4gMToKLSAgICAgICAgICAgICAgICAgICAgc3lzY2FsbF9pZDIgPSBpbnQobnVtYmVyc1sxXSkKKyAgICAgICAgICAgICAgICBpZiBsZW4obnVtYmVycykgPT0gMToKKyAgICAgICAgICAgICAgICAgICAgc3lzY2FsbF9jb21tb24gPSBpbnQobnVtYmVyc1swXSkKKyAgICAgICAgICAgICAgICAgICAgc3lzY2FsbF9hcm0gPSAtMQorICAgICAgICAgICAgICAgICAgICBzeXNjYWxsX3g4NiA9IC0xCisgICAgICAgICAgICAgICAgICAgIHN5c2NhbGxfbWlwcyA9IC0xCisgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgaWYgbGVuKG51bWJlcnMpID09IDM6CisgICAgICAgICAgICAgICAgICAgICAgICBzeXNjYWxsX2NvbW1vbiA9IC0xCisgICAgICAgICAgICAgICAgICAgICAgICBzeXNjYWxsX2FybSAgPSBpbnQobnVtYmVyc1swXSkKKyAgICAgICAgICAgICAgICAgICAgICAgIHN5c2NhbGxfeDg2ID0gaW50KG51bWJlcnNbMV0pCisgICAgICAgICAgICAgICAgICAgICAgICBzeXNjYWxsX21pcHMgPSBpbnQobnVtYmVyc1syXSkKKyAgICAgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICAgICAgICAgIEUoImludmFsaWQgc3lzY2FsbCBudW1iZXIgZm9ybWF0IGluICclcyciICUgbGluZSkKKyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybgogICAgICAgICAgICAgZXhjZXB0OgogICAgICAgICAgICAgICAgIEUoImludmFsaWQgc3lzY2FsbCBudW1iZXIgaW4gJyVzJyIgJSBsaW5lKQogICAgICAgICAgICAgICAgIHJldHVybgogCi0JCWdsb2JhbCB2ZXJib3NlCisgICAgICAgIGdsb2JhbCB2ZXJib3NlCiAgICAgICAgIGlmIHZlcmJvc2UgPj0gMjoKLSAgICAgICAgICAgIGlmIGNhbGxfaWQgPCAwOgotICAgICAgICAgICAgICAgIHByaW50ICIlczogJWQsJWQiICUgKHN5c2NhbGxfbmFtZSwgc3lzY2FsbF9pZCwgc3lzY2FsbF9pZDIpCisgICAgICAgICAgICBpZiBjYWxsX2lkID09IC0xOgorICAgICAgICAgICAgICAgIGlmIHN5c2NhbGxfY29tbW9uID09IC0xOgorICAgICAgICAgICAgICAgICAgICBwcmludCAiJXM6ICVkLCVkLCVkIiAlIChzeXNjYWxsX25hbWUsIHN5c2NhbGxfYXJtLCBzeXNjYWxsX3g4Niwgc3lzY2FsbF9taXBzKQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgICAgIHByaW50ICIlczogJWQiICUgKHN5c2NhbGxfbmFtZSwgc3lzY2FsbF9jb21tb24pCiAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgIHByaW50ICIlcyglZCk6ICVkLCVkIiAlIChzeXNjYWxsX25hbWUsIGNhbGxfaWQsIHN5c2NhbGxfaWQsIHN5c2NhbGxfaWQyKQorICAgICAgICAgICAgICAgIGlmIHN5c2NhbGxfY29tbW9uID09IC0xOgorICAgICAgICAgICAgICAgICAgICBwcmludCAiJXMoJWQpOiAlZCwlZCwlZCIgJSAoc3lzY2FsbF9uYW1lLCBjYWxsX2lkLCBzeXNjYWxsX2FybSwgc3lzY2FsbF94ODYsIHN5c2NhbGxfbWlwcykKKyAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICBwcmludCAiJXMoJWQpOiAlZCIgJSAoc3lzY2FsbF9uYW1lLCBjYWxsX2lkLCBzeXNjYWxsX2NvbW1vbikKIAotICAgICAgICB0ID0geyAiaWQiICAgICA6IHN5c2NhbGxfaWQsCi0gICAgICAgICAgICAgICJpZDIiICAgIDogc3lzY2FsbF9pZDIsCisgICAgICAgIHQgPSB7ICJhcm1pZCIgIDogc3lzY2FsbF9hcm0sCisgICAgICAgICAgICAgICJ4ODZpZCIgIDogc3lzY2FsbF94ODYsCisgICAgICAgICAgICAgICJtaXBzaWQiIDogc3lzY2FsbF9taXBzLAorICAgICAgICAgICAgICAiY29tbW9uIiA6IHN5c2NhbGxfY29tbW9uLAogICAgICAgICAgICAgICAiY2lkIiAgICA6IGNhbGxfaWQsCiAgICAgICAgICAgICAgICJuYW1lIiAgIDogc3lzY2FsbF9uYW1lLAogICAgICAgICAgICAgICAiZnVuYyIgICA6IHN5c2NhbGxfZnVuYywKICAgICAgICAgICAgICAgInBhcmFtcyIgOiBzeXNjYWxsX3BhcmFtcywKICAgICAgICAgICAgICAgImRlY2wiICAgOiAiJS0xNXMgICVzICglcyk7IiAlIChyZXR1cm5fdHlwZSwgc3lzY2FsbF9mdW5jLCBwYXJhbXMpIH0KLQogICAgICAgICBzZWxmLnN5c2NhbGxzLmFwcGVuZCh0KQogCiAgICAgZGVmIHBhcnNlX2ZpbGUoc2VsZiwgZmlsZV9wYXRoKToKZGlmZiAtLWdpdCBhL2xpYmMvdG9vbHMvY2hlY2tzeXNjYWxscy5weSBiL2xpYmMvdG9vbHMvY2hlY2tzeXNjYWxscy5weQppbmRleCAyYzU2M2Q3Li4yODZlNzI3IDEwMDc1NQotLS0gYS9saWJjL3Rvb2xzL2NoZWNrc3lzY2FsbHMucHkKKysrIGIvbGliYy90b29scy9jaGVja3N5c2NhbGxzLnB5CkBAIC03MCwxMCArNzAsMTcgQEAKIHJlX25yX2Nsb2NrX2xpbmUgPSByZS5jb21waWxlKCByIiNkZWZpbmUgX19OUl8oXHcqKVxzKlwoX19OUl90aW1lcl9jcmVhdGVcKyhcdyopXCkiICkKIHJlX2FybV9ucl9saW5lICAgPSByZS5jb21waWxlKCByIiNkZWZpbmUgX19BUk1fTlJfKFx3KilccypcKF9fQVJNX05SX0JBU0VcK1xzKihcdyopXCkiICkKIHJlX3g4Nl9saW5lICAgICAgPSByZS5jb21waWxlKCByIiNkZWZpbmUgX19OUl8oXHcqKVxzKihbMC05XSopIiApCityZV9taXBzX2xpbmUgICAgID0gcmUuY29tcGlsZSggciIjZGVmaW5lIF9fTlJfKFx3KilccypcKF9fTlJfTGludXhccypcK1xzKihbMC05XSopXCkiICkKIAogIyBub3cgcmVhZCB0aGUgTGludXggYXJtIGhlYWRlcgogZGVmIHByb2Nlc3NfbnJfbGluZShsaW5lLGRpY3QpOgogCisgICAgbSA9IHJlX21pcHNfbGluZS5tYXRjaChsaW5lKQorICAgIGlmIG06CisgICAgICAgIGlmIGRpY3RbIkxpbnV4Il09PTQwMDA6CisgICAgICAgICAgICBkaWN0W20uZ3JvdXAoMSldID0gaW50KG0uZ3JvdXAoMikpCisgICAgICAgIHJldHVybgorCiAgICAgbSA9IHJlX25yX2xpbmUubWF0Y2gobGluZSkKICAgICBpZiBtOgogICAgICAgICBkaWN0W20uZ3JvdXAoMSldID0gaW50KG0uZ3JvdXAoMikpCkBAIC0xMTgsNiArMTI1LDcgQEAKIAogYXJtX2RpY3QgPSB7fQogeDg2X2RpY3QgPSB7fQorbWlwc19kaWN0ID0ge30KIAogIyByZW1vdmUgdHJhaWxpbmcgc2xhc2ggZnJvbSB0aGUgbGludXhfcm9vdCwgaWYgYW55CiBpZiBsaW51eF9yb290Wy0xXSA9PSAnLyc6CkBAIC0xNDEsOCArMTQ5LDE1IEBACiAgICAgICAgIHByaW50ICJtYXliZSB1c2luZyBhIGRpZmZlcmVudCBzZXQgb2Yga2VybmVsIGhlYWRlcnMgbWlnaHQgaGVscC4iCiAgICAgICAgIHN5cy5leGl0KDEpCiAKK21pcHNfdW5pc3RkID0gZmluZF9hcmNoX2hlYWRlcihsaW51eF9yb290LCAibWlwcyIsICJ1bmlzdGQuaCIpCitpZiBub3QgbWlwc191bmlzdGQ6CisgICAgcHJpbnQgIldFSVJEOiBDb3VsZCBub3QgbG9jYXRlIHRoZSBNaXBzIHVuaXN0ZC5oIGtlcm5lbCBoZWFkZXIgZmlsZSwiCisgICAgcHJpbnQgIm1heWJlIHVzaW5nIGEgZGlmZmVyZW50IHNldCBvZiBrZXJuZWwgaGVhZGVycyBtaWdodCBoZWxwLiIKKyAgICBzeXMuZXhpdCgxKQorCiBwcm9jZXNzX2hlYWRlciggYXJtX3VuaXN0ZCwgYXJtX2RpY3QgKQogcHJvY2Vzc19oZWFkZXIoIHg4Nl91bmlzdGQsIHg4Nl9kaWN0ICkKK3Byb2Nlc3NfaGVhZGVyKCBtaXBzX3VuaXN0ZCwgbWlwc19kaWN0ICkKIAogIyBub3cgcGVyZm9ybSB0aGUgY29tcGFyaXNvbgogZXJyb3JzID0gMApAQCAtMTU0LDE4ICsxNjksMTkgQEAKICAgICAgICAgc2NfaWQgICA9IHNjW2lkbmFtZV0KICAgICAgICAgaWYgc2NfaWQgPj0gMDoKICAgICAgICAgICAgIGlmIG5vdCBhcmNoX2RpY3QuaGFzX2tleShzY19uYW1lKToKLSAgICAgICAgICAgICAgICBwcmludCAiJXMgc3lzY2FsbCAlcyBub3QgZGVmaW5lZCwgc2hvdWxkIGJlICVkICEhIiAlIChhcmNobmFtZSwgc2NfbmFtZSwgc2NfaWQpCisgICAgICAgICAgICAgICAgcHJpbnQgImVycm9yOiAlcyBzeXNjYWxsICVzIG5vdCBkZWZpbmVkLCBzaG91bGQgYmUgJWQiICUgKGFyY2huYW1lLCBzY19uYW1lLCBzY19pZCkKICAgICAgICAgICAgICAgICBlcnJvcnMgKz0gMQogICAgICAgICAgICAgZWxpZiBub3QgYXJjaF9kaWN0Lmhhc19rZXkoc2NfbmFtZSk6Ci0gICAgICAgICAgICAgICAgcHJpbnQgIiVzIHN5c2NhbGwgJXMgaXMgbm90IGltcGxlbWVudGVkISIgJSAoYXJjaG5hbWUsIHNjX25hbWUpCisgICAgICAgICAgICAgICAgcHJpbnQgImVycm9yOiAlcyBzeXNjYWxsICVzIGlzIG5vdCBpbXBsZW1lbnRlZCIgJSAoYXJjaG5hbWUsIHNjX25hbWUpCiAgICAgICAgICAgICAgICAgZXJyb3JzICs9IDEKICAgICAgICAgICAgIGVsaWYgYXJjaF9kaWN0W3NjX25hbWVdICE9IHNjX2lkOgotICAgICAgICAgICAgICAgIHByaW50ICIlcyBzeXNjYWxsICVzIHNob3VsZCBiZSAlZCBpbnN0ZWFkIG9mICVkICEhIiAlIChhcmNobmFtZSwgc2NfbmFtZSwgYXJjaF9kaWN0W3NjX25hbWVdLCBzY19pZCkKKyAgICAgICAgICAgICAgICBwcmludCAiZXJyb3I6ICVzIHN5c2NhbGwgJXMgc2hvdWxkIGJlICVkIGluc3RlYWQgb2YgJWQiICUgKGFyY2huYW1lLCBzY19uYW1lLCBhcmNoX2RpY3Rbc2NfbmFtZV0sIHNjX2lkKQogICAgICAgICAgICAgICAgIGVycm9ycyArPSAxCiAgICAgcmV0dXJuIGVycm9ycwogCi1lcnJvcnMgKz0gY2hlY2tfc3lzY2FsbHMoImFybSIsICJpZCIsIGFybV9kaWN0KQotZXJyb3JzICs9IGNoZWNrX3N5c2NhbGxzKCJ4ODYiLCAiaWQyIiwgeDg2X2RpY3QpCitlcnJvcnMgKz0gY2hlY2tfc3lzY2FsbHMoImFybSIsICJhcm1pZCIsIGFybV9kaWN0KQorZXJyb3JzICs9IGNoZWNrX3N5c2NhbGxzKCJ4ODYiLCAieDg2aWQiLCB4ODZfZGljdCkKK2Vycm9ycyArPSBjaGVja19zeXNjYWxscygibWlwcyIsICJtaXBzaWQiLCBtaXBzX2RpY3QpCiAKIGlmIGVycm9ycyA9PSAwOgogICAgIHByaW50ICJjb25ncmF0dWxhdGlvbnMsIGV2ZXJ5dGhpbmcncyBmaW5lICEhIgpkaWZmIC0tZ2l0IGEvbGliYy90b29scy9nZW5zeXNjYWxscy5weSBiL2xpYmMvdG9vbHMvZ2Vuc3lzY2FsbHMucHkKaW5kZXggYmZhOWZjYy4uOWE4YThjNyAxMDA3NTUKLS0tIGEvbGliYy90b29scy9nZW5zeXNjYWxscy5weQorKysgYi9saWJjL3Rvb2xzL2dlbnN5c2NhbGxzLnB5CkBAIC0xLDExICsxLDEyIEBACiAjIS91c3IvYmluL3B5dGhvbgogIwotIyB0aGlzIHRvb2wgaXMgdXNlZCB0byBnZW5lcmF0ZSB0aGUgc3lzY2FsbCBhc3NtYmxlciB0ZW1wbGF0ZXMKLSMgdG8gYmUgcGxhY2VkIGludG8gYXJjaC14ODYvc3lzY2FsbHMsIGFzIHdlbGwgYXMgdGhlIGNvbnRlbnQKLSMgb2YgYXJjaC14ODYvbGludXgvX3N5c2NhbGxzLmgKKyMgdGhpcyB0b29sIGlzIHVzZWQgdG8gZ2VuZXJhdGUgdGhlIHN5c2NhbGwgYXNzZW1ibGVyIHRlbXBsYXRlcworIyB0byBiZSBwbGFjZWQgaW50byBhcmNoLXthcm0seDg2LG1pcHN9L3N5c2NhbGxzLCBhcyB3ZWxsIGFzIHRoZSBjb250ZW50CisjIG9mIGFyY2gte2FybSx4ODYsbWlwc30vbGludXgvX3N5c2NhbGxzLmgKICMKIAogaW1wb3J0IHN5cywgb3MucGF0aCwgZ2xvYiwgcmUsIGNvbW1hbmRzLCBmaWxlY21wLCBzaHV0aWwKK2ltcG9ydCBnZXRwYXNzCiAKIGZyb20gYmlvbmljX3V0aWxzIGltcG9ydCAqCiAKQEAgLTMxLDkgKzMyLDEwIEBACiBiaW9uaWNfdGVtcCA9ICIvdG1wL2Jpb25pY19nZW5zeXNjYWxscy8iCiAKICMgYWxsIGFyY2hpdGVjdHVyZXMsIHVwZGF0ZSBhcyB5b3Ugc2VlIGZpdAotYWxsX2FyY2hzID0gWyAiYXJtIiwgIng4NiIgXQorYWxsX2FyY2hzID0gWyAiYXJtIiwgIng4NiIsICJtaXBzIiBdCiAKIGRlZiBtYWtlX2RpciggcGF0aCApOgorICAgIHBhdGggPSBvcy5wYXRoLmFic3BhdGgocGF0aCkKICAgICBpZiBub3Qgb3MucGF0aC5leGlzdHMocGF0aCk6CiAgICAgICAgIHBhcmVudCA9IG9zLnBhdGguZGlybmFtZShwYXRoKQogICAgICAgICBpZiBwYXJlbnQ6CkBAIC0xODMsNiArMTg1LDMyIEBACiAgICAgLmZuZW5kCiAiIiIKIAorIyBtaXBzIGFzc2VtYmxlciB0ZW1wbGF0ZXMgZm9yIGVhY2ggc3lzY2FsbCBzdHViCisjCittaXBzX2NhbGwgPSAiIiIvKiBhdXRvZ2VuZXJhdGVkIGJ5IGdlbnN5c2NhbGxzLnB5ICovCisjaW5jbHVkZSA8c3lzL2xpbnV4LXN5c2NhbGxzLmg+CisgICAgLnRleHQKKyAgICAuZ2xvYmwgJShmbmFtZSlzCisgICAgLmFsaWduIDQKKyAgICAuZW50ICUoZm5hbWUpcworCislKGZuYW1lKXM6CisgICAgLnNldCBub3Jlb3JkZXIKKyAgICAuY3Bsb2FkICR0OQorICAgIGxpICR2MCwgJShpZG5hbWUpcworICAgIHN5c2NhbGwKKyAgICBibmV6ICRhMywgMWYKKyAgICBtb3ZlICRhMCwgJHYwCisgICAgaiAkcmEKKyAgICBub3AKKzE6CisgICAgbGEgJHQ5LF9fc2V0X2Vycm5vCisgICAgaiAkdDkKKyAgICBub3AKKyAgICAuc2V0IHJlb3JkZXIKKyAgICAuZW5kICUoZm5hbWUpcworIiIiCisKIGRlZiBwYXJhbV91c2VzXzY0Yml0cyhwYXJhbSk6CiAgICAgIiIiUmV0dXJucyBUcnVlIGlmZiBhIHN5c2NhbGwgcGFyYW1ldGVyIGRlc2NyaXB0aW9uIGNvcnJlc3BvbmRzCiAgICAgICAgdG8gYSA2NC1iaXQgdHlwZS4iIiIKQEAgLTMzMSw2ICszNTksMTAgQEAKICAgICAgICAgICAgICAgICByZXR1cm4gdGh1bWJfY2FsbF9sb25nICUgdAogICAgICAgICByZXR1cm4gdGh1bWJfY2FsbF9kZWZhdWx0ICUgdAogCisgICAgZGVmIG1pcHNfZ2Vuc3R1YihzZWxmLGZuYW1lLCBpZG5hbWUpOgorICAgICAgICB0ID0geyAiZm5hbWUiICA6IGZuYW1lLAorICAgICAgICAgICAgICAiaWRuYW1lIiA6IGlkbmFtZSB9CisgICAgICAgIHJldHVybiBtaXBzX2NhbGwgJSB0CiAKICAgICBkZWYgc3VwZXJoX2dlbnN0dWIoc2VsZiwgZm5hbWUsIGZsYWdzLCBpZG5hbWUpOgogICAgICAgICBudW1hcmdzID0gaW50KGZsYWdzKQpAQCAtMzYwLDcgKzM5Miw3IEBACiAgICAgICAgICAgICBzeXNjYWxsX3BhcmFtcyA9IHRbInBhcmFtcyJdCiAgICAgICAgICAgICBzeXNjYWxsX25hbWUgICA9IHRbIm5hbWUiXQogCi0gICAgICAgICAgICBpZiB0WyJpZCJdID49IDA6CisgICAgICAgICAgICBpZiB0WyJjb21tb24iXSA+PSAwIG9yIHRbImFybWlkIl0gPj0gMDoKICAgICAgICAgICAgICAgICBudW1fcmVncyA9IGNvdW50X2FybV9wYXJhbV9yZWdpc3RlcnMoc3lzY2FsbF9wYXJhbXMpCiAgICAgICAgICAgICAgICAgaWYgZ2VuX3RodW1iX3N0dWJzOgogICAgICAgICAgICAgICAgICAgICB0WyJhc20tdGh1bWIiXSA9IHNlbGYudGh1bWJfZ2Vuc3R1YihzeXNjYWxsX2Z1bmMsbnVtX3JlZ3MsIl9fTlJfIitzeXNjYWxsX25hbWUpCkBAIC0zNzAsNyArNDAyLDcgQEAKICAgICAgICAgICAgICAgICAgICAgZWxzZToKICAgICAgICAgICAgICAgICAgICAgICAgIHRbImFzbS1hcm0iXSAgID0gc2VsZi5hcm1fZ2Vuc3R1YihzeXNjYWxsX2Z1bmMsbnVtX3JlZ3MsIl9fTlJfIitzeXNjYWxsX25hbWUpCiAKLSAgICAgICAgICAgIGlmIHRbImlkMiJdID49IDA6CisgICAgICAgICAgICBpZiB0WyJjb21tb24iXSA+PSAwIG9yIHRbIng4NmlkIl0gPj0gMDoKICAgICAgICAgICAgICAgICBudW1fcmVncyA9IGNvdW50X2dlbmVyaWNfcGFyYW1fcmVnaXN0ZXJzKHN5c2NhbGxfcGFyYW1zKQogICAgICAgICAgICAgICAgIGlmIHRbImNpZCJdID49IDA6CiAgICAgICAgICAgICAgICAgICAgIHRbImFzbS14ODYiXSA9IHNlbGYueDg2X2dlbnN0dWJfY2lkKHN5c2NhbGxfZnVuYywgbnVtX3JlZ3MsICJfX05SXyIrc3lzY2FsbF9uYW1lLCB0WyJjaWQiXSkKQEAgLTM4MCw1NSArNDEyLDY1IEBACiAgICAgICAgICAgICAgICAgRSgiY2lkIGZvciBkaXNwYXRjaCBzeXNjYWxscyBpcyBvbmx5IHN1cHBvcnRlZCBmb3IgeDg2IGluICIKICAgICAgICAgICAgICAgICAgICInJXMnIiAlIHN5c2NhbGxfbmFtZSkKICAgICAgICAgICAgICAgICByZXR1cm4KKyAgICAgICAgICAgIGlmIHRbImNvbW1vbiJdID49IDAgb3IgdFsibWlwc2lkIl0gPj0gMDoKKyAgICAgICAgICAgICAgICB0WyJhc20tbWlwcyJdID0gc2VsZi5taXBzX2dlbnN0dWIoc3lzY2FsbF9mdW5jLCJfX05SXyIrc3lzY2FsbF9uYW1lKQogCiAKICAgICBkZWYgZ2VuX05SX3N5c2NhbGwoc2VsZixmcCxuYW1lLGlkKToKICAgICAgICAgZnAud3JpdGUoICIjZGVmaW5lIF9fTlJfJS0yNXMgICAgKF9fTlJfU1lTQ0FMTF9CQVNFICsgJWQpXG4iICUgKG5hbWUsaWQpICkKIAotICAgICMgbm93IGR1bXAgdGhlIGNvbnRlbnQgb2YgbGludXgvX3N5c2NhbGxzLmgKKyAgICAjIG5vdyBkdW1wIHRoZSBjb250ZW50IG9mIGxpbnV4LXN5c2NhbGxzLmgKICAgICBkZWYgZ2VuX2xpbnV4X3N5c2NhbGxzX2goc2VsZik6CiAgICAgICAgIHBhdGggPSAiaW5jbHVkZS9zeXMvbGludXgtc3lzY2FsbHMuaCIKICAgICAgICAgRCggImdlbmVyYXRpbmcgIitwYXRoICkKICAgICAgICAgZnAgPSBjcmVhdGVfZmlsZSggcGF0aCApCiAgICAgICAgIGZwLndyaXRlKCAiLyogYXV0by1nZW5lcmF0ZWQgYnkgZ2Vuc3lzY2FsbHMucHksIGRvIG5vdCB0b3VjaCAqL1xuIiApCi0gICAgICAgIGZwLndyaXRlKCAiI2lmbmRlZiBfQklPTklDX0xJTlVYX1NZU0NBTExTX0hfXG5cbiIgKQotICAgICAgICBmcC53cml0ZSggIiNpZiAhZGVmaW5lZCBfX0FTTV9BUk1fVU5JU1REX0ggJiYgIWRlZmluZWQgX19BU01fSTM4Nl9VTklTVERfSFxuIiApCisgICAgICAgIGZwLndyaXRlKCAiI2lmbmRlZiBfQklPTklDX0xJTlVYX1NZU0NBTExTX0hfXG4iICkKKyAgICAgICAgZnAud3JpdGUoICIjZGVmaW5lIF9CSU9OSUNfTElOVVhfU1lTQ0FMTFNfSF9cblxuIiApCisgICAgICAgIGZwLndyaXRlKCAiI2lmICFkZWZpbmVkIF9fQVNNX0FSTV9VTklTVERfSCAmJiAhZGVmaW5lZCBfX0FTTV9JMzg2X1VOSVNURF9IICYmICFkZWZpbmVkIF9fQVNNX01JUFNfVU5JU1REX0hcbiIgKQogICAgICAgICBmcC53cml0ZSggIiNpZiBkZWZpbmVkIF9fYXJtX18gJiYgIWRlZmluZWQgX19BUk1fRUFCSV9fICYmICFkZWZpbmVkIF9fdGh1bWJfX1xuIiApCi0gICAgICAgIGZwLndyaXRlKCAiICAjICBkZWZpbmUgX19OUl9TWVNDQUxMX0JBU0UgIDB4OTAwMDAwXG4iICkKLSAgICAgICAgZnAud3JpdGUoICIgICNlbHNlXG4iICkKLSAgICAgICAgZnAud3JpdGUoICIgICMgIGRlZmluZSAgX19OUl9TWVNDQUxMX0JBU0UgIDBcbiIgKQotICAgICAgICBmcC53cml0ZSggIiAgI2VuZGlmXG5cbiIgKQorICAgICAgICBmcC53cml0ZSggIiAgIyAgZGVmaW5lIF9fTlJfU1lTQ0FMTF9CQVNFIDB4OTAwMDAwXG4iICkKKyAgICAgICAgZnAud3JpdGUoICIjZWxpZiBkZWZpbmVkKF9fbWlwc19fKVxuIiApCisgICAgICAgIGZwLndyaXRlKCAiICAjICBkZWZpbmUgX19OUl9TWVNDQUxMX0JBU0UgNDAwMFxuIiApCisgICAgICAgIGZwLndyaXRlKCAiI2Vsc2VcbiIgKQorICAgICAgICBmcC53cml0ZSggIiAgIyAgZGVmaW5lIF9fTlJfU1lTQ0FMTF9CQVNFIDBcbiIgKQorICAgICAgICBmcC53cml0ZSggIiNlbmRpZlxuXG4iICkKIAogICAgICAgICAjIGZpcnN0LCBhbGwgY29tbW9uIHN5c2NhbGxzCi0gICAgICAgIGZvciBzYyBpbiBzZWxmLnN5c2NhbGxzOgotICAgICAgICAgICAgc2NfaWQgID0gc2NbImlkIl0KLSAgICAgICAgICAgIHNjX2lkMiA9IHNjWyJpZDIiXQorICAgICAgICBmb3Igc2MgaW4gc29ydGVkKHNlbGYuc3lzY2FsbHMsa2V5PWxhbWJkYSB4OnhbImNvbW1vbiJdKToKKyAgICAgICAgICAgIHNjX2lkICA9IHNjWyJjb21tb24iXQogICAgICAgICAgICAgc2NfbmFtZSA9IHNjWyJuYW1lIl0KLSAgICAgICAgICAgIGlmIHNjX2lkID09IHNjX2lkMiBhbmQgc2NfaWQgPj0gMDoKKyAgICAgICAgICAgIGlmIHNjX2lkID49IDA6CiAgICAgICAgICAgICAgICAgc2VsZi5nZW5fTlJfc3lzY2FsbCggZnAsIHNjX25hbWUsIHNjX2lkICkKIAogICAgICAgICAjIG5vdywgYWxsIGFybS1zcGVjaWZpYyBzeXNjYWxscwogICAgICAgICBmcC53cml0ZSggIlxuI2lmZGVmIF9fYXJtX19cbiIgKTsKICAgICAgICAgZm9yIHNjIGluIHNlbGYuc3lzY2FsbHM6Ci0gICAgICAgICAgICBzY19pZCAgPSBzY1siaWQiXQotICAgICAgICAgICAgc2NfaWQyID0gc2NbImlkMiJdCisgICAgICAgICAgICBzY19pZCAgPSBzY1siYXJtaWQiXQogICAgICAgICAgICAgc2NfbmFtZSA9IHNjWyJuYW1lIl0KLSAgICAgICAgICAgIGlmIHNjX2lkICE9IHNjX2lkMiBhbmQgc2NfaWQgPj0gMDoKKyAgICAgICAgICAgIGlmIHNjX2lkID49IDA6CiAgICAgICAgICAgICAgICAgc2VsZi5nZW5fTlJfc3lzY2FsbCggZnAsIHNjX25hbWUsIHNjX2lkICkKICAgICAgICAgZnAud3JpdGUoICIjZW5kaWZcbiIgKTsKIAogICAgICAgICBnZW5fc3lzY2FsbHMgPSB7fQogICAgICAgICAjIGZpbmFsbHksIGFsbCBpMzg2LXNwZWNpZmljIHN5c2NhbGxzCiAgICAgICAgIGZwLndyaXRlKCAiXG4jaWZkZWYgX19pMzg2X19cbiIgKTsKLSAgICAgICAgZm9yIHNjIGluIHNlbGYuc3lzY2FsbHM6Ci0gICAgICAgICAgICBzY19pZCAgPSBzY1siaWQiXQotICAgICAgICAgICAgc2NfaWQyID0gc2NbImlkMiJdCisgICAgICAgIGZvciBzYyBpbiBzb3J0ZWQoc2VsZi5zeXNjYWxscyxrZXk9bGFtYmRhIHg6eFsieDg2aWQiXSk6CisgICAgICAgICAgICBzY19pZCAgPSBzY1sieDg2aWQiXQogICAgICAgICAgICAgc2NfbmFtZSA9IHNjWyJuYW1lIl0KLSAgICAgICAgICAgIGlmIHNjX2lkICE9IHNjX2lkMiBhbmQgc2NfaWQyID49IDAgYW5kIHNjX25hbWUgbm90IGluIGdlbl9zeXNjYWxsczoKLSAgICAgICAgICAgICAgICBzZWxmLmdlbl9OUl9zeXNjYWxsKCBmcCwgc2NfbmFtZSwgc2NfaWQyICkKKyAgICAgICAgICAgIGlmIHNjX2lkID49IDAgYW5kIHNjX25hbWUgbm90IGluIGdlbl9zeXNjYWxsczoKKyAgICAgICAgICAgICAgICBzZWxmLmdlbl9OUl9zeXNjYWxsKCBmcCwgc2NfbmFtZSwgc2NfaWQgKQogICAgICAgICAgICAgICAgIGdlbl9zeXNjYWxsc1tzY19uYW1lXSA9IFRydWUKICAgICAgICAgZnAud3JpdGUoICIjZW5kaWZcbiIgKTsKIAorICAgICAgICAjIGFsbCBtaXBzLXNwZWNpZmljIHN5c2NhbGxzCisgICAgICAgIGZwLndyaXRlKCAiXG4jaWZkZWYgX19taXBzX19cbiIgKTsKKyAgICAgICAgZm9yIHNjIGluIHNvcnRlZChzZWxmLnN5c2NhbGxzLGtleT1sYW1iZGEgeDp4WyJtaXBzaWQiXSk6CisgICAgICAgICAgICBzY19pZCA9IHNjWyJtaXBzaWQiXQorICAgICAgICAgICAgaWYgc2NfaWQgPj0gMDoKKyAgICAgICAgICAgICAgICBzZWxmLmdlbl9OUl9zeXNjYWxsKCBmcCwgc2NbIm5hbWUiXSwgc2NfaWQgKQorICAgICAgICBmcC53cml0ZSggIiNlbmRpZlxuIiApOworCiAgICAgICAgIGZwLndyaXRlKCAiXG4jZW5kaWZcbiIgKQogICAgICAgICBmcC53cml0ZSggIlxuI2VuZGlmIC8qIF9CSU9OSUNfTElOVVhfU1lTQ0FMTFNfSF8gKi9cbiIgKTsKICAgICAgICAgZnAuY2xvc2UoKQpAQCAtNDQ1LDYgKzQ4Nyw3IEBACiAgICAgICAgIGFyY2hfdGVzdCA9IHsKICAgICAgICAgICAgICJhcm0iOiBsYW1iZGEgeDogeC5oYXNfa2V5KCJhc20tYXJtIikgb3IgeC5oYXNfa2V5KCJhc20tdGh1bWIiKSwKICAgICAgICAgICAgICJ4ODYiOiBsYW1iZGEgeDogeC5oYXNfa2V5KCJhc20teDg2IiksCisgICAgICAgICAgICAibWlwcyI6IGxhbWJkYSB4OiB4Lmhhc19rZXkoImFzbS1taXBzIikKICAgICAgICAgfQogCiAgICAgICAgIGZvciBzYyBpbiBzZWxmLnN5c2NhbGxzOgpAQCAtNDU0LDYgKzQ5Nyw3IEBACiAgICAgICAgIGZwLmNsb3NlKCkKICAgICAgICAgc2VsZi5vdGhlcl9maWxlcy5hcHBlbmQoIHBhdGggKQogCisKICAgICAjIG5vdyBnZW5lcmF0ZSBlYWNoIHN5c2NhbGwgc3R1YgogICAgIGRlZiBnZW5fc3lzY2FsbF9zdHVicyhzZWxmKToKICAgICAgICAgZm9yIHNjIGluIHNlbGYuc3lzY2FsbHM6CkBAIC00ODEsNiArNTI1LDEzIEBACiAgICAgICAgICAgICAgICAgZnAuY2xvc2UoKQogICAgICAgICAgICAgICAgIHNlbGYubmV3X3N0dWJzLmFwcGVuZCggZm5hbWUgKQogCisgICAgICAgICAgICBpZiBzYy5oYXNfa2V5KCJhc20tbWlwcyIpIGFuZCAnbWlwcycgaW4gYWxsX2FyY2hzOgorICAgICAgICAgICAgICAgIGZuYW1lID0gImFyY2gtbWlwcy9zeXNjYWxscy8lcy5TIiAlIHNjWyJmdW5jIl0KKyAgICAgICAgICAgICAgICBEMiggIj4+PiBnZW5lcmF0aW5nICIrZm5hbWUgKQorICAgICAgICAgICAgICAgIGZwID0gY3JlYXRlX2ZpbGUoIGZuYW1lICkKKyAgICAgICAgICAgICAgICBmcC53cml0ZShzY1siYXNtLW1pcHMiXSkKKyAgICAgICAgICAgICAgICBmcC5jbG9zZSgpCisgICAgICAgICAgICAgICAgc2VsZi5uZXdfc3R1YnMuYXBwZW5kKCBmbmFtZSApCiAKICAgICBkZWYgIHJlZ2VuZXJhdGUoc2VsZik6CiAgICAgICAgIEQoICJzY2FubmluZyBmb3IgZXhpc3RpbmcgYXJjaGl0ZWN0dXJlLXNwZWNpZmljIHN0dWIgZmlsZXMiICkKQEAgLTQ5OCw3ICs1NDksNyBAQAogCiAgICAgICAgIGlmIG5vdCBvcy5wYXRoLmV4aXN0cyggYmlvbmljX3RlbXAgKToKICAgICAgICAgICAgIEQoICJjcmVhdGluZyAlcyIgJSBiaW9uaWNfdGVtcCApCi0gICAgICAgICAgICBvcy5ta2RpciggYmlvbmljX3RlbXAgKQorICAgICAgICAgICAgbWFrZV9kaXIoIGJpb25pY190ZW1wICkKIAogIyAgICAgICAgRCggInA0IGVkaXRpbmcgc291cmNlIGZpbGVzIiApCiAjICAgICAgICBmb3IgYXJjaCBpbiBhbGxfYXJjaHM6CmRpZmYgLS1naXQgYS9saWJkbC9saWJkbC5jIGIvbGliZGwvbGliZGwuYwppbmRleCA4NzJjMGM5Li4xZDUxYzM3IDEwMDY0NAotLS0gYS9saWJkbC9saWJkbC5jCisrKyBiL2xpYmRsL2xpYmRsLmMKQEAgLTI2LDExICsyNiwxMSBAQAogCiAjaWZkZWYgX19hcm1fXwogdm9pZCAqZGxfdW53aW5kX2ZpbmRfZXhpZHgodm9pZCAqcGMsIGludCAqcGNvdW50KSB7IHJldHVybiAwOyB9Ci0jZWxpZiBkZWZpbmVkKF9faTM4Nl9fKSB8fCBkZWZpbmVkKF9fc2hfXykKKyNlbGlmIGRlZmluZWQoX19pMzg2X18pIHx8IGRlZmluZWQoX19zaF9fKSB8fCBkZWZpbmVkKF9fbWlwc19fKQogLyogd2UgbXVuZ2UgdGhlIGNiIGRlZmluaXRpb24gc28gd2UgZG9uJ3QgaGF2ZSB0byBpbmNsdWRlIGFueSBoZWFkZXJzIGhlcmUuCiAgKiBJdCB3b24ndCBhZmZlY3QgYW55dGhpbmcgc2luY2UgdGhlc2UgYXJlIGp1c3Qgc3ltYm9scyBhbnl3YXkgKi8KIGludCBkbF9pdGVyYXRlX3BoZHIoaW50ICgqY2IpKHZvaWQgKmluZm8sIHZvaWQgKnNpemUsIHZvaWQgKmRhdGEpLAogICAgICAgICAgICAgICAgICAgICB2b2lkICpkYXRhKSB7IHJldHVybiAwOyB9CiAjZWxzZQotI2Vycm9yIFVuc3VwcG9ydGVkIGFyY2hpdGVjdHVyZS4gT25seSBhcm0gYW5kIHg4NiBhcmUgc3VwcG9ydGVkLgorI2Vycm9yIFVuc3VwcG9ydGVkIGFyY2hpdGVjdHVyZS4gT25seSBtaXBzLCBhcm0gYW5kIHg4NiBhcmUgc3VwcG9ydGVkLgogI2VuZGlmCmRpZmYgLS1naXQgYS9saWJtL0FuZHJvaWQubWsgYi9saWJtL0FuZHJvaWQubWsKaW5kZXggNTdlNGQ0Yy4uMDdjYjdkYiAxMDA2NDQKLS0tIGEvbGlibS9BbmRyb2lkLm1rCisrKyBiL2xpYm0vQW5kcm9pZC5tawpAQCAtMTUyLDYgKzE1Miw3IEBACiAJc3JjL3NfaXNuYW4uYyBcCiAJc3JjL3NfbW9kZi5jCiAKK2xpYm1fY29tbW9uX2NmbGFncyA6PQogCiBpZmVxICgkKFRBUkdFVF9BUkNIKSxhcm0pCiAgIGxpYm1fY29tbW9uX3NyY19maWxlcyArPSBcCkBAIC0xNjIsMjEgKzE2MywyOSBAQAogCXNyYy9zX3NjYWxibmYuYwogCiAgIGxpYm1fY29tbW9uX2luY2x1ZGVzID0gJChMT0NBTF9QQVRIKS9hcm0KK2VuZGlmCiAKLWVsc2UKLSAgaWZlcSAoJChUQVJHRVRfT1MpLSQoVEFSR0VUX0FSQ0gpLGxpbnV4LXg4NikKLSAgICBsaWJtX2NvbW1vbl9zcmNfZmlsZXMgKz0gXAoraWZlcSAoJChUQVJHRVRfT1MpLSQoVEFSR0VUX0FSQ0gpLGxpbnV4LXg4NikKKyAgbGlibV9jb21tb25fc3JjX2ZpbGVzICs9IFwKIAlpMzg3L2ZlbnYuYyBcCiAJaTM4Ny9zX3NjYWxibmwuUyBcCiAJaTM4Ny9zX3NjYWxibi5TIFwKIAlpMzg3L3Nfc2NhbGJuZi5TCiAKLSAgICBsaWJtX2NvbW1vbl9pbmNsdWRlcyA9ICQoTE9DQUxfUEFUSCkvaTM4NiAkKExPQ0FMX1BBVEgpL2kzODcKLSAgZWxzZQotICAgICQoZXJyb3IgIlVua25vd24gYXJjaGl0ZWN0dXJlIikKLSAgZW5kaWYKKyAgbGlibV9jb21tb25faW5jbHVkZXMgPSAkKExPQ0FMX1BBVEgpL2kzODYgJChMT0NBTF9QQVRIKS9pMzg3CiBlbmRpZgoraWZlcSAoJChUQVJHRVRfQVJDSCksbWlwcykKKyAgbGlibV9jb21tb25fc3JjX2ZpbGVzICs9IFwKKwltaXBzL2ZlbnYuYyBcCisJc3JjL2VfbGRleHBmLmMgXAorCXNyYy9zX3NjYWxibG4uYyBcCisJc3JjL3Nfc2NhbGJuLmMgXAorCXNyYy9zX3NjYWxibmYuYwogCisgIGxpYm1fY29tbW9uX2luY2x1ZGVzID0gJChMT0NBTF9QQVRIKS9taXBzCisgICMgTmVlZCB0byBidWlsZCAqcmludCogZnVuY3Rpb25zCisgIGxpYm1fY29tbW9uX2NmbGFncyArPSAtZm5vLWJ1aWx0aW4tcmludGYgLWZuby1idWlsdGluLXJpbnQKK2VuZGlmCiAKICMgbGlibS5hCiAjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkBAIC0xODgsNiArMTk3LDcgQEAKIAogTE9DQUxfQVJNX01PREUgOj0gYXJtCiBMT0NBTF9DX0lOQ0xVREVTICs9ICQobGlibV9jb21tb25faW5jbHVkZXMpCitMT0NBTF9DRkxBR1MgOj0gJChsaWJtX2NvbW1vbl9jZmxhZ3MpCiAKIExPQ0FMX01PRFVMRTo9IGxpYm0KIApAQCAtMjA2LDYgKzIxNiw3IEBACiBMT0NBTF9BUk1fTU9ERSA6PSBhcm0KIAogTE9DQUxfQ19JTkNMVURFUyArPSAkKGxpYm1fY29tbW9uX2luY2x1ZGVzKQorTE9DQUxfQ0ZMQUdTIDo9ICQobGlibV9jb21tb25fY2ZsYWdzKQogCiBMT0NBTF9NT0RVTEU6PSBsaWJtCiAKZGlmZiAtLWdpdCBhL2xpYm0vbWlwcy9NYWtlZmlsZS5pbmMgYi9saWJtL21pcHMvTWFrZWZpbGUuaW5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjliYmZhYTEKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL21pcHMvTWFrZWZpbGUuaW5jCkBAIC0wLDAgKzEsMyBAQAorIyAkRnJlZUJTRDogc3JjL2xpYi9tc3VuL21pcHMvTWFrZWZpbGUuaW5jLHYgMS4xIDIwMDgvMDQvMjYgMTI6MjA6MjkgaW1wIEV4cCAkCisKK0xEQkxfUFJFQyA9IDUzCmRpZmYgLS1naXQgYS9saWJtL21pcHMvX2ZwbWF0aC5oIGIvbGlibS9taXBzL19mcG1hdGguaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jYjZlOGMwCi0tLSAvZGV2L251bGwKKysrIGIvbGlibS9taXBzL19mcG1hdGguaApAQCAtMCwwICsxLDU2IEBACisvKi0KKyAqIENvcHlyaWdodCAoYykgMjAwMiwgMjAwMyBEYXZpZCBTY2h1bHR6IDxkYXNARnJlZUJTRC5PUkc+CisgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIEFVVEhPUiBBTkQgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJyBBTkQKKyAqIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UKKyAqIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFCisgKiBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTAorICogREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMKKyAqIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKQorICogSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QKKyAqIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkKKyAqIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YKKyAqIFNVQ0ggREFNQUdFLgorICoKKyAqICRGcmVlQlNEOiBzcmMvbGliL2xpYmMvbWlwcy9fZnBtYXRoLmgsdiAxLjEgMjAwOC8wNC8yNiAxMjowNzo1OSBpbXAgRXhwICQKKyAqLworCit1bmlvbiBJRUVFbDJiaXRzIHsKKwlsb25nIGRvdWJsZQllOworCXN0cnVjdCB7CisjaWZuZGVmIF9fTUlQU0VCX18KKwkJdW5zaWduZWQgaW50CW1hbmwJOjMyOworCQl1bnNpZ25lZCBpbnQJbWFuaAk6MjA7CisJCXVuc2lnbmVkIGludAlleHAJOjExOworCQl1bnNpZ25lZCBpbnQJc2lnbgk6MTsKKyNlbHNlCisJCXVuc2lnbmVkIGludAkJc2lnbgk6MTsKKwkJdW5zaWduZWQgaW50CQlleHAJOjExOworCQl1bnNpZ25lZCBpbnQJCW1hbmgJOjIwOworCQl1bnNpZ25lZCBpbnQJCW1hbmwJOjMyOworI2VuZGlmCisJfSBiaXRzOworfTsKKworI2RlZmluZQlMREJMX05CSVQJMAorI2RlZmluZQltYXNrX25iaXRfbCh1KQkoKHZvaWQpMCkKKyNkZWZpbmUJTERCTF9JTVBMSUNJVF9OQklUCisKKyNkZWZpbmUJTERCTF9NQU5IX1NJWkUJMjAKKyNkZWZpbmUJTERCTF9NQU5MX1NJWkUJMzIKKworI2RlZmluZQlMREJMX1RPX0FSUkFZMzIodSwgYSkgZG8gewkJCVwKKwkoYSlbMF0gPSAodWludDMyX3QpKHUpLmJpdHMubWFubDsJCVwKKwkoYSlbMV0gPSAodWludDMyX3QpKHUpLmJpdHMubWFuaDsJCVwKK30gd2hpbGUoMCkKZGlmZiAtLWdpdCBhL2xpYm0vbWlwcy9mZW52LmMgYi9saWJtL21pcHMvZmVudi5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmI1ZjUyZGEKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL21pcHMvZmVudi5jCkBAIC0wLDAgKzEsMzUgQEAKKy8qLQorICogQ29weXJpZ2h0IChjKSAyMDA0IERhdmlkIFNjaHVsdHogPGRhc0BGcmVlQlNELk9SRz4KKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAorICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKKyAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUworICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAorICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQorICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKgorICogJEZyZWVCU0Q6IHNyYy9saWIvbXN1bi9taXBzL2ZlbnYuYyx2IDEuMSAyMDA4LzA0LzI2IDEyOjIwOjI5IGltcCBFeHAgJAorICovCisKKyNpbmNsdWRlIDxmZW52Lmg+CisKKy8qCisgKiBIb3BlZnVsbHkgdGhlIHN5c3RlbSBJRCBieXRlIGlzIGltbXV0YWJsZSwgc28gaXQncyB2YWxpZCB0byB1c2UKKyAqIHRoaXMgYXMgYSBkZWZhdWx0IGVudmlyb25tZW50LgorICovCitjb25zdCBmZW52X3QgX19mZV9kZmxfZW52ID0gMDsKZGlmZiAtLWdpdCBhL2xpYm0vbWlwcy9mZW52LmggYi9saWJtL21pcHMvZmVudi5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjA2MWE2OTYKLS0tIC9kZXYvbnVsbAorKysgYi9saWJtL21pcHMvZmVudi5oCkBAIC0wLDAgKzEsMjE4IEBACisvKi0KKyAqIENvcHlyaWdodCAoYykgMjAwNC0yMDA1IERhdmlkIFNjaHVsdHogPGRhc0BGcmVlQlNELk9SRz4KKyAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQVVUSE9SIEFORCBDT05UUklCVVRPUlMgYGBBUyBJUycnIEFORAorICogQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRQorICogQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUKKyAqIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMCisgKiBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUworICogT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pCisgKiBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVAorICogTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWQorICogT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRgorICogU1VDSCBEQU1BR0UuCisgKgorICogJEZyZWVCU0Q6IHNyYy9saWIvbXN1bi9taXBzL2ZlbnYuaCx2IDEuMSAyMDA4LzA0LzI2IDEyOjIwOjI5IGltcCBFeHAgJAorICovCisKKyNpZm5kZWYJX0ZFTlZfSF8KKyNkZWZpbmUJX0ZFTlZfSF8KKworI2luY2x1ZGUgPHN5cy9fdHlwZXMuaD4KKwordHlwZWRlZglfX3VpbnQzMl90CWZlbnZfdDsKK3R5cGVkZWYJX191aW50MzJfdAlmZXhjZXB0X3Q7CisKKy8qIEV4Y2VwdGlvbiBmbGFncyAqLworI2RlZmluZQlGRV9JTlZBTElECTB4MDAwMQorI2RlZmluZQlGRV9ESVZCWVpFUk8JMHgwMDAyCisjZGVmaW5lCUZFX09WRVJGTE9XCTB4MDAwNAorI2RlZmluZQlGRV9VTkRFUkZMT1cJMHgwMDA4CisjZGVmaW5lCUZFX0lORVhBQ1QJMHgwMDEwCisjZGVmaW5lCUZFX0FMTF9FWENFUFQJKEZFX0RJVkJZWkVSTyB8IEZFX0lORVhBQ1QgfCBcCisJCQkgRkVfSU5WQUxJRCB8IEZFX09WRVJGTE9XIHwgRkVfVU5ERVJGTE9XKQorCisvKiBSb3VuZGluZyBtb2RlcyAqLworI2RlZmluZQlGRV9UT05FQVJFU1QJMHgwMDAwCisjZGVmaW5lCUZFX1RPV0FSRFpFUk8JMHgwMDAxCisjZGVmaW5lCUZFX1VQV0FSRAkweDAwMDIKKyNkZWZpbmUJRkVfRE9XTldBUkQJMHgwMDAzCisjZGVmaW5lCV9ST1VORF9NQVNLCShGRV9UT05FQVJFU1QgfCBGRV9ET1dOV0FSRCB8IFwKKwkJCSBGRV9VUFdBUkQgfCBGRV9UT1dBUkRaRVJPKQorLyogX19CRUdJTl9ERUNMUyAqLworCisvKiBEZWZhdWx0IGZsb2F0aW5nLXBvaW50IGVudmlyb25tZW50ICovCitleHRlcm4gY29uc3QgZmVudl90CV9fZmVfZGZsX2VudjsKKyNkZWZpbmUJRkVfREZMX0VOVgkoJl9fZmVfZGZsX2VudikKKworLyogV2UgbmVlZCB0byBiZSBhYmxlIHRvIG1hcCBzdGF0dXMgZmxhZyBwb3NpdGlvbnMgdG8gbWFzayBmbGFnIHBvc2l0aW9ucyAqLworI2RlZmluZSBfRlBVU1dfU0hJRlQJMTYKKyNkZWZpbmUJX0VOQUJMRV9NQVNLCShGRV9BTExfRVhDRVBUIDw8IF9GUFVTV19TSElGVCkKKworI2lmZGVmCUFSTV9IQVJEX0ZMT0FUCisjZGVmaW5lCV9fcmZzKF9fZnBzcikJX19hc20gX192b2xhdGlsZSgicmZzICUwIiA6ICI9ciIgKCooX19mcHNyKSkpCisjZGVmaW5lCV9fd2ZzKF9fZnBzcikJX19hc20gX192b2xhdGlsZSgid2ZzICUwIiA6IDogInIiIChfX2Zwc3IpKQorI2Vsc2UKKyNkZWZpbmUgX19yZnMoX19mcHNyKQorI2RlZmluZSBfX3dmcyhfX2Zwc3IpCisjZW5kaWYKKworc3RhdGljIF9faW5saW5lIGludAorZmVjbGVhcmV4Y2VwdChpbnQgX19leGNlcHRzKQoreworCWZleGNlcHRfdCBfX2Zwc3I7CisKKwlfX3JmcygmX19mcHNyKTsKKwlfX2Zwc3IgJj0gfl9fZXhjZXB0czsKKwlfX3dmcyhfX2Zwc3IpOworCXJldHVybiAoMCk7Cit9CisKK3N0YXRpYyBfX2lubGluZSBpbnQKK2ZlZ2V0ZXhjZXB0ZmxhZyhmZXhjZXB0X3QgKl9fZmxhZ3AsIGludCBfX2V4Y2VwdHMpCit7CisJZmV4Y2VwdF90IF9fZnBzcjsKKworCV9fcmZzKCZfX2Zwc3IpOworCSpfX2ZsYWdwID0gX19mcHNyICYgX19leGNlcHRzOworCXJldHVybiAoMCk7Cit9CisKK3N0YXRpYyBfX2lubGluZSBpbnQKK2Zlc2V0ZXhjZXB0ZmxhZyhjb25zdCBmZXhjZXB0X3QgKl9fZmxhZ3AsIGludCBfX2V4Y2VwdHMpCit7CisJZmV4Y2VwdF90IF9fZnBzcjsKKworCV9fcmZzKCZfX2Zwc3IpOworCV9fZnBzciAmPSB+X19leGNlcHRzOworCV9fZnBzciB8PSAqX19mbGFncCAmIF9fZXhjZXB0czsKKwlfX3dmcyhfX2Zwc3IpOworCXJldHVybiAoMCk7Cit9CisKK3N0YXRpYyBfX2lubGluZSBpbnQKK2ZlcmFpc2VleGNlcHQoaW50IF9fZXhjZXB0cykKK3sKKwlmZXhjZXB0X3QgX19leCA9IF9fZXhjZXB0czsKKworCWZlc2V0ZXhjZXB0ZmxhZygmX19leCwgX19leGNlcHRzKTsJLyogWFhYICovCisJcmV0dXJuICgwKTsKK30KKworc3RhdGljIF9faW5saW5lIGludAorZmV0ZXN0ZXhjZXB0KGludCBfX2V4Y2VwdHMpCit7CisJZmV4Y2VwdF90IF9fZnBzcjsKKworCV9fcmZzKCZfX2Zwc3IpOworCXJldHVybiAoX19mcHNyICYgX19leGNlcHRzKTsKK30KKworc3RhdGljIF9faW5saW5lIGludAorZmVnZXRyb3VuZCh2b2lkKQoreworCisJLyoKKwkgKiBBcHBhcmVudGx5LCB0aGUgcm91bmRpbmcgbW9kZSBpcyBzcGVjaWZpZWQgYXMgcGFydCBvZiB0aGUKKwkgKiBpbnN0cnVjdGlvbiBmb3JtYXQgb24gQVJNLCBzbyB0aGUgZHluYW1pYyByb3VuZGluZyBtb2RlIGlzCisJICogaW5kZXRlcm1pbmF0ZS4gIFNvbWUgRlBVcyBtYXkgZGlmZmVyLgorCSAqLworCXJldHVybiAoLTEpOworfQorCitzdGF0aWMgX19pbmxpbmUgaW50CitmZXNldHJvdW5kKGludCBfX3JvdW5kKQoreworCisJcmV0dXJuICgtMSk7Cit9CisKK3N0YXRpYyBfX2lubGluZSBpbnQKK2ZlZ2V0ZW52KGZlbnZfdCAqX19lbnZwKQoreworCisJX19yZnMoX19lbnZwKTsKKwlyZXR1cm4gKDApOworfQorCitzdGF0aWMgX19pbmxpbmUgaW50CitmZWhvbGRleGNlcHQoZmVudl90ICpfX2VudnApCit7CisJZmVudl90IF9fZW52OworCisJX19yZnMoJl9fZW52KTsKKwkqX19lbnZwID0gX19lbnY7CisJX19lbnYgJj0gfihGRV9BTExfRVhDRVBUIHwgX0VOQUJMRV9NQVNLKTsKKwlfX3dmcyhfX2Vudik7CisJcmV0dXJuICgwKTsKK30KKworc3RhdGljIF9faW5saW5lIGludAorZmVzZXRlbnYoY29uc3QgZmVudl90ICpfX2VudnApCit7CisKKwlfX3dmcygqX19lbnZwKTsKKwlyZXR1cm4gKDApOworfQorCitzdGF0aWMgX19pbmxpbmUgaW50CitmZXVwZGF0ZWVudihjb25zdCBmZW52X3QgKl9fZW52cCkKK3sKKwlmZXhjZXB0X3QgX19mcHNyOworCisJX19yZnMoJl9fZnBzcik7CisJX193ZnMoKl9fZW52cCk7CisJZmVyYWlzZWV4Y2VwdChfX2Zwc3IgJiBGRV9BTExfRVhDRVBUKTsKKwlyZXR1cm4gKDApOworfQorCisjaWYgX19CU0RfVklTSUJMRQorCitzdGF0aWMgX19pbmxpbmUgaW50CitmZWVuYWJsZWV4Y2VwdChpbnQgX19tYXNrKQoreworCWZlbnZfdCBfX29sZF9mcHNyLCBfX25ld19mcHNyOworCisJX19yZnMoJl9fb2xkX2Zwc3IpOworCV9fbmV3X2Zwc3IgPSBfX29sZF9mcHNyIHwgKF9fbWFzayAmIEZFX0FMTF9FWENFUFQpIDw8IF9GUFVTV19TSElGVDsKKwlfX3dmcyhfX25ld19mcHNyKTsKKwlyZXR1cm4gKChfX29sZF9mcHNyID4+IF9GUFVTV19TSElGVCkgJiBGRV9BTExfRVhDRVBUKTsKK30KKworc3RhdGljIF9faW5saW5lIGludAorZmVkaXNhYmxlZXhjZXB0KGludCBfX21hc2spCit7CisJZmVudl90IF9fb2xkX2Zwc3IsIF9fbmV3X2Zwc3I7CisKKwlfX3JmcygmX19vbGRfZnBzcik7CisJX19uZXdfZnBzciA9IF9fb2xkX2Zwc3IgJiB+KChfX21hc2sgJiBGRV9BTExfRVhDRVBUKSA8PCBfRlBVU1dfU0hJRlQpOworCV9fd2ZzKF9fbmV3X2Zwc3IpOworCXJldHVybiAoKF9fb2xkX2Zwc3IgPj4gX0ZQVVNXX1NISUZUKSAmIEZFX0FMTF9FWENFUFQpOworfQorCitzdGF0aWMgX19pbmxpbmUgaW50CitmZWdldGV4Y2VwdCh2b2lkKQoreworCWZlbnZfdCBfX2Zwc3I7CisKKwlfX3JmcygmX19mcHNyKTsKKwlyZXR1cm4gKChfX2Zwc3IgJiBfRU5BQkxFX01BU0spID4+IF9GUFVTV19TSElGVCk7Cit9CisKKyNlbmRpZiAvKiBfX0JTRF9WSVNJQkxFICovCisKKy8qIF9fRU5EX0RFQ0xTICovCisKKyNlbmRpZgkvKiAhX0ZFTlZfSF8gKi8KKwpkaWZmIC0tZ2l0IGEvbGlibS9zcmMvc19mYWJzbC5jIGIvbGlibS9zcmMvc19mYWJzbC5jCmluZGV4IDIwMGE5YTUuLjI5ODMxZDIgMTAwNjQ0Ci0tLSBhL2xpYm0vc3JjL3NfZmFic2wuYworKysgYi9saWJtL3NyYy9zX2ZhYnNsLmMKQEAgLTEsNSArMSw1IEBACiAvKi0KLSAqIENvcHlyaWdodCAoYykgMjAwMyBEYWctRXJsaW5nIENv72RhbiBTbfhyZ3JhdgorICogQ29weXJpZ2h0IChjKSAyMDAzIERhZy1FcmxpbmcgU23DuHJncmF2CiAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dApAQCAtMjUsNyArMjUsNyBAQAogICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GCiAgKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICoKLSAqICRGcmVlQlNEOiBzcmMvbGliL21zdW4vc3JjL3NfZmFic2wuYyx2IDEuMiAyMDAzLzEwLzI1IDE5OjUzOjI4IGRlcyBFeHAgJAorICogJEZyZWVCU0QkCiAgKi8KIAogI2luY2x1ZGUgPG1hdGguaD4KZGlmZiAtLWdpdCBhL2xpYnRocmVhZF9kYi9saWJ0aHJlYWRfZGIuYyBiL2xpYnRocmVhZF9kYi9saWJ0aHJlYWRfZGIuYwppbmRleCA4NmUxY2Y0Li5lNzQ5Mzc3IDEwMDY0NAotLS0gYS9saWJ0aHJlYWRfZGIvbGlidGhyZWFkX2RiLmMKKysrIGIvbGlidGhyZWFkX2RiL2xpYnRocmVhZF9kYi5jCkBAIC05OSw3ICs5OSw3IEBACiAgICAgICAgIGdFdmVudE1zZ0hhbmRsZS50aWQgPSBnRXZlbnRNc2dIYW5kbGUucGlkOwogICAgICAgICByZXR1cm4gMHg0MjsKICAgICB9Ci0jZWxzZQorI2VsaWYgZGVmaW5lZChfX2FybV9fKQogICAgIHBjID0gKHZvaWQgKilwdHJhY2UoUFRSQUNFX1BFRUtVU1IsIGhhbmRsZS0+dGlkLCAodm9pZCAqKTYwIC8qIHIxNS9wYyAqLywgTlVMTCk7CiAKICAgICBpZiAocGMgPT0gYmtwdF9hZGRyKSB7CkBAIC0xMDksNiArMTA5LDE1IEBACiAgICAgICAgIGdFdmVudE1zZ0hhbmRsZS50aWQgPSBnRXZlbnRNc2dIYW5kbGUucGlkOwogICAgICAgICByZXR1cm4gMHg0MjsKICAgICB9CisjZWxpZiBkZWZpbmVkKF9fbWlwc19fKQorICAgIHBjID0gKHZvaWQgKilwdHJhY2UoUFRSQUNFX1BFRUtVU1IsIGhhbmRsZS0+dGlkLCAodm9pZCAqKSg2NCo0KSAvKiBwYyAqLywgTlVMTCk7CisgICAgaWYgKHBjID09IGJrcHRfYWRkcikgeworICAgICAgICAvLyBUaGUgaG9vayBmdW5jdGlvbiB0YWtlcyB0aGUgaWQgb2YgdGhlIG5ldyB0aHJlYWQgYXMgaXQncyBmaXJzdCBwYXJhbSwKKyAgICAgICAgLy8gc28gZ3JhYiBpdCBmcm9tIGEwCisgICAgICAgIGdFdmVudE1zZ0hhbmRsZS5waWQgPSBwdHJhY2UoUFRSQUNFX1BFRUtVU1IsIGhhbmRsZS0+dGlkLCAodm9pZCAqKSg0KjQpIC8qIGEwICovLCBOVUxMKTsKKyAgICAgICAgZ0V2ZW50TXNnSGFuZGxlLnRpZCA9IGdFdmVudE1zZ0hhbmRsZS5waWQ7CisgICAgICAgIHJldHVybiAweDQyOworICAgIH0KICNlbmRpZgogICAgIHJldHVybiAwOwogfQo=