ZGlmZiAtLWdpdCBhL0NIQU5HRVMgYi9DSEFOR0VTCmluZGV4IDI1NTc1MzAuLmRjZjdiNDggMTAwNjQ0Ci0tLSBhL0NIQU5HRVMKKysrIGIvQ0hBTkdFUwpAQCAtNiw2ICs2LDE0IEBACiAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDaGFuZ2Vsb2cKIAorVmVyc2lvbiA3LjE2LjQgKDEwIEp1bHkgMjAwNykKKworRGFuaWVsIFMgKDEwIEp1bHkgMjAwNykKKy0gS2VlcyBDb29rIG5vdGlmaWVkIHVzIGFib3V0IGEgc2VjdXJpdHkgZmxhdworICAoaHR0cDovL2N1cmwuaGF4eC5zZS9kb2NzL2Fkdl8yMDA3MDcxMC5odG1sKSBpbiB3aGljaCBsaWJjdXJsIGZhaWxlZCB0bworICBwcm9wZXJseSByZWplY3Qgc29tZSBvdXRkYXRlZCBvciBub3QgeWV0IHZhbGlkIHNlcnZlciBjZXJ0aWZpY2F0ZXMgd2hlbgorICBidWlsdCB3aXRoIEdudVRMUy4gS2VlcyBhbHNvIHByb3ZpZGVkIHRoZSBwYXRjaC4KKwogSmFtZXMgSCAoNSBKdWx5IDIwMDcpCiAtIEdhdnJpZSBQaGlsaXBzb24gcHJvdmlkZWQgYSBwYXRjaCB0aGF0IHdpbGwgdXNlIGEgbW9yZSBzcGVjaWZpYyBlcnJvcgogICBtZXNzYWdlIGZvciBhbiBzY3A6Ly8gdXBsb2FkIGZhaWx1cmUuICBJZiBsaWJzc2gyIGhhcyBoaXMgbWF0Y2hpbmcKZGlmZiAtLWdpdCBhL1JFTEVBU0UtTk9URVMgYi9SRUxFQVNFLU5PVEVTCmluZGV4IDk4YjQ3OWUuLmFjYjQ0MjUgMTAwNjQ0Ci0tLSBhL1JFTEVBU0UtTk9URVMKKysrIGIvUkVMRUFTRS1OT1RFUwpAQCAtMjIsNiArMjIsOSBAQAogIG8gZml4ZWQgdGhlIDEwLWF0LWEtdGltZS5jIGV4YW1wbGUKICBvIEZUUCBvdmVyIFNPQ0tTIHByb3h5CiAgbyBpbXByb3ZlZCBlcnJvciBtZXNzYWdlcyBvbiBTQ1AgdXBsb2FkIGZhaWx1cmVzCisgbyBzZWN1cml0eSBmbGF3IChodHRwOi8vY3VybC5oYXh4LnNlL2RvY3MvYWR2XzIwMDcwNzEwLmh0bWwpIGluIHdoaWNoIGxpYmN1cmwKKyAgIGZhaWxlZCB0byBwcm9wZXJseSByZWplY3Qgc29tZSBvdXRkYXRlZCBvciBub3QgeWV0IHZhbGlkIHNlcnZlciBjZXJ0aWZpY2F0ZXMKKyAgIHdoZW4gYnVpbHQgd2l0aCBHbnVUTFMKIAogVGhpcyByZWxlYXNlIGluY2x1ZGVzIHRoZSBmb2xsb3dpbmcga25vd24gYnVnczoKIApAQCAtMzksNiArNDIsNiBAQAogYWR2aWNlIGZyb20gZnJpZW5kcyBsaWtlIHRoZXNlOgogCiAgUm9iZXJ0IElha29iYXNodmlsaSwgSmFtZXMgSG91c2xleSwgR/xudGVyIEtuYXVmLCBKYW1lcyBCdXJzYSwgU29uZyBNYSwKLSBUaG9tYXMgSi4gTW9vcmUsIEdhdnJpZSBQaGlsaXBzb24KKyBUaG9tYXMgSi4gTW9vcmUsIEdhdnJpZSBQaGlsaXBzb24sIEtlZXMgQ29vawogCiAgICAgICAgIFRoYW5rcyEgKGFuZCBzb3JyeSBpZiBJIGZvcmdvdCB0byBtZW50aW9uIHNvbWVvbmUpCmRpZmYgLS1naXQgYS9saWIvZ3Rscy5jIGIvbGliL2d0bHMuYwppbmRleCAwZTEwMGM2Li5hODQxMjhlIDEwMDY0NAotLS0gYS9saWIvZ3Rscy5jCisrKyBiL2xpYi9ndGxzLmMKQEAgLTQyMCw2ICs0MjAsNDMgQEAKICAgZWxzZQogICAgIGluZm9mKGRhdGEsICJcdCBjb21tb24gbmFtZTogJXMgKG1hdGNoZWQpXG4iLCBjZXJ0YnVmKTsKIAorICAvKiBDaGVjayBmb3IgdGltZS1iYXNlZCB2YWxpZGl0eSAqLworICBjbG9jayA9IGdudXRsc194NTA5X2NydF9nZXRfZXhwaXJhdGlvbl90aW1lKHg1MDlfY2VydCk7CisKKyAgaWYoY2xvY2sgPT0gKHRpbWVfdCktMSkgeworICAgIGZhaWxmKGRhdGEsICJzZXJ2ZXIgY2VydCBleHBpcmF0aW9uIGRhdGUgdmVyaWZ5IGZhaWxlZCIpOworICAgIHJldHVybiBDVVJMRV9TU0xfQ09OTkVDVF9FUlJPUjsKKyAgfQorCisgIGlmKGNsb2NrIDwgdGltZShOVUxMKSkgeworICAgIGlmIChkYXRhLT5zZXQuc3NsLnZlcmlmeXBlZXIpIHsKKyAgICAgIGZhaWxmKGRhdGEsICJzZXJ2ZXIgY2VydGlmaWNhdGUgZXhwaXJhdGlvbiBkYXRlIGhhcyBwYXNzZWQuIik7CisgICAgICByZXR1cm4gQ1VSTEVfU1NMX1BFRVJfQ0VSVElGSUNBVEU7CisgICAgfQorICAgIGVsc2UKKyAgICAgIGluZm9mKGRhdGEsICJcdCBzZXJ2ZXIgY2VydGlmaWNhdGUgZXhwaXJhdGlvbiBkYXRlIEZBSUxFRFxuIik7CisgIH0KKyAgZWxzZQorICAgIGluZm9mKGRhdGEsICJcdCBzZXJ2ZXIgY2VydGlmaWNhdGUgZXhwaXJhdGlvbiBkYXRlIE9LXG4iKTsKKworICBjbG9jayA9IGdudXRsc194NTA5X2NydF9nZXRfYWN0aXZhdGlvbl90aW1lKHg1MDlfY2VydCk7CisKKyAgaWYoY2xvY2sgPT0gKHRpbWVfdCktMSkgeworICAgIGZhaWxmKGRhdGEsICJzZXJ2ZXIgY2VydCBhY3RpdmF0aW9uIGRhdGUgdmVyaWZ5IGZhaWxlZCIpOworICAgIHJldHVybiBDVVJMRV9TU0xfQ09OTkVDVF9FUlJPUjsKKyAgfQorCisgIGlmKGNsb2NrID4gdGltZShOVUxMKSkgeworICAgIGlmIChkYXRhLT5zZXQuc3NsLnZlcmlmeXBlZXIpIHsKKyAgICAgIGZhaWxmKGRhdGEsICJzZXJ2ZXIgY2VydGlmaWNhdGUgbm90IGFjdGl2YXRlZCB5ZXQuIik7CisgICAgICByZXR1cm4gQ1VSTEVfU1NMX1BFRVJfQ0VSVElGSUNBVEU7CisgICAgfQorICAgIGVsc2UKKyAgICAgIGluZm9mKGRhdGEsICJcdCBzZXJ2ZXIgY2VydGlmaWNhdGUgYWN0aXZhdGlvbiBkYXRlIEZBSUxFRFxuIik7CisgIH0KKyAgZWxzZQorICAgIGluZm9mKGRhdGEsICJcdCBzZXJ2ZXIgY2VydGlmaWNhdGUgYWN0aXZhdGlvbiBkYXRlIE9LXG4iKTsKKwogICAvKiBTaG93OgogCiAgIC0gY2lwaGVycyB1c2VkCg==