PD9waHAKIyBHZW5lcmF0ZWQgYnkgdGhlIHByb3RvY29sIGJ1ZmZlciBjb21waWxlci4gIERPIE5PVCBFRElUIQojIHNvdXJjZTogZ29vZ2xlL3Byb3RvYnVmL3N0cnVjdC5wcm90bwoKbmFtZXNwYWNlIEdQQk1ldGFkYXRhXEdvb2dsZVxQcm90b2J1ZjsKCmNsYXNzIFN0cnVjdAp7CiAgICBwdWJsaWMgc3RhdGljICRpc19pbml0aWFsaXplZCA9IGZhbHNlOwoKICAgIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gaW5pdE9uY2UoKSB7CiAgICAgICAgJHBvb2wgPSBcR29vZ2xlXFByb3RvYnVmXEludGVybmFsXERlc2NyaXB0b3JQb29sOjpnZXRHZW5lcmF0ZWRQb29sKCk7CgogICAgICAgIGlmIChzdGF0aWM6OiRpc19pbml0aWFsaXplZCA9PSB0cnVlKSB7CiAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgICRwb29sLT5pbnRlcm5hbEFkZEdlbmVyYXRlZEZpbGUoCiAgICAgICAgICAgICcK/gQKHGdvb2dsZS9wcm90b2J1Zi9zdHJ1Y3QucHJvdG8SD2dvb2dsZS5wcm90b2J1ZiKEAQoGU3RydWN0EjMKBmZpZWxkcxgBIAMoCzIjLmdvb2dsZS5wcm90b2J1Zi5TdHJ1Y3QuRmllbGRzRW50cnkaRQoLRmllbGRzRW50cnkSCwoDa2V5GAEgASgJEiUKBXZhbHVlGAIgASgLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlOgI4ASLqAQoFVmFsdWUSMAoKbnVsbF92YWx1ZRgBIAEoDjIaLmdvb2dsZS5wcm90b2J1Zi5OdWxsVmFsdWVIABIWCgxudW1iZXJfdmFsdWUYAiABKAFIABIWCgxzdHJpbmdfdmFsdWUYAyABKAlIABIUCgpib29sX3ZhbHVlGAQgASgISAASLwoMc3RydWN0X3ZhbHVlGAUgASgLMhcuZ29vZ2xlLnByb3RvYnVmLlN0cnVjdEgAEjAKCmxpc3RfdmFsdWUYBiABKAsyGi5nb29nbGUucHJvdG9idWYuTGlzdFZhbHVlSABCBgoEa2luZCIzCglMaXN0VmFsdWUSJgoGdmFsdWVzGAEgAygLMhYuZ29vZ2xlLnByb3RvYnVmLlZhbHVlKhsKCU51bGxWYWx1ZRIOCgpOVUxMX1ZBTFVFEABCfwoTY29tLmdvb2dsZS5wcm90b2J1ZkILU3RydWN0UHJvdG9QAVovZ29vZ2xlLmdvbGFuZy5vcmcvcHJvdG9idWYvdHlwZXMva25vd24vc3RydWN0cGL4AQGiAgNHUEKqAh5Hb29nbGUuUHJvdG9idWYuV2VsbEtub3duVHlwZXNiBnByb3RvMycKICAgICAgICAsIHRydWUpOwoKICAgICAgICBzdGF0aWM6OiRpc19pbml0aWFsaXplZCA9IHRydWU7CiAgICB9Cn0KCg==