dHJlZSBiZmJmNDMxMGIzZWVhNWYzNTk2NGFhOWIxN2NlNTQ5ZjljM2RjOTMzCnBhcmVudCA2OGE4OTdiMmJlYjM2NmM3NzdlNTkzZWFmMDIyNDQ3MjI4YWMzODA4CmF1dGhvciBDeXJpbCBCb2506SA8Y3lyaWwuYm9udGVAZnJlZS5mcj4gMTI2MDEwMzQyMiArMDEwMApjb21taXR0ZXIgV2lsbHkgVGFycmVhdSA8d0Axd3QuZXU+IDEyNjAxMDM1NzQgKzAxMDAKZW5jb2RpbmcgbGF0aW4xCgpbQlVHXSBDb25maWd1cmF0aW9uIHBhcnNlciBidWcgd2hlbiBlc2NhcGluZyBjaGFyYWN0ZXJzCgpUb2RheSBJIHdhcyB0ZXN0aW5nIGhlYWRlcnMgbWFuaXB1bGF0aW9uIGJ1dCBJIG1ldCBhIGJ1ZyB3aXRoIG15IGZpcnN0IHRlc3QuClRvIHJlcHJvZHVjZSBpdCwgYWRkIGZvciBleGFtcGxlIHRoaXMgbGluZSA6CgogICAgcnNwYWRkIENhY2hlLUNvbnRyb2w6XCBtYXgtYWdlPTE1MDAKCkNoZWNrIHRoZSByZXNwb25zZSBoZWFkZXIsIGl0IHdpbGwgcHJvdmlkZSA6CgpDYWNoZS1Db250cm9sOiBtYXgtYWdlPTE1MDAwIDw9IHRoZSBsYXN0IGNoYXJhY3RlciBpcyBkdXBsaWNhdGVkCgpUaGlzIG9ubHkgaGFwcGVucyB3aGVuIHdlIHVzZSBiYWNrc2xhc2hlcyBvbiB0aGUgbGFzdCBsaW5lIG9mIHRoZQpjb25maWd1cmF0aW9uIGZpbGUsIHdpdGhvdXQgcmV0dXJuaW5nIHRvIHRoZSBsaW5lLgoKQWxzbyBpZiB0aGUgbGFzdCBsaW5lIGlzIGxpa2UgOgogIHJzcGFkZCBDYWNoZS1Db250cm9sOlwgbWF4LWFnZT0xNTAwXAoKdGhlIGxhc3QgYmFja3NsYXNoIGNhdXNlcyBhIHNlZ2ZhdWx0LgoKVGhpcyBpcyBub3QgZHVlIHRvIHJzcGFkZCBidXQgdG8gYSBtb3JlIGdlbmVyYWwgYnVnIGluIGNmZ3BhcnNlLmMgOgouLi4KaWYgKHNraXApIHsKICAgICAgICBtZW1tb3ZlKGxpbmUgKyAxLCBsaW5lICsgMSArIHNraXAsIGVuZCAtIChsaW5lICsgc2tpcCArIDEpKTsKICAgICAgICBlbmQgLT0gc2tpcDsKfQouLi4KCnNob3VsZCBiZSA6Ci4uLgppZiAoc2tpcCkgewogICAgICAgIG1lbW1vdmUobGluZSArIDEsIGxpbmUgKyAxICsgc2tpcCwgZW5kIC0gKGxpbmUgKyBza2lwKSk7CiAgICAgICAgZW5kIC09IHNraXA7Cn0KLi4uCgpJJ3ZlIHJlcHJvZHVjZWQgaXQgd2l0aCBoYXByb3h5IDEuMy4yMiBhbmQgdGhlIGxhc3QgMS40IHNuYXBzaG90Lgo=