dHJlZSA4MzdkMTY5MDMxY2Q1NTZjZjFmOGZjMThiMDk2NjMyNGQ3NzdiMjUxCnBhcmVudCA3NzdiZTg2MWM1Nzk4MDcyYjU2MWQyMWMwMzI5NmMwZmE4MjI5NWQ2CmF1dGhvciBDeXJpbCBCb2506SA8Y3lyaWwuYm9udGVAZnJlZS5mcj4gMTQxNzU1MTY5NiArMDEwMApjb21taXR0ZXIgV2lsbHkgVGFycmVhdSA8d0Axd3QuZXU+IDE0MTc1NTMwNzMgKzAxMDAKZW5jb2RpbmcgbGF0aW4xCgpNRURJVU06IGNoZWNrczogcHJvdmlkZSBlbnZpcm9ubWVudCB2YXJpYWJsZXMgdG8gdGhlIGV4dGVybmFsIGNoZWNrcwoKVGhlIGV4dGVybmFsIGNvbW1hbmQgYWNjZXB0ZWQgNCBhcmd1bWVudHMsIHNvbWUgd2l0aCB0aGUgdmFsdWUgIk5PVF9VU0VEIiB3aGVuCm5vdCBhcHBsaWNhYmxlLiBJbiBvcmRlciB0byBtYWtlIHRoZSBleGVybmFsIGNvbW1hbmQgbW9yZSBnZW5lcmljLCB0aGlzIHBhdGNoCmFsc28gcHJvdmlkZXMgdGhlIHZhbHVlcyBpbiBlbnZpcm9ubWVudCB2YXJpYWJsZXMuIFRoaXMgYWxsb3dzIHRvIHByb3ZpZGUgbW9yZQppbmZvcm1hdGlvbi4KCkN1cnJlbnRseSwgdGhlIHN1cHBvcnRlZCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgYXJlIDoKClBBVEgsIGFzIHByZXZpb3VzbHkgcHJvdmlkZWQuCgpIQVBST1hZX1BST1hZX05BTUUsIHRoZSBiYWNrZW5kIG5hbWUKSEFQUk9YWV9QUk9YWV9JRCwgdGhlIGJhY2tlbmQgaWQKSEFQUk9YWV9QUk9YWV9BRERSLCB0aGUgZmlyc3QgYmluZCBhZGRyZXNzIGlmIGF2YWlsYWJsZSAob3IgZW1wdHkpCkhBUFJPWFlfUFJPWFlfUE9SVCwgdGhlIGZpcnN0IGJpbmQgcG9ydCBpZiBhdmFpbGFibGUgKG9yIGVtcHR5KQoKSEFQUk9YWV9TRVJWRVJfTkFNRSwgdGhlIHNlcnZlciBuYW1lCkhBUFJPWFlfU0VSVkVSX0lELCB0aGUgc2VydmVyIGlkCkhBUFJPWFlfU0VSVkVSX0FERFIsIHRoZSBzZXJ2ZXIgYWRkcmVzcwpIQVBST1hZX1NFUlZFUl9QT1JULCB0aGUgc2VydmVyIHBvcnQgaWYgYXZhaWxhYmxlIChvciBlbXB0eSkKSEFQUk9YWV9TRVJWRVJfTUFYQ09OTiwgdGhlIHNlcnZlciBtYXggY29ubmVjdGlvbnMKSEFQUk9YWV9TRVJWRVJfQ1VSQ09OTiwgdGhlIGN1cnJlbnQgbnVtYmVyIG9mIGNvbm5lY3Rpb25zIG9uIHRoZSBzZXJ2ZXIK