CQkJQmxhbmtldCBXcml0ZSBQcml2cy4KCkNyYWlnIEJ1cmxleQkJCQkJY3JhaWdAamNiLXNjLmNvbQpKb2huIENhcnIJCQkJCWpmY0BtaXQuZWR1ClJpY2hhcmQgRWFybnNoYXcJCQkJcmVhcm5zaGFAYXJtLmNvbQpSaWNoYXJkIEhlbmRlcnNvbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydGhAcmVkaGF0LmNvbQpHZW9mZnJleSBLZWF0aW5nCQkJCWdlb2Zma0ByZWRoYXQuY29tClJpY2hhcmQgS2VubmVyCQkJCQlrZW5uZXJAbnl1LmVkdQpKZWZmIExhdwkJCQkJbGF3QHJlZGhhdC5jb20KSmFzb24gTWVycmlsbAkJCQkJamFzb25AcmVkaGF0LmNvbQpNaWNoYWVsIE1laXNzbmVyCQkJCW1laXNzbmVyQHJlZGhhdC5jb20KRGF2aWQgUy4gTWlsbGVyCQkJCQlkYXZlbUByZWRoYXQuY29tCk1hcmsgTWl0Y2hlbGwJCQkJCW1hcmtAY29kZXNvdXJjZXJ5LmNvbQpCZXJuZCBTY2htaWR0CQkJCQliZXJuZHNAcmVkaGF0LmNvbQpKaW0gV2lsc29uCQkJCQl3aWxzb25AcmVkaGF0LmNvbQoKCgkJCVZhcmlvdXMgTWFpbnRhaW5lcnMKCnNoIHBvcnQJCQlKb2VybiBSZW5uZWNrZQkJYW15bGFhckByZWRoYXQuY29tCgkJCUFsZXhhbmRyZSBPbGl2YQkJYW9saXZhQHJlZGhhdC5jb20Kdjg1MCBwb3J0CQlOaWNrIENsaWZ0b24JCW5pY2tjQHJlZGhhdC5jb20Kdjg1MCBwb3J0CQlNaWNoYWVsIE1laXNzbmVyCW1laXNzbmVyQHJlZGhhdC5jb20KYXJtIHBvcnQJCU5pY2sgQ2xpZnRvbgkJbmlja2NAcmVkaGF0LmNvbQphcm0gcG9ydAkJUmljaGFyZCBFYXJuc2hhdwlyZWFybnNoYUBhcm0uY29tCm0zMnIgcG9ydAkJTmljayBDbGlmdG9uCQluaWNrY0ByZWRoYXQuY29tCgkJCU1pY2hhZWwgTWVpc3NuZXIJbWVpc3NuZXJAcmVkaGF0LmNvbQpoOCBwb3J0CQkJSmVmZiBMYXcJCWxhd0ByZWRoYXQuY29tCm1jb3JlCQkJTmljayBDbGlmdG9uCQluaWNrY0ByZWRoYXQuY29tCgkJCUppbSBEZWluCQlqZGVpbkB3aW5kcml2ZXIuY29tCm1uMTAyMDAgcG9ydAkJSmVmZiBMYXcJCWxhd0ByZWRoYXQuY29tCm1uMTAzMDAgcG9ydAkJSmVmZiBMYXcJCWxhd0ByZWRoYXQuY29tCgkJCUFsZXhhbmRyZSBPbGl2YQkJYW9saXZhQHJlZGhhdC5jb20KaHBwYSBwb3J0CQlKZWZmIExhdwkJbGF3QHJlZGhhdC5jb20KbTY4aGMxMSBwb3J0CQlTdGVwaGFuZSBDYXJyZXoJCVN0ZXBoYW5lLkNhcnJlekB3b3JsZG5ldC5mcgptNjhrIHBvcnQgKD8pCQlKZWZmIExhdwkJbGF3QHJlZGhhdC5jb20KbTY4ay1tb3Rvcm9sYS1zeXN2IHBvcnQJUGhpbGlwcGUgRGUgTXV5dGVyCXBoZG1AbWFjcWVsLmJlCnJzNjAwMCBwb3J0CQlHZW9mZiBLZWF0aW5nCQlnZW9mZmtAcmVkaGF0LmNvbQpyczYwMDAgcG9ydAkJRGF2aWQgRWRlbHNvaG4JCWRqZUB3YXRzb24uaWJtLmNvbQptaXBzIHBvcnQJCUVyaWMgQ2hyaXN0b3BoZXIgICAgICAgIGVjaHJpc3RvQHJlZGhhdC5jb20KaWE2NCBwb3J0CQlKaW0gV2lsc29uCQl3aWxzb25AcmVkaGF0LmNvbQppODYwIHBvcnQJCUphc29uIEVja2hhcmR0CQlqbGVAcmVkaGF0LmNvbQppOTYwIHBvcnQJCUppbSBXaWxzb24JCXdpbHNvbkByZWRoYXQuY29tCmEyOWsgcG9ydAkJSmltIFdpbHNvbgkJd2lsc29uQHJlZGhhdC5jb20KYWxwaGEgcG9ydAkJUmljaGFyZCBIZW5kZXJzb24JcnRoQHJlZGhhdC5jb20Kc3BhcmMgcG9ydAkJUmljaGFyZCBIZW5kZXJzb24JcnRoQHJlZGhhdC5jb20Kc3BhcmMgcG9ydAkJRGF2aWQgUy4gTWlsbGVyCQlkYXZlbUByZWRoYXQuY29tCnNwYXJjIHBvcnQJCUpha3ViIEplbGluZWsJCWpha3ViQHJlZGhhdC5jb20KeDg2IHBvcnRzCQlTdGFuIENveAkJc2NveEByZWRoYXQuY29tCmM0eCBwb3J0CQlNaWNoYWVsIEhheWVzCQltLmhheWVzQGVsZWMuY2FudGVyYnVyeS5hYy5uegphcmMgcG9ydAkJUmljaGFyZCBLZW5uZXIJCWtlbm5lckBueXUuZWR1CmZyMzAgcG9ydAkJTmljayBDbGlmdG9uCQluaWNsY0ByZWRoYXQuY29tCnZheCBwb3J0CQlEYXZlIEFuZ2xpbgkJZGF2ZS5hbmdsaW5AbnJjLmNhCnMzOTAgcG9ydAkJSGFydG11dCBQZW5uZXIJCWhwZW5uZXJAZGUuaWJtLmNvbQpzMzkwIHBvcnQJCVVscmljaCBXZWlnYW5kCQl1d2VpZ2FuZEBkZS5pYm0uY29tCmZvcnRyYW4JCQlSaWNoYXJkIEhlbmRlcnNvbglydGhAcmVkaGF0LmNvbQpmb3J0cmFuCQkJVG9vbiBNb2VuZQkJdG9vbkBtb2VuZS5pbmRpdi5ubHV1Zy5ubApjKysJCQlKYXNvbiBNZXJyaWxsCQlqYXNvbkByZWRoYXQuY29tCmMrKyAgICAgICAgICAgICAgICAgICAgIE1hcmsgTWl0Y2hlbGwJCW1hcmtAY29kZXNvdXJjZXJ5LmNvbQpjaGlsbAkJCURhdmUgQnJvbGxleQkJYnJvbGxleUByZWRoYXQuY29tCmNoaWxsCQkJUGVyIEJvdGhuZXIJCXBlckBib3RobmVyLmNvbQpqYXZhCQkJUGVyIEJvdGhuZXIJCXBlckBib3RobmVyLmNvbQpqYXZhCQkJQWxleGFuZHJlIFBldGl0LUJpYW5jbwlhcGJpYW5jb0ByZWRoYXQuY29tCm1lcmN1cnkJCQlGZXJndXMgSGVuZGVyc29uCWZqaEBjcy5tdS5vei5hdQpvYmplY3RpdmUtYwkJU3RhbiBTaGVicwkJc2hlYnNAYXBwbGUuY29tCm9iamVjdGl2ZS1jCQlPdmlkaXUgUHJlZGVzY3UJCW92aWRpdUBjdXAuaHAuY29tCmNwcGxpYgkJCURhdmUgQnJvbGxleQkJYnJvbGxleUByZWRoYXQuY29tCmNwcGxpYgkJCVBlciBCb3RobmVyCQlwZXJAYm90aG5lci5jb20KY3BwbGliCQkJWmFjayBXZWluYmVyZwkJemFja3dAc3RhbmZvcmQuZWR1CmNwcGxpYgkJCU5laWwgQm9vdGgJCW5laWxAZGFpa29rdXlhLmRlbW9uLmNvLnVrCmFsaWFzIGFuYWx5c2lzCQlKb2huIENhcnIJCWpmY0BtaXQuZWR1Cmxvb3AgdW5yb2xsaW5nCQlKaW0gV2lsc29uCQl3aWxzb25AcmVkaGF0LmNvbQpsb29wIGRpc2NvdmVyeQkJTWljaGFlbCBIYXllcwkJbS5oYXllc0BlbGVjLmNhbnRlcmJ1cnkuYWMubnoKc2NoZWR1bGVyICgrIGhhaWZhKQlKaW0gV2lsc29uCQl3aWxzb25AcmVkaGF0LmNvbQpzY2hlZHVsZXIgKCsgaGFpZmEpCU1pY2hhZWwgTWVpc3NuZXIJbWVpc3NuZXJAcmVkaGF0LmNvbQpzY2hlZHVsZXIgKCsgaGFpZmEpCUplZmYgTGF3CQlsYXdAcmVkaGF0LmNvbQpyZW9yZwkJCUplZmYgTGF3CQlsYXdAcmVkaGF0LmNvbQpjYWxsZXItc2F2ZS5jCQlKZWZmIExhdwkJbGF3QHJlZGhhdC5jb20KZGVidWdnaW5nIGNvZGUJCUppbSBXaWxzb24JCXdpbHNvbkByZWRoYXQuY29tCmR3YXJmIGRlYnVnZ2luZyBjb2RlCUphc29uIE1lcnJpbGwJCWphc29uQHJlZGhhdC5jb20KYysrIHJ1bnRpbWUgbGlicwlVbHJpY2ggRHJlcHBlcgkJZHJlcHBlckByZWRoYXQuY29tCmMrKyBydW50aW1lIGxpYnMgICAgICAgIEdhYnJpZWwgRG9zIFJlaXMgICAgICAgIGRvc3JlaXNAY21sYS5lbnMtY2FjaGFuLmZyCipzeW50aGV0aWMgbXVsdGlwbHkJVG9yYmpvcm4gR3Jhbmx1bmQJdGVnZUBzd294LmNvbQoqYy10b3J0dXJlCQlUb3Jiam9ybiBHcmFubHVuZAl0ZWdlQHN3b3guY29tCipmLXRvcnR1cmUJCUthdGUgSGVkc3Ryb20JCWthdGVAYWhhYi5ydXRnZXJzLmVkdQpzY281LCB1bml4d2FyZSwgc2NvIHVkawlSb2JlcnQgTGlwZQkJcm9iZXJ0bGlwZUB1c2EubmV0CmZpeGluY2x1ZGVzCQlCcnVjZSBLb3JiCQlia29yYkBnbnUub3JnCmdjc2UuYyAJCQlKZWZmIExhdwkJbGF3QHJlZGhhdC5jb20KZ2xvYmFsIG9wdCBmcmFtZXdvcmsJSmVmZiBMYXcJCWxhd0ByZWRoYXQuY29tCmp1bXAuYwkJCURhdmlkIFMuIE1pbGxlcgkJZGF2ZW1AcmVkaGF0LmNvbQp3ZWIgcGFnZXMJCUdlcmFsZCBQZmVpZmVyCQlwZmVpZmVyQGRiYWkudHV3aWVuLmFjLmF0CkMgZnJvbnQgZW5kL0lTTyBDOTkJR2F2aW4gUm9taWctS29jaAlnYXZpbkByZWRoYXQuY29tCkMgZnJvbnQgZW5kL0lTTyBDOTkJSm9zZXBoIE15ZXJzCQlqc20yOEBjYW0uYWMudWsKQyBmcm9udCBlbmQvSVNPIEM5OQlSaWNoYXJkIEhlbmRlcnNvbglydGhAcmVkaGF0LmNvbQpjb25maWcuc3ViL2NvbmZpZy5ndWVzcwlCZW4gRWxsaXN0b24JCWJqZUByZWRoYXQuY29tCmF2ciBwb3J0CQlEZW5pcyBDaGVydHlrb3YJCWRlbmlzY0BvdmVydGEucnUKCQkJTWFyZWsgTWljaGFsa2lld2ljegltYXJla21AbGludXgub3JnLnBsCmJhc2ljIGJsb2NrIHJlb3JkZXJpbmcJSmFzb24gRWNraGFyZHQJCWpsZUByZWRoYXQuY29tCmkxOG4JCQlQaGlsaXBwIFRob21hcwkJcHRob21hc0BzdXNlLmRlCmRpYWdub3N0aWMgbWVzc2FnZXMJR2FicmllbCBEb3MgUmVpcwlnZHJAY29kZXNvdXJjZXJ5LmNvbQp3aW5kb3dzLCBjeWd3aW4sIG1pbmd3CUNocmlzdG9waGVyIEZheWxvcgljZ2ZAcmVkaGF0LmNvbQp3aW5kb3dzLCBjeWd3aW4sIG1pbmd3CURKIERlbG9yaWUJCWRqQHJlZGhhdC5jb20KREpHUFAJCQlESiBEZWxvcmllCQlkakBkZWxvcmllLmNvbQpsaWJpYmVydHkJCURKIERlbG9yaWUJCWRqQHJlZGhhdC5jb20KYnVpbGQgbWFjaGluZXJ5ICgqLmluKQlESiBEZWxvcmllCQlkakByZWRoYXQuY29tCmJ1aWxkIG1hY2hpbmVyeSAoKi5pbikJQWxleGFuZHJlIE9saXZhCQlhb2xpdmFAcmVkaGF0LmNvbQpkb2NzIGNvLW1haW50YWluZXIJR2VyYWxkIFBmZWlmZXIJCXBmZWlmZXJAZGJhaS50dXdpZW4uYWMuYXQKCk5vdGUgaW5kaXZpZHVhbHMgd2hvIG1haW50YWluIHBhcnRzIG9mIHRoZSBjb21waWxlciBuZWVkIGFwcHJvdmFsIHRvIGNoZWNrCmluIGNoYW5nZXMgb3V0c2lkZSBvZiB0aGUgcGFydHMgb2YgdGhlIGNvbXBpbGVyIHRoZXkgbWFpbnRhaW4uCgoKCQkJV3JpdGUgQWZ0ZXIgQXBwcm92YWwKU2NvdHQgQmFtYnJvdWdoCQkJCQlzY290dGJAbmV0d2luZGVyLm9yZwpMYXVyeW5hcyBCaXZlaW5pcwkJCQlsYXVyYXNAc29mdGhvbWUubmV0ClBoaWwgQmx1bmRlbGwJCQkJCXBiQGZ1dHVyZXR2LmNvbQpIYW5zIEJvZWhtCQkJCQloYm9laG1AZ2NjLmdudS5vcmcKQW5kcmV3IGNhZ25leQkJCQkJY2FnbmV5QHJlZGhhdC5jb20KRXJpYyBDaHJpc3RvcGhlcgkJCQllY2hyaXN0b0ByZWRoYXQuY29tCldpbGxpYW0gQ29oZW4JCQkJCXdjb2hlbkByZWRoYXQuY29tClBoaWwgRWR3YXJkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBlZHdhcmRzQGphai5jb20KKlBhdWwgRWdnZXJ0CQkJCQllZ2dlcnRAdHdpbnN1bi5jb20KQmVuIEVsbGlzdG9uCQkJCQliamVAcmVkaGF0LmNvbQpNYXJjIEVzcGllCQkJCQllc3BpZUBjdnMub3BlbmJzZC5vcmcKS2F2ZWggR2hhemkJCQkJCWdoYXppQGNhaXAucnV0Z2Vycy5lZHUKQW50aG9ueSBHcmVlbgkJCQkJZ3JlZW5AcmVkaGF0LmNvbQpTdHUgR3Jvc3NtYW4JCQkJCWdyb3NzbWFuQHJlZGhhdC5jb20KQW5kcmV3IEhhbGV5CQkJCQlhcGhAcmVkaGF0LmNvbQpBbGR5IEhlcm5hbmRlegkJCQkJYWxkeWhAcmVkaGF0LmNvbQpLYXp1IEhpcmF0YQkJCQkJa2F6dUBoeGkuY29tCk1hbmZyZWQgSG9sbHN0ZWluCQkJCW1ob2xsc3RlaW5AcmVkaGF0LmNvbQpKYW4gSHViaWNrYQkJCQkJaHViaWNrYUBmcmVlc29mdC5jegpBbmRyZWFzIEphZWdlcgkJCQkJYWpAc3VzZS5kZQpKYWt1YiBKZWxpbmVrCQkJCQlqYWt1YkByZWRoYXQuY29tCktsYXVzIEthZW1wZgkJCQkJa2thZW1wZkBwcm9naXMuZGUKQnJlbmRhbiBLZWhvZQkJCQkJYnJlbmRhbkByZWRoYXQuY29tCk11bWl0IEtoYW4JCQkJCWtoYW5AeHJheWxpdGgud2lzYy5lZHUKQmVuamFtaW4gS29zbmlrCQkJCQlia296QHJlZGhhdC5jb20KTWFyYyBMZWhtYW5uCQkJCQlwY2dAZ29vZi5jb20KQWxhbiBMZWhvdHNreQkJCQkJYXBsQGFsdW0ubWl0LmVkdQpXYXJyZW4gTGV2eQkJCQkJd2FycmVubEByZWRoYXQuY29tCktyaWFuZyBMZXJkc3V3YW5ha2lqCQkJCWxlcmRzdXdhQHVzZXJzLnNvdXJjZWZvcmdlLm5ldApEb24gTGluZHNheQkJCQkJZGxpbmRzYXlAcmVkaGF0LmNvbQpEYXZlIExvdmUJCQkJCWQubG92ZUBkbC5hYy51awpNYXJ0aW4gdi4gTPZ3aXMJCQkJCWxvZXdpc0BpbmZvcm1hdGlrLmh1LWJlcmxpbi5kZQoqSEogTHUJCQkJCQloamxAbHVjb24ub3JnCkFuZHJldyBNYWNsZW9kCQkJCQlhbWFjbGVvZEByZWRoYXQuY29tClZsYWRpbWlyIE1ha2Fyb3YJCQkJdm1ha2Fyb3ZAcmVkaGF0LmNvbQpHcmVnIE1jR2FyeQkJCQkJZ2ttQGdudS5vcmcKQnJ5Y2UgTWNLaW5sYXkJCQkJCWJyeWNlQGdjYy5nbnUub3JnClRvb24gTW9lbmUJCQkJCXRvb25AbW9lbmUuaW5kaXYubmx1dWcubmwKQ2F0aGVyaW5lIE1vb3JlCQkJCQljbG1AcmVkaGF0LmNvbQpIYW5zLVBldGVyIE5pbHNzb24JCQkJaHBAYml0cmFuZ2UuY29tCkRpZWdvIE5vdmlsbG8JCQkJCWRub3ZpbGxvQHJlZGhhdC5jb20KRGF2aWQgTydCcmllbgkJCQkJb2JyaWVuQEZyZWVCU0Qub3JnCkplZmZyZXkgRC4gT2xkaGFtCQkJCW9sZGhhbUBjb2Rlc291cmNlcnkuY29tClJhaW5lciBPcnRoCQkJCQlyb0BUZWNoRmFrLlVuaS1CaWVsZWZlbGQuREUKQWxleGFuZHJlIFBldGl0LUJpYW5jbwkJCQlhcGJpYW5jb0ByZWRoYXQuY29tCkNsaW50b24gUG9wZXR6CQkJCQljcG9wZXR6QGNwb3BldHouY29tCktlbiBSYWVidXJuCQkJCQlyYWVidXJuQHJlZGhhdC5jb20KUm9sZiBSYXNtdXNzZW4JCQkJCXJvbGZ3ckBnY2MuZ251Lm9yZwpHYWJyaWVsIERvcyBSZWlzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkb3NyZWlzQGNtbGEuZW5zLWNhY2hhbi5mcgpMb3JlbiBKLiBSaXR0bGUJCQkJCWxqcml0dGxlQGFjbS5vcmcKQWxleCBTYW11ZWwJCQkJCXNhbXVlbEBjb2Rlc291cmNlcnkuY29tCkJlcm5kIFNjaG1pZHQJCQkJCWJlcm5kc0ByZWRoYXQuY29tCkFuZHJlYXMgU2Nod2FiCQkJCQlzY2h3YWJAc3VzZS5kZQpTdGFuIFNoZWJzCQkJCQlzaGVic0BhcHBsZS5jb20KTmF0aGFuIFNpZHdlbGwJCQkJCW5hdGhhbkBhY20ub3JnCkZyYW56IFNpcmwJCQkJCWZyYW56LnNpcmwta2VybmVsQGxhdXRlcmJhY2guY29tCk1pY2hhZWwgU29rb2xvdgkJCQkJbXNva29sb3ZAaXZhbi5IYXJoYW4uT1JHCk1pa2UgU3R1bXAJCQkJCW1yc0B3aW5kcml2ZXIuY29tCklhbiBUYXlsb3IJCQkJCWlhbkB6ZW1idS5jb20KUGhpbGlwcCBUaG9tYXMJCQkJCXB0aG9tYXNAc3VzZS5kZQpLcmVzdGVuIEtyYWIgVGhvcnVwCQkJCWtyYWJAZ2NjLmdudS5vcmcKVG9tIFRyb21leQkJCQkJdHJvbWV5QHJlZGhhdC5jb20KSm9obiBXZWhsZQkJCQkJam9obkBmZWl0aC5jb20KTWFyayBXaWVsYWFyZAkJCQkJbWFya0BnY2MuZ251Lm9yZwoqIEluZGljYXRlcyBmb2xrcyB3ZSBuZWVkIHRvIGdldCBLZXJiZXJvcy9zc2ggYWNjb3VudHMgcmVhZHkgc28gdGhleQpjYW4gd3JpdGUgaW4gdGhlIHNvdXJjZSB0cmVlCg==