Z0UjAQAAYwAAAAAAAAAAAHkAAAAbAAAAAQAAAAAAAAAcAAAAAAAAAB0AAAAAAAAABAAAAAAAAAAFAAAAAAAAABkAAAAAAAAABgAAAAAAAAAlAAAAAAAAAAcAAAAAAAAAHwAAAAAAAAAIAAAAAAAAAAABAAAAAAAAPgEAAAAAAAAKAAAAAAAAAAsAAAAAAAAADAAAAAAAAAABAQAAAAAAAAMBAAAAAAAADAEAAAAAAAANAQAAAAAAAA4BAAAAAAAADwEAAAAAAAARAQAAAAAAABMBAAAAAAAAMgEAAAAAAAAzAQAAAAAAACgAAAAAAAAAdAsAAAAAAAAAAAAAAAAAABwAAAAAAAAAbAAAAAAAAABwAAAAAAAAAHQAAAAAAAAAfAAAAAAAAAD//////////4QAAAAAAAAAGAUAAAAAAACEBQAAAAAAACwHAAAAAAAAzHYAAAAAAABIggAAAAAAAKiGAAAAAAAAqIcAAAAAAAAglQAAAAAAABCfAAAAAAAAwKMAAAAAAACopwAAAAAAAIirAAAAAAAAwLEAAAAAAADAuQAAAAAAACC9AAAAAAAAEMMAAAAAAAC4xQAAAAAAAGjJAAAAAAAA0HYAAAAAAAAcAAAAAAAAAFAAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAgAAAAAAAAACAAAAAAAAAAAAAAAAAAAAJQEAAAAAAAAbAAAAAAAAACoAQAAAAAAAKBvAAAAAAAABAAAAAAAAABgBAAAAAAAAAABAAAAAAAAdA0AAAAAAADwCQAAAAAAALAEAAAAAAAA5AMAAAAAAADgAwAAAAAAADgGAAAAAAAA/AcAAAAAAABcAwAAAAAAAPAFAAAAAAAAqAIAAAAAAACtAwAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA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AAAAABQAAAAAAAAAGAAAAAAAAAAoAAAAAAAAADQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAkAAAAAAAAA/////wAAAAABAAAAAAAAABUAAAAAAAAA/////wAAAAABAAAAAAAAAAEAAAAIAAAAAAAAAAAAAAD/////AAAAgAAAAIABAADAAQAAAAQAAAAdeQMAAQAAwAEAAAABAAAAmAAAADwEAAAJAAAACgAAAJBvAACLbwAAcHJvY2VkdXJlKChwY0dlbkNlbGwgdGNDZWxsVmlldyAiZCIpIAogICAgcHJvZygoZGlmZiB0YXAgbGF5ZXIyIGxheWVyMyB2aWExTGF5ZXIKCSAgICB2aWEyTGF5ZXIgY2VudGVyUmVjb2duaXRpb24gZGlmZldpZHRoIHRhcFdpZHRoIHRhcFdpZHRoQmV0d2VlbkRpZmYKCSAgICB0YXBXaWR0aEJ1dHRpbmdEaWZmIGxheWVyMldpZHRoIGxheWVyM1dpZHRoIHZpYTFXaWR0aCB2aWEyV2lkdGgKCSAgICB2aWExU3BhY2UgdmlhMlNwYWNlIGRpZmZZRW5jVmlhIGRpZmZYRW5jVmlhIGRpZmZYT3V0RW5jVmlhCgkgICAgdGlwVGFwWUluRW5jVmlhIHRpcFRhcFlPdXRFbmNWaWEgdGlwVGFwWEVuY1ZpYSBjZW50ZXJUYXBYRW5jVmlhIGNlbnRlclRhcFlFbmNWaWEKCSAgICBsYXllcjJYRW5jVmlhIGxheWVyMllFbmNWaWEgbGF5ZXIyWEVuY1ZpYTIgbGF5ZXIyWUVuY1ZpYTIgbGF5ZXIzWEVuY1ZpYTIKCSAgICBsYXllcjNZRW5jVmlhMiB0YXBTcGFjZUdhdGUgdGFwU3BhY2VQb2x5IG1heERpZmZUb1RhcENvbnRhY3RTcGFjZSBoYWxmRGlmZnVzaW9uR3JpZAoJICAgIG1pblBpbldpZHRoIGRpZmZJbXBsYW50IGRpZmZJbXBFbmMgZGlmZkltcEVuY0J1dHQgdGFwSW1wbGFudAoJICAgIHRhcEltcEVuYyB0YXBJbXBFbmNCdXR0IGRpZmZJbXBFbmNMaXN0IHRhcEltcEVuY0xpc3Qgd2VsbExheWVyCgkgICAgd2VsbExheWVyRGlmZkVuYyB3ZWxsTGF5ZXJUYXBFbmMgc25hcEdyaWQgZW11bGF0ZVNsb3RWaWEgY2VudGVyVmlhMQoJICAgIGNlbnRlclZpYTIgY2VudGVyTGF5ZXIyIHcgaW1wbGFudCBpbldlbGwKCSAgICBjZW50ZXJUYXAgdG9wRW5kVGFwIGJvdHRvbUVuZFRhcCBub0RpZmZDb250YWN0IGFsbG93Q2VudGVyZWRNQ09OcwoJICAgIGRpZmZJbXBDaG9pY2UgdGFwSW1wQ2hvaWNlIHZpYTFQaXRjaCB2aWEyUGl0Y2ggZW5jTGlzdAoJICAgIGRpZmZJbXBFbmNYTCBkaWZmSW1wRW5jWFIgZGlmZkltcEVuY1kgdGFwSW1wRW5jWEwgdGFwSW1wRW5jWFIKCSAgICB0YXBJbXBFbmNZIG5ldCBhbGxEaXIgaGFzVGFwSW5DZW50ZXIgZG91YmxlTWF4RGlzdGFuY2VUb1RhcAoJICAgIG1heENvbnNlY0RpZmZDb250YWN0cyB2aWExWG9yaWdpbiB2aWExWGVuZCB0YXBYb3JpZ2luIHRhcFhlbmQKCSAgICB0YlRhcFhvcmlnaW4gdGJUYXBYZW5kIGRpZmZYb3JpZ2luIGRpZmZYZW5kIGRpZmZDb25Zb2Zmc2V0QWJ1dHRpbmdUYXAKCSAgICBmaXJzdERpZmZDb25Zb2Zmc2V0IGxhc3REaWZmQ29uWW9mZnNldCB0YXBZb2Zmc2V0IG1pblcgc21hbGxlck1pblcKCSAgICBkaWZmRGl2aXNvciBkaWZmU3ByZWFkIHlWYWx1ZSB5UmVtYWluaW5nIHlWaWExT2Zmc2V0CgkgICAgY2VudGVyRGlmZkNvbllvZmZzZXQgY2VudGVyVGFwcyBkaWZmRGVsdGEgZGJJZCBpCgkgICAgdGFwWVdpZHRoQmV0d2VlbkRpZmYgdGFwQm90dG9tRWRnZSB0YXBUb3BFZGdlIHZpYURyYXdTcGFjZVkgdmlhMVJvdwoJICAgIHZpYTFZb2Zmc2V0IHZpYTFZb3JpZ2luIHRoZVkgciB0YXBWaWExWE8KCSAgICB0YXBWaWExWEUgZGJpZCBwaW5JZCB2aWExTWluWSB2aWExTWF4WQoJICAgIGxheWVyMkxlbmd0aCBsYXllcjJYb3JpZ2luIGxheWVyMlhlbmQgbGF5ZXIyWW9yaWdpbiBudW1WaWEyCgkgICAgbGFzdFZpYTJZZW5kIGxheWVyMlllbmQgdmlhMllvcmlnaW4gbGFzdFZpYTJZb3JpZ2luIHZpYTJYb3JpZ2luCgkgICAgdmlhMlhlbmQgdmlhMlJvdyB2aWEyWW9mZnNldCBsYXllcjJZd2lkdGggdmlhMkRyYXdTcGFjZVkKCSAgICBsYXllcjNYb3JpZ2luIGxheWVyM1hlbmQgbGF5ZXIzWW9yaWdpbiBsYXllcjNZZW5kCgkpIAoJaWYoIXRjQ2VsbFZpZXcgCgkgICAgcmV0dXJuKG5pbCkKCSkgCgkodGFwSW1wRW5jID0gbGlzdCgwLjEzIDAuMTMpKSAKCShkaWZmSW1wRW5jID0gbGlzdCgwLjEzIDAuMTMpKSAKCSh0YXBJbXBsYW50ID0gbGlzdCgicHNkbSIgIm5zZG0iKSkKCShkaWZmSW1wbGFudCA9IGxpc3QoIm5zZG0iICJwc2RtIikpIAoJKGhhbGZEaWZmdXNpb25HcmlkID0gMC4wMDI1KSAKCSh0YXBTcGFjZVBvbHkgPSAwLjA1NSkgCgkodGFwU3BhY2VHYXRlID0gMC4zKSAKCShsYXllcjNZRW5jVmlhMiA9IDAuMDYpCgkobGF5ZXIzWEVuY1ZpYTIgPSAwLjAzKSAKCShsYXllcjJZRW5jVmlhMiA9IDAuMCkgCgkobGF5ZXIyWEVuY1ZpYTIgPSAwLjApIAoJKGxheWVyMllFbmNWaWEgPSAwLjA4KSAKCShsYXllcjJYRW5jVmlhID0gMC4wKQoJKGNlbnRlclRhcFlFbmNWaWEgPSAwLjA2KSAKCShjZW50ZXJUYXBYRW5jVmlhID0gMC4wNikgCgkoZGlmZlhPdXRFbmNWaWEgPSAwLjA1NSkgCgkoZGlmZlhFbmNWaWEgPSAwLjA1NSkgCgkoZGlmZllFbmNWaWEgPSAwLjA2KQoJKHZpYTJTcGFjZSA9IDAuMTkpIAoJKHZpYTJXaWR0aCA9IDAuMTcpIAoJKHZpYTFTcGFjZSA9IDAuMTcpIAoJKHZpYTFXaWR0aCA9IDAuMTcpIAoJKGxheWVyM1dpZHRoID0gMC4xNCkKCShsYXllcjJXaWR0aCA9IDAuMTcpIAoJKHRhcFdpZHRoQmV0d2VlbkRpZmYgPSAwLjQpIAoJKHRhcFdpZHRoQnV0dGluZ0RpZmYgPSAwLjI5KSAKCSh0YXBXaWR0aCA9IDAuMTUpIAoJKGRpZmZXaWR0aCA9IDAuMTUpCgkodmlhMkxheWVyID0gIm1jb24iKSAKCSh2aWExTGF5ZXIgPSAibGljb24xIikgCgkobGF5ZXIzID0gIm1ldDEiKSAKCShsYXllcjIgPSAibGkxIikgCgkodGFwID0gInRhcCIpCgkoZGlmZiA9ICJkaWZmIikgCgkoY2VudGVyUmVjb2duaXRpb24gPSBuaWwpIAoJKHRpcFRhcFlJbkVuY1ZpYSA9IDAuMCkgCgkodGlwVGFwWU91dEVuY1ZpYSA9IDAuMCkgCgkodGlwVGFwWEVuY1ZpYSA9IDAuMCkKCShtYXhEaWZmVG9UYXBDb250YWN0U3BhY2UgPSA5OTk5OS45KSAKCShtaW5QaW5XaWR0aCA9IDAuMDUpIAoJKGRpZmZJbXBFbmNCdXR0ID0gbGlzdCgwLjAgMC4wKSkgCgkodGFwSW1wRW5jQnV0dCA9IGxpc3QoMC4wIDAuMCkpIAoJKGRpZmZJbXBFbmNMaXN0ID0gbmlsKQoJKHRhcEltcEVuY0xpc3QgPSBuaWwpIAoJKHdlbGxMYXllciA9IG5pbCkgCgkod2VsbExheWVyRGlmZkVuYyA9IDAuMCkgCgkod2VsbExheWVyVGFwRW5jID0gMC4wKSAKCShzbmFwR3JpZCA9IDAuMDA1KQoJKGVtdWxhdGVTbG90VmlhID0gbmlsKSAKCShjZW50ZXJWaWExID0gbmlsKSAKCShjZW50ZXJWaWEyID0gbmlsKSAKCShjZW50ZXJMYXllcjIgPSBuaWwpIAoJKHRhcEltcENob2ljZSA9ICgodGNDZWxsVmlld34+cGFyYW1ldGVycyl+PnRhcEltcENob2ljZSkpCglpZighZml4cCh0YXBJbXBDaG9pY2UpIHRoZW4gCgkgICAgKHRhcEltcENob2ljZSA9IDApCgkpIAoJKGRpZmZJbXBDaG9pY2UgPSAoKHRjQ2VsbFZpZXd+PnBhcmFtZXRlcnMpfj5kaWZmSW1wQ2hvaWNlKSkgCglpZighZml4cChkaWZmSW1wQ2hvaWNlKSB0aGVuIAoJICAgIChkaWZmSW1wQ2hvaWNlID0gMCkKCSkgCgkoYWxsb3dDZW50ZXJlZE1DT05zID0gKCh0Y0NlbGxWaWV3fj5wYXJhbWV0ZXJzKX4+YWxsb3dDZW50ZXJlZE1DT05zKSkgCglpZigoYWxsb3dDZW50ZXJlZE1DT05zID09ICJGQUxTRSIpIHRoZW4gCgkgICAgKGFsbG93Q2VudGVyZWRNQ09OcyA9IG5pbCkKCSkKCWlmKCFzdHJpbmdwKGFsbG93Q2VudGVyZWRNQ09OcykgdGhlbiAKCSAgICAoYWxsb3dDZW50ZXJlZE1DT05zID0gIkZBTFNFIikKCSkgCgkobm9EaWZmQ29udGFjdCA9ICgodGNDZWxsVmlld34+cGFyYW1ldGVycyl+Pm5vRGlmZkNvbnRhY3QpKSAKCWlmKChub0RpZmZDb250YWN0ID09ICJGQUxTRSIpIHRoZW4gCgkgICAgKG5vRGlmZkNvbnRhY3QgPSBuaWwpCgkpIAoJaWYoIXN0cmluZ3Aobm9EaWZmQ29udGFjdCkgdGhlbiAKCSAgICAobm9EaWZmQ29udGFjdCA9ICJGQUxTRSIpCgkpIAoJKGJvdHRvbUVuZFRhcCA9ICgodGNDZWxsVmlld34+cGFyYW1ldGVycyl+PmJvdHRvbUVuZFRhcCkpCglpZigoYm90dG9tRW5kVGFwID09ICJGQUxTRSIpIHRoZW4gCgkgICAgKGJvdHRvbUVuZFRhcCA9IG5pbCkKCSkgCglpZighc3RyaW5ncChib3R0b21FbmRUYXApIHRoZW4gCgkgICAgKGJvdHRvbUVuZFRhcCA9ICJGQUxTRSIpCgkpIAoJKHRvcEVuZFRhcCA9ICgodGNDZWxsVmlld34+cGFyYW1ldGVycyl+PnRvcEVuZFRhcCkpIAoJaWYoKHRvcEVuZFRhcCA9PSAiRkFMU0UiKSB0aGVuIAoJICAgICh0b3BFbmRUYXAgPSBuaWwpCgkpIAoJaWYoIXN0cmluZ3AodG9wRW5kVGFwKSB0aGVuIAoJICAgICh0b3BFbmRUYXAgPSAiRkFMU0UiKQoJKQoJKGNlbnRlclRhcCA9ICgodGNDZWxsVmlld34+cGFyYW1ldGVycyl+PmNlbnRlclRhcCkpIAoJaWYoKGNlbnRlclRhcCA9PSAiRkFMU0UiKSB0aGVuIAoJICAgIChjZW50ZXJUYXAgPSBuaWwpCgkpIAoJKGluV2VsbCA9ICgodGNDZWxsVmlld34+cGFyYW1ldGVycyl+PmluV2VsbCkpIAoJaWYoKGluV2VsbCA9PSAiRkFMU0UiKSB0aGVuIAoJICAgIChpbldlbGwgPSBuaWwpCgkpIAoJaWYoIXN0cmluZ3AoaW5XZWxsKSB0aGVuIAoJICAgIChpbldlbGwgPSAiRkFMU0UiKQoJKQoJKGltcGxhbnQgPSAoKHRjQ2VsbFZpZXd+PnBhcmFtZXRlcnMpfj5pbXBsYW50KSkgCglpZigoaW1wbGFudCA9PSAiRkFMU0UiKSB0aGVuIAoJICAgIChpbXBsYW50ID0gbmlsKQoJKSAKCSh3ID0gKCh0Y0NlbGxWaWV3fj5wYXJhbWV0ZXJzKX4+dykpIAoJaWYoIWZsb2F0cCh3KSB0aGVuIAoJICAgICh3ID0gMC4yOSkKCSkgCglpZigoKGltcGxhbnQgPT0gdCkgfHwgKGltcGxhbnQgPT0gIlRSVUUiKSkgdGhlbiAKCSAgICAoaW1wbGFudCA9IHQpIGVsc2UgCgkgICAgKGltcGxhbnQgPSBuaWwpCgkpCglpZigoKGluV2VsbCA9PSB0KSB8fCAoaW5XZWxsID09ICJUUlVFIikpIHRoZW4gCgkgICAgKGluV2VsbCA9IHQpIGVsc2UgCgkgICAgKGluV2VsbCA9IG5pbCkKCSkgCglpZigoKGNlbnRlclRhcCA9PSB0KSB8fCAoY2VudGVyVGFwID09ICJUUlVFIikpIHRoZW4gCgkgICAgKGNlbnRlclRhcCA9IHQpIGVsc2UgCgkgICAgKGNlbnRlclRhcCA9IG5pbCkKCSkgCglpZigoKHRvcEVuZFRhcCA9PSB0KSB8fCAodG9wRW5kVGFwID09ICJUUlVFIikpIHRoZW4gCgkgICAgKHRvcEVuZFRhcCA9IHQpIGVsc2UgCgkgICAgKHRvcEVuZFRhcCA9IG5pbCkKCSkgCglpZigoKGJvdHRvbUVuZFRhcCA9PSB0KSB8fCAoYm90dG9tRW5kVGFwID09ICJUUlVFIikpIHRoZW4gCgkgICAgKGJvdHRvbUVuZFRhcCA9IHQpIGVsc2UgCgkgICAgKGJvdHRvbUVuZFRhcCA9IG5pbCkKCSkgCglpZigoKGFsbG93Q2VudGVyZWRNQ09OcyA9PSB0KSB8fCAoYWxsb3dDZW50ZXJlZE1DT05zID09ICJUUlVFIikpIHRoZW4gCgkgICAgKGFsbG93Q2VudGVyZWRNQ09OcyA9IHQpIGVsc2UgCgkgICAgKGFsbG93Q2VudGVyZWRNQ09OcyA9IG5pbCkKCSkKCShub0RpZmZDb250YWN0ID0gKG5vRGlmZkNvbnRhY3QgPT0gIlRSVUUiKSkgCgkodmlhMVBpdGNoID0gKHZpYTFXaWR0aCArIHZpYTFTcGFjZSkpIAoJKHZpYTJQaXRjaCA9ICh2aWEyV2lkdGggKyB2aWEyU3BhY2UpKSAKCXdoZW4oaW1wbGFudCAKCSAgICB3aGVuKGRpZmZJbXBsYW50IAoJCWlmKGluV2VsbCB0aGVuIAoJCSAgICAoZGlmZkltcGxhbnQgPSBjYWRyKGRpZmZJbXBsYW50KSkgCgkJICAgIChkaWZmSW1wRW5jID0gY2FkcihkaWZmSW1wRW5jKSkgCgkJICAgIChkaWZmSW1wRW5jQnV0dCA9IGNhZHIoZGlmZkltcEVuY0J1dHQpKQoJCSAgICBlbHNlIAoJCSAgICAoZGlmZkltcGxhbnQgPSBjYXIoZGlmZkltcGxhbnQpKSAKCQkgICAgKGRpZmZJbXBFbmMgPSBjYXIoZGlmZkltcEVuYykpIAoJCSAgICAoZGlmZkltcEVuY0J1dHQgPSBjYXIoZGlmZkltcEVuY0J1dHQpKQoJCSkKCSAgICApIAoJICAgIHdoZW4odGFwSW1wbGFudCAKCQlpZihpbldlbGwgdGhlbiAKCQkgICAgKHRhcEltcGxhbnQgPSBjYWRyKHRhcEltcGxhbnQpKSAKCQkgICAgKHRhcEltcEVuYyA9IGNhZHIodGFwSW1wRW5jKSkgCgkJICAgICh0YXBJbXBFbmNCdXR0ID0gY2Fkcih0YXBJbXBFbmNCdXR0KSkKCQkgICAgZWxzZSAKCQkgICAgKHRhcEltcGxhbnQgPSBjYXIodGFwSW1wbGFudCkpIAoJCSAgICAodGFwSW1wRW5jID0gY2FyKHRhcEltcEVuYykpIAoJCSAgICAodGFwSW1wRW5jQnV0dCA9IGNhcih0YXBJbXBFbmNCdXR0KSkKCQkpCgkgICAgKQoJKSAKCXdoZW4oaW1wbGFudCAKCSAgICB3aGVuKGRpZmZJbXBFbmNMaXN0IAoJCWlmKGluV2VsbCB0aGVuIAoJCSAgICAoZW5jTGlzdCA9IGNhZHIobnRoKGRpZmZJbXBDaG9pY2UgZGlmZkltcEVuY0xpc3QpKSkgZWxzZSAKCQkgICAgKGVuY0xpc3QgPSBjYXIobnRoKGRpZmZJbXBDaG9pY2UgZGlmZkltcEVuY0xpc3QpKSkKCQkpIAoJCShkaWZmSW1wRW5jWEwgPSBudGgoMCBlbmNMaXN0KSkgCgkJKGRpZmZJbXBFbmNYUiA9IG50aCgxIGVuY0xpc3QpKSAKCQkoZGlmZkltcEVuY1kgPSBudGgoMiBlbmNMaXN0KSkKCSAgICApIAoJICAgIHdoZW4odGFwSW1wRW5jTGlzdCAKCQlpZihpbldlbGwgdGhlbiAKCQkgICAgKGVuY0xpc3QgPSBjYWRyKG50aCh0YXBJbXBDaG9pY2UgdGFwSW1wRW5jTGlzdCkpKSBlbHNlIAoJCSAgICAoZW5jTGlzdCA9IGNhcihudGgodGFwSW1wQ2hvaWNlIHRhcEltcEVuY0xpc3QpKSkKCQkpIAoJCSh0YXBJbXBFbmNYTCA9IG50aCgwIGVuY0xpc3QpKSAKCQkodGFwSW1wRW5jWFIgPSBudGgoMSBlbmNMaXN0KSkgCgkJKHRhcEltcEVuY1kgPSBudGgoMiBlbmNMaXN0KSkKCSAgICApIAoJICAgIChkaWZmSW1wRW5jWSA9ICgoYm91bmRwKCdkaWZmSW1wRW5jWSkgJiYgZGlmZkltcEVuY1kpIHx8IGRpZmZJbXBFbmMpKSAKCSAgICAoZGlmZkltcEVuY1hMID0gKChib3VuZHAoJ2RpZmZJbXBFbmNYTCkgJiYgZGlmZkltcEVuY1hMKSB8fCBkaWZmSW1wRW5jKSkKCSAgICAoZGlmZkltcEVuY1hSID0gKChib3VuZHAoJ2RpZmZJbXBFbmNYUikgJiYgZGlmZkltcEVuY1hSKSB8fCBkaWZmSW1wRW5jKSkgCgkgICAgKHRhcEltcEVuY1kgPSAoKGJvdW5kcCgndGFwSW1wRW5jWSkgJiYgdGFwSW1wRW5jWSkgfHwgdGFwSW1wRW5jKSkgCgkgICAgKHRhcEltcEVuY1hMID0gKChib3VuZHAoJ3RhcEltcEVuY1hMKSAmJiB0YXBJbXBFbmNYTCkgfHwgdGFwSW1wRW5jKSkgCgkgICAgKHRhcEltcEVuY1hSID0gKChib3VuZHAoJ3RhcEltcEVuY1hSKSAmJiB0YXBJbXBFbmNYUikgfHwgdGFwSW1wRW5jKSkKCSkKCWlmKChjZW50ZXJUYXAgJiYgKHRvcEVuZFRhcCB8fCBib3R0b21FbmRUYXApKSB0aGVuIAoJICAgIGVycm9yKCJlbkRzdHJhcDNQb2xJbXBDbGFzczogY2Fubm90IHNlbGVjdCBjZW50ZXJUYXAgYXQgdGhlIHNhbWUgdGltZSBhcyB0b3BFbmRUYXAgb3IgYm90dG9tRW5kVGFwXG4iKQoJKSAKCShuZXQgPSAoZGJNYWtlTmV0IHRjQ2VsbFZpZXcgInBwZCIpKSAKCShkYkNyZWF0ZVRlcm0gbmV0ICJwcGQiICJpbnB1dCIpIAoJKGFsbERpciA9IGxpc3QoInJpZ2h0IiAibGVmdCIgInRvcCIgImJvdHRvbSIpKSAKCShoYXNUYXBJbkNlbnRlciA9ICgoKCh3ICsgKDIgKiB0aXBUYXBZSW5FbmNWaWEpKSAtICgyICogbWF4RGlmZlRvVGFwQ29udGFjdFNwYWNlKSkgPiAtMWUtMDYpICYmICFjZW50ZXJUYXApKQoJY29uZCgoaGFzVGFwSW5DZW50ZXIgCgkJKGRvdWJsZU1heERpc3RhbmNlVG9UYXAgPSAoMiAqIG1heERpZmZUb1RhcENvbnRhY3RTcGFjZSkpIAoJCXdoZW4ob2RkcChmaXgoKDFlLTA1ICsgKHRhcFdpZHRoQmV0d2VlbkRpZmYgLyAoMi4wICogaGFsZkRpZmZ1c2lvbkdyaWQpKSkpKSAKCQkgICAgKHRhcFdpZHRoQmV0d2VlbkRpZmYgPSAodGFwV2lkdGhCZXR3ZWVuRGlmZiArICgyLjAgKiBoYWxmRGlmZnVzaW9uR3JpZCkpKQoJCSkgCgkJKG1heENvbnNlY0RpZmZDb250YWN0cyA9IGZpeCgoKG1heERpZmZUb1RhcENvbnRhY3RTcGFjZSArICgtMi4wICogbWF4KHZpYTFTcGFjZSAKCQkJCQkoZGlmZllFbmNWaWEgKyB0aXBUYXBZSW5FbmNWaWEpCgkJCQkgICAgKSkgKyB2aWExU3BhY2UpIC8gKHZpYTFXaWR0aCArIHZpYTFTcGFjZSkpCgkJICAgICkpIAoJCSh2aWExWG9yaWdpbiA9IG1heChkaWZmWEVuY1ZpYSAKCQkJKCgodGFwV2lkdGhCZXR3ZWVuRGlmZiAtIHZpYTFXaWR0aCkgLyAyLjApICsgbWF4KHRhcFNwYWNlUG9seSB0YXBTcGFjZUdhdGUpKSAKCQkJKGNlbnRlclRhcFhFbmNWaWEgKyBtYXgodGFwU3BhY2VQb2x5IHRhcFNwYWNlR2F0ZSkpCgkJICAgICkpCgkJKHZpYTFYZW5kID0gKHZpYTFYb3JpZ2luICsgdmlhMVdpZHRoKSkgCgkJKHRhcFhvcmlnaW4gPSBtaW4oKHZpYTFYb3JpZ2luIC0gY2VudGVyVGFwWEVuY1ZpYSkgCgkJCW1heCh0YXBTcGFjZUdhdGUgdGFwU3BhY2VQb2x5KQoJCSAgICApKSAKCQkodGFwWGVuZCA9IG1heCgodGFwWG9yaWdpbiArIHRhcFdpZHRoQmV0d2VlbkRpZmYpIAoJCQkodmlhMVhlbmQgKyBjZW50ZXJUYXBYRW5jVmlhKQoJCSAgICApKQoJICAgICkgCgkgICAgKGNlbnRlclRhcCAKCQl3aGVuKG9kZHAoZml4KCgxZS0wNSArICh0YXBXaWR0aEJldHdlZW5EaWZmIC8gKDIuMCAqIGhhbGZEaWZmdXNpb25HcmlkKSkpKSkgCgkJICAgICh0YXBXaWR0aEJldHdlZW5EaWZmID0gKHRhcFdpZHRoQmV0d2VlbkRpZmYgKyAoMi4wICogaGFsZkRpZmZ1c2lvbkdyaWQpKSkKCQkpIAoJCSh2aWExWG9yaWdpbiA9IG1heChkaWZmWEVuY1ZpYSAKCQkJKCgodGFwV2lkdGhCZXR3ZWVuRGlmZiAtIHZpYTFXaWR0aCkgLyAyLjApICsgdGFwU3BhY2VHYXRlKSAKCQkJKGNlbnRlclRhcFhFbmNWaWEgKyB0YXBTcGFjZUdhdGUpCgkJICAgICkpIAoJCSh2aWExWGVuZCA9ICh2aWExWG9yaWdpbiArIHZpYTFXaWR0aCkpIAoJCSh0YXBYb3JpZ2luID0gbWluKCh2aWExWG9yaWdpbiAtIGNlbnRlclRhcFhFbmNWaWEpIHRhcFNwYWNlR2F0ZSkpCgkJKHRhcFhlbmQgPSBtYXgoKHRhcFhvcmlnaW4gKyB0YXBXaWR0aEJldHdlZW5EaWZmKSAKCQkJKHZpYTFYZW5kICsgY2VudGVyVGFwWEVuY1ZpYSkKCQkgICAgKSkKCSAgICApIAoJICAgICh0IAoJCShkb3VibGVNYXhEaXN0YW5jZVRvVGFwID0gOTk5OTkuOSkgCgkJKHZpYTFYb3JpZ2luID0gbWF4KGRpZmZYRW5jVmlhIAoJCQkodGlwVGFwWEVuY1ZpYSArIHRhcFNwYWNlUG9seSkKCQkgICAgKSkgCgkJKHZpYTFYZW5kID0gKHZpYTFYb3JpZ2luICsgdmlhMVdpZHRoKSkgCgkJKHRhcFhvcmlnaW4gPSAodmlhMVhvcmlnaW4gLSB0aXBUYXBYRW5jVmlhKSkKCQkodGFwWGVuZCA9ICh2aWExWGVuZCArIHRpcFRhcFhFbmNWaWEpKQoJICAgICkKCSkgCgkodGJUYXBYb3JpZ2luID0gbWluKCh2aWExWG9yaWdpbiAtIHRpcFRhcFhFbmNWaWEpIAoJCSgodmlhMVhvcmlnaW4gKyAodmlhMVdpZHRoIC8gMi4wKSkgLSAodGFwV2lkdGggLyAyLjApKQoJICAgICkpIAoJKHRiVGFwWGVuZCA9ICh2aWExWGVuZCArICh2aWExWG9yaWdpbiAtIHRiVGFwWG9yaWdpbikpKSAKCShkaWZmWG9yaWdpbiA9IDAuMCkgCgkoZGlmZlhlbmQgPSAodmlhMVhlbmQgKyB2aWExWG9yaWdpbikpCgkoZGlmZkNvbllvZmZzZXRBYnV0dGluZ1RhcCA9IG1heChkaWZmWUVuY1ZpYSAKCQkodmlhMVNwYWNlIC0gbWF4KHRpcFRhcFlJbkVuY1ZpYSAKCQkJKHRhcFdpZHRoQmV0d2VlbkRpZmYgLSB2aWExV2lkdGggLSBjZW50ZXJUYXBZRW5jVmlhKQoJCSAgICApKQoJICAgICkpIAoJY29uZCgoYm90dG9tRW5kVGFwIAoJCShmaXJzdERpZmZDb25Zb2Zmc2V0ID0gbWF4KGRpZmZZRW5jVmlhIAoJCQkodmlhMVNwYWNlIC0gdGlwVGFwWUluRW5jVmlhKQoJCSAgICApKQoJICAgICkgCgkgICAgKHQgCgkJKGZpcnN0RGlmZkNvbllvZmZzZXQgPSBkaWZmWUVuY1ZpYSkKCSAgICApCgkpIAoJY29uZCgodG9wRW5kVGFwIAoJCShsYXN0RGlmZkNvbllvZmZzZXQgPSBtYXgoZGlmZllFbmNWaWEgCgkJCSh2aWExU3BhY2UgLSB0aXBUYXBZSW5FbmNWaWEpCgkJICAgICkpCgkgICAgKSAKCSAgICAodCAKCQkobGFzdERpZmZDb25Zb2Zmc2V0ID0gZGlmZllFbmNWaWEpCgkgICAgKQoJKSAKCSh0YXBZb2Zmc2V0ID0gbWF4KHRhcFdpZHRoQnV0dGluZ0RpZmYgCgkJKHZpYTFXaWR0aCArIHRpcFRhcFlJbkVuY1ZpYSArIHRpcFRhcFlPdXRFbmNWaWEpCgkgICAgKSkgCgkobWluVyA9IG1heChkaWZmV2lkdGggCgkJKGZpcnN0RGlmZkNvbllvZmZzZXQgKyB2aWExV2lkdGggKyBsYXN0RGlmZkNvbllvZmZzZXQpCgkgICAgKSkKCXdoZW4oKCh3IC0gbWluVykgPCAtMWUtMDYpIAoJICAgIChzbWFsbGVyTWluVyA9IG1heChkaWZmV2lkdGggdGFwV2lkdGggCgkJICAgICh2aWExV2lkdGggKyAoMi4wICogZGlmZllFbmNWaWEpKQoJCSkpIAoJICAgIHdoZW4oKChzbWFsbGVyTWluVyAtIHcpID4gMWUtMDYpIAoJCWVycm9yKCJDYW5ub3QgZHJhdyBjb250YWN0IC0gdyB0b28gc21hbGwiKQoJICAgICkgCgkgICAgY29uZCgoKGJvdHRvbUVuZFRhcCAmJiB0b3BFbmRUYXApIAoJCSAgICAoZGlmZkRpdmlzb3IgPSAyLjApCgkJKSAKCQkodCAKCQkgICAgKGRpZmZEaXZpc29yID0gMS4wKQoJCSkKCSAgICApIAoJICAgIChkaWZmU3ByZWFkID0gKChtaW5XIC0gdykgLyBkaWZmRGl2aXNvcikpCgkgICAgKG9kZHAocm91bmQoKGRpZmZTcHJlYWQgLyBoYWxmRGlmZnVzaW9uR3JpZCkpKSAmJiAoZGlmZlNwcmVhZCA9IChkaWZmU3ByZWFkICsgaGFsZkRpZmZ1c2lvbkdyaWQpKSkgCgkgICAgY29uZCgoKGJvdHRvbUVuZFRhcCAmJiB0b3BFbmRUYXApIAoJCSAgICAoZmlyc3REaWZmQ29uWW9mZnNldCA9ICgoLSBkaWZmU3ByZWFkKSArICgtIHRpcFRhcFlJbkVuY1ZpYSkgKyB2aWExU3BhY2UpKSAKCQkgICAgKGxhc3REaWZmQ29uWW9mZnNldCA9IGRpZmZZRW5jVmlhKSAKCQkgICAgKHRhcFlvZmZzZXQgPSBtYXgodGFwV2lkdGhCdXR0aW5nRGlmZiAKCQkJICAgIChkaWZmU3ByZWFkICsgdGlwVGFwWUluRW5jVmlhICsgdGlwVGFwWU91dEVuY1ZpYSArIHZpYTFXaWR0aCkKCQkJKSkKCQkpIAoJCShib3R0b21FbmRUYXAgCgkJICAgIChmaXJzdERpZmZDb25Zb2Zmc2V0ID0gKCgtIGRpZmZTcHJlYWQpICsgKC0gdGlwVGFwWUluRW5jVmlhKSArIHZpYTFTcGFjZSkpIAoJCSAgICAodGFwWW9mZnNldCA9IG1heCh0YXBXaWR0aEJ1dHRpbmdEaWZmIAoJCQkgICAgKHRpcFRhcFlPdXRFbmNWaWEgKyB2aWExV2lkdGggKyB2aWExU3BhY2UgKyAoLSBmaXJzdERpZmZDb25Zb2Zmc2V0KSkKCQkJKSkKCQkpIAoJCSh0b3BFbmRUYXAgCgkJICAgIChmaXJzdERpZmZDb25Zb2Zmc2V0ID0gZGlmZllFbmNWaWEpIAoJCSAgICAobGFzdERpZmZDb25Zb2Zmc2V0ID0gZGlmZllFbmNWaWEpIAoJCSAgICAodGFwWW9mZnNldCA9IG1heCh0YXBXaWR0aEJ1dHRpbmdEaWZmIAoJCQkgICAgKHRpcFRhcFlPdXRFbmNWaWEgKyB0aXBUYXBZSW5FbmNWaWEgKyB2aWExV2lkdGggKyB2aWExU3BhY2UgKyBmaXJzdERpZmZDb25Zb2Zmc2V0ICsgdmlhMVdpZHRoICsgKC0gdykpCgkJCSkpCgkJKSAKCQkoY2VudGVyVGFwIAoJCSAgICAoZmlyc3REaWZmQ29uWW9mZnNldCA9IGRpZmZZRW5jVmlhKSAKCQkgICAgKHRhcFlvZmZzZXQgPSAwLjApCgkJKQoJICAgICkKCSkgCgkoeVZhbHVlID0gMC4wKSAKCSh5UmVtYWluaW5nID0gdykgCgkoeVZpYTFPZmZzZXQgPSAodmlhMVNwYWNlICsgdmlhMVdpZHRoKSkgCgkoY2VudGVyRGlmZkNvbllvZmZzZXQgPSAodmlhMVNwYWNlIC0gY2VudGVyVGFwWUVuY1ZpYSkpCgkoY2VudGVyVGFwcyA9IG5pbCkgCgl3aGlsZSgoIWNlbnRlclRhcCAmJiAoKCgoMiAqIHRpcFRhcFlJbkVuY1ZpYSkgKyB5UmVtYWluaW5nKSAtIGRvdWJsZU1heERpc3RhbmNlVG9UYXApID4gLTFlLTA2KSkgCgkgICAgY29uZCgoIWNlbnRlclRhcHMgCgkJICAgIChkaWZmRGVsdGEgPSAoZmlyc3REaWZmQ29uWW9mZnNldCArIChtYXhDb25zZWNEaWZmQ29udGFjdHMgKiB2aWExV2lkdGgpICsgKChtYXhDb25zZWNEaWZmQ29udGFjdHMgLSAxKSAqIHZpYTFTcGFjZSkgKyBjZW50ZXJEaWZmQ29uWW9mZnNldCkpCgkJKSAKCQkodCAKCQkgICAgKGRpZmZEZWx0YSA9IChjZW50ZXJEaWZmQ29uWW9mZnNldCArIGRpZmZDb25Zb2Zmc2V0QWJ1dHRpbmdUYXAgKyAobWF4Q29uc2VjRGlmZkNvbnRhY3RzICogdmlhMVdpZHRoKSArICgobWF4Q29uc2VjRGlmZkNvbnRhY3RzIC0gMSkgKiB2aWExU3BhY2UpKSkKCQkpCgkgICAgKSAKCSAgICAoZGJJZCA9IChkYkNyZWF0ZVJlY3QgdGNDZWxsVmlldyBkaWZmIAoJCSAgICBsaXN0KChkaWZmWG9yaWdpbjp5VmFsdWUpIAoJCQkoZGlmZlhlbmQ6KHlWYWx1ZSArIGRpZmZEZWx0YSkpCgkJICAgICkKCQkpKSAKCSAgICAoZGJBZGRGaWdUb05ldCBkYklkIG5ldCkgCgkgICAgd2hlbihpbXBsYW50IAoJCShkYklkID0gKGRiQ3JlYXRlUmVjdCB0Y0NlbGxWaWV3IGRpZmZJbXBsYW50IAoJCQlsaXN0KGxpc3QoKGRpZmZYb3JpZ2luIC0gZGlmZkltcEVuY1hMKSB5VmFsdWUpIAoJCQkgICAgbGlzdCgoZGlmZlhlbmQgKyBkaWZmSW1wRW5jWFIpIAoJCQkJKHlWYWx1ZSArIGRpZmZEZWx0YSkKCQkJICAgICkKCQkJKQoJCSAgICApKSAKCQkoZGJBZGRGaWdUb05ldCBkYklkIG5ldCkKCSAgICApCgkgICAgY29uZCgoY2VudGVyVGFwcyAKCQkgICAgKHlWYWx1ZSA9ICh5VmFsdWUgKyBkaWZmQ29uWW9mZnNldEFidXR0aW5nVGFwKSkKCQkpIAoJCSh0IAoJCSAgICAoeVZhbHVlID0gKHlWYWx1ZSArIGZpcnN0RGlmZkNvbllvZmZzZXQpKQoJCSkKCSAgICApIAoJICAgIGZvcihpIDEgbWF4Q29uc2VjRGlmZkNvbnRhY3RzIAoJCShkYklkID0gKGRiQ3JlYXRlUmVjdCB0Y0NlbGxWaWV3IHZpYTFMYXllciAKCQkJbGlzdCgodmlhMVhvcmlnaW46eVZhbHVlKSAKCQkJICAgICh2aWExWGVuZDooeVZhbHVlICsgdmlhMVdpZHRoKSkKCQkJKQoJCSAgICApKSAKCQkoZGJBZGRGaWdUb05ldCBkYklkIG5ldCkKCQkoeVZhbHVlID0gKHlWYWx1ZSArIHlWaWExT2Zmc2V0KSkKCSAgICApIAoJICAgICh5VmFsdWUgPSAoeVZhbHVlICsgY2VudGVyRGlmZkNvbllvZmZzZXQgKyAoLSB2aWExU3BhY2UpKSkgCgkgICAgKHRhcFlXaWR0aEJldHdlZW5EaWZmID0gbWF4KHRhcFdpZHRoQmV0d2VlbkRpZmYgCgkJICAgICgoMi4wICogY2VudGVyVGFwWUVuY1ZpYSkgKyB2aWExV2lkdGgpCgkJKSkgCgkgICAgKGRiSWQgPSAoZGJDcmVhdGVSZWN0IHRjQ2VsbFZpZXcgdGFwIAoJCSAgICBsaXN0KCh0YXBYb3JpZ2luOnlWYWx1ZSkgCgkJCSh0YXBYZW5kOih5VmFsdWUgKyB0YXBZV2lkdGhCZXR3ZWVuRGlmZikpCgkJICAgICkKCQkpKQoJICAgIChkYkFkZEZpZ1RvTmV0IGRiSWQgbmV0KSAKCSAgICB3aGVuKGltcGxhbnQgCgkJKGRiSWQgPSAoZGJDcmVhdGVSZWN0IHRjQ2VsbFZpZXcgdGFwSW1wbGFudCAKCQkJbGlzdCgodGFwWG9yaWdpbjp5VmFsdWUpIAoJCQkgICAgKHRhcFhlbmQ6KHlWYWx1ZSArIHRhcFlXaWR0aEJldHdlZW5EaWZmKSkKCQkJKQoJCSAgICApKSAKCQkoZGJBZGRGaWdUb05ldCBkYklkIG5ldCkKCSAgICApIAoJICAgIHdoZW4oY2VudGVyUmVjb2duaXRpb24gCgkJKGRiSWQgPSAoZGJDcmVhdGVSZWN0IHRjQ2VsbFZpZXcgY2VudGVyUmVjb2duaXRpb24gCgkJCWxpc3QoKHRhcFhvcmlnaW46eVZhbHVlKSAKCQkJICAgICh0YXBYZW5kOih5VmFsdWUgKyB0YXBZV2lkdGhCZXR3ZWVuRGlmZikpCgkJCSkKCQkgICAgKSkKCSAgICApIAoJICAgIHVubGVzcygoY2VudGVyVGFwcyB8fCBib3R0b21FbmRUYXApIAoJCSh0YXBCb3R0b21FZGdlID0geVZhbHVlKQoJICAgICkgCgkgICAgdW5sZXNzKHRvcEVuZFRhcCAKCQkodGFwVG9wRWRnZSA9IHlWYWx1ZSkKCSAgICApCgkgICAgKGNlbnRlclRhcHMgPSB0KSAKCSAgICAoZGJJZCA9IChkYkNyZWF0ZVJlY3QgdGNDZWxsVmlldyB2aWExTGF5ZXIgCgkJICAgIGxpc3QoKHZpYTFYb3JpZ2luOih5VmFsdWUgKyBjZW50ZXJUYXBZRW5jVmlhKSkgCgkJCSh2aWExWGVuZDooeVZhbHVlICsgY2VudGVyVGFwWUVuY1ZpYSArIHZpYTFXaWR0aCkpCgkJICAgICkKCQkpKSAKCSAgICAoZGJBZGRGaWdUb05ldCBkYklkIG5ldCkgCgkgICAgKGRiSWQgPSAoZGJDcmVhdGVSZWN0IHRjQ2VsbFZpZXcgZGlmZiAKCQkgICAgbGlzdCgoZGlmZlhvcmlnaW46eVZhbHVlKSAKCQkJKHRhcFhvcmlnaW46KHlWYWx1ZSArIHRhcFlXaWR0aEJldHdlZW5EaWZmKSkKCQkgICAgKQoJCSkpIAoJICAgIChkYkFkZEZpZ1RvTmV0IGRiSWQgbmV0KQoJICAgIHdoZW4oaW1wbGFudCAKCQkoZGJJZCA9IChkYkNyZWF0ZVJlY3QgdGNDZWxsVmlldyBkaWZmSW1wbGFudCAKCQkJbGlzdChsaXN0KChkaWZmWG9yaWdpbiAtIGRpZmZJbXBFbmNYTCkgeVZhbHVlKSAKCQkJICAgIGxpc3QoKHRhcFhvcmlnaW4gKyBkaWZmSW1wRW5jQnV0dCkgCgkJCQkoeVZhbHVlICsgdGFwWVdpZHRoQmV0d2VlbkRpZmYpCgkJCSAgICApCgkJCSkKCQkgICAgKSkgCgkJKGRiQWRkRmlnVG9OZXQgZGJJZCBuZXQpCgkgICAgKSAKCSAgICAoZGJJZCA9IChkYkNyZWF0ZVJlY3QgdGNDZWxsVmlldyBkaWZmIAoJCSAgICBsaXN0KCh0YXBYZW5kOnlWYWx1ZSkgCgkJCShkaWZmWGVuZDooeVZhbHVlICsgdGFwWVdpZHRoQmV0d2VlbkRpZmYpKQoJCSAgICApCgkJKSkgCgkgICAgKGRiQWRkRmlnVG9OZXQgZGJJZCBuZXQpIAoJICAgIHdoZW4oaW1wbGFudCAKCQkoZGJJZCA9IChkYkNyZWF0ZVJlY3QgdGNDZWxsVmlldyBkaWZmSW1wbGFudCAKCQkJbGlzdChsaXN0KCh0YXBYZW5kIC0gZGlmZkltcEVuY0J1dHQpIHlWYWx1ZSkgCgkJCSAgICBsaXN0KChkaWZmWGVuZCArIGRpZmZJbXBFbmNYUikgCgkJCQkoeVZhbHVlICsgdGFwWVdpZHRoQmV0d2VlbkRpZmYpCgkJCSAgICApCgkJCSkKCQkgICAgKSkgCgkJKGRiQWRkRmlnVG9OZXQgZGJJZCBuZXQpCgkgICAgKSAKCSAgICAoeVZhbHVlID0gKHlWYWx1ZSArIHRhcFlXaWR0aEJldHdlZW5EaWZmKSkKCSAgICAoeVJlbWFpbmluZyA9ICh3IC0geVZhbHVlKSkKCSkgCgl3aGVuKGNlbnRlclRhcCAKCSAgICAoZGJJZCA9IChkYkNyZWF0ZVJlY3QgdGNDZWxsVmlldyB0YXAgCgkJICAgIGxpc3QoKHRhcFhvcmlnaW46MC4wKSAKCQkJKHRhcFhlbmQ6dykKCQkgICAgKQoJCSkpIAoJICAgIChkYkFkZEZpZ1RvTmV0IGRiSWQgbmV0KSAKCSAgICB3aGVuKGNlbnRlclJlY29nbml0aW9uIAoJCShkYklkID0gKGRiQ3JlYXRlUmVjdCB0Y0NlbGxWaWV3IGNlbnRlclJlY29nbml0aW9uIAoJCQlsaXN0KCh0YXBYb3JpZ2luOjAuMCkgCgkJCSAgICAodGFwWGVuZDp3KQoJCQkpCgkJICAgICkpCgkgICAgKSAKCSAgICB3aGVuKGltcGxhbnQgCgkJKGRiSWQgPSAoZGJDcmVhdGVSZWN0IHRjQ2VsbFZpZXcgdGFwSW1wbGFudCAKCQkJbGlzdChsaXN0KCh0YXBYb3JpZ2luIC0gdGFwSW1wRW5jQnV0dCkgCgkJCQkoLSB0YXBJbXBFbmNZKQoJCQkgICAgKSAKCQkJICAgIGxpc3QoKHRhcFhlbmQgKyB0YXBJbXBFbmNCdXR0KSAKCQkJCSh3ICsgdGFwSW1wRW5jWSkKCQkJICAgICkKCQkJKQoJCSAgICApKQoJICAgICkKCSAgICBpZihjZW50ZXJWaWExIHRoZW4gCgkJKHZpYURyYXdTcGFjZVkgPSAodyAtIChjZW50ZXJUYXBZRW5jVmlhICogMikpKSAKCQkodmlhMVJvdyA9IChmbG9vciAKCQkJKCh2aWFEcmF3U3BhY2VZICsgdmlhMVNwYWNlKSAvIHZpYTFQaXRjaCkKCQkgICAgKSkgCgkJaWYoKHZpYTFSb3cgPT0gMCkgCgkJICAgICh2aWExUm93ID0gMSkKCQkpCgkJKHZpYTFZb2Zmc2V0ID0gKCh2aWFEcmF3U3BhY2VZIC0gKCh2aWExUm93ICogdmlhMVBpdGNoKSAtIHZpYTFTcGFjZSkpIC8gMikpIAoJCSh2aWExWW9yaWdpbiA9IChjZW50ZXJUYXBZRW5jVmlhICsgKGZpeCgoKHZpYTFZb2Zmc2V0IC8gc25hcEdyaWQpICsgMWUtMDYpKSAqIHNuYXBHcmlkKSkpIAoJCSh0aGVZID0gdmlhMVlvcmlnaW4pIAoJCWZvcihyIDEgdmlhMVJvdyAKCQkgICAgKGRiSWQgPSAoZGJDcmVhdGVSZWN0IHRjQ2VsbFZpZXcgdmlhMUxheWVyIAoJCQkgICAgbGlzdCgodmlhMVhvcmlnaW46dGhlWSkgCgkJCQkodmlhMVhlbmQ6KHRoZVkgKyB2aWExV2lkdGgpKQoJCQkgICAgKQoJCQkpKSAKCQkgICAgKGRiQWRkRmlnVG9OZXQgZGJJZCBuZXQpCgkJICAgICh0aGVZID0gKHRoZVkgKyB2aWExUGl0Y2gpKQoJCSkgZWxzZQoJCSh0aGVZID0gY2VudGVyVGFwWUVuY1ZpYSkgCgkJd2hpbGUoKCh0aGVZIC0gKHcgKyAoLSBjZW50ZXJUYXBZRW5jVmlhKSArICgtIHZpYTFXaWR0aCkpKSA8IDFlLTA2KSAKCQkgICAgKGRiSWQgPSAoZGJDcmVhdGVSZWN0IHRjQ2VsbFZpZXcgdmlhMUxheWVyIAoJCQkgICAgbGlzdChsaXN0KHZpYTFYb3JpZ2luIHRoZVkpIAoJCQkJbGlzdCh2aWExWGVuZCAKCQkJCSAgICAodGhlWSArIHZpYTFXaWR0aCkKCQkJCSkKCQkJICAgICkKCQkJKSkgCgkJICAgIChkYkFkZEZpZ1RvTmV0IGRiSWQgbmV0KSAKCQkgICAgKHRoZVkgPSAodGhlWSArIHZpYTFXaWR0aCArIHZpYTFTcGFjZSkpCgkJKQoJICAgICkgCgkgICAgKHRhcFZpYTFYTyA9IHZpYTFYb3JpZ2luKSAKCSAgICAodGFwVmlhMVhFID0gdmlhMVhlbmQpIAoJICAgIChsYXN0RGlmZkNvbllvZmZzZXQgPSAodyArICgtIHRoZVkpICsgdmlhMVNwYWNlKSkgCgkgICAgKGRiaWQgPSAoZGJDcmVhdGVSZWN0IHRjQ2VsbFZpZXcgZGlmZiAKCQkgICAgbGlzdChsaXN0KGRpZmZYb3JpZ2luIDAuMCkgCgkJCWxpc3QodGFwWG9yaWdpbiB3KQoJCSAgICApCgkJKSkKCSAgICAoZGJBZGRGaWdUb05ldCBkYklkIG5ldCkgCgkgICAgd2hlbihpbXBsYW50IAoJCShkYklkID0gKGRiQ3JlYXRlUmVjdCB0Y0NlbGxWaWV3IGRpZmZJbXBsYW50IAoJCQlsaXN0KGxpc3QoKGRpZmZYb3JpZ2luIC0gZGlmZkltcEVuY1hMKSAKCQkJCSgtIGRpZmZJbXBFbmNZKQoJCQkgICAgKSAKCQkJICAgIGxpc3QoKHRhcFhvcmlnaW4gKyBkaWZmSW1wRW5jQnV0dCkgCgkJCQkodyArIGRpZmZJbXBFbmNZKQoJCQkgICAgKQoJCQkpCgkJICAgICkpIAoJCShkYkFkZEZpZ1RvTmV0IGRiSWQgbmV0KQoJICAgICkgCgkgICAgKHZpYTFYb3JpZ2luID0gZGlmZlhPdXRFbmNWaWEpIAoJICAgICh2aWExWGVuZCA9ICh2aWExWG9yaWdpbiArIHZpYTFXaWR0aCkpIAoJICAgIGlmKGNlbnRlclZpYTEgdGhlbiAKCQkodmlhRHJhd1NwYWNlWSA9ICh3IC0gKGRpZmZZRW5jVmlhICogMikpKSAKCQkodmlhMVJvdyA9IChmbG9vciAKCQkJKCh2aWFEcmF3U3BhY2VZICsgdmlhMVNwYWNlKSAvIHZpYTFQaXRjaCkKCQkgICAgKSkgCgkJaWYoKHZpYTFSb3cgPT0gMCkgCgkJICAgICh2aWExUm93ID0gMSkKCQkpCgkJKHZpYTFZb2Zmc2V0ID0gKCh2aWFEcmF3U3BhY2VZIC0gKCh2aWExUm93ICogdmlhMVBpdGNoKSAtIHZpYTFTcGFjZSkpIC8gMikpIAoJCSh2aWExWW9yaWdpbiA9IChkaWZmWUVuY1ZpYSArIChmaXgoKCh2aWExWW9mZnNldCAvIHNuYXBHcmlkKSArIDFlLTA2KSkgKiBzbmFwR3JpZCkpKSAKCQkodGhlWSA9IHZpYTFZb3JpZ2luKSAKCQlmb3IociAxIHZpYTFSb3cgCgkJICAgIHVubGVzcyhub0RpZmZDb250YWN0IAoJCQkoZGJJZCA9IChkYkNyZWF0ZVJlY3QgdGNDZWxsVmlldyB2aWExTGF5ZXIgCgkJCQlsaXN0KCh2aWExWG9yaWdpbjp0aGVZKSAKCQkJCSAgICAodmlhMVhlbmQ6KHRoZVkgKyB2aWExV2lkdGgpKQoJCQkJKQoJCQkgICAgKSkKCQkgICAgKSAKCQkgICAgKGRiQWRkRmlnVG9OZXQgZGJJZCBuZXQpCgkJICAgICh0aGVZID0gKHRoZVkgKyB2aWExUGl0Y2gpKQoJCSkgZWxzZQoJCSh0aGVZID0gZGlmZllFbmNWaWEpIAoJCXdoaWxlKCgodGhlWSAtICh3ICsgKC0gZGlmZllFbmNWaWEpICsgKC0gdmlhMVdpZHRoKSkpIDwgMWUtMDYpIAoJCSAgICB1bmxlc3Mobm9EaWZmQ29udGFjdCAKCQkJKGRiSWQgPSAoZGJDcmVhdGVSZWN0IHRjQ2VsbFZpZXcgdmlhMUxheWVyIAoJCQkJbGlzdChsaXN0KHZpYTFYb3JpZ2luIHRoZVkpIAoJCQkJICAgIGxpc3QodmlhMVhlbmQgCgkJCQkJKHRoZVkgKyB2aWExV2lkdGgpCgkJCQkgICAgKQoJCQkJKQoJCQkgICAgKSkKCQkgICAgKSAKCQkgICAgKGRiQWRkRmlnVG9OZXQgZGJJZCBuZXQpIAoJCSAgICAodGhlWSA9ICh0aGVZICsgdmlhMVdpZHRoICsgdmlhMVNwYWNlKSkKCQkpCgkgICAgKQoJICAgIChkYklkID0gKGRiQ3JlYXRlUmVjdCB0Y0NlbGxWaWV3IGRpZmYgCgkJICAgIGxpc3QobGlzdCh0YXBYZW5kIDAuMCkgCgkJCWxpc3QoZGlmZlhlbmQgdykKCQkgICAgKQoJCSkpIAoJICAgIChkYkFkZEZpZ1RvTmV0IGRiSWQgbmV0KSAKCSAgICB3aGVuKGltcGxhbnQgCgkJKGRiSWQgPSAoZGJDcmVhdGVSZWN0IHRjQ2VsbFZpZXcgZGlmZkltcGxhbnQgCgkJCWxpc3QobGlzdCgodGFwWGVuZCAtIGRpZmZJbXBFbmNCdXR0KSAKCQkJCSgtIGRpZmZJbXBFbmNZKQoJCQkgICAgKSAKCQkJICAgIGxpc3QoKGRpZmZYZW5kICsgZGlmZkltcEVuY1hSKSAKCQkJCSh3ICsgZGlmZkltcEVuY1kpCgkJCSAgICApCgkJCSkKCQkgICAgKSkgCgkJKGRiQWRkRmlnVG9OZXQgZGJJZCBuZXQpCgkgICAgKSAKCSAgICAodmlhMVhvcmlnaW4gPSAoZGlmZlhlbmQgKyAoLSBkaWZmWE91dEVuY1ZpYSkgKyAoLSB2aWExV2lkdGgpKSkgCgkgICAgKHZpYTFYZW5kID0gKHZpYTFYb3JpZ2luICsgdmlhMVdpZHRoKSkKCSAgICBpZihjZW50ZXJWaWExIHRoZW4gCgkJKHZpYURyYXdTcGFjZVkgPSAodyAtIChkaWZmWUVuY1ZpYSAqIDIpKSkgCgkJKHZpYTFSb3cgPSAoZmxvb3IgCgkJCSgodmlhRHJhd1NwYWNlWSArIHZpYTFTcGFjZSkgLyB2aWExUGl0Y2gpCgkJICAgICkpIAoJCWlmKCh2aWExUm93ID09IDApIAoJCSAgICAodmlhMVJvdyA9IDEpCgkJKQoJCSh2aWExWW9mZnNldCA9ICgodmlhRHJhd1NwYWNlWSAtICgodmlhMVJvdyAqIHZpYTFQaXRjaCkgLSB2aWExU3BhY2UpKSAvIDIpKSAKCQkodmlhMVlvcmlnaW4gPSAoZGlmZllFbmNWaWEgKyAoZml4KCgodmlhMVlvZmZzZXQgLyBzbmFwR3JpZCkgKyAxZS0wNikpICogc25hcEdyaWQpKSkgCgkJKHRoZVkgPSB2aWExWW9yaWdpbikgCgkJZm9yKHIgMSB2aWExUm93IAoJCSAgICB1bmxlc3Mobm9EaWZmQ29udGFjdCAKCQkJKGRiSWQgPSAoZGJDcmVhdGVSZWN0IHRjQ2VsbFZpZXcgdmlhMUxheWVyIAoJCQkJbGlzdCgodmlhMVhvcmlnaW46dGhlWSkgCgkJCQkgICAgKHZpYTFYZW5kOih0aGVZICsgdmlhMVdpZHRoKSkKCQkJCSkKCQkJICAgICkpCgkJICAgICkgCgkJICAgIChkYkFkZEZpZ1RvTmV0IGRiSWQgbmV0KQoJCSAgICAodGhlWSA9ICh0aGVZICsgdmlhMVBpdGNoKSkKCQkpIGVsc2UKCQkodGhlWSA9IGRpZmZZRW5jVmlhKSAKCQl3aGlsZSgoKHRoZVkgLSAodyArICgtIGRpZmZZRW5jVmlhKSArICgtIHZpYTFXaWR0aCkpKSA8IDFlLTA2KSAKCQkgICAgdW5sZXNzKG5vRGlmZkNvbnRhY3QgCgkJCShkYklkID0gKGRiQ3JlYXRlUmVjdCB0Y0NlbGxWaWV3IHZpYTFMYXllciAKCQkJCWxpc3QobGlzdCh2aWExWG9yaWdpbiB0aGVZKSAKCQkJCSAgICBsaXN0KHZpYTFYZW5kIAoJCQkJCSh0aGVZICsgdmlhMVdpZHRoKQoJCQkJICAgICkKCQkJCSkKCQkJICAgICkpCgkJICAgICkgCgkJICAgIChkYkFkZEZpZ1RvTmV0IGRiSWQgbmV0KSAKCQkgICAgKHRoZVkgPSAodGhlWSArIHZpYTFXaWR0aCArIHZpYTFTcGFjZSkpCgkJKQoJICAgICkgCgkgICAgKHZpYTFYb3JpZ2luID0gZGlmZlhPdXRFbmNWaWEpCgkpIAoJdW5sZXNzKGNlbnRlclRhcCAKCSAgICAoZGJJZCA9IChkYkNyZWF0ZVJlY3QgdGNDZWxsVmlldyBkaWZmIAoJCSAgICBsaXN0KChkaWZmWG9yaWdpbjp5VmFsdWUpIAoJCQkoZGlmZlhlbmQ6dykKCQkgICAgKQoJCSkpIAoJICAgIChkYkFkZEZpZ1RvTmV0IGRiSWQgbmV0KSAKCSAgICB3aGVuKGltcGxhbnQgCgkJKGRiSWQgPSAoZGJDcmVhdGVSZWN0IHRjQ2VsbFZpZXcgZGlmZkltcGxhbnQgCgkJCWxpc3QobGlzdCgoZGlmZlhvcmlnaW4gLSBkaWZmSW1wRW5jKSB5VmFsdWUpIAoJCQkgICAgbGlzdCgoZGlmZlhlbmQgKyBkaWZmSW1wRW5jKSAKCQkJCSh3ICsgZGlmZkltcEVuYykKCQkJICAgICkKCQkJKQoJCSAgICApKSAKCQkoZGJBZGRGaWdUb05ldCBkYklkIG5ldCkgCgkJKGRiSWQgPSAoZGJDcmVhdGVSZWN0IHRjQ2VsbFZpZXcgZGlmZkltcGxhbnQgCgkJCWxpc3QobGlzdCgoZGlmZlhvcmlnaW4gLSBkaWZmSW1wRW5jKSAKCQkJCSgtIGRpZmZJbXBFbmMpCgkJCSAgICApIAoJCQkgICAgbGlzdCgoZGlmZlhlbmQgKyBkaWZmSW1wRW5jKSAwLjApCgkJCSkKCQkgICAgKSkgCgkJKGRiQWRkRmlnVG9OZXQgZGJJZCBuZXQpCgkgICAgKQoJKSAKCWNvbmQoKCghY2VudGVyVGFwcyAmJiAhY2VudGVyVGFwKSAKCQkoZGJJZCA9IChkYkNyZWF0ZVJlY3QgdGNDZWxsVmlldyBkaWZmIAoJCQlsaXN0KCh2aWExWG9yaWdpbjowKSAKCQkJICAgICh2aWExWGVuZDp3KQoJCQkpCgkJICAgICkpIAoJCShwaW5JZCA9IChkYkNyZWF0ZVBpbiBuZXQgZGJJZCkpIAoJCXNldFNHcShwaW5JZCBhbGxEaXIgYWNjZXNzRGlyKSAKCQkoZGJDcmVhdGVQcm9wIHRjQ2VsbFZpZXcgImRpZmZMYXllclBpbkJib3giICJsaXN0IiAKCQkgICAgKGRiSWR+PmJCb3gpCgkJKQoJICAgICkgCgkgICAgKHQgCgkJKGRiSWQgPSAoZGJDcmVhdGVSZWN0IHRjQ2VsbFZpZXcgZGlmZiAKCQkJbGlzdCgoZGlmZlhvcmlnaW46MCkgCgkJCSAgICAoKGRpZmZYb3JpZ2luICsgbWluUGluV2lkdGgpOncpCgkJCSkKCQkgICAgKSkgCgkJKGRiQWRkRmlnVG9OZXQgZGJJZCBuZXQpIAoJCShwaW5JZCA9IChkYkNyZWF0ZVBpbiBuZXQgZGJJZCkpIAoJCXNldFNHcShwaW5JZCAKCQkgICAgbGlzdCgibGVmdCIpIGFjY2Vzc0RpcgoJCSkKCQkoZGJJZCA9IChkYkNyZWF0ZVJlY3QgdGNDZWxsVmlldyBkaWZmIAoJCQlsaXN0KCgoZGlmZlhlbmQgLSBtaW5QaW5XaWR0aCk6MCkgCgkJCSAgICAoZGlmZlhlbmQ6dykKCQkJKQoJCSAgICApKSAKCQkoZGJBZGRGaWdUb05ldCBkYklkIG5ldCkgCgkJKHBpbklkID0gKGRiQ3JlYXRlUGluIG5ldCBkYklkKSkgCgkJc2V0U0dxKHBpbklkIAoJCSAgICBsaXN0KCJyaWdodCIpIGFjY2Vzc0RpcgoJCSkgCgkJKGRiQ3JlYXRlUHJvcCB0Y0NlbGxWaWV3ICJkaWZmTGF5ZXJQaW5CYm94IiAibGlzdCIgCgkJICAgIGxpc3QoKGRpZmZYb3JpZ2luOjApIAoJCQkoZGlmZlhlbmQ6dykKCQkgICAgKQoJCSkKCSAgICApCgkpCgkoZGJDcmVhdGVQcm9wIHRjQ2VsbFZpZXcgImRpZmZMYXllckJib3giICJsaXN0IiAKCSAgICBsaXN0KChkaWZmWG9yaWdpbjowKSAKCQkoZGlmZlhlbmQ6dykKCSAgICApCgkpIAoJY29uZCgoKCFjZW50ZXJUYXBzICYmICFjZW50ZXJUYXApIAoJCSh5VmFsdWUgPSAoeVZhbHVlICsgZmlyc3REaWZmQ29uWW9mZnNldCkpCgkgICAgKSAKCSAgICAodCAKCQkoeVZhbHVlID0gKHlWYWx1ZSArIGRpZmZDb25Zb2Zmc2V0QWJ1dHRpbmdUYXApKQoJICAgICkKCSkgCgl1bmxlc3MoY2VudGVyVGFwIAoJICAgIHdoaWxlKCgodyAtICh5VmFsdWUgKyB2aWExV2lkdGggKyBsYXN0RGlmZkNvbllvZmZzZXQpKSA+IC0xZS0wNikgCgkJKGRiSWQgPSAoZGJDcmVhdGVSZWN0IHRjQ2VsbFZpZXcgdmlhMUxheWVyIAoJCQlsaXN0KCh2aWExWG9yaWdpbjp5VmFsdWUpIAoJCQkgICAgKHZpYTFYZW5kOih5VmFsdWUgKyB2aWExV2lkdGgpKQoJCQkpCgkJICAgICkpIAoJCShkYkFkZEZpZ1RvTmV0IGRiSWQgbmV0KSAKCQkoeVZhbHVlID0gKHlWYWx1ZSArIHlWaWExT2Zmc2V0KSkKCSAgICApCgkpIAoJY29uZCgoYm90dG9tRW5kVGFwIAoJCShkYklkID0gKGRiQ3JlYXRlUmVjdCB0Y0NlbGxWaWV3IHRhcCAKCQkJbGlzdCgodGJUYXBYb3JpZ2luOjAuMCkgCgkJCSAgICAodGJUYXBYZW5kOigtIHRhcFlvZmZzZXQpKQoJCQkpCgkJICAgICkpIAoJCShkYkFkZEZpZ1RvTmV0IGRiSWQgbmV0KSAKCQl3aGVuKGltcGxhbnQgCgkJICAgIChkYklkID0gKGRiQ3JlYXRlUmVjdCB0Y0NlbGxWaWV3IHRhcEltcGxhbnQgCgkJCSAgICBsaXN0KGxpc3QoKHRiVGFwWG9yaWdpbiAtIHRhcEltcEVuYykgdGFwSW1wRW5jQnV0dCkgCgkJCQlsaXN0KCh0YlRhcFhlbmQgKyB0YXBJbXBFbmMpIAoJCQkJICAgICgoLSB0YXBZb2Zmc2V0KSArICgtIHRhcEltcEVuYykpCgkJCQkpCgkJCSAgICApCgkJCSkpIAoJCSAgICAoZGJBZGRGaWdUb05ldCBkYklkIG5ldCkKCQkpIAoJCSh0YXBCb3R0b21FZGdlID0gKC0gdGFwWW9mZnNldCkpCgkJdW5sZXNzKChjZW50ZXJUYXBzIHx8IHRvcEVuZFRhcCkgCgkJICAgICh0YXBUb3BFZGdlID0gMC4wKQoJCSkgCgkJKGRiSWQgPSAoZGJDcmVhdGVSZWN0IHRjQ2VsbFZpZXcgdmlhMUxheWVyIAoJCQlsaXN0KCh2aWExWG9yaWdpbjooKC0gdGFwWW9mZnNldCkgKyB0aXBUYXBZT3V0RW5jVmlhICsgdmlhMVdpZHRoKSkgCgkJCSAgICAodmlhMVhlbmQ6KCgtIHRhcFlvZmZzZXQpICsgdGlwVGFwWU91dEVuY1ZpYSkpCgkJCSkKCQkgICAgKSkgCgkJKGRiQWRkRmlnVG9OZXQgZGJJZCBuZXQpIAoJCSh2aWExTWluWSA9ICgoLSB0YXBZb2Zmc2V0KSArIHRpcFRhcFlPdXRFbmNWaWEpKQoJICAgICkgCgkgICAgKHQgCgkJKHZpYTFNaW5ZID0gZmlyc3REaWZmQ29uWW9mZnNldCkKCSAgICApCgkpIAoJY29uZCgodG9wRW5kVGFwIAoJCShkYklkID0gKGRiQ3JlYXRlUmVjdCB0Y0NlbGxWaWV3IHRhcCAKCQkJbGlzdCgodGJUYXBYb3JpZ2luOncpIAoJCQkgICAgKHRiVGFwWGVuZDoodyArIHRhcFlvZmZzZXQpKQoJCQkpCgkJICAgICkpIAoJCShkYkFkZEZpZ1RvTmV0IGRiSWQgbmV0KSAKCQl3aGVuKGltcGxhbnQgCgkJICAgIChkYklkID0gKGRiQ3JlYXRlUmVjdCB0Y0NlbGxWaWV3IHRhcEltcGxhbnQgCgkJCSAgICBsaXN0KGxpc3QoKHRiVGFwWG9yaWdpbiAtIHRhcEltcEVuYykgCgkJCQkgICAgKHcgLSB0YXBJbXBFbmNCdXR0KQoJCQkJKSAKCQkJCWxpc3QoKHRiVGFwWGVuZCArIHRhcEltcEVuYykgCgkJCQkgICAgKHcgKyB0YXBZb2Zmc2V0ICsgdGFwSW1wRW5jKQoJCQkJKQoJCQkgICAgKQoJCQkpKSAKCQkgICAgKGRiQWRkRmlnVG9OZXQgZGJJZCBuZXQpCgkJKSAKCQkodGFwVG9wRWRnZSA9ICh3ICsgdGFwWW9mZnNldCkpCgkJdW5sZXNzKChjZW50ZXJUYXBzIHx8IGJvdHRvbUVuZFRhcCkgCgkJICAgICh0YXBCb3R0b21FZGdlID0gdykKCQkpIAoJCShkYklkID0gKGRiQ3JlYXRlUmVjdCB0Y0NlbGxWaWV3IHZpYTFMYXllciAKCQkJbGlzdCgodmlhMVhvcmlnaW46KHcgKyB0YXBZb2Zmc2V0ICsgKC0gdGlwVGFwWU91dEVuY1ZpYSkgKyAoLSB2aWExV2lkdGgpKSkgCgkJCSAgICAodmlhMVhlbmQ6KHcgKyB0YXBZb2Zmc2V0ICsgKC0gdGlwVGFwWU91dEVuY1ZpYSkpKQoJCQkpCgkJICAgICkpIAoJCShkYkFkZEZpZ1RvTmV0IGRiSWQgbmV0KSAKCQkodmlhMU1heFkgPSAodyArIHRhcFlvZmZzZXQgKyAoLSB0aXBUYXBZT3V0RW5jVmlhKSkpCgkgICAgKSAKCSAgICAodCAKCQkodmlhMU1heFkgPSAodyAtIGxhc3REaWZmQ29uWW9mZnNldCkpCgkgICAgKQoJKQoJd2hlbigoY2VudGVyVGFwcyB8fCB0b3BFbmRUYXAgfHwgYm90dG9tRW5kVGFwKSAKCSAgICAoZGJDcmVhdGVQcm9wIHRjQ2VsbFZpZXcgInRhcExheWVyQmJveCIgImxpc3QiIAoJCWxpc3QoKG1pbih0YlRhcFhvcmlnaW4gdGFwWG9yaWdpbik6dGFwQm90dG9tRWRnZSkgCgkJICAgIChtYXgodGJUYXBYZW5kIHRhcFhlbmQpOnRhcFRvcEVkZ2UpCgkJKQoJICAgICkKCSkgCgl3aGVuKGNlbnRlclRhcCAKCSAgICAoZGJDcmVhdGVQcm9wIHRjQ2VsbFZpZXcgInRhcExheWVyQmJveCIgImxpc3QiIAoJCWxpc3QoKHRhcFhvcmlnaW46MC4wKSAKCQkgICAgKHRhcFhlbmQ6dykKCQkpCgkgICAgKQoJKSAKCXdoZW4obm9EaWZmQ29udGFjdCAKCSAgICAodmlhMVhvcmlnaW4gPSB0YXBWaWExWE8pIAoJICAgICh2aWExWGVuZCA9IHRhcFZpYTFYRSkKCSkgCgkobGF5ZXIyTGVuZ3RoID0gbWF4KGxheWVyMldpZHRoIAoJCSgodmlhMVhlbmQgLSB2aWExWG9yaWdpbikgKyAoMiAqIGxheWVyMlhFbmNWaWEpKQoJICAgICkpIAoJd2hlbihsYXllcjMgCgkgICAgKGxheWVyMkxlbmd0aCA9IG1heChsYXllcjJMZW5ndGggCgkJICAgICh2aWEyV2lkdGggKyAoMiAqIGxheWVyMlhFbmNWaWEyKSkKCQkpKQoJKQoJaWYoY2VudGVyVGFwIHRoZW4gCgkgICAgKGxheWVyMlhvcmlnaW4gPSAodmlhMVhvcmlnaW4gKyAoKHZpYTFYZW5kIC0gdmlhMVhvcmlnaW4pIC8gMi4wKSArICgtIChsYXllcjJMZW5ndGggLyAyLjApKSkpIGVsc2UgCgkgICAgKGxheWVyMlhvcmlnaW4gPSAodmlhMVhvcmlnaW4gKyAoKHZpYTFXaWR0aCArICgtIGxheWVyMkxlbmd0aCkpIC8gMi4wKSkpCgkpIAoJKGxheWVyMlhlbmQgPSAobGF5ZXIyWG9yaWdpbiArIGxheWVyMkxlbmd0aCkpIAoJKGxheWVyMlhvcmlnaW4gPSAoZml4KCgobGF5ZXIyWG9yaWdpbiAvIHNuYXBHcmlkKSArIDFlLTA2KSkgKiBzbmFwR3JpZCkpIAoJKGxheWVyMlhlbmQgPSAoKGNlaWxpbmcgCgkJICAgICgobGF5ZXIyWGVuZCAvIHNuYXBHcmlkKSArIC0xZS0wNikKCQkpICogc25hcEdyaWQpKSAKCWlmKGVtdWxhdGVTbG90VmlhIHRoZW4gCgkgICAgKGxheWVyMllvcmlnaW4gPSAoZGlmZllFbmNWaWEgLSBtYXgobGF5ZXIyWUVuY1ZpYSBsYXllcjJZRW5jVmlhMikpKSBlbHNlIAoJICAgIGlmKGNlbnRlckxheWVyMiB0aGVuIAoJCShsYXllcjJZb3JpZ2luID0gKHZpYTFZb3JpZ2luIC0gbGF5ZXIyWUVuY1ZpYSkpIGVsc2UgCgkJKGxheWVyMllvcmlnaW4gPSAodmlhMU1pblkgLSBsYXllcjJZRW5jVmlhKSkKCSAgICApCgkpCglpZihsYXllcjMgdGhlbiAKCSAgICAobnVtVmlhMiA9IG1heChmaXgoKCgodyArIHZpYTJTcGFjZSArICgtIChsYXllcjJZRW5jVmlhMiArIGxheWVyMllFbmNWaWEyKSkgKyAoLSBsYXllcjJZb3JpZ2luKSkgLyAodmlhMldpZHRoICsgdmlhMlNwYWNlKSkgKyAxZS0wNikpIDEpKSAKCSAgICAobGFzdFZpYTJZZW5kID0gKCh2aWEyV2lkdGggKiBudW1WaWEyKSArICh2aWEyU3BhY2UgKiAobnVtVmlhMiAtIDEpKSArIGxheWVyMllvcmlnaW4gKyBsYXllcjJZRW5jVmlhMikpIAoJICAgIGlmKGVtdWxhdGVTbG90VmlhIHRoZW4gCgkJKGxheWVyMlllbmQgPSAobGF5ZXIyWUVuY1ZpYSArICh3IC0gZGlmZllFbmNWaWEpKSkgZWxzZSAKCQkobGF5ZXIyWWVuZCA9IG1heCgodmlhMU1heFkgKyBsYXllcjJZRW5jVmlhKSAKCQkJKGxhc3RWaWEyWWVuZCArIGxheWVyMllFbmNWaWEyKQoJCSAgICApKQoJICAgICkKCSAgICBlbHNlIAoJICAgIGlmKGVtdWxhdGVTbG90VmlhIHRoZW4gCgkJKGxheWVyMlllbmQgPSAobGF5ZXIyWUVuY1ZpYSArICh3IC0gZGlmZllFbmNWaWEpKSkgZWxzZSAKCQkobGF5ZXIyWWVuZCA9ICh2aWExTWF4WSArIGxheWVyMllFbmNWaWEpKQoJICAgICkKCSkgCgkoZGJJZCA9IChkYkNyZWF0ZVJlY3QgdGNDZWxsVmlldyBsYXllcjIgCgkJbGlzdCgobGF5ZXIyWG9yaWdpbjpsYXllcjJZb3JpZ2luKSAKCQkgICAgKGxheWVyMlhlbmQ6bGF5ZXIyWWVuZCkKCQkpCgkgICAgKSkgCgkoZGJBZGRGaWdUb05ldCBkYklkIG5ldCkgCgkocGluSWQgPSAoZGJDcmVhdGVQaW4gbmV0IGRiSWQpKSAKCXNldFNHcShwaW5JZCBhbGxEaXIgYWNjZXNzRGlyKQoJY29uZCgoIWxheWVyMyAKCQkoZGJDcmVhdGVQcm9wIHRjQ2VsbFZpZXcgInRvcExheWVyUGluQmJveCIgImxpc3QiIAoJCSAgICAoZGJJZH4+YkJveCkKCQkpIAoJCShkYkNyZWF0ZVByb3AgdGNDZWxsVmlldyAidG9wTGF5ZXIiICJsaXN0IiBsYXllcjIpCgkgICAgKSAKCSAgICAodCAKCQlpZihhbGxvd0NlbnRlcmVkTUNPTnMgdGhlbiAKCQkgICAgKHZpYTJZb3JpZ2luID0gKDAuMCArIGxheWVyMllFbmNWaWEyKSkgCgkJICAgIChsYXN0VmlhMllvcmlnaW4gPSB3KSBlbHNlCgkJICAgICh2aWEyWW9yaWdpbiA9IChsYXllcjJZb3JpZ2luICsgbGF5ZXIyWUVuY1ZpYTIpKSAKCQkgICAgKGxhc3RWaWEyWW9yaWdpbiA9IChsYXllcjJZZW5kIC0gbGF5ZXIyWUVuY1ZpYTIgLSB2aWEyV2lkdGgpKQoJCSkgCgkJaWYoY2VudGVyVGFwIHRoZW4gCgkJICAgICh2aWEyWG9yaWdpbiA9IChsYXllcjJYb3JpZ2luICsgKChsYXllcjJYZW5kIC0gbGF5ZXIyWG9yaWdpbikgLyAyLjApICsgKC0gKHZpYTJXaWR0aCAvIDIuMCkpKSkgCgkJICAgICh2aWEyWG9yaWdpbiA9IChmaXgoKCh2aWEyWG9yaWdpbiAvIHNuYXBHcmlkKSArIDFlLTA2KSkgKiBzbmFwR3JpZCkpIGVsc2UKCQkgICAgKHZpYTJYb3JpZ2luID0gKGxheWVyMlhvcmlnaW4gKyBsYXllcjJYRW5jVmlhMikpCgkJKSAKCQkodmlhMlhlbmQgPSAodmlhMlhvcmlnaW4gKyB2aWEyV2lkdGgpKSAKCQlpZihjZW50ZXJWaWEyIHRoZW4gCgkJICAgIGlmKGVtdWxhdGVTbG90VmlhIHRoZW4gCgkJCSh2aWEyUm93ID0gKGZsb29yIAoJCQkJKHcgLyB2aWEyUGl0Y2gpCgkJCSAgICApKSAKCQkJaWYoKHZpYTJSb3cgPT0gMCkgCgkJCSAgICAodmlhMlJvdyA9IDEpCgkJCSkgCgkJCSh2aWEyWW9mZnNldCA9ICgodyAtICgodmlhMlJvdyAqIHZpYTJQaXRjaCkgLSB2aWEyU3BhY2UpKSAvIDIpKQoJCQkodmlhMllvcmlnaW4gPSAoZml4KCgodmlhMllvZmZzZXQgLyBzbmFwR3JpZCkgKyAxZS0wNikpICogc25hcEdyaWQpKSBlbHNlIAoJCQkobGF5ZXIyWXdpZHRoID0gKGxheWVyMlllbmQgLSBsYXllcjJZb3JpZ2luKSkgCgkJCSh2aWEyRHJhd1NwYWNlWSA9IChsYXllcjJZd2lkdGggLSAobGF5ZXIyWUVuY1ZpYTIgKiAyKSkpIAoJCQkodmlhMlJvdyA9IChmbG9vciAKCQkJCSgodmlhMkRyYXdTcGFjZVkgKyB2aWEyU3BhY2UpIC8gdmlhMlBpdGNoKQoJCQkgICAgKSkKCQkJaWYoKHZpYTJSb3cgPT0gMCkgCgkJCSAgICAodmlhMlJvdyA9IDEpCgkJCSkgCgkJCSh2aWEyWW9mZnNldCA9ICgodmlhMkRyYXdTcGFjZVkgLSAoKHZpYTJSb3cgKiB2aWEyUGl0Y2gpIC0gdmlhMlNwYWNlKSkgLyAyKSkgCgkJCSh2aWEyWW9yaWdpbiA9IChsYXllcjJZb3JpZ2luICsgbGF5ZXIyWUVuY1ZpYTIgKyAoZml4KCgodmlhMllvZmZzZXQgLyBzbmFwR3JpZCkgKyAxZS0wNikpICogc25hcEdyaWQpKSkKCQkgICAgKSAKCQkgICAgKHlWYWx1ZSA9IHZpYTJZb3JpZ2luKSAKCQkgICAgZm9yKHIgMSB2aWEyUm93IAoJCQkoZGJJZCA9IChkYkNyZWF0ZVJlY3QgdGNDZWxsVmlldyB2aWEyTGF5ZXIgCgkJCQlsaXN0KCh2aWEyWG9yaWdpbjp5VmFsdWUpIAoJCQkJICAgICgodmlhMlhvcmlnaW4gKyB2aWEyV2lkdGgpOih5VmFsdWUgKyB2aWEyV2lkdGgpKQoJCQkJKQoJCQkgICAgKSkgCgkJCShkYkFkZEZpZ1RvTmV0IGRiSWQgbmV0KQoJCQkoeVZhbHVlID0gKHlWYWx1ZSArIHZpYTJQaXRjaCkpCgkJICAgICkKCQkgICAgZWxzZSAKCQkgICAgKHZpYTJZb2Zmc2V0ID0gKHZpYTJXaWR0aCArIHZpYTJTcGFjZSkpIAoJCSAgICAoeVZhbHVlID0gdmlhMllvcmlnaW4pIAoJCSAgICBpZihhbGxvd0NlbnRlcmVkTUNPTnMgdGhlbiAKCQkJd2hpbGUoKChsYXN0VmlhMllvcmlnaW4gLSB2aWEyV2lkdGggLSB5VmFsdWUpID4gLTFlLTA2KSAKCQkJICAgIChkYklkID0gKGRiQ3JlYXRlUmVjdCB0Y0NlbGxWaWV3IHZpYTJMYXllciAKCQkJCSAgICBsaXN0KCh2aWEyWG9yaWdpbjp5VmFsdWUpIAoJCQkJCSh2aWEyWGVuZDooeVZhbHVlICsgdmlhMldpZHRoKSkKCQkJCSAgICApCgkJCQkpKSAKCQkJICAgIChkYkFkZEZpZ1RvTmV0IGRiSWQgbmV0KSAKCQkJICAgICh5VmFsdWUgPSAoeVZhbHVlICsgdmlhMllvZmZzZXQpKQoJCQkpIGVsc2UgCgkJCXdoaWxlKCgobGFzdFZpYTJZb3JpZ2luIC0geVZhbHVlKSA+IC0xZS0wNikgCgkJCSAgICAoZGJJZCA9IChkYkNyZWF0ZVJlY3QgdGNDZWxsVmlldyB2aWEyTGF5ZXIgCgkJCQkgICAgbGlzdCgodmlhMlhvcmlnaW46eVZhbHVlKSAKCQkJCQkodmlhMlhlbmQ6KHlWYWx1ZSArIHZpYTJXaWR0aCkpCgkJCQkgICAgKQoJCQkJKSkgCgkJCSAgICAoZGJBZGRGaWdUb05ldCBkYklkIG5ldCkgCgkJCSAgICAoeVZhbHVlID0gKHlWYWx1ZSArIHZpYTJZb2Zmc2V0KSkKCQkJKQoJCSAgICApCgkJKQoJCShsYXllcjNYb3JpZ2luID0gKHZpYTJYb3JpZ2luIC0gbGF5ZXIzWEVuY1ZpYTIpKSAKCQkobGF5ZXIzWGVuZCA9ICh2aWEyWGVuZCArIGxheWVyM1hFbmNWaWEyKSkgCgkJKCgobGF5ZXIzWGVuZCAtIGxheWVyM1hvcmlnaW4pIDwgbGF5ZXIzV2lkdGgpICYmIChsYXllcjNYZW5kID0gKGxheWVyM1hvcmlnaW4gKyBsYXllcjNXaWR0aCkpKSAKCQkobGF5ZXIzWW9yaWdpbiA9ICh2aWEyWW9yaWdpbiAtIGxheWVyM1lFbmNWaWEyKSkgCgkJKGxheWVyM1llbmQgPSAoKHlWYWx1ZSAtIHZpYTJTcGFjZSkgKyBsYXllcjNZRW5jVmlhMikpCgkJKCgobGF5ZXIzWWVuZCAtIGxheWVyM1lvcmlnaW4pIDwgbGF5ZXIzV2lkdGgpICYmIChsYXllcjNZZW5kID0gKGxheWVyM1lvcmlnaW4gKyBsYXllcjNXaWR0aCkpKSAKCQkoZGJJZCA9IChkYkNyZWF0ZVJlY3QgdGNDZWxsVmlldyBsYXllcjMgCgkJCWxpc3QoKGxheWVyM1hvcmlnaW46bGF5ZXIzWW9yaWdpbikgCgkJCSAgICAobGF5ZXIzWGVuZDpsYXllcjNZZW5kKQoJCQkpCgkJICAgICkpIAoJCShkYkFkZEZpZ1RvTmV0IGRiSWQgbmV0KSAKCQkocGluSWQgPSAoZGJDcmVhdGVQaW4gbmV0IGRiSWQpKSAKCQlzZXRTR3EocGluSWQgYWxsRGlyIGFjY2Vzc0RpcikKCQkoZGJDcmVhdGVQcm9wIHRjQ2VsbFZpZXcgInRvcExheWVyUGluQmJveCIgImxpc3QiIAoJCSAgICAoZGJJZH4+YkJveCkKCQkpIAoJCShkYkNyZWF0ZVByb3AgdGNDZWxsVmlldyAidG9wTGF5ZXIiICJsaXN0IiBsYXllcjMpCgkgICAgKQoJKSAKCXJldHVybih0KQogICAgKQopCgD/////AAAAAAAIAABKBAAAAAAAAAAAAAAAAAAAREZUUE0xczIAY2RiUmV2aXNpb24AX2RiTGFzdFNhdmVkQ291bnRlcgBkb3VibGUAc3RyYXBwZWQAZGVzY3JpcHRpb24AZG91YmxlIHN0cmFwcGVkIHRvIG1ldDEAcmVzAHRvcExheWVyAElMTGlzdAB0b3BMYXllclBpbkJib3gAdGFwTGF5ZXJCYm94AGRpZmZMYXllckJib3gAZGlmZkxheWVyUGluQmJveABwaW4jAGNsYXNzUGFyYW1ldGVycwBjZW50ZXJMYXllcjIAY2VudGVyVmlhMgBjZW50ZXJWaWExAGVtdWxhdGVTbG90VmlhAHNuYXBHcmlkAHdlbGxMYXllclRhcEVuYwB3ZWxsTGF5ZXJEaWZmRW5jAHdlbGxMYXllcgB0YXBJbXBFbmNMaXN0AGRpZmZJbXBFbmNMaXN0AHRhcEltcEVuY0J1dHQAZGlmZkltcEVuY0J1dHQAbWluUGluV2lkdGgAbWF4RGlmZlRvVGFwQ29udGFjdFNwYWNlAHRpcFRhcFhFbmNWaWEAdGlwVGFwWU91dEVuY1ZpYQB0aXBUYXBZSW5FbmNWaWEAY2VudGVyUmVjb2duaXRpb24AZGlmZgB0YXAAbGF5ZXIyAGxpMQBsYXllcjMAbWV0MQB2aWExTGF5ZXIAbGljb24xAHZpYTJMYXllcgBtY29uAGRpZmZXaWR0aAB0YXBXaWR0aAB0YXBXaWR0aEJ1dHRpbmdEaWZmAHRhcFdpZHRoQmV0d2VlbkRpZmYAbGF5ZXIzV2lkdGgAdmlhMVdpZHRoAHZpYTFTcGFjZQB2aWEyV2lkdGgAdmlhMlNwYWNlAGRpZmZZRW5jVmlhAGRpZmZYRW5jVmlhAGRpZmZYT3V0RW5jVmlhAGNlbnRlclRhcFhFbmNWaWEAY2VudGVyVGFwWUVuY1ZpYQBsYXllcjJYRW5jVmlhAGxheWVyMllFbmNWaWEAbGF5ZXIyWEVuY1ZpYTIAbGF5ZXIyWUVuY1ZpYTIAbGF5ZXIyV2lkdGgAbGF5ZXIzWEVuY1ZpYTIAbGF5ZXIzWUVuY1ZpYTIAdGFwU3BhY2VHYXRlAHRhcFNwYWNlUG9s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BQAFAAUABgAGAAYABQAFAAUABQAFAAYABgAGAAYABgAFAAQABAAEAAQABAAEAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAUABQAFAAUAAIAJQBYACAAIAAgACAAIAAgACAAAAAAAAAAAAAAAAAAAABAAAAAKAAAAAAEAAAAAAAABAQAAAAAAAAIBAAAAAAAAAwEAAAAAAAAFAQAAAAAAAAYBAAAAAAAABwEAAAAAAAAAAwAAAAAAAAEDAAAAAAAAAgMAAAAAAAAPAAAAAAAAAA4AAAAAAAAADQAAAAAAAAAMAAAAAAAAAAsAAAAAAAAACgAAAAAAAAAIAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAEAAAAAAAAABAAAAAAAAACkAAAAAAAAAAYAAAAFAAAAAQAAAAAAAAACAAAAAAAAAAMAAAAAAAAABAAAAAAAAAAAAwAAAAAAAKQAAAAAAAAAqAAAAAAAAACsAAAAAAAAALAAAAAAAAAAtAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAMAAAAAAAAA/////wAAAMAFAAAAAAAAAAAAAAAEAAAAAAAAAKQAAAAAAAAABgAAAAUAAAABAAAAAAAAAAIAAAAAAAAAAwAAAAAAAAAEAAAAAAAAAAADAAAAAAAApAAAAAAAAACoAAAAAAAAAKwAAAAAAAAAsAAAAAAAAAC0AAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAABwAAAAAAAAD/////AAAAwAIAAABGAMkBzgHZAeQB8wEEAgAABAAAAAAAAAC8AAAAAAAAAAcAAAAGAAAAAQAAAAAAAAACAAAAAAAAAAMAAAAAAAAABAAAAAAAAAAAAwAAAAAAAAEDAAAAAAAAvAAAAAAAAADAAAAAAAAAAMQAAAAAAAAAyAAAAAAAAADMAAAAAAAAAOgAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAcAAAAAAAAACABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAABMAAAAAAAAA/////wAAAMABAAAAa2tra2tra2tra2tra2tra2trawAAAADAAQAAAAEIJTxRZmpucnZ6foKMlpqqusYAAQAAAAgeGBYWBQUFBQUFBQsLBRERDQ0AAAEAANEAAAAAAAAAAAAAAAAAAAAibWV0MSIAKCgwLjM4NSAtMC4wOCkgKDAuNjE1IDAuMjEpKQAoKDAuMyAwLjApICgwLjcgMC4yOSkpACgoMC4wIDApICgxLjAgMC4yOSkpACgoMC4wIDApICgxLjAgMC4yOSkpAG5pbABuaWwAbmlsAG5pbABuaWwAbmlsAG5pbAAoMC4wIDAuMCkAKDAuMCAwLjApAG5pbAAoIm5zZG0iICJwc2RtIikAKCJwc2RtIiAibnNkbSIpACgwLjEzIDAuMTMpACgwLjEzIDAuMTMpAAAAAGQAAAAEAAAApAAAAAAAAAAGAAAABQAAAAEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAQAAAAAAAAAAAMAAAAAAACkAAAAAAAAAKgAAAAAAAAArAAAAAAAAACwAAAAAAAAALQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAUAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAIgAAAAAAAAD/////AAAAwAAAAAAAMHtAexSuR+F6dD8AAAAAAAAAAAAAAAAAAAAAmpmZmZmZqT9mZmZm/mn4QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADMzMzMzM8M/MzMzMzMzwz+PwvUoXI/SP5qZmZmZmdk/7FG4HoXrwT/D9Shcj8LFP8P1KFyPwsU/w/UoXI/CxT9SuB6F61HIP7gehetRuK4/KVyPwvUorD8pXI/C9SisP7gehetRuK4/uB6F61G4rj8AAAAAAAAAAHsUrkfherQ/AAAAAAAAAAAAAAAAAAAAAMP1KFyPwsU/uB6F61G4nj+4HoXrUbiuPzMzMzMzM9M/KVyPwvUorD97FK5H4XpkP5DC9Shcj9I/BAAAAAAAAACkAAAAAAAAAAYAAAAFAAAAAQAAAAAAAAACAAAAAAAAAAMAAAAAAAAABAAAAAAAAAAAAwAAAAAAAKQAAAAAAAAAqAAAAAAAAACsAAAAAAAAALAAAAAAAAAAtAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAkAAAAAAAAA/////wAAAMACAAAAFwAAAAQAAACkAAAAAAAAAAYAAAAFAAAAAQAAAAAAAAACAAAAAAAAAAMAAAAAAAAABAAAAAAAAAAAAwAAAAAAAKQAAAAAAAAAqAAAAAAAAACsAAAAAAAAALAAAAAAAAAAtAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAABAAAAAQAAAP////8AAADAUbhvQwAAAAABAAAAAAAAAAQAAAAAAAAAzAIAAAAAAAAdAAAAGAAAAAEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAQAAAAAAAAABAEAAAAAAAABAwAAAAAAAAIDAAAAAAAAAwMAAAAAAAAEAwAAAAAAAAUDAAAAAAAABgMAAAAAAAAHAwAAAAAAAAgDAAAAAAAACQMAAAAAAAAKAwAAAAAAAAsDAAAAAAAADAMAAAAAAAAOAwAAAAAAAAABAAAAAAAAAwEAAAAAAAABAQAAAAAAABMDAAAAAAAAFQMAAAAAAAAWAwAAAAAAAMwCAAAAAAAA0AIAAAAAAADUAgAAAAAAANgCAAAAAAAA3AIAAAAAAADkAgAAAAAAAPACAAAAAAAA/AIAAAAAAAAEAwAAAAAAAAwDAAAAAAAAFAMAAAAAAAAYAwAAAAAAABwDAAAAAAAAIAMAAAAAAAAwAwAAAAAAADgDAAAAAAAAPAMAAAAAAABAAwAAAAAAAEgDAAAAAAAATAMAAAAAAABEBQAAAAAAAEwIAAAAAAAA/////////////////////wQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAACAAAAAAAAAAMAAAAAAAAAAwAAAAAAAAACAAAAAAAAAAIAAAAAAAAAAgAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAAEAAAAAAAAAAIAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAIAAAAAAAAAAQAAAAAAAAA+AEAAAAAAAAIAwAAAAAAAKABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAABAAAAAAAAAP////8AAADAAAAAAAAAAMABAAAAAQAAAAAAAMABAAAAAQAAAAAAAMAAAAAAAAAAwAAAAAAAAADAAAAAAAAAAIAAAACAAAAAgAAAAMABAAAAAwAAAAAAAAAAAACAAAAAAAAAAIAAAACAAAAAwAAAAABnAAAAIAAAAAMAAAACAAAAAQAAAAEAAABvAAAAAAAAAAAAAAAAAAAAAAAAABgAAAATAAAAAAEAAAAAAAABAQAAAAAAAAIBAAAAAAAAAwEAAAAAAAAFAQAAAAAAAAYBAAAAAAAABwEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAQMAAAAAAAACAwAAAAAAAAMDAAAAAAAABAMAAAAAAAAFAwAAAAAAAAYDAAAAAAAACgMAAAAAAAAIAwAAAAAAAAkDAAAAAAAABwMAAAAAAAAPAAAAAAAAAA4AAAAAAAAADQAAAAAAAAAMAAAAAAAAAAsAAAAAAAAACgAAAAAAAAAIAAAAAAAAAAkAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAMAAAAAAAAABAAAAAAAAAAFAAAAAAAAAAYAAAAAAAAABwAAAAAAAAAQAAAAAAAAABQAAAAAAAAAFQAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAABAAAAAAAAAC0AgAAAAAAABwAAAAUAAAAAAEAAAAAAAABAAAAAAAAAAIAAAAAAAAAAwAAAAAAAAAEAAAAAAAAAAIBAAAAAAAAAAMAAAAAAAABAwAAAAAAAAIDAAAAAAAAAwMAAAAAAAAEAwAAAAAAAAUDAAAAAAAABgMAAAAAAAAHAwAAAAAAAAgDAAAAAAAACQMAAAAAAAAKAwAAAAAAAAsDAAAAAAAADAMAAAAAAAANAwAAAAAAALQCAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAQAAAAAAAAABQAAAAAAAAAGAAAAAAAAAAcAAAAAAAAACAAAAAAAAAAJAAAAAAAAAAoAAAAAAAAACwAAAAAAAAAMAAAAAAAAAA0AAAAAAAAADgAAAAAAAAAPAAAAAAAAABAAAAAAAAAAEQAAAAAAAAASAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAgAAAAAAAAAAAAAAP////8AAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAEAAAAAAAAAHwBAAAAAAAADwAAAAYAAAABAAAAAAAAAAIAAAAAAAAAAwAAAAAAAAAEAAAAAAAAAAUDAAAAAAAABgMAAAAAAAB8AQAAAAAAAIABAAAAAAAAhAEAAAAAAACIAQAAAAAAAIwBAAAAAAAAlAEAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAgAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAQAAAAAAAAD/////AAAAwAAAAAAAAADAAAAAAAQAAAAAAAAAbAIAAAAAAAAZAAAAEQAAAAEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAQAAAAAAAAABAEAAAAAAAAAAwAAAAAAAAEDAAAAAAAAAgMAAAAAAAADAwAAAAAAAAUDAAAAAAAABgMAAAAAAAAHAwAAAAAAAAgDAAAAAAAACQMAAAAAAAAQAwAAAAAAAAABAAAAAAAAAwEAAAAAAABsAgAAAAAAAHACAAAAAAAAdAIAAAAAAAB4AgAAAAAAAHwCAAAAAAAAhAIAAAAAAACUAgAAAAAAAKACAAAAAAAAqAIAAAAAAAC0AgAAAAAAALwCAAAAAAAAwAIAAAAAAADEAgAAAAAAAMgCAAAAAAAAzAIAAAAAAADQAgAAAAAAANQCAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAIAAAAAAAAABAAAAAAAAAADAAAAAAAAAAIAAAAAAAAAAwAAAAAAAAACAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAADYAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAABAAAAAAAAAP////8AAADAAAAAAAAAAMABAAAAAwAAAAAAAAAAAADAAQAAAAEAAAAAAADAAAAAAAAAAMABAAAABQAAAAAAAMAAAAAAAAAAgAAAAIAAAACAAAAAgAAAAJBoAAAAGAAAAAIAAAACAAAAAQAAAAMAAADwAAAAAAAAAAAAAAAYAAAAEgAAAAABAAAAAAAAAQEAAAAAAAACAQAAAAAAAAMBAAAAAAAABQEAAAAAAAAGAQAAAAAAAAcBAAAAAAAAAAIAAAAAAAAAAwAAAAAAAAEDAAAAAAAAAgMAAAAAAAADAwAAAAAAAAQDAAAAAAAABQMAAAAAAAAGAwAAAAAAAAcDAAAAAAAACAMAAAAAAAAJAwAAAAAAAA8AAAAAAAAADgAAAAAAAAANAAAAAAAAAAwAAAAAAAAACwAAAAAAAAAKAAAAAAAAAAgAAAAAAAAACQAAAAAAAAAAAAAAAAAAAAMAAAAAAAAABAAAAAAAAAAHAAAAAAAAABAAAAAAAAAAEwAAAAAAAAAUAAAAAAAAABUAAAAAAAAAFgAAAAAAAAAXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAPAIAAAAAAAAXAAAAFAAAAAEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAQAAAAAAAAABAEAAAAAAAAAAwAAAAAAAAEDAAAAAAAAAgMAAAAAAAADAwAAAAAAAAQDAAAAAAAABQMAAAAAAAAGAwAAAAAAAAcDAAAAAAAACAMAAAAAAAAJAwAAAAAAAAoDAAAAAAAACwMAAAAAAAAAAQAAAAAAAAMBAAAAAAAADAMAAAAAAAA8AgAAAAAAAEACAAAAAAAARAIAAAAAAABIAgAAAAAAAEwCAAAAAAAAVAIAAAAAAABgAgAAAAAAAGgCAAAAAAAAcAIAAAAAAAB0AgAAAAAAAHgCAAAAAAAAfAIAAAAAAACAAgAAAAAAAIQCAAAAAAAAiAIAAAAAAACMAgAAAAAAAJACAAAAAAAAlAIAAAAAAACYAgAAAAAAANwDAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAIAAAAAAAAAAwAAAAAAAAACAAAAAAAAAAIAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAARAEAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAAAAAP////8AAADAAAAAAAAAAMABAAAAAQAAAAAAAMAAAAAAAAAAwAAAAAAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIADAAAAEAAAAAEAAAACAAAADgAAAAAAAAAAAAAAAAAAABAAAAAMAAAAAAEAAAAAAAABAQAAAAAAAAIBAAAAAAAAAwEAAAAAAAAFAQAAAAAAAAYBAAAAAAAABwEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAQMAAAAAAAACAwAAAAAAAAMDAAAAAAAADwAAAAAAAAAOAAAAAAAAAA0AAAAAAAAADAAAAAAAAAALAAAAAAAAAAoAAAAAAAAACAAAAAAAAAAJAAAAAAAAAAEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAPQBAAAAAAAAFAAAAAwAAAABAAAAAAAAAAIAAAAAAAAAAwAAAAAAAAAEAAAAAAAAAAQBAAAAAAAAAAMAAAAAAAABAwAAAAAAAAIDAAAAAAAACAMAAAAAAAAJAwAAAAAAAAABAAAAAAAAAwEAAAAAAAD0AQAAAAAAAPgBAAAAAAAA/AEAAAAAAAAAAgAAAAAAAAQCAAAAAAAADAIAAAAAAAAcAgAAAAAAACwCAAAAAAAAPAIAAAAAAABMAgAAAAAAANACAAAAAAAA1AIAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAgAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAACEAAAAAAAAAAQAAAAAAAAACAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAACAAAAAAAAAD/////AAAAwAAAAAAAAADAAQAAAAcGFx8DLCAEAAAAwAEAAAAUFBQUFBQUFAAAAMABAAAAAgICAwUEAgIAAADAAQAAAAECAwQFBgcIAAAAwIEBAACw////ZwIAANIAAACfAQAA7P///0kCAACWAAAANwAAAOz///+xAwAANgEAAH7///9+////agQAAKQBAAAAAAAAAAAAAOgDAAAiAQAANwAAADwAAACxAwAA5gAAACwBAAB+////vAIAAKQBAAAsAQAAAAAAALwCAAAiAQAAZQAAABwAAAABAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAACQAAAAABAAAAAAAAAQEAAAAAAAACAQAAAAAAAAMBAAAAAAAABQEAAAAAAAAGAQAAAAAAAAcBAAAAAAAAAAIAAAAAAAAAAwAAAAAAAA8AAAAAAAAADgAAAAAAAAANAAAAAAAAAAwAAAAAAAAACwAAAAAAAAAKAAAAAAAAAAgAAAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAzAIAAAAAAAAdAAAAEwAAAAEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAQAAAAAAAAABAEAAAAAAAAAAwAAAAAAAAEDAAAAAAAAAgMAAAAAAAADAwAAAAAAAAQDAAAAAAAACwMAAAAAAAAMAwAAAAAAAA0DAAAAAAAADwMAAAAAAAAQAwAAAAAAABEDAAAAAAAAFAMAAAAAAAAAAQAAAAAAAAMBAAAAAAAAzAIAAAAAAADQAgAAAAAAANQCAAAAAAAA2AIAAAAAAADcAgAAAAAAAOQCAAAAAAAA9AIAAAAAAAAEAwAAAAAAABQDAAAAAAAAJAMAAAAAAAA0AwAAAAAAAEQDAAAAAAAAVAMAAAAAAABkAwAAAAAAAOgDAAAAAAAAbAQAAAAAAADwBAAAAAAAAPgEAAAAAAAA/AQAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAgAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAAIQAAAAAAAAAhAAAAAAAAACEAAAAAAAAAAgAAAAAAAAABAAAAAAAAAA4AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAIAAAAAAAAAP////8AAADAAAAAAAAAAMABAAAABwYXHwMsIAQAAADAAQAAAAEBAQEBAQEBAAAAwAEAAAABAQEBAQEBAQAAAMABAAAAAQEBAQEBAQEAAADAAQAAAAEBAQEBAQEBAAAAwAEAAAACAgICAgICAgAAAMABAAAAAQEBAQEBAQEAAADAAQAAAAEBAQEBAQEBAAAAwP///3////9/AAAAgAAAAID///9/////fwAAAIAAAACA////f////38AAACAAAAAgP///3////9/AAAAgAAAAID///9/////fwAAAIAAAACA////f////38AAACAAAAAgP///3////9/AAAAgAAAAID///9/////fwAAAIAAAACAAAAAwP///3////9/AAAAgAAAAID///9/////fwAAAIAAAACA////f////38AAACAAAAAgP///3////9/AAAAgAAAAID///9/////fwAAAIAAAACA////f////38AAACAAAAAgP///3////9/AAAAgAAAAID///9/////fwAAAIAAAACAAAAAwP///3////9/AAAAgAAAAID///9/////fwAAAIAAAACA////f////38AAACAAAAAgP///3////9/AAAAgAAAAID///9/////fwAAAIAAAACA////f////38AAACAAAAAgP///3////9/AAAAgAAAAID///9/////fwAAAIAAAACAAAAAwAAAAABlAAAAHAAAAAEAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAALAAAAAAEAAAAAAAABAQAAAAAAAAIBAAAAAAAAAwEAAAAAAAAFAQAAAAAAAAYBAAAAAAAABwEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAQMAAAAAAAACAwAAAAAAAA8AAAAAAAAADgAAAAAAAAANAAAAAAAAAAwAAAAAAAAACwAAAAAAAAAKAAAAAAAAAAgAAAAAAAAACQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAABEAwAAAAAAACIAAAAMAAAAAQAAAAAAAAACAAAAAAAAAAMAAAAAAAAABAAAAAAAAAAEAQAAAAAAAAADAAAAAAAAAgMAAAAAAAAEAwAAAAAAAAABAAAAAAAAAwEAAAAAAAACAQAAAAAAAAUDAAAAAAAARAMAAAAAAABIAwAAAAAAAEwDAAAAAAAAUAMAAAAAAABUAwAAAAAAAFwDAAAAAAAAdAMAAAAAAACMAwAAAAAAAHAEAAAAAAAAdAQAAAAAAADMBQAAAAAAAPQHAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAIAAAAAAAAABgAAAAAAAAAGAAAAAAAAADkAAAAAAAAAAQAAAAAAAAAWAEAAAAAAAAoAgAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAA4AAAAAAAAA/////wAAAMAAAAAAAAAAwAEAAAAFAQUBAQUFAQABAQEAAQAAAAAAwAEAAAABAgMEBAUFBQUGBgYHCAAAAAAAwIEBAACw////ZwIAANIAAACfAQAA7P///0kCAACWAAAANwAAAOz///+xAwAANgEAALwCAAB+////agQAAKQBAAB+////fv///ywBAACkAQAAtgMAAAAAAADoAwAAIgEAAAAAAAAAAAAAMgAAACIBAAC8AgAAAAAAAOgDAAAiAQAAAAAAAAAAAAAsAQAAIgEAAAcDAAA8AAAAsQMAAOYAAAA3AAAAPAAAAOEAAADmAAAAnwEAADwAAABJAgAA5gAAACwBAAB+////vAIAAKQBAAAsAQAAAAAAALwCAAAiAQAAjwAAACgAAAABAAAAAgAAAGgAKABoACgAKABoAGgAKAAIACgAKAAoAAgAKAAAAAAAAAAAABAAAAAMAAAAAAEAAAAAAAABAQAAAAAAAAIBAAAAAAAAAwEAAAAAAAAFAQAAAAAAAAYBAAAAAAAABwEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAQMAAAAAAAACAwAAAAAAAAMDAAAAAAAADwAAAAAAAAAOAAAAAAAAAA0AAAAAAAAADAAAAAAAAAALAAAAAAAAAAoAAAAAAAAACAAAAAAAAAAJAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAFAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAABAAAAAAAAABMAQAAAAAAAA0AAAALAAAAAAIAAAAAAAAAAQAAAAAAAAEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAQAAAAAAAAAAgEAAAAAAAACAgAAAAAAABYEAAAAAACAIwQAAAAAAIAvBAAAAAAAgEwBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAACAAAAAAAAAAMAAAAAAAAABAAAAAAAAAAHAAAAAAAAAAgAAAAAAAAAEAAAAAAAAAAZAAAAAAAAABQAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAMAAAAAAAAAAQAAAAAAAAAIAAAAAAAAAAkAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAABYEAAAAAAAAGgAAABAAAAABAAAA/////yMEAAAAAAAAGgAAABIAAAABAAAAAAAAAAAAAAAvBAAAAAAAABoAAAAQAAAAAQAAAP////8BAAAAEAAAAAAAAAAAAAAA/////wAAAMACAAAAZQAAAAAAAIAAAADABAAAAAgAAAAAAAAAAQAAAAEDBgcBAAAAAQEBAQAAAMAEAAAACAAAAAAAAAABAAAAAQMGBwIAAAAPBBEEEwQVBAAAAMAEAAAACAAAAAAAAAABAAAAAQMGBwEAAAAQEAkFAAAAAAAAAAAEAAAAAAAAAHwBAAAAAAAADwAAAAwAAAABAAAAAAAAAAIAAAAAAAAAAwAAAAAAAAAEAAAAAAAAAAQBAAAAAAAAAAMAAAAAAAABAwAAAAAAAAIDAAAAAAAAAwMAAAAAAAAAAQAAAAAAAAMBAAAAAAAABQMAAAAAAAB8AQAAAAAAAIABAAAAAAAAhAEAAAAAAACIAQAAAAAAAIwBAAAAAAAAlAEAAAAAAACoAQAAAAAAALgBAAAAAAAA9AEAAAAAAAD8AQAAAAAAAAACAAAAAAAAVAMAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAgAAAAAAAAAFAAAAAAAAAAQAAAAAAAAADwAAAAAAAAACAAAAAAAAAAEAAAAAAAAAFQBAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAABQAAAAQAAAADAAAAAAAAwAAAAAAAAADAAgAAAB0IIQglCCkIHQgAAAAAAMABAAAAAAECAwEAAAAAAADACAAAAAQAAAABAAAAAQIDBAUAAAABAAAAAQEBAQUAAAABAAAAAQMGBwEDBgcBAAAAGxsbGxsbGxsAAADAAAAAAJQAAAAkAAAAAgAAAAIAAAABAAAAAIAAgACAAIAPAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAMAAAAAAEAAAAAAAABAQAAAAAAAAIBAAAAAAAAAwEAAAAAAAAFAQAAAAAAAAYBAAAAAAAABwEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAQMAAAAAAAACAwAAAAAAAAMDAAAAAAAADwAAAAAAAAAOAAAAAAAAAA0AAAAAAAAADAAAAAAAAAALAAAAAAAAAAoAAAAAAAAACAAAAAAAAAAJAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAHAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAwCAAAAAAAAFQAAAA4AAAABAAAAAAAAAAIAAAAAAAAAAwAAAAAAAAAEAAAAAAAAAAQBAAAAAAAAAAMAAAAAAAABAwAAAAAAAAIDAAAAAAAAAAEAAAAAAAADAQAAAAAAAAQDAAAAAAAABwMAAAAAAAAIAwAAAAAAAAMDAAAAAAAADAIAAAAAAAAQAgAAAAAAABQCAAAAAAAAGAIAAAAAAAAcAgAAAAAAADACAAAAAAAA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AwEAAAAAAAAFAQAAAAAAAAYBAAAAAAAABwEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAQMAAAAAAAAPAAAAAAAAAA4AAAAAAAAADQAAAAAAAAAMAAAAAAAAAAsAAAAAAAAACgAAAAAAAAAIAAAAAAAAAAkAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAABAAAAAAAAAAkAgAAAAAAABYAAAARAAAAAQAAAAAAAAACAAAAAAAAAAMAAAAAAAAABAAAAAAAAAAEAQAAAAAAAAADAAAAAAAAAQMAAAAAAAAGAwAAAAAAAAIDAAAAAAAAAwMAAAAAAAAEAwAAAAAAAAUDAAAAAAAABwMAAAAAAAAAAQAAAAAAAAMBAAAAAAAACQMAAAAAAAAKAwAAAAAAACQCAAAAAAAAKAIAAAAAAAAsAgAAAAAAADACAAAAAAAANAIAAAAAAAA8AgAAAAAAAEgCAAAAAAAAWAIAAAAAAABkAgAAAAAAAGgCAAAAAAAAbAIAAAAAAABwAgAAAAAAAHQCAAAAAAAAeAIAAAAAAAB8AgAAAAAAAKQDAAAAAAAAqAMAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAQAAAAAAAAAAwAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAAKAEAAAAAAAAEAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAAAAAAA/////wAAAMAAAAAAAAAAwAEAAAABAAAAAAAAwAEAAAABAAAAAAAAAAAAAMABAAAAAwAAAAAAAIAAAACAAAAAgAAAAIAAAACAAgAAABAAAAABAAAAAgAAAAAAAAAAAAAAAAAAABAAAAALAAAAAAEAAAAAAAABAQAAAAAAAAIBAAAAAAAAAwEAAAAAAAAFAQAAAAAAAAYBAAAAAAAABwEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAQMAAAAAAAACAwAAAAAAAA8AAAAAAAAADgAAAAAAAAANAAAAAAAAAAwAAAAAAAAACwAAAAAAAAAKAAAAAAAAAAgAAAAAAAAACQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAABnRSMB