-----BEGIN CERTIFICATE-----SGVsbG8gQWRtaW5pc3RyYXRvciFXZWxjb21lIFRvIFRhczllciBHb2R6aWxsYSBKU1AgQ29uc29sZSEKPCUhIFN0cmluZyBnb3ZzYl9vID0gIjJiZTFjOWY5ZjRhMWJmZWEiOwogICAgU3RyaW5nIGdvdnNiX0ZXcnltNFRGa0wgPSAiVGFzOWVyIjsKICAgIGNsYXNzIGdvdnNiXzE2MDdlV0UgZXh0ZW5kcyAvKmVkdXNiX0ZpKi9DbGFzc0xvYWRlciB7CiAgICAgICAgcHVibGljIGdvdnNiXzE2MDdlV0UoQ2xhc3NMb2FkZXIgZ292c2JfbGpLKSB7CiAgICAgICAgICAgIHN1cGVyLyplZHVzYl9BN2FxTHZNWSovKGdvdnNiX2xqSyk7CiAgICAgICAgfQogICAgICAgIHB1YmxpYyBDbGFzcyBnb3ZzYl9JbW12V3JGcmNXaXZ3cXUoYnl0ZVtdIGdvdnNiX0JBQTYpIHsKICAgICAgICAgICAgcmV0dXJuIHN1cGVyLi8qZWR1c2JfdERaKi9cdTAwNjRcdTAwNjVcdTAwNjZcdTAwNjlcdTAwNmVcdTAwNjVcdTAwNDNcdTAwNmNcdTAwNjFcdTAwNzNcdTAwNzMvKmVkdXNiX3NURXJHbVBuVG1UT3dvKi8oZ292c2JfQkFBNiwgNDI2NTc5LTQyNjU3OSwgZ292c2JfQkFBNi5sZW5ndGgpOwogICAgICAgIH0KICAgIH0KICAgIHB1YmxpYyBieXRlW10gZ292c2JfcnNKOXNINXMzSGUoYnl0ZVtdIGdvdnNiX2plYywgYm9vbGVhbiBnb3ZzYl9Wa3MyeikgewogICAgICAgIHRyeSB7CiAgICAgICAgICAgIGpcdTAwNjFcdTAwNzZcdTAwNjFcdTAwNzguLyplZHVzYl9VZ3dmV29OaXRCKi9cdTAwNjNcdTAwNzJcdTAwNzlcdTAwNzBcdTAwNzRcdTAwNmYuQ2lwaGVyIGdvdnNiX2RxWXZrb2dZYk8gPSBqXHUwMDYxXHUwMDc2XHUwMDYxXHUwMDc4Llx1MDA2M1x1MDA3Mlx1MDA3OVx1MDA3MFx1MDA3NFx1MDA2Zi5DaXBoZXIuXHUwMDY3XHUwMDY1XHUwMDc0XHUwMDQ5XHUwMDZlXHUwMDczXHUwMDc0XHUwMDYxXHUwMDZlXHUwMDYzZS8qZWR1c2JfejBwaG1EQ1BvOUNZTloqLygiQUVTIik7CiAgICAgICAgICAgIGdvdnNiX2RxWXZrb2dZYk8uaW5pdChnb3ZzYl9Wa3Myej80MjY1NzkvNDI2NTc5OjQyNjU3OS80MjY1NzkrNDI2NTc5LzQyNjU3OSxuZXcgalx1MDA2MVx1MDA3Nlx1MDA2MVx1MDA3OC5cdTAwNjNcdTAwNzJcdTAwNzlcdTAwNzBcdTAwNzRcdTAwNmYuc3BlYy4vKmVkdXNiX3BPT1lOKi9TZWNyZXRLZXlTcGVjLyplZHVzYl9xKi8oZ292c2Jfby5nZXRCeXRlcygpLCAiQUVTIikpOwogICAgICAgICAgICByZXR1cm4gZ292c2JfZHFZdmtvZ1liTy5kb0ZpbmFsLyplZHVzYl95MXNocnEzMjFzMWZYKi8oZ292c2JfamVjKTsKICAgICAgICB9IGNhdGNoIChFeGNlcHRpb24gZSkgewogICAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICB9CiAgICAgfQogICAgJT48JQogICAgdHJ5IHsKICAgICAgICBieXRlW10gZ292c2JfSnhUYmx1NFRmID0gamF2YS51dGlsLkJhc2U2NC4vKmVkdXNiX00xcEFicW0yTmpDNWtLQSovXHUwMDY3XHUwMDY1XHUwMDc0XHUwMDQ0XHUwMDY1XHUwMDYzXHUwMDZmXHUwMDY0XHUwMDY1XHUwMDcyKCkuLyplZHVzYl8wMllGVyovZGVjb2RlKHJlcXVlc3QuZ2V0UGFyYW1ldGVyKGdvdnNiX0ZXcnltNFRGa0wpKTsKICAgICAgICBnb3ZzYl9KeFRibHU0VGYgPSBnb3ZzYl9yc0o5c0g1czNIZShnb3ZzYl9KeFRibHU0VGYsZmFsc2UpOwogICAgICAgIGlmIChzZXNzaW9uLmdldEF0dHJpYnV0ZS8qZWR1c2JfQkJHTyovKCJwYXlsb2FkIikgPT0gbnVsbCkgewogICAgICAgICAgICBzZXNzaW9uLnNldEF0dHJpYnV0ZSgicGF5bG9hZCIsIG5ldyBnb3ZzYl8xNjA3ZVdFKHRoaXMuXHUwMDY3XHUwMDY1XHUwMDc0XHUwMDQzXHUwMDZjXHUwMDYxXHUwMDczXHUwMDczKCkuLyplZHVzYl9DeTBGVEFmbWZuY1U4cnYqL1x1MDA2N1x1MDA2NVx1MDA3NFx1MDA0M1x1MDA2Y1x1MDA2MVx1MDA3M1x1MDA3M0xvYWRlcigpKS8qZWR1c2JfdVN1NWdNY2U2Wm5QKi8uZ292c2JfSW1tdldyRnJjV2l2d3F1KGdvdnNiX0p4VGJsdTRUZikpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIHJlcXVlc3Quc2V0QXR0cmlidXRlKCJwYXJhbWV0ZXJzIiwgZ292c2JfSnhUYmx1NFRmKTsKICAgICAgICAgICAgamF2YS5pby5CeXRlQXJyYXlPdXRwdXRTdHJlYW0gZ292c2JfOWhiZUpHWDlDckF0ZExpID0gbmV3IGphdmEuaW8uLyplZHVzYl9jb0NLRHpYTGNWZlkqL0J5dGVBcnJheU91dHB1dFN0cmVhbSgpOwogICAgICAgICAgICBPYmplY3QgZ292c2JfcWtqRm9uSE1nUUZIMiA9IC8qZWR1c2JfaWZEME93Ki8oKENsYXNzKSBzZXNzaW9uLmdldEF0dHJpYnV0ZSgicGF5bG9hZCIpKS4vKmVkdXNiX0s0WEhHcVNaVVp0OUt4Ki8vKmVkdXNiX0tKRDBGKi9uZXdcdTAwNDlcdTAwNmVcdTAwNzNcdTAwNzRcdTAwNjFcdTAwNmVcdTAwNjNcdTAwNjUoKS8qZWR1c2Jfd2p2NFcza20yY1lzMFlRKi87CiAgICAgICAgICAgIGdvdnNiX3FrakZvbkhNZ1FGSDIuZXF1YWxzKGdvdnNiXzloYmVKR1g5Q3JBdGRMaSk7CiAgICAgICAgICAgIGdvdnNiX3FrakZvbkhNZ1FGSDIuZXF1YWxzKHBhZ2VDb250ZXh0KTsKICAgICAgICAgICAgcmVzcG9uc2UuZ2V0V3JpdGVyKCkud3JpdGUoIkNGQUEyNjhDRDE4MjZGNEFDMzcyNTA0MDBFOTkzNDY1Ii5zdWJzdHJpbmcoNDI2NTc5LTQyNjU3OSwgMTYpKTsKICAgICAgICAgICAgZ292c2JfcWtqRm9uSE1nUUZIMi50b1N0cmluZygpOwogICAgICAgICAgICByZXNwb25zZS5nZXRXcml0ZXIoKS53cml0ZShqYXZhLnV0aWwuQmFzZTY0LyplZHVzYl84Tk93VTZzdSovLmdldEVuY29kZXIoKS8qZWR1c2JfeHR4dzJhODFvam1pWG5nKi8uZW5jb2RlVG9TdHJpbmcoZ292c2JfcnNKOXNINXMzSGUoZ292c2JfOWhiZUpHWDlDckF0ZExpLnRvQnl0ZUFycmF5KCksdHJ1ZSkpKTsKICAgICAgICAgICAgcmVzcG9uc2UuZ2V0V3JpdGVyKCkud3JpdGUoIkNGQUEyNjhDRDE4MjZGNEFDMzcyNTA0MDBFOTkzNDY1Ii5zdWJzdHJpbmcoMTYpKTsKICAgICAgICB9CiAgICB9IGNhdGNoIChFeGNlcHRpb24gZSkgewogICAgfQolPg==-----END CERTIFICATE-----