ZGlmZiAtLWdpdCBhL01hYy9CdWlsZC9QeXRob24ucHJqIGIvTWFjL0J1aWxkL1B5dGhvbi5wcmoKaW5kZXggMmM0ZmY3Mi4uMjQwN2YzYSAxMDA2NDQKLS0tIGEvTWFjL0J1aWxkL1B5dGhvbi5wcmoKKysrIGIvTWFjL0J1aWxkL1B5dGhvbi5wcmoKQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvTWFjL0J1aWxkL1B5dGhvbkFwcGxldC5wcmogYi9NYWMvQnVpbGQvUHl0aG9uQXBwbGV0LnByagppbmRleCA3MzVjOWY0Li5jMDE2Nzk4IDEwMDY0NAotLS0gYS9NYWMvQnVpbGQvUHl0aG9uQXBwbGV0LnByagorKysgYi9NYWMvQnVpbGQvUHl0aG9uQXBwbGV0LnByagpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9NYWMvQnVpbGQvUHl0aG9uQ29yZS5wcmogYi9NYWMvQnVpbGQvUHl0aG9uQ29yZS5wcmoKaW5kZXggNDc0OTc2OC4uZTJiYTMwNiAxMDA2NDQKLS0tIGEvTWFjL0J1aWxkL1B5dGhvbkNvcmUucHJqCisrKyBiL01hYy9CdWlsZC9QeXRob25Db3JlLnByagpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9NYWMvQnVpbGQvUHl0aG9uQ29yZUNGTTY4Sy5wcmogYi9NYWMvQnVpbGQvUHl0aG9uQ29yZUNGTTY4Sy5wcmoKaW5kZXggMzQwMmNjNy4uMjMwMmI3ZiAxMDA2NDQKLS0tIGEvTWFjL0J1aWxkL1B5dGhvbkNvcmVDRk02OEsucHJqCisrKyBiL01hYy9CdWlsZC9QeXRob25Db3JlQ0ZNNjhLLnByagpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9NYWMvQnVpbGQvUHl0aG9uQ29yZVBQQy5wcmogYi9NYWMvQnVpbGQvUHl0aG9uQ29yZVBQQy5wcmoKaW5kZXggOTUxNWViMy4uZTY4NTNhNiAxMDA2NDQKLS0tIGEvTWFjL0J1aWxkL1B5dGhvbkNvcmVQUEMucHJqCisrKyBiL01hYy9CdWlsZC9QeXRob25Db3JlUFBDLnByagpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9NYWMvQnVpbGQvUHl0aG9uU3RhbmRTbWFsbC5wcmogYi9NYWMvQnVpbGQvUHl0aG9uU3RhbmRTbWFsbC5wcmoKaW5kZXggMDA5ZTg5Ny4uNDY3NDBlOCAxMDA2NDQKLS0tIGEvTWFjL0J1aWxkL1B5dGhvblN0YW5kU21hbGwucHJqCisrKyBiL01hYy9CdWlsZC9QeXRob25TdGFuZFNtYWxsLnByagpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9NYWMvQnVpbGQvUHl0aG9uU3RhbmRhbG9uZS5wcmogYi9NYWMvQnVpbGQvUHl0aG9uU3RhbmRhbG9uZS5wcmoKaW5kZXggZmU2MDljYS4uMWU5NWJhNiAxMDA2NDQKLS0tIGEvTWFjL0J1aWxkL1B5dGhvblN0YW5kYWxvbmUucHJqCisrKyBiL01hYy9CdWlsZC9QeXRob25TdGFuZGFsb25lLnByagpCaW5hcnkgZmlsZXMgZGlmZmVyCmRpZmYgLS1naXQgYS9NYWMvUmVzb3VyY2VzL2J1bmRsZS5yc3JjIGIvTWFjL1Jlc291cmNlcy9idW5kbGUucnNyYwppbmRleCA2MDA2MzIxLi40M2E0NzAyIDEwMDY0NAotLS0gYS9NYWMvUmVzb3VyY2VzL2J1bmRsZS5yc3JjCisrKyBiL01hYy9SZXNvdXJjZXMvYnVuZGxlLnJzcmMKQmluYXJ5IGZpbGVzIGRpZmZlcgpkaWZmIC0tZ2l0IGEvTWFjL1Jlc291cmNlcy9weXRob25wYXRoLnIgYi9NYWMvUmVzb3VyY2VzL3B5dGhvbnBhdGgucgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yODhjNWI0Ci0tLSAvZGV2L251bGwKKysrIGIvTWFjL1Jlc291cmNlcy9weXRob25wYXRoLnIKQEAgLTAsMCArMSw4OSBAQAorLyoKKyoqIFJlc291cmNlcyBmb3IgdGhlIHN5cy5wYXRoIGluaXRpYWxpemF0aW9uLCB0aGUgUHl0aG9uIG9wdGlvbnMKKyoqIGFuZCB0aGUgcHJlZmVyZW5jZSBmaWxlbmFtZQorKi8KKyNpbmNsdWRlICJUeXBlcy5yIgorI2luY2x1ZGUgInBhdGNobGV2ZWwuaCIKKyNpbmNsdWRlICJweXRob25yZXNvdXJjZXMuaCIKKworLyogQSBmZXcgcmVzb3VyY2UgdHlwZSBkZWNsYXJhdGlvbnMgKi8KKwordHlwZSAnUG9wdCcgeworCWxpdGVyYWwgYnl0ZSB2ZXJzaW9uID0gUE9QVF9WRVJTSU9OX0NVUlJFTlQ7CisJYnl0ZSBub0luc3BlY3QgPSAwLCBpbnNwZWN0ID0gMTsKKwlieXRlIG5vVmVyYm9zZSA9IDAsIHZlcmJvc2UgPSAxOworCWJ5dGUgbm9PcHRpbWl6ZSA9IDAsIG9wdGltaXplID0gMTsKKwlieXRlIG5vVW5idWZmZXJlZCA9IDAsIHVuYnVmZmVyZWQgPSAxOworCWJ5dGUgbm9EZWJ1Z1BhcnNlciA9IDAsIGRlYnVnUGFyc2VyID0gMTsKKwlieXRlIGNsb3NlT25Ob3JtYWxFeGl0ID0gMCwgbm9DbG9zZU9uTm9ybWFsRXhpdCA9IDE7CisJYnl0ZSBjbG9zZU9uRXJyb3JFeGl0ID0gMCwgbm9DbG9zZU9uRXJyb3JFeGl0ID0gMTsKKwlieXRlIGludGVyYWN0aXZlT3B0aW9ucyA9IDAsIG5vSW50ZXJhY3RpdmVPcHRpb25zID0gMTsKKwlieXRlIGFyZ2NBcmd2ID0gMCwgbm9BcmdjQXJndiA9IDE7CisJYnl0ZSBuZXdTdGFuZGFyZEV4Y2VwdGlvbnMgPSAwLCBvbGRTdGFuZGFyZEV4Y2VwdGlvbnMgPSAxOworCWJ5dGUgc2l0ZVB5dGhvbiA9IDAsIG5vU2l0ZVB5dGhvbiA9IDE7Cit9OworCit0eXBlICdUTVBMJyB7CisJd2lkZSBhcnJheSB7CisJCXBzdHJpbmc7CisJCWxpdGVyYWwgbG9uZ2ludDsKKwl9OworfTsKKworLyogVGhlIHJlc291cmNlcyB0aGVtc2VsdmVzICovCisKKy8qIFBvcHQgdGVtcGxhdGUsIGZvciBlZGl0aW5nIHRoZW0gaW4gUmVzRWRpdCAqLworCityZXNvdXJjZSAnVE1QTCcgKFBZVEhPTk9QVElPTlNfSUQsICJQb3B0IikgeworCXsKKwkJInByZWZlcmVuY2UgdmVyc2lvbiIsCQkJJ0RCWVQnLAorCQkiSW50ZXJhY3RpdmUgYWZ0ZXIgc2NyaXB0IiwJCSdEQllUJywKKwkJIlZlcmJvc2UgaW1wb3J0IiwJCQkJJ0RCWVQnLAorCQkiT3B0aW1pemUiLAkJCQkJCSdEQllUJywKKwkJIlVuYnVmZmVyZWQgc3RkaW8iLAkJCQknREJZVCcsCisJCSJEZWJ1ZyBwYXJzZXIiLAkJCQkJJ0RCWVQnLAorCQkiS2VlcCB3aW5kb3cgb24gbm9ybWFsIGV4aXQiLAknREJZVCcsCisJCSJLZWVwIHdpbmRvdyBvbiBlcnJvciBleGl0IiwJJ0RCWVQnLAorCQkiTm8gaW50ZXJhY3RpdmUgb3B0aW9uIGRpYWxvZyIsCSdEQllUJywKKwkJIk5vIGFyZ2MvYXJndiBlbXVsYXRpb24iLAkJJ0RCWVQnLAorCQkiT2xkIHN0YW5kYXJkIGV4Y2VwdGlvbnMiLAkJJ0RCWVQnLAorCQkiTm8gc2l0ZS1weXRob24gc3VwcG9ydCIsCQknREJZVCcsCisJfQorfTsKKworLyogVGhlIGRlZmF1bHQtZGVmYXVsdCBQeXRob24gb3B0aW9ucyAqLworCityZXNvdXJjZSAnUG9wdCcgKFBZVEhPTk9QVElPTlNfSUQsICJPcHRpb25zIikgeworCVBPUFRfVkVSU0lPTl9DVVJSRU5ULAorCW5vSW5zcGVjdCwKKwlub1ZlcmJvc2UsCisJbm9PcHRpbWl6ZSwKKwlub1VuYnVmZmVyZWQsCisJbm9EZWJ1Z1BhcnNlciwKKwljbG9zZU9uTm9ybWFsRXhpdCwKKwlub0Nsb3NlT25FcnJvckV4aXQsCisJaW50ZXJhY3RpdmVPcHRpb25zLAorCWFyZ2NBcmd2LAorCW5ld1N0YW5kYXJkRXhjZXB0aW9ucywKKwlzaXRlUHl0aG9uLAorfTsKKworLyogVGhlIHN5cy5wYXRoIGluaXRpYWxpemVyICovCisKK3Jlc291cmNlICdTVFIjJyAoUFlUSE9OUEFUSF9JRCwgInN5cy5wYXRoIGluaXRpYWxpemF0aW9uIikgeworCXsKKwkJIiQoUFlUSE9OKSIsCisJCSIkKFBZVEhPTik6TGliIiwKKwkJIiQoUFlUSE9OKTpNYWM6UGx1Z0lucyIsCisJCSIkKFBZVEhPTik6TWFjOkxpYiIsCisJCSIkKFBZVEhPTik6TWFjOkxpYjpsaWItdG9vbGJveCIsCisJCSIkKFBZVEhPTik6TWFjOkxpYjpsaWItc2NyaXB0aW5nIiwKKwkJIiQoUFlUSE9OKTpFeHRlbnNpb25zOmltZzpMaWIiCisJfQorfTsKKworLyogVGhlIHByZWZlcmVuY2VzIGZpbGVuYW1lICovCisKK3Jlc291cmNlICdTVFIgJyAoUFJFRkZJTEVOQU1FX0lELCBQUkVGRklMRU5BTUVfUEFTQ0FMX05BTUUpIHsKKwkkJEZvcm1hdCgiUHl0aG9uICVzIFByZWZlcmVuY2VzIiwgUFlfVkVSU0lPTikKK307CmRpZmYgLS1naXQgYS9NYWMvUmVzb3VyY2VzL3ZlcnNpb24uciBiL01hYy9SZXNvdXJjZXMvdmVyc2lvbi5yCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjRlNTJlNmEKLS0tIC9kZXYvbnVsbAorKysgYi9NYWMvUmVzb3VyY2VzL3ZlcnNpb24ucgpAQCAtMCwwICsxLDMwIEBACisvKgorKiogQ3JlYXRlIHRoZSAndmVycycgdmVyc2lvbiByZXNvdXJjZSBmcm9tIGluZm9ybWF0aW9uIGluIHRoZQorKiogUHl0aG9uIGluY2x1ZGUgZmlsZXMuCisqLworCisjaW5jbHVkZSAiVHlwZXMuciIKKworI2luY2x1ZGUgInBhdGNobGV2ZWwuaCIKKworLyogSW52ZW50IHRoZSBNYWMgdmVyc2lvbiBmcm9tIHRoZSBQeXRob24gdmVyc2lvbiAqLworI2lmIFBZX1JFTEVBU0VfTEVWRUwgPT0gUFlfUkVMRUFTRV9MRVZFTF9BTFBIQQorI2RlZmluZSBWX1JFTEVBU0UgYWxwaGEKKyNlbmRpZgorI2lmIFBZX1JFTEVBU0VfTEVWRUwgPT0gUFlfUkVMRUFTRV9MRVZFTF9CRVRBCisjZGVmaW5lIFZfUkVMRUFTRSBiZXRhCisjZW5kaWYKKyNpZm5kZWYgVl9SRUxFQVNFCisjZGVmaW5lIFZfUkVMRUFTRSBmaW5hbAorI2VuZGlmCisKK3Jlc291cmNlICd2ZXJzJyAoMSkgeworCVBZX01BSk9SX1ZFUlNJT04sCisJKFBZX01JTk9SX1ZFUlNJT048PDQpIHwgKFBZX01JQ1JPX1ZFUlNJT04pLAorCVZfUkVMRUFTRSwKKwlQWV9SRUxFQVNFX1NFUklBTCwKKwkwLAorCVBZX1ZFUlNJT04sCisJJCRGb3JtYXQoIiVzLCCpIFN0aWNodGluZyBNYXRoZW1hdGlzY2ggQ2VudHJ1bSAlcyIsCisJCQlQWV9WRVJTSU9OLCAkJERhdGUpCit9Owo=