MjAwNy0xMi0xNSAgRGF2aWQgRnJpZWRtYW4gIDxkdmRmcmRtbkB1c2Vycy5zZi5uZXQ+CgoJKiBwaG9ib3MqL01ha2VmaWxlLnthbSxpbn0sIHBob2JvcyovYWNsb2NhbC5tNDogQXV0b21ha2UgY2hhbmdlcwoKCSogc2V0dXAtZ2NjLnNoOiBTdXBwb3J0IEFwcGxlIEdDQyBidWlsZCA1NDY1CgoJKiBwYXRjaC1hcHBsZS1nY2MtNTQ2NSwgcGF0Y2gtYnVpbGRfZ2NjLTU0NjUsIHBhdGNoLXRvcGxldi01NDY1OgoJbmV3IGZpbGVzCgoyMDA3LTEyLTAxICBEYXZpZCBGcmllZG1hbiAgPGR2ZGZyZG1uQHVzZXJzLnNmLm5ldD4KCgkqIHBob2Jvcy9jb25maWcvdW5peC54MywgcGhvYm9zL2NvbmZpZy94My5jLCBwaG9ib3MvY29uZmlnL3gzLmgKCXBob2Jvcy9jb25maWcveDMsIHBob2Jvcy9jb25maWcveDNtYWluLmM6IGJldHRlciBkaWFnbm9zdGljcwoJYW5kIGJlaGF2aW9yCgoyMDA3LTExLTI0ICBEYXZpZCBGcmllZG1hbiAgPGR2ZGZyZG1uQHVzZXJzLnNmLm5ldD4KCgkqIHNldHVwLWdjYy5zaDogSWdub3JlIC5zdm4gZGlyZWN0b3JpZXMgd2hlbiBtYWtpbmcgc3ltbGluayB0cmVlcy4KCgkqIGQtYmktYXR0cnMtMzQuaCwgZC1iaS1hdHRycy0zNDEuaCwgZC1iaS1hdHRycy00MCxoLAoJZC1iaS1hdHRycy00MS5oOiBTdXBwb3J0IGF0dHJpYnV0ZXMgb24gZGVjbGFyYXRpb25zIGluCglvdGhlciBtb2R1bGVzLgoKCSogZC1jb2RlZ2VuLmNjIChJUlN0YXRlOjphdHRyaWJ1dGVzKTogU3VwcG9ydCBjb25zdGFudCBkZWNsYXJhdGlvbnMKCWFzIHN0cmluZyBhcmd1bWVudHMuCgoyMDA3LTExLTA4ICBEYXZpZCBGcmllZG1hbiAgPGR2ZGZyZG1uQHVzZXJzLnNmLm5ldD4KCgkqIGQtY3BwbW5nbC5jYzogVXNlIGJhc2UtMzYgaW4gc3Vic3RpdHV0aW9ucy4gIE90aGVyIGZpeGVzLgoKMjAwNy0xMC0xNyAgRGF2aWQgRnJpZWRtYW4gIDxkdmRmcmRtbkB1c2Vycy5zZi5uZXQ+CgoJKiBkLWNwcG1uZ2wuY2M6IE1vcmUgQysrIG1hbmdsaW5nIGZpeGVzIGFuZCBjbGVhbnVwcy4KCjIwMDctMTAtMTYgIERhdmlkIEZyaWVkbWFuICA8ZHZkZnJkbW5AdXNlcnMuc2YubmV0PgoKCSogZC1nbHVlLmNjIChFcXVhbEV4cDo6dG9FbGVtKTogQ29udmVydCByZXN1bHQgdG8gbGliY2FsbAoJdG8gZXhwcmVzc2lvbiB0eXBlLiAoQnVnemlsbGEgMTU3MykKCjIwMDctMTAtMTUgIERhdmlkIEZyaWVkbWFuICA8ZHZkZnJkbW5AdXNlcnMuc2YubmV0PgoKCSogZC1jcHBtbmdsLmNjOiBJbXByb3ZlIEMrKyBtYW5nbGluZy4KCjIwMDctMTAtMTQgIERhdmlkIEZyaWVkbWFuICA8ZHZkZnJkbW5AdXNlcnMuc2YubmV0PgoKCU1lcmdlIERNRCAxLjAyMiwgMi4wMDUKCgkqIGRtZC8uLi4sIGRtZDIvLi4uLCBwaG9ib3MvLi4uLCBwaG9ib3MyLy4uLjogTWVyZ2UuCgoJKiBNYWtlLWxhbmcuaW46IEFkZCBidWlsdGluLmRtZC5vIGFuZCBkLWNwcG1uZ2wubyBmb3IgVjIuCgoJKiBkLWNwcG1uZ2wuY2M6IE5ldyBmaWxlCgoJKiBwaG9ib3Mvc3RkL2MvZGlyZW50LmQsIHBob2Jvcy9zdGQvYy9saW51eC9saW51eC5kOiBVcGRhdGUKCSogcGhvYnMyLy4uLjogc2FtZQoKCSogc3ltYm9sLmgsIGQtZGVjbHMuY2M6IFJlbW92ZSByZWZlcmVuY2VzIHRvIENsYXNzeW0KCgktLS0tCgoJKiBkLWdsdWUuY2MgKENhdEV4cDo6dG9FbGVtKTogTnVsbCBjaGVjay4gKEJ1Z3ppbGxhIDE1ODEpCgoJUmVtb3ZlIGNhcnJpYWdlIHJldHVybnMgZnJvbSBmaWxlcwoKMjAwNy0xMC0xMyAgRGF2aWQgRnJpZWRtYW4gIDxkdmRmcmRtbkB1c2Vycy5zZi5uZXQ+CgoJKiBkLWdsdWUuY2MgKENhdEV4cDo6dG9FbGVtKTogRmxhdHRlbiBtdWx0aXBsZSBDYXRFeHBzIGludG8gYQoJc2luZ2xlIGxpYnJhcnkgY2FsbC4gKEJ1Z3ppbGxhIDE1NTYpCgoJKiBwaG9ib3Mvc3RkL2JveGVyLmQgKGJveCwgYm94QXJyYXkpLCBwaG9ib3MyLy4uLjogRml4IGZvcgoJcHJvbW90ZWQgdHlwZXMuCShCdWd6aWxsYSAxNTQzKQoKCSogZC1jb2RlZ2VuLmNjIChjYWxsKTogQ2F0Y2ggYSBjYXNlIGluIHdoaWNoIGEgbWVtYmVyIGZ1bmN0aW9uIGNhbgoJYmUgY2FsbGVkIHdpdGhvdXQgJ3RoaXMnLiAoQnVnemlsbGEgMTU2OCkKCgkqIGRtZC9tdHlwZS5jIChUeXBlQXJyYXk6OmRvdEV4cCk6IENvcnJlY3QgcmV0dXJuIHR5cGUgb2YKCXNvcnQgYW5kIHJldmVyc2UgZnVuY3Rpb25zLiAoU0YgMTgwOTIyMCAvIEJ1Z3ppbGxhIDE1NTQpCgoJKiBkbWQyL210eXBlLmM6IERpdHRvLgoKCSogcGF0Y2gtZ2NjLTQuMS54OiBBZGQgcGF0Y2ggZm9yIEFSTSBleGNlcHRpb24gaGFuZGxpbmcgaW50IG5lc3RlZAoJZnVuY3Rpb25zLgoKCSogZC1vYmpmaWxlLmNjOiBNYWtlIERUIGRhdGEgVFJFRV9DT05TVEFOVAoKCSogZG1kMi9vcHRpbWl6ZS5jOiBGaXggZm9yIGluZmluaXRlIHJlY3Vyc2lvbiBvbiBpbml0aWFsaXplcgoJd2hlbiBhbiBlcnJvciBoYXMgYWxyZWFkeSBvY2N1cnJlZC4KCgktLS0tLQoKCUFkZCBzdXBwb3J0IGZvciBBUk0gRUFCSS4gIEZpeCBzb21lIG1pc3NpbmcgaXRlbXMgZnJvbQoJY3Jvc3MtY29tcGlsYXRpb24gY2hhbmdlcy4KCgkqIGQtbGFuZy5jYzogQWRkICJBcm0iIGFuZCAiVGh1bWIiIHZlcnNpb24gaWRlbnRpZmllcnMKCgkqIHBob2Jvcy91bndpbmQuZDogTW92ZSBwb2ludGVyIGVuY29kaW5nIHRvIGRlaF9wZS5kLiBNb3ZlIGdlbmVyaWMKCXVud2luZGVyIGludGVyZmFjZSB0byB1bndpbmRfZ2VuZXJpYy5kLiAgSW1wb3J0IGVpdGhlciBnZW5lcmljIG9yCglBUk0gaW50ZXJmYWNlcyBiYXNlZCBvbiBjb25maWcgdmFsdWUuCgoJKiBwaG9ib3MvdW53aW5kX2dlbmVyaWMuZCwgcGhvYm9zL3Vud2luZF9wZS5kOiBOZXcgZmlsZTsgb2xkIGNvZGUuCgoJKiBwaG9ib3MvdW53aW5kX2FybS5kOiBOZXcgZmlsZS4KCgkqIHBob2Jvcy9kZWguZDogU3VwcG9ydCBBUk0gZXhjZXB0aW9uIGhhbmRsaW5nIEFCSS4KCgkqIHBob2Jvcy9jb25maWd1cmUuaW4sIGZyYWctYWMuaW46IEFkZCBjb25maWcgZm9yIEFSTSB1bndpbmRlcgoKCSogcGhvYm9zL2NvbmZpZ3VyZS5pbiwgcGhvYm9zL2ludGVybmFsLmMsIHBob2Jvcy9tb25pdG9yLmM6IFN1cHBvcnQKCSJubyBzeXN0ZW0iIHRhcmdldHMuCgoJKiBwaG9ib3MvY2JyaWRnZV9tYXRoLmM6IENvcnJlY3QgaWRlbnRpZmllciBuYW1lcyBmb3IgZWFybGllcgoJY2hhbmdlcy4KCgkqIHBob2Jvcy9NYWtlZmlsZS5hbSwgcGhvYm9zL01ha2VmaWxlLmluLCBwaG9ib3MvY29uZmlnLmguaW4sCglwaG9ib3MvY29uZmlndXJlIDogVXBkYXRlLgoKCSogcGhvYm9zMi8uLi46IER1cGxpY2F0ZSBwaG9ib3MvIGNoYW5nZXMKCjIwMDctMTAtMDcgIERhdmlkIEZyaWVkbWFuICA8ZHZkZnJkbW5AdXNlcnMuc2YubmV0PgoKCU1lcmdlIGNyb3NzLWNvbXBpbGF0aW9uIGNoYW5nZXMgdG8gcGhvYm9zMgoKCSogcGhvYm9zMi8uLi4uOiBNZXJnZQoKCS0tLQoKCUVuaGFuY2UgY3Jvc3MtY29tcGlsYXRpb24gc3VwcG9ydDoKCgkqIHBob2Jvcy9NYWtlZmlsZS5hbSwgcGhvYm9zL01ha2VmaWxlLmluLCBwaG9ib3MvYWNpbmNsdWRlLm00LAoJcGhvYm9zL2FjbG9jYWwubTQsIHBob2Jvcy9jb25maWd1cmUuaW4sIHBob2Jvcy9jb25maWd1cmUsCglwaG9ib3MvY29uZmlnLmguaW46IFJlcGxhY2UgImZyYWdtZW50IGdlbmVyYXRpb24iIHdpdGggIlgzIgoJc3lzdGVtLiAgUmVtb3ZlIG9ic29sZXRlIHRlc3RzLgoKCSogcGhvYm9zL2NvbmZpZy97Y29uZmlnLWhlYWQsIGNvbmZpZy1taWQsIGNvbmZpZy10YWlsfTogUmVtb3ZlZAoJKiBwaG9ib3MvY29uZmlnL3ttYWtlc3RydWN0LmgsIHVuaXgtaGVhZCwgdW5peC1taWR9OiBSZW1vdmVkCgkqIHBob2Jvcy97ZGFyd2luOCwgbWluZ3csIHNreW9zfTogUmVtb3ZlZAoKCSogcGhvYm9zL2NvbmZpZy97ZXJybm8ueDMsIGZwY2xzLngzLCBsaWJjLngzLCB1bml4LngzfSwKCXBob2Jvcy9jb25maWd7eDMsIHgzLmMsIHgzLmgsIHgzbWFpbi5jfTogIE5ldyBmaWxlcwoKCSogcGhvYm9zL2ZyYWctYWMuaW46IE5vdyBvbmx5IGNvbnRhaW5zIGJvb2xlYW4gY29uc3RhbnRzLgoJKiBwaG9ib3MvZnJhZy1tYXRoLmluOiBOZXcgZmlsZS4gIENvbnRhaW5zIG9sZCBjb25maWd1cmVkIG1hdGgKCWZ1bmN0aW9ucy4KCgkqIHBob2Jvcy9nY2MvY29uZmlnZXh0LmQ6IFJlbW92ZWQKCSogcGhvYm9zL2djYy9zdXBwb3J0LmQ6IE1vdmUgZmFsbGJhY2sgc3RydG9sZCBkZWZpbml0aW9uIGhlcmUuCgoJKiBwaG9ib3MvTWFrZWZpbGUuYW06IERvIG5vdCBjb21waWxlIHN0ZC9jL3N0ZGlvLm8KCSogcGhvYm9zL3N0ZC9jL3N0ZGlvLmM6IENoYW5nZSBmdW5jdGlvbiBkZWZpbml0aW9ucyB0byBleHRlcm5hbAoJZGVjbGFyYXRpb25zLgoKCSogcGhvYm9zL2djYy9kZWguZCwgcGhvYm9zL2djYy9mcGNscy5kLCBwaG9ib3MvZ2NjL2ZwbWF0aC5kLAoJcGhvYm9zL2djYy9zdXBwb3J0LmQsIHBob2Jvcy9nY2MvdGhyZWFkc2VtLmQsCglwaG9ib3MvaW50ZXJuYWwvZGdjY21haW4yLmQsIHBob2Jvcy9pbnRlcm5hbC9mcG1hdGguZCwKCXBob2Jvcy9pbnRlcm5hbC9nYy9nY2djYy5kLCBwaG9ib3MvcGhvYm9zLXZlci1zeW1zLmluLAoJcGhvYm9zL3N0ZC9jL2RpcmVudC5kLCBwaG9ib3Mvc3RkL2MvbWF0aC5kLCBwaG9ib3Mvc3RkL2Mvc3RkZGVmLmQsCglwaG9ib3Mvc3RkL2Mvc3RkaW8uZCwgcGhvYm9zL3N0ZC9jL3N0ZGxpYi5kLCBwaG9ib3Mvc3RkL2MvdGltZS5kLAoJcGhvYm9zL3N0ZC9jL3VuaXgvdW5peC5kLCBwaG9ib3Mvc3RkL2RhdGUuZCwgcGhvYm9zL3N0ZC9tYXRoLmQsCglwaG9ib3Mvc3RkL21hdGgyLmQsIHBob2Jvcy9zdGQvbW1maWxlLmQsIHBob2Jvcy9zdGQvcmFuZG9tLmQsCglwaG9ib3Mvc3RkL3N0ZGlvLmQsIHBob2Jvcy9zdGQvc3RyZWFtLmQsIHBob2Jvcy9zdGQvc3lzdGVtLmQsCglwaG9ib3Mvc3RkL3RocmVhZC5kOiBVcGRhdGUuICBBZGQgc29tZSBzdXBwb3J0IGZvciB0YXJnZXRzCgl3aXRob3V0aCBhbiBvcGVyYXRpb24gc3lzdGVtLgoKMjAwNy0wOS0yNCAgRGF2aWQgRnJpZWRtYW4gIDxkdmRmcmRtbkB1c2Vycy5zZi5uZXQ+CgoJKiBkLWdsdWUuY2MgKEluZGVFeHA6OnRvRWxlbSksIGQtY29kZWdlbi5jYyAoYXJyYXlFbGVtUmVmKToKCVB1dCB0aGUgQklORF9FWFBSICJpbnNpZGUgdGhlIGJyYWNrZXRzIi4gKEJ1Z3ppbGxhIDExNTUpCgoJKFN0cnVjdExpdGVyYWxFeHA6OnRvRWxlbSk6IEhhbmRsZSBOVUxMIGVsZW1lbnRzIChmb3IgYW5vbnltb3VzCgl1bmlvbnMuKQoKMjAwNy0wOS0yMyAgRGF2aWQgRnJpZWRtYW4gIDxkdmRmcmRtbkB1c2Vycy5zZi5uZXQ+CgoJKiBkLWNvZGVnZW4ue2gsY2N9LCBkLWdsdWUuY2M6IEFkZCB0eXBlIHRvIGVycm9yX21hcmtfbm9kZQoJZm9yIGNvZGUgdGhhdCBhc3N1bWVzIHRoZSB0eXBlIG9mIGNlcnRhaW4gZXhwcmVzc2lvbnMuCgkoQnVnemlsbGEgMTA1MSkKCgkqIGQtZ2x1ZS5jYyAoRnVuY0RlY2xhcmF0aW9uOjp0b09iakZpbGUpOiBTZXQgREVDTF9JR05PUkVEX1AKCW9uIHRoZSBmcmFtZSBwYXJhbXRlci4gIChCdWd6aWxsYSAxMDMzKQoKCSogZC1nbHVlLmNjLCBkLWNvZGVnZW4uY2MsIGQtb2JqZmlsZS5jYzogU2V0IERFQ0xfSUdOT1JFRF9QCglpbiBtb3N0IGNhc2VzIHdoZXJlIERFQ0xfQVJUSUZJQ0lBTCBpcyBzZXQuCgoJKiBkLWJ1aWx0aW5zMi5jYyAoZF9nY2NfbWFnaWNfYnVpbHRpbnNfbW9kdWxlKTogSGFuZGxlIHR5cGUKCWRlY2xhcmF0aW9ucyBhZnRlciBjb252ZXJ0aW5nIGZ1bmN0aW9ucy4KCgkqIGQtZ2x1ZS5jYyAobWFrZV9hc3NpZ25fbWF0aF9vcCk6IFNwZWNpYWwgY2FzZSBmb3IgZGl2aXNpb24KCXdoZW4gbGhzIGlzIGltYWdpbmFyeS4gKEJ1Z3ppbGxhIDczOSkKCgkqIGRtZC1zY3JpcHQ6IEFwcGx5IEFuZGVyJ3MgcGF0Y2ggZm9yIGltcGxpY2l0IC1IIGFuZCAtRAoJYmVoYXZpb3IuICAoQnVnemlsbGEgMTUwMikKCglVc2Ugb2YgLW9mIGFyZ3VtZW50IGRvZXMgbm90IGRlcGVuZCBvbiBoZWFkZXIgZ2VuZXJhdGlvbi4KCShCdWd6aWxsYSAxNTAxKQoKCSogZC1idWlsdGluczIuY2MsICBkbWQqL21vZHVsZS5jOiBJZiB0aGUgdGFyZ2V0IHZhX2xpc3QgaXMgYQoJc3RydWN0LCBhZGQgdGhlIHN0cnVjdCBkZWNsYXJhdGlvbiB0byB0aGUgb2JqZWN0IG1vZHVsZS4KCShCdWd6aWxsYSAxNTA3KQoKCSogZG1kMi9wYXJzZS5jOiBmaXggbGluZSBlbmRpbmdzCgoJLS0tLQoKCVVwZGF0ZSBmb3IgRCAyLjA6CgoJKiBNYWtlLWxhbmcuaW46IFN1cHBvcnQgYm90aCBETUQgZnJvbnQgZW5kIHZlcnNpb24gMSBhbmQgMi4KCVJlcGxhY2UgZ2NjLW1hcnMuY2Mgd2l0aCAgZC9tYXJzLmMuCgoJKiBnY2MtbWFycy5jYzogUmVtb3ZlIGZpbGUuCgoJKiBkLWNvZGVnZW4uaCwgZC1jb2RlZ2VuLmNjOiBVcGRhdGUgZm9yIERNRCAyLnguCglBZGQgX2RfaGlkZGVuX2Z1bmMgbGliY2FsbC4KCgkqIGQtZGVjbHMuY2MsIGQtZ2x1ZS5jYzogVXBkYXRlIGZvciBETUQgMi54LgoKCSogZC1kbWQtZ2NjLmg6IEFkZCBydGxzeW0sIGV0Yy4KCgkqIGQtbGFuZ2UuY2M6IEluY2x1ZGUgbWFycy5oLiAgSW1wbGVtZW50IHJ0bHN5bS4KCgkqIGQtb2JqZmlsZS5jYyAoT2JqZWN0RmlsZTo6aGFzTW9kdWxlKTogQWRkIGNoZWNrcyB0byBhbGxvdwoJdGhpcyBmdW5jdGlvbiB0byBiZSBjYWxsZWQgZWFybGllci4KCgkqIGRtZCovbWFycy5jOiBNYWtlIGNoYW5nZXMgZm9yIEdEQy4KCgkqIGRtZCovYXR0cmliLmM6IFVzZSBXQU5UaW50ZXJwcmV0IGZvciBwcmFnbWEoR05VX2FzbSkKCgkqIGRtZDIvcGFyc2UuYyAocGFyc2VEZWNsYXJhdG9yKTogRml4IGFsaWFzaW5nIGJ1Zy4KCgkqIHJkbWQuZDogVXBkYXRlIGZvciBEIDIuMAoKCSogZ2RjLXZlcnNpb246IG5vdyBvbmx5IGNvbnRhaW5zIHRoZSBHREMgdmVyc2lvbgoKCSogc2V0dXAtZ2NjLnNoOiBTdXBwb3J0IGJ1aWxkaW5nIEQgdmVyc2lvbiAxIG9yIDIuICBUYWtlIERNRAoJdmVyc2lvbiBmcm9tIGRtZCovbWFycy5jLgoKCSogZG1kMi8sIHBob2JvczIvOiBOZXcgZGlyZWN0b3JpZXMKCgkqIHBob2JvczIvTWFrZWZpbGUuYW0gKE1BSU5fT0JKUyk6IGFkZCBzdGQuYy5zdGRpbyBtb2R1bGUKCWZvciBzdGR7aW4sb3V0LGVycn0gdmFycwoKCSogcGhvYm9zKi9zdGQvYy9zdGRpby5kOiBNYWtlIGZ1bmN0aW9ucyB3aXRoIGRlZmluaXRpb25zCglleHRlcm4oRCkuCgoJKiBwaG9ib3MyL3N0ZC9sb2FkZXIuZDogVXBkYXRlIGZvciBEIDIuMC4KCgkqIHBob2JvczIvc3RkL2hpZGRlbmZ1bmMuZDogVXNlIEMgY2FsbGluZyBjb252ZW50aW9ucyBmb3IgR0RDLgoKMjAwNy0wOS0xNCAgRGF2aWQgRnJpZWRtYW4gIDxkdmRmcmRtbkB1c2Vycy5zZi5uZXQ+CgoKCSogZC1jb2RlZ2VuLmNjIChjb252ZXJ0VG8sIGNhbGwpOiBQcmV2ZW50IG11bHRpcGxlIHJlLWV2YWx1YXRpb24KCW9mIGRlbGdhdGUuIChCdWd6aWxsYSAxNDkyKQoKMjAwNy0wOS0xMyAgRGF2aWQgRnJpZWRtYW4gIDxkdmRmcmRtbkB1c2Vycy5zZi5uZXQ+CgoJKiBkLWdsdWUuY2MsIGQtY29kZWdlbi5oLCBkLWNvZGVnZW4uY2M6IE1ha2UgaXQgYW4gZXJyb3IKCXRvIHJlZmVyZW5jZSBhIG5lc3RlZCBmdW5jdGlvbiB3aXRob3V0IGEgYm9keS4gKFNGIDE3OTM1OTQpCgoyMDA3LTA5LTEyICBEYXZpZCBGcmllZG1hbiAgPGR2ZGZyZG1uQHVzZXJzLnNmLm5ldD4KCgkqIHBob2Jvcy9jb25maWcvbGRmdW5jcy1wcGNsaW51eDogRGVjbGFyZSBzcXJ0LgoKCSogdGFyZ2V0LXZlci1zeW1zLnNoLCBwaG9ib3MvYWNpbmNsdWRlLm00LCBwaG9ib3MvY29uZmlndXJlLmluOgoJU3VwcG9ydCBrZnJlZWJzZC4KCgkqIGQtY29kZWdlbi57aCwgY2N9LCBkLWdsdWUuY2M6IENoYW5nZSByYXdBcnJheSB0byB0b0RBcnJheS4gRG8KCW5vdCBjYXN0IHJlc3VsdCB0byB2b2lkW10uIChCdWd6aWxsYSAxNDkwKQoKMjAwNy0wOS0wNyAgRGF2aWQgRnJpZWRtYW4gIDxkdmRmcmRtbkB1c2Vycy5zZi5uZXQ+CgoJKiBwaG9ib3Mvc3RkL2Mvc3RkaW8uZDogRGVmaW5lIGZwb3NfdCBjb3JyZWN0bHkgZm9yIERyYXdpbgoJKEJ1Z3ppbGxhIDE0NjkpCgoyMDA3LTA5LTA1ICBEYXZpZCBGcmllZG1hbiAgPGR2ZGZyZG1uQHVzZXJzLnNmLm5ldD4KCglNZXJnZSBETUQgMS4wMjEKCgkqIGRtZC1zY3JpcHQsIGQtc3BlYy5jIChsYW5nX3NwZWNpZmljX2RyaXZlcik6IFN1cHBvcnQKCS1kZWJ1Z2xpYj0gYW5kIC1kZWZhdWx0bGliPSBvcHRpb25zLgoKCSogZG1kL2Nhc3QuYywgZG1kL2NvbnN0Zm9sZC5jLCBkbWQvZGVjbGFyYXRpb24uYywgZG1kL2RzeW1ib2wuYywKCWRtZC9leHByZXNzaW9uLmMsIGRtZC9leHByZXNzaW9uLmgsIGRtZC9mdW5jLmMsIGRtZC9pZGVudGlmaWVyLmMsCglkbWQvaWRnZW4uYywgZG1kL2luaXQuYywgZG1kL2luaXQuaCwgZG1kL2ludGVycHJldC5jLCBkbWQvbGV4ZXIuYywKCWRtZC9sZXhlci5oLCBkbWQvbGluay5jLCBkbWQvbWFycy5jLCBkbWQvbWFycy5oLCBkbWQvcGFyc2UuYywKCWRtZC9zdGF0ZW1lbnQuYywgZG1kL3N0YXRpY2Fzc2VydC5jLCBkbWQvdGVtcGxhdGUuYzogTWVyZ2UKCgkqIGludGVybmFsL29iamVjdC5kLCBwaG9ib3MvaW50ZXJuYWwvdHJhY2UuZCwgcGhvYm9zL29iamVjdC5kLAoJcGhvYm9zL3N0ZC9jL3dpbmRvd3Mvd2luZG93cy5kLCBwaG9ib3Mvc3RkL2RhdGUuZCwKCXBob2Jvcy9zdGQvcmVnZXhwLmQsIHBob2Jvcy9zdGQvd2luZG93cy9yZWdpc3RyeS5kOiBNZXJnZQoKCS0tLQoKCSogcGhvYm9zL3N0ZC9zdGRpby5kIChyZWFkbG4pOiBVc2UgdGhlIHJlc3VsdCBvZiBnZXRkZWxpbQoJY29ycmVjdGx5LiAoU0YgMTc4ODE5NSkKCgkqIGQtZ2x1ZS5jYyAoRnVuY0RlY2xhcmF0aW9uOjp0b09iakZpbGUpOiBEbyBub3QgZ2ltcGxpZnkgaWYKCXRoZXJlIHdlcmUgZXJyb3JzIChCdWd6aWxsYSAxNDE1KQoKMjAwNy0wOC0zMSAgRGF2aWQgRnJpZWRtYW4gIDxkdmRmcmRtbkB1c2Vycy5zZi5uZXQ+CgoJKiBkLW9iamZpbGUuY2MgKG91dGRhdGEpOiBEbyBub3Qgc2V0IFRSRUVfQ09OU1RBTlQgb24gaW5pdGlhbGl6ZXJzCgkoQnVnemlsbGEgMTQ1MykKCjIwMDctMDgtMjkgIERhdmlkIEZyaWVkbWFuICA8ZHZkZnJkbW5AdXNlcnMuc2YubmV0PgoKCSogZC1kZWNscy5jYyAodW5pcXVlTmFtZSk6IEFsbG93IG11bHRpcGxlIHN0YXRpYyBkZWNsYXJhdGlvbiB3aXRoCgl0aGUgc2FtZSBuYW1lIGlmIGluIGEgZnVuY3Rpb24uIChTRiAxNzgzMDg1KQoKMjAwNy0wOC0yOCAgRGF2aWQgRnJpZWRtYW4gIDxkdmRmcmRtbkB1c2Vycy5zZi5uZXQ+CgoJKiBkLWNvZGVnZW4uY2MgKGNhbGwpOiBVc2UgQ29tbWFFeHAgY29ycmVjdGx5LiAoQnVnemlsbGEgMTQ0MykKCgkqIGRtZC90b2R0LmMgKGNyZWF0ZVRzYXJyYXlEdCk6IERvbid0IHRha2UgcXVhZHJhdGljIHRpbWUgdG8gYnVpbGQKCXRoZSBpbml0aWFsaXplci4gKEJ1Z3ppbGxhIDE0NDApCgoyMDA3LTA4LTIyICBEYXZpZCBGcmllZG1hbiAgPGR2ZGZyZG1uQHVzZXJzLnNmLm5ldD4KCglSZWxlYXNlIEdEQyAwLjI0CgoJLS0tCgoJKiByZG1kLmQ6IEZpeCBmb3IgV2luZG93cwoKMjAwNy0wOC0yMSAgRGF2aWQgRnJpZWRtYW4gIDxkdmRmcmRtbkB1c2Vycy5zZi5uZXQ+CgoJKiBHREMuaHRtbCwgSGlzdG9yeSwgUkVBRE1FLCBnY2MtbWFycy5jYywgZ2RjLXZlcnNpb246CglVcGRhdGUgZm9yIDAuMjQKCgkqIHJkbWQuZCwgcmRtZC4xOiBOZXcgZmlsZXMuIChCdWd6aWxsYSAxMTUyKQoKCSogcGF0Y2gtYnVpbGRfZ2NjLTQuMDogQnVpbGQgdW5pdmVyc2FsIHJkbWQuIChCdWd6aWxsYSAxMTUyKQoKCSogcGFja2FnZS9zaW1wbGUuc2g6IEluc3RhbGwgcmRtZC4gKEJ1Z3ppbGxhIDExNTIpCglJbnN0YWxsIG1hbiBwYWdlcyBmb3IgTWFjT1MgYnVpbGQuCgoJKiBkbWQtc2NyaXB0OiBBcHBseSBBbmRlcidzIHBhdGNoIHRvIG1ha2UgLW9wIGFwcGx5Cgl0byBpbnRlcmZhY2UgZmlsZXMuIChCdWd6aWxsYSAxMTM3KQoKCSogZC1sYW5nLmNjIChkX3BhcnNlX2ZpbGUpOiBJbiAtZmFsbC1zb3VyY2VzIG1vZGUsCglvbmx5IGdlbmVyYXRlIGFuIGludGVyZmFjZSBmaWxlIGZvciB0aGUgLWZvbmx5IG1vZHVsZS4KCgkqIHBob2Jvcy9pbnRlcm5hbC9hZGkuZCAoX2FkUmV2ZXJzZUNoYXIsIF9hZFJldmVyc2VXY2hhcik6CglNYWtlIHN1cmUgc3RyaWRlIGRpZmZlcmVuY2UgaXMgc2lnbmVkLgoKMjAwNy0wOC0yMCAgRGF2aWQgRnJpZWRtYW4gIDxkdmRmcmRtbkB1c2Vycy5zZi5uZXQ+CgoJKiBwYXRjaC1nY2MtNC4xLngsIHBhdGNoLWdjYy00LjAueDogRml4IGJvdGNoZWQgcGF0Y2hlcy4KCjIwMDctMDgtMDUgIERhdmlkIEZyaWVkbWFuICA8ZHZkZnJkbW5AdXNlcnMuc2YubmV0PgoKCSogZC1jb2RlZ2VuLmNjIChjb252ZXJ0Rm9yQXJndW1lbnQpOiBSZWNvZ25pemUKCXBvaW50ZXIgYXJpdGhtZXRpYyBleHByZXNzaW9uIGFzIHJlZmVyZW5jZS4KCShCdWd6aWxsYSAxNDAwKQoKCSogZC1nbHVlLmNjIChEb3RWYXJFeHA6OnRvRWxlbSk6IERvIG5vdCBOT1BfRVhQUgoJdGhlIHJlc3VsdC4gKEJ1Z3ppbGxhIDEzOTgpCgoyMDA3LTA3LTI3ICBEYXZpZCBGcmllZG1hbiAgPGR2ZGZyZG1uQHVzZXJzLnNmLm5ldD4KCgkqIHBob2Jvcy9zdGQvc3RkaW86IEZpeCBicmVha2FnZSBmcm9tIGxhc3QgY29tbWl0LgoJKFNGIDE3NjE5ODkpCgoyMDA3LTA3LTI2ICBEYXZpZCBGcmllZG1hbiAgPGR2ZGZyZG1uQHVzZXJzLnNmLm5ldD4KCgkqIHBob2Jvcy9zdGQvYy9zdGRpby5kOiBDaGFuZ2UgaW1wb3J0IGZvciBnY2MuY29uZmlnCgoJKiBkLWxhbmcuY2M6IGFkZCBmbGFnX2lzbyBmb3IgdGFyZ2V0IG1hY3JvcwoKCSogcGF0Y2gtZ2NjLTQuMC54OiAgKGdjYy90cmVlLXNyYS5jKTogRG8gbm90IHVzZSBTUkEKCW9uIHN0cnVjdHMgd2l0aCBhbGlhc2VkIGZpZWxkcyBjcmVhdGVkIGZvciBhbm9ueW1vdXMKCXVuaW9ucy4gIChGb2xsb3d1cCB0byBCdWd6aWxsYSAxMDM0KQoKMjAwNy0wNy0yNSAgRGF2aWQgRnJpZWRtYW4gIDxkdmRmcmRtbkB1c2Vycy5zZi5uZXQ+CgoJKiBkLWxhbmcuY2M6IGltcGxlbWVudCBkX2djY19pc190YXJnZXRfd2luMzIKCgkqIGRtZC9wYXJzZS5jIChwYXJzZUxpbmthZ2UpOiB1c2UgZF9nY2NfaXNfdGFyZ2V0X3dpbjMyCgoJKiBkLWRtZC1nY2MuaCAoZF9nY2NfaXNfdGFyZ2V0X3dpbjMyKTogYWRkZWQKCjIwMDctMDctMjQgIERhdmlkIEZyaWVkbWFuICA8ZHZkZnJkbW5AdXNlcnMuc2YubmV0PgoKCU1lcmdlIERNRCAxLjAxOSAtIDEuMDIwCgoJKiBkbWQvYXR0cmliLmMsIGRtZC9jYXN0LmMsIGRtZC9jb25zdGZvbGQuYywgZG1kL2RlY2xhcmF0aW9uLmgsCglkbWQvZXhwcmVzc2lvbi5jLCBkbWQvZXhwcmVzc2lvbi5oLCBkbWQvZnVuYy5jLCBkbWQvaWRnZW4uYywKCWRtZC9pbmxpbmUuYywgZG1kL2ludGVycHJldC5jLCBkbWQvbWFycy5jLCBkbWQvbWFycy5oLAoJZG1kL210eXBlLmMsIGRtZC9tdHlwZS5oLCBkbWQvb3BvdmVyLmMsIGRtZC9wYXJzZS5jLAoJZG1kL3RlbXBsYXRlLmMsIGRtZC90ZW1wbGF0ZS5oLCBkbWQvdG9jc3ltLmMsIGRtZC90b2lyLmM6IE1lcmdlCgoJKiBwaG9ib3MvaW50ZXJuYWwvZ2MvZ2MuZCwgcGhvYm9zL2xpbnV4Lm1haywKCXBob2Jvcy9zdGQvZGVtYW5nbGUuZCwgcGhvYm9zL3N0ZC9mb3JtYXQuZCwgcGhvYm9zL3N0ZC9sb2FkZXIuZCwKCXBob2Jvcy9zdGQvc29ja2V0LmQsIHBob2Jvcy9zdGQvdW5pLmQ6IE1lcmdlCgoyMDA3LTA3LTIyICBEYXZpZCBGcmllZG1hbiAgPGR2ZGZyZG1uQHVzZXJzLnNmLm5ldD4KCglNZXJnZSBETUQgMS4wMTUgLSAxLjAxODoKCgkqIGRtZC9sZXhlci5jIChlc2NhcGVTZXF1ZW5jZSk6IENoYW5nZSB2ZW5kb3Igc3RyaW5nLgoKCSogZG1kLXNjcmlwdDogVXBkYXRlIGRvY3VtZW50YXRpb24gbGluawoKCSogZG1kL2F0dHJpYi5jLCBkbWQvY2FzdC5jLCBkbWQvY2xhc3MuYywgZG1kL2RlY2xhcmF0aW9uLmMsCglkbWQvZHN5bWJvbC5jLCBkbWQvZXhwcmVzc2lvbi5jLCBkbWQvZXhwcmVzc2lvbi5oLCBkbWQvZnVuYy5jLAoJZG1kL2hkcmdlbi5oLCBkbWQvaWRnZW4uYywgZG1kL2luaXQuYywgZG1kL2luaXQuaCwgZG1kL2lubGluZS5jLAoJZG1kL2ludGVycHJldC5jLCBkbWQvbGV4ZXIuYywgZG1kL21hcnMuYywgZG1kL21hcnMuaCwKCWRtZC9tb2R1bGUuYywgZG1kL210eXBlLmMsIGRtZC9tdHlwZS5oLCBkbWQvb3B0aW1pemUuYywKCWRtZC9wYXJzZS5jLCBkbWQvc2NvcGUuYywgZG1kL3Njb3BlLmgsIGRtZC9zdGF0ZW1lbnQuYywKCWRtZC9zdGF0ZW1lbnQuaCwgZG1kL3N0YXRpY2Fzc2VydC5jLCBkbWQvdGVtcGxhdGUuYzogTWVyZ2UKCgkqIHBob2Jvcy9pbnRlcm5hbC9kbWFpbjIuZCwgcGhvYm9zL2ludGVybmFsL2djL2djeC5kLAoJcGhvYm9zL2ludGVybmFsL29iamVjdC5kLCBwaG9ib3Mvb2JqZWN0LmQsIHBob2Jvcy9zdGQvYmluZC5kLAoJcGhvYm9zL3N0ZC9jb21waWxlci5kLCBwaG9ib3Mvc3RkL2RhdGUuZCwgcGhvYm9zL3N0ZC9kYXRlcGFyc2UuZCwKCXBob2Jvcy9zdGQvZm9ybWF0LmQsIHBob2Jvcy9zdGQvaW50cmluc2ljLmQsIHBob2Jvcy9zdGQvbG9hZGVyLmQsCglwaG9ib3Mvc3RkL21hdGgyLmQsIHBob2Jvcy9zdGQvbWV0YXN0cmluZ3MuZCwgcGhvYm9zL3N0ZC9tbWZpbGUuZCwKCXBob2Jvcy9zdGQvb3V0YnVmZmVyLmQsIHBob2Jvcy9zdGQvc3RyaW5nLmQsCglwaG9ib3Mvc3RkL3dpbmRvd3MvcmVnaXN0cnkuZCwgcGhvYm9zL3dpbjMyLm1hazogTWVyZ2UKCgktLS0tCgoJKiBnZGNfYWxsb2NhLmg6IFN1cHBvcnQgT3BlbkJTRC4gKEJ1Z3ppbGxhIDEwNjUpCgoJKiBwYXRjaC1nY2MtNC4xLnggKGdjYy90cmVlLXNyYS5jKTogRG8gbm90IHVzZSBTUkEKCW9uIHN0cnVjdHMgd2l0aCBhbGlhc2VkIGZpZWxkcyBjcmVhdGVkIGZvciBhbm9ueW1vdXMKCXVuaW9ucy4gIChCdWd6aWxsYSAxMDM0KQoKMjAwNy0wNy0xOSAgRGF2aWQgRnJpZWRtYW4gIDxkdmRmcmRtbkB1c2Vycy5zZi5uZXQ+CgoJKiBwYXRjaC1nY2MtNC4xLnggKGdjYy9wcmVkaWN0LmMpOiBBZGQgbnVsbC1wb2ludGVyIGNoZWNrLgoJKEJ1Z3ppbGxhIDEwMzUpCgoJLS0tCgoJKiBwaG9ib3Mvc3RkL2Zvcm1hdC5kIChkb0Zvcm1hdFB0cik6IEZpeCBhY2NpZGVudGFsCglyZXZlcnNpb24gZnJvbSBETUQgbWVyZ2UuCgoJKiBkLWNvZGVnZW4uY2MgKG1heWJlU2V0VXBCdWlsdGluKTogQWRkIHNvbWUgbWlzc2luZwoJaW5zdHJpbnNpY3MuCgoJKiBwaG9ib3MvTWFrZWZpbGUuYW0gKE1BSU5fT0JKUyk6IEFkZCBnY2MuYnVpbHRpbnMKCW1vZHVsZSB0byBnZXQgYnVpbHQtaW5zdHJ1Y3QgaW5pdGlhbGl6ZXJzLgoKCSogcGhvYm9zL01ha2VmaWxlLmluOiBSZWdlbmVyYXRlZAoKCSogZC1sYW5nLmNjIChkX3BhcnNlX2ZpbGUpOiBDYWxsIGRfZ2NjX21hZ2ljX21vZHVsZQoJZm9yIGVhY2ggbW9kdWxlIG9uIHRoZSBjb21tYW5kIGxpbmUuCgoJKiBkLWJ1aWx0aW5zMi5jYyAoZF9nY2NfbWFnaWNfYnVpbHRpbnNfbW9kdWxlKTogb3V0cHV0CglkZWNsYXJhdGlvbiBvdGhlciB0aGFuIGZ1bmNzCgoyMDA3LTA3LTE2ICBEYXZpZCBGcmllZG1hbiAgPGR2ZGZyZG1uQHVzZXJzLnNmLm5ldD4KCgkqIGRtZC90b2R0LmMgKFN0cnVjdExpdGVyYWxFeHA6OnRvRHQpOiBVc2UgdGFyZ2V0X3NpemVfdAoJYXMgaW4gU3RydWN0SW5pdGlhbGl6ZXI6OnRvRHQuCgoJQnVnemlsbGEgMTAzMjoKCgkqIGRtZC90b2R0LmM6IFVzZSBEVF9jb250YWluZXIgZm9yIGFycmF5cywgYXJyYXkgZWxlbWVudHMsCglhbmQgc3RydWN0cwoKCSogZHQuaCwgZC1vYmpmaWxlLmNjOiBBZGQgRFRfY29udGFpbmVyIC8gZHRjb250YWluZXIKCjIwMDctMDctMTQgIERhdmlkIEZyaWVkbWFuICA8ZHZkZnJkbW5AdXNlcnMuc2YubmV0PgoKCSogZC1jb2RlZ2VuLmNjIChBcnJheVNjb3BlOjpzZXRBcnJheUV4cCwgZmluaXNoKTogSGFuZGxlCgljb25zdGFudCBsZW5ndGhzLiAgKEJ1Z3ppbGxhIDEwMzEpCgoyMDA3LTA3LTEzICBEYXZpZCBGcmllZG1hbiAgPGR2ZGZyZG1uQHVzZXJzLnNmLm5ldD4KCgkqIGQtY29kZWdlbi5jYyAodG9FbGVtTHZhbHVlKTogVXNlIHRvRWxlbUx2YWx1ZSByZWN1cnNpdmVseS4KCShCdWd6aWxsYSAxMTkxKQoKCSogZC1jb2RlZ2VuLmNjICh0d29GaWVsZEN0b3IpOiBPbmx5IHNldCBUUkVFX1JFQURPTkxZIGlmCglUUkVFX0NPTlNUQU5UCgoJKiBkLWdsdWUuY2MgKGFycmF5X3NldF9leHByLCBBc3NvY0FycmF5TGl0ZXJhbEV4cDo6dG9FbGVtLAoJKFN0cnVjdExpdGVyYWxFeHA6OnRvRWxlbSwgTnVsbEV4cDo6dG9FbGVtKToKCURvIG5vdCBzZXQgVFJFRV9SRUFET05MWS4KCgkqIGQtZ2x1ZS5jYyAoTmV3RXhwOjp0b0VsZW0pOiBEbyBub3Qgc2V0IFRSRUVfUkVBRE9OTFkgb24KCW5ldyBhcnJheSBkaW1lbnNpb25zLgoKCSogZC1jb2RlZ2VuLmNjIChkYXJyYXlWYWwpOiBEbyBub3Qgc2V0IFRSRUVfUkVBRE9OTFkuCgkoQnVnemlsbGEgMTMyOSkKCgkoZGVsZWdhdGVWYWwpOiBkaXR0bwoKCSogZC1jb2RlZ2VuLmNjIChGaWVsZFZpc2l0b3I6OnZpc2l0KTogSGFuZGxlIGNsYXNzZXMgdGhhdAoJYXJlIGZvcndhcmQgcmVmZXJlbmNlcy4gKEJ1Z3ppbGxhIDEzMjUpCgoJKiBkbWQtc2NyaXB0OiBQYXNzIC1KIG9wdGlvbiBjb3JyZWN0bHkuCShTRiAxNzIxNDM1KQoKCSogZC1nbHVlLmNjIChEZWxldGVFeHA6OnRvRWxlbSk6IEhhbmRsZSBpbnRlcmZhY2VzLgoJKFNGIDE3MjE0OTYpCgoJKiBkLWRlY2xzLmNjIChWYXJEZWNsYXJhdGlvbjo6dG9TeW1ib2wpOiBIYW5kbGUgdm9pZCBpbml0aWFsaXplci4KCShTRiAxNzQ5NjIyKQoKCSogZC1nbHVlLmNjIChBbmRBbmRFeHAsIE9yT3JFeHApOiBIYW5kbGUgdm9pZCBzZWNvbmQgZXhwcmVzc2lvbi4KCShTRiAxNjg5NjM0KQoKCSogcGhvYm9zL2djYy9jYnJpZGdlX3RpbWUuYyAoX2RfZ251X2NicmlkZ2VfdHphKTogUmVtb3ZlCglkYXlsaWdodCBzYXZpbmcgdGltZSBvZmZzZXQgZnJvbSB0bV9nbXRvZmYgKEJ1Z3ppbGxhIDEyMDgpCgoJKiBwaG9ib3Mvc3RkL2Zvcm1hdC5kIChkb0Zvcm1hdCk6IFVzZSBvcmlnaW5hbCBzaWduYXR1cmUuICBBY3R1YWwKCXdvcmsgaXMgZG9uZSBieSBuZXcgZG9Gb3JtYXRQdHIuIChCdWd6aWxsYSAxMTA5KQoKCSogcGhvYm9zL3N0ZC9ib3hlci5kOiBVc2UgZG9Gb3JtYXRQdHIKCjIwMDctMDctMTEgIERhdmlkIEZyaWVkbWFuICA8ZHZkZnJkbW5AdXNlcnMuc2YubmV0PgoKCSogZC1jb252ZXJ0LmNjIChkZWZhdWx0X2NvbnZlcnNpb24pOiBtYWtlIHB1YmxpYwoJKFNGIDE3MTEzMjQgYW5kIDE3MDk2MDIpCgoJKiBkLWFwcGxlLWdjYy5jIChidWlsZF9mdW5jdGlvbl9jYWxsKTogcmUtZW5hYmxlIHNvbWUgY29kZQoKMjAwNy0wNS0wOCAgRGF2aWQgRnJpZWRtYW4gIDxkdmRmcmRtbkB1c2Vycy5zZi5uZXQ+CgoJKiBkLWFwcGxlLWdjYy5jOiBSZW1vdmUgYSB2YXJpYWJsZSB0aGF0IGlzIG5vdyBkZWZpbmVkIGluIGQtbGFuZy5jCgoJKiBkLWxhbmcuY2M6IEZpeCBmb3Igb3RoZXIgR0NDIHZlcnNpb25zLgoKCSogZC1jLXN0dWJzLmM6IE5ldyBmaWxlLgoKCSogTWFrZS1sYW5nLmluIChEX0JPUlJPV0VEX0NfT0JKUyk6IEFsd2F5cyB1c2UgQ19UQVJHRVRfT0JKUy4gIEFkZAoJc3R1YnMgZm9yIEMgY29tcGlsZXIgdG8gYWxsb3cgbGlua2luZyB0YXJnZXQtc3BlY2lmaWMgcHJlcHJvY2Vzc29yCglkZWZpbmVzLgoKMjAwNy0wNS0wNSAgRGF2aWQgRnJpZWRtYW4gIDxkdmRmcmRtbkB1c2Vycy5zZi5uZXQ+CgoJKiBkLWNvZGVnZW4uY2MgKGh3aTJ0b2xpLCBnZXRUYXJnZXRTaXplQ29uc3QpOiBGaXggMnggd2lkZSBpbnQgdG8KCWxvbmcgaW50IGNvbnZlcnNpb24uCgoJKiBkbWQvY2FzdC5jIChpbXBsaWNpdENvbnZUbyk6IFVzZSBHQ0MgZmxvYXRpbmcgcG9pbnQKCXJvdXRpbmVzIGluc3RlYWQgb2YgbmF0aXZlLgoKCSogZC1nY2MtcmVhbC5jYyAodG9JbnQpOiBDb3JyZWN0bHkgY29udmVydCB0byBsb25nIGludGVnZXIKCgkqIE1ha2UtbGFuZy5pbiAoRF9ETURfSCk6IEFkZCBkLWdjYy1yZWFsLmgKCgkqIHBob2Jvcy9pbnRlcm5hbC9kZ2NjbWFpbjIuZDogUHJpbnQgbmV3bGluZSBhZnRlciBlcnJvciBtZXNzYWdlCgoyMDA3LTA0LTI5ICBEYXZpZCBGcmllZG1hbiAgPGR2ZGZyZG1uQHVzZXJzLnNmLm5ldD4KCglNZXJnZSBETUQgMS4wMTQ6CgoJKiBkbWQvYWdncmVnYXRlLmgsIGRtZC9jb25zdGZvbGQuYywgZG1kL2RlbGVnYXRpemUuYywgZG1kL2VudW0uYywKCWRtZC9lbnVtLmgsIGRtZC9leHByZXNzaW9uLmMsIGRtZC9leHByZXNzaW9uLmgsIGRtZC9pZGdlbi5jLAoJZG1kL2lubGluZS5jLCBkbWQvaW50ZXJwcmV0LmMsIGRtZC9sZXhlci5jLCBkbWQvbGV4ZXIuaCwKCWRtZC9tYXJzLmMsIGRtZC9tdHlwZS5jLCBkbWQvb3B0aW1pemUuYywgZG1kL3N0cnVjdC5jLAoJZG1kL3RlbXBsYXRlLmMsIGRtZC90b2NzeW0uYywgZG1kL3RvZHQuYywgZG1kL3Rvb2JqLmMsCglkbWQvdHlwaW5mLmM6IE1lcmdlLgoKCSogcGhvYm9zL2ludGVybmFsL2djL2djLmQsIHBob2Jvcy9pbnRlcm5hbC9nYy9nY3guZCwKCXBob2Jvcy9zdGQvZm9ybWF0LmQsIHBob2Jvcy9zdGQuZGRvYzogTWVyZ2UuCgoJKiBkLWdsdWUuZCAoU3RydWN0TGl0ZXJhbEV4cDo6dG9FbGVtKTogaW1wbGVtZW50CgkqIGQtZGVjbHMuZCAoRW51bURlY2xhcmF0aW9uOjp0b0luaXRpYWxpemVyKTogY29weSBmcm9tIHRvY3N5bS5jCgoJLS0tLS0tLS0tLS0tCgoJTWVyZ2UgRE1EIDEuMDEzOgoKCSogZG1kL2Nhc3QuYywgZG1kL2NvbnN0Zm9sZC5jLCBkbWQvZGVjbGFyYXRpb24uYywKCWRtZC9leHByZXNzaW9uLmMsIGRtZC9leHByZXNzaW9uLmgsIGRtZC9pbnRlcnByZXQuYywgZG1kL2xpbmsuYywKCWRtZC9tYXJzLmMsIGRtZC9tdHlwZS5jLCBkbWQvb3BvdmVyLmMsIGRtZC9vcHRpbWl6ZS5jLAoJZG1kL3BhcnNlLmMsIGRtZC9wb3J0LmgsIGRtZC9zdGF0ZW1lbnQuYzogTWVyZ2UuCgoJKiBwaG9ib3MvaW50ZXJuYWwvYWFBLmQsIHBob2Jvcy9pbnRlcm5hbC9zd2l0Y2guZCwKCXBob2Jvcy9zdGQvZGF0ZS5kLCBwaG9ib3Mvc3RkL2ZpbGUuZCwgcGhvYm9zL3N0ZC9mb3JtYXQ6IE1lcmdlLgoKCSogZC1jb2RlZ2VuLmgsIGQtY29kZWdlbi5jYzogYWRkIF9kX2Fzc29jYXJyYXlsaXRlcmFsVHAKCSogZC1nbHVlLmNjIChBc3NvY0FycmF5TGl0ZXJhbEV4cDo6dG9FbGVtKTogSW1wbGVtZW50LgoKCSogcGhvYm9zL2ludGVybmFsL2FhQS5kIChfZF9hc3NvY2FycmF5bGl0ZXJhbFQpOiBtb2RpZmllZAoJdG8gdXNlIHBvaW50ZXJzIHRvIGtleXMsIHZhbHVlcy4KCgktLS0tLS0tLS0tLS0tLQoKCU1lcmdlIERNRCAxLjAxMjoKCgkqIGFycmF5dHlwZXMuaCwgZG1kL2RlY2xhcmF0aW9uLmMsIGRtZC9kZWxlZ2F0aXplLmMsCglkbWQvZXhwcmVzc2lvbi5jLCBkbWQvZXhwcmVzc2lvbi5oLCBkbWQvaW5pdC5jLCBkbWQvaW5pdC5oLAoJZG1kL2lubGluZS5jLCBkbWQvaW50ZXJwcmV0LmMsIGRtZC9sZXhlci5jLCBkbWQvbGV4ZXIuaCwKCWRtZC9tYW5nbGUuYywgZG1kL21hcnMuYywgZG1kL29wdGltaXplLmMsIGRtZC90ZW1wbGF0ZS5jLAoJZG1kL3RlbXBsYXRlLmg6IE1lcmdlCgoJKiBwaG9ib3MvaW50ZXJuYWwvb2JqZWN0LmQ6IE1lcmdlCgoJKiBkbWQvdGVtcGxhdGUuYyAoVGVtcGxhdGVJbnN0YW5jZTo6bWFuZ2xlKTogcHJpbnRmIHBvcnRhYmlsaXR5CgoJKiBkLWdsdWUuY2MgKEFzc29jQXJyYXlMaXRlcmFsRXhwOjp0b0VsZW0pOiBub24td29ya2luZyBpbXBsZW1lbnRhdGlvbgoKMjAwNy0wNC0yOCAgRGF2aWQgRnJpZWRtYW4gIDxkdmRmcmRtbkB1c2Vycy5zZi5uZXQ+CgoJTWVyZ2UgRE1EIDEuMDExOgoKCSogZG1kL2FjY2Vzcy5jLCBkbWQvYWdncmVnYXRlLmgsIGRtZC9hcnJheXR5cGVzLmgsIGRtZC9hdHRyaWIuYywKCWRtZC9hdHRyaWIuaCwgZG1kL2JpdC5jLCBkbWQvY2FzdC5jLCBkbWQvY2xhc3MuYywgZG1kL2NvbXBsZXhfdC5oLAoJZG1kL2NvbmQuYywgZG1kL2NvbmQuaCwgZG1kL2NvbnN0Zm9sZC5jLCBkbWQvZGVjbGFyYXRpb24uYywKCWRtZC9kZWNsYXJhdGlvbi5oLCBkbWQvZGVsZWdhdGl6ZS5jLCBkbWQvZG9jLmMsIGRtZC9kb2MuaCwKCWRtZC9kc3ltYm9sLmMsIGRtZC9kc3ltYm9sLmgsIGRtZC9kdW1wLmMsIGRtZC9lbnRpdHkuYywKCWRtZC9lbnVtLmMsIGRtZC9lbnVtLmgsIGRtZC9leHByZXNzaW9uLmMsIGRtZC9leHByZXNzaW9uLmgsCglkbWQvZnVuYy5jLCBkbWQvaGRyZ2VuLmMsIGRtZC9oZHJnZW4uaCwgZG1kL2h0bWwuYywgZG1kL2h0bWwuaCwKCWRtZC9pZGVudGlmaWVyLmMsIGRtZC9pZGVudGlmaWVyLmgsIGRtZC9pZGdlbi5jLCBkbWQvaW1wY252Z2VuLmMsCglkbWQvaW1wb3J0LmMsIGRtZC9pbXBvcnQuaCwgZG1kL2luaWZpbGUuYywgZG1kL2luaXQuYywgZG1kL2luaXQuaCwKCWRtZC9pbmxpbmUuYywgZG1kL2ludGVycHJldC5jLCBkbWQvbGV4ZXIuYywgZG1kL2xleGVyLmgsCglkbWQvbGluay5jLCBkbWQvbWFjcm8uYywgZG1kL21hY3JvLmgsIGRtZC9tYW5nbGUuYywgZG1kL21hcnMuYywKCWRtZC9tYXJzLmgsIGRtZC9tb2R1bGUuYywgZG1kL21vZHVsZS5oLCBkbWQvbXR5cGUuYywgZG1kL210eXBlLmgsCglkbWQvb3BvdmVyLmMsIGRtZC9vcHRpbWl6ZS5jLCBkbWQvcGFyc2UuYywgZG1kL3BhcnNlLmgsCglkbWQvc2NvcGUuYywgZG1kL3Njb3BlLmgsIGRtZC9zdGF0ZW1lbnQuYywgZG1kL3N0YXRlbWVudC5oLAoJZG1kL3N0YXRpY2Fzc2VydC5jLCBkbWQvc3RhdGljYXNzZXJ0LmgsIGRtZC9zdHJ1Y3QuYywKCWRtZC90ZW1wbGF0ZS5jLCBkbWQvdGVtcGxhdGUuaCwgZG1kL3RvY3N5bS5jLCBkbWQvdG9kdC5jLAoJZG1kL3RvaXIuYywgZG1kL3RvaXIuaCwgZG1kL3Rvb2JqLmMsIGRtZC90b3RhbC5oLCBkbWQvdHlwaW5mLmMsCglkbWQvdW5pYWxwaGEuYywgZG1kL3V0Zi5jLCBkbWQvdXRmLmgsIGRtZC92ZXJzaW9uLmMsIGRtZC92ZXJzaW9uLmg6CglNZXJnZQoKCSogcGhvYm9zL2ludGVybmFsL2djL2djLmQsIHBob2Jvcy9pbnRlcm5hbC9nYy9nY3guZCwKCXBob2Jvcy9pbnRlcm5hbC9vYmplY3QuZCwgcGhvYm9zL3N0ZC9jL2xvY2FsZS5kLAoJcGhvYm9zL3N0ZC9zdGRpby5kLCBwaG9ib3Mvc3RkL3dpbmRvd3MvcmVnaXN0cnkuZDogTWVyZ2UKCgkqIGRtZC9leHByZXNzaW9uLmM6IENvbW1lbnQgb3V0IHNvbWUgbG9nZ2luZyBjb2RlLgoJKiBkLWJ1aWx0aW5zMi5jYzogVXBkYXRlIGFuZCBmaXggaGFuZGxpbmcgb2YgYnVpbHQtaW4gc3RydWN0cy4KCSogZC1jb2RlZ2VuLmNjLCBkLWdsdWUuY2M6IFVwZGF0ZQoKCS0tLS0tLS0tLS0tLS0tLS0KCglNZXJnZSBETUQgMS4wMTA6CgoJKiBkbWQvYWdncmVnYXRlLmgsIGRtZC9jbGFzcy5jLCBkbWQvZGVjbGFyYXRpb24uYywgZG1kL2RvYy5jLAoJZG1kL2RzeW1ib2wuYywgZG1kL2V4cHJlc3Npb24uYywgZG1kL2V4cHJlc3Npb24uaCwgZG1kL2Z1bmMuYywKCWRtZC9pbnRlcnByZXQuYywgZG1kL21hcnMuYywgZG1kL3Njb3BlLmMsIGRtZC9zdGF0ZW1lbnQuYywKCWRtZC90ZW1wbGF0ZS5jLCBkbWQvdGVtcGxhdGUuaCwgZG1kL3RvZHQuYzogTWVyZ2UuCgoJKiBwaG9ib3MvaW50ZXJuYWwvZG1haW4yLmQsIHBob2Jvcy9pbnRlcm5hbC9nYy9nYy5kLAoJcGhvYm9zL2ludGVybmFsL2djL2djeC5kLCBwaG9ib3MvaW50ZXJuYWwvZ2MvdGVzdGdjLmQsCglwaG9ib3MvaW50ZXJuYWwvb2JqZWN0LmQsIHBob2Jvcy9vYmplY3QuZCwKCXBob2Jvcy9zdGQvYy9saW51eC9saW51eC5kLCBwaG9ib3Mvc3RkL2Mvc3RkaW8uZCwKCXBob2Jvcy9zdGQvZmlsZS5kLCBwaG9ib3Mvc3RkL2djLmQsIHBob2Jvcy9zdGQvbW9kdWxlaW5pdC5kLAoJcGhvYm9zL3N0ZC9yZWdleHAuZCwgcGhvYm9zL3N0ZC9zdGRpby5kLCBwaG9ib3Mvc3RkL3N0cmluZy5kLAoJcGhvYm9zL3N0ZC5kZG9jLCBwaG9ib3Mvd2luMzIubWFrOiBNZXJnZQoKCSogZG1kL210eXBlLmMsIHBob2Jvcy9pbnRlcm5hbC9kZ2NjbWFpbjIuZDogVXBkYXRlLgoJKiBkLWdsdWUuY2MgKGdjY19kX2JhY2tlbmRfaW5pdCk6IFVwZGF0ZS4KCgkqIHBob2Jvcy9jb25maWcvdW5peC1taWQsIHBob2Jvcy9zdGQvYy91bml4L3VuaXguZDogTW92ZWQgZGlyZW50CglhbmQgc3RkaW8gZGVmaW5pdGlvbnMgb3V0IG9mIGNvbmZpZ3VuaXggdG8gc3RkLmMudW5peC51bml4IGJlY2F1c2UKCW9mIGNvbXBpbGF0aW9uIHByb2JsZW1zLgoKCSogcGhvYm9zL2ludGVybmFsL2djL2djeC5kIChHQy5yZWFsbG9jLCBHQy5leHRlbmQsIEdDLmZyZWUpOiBDbGVhcgoJZ2N4LnBfY2FjaGUKCgkqIHBob2Jvcy9zdGQvc3RkaW8uZCwgcGhvYm9zL2ZyYWctYWMuaW4sIHBob2Jvcy9jb25maWd1cmUuaW46CgkgIEFjY291bnQgZm9yIHZhcmlvdXMgY29uZmlndXJhdGlvbnMuCgoJKiBwaG9ib3MvcGhvYm9zLXZlci1zeW1zLmluOiBSZW1vdmUgR05VX0hhdmVfZndpZGUKCSogcGhvYm9zL2NvbmZpZ3VyZTogUmVnZW5lcmF0ZQoKMjAwNy0wNC0yMiAgRGF2aWQgRnJpZWRtYW4gIDxkdmRmcmRtbkB1c2Vycy5zZi5uZXQ+CgoJKiBkLWdjYy1pbmNsdWRlcy5oLCBkLWxhbmcuY2M6IEFkZCB0YXJnZXQtc3BlY2lmaWMgcHJlcHJvY2Vzc29yCglzeW1ib2xzIHRvIHRoZSBsaXN0IG9mIEQgdmVyc2lvbiBzeW1ib2xzLgoKCSogZC1nbHVlLmNjIChOZXdFeHA6OnRvRWxlbSk6IFVzZSBOZXdFeHA6Om5ld3R5cGUgKEJ1Z3ppbGxhIDEwMzgpCgoyMDA3LTA0LTE2ICBEYXZpZCBGcmllZG1hbiAgPGR2ZGZyZG1uQHVzZXJzLnNmLm5ldD4KCglNZXJnZSBETUQgMS4wMDkgKGZyb20gMS4wMDcpOgoKCSogZC1kZWNscy5jOiBNZXJnZSBjaGFuZ2VzIGZyb20gZG1kL3RvY3N5bS5jCgoJKiBkbWQvY29uc3Rmb2xkLmMsIGRtZC9kZWNsYXJhdGlvbi5jLCBkbWQvZGVjbGFyYXRpb24uaCwKCWRtZC9leHByZXNzaW9uLmMsIGRtZC9leHByZXNzaW9uLmgsIGRtZC9pbml0LmMsIGRtZC9pbnRlcnByZXQuYywKCWRtZC9tYW5nbGUuYywgZG1kL21hcnMuYywgZG1kL21hcnMuaCwgZG1kL210eXBlLmMsCglkbWQvb3B0aW1pemUuYywgZG1kL3N0YXRlbWVudC5jLCBkbWQvc3RhdGljYXNzZXJ0LmMsCglkbWQvdG9jc3ltLmMsIGRtZC90b2R0LmM6IE1lcmdlIGNoYW5nZXMuCgoJKiBwaG9ib3Mvc3RkL3BhdGguZCwgcGhvYm9zL3N0ZC9zdHJpbmcuZDogTWVyZ2UgY2hhbmdlcy4KCgktLS0tCgoJKiBkLWJ1aWx0aW5zLmMsIGQtYnVpbHRpbnMyLmNjLCBkLWxhbmcuaDogUmV3b3JrZWQgY29kZSB0byBvbmx5Cgljb252ZXJ0IGJ1aWx0LWluIGZ1bmN0aW9ucyB3aGVuIHRoZSBnY2MuYnVpbHRpbnMgbW9kdWxlIGlzCglpbXBvcnRlZC4gIFJFQ09SRF9UWVBFIGlzIG5vdyBjb252ZXJ0ZWQgdG8gYSBUeXBlU3RydWN0LiAgRml4ZWQKCXByb2JsZW0gdGhhdCBjYXVzZWQgc29tZSBmdW5jdGlvbnMgdG8gbm90IGJlIGF2YWlsYWJsZS4gIFN1cHBvcnQKCXRhcmdldHMgYnVpbHRpbnMuCgoyMDA3LTAzLTExICBEYXZpZCBGcmllZG1hbiAgPGR2ZGZyZG1uQHVzZXJzLnNmLm5ldD4KCgkqIGQtZGVjbHMuY2MgKENsYXNzRGVjbGFyYXRpb246OnRvU3ltYm9sKTogRG8gbm90IHNldCBUUkVFX1JFQURPTkxZLgoJKEJ1Z3ppbGxhIDEwMzcpCgoyMDA3LTAzLTEwICBEYXZpZCBGcmllZG1hbiAgPGR2ZGZyZG1uQHVzZXJzLnNmLm5ldD4KCgkqIGQtY29kZWdlbi5jYyAoY2FsbCk6IEhhbmRsZSBDb21tYUV4cCBmb3JtIG9mIGEgZGVsZWdhdGUgY2FsbAoJKEJ1Z3ppbGxhIDEwNDMpCgoJKiBkLWRlY2xzLmNjIChWYXJEZWNsYXJhdGlvbjo6dG9TeW1ib2wpOiBQYXJ0aWFsIGZpeCBmb3IgQnVnemlsbGEgMTA0NAoKCSogZHQuaCwgZC1vYmpmaWxlLmNjLCBkbWQvdHlwZWluZi5jOiBPbmx5IHBhZCAzMi1iaXQgd29yZHMgaW4gUlRUSSBpZgoJbmVlZGVkLiAoQnVnemlsbGEgMTA0NSwgMTA0NikKCSogZG1kL3Rvb2JqLmM6IHVwZGF0ZQoKCSogZC1nbHVlLmNjLCBkLW9iamZpbGUuY2M6IEFkZGl0aW9uYWwgR0NDIDMuMy54IGNsZWFudXAKCgktLS0tCgoJKiBDaGFuZ2VMb2csIEhpc3RvcnksIE1ha2UtbGFuZy5pbiwgYXNtc3RtdC5jYywgZC1idWlsdGlucy5jLAoJZC1jb2RlZ2VuLmNjLCBkLWNvbnZlcnQuY2MsIGQtZGVjbHMuY2MsIGQtZ2NjLWluY2x1ZGVzLmgsCglkLWdjYy1yZWFsLmNjLCBkLWdsdWUuY2MsIGQtZ3QuYywgZC1pcnN0YXRlLmNjLCBkLWxhbmcuY2MsCglkLWxhbmcuaCwgZC1taXNjLmMsIGQtb2JqZmlsZS5jYywgZC1zcGVjLmMsIHBob2Jvcy9jb25maWd1cmUuaW4sCglzZXR1cC1nY2Muc2g6IFJlbW92ZSBzdXBwb3J0IGZvciBHQ0MgMy4zLngKCgkqIHBob2Jvcy9jb25maWd1cmU6IFJlZ2VuZXJhdGVkCgoJKiBnY2MtMy4zLjUtZnJhbWV3b3JrLWhlYWRlcnMucGF0Y2gsCglnY2MtMy4zLjUtZnJhbWV3b3JrLWxpbmtlci5wYXRjaCwgcGF0Y2gtZ2NjLTMuMy54LAoJcGF0Y2gtZ2NjLWRhcndpbi1laC0zLjMueCwgcGF0Y2gtdG9wbGV2LTMuMy54LAoJcGhvYm9zL2NvbmZpZy9sZGZ1bmNzMzMsIHBob2Jvcy9jb25maWcvbm9sZGZ1bmNzMzMsCglkLWJpLWF0dHJzLTMzLmg6IFJlbW92ZWQuCgoyMDA3LTAzLTA1ICBEYXZpZCBGcmllZG1hbiAgPGR2ZGZyZG1uQHVzZXJzLnNmLm5ldD4KCglSZWxlYXNlIEdEQyAwLjIzCgoJKiBwaG9ib3MvTWFrZWZpbGUuYW06IEFkZCBhbGwtbG9jYWwgdGFyZ2V0IHRvIGJ1aWxkIGxpYmdwaG9ib3MuYQoJKiBwaG9ib3MvTWFrZWZpbGUuaW46IFJlZ2VucmF0ZWQKCglQb3dlclBDIDY0IGZpeGVzOgoKCSogZC1nbHVlLmNjIChUeXBlU3RydWN0OnRvQ3R5cGUpOiBBZGQgd29yZHMgYXQgdGhlIGVuZCBvZiBhIHN0cnVjdC4KCgkqIHBob2Jvcy9jb25maWcvZGFyd2luOC9mcmFnLXVuaXg6IE1vcmUgYWNjdXJhdGUgc3RydWN0IGRlZmluaXRpb25zLgoJKiBwaG9ib3MvaW50ZXJuYWwvZ2MvZ2NfZHlsZC5jOiBTdXBwb3J0IE1hY2gtTyA2NC4KCSogcGhvYm9zL2ludGVybmFsL2djL2djZ2NjLmQ6IENvcnJlY3Qgc3RhY2sgZm9yIDY0LWJpdCBEYXJ3aW4uCgkqIHBob2Jvcy9zdGQvdGhyZWFkLmQgKGdldEVTUCk6IEFsaWduIHJlc3VsdC4KCjIwMDctMDMtMDQgIERhdmlkIEZyaWVkbWFuICA8ZHZkZnJkbW5AdXNlcnMuc2YubmV0PgoKCVJlc3Qgb2YgRE1EIDEuMDA3IE1lcmdlOgoKCSogcGFja2FnZS9zaW1wbGUuc2g6IEluc3RhbGwgR0RDLmh0bWwKCgkqIE1ha2UtbGFuZy5pbiAoRF9ETURfT0JKUyk6IGFkZCBpbnRlcnByZXQuZG1kLm8KCgkqIGdkYy12ZXJzaW9uOiB1cGRhdGUKCgkqIEdEQy5odG1sLCBkLWxhbmcuY2MsIGRtZC1zY3JpcHQsIGxhbmctc3BlY3MuaCwgbGFuZy5vcHQsCglwYXRjaC1nY2MtNC4wLngsIHBhdGNoLWdjYy00LjEueCwgcGF0Y2gtYXBwbGUtZ2NjLTQuMC54LAoJcGF0Y2gtZ2NjLTMuNC54LCBwYXRjaC1nY2MtMy4zLng6IEFkZCAtSiBvcHRpb24uCgoJKiBkbWQvY29uc3Rmb2xkLmQsIGRtZC9kZWNsYXJhdGlvbi5oLCBkbWQvZnVuYy5jOiB1cGRhdGUKCgkqIGQtZ2x1ZS5jOiB1cGRhdGUKCglJbml0aWFsIG1lcmdlIG9mIERNRCAxLjAwNyAoZnJvbSBETUQgMS4wMDUpOgoKCSogZG1kL2FycmF5dHlwZXMuaCwgZG1kL2F0dHJpYi5jLCBkbWQvY29uZC5jLCBkbWQvY29uc3Rmb2xkLmMsCglkbWQvZGVjbGFyYXRpb24uYywgZG1kL2RlY2xhcmF0aW9uLmgsIGRtZC9leHByZXNzaW9uLmMsCglkbWQvZXhwcmVzc2lvbi5oLCBkbWQvZnVuYy5jLCBkbWQvaWRnZW4uYywgZG1kL2luaXQuYywKCWRtZC9sZXhlci5jLCBkbWQvbGV4ZXIuaCwgZG1kL21hcnMuYywgZG1kL21hcnMuaCwgZG1kL21vZHVsZS5jLAoJZG1kL210eXBlLmMsIGRtZC9vcG92ZXIuYywgZG1kL29wdGltaXplLmMsIGRtZC9wYXJzZS5jLAoJZG1kL3BhcnNlLmgsIGRtZC9zdGF0ZW1lbnQuYywgZG1kL3N0YXRlbWVudC5oLCBkbWQvdGVtcGxhdGUuYywKCWRtZC90eXBpbmYuYzogTWVyZ2UKCgkqIHBob2Jvcy9pbnRlcm5hbC9hQXBwbHkuZCwgcGhvYm9zL2ludGVybmFsL2FBcHBseVIuZCwKCXBob2Jvcy9pbnRlcm5hbC9hZGkuZCwgcGhvYm9zL2ludGVybmFsL2RtYWluMi5kLAoJcGhvYm9zL2ludGVybmFsL2djL2djLmQsIHBob2Jvcy9pbnRlcm5hbC9nYy9nY3guZCwKCXBob2Jvcy9pbnRlcm5hbC9nYy93aW4zMi5kLCBwaG9ib3MvaW50ZXJuYWwvb2JqZWN0LmQsCglwaG9ib3Mvc3RkL2Jhc2U2NC5kLCBwaG9ib3Mvc3RkL2Mvc3RyaW5nLmQsIHBob2Jvcy9zdGQvYy90aW1lLmQsCglwaG9ib3Mvc3RkL2Mvd2luZG93cy9jb20uZCwgcGhvYm9zL3N0ZC9jL3dpbmRvd3Mvd2luZG93cy5kLAoJcGhvYm9zL3N0ZC9kYXRlcGFyc2UuZCwgcGhvYm9zL3N0ZC9kZW1hbmdsZS5kLCBwaG9ib3Mvc3RkL2ZpbGUuZCwKCXBob2Jvcy9zdGQvZm9ybWF0LmQsIHBob2Jvcy9zdGQvcmVnZXhwLmQsIHBob2Jvcy9zdGQvc3RkaW8uZCwKCXBob2Jvcy9zdGQvc3RyZWFtLmQsIHBob2Jvcy9zdGQvc3RyaW5nLmQsIHBob2Jvcy9zdGQvdGhyZWFkLmQsCglwaG9ib3Mvc3RkL3V0Zi5kOiBNZXJnZQoKCSogZG1kL2ludGVycHJldC5jOiBOZXcgZmlsZQoKMjAwNy0wMy0wMyAgRGF2aWQgRnJpZWRtYW4gIDxkdmRmcmRtbkB1c2Vycy5zZi5uZXQ+CgoJKiBwaG9ib3Mvc3RkL2MvZGFyd2luL2Rhcndpbi5kOiBSZW1vdmUuIChCdWd6aWxsYSA5ODQpCgoJKiBwaG9ib3Mvc3RkL2RhdGUuZDogQ2xlYW51cAoKCSogZC1sYW5nLmNjOiBFdmFsdWF0ZSBCWVRFU19CSUdfRU5ESUFOIGF0IHJ1bnRpbWUuCgoJKiBkLWNvZGVnZW4uY2M6IENsZWFudXAuCgoJKiBkLWdsdWUuY2M6IEluaXRpYWxpemUgZm9yZWFjaCBrZXkgd2l0aCB6ZXJvLCBub3QgZGVmYXVsdCBpbml0LgoKCSogcGF0Y2gtZ2NjLTQuMC54LCBwYXRjaC1nY2MtNC4xLngsIHBhdGNoLWFwcGxlLWdjYy00LjAueDoKCVByZXZlbnQgZW1pc3Npb24gb2YgcHJvbG9ndWUgYW5kIGVwaWxvZ3VlIGNvZGUgZm9yIG5ha2VkIGZ1bmN0aW9ucy4KCShCdWd6aWxsYSAxMDEzKQoKMjAwNy0wMy0wMiAgRGF2aWQgRnJpZWRtYW4gIDxkdmRmcmRtbkB1c2Vycy5zZi5uZXQ+CgoJKiBkLWxhbmcuY2M6IFRlc3QgQllURVNfQklHX0VORElBTiBhdCBydW50aW1lLgoKCSogZC1nbHVlLmNjIChGb3JlYWNoU3RhdGVtZW50Ojp0b0lSKTogSW5pdGlhbGl6ZSBrZXkgdG8gemVybywgbm90CglkZWZhdWx0SW5pdC4KCgkqIHBhdGNoLWJ1aWxkX2djYy00LjAsIHBob2Jvcy9hY2luY2x1ZGUubTQsIHBob2Jvcy9jb25maWd1cmUuaW4sCglwaG9ib3MvTWFrZWZpbGUuYW06IFJlbW92ZSByZWZlcmVuY2VzIHRvIGxpYmdwaG9ib3Muc3BlYwoKCSogcGhvYm9zL01ha2VmaWxlLmluLCBwaG9ib3MvY29uZmlndXJlOiBSZWdlbmVyYXRlCgoJKiBwYXRjaC1nY2MtMy40LngsIHBhdGNoLWdjYy0zLjMueCwgcGF0Y2gtZ2NjLTQuMC54LAoJcGF0Y2gtZ2NjLTQuMS54LCBwYXRjaC1hcHBsZS1nY2MtNC4wLng6IFN1cHBvcnQgZW5hYmxpbmcKCS1wdGhyZWFkIG9wdGlvbiBieSBkZWZhdWx0IHdpdGhvdXQgJ3VucmVjb2duaXplZCBvcHRpb24nCgllcnJvciBtZXNzYWdlLgoKCSogZC1zcGVjLmMgKGxhbmdfc3BlY2lmaWNfZHJpdmVyKTogRW5hYmxlIC1wdGhyZWFkIG9wdGlvbgoKCSogcGhvYm9zL2xpYmdwaG9ib3Muc3BlYy5pbjogUmVtb3ZlCgoyMDA3LTAyLTI4ICBEYXZpZCBGcmllZG1hbiAgPGR2ZGZyZG1uQHVzZXJzLnNmLm5ldD4KCgkqIHBob2Jvcy9zdGQvbG9hZGVyLmQ6IEZpeCBlcnJvcgoKMjAwNy0wMi0yNyAgRGF2aWQgRnJpZWRtYW4gIDxkdmRmcmRtbkB1c2Vycy5zZi5uZXQ+CgoJKiBzZXR1cC1nY2Muc2g6IENyZWF0ZSBkaXJlY3Rvcnkgb2YgbGlua3MgaW5zdGVhZCBvZiBhIHNpbmdsZQoJbGluay4gIE5vIGxvbmdlciBuZWVkIHRvIGNvcHkgc3VwcG9ydCBmaWxlcy4KCgkqIHRhcmdldC12ZXItc3ltcy5zaDogU3VwcG9ydCB0YXJnZXRzIHdpdGggYm90aCAzMi1iaXQgYW5kCgk2NC1iaXQgbW9kZXMuICBPdXRwdXQgcHJlcHJvY2Vzc29yIGRlZmluaXRpb25zIGluc3RlYWQgb2YKCWNvbW1hbmQgbGluZSBvdGlvbnMuCgoJKiBNYWtlLWxhbmcuaW46IFB1dCB0YXJnZXQtdmVyLXN5bXMuc2ggb3V0cHV0IGluIGQtY29uZmRlZnMuaC4KCgkqIHBhY2thZ2Uvc2ltcGxlLnNoOiBIYW5kbGUgbXVsdGlsaWIuCgoJKiBwaG9ib3MvY29uZmlndXJlLmluOiBVc2UgQXV0b21ha2UsIG11bHRpbGliLgoJKiBwaG9ib3MvTWFrZWZpbGUuYW06IE5ldyBmaWxlLgoJKiBwaG9ib3MvYWNpbmNsdWRlLm00OiBGaXggcXVvdGluZy4KCgkqIHBob2Jvcy9NYWtlZmlsZS5pbiwgcGhvYm9zL2NvbmZpZ3VyZTogcmVnZW5lcmF0ZWQKCgkqIHBhdGNoLWdjYy0zLjMueCwgcGF0Y2gtZ2NjLTMuNC54LCBwYXRjaC1nY2MtNC4wLngsCgkgIHBhdGNoLWdjYy00LjEueCwgbGFuZy1zcGVjcy5oOiBBZGQgJU4gc3BlYyBjb2RlLgoKCSogcGF0Y2gtYnVpbGRfZ2NjLTQuMDogR3JhYiA2NC1iaXQgbGliZ3Bob2Jvcy5hCgoJKiBkdC5oLCBkLW9iamZpbGUuY2MKCShkdF9zaXplKTogQ2hhbmdlIHJldHVybiB0eXBlIHRvIHRhcmdldF9zaXplX3QuICBVc2UgdGFyZ2V0X3NpemVfdC4KCShkdG56ZXJvcywgZHRkd29yZCwgZHR4b2ZmKTogQ2hhbmdlIGNvdW50IHRvIHRhcmdldF9zaXplX3QKCShkdGFieXRlcywgZHRuYnl0ZXMsIGR0YXdvcmRzLCBkdG53b3JkcywgZHRuYml0cyk6IENoYW5nZSBjb3VudCB0byBzaXplX3QKCShkdGkzMik6IGFkZGVkCgoJKiBkLXRvZHQuY2M6IENsZWFudXAuCgoJKiBkLW9iamZpbGUuY2M6CgkoZHQybm9kZSk6IHVzZSBUeXBlOjp0c2l6ZV90IGZvciBEVF93b3JkIGFuZCBEVF94b2ZmCgoJKiBkLWdsdWUuY2M6CgkoUHRyRXhwOjp0b0VsZW0pOiBVc2UgdGFyZ2V0X3NpemVfdCBmb3Igb2Zmc2V0CgkoZ2NjX2RfYmFja2VuZF9pbml0KTogU2V0IENMQVNTSU5GT19TSVpFIGFuZCBUaW5kZXguCgkoQXNzaWduRXhwOjp0b0VsZW0pOiBVc2UgdHNpemVfdCBmb3IgX2RfYXJyYXljb3B5IGFyZwoJKENhc2VTdGF0ZW1lbnQ6OnRvSVIpOiAobm90IHJlYWxseSBhIDY0LWJpdCBjaGFuZ2UpIFVzZSBpbnQzMiBmb3IKCWNhc2UgdmFsdWUgdG8gbWF0Y2ggbGliY2FsbAoJKENhdEFzc2lnbkV4cDo6dG9FbGVtKTogY2xlYW51cCAobm90IDY0LWJpdCkKCShGb3JlYWNoU3RhdGVtZW50Ojp0b0lSKTogZml4IGJ1ZyBpbiBrZXkgaW5jcmVtZW50IGV4cHJlc3Npb24KCgkqIGQtY29kZWdlbi57Y2MsaH0KCShBZ2dMYXlvdXQ6OmFkZEZpZWxkKTogdXNlIHRhcmdldF9zaXplX3QgZm9yIG9mZnNldAoKCSogZC1jb2RlZ2VuLmNjOgoJKC4uLik6IExJQkNBTExfQVJSQVlDQVNUOiBVc2Ugc2l6ZV90IGFyZ3MgKGxpYmNhbGwgYWxyZWFkeSB1c2VzIHNpemVfdCkKCUxJQkNBTExfQVJSQVlDT1BZOiBkaXR0bwoJKGNvbnZlcnRUbyk6IFVzZSBUeXBlOjp0c2l6ZV90IGZvciBfZF9hcnJheWNhdCBhcmd1bWVudHMKCgkqIGQtZGVjbHMuY2MKCShDbGFzc0RlY2xhcmF0aW9uOjp0b1Z0YmxTeW1ib2wpOiBVc2UgVHlwZTo6dGluZGV4IGZvciBhcnJheSBzaXplLgoJKEZ1bmNEZWNsYXJhdGlvbjo6dG9UaHVua1N5bWJvbCk6IFVzZSB0YXJnZXRfcHRyZGlmZl90CgoJKiBsYW5nLm9wdDogYWRkIC1mbXVsdGlsaWItZGlyCgoJKiBkLWxhbmcuY2M6IFVzZSAtZm11bHRpbGliLWRpcgoKCShkX2luaXQpOiBTZXQgZ2xvYmFsLnBhcmFtcy5pc1g4Nl82NCBpZiBUQVJHRVRfNjRCSVQuCglTZXQgQ1BVIHZlcnNpb24gc3ltYm9sIGFjY29yZGluZyB0byBUQVJHRVRfNjRCSVQuCglSZW1vdmUgQml0c1BlclBvaW50ZXIgYW5kIEJpdHNQZXJXb3JkIHZlcnNpb24gc3ltYm9scy4KCgkqIGQtYnVpbHRpbnMyLmNjCgkoZF9nY2NfbWFnaWNfYnVpbHRpbnNfbW9kdWxlKTogQ2hhbmdlICJhYmkiIGludGVnZXIgdHlwZXMKCXRvICJDIi4gIEFkZCAicG9pbnRlciIgaW50ZWdlciB0eXBlcy4KCShnY2NfdHlwZV90b19kX3R5cGUpOiBVc2UgVHlwZTo6dGluZGV4IGZvciBhcnJheSB0eXBlcy4gIFVzZSB3aG9sZQoJYmFjay1lbmQgc2l6ZS4KCgkqIHN5bWJvbC5oCgkoVGh1bmspOiBVc2UgdGFyZ2V0X3B0cmRpZmZfdCBmb3Igb2Zmc2V0LgoKCSogZG1kL21hcnMuaDogRGVmaW5lIHRhcmdldF9zaXplX3QgYW5kIHRhcmdldF9wdHJkaWZmX3QgdG8gYWxsb3cgdXNlIG9mCgkzMi1iaXQgc2l6ZS10cmFja2luZyB2YXJpYWJsZXMgd2hlbiBnZW5lcmF0aW5nIDMyLWJpdCBjb2RlLgoKCSogZG1kL2FnZ3JlZ2F0ZS5oOgoJKENMQVNTSU5GT19TSVpFKSBjaGFuZ2UgdG8gJ2V4dGVybiBpbnQnICUlLi4uLgoJKiBkbWQvY2FzdC5kOiBVc2UgdGFyZ2V0X3B0cmRpZmZfdCB3aXRoIGlzQmFzZU9mLgoKCSogZG1kL2NsYXNzLmM6CgkoQ2xhc3NEZWNsYXJhdGlvbjo6c2VtYW50aWMpOiB1c2UgUFRSU0laRQoJKEludGVyZmFjZURlY2xhcmF0aW9uOjpzZW1hbnRpYyk6IFVzZSBzYy0+b2Zmc2V0ID0gUFRSU0laRSAqIDIgaW5zdGVhZCBvZgoJOCAtLSBub3Qgc3VyZSB3aGF0IHRoaXMgaXMgZm9yLi4uCgoJKiBkbWQvZHN5bWJvbC5bY2hdCgkoRHN5bWJvbDo6c2l6ZSk6IENoYW5nZSB0byB0YXJnZXRfc2l6ZV90CgoJKiBkbWQvaW5pdC5oOiBBcnJheUluaXRpYWxpemVyOjpkaW0gPC0gY2hnIHRvIHRhcmdldF9zaXplX3QKCgkqIGRtZC9hZ2dyZWdhdGUuaDogVXNlIHRhcmdldF9wdHJkaWZmX3QgYW5kIHRhcmdldF9zaXplX3QKCgkqIGRtZC90eXBpbmYuYyAoVHlwZUluZm9TdHJ1Y3REZWNsYXJhdGlvbjo6dG9EdCk6IFVzZSBkdGkzMiBmb3IgZmxhZ3MuCgkqIGRtZC90b29iai5jIChNb2R1bGU6Omdlbm1vZHVsZWluZm8sIENsYXNzRGVjbGFyYXRpb246OnRvT2JqRmlsZSwKCUludGVyZmFjZURlY2xhcmF0aW9uOjp0b09iakZpbGUpOiBkaXR0bwoKCSogZG1kL2Z1bmMuYzogVXNlIHRhcmdldF9wdHJkaWZmX3Qgd2l0aCBpc0Jhc2VPZi4KCShOZXdEZWNsYXJhdGlvbjo6c2VtYW50aWMpOiBBbGxvdyBUeXBlOjp0dW5zNjQgaWYgNjQtYml0LgoKCSogZG1kL210eXBlLmMKCShUeXBlOjppbml0KTogc2V0IENMQVNTSU5GT19TSVpFCgkoVHlwZTo6ZG90RXhwKTogdXNlIFR5cGU6OnRzaXplX3QgZm9yIC5vZmZzZXRvZiBwcm9wZXJ0eQoJKFR5cGVBcnJheTo6ZG90RXhwKTogdXNlIFR5cGU6OnRzaXplX3QgZm9yIF9hZFJldmVyc2UgYXJncwoJKFR5cGVBQXJyYXk6OmRvdEV4cCk6IHVzZSBQVFJTSVpFIHRvIGFsaWduIGtleXNpemUKCShUeXBlU3RydWN0Ojpkb3RFeHApOiB1c2UgVHlwZTo6dHNpemVfdCBmb3Igb2Zmc2V0CgkoVHlwZVN0cnVjdDo6YWxpZ25zaXplKTogdXNlIHRhcmdldF9zaXplX3QKCgkqIGRtZC9tdHlwZS5oOiBBZGQgVGluZGV4IGdsb2JhbCB2YXJpYWJsZS4KCShUeXBlKTogQ2hhbmdlIHRpbmRleCB0byBiYXNlaWNbVGluZGV4XS4KCShUeXBlOjppc0Jhc2VPZik6IHVzZSB0YXJnZXRfcHRyZGlmZl90CgoJKiBkbWQvZXhwcmVzc2lvbi5bY2hdOgoJKFN5bU9mZkV4cCk6IG9mZnNldCBjaGFuZ2VkIHRvIHRhcmdldF9zaXplX3QKCShOZXdFeHA6OnNlbWFudGljKTogdXNlIHNpemVfdCBhcyBhcmd1bWVudAoJKEFycmF5TGl0ZXJhbEV4cDo6dG9NYW5nbGVCdWZmZXIsIFN5bU9mZkV4cDo6dG9DQnVmZmVyKTogZml4IHByaW50ZgoKCSogZG1kL2RlY2xhcmF0aW9uLmMKCShWYXJEZWNsYXJhdGlvbjo6c2VtYW50aWMpOiB1c2Ugc2ludGVnZXJfdCBmb3IgZGltCgoJKiBkbWQvZGVjbGFyYXRpb24uaDoKCShEZWNsYXJhdGlvbjo6c2l6ZSk6IFVzZSB0YXJnZXRfc2l6ZV90CgkoVmFyRGVjbGFyYXRpb24pOiBVc2UgdGFyZ2V0X3NpemVfdCBmb3Igb2Zmc2V0CgoJKiBkbWQvc2Nob3BlLmg6CgkoU2NvcGU6Om9mZnNldCkgVXNlIHRhcmdldF9zaXplX3QuCgoJKiBkbWQvc3RhdGVtZW50LmM6CgkoRm9yZWFjaFN0YXRlbWVudDo6c2VtYW50aWMpOiBDaGFuZ2UgcmV0dXJuIHZhbHVlIG9mIF9hKkFwcGx5KiB0bwoJVHlwZTo6dGludDMyLiAgRml4IGxvZ2ljIGZvciBhbGxvd2VkIGluZGV4IHZhcmlhYmxlIHR5cGVzLgoJVXNlIFBUUlNJWkUgdG8gYWxpZ24ga2V5c2l6ZS4KCgkqIGRtZC9zdHJ1Y3QuYwoJKEFnZ3JlZ2F0ZURlY2xhcmF0aW9uOjphZGRGaWVsZCk6IHVzZSB0YXJnZXRfc2l6ZV90CgoJKiBkbWQvdG9kdC5jCgkoU3RydWN0SW5pdGlhbGl6ZXI6OnRvRHQpOiBVc2UgdGFyZ2V0X3NpemVfdCBmb3Igb2Zmc2V0cwoJKENsYXNzRGVjbGFyYXRpb246OnRvRHQyKTogVXNlIFBUUlNJWkUKCgkqIHBob2Jvcy9vYmplY3QuZCwgcGhvYm9zL2ludGVybmFsL29iamVjdC5kOgoJKEludGVyZmFjZSk6IFVzZSBwdHJkaWZmX3QgZm9yIG9mZnNldC4KCSgqLnRvSGFzaCk6IGNhc3QgcG9pbnRlciB0byBzaXplX3QKCgkqIHBob2Jvcy9pbnRlcm5hbC9vYmplY3QuZDogVXNlIGludGVnZXIgdHlwZSBkZWZpbml0aW9ucyBmcm9tCglwaG9ib3Mvb2JqZWN0LmQuICBTcGxpdCAlLipzIGFyZ3MuCgoJKiBwaG9ib3MvaW50ZXJuYWwvYWRpLmQ6CgkoX2FkUmV2ZXJzZSk6IFVzZSBzaXplX3QgZm9yIHN6ZWxlbS4KCSogcGhvYm9zL2NvbmZpZ3VyZS5pbjogZml4IG11bHRpbGliIGRpcgoJKiBwaG9ib3MvY29uZmlndXJlOiB1cGRhdGVkCgoJKiBwaG9ib3MvY29uZmlnL2NiX3VuaXguYzogUmVtb3ZlZC4KCgkqIHBob2Jvcy9jb25maWcvZ2VuX2NvbmZpZzEuYzogQWRkIHNzaXplX3QuCgoJKiBwaG9ib3MvY29uZmlnL2NvbmZpZy1oZWFkOiBVc2UgX19idWlsdGluX0Nsb25nIGFuZCBfX2J1aWx0aW5fQ3Vsb25nLgoJKiBwaG9ib3MvY29uZmlnL2NvbmZpZy1taWQ6IFN1cHBvcnQgWDg2XzY0IGFuZCBvdGhlciA2NC1iaXQgQ1BVcy4KCSogcGhvYm9zL2NvbmZpZy91bml4LW1pZDogU29tZSBzaXplX3QgYW5kIHNzaXplX3QgYXJnL3JldHVybiB0eXBlIGZpeGVzLgoKCSogcGhvYm9zL2NvbmZpZy9kYXJ3aW44L2ZyYWctZ2VuLCBwaG9ib3MvY29uZmlnL2RhcndpbjgvZnJhZy11bml4OgoJU3VwcG9ydCAzMi0gYW5kIDY0LWJpdC4KCSogcGhvYm9zL2NvbmZpZy9taW5ndy9mcmFnLXVuaXgsIHBob2Jvcy9jb25maWcvc2t5b3MvZnJhZy11bml4OgoJQWRkIHNzaXplX3QuCgoJKiBwaG9ib3MvZ2NjL2J1aWx0aW5zLmQ6IFVwZGF0ZSBkb2N1bWVudGF0aW9uCgoJKiBwaG9ib3MvZ2NjL3Vud2luZC5kOiBVc2UgZGlmZmVyZW50IGJ1aWx0aW4gaW50ZWdlciB0eXBlcy4KCgkqIHBob2Jvcy9pbnRlcm5hbC9hcnJheWNhdC5kIChfZF9hcnJheWNvcHkpOiB1c2Ugc2l6ZV90IGFyZwoKCSogcGhvYm9zL3N0ZC9jL2ZlbnYuZDogQWRkIGZpZWxkIGZvciA2NC1iaXQgTGludXguCgoJKiBwaG9ib3Mvc3RkL2MvbGludXhleHRlcm4uZDogVXNlIEMgbG9uZyBmb3IgdGltZXpvbmUuCgoJKiBwaG9ib3Mvc3RkL2Mvc3RkaW8uZCwKCSAgcGhvYm9zL3N0ZC9jL3N0ZGxpYi5kLCBwaG9ib3Mvc3RkL2MvbWF0aC5kLAoJICBwaG9ib3Mvc3RkL2MvdGltZS5kOiB1c2UgQyBsb25nIHR5cGVzCgoJKiBwaG9ib3Mvc3RkL3N0ZGludC5kOiBBZGQgQyBsb25nIHR5cGVzLgoJVXNlIHB0cmRpZmZfdCBhbmQgc2l6ZV90IGZvciAqaW50cHRyX3QgdHlwZXMuCgoJKiBwaG9ib3Mvc3RkL2Zvcm1hdC5kOiBGb3JtYXR0aW5nIHN0cnVjdHMgb24gWDg2XzY0IGxvb3NlcwoKCSogcGhvYm9zL2ludGVybmFsL2Nhc3QuZCAoX2RfaXNiYXNlb2YyKTogY2hhbmdlIG9mZnNldCB0byBzaXplX3QKCgkqIHBob2Jvcy9pbnRlcm5hbC9mcG1hdGguZDogU3VwcG9ydCA2NC1iaXQgQ1BVcy4KCgkqIHBob2Jvcy9zdGQvZmlsZS5kOiBUeXBlIG9mIHN0YXQuc3Rfc2l6ZSBtYXkgdmFyeTsgdXNlIGF1dG8uCgkoVW5peCByZWFkKTogTWFrZSBzdXJlIGZpbGUncyBzaXplIGlzIHdpdGhpbiByYW5nZS4KCgkqIHBob2Jvcy9jcmMzMi5kLCBwaG9ib3MvZ2NzdGF0cy5kLAoJcGhvYm9zL2ludGVybmFsL3Fzb3J0Zy5kOgoJcGhvYm9zL2ludGVybmFsL2djL2djLmQgKF9kX2FycmF5Y2F0blQpLAoJcGhvYm9zL2ludGVybmFsL2djL2djb2xkLmQgKF9kX2FycmF5Y2F0biksCglwaG9ib3MvaW50ZXJuYWwvZ2MvZ2N4LmQsCglwaG9ib3MvaW50ZXJuYWwvbWFycy5oLAoJcGhvYm9zL3N0ZC9iYXNlNjQuZCwgcGhvYm9zL3N0ZC9iaXRhcnJheS5kLCBwaG9ib3Mvc3RkL21hdGguZCwKCXBob2Jvcy9zdGQvbWF0aDIuZCwgcGhvYm9zL3N0ZC9tZDVzdW0uZCwgcGhvYm9zL3N0ZC9vdXRidWZmZXIuZCwKCXBob2Jvcy9zdGQvcGF0aC5kLCBwaG9ib3Mvc3RkL3N0cmluZy5kLCBwaG9ib3Mvc3RkL3VyaS5kCglwaG9ib3Mvc3RkL3R5cGVpbmZvL3RpX0FDLmQsCgl1c2Ugc2l6ZV90LCBwdHJkaWZmX3Qvc3NpemVfdAoKCSogcGhvYm9zL3N0ZC9sb2FkZXIuZDogQWRkIGRlZmluaXRpb25zIGZvciA2NC1iaXQgTWFjaC1PIG9iamVjdHMuCgoJKiBwaG9ib3Mvc3RkL29wZW5yai5kLCBwaG9ib3Mvc3RkL2xvYWRlci5kLCBwaG9ib3Mvc3RkL21vZHVsZWluaXQuZCwKCXBob2Jvcy9zdGQvc29ja2V0LmQsIHBob2Jvcy9zdGQvcmVnZXhwLmQsIHBob2Jvcy9zdGQvdXJpLgoJZCwgcGhvYm9zL3N0ZC96aXAuZDogc3BsaXQgJyUuKnMnIGFyZ3MKCgkqIHBob2Jvcy9zdGQvdHlwZWluZm8vdGlfQSouZCwgcGhvYm9zL3N0ZC90eXBlaW5mby90aV9wdHIuZDoKCWZpeCBjb21wYXJlIG1ldGhvZHMKCgkqIHBob2Jvcy9pbnRlcm5hbC9nYy9nY19keWxkLmM6IHVzZSB1aW50cHRyX3QKCgkqIHBob2Jvcy9zdGQvYy9zdGRpby5kLCBwaG9ib3MvaW50ZXJuYWwvZ2MvZ2NnY2MuZDoKCURvbid0IHVzZSBvbGQgdmVyc2lvbiBzeW1ib2xzLgoKCSogcGhvYm9zL3N0ZC9jL21hY2gvbWFjaC5kIChuYXR1cmFsX3QpOiBhbHdheXMgYSB1aW50CgoJKiBwaG9ib3MvZXRjL2MvemxpYi5kOiB1c2UgQ3Vsb2dfdAoKMjAwNy0wMi0xMyAgRGF2aWQgRnJpZWRtYW4gIDxkdmRmcmRtbkB1c2Vycy5zZi5uZXQ+CgoJKiBzZXR1cC1nY2Muc2g6IENvcHkgdGhlIHJlbW92ZWQgZmlsZXMgZnJvbSB0aGUgdG9wLWxldmVsCglkaXJlY3RvcnkuCgoyMDA3LTAyLTEwICBEYXZpZCBGcmllZG1hbiAgPGR2ZGZyZG1uQHVzZXJzLnNmLm5ldD4KCgkqIHBob2Jvcy9jb25maWcuZ3Vlc3MsIHBob2Jvcy9jb25maWcuc3ViLCBwaG9ib3MvaW5zdGFsbC1zaDoKCVJlbW92ZSBmaWxlcy4KCgkqIHBob2Jvcy9zdGQvZm9ybWF0LmQgKHB1dEFBcnJheSk6IGFjY291bnQgZm9yCglhbGlnbm1lbnQgb2YgdGhlIHZhbHVlCgoJKiBwaG9ib3MvTWFrZWZpbGUuaW46IGZpeCBtZXRhc3RyaW5ncy5vCgoyMDA3LTAyLTA5ICBEYXZpZCBGcmllZG1hbiAgPGR2ZGZyZG1uQHVzZXJzLnNmLm5ldD4KCgkqIHBob2Jvcy9zdGQvZm9ybWF0LmQgKGRvRm9ybWF0KTogdXNlIGFsaWdudHNpemUKCglSZXN0IG9mIERNRCAxLjAwNSBtZXJnZToKCgkqIHBob2Jvcy9NYWtlZmlsZS5pbiAoTUFJTl9PQkpTKTogYWRkIG1ldGFzdHJpbmdzLm8KCjIwMDctMDItMDggIERhdmlkIEZyaWVkbWFuICA8ZHZkZnJkbW5AdXNlcnMuc2YubmV0PgoKCSogZC1sYW5nLmNjLCBsYW5nLm9wdDogc3VwcG9ydCAtdjEgb3B0aW9uCgoJKiBsYW5nLm9wdCAoZF9pbml0X29wdGlvbnMpOiBzZXQgZ2xvYmFsLnBhcmFtcy5EdmVyc2lvbgoKCSogZG1kLXNjcmlwdDogLXYxIC0+IC1mZC12ZXJzaW9uPTEKCgkqIHBob2Jvcy9zdGQvZm9ybWF0LmQgKGRvRm9ybWF0KTogRml4IGZvciB2YXIgYXJncyBkaWZmZXJlbmNlcwoKCUluaXRpYWwgbWVyZ2Ugb2YgRE1EIDEuMDA1OgoKCWRtZC9hdHRyaWIuYywgZG1kL2F0dHJpYi5oLCBkbWQvY2FzdC5jLCBkbWQvY29uZC5jLAoJZG1kL2NvbnN0Zm9sZC5jLCBkbWQvZHN5bWJvbC5jLCBkbWQvZHN5bWJvbC5oLCBkbWQvZXhwcmVzc2lvbi5jLAoJZG1kL2V4cHJlc3Npb24uaCwgZG1kL2Z1bmMuYywgZG1kL2lkZ2VuLmMsIGRtZC9pbmxpbmUuYywKCWRtZC9sZXhlci5jLCBkbWQvbGV4ZXIuaCwgZG1kL21hcnMuYywgZG1kL21vZHVsZS5jLCBkbWQvbXR5cGUuYywKCWRtZC9tdHlwZS5oLCBkbWQvb3B0aW1pemUuYywgZG1kL3BhcnNlLmMsIGRtZC9wYXJzZS5oLAoJZG1kL3Njb3BlLmMsIGRtZC9zdGF0ZW1lbnQuYywgZG1kL3N0YXRlbWVudC5oLCBkbWQvdGVtcGxhdGUuYywKCWRtZC90ZW1wbGF0ZS5oLCBkbWQvdG9vYmouYywgZG1kL3R5cGluZi5jOiBNZXJnZS4KCglwaG9ib3MvaW50ZXJuYWwvYWFBLmQsIHBob2Jvcy9pbnRlcm5hbC9nYy9nYy5kLAoJcGhvYm9zL2ludGVybmFsL29iamVjdC5kLCBwaG9ib3MvbGludXgubWFrLCBwaG9ib3Mvc3RkL2Mvc3RkbGliLmQsCglwaG9ib3Mvc3RkL2NvbnYuZCwgcGhvYm9zL3N0ZC9jdHlwZS5kLCBwaG9ib3Mvc3RkL2Zvcm1hdC5kLAoJcGhvYm9zL3N0ZC9yZWdleHAuZCwgcGhvYm9zL3N0ZC96bGliLmQsIHBob2Jvcy9zdGQuZGRvYywKCXBob2Jvcy93aW4zMi5tYWs6IE1lcmdlLgoKCXBob2Jvcy9zdGQvbWV0YXN0cmluZ3MuZDogTmV3IGZpbGUKCjIwMDctMDItMDUgIERhdmlkIEZyaWVkbWFuICA8ZHZkZnJkbW5AdXNlcnMuc2YubmV0PgoKCVJlbGVhc2UgR0RDIDAuMjIKCgkqIGQtY29kZWdlbi5jYyAodHdvRmllbGRUeXBlKTogRml4IGJhY2sgZW5kIC0+IGZyb250IGVuZCB0eXBlCgltYXBwaW5nLgoKCSogTWFrZS1sYW5nLmluOiBFbmFibGUgRUxGT0JKIHRvIHB1dCBzb21lIFJUVEkgaW4gdGhlIHJlYWQtb25seQoJZGF0YSBzZWN0aW9uLgoKCSogR0RDLmh0bWw6IFVwZGF0ZQoKMjAwNy0wMi0wNCAgRGF2aWQgRnJpZWRtYW4gIDxkdmRmcmRtbkB1c2Vycy5zZi5uZXQ+CgoJKiBwaG9ib3MvZ2NjL2NicmlkZ2VfdGltZS5jIChfZF9nbnVfY2JyaWRnZV90emEpLAoJcGhvYm9zL3N0ZC9kYXRlLmQ6IEZpeCB0aW1lem9uZSBhZGp1c3Qgc2lnbgoKMjAwNy0wMi0wMyAgRGF2aWQgRnJpZWRtYW4gIDxkdmRmcmRtbkB1c2Vycy5zZi5uZXQ+CgoJKiBwaG9ib3MvY29uZmlnL3VuaXgtbWlkOiBDb3JyZWN0bHkgaW5pdGlhbGl6ZSBzb2NrYWRkcioKCShCdWd6aWxsYSA4MTgpCgoJKiBkbWQtc2NyaXB0OiBGaXggLUgqIG9wdGlvbnMgKEJ1Z3ppbGxhIDg5NikuCglTdXBwb3J0IC1mcmFtZXdvcmsuIEZpeCBlcnJvciBtZXNzYWdlLgoKCSogZC1sYW5nLmNjIChkX3dyaXRlX2dsb2JhbF9kZWNsYXJhdGlvbnMpLCBwYXRjaC1nY2MtNC4xLng6CglGaXhlcyBmb3IgZHdhcmYyb3V0IElDRXMKCgkqIGQtb2JqZmlsZS5jYyAoY2hlY2tfc3RhdGljX3N5bSk6IEZpeCBzZXR0aW5nIFRSRUVfQ09OU1RBTlQuCgoJUmVzdCBvZiBETUQgMS4wMDQgbWVyZ2U6CgoJKiBnY2MtbWFycy5jYywgZ2RjLXZlcnNpb246IFVwZGF0ZQoKCSogcGhvYm9zL3N0ZC9yZWdleHAuZDogdXBkYXRlCgoJKiBwaG9ib3MvaW50ZXJuYWwvZ2MvZ2NvbGQuZCAoX2RfbmV3YXJyYXlpcCk6CgoJKiBwaG9ib3MvaW50ZXJuYWwvZ2MvZ2MuZDogRml4IGFyZ3VtZW50IGFuZCByZXN1bHQgdHlwZXMuCgoJKiBwaG9ib3MvY29uZmlnL3VuaXgtaGVhZCwgcGhvYm9zL2NvbmZpZy91bml4LW1pZDogVXBkYXRlCgoJKiBwaG9ib3MvTWFrZWZpbGUuaW46IFVwZGF0ZSBmb3IgZmlsZXMgcmVtb3ZlZCBpbiBETUQgMS4wMDQKCgkqIGQtZGVjbHMuY2MgKFR5cGVkZWZEZWNsYXJhdGlvbjo6dG9Jbml0aWFsaXplcik6IENvcHkKCWZyb20gZG1kL3RvY3N5bS5jLiAgQ3JlYXRlIHRoZSBTZHQgaGVyZS4KCgkqIGRtZC90b29iai5jIChUeXBlZGVmRGVjbGFyYXRpb246OnRvT2JqRmlsZSk6IFVwZGF0ZQoJZm9yIHRvSW5pdGlhbGl6ZXIgY2hhbmdlCgoJKiBkbWQvbXR5cGUuYyAoVHlwZUFycmF5Ojpkb3RFeHApOiBGaXggbGlicmFyeSBjYWxsIGRlY2xzCgoJKiBkLWxhbmcuY2M6IFVwZGF0ZQoKCSogZC1jb2RlZ2VuLltjaF0sIGQtZ2x1ZS5jYzogVXBkYXRlIG1lbW9yeSBhbGxvY2F0aW9uIGxpYnJhcnkKCWNhbGxzLgoKCSogZC1sYW5nLmNjIChkX3dyaXRlX2dsb2JhbF9kZWNsYXJhdGlvbnMpOiBjYWxsCgllbWl0X2RlYnVnX2dsb2JhbF9kZWNsYXJhdGlvbnMgb25seSBmb3IgR0NDIDQuMAoKCSogZG1kL210eXBlLmMgKFR5cGVBcnJheTo6ZG90RXhwKTogdXBkYXRlCgoJKiBwaG9ib3MvY29uZmlnL3VuaXgtaGVhZCwgcGhvYm9zL2NvbmZpZy91bml4LW1pZDogdXBkYXRlCgoJKiBwaG9ib3MvaW50ZXJuYWwvZ2MvZ2NvbGQuZDogVXNlIG9sZCBHREMgbW9kaWZpY2F0aW9ucy4KCjIwMDctMDItMDIgIERhdmlkIEZyaWVkbWFuICA8ZHZkZnJkbW5AdXNlcnMuc2YubmV0PgoKCUluaXRpYWwgbWVyZ2UgRE1EIDEuMDA0OgoKCSogZG1kL2FnZ3JlZ2F0ZS5oLCBkbWQvYXR0cmliLmMsIGRtZC9hdHRyaWIuaCwgZG1kL2RlY2xhcmF0aW9uLmMsCglkbWQvZGVjbGFyYXRpb24uaCwgZG1kL2RzeW1ib2wuYywgZG1kL2RzeW1ib2wuaCwgZG1kL2V4cHJlc3Npb24uYywKCWRtZC9pbXBvcnQuYywgZG1kL2ltcG9ydC5oLCBkbWQvaW5saW5lLmMsIGRtZC9tYXJzLmMsIGRtZC9tYXJzLmgsCglkbWQvbW9kdWxlLmMsIGRtZC9tb2R1bGUuaCwgZG1kL210eXBlLmMsIGRtZC9tdHlwZS5oLAoJZG1kL3N0cnVjdC5jLCBkbWQvdGVtcGxhdGUuYywgZG1kL3RlbXBsYXRlLmgsIGRtZC90b2NzeW0uYywKCWRtZC90b2R0LmMsIGRtZC90b29iai5jLCBkbWQvdHlwaW5mLmM6IE1lcmdlIERNRCAxLjAwNAoKCSogcGhvYm9zL2ludGVybmFsL2FhQS5kLCBwaG9ib3MvaW50ZXJuYWwvYWRpLmQsCglwaG9ib3MvaW50ZXJuYWwvYXJyYXljYXN0LmQsIHBob2Jvcy9pbnRlcm5hbC9hcnJheWNhdC5kLAoJcGhvYm9zL2ludGVybmFsL2djL2djLmQsIHBob2Jvcy9pbnRlcm5hbC9nYy9nY3guZCwKCXBob2Jvcy9pbnRlcm5hbC9nYy9saW51eC5tYWssIHBob2Jvcy9pbnRlcm5hbC9nYy93aW4zMi5tYWssCglwaG9ib3MvaW50ZXJuYWwvb2JqZWN0LmQsIHBob2Jvcy9saW51eC5tYWssIHBob2Jvcy9vYmplY3QuZCwKCXBob2Jvcy9zdGQvYy9saW51eC9saW51eC5kLCBwaG9ib3Mvc3RkL2NvbXBpbGVyLmQsCglwaG9ib3Mvc3RkL2ZpbGUuZCwgcGhvYm9zL3N0ZC9nYy5kLCBwaG9ib3Mvc3RkL291dGJ1ZmZlci5kLAoJcGhvYm9zL3N0ZC9yYW5kb20uZCwgcGhvYm9zL3N0ZC9yZWdleHAuZCwKCXBob2Jvcy9zdGQvdHlwZWluZm8vdGlfQUMuZCwgcGhvYm9zL3N0ZC90eXBlaW5mby90aV9BY2RvdWJsZS5kLAoJcGhvYm9zL3N0ZC90eXBlaW5mby90aV9BY2Zsb2F0LmQsIHBob2Jvcy9zdGQvdHlwZWluZm8vdGlfQWNyZWFsLmQsCglwaG9ib3Mvc3RkL3R5cGVpbmZvL3RpX0Fkb3VibGUuZCwgcGhvYm9zL3N0ZC90eXBlaW5mby90aV9BZmxvYXQuZCwKCXBob2Jvcy9zdGQvdHlwZWluZm8vdGlfQWcuZCwgcGhvYm9zL3N0ZC90eXBlaW5mby90aV9BaW50LmQsCglwaG9ib3Mvc3RkL3R5cGVpbmZvL3RpX0Fsb25nLmQsIHBob2Jvcy9zdGQvdHlwZWluZm8vdGlfQXJlYWwuZCwKCXBob2Jvcy9zdGQvdHlwZWluZm8vdGlfQXNob3J0LmQsIHBob2Jvcy9zdGQvdHlwZWluZm8vdGlfQy5kLAoJcGhvYm9zL3N0ZC90eXBlaW5mby90aV9jZG91YmxlLmQsIHBob2Jvcy9zdGQvdHlwZWluZm8vdGlfY2Zsb2F0LmQsCglwaG9ib3Mvc3RkL3R5cGVpbmZvL3RpX2NoYXIuZCwgcGhvYm9zL3N0ZC90eXBlaW5mby90aV9jcmVhbC5kLAoJcGhvYm9zL3N0ZC90eXBlaW5mby90aV9kY2hhci5kLCBwaG9ib3Mvc3RkL3R5cGVpbmZvL3RpX2RlbGVnYXRlLmQsCglwaG9ib3Mvc3RkL3R5cGVpbmZvL3RpX2RvdWJsZS5kLCBwaG9ib3Mvc3RkL3R5cGVpbmZvL3RpX2Zsb2F0LmQsCglwaG9ib3Mvc3RkL3R5cGVpbmZvL3RpX3B0ci5kLCBwaG9ib3Mvc3RkL3R5cGVpbmZvL3RpX3JlYWwuZCwKCXBob2Jvcy9zdGQvdHlwZWluZm8vdGlfdm9pZC5kLCBwaG9ib3Mvc3RkL3R5cGVpbmZvL3RpX3djaGFyLmQsCglwaG9ib3Mvd2luMzIubWFrOiBNZXJnZSBETUQgMS4wMDQKCgkqIHBob2Jvcy9zdGQvdHlwZWluZm8vdGlfQWEuZCwgcGhvYm9zL3N0ZC90eXBlaW5mby90aV9BZGNoYXIuZCwKCXBob2Jvcy9zdGQvdHlwZWluZm8vdGlfQXVieXRlLmQsIHBob2Jvcy9zdGQvdHlwZWluZm8vdGlfQXVpbnQuZCwKCXBob2Jvcy9zdGQvdHlwZWluZm8vdGlfQXVsb25nLmQsIHBob2Jvcy9zdGQvdHlwZWluZm8vdGlfQXVzaG9ydC5kLAoJcGhvYm9zL3N0ZC90eXBlaW5mby90aV9Bd2NoYXIuZDogUmVtb3ZlZCBpbiBETUQgMS4wMDQKCgkqIHBob2Jvcy9pbnRlcm5hbC9nYy9nY29sZC5kOiBOZXcgaW4gRE1EIDEuMDA0CgoyMDA3LTAyLTAxICBEYXZpZCBGcmllZG1hbiAgPGR2ZGZyZG1uQHVzZXJzLnNmLm5ldD4KCgkqIGQtbGFuZy5jYyAoZF93cml0ZV9nbG9iYWxfZGVjbGFyYXRpb25zKTogRW1pdCBkZWJ1ZyBpbmZvLgoKCSogZC1jb2RlZ2VuLmNjICh0d29GaWVsZFR5cGUpOiBGaXggZGVidWdnaW5nIGluZm9ybWF0aW9uLgoJKiBkLW9iamZpbGUuY2MgKGluaXRUeXBlRGVjbCk6IERpdHRvLgoKCSogZC1nbHVlLmNjIChQdHJFeHA6OnRvRWxlbSk6IERvbid0IHdyYXAgdGhlIHJlc3VsdCBpbgoJYSBOT1BfRVhQUi4KCgkqIE1ha2UtbGFuZy5pbjogQWRkIGQtdHJlZS5kZWYgdG8gZGVwZW5kZW5jaWVzCgoyMDA3LTAxLTMwICBEYXZpZCBGcmllZG1hbiAgPGR2ZGZyZG1uQHVzZXJzLnNmLm5ldD4KCglHQ0MgNC4xLnggY2hhbmdlczoKCgkqIEdEQy5odG1sLCBJTlNUQUxMLCBJTlNUQUxMLmh0bWwsIFJFQURNRTogdXBkYXRlCgoJKiBkbWQvaWRnZW4uYywgZG1kL2ltcGNudmdlbi5jLCBkbWQvbXR5cGUuaDogQ2hhbmdlIHRvIGFsbG93Cgljb21waWxhdGlvbiBhcyBDLgoKCSogcGF0Y2gtZ2NjLTQuMS54LCBwYXRjaC10b3BsZXYtNC4xLng6IE5ldyBmaWxlcwoKCSogTWFrZS1sYW5nLmluOiBVc2UgJCh2ZXJzaW9uKSBpbnN0ZWFkIG9mICQoZ2NjX3ZlcnNpb24pLgoJQWRkIGQtYmktYXR0cnMtNDEuaC4gIFVzZSBDIGZvciBnZW5lcmF0b3IgcHJvZ3JhbXMgaW5zdGVhZCBvZiBDKysuCgoJKiBkLWJpLWF0dHJzLTQxLmg6IE5ldyBmaWxlLgoKCSogZC1idWlsdGlucy5jOiB1cGRhdGUKCgkqIGQtYnVpbHRpbnMyLmNjOiBEbyBub3QgYXNzb2NpYXRlIGRfZ2NjX2J1aWx0aW5fdmFfbGlzdF9kX3R5cGUgd2l0aAoJdmFfbGlzdF90eXBlX25vZGUuICBEbyB0aGlzIGZvciBHQ0MgNC4wIGFuZCA0LjEuCgoJKiBkLWNvZGVnZW4uY2M6IFVzZSBDdG9yRWx0TWFrZXIuCgkobWF5YmVFeHBhbmRTcGVjaWFsQ2FsbCk6IENhc3QgZF9nY2NfYnVpbHRpbl92YV9saXN0X2RfdHlwZSB0bwoJdmFfbGlzdF90eXBlX25vZGUuCgkoaG9zdFRvVGFyZ2V0U3RyaW5nKTogVXBkYXRlLgoKCSogZC1jb2RlZ2VuLmg6IEFkZCBDdG9yRWx0TWFrZXIgY2xhc3MgZm9yIGJlZm9yZS9hZnRlciA0LjEueAoJY29tcGF0aWJpbGl0eS4KCgkqIGQtY29udmVydC5jYzogQWRkIHNwZWNpYWwgY2FzZSBmb3IgcG9pbnRlci9pbnQgY29tcGFyaXNvbgoKCSogZC1kZWNscy5jYzogRG8gbm90IHVzZSBTRVRfREVDTF9BU1NFTUJMRVJfTkFNRSBmb3IgQ09OU1RfREVDTHMKCgkqIGQtZ2NjLWluY2x1ZGVzLmg6IEluY2x1ZGUgdmVjLmgKCgkqIGQtZ2x1ZS5jYzogVXNlIEN0b3JFbHRNYWtlci4KCShnY2NfZF9iYWNrZW5kX2luaXQpOiBDYWxsIGRlZmF1bHRfaW5pdF91bndpbmRfcmVzdW1lX2xpYmZ1bmMKCgkqIGQtbGFuZy5jYzogQWRkIGRfdHlwZXNfY29tcGF0aWJsZV9wIGhvb2sgZm9yIHZhX2xpc3QgY29udmVyc2lvbgoKCSogZC1sYW5nLmg6IFVwZGF0ZQoKCSogZC1vYmpmaWxlLmNjOiBDdG9yRWx0TWFrZXIuCgoJKiBwaG9ib3Mvc3RkL2NvbnYuZDogRG8gbm90IGFzc3VtZSBzaWduZWQgaW50ZWdlciB3cmFwYXJvdW5kLgoKMjAwNy0wMS0yOCAgRGF2aWQgRnJpZWRtYW4gIDxkdmRmcmRtbkB1c2Vycy5zZi5uZXQ+CgoJKiBkLWFzbS1pMzg2LmgsIGQtY29kZWdlbi5jYywgZC1nY2MtcmVhbC5jYywKCWQtZGVjbHMuY2MsIGQtZ2x1ZS5jYywgZC1sYW5jLmNjOiB2YXJpb3VzIGZpeGVzCgoJKiBkLWNvZGVnZW4uY2MsIGQtY29kZWdlbi5oLCBkLWdsdWUuY2MsIGQtbGFuZy5oOgoJUmVtb3ZlIGJpdCBhcnJheSBjb2RlCgoyMDA3LTAxLTI3ICBEYXZpZCBGcmllZG1hbiAgPGR2ZGZyZG1uQHVzZXJzLnNmLm5ldD4KCgkqIGQtYXNtLWkzODYuaDogZml4IGZpc3RwLCBsbXN3LCBsbGR0LCBtb3Zbc3pdeCwgc2V0Q0MsIHNtc3csIGFuZAoJc2xkdCBpbnN0cnVjdGlvbnMgKEJ1Z3ppbGxhIDgzNiwgODM3LCA4MzgsIDgzOSwgODQxLCA4NDMsIDg0NCkuCglBbHNvIHJbY29dW2xyXS4KCgkqIGQtZ2x1ZS5jYyAoU3RyaW5nRXhwOjp0b0VsZW0pOiBDb3JyZWN0IHRlcm1pbmF0aW9uIG9mIHdjaGFyCglhbmQgZGNoYXIgKEJ1Z3ppbGxhIDg4OSkKCjIwMDctMDEtMTEgIERhdmlkIEZyaWVkbWFuICA8ZHZkZnJkbW5AdXNlcnMuc2YubmV0PgoKCSogSU5TVEFMTC5odG1sOiBmaXggY29ycnVwdGlvbgoKMjAwNy0wMS0wMyAgRGF2aWQgRnJpZWRtYW4gIDxkdmRmcmRtbkB1c2Vycy5zZi5uZXQ+CgoJUmVsZWFzZSBHREMgMC4yMQoKCSogR0RDLmh0bWw6IE5ldyBmaWxlLgoKCSogUkVBRE1FOiBVcGRhdGUsIHJlZmVyIHRvIEdEQy5odG1sCgoJUmVzdCBvZiBETUQgMS4wMCBtZXJnZToKCgkqIGQtY29kZWdlbi5jYzogUGF0Y2ggZnJvbSBBbmRlcnMgQmqacmtsdW5kIGZvciBHQ0MgMy4zCgoJKiBkLWdsdWUuY2MgKEZ1bmNEZWNsYXJhdGlvbjo6dG9PYmpGaWxlKTogRml4IHNob3VsZERlZmVyL291dHB1dFN0YWdlCglsb2dpYy4KCgkqIGRtZC9hdHRyaWIuYyAoUHJhZ21hRGVjbGFyYXRpb246OnNlbWFudGljKTogdWludCAtPiB1bnNpZ25lZAoKCSogZG1kL21vZHVsZS5jIChsb2FkKTogb3V0cHV0IHRvIHN0ZG1zZwoKCSogZG1kL210eXBlLmM6IHJldmVydCAnQCcgbWFuZ2xpbmcgY2hhbmdlcwoKCSogZ2RjLXZlcnNpb24sIGdjYy1tYXJzLmNjOiB1cGRhdGUKCgkqIHBob2Jvcy9jb25maWcvdW5peC1taWQ6IFN1cHBvcnQgbW9yZSBmdW5jdGlvbnMKCgkqIHBob2Jvcy9hY2luY2x1ZGUubTQsIHBob2Jvcy9jb25maWcvZ2VuX3VuaXguYyAoY19wdGhyZWFkKToKCVN1cHBvcnQgbW9yZSB0eXBlcwoKCSogcGhvYm9zL2NvbmZpZ3VyZSwgcGhvYm9zL2NvbmZpZy5oLmluOiB1cGRhdGUKCgkqIHBob2Jvcy9jb25maWcvZGFyd2luOC9mcmFnLXVuaXg6IHVwZGF0ZQoKCUluaXRpYWwgbWVyZ2Ugb2YgRE1EIDEuMDA6CgoJKiBkbWQvY29uZC5jLCBkbWQvY29uc3Rmb2xkLmMsIGRtZC9kZWxlZ2F0aXplLmMsIGRtZC9kc3ltYm9sLmMsCglkbWQvZW51bS5jLCBkbWQvZXhwcmVzc2lvbi5jLCBkbWQvZXhwcmVzc2lvbi5oLCBkbWQvaW5pdC5jLAoJZG1kL2lubGluZS5jLCBkbWQvbWFycy5jLCBkbWQvbW9kdWxlLmMsIGRtZC9tb2R1bGUuaCwgZG1kL210eXBlLmMsCglkbWQvcGFyc2UuYywgZG1kL3N0YXRlbWVudC5jLCBkbWQvc3RydWN0LmMsIGRtZC90ZW1wbGF0ZS5jLAoJZG1kL3RvZHQuYzogTWVyZ2UgMS4wMAoKCSogaW50ZXJuYWwvZ2MvZ2MuZCwgcGhvYm9zL2xpbnV4Lm1haywKCXBob2Jvcy9zdGQvYy9saW51eC9saW51eC5kLm9yaWctZG1kLCBwaG9ib3Mvc3RkL2Mvc3RkbGliLmQsCglwaG9ib3Mvc3RkL2NvbnYuZCwgcGhvYm9zL3dpbjMyLm1hazogTWVyZ2UgMS4wMAoKCSogcGhvYm9zL3N0ZC9jL2xpbnV4L3B0aHJlYWQuZC5vcmlnLWRtZDogTmV3IGZpbGUgKG9yaWdpbmFsbHkKCXB0aHJlYWQuZCBETUQpCgoJLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgoJKiBkbWQvaW5pdC5jIChBcnJheUluaXRpYWxpemVyOjpzZW1hbnRpYyksCgkqIGRtZC9yb290LmMgKE91dEJ1ZmZlcjo6d3JpdGU0KTogNjQtYml0IGhvc3QgY2xlYW51cAoKCSogZC1hc20taTM4Ni5oOiBjbGVhbnVwLCBzYWZ0ZXkKCjIwMDctMDEtMDIgIERGICA8ZHZkZnJkbW5AdXNlcnMuc2YubmV0PgoKCSogZC1jb2RlZ2VuLmNjIChjb252ZXJ0VG8pOiBVc2UgNjQtYml0IGZvciBUYXJyYXksIFRzYXJyYXkgY29udmVyc2lvbi4KCgkqIGQtY29kZWdlbi57aCwgY2N9IChkYXJyYXlWYWwpOiB1c2UgdWludGVnZXJfdCBhcmcKCgwKQ29weXJpZ2h0IChDKSAyMDA3IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgoKQ29weWluZyBhbmQgZGlzdHJpYnV0aW9uIG9mIHRoaXMgZmlsZSwgd2l0aCBvciB3aXRob3V0IG1vZGlmaWNhdGlvbiwKYXJlIHBlcm1pdHRlZCBpbiBhbnkgbWVkaXVtIHdpdGhvdXQgcm95YWx0eSBwcm92aWRlZCB0aGUgY29weXJpZ2h0Cm5vdGljZSBhbmQgdGhpcyBub3RpY2UgYXJlIHByZXNlcnZlZC4K