Z0UjAQAAYwAAAAAAAAAAAHkAAAAdAAAAAQAAAAAAAAAcAAAAAAAAAB0AAAAAAAAABAAAAAAAAAAFAAAAAAAAABkAAAAAAAAABgAAAAAAAAAlAAAAAAAAAAcAAAAAAAAAHwAAAAAAAAAIAAAAAAAAAAABAAAAAAAAPgEAAAAAAAAKAAAAAAAAAAsAAAAAAAAADAAAAAAAAAABAQAAAAAAAAMBAAAAAAAADAEAAAAAAAANAQAAAAAAAA4BAAAAAAAADwEAAAAAAAARAQAAAAAAABMBAAAAAAAAHwEAAAAAAAAyAQAAAAAAADMBAAAAAAAANQEAAAAAAAAoAAAAAAAAAHQLAAAAAAAAAAAAAAAAAAAcAAAAAAAAAGwAAAAAAAAAcAAAAAAAAAB0AAAAAAAAAHwAAAAAAAAA//////////+EAAAAAAAAABgFAAAAAAAAhAUAAAAAAAAsBwAAAAAAALiyAAAAAAAAML4AAAAAAAAYwgAAAAAAACjDAAAAAAAA4M8AAAAAAADY2QAAAAAAAJDeAAAAAAAAeOIAAAAAAABI5gAAAAAAAFDsAAAAAAAAcPYAAAAAAADg+QAAAAAAABADAQAAAAAAgAgBAAAAAAAoCwEAAAAAANgOAQAAAAAAaBIBAAAAAAC8sgAAAAAAABwAAAAAAAAAUAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAACAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAlAQAAAAAAABsAAAAAAAAAKgBAAAAAAAAjKsAAAAAAAAEAAAAAAAAAOQDAAAAAAAAEAEAAAAAAAC0DAAAAAAAAPgJAAAAAAAAuAQAAAAAAADkAwAAAAAAANADAAAAAAAACAYAAAAAAAAcCgAAAAAAAGwDAAAAAAAAMAkAAAAAAABwBQAAAAAAAKgCAAAAAAAArQMAAAAAAACQAwAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA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AAAAABQAAAAAAAAAGAAAAAAAAAAoAAAAAAAAADQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAgAAAAAAAAA/////wAAAAABAAAAAAAAABQAAAAAAAAA/////wAAAAABAAAAAAAAAAEAAAAIAAAAAAAAAAAAAAD/////AAAAgAAAAIABAADAAQAAAAQAAAAdeQMAAQAAwAEAAAABAAAAqgAAAMEDAAAqAAAAGQAAAHyrAAB3qwAAcHJvY2VkdXJlKChwY0dlbkNlbGwgdGNDZWxsVmlldyAiZCIpIAogICAgcHJvZygoZGlmZkxheWVyIGdhdGVMYXllciB3ZWxsTGF5ZXIgd2VsbG1pbldpZHRoIGh2TGF5ZXIKCSAgICBkZXBMYXllciBkaWZmRXh0IHdlbGxFbmNEaWZmIHdlbGxFbmNUYXAgd2VsbExheWVyV2lkdGgKCSAgICBodkVuY2xvc3VyZSBkZXBYRW5jIGRlcFlFbmMgZGVwU3BhY2UgbGFiZWxMYXllcgoJICAgIGxhYmVsV2lkdGggZGlmZkltcGxhbnQgZGlmZkltcEVuYyBkaWZmQ29yZUltcGxhbnQgZGlmZkNvcmVJbXBFbmMKCSAgICB2aWExTWluU3BhY2UgdmlhMk1pblNwYWNlIGxheWVyMk1pblNwYWNlIGxheWVyM01pblNwYWNlIG5vT2ZEZWNpbWFscwoJICAgIHNuYXBHcmlkIGJja0NvbXBhdGlibGVPZmZTZXQgcG9seUltcGxhbnQgcG9seUltcFhFbmMgcG9seUltcFlFbmMKCSAgICBodlBZTWNvblNwYWNlIHdlbGxFbmNIdkxheWVyIHNvdXJjZUZpcnN0IHNoYXJlZERyYWluIHNoYXJlZFNvdXJjZQoJICAgIGxhc3RDb250YWN0IGZpcnN0Q29udGFjdCBnYXRlRXh0IGlkTGF5ZXJDaG9pY2VzIGlkTGF5ZXIKCSAgICBpZEVuY0RpZmYgaWRFbmNYTCBpZEVuY1hSIGlkRW5jWSBkaWZmSW1wQ2hvaWNlcwoJICAgIHRhcEltcENob2ljZXMgY29udGFjdENob2ljZXMgZGlmZkltcENob2ljZSB0YXBJbXBDaG9pY2UgY29udGFjdENob2ljZQoJICAgIHNyY09mZnNldCBkcm5PZmZzZXQgbSBsIHcKCSAgICBpbXBsYW50IG5vRW5kQ29uSW1wRW5jIHdlbGxFbmNZRGlmZiB3ZWxsV2lkdGggZ05ldAoJICAgIHNOZXQgZE5ldCBjTmV0IG5ldEwgaQoJICAgIGRpZmZNYXRjaCB0YXBNYXRjaCBkaWZmQ29uUGFyYW0geCBpZEVuY0xpc3QKCSAgICBjb250YWN0RiBjb250YWN0TCBjb250YWN0RCBjb250YWN0UyB2aWExWENyZEYKCSAgICBsYXllcjJYQ3JkRiB2aWEyWENyZEYgbGF5ZXIzWENyZEYgbGF5ZXIxWENyZEYgdmlhMVhDcmRMCgkgICAgbGF5ZXIyWENyZEwgdmlhMlhDcmRMIGxheWVyM1hDcmRMIGxheWVyMVhDcmRMIHZpYTFYQ3JkUwoJICAgIGxheWVyMlhDcmRTIHZpYTJYQ3JkUyBsYXllcjNYQ3JkUyBsYXllcjFYQ3JkUyB2aWExWENyZEQKCSAgICBsYXllcjJYQ3JkRCB2aWEyWENyZEQgbGF5ZXIzWENyZEQgbGF5ZXIxWENyZEQgdmlhMUVuY0YKCSAgICB2aWEyRW5jRiBsYXllcjJFbmNGIGxheWVyM0VuY0YgdmlhMUVuY0wgdmlhMkVuY0wKCSAgICBsYXllcjJFbmNMIGxheWVyM0VuY0wgdmlhMUVuY1MgdmlhMkVuY1MgbGF5ZXIyRW5jUwoJICAgIGxheWVyM0VuY1MgdmlhMUVuY0QgdmlhMkVuY0QgbGF5ZXIyRW5jRCBsYXllcjNFbmNECgkgICAgdmlhMVNwYWNlRkwgdmlhMU9mZlNldEZMIHZpYTJTcGFjZUZMIHZpYTJPZmZTZXRGTCBsYXllcjNTcGFjZUZMCgkgICAgbGF5ZXIzT2ZmU2V0RkwgbGF5ZXIyU3BhY2VGTCBsYXllcjJPZmZTZXRGTCB2aWExU3BhY2VGUyB2aWExT2ZmU2V0RlMKCSAgICB2aWEyU3BhY2VGUyB2aWEyT2ZmU2V0RlMgbGF5ZXIzU3BhY2VGUyBsYXllcjNPZmZTZXRGUyBsYXllcjJTcGFjZUZTCgkgICAgbGF5ZXIyT2ZmU2V0RlMgdmlhMVNwYWNlRkQgdmlhMU9mZlNldEZEIHZpYTJTcGFjZUZEIHZpYTJPZmZTZXRGRAoJICAgIGxheWVyM1NwYWNlRkQgbGF5ZXIzT2ZmU2V0RkQgbGF5ZXIyU3BhY2VGRCBsYXllcjJPZmZTZXRGRCB2aWExU3BhY2VMUwoJICAgIHZpYTFPZmZTZXRMUyB2aWEyU3BhY2VMUyB2aWEyT2ZmU2V0TFMgbGF5ZXIzU3BhY2VMUyBsYXllcjNPZmZTZXRMUwoJICAgIGxheWVyMlNwYWNlTFMgbGF5ZXIyT2ZmU2V0TFMgdmlhMVNwYWNlTEQgdmlhMU9mZlNldExEIHZpYTJTcGFjZUxECgkgICAgdmlhMk9mZlNldExEIGxheWVyM1NwYWNlTEQgbGF5ZXIzT2ZmU2V0TEQgbGF5ZXIyU3BhY2VMRCBsYXllcjJPZmZTZXRMRAoJICAgIHZpYTFTcGFjZVNEIHZpYTFPZmZTZXRTRCB2aWEyU3BhY2VTRCB2aWEyT2ZmU2V0U0QgbGF5ZXIzU3BhY2VTRAoJICAgIGxheWVyM09mZlNldFNEIGxheWVyMlNwYWNlU0QgbGF5ZXIyT2ZmU2V0U0QgbWF4T2ZmU2V0IG9mZnNldFNpZGUKCSAgICBtaW5TcGFjZU9mZlNldCBjb250YWN0SW1wUGFyYW0gY29udGFjdFdlbGxQYXJhbSBkaWZmSW1wQ2hvaWNlUGFyYW0gdGFwSW1wQ2hvaWNlUGFyYW0KCSAgICB4MUNvb3JkIHkxQ29vcmQgbGFzdFgxQ29vcmQgeTFEZXBDb29yZCB5MkRlcENvb3JkCgkgICAgbGFzdFBZaVgxQ29vcmQgeTFQWWlDb29yZCB5MlBZaUNvb3JkIHdlbGxFbmNEaWZmWSB3ZWxsRW5jVGFwWQoJICAgIHdlbGxFbmNEaWZmWCB3ZWxsRW5jVGFwWCBjb250YWN0SWQgb2Zmc2V0IHBhcmFtcwoJICAgIGluc3RQYXJhbXMgaW5zdCBtYXN0ZXIgYkJveCBkYmlkCgkgICAgcGluaWQgeDFEaWZmQ29vcmQgeDFUYXBDb29yZCB5MkRpZmZDb29yZCB5MlRhcENvb3JkCgkgICAgeTFEaWZmQ29vcmQgeTFUYXBDb29yZCB4MVdlbGxDb29yZCB5MVdlbGxDb29yZCB5MldlbGxDb29yZAoJICAgIHgxSFZMYXllckNvb3JkIHkxSFZMYXllckNvb3JkIHkySFZMYXllckNvb3JkIHgxSWRDb29yZCB5MUlkQ29vcmQKCSAgICB5MklkQ29vcmQgc2hhcmVkU3JjSWQgc2hhcmVkRHJuSWQgbiB4MURlcENvb3JkCgkgICAgeDFQWWlDb29yZCB4MkRpZmZDb29yZCB4MlRhcENvb3JkIHgyV2VsbENvb3JkIHgySFZMYXllckNvb3JkCgkgICAgeDJJZENvb3JkIHdlbGxMYXllcl9Yb3JpZ2luIHdlbGxMYXllcl9Zb3JpZ2luIHdlbGxMYXllcl9YZW5kIHdlbGxMYXllcl9ZZW5kCgkgICAgRGlmZl93ZWxsX3dpZHRoIHNpZ25YMSBzaWduWDIgc2lnblkxIHNpZ25ZMgoJKSAKCWlmKCF0Y0NlbGxWaWV3IAoJICAgIHJldHVybihuaWwpCgkpIAoJKGJja0NvbXBhdGlibGVPZmZTZXQgPSBuaWwpIAoJKGxheWVyM01pblNwYWNlID0gMC4xNCkgCgkobGF5ZXIyTWluU3BhY2UgPSAwLjE3KQoJKHZpYTJNaW5TcGFjZSA9IDAuMTkpIAoJKHZpYTFNaW5TcGFjZSA9IDAuMTcpIAoJKGRpZmZJbXBFbmMgPSAwLjEzKSAKCShkaWZmSW1wbGFudCA9IGxpc3QoIm5zZG0iICJkcmF3aW5nIikpIAoJKGh2RW5jbG9zdXJlID0gMC4xOCkKCShodkxheWVyID0gbGlzdCgiaHZpIiAiZHJhd2luZyIpKSAKCShsYWJlbFdpZHRoID0gMC4xNSkgCgkoZGlmZkV4dCA9IDAuMjUpIAoJKGdhdGVMYXllciA9IGxpc3QoInBvbHkiICJkcmF3aW5nIikpIAoJKGRpZmZMYXllciA9IGxpc3QoImRpZmYiICJkcmF3aW5nIikpCgkod2VsbExheWVyID0gbmlsKSAKCSh3ZWxsbWluV2lkdGggPSAwLjApIAoJKGRlcExheWVyID0gbmlsKSAKCSh3ZWxsRW5jRGlmZiA9IDAuMCkgCgkod2VsbEVuY1RhcCA9IDAuMCkKCSh3ZWxsTGF5ZXJXaWR0aCA9IDAuMCkgCgkoZGVwWEVuYyA9IDAuMCkgCgkoZGVwWUVuYyA9IDAuMCkgCgkoZGVwU3BhY2UgPSAwLjApIAoJKGxhYmVsTGF5ZXIgPSBsaXN0KCJ0ZXh0IiAiZHJhd2luZyIpKQoJKGRpZmZDb3JlSW1wbGFudCA9IG5pbCkgCgkoZGlmZkNvcmVJbXBFbmMgPSAwLjApIAoJKG5vT2ZEZWNpbWFscyA9IDMpIAoJKHNuYXBHcmlkID0gMC4wMDUpIAoJKHBvbHlJbXBsYW50ID0gbmlsKQoJKHBvbHlJbXBYRW5jID0gMC4wKSAKCShwb2x5SW1wWUVuYyA9IDAuMCkgCgkoaHZQWU1jb25TcGFjZSA9IDAuMCkgCgkod2VsbEVuY0h2TGF5ZXIgPSAwLjApIAoJKG5vRW5kQ29uSW1wRW5jID0gKCh0Y0NlbGxWaWV3fj5wYXJhbWV0ZXJzKX4+bm9FbmRDb25JbXBFbmMpKQoJaWYoKG5vRW5kQ29uSW1wRW5jID09ICJGQUxTRSIpIHRoZW4gCgkgICAgKG5vRW5kQ29uSW1wRW5jID0gbmlsKQoJKSAKCShpbXBsYW50ID0gKCh0Y0NlbGxWaWV3fj5wYXJhbWV0ZXJzKX4+aW1wbGFudCkpIAoJaWYoKGltcGxhbnQgPT0gIkZBTFNFIikgdGhlbiAKCSAgICAoaW1wbGFudCA9IG5pbCkKCSkgCgkodyA9ICgodGNDZWxsVmlld34+cGFyYW1ldGVycyl+PncpKSAKCWlmKCFmbG9hdHAodykgdGhlbiAKCSAgICAodyA9IDAuNDIpCgkpCgkobCA9ICgodGNDZWxsVmlld34+cGFyYW1ldGVycyl+PmwpKSAKCWlmKCFmbG9hdHAobCkgdGhlbiAKCSAgICAobCA9IDAuNSkKCSkgCgkobSA9ICgodGNDZWxsVmlld34+cGFyYW1ldGVycyl+Pm0pKSAKCWlmKCFmaXhwKG0pIHRoZW4gCgkgICAgKG0gPSAxKQoJKSAKCShkcm5PZmZzZXQgPSAoKHRjQ2VsbFZpZXd+PnBhcmFtZXRlcnMpfj5kcm5PZmZzZXQpKQoJaWYoIWZsb2F0cChkcm5PZmZzZXQpIHRoZW4gCgkgICAgKGRybk9mZnNldCA9IDAuMCkKCSkgCgkoc3JjT2Zmc2V0ID0gKCh0Y0NlbGxWaWV3fj5wYXJhbWV0ZXJzKX4+c3JjT2Zmc2V0KSkgCglpZighZmxvYXRwKHNyY09mZnNldCkgdGhlbiAKCSAgICAoc3JjT2Zmc2V0ID0gMC4wKQoJKSAKCShjb250YWN0Q2hvaWNlID0gKCh0Y0NlbGxWaWV3fj5wYXJhbWV0ZXJzKX4+Y29udGFjdENob2ljZSkpIAoJaWYoIWxpc3RwKGNvbnRhY3RDaG9pY2UpIHRoZW4gCgkgICAgaWYoKChjb250YWN0Q2hvaWNlID09ICJUUlVFIikgfHwgKGNvbnRhY3RDaG9pY2UgPT0gdCkpIHRoZW4gCgkJKGNvbnRhY3RDaG9pY2UgPSB0KSBlbHNlIAoJCShjb250YWN0Q2hvaWNlID0gbmlsKQoJICAgICkKCSkKCSh0YXBJbXBDaG9pY2UgPSAoKHRjQ2VsbFZpZXd+PnBhcmFtZXRlcnMpfj50YXBJbXBDaG9pY2UpKSAKCWlmKCFsaXN0cCh0YXBJbXBDaG9pY2UpIHRoZW4gCgkgICAgaWYoKCh0YXBJbXBDaG9pY2UgPT0gIlRSVUUiKSB8fCAodGFwSW1wQ2hvaWNlID09IHQpKSB0aGVuIAoJCSh0YXBJbXBDaG9pY2UgPSB0KSBlbHNlIAoJCSh0YXBJbXBDaG9pY2UgPSBuaWwpCgkgICAgKQoJKSAKCShkaWZmSW1wQ2hvaWNlID0gKCh0Y0NlbGxWaWV3fj5wYXJhbWV0ZXJzKX4+ZGlmZkltcENob2ljZSkpIAoJaWYoIWxpc3RwKGRpZmZJbXBDaG9pY2UpIHRoZW4gCgkgICAgaWYoKChkaWZmSW1wQ2hvaWNlID09ICJUUlVFIikgfHwgKGRpZmZJbXBDaG9pY2UgPT0gdCkpIHRoZW4gCgkJKGRpZmZJbXBDaG9pY2UgPSB0KSBlbHNlIAoJCShkaWZmSW1wQ2hvaWNlID0gbmlsKQoJICAgICkKCSkgCgkoY29udGFjdENob2ljZXMgPSAoKHRjQ2VsbFZpZXd+PnBhcmFtZXRlcnMpfj5jb250YWN0Q2hvaWNlcykpCglpZighbGlzdHAoY29udGFjdENob2ljZXMpIHRoZW4gCgkgICAgaWYoKChjb250YWN0Q2hvaWNlcyA9PSAiVFJVRSIpIHx8IChjb250YWN0Q2hvaWNlcyA9PSB0KSkgdGhlbiAKCQkoY29udGFjdENob2ljZXMgPSB0KSBlbHNlIAoJCShjb250YWN0Q2hvaWNlcyA9IG5pbCkKCSAgICApCgkpIAoJKHRhcEltcENob2ljZXMgPSAoKHRjQ2VsbFZpZXd+PnBhcmFtZXRlcnMpfj50YXBJbXBDaG9pY2VzKSkgCglpZighbGlzdHAodGFwSW1wQ2hvaWNlcykgdGhlbiAKCSAgICBpZigoKHRhcEltcENob2ljZXMgPT0gIlRSVUUiKSB8fCAodGFwSW1wQ2hvaWNlcyA9PSB0KSkgdGhlbiAKCQkodGFwSW1wQ2hvaWNlcyA9IHQpIGVsc2UgCgkJKHRhcEltcENob2ljZXMgPSBuaWwpCgkgICAgKQoJKSAKCShkaWZmSW1wQ2hvaWNlcyA9ICgodGNDZWxsVmlld34+cGFyYW1ldGVycyl+PmRpZmZJbXBDaG9pY2VzKSkgCglpZighbGlzdHAoZGlmZkltcENob2ljZXMpIHRoZW4gCgkgICAgaWYoKChkaWZmSW1wQ2hvaWNlcyA9PSAiVFJVRSIpIHx8IChkaWZmSW1wQ2hvaWNlcyA9PSB0KSkgdGhlbiAKCQkoZGlmZkltcENob2ljZXMgPSB0KSBlbHNlIAoJCShkaWZmSW1wQ2hvaWNlcyA9IG5pbCkKCSAgICApCgkpCgkoaWRFbmNZID0gKCh0Y0NlbGxWaWV3fj5wYXJhbWV0ZXJzKX4+aWRFbmNZKSkgCglpZighZmxvYXRwKGlkRW5jWSkgdGhlbiAKCSAgICAoaWRFbmNZID0gMC4xOCkKCSkgCgkoaWRFbmNYUiA9ICgodGNDZWxsVmlld34+cGFyYW1ldGVycyl+PmlkRW5jWFIpKSAKCWlmKCFmbG9hdHAoaWRFbmNYUikgdGhlbiAKCSAgICAoaWRFbmNYUiA9IDAuMTgpCgkpIAoJKGlkRW5jWEwgPSAoKHRjQ2VsbFZpZXd+PnBhcmFtZXRlcnMpfj5pZEVuY1hMKSkKCWlmKCFmbG9hdHAoaWRFbmNYTCkgdGhlbiAKCSAgICAoaWRFbmNYTCA9IDAuMTgpCgkpIAoJKGlkRW5jRGlmZiA9ICgodGNDZWxsVmlld34+cGFyYW1ldGVycyl+PmlkRW5jRGlmZikpIAoJaWYoKGlkRW5jRGlmZiA9PSAiRkFMU0UiKSB0aGVuIAoJICAgIChpZEVuY0RpZmYgPSBuaWwpCgkpIAoJaWYoIXN0cmluZ3AoaWRFbmNEaWZmKSB0aGVuIAoJICAgIChpZEVuY0RpZmYgPSAiRkFMU0UiKQoJKSAKCShpZExheWVyID0gKCh0Y0NlbGxWaWV3fj5wYXJhbWV0ZXJzKX4+aWRMYXllcikpCglpZigoaWRMYXllciA9PSAiRkFMU0UiKSB0aGVuIAoJICAgIChpZExheWVyID0gbmlsKQoJKSAKCWlmKCFzdHJpbmdwKGlkTGF5ZXIpIHRoZW4gCgkgICAgKGlkTGF5ZXIgPSAibm9uZSIpCgkpIAoJKGlkTGF5ZXJDaG9pY2VzID0gKCh0Y0NlbGxWaWV3fj5wYXJhbWV0ZXJzKX4+aWRMYXllckNob2ljZXMpKSAKCWlmKCFsaXN0cChpZExheWVyQ2hvaWNlcykgdGhlbiAKCSAgICAoaWRMYXllckNob2ljZXMgPSBsaXN0KCJub25lIiAibHZ0biIpKQoJKSAKCShnYXRlRXh0ID0gKCh0Y0NlbGxWaWV3fj5wYXJhbWV0ZXJzKX4+Z2F0ZUV4dCkpCglpZighZmxvYXRwKGdhdGVFeHQpIHRoZW4gCgkgICAgKGdhdGVFeHQgPSAwLjEzKQoJKSAKCShmaXJzdENvbnRhY3QgPSAoKHRjQ2VsbFZpZXd+PnBhcmFtZXRlcnMpfj5maXJzdENvbnRhY3QpKSAKCWlmKChmaXJzdENvbnRhY3QgPT0gIkZBTFNFIikgdGhlbiAKCSAgICAoZmlyc3RDb250YWN0ID0gbmlsKQoJKSAKCWlmKCFzdHJpbmdwKGZpcnN0Q29udGFjdCkgdGhlbiAKCSAgICAoZmlyc3RDb250YWN0ID0gImh2REZUUEwxcyIpCgkpIAoJKGxhc3RDb250YWN0ID0gKCh0Y0NlbGxWaWV3fj5wYXJhbWV0ZXJzKX4+bGFzdENvbnRhY3QpKQoJaWYoKGxhc3RDb250YWN0ID09ICJGQUxTRSIpIHRoZW4gCgkgICAgKGxhc3RDb250YWN0ID0gbmlsKQoJKSAKCWlmKCFzdHJpbmdwKGxhc3RDb250YWN0KSB0aGVuIAoJICAgIChsYXN0Q29udGFjdCA9ICJodkRGVFBMMXMiKQoJKSAKCShzaGFyZWRTb3VyY2UgPSAoKHRjQ2VsbFZpZXd+PnBhcmFtZXRlcnMpfj5zaGFyZWRTb3VyY2UpKSAKCWlmKChzaGFyZWRTb3VyY2UgPT0gIkZBTFNFIikgdGhlbiAKCSAgICAoc2hhcmVkU291cmNlID0gbmlsKQoJKSAKCWlmKCFzdHJpbmdwKHNoYXJlZFNvdXJjZSkgdGhlbiAKCSAgICAoc2hhcmVkU291cmNlID0gImh2REZMMXNkMiIpCgkpCgkoc2hhcmVkRHJhaW4gPSAoKHRjQ2VsbFZpZXd+PnBhcmFtZXRlcnMpfj5zaGFyZWREcmFpbikpIAoJaWYoKHNoYXJlZERyYWluID09ICJGQUxTRSIpIHRoZW4gCgkgICAgKHNoYXJlZERyYWluID0gbmlsKQoJKSAKCWlmKCFzdHJpbmdwKHNoYXJlZERyYWluKSB0aGVuIAoJICAgIChzaGFyZWREcmFpbiA9ICJodkRGTDFzZDIiKQoJKSAKCShzb3VyY2VGaXJzdCA9ICgodGNDZWxsVmlld34+cGFyYW1ldGVycyl+PnNvdXJjZUZpcnN0KSkgCglpZigoc291cmNlRmlyc3QgPT0gIkZBTFNFIikgdGhlbiAKCSAgICAoc291cmNlRmlyc3QgPSBuaWwpCgkpCgkod2VsbEVuY1lEaWZmID0gMC4wKSAKCXdoZW4oKHdlbGxMYXllcldpZHRoICE9IDAuMCkgCgkgICAgKHdlbGxXaWR0aCA9ICgobWF4KHdlbGxFbmNEaWZmIHdlbGxFbmNUYXApICogMikgKyB3KSkgCgkgICAgaWYoKHdlbGxXaWR0aCA8IHdlbGxMYXllcldpZHRoKSB0aGVuIAoJCSh3ZWxsRW5jWURpZmYgPSBhYnMoKG1heCh3ZWxsRW5jRGlmZiB3ZWxsRW5jVGFwKSAtIAoJCQkgICAgKCh3ZWxsTGF5ZXJXaWR0aCAtIHcpIC8gMikpCgkJICAgICkpCgkgICAgKQoJKSAKCWlmKCgoaW1wbGFudCA9PSB0KSB8fCAoaW1wbGFudCA9PSAiVFJVRSIpKSB0aGVuIAoJICAgIChpbXBsYW50ID0gdCkgZWxzZSAKCSAgICAoaW1wbGFudCA9IG5pbCkKCSkgCglpZigoKG5vRW5kQ29uSW1wRW5jID09IHQpIHx8IChub0VuZENvbkltcEVuYyA9PSAiVFJVRSIpKSB0aGVuIAoJICAgIChub0VuZENvbkltcEVuYyA9IHQpIGVsc2UgCgkgICAgKG5vRW5kQ29uSW1wRW5jID0gbmlsKQoJKSAKCWlmKCghaWRMYXllciB8fCAoaWRMYXllciA9PSAibm9uZSIpIHx8IChpZExheWVyID09ICJuaWwiKSB8fCAoaWRMYXllciA9PSAiRkFMU0UiKSkgdGhlbiAKCSAgICAoaWRMYXllciA9IG5pbCkKCSkKCWlmKCgoc291cmNlRmlyc3QgPT0gdCkgfHwgKHNvdXJjZUZpcnN0ID09ICJUUlVFIikpIHRoZW4gCgkgICAgKHNvdXJjZUZpcnN0ID0gdCkgZWxzZSAKCSAgICAoc291cmNlRmlyc3QgPSBuaWwpCgkpIAoJaWYoKChpZEVuY0RpZmYgPT0gdCkgfHwgKGlkRW5jRGlmZiA9PSAiVFJVRSIpKSB0aGVuIAoJICAgIChpZEVuY0RpZmYgPSB0KSBlbHNlIAoJICAgIChpZEVuY0RpZmYgPSBuaWwpCgkpIAoJaWYoKGdhdGVFeHQgPCAwLjApIAoJICAgIGVycm9yKCJtTm9ybVRyYW5JbXBDbGFzczogZ2F0ZUV4dCAoJWcpIG11c3QgYmUgPiAwXG4iIGdhdGVFeHQpCgkpIAoJKGdOZXQgPSAoZGJDcmVhdGVOZXQgdGNDZWxsVmlldyAiZyIpKSAKCShkYkNyZWF0ZVRlcm0gZ05ldCAiZyIgImlucHV0IikKCShzTmV0ID0gKGRiQ3JlYXRlTmV0IHRjQ2VsbFZpZXcgInMiKSkgCgkoZGJDcmVhdGVUZXJtIHNOZXQgInMiICJpbnB1dE91dHB1dCIpIAoJKGROZXQgPSAoZGJDcmVhdGVOZXQgdGNDZWxsVmlldyAiZCIpKSAKCShkYkNyZWF0ZVRlcm0gZE5ldCAiZCIgImlucHV0T3V0cHV0IikgCglpZihzb3VyY2VGaXJzdCB0aGVuIAoJICAgIChjTmV0ID0gc05ldCkgCgkgICAgKG5ldEwgPSAiUyIpIGVsc2UKCSAgICAoY05ldCA9IGROZXQpIAoJICAgIChuZXRMID0gIkQiKQoJKQoJd2hlbigobSA8IDEpIAoJICAgIChtID0gMSkKCSkgCgl3aGVuKGRpZmZJbXBDaG9pY2VzIAoJICAgIHVubGVzcygoZGlmZkltcEVuYyAmJiBsaXN0cChkaWZmSW1wRW5jKSAmJiAobGVuZ3RoKGRpZmZJbXBFbmMpID09IGxlbmd0aChkaWZmSW1wQ2hvaWNlcykpKSAKCQllcnJvcigiZGlmZkltcEVuYyBzaG91bGQgYmUgYSBsaXN0IG1hdGNoaW5nIGRpZmZJbXBDaG9pY2VzIikKCSAgICApIAoJICAgIChpID0gbGVuZ3RoKChtZW1iZXIoZGlmZkltcENob2ljZSBkaWZmSW1wQ2hvaWNlcykgfHwgZGlmZkltcENob2ljZXMpKSkgCgkgICAgKGRpZmZNYXRjaCA9IChsZW5ndGgoZGlmZkltcENob2ljZXMpIC0gaSkpIAoJICAgIChkaWZmSW1wRW5jID0gbnRoKGRpZmZNYXRjaCBkaWZmSW1wRW5jKSkKCSkgCgl3aGVuKHRhcEltcENob2ljZXMgCgkgICAgKGkgPSBsZW5ndGgoKG1lbWJlcih0YXBJbXBDaG9pY2UgdGFwSW1wQ2hvaWNlcykgfHwgdGFwSW1wQ2hvaWNlcykpKSAKCSAgICAodGFwTWF0Y2ggPSAobGVuZ3RoKHRhcEltcENob2ljZXMpIC0gaSkpCgkpIAoJd2hlbihjb250YWN0Q2hvaWNlcyAKCSAgICBjb25kKCgoY29udGFjdENob2ljZSA9PSAidGFwIikgCgkJICAgIChkaWZmQ29uUGFyYW0gPSBsaXN0KCJub0RpZmZDb250YWN0IiAiYm9vbGVhbiIgdCkpCgkJKSAKCQkoKGNvbnRhY3RDaG9pY2UgPT0gImJvdGgiKSAKCQkgICAgKGRpZmZDb25QYXJhbSA9IGxpc3QoIm5vRGlmZkNvbnRhY3QiICJib29sZWFuIiAiRkFMU0UiKSkKCQkpIAoJCSh0IAoJCSAgICAoZGlmZkNvblBhcmFtID0gbGlzdCgibm9EaWZmQ29udGFjdCIgImJvb2xlYW4iICJGQUxTRSIpKQoJCSkKCSAgICApCgkpIAoJKHggPSBuaWwpCglpZihsaXN0cChjYXIoaWRMYXllckNob2ljZXMpKSB0aGVuIAoJICAgIG1hcGNhcihsYW1iZGEoKHgpIAoJCSAgICBpZigoY2FyKHgpID09IGlkTGF5ZXIpIHRoZW4gCgkJCShpZExheWVyID0gY2Fkcih4KSkgCgkJCShpZEVuY0xpc3QgPSBjYWRkcih4KSkgCgkJCWlmKChpZEVuY0xpc3QgJiYgbGlzdHAoaWRFbmNMaXN0KSkgdGhlbiAKCQkJICAgIChpZEVuY1hMID0gbnRoKDAgaWRFbmNMaXN0KSkgCgkJCSAgICAoaWRFbmNYUiA9IG50aCgxIGlkRW5jTGlzdCkpIAoJCQkgICAgKGlkRW5jWSA9IG50aCgyIGlkRW5jTGlzdCkpCgkJCSkKCQkJKGlkRW5jRGlmZiA9IGNhZGRkcih4KSkKCQkgICAgKQoJCSkgaWRMYXllckNob2ljZXMKCSAgICApCgkpIAoJd2hlbigoZmlyc3RDb250YWN0ICE9ICIiKSAKCSAgICAoY29udGFjdEYgPSAoZGJPcGVuQ2VsbFZpZXcgCgkJICAgICh0Y0NlbGxWaWV3fj5saWIpIGZpcnN0Q29udGFjdCAic3ltYm9saWMiIG5pbAoJCSAgICAicm4iCgkJKSkKCSkgCgl3aGVuKChsYXN0Q29udGFjdCAhPSAiIikgCgkgICAgKGNvbnRhY3RMID0gKGRiT3BlbkNlbGxWaWV3IAoJCSAgICAodGNDZWxsVmlld34+bGliKSBsYXN0Q29udGFjdCAic3ltYm9saWMiIG5pbAoJCSAgICAicm4iCgkJKSkKCSkgCgl3aGVuKChzaGFyZWREcmFpbiAhPSAiIikgCgkgICAgKGNvbnRhY3REID0gKGRiT3BlbkNlbGxWaWV3IAoJCSAgICAodGNDZWxsVmlld34+bGliKSBzaGFyZWREcmFpbiAic3ltYm9saWMiIG5pbAoJCSAgICAicm4iCgkJKSkKCSkgCgl3aGVuKChzaGFyZWRTb3VyY2UgIT0gIiIpIAoJICAgIChjb250YWN0UyA9IChkYk9wZW5DZWxsVmlldyAKCQkgICAgKHRjQ2VsbFZpZXd+PmxpYikgc2hhcmVkU291cmNlICJzeW1ib2xpYyIgbmlsCgkJICAgICJybiIKCQkpKQoJKQoJKHZpYTFYQ3JkRiA9IGlmKChjb250YWN0Rn4+YkJveFZpYTEpIAoJCWFicyhjYWFyKChjb250YWN0Rn4+YkJveFZpYTEpKSkgbmlsCgkgICAgKSkgCgkobGF5ZXIyWENyZEYgPSBpZigoY29udGFjdEZ+PmJCb3hMYXllcjIpIAoJCWFicyhjYWFyKChjb250YWN0Rn4+YkJveExheWVyMikpKSBuaWwKCSAgICApKSAKCSh2aWEyWENyZEYgPSBpZigoY29udGFjdEZ+PmJCb3hWaWEyKSAKCQlhYnMoY2FhcigoY29udGFjdEZ+PmJCb3hWaWEyKSkpIG5pbAoJICAgICkpIAoJKGxheWVyM1hDcmRGID0gaWYoKGNvbnRhY3RGfj5iQm94TGF5ZXIzKSAKCQlhYnMoY2FhcigoY29udGFjdEZ+PmJCb3hMYXllcjMpKSkgbmlsCgkgICAgKSkgCgkobGF5ZXIxWENyZEYgPSBpZigoY29udGFjdEZ+PmRpZmZMYXllckJib3gpIAoJCWFicyhjYWFyKChjb250YWN0Rn4+ZGlmZkxheWVyQmJveCkpKSBuaWwKCSAgICApKQoJKHZpYTFYQ3JkTCA9IGlmKChjb250YWN0TH4+YkJveFZpYTEpIAoJCWFicyhjYWFyKChjb250YWN0TH4+YkJveFZpYTEpKSkgbmlsCgkgICAgKSkgCgkobGF5ZXIyWENyZEwgPSBpZigoY29udGFjdEx+PmJCb3hMYXllcjIpIAoJCWFicyhjYWFyKChjb250YWN0TH4+YkJveExheWVyMikpKSBuaWwKCSAgICApKSAKCSh2aWEyWENyZEwgPSBpZigoY29udGFjdEx+PmJCb3hWaWEyKSAKCQlhYnMoY2FhcigoY29udGFjdEx+PmJCb3hWaWEyKSkpIG5pbAoJICAgICkpIAoJKGxheWVyM1hDcmRMID0gaWYoKGNvbnRhY3RMfj5iQm94TGF5ZXIzKSAKCQlhYnMoY2FhcigoY29udGFjdEx+PmJCb3hMYXllcjMpKSkgbmlsCgkgICAgKSkgCgkobGF5ZXIxWENyZEwgPSBpZigoY29udGFjdEx+PmRpZmZMYXllckJib3gpIAoJCWFicyhjYWFyKChjb250YWN0TH4+ZGlmZkxheWVyQmJveCkpKSBuaWwKCSAgICApKQoJKHZpYTFYQ3JkUyA9IGlmKChjb250YWN0U34+YkJveFZpYTEpIAoJCWFicyhjYWFyKChjb250YWN0U34+YkJveFZpYTEpKSkgbmlsCgkgICAgKSkgCgkobGF5ZXIyWENyZFMgPSBpZigoY29udGFjdFN+PmJCb3hMYXllcjIpIAoJCWFicyhjYWFyKChjb250YWN0U34+YkJveExheWVyMikpKSBuaWwKCSAgICApKSAKCSh2aWEyWENyZFMgPSBpZigoY29udGFjdFN+PmJCb3hWaWEyKSAKCQlhYnMoY2FhcigoY29udGFjdFN+PmJCb3hWaWEyKSkpIG5pbAoJICAgICkpIAoJKGxheWVyM1hDcmRTID0gaWYoKGNvbnRhY3RTfj5iQm94TGF5ZXIzKSAKCQlhYnMoY2FhcigoY29udGFjdFN+PmJCb3hMYXllcjMpKSkgbmlsCgkgICAgKSkgCgkobGF5ZXIxWENyZFMgPSBpZigoY29udGFjdFN+PmRpZmZMYXllckJib3gpIAoJCWFicyhjYWFyKChjb250YWN0U34+ZGlmZkxheWVyQmJveCkpKSBuaWwKCSAgICApKQoJKHZpYTFYQ3JkRCA9IGlmKChjb250YWN0RH4+YkJveFZpYTEpIAoJCWFicyhjYWFyKChjb250YWN0RH4+YkJveFZpYTEpKSkgbmlsCgkgICAgKSkgCgkobGF5ZXIyWENyZEQgPSBpZigoY29udGFjdER+PmJCb3hMYXllcjIpIAoJCWFicyhjYWFyKChjb250YWN0RH4+YkJveExheWVyMikpKSBuaWwKCSAgICApKSAKCSh2aWEyWENyZEQgPSBpZigoY29udGFjdER+PmJCb3hWaWEyKSAKCQlhYnMoY2FhcigoY29udGFjdER+PmJCb3hWaWEyKSkpIG5pbAoJICAgICkpIAoJKGxheWVyM1hDcmREID0gaWYoKGNvbnRhY3REfj5iQm94TGF5ZXIzKSAKCQlhYnMoY2FhcigoY29udGFjdER+PmJCb3hMYXllcjMpKSkgbmlsCgkgICAgKSkgCgkobGF5ZXIxWENyZEQgPSBpZigoY29udGFjdER+PmRpZmZMYXllckJib3gpIAoJCWFicyhjYWFyKChjb250YWN0RH4+ZGlmZkxheWVyQmJveCkpKSBuaWwKCSAgICApKQoJaWYoKGxheWVyMVhDcmRGICYmIHZpYTFYQ3JkRikgdGhlbiAKCSAgICAodmlhMUVuY0YgPSBhYnMoKGxheWVyMVhDcmRGIC0gdmlhMVhDcmRGKSkpCgkpIAoJaWYoKGxheWVyMVhDcmRGICYmIHZpYTJYQ3JkRikgdGhlbiAKCSAgICAodmlhMkVuY0YgPSBhYnMoKGxheWVyMVhDcmRGIC0gdmlhMlhDcmRGKSkpCgkpIAoJaWYoKGxheWVyMVhDcmRGICYmIGxheWVyMlhDcmRGKSB0aGVuIAoJICAgIChsYXllcjJFbmNGID0gYWJzKChsYXllcjFYQ3JkRiAtIGxheWVyMlhDcmRGKSkpCgkpIAoJaWYoKGxheWVyMVhDcmRGICYmIGxheWVyM1hDcmRGKSB0aGVuIAoJICAgIChsYXllcjNFbmNGID0gYWJzKChsYXllcjFYQ3JkRiAtIGxheWVyM1hDcmRGKSkpCgkpIAoJaWYoKGxheWVyMVhDcmRMICYmIHZpYTFYQ3JkTCkgdGhlbiAKCSAgICAodmlhMUVuY0wgPSBhYnMoKGxheWVyMVhDcmRMIC0gdmlhMVhDcmRMKSkpCgkpCglpZigobGF5ZXIxWENyZEwgJiYgdmlhMlhDcmRMKSB0aGVuIAoJICAgICh2aWEyRW5jTCA9IGFicygobGF5ZXIxWENyZEwgLSB2aWEyWENyZEwpKSkKCSkgCglpZigobGF5ZXIxWENyZEwgJiYgbGF5ZXIyWENyZEwpIHRoZW4gCgkgICAgKGxheWVyMkVuY0wgPSBhYnMoKGxheWVyMVhDcmRMIC0gbGF5ZXIyWENyZEwpKSkKCSkgCglpZigobGF5ZXIxWENyZEwgJiYgbGF5ZXIzWENyZEwpIHRoZW4gCgkgICAgKGxheWVyM0VuY0wgPSBhYnMoKGxheWVyMVhDcmRMIC0gbGF5ZXIzWENyZEwpKSkKCSkgCglpZigobGF5ZXIxWENyZFMgJiYgdmlhMVhDcmRTKSB0aGVuIAoJICAgICh2aWExRW5jUyA9IGFicygobGF5ZXIxWENyZFMgLSB2aWExWENyZFMpKSkKCSkgCglpZigobGF5ZXIxWENyZFMgJiYgdmlhMlhDcmRTKSB0aGVuIAoJICAgICh2aWEyRW5jUyA9IGFicygobGF5ZXIxWENyZFMgLSB2aWEyWENyZFMpKSkKCSkKCWlmKChsYXllcjFYQ3JkUyAmJiBsYXllcjJYQ3JkUykgdGhlbiAKCSAgICAobGF5ZXIyRW5jUyA9IGFicygobGF5ZXIxWENyZFMgLSBsYXllcjJYQ3JkUykpKQoJKSAKCWlmKChsYXllcjFYQ3JkUyAmJiBsYXllcjNYQ3JkUykgdGhlbiAKCSAgICAobGF5ZXIzRW5jUyA9IGFicygobGF5ZXIxWENyZFMgLSBsYXllcjNYQ3JkUykpKQoJKSAKCWlmKChsYXllcjFYQ3JkRCAmJiB2aWExWENyZEQpIHRoZW4gCgkgICAgKHZpYTFFbmNEID0gYWJzKChsYXllcjFYQ3JkRCAtIHZpYTFYQ3JkRCkpKQoJKSAKCWlmKChsYXllcjFYQ3JkRCAmJiB2aWEyWENyZEQpIHRoZW4gCgkgICAgKHZpYTJFbmNEID0gYWJzKChsYXllcjFYQ3JkRCAtIHZpYTJYQ3JkRCkpKQoJKSAKCWlmKChsYXllcjFYQ3JkRCAmJiBsYXllcjJYQ3JkRCkgdGhlbiAKCSAgICAobGF5ZXIyRW5jRCA9IGFicygobGF5ZXIxWENyZEQgLSBsYXllcjJYQ3JkRCkpKQoJKQoJaWYoKGxheWVyMVhDcmREICYmIGxheWVyM1hDcmREKSB0aGVuIAoJICAgIChsYXllcjNFbmNEID0gYWJzKChsYXllcjFYQ3JkRCAtIGxheWVyM1hDcmREKSkpCgkpIAoJaWYoKHZpYTFFbmNGICYmIHZpYTFFbmNMKSB0aGVuIAoJICAgICh2aWExU3BhY2VGTCA9ICh2aWExRW5jRiArIHZpYTFFbmNMICsgbCkpIAoJICAgICh2aWExT2ZmU2V0RkwgPSAodmlhMU1pblNwYWNlIC0gdmlhMVNwYWNlRkwpKSBlbHNlCgkgICAgKHZpYTFPZmZTZXRGTCA9IDAuMCkKCSkgCglpZigodmlhMkVuY0YgJiYgdmlhMkVuY0wpIHRoZW4gCgkgICAgKHZpYTJTcGFjZUZMID0gKHZpYTJFbmNGICsgdmlhMkVuY0wgKyBsKSkgCgkgICAgKHZpYTJPZmZTZXRGTCA9ICh2aWEyTWluU3BhY2UgLSB2aWEyU3BhY2VGTCkpIGVsc2UKCSAgICAodmlhMk9mZlNldEZMID0gMC4wKQoJKSAKCWlmKChsYXllcjNFbmNGICYmIGxheWVyM0VuY0wpIHRoZW4gCgkgICAgKGxheWVyM1NwYWNlRkwgPSAobGF5ZXIzRW5jRiArIGxheWVyM0VuY0wgKyBsKSkgCgkgICAgKGxheWVyM09mZlNldEZMID0gKGxheWVyM01pblNwYWNlIC0gbGF5ZXIzU3BhY2VGTCkpIGVsc2UKCSAgICAobGF5ZXIzT2ZmU2V0RkwgPSAwLjApCgkpIAoJaWYoKGxheWVyMkVuY0YgJiYgbGF5ZXIyRW5jTCkgdGhlbiAKCSAgICAobGF5ZXIyU3BhY2VGTCA9IChsYXllcjJFbmNGICsgbGF5ZXIyRW5jTCArIGwpKSAKCSAgICAobGF5ZXIyT2ZmU2V0RkwgPSAobGF5ZXIyTWluU3BhY2UgLSBsYXllcjJTcGFjZUZMKSkgZWxzZQoJICAgIChsYXllcjJPZmZTZXRGTCA9IDAuMCkKCSkKCWlmKCh2aWExRW5jRiAmJiB2aWExRW5jUykgdGhlbiAKCSAgICAodmlhMVNwYWNlRlMgPSAodmlhMUVuY0YgKyB2aWExRW5jUyArIGwpKSAKCSAgICAodmlhMU9mZlNldEZTID0gKHZpYTFNaW5TcGFjZSAtIHZpYTFTcGFjZUZTKSkgZWxzZQoJICAgICh2aWExT2ZmU2V0RlMgPSAwLjApCgkpIAoJaWYoKHZpYTJFbmNGICYmIHZpYTJFbmNTKSB0aGVuIAoJICAgICh2aWEyU3BhY2VGUyA9ICh2aWEyRW5jRiArIHZpYTJFbmNTICsgbCkpIAoJICAgICh2aWEyT2ZmU2V0RlMgPSAodmlhMk1pblNwYWNlIC0gdmlhMlNwYWNlRlMpKSBlbHNlCgkgICAgKHZpYTJPZmZTZXRGUyA9IDAuMCkKCSkgCglpZigobGF5ZXIzRW5jRiAmJiBsYXllcjNFbmNTKSB0aGVuIAoJICAgIChsYXllcjNTcGFjZUZTID0gKGxheWVyM0VuY0YgKyBsYXllcjNFbmNTICsgbCkpIAoJICAgIChsYXllcjNPZmZTZXRGUyA9IChsYXllcjNNaW5TcGFjZSAtIGxheWVyM1NwYWNlRlMpKSBlbHNlCgkgICAgKGxheWVyM09mZlNldEZTID0gMC4wKQoJKSAKCWlmKChsYXllcjJFbmNGICYmIGxheWVyMkVuY1MpIHRoZW4gCgkgICAgKGxheWVyMlNwYWNlRlMgPSAobGF5ZXIyRW5jRiArIGxheWVyMkVuY1MgKyBsKSkgCgkgICAgKGxheWVyMk9mZlNldEZTID0gKGxheWVyMk1pblNwYWNlIC0gbGF5ZXIyU3BhY2VGUykpIGVsc2UKCSAgICAobGF5ZXIyT2ZmU2V0RlMgPSAwLjApCgkpIAoJaWYoKHZpYTFFbmNGICYmIHZpYTFFbmNEKSB0aGVuIAoJICAgICh2aWExU3BhY2VGRCA9ICh2aWExRW5jRiArIHZpYTFFbmNEICsgbCkpIAoJICAgICh2aWExT2ZmU2V0RkQgPSAodmlhMU1pblNwYWNlIC0gdmlhMVNwYWNlRkQpKSBlbHNlCgkgICAgKHZpYTFPZmZTZXRGRCA9IDAuMCkKCSkKCWlmKCh2aWEyRW5jRiAmJiB2aWEyRW5jRCkgdGhlbiAKCSAgICAodmlhMlNwYWNlRkQgPSAodmlhMkVuY0YgKyB2aWEyRW5jRCArIGwpKSAKCSAgICAodmlhMk9mZlNldEZEID0gKHZpYTJNaW5TcGFjZSAtIHZpYTJTcGFjZUZEKSkgZWxzZQoJICAgICh2aWEyT2ZmU2V0RkQgPSAwLjApCgkpIAoJaWYoKGxheWVyM0VuY0YgJiYgbGF5ZXIzRW5jRCkgdGhlbiAKCSAgICAobGF5ZXIzU3BhY2VGRCA9IChsYXllcjNFbmNGICsgbGF5ZXIzRW5jRCArIGwpKSAKCSAgICAobGF5ZXIzT2ZmU2V0RkQgPSAobGF5ZXIzTWluU3BhY2UgLSBsYXllcjNTcGFjZUZEKSkgZWxzZQoJICAgIChsYXllcjNPZmZTZXRGRCA9IDAuMCkKCSkgCglpZigobGF5ZXIyRW5jRiAmJiBsYXllcjJFbmNEKSB0aGVuIAoJICAgIChsYXllcjJTcGFjZUZEID0gKGxheWVyMkVuY0YgKyBsYXllcjJFbmNEICsgbCkpIAoJICAgIChsYXllcjJPZmZTZXRGRCA9IChsYXllcjJNaW5TcGFjZSAtIGxheWVyMlNwYWNlRkQpKSBlbHNlCgkgICAgKGxheWVyMk9mZlNldEZEID0gMC4wKQoJKSAKCWlmKCh2aWExRW5jTCAmJiB2aWExRW5jUykgdGhlbiAKCSAgICAodmlhMVNwYWNlTFMgPSAodmlhMUVuY0wgKyB2aWExRW5jUyArIGwpKSAKCSAgICAodmlhMU9mZlNldExTID0gKHZpYTFNaW5TcGFjZSAtIHZpYTFTcGFjZUxTKSkgZWxzZQoJICAgICh2aWExT2ZmU2V0TFMgPSAwLjApCgkpIAoJaWYoKHZpYTJFbmNMICYmIHZpYTJFbmNTKSB0aGVuIAoJICAgICh2aWEyU3BhY2VMUyA9ICh2aWEyRW5jTCArIHZpYTJFbmNTICsgbCkpIAoJICAgICh2aWEyT2ZmU2V0TFMgPSAodmlhMk1pblNwYWNlIC0gdmlhMlNwYWNlTFMpKSBlbHNlCgkgICAgKHZpYTJPZmZTZXRMUyA9IDAuMCkKCSkKCWlmKChsYXllcjNFbmNMICYmIGxheWVyM0VuY1MpIHRoZW4gCgkgICAgKGxheWVyM1NwYWNlTFMgPSAobGF5ZXIzRW5jTCArIGxheWVyM0VuY1MgKyBsKSkgCgkgICAgKGxheWVyM09mZlNldExTID0gKGxheWVyM01pblNwYWNlIC0gbGF5ZXIzU3BhY2VMUykpIGVsc2UKCSAgICAobGF5ZXIzT2ZmU2V0TFMgPSAwLjApCgkpIAoJaWYoKGxheWVyMkVuY0wgJiYgbGF5ZXIyRW5jUykgdGhlbiAKCSAgICAobGF5ZXIyU3BhY2VMUyA9IChsYXllcjJFbmNMICsgbGF5ZXIyRW5jUyArIGwpKSAKCSAgICAobGF5ZXIyT2ZmU2V0TFMgPSAobGF5ZXIyTWluU3BhY2UgLSBsYXllcjJTcGFjZUxTKSkgZWxzZQoJICAgIChsYXllcjJPZmZTZXRMUyA9IDAuMCkKCSkgCglpZigodmlhMUVuY0wgJiYgdmlhMUVuY0QpIHRoZW4gCgkgICAgKHZpYTFTcGFjZUxEID0gKHZpYTFFbmNMICsgdmlhMUVuY0QgKyBsKSkgCgkgICAgKHZpYTFPZmZTZXRMRCA9ICh2aWExTWluU3BhY2UgLSB2aWExU3BhY2VMRCkpIGVsc2UKCSAgICAodmlhMU9mZlNldExEID0gMC4wKQoJKSAKCWlmKCh2aWEyRW5jTCAmJiB2aWEyRW5jRCkgdGhlbiAKCSAgICAodmlhMlNwYWNlTEQgPSAodmlhMkVuY0wgKyB2aWEyRW5jRCArIGwpKSAKCSAgICAodmlhMk9mZlNldExEID0gKHZpYTJNaW5TcGFjZSAtIHZpYTJTcGFjZUxEKSkgZWxzZQoJICAgICh2aWEyT2ZmU2V0TEQgPSAwLjApCgkpIAoJaWYoKGxheWVyM0VuY0wgJiYgbGF5ZXIzRW5jRCkgdGhlbiAKCSAgICAobGF5ZXIzU3BhY2VMRCA9IChsYXllcjNFbmNMICsgbGF5ZXIzRW5jRCArIGwpKSAKCSAgICAobGF5ZXIzT2ZmU2V0TEQgPSAobGF5ZXIzTWluU3BhY2UgLSBsYXllcjNTcGFjZUxEKSkgZWxzZQoJICAgIChsYXllcjNPZmZTZXRMRCA9IDAuMCkKCSkKCWlmKChsYXllcjJFbmNMICYmIGxheWVyMkVuY0QpIHRoZW4gCgkgICAgKGxheWVyMlNwYWNlTEQgPSAobGF5ZXIyRW5jTCArIGxheWVyMkVuY0QgKyBsKSkgCgkgICAgKGxheWVyMk9mZlNldExEID0gKGxheWVyMk1pblNwYWNlIC0gbGF5ZXIyU3BhY2VMRCkpIGVsc2UKCSAgICAobGF5ZXIyT2ZmU2V0TEQgPSAwLjApCgkpIAoJaWYoKHZpYTFFbmNTICYmIHZpYTFFbmNEKSB0aGVuIAoJICAgICh2aWExU3BhY2VTRCA9ICh2aWExRW5jUyArIHZpYTFFbmNEICsgbCkpIAoJICAgICh2aWExT2ZmU2V0U0QgPSAodmlhMU1pblNwYWNlIC0gdmlhMVNwYWNlU0QpKSBlbHNlCgkgICAgKHZpYTFPZmZTZXRTRCA9IDAuMCkKCSkgCglpZigodmlhMkVuY1MgJiYgdmlhMkVuY0QpIHRoZW4gCgkgICAgKHZpYTJTcGFjZVNEID0gKHZpYTJFbmNTICsgdmlhMkVuY0QgKyBsKSkgCgkgICAgKHZpYTJPZmZTZXRTRCA9ICh2aWEyTWluU3BhY2UgLSB2aWEyU3BhY2VTRCkpIGVsc2UKCSAgICAodmlhMk9mZlNldFNEID0gMC4wKQoJKSAKCWlmKChsYXllcjNFbmNTICYmIGxheWVyM0VuY0QpIHRoZW4gCgkgICAgKGxheWVyM1NwYWNlU0QgPSAobGF5ZXIzRW5jUyArIGxheWVyM0VuY0QgKyBsKSkgCgkgICAgKGxheWVyM09mZlNldFNEID0gKGxheWVyM01pblNwYWNlIC0gbGF5ZXIzU3BhY2VTRCkpIGVsc2UKCSAgICAobGF5ZXIzT2ZmU2V0U0QgPSAwLjApCgkpIAoJaWYoKGxheWVyMkVuY1MgJiYgbGF5ZXIyRW5jRCkgdGhlbiAKCSAgICAobGF5ZXIyU3BhY2VTRCA9IChsYXllcjJFbmNTICsgbGF5ZXIyRW5jRCArIGwpKSAKCSAgICAobGF5ZXIyT2ZmU2V0U0QgPSAobGF5ZXIyTWluU3BhY2UgLSBsYXllcjJTcGFjZVNEKSkgZWxzZQoJICAgIChsYXllcjJPZmZTZXRTRCA9IDAuMCkKCSkKCWlmKChtID09IDEpIHRoZW4gCgkgICAgKG1heE9mZlNldCA9IG1heCh2aWExT2ZmU2V0RkwgdmlhMk9mZlNldEZMIGxheWVyMk9mZlNldEZMIGxheWVyM09mZlNldEZMIDAuMCkpIGVsc2UgCgkgICAgaWYoKG0gPT0gMikgdGhlbiAKCQlpZihzb3VyY2VGaXJzdCB0aGVuIAoJCSAgICAobWF4T2ZmU2V0ID0gbWF4KHZpYTFPZmZTZXRGRCB2aWEyT2ZmU2V0RkQgbGF5ZXIyT2ZmU2V0RkQgbGF5ZXIzT2ZmU2V0RkQgdmlhMU9mZlNldExECgkJCSAgICB2aWEyT2ZmU2V0TEQgbGF5ZXIyT2ZmU2V0TEQgbGF5ZXIzT2ZmU2V0TEQgMC4wCgkJCSkpIGVsc2UgCgkJICAgIChtYXhPZmZTZXQgPSBtYXgodmlhMU9mZlNldEZTIHZpYTJPZmZTZXRGUyBsYXllcjJPZmZTZXRGUyBsYXllcjNPZmZTZXRGUyB2aWExT2ZmU2V0TFMKCQkJICAgIHZpYTJPZmZTZXRMUyBsYXllcjJPZmZTZXRMUyBsYXllcjNPZmZTZXRMUyAwLjAKCQkJKSkKCQkpIGVsc2UgCgkJaWYoKG1vZChtIDIpID09IDApIHRoZW4gCgkJICAgIGlmKHNvdXJjZUZpcnN0IHRoZW4gCgkJCShtYXhPZmZTZXQgPSBtYXgodmlhMU9mZlNldEZEIHZpYTJPZmZTZXRGRCBsYXllcjJPZmZTZXRGRCBsYXllcjNPZmZTZXRGRCB2aWExT2ZmU2V0U0QKCQkJCXZpYTJPZmZTZXRTRCBsYXllcjJPZmZTZXRTRCBsYXllcjNPZmZTZXRTRCB2aWExT2ZmU2V0TEQgdmlhMk9mZlNldExECgkJCQlsYXllcjJPZmZTZXRMRCBsYXllcjNPZmZTZXRMRCAwLjAKCQkJICAgICkpIGVsc2UgCgkJCShtYXhPZmZTZXQgPSBtYXgodmlhMU9mZlNldEZTIHZpYTJPZmZTZXRGUyBsYXllcjJPZmZTZXRGUyBsYXllcjNPZmZTZXRGUyB2aWExT2ZmU2V0U0QKCQkJCXZpYTJPZmZTZXRTRCBsYXllcjJPZmZTZXRTRCBsYXllcjNPZmZTZXRTRCB2aWExT2ZmU2V0TFMgdmlhMk9mZlNldExTCgkJCQlsYXllcjJPZmZTZXRMUyBsYXllcjNPZmZTZXRMUyAwLjAKCQkJICAgICkpCgkJICAgICkgZWxzZSAKCQkgICAgaWYoc291cmNlRmlyc3QgdGhlbiAKCQkJKG1heE9mZlNldCA9IG1heCh2aWExT2ZmU2V0RkQgdmlhMk9mZlNldEZEIGxheWVyMk9mZlNldEZEIGxheWVyM09mZlNldEZEIHZpYTFPZmZTZXRTRAoJCQkJdmlhMk9mZlNldFNEIGxheWVyMk9mZlNldFNEIGxheWVyM09mZlNldFNEIHZpYTFPZmZTZXRMUyB2aWEyT2ZmU2V0TFMKCQkJCWxheWVyMk9mZlNldExTIGxheWVyM09mZlNldExTIDAuMAoJCQkgICAgKSkgZWxzZSAKCQkJKG1heE9mZlNldCA9IG1heCh2aWExT2ZmU2V0RlMgdmlhMk9mZlNldEZTIGxheWVyMk9mZlNldEZTIGxheWVyM09mZlNldEZTIHZpYTFPZmZTZXRTRAoJCQkJdmlhMk9mZlNldFNEIGxheWVyMk9mZlNldFNEIGxheWVyM09mZlNldFNEIHZpYTFPZmZTZXRMRCB2aWEyT2ZmU2V0TEQKCQkJCWxheWVyMk9mZlNldExEIGxheWVyM09mZlNldExEIDAuMAoJCQkgICAgKSkKCQkgICAgKQoJCSkKCSAgICApCgkpIAoJKG9mZnNldFNpZGUgPSAobWF4T2ZmU2V0IC8gMi4wKSkgCgkobWluU3BhY2VPZmZTZXQgPSAoKGNlaWxpbmcgCgkJICAgICgob2Zmc2V0U2lkZSAvIHNuYXBHcmlkKSArIC0xZS0wNikKCQkpICogc25hcEdyaWQpKSAKCXdoZW4oKGxpc3RwKGlkTGF5ZXIpICYmIChjYWRyKGlkTGF5ZXIpID09ICJodiIpICYmIChodlBZTWNvblNwYWNlID4gMC4wKSkgCgkgICAgKG1pblNwYWNlT2ZmU2V0ID0gKG1pblNwYWNlT2ZmU2V0ICsgaHZQWU1jb25TcGFjZSkpCgkpIAoJaWYoKGJja0NvbXBhdGlibGVPZmZTZXQgJiYgKChzcmNPZmZzZXQgIT0gMC4wKSB8fCAoZHJuT2Zmc2V0ICE9IDAuMCkpKSB0aGVuIAoJICAgIChtaW5TcGFjZU9mZlNldCA9IDAuMCkKCSkKCWlmKGltcGxhbnQgdGhlbiAKCSAgICAoY29udGFjdEltcFBhcmFtID0gbGlzdCgiaW1wbGFudCIgImJvb2xlYW4iIHQpKSBlbHNlIAoJICAgIChjb250YWN0SW1wUGFyYW0gPSBsaXN0KCJpbXBsYW50IiAiYm9vbGVhbiIgIkZBTFNFIikpCgkpIAoJaWYod2VsbExheWVyIHRoZW4gCgkgICAgKGNvbnRhY3RXZWxsUGFyYW0gPSBsaXN0KCJpbldlbGwiICJib29sZWFuIiB0KSkgZWxzZSAKCSAgICAoY29udGFjdFdlbGxQYXJhbSA9IGxpc3QoImluV2VsbCIgImJvb2xlYW4iICJGQUxTRSIpKQoJKSAKCXdoZW4oZGlmZkltcENob2ljZXMgCgkgICAgKGRpZmZJbXBDaG9pY2VQYXJhbSA9IGxpc3QoImRpZmZJbXBDaG9pY2UiICJmaXhudW0iIGRpZmZNYXRjaCkpCgkpIAoJd2hlbih0YXBJbXBDaG9pY2VzIAoJICAgICh0YXBJbXBDaG9pY2VQYXJhbSA9IGxpc3QoInRhcEltcENob2ljZSIgImZpeG51bSIgdGFwTWF0Y2gpKQoJKSAKCSh4MUNvb3JkID0gMC4wKQoJKHkxQ29vcmQgPSAwLjApIAoJKGxhc3RYMUNvb3JkID0gKC0gKDIuMCAqIChkZXBYRW5jICsgZGVwU3BhY2UpKSkpIAoJd2hlbihkZXBMYXllciAKCSAgICAoeTFEZXBDb29yZCA9ICh5MUNvb3JkIC0gZGVwWUVuYykpIAoJICAgICh5MkRlcENvb3JkID0gKHkxQ29vcmQgKyB3ICsgZGVwWUVuYykpCgkpIAoJKGxhc3RQWWlYMUNvb3JkID0gKC0gKDIuMCAqIHBvbHlJbXBYRW5jKSkpIAoJd2hlbihwb2x5SW1wbGFudCAKCSAgICAoeTFQWWlDb29yZCA9ICh5MUNvb3JkIC0gcG9seUltcFlFbmMgLSBnYXRlRXh0KSkgCgkgICAgKHkyUFlpQ29vcmQgPSAoeTFDb29yZCArIHcgKyBwb2x5SW1wWUVuYyArIGdhdGVFeHQpKQoJKQoJaWYoKGlkTGF5ZXIgJiYgbGlzdHAoaWRMYXllcikgJiYgKGNhZHIoaWRMYXllcikgPT0gImh2IikgJiYgKHdlbGxFbmNIdkxheWVyID4gMC4wKSkgdGhlbiAKCSAgICAod2VsbEVuY0RpZmZZID0gKGlkRW5jWSArIHdlbGxFbmNIdkxheWVyKSkgCgkgICAgKHdlbGxFbmNUYXBZID0gKGlkRW5jWSArIHdlbGxFbmNIdkxheWVyKSkgCgkgICAgKHdlbGxFbmNEaWZmWCA9IChtYXgoaWRFbmNYTCBpZEVuY1hSKSArIHdlbGxFbmNIdkxheWVyKSkKCSAgICAod2VsbEVuY1RhcFggPSAobWF4KGlkRW5jWEwgaWRFbmNYUikgKyB3ZWxsRW5jSHZMYXllcikpIGVsc2UgCgkgICAgKHdlbGxFbmNEaWZmWSA9IHdlbGxFbmNEaWZmKSAKCSAgICAod2VsbEVuY1RhcFkgPSB3ZWxsRW5jVGFwKSAKCSAgICAod2VsbEVuY0RpZmZYID0gd2VsbEVuY0RpZmYpCgkgICAgKHdlbGxFbmNUYXBYID0gd2VsbEVuY1RhcCkKCSkgCgl3aGVuKChmaXJzdENvbnRhY3QgIT0gIiIpIAoJICAgIChjb250YWN0SWQgPSAoZGJPcGVuQ2VsbFZpZXcgCgkJICAgICh0Y0NlbGxWaWV3fj5saWIpIGZpcnN0Q29udGFjdCAic3ltYm9saWMiIG5pbAoJCSAgICAicm4iCgkJKSkgCgkgICAgdW5sZXNzKGNvbnRhY3RJZCAKCQllcnJvcihzcHJpbnRmKG5pbCAiQ2Fubm90IGZpbmQvb3BlbiBmaXJzdENvbnRhY3QgY29udGFjdCBjZWxsIGAlcyciIGZpcnN0Q29udGFjdCkpCgkgICAgKSAKCSAgICB1bmxlc3MoKGNvbnRhY3RJZH4+aXNQYXJhbUNlbGwpIAoJCWVycm9yKHNwcmludGYobmlsICJOYW1lZCBjZWxsIGlzIG5vdCBhIHBjZWxsIGAlcyciIGZpcnN0Q29udGFjdCkpCgkgICAgKSAKCSAgICBpZigoY05ldCA9PSBzTmV0KSB0aGVuIAoJCShvZmZzZXQgPSAobWluU3BhY2VPZmZTZXQgKyBzcmNPZmZzZXQpKSBlbHNlIAoJCShvZmZzZXQgPSAobWluU3BhY2VPZmZTZXQgKyBkcm5PZmZzZXQpKQoJICAgICkKCSAgICAocGFyYW1zID0gKGNvbnRhY3RJZH4+cGFyYW1ldGVycykpIAoJICAgIChpbnN0UGFyYW1zID0gbGlzdChsaXN0KCJ3IiAiZmxvYXQiIHcpKSkgCgkgICAgd2hlbigocGFyYW1zfj5pbXBsYW50KSAKCQkoaW5zdFBhcmFtcyA9IHhjb25zKGluc3RQYXJhbXMgY29udGFjdEltcFBhcmFtKSkKCSAgICApIAoJICAgIHdoZW4oKHBhcmFtc34+aW5XZWxsKSAKCQkoaW5zdFBhcmFtcyA9IHhjb25zKGluc3RQYXJhbXMgY29udGFjdFdlbGxQYXJhbSkpCgkgICAgKSAKCSAgICB3aGVuKChkaWZmSW1wQ2hvaWNlcyAmJiAocGFyYW1zfj5kaWZmSW1wQ2hvaWNlKSkgCgkJKGluc3RQYXJhbXMgPSB4Y29ucyhpbnN0UGFyYW1zIGRpZmZJbXBDaG9pY2VQYXJhbSkpCgkgICAgKQoJICAgIHdoZW4oKHRhcEltcENob2ljZXMgJiYgKHBhcmFtc34+dGFwSW1wQ2hvaWNlKSkgCgkJKGluc3RQYXJhbXMgPSB4Y29ucyhpbnN0UGFyYW1zIHRhcEltcENob2ljZVBhcmFtKSkKCSAgICApIAoJICAgIHdoZW4oKGNvbnRhY3RDaG9pY2VzICYmIChwYXJhbXN+Pm5vRGlmZkNvbnRhY3QpKSAKCQkoaW5zdFBhcmFtcyA9IHhjb25zKGluc3RQYXJhbXMgZGlmZkNvblBhcmFtKSkKCSAgICApIAoJICAgIChpbnN0ID0gKGRiQ3JlYXRlUGFyYW1JbnN0IHRjQ2VsbFZpZXcgY29udGFjdElkICJjMCIgCgkJICAgICgoLSBvZmZzZXQpOjApCgkJICAgICJNWSIgMSBpbnN0UGFyYW1zCgkJKSkgCgkgICAgdW5sZXNzKGluc3QgCgkJZXJyb3Ioc3ByaW50ZihuaWwgIkZhaWxlZCB0byBjcmVhdGUgaW5zdGFuY2Ugb2YgYCVzJyIgZmlyc3RDb250YWN0KSkKCSAgICApIAoJICAgIHdoZW4oKG9mZnNldCA+IDFlLTA2KSAKCQkoZGJDcmVhdGVSZWN0IHRjQ2VsbFZpZXcgZGlmZkxheWVyIAoJCSAgICBsaXN0KCgoeDFDb29yZCAtIG9mZnNldCk6eTFDb29yZCkgCgkJCSh4MUNvb3JkOncpCgkJICAgICkKCQkpIAoJCXdoZW4oKGRpZmZJbXBsYW50ICYmIGltcGxhbnQpIAoJCSAgICAoZGJDcmVhdGVSZWN0IHRjQ2VsbFZpZXcgZGlmZkltcGxhbnQgCgkJCWxpc3QobGlzdCgoeDFDb29yZCAtIG9mZnNldCkgCgkJCQkoeTFDb29yZCAtIGRpZmZJbXBFbmMpCgkJCSAgICApIAoJCQkgICAgbGlzdCh4MUNvb3JkIAoJCQkJKHcgKyBkaWZmSW1wRW5jKQoJCQkgICAgKQoJCQkpCgkJICAgICkKCQkpIAoJCXdoZW4oKGRpZmZDb3JlSW1wbGFudCAmJiBpbXBsYW50KSAKCQkgICAgKGRiQ3JlYXRlUmVjdCB0Y0NlbGxWaWV3IGRpZmZDb3JlSW1wbGFudCAKCQkJbGlzdChsaXN0KCh4MUNvb3JkIC0gb2Zmc2V0KSAKCQkJCSh5MUNvb3JkIC0gZGlmZkNvcmVJbXBFbmMpCgkJCSAgICApIAoJCQkgICAgbGlzdCh4MUNvb3JkIAoJCQkJKHcgKyBkaWZmQ29yZUltcEVuYykKCQkJICAgICkKCQkJKQoJCSAgICApCgkJKQoJICAgICkKCSAgICAobWFzdGVyID0gKGluc3R+Pm1hc3RlcikpIAoJICAgIHVubGVzcygoKG1hc3Rlcn4+dG9wTGF5ZXIpICYmIChtYXN0ZXJ+PnRvcExheWVyUGluQmJveCkpIAoJCWVycm9yKHNwcmludGYobmlsICJNaXNzaW5nIHRvcExheWVyIGFuZC9vciB0b3BMYXllclBpbkJib3ggY2VsbCBwcm9wZXJ0aWVzIGluIGAlcyciIGZpcnN0Q29udGFjdCkpCgkgICAgKSAKCSAgICAoYkJveCA9IGxpc3QobGlzdCgoLSAob2Zmc2V0ICsgY2FhcigobWFzdGVyfj50b3BMYXllclBpbkJib3gpKSkpIAoJCQljYWRhcigobWFzdGVyfj50b3BMYXllclBpbkJib3gpKQoJCSAgICApIAoJCSAgICBsaXN0KCgtIChvZmZzZXQgKyBjYWFkcigobWFzdGVyfj50b3BMYXllclBpbkJib3gpKSkpIAoJCQljYWRhZHIoKG1hc3Rlcn4+dG9wTGF5ZXJQaW5CYm94KSkKCQkgICAgKQoJCSkpIAoJICAgIChkYmlkID0gKGRiQ3JlYXRlUmVjdCB0Y0NlbGxWaWV3IAoJCSAgICAobWFzdGVyfj50b3BMYXllcikgYkJveAoJCSkpIAoJICAgIChwaW5pZCA9IChkYkNyZWF0ZVBpbiBjTmV0IGRiaWQpKQoJICAgIHNldFNHcShwaW5pZCAKCQlsaXN0KCJ0b3AiICJib3R0b20iICJsZWZ0IikgYWNjZXNzRGlyCgkgICAgKSAKCSAgICB3aGVuKGxhYmVsTGF5ZXIgCgkJKGRiQ3JlYXRlTGFiZWwgdGNDZWxsVmlldyBsYWJlbExheWVyIAoJCSAgICBsaXN0KChjYWFyKGJCb3gpICsgKChjYWFkcihiQm94KSAtIGNhYXIoYkJveCkpIC8gMi4wKSkgCgkJCShjYWRhcihiQm94KSArICgoY2FkYWRyKGJCb3gpIC0gY2FkYXIoYkJveCkpIC8gMi4wKSkKCQkgICAgKSBuZXRMCgkJICAgICJjZW50ZXJDZW50ZXIiICJSMCIgInJvbWFuIiBsYWJlbFdpZHRoCgkJKQoJICAgICkgCgkgICAgd2hlbigod2VsbExheWVyIHx8IGlkTGF5ZXIgfHwgaHZMYXllcikgCgkJdW5sZXNzKChtYXN0ZXJ+PmRpZmZMYXllckJib3gpIAoJCSAgICBlcnJvcihzcHJpbnRmKG5pbCAiQ2Fubm90IGZpbmQgZGlmZkxheWVyQmJveCBwcm9wZXJ0eSBmb3IgYCVzJyIgZmlyc3RDb250YWN0KSkKCQkpIAoJCSh4MURpZmZDb29yZCA9IGNhYWRyKChtYXN0ZXJ+PmRpZmZMYXllckJib3gpKSkgCgkJKHgxVGFwQ29vcmQgPSBpZigobWFzdGVyfj50YXBMYXllckJib3gpIAoJCQlhYnMoY2FhZHIoKG1hc3Rlcn4+dGFwTGF5ZXJCYm94KSkpIDAuMAoJCSAgICApKSAKCQkoeTJEaWZmQ29vcmQgPSBjYWRhZHIoKG1hc3Rlcn4+ZGlmZkxheWVyQmJveCkpKQoJCSh5MlRhcENvb3JkID0gaWYoKG1hc3Rlcn4+dGFwTGF5ZXJCYm94KSAKCQkJYWJzKGNhZGFkcigobWFzdGVyfj50YXBMYXllckJib3gpKSkgMC4wCgkJICAgICkpIAoJCSh5MURpZmZDb29yZCA9IGNhZGFyKChtYXN0ZXJ+PmRpZmZMYXllckJib3gpKSkgCgkJKHkxVGFwQ29vcmQgPSBpZigobWFzdGVyfj50YXBMYXllckJib3gpIAoJCQlhYnMoY2FkYXIoKG1hc3Rlcn4+dGFwTGF5ZXJCYm94KSkpIDAuMAoJCSAgICApKSAKCQl3aGVuKHdlbGxMYXllciAKCQkgICAgKHgxV2VsbENvb3JkID0gKC0gKG9mZnNldCArIG1heCgod2VsbEVuY0RpZmZYICsgeDFEaWZmQ29vcmQpIAoJCQkJICAgICh3ZWxsRW5jVGFwWCArIHgxVGFwQ29vcmQpCgkJCQkpKSkpIAoJCSAgICAoeTFXZWxsQ29vcmQgPSAoLSBtYXgoKHdlbGxFbmNEaWZmWSArIHkxRGlmZkNvb3JkKSAKCQkJCSh3ZWxsRW5jVGFwWSArIHkxVGFwQ29vcmQpCgkJCSAgICApKSkgCgkJICAgICh5MldlbGxDb29yZCA9IG1heCgod2VsbEVuY0RpZmZZICsgeTJEaWZmQ29vcmQpIAoJCQkgICAgKHdlbGxFbmNUYXBZICsgeTJUYXBDb29yZCkKCQkJKSkKCQkpIAoJCXdoZW4oaHZMYXllciAKCQkgICAgKHgxSFZMYXllckNvb3JkID0gKC0gKG9mZnNldCArIG1heCgoaHZFbmNsb3N1cmUgKyB4MURpZmZDb29yZCkgCgkJCQkgICAgKGh2RW5jbG9zdXJlICsgeDFUYXBDb29yZCkKCQkJCSkpKSkgCgkJICAgICh5MUhWTGF5ZXJDb29yZCA9ICgtIG1heCgoaHZFbmNsb3N1cmUgKyB5MURpZmZDb29yZCkgCgkJCQkoaHZFbmNsb3N1cmUgKyB5MVRhcENvb3JkKQoJCQkgICAgKSkpIAoJCSAgICAoeTJIVkxheWVyQ29vcmQgPSBtYXgoKGh2RW5jbG9zdXJlICsgeTJEaWZmQ29vcmQpIAoJCQkgICAgKGh2RW5jbG9zdXJlICsgeTJUYXBDb29yZCkKCQkJKSkKCQkpCgkJd2hlbihpZExheWVyIAoJCSAgICBpZihpZEVuY0RpZmYgdGhlbiAKCQkJKHgxSWRDb29yZCA9ICgtIChvZmZzZXQgKyBtYXgoKGlkRW5jWEwgKyB4MURpZmZDb29yZCkgCgkJCQkJKGlkRW5jWEwgKyB4MVRhcENvb3JkKQoJCQkJICAgICkpKSkgCgkJCSh5MUlkQ29vcmQgPSAoLSBtYXgoKGlkRW5jWSArIHkxRGlmZkNvb3JkKSAKCQkJCSAgICAoaWRFbmNZICsgeTFUYXBDb29yZCkKCQkJCSkpKSAKCQkJKHkySWRDb29yZCA9IG1heCgoaWRFbmNZICsgeTJEaWZmQ29vcmQpIAoJCQkJKGlkRW5jWSArIHkyVGFwQ29vcmQpCgkJCSAgICApKQoJCQllbHNlIAoJCQkoeDFJZENvb3JkID0gKC0gKG9mZnNldCArIGlkRW5jWEwpKSkgCgkJCSh5MUlkQ29vcmQgPSAoLSBpZEVuY1kpKSAKCQkJKHkySWRDb29yZCA9IGlkRW5jWSkKCQkgICAgKQoJCSkKCSAgICApIAoJICAgIChkYkNsb3NlIGNvbnRhY3RJZCkKCSkgCgkoZGJpZCA9IChkYkNyZWF0ZVJlY3QgdGNDZWxsVmlldyBkaWZmTGF5ZXIgCgkJbGlzdCgoKHgxQ29vcmQgLSBkaWZmRXh0KTp5MUNvb3JkKSAKCQkgICAgKHgxQ29vcmQ6dykKCQkpCgkgICAgKSkgCgkocGluaWQgPSAoZGJDcmVhdGVQaW4gY05ldCBkYmlkKSkgCglzZXRTR3EocGluaWQgCgkgICAgbGlzdCgidG9wIiAiYm90dG9tIiAibGVmdCIpIGFjY2Vzc0RpcgoJKQoJd2hlbigoZGlmZkltcGxhbnQgJiYgaW1wbGFudCkgCgkgICAgKGRiQ3JlYXRlUmVjdCB0Y0NlbGxWaWV3IGRpZmZJbXBsYW50IAoJCWxpc3QobGlzdCgoeDFDb29yZCAtIGRpZmZFeHQpIAoJCQkoeTFDb29yZCAtIGRpZmZJbXBFbmMpCgkJICAgICkgCgkJICAgIGxpc3QoeDFDb29yZCAKCQkJKHcgKyBkaWZmSW1wRW5jKQoJCSAgICApCgkJKQoJICAgICkKCSkgCgl3aGVuKChkaWZmQ29yZUltcGxhbnQgJiYgaW1wbGFudCkgCgkgICAgKGRiQ3JlYXRlUmVjdCB0Y0NlbGxWaWV3IGRpZmZDb3JlSW1wbGFudCAKCQlsaXN0KGxpc3QoKHgxQ29vcmQgLSBkaWZmRXh0KSAKCQkJKHkxQ29vcmQgLSBkaWZmQ29yZUltcEVuYykKCQkgICAgKSAKCQkgICAgbGlzdCh4MUNvb3JkIAoJCQkodyArIGRpZmZDb3JlSW1wRW5jKQoJCSAgICApCgkJKQoJICAgICkKCSkgCgl3aGVuKChmaXJzdENvbnRhY3QgPT0gIiIpIAoJICAgIHdoZW4obGFiZWxMYXllciAKCQkoZGJDcmVhdGVMYWJlbCB0Y0NlbGxWaWV3IGxhYmVsTGF5ZXIgCgkJICAgIGxpc3QoKC0gKHgxQ29vcmQgKyAoZGlmZkV4dCAvIDIuMCkpKSAKCQkJKHkxQ29vcmQgKyAodyAvIDIuMCkpCgkJICAgICkgbmV0TAoJCSAgICAiY2VudGVyQ2VudGVyIiAiUjAiICJyb21hbiIgbGFiZWxXaWR0aAoJCSkKCSAgICApIAoJICAgIHdoZW4od2VsbExheWVyIAoJCSh4MVdlbGxDb29yZCA9ICgtICh4MUNvb3JkICsgZGlmZkV4dCArIHdlbGxFbmNEaWZmWCkpKSAKCQkoeTFXZWxsQ29vcmQgPSAoLSAoeTFDb29yZCArIHdlbGxFbmNEaWZmWSkpKSAKCQkoeTJXZWxsQ29vcmQgPSAoeTFDb29yZCArIHcgKyB3ZWxsRW5jRGlmZlkpKQoJICAgICkgCgkgICAgd2hlbihodkxheWVyIAoJCSh4MUhWTGF5ZXJDb29yZCA9ICgtICh4MUNvb3JkICsgZGlmZkV4dCArIGh2RW5jbG9zdXJlKSkpIAoJCSh5MUhWTGF5ZXJDb29yZCA9ICgtICh5MUNvb3JkICsgaHZFbmNsb3N1cmUpKSkgCgkJKHkySFZMYXllckNvb3JkID0gKHkxQ29vcmQgKyB3ICsgaHZFbmNsb3N1cmUpKQoJICAgICkgCgkgICAgd2hlbihpZExheWVyIAoJCWlmKGlkRW5jRGlmZiB0aGVuIAoJCSAgICAoeDFJZENvb3JkID0gKC0gKHgxQ29vcmQgKyBkaWZmRXh0ICsgaWRFbmNYTCkpKSAKCQkgICAgKHkxSWRDb29yZCA9ICgtICh5MUNvb3JkICsgaWRFbmNZKSkpIAoJCSAgICAoeTJJZENvb3JkID0gKHkxQ29vcmQgKyB3ICsgaWRFbmNZKSkKCQkgICAgZWxzZSAKCQkgICAgKHgxSWRDb29yZCA9ICgtIGlkRW5jWEwpKSAKCQkgICAgKHkxSWRDb29yZCA9ICgtIGlkRW5jWSkpIAoJCSAgICAoeTJJZENvb3JkID0gKHkxQ29vcmQgKyB3ICsgaWRFbmNZKSkKCQkpCgkgICAgKQoJICAgIHdoZW4oKGRpZmZJbXBsYW50ICYmIGltcGxhbnQgJiYgbm9FbmRDb25JbXBFbmMpIAoJCShkYkNyZWF0ZVJlY3QgdGNDZWxsVmlldyBkaWZmSW1wbGFudCAKCQkgICAgbGlzdChsaXN0KCh4MUNvb3JkIC0gZGlmZkV4dCAtIGRpZmZJbXBFbmMpIAoJCQkgICAgKHkxQ29vcmQgLSBkaWZmSW1wRW5jKQoJCQkpIAoJCQlsaXN0KHgxQ29vcmQgCgkJCSAgICAodyArIGRpZmZJbXBFbmMpCgkJCSkKCQkgICAgKQoJCSkKCSAgICApIAoJICAgIHdoZW4oKGRpZmZDb3JlSW1wbGFudCAmJiBpbXBsYW50ICYmIG5vRW5kQ29uSW1wRW5jKSAKCQkoZGJDcmVhdGVSZWN0IHRjQ2VsbFZpZXcgZGlmZkNvcmVJbXBsYW50IAoJCSAgICBsaXN0KGxpc3QoKHgxQ29vcmQgLSBkaWZmRXh0IC0gZGlmZkNvcmVJbXBFbmMpIAoJCQkgICAgKHkxQ29vcmQgLSBkaWZmQ29yZUltcEVuYykKCQkJKSAKCQkJbGlzdCh4MUNvb3JkIAoJCQkgICAgKHcgKyBkaWZmQ29yZUltcEVuYykKCQkJKQoJCSAgICApCgkJKQoJICAgICkKCSkgCgl3aGVuKChtID4gMSkgCgkgICAgd2hlbigoc2hhcmVkU291cmNlID09ICIiKSAKCQllcnJvcigiTWlzc2luZyBzaGFyZWQgc291cmNlIGNvbnRhY3QgbmFtZSBwcm9wZXJ0eSIpCgkgICAgKSAKCSAgICAoc2hhcmVkU3JjSWQgPSAoZGJPcGVuQ2VsbFZpZXcgCgkJICAgICh0Y0NlbGxWaWV3fj5saWIpIHNoYXJlZFNvdXJjZSAic3ltYm9saWMiIG5pbAoJCSAgICAicm4iCgkJKSkgCgkgICAgdW5sZXNzKHNoYXJlZFNyY0lkIAoJCWVycm9yKHNwcmludGYobmlsICJDYW5ub3QgZmluZC9vcGVuIHNoYXJlZCBzb3VyY2UgY29udGFjdCBjZWxsIGAlcyciIHNoYXJlZFNvdXJjZSkpCgkgICAgKSAKCSAgICB1bmxlc3MoKHNoYXJlZFNyY0lkfj5pc1BhcmFtQ2VsbCkgCgkJZXJyb3Ioc3ByaW50ZihuaWwgIk5hbWVkIGNlbGwgaXMgbm90IGEgcGNlbGwgYCVzJyIgc2hhcmVkU291cmNlKSkKCSAgICApCgkgICAgd2hlbigoc2hhcmVkRHJhaW4gPT0gIiIpIAoJCWVycm9yKCJNaXNzaW5nIHNoYXJlZCBkcmFpbiBjb250YWN0IG5hbWUgcHJvcGVydHkiKQoJICAgICkgCgkgICAgKHNoYXJlZERybklkID0gKGRiT3BlbkNlbGxWaWV3IAoJCSAgICAodGNDZWxsVmlld34+bGliKSBzaGFyZWREcmFpbiAic3ltYm9saWMiIG5pbAoJCSAgICAicm4iCgkJKSkgCgkgICAgdW5sZXNzKHNoYXJlZERybklkIAoJCWVycm9yKHNwcmludGYobmlsICJDYW5ub3QgZmluZC9vcGVuIHNoYXJlZCBkcmFpbiBjb250YWN0IGNlbGwgYCVzJyIgc2hhcmVkRHJhaW4pKQoJICAgICkgCgkgICAgdW5sZXNzKChzaGFyZWREcm5JZH4+aXNQYXJhbUNlbGwpIAoJCWVycm9yKHNwcmludGYobmlsICJOYW1lZCBjZWxsIGlzIG5vdCBhIHBjZWxsIGAlcyciIHNoYXJlZERyYWluKSkKCSAgICApCgkpIAoJKGNOZXQgPSBpZigoY05ldCA9PSBzTmV0KSBkTmV0IHNOZXQpKQoJKG5ldEwgPSBpZigobmV0TCA9PSAiUyIpICJEIiAiUyIpKSAKCWZvcihuIDEgbSAKCSAgICAoZGJpZCA9IChkYkNyZWF0ZVJlY3QgdGNDZWxsVmlldyBnYXRlTGF5ZXIgCgkJICAgIGxpc3QoKHgxQ29vcmQ6KHkxQ29vcmQgLSBnYXRlRXh0KSkgCgkJCSgoeDFDb29yZCArIGwpOih5MUNvb3JkICsgdyArIGdhdGVFeHQpKQoJCSAgICApCgkJKSkgCgkgICAgKGRiQWRkRmlnVG9OZXQgZGJpZCBnTmV0KQoJICAgIChkYmlkID0gKGRiQ3JlYXRlUmVjdCB0Y0NlbGxWaWV3IGdhdGVMYXllciAKCQkgICAgbGlzdCgoeDFDb29yZDooeTFDb29yZCArIHcpKSAKCQkJKCh4MUNvb3JkICsgbCk6KHkxQ29vcmQgKyB3ICsgZ2F0ZUV4dCkpCgkJICAgICkKCQkpKSAKCSAgICAocGluaWQgPSAoZGJDcmVhdGVQaW4gZ05ldCBkYmlkKSkgCgkgICAgc2V0U0dxKHBpbmlkIAoJCWxpc3QoInRvcCIpIGFjY2Vzc0RpcgoJICAgICkgCgkgICAgKGRiaWQgPSAoZGJDcmVhdGVSZWN0IHRjQ2VsbFZpZXcgZ2F0ZUxheWVyIAoJCSAgICBsaXN0KCh4MUNvb3JkOih5MUNvb3JkIC0gZ2F0ZUV4dCkpIAoJCQkoKHgxQ29vcmQgKyBsKTp5MUNvb3JkKQoJCSAgICApCgkJKSkgCgkgICAgKHBpbmlkID0gKGRiQ3JlYXRlUGluIGdOZXQgZGJpZCkpCgkgICAgc2V0U0dxKHBpbmlkIAoJCWxpc3QoImJvdHRvbSIpIGFjY2Vzc0RpcgoJICAgICkgCgkgICAgKGRiQ3JlYXRlUmVjdCB0Y0NlbGxWaWV3IGRpZmZMYXllciAKCQlsaXN0KCh4MUNvb3JkOnkxQ29vcmQpIAoJCSAgICAoKHgxQ29vcmQgKyBsKTooeTFDb29yZCArIHcpKQoJCSkKCSAgICApIAoJICAgIHdoZW4oKGRpZmZJbXBsYW50ICYmIGltcGxhbnQpIAoJCShkYkNyZWF0ZVJlY3QgdGNDZWxsVmlldyBkaWZmSW1wbGFudCAKCQkgICAgbGlzdChsaXN0KHgxQ29vcmQgCgkJCSAgICAoeTFDb29yZCAtIGRpZmZJbXBFbmMpCgkJCSkgCgkJCWxpc3QoKHgxQ29vcmQgKyBsKSAKCQkJICAgICh5MUNvb3JkICsgdyArIGRpZmZJbXBFbmMpCgkJCSkKCQkgICAgKQoJCSkKCSAgICApIAoJICAgIHdoZW4oKGRpZmZDb3JlSW1wbGFudCAmJiBpbXBsYW50KSAKCQkoZGJDcmVhdGVSZWN0IHRjQ2VsbFZpZXcgZGlmZkNvcmVJbXBsYW50IAoJCSAgICBsaXN0KGxpc3QoeDFDb29yZCAKCQkJICAgICh5MUNvb3JkIC0gZGlmZkNvcmVJbXBFbmMpCgkJCSkgCgkJCWxpc3QoKHgxQ29vcmQgKyBsKSAKCQkJICAgICh5MUNvb3JkICsgdyArIGRpZmZDb3JlSW1wRW5jKQoJCQkpCgkJICAgICkKCQkpCgkgICAgKSAKCSAgICB3aGVuKGRlcExheWVyIAoJCWNvbmQoKCgoeDFDb29yZCAtIGxhc3RYMUNvb3JkIC0gKDIuMCAqIGRlcFhFbmMpKSA8IGRlcFNwYWNlKSAKCQkJKHgxRGVwQ29vcmQgPSAobGFzdFgxQ29vcmQgKyBkZXBYRW5jKSkKCQkgICAgKSAKCQkgICAgKHQgCgkJCSh4MURlcENvb3JkID0gKHgxQ29vcmQgLSBkZXBYRW5jKSkKCQkgICAgKQoJCSkgCgkJKGRiQ3JlYXRlUmVjdCB0Y0NlbGxWaWV3IGRlcExheWVyIAoJCSAgICBsaXN0KCh4MURlcENvb3JkOnkxRGVwQ29vcmQpIAoJCQkoKHgxQ29vcmQgKyBsICsgZGVwWEVuYyk6eTJEZXBDb29yZCkKCQkgICAgKQoJCSkKCSAgICApCgkgICAgd2hlbigocG9seUltcGxhbnQgJiYgaW1wbGFudCkgCgkJKHgxUFlpQ29vcmQgPSAoeDFDb29yZCAtIHBvbHlJbXBYRW5jKSkgCgkJKGRiQ3JlYXRlUmVjdCB0Y0NlbGxWaWV3IHBvbHlJbXBsYW50IAoJCSAgICBsaXN0KCh4MVBZaUNvb3JkOnkxUFlpQ29vcmQpIAoJCQkoKHgxQ29vcmQgKyBsICsgcG9seUltcFhFbmMpOnkyUFlpQ29vcmQpCgkJICAgICkKCQkpCgkgICAgKSAKCSAgICAoeDFDb29yZCA9ICh4MUNvb3JkICsgbCkpIAoJICAgIHdoZW4oKG4gIT0gbSkgCgkJaWYoKGNOZXQgPT0gc05ldCkgdGhlbiAKCQkgICAgKGNvbnRhY3RJZCA9IHNoYXJlZFNyY0lkKSAKCQkgICAgKG9mZnNldCA9IChtaW5TcGFjZU9mZlNldCArIHNyY09mZnNldCkpIGVsc2UKCQkgICAgKGNvbnRhY3RJZCA9IHNoYXJlZERybklkKSAKCQkgICAgKG9mZnNldCA9IChtaW5TcGFjZU9mZlNldCArIGRybk9mZnNldCkpCgkJKSAKCQkocGFyYW1zID0gKGNvbnRhY3RJZH4+cGFyYW1ldGVycykpIAoJCShpbnN0UGFyYW1zID0gbGlzdChsaXN0KCJ3IiAiZmxvYXQiIHcpKSkgCgkJd2hlbigocGFyYW1zfj5pbXBsYW50KSAKCQkgICAgKGluc3RQYXJhbXMgPSB4Y29ucyhpbnN0UGFyYW1zIGNvbnRhY3RJbXBQYXJhbSkpCgkJKQoJCXdoZW4oKHBhcmFtc34+aW5XZWxsKSAKCQkgICAgKGluc3RQYXJhbXMgPSB4Y29ucyhpbnN0UGFyYW1zIGNvbnRhY3RXZWxsUGFyYW0pKQoJCSkgCgkJd2hlbigoZGlmZkltcENob2ljZXMgJiYgKHBhcmFtc34+ZGlmZkltcENob2ljZSkpIAoJCSAgICAoaW5zdFBhcmFtcyA9IHhjb25zKGluc3RQYXJhbXMgZGlmZkltcENob2ljZVBhcmFtKSkKCQkpIAoJCXdoZW4oKHRhcEltcENob2ljZXMgJiYgKHBhcmFtc34+dGFwSW1wQ2hvaWNlKSkgCgkJICAgIChpbnN0UGFyYW1zID0geGNvbnMoaW5zdFBhcmFtcyB0YXBJbXBDaG9pY2VQYXJhbSkpCgkJKSAKCQl3aGVuKChjb250YWN0Q2hvaWNlcyAmJiAocGFyYW1zfj5ub0RpZmZDb250YWN0KSkgCgkJICAgIChpbnN0UGFyYW1zID0geGNvbnMoaW5zdFBhcmFtcyBkaWZmQ29uUGFyYW0pKQoJCSkgCgkJKGluc3QgPSAoZGJDcmVhdGVQYXJhbUluc3QgdGNDZWxsVmlldyBjb250YWN0SWQgCgkJCXNwcmludGYobmlsICJjJWQiIG4pIAoJCQkoKG9mZnNldCArIHgxQ29vcmQpOnkxQ29vcmQpCgkJCSJSMCIgMSBpbnN0UGFyYW1zCgkJICAgICkpCgkJdW5sZXNzKGluc3QgCgkJICAgIGVycm9yKHNwcmludGYobmlsICJGYWlsZWQgdG8gY3JlYXRlIGluc3RhbmNlIG9mIGAlcyciIAoJCQkgICAgKGNvbnRhY3RJZH4+Y2VsbE5hbWUpCgkJCSkKCQkgICAgKQoJCSkgCgkJKG1hc3RlciA9IChpbnN0fj5tYXN0ZXIpKSAKCQl1bmxlc3MoKChtYXN0ZXJ+PnRvcExheWVyKSAmJiAobWFzdGVyfj50b3BMYXllclBpbkJib3gpKSAKCQkgICAgZXJyb3Ioc3ByaW50ZihuaWwgIk1pc3NpbmcgdG9wTGF5ZXIgYW5kL29yIHRvcExheWVyUGluQmJveCBjZWxsIHByb3BlcnRpZXMgaW4gYCVzJyIgCgkJCSAgICAoY29udGFjdElkfj5jZWxsTmFtZSkKCQkJKQoJCSAgICApCgkJKSAKCQkoYkJveCA9IGxpc3QobGlzdCgoY2FhcigobWFzdGVyfj50b3BMYXllclBpbkJib3gpKSArIHgxQ29vcmQgKyBvZmZzZXQpIAoJCQkgICAgY2FkYXIoKG1hc3Rlcn4+dG9wTGF5ZXJQaW5CYm94KSkKCQkJKSAKCQkJbGlzdCgoY2FhZHIoKG1hc3Rlcn4+dG9wTGF5ZXJQaW5CYm94KSkgKyB4MUNvb3JkICsgb2Zmc2V0KSAKCQkJICAgIGNhZGFkcigobWFzdGVyfj50b3BMYXllclBpbkJib3gpKQoJCQkpCgkJICAgICkpIAoJCShkYmlkID0gKGRiQ3JlYXRlUmVjdCB0Y0NlbGxWaWV3IAoJCQkobWFzdGVyfj50b3BMYXllcikgYkJveAoJCSAgICApKQoJCShwaW5pZCA9IChkYkNyZWF0ZVBpbiBjTmV0IGRiaWQpKSAKCQlzZXRTR3EocGluaWQgCgkJICAgIGxpc3QoInRvcCIgImJvdHRvbSIpIGFjY2Vzc0RpcgoJCSkgCgkJd2hlbihsYWJlbExheWVyIAoJCSAgICAoZGJDcmVhdGVMYWJlbCB0Y0NlbGxWaWV3IGxhYmVsTGF5ZXIgCgkJCWxpc3QoKGNhYXIoYkJveCkgKyAoKGNhYWRyKGJCb3gpIC0gY2FhcihiQm94KSkgLyAyLjApKSAKCQkJICAgIChjYWRhcihiQm94KSArICgoY2FkYWRyKGJCb3gpIC0gY2FkYXIoYkJveCkpIC8gMi4wKSkKCQkJKSBuZXRMCgkJCSJjZW50ZXJDZW50ZXIiICJSMCIgInJvbWFuIiBsYWJlbFdpZHRoCgkJICAgICkKCQkpIAoJCXdoZW4oKG9mZnNldCA+IDFlLTA2KSAKCQkgICAgKGRiQ3JlYXRlUmVjdCB0Y0NlbGxWaWV3IGRpZmZMYXllciAKCQkJbGlzdCgoeDFDb29yZDp5MUNvb3JkKSAKCQkJICAgICgob2Zmc2V0ICsgeDFDb29yZCk6KHkxQ29vcmQgKyB3KSkKCQkJKQoJCSAgICApIAoJCSAgICB3aGVuKChkaWZmSW1wbGFudCAmJiBpbXBsYW50KSAKCQkJKGRiQ3JlYXRlUmVjdCB0Y0NlbGxWaWV3IGRpZmZJbXBsYW50IAoJCQkgICAgbGlzdChsaXN0KHgxQ29vcmQgCgkJCQkgICAgKHkxQ29vcmQgLSBkaWZmSW1wRW5jKQoJCQkJKSAKCQkJCWxpc3QoKG9mZnNldCArIHgxQ29vcmQpIAoJCQkJICAgICh5MUNvb3JkICsgdyArIGRpZmZJbXBFbmMpCgkJCQkpCgkJCSAgICApCgkJCSkKCQkgICAgKSAKCQkgICAgd2hlbigoZGlmZkNvcmVJbXBsYW50ICYmIGltcGxhbnQpIAoJCQkoZGJDcmVhdGVSZWN0IHRjQ2VsbFZpZXcgZGlmZkNvcmVJbXBsYW50IAoJCQkgICAgbGlzdChsaXN0KHgxQ29vcmQgCgkJCQkgICAgKHkxQ29vcmQgLSBkaWZmQ29yZUltcEVuYykKCQkJCSkgCgkJCQlsaXN0KChvZmZzZXQgKyB4MUNvb3JkKSAKCQkJCSAgICAoeTFDb29yZCArIHcgKyBkaWZmQ29yZUltcEVuYykKCQkJCSkKCQkJICAgICkKCQkJKQoJCSAgICApCgkJKSAKCQl1bmxlc3MoKG1hc3Rlcn4+ZGlmZkxheWVyQmJveCkgCgkJICAgIGVycm9yKHNwcmludGYobmlsICJNaXNzaW5nIGRpZmZMYXllckJib3ggY2VsbCBwcm9wZXJ0aWVzIGluIGAlcyciIAoJCQkgICAgKGNvbnRhY3RJZH4+Y2VsbE5hbWUpCgkJCSkKCQkgICAgKQoJCSkKCQkobGFzdFgxQ29vcmQgPSB4MUNvb3JkKSAKCQkoeDFDb29yZCA9ICgoMi4wICogb2Zmc2V0KSArICh4MUNvb3JkICsgKGNhYWRyKChtYXN0ZXJ+PmRpZmZMYXllckJib3gpKSAtIGNhYXIoKG1hc3Rlcn4+ZGlmZkxheWVyQmJveCkpKSkpKSAKCQl3aGVuKChvZmZzZXQgPiAxZS0wNikgCgkJICAgIChkYkNyZWF0ZVJlY3QgdGNDZWxsVmlldyBkaWZmTGF5ZXIgCgkJCWxpc3QoKCh4MUNvb3JkIC0gb2Zmc2V0KTp5MUNvb3JkKSAKCQkJICAgICh4MUNvb3JkOih5MUNvb3JkICsgdykpCgkJCSkKCQkgICAgKSAKCQkgICAgd2hlbigoZGlmZkltcGxhbnQgJiYgaW1wbGFudCkgCgkJCShkYkNyZWF0ZVJlY3QgdGNDZWxsVmlldyBkaWZmSW1wbGFudCAKCQkJICAgIGxpc3QobGlzdCgoeDFDb29yZCAtIG9mZnNldCkgCgkJCQkgICAgKHkxQ29vcmQgLSBkaWZmSW1wRW5jKQoJCQkJKSAKCQkJCWxpc3QoeDFDb29yZCAKCQkJCSAgICAoeTFDb29yZCArIHcgKyBkaWZmSW1wRW5jKQoJCQkJKQoJCQkgICAgKQoJCQkpCgkJICAgICkgCgkJICAgIHdoZW4oKGRpZmZDb3JlSW1wbGFudCAmJiBpbXBsYW50KSAKCQkJKGRiQ3JlYXRlUmVjdCB0Y0NlbGxWaWV3IGRpZmZDb3JlSW1wbGFudCAKCQkJICAgIGxpc3QobGlzdCgoeDFDb29yZCAtIG9mZnNldCkgCgkJCQkgICAgKHkxQ29vcmQgLSBkaWZmQ29yZUltcEVuYykKCQkJCSkgCgkJCQlsaXN0KHgxQ29vcmQgCgkJCQkgICAgKHkxQ29vcmQgKyB3ICsgZGlmZkNvcmVJbXBFbmMpCgkJCQkpCgkJCSAgICApCgkJCSkKCQkgICAgKQoJCSkgCgkJKHkxRGlmZkNvb3JkID0gY2FkYXIoKG1hc3Rlcn4+ZGlmZkxheWVyQmJveCkpKSAKCQkoeTFUYXBDb29yZCA9IGlmKChtYXN0ZXJ+PnRhcExheWVyQmJveCkgCgkJCWFicyhjYWRhcigobWFzdGVyfj50YXBMYXllckJib3gpKSkgMC4wCgkJICAgICkpCgkJKHkyRGlmZkNvb3JkID0gY2FkYWRyKChtYXN0ZXJ+PmRpZmZMYXllckJib3gpKSkgCgkJKHkyVGFwQ29vcmQgPSBpZigobWFzdGVyfj50YXBMYXllckJib3gpIAoJCQlhYnMoY2FkYWRyKChtYXN0ZXJ+PnRhcExheWVyQmJveCkpKSAwLjAKCQkgICAgKSkgCgkJd2hlbih3ZWxsTGF5ZXIgCgkJICAgICh5MVdlbGxDb29yZCA9IG1pbigoLSBtYXgoKHdlbGxFbmNEaWZmWSArIHkxRGlmZkNvb3JkKSAKCQkJCSAgICAod2VsbEVuY1RhcFkgKyB5MVRhcENvb3JkKQoJCQkJKSkgeTFXZWxsQ29vcmQKCQkJKSkgCgkJICAgICh5MldlbGxDb29yZCA9IG1heCgod2VsbEVuY0RpZmZZICsgeTJEaWZmQ29vcmQpIAoJCQkgICAgKHdlbGxFbmNUYXBZICsgeTJUYXBDb29yZCkgeTJXZWxsQ29vcmQKCQkJKSkKCQkpIAoJCXdoZW4oaHZMYXllciAKCQkgICAgKHkxSFZMYXllckNvb3JkID0gbWluKCgtIG1heCgoaHZFbmNsb3N1cmUgKyB5MURpZmZDb29yZCkgCgkJCQkgICAgKGh2RW5jbG9zdXJlICsgeTFIVkxheWVyQ29vcmQpCgkJCQkpKSB5MUhWTGF5ZXJDb29yZAoJCQkpKSAKCQkgICAgKHkySFZMYXllckNvb3JkID0gbWF4KChodkVuY2xvc3VyZSArIHkyRGlmZkNvb3JkKSAKCQkJICAgIChodkVuY2xvc3VyZSArIHkyVGFwQ29vcmQpIHkySFZMYXllckNvb3JkCgkJCSkpCgkJKSAKCQl3aGVuKGlkTGF5ZXIgCgkJICAgIGlmKGlkRW5jRGlmZiB0aGVuIAoJCQkoeTFJZENvb3JkID0gbWluKCgtIG1heCgoaWRFbmNZICsgeTFEaWZmQ29vcmQpIAoJCQkJCShpZEVuY1kgKyB5MVRhcENvb3JkKQoJCQkJICAgICkpIHkxSWRDb29yZAoJCQkgICAgKSkgCgkJCSh5MklkQ29vcmQgPSBtYXgoKGlkRW5jWSArIHkyRGlmZkNvb3JkKSAKCQkJCShpZEVuY1kgKyB5MlRhcENvb3JkKSB5MklkQ29vcmQKCQkJICAgICkpIGVsc2UKCQkJKHkxSWRDb29yZCA9ICgtIGlkRW5jWSkpIAoJCQkoeTJJZENvb3JkID0gaWRFbmNZKQoJCSAgICApCgkJKQoJICAgICkgCgkgICAgKGNOZXQgPSBpZigoY05ldCA9PSBzTmV0KSBkTmV0IHNOZXQpKSAKCSAgICAobmV0TCA9IGlmKChuZXRMID09ICJTIikgIkQiICJTIikpCgkpIAoJd2hlbigobSAhPSAxKSAKCSAgICAoZGJDbG9zZSBzaGFyZWRTcmNJZCkgCgkgICAgKGRiQ2xvc2Ugc2hhcmVkRHJuSWQpCgkpIAoJKGNOZXQgPSBpZigoY05ldCA9PSBzTmV0KSBkTmV0IHNOZXQpKSAKCShuZXRMID0gaWYoKG5ldEwgPT0gIlMiKSAiRCIgIlMiKSkKCXdoZW4oKGxhc3RDb250YWN0ICE9ICIiKSAKCSAgICAoY29udGFjdElkID0gKGRiT3BlbkNlbGxWaWV3IAoJCSAgICAodGNDZWxsVmlld34+bGliKSBsYXN0Q29udGFjdCAic3ltYm9saWMiIG5pbAoJCSAgICAicm4iCgkJKSkgCgkgICAgdW5sZXNzKGNvbnRhY3RJZCAKCQllcnJvcihzcHJpbnRmKG5pbCAiQ2Fubm90IGZpbmQvb3BlbiBsYXN0Q29udGFjdCBjb250YWN0IGNlbGwgYCVzJyIgbGFzdENvbnRhY3QpKQoJICAgICkgCgkgICAgdW5sZXNzKChjb250YWN0SWR+PmlzUGFyYW1DZWxsKSAKCQllcnJvcihzcHJpbnRmKG5pbCAiTmFtZWQgY2VsbCBpcyBub3QgYSBwY2VsbCBgJXMnIiBsYXN0Q29udGFjdCkpCgkgICAgKSAKCSAgICBpZigoY05ldCA9PSBzTmV0KSB0aGVuIAoJCShvZmZzZXQgPSAobWluU3BhY2VPZmZTZXQgKyBzcmNPZmZzZXQpKSBlbHNlIAoJCShvZmZzZXQgPSAobWluU3BhY2VPZmZTZXQgKyBkcm5PZmZzZXQpKQoJICAgICkKCSAgICAocGFyYW1zID0gKGNvbnRhY3RJZH4+cGFyYW1ldGVycykpIAoJICAgIChpbnN0UGFyYW1zID0gbGlzdChsaXN0KCJ3IiAiZmxvYXQiIHcpKSkgCgkgICAgd2hlbigocGFyYW1zfj5pbXBsYW50KSAKCQkoaW5zdFBhcmFtcyA9IHhjb25zKGluc3RQYXJhbXMgY29udGFjdEltcFBhcmFtKSkKCSAgICApIAoJICAgIHdoZW4oKHBhcmFtc34+aW5XZWxsKSAKCQkoaW5zdFBhcmFtcyA9IHhjb25zKGluc3RQYXJhbXMgY29udGFjdFdlbGxQYXJhbSkpCgkgICAgKSAKCSAgICB3aGVuKChkaWZmSW1wQ2hvaWNlcyAmJiAocGFyYW1zfj5kaWZmSW1wQ2hvaWNlKSkgCgkJKGluc3RQYXJhbXMgPSB4Y29ucyhpbnN0UGFyYW1zIGRpZmZJbXBDaG9pY2VQYXJhbSkpCgkgICAgKQoJICAgIHdoZW4oKHRhcEltcENob2ljZXMgJiYgKHBhcmFtc34+dGFwSW1wQ2hvaWNlKSkgCgkJKGluc3RQYXJhbXMgPSB4Y29ucyhpbnN0UGFyYW1zIHRhcEltcENob2ljZVBhcmFtKSkKCSAgICApIAoJICAgIHdoZW4oKGNvbnRhY3RDaG9pY2VzICYmIChwYXJhbXN+Pm5vRGlmZkNvbnRhY3QpKSAKCQkoaW5zdFBhcmFtcyA9IHhjb25zKGluc3RQYXJhbXMgZGlmZkNvblBhcmFtKSkKCSAgICApIAoJICAgIChpbnN0ID0gKGRiQ3JlYXRlUGFyYW1JbnN0IHRjQ2VsbFZpZXcgY29udGFjdElkIAoJCSAgICBzcHJpbnRmKG5pbCAiYyVkIiBtKSAKCQkgICAgKChvZmZzZXQgKyB4MUNvb3JkKTp5MUNvb3JkKQoJCSAgICAiUjAiIDEgaW5zdFBhcmFtcwoJCSkpIAoJICAgIHVubGVzcyhpbnN0IAoJCWVycm9yKCJGYWlsZWQgdG8gY3JlYXRlIGluc3RhbmNlIG9mIGZpcnN0IHNvdXJjZSBjb250YWN0IikKCSAgICApIAoJICAgIHdoZW4oKG9mZnNldCA+IDFlLTA2KSAKCQkoZGJDcmVhdGVSZWN0IHRjQ2VsbFZpZXcgZGlmZkxheWVyIAoJCSAgICBsaXN0KCh4MUNvb3JkOnkxQ29vcmQpIAoJCQkoKG9mZnNldCArIHgxQ29vcmQpOih5MUNvb3JkICsgdykpCgkJICAgICkKCQkpIAoJCXdoZW4oKGRpZmZJbXBsYW50ICYmIGltcGxhbnQpIAoJCSAgICAoZGJDcmVhdGVSZWN0IHRjQ2VsbFZpZXcgZGlmZkltcGxhbnQgCgkJCWxpc3QobGlzdCh4MUNvb3JkIAoJCQkJKHkxQ29vcmQgLSBkaWZmSW1wRW5jKQoJCQkgICAgKSAKCQkJICAgIGxpc3QoKG9mZnNldCArIHgxQ29vcmQpIAoJCQkJKHkxQ29vcmQgKyB3ICsgZGlmZkltcEVuYykKCQkJICAgICkKCQkJKQoJCSAgICApCgkJKSAKCQl3aGVuKChkaWZmQ29yZUltcGxhbnQgJiYgaW1wbGFudCkgCgkJICAgIChkYkNyZWF0ZVJlY3QgdGNDZWxsVmlldyBkaWZmQ29yZUltcGxhbnQgCgkJCWxpc3QobGlzdCh4MUNvb3JkIAoJCQkJKHkxQ29vcmQgLSBkaWZmQ29yZUltcEVuYykKCQkJICAgICkgCgkJCSAgICBsaXN0KChvZmZzZXQgKyB4MUNvb3JkKSAKCQkJCSh5MUNvb3JkICsgdyArIGRpZmZDb3JlSW1wRW5jKQoJCQkgICAgKQoJCQkpCgkJICAgICkKCQkpCgkgICAgKQoJICAgIChtYXN0ZXIgPSAoaW5zdH4+bWFzdGVyKSkgCgkgICAgdW5sZXNzKCgobWFzdGVyfj50b3BMYXllcikgJiYgKG1hc3Rlcn4+dG9wTGF5ZXJQaW5CYm94KSkgCgkJZXJyb3Ioc3ByaW50ZihuaWwgIk1pc3NpbmcgdG9wTGF5ZXIgYW5kL29yIHRvcExheWVyUGluQmJveCBjZWxsIHByb3BlcnRpZXMgaW4gYCVzJyIgbGFzdENvbnRhY3QpKQoJICAgICkgCgkgICAgKGJCb3ggPSBsaXN0KGxpc3QoKGNhYXIoKG1hc3Rlcn4+dG9wTGF5ZXJQaW5CYm94KSkgKyB4MUNvb3JkICsgb2Zmc2V0KSAKCQkJY2FkYXIoKG1hc3Rlcn4+dG9wTGF5ZXJQaW5CYm94KSkKCQkgICAgKSAKCQkgICAgbGlzdCgoY2FhZHIoKG1hc3Rlcn4+dG9wTGF5ZXJQaW5CYm94KSkgKyB4MUNvb3JkICsgb2Zmc2V0KSAKCQkJY2FkYWRyKChtYXN0ZXJ+PnRvcExheWVyUGluQmJveCkpCgkJICAgICkKCQkpKSAKCSAgICAoZGJpZCA9IChkYkNyZWF0ZVJlY3QgdGNDZWxsVmlldyAKCQkgICAgKG1hc3Rlcn4+dG9wTGF5ZXIpIGJCb3gKCQkpKSAKCSAgICAocGluaWQgPSAoZGJDcmVhdGVQaW4gY05ldCBkYmlkKSkKCSAgICBzZXRTR3EocGluaWQgCgkJbGlzdCgidG9wIiAiYm90dG9tIiAicmlnaHQiKSBhY2Nlc3NEaXIKCSAgICApIAoJICAgIHdoZW4obGFiZWxMYXllciAKCQkoZGJDcmVhdGVMYWJlbCB0Y0NlbGxWaWV3IGxhYmVsTGF5ZXIgCgkJICAgIGxpc3QoKGNhYXIoYkJveCkgKyAoKGNhYWRyKGJCb3gpIC0gY2FhcihiQm94KSkgLyAyLjApKSAKCQkJKGNhZGFyKGJCb3gpICsgKChjYWRhZHIoYkJveCkgLSBjYWRhcihiQm94KSkgLyAyLjApKQoJCSAgICApIG5ldEwKCQkgICAgImNlbnRlckNlbnRlciIgIlIwIiAicm9tYW4iIGxhYmVsV2lkdGgKCQkpCgkgICAgKSAKCSAgICAoeTFEaWZmQ29vcmQgPSBjYWRhcigobWFzdGVyfj5kaWZmTGF5ZXJCYm94KSkpIAoJICAgICh5MVRhcENvb3JkID0gaWYoKG1hc3Rlcn4+dGFwTGF5ZXJCYm94KSAKCQkgICAgYWJzKGNhZGFyKChtYXN0ZXJ+PnRhcExheWVyQmJveCkpKSAwLjAKCQkpKSAKCSAgICAoeTJEaWZmQ29vcmQgPSBjYWRhZHIoKG1hc3Rlcn4+ZGlmZkxheWVyQmJveCkpKQoJICAgICh5MlRhcENvb3JkID0gaWYoKG1hc3Rlcn4+dGFwTGF5ZXJCYm94KSAKCQkgICAgYWJzKGNhZGFkcigobWFzdGVyfj50YXBMYXllckJib3gpKSkgMC4wCgkJKSkgCgkgICAgKHgyRGlmZkNvb3JkID0gY2FhZHIoKG1hc3Rlcn4+ZGlmZkxheWVyQmJveCkpKSAKCSAgICAoeDJUYXBDb29yZCA9IGlmKChtYXN0ZXJ+PnRhcExheWVyQmJveCkgCgkJICAgIGFicyhjYWFkcigobWFzdGVyfj50YXBMYXllckJib3gpKSkgMC4wCgkJKSkgCgkgICAgd2hlbih3ZWxsTGF5ZXIgCgkJdW5sZXNzKChtYXN0ZXJ+PmRpZmZMYXllckJib3gpIAoJCSAgICBlcnJvcihzcHJpbnRmKG5pbCAiQ2Fubm90IGZpbmQgZGlmZkxheWVyQmJveCBwcm9wZXJ0eSBmb3IgYCVzJyIgbGFzdENvbnRhY3QpKQoJCSkgCgkJKHkxV2VsbENvb3JkID0gbWluKCgtIG1heCgod2VsbEVuY0RpZmZZICsgeTFEaWZmQ29vcmQpIAoJCQkJKHdlbGxFbmNUYXBZICsgeTFUYXBDb29yZCkKCQkJICAgICkpIHkxV2VsbENvb3JkCgkJICAgICkpIAoJCSh5MldlbGxDb29yZCA9IG1heCgod2VsbEVuY0RpZmZZICsgeTJEaWZmQ29vcmQpIAoJCQkod2VsbEVuY1RhcFkgKyB5MlRhcENvb3JkKSB5MldlbGxDb29yZAoJCSAgICApKSAKCQkoeDJXZWxsQ29vcmQgPSAob2Zmc2V0ICsgeDFDb29yZCArIG1heCgod2VsbEVuY0RpZmZYICsgeDJEaWZmQ29vcmQpIAoJCQkgICAgKHdlbGxFbmNUYXBYICsgeDJUYXBDb29yZCkKCQkJKSkpCgkgICAgKSAKCSAgICB3aGVuKGh2TGF5ZXIgCgkJdW5sZXNzKChtYXN0ZXJ+PmRpZmZMYXllckJib3gpIAoJCSAgICBlcnJvcihzcHJpbnRmKG5pbCAiQ2Fubm90IGZpbmQgZGlmZkxheWVyQmJveCBwcm9wZXJ0eSBmb3IgYCVzJyIgbGFzdENvbnRhY3QpKQoJCSkgCgkJKHkxSFZMYXllckNvb3JkID0gbWluKCgtIG1heCgoaHZFbmNsb3N1cmUgKyB5MURpZmZDb29yZCkgCgkJCQkoaHZFbmNsb3N1cmUgKyB5MVRhcENvb3JkKQoJCQkgICAgKSkgeTFIVkxheWVyQ29vcmQKCQkgICAgKSkgCgkJKHkySFZMYXllckNvb3JkID0gbWF4KChodkVuY2xvc3VyZSArIHkyRGlmZkNvb3JkKSAKCQkJKGh2RW5jbG9zdXJlICsgeTJUYXBDb29yZCkgeTJIVkxheWVyQ29vcmQKCQkgICAgKSkgCgkJKHgySFZMYXllckNvb3JkID0gKG9mZnNldCArIHgxQ29vcmQgKyBtYXgoKGh2RW5jbG9zdXJlICsgeDJEaWZmQ29vcmQpIAoJCQkgICAgKGh2RW5jbG9zdXJlICsgeDJUYXBDb29yZCkKCQkJKSkpCgkgICAgKQoJICAgIHdoZW4oaWRMYXllciAKCQl1bmxlc3MoKG1hc3Rlcn4+ZGlmZkxheWVyQmJveCkgCgkJICAgIGVycm9yKHNwcmludGYobmlsICJDYW5ub3QgZmluZCBkaWZmTGF5ZXJCYm94IHByb3BlcnR5IGZvciBgJXMnIiBsYXN0Q29udGFjdCkpCgkJKSAKCQlpZihpZEVuY0RpZmYgdGhlbiAKCQkgICAgKHkxSWRDb29yZCA9IG1pbigoLSBtYXgoKGlkRW5jWSArIHkxRGlmZkNvb3JkKSAKCQkJCSAgICAoaWRFbmNZICsgeTFUYXBDb29yZCkKCQkJCSkpIHkxSWRDb29yZAoJCQkpKSAKCQkgICAgKHkySWRDb29yZCA9IG1heCgoaWRFbmNZICsgeTJEaWZmQ29vcmQpIAoJCQkgICAgKGlkRW5jWSArIHkyVGFwQ29vcmQpIHkySWRDb29yZAoJCQkpKSAKCQkgICAgKHgySWRDb29yZCA9IChvZmZzZXQgKyB4MUNvb3JkICsgbWF4KChpZEVuY1hSICsgeDJEaWZmQ29vcmQpIAoJCQkJKGlkRW5jWFIgKyB4MlRhcENvb3JkKQoJCQkgICAgKSkpCgkJICAgIGVsc2UgCgkJICAgICh5MUlkQ29vcmQgPSAoKC0gaWRFbmNZKSArIHkxRGlmZkNvb3JkKSkgCgkJICAgICh5MklkQ29vcmQgPSBtYXgoKGlkRW5jWSArIHkyRGlmZkNvb3JkKSB5MlRhcENvb3JkIHkySWRDb29yZCkpIAoJCSAgICAoeDJJZENvb3JkID0gKG9mZnNldCArIHgxQ29vcmQgKyBpZEVuY1hSKSkKCQkpCgkgICAgKSAKCSAgICAoZGJDbG9zZSBjb250YWN0SWQpCgkpIAoJKGRiaWQgPSAoZGJDcmVhdGVSZWN0IHRjQ2VsbFZpZXcgZGlmZkxheWVyIAoJCWxpc3QoKHgxQ29vcmQ6eTFDb29yZCkgCgkJICAgICgoeDFDb29yZCArIGRpZmZFeHQpOih5MUNvb3JkICsgdykpCgkJKQoJICAgICkpIAoJKHBpbmlkID0gKGRiQ3JlYXRlUGluIGNOZXQgZGJpZCkpIAoJc2V0U0dxKHBpbmlkIAoJICAgIGxpc3QoInRvcCIgImJvdHRvbSIgInJpZ2h0IikgYWNjZXNzRGlyCgkpIAoJd2hlbigoZGlmZkltcGxhbnQgJiYgaW1wbGFudCkgCgkgICAgKGRiQ3JlYXRlUmVjdCB0Y0NlbGxWaWV3IGRpZmZJbXBsYW50IAoJCWxpc3QobGlzdCh4MUNvb3JkIAoJCQkoeTFDb29yZCAtIGRpZmZJbXBFbmMpCgkJICAgICkgCgkJICAgIGxpc3QoKHgxQ29vcmQgKyBkaWZmRXh0KSAKCQkJKHkxQ29vcmQgKyB3ICsgZGlmZkltcEVuYykKCQkgICAgKQoJCSkKCSAgICApCgkpCgl3aGVuKChkaWZmQ29yZUltcGxhbnQgJiYgaW1wbGFudCkgCgkgICAgKGRiQ3JlYXRlUmVjdCB0Y0NlbGxWaWV3IGRpZmZDb3JlSW1wbGFudCAKCQlsaXN0KGxpc3QoeDFDb29yZCAKCQkJKHkxQ29vcmQgLSBkaWZmQ29yZUltcEVuYykKCQkgICAgKSAKCQkgICAgbGlzdCgoeDFDb29yZCArIGRpZmZFeHQpIAoJCQkoeTFDb29yZCArIHcgKyBkaWZmQ29yZUltcEVuYykKCQkgICAgKQoJCSkKCSAgICApCgkpIAoJd2hlbigobGFzdENvbnRhY3QgPT0gIiIpIAoJICAgIHdoZW4obGFiZWxMYXllciAKCQkoZGJDcmVhdGVMYWJlbCB0Y0NlbGxWaWV3IGxhYmVsTGF5ZXIgCgkJICAgIGxpc3QoKHgxQ29vcmQgKyAoZGlmZkV4dCAvIDIuMCkpIAoJCQkoeTFDb29yZCArICh3IC8gMi4wKSkKCQkgICAgKSBuZXRMCgkJICAgICJjZW50ZXJDZW50ZXIiICJSMCIgInJvbWFuIiBsYWJlbFdpZHRoCgkJKQoJICAgICkgCgkgICAgd2hlbih3ZWxsTGF5ZXIgCgkJKHgyV2VsbENvb3JkID0gKHgxQ29vcmQgKyBkaWZmRXh0ICsgd2VsbEVuY0RpZmZYKSkgCgkJKHkyV2VsbENvb3JkID0gbWF4KCh5MUNvb3JkICsgdyArIHdlbGxFbmNEaWZmWSkgeTJXZWxsQ29vcmQpKQoJICAgICkgCgkgICAgd2hlbihodkxheWVyIAoJCSh4MkhWTGF5ZXJDb29yZCA9ICh4MUNvb3JkICsgZGlmZkV4dCArIGh2RW5jbG9zdXJlKSkgCgkJKHkySFZMYXllckNvb3JkID0gbWF4KCh5MUNvb3JkICsgdyArIGh2RW5jbG9zdXJlKSB5MkhWTGF5ZXJDb29yZCkpCgkgICAgKSAKCSAgICB3aGVuKGlkTGF5ZXIgCgkJaWYoaWRFbmNEaWZmIHRoZW4gCgkJICAgICh4MklkQ29vcmQgPSAoeDFDb29yZCArIGRpZmZFeHQgKyBpZEVuY1hSKSkgCgkJICAgICh5MklkQ29vcmQgPSBtYXgoKHkxQ29vcmQgKyB3ICsgaWRFbmNZKSB5MklkQ29vcmQpKSBlbHNlCgkJICAgICh4MklkQ29vcmQgPSAoeDFDb29yZCArIGlkRW5jWFIpKSAKCQkgICAgKHkySWRDb29yZCA9IG1heCgoeTFDb29yZCArIHcgKyBpZEVuY1kpIHkySWRDb29yZCkpCgkJKQoJICAgICkKCSAgICB3aGVuKChkaWZmSW1wbGFudCAmJiBpbXBsYW50ICYmIG5vRW5kQ29uSW1wRW5jKSAKCQkoZGJDcmVhdGVSZWN0IHRjQ2VsbFZpZXcgZGlmZkltcGxhbnQgCgkJICAgIGxpc3QobGlzdCgoeDFDb29yZCArIGRpZmZFeHQpIAoJCQkgICAgKHkxQ29vcmQgLSBkaWZmSW1wRW5jKQoJCQkpIAoJCQlsaXN0KCh4MUNvb3JkICsgZGlmZkV4dCArIGRpZmZJbXBFbmMpIAoJCQkgICAgKHkxQ29vcmQgKyB3ICsgZGlmZkltcEVuYykKCQkJKQoJCSAgICApCgkJKQoJICAgICkgCgkgICAgd2hlbigoZGlmZkNvcmVJbXBsYW50ICYmIGltcGxhbnQgJiYgbm9FbmRDb25JbXBFbmMpIAoJCShkYkNyZWF0ZVJlY3QgdGNDZWxsVmlldyBkaWZmQ29yZUltcGxhbnQgCgkJICAgIGxpc3QobGlzdCgoeDFDb29yZCArIGRpZmZFeHQpIAoJCQkgICAgKHkxQ29vcmQgLSBkaWZmQ29yZUltcEVuYykKCQkJKSAKCQkJbGlzdCgoeDFDb29yZCArIGRpZmZFeHQgKyBkaWZmQ29yZUltcEVuYykgCgkJCSAgICAoeTFDb29yZCArIHcgKyBkaWZmQ29yZUltcEVuYykKCQkJKQoJCSAgICApCgkJKQoJICAgICkKCSkgCgl3aGVuKHdlbGxMYXllciAKCSAgICAod2VsbExheWVyX1hvcmlnaW4gPSB4MVdlbGxDb29yZCkgCgkgICAgKHdlbGxMYXllcl9Zb3JpZ2luID0gKHkxV2VsbENvb3JkICsgKC0gd2VsbEVuY1lEaWZmKSkpIAoJICAgICh3ZWxsTGF5ZXJfWGVuZCA9IHgyV2VsbENvb3JkKSAKCSAgICAod2VsbExheWVyX1llbmQgPSAoeTJXZWxsQ29vcmQgKyB3ZWxsRW5jWURpZmYpKQoJICAgIHdoZW4oKCh3ZWxsTGF5ZXJfWGVuZCAtIHdlbGxMYXllcl9Yb3JpZ2luKSA8IHdlbGxtaW5XaWR0aCkgCgkJKERpZmZfd2VsbF93aWR0aCA9ICh3ZWxsbWluV2lkdGggLSAod2VsbExheWVyX1hlbmQgLSB3ZWxsTGF5ZXJfWG9yaWdpbikpKSAKCQkoeDJXZWxsQ29vcmQgPSAoeDJXZWxsQ29vcmQgKyAoRGlmZl93ZWxsX3dpZHRoIC8gMikpKSAKCQkoeDFXZWxsQ29vcmQgPSAoeDFXZWxsQ29vcmQgLSAoRGlmZl93ZWxsX3dpZHRoIC8gMikpKQoJICAgICkgCgkgICAgd2hlbigoKHdlbGxMYXllcl9ZZW5kIC0gd2VsbExheWVyX1lvcmlnaW4pIDwgd2VsbG1pbldpZHRoKSAKCQkoRGlmZl93ZWxsX3dpZHRoID0gKHdlbGxtaW5XaWR0aCAtICh3ZWxsTGF5ZXJfWWVuZCAtIHdlbGxMYXllcl9Zb3JpZ2luKSkpIAoJCSh5MVdlbGxDb29yZCA9ICh5MVdlbGxDb29yZCAtIChEaWZmX3dlbGxfd2lkdGggLyAyKSkpIAoJCSh5MldlbGxDb29yZCA9ICh5MldlbGxDb29yZCArIChEaWZmX3dlbGxfd2lkdGggLyAyKSkpCgkgICAgKSAKCSAgICAoZGJDcmVhdGVSZWN0IHRjQ2VsbFZpZXcgd2VsbExheWVyIAoJCWxpc3QoKHgxV2VsbENvb3JkOih5MVdlbGxDb29yZCArICgtIHdlbGxFbmNZRGlmZikpKSAKCQkgICAgKHgyV2VsbENvb3JkOih5MldlbGxDb29yZCArIHdlbGxFbmNZRGlmZikpCgkJKQoJICAgICkKCSkgCgl3aGVuKGlkTGF5ZXIgCgkgICAgKGRiQ3JlYXRlUmVjdCB0Y0NlbGxWaWV3IGlkTGF5ZXIgCgkJbGlzdChsaXN0KHgxSWRDb29yZCB5MUlkQ29vcmQpIAoJCSAgICBsaXN0KHgySWRDb29yZCB5MklkQ29vcmQpCgkJKQoJICAgICkKCSkgCgl3aGVuKGh2TGF5ZXIgCgkgICAgd2hlbih3ZWxsTGF5ZXIgCgkJKHNpZ25YMSA9ICh4MVdlbGxDb29yZCAvIGFicyh4MVdlbGxDb29yZCkpKSAKCQkoc2lnblgyID0gKHgyV2VsbENvb3JkIC8gYWJzKHgyV2VsbENvb3JkKSkpIAoJCShzaWduWTEgPSAoeTFXZWxsQ29vcmQgLyBhYnMoeTFXZWxsQ29vcmQpKSkgCgkJKHNpZ25ZMiA9ICh5MldlbGxDb29yZCAvIGFicyh5MldlbGxDb29yZCkpKQoJCSh4MUhWTGF5ZXJDb29yZCA9ICgoYWJzKHgxV2VsbENvb3JkKSArIGh2RW5jbG9zdXJlKSAqIHNpZ25YMSkpIAoJCSh4MkhWTGF5ZXJDb29yZCA9ICgoYWJzKHgyV2VsbENvb3JkKSArIGh2RW5jbG9zdXJlKSAqIHNpZ25YMikpIAoJCSh5MUhWTGF5ZXJDb29yZCA9ICgoYWJzKHkxV2VsbENvb3JkKSArIGh2RW5jbG9zdXJlKSAqIHNpZ25ZMSkpIAoJCSh5MkhWTGF5ZXJDb29yZCA9ICgoYWJzKHkyV2VsbENvb3JkKSArIGh2RW5jbG9zdXJlKSAqIHNpZ25ZMikpCgkgICAgKSAKCSAgICAoZGJDcmVhdGVSZWN0IHRjQ2VsbFZpZXcgaHZMYXllciAKCQlsaXN0KGxpc3QoeDFIVkxheWVyQ29vcmQgeTFIVkxheWVyQ29vcmQpIAoJCSAgICBsaXN0KHgySFZMYXllckNvb3JkIHkySFZMYXllckNvb3JkKQoJCSkKCSAgICApCgkpCglyZXR1cm4odCkKICAgICkKKQoA/////wAEAADPAwAAAAAAAAAAAAAAAAAAaHZuVHJhbgBjZGJSZXZpc2lvbgBfZGJMYXN0U2F2ZWRDb3VudGVyAGx2dG5Nb2RlbHMAbmh2bmF0aXZlIG50dm5hdGl2ZQBub25lTW9kZWxzAG5odgBkaXNjcmV0ZVdMcwBwaW4jAGNsYXNzUGFyYW1ldGVycwB3ZWxsRW5jSHZMYXllcgBodlBZTWNvblNwYWNlAHBvbHlJbXBZRW5jAHBvbHlJbXBYRW5jAHBvbHlJbXBsYW50AElMTGlzdABzbmFwR3JpZABub09mRGVjaW1hbHMAZGlmZkNvcmVJbXBFbmMAZGlmZkNvcmVJbXBsYW50AGxhYmVsTGF5ZXIAZGVwU3BhY2UAZGVwWUVuYwBkZXBYRW5jAHdlbGxMYXllcldpZHRoAHdlbGxFbmNUYXAAd2VsbEVuY0RpZmYAZGVwTGF5ZXIAd2VsbG1pbldpZHRoAHdlbGxMYXllcgBkaWZmTGF5ZXIAZ2F0ZUxheWVyAGRpZmZFeHQAbGFiZWxXaWR0aABodkxheWVyAGh2RW5jbG9zdXJlAGRpZmZJbXBsYW50AGRpZmZJbXBFbmMAdmlhMU1pblNwYWNlAHZpYTJNaW5TcGFjZQBsYXllcjJNaW5TcGFjZQBsYXllcjNNaW5TcGFjZQBiY2tDb21wYXRpYmxlT2ZmU2V0AGluc3RhbmNlc0xhc3RDaGFuZ2VkAHBhcmFtZXRlcnMAc291cmNlRmlyc3QAc2hhcmVkRHJhaW4AaHZERkwxc2QyAHNoYXJlZFNvdXJjZQBsYXN0Q29udGFjdABodkRGVFBMMXMAZmlyc3RDb250YWN0AGdhdGVFeHQAaWRMYXllckNob2ljZXMAaWRMYXllcgBub25lAGlkRW5jRGlmZgBpZEVuY1hMAGlkRW5jWFIAaWRFbmNZAGRpZmZJbXBDaG9pY2VzAHRhcEltcENob2ljZXMAY29udGFjdENob2ljZXMAZGlmZkltcENob2ljZQB0YXBJbXBDaG9pY2UAY29udGFjdENob2ljZQBzcmNPZmZzZXQAZHJuT2Zmc2V0AG0AbAB3AGltcGxhbnQAbm9FbmRDb25JbXBFbmMAZABzAGcARABTAHN5bWJvbGljAHNjczhsc19kdgB0cnlUb1N0YWdnZXIAdG9wRW5kVGFwAGJvdHRvbUVuZFRhcABub0RpZmZDb250YWN0AGluV2VsbAA2ADUAMgAxADQAMwBzaHBQbGNTdGF0dXMAc2hwUGluTmFtZQAAc2hwQWNjZXNzRGlyAGNkc1NraWxsUGNlbGwAAAAAAAAEAAAAAAAAANQAAAAAAAAACAAAAAcAAAABAAAAAAAAAAIAAAAAAAAAAwAAAAAAAAAEAAAAAAAAAAABAAAAAAAAAQEAAAAAAAACAQAAAAAAANQAAAAAAAAA2AAAAAAAAADcAAAAAAAAAOAAAAAAAAAA5AAAAAAAAADwAAAAAAAAAAgBAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAMAAAAAAAAABgAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAABwAAAAAAAAD/////AAAAwAEBAQEBAQEAAAAAwAIAAAACAHQGeAZ8BogGsASaBgAAAAAAAAQAAAAAAAAAzAIAAAAAAAAdAAAAEgAAAAEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAQAAAAAAAAABAEAAAAAAAAAAwAAAAAAAAEDAAAAAAAAAgMAAAAAAAADAwAAAAAAAAABAAAAAAAAAwEAAAAAAAAGAwAAAAAAAAwDAAAAAAAAEgMAAAAAAAAKAwAAAAAAAA8DAAAAAAAAEAMAAAAAAAAEAwAAAAAAAMwCAAAAAAAA0AIAAAAAAADUAgAAAAAAANgCAAAAAAAA3AIAAAAAAAAkAwAAAAAAAKwDAAAAAAAA9AMAAAAAAAA8BAAAAAAAAIQEAAAAAAAAiAQAAAAAAAAUBgAAAAAAANwGAAAAAAAArAcAAAAAAACACQAAAAAAACQLAAAAAAAA6AsAAAAAAACsDAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAASAAAAAAAAACIAAAAAAAAAEgAAAAAAAAASAAAAAAAAABIAAAAAAAAAAQAAAAAAAAAjAEAAAAAAADIAAAAAAAAANAAAAAAAAAA1AEAAAAAAACkAQAAAAAAAMQAAAAAAAAAxAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAAQAAACUAAAAAAADAAQAAAAECAQEAAQIDBAEFAgYCAwcICQoLDAQNBQYHDg8IEAkREhMUFQoBAAIDBAUGFgsHAxcYGQwNDg8QERobAxwdBAUAAADAAgAAACkASABXAGMAaAB4AIcAlQChAK0AwADJANYA5QD1AAABCQERARkBKAEzAT8BSAFVAV8BaQFzAXsBhgGOAZoBpgGxAb4BywHaAekBAAASAh0CKQI/AkwCYgJvAncChgKTAp0CpQKtArQCwwLRAuAC7gL7AgkDEwMdAx8DIQMjAysDAAAAwAEAAAABAQEBAQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFAQEnJycnJycnJycnJycnJycnJycnJycnJycnAAAAwAEAAAAAAAAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAAAwAEAAAAnAAIDBCUABwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkBQVAACkqKywtLi8wMTIzNDU2Nzg5Ojs8PT4/qQAAAIwAAAABAAAAAgAAABQABAAIAAAACUAWAAYABgAGAAUABgAAAAYABQAFAAYABgAGAAYABgAGAAUABgAFAAUABQAGAAYABQAGAAUABgAGAAYABgAGAAUAAIAJQBgABAAEAAQABAAGAAUABAAIAAYABgAGAAUABQAFAAUABQAFAAYABgAAAAYABgAIAAgAAAAAAAAAAAAQAAAACgAAAAABAAAAAAAAAQEAAAAAAAACAQAAAAAAAAMBAAAAAAAABQEAAAAAAAAGAQAAAAAAAAcBAAAAAAAAAAMAAAAAAAABAwAAAAAAAAIDAAAAAAAADwAAAAAAAAAOAAAAAAAAAA0AAAAAAAAADAAAAAAAAAALAAAAAAAAAAoAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAQAAAAAAAAApAAAAAAAAAAGAAAABQAAAAEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAQAAAAAAAAAAAMAAAAAAACkAAAAAAAAAKgAAAAAAAAArAAAAAAAAACwAAAAAAAAALQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAADAAAAAAAAAP////8AAADABwAAAAMAAAABAAAABAAAAAAAAACkAAAAAAAAAAYAAAAFAAAAAQAAAAAAAAACAAAAAAAAAAMAAAAAAAAABAAAAAAAAAAAAwAAAAAAAKQAAAAAAAAAqAAAAAAAAACsAAAAAAAAALAAAAAAAAAAtAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAcAAAAAAAAA/////wAAAMACAAAANABTADUCNQJYAlgCjgIAAAQAAAAAAAAAvAAAAAAAAAAHAAAABgAAAAEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAQAAAAAAAAAAAMAAAAAAAABAwAAAAAAALwAAAAAAAAAwAAAAAAAAADEAAAAAAAAAMgAAAAAAAAAzAAAAAAAAADoAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAAHAAAAAAAAADoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAARAAAAAAAAAP////8AAADAAQAAALm5ubm5ubm5ubm5ubm5ubm5AAAAAAAAwAEAAAABBQkcICQ3Slxvc4OHi4+TlwAAAAEAAAAFBRQFBRQUExQFEQUFBQUFBQAAAAABAACaAAAAAAAAAAAAAAAAAAAAbmlsAG5pbAAoInRleHQiICJkcmF3aW5nIikAbmlsAG5pbAAoImRpZmYiICJkcmF3aW5nIikAKCJwb2x5IiAiZHJhd2luZyIpACgiaHZpIiAiZHJhd2luZyIpACgibnNkbSIgImRyYXdpbmciKQBuaWwAKCJub25lIiAibHZ0biIpAG5pbABuaWwAbmlsAG5pbABuaWwAbmlsAAAAZAAAAAQAAACkAAAAAAAAAAYAAAAFAAAAAQAAAAAAAAACAAAAAAAAAAMAAAAAAAAABAAAAAAAAAAAAwAAAAAAAKQAAAAAAAAAqAAAAAAAAACsAAAAAAAAALAAAAAAAAAAtAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAOwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAdAAAAAAAAAP////8AAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB7FK5H4Xp0PwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQPzMzMzMzM8M/CtejcD0Kxz+kcD0K16PAP8P1KFyPwsU/UrgehetRyD/D9Shcj8LFP+xRuB6F68E/pHA9CtejwD8K16NwPQrHPwrXo3A9Csc/CtejcD0Kxz8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA4D/hehSuR+HaPwQAAAAAAAAApAAAAAAAAAAGAAAABQAAAAEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAQAAAAAAAAAAAMAAAAAAACkAAAAAAAAAKgAAAAAAAAArAAAAAAAAACwAAAAAAAAALQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAFAAAAAAAAAP////8AAADAAQAAABsAAAAEAAAApAAAAAAAAAAGAAAABQAAAAEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAQAAAAAAAAAAAMAAAAAAACkAAAAAAAAAKgAAAAAAAAArAAAAAAAAACwAAAAAAAAALQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAQAAAAEAAAD/////AAAAwF1hlUsAAAAAAQAAAAAAAAAEAAAAAAAAAMwCAAAAAAAAHQAAABgAAAABAAAAAAAAAAIAAAAAAAAAAwAAAAAAAAAEAAAAAAAAAAQBAAAAAAAAAQMAAAAAAAACAwAAAAAAAAMDAAAAAAAABAMAAAAAAAAFAwAAAAAAAAYDAAAAAAAABwMAAAAAAAAIAwAAAAAAAAkDAAAAAAAACgMAAAAAAAALAwAAAAAAAAwDAAAAAAAADgMAAAAAAAAAAQAAAAAAAAMBAAAAAAAAAQEAAAAAAAATAwAAAAAAABUDAAAAAAAAFgMAAAAAAADMAgAAAAAAANACAAAAAAAA1AIAAAAAAADYAgAAAAAAANwCAAAAAAAA5AIAAAAAAADwAgAAAAAAAPwCAAAAAAAABAMAAAAAAAAMAwAAAAAAABQDAAAAAAAAGAMAAAAAAAAcAwAAAAAAACADAAAAAAAAMAMAAAAAAAA4AwAAAAAAADwDAAAAAAAAQAMAAAAAAABIAwAAAAAAAEwDAAAAAAAATAUAAAAAAABUCAAAAAAAAP////////////////////8EAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAMAAAAAAAAAAgAAAAAAAAACAAAAAAAAAAIAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAABAAAAAAAAAACAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAACAAAAAAAAAAEAAAAAAAAAAACAAAAAAAACAMAAAAAAACgAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAwAAAAAAAAD/////AAAAwAAAAAAAAADAAQAAAAECAwAAAADAAQAAAAECAwAAAADAAAAAAAAAAMAAAAAAAAAAwAAAAAAAAACAAAAAgAAAAIAAAADAAQAAAAMFBwAAAAAAAAAAgAAAAAAAAACAAAAAgAAAAMAAAAAATwAAACQAAAADAAAAAgAAAAEAAAABAAAAbwBvAG8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgAAAATAAAAAAEAAAAAAAABAQAAAAAAAAIBAAAAAAAAAwEAAAAAAAAFAQAAAAAAAAYBAAAAAAAABwEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAQMAAAAAAAACAwAAAAAAAAMDAAAAAAAABAMAAAAAAAAFAwAAAAAAAAYDAAAAAAAACgMAAAAAAAAIAwAAAAAAAAkDAAAAAAAABwMAAAAAAAAPAAAAAAAAAA4AAAAAAAAADQAAAAAAAAAMAAAAAAAAAAsAAAAAAAAACgAAAAAAAAAIAAAAAAAAAAkAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAMAAAAAAAAABAAAAAAAAAAFAAAAAAAAAAYAAAAAAAAABwAAAAAAAAAQAAAAAAAAABQAAAAAAAAAFQAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAABAAAAAAAAAC0AgAAAAAAABwAAAAUAAAAAAEAAAAAAAABAAAAAAAAAAIAAAAAAAAAAwAAAAAAAAAEAAAAAAAAAAIBAAAAAAAAAAMAAAAAAAABAwAAAAAAAAIDAAAAAAAAAwMAAAAAAAAEAwAAAAAAAAUDAAAAAAAABgMAAAAAAAAHAwAAAAAAAAgDAAAAAAAACQMAAAAAAAAKAwAAAAAAAAsDAAAAAAAADAMAAAAAAAANAwAAAAAAALQCAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAQAAAAAAAAABQAAAAAAAAAGAAAAAAAAAAcAAAAAAAAACAAAAAAAAAAJAAAAAAAAAAoAAAAAAAAACwAAAAAAAAAMAAAAAAAAAA0AAAAAAAAADgAAAAAAAAAPAAAAAAAAABAAAAAAAAAAEQAAAAAAAAASAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAgAAAAAAAAAAAAAAP////8AAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAEAAAAAAAAAHwBAAAAAAAADwAAAAYAAAABAAAAAAAAAAIAAAAAAAAAAwAAAAAAAAAEAAAAAAAAAAUDAAAAAAAABgMAAAAAAAB8AQAAAAAAAIABAAAAAAAAhAEAAAAAAACIAQAAAAAAAIwBAAAAAAAAlAEAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAgAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAwAAAAAAAAD/////AAAAwAAAAAAAAADAAAAAAAQAAAAAAAAAbAIAAAAAAAAZAAAAEQAAAAEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAQAAAAAAAAABAEAAAAAAAAAAwAAAAAAAAEDAAAAAAAAAgMAAAAAAAADAwAAAAAAAAUDAAAAAAAABgMAAAAAAAAHAwAAAAAAAAgDAAAAAAAACQMAAAAAAAAQAwAAAAAAAAABAAAAAAAAAwEAAAAAAABsAgAAAAAAAHACAAAAAAAAdAIAAAAAAAB4AgAAAAAAAHwCAAAAAAAAhAIAAAAAAACUAgAAAAAAAKACAAAAAAAAqAIAAAAAAAC0AgAAAAAAALwCAAAAAAAAwAIAAAAAAADEAgAAAAAAAMgCAAAAAAAAzAIAAAAAAADQAgAAAAAAANQCAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAIAAAAAAAAABAAAAAAAAAADAAAAAAAAAAIAAAAAAAAAAwAAAAAAAAACAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAADgAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAADAAAAAAAAAP////8AAADAAAAAAAAAAMABAAAAAwUHAAAAAAAAAADAAQAAAAECAwAAAADAAAAAAAAAAMABAAAABwIEAAAAAMAAAAAAAAAAgAAAAIAAAACAAAAAgAAAAJBmAAAAHAAAAAIAAAACAAAAAQAAACMAIwADAAAA8PDwAAAAAAAAAAAAAAAAABgAAAASAAAAAAEAAAAAAAABAQAAAAAAAAIBAAAAAAAAAwEAAAAAAAAFAQAAAAAAAAYBAAAAAAAABwEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAQMAAAAAAAACAwAAAAAAAAMDAAAAAAAABAMAAAAAAAAFAwAAAAAAAAYDAAAAAAAABwMAAAAAAAAIAwAAAAAAAAkDAAAAAAAADwAAAAAAAAAOAAAAAAAAAA0AAAAAAAAADAAAAAAAAAALAAAAAAAAAAoAAAAAAAAACAAAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAEAAAAAAAAAAcAAAAAAAAAEAAAAAAAAAATAAAAAAAAABQAAAAAAAAAFQAAAAAAAAAWAAAAAAAAABcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAA8AgAAAAAAABcAAAAUAAAAAQAAAAAAAAACAAAAAAAAAAMAAAAAAAAABAAAAAAAAAAEAQAAAAAAAAADAAAAAAAAAQMAAAAAAAACAwAAAAAAAAMDAAAAAAAABAMAAAAAAAAFAwAAAAAAAAYDAAAAAAAABwMAAAAAAAAIAwAAAAAAAAkDAAAAAAAACgMAAAAAAAALAwAAAAAAAAABAAAAAAAAAwEAAAAAAAAMAwAAAAAAADwCAAAAAAAAQAIAAAAAAABEAgAAAAAAAEgCAAAAAAAATAIAAAAAAABUAgAAAAAAAGACAAAAAAAAaAIAAAAAAABwAgAAAAAAAHQCAAAAAAAAeAIAAAAAAAB8AgAAAAAAAIACAAAAAAAAhAIAAAAAAACIAgAAAAAAAIwCAAAAAAAAkAIAAAAAAACUAgAAAAAAAJgCAAAAAAAA3AMAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAIAAAAAAAAAAgAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAABEAQAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAAAAAAA/////wAAAMAAAAAAAAAAwAEAAAABAAAAAAAAwAAAAAAAAADAAAAAAAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAMAAAAQAAAAAQAAAAIAAAAOAAAAAAAAAAAAAAAAAAAAEAAAAAwAAAAAAQAAAAAAAAEBAAAAAAAAAgEAAAAAAAADAQAAAAAAAAUBAAAAAAAABgEAAAAAAAAHAQAAAAAAAAACAAAAAAAAAAMAAAAAAAABAwAAAAAAAAIDAAAAAAAAAwMAAAAAAAAPAAAAAAAAAA4AAAAAAAAADQAAAAAAAAAMAAAAAAAAAAsAAAAAAAAACgAAAAAAAAAIAAAAAAAAAAkAAAAAAAAAAQAAAAAAAAACAAAAAAAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAA9AEAAAAAAAAUAAAADAAAAAEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAQAAAAAAAAABAEAAAAAAAAAAwAAAAAAAAEDAAAAAAAAAgMAAAAAAAAIAwAAAAAAAAkDAAAAAAAAAAEAAAAAAAADAQAAAAAAAPQBAAAAAAAA+AEAAAAAAAD8AQAAAAAAAAACAAAAAAAABAIAAAAAAAAMAgAAAAAAABwCAAAAAAAALAIAAAAAAAA8AgAAAAAAAEwCAAAAAAAAwAIAAAAAAADEAgAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAACAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAAHQAAAAAAAAABAAAAAAAAAAIAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAHAAAAAAAAAP////8AAADAAAAAAAAAAMABAAAAKwXnAx8XAgAAAADAAQAAABQUFBQUFBQAAAAAwAEAAAACBAMEBAMBAAAAAMABAAAAAQIDBAUGBwAAAADAZPv//0z///+QBgAAWAIAAAAAAAB+////9AEAACYCAACC/v//FgAAAHkDAAD7AAAABv///wAAAADuAgAApAEAAAb///9+////7gIAACYCAADL/f//7P///ykEAAByAQAA////f////38AAACAAAAAgFkAAAAcAAAAAQAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAkAAAAAAQAAAAAAAAEBAAAAAAAAAgEAAAAAAAADAQAAAAAAAAUBAAAAAAAABgEAAAAAAAAHAQAAAAAAAAACAAAAAAAAAAMAAAAAAAAPAAAAAAAAAA4AAAAAAAAADQAAAAAAAAAMAAAAAAAAAAsAAAAAAAAACgAAAAAAAAAIAAAAAAAAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAMwCAAAAAAAAHQAAABMAAAABAAAAAAAAAAIAAAAAAAAAAwAAAAAAAAAEAAAAAAAAAAQBAAAAAAAAAAMAAAAAAAABAwAAAAAAAAIDAAAAAAAAAwMAAAAAAAAEAwAAAAAAAAsDAAAAAAAADAMAAAAAAAANAwAAAAAAAA8DAAAAAAAAEAMAAAAAAAARAwAAAAAAABQDAAAAAAAAAAEAAAAAAAADAQAAAAAAAMwCAAAAAAAA0AIAAAAAAADUAgAAAAAAANgCAAAAAAAA3AIAAAAAAADkAgAAAAAAAPQCAAAAAAAABAMAAAAAAAAUAwAAAAAAACQDAAAAAAAANAMAAAAAAABEAwAAAAAAAFQDAAAAAAAAZAMAAAAAAADYAwAAAAAAAEwEAAAAAAAAwAQAAAAAAADIBAAAAAAAAMwEAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAIAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAB0AAAAAAAAAHQAAAAAAAAAdAAAAAAAAAAIAAAAAAAAAAQAAAAAAAAAOAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAABwAAAAAAAAD/////AAAAwAAAAAAAAADAAQAAACsF5wMfFwIAAAAAwAEAAAABAQEBAQEBAAAAAMABAAAAAQEBAQEBAQAAAADAAQAAAAEBAQEBAQEAAAAAwAEAAAABAQEBAQEBAAAAAMABAAAAAgICAgICAgAAAADAAQAAAAEBAQEBAQEAAAAAwAEAAAABAQEBAQEBAAAAAMD///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/AAAAgAAAAIAAAADA////f////38AAACAAAAAgP///3////9/AAAAgAAAAID///9/////fwAAAIAAAACA////f////38AAACAAAAAgP///3////9/AAAAgAAAAID///9/////fwAAAIAAAACA////f////38AAACAAAAAgAAAAMAAAAAAWQAAABwAAAABAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAACwAAAAABAAAAAAAAAQEAAAAAAAACAQAAAAAAAAMBAAAAAAAABQEAAAAAAAAGAQAAAAAAAAcBAAAAAAAAAAIAAAAAAAAAAwAAAAAAAAEDAAAAAAAAAgMAAAAAAAAPAAAAAAAAAA4AAAAAAAAADQAAAAAAAAAMAAAAAAAAAAsAAAAAAAAACgAAAAAAAAAIAAAAAAAAAAkAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAARAMAAAAAAAAiAAAADQAAAAEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAQAAAAAAAAABAEAAAAAAAAAAwAAAAAAAAIDAAAAAAAABAMAAAAAAAAAAQAAAAAAAAMBAAAAAAAAAgEAAAAAAAAOAwAAAAAAAAUDAAAAAAAARAMAAAAAAABIAwAAAAAAAEwDAAAAAAAAUAMAAAAAAABUAwAAAAAAAGwDAAAAAAAAhAMAAAAAAACcAwAAAAAAAIAEAAAAAAAAhAQAAAAAAADcBQAAAAAAABwIAAAAAAAAFAoAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAABgAAAAAAAAAGAAAAAAAAAAYAAAAAAAAAOQAAAAAAAAABAAAAAAAAABYAQAAAAAAAEACAAAAAAAA+AEAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA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CAAAAAMAAAAAAwAAAAAAAAEDAAAAAAAAAgMAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAfAEAAAAAAAAPAAAADAAAAAEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAQAAAAAAAAABAEAAAAAAAAAAwAAAAAAAAEDAAAAAAAAAgMAAAAAAAADAwAAAAAAAAABAAAAAAAAAwEAAAAAAAAFAwAAAAAAAHwBAAAAAAAAgAEAAAAAAACEAQAAAAAAAIgBAAAAAAAAjAEAAAAAAACUAQAAAAAAAKwBAAAAAAAAvAEAAAAAAAAAAgAAAAAAAAgCAAAAAAAADAIAAAAAAABkAwAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAACAAAAAAAAAAYAAAAAAAAABAAAAAAAAAARAAAAAAAAAAIAAAAAAAAAAQAAAAAAAAAWAEAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAHAAAABAAAAAUAAAAAAADAAAAAAAAAAMACAAAAHwcnBycHLwcvBzMHHwcAAAAAAMABAAAAAAIBAwMFAQAAAADADAAAAAYAAAABAAAAAQkDCwUGBwABAAAAAQMBAwEBAwABAAAABw0JDgIDBw0JDgIDAQAAABsbGxsbGxsbGxsbGwAAAMAAAAAApgAAACgAAAACAAAAAgAAAAEAAAAAgAcAAIADAACAAIALAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAMAAAAAAEAAAAAAAABAQAAAAAAAAIBAAAAAAAAAwEAAAAAAAAFAQAAAAAAAAYBAAAAAAAABwEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAQMAAAAAAAACAwAAAAAAAAMDAAAAAAAADwAAAAAAAAAOAAAAAAAAAA0AAAAAAAAADAAAAAAAAAALAAAAAAAAAAoAAAAAAAAACAAAAAAAAAAJAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAHAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAwCAAAAAAAAFQAAABAAAAABAAAAAAAAAAIAAAAAAAAAAwAAAAAAAAAEAAAAAAAAAAQBAAAAAAAAAAMAAAAAAAABAwAAAAAAAAIDAAAAAAAAAAEAAAAAAAADAQAAAAAAAAQDAAAAAAAABQMAAAAAAAAKAwAAAAAAAAcDAAAAAAAACAMAAAAAAAADAwAAAAAAAAwCAAAAAAAAEAIAAAAAAAAUAgAAAAAAABgCAAAAAAAAHAIAAAAAAABQAgAAAAAAALACAAAAAAAA5AIAAAAAAAAYAwAAAAAAABwDAAAAAAAAhAQAAAAAAABUBQAAAAAAACAGAAAAAAAAWAcAAAAAAABkCAAAAAAAACgJAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAA0AAAAAAAAAGAAAAAAAAAANAAAAAAAAAA0AAAAAAAAAAQAAAAAAAAAaAEAAAAAAADQAAAAAAAAAMwAAAAAAAAAOAEAAAAAAAAMAQAAAAAAAMQAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAKwAAAAAAAAD/////AAAAwAEAAAABAQECAwQFBgIDAgcICQoLDAQNDgECAwQDAQUPBAUGAgMEBQYHBwgFCQoQAAAAAMACAAAA7gIhA1cDZANuA3sDiQMjA+AC7gIhA1cDZANuA3sDiQMjA+ACKwMdAikCPwJMAmICbwJ3AoYCkwKdAqUCrQK0AsMC0QLgAu4C+wIJAxMDHQMfAyEDIwMAAAAAAMABAAAAAQEBAQEBAQEBAgICAgICAgICU1NTU1NTU1NTU1NTU1NTU1NTU1NTU1NTUwAAAADAAQAAAAABAgMEBQYHCAAKCwwNDg8QEQATFBUWFxgZGhscHR4fICEiIyQlJicoKSoAWQAAAGQAAAABAAAAAgAAACAAJAAlACUAJQAlACUAJQAgACAAZAAlACUAJQAlACUAJQAgADUANQAyADIAMgAyADQAMwAyADUANAA0ADQAMwAzADMAMwAzADMANAA0ADAANAA0ADUAAAAAAAAAAAAAAAAAAAAQAAAACgAAAAABAAAAAAAAAQEAAAAAAAACAQAAAAAAAAMBAAAAAAAABQEAAAAAAAAGAQAAAAAAAAcBAAAAAAAAAAMAAAAAAAABAwAAAAAAAAIDAAAAAAAADwAAAAAAAAAOAAAAAAAAAA0AAAAAAAAADAAAAAAAAAALAAAAAAAAAAoAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAABgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAQAAAAAAAAApAAAAAAAAAAGAAAABQAAAAEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAQAAAAAAAAAAAMAAAAAAACkAAAAAAAAAKgAAAAAAAAArAAAAAAAAACwAAAAAAAAALQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAFAAAAAAAAAP////8AAADAAAAAAAAAAAAAAAAAAAAAAAEAAAAEAAAAAAAAAKQAAAAAAAAABgAAAAUAAAABAAAAAAAAAAIAAAAAAAAAAwAAAAAAAAAEAAAAAAAAAAADAAAAAAAApAAAAAAAAACoAAAAAAAAAKwAAAAAAAAAsAAAAAAAAAC0AAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAABQAAAAAAAAD/////AAAAwAIAAAA1AjUCWAJYAo4CAAAEAAAAvAAAAAAAAAAHAAAABgAAAAEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAQAAAAAAAAAAAMAAAAAAAABAwAAAAAAALwAAAAAAAAAwAAAAAAAAADEAAAAAAAAAMgAAAAAAAAAzAAAAAAAAADcAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAAEAAAAAAAAABYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAABwAAAAAAAAD/////AAAAwAEAAAC5ubm5ubm5AAAAAMABAAAAARATFhkcHwABAAAAEAQEBAQEBABAAAAAIQAAAAAAAAAAAAAAAAAAACgibm9uZSIgImx2dG4iKW5pbG5pbG5pbG5pbG5pbG5pbAAAAGQAAAAEAAAApAAAAAAAAAAGAAAABQAAAAEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAQAAAAAAAAAAAMAAAAAAACkAAAAAAAAAKgAAAAAAAAArAAAAAAAAACwAAAAAAAAALQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAABUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAACgAAAAAAAAD/////AAAAwD4K16NwPdo/4XoUrkfh2j+kcD0K16PAPwrXo3A9Csc/CtejcD0Kxz8K16NwPQrHPwAAAAAAAAAAAAAAAAAAAAAAAAAAAADgP+F6FK5H4do/BAAAAAAAAACkAAAAAAAAAAYAAAAFAAAAAQAAAAAAAAACAAAAAAAAAAMAAAAAAAAABAAAAAAAAAAAAwAAAAAAAKQAAAAAAAAAqAAAAAAAAACsAAAAAAAAALAAAAAAAAAAtAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAAAAAA/////wAAAMACAAAAILgAACoAAAAEAAAAAAAAAOQCAAAAAAAAHgAAABQAAAABAAAAAAAAAAIAAAAAAAAAAwAAAAAAAAAEAAAAAAAAAAQBAAAAAAAAAwQAAAAAAAAABAAAAAAAAAEEAAAAAAAAAgQAAAAAAAAEBAAAAAAAAAUEAAAAAAAABgQAAAAAAAAHBAAAAAAAAAgEAAAAAAAACQQAAAAAAAABBQAAAAAAAAIFAAAAAAAABgUAAAAAAAAAAQAAAAAAAAMBAAAAAAAA5AIAAAAAAADoAgAAAAAAAOwCAAAAAAAA8AIAAAAAAAD0AgAAAAAAAPwCAAAAAAAACAMAAAAAAAAUAwAAAAAAACADAAAAAAAALAMAAAAAAAA4AwAAAAAAAEQDAAAAAAAAUAMAAAAAAABcAwAAAAAAAIADAAAAAAAApAMAAAAAAACwAwAAAAAAALwDAAAAAAAAyAMAAAAAAADMAwAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAACAAAAAAAAAAMAAAAAAAAAAwAAAAAAAAADAAAAAAAAAAMAAAAAAAAAAwAAAAAAAAADAAAAAAAAAAMAAAAAAAAAAwAAAAAAAAAJAAAAAAAAAAkAAAAAAAAAAwAAAAAAAAADAAAAAAAAAAMAAAAAAAAAAQAAAAAAAAAoAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAgAAAAAAAAD/////AAAAwAAAAAAAAADAAgAAAFgCWAIAAADAAQAAAAcHAAAAAADAAQAAAAYGAAAAAADAAQAAAAUFAAAAAADAAQAAAAEBAAAAAADAAQAAAAIAAAAAAADAAQAAAAoKAAAAAADAAQAAAAkSAAAAAADA////f////38AAACAAAAAgH7///9+////agQAABwCAAAAAADA////f////38AAACAAAAAgJb7//9+////XgYAABwCAAAAAADAAQAAAAEDAAAAAADAAQAAAAEBAAAAAADAAQAAAAEBAABZAAAAEAAAAAEAAAACAAAAiQCRAAAAAAAAAAAAEAAAABAAAAAAAQAAAAAAAAEBAAAAAAAAAgEAAAAAAAADAQAAAAAAAAUBAAAAAAAABgEAAAAAAAAHAQAAAAAAAAACAAAAAAAAAAQAAAAAAAABBAAAAAAAAAIEAAAAAAAAAwQAAAAAAAAEBAAAAAAAAAUEAAAAAAAABgQAAAAAAAAABQAAAAAAAA8AAAAAAAAADgAAAAAAAAANAAAAAAAAAAwAAAAAAAAACwAAAAAAAAAKAAAAAAAAAAgAAAAAAAAACQAAAAAAAAAHAAAAAAAAAAYAAAAAAAAABQAAAAAAAAAEAAAAAAAAAAMAAAAAAAAAAgAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAEwBAAAAAAAADQAAAAoAAAABAAAAAAAAAAIAAAAAAAAAAwAAAAAAAAAEAAAAAAAAAAQBAAAAAAAAAAMAAAAAAAABAwAAAAAAAAIDAAAAAAAAAAEAAAAAAAADAQAAAAAAAEwBAAAAAAAAUAEAAAAAAABUAQAAAAAAAFgBAAAAAAAAXAEAAAAAAABkAQAAAAAAAGwBAAAAAAAAfAEAAAAAAACQAQAAAAAAAJQBAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAIAAAAAAAAAAgAAAAAAAAAEAAAAAAAAAAUAAAAAAAAAAQAAAAAAAAAEAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAAAD/////AAAAwAAAAAAAAADAAAAAAAAAAMAAAAAAAAAAAAAAAAAAAADAZPv//0z///+QBgAAWAIAAAEAAAAQAAAAAQAAAAIAAAAAAAAAAAAAAAAAAAAQAAAACgAAAAABAAAAAAAAAQEAAAAAAAACAQAAAAAAAAMBAAAAAAAABQEAAAAAAAAGAQAAAAAAAAcBAAAAAAAAAAIAAAAAAAAAAwAAAAAAAAEDAAAAAAAADwAAAAAAAAAOAAAAAAAAAA0AAAAAAAAADAAAAAAAAAALAAAAAAAAAAoAAAAAAAAACAAAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAQAAAAAAAAAJAIAAAAAAAAWAAAAEQAAAAEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAQAAAAAAAAABAEAAAAAAAAAAwAAAAAAAAEDAAAAAAAABgMAAAAAAAACAwAAAAAAAAMDAAAAAAAABAMAAAAAAAAFAwAAAAAAAAcDAAAAAAAAAAEAAAAAAAADAQAAAAAAAAkDAAAAAAAACgMAAAAAAAAkAgAAAAAAACgCAAAAAAAALAIAAAAAAAAwAgAAAAAAADQCAAAAAAAAPAIAAAAAAABIAgAAAAAAAFgCAAAAAAAAZAIAAAAAAABoAgAAAAAAAGwCAAAAAAAAcAIAAAAAAAB0AgAAAAAAAHgCAAAAAAAAfAIAAAAAAACkAwAAAAAAAKgDAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAIAAAAAAAAAAwAAAAAAAAAEAAAAAAAAAAMAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAACgBAAAAAAAABAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAABAAAAAAAAAP////8AAADAAAAAAAAAAMABAAAAAQAAAAAAAMABAAAAAQAAAAAAAAAAAADAAQAAAAcAAAAAAACAAAAAgAAAAIAAAACAAAAAgAIAAAAQAAAAAQAAAAIAAAAAAAAAAAAAAAAAAAAQAAAACwAAAAABAAAAAAAAAQEAAAAAAAACAQAAAAAAAAMBAAAAAAAABQEAAAAAAAAGAQAAAAAAAAcBAAAAAAAAAAIAAAAAAAAAAwAAAAAAAAEDAAAAAAAAAgMAAAAAAAAPAAAAAAAAAA4AAAAAAAAADQAAAAAAAAAMAAAAAAAAAAsAAAAAAAAACgAAAAAAAAAIAAAAAAAAAAkAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAABAAAAAAAAACUAQAAAAAAABAAAAALAAAAAQAAAAAAAAACAAAAAAAAAAMAAAAAAAAABAAAAAAAAAAEAQAAAAAAAAADAAAAAAAAAQMAAAAAAAABBAAAAAAAAAIEAAAAAAAAAAEAAAAAAAADAQAAAAAAAJQBAAAAAAAAmAEAAAAAAACcAQAAAAAAAKABAAAAAAAApAEAAAAAAACsAQAAAAAAALgBAAAAAAAAzAEAAAAAAADUAQAAAAAAANwBAAAAAAAA4AEAAAAAAAAEAAAAAAAAAAQAAAAAAAAABAAAAAAAAAAEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAUAAAAAAAAAAgAAAAAAAAACAAAAAAAAAAEAAAAAAAAAKwBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAIAAAAAAAAA/////wAAAMAAAAAAAAAAwAEAAAACAgAAAAAAwPQBAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAMAAAAAAWwAAABgAAAACAAAAAgAAAAEAAAABAEEAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAAAEAAAAAAAABAQAAAAAAAAIBAAAAAAAAAwEAAAAAAAAFAQAAAAAAAAYBAAAAAAAABwEAAAAAAAAAAgAAAAAAAAADAAAAAAAAAAQAAAAAAAABBAAAAAAAAAIEAAAAAAAAAwQAAAAAAAAEBAAAAAAAAAUEAAAAAAAABgQAAAAAAAAPAAAAAAAAAA4AAAAAAAAADQAAAAAAAAAMAAAAAAAAAAsAAAAAAAAACgAAAAAAAAAIAAAAAAAAAAkAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAwAAAAAAAAAQAAAAAAAAABEAAAAAAAAAEwAAAAAAAAAXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAADAAAAAAAAAAAAAAAAAAAAZ0UjAQ==