IyBMb2NhbGVJbmZvcm1hdGlvbl9rbC5wcm9wZXJ0aWVzIC0tCiMgQ29weXJpZ2h0IChDKSAxOTkxLTIwMDUgVW5pY29kZSwgSW5jLgojIEFsbCByaWdodHMgcmVzZXJ2ZWQuIERpc3RyaWJ1dGVkIHVuZGVyIHRoZSBUZXJtcyBvZiBVc2UKIyBpbiBodHRwOi8vd3d3LnVuaWNvZGUub3JnL2NvcHlyaWdodC5odG1sLgojCiMgVGhpcyBmaWxlIHdhcyBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBieSBnbnUubG9jYWxlZ2VuIGZyb20gQ0xEUi4KCmRlY2ltYWxTZXBhcmF0b3I9LApncm91cGluZ1NlcGFyYXRvcj0uCmN1cnJlbmNpZXNTeW1ib2wuREtLPWtyCnNob3J0TW9udGhzPWphbq5mZWKubWFyrmFwcq5tYWquanVurmp1bK5hdWeuc2Vwrm9rdK5ub3auZGVjrq4KbW9udGhzPWphbnVhcmmuZmVicnVhcmmubWFydHNprmFwcmlsaa5tYWpprmp1bmmuanVsaa5hdWd1c3R1c2muc2VwdGVtYmVyaa5va3RvYmVyaa5ub3ZlbWJlcmmuZGVjZW1iZXJprq4Kc2hvcnRXZWVrZGF5cz2uc2FirmF0Ya5tYXKucGlurnNpc650YWyuYXJmrgp3ZWVrZGF5cz2uc2FiYWF0rmF0YWFzaW5uZ29ybmVxrm1hcmx1bm5nb3JuZXGucGluZ2FzdW5uZ29ybmVxrnNpc2FtYW5uZ29ybmVxrnRhbGxpbWFubmdvcm5lca5hcmZpbmlubmdvcm5lca4KdGVycml0b3JpZXMuR0w9S2FsYWFsbGl0IE51bmFhdApsYW5ndWFnZXMua2w9a2FsYWFsbGlzdXQK