From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 From: Jakub Jelinek To: git-commits@fedoraproject.org Subject: [rpms/gcc] rhel-f41-base: 4.8.1-2 Date: Mon, 29 Jun 2026 12:25:54 GMT Message-ID: <178273595457.1.695183536630173010.rpms-gcc-0e0fc2804a0a@fedoraproject.org> List-ID: X-Git-Repo: rpms/gcc X-Git-Branch: rhel-f41-base X-Git-Rev: 0e0fc2804a0a11dbad8cd404b17c1fe573e03410 QSBuZXcgY29tbWl0IGhhcyBiZWVuIHB1c2hlZC4KClJlcG8gICA6IHJwbXMvZ2NjCkJyYW5jaCA6 IHJoZWwtZjQxLWJhc2UKQ29tbWl0IDogMGUwZmMyODA0YTBhMTFkYmFkOGNkNDA0YjE3YzFmZTU3 M2UwMzQxMApBdXRob3IgOiBKYWt1YiBKZWxpbmVrIDxqYWt1YkByZWRoYXQuY29tPgpEYXRlICAg OiAyMDEzLTA2LTEyVDEwOjU5OjA3KzAyOjAwClN0YXRzICA6ICs2MjUvLTQgaW4gNSBmaWxlKHMp ClVSTCAgICA6IGh0dHBzOi8vc3JjLmZlZG9yYXByb2plY3Qub3JnL3JwbXMvZ2NjL2MvMGUwZmMy ODA0YTBhMTFkYmFkOGNkNDA0YjE3YzFmZTU3M2UwMzQxMD9icmFuY2g9cmhlbC1mNDEtYmFzZQoK TG9nOgo0LjguMS0yCgotLS0KZGlmZiAtLWdpdCBhLy5naXRpZ25vcmUgYi8uZ2l0aWdub3JlCmlu ZGV4IGNjZGQ5ODguLjVkOTE3NDIgMTAwNjQ0Ci0tLSBhLy5naXRpZ25vcmUKKysrIGIvLmdpdGln bm9yZQpAQCAtNzYsMyArNzYsNCBAQAogL2djYy00LjguMC0yMDEzMDUyNC50YXIuYnoyCiAvZ2Nj LTQuOC4wLTIwMTMwNTI2LnRhci5iejIKIC9nY2MtNC44LjEtMjAxMzA2MDMudGFyLmJ6MgorL2dj Yy00LjguMS0yMDEzMDYxMi50YXIuYnoyCgpkaWZmIC0tZ2l0IGEvZ2NjLnNwZWMgYi9nY2Muc3Bl YwppbmRleCAwM2I0ZWJjLi40NmMwYjY0IDEwMDY0NAotLS0gYS9nY2Muc3BlYworKysgYi9nY2Mu c3BlYwpAQCAtMSw5ICsxLDkgQEAKLSVnbG9iYWwgREFURSAyMDEzMDYwMwotJWdsb2JhbCBTVk5S RVYgMTk5NjE0CislZ2xvYmFsIERBVEUgMjAxMzA2MTIKKyVnbG9iYWwgU1ZOUkVWIDE5OTk4Nwog JWdsb2JhbCBnY2NfdmVyc2lvbiA0LjguMQogIyBOb3RlLCBnY2NfcmVsZWFzZSBtdXN0IGJlIGlu dGVnZXIsIGlmIHlvdSB3YW50IHRvIGFkZCBzdWZmaXhlcyB0bwogIyAle3JlbGVhc2V9LCBhcHBl bmQgdGhlbSBhZnRlciAle2djY19yZWxlYXNlfSBvbiBSZWxlYXNlOiBsaW5lLgotJWdsb2JhbCBn Y2NfcmVsZWFzZSAxCislZ2xvYmFsIGdjY19yZWxlYXNlIDIKICVnbG9iYWwgX3VucGFja2FnZWRf ZmlsZXNfdGVybWluYXRlX2J1aWxkIDAKICVnbG9iYWwgbXVsdGlsaWJfNjRfYXJjaHMgc3BhcmM2 NCBwcGM2NCBzMzkweCB4ODZfNjQKICVpZmFyY2ggJXtpeDg2fSB4ODZfNjQgaWE2NCBwcGMgcHBj NjQgYWxwaGEKQEAgLTE5Myw2ICsxOTMsOCBAQCBQYXRjaDk6IGdjYzQ4LWNsb29nLWRsMi5wYXRj aAogUGF0Y2gxMDogZ2NjNDgtcHIzODc1Ny5wYXRjaAogUGF0Y2gxMTogZ2NjNDgtbGlic3RkYysr LWRvY3MucGF0Y2gKIFBhdGNoMTI6IGdjYzQ4LW5vLWFkZC1uZWVkZWQucGF0Y2gKK1BhdGNoMTM6 IGdjYzQ4LXByNTY1NjQucGF0Y2gKK1BhdGNoMTQ6IGdjYzQ4LXByNTc1MzcucGF0Y2gKIAogUGF0 Y2gxMDAwOiBmYXN0amFyLTAuOTctc2VnZmF1bHQucGF0Y2gKIFBhdGNoMTAwMTogZmFzdGphci0w Ljk3LWxlbjEucGF0Y2gKQEAgLTc0Niw2ICs3NDgsOCBAQCBwYWNrYWdlIG9yIHdoZW4gZGVidWdn aW5nIHRoaXMgcGFja2FnZS4KICVwYXRjaDExIC1wMCAtYiAubGlic3RkYysrLWRvY3N+CiAlZW5k aWYKICVwYXRjaDEyIC1wMCAtYiAubm8tYWRkLW5lZWRlZH4KKyVwYXRjaDEzIC1wMCAtYiAucHI1 NjU2NH4KKyVwYXRjaDE0IC1wMCAtYiAucHI1NzUzN34KIAogJWlmIDAlez9fZW5hYmxlX2RlYnVn X3BhY2thZ2VzfQogY2F0ID4gc3BsaXQtZGVidWdpbmZvLnNoIDw8XEVPRgpAQCAtMjk3OSw2ICsy OTgzLDEzIEBAIGZpCiAle19wcmVmaXh9L2xpYmV4ZWMvZ2NjLyV7Z2NjX3RhcmdldF9wbGF0Zm9y bX0vJXtnY2NfdmVyc2lvbn0vcGx1Z2luCiAKICVjaGFuZ2Vsb2cKKyogV2VkIEp1biAxMiAyMDEz IEpha3ViIEplbGluZWsgPGpha3ViQHJlZGhhdC5jb20+IDQuOC4xLTIKKy0gdXBkYXRlIGZyb20g dGhlIDQuOCBicmFuY2gKKyAgLSBQUnMgZm9ydHJhbi81NzM2NCwgZm9ydHJhbi81NzUwOCwgdGFy Z2V0LzU2NTQ3LCB0YXJnZXQvNTczNzksIHRhcmdldC81NzU2OAorLSBiYWNrcG9ydCBiYWNrd2Fy ZHMgY29tcGF0aWJsZSBhbGlnbm1lbnQgQUJJIGZpeGVzICgjOTQ3MTk3LCBQUiB0YXJnZXQvNTY1 NjQpCistIGZpeCB1cCB3aWRlbmluZyBtdWx0aXBsaWNhdGlvbiB2ZWN0b3JpemF0aW9uIG9uIGJp Zy1lbmRpYW4KKyAgKFBSIHRyZWUtb3B0aW1pemF0aW9uLzU3NTM3KQorCiAqIE1vbiBKdW4gIDMg MjAxMyBKYWt1YiBKZWxpbmVrIDxqYWt1YkByZWRoYXQuY29tPiA0LjguMS0xCiAtIHVwZGF0ZSBm cm9tIHRoZSA0LjggYnJhbmNoCiAgIC0gR0NDIDQuOC4xIHJlbGVhc2UKCmRpZmYgLS1naXQgYS9n Y2M0OC1wcjU2NTY0LnBhdGNoIGIvZ2NjNDgtcHI1NjU2NC5wYXRjaApuZXcgZmlsZSBtb2RlIDEw MDY0NAppbmRleCAwMDAwMDAwLi5iYjk2NGM4Ci0tLSAvZGV2L251bGwKKysrIGIvZ2NjNDgtcHI1 NjU2NC5wYXRjaApAQCAtMCwwICsxLDU4OSBAQAorMjAxMy0wNi0xMCAgSmFrdWIgSmVsaW5layAg PGpha3ViQHJlZGhhdC5jb20+CisKKwlQUiB0YXJnZXQvNTY1NjQKKwkqIHZhcmFzbS5jIChhbGln bl92YXJpYWJsZSk6IERvbid0IHVzZSBEQVRBX0FMSUdOTUVOVCBvcgorCUNPTlNUQU5UX0FMSUdO TUVOVCBpZiAhZGVjbF9iaW5kc190b19jdXJyZW50X2RlZl9wIChkZWNsKS4KKwlVc2UgREFUQV9B QklfQUxJR05NRU5UIGZvciB0aGF0IGNhc2UgaW5zdGVhZCBpZiBkZWZpbmVkLgorCShnZXRfdmFy aWFibGVfYWxpZ24pOiBOZXcgZnVuY3Rpb24uCisJKGdldF92YXJpYWJsZV9zZWN0aW9uLCBlbWl0 X2JzcywgZW1pdF9jb21tb24sCisJYXNzZW1ibGVfdmFyaWFibGVfY29udGVudHMsIHBsYWNlX2Js b2NrX3N5bWJvbCk6IFVzZQorCWdldF92YXJpYWJsZV9hbGlnbiBpbnN0ZWFkIG9mIERFQ0xfQUxJ R04uCisJKGFzc2VtYmxlX25vc3dpdGNoX3ZhcmlhYmxlKTogQWRkIGFsaWduIGFyZ3VtZW50LCB1 c2UgaXQKKwlpbnN0ZWFkIG9mIERFQ0xfQUxJR04uCisJKGFzc2VtYmxlX3ZhcmlhYmxlKTogQWRq dXN0IGNhbGxlci4gIFVzZSBnZXRfdmFyaWFibGVfYWxpZ24KKwlpbnN0ZWFkIG9mIERFQ0xfQUxJ R04uCisJKiBjb25maWcvaTM4Ni9pMzg2LmggKERBVEFfQUxJR05NRU5UKTogQWRqdXN0IHg4Nl9k YXRhX2FsaWdubWVudAorCWNhbGxlci4KKwkoREFUQV9BQklfQUxJR05NRU5UKTogRGVmaW5lLgor CSogY29uZmlnL2kzODYvaTM4Ni1wcm90b3MuaCAoeDg2X2RhdGFfYWxpZ25tZW50KTogQWRqdXN0 IHByb3RvdHlwZS4KKwkqIGNvbmZpZy9pMzg2L2kzODYuYyAoeDg2X2RhdGFfYWxpZ25tZW50KTog QWRkIG9wdCBhcmd1bWVudC4gIElmCisJb3B0IGlzIGZhbHNlLCBvbmx5IHJldHVybiB0aGUgcHNB QkkgbWFuZGF0ZWQgYWxpZ25tZW50IGluY3JlYXNlLgorCSogY29uZmlnL2M2eC9jNnguaCAoREFU QV9BTElHTk1FTlQpOiBSZW5hbWVkIHRvLi4uCisJKERBVEFfQUJJX0FMSUdOTUVOVCk6IC4uLiB0 aGlzLgorCSogY29uZmlnL21taXgvbW1peC5oIChEQVRBX0FMSUdOTUVOVCk6IFJlbmFtZWQgdG8u Li4KKwkoREFUQV9BQklfQUxJR05NRU5UKTogLi4uIHRoaXMuCisJKiBjb25maWcvbW1peC9tbWl4 LmMgKG1taXhfZGF0YV9hbGlnbm1lbnQpOiBBZGp1c3QgZnVuY3Rpb24gY29tbWVudC4KKwkqIGNv bmZpZy9zMzkwL3MzOTAuaCAoREFUQV9BTElHTk1FTlQpOiBSZW5hbWVkIHRvLi4uCisJKERBVEFf QUJJX0FMSUdOTUVOVCk6IC4uLiB0aGlzLgorCSogZG9jL3RtLnRleGkuaW4gKERBVEFfQUJJX0FM SUdOTUVOVCk6IERvY3VtZW50LgorCSogZG9jL3RtLnRleGk6IFJlZ2VuZXJhdGVkLgorCisJKiBn Y2MudGFyZ2V0L2kzODYvcHI1NjU2NC0xLmM6IE5ldyB0ZXN0LgorCSogZ2NjLnRhcmdldC9pMzg2 L3ByNTY1NjQtMi5jOiBOZXcgdGVzdC4KKwkqIGdjYy50YXJnZXQvaTM4Ni9wcjU2NTY0LTMuYzog TmV3IHRlc3QuCisJKiBnY2MudGFyZ2V0L2kzODYvcHI1NjU2NC00LmM6IE5ldyB0ZXN0LgorCSog Z2NjLnRhcmdldC9pMzg2L2F2eDI1Ni11bmFsaWduZWQtbG9hZC00LmM6IEFkZCAtZm5vLWNvbW1v bi4KKwkqIGdjYy50YXJnZXQvaTM4Ni9hdngyNTYtdW5hbGlnbmVkLXN0b3JlLTEuYzogTGlrZXdp c2UuCisJKiBnY2MudGFyZ2V0L2kzODYvYXZ4MjU2LXVuYWxpZ25lZC1zdG9yZS0zLmM6IExpa2V3 aXNlLgorCSogZ2NjLnRhcmdldC9pMzg2L2F2eDI1Ni11bmFsaWduZWQtc3RvcmUtNC5jOiBMaWtl d2lzZS4KKwkqIGdjYy50YXJnZXQvaTM4Ni92ZWN0LXNpemVzLTEuYzogTGlrZXdpc2UuCisJKiBn Y2MudGFyZ2V0L2kzODYvbWVtY3B5LTEuYzogTGlrZXdpc2UuCisJKiBnY2MuZGcvdmVjdC9jb3N0 bW9kZWwvaTM4Ni9jb3N0bW9kZWwtdmVjdC0zMS5jICh0bXApOiBJbml0aWFsaXplLgorCSogZ2Nj LmRnL3ZlY3QvY29zdG1vZGVsL3g4Nl82NC9jb3N0bW9kZWwtdmVjdC0zMS5jICh0bXApOiBMaWtl d2lzZS4KKworLS0tIGdjYy9kb2MvdG0udGV4aS5pbgkocmV2aXNpb24gMTk5ODk3KQorKysrIGdj Yy9kb2MvdG0udGV4aS5pbgkocmV2aXNpb24gMTk5ODk4KQorQEAgLTEwNjIsNiArMTA2MiwxNSBA QCBhcnJheXMgdG8gYmUgd29yZC1hbGlnbmVkIHNvIHRoYXQgQGNvZGV7CisgY29uc3RhbnRzIHRv IGNoYXJhY3RlciBhcnJheXMgY2FuIGJlIGRvbmUgaW5saW5lLgorIEBlbmQgZGVmbWFjCisgCisr QGRlZm1hYyBEQVRBX0FCSV9BTElHTk1FTlQgKEB2YXJ7dHlwZX0sIEB2YXJ7YmFzaWMtYWxpZ259 KQorK1NpbWlsYXIgdG8gQGNvZGV7REFUQV9BTElHTk1FTlR9LCBidXQgZm9yIHRoZSBjYXNlcyB3 aGVyZSB0aGUgQUJJIG1hbmRhdGVzCisrc29tZSBhbGlnbm1lbnQgaW5jcmVhc2UsIGluc3RlYWQg b2Ygb3B0aW1pemF0aW9uIG9ubHkgcHVycG9zZXMuICBFLmcuQAorK0FNRCB4ODYtNjQgcHNBQkkg c2F5cyB0aGF0IHZhcmlhYmxlcyB3aXRoIGFycmF5IHR5cGUgbGFyZ2VyIHRoYW4gMTUgYnl0ZXMK KyttdXN0IGJlIGFsaWduZWQgdG8gMTYgYnl0ZSBib3VuZGFyaWVzLgorKworK0lmIHRoaXMgbWFj cm8gaXMgbm90IGRlZmluZWQsIHRoZW4gQHZhcntiYXNpYy1hbGlnbn0gaXMgdXNlZC4KKytAZW5k IGRlZm1hYworKworIEBkZWZtYWMgQ09OU1RBTlRfQUxJR05NRU5UIChAdmFye2NvbnN0YW50fSwg QHZhcntiYXNpYy1hbGlnbn0pCisgSWYgZGVmaW5lZCwgYSBDIGV4cHJlc3Npb24gdG8gY29tcHV0 ZSB0aGUgYWxpZ25tZW50IGdpdmVuIHRvIGEgY29uc3RhbnQKKyB0aGF0IGlzIGJlaW5nIHBsYWNl ZCBpbiBtZW1vcnkuICBAdmFye2NvbnN0YW50fSBpcyB0aGUgY29uc3RhbnQgYW5kCistLS0gZ2Nj L2RvYy90bS50ZXhpCShyZXZpc2lvbiAxOTk4OTcpCisrKysgZ2NjL2RvYy90bS50ZXhpCShyZXZp c2lvbiAxOTk4OTgpCitAQCAtMTA3OCw2ICsxMDc4LDE1IEBAIGFycmF5cyB0byBiZSB3b3JkLWFs aWduZWQgc28gdGhhdCBAY29kZXsKKyBjb25zdGFudHMgdG8gY2hhcmFjdGVyIGFycmF5cyBjYW4g YmUgZG9uZSBpbmxpbmUuCisgQGVuZCBkZWZtYWMKKyAKKytAZGVmbWFjIERBVEFfQUJJX0FMSUdO TUVOVCAoQHZhcnt0eXBlfSwgQHZhcntiYXNpYy1hbGlnbn0pCisrU2ltaWxhciB0byBAY29kZXtE QVRBX0FMSUdOTUVOVH0sIGJ1dCBmb3IgdGhlIGNhc2VzIHdoZXJlIHRoZSBBQkkgbWFuZGF0ZXMK Kytzb21lIGFsaWdubWVudCBpbmNyZWFzZSwgaW5zdGVhZCBvZiBvcHRpbWl6YXRpb24gb25seSBw dXJwb3Nlcy4gIEUuZy5ACisrQU1EIHg4Ni02NCBwc0FCSSBzYXlzIHRoYXQgdmFyaWFibGVzIHdp dGggYXJyYXkgdHlwZSBsYXJnZXIgdGhhbiAxNSBieXRlcworK211c3QgYmUgYWxpZ25lZCB0byAx NiBieXRlIGJvdW5kYXJpZXMuCisrCisrSWYgdGhpcyBtYWNybyBpcyBub3QgZGVmaW5lZCwgdGhl biBAdmFye2Jhc2ljLWFsaWdufSBpcyB1c2VkLgorK0BlbmQgZGVmbWFjCisrCisgQGRlZm1hYyBD T05TVEFOVF9BTElHTk1FTlQgKEB2YXJ7Y29uc3RhbnR9LCBAdmFye2Jhc2ljLWFsaWdufSkKKyBJ ZiBkZWZpbmVkLCBhIEMgZXhwcmVzc2lvbiB0byBjb21wdXRlIHRoZSBhbGlnbm1lbnQgZ2l2ZW4g dG8gYSBjb25zdGFudAorIHRoYXQgaXMgYmVpbmcgcGxhY2VkIGluIG1lbW9yeS4gIEB2YXJ7Y29u c3RhbnR9IGlzIHRoZSBjb25zdGFudCBhbmQKKy0tLSBnY2MvdmFyYXNtLmMJKHJldmlzaW9uIDE5 OTg5NykKKysrKyBnY2MvdmFyYXNtLmMJKHJldmlzaW9uIDE5OTg5OCkKK0BAIC05NjYsMTMgKzk2 Niw4MCBAQCBhbGlnbl92YXJpYWJsZSAodHJlZSBkZWNsLCBib29sIGRvbnRfb3V0CisgICAgICAg YWxpZ24gPSBNQVhfT0ZJTEVfQUxJR05NRU5UOworICAgICB9CisgCistICAvKiBPbiBzb21lIG1h Y2hpbmVzLCBpdCBpcyBnb29kIHRvIGluY3JlYXNlIGFsaWdubWVudCBzb21ldGltZXMuICAqLwor ICAgaWYgKCEgREVDTF9VU0VSX0FMSUdOIChkZWNsKSkKKyAgICAgeworKyNpZmRlZiBEQVRBX0FC SV9BTElHTk1FTlQKKysgICAgICB1bnNpZ25lZCBpbnQgZGF0YV9hYmlfYWxpZ24KKysJPSBEQVRB X0FCSV9BTElHTk1FTlQgKFRSRUVfVFlQRSAoZGVjbCksIGFsaWduKTsKKysgICAgICAvKiBGb3Ig YmFja3dhcmRzIGNvbXBhdGliaWxpdHksIGRvbid0IGFzc3VtZSB0aGUgQUJJIGFsaWdubWVudCBm b3IKKysJIFRMUyB2YXJpYWJsZXMuICAqLworKyAgICAgIGlmICghIERFQ0xfVEhSRUFEX0xPQ0FM X1AgKGRlY2wpIHx8IGRhdGFfYWJpX2FsaWduIDw9IEJJVFNfUEVSX1dPUkQpCisrCWFsaWduID0g ZGF0YV9hYmlfYWxpZ247CisrI2VuZGlmCisrCisrICAgICAgLyogT24gc29tZSBtYWNoaW5lcywg aXQgaXMgZ29vZCB0byBpbmNyZWFzZSBhbGlnbm1lbnQgc29tZXRpbWVzLgorKwkgQnV0IGFzIERF Q0xfQUxJR04gaXMgdXNlZCBib3RoIGZvciBhY3R1YWxseSBlbWl0dGluZyB0aGUgdmFyaWFibGUK KysJIGFuZCBmb3IgY29kZSBhY2Nlc3NpbmcgdGhlIHZhcmlhYmxlIGFzIGd1YXJhbnRlZWQgYWxp Z25tZW50LCB3ZQorKwkgY2FuIG9ubHkgaW5jcmVhc2UgdGhlIGFsaWdubWVudCBpZiBpdCBpcyBh IHBlcmZvcm1hbmNlIG9wdGltaXphdGlvbgorKwkgaWYgdGhlIHJlZmVyZW5jZXMgdG8gaXQgbXVz dCBiaW5kIHRvIHRoZSBjdXJyZW50IGRlZmluaXRpb24uICAqLworKyAgICAgIGlmIChkZWNsX2Jp bmRzX3RvX2N1cnJlbnRfZGVmX3AgKGRlY2wpKQorKwl7CisrI2lmZGVmIERBVEFfQUxJR05NRU5U CisrCSAgdW5zaWduZWQgaW50IGRhdGFfYWxpZ24gPSBEQVRBX0FMSUdOTUVOVCAoVFJFRV9UWVBF IChkZWNsKSwgYWxpZ24pOworKwkgIC8qIERvbid0IGluY3JlYXNlIGFsaWdubWVudCB0b28gbXVj aCBmb3IgVExTIHZhcmlhYmxlcyAtIFRMUyBzcGFjZQorKwkgICAgIGlzIHRvbyBwcmVjaW91cy4g ICovCisrCSAgaWYgKCEgREVDTF9USFJFQURfTE9DQUxfUCAoZGVjbCkgfHwgZGF0YV9hbGlnbiA8 PSBCSVRTX1BFUl9XT1JEKQorKwkgICAgYWxpZ24gPSBkYXRhX2FsaWduOworKyNlbmRpZgorKyNp ZmRlZiBDT05TVEFOVF9BTElHTk1FTlQKKysJICBpZiAoREVDTF9JTklUSUFMIChkZWNsKSAhPSAw CisrCSAgICAgICYmIERFQ0xfSU5JVElBTCAoZGVjbCkgIT0gZXJyb3JfbWFya19ub2RlKQorKwkg ICAgeworKwkgICAgICB1bnNpZ25lZCBpbnQgY29uc3RfYWxpZ24KKysJCT0gQ09OU1RBTlRfQUxJ R05NRU5UIChERUNMX0lOSVRJQUwgKGRlY2wpLCBhbGlnbik7CisrCSAgICAgIC8qIERvbid0IGlu Y3JlYXNlIGFsaWdubWVudCB0b28gbXVjaCBmb3IgVExTIHZhcmlhYmxlcyAtIFRMUworKwkJIHNw YWNlIGlzIHRvbyBwcmVjaW91cy4gICovCisrCSAgICAgIGlmICghIERFQ0xfVEhSRUFEX0xPQ0FM X1AgKGRlY2wpIHx8IGNvbnN0X2FsaWduIDw9IEJJVFNfUEVSX1dPUkQpCisrCQlhbGlnbiA9IGNv bnN0X2FsaWduOworKwkgICAgfQorKyNlbmRpZgorKwl9CisrICAgIH0KKysKKysgIC8qIFJlc2V0 IHRoZSBhbGlnbm1lbnQgaW4gY2FzZSB3ZSBoYXZlIG1hZGUgaXQgdGlnaHRlciwgc28gd2UgY2Fu IGJlbmVmaXQKKysgICAgIGZyb20gaXQgaW4gZ2V0X3BvaW50ZXJfYWxpZ25tZW50LiAgKi8KKysg IERFQ0xfQUxJR04gKGRlY2wpID0gYWxpZ247CisrfQorKworKy8qIFJldHVybiBERUNMX0FMSUdO IChkZWNsKSwgcG9zc2libHkgaW5jcmVhc2VkIGZvciBvcHRpbWl6YXRpb24gcHVycG9zZXMKKysg ICBiZXlvbmQgd2hhdCBhbGlnbl92YXJpYWJsZSByZXR1cm5lZC4gICovCisrCisrc3RhdGljIHVu c2lnbmVkIGludAorK2dldF92YXJpYWJsZV9hbGlnbiAodHJlZSBkZWNsKQorK3sKKysgIHVuc2ln bmVkIGludCBhbGlnbiA9IERFQ0xfQUxJR04gKGRlY2wpOworKworKyAgLyogRm9yIHVzZXIgYWxp Z25lZCB2YXJzIG9yIHN0YXRpYyB2YXJzIGFsaWduX3ZhcmlhYmxlIGFscmVhZHkgZGlkCisrICAg ICBldmVyeXRoaW5nLiAgKi8KKysgIGlmIChERUNMX1VTRVJfQUxJR04gKGRlY2wpIHx8ICFUUkVF X1BVQkxJQyAoZGVjbCkpCisrICAgIHJldHVybiBhbGlnbjsKKysKKysjaWZkZWYgREFUQV9BQklf QUxJR05NRU5UCisrICBpZiAoREVDTF9USFJFQURfTE9DQUxfUCAoZGVjbCkpCisrICAgIGFsaWdu ID0gREFUQV9BQklfQUxJR05NRU5UIChUUkVFX1RZUEUgKGRlY2wpLCBhbGlnbik7CisrI2VuZGlm CisrCisrICAvKiBGb3IgZGVjbHMgdGhhdCBiaW5kIHRvIHRoZSBjdXJyZW50IGRlZmluaXRpb24s IGFsaWduX3ZhcmlhYmxlCisrICAgICBkaWQgYWxzbyBldmVyeXRoaW5nLCBleGNlcHQgZm9yIG5v dCBhc3N1bWluZyBBQkkgcmVxdWlyZWQgYWxpZ25tZW50CisrICAgICBvZiBUTFMgdmFyaWFibGVz LiAgRm9yIG90aGVyIHZhcnMsIGluY3JlYXNlIHRoZSBhbGlnbm1lbnQgaGVyZQorKyAgICAgYXMg YW4gb3B0aW1pemF0aW9uLiAgKi8KKysgIGlmICghZGVjbF9iaW5kc190b19jdXJyZW50X2RlZl9w IChkZWNsKSkKKysgICAgeworKyAgICAgIC8qIE9uIHNvbWUgbWFjaGluZXMsIGl0IGlzIGdvb2Qg dG8gaW5jcmVhc2UgYWxpZ25tZW50IHNvbWV0aW1lcy4gICovCisgI2lmZGVmIERBVEFfQUxJR05N RU5UCisgICAgICAgdW5zaWduZWQgaW50IGRhdGFfYWxpZ24gPSBEQVRBX0FMSUdOTUVOVCAoVFJF RV9UWVBFIChkZWNsKSwgYWxpZ24pOworICAgICAgIC8qIERvbid0IGluY3JlYXNlIGFsaWdubWVu dCB0b28gbXVjaCBmb3IgVExTIHZhcmlhYmxlcyAtIFRMUyBzcGFjZQorLQkgaXMgdG9vIHByZWNp b3VzLiAgKi8KKysgICAgICAgICBpcyB0b28gcHJlY2lvdXMuICAqLworICAgICAgIGlmICghIERF Q0xfVEhSRUFEX0xPQ0FMX1AgKGRlY2wpIHx8IGRhdGFfYWxpZ24gPD0gQklUU19QRVJfV09SRCkK KyAJYWxpZ24gPSBkYXRhX2FsaWduOworICNlbmRpZgorQEAgLTk4NiwxMiArMTA1MywxMCBAQCBh bGlnbl92YXJpYWJsZSAodHJlZSBkZWNsLCBib29sIGRvbnRfb3V0CisgCSAgaWYgKCEgREVDTF9U SFJFQURfTE9DQUxfUCAoZGVjbCkgfHwgY29uc3RfYWxpZ24gPD0gQklUU19QRVJfV09SRCkKKyAJ ICAgIGFsaWduID0gY29uc3RfYWxpZ247CisgCX0KKy0jZW5kaWYKKyAgICAgfQorKyNlbmRpZgor IAorLSAgLyogUmVzZXQgdGhlIGFsaWdubWVudCBpbiBjYXNlIHdlIGhhdmUgbWFkZSBpdCB0aWdo dGVyLCBzbyB3ZSBjYW4gYmVuZWZpdAorLSAgICAgZnJvbSBpdCBpbiBnZXRfcG9pbnRlcl9hbGln bm1lbnQuICAqLworLSAgREVDTF9BTElHTiAoZGVjbCkgPSBhbGlnbjsKKysgIHJldHVybiBhbGln bjsKKyB9CisgCisgLyogUmV0dXJuIHRoZSBzZWN0aW9uIGludG8gd2hpY2ggdGhlIGdpdmVuIFZB Ul9ERUNMIG9yIENPTlNUX0RFQ0wKK0BAIC0xMDQzLDcgKzExMDgsOCBAQCBnZXRfdmFyaWFibGVf c2VjdGlvbiAodHJlZSBkZWNsLCBib29sIHByCisgCXJldHVybiBic3Nfbm9zd2l0Y2hfc2VjdGlv bjsKKyAgICAgfQorIAorLSAgcmV0dXJuIHRhcmdldG0uYXNtX291dC5zZWxlY3Rfc2VjdGlvbiAo ZGVjbCwgcmVsb2MsIERFQ0xfQUxJR04gKGRlY2wpKTsKKysgIHJldHVybiB0YXJnZXRtLmFzbV9v dXQuc2VsZWN0X3NlY3Rpb24gKGRlY2wsIHJlbG9jLAorKwkJCQkJIGdldF92YXJpYWJsZV9hbGln biAoZGVjbCkpOworIH0KKyAKKyAvKiBSZXR1cm4gdGhlIGJsb2NrIGludG8gd2hpY2ggb2JqZWN0 X2Jsb2NrIERFQ0wgc2hvdWxkIGJlIHBsYWNlZC4gICovCitAQCAtMTc4MCw3ICsxODQ2LDggQEAg ZW1pdF9ic3MgKHRyZWUgZGVjbCBBVFRSSUJVVEVfVU5VU0VELAorIAkgIHVuc2lnbmVkIEhPU1Rf V0lERV9JTlQgcm91bmRlZCBBVFRSSUJVVEVfVU5VU0VEKQorIHsKKyAjaWYgZGVmaW5lZCBBU01f T1VUUFVUX0FMSUdORURfQlNTCistICBBU01fT1VUUFVUX0FMSUdORURfQlNTIChhc21fb3V0X2Zp bGUsIGRlY2wsIG5hbWUsIHNpemUsIERFQ0xfQUxJR04gKGRlY2wpKTsKKysgIEFTTV9PVVRQVVRf QUxJR05FRF9CU1MgKGFzbV9vdXRfZmlsZSwgZGVjbCwgbmFtZSwgc2l6ZSwKKysJCQkgIGdldF92 YXJpYWJsZV9hbGlnbiAoZGVjbCkpOworICAgcmV0dXJuIHRydWU7CisgI2VuZGlmCisgfQorQEAg LTE3OTYsMTAgKzE4NjMsMTEgQEAgZW1pdF9jb21tb24gKHRyZWUgZGVjbCBBVFRSSUJVVEVfVU5V U0VELAorIHsKKyAjaWYgZGVmaW5lZCBBU01fT1VUUFVUX0FMSUdORURfREVDTF9DT01NT04KKyAg IEFTTV9PVVRQVVRfQUxJR05FRF9ERUNMX0NPTU1PTiAoYXNtX291dF9maWxlLCBkZWNsLCBuYW1l LAorLQkJCQkgIHNpemUsIERFQ0xfQUxJR04gKGRlY2wpKTsKKysJCQkJICBzaXplLCBnZXRfdmFy aWFibGVfYWxpZ24gKGRlY2wpKTsKKyAgIHJldHVybiB0cnVlOworICNlbGlmIGRlZmluZWQgQVNN X09VVFBVVF9BTElHTkVEX0NPTU1PTgorLSAgQVNNX09VVFBVVF9BTElHTkVEX0NPTU1PTiAoYXNt X291dF9maWxlLCBuYW1lLCBzaXplLCBERUNMX0FMSUdOIChkZWNsKSk7CisrICBBU01fT1VUUFVU X0FMSUdORURfQ09NTU9OIChhc21fb3V0X2ZpbGUsIG5hbWUsIHNpemUsCisrCQkJICAgICBnZXRf dmFyaWFibGVfYWxpZ24gKGRlY2wpKTsKKyAgIHJldHVybiB0cnVlOworICNlbHNlCisgICBBU01f T1VUUFVUX0NPTU1PTiAoYXNtX291dF9maWxlLCBuYW1lLCBzaXplLCByb3VuZGVkKTsKK0BAIC0x ODI4LDcgKzE4OTYsOCBAQCBlbWl0X3Rsc19jb21tb24gKHRyZWUgZGVjbCBBVFRSSUJVVEVfVU5V CisgICAgTkFNRSBpcyB0aGUgbmFtZSBvZiBERUNMJ3MgU1lNQk9MX1JFRi4gICovCisgCisgc3Rh dGljIHZvaWQKKy1hc3NlbWJsZV9ub3N3aXRjaF92YXJpYWJsZSAodHJlZSBkZWNsLCBjb25zdCBj aGFyICpuYW1lLCBzZWN0aW9uICpzZWN0KQorK2Fzc2VtYmxlX25vc3dpdGNoX3ZhcmlhYmxlICh0 cmVlIGRlY2wsIGNvbnN0IGNoYXIgKm5hbWUsIHNlY3Rpb24gKnNlY3QsCisrCQkJICAgIHVuc2ln bmVkIGludCBhbGlnbikKKyB7CisgICB1bnNpZ25lZCBIT1NUX1dJREVfSU5UIHNpemUsIHJvdW5k ZWQ7CisgCitAQCAtMTg1MCw3ICsxOTE5LDcgQEAgYXNzZW1ibGVfbm9zd2l0Y2hfdmFyaWFibGUg KHRyZWUgZGVjbCwgYworIAkgICAgICogKEJJR0dFU1RfQUxJR05NRU5UIC8gQklUU19QRVJfVU5J VCkpOworIAorICAgaWYgKCFzZWN0LT5ub3N3aXRjaC5jYWxsYmFjayAoZGVjbCwgbmFtZSwgc2l6 ZSwgcm91bmRlZCkKKy0gICAgICAmJiAodW5zaWduZWQgSE9TVF9XSURFX0lOVCkgREVDTF9BTElH Tl9VTklUIChkZWNsKSA+IHJvdW5kZWQpCisrICAgICAgJiYgKHVuc2lnbmVkIEhPU1RfV0lERV9J TlQpIChhbGlnbiAvIEJJVFNfUEVSX1VOSVQpID4gcm91bmRlZCkKKyAgICAgd2FybmluZyAoMCwg InJlcXVlc3RlZCBhbGlnbm1lbnQgZm9yICVxK0QgaXMgZ3JlYXRlciB0aGFuICIKKyAJICAgICAi aW1wbGVtZW50ZWQgYWxpZ25tZW50IG9mICV3dSIsIGRlY2wsIHJvdW5kZWQpOworIH0KK0BAIC0x ODgwLDcgKzE5NDksNyBAQCBhc3NlbWJsZV92YXJpYWJsZV9jb250ZW50cyAodHJlZSBkZWNsLCBj CisgCS8qIE91dHB1dCB0aGUgYWN0dWFsIGRhdGEuICAqLworIAlvdXRwdXRfY29uc3RhbnQgKERF Q0xfSU5JVElBTCAoZGVjbCksCisgCQkJIHRyZWVfbG93X2NzdCAoREVDTF9TSVpFX1VOSVQgKGRl Y2wpLCAxKSwKKy0JCQkgREVDTF9BTElHTiAoZGVjbCkpOworKwkJCSBnZXRfdmFyaWFibGVfYWxp Z24gKGRlY2wpKTsKKyAgICAgICBlbHNlCisgCS8qIExlYXZlIHNwYWNlIGZvciBpdC4gICovCisg CWFzc2VtYmxlX3plcm9zICh0cmVlX2xvd19jc3QgKERFQ0xfU0laRV9VTklUIChkZWNsKSwgMSkp OworQEAgLTE5MDQsNiArMTk3Myw3IEBAIGFzc2VtYmxlX3ZhcmlhYmxlICh0cmVlIGRlY2wsIGlu dCB0b3BfbGUKKyAgIGNvbnN0IGNoYXIgKm5hbWU7CisgICBydHggZGVjbF9ydGwsIHN5bWJvbDsK KyAgIHNlY3Rpb24gKnNlY3Q7CisrICB1bnNpZ25lZCBpbnQgYWxpZ247CisgICBib29sIGFzYW5f cHJvdGVjdGVkID0gZmFsc2U7CisgCisgICAvKiBUaGlzIGZ1bmN0aW9uIGlzIHN1cHBvc2VkIHRv IGhhbmRsZSBWQVJJQUJMRVMuICBFbnN1cmUgd2UgaGF2ZSBvbmUuICAqLworQEAgLTIwMDMsNiAr MjA3Myw4IEBAIGFzc2VtYmxlX3ZhcmlhYmxlICh0cmVlIGRlY2wsIGludCB0b3BfbGUKKyAKKyAg IHNldF9tZW1fYWxpZ24gKGRlY2xfcnRsLCBERUNMX0FMSUdOIChkZWNsKSk7CisgCisrICBhbGln biA9IGdldF92YXJpYWJsZV9hbGlnbiAoZGVjbCk7CisrCisgICBpZiAoVFJFRV9QVUJMSUMgKGRl Y2wpKQorICAgICBtYXliZV9hc3NlbWJsZV92aXNpYmlsaXR5IChkZWNsKTsKKyAKK0BAIC0yMDMy LDEyICsyMTA0LDEyIEBAIGFzc2VtYmxlX3ZhcmlhYmxlICh0cmVlIGRlY2wsIGludCB0b3BfbGUK KyAgICAgICBwbGFjZV9ibG9ja19zeW1ib2wgKHN5bWJvbCk7CisgICAgIH0KKyAgIGVsc2UgaWYg KFNFQ1RJT05fU1RZTEUgKHNlY3QpID09IFNFQ1RJT05fTk9TV0lUQ0gpCistICAgIGFzc2VtYmxl X25vc3dpdGNoX3ZhcmlhYmxlIChkZWNsLCBuYW1lLCBzZWN0KTsKKysgICAgYXNzZW1ibGVfbm9z d2l0Y2hfdmFyaWFibGUgKGRlY2wsIG5hbWUsIHNlY3QsIGFsaWduKTsKKyAgIGVsc2UKKyAgICAg eworICAgICAgIHN3aXRjaF90b19zZWN0aW9uIChzZWN0KTsKKy0gICAgICBpZiAoREVDTF9BTElH TiAoZGVjbCkgPiBCSVRTX1BFUl9VTklUKQorLQlBU01fT1VUUFVUX0FMSUdOIChhc21fb3V0X2Zp bGUsIGZsb29yX2xvZzIgKERFQ0xfQUxJR05fVU5JVCAoZGVjbCkpKTsKKysgICAgICBpZiAoYWxp Z24gPiBCSVRTX1BFUl9VTklUKQorKwlBU01fT1VUUFVUX0FMSUdOIChhc21fb3V0X2ZpbGUsIGZs b29yX2xvZzIgKGFsaWduIC8gQklUU19QRVJfVU5JVCkpOworICAgICAgIGFzc2VtYmxlX3Zhcmlh YmxlX2NvbnRlbnRzIChkZWNsLCBuYW1lLCBkb250X291dHB1dF9kYXRhKTsKKyAgICAgICBpZiAo YXNhbl9wcm90ZWN0ZWQpCisgCXsKK0BAIC02OTU5LDcgKzcwMzEsNyBAQCBwbGFjZV9ibG9ja19z eW1ib2wgKHJ0eCBzeW1ib2wpCisgICBlbHNlCisgICAgIHsKKyAgICAgICBkZWNsID0gU1lNQk9M X1JFRl9ERUNMIChzeW1ib2wpOworLSAgICAgIGFsaWdubWVudCA9IERFQ0xfQUxJR04gKGRlY2wp OworKyAgICAgIGFsaWdubWVudCA9IGdldF92YXJpYWJsZV9hbGlnbiAoZGVjbCk7CisgICAgICAg c2l6ZSA9IHRyZWVfbG93X2NzdCAoREVDTF9TSVpFX1VOSVQgKGRlY2wpLCAxKTsKKyAgICAgICBp ZiAoZmxhZ19hc2FuICYmIGFzYW5fcHJvdGVjdF9nbG9iYWwgKGRlY2wpKQorIAl7CistLS0gZ2Nj L2NvbmZpZy9zMzkwL3MzOTAuaAkocmV2aXNpb24gMTk5ODk3KQorKysrIGdjYy9jb25maWcvczM5 MC9zMzkwLmgJKHJldmlzaW9uIDE5OTg5OCkKK0BAIC0yMjEsNyArMjIxLDcgQEAgZW51bSBwcm9j ZXNzb3JfZmxhZ3MKKyAKKyAvKiBBbGlnbm1lbnQgb24gZXZlbiBhZGRyZXNzZXMgZm9yIExBUkwg aW5zdHJ1Y3Rpb24uICAqLworICNkZWZpbmUgQ09OU1RBTlRfQUxJR05NRU5UKEVYUCwgQUxJR04p IChBTElHTikgPCAxNiA/IDE2IDogKEFMSUdOKQorLSNkZWZpbmUgREFUQV9BTElHTk1FTlQoVFlQ RSwgQUxJR04pIChBTElHTikgPCAxNiA/IDE2IDogKEFMSUdOKQorKyNkZWZpbmUgREFUQV9BQklf QUxJR05NRU5UKFRZUEUsIEFMSUdOKSAoQUxJR04pIDwgMTYgPyAxNiA6IChBTElHTikKKyAKKyAv KiBBbGlnbm1lbnQgaXMgbm90IHJlcXVpcmVkIGJ5IHRoZSBoYXJkd2FyZS4gICovCisgI2RlZmlu ZSBTVFJJQ1RfQUxJR05NRU5UIDAKKy0tLSBnY2MvY29uZmlnL2kzODYvaTM4Ni5oCShyZXZpc2lv biAxOTk4OTcpCisrKysgZ2NjL2NvbmZpZy9pMzg2L2kzODYuaAkocmV2aXNpb24gMTk5ODk4KQor QEAgLTg1OSw3ICs4NTksMTggQEAgZW51bSB0YXJnZXRfY3B1X2RlZmF1bHQKKyAgICBjYXVzZSBj aGFyYWN0ZXIgYXJyYXlzIHRvIGJlIHdvcmQtYWxpZ25lZCBzbyB0aGF0IGBzdHJjcHknIGNhbGxz CisgICAgdGhhdCBjb3B5IGNvbnN0YW50cyB0byBjaGFyYWN0ZXIgYXJyYXlzIGNhbiBiZSBkb25l IGlubGluZS4gICovCisgCistI2RlZmluZSBEQVRBX0FMSUdOTUVOVChUWVBFLCBBTElHTikgaXg4 Nl9kYXRhX2FsaWdubWVudCAoKFRZUEUpLCAoQUxJR04pKQorKyNkZWZpbmUgREFUQV9BTElHTk1F TlQoVFlQRSwgQUxJR04pIFwKKysgIGl4ODZfZGF0YV9hbGlnbm1lbnQgKChUWVBFKSwgKEFMSUdO KSwgdHJ1ZSkKKysKKysvKiBTaW1pbGFyIHRvIERBVEFfQUxJR05NRU5ULCBidXQgZm9yIHRoZSBj YXNlcyB3aGVyZSB0aGUgQUJJIG1hbmRhdGVzCisrICAgc29tZSBhbGlnbm1lbnQgaW5jcmVhc2Us IGluc3RlYWQgb2Ygb3B0aW1pemF0aW9uIG9ubHkgcHVycG9zZXMuICBFLmcuCisrICAgQU1EIHg4 Ni02NCBwc0FCSSBzYXlzIHRoYXQgdmFyaWFibGVzIHdpdGggYXJyYXkgdHlwZSBsYXJnZXIgdGhh biAxNSBieXRlcworKyAgIG11c3QgYmUgYWxpZ25lZCB0byAxNiBieXRlIGJvdW5kYXJpZXMuCisr CisrICAgSWYgdGhpcyBtYWNybyBpcyBub3QgZGVmaW5lZCwgdGhlbiBBTElHTiBpcyB1c2VkLiAg Ki8KKysKKysjZGVmaW5lIERBVEFfQUJJX0FMSUdOTUVOVChUWVBFLCBBTElHTikgXAorKyAgaXg4 Nl9kYXRhX2FsaWdubWVudCAoKFRZUEUpLCAoQUxJR04pLCBmYWxzZSkKKyAKKyAvKiBJZiBkZWZp bmVkLCBhIEMgZXhwcmVzc2lvbiB0byBjb21wdXRlIHRoZSBhbGlnbm1lbnQgZm9yIGEgbG9jYWwK KyAgICB2YXJpYWJsZS4gIFRZUEUgaXMgdGhlIGRhdGEgdHlwZSwgYW5kIEFMSUdOIGlzIHRoZSBh bGlnbm1lbnQgdGhhdAorLS0tIGdjYy9jb25maWcvaTM4Ni9pMzg2LXByb3Rvcy5oCShyZXZpc2lv biAxOTk4OTcpCisrKysgZ2NjL2NvbmZpZy9pMzg2L2kzODYtcHJvdG9zLmgJKHJldmlzaW9uIDE5 OTg5OCkKK0BAIC0yMDcsNyArMjA3LDcgQEAgZXh0ZXJuIHZvaWQgaW5pdF9jdW11bGF0aXZlX2Fy Z3MgKENVTVVMQQorICNlbmRpZgkvKiBSVFhfQ09ERSAgKi8KKyAKKyAjaWZkZWYgVFJFRV9DT0RF CistZXh0ZXJuIGludCBpeDg2X2RhdGFfYWxpZ25tZW50ICh0cmVlLCBpbnQpOworK2V4dGVybiBp bnQgaXg4Nl9kYXRhX2FsaWdubWVudCAodHJlZSwgaW50LCBib29sKTsKKyBleHRlcm4gdW5zaWdu ZWQgaW50IGl4ODZfbG9jYWxfYWxpZ25tZW50ICh0cmVlLCBlbnVtIG1hY2hpbmVfbW9kZSwKKyAJ CQkJCSAgdW5zaWduZWQgaW50KTsKKyBleHRlcm4gdW5zaWduZWQgaW50IGl4ODZfbWluaW11bV9h bGlnbm1lbnQgKHRyZWUsIGVudW0gbWFjaGluZV9tb2RlLAorLS0tIGdjYy9jb25maWcvaTM4Ni9p Mzg2LmMJKHJldmlzaW9uIDE5OTg5NykKKysrKyBnY2MvY29uZmlnL2kzODYvaTM4Ni5jCShyZXZp c2lvbiAxOTk4OTgpCitAQCAtMjUzNzUsMTEgKzI1Mzc1LDEyIEBAIGl4ODZfY29uc3RhbnRfYWxp Z25tZW50ICh0cmVlIGV4cCwgaW50IGEKKyAgICBpbnN0ZWFkIG9mIHRoYXQgYWxpZ25tZW50IHRv IGFsaWduIHRoZSBvYmplY3QuICAqLworIAorIGludAorLWl4ODZfZGF0YV9hbGlnbm1lbnQgKHRy ZWUgdHlwZSwgaW50IGFsaWduKQorK2l4ODZfZGF0YV9hbGlnbm1lbnQgKHRyZWUgdHlwZSwgaW50 IGFsaWduLCBib29sIG9wdCkKKyB7CisgICBpbnQgbWF4X2FsaWduID0gb3B0aW1pemVfc2l6ZSA/ IEJJVFNfUEVSX1dPUkQgOiBNSU4gKDI1NiwgTUFYX09GSUxFX0FMSUdOTUVOVCk7CisgCistICBp ZiAoQUdHUkVHQVRFX1RZUEVfUCAodHlwZSkKKysgIGlmIChvcHQKKysgICAgICAmJiBBR0dSRUdB VEVfVFlQRV9QICh0eXBlKQorICAgICAgICYmIFRZUEVfU0laRSAodHlwZSkKKyAgICAgICAmJiBU UkVFX0NPREUgKFRZUEVfU0laRSAodHlwZSkpID09IElOVEVHRVJfQ1NUCisgICAgICAgJiYgKFRS RUVfSU5UX0NTVF9MT1cgKFRZUEVfU0laRSAodHlwZSkpID49ICh1bnNpZ25lZCkgbWF4X2FsaWdu CitAQCAtMjUzOTEsMTQgKzI1MzkyLDE3IEBAIGl4ODZfZGF0YV9hbGlnbm1lbnQgKHRyZWUgdHlw ZSwgaW50IGFsaWcKKyAgICAgIHRvIDE2Ynl0ZSBib3VuZGFyeS4gICovCisgICBpZiAoVEFSR0VU XzY0QklUKQorICAgICB7CistICAgICAgaWYgKEFHR1JFR0FURV9UWVBFX1AgKHR5cGUpCistCSAg ICYmIFRZUEVfU0laRSAodHlwZSkKKy0JICAgJiYgVFJFRV9DT0RFIChUWVBFX1NJWkUgKHR5cGUp KSA9PSBJTlRFR0VSX0NTVAorLQkgICAmJiAoVFJFRV9JTlRfQ1NUX0xPVyAoVFlQRV9TSVpFICh0 eXBlKSkgPj0gMTI4CistCSAgICAgICB8fCBUUkVFX0lOVF9DU1RfSElHSCAoVFlQRV9TSVpFICh0 eXBlKSkpICYmIGFsaWduIDwgMTI4KQorKyAgICAgIGlmICgob3B0ID8gQUdHUkVHQVRFX1RZUEVf UCAodHlwZSkgOiBUUkVFX0NPREUgKHR5cGUpID09IEFSUkFZX1RZUEUpCisrCSAgJiYgVFlQRV9T SVpFICh0eXBlKQorKwkgICYmIFRSRUVfQ09ERSAoVFlQRV9TSVpFICh0eXBlKSkgPT0gSU5URUdF Ul9DU1QKKysJICAmJiAoVFJFRV9JTlRfQ1NUX0xPVyAoVFlQRV9TSVpFICh0eXBlKSkgPj0gMTI4 CisrCSAgICAgIHx8IFRSRUVfSU5UX0NTVF9ISUdIIChUWVBFX1NJWkUgKHR5cGUpKSkgJiYgYWxp Z24gPCAxMjgpCisgCXJldHVybiAxMjg7CisgICAgIH0KKyAKKysgIGlmICghb3B0KQorKyAgICBy ZXR1cm4gYWxpZ247CisrCisgICBpZiAoVFJFRV9DT0RFICh0eXBlKSA9PSBBUlJBWV9UWVBFKQor ICAgICB7CisgICAgICAgaWYgKFRZUEVfTU9ERSAoVFJFRV9UWVBFICh0eXBlKSkgPT0gREZtb2Rl ICYmIGFsaWduIDwgNjQpCistLS0gZ2NjL2NvbmZpZy9jNngvYzZ4LmgJKHJldmlzaW9uIDE5OTg5 NykKKysrKyBnY2MvY29uZmlnL2M2eC9jNnguaAkocmV2aXNpb24gMTk5ODk4KQorQEAgLTEzNCw3 ICsxMzQsNyBAQCBleHRlcm4gYzZ4X2NwdV90IGM2eF9hcmNoOworICAgIFJlYWxseSBvbmx5IGV4 dGVybmFsbHkgdmlzaWJsZSBhcnJheXMgbXVzdCBiZSBhbGlnbmVkIHRoaXMgd2F5LCBhcworICAg IG9ubHkgdGhvc2UgYXJlIGRpcmVjdGx5IHZpc2libGUgZnJvbSBhbm90aGVyIGNvbXBpbGF0aW9u IHVuaXQuICBCdXQKKyAgICB3ZSBkb24ndCBoYXZlIHRoYXQgaW5mb3JtYXRpb24gYXZhaWxhYmxl IGhlcmUuICAqLworLSNkZWZpbmUgREFUQV9BTElHTk1FTlQoVFlQRSwgQUxJR04pCQkJCQlcCisr I2RlZmluZSBEQVRBX0FCSV9BTElHTk1FTlQoVFlQRSwgQUxJR04pCQkJCQlcCisgICAoKChBTElH TikgPCBCSVRTX1BFUl9VTklUICogOCAmJiBUUkVFX0NPREUgKFRZUEUpID09IEFSUkFZX1RZUEUp CVwKKyAgICA/IEJJVFNfUEVSX1VOSVQgKiA4IDogKEFMSUdOKSkKKyAKKy0tLSBnY2MvY29uZmln L21taXgvbW1peC5oCShyZXZpc2lvbiAxOTk4OTcpCisrKysgZ2NjL2NvbmZpZy9tbWl4L21taXgu aAkocmV2aXNpb24gMTk5ODk4KQorQEAgLTE2NCw3ICsxNjQsNyBAQCBzdHJ1Y3QgR1RZKCgpKSBt YWNoaW5lX2Z1bmN0aW9uCisgLyogQ29waWVkIGZyb20gZWxmb3MuaC4gICovCisgI2RlZmluZSBN QVhfT0ZJTEVfQUxJR05NRU5UICgzMjc2OCAqIDgpCisgCistI2RlZmluZSBEQVRBX0FMSUdOTUVO VChUWVBFLCBCQVNJQ19BTElHTikgXAorKyNkZWZpbmUgREFUQV9BQklfQUxJR05NRU5UKFRZUEUs IEJBU0lDX0FMSUdOKSBcCisgIG1taXhfZGF0YV9hbGlnbm1lbnQgKFRZUEUsIEJBU0lDX0FMSUdO KQorIAorICNkZWZpbmUgQ09OU1RBTlRfQUxJR05NRU5UKENPTlNUQU5ULCBCQVNJQ19BTElHTikg XAorLS0tIGdjYy9jb25maWcvbW1peC9tbWl4LmMJKHJldmlzaW9uIDE5OTg5NykKKysrKyBnY2Mv Y29uZmlnL21taXgvbW1peC5jCShyZXZpc2lvbiAxOTk4OTgpCitAQCAtMzEzLDcgKzMxMyw3IEBA IG1taXhfaW5pdF9tYWNoaW5lX3N0YXR1cyAodm9pZCkKKyAgIHJldHVybiBnZ2NfYWxsb2NfY2xl YXJlZF9tYWNoaW5lX2Z1bmN0aW9uICgpOworIH0KKyAKKy0vKiBEQVRBX0FMSUdOTUVOVC4KKysv KiBEQVRBX0FCSV9BTElHTk1FTlQuCisgICAgV2UgaGF2ZSB0cm91YmxlIGdldHRpbmcgdGhlIGFk ZHJlc3Mgb2Ygc3R1ZmYgdGhhdCBpcyBsb2NhdGVkIGF0IG90aGVyCisgICAgdGhhbiAzMi1iaXQg YWxpZ25tZW50cyAoR0VUQSByZXF1aXJlbWVudHMpLCBzbyB0cnkgdG8gZ2l2ZSBldmVyeXRoaW5n CisgICAgYXQgbGVhc3QgMzItYml0IGFsaWdubWVudC4gICovCistLS0gZ2NjL3Rlc3RzdWl0ZS9n Y2MudGFyZ2V0L2kzODYvbWVtY3B5LTEuYwkocmV2aXNpb24gMTk5ODk3KQorKysrIGdjYy90ZXN0 c3VpdGUvZ2NjLnRhcmdldC9pMzg2L21lbWNweS0xLmMJKHJldmlzaW9uIDE5OTg5OCkKK0BAIC0x LDYgKzEsNiBAQAorIC8qIHsgZGctZG8gY29tcGlsZSB9ICovCisgLyogeyBkZy1yZXF1aXJlLWVm ZmVjdGl2ZS10YXJnZXQgaWEzMiB9ICovCistLyogeyBkZy1vcHRpb25zICItTzIgLW1hcmNoPXBl bnRpdW1wcm8gLW1pbmxpbmUtYWxsLXN0cmluZ29wcyIgfSAqLworKy8qIHsgZGctb3B0aW9ucyAi LU8yIC1tYXJjaD1wZW50aXVtcHJvIC1taW5saW5lLWFsbC1zdHJpbmdvcHMgLWZuby1jb21tb24i IH0gKi8KKyAvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXIgInJlcCIgfSB9ICovCisgLyog eyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyICJtb3ZzIiB9IH0gKi8KKyAvKiB7IGRnLWZpbmFs IHsgc2Nhbi1hc3NlbWJsZXItbm90ICJ0ZXN0IiB9IH0gKi8KKy0tLSBnY2MvdGVzdHN1aXRlL2dj Yy50YXJnZXQvaTM4Ni92ZWN0LXNpemVzLTEuYwkocmV2aXNpb24gMTk5ODk3KQorKysrIGdjYy90 ZXN0c3VpdGUvZ2NjLnRhcmdldC9pMzg2L3ZlY3Qtc2l6ZXMtMS5jCShyZXZpc2lvbiAxOTk4OTgp CitAQCAtMSw1ICsxLDUgQEAKKyAvKiB7IGRnLWRvIGNvbXBpbGUgfSAqLworLS8qIHsgZGctb3B0 aW9ucyAiLU8zIC1mZmFzdC1tYXRoIC1tYXZ4IC1tdHVuZT1nZW5lcmljIiB9ICovCisrLyogeyBk Zy1vcHRpb25zICItTzMgLWZmYXN0LW1hdGggLW1hdnggLW10dW5lPWdlbmVyaWMgLWZuby1jb21t b24iIH0gKi8KKyAKKyBkb3VibGUgYVsxMDI0XTsKKyAKKy0tLSBnY2MvdGVzdHN1aXRlL2djYy50 YXJnZXQvaTM4Ni9hdngyNTYtdW5hbGlnbmVkLWxvYWQtNC5jCShyZXZpc2lvbiAxOTk4OTcpCisr KysgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvYXZ4MjU2LXVuYWxpZ25lZC1sb2FkLTQu YwkocmV2aXNpb24gMTk5ODk4KQorQEAgLTEsNSArMSw1IEBACisgLyogeyBkZy1kbyBjb21waWxl IH0gKi8KKy0vKiB7IGRnLW9wdGlvbnMgIi1PMyAtZHAgLW1hdnggLW1uby1hdngyNTYtc3BsaXQt dW5hbGlnbmVkLWxvYWQgLW1uby1hdngyNTYtc3BsaXQtdW5hbGlnbmVkLXN0b3JlIiB9ICovCisr LyogeyBkZy1vcHRpb25zICItTzMgLWRwIC1tYXZ4IC1tbm8tYXZ4MjU2LXNwbGl0LXVuYWxpZ25l ZC1sb2FkIC1tbm8tYXZ4MjU2LXNwbGl0LXVuYWxpZ25lZC1zdG9yZSAtZm5vLWNvbW1vbiIgfSAq LworIAorICNkZWZpbmUgTiAxMDI0CisgCistLS0gZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kz ODYvYXZ4MjU2LXVuYWxpZ25lZC1zdG9yZS0xLmMJKHJldmlzaW9uIDE5OTg5NykKKysrKyBnY2Mv dGVzdHN1aXRlL2djYy50YXJnZXQvaTM4Ni9hdngyNTYtdW5hbGlnbmVkLXN0b3JlLTEuYwkocmV2 aXNpb24gMTk5ODk4KQorQEAgLTEsNSArMSw1IEBACisgLyogeyBkZy1kbyBjb21waWxlIH0gKi8K Ky0vKiB7IGRnLW9wdGlvbnMgIi1PMyAtZHAgLW1hdnggLW1hdngyNTYtc3BsaXQtdW5hbGlnbmVk LXN0b3JlIiB9ICovCisrLyogeyBkZy1vcHRpb25zICItTzMgLWRwIC1tYXZ4IC1tYXZ4MjU2LXNw bGl0LXVuYWxpZ25lZC1zdG9yZSAtZm5vLWNvbW1vbiIgfSAqLworIAorICNkZWZpbmUgTiAxMDI0 CisgCistLS0gZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvYXZ4MjU2LXVuYWxpZ25lZC1z dG9yZS0zLmMJKHJldmlzaW9uIDE5OTg5NykKKysrKyBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQv aTM4Ni9hdngyNTYtdW5hbGlnbmVkLXN0b3JlLTMuYwkocmV2aXNpb24gMTk5ODk4KQorQEAgLTEs NSArMSw1IEBACisgLyogeyBkZy1kbyBjb21waWxlIH0gKi8KKy0vKiB7IGRnLW9wdGlvbnMgIi1P MyAtZHAgLW1hdnggLW1hdngyNTYtc3BsaXQtdW5hbGlnbmVkLXN0b3JlIC1tdHVuZT1nZW5lcmlj IiB9ICovCisrLyogeyBkZy1vcHRpb25zICItTzMgLWRwIC1tYXZ4IC1tYXZ4MjU2LXNwbGl0LXVu YWxpZ25lZC1zdG9yZSAtbXR1bmU9Z2VuZXJpYyAtZm5vLWNvbW1vbiIgfSAqLworIAorICNkZWZp bmUgTiAxMDI0CisgCistLS0gZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvYXZ4MjU2LXVu YWxpZ25lZC1zdG9yZS00LmMJKHJldmlzaW9uIDE5OTg5NykKKysrKyBnY2MvdGVzdHN1aXRlL2dj Yy50YXJnZXQvaTM4Ni9hdngyNTYtdW5hbGlnbmVkLXN0b3JlLTQuYwkocmV2aXNpb24gMTk5ODk4 KQorQEAgLTEsNSArMSw1IEBACisgLyogeyBkZy1kbyBjb21waWxlIH0gKi8KKy0vKiB7IGRnLW9w dGlvbnMgIi1PMyAtZHAgLW1hdnggLW1uby1hdngyNTYtc3BsaXQtdW5hbGlnbmVkLWxvYWQgLW1u by1hdngyNTYtc3BsaXQtdW5hbGlnbmVkLXN0b3JlIiB9ICovCisrLyogeyBkZy1vcHRpb25zICIt TzMgLWRwIC1tYXZ4IC1tbm8tYXZ4MjU2LXNwbGl0LXVuYWxpZ25lZC1sb2FkIC1tbm8tYXZ4MjU2 LXNwbGl0LXVuYWxpZ25lZC1zdG9yZSAtZm5vLWNvbW1vbiIgfSAqLworIAorICNkZWZpbmUgTiAx MDI0CisgCistLS0gZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvcHI1NjU2NC0xLmMJKHJl dmlzaW9uIDApCisrKysgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kzODYvcHI1NjU2NC0xLmMJ KHJldmlzaW9uIDE5OTg5OCkKK0BAIC0wLDAgKzEsMjUgQEAKKysvKiBQUiB0YXJnZXQvNTY1NjQg Ki8KKysvKiB7IGRnLWRvIGNvbXBpbGUgeyB0YXJnZXQgeyBmcGljICYmIGxwNjQgfSB9IH0gKi8K KysvKiB7IGRnLW9wdGlvbnMgIi1PMyAtZnBpYyAtZmR1bXAtdHJlZS1vcHRpbWl6ZWQiIH0gKi8K KysKKytzdHJ1Y3QgUyB7IGxvbmcgYSwgYjsgfSBzID0geyA1LCA2IH07CisrY2hhciB0WzE2XSA9 IHsgNyB9OworKworK2ludAorK2ZvbyAodm9pZCkKKyt7CisrICByZXR1cm4gKChfX1VJTlRQVFJf VFlQRV9fKSAmcykgJiAxNTsKKyt9CisrCisraW50CisrYmFyICh2b2lkKQorK3sKKysgIHJldHVy biAoKF9fVUlOVFBUUl9UWVBFX18pICZ0WzBdKSAmIDE1OworK30KKysKKysvKiB7IGRnLWZpbmFs IHsgc2Nhbi10cmVlLWR1bXAtdGltZXMgIiZzIiAxICJvcHRpbWl6ZWQiIH0gfSAqLworKy8qIHsg ZGctZmluYWwgeyBzY2FuLXRyZWUtZHVtcC10aW1lcyAiJnQiIDAgIm9wdGltaXplZCIgfSB9ICov CisrLyogeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICJyZXR1cm4gMCIgMSAib3B0 aW1pemVkIiB9IH0gKi8KKysvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXIgIi5hbGlnblxb IFx0XSoxNlxbXjpdKlxbXG5ccl1zOiIgeyB0YXJnZXQgeyAqLSotbGludXgqIH0gfSB9IH0gKi8K KysvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXIgIi5hbGlnblxbIFx0XSoxNlxbXjpdKlxb XG5ccl10OiIgeyB0YXJnZXQgeyAqLSotbGludXgqIH0gfSB9IH0gKi8KKysvKiB7IGRnLWZpbmFs IHsgY2xlYW51cC10cmVlLWR1bXAgIm9wdGltaXplZCIgfSB9ICovCistLS0gZ2NjL3Rlc3RzdWl0 ZS9nY2MudGFyZ2V0L2kzODYvcHI1NjU2NC0yLmMJKHJldmlzaW9uIDApCisrKysgZ2NjL3Rlc3Rz dWl0ZS9nY2MudGFyZ2V0L2kzODYvcHI1NjU2NC0yLmMJKHJldmlzaW9uIDE5OTg5OCkKK0BAIC0w LDAgKzEsMjUgQEAKKysvKiBQUiB0YXJnZXQvNTY1NjQgKi8KKysvKiB7IGRnLWRvIGNvbXBpbGUg eyB0YXJnZXQgeyAqLSotbGludXgqICYmIGxwNjQgfSB9IH0gKi8KKysvKiB7IGRnLW9wdGlvbnMg Ii1PMyAtZm5vLXBpYyAtZmR1bXAtdHJlZS1vcHRpbWl6ZWQiIH0gKi8KKysKKytzdHJ1Y3QgUyB7 IGxvbmcgYSwgYjsgfSBzID0geyA1LCA2IH07CisrY2hhciB0WzE2XSA9IHsgNyB9OworKworK2lu dAorK2ZvbyAodm9pZCkKKyt7CisrICByZXR1cm4gKChfX1VJTlRQVFJfVFlQRV9fKSAmcykgJiAx NTsKKyt9CisrCisraW50CisrYmFyICh2b2lkKQorK3sKKysgIHJldHVybiAoKF9fVUlOVFBUUl9U WVBFX18pICZ0WzBdKSAmIDE1OworK30KKysKKysvKiB7IGRnLWZpbmFsIHsgc2Nhbi10cmVlLWR1 bXAtdGltZXMgIiZzIiAwICJvcHRpbWl6ZWQiIH0gfSAqLworKy8qIHsgZGctZmluYWwgeyBzY2Fu LXRyZWUtZHVtcC10aW1lcyAiJnQiIDAgIm9wdGltaXplZCIgfSB9ICovCisrLyogeyBkZy1maW5h bCB7IHNjYW4tdHJlZS1kdW1wLXRpbWVzICJyZXR1cm4gMCIgMiAib3B0aW1pemVkIiB9IH0gKi8K KysvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXIgIi5hbGlnblxbIFx0XSoxNlxbXjpdKlxb XG5ccl1zOiIgeyB0YXJnZXQgeyAqLSotbGludXgqIH0gfSB9IH0gKi8KKysvKiB7IGRnLWZpbmFs IHsgc2Nhbi1hc3NlbWJsZXIgIi5hbGlnblxbIFx0XSoxNlxbXjpdKlxbXG5ccl10OiIgeyB0YXJn ZXQgeyAqLSotbGludXgqIH0gfSB9IH0gKi8KKysvKiB7IGRnLWZpbmFsIHsgY2xlYW51cC10cmVl LWR1bXAgIm9wdGltaXplZCIgfSB9ICovCistLS0gZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0L2kz ODYvcHI1NjU2NC0zLmMJKHJldmlzaW9uIDApCisrKysgZ2NjL3Rlc3RzdWl0ZS9nY2MudGFyZ2V0 L2kzODYvcHI1NjU2NC0zLmMJKHJldmlzaW9uIDE5OTg5OCkKK0BAIC0wLDAgKzEsMjggQEAKKysv KiBQUiB0YXJnZXQvNTY1NjQgKi8KKysvKiB7IGRnLWRvIGNvbXBpbGUgeyB0YXJnZXQgeyBmcGlj ICYmIGxwNjQgfSB9IH0gKi8KKysvKiB7IGRnLW9wdGlvbnMgIi1PMyAtZnBpYyAtZmR1bXAtdHJl ZS1vcHRpbWl6ZWQiIH0gKi8KKysKKytfX3RocmVhZCBzdHJ1Y3QgUyB7IGxvbmcgYSwgYjsgfSBz ID0geyA1LCA2IH07CisrX190aHJlYWQgY2hhciB0WzE2XSA9IHsgNyB9OworKworK2ludAorK2Zv byAodm9pZCkKKyt7CisrICByZXR1cm4gKChfX1VJTlRQVFJfVFlQRV9fKSAmcykgJiAxNTsKKyt9 CisrCisrLyogRm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IHdlIGRvbid0IGFzc3VtZSB0aGF0 IHQgbXVzdAorKyAgIGJlIGFsaWduZWQgdG8gMTYgYnl0ZXMsIGJ1dCBhbGlnbiBpdCBhbnl3YXku ICAqLworKworK2ludAorK2JhciAodm9pZCkKKyt7CisrICByZXR1cm4gKChfX1VJTlRQVFJfVFlQ RV9fKSAmdFswXSkgJiAxNTsKKyt9CisrCisrLyogeyBkZy1maW5hbCB7IHNjYW4tdHJlZS1kdW1w LXRpbWVzICImcyIgMSAib3B0aW1pemVkIiB9IH0gKi8KKysvKiB7IGRnLWZpbmFsIHsgc2Nhbi10 cmVlLWR1bXAtdGltZXMgIiZ0IiAxICJvcHRpbWl6ZWQiIH0gfSAqLworKy8qIHsgZGctZmluYWwg eyBzY2FuLXRyZWUtZHVtcC10aW1lcyAicmV0dXJuIDAiIDAgIm9wdGltaXplZCIgfSB9ICovCisr LyogeyBkZy1maW5hbCB7IHNjYW4tYXNzZW1ibGVyLW5vdCAiLmFsaWduXFsgXHRdKjE2XFteOl0q XFtcblxyXXM6IiB7IHRhcmdldCB7ICotKi1saW51eCogfSB9IH0gfSAqLworKy8qIHsgZGctZmlu YWwgeyBzY2FuLWFzc2VtYmxlciAiLmFsaWduXFsgXHRdKjE2XFteOl0qXFtcblxyXXQ6IiB7IHRh cmdldCB7ICotKi1saW51eCogfSB9IH0gfSAqLworKy8qIHsgZGctZmluYWwgeyBjbGVhbnVwLXRy ZWUtZHVtcCAib3B0aW1pemVkIiB9IH0gKi8KKy0tLSBnY2MvdGVzdHN1aXRlL2djYy50YXJnZXQv aTM4Ni9wcjU2NTY0LTQuYwkocmV2aXNpb24gMCkKKysrKyBnY2MvdGVzdHN1aXRlL2djYy50YXJn ZXQvaTM4Ni9wcjU2NTY0LTQuYwkocmV2aXNpb24gMTk5ODk4KQorQEAgLTAsMCArMSwyMiBAQAor Ky8qIFBSIHRhcmdldC81NjU2NCAqLworKy8qIHsgZGctZG8gY29tcGlsZSB7IHRhcmdldCB7ICot Ki1saW51eCogJiYgbHA2NCB9IH0gfSAqLworKy8qIHsgZGctb3B0aW9ucyAiLU8zIC1mbm8tcGlj IC1mZHVtcC10cmVlLW9wdGltaXplZCIgfSAqLworKworK19fdGhyZWFkIHN0cnVjdCBTIHsgbG9u ZyBhLCBiOyB9IHMgPSB7IDUsIDYgfTsKKytfX3RocmVhZCBjaGFyIHRbMTZdID0geyA3IH07Cisr CisraW50CisrZm9vICh2b2lkKQorK3sKKysgIHJldHVybiAoKF9fVUlOVFBUUl9UWVBFX18pICZz KSAmIDE1OworK30KKysKKytpbnQKKytiYXIgKHZvaWQpCisreworKyAgcmV0dXJuICgoX19VSU5U UFRSX1RZUEVfXykgJnRbMF0pICYgMTU7CisrfQorKworKy8qIHsgZGctZmluYWwgeyBzY2FuLWFz c2VtYmxlci1ub3QgIi5hbGlnblxbIFx0XSoxNlxbXjpdKlxbXG5ccl1zOiIgeyB0YXJnZXQgeyAq LSotbGludXgqIH0gfSB9IH0gKi8KKysvKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXIgIi5h bGlnblxbIFx0XSoxNlxbXjpdKlxbXG5ccl10OiIgeyB0YXJnZXQgeyAqLSotbGludXgqIH0gfSB9 IH0gKi8KKysvKiB7IGRnLWZpbmFsIHsgY2xlYW51cC10cmVlLWR1bXAgIm9wdGltaXplZCIgfSB9 ICovCistLS0gZ2NjL3Rlc3RzdWl0ZS9nY2MuZGcvdmVjdC9jb3N0bW9kZWwvaTM4Ni9jb3N0bW9k ZWwtdmVjdC0zMS5jCShyZXZpc2lvbiAxOTk4OTcpCisrKysgZ2NjL3Rlc3RzdWl0ZS9nY2MuZGcv dmVjdC9jb3N0bW9kZWwvaTM4Ni9jb3N0bW9kZWwtdmVjdC0zMS5jCShyZXZpc2lvbiAxOTk4OTgp CitAQCAtMTgsNyArMTgsNyBAQCBzdHJ1Y3Qgc3sKKyAgIHN0cnVjdCB0IGU7ICAgLyogdW5hbGln bmVkIChvZmZzZXQgMk4rNE4rNCBCKSAqLworIH07CisgIAorLXN0cnVjdCBzIHRtcDsKKytzdHJ1 Y3QgcyB0bXAgPSB7IDEgfTsKKyAKKyBpbnQgbWFpbjEgKCkKKyB7ICAKKy0tLSBnY2MvdGVzdHN1 aXRlL2djYy5kZy92ZWN0L2Nvc3Rtb2RlbC94ODZfNjQvY29zdG1vZGVsLXZlY3QtMzEuYwkocmV2 aXNpb24gMTk5ODk3KQorKysrIGdjYy90ZXN0c3VpdGUvZ2NjLmRnL3ZlY3QvY29zdG1vZGVsL3g4 Nl82NC9jb3N0bW9kZWwtdmVjdC0zMS5jCShyZXZpc2lvbiAxOTk4OTgpCitAQCAtMTgsNyArMTgs NyBAQCBzdHJ1Y3Qgc3sKKyAgIHN0cnVjdCB0IGU7ICAgLyogdW5hbGlnbmVkIChvZmZzZXQgMk4r NE4rNCBCKSAqLworIH07CisgIAorLXN0cnVjdCBzIHRtcDsKKytzdHJ1Y3QgcyB0bXAgPSB7IDEg fTsKKyAKKyBpbnQgbWFpbjEgKCkKKyB7ICAKCmRpZmYgLS1naXQgYS9nY2M0OC1wcjU3NTM3LnBh dGNoIGIvZ2NjNDgtcHI1NzUzNy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw MDAwLi40YzIyNzE0Ci0tLSAvZGV2L251bGwKKysrIGIvZ2NjNDgtcHI1NzUzNy5wYXRjaApAQCAt MCwwICsxLDIwIEBACisyMDEzLTA2LTEyICBKYWt1YiBKZWxpbmVrICA8amFrdWJAcmVkaGF0LmNv bT4KKworCVBSIHRyZWUtb3B0aW1pemF0aW9uLzU3NTM3CisJKiB0cmVlLXZlY3QtcGF0dGVybnMu YyAodmVjdF9yZWNvZ193aWRlbl9tdWx0X3BhdHRlcm4pOiBJZgorCXZlY3RfaGFuZGxlX3dpZGVu X29wX2J5X2NvbnN0LCBjb252ZXJ0IG9wcm5kMSB0byBoYWxmX3R5cGUxLgorCistLS0gZ2NjL3Ry ZWUtdmVjdC1wYXR0ZXJucy5jLmpqCTIwMTMtMDUtMTcgMTA6NTM6MTAuMDAwMDAwMDAwICswMjAw CisrKysgZ2NjL3RyZWUtdmVjdC1wYXR0ZXJucy5jCTIwMTMtMDYtMTIgMDk6NDk6MzAuMTUxODU0 MjcwICswMjAwCitAQCAtNjQwLDcgKzY0MCwxMCBAQCB2ZWN0X3JlY29nX3dpZGVuX211bHRfcGF0 dGVybiAodmVjPGdpbXBsCisgICAgICAgICAgICYmIHZlY3RfaGFuZGxlX3dpZGVuX29wX2J5X2Nv bnN0IChsYXN0X3N0bXQsIE1VTFRfRVhQUiwgb3BybmQxLAorIAkJICAgICAgICAgICAgICAgICAg ICAgICAgICAgICZvcHJuZDAsIHN0bXRzLCB0eXBlLAorIAkJCQkJICAgICZoYWxmX3R5cGUwLCBk ZWZfc3RtdDApKQorLSAgICAgICAgaGFsZl90eXBlMSA9IGhhbGZfdHlwZTA7CisrCXsKKysJICBo YWxmX3R5cGUxID0gaGFsZl90eXBlMDsKKysJICBvcHJuZDEgPSBmb2xkX2NvbnZlcnQgKGhhbGZf dHlwZTEsIG9wcm5kMSk7CisrCX0KKyAgICAgICBlbHNlCisgICAgICAgICByZXR1cm4gTlVMTDsK KyAgICAgfQoKZGlmZiAtLWdpdCBhL3NvdXJjZXMgYi9zb3VyY2VzCmluZGV4IDBjZjEwMTguLmVl M2IwMGIgMTAwNjQ0Ci0tLSBhL3NvdXJjZXMKKysrIGIvc291cmNlcwpAQCAtMSw0ICsxLDQgQEAK IGJlNzhhNDdiZDgyNTIzMjUwZWIzZTkxNjQ2ZGI1YjNkICBjbG9vZy0wLjE4LjAudGFyLmd6CiAy NjU5ZjA5YzJlNDNlZjhiN2Q0NDA2MzIxNzUzZjFiMiAgZmFzdGphci0wLjk3LnRhci5negotMTk2 ODFmNzUwNjUwODdkNjA1ZTNmNjM2NjljOTBjMzcgIGdjYy00LjguMS0yMDEzMDYwMy50YXIuYnoy Cis1Y2IyYjNkZmUyODcyYWQ0ZGZhMjRmNjE5NTU3MjhhZCAgZ2NjLTQuOC4xLTIwMTMwNjEyLnRh ci5iejIKIGJjZTE1ODYzODRkODYzNWE3NmQyZjAxN2ZiMDY3Y2QyICBpc2wtMC4xMS4xLnRhci5i ejIK