I2luY2x1ZGUgImFybV9hcmNoLmgiCgoudGV4dAouZnB1CW5lb24KLmNvZGUJMzIKLmdsb2JhbAlnY21faW5pdF92OAoudHlwZQlnY21faW5pdF92OCwlZnVuY3Rpb24KLmFsaWduCTQKZ2NtX2luaXRfdjg6Cgl2bGQxLjY0CQl7cTl9LFtyMV0JCUAgbG9hZCBICgl2bW92Lmk4CQlxOCwjMHhlMQoJdmV4dC44CQlxMyxxOSxxOSwjOAoJdnNobC5pNjQJcTgscTgsIzU3Cgl2c2hyLnU2NAlxMTAscTgsIzYzCgl2ZXh0LjgJCXE4LHExMCxxOCwjOAkJQCB0MD0weGMyLi4uLjAxCgl2ZHVwLjMyCXE5LGQxOFsxXQoJdnNoci51NjQJcTExLHEzLCM2MwoJdnNoci5zMzIJcTkscTksIzMxCQlAIGJyb2FkY2FzdCBjYXJyeSBiaXQKCXZhbmQJCXExMSxxMTEscTgKCXZzaGwuaTY0CXEzLHEzLCMxCgl2ZXh0LjgJCXExMSxxMTEscTExLCM4Cgl2YW5kCQlxOCxxOCxxOQoJdm9ycgkJcTMscTMscTExCQlAIEg8PDw9MQoJdmVvcgkJcTMscTMscTgJCUAgdHdpc3RlZCBICgl2c3QxLjY0CQl7cTN9LFtyMF0KCglieAlscgouc2l6ZQlnY21faW5pdF92OCwuLWdjbV9pbml0X3Y4CgouZ2xvYmFsCWdjbV9nbXVsdF92OAoudHlwZQlnY21fZ211bHRfdjgsJWZ1bmN0aW9uCi5hbGlnbgk0CmdjbV9nbXVsdF92ODoKCXZsZDEuNjQJCXtxOX0sW3IwXQkJQCBsb2FkIFhpCgl2bW92Lmk4CQlxMTEsIzB4ZTEKCXZsZDEuNjQJCXtxMTJ9LFtyMV0JCUAgbG9hZCB0d2lzdGVkIEgKCXZzaGwudTY0CXExMSxxMTEsIzU3CiNpZm5kZWYgX19BUk1FQl9fCgl2cmV2NjQuOAlxOSxxOQojZW5kaWYKCXZleHQuOAkJcTEzLHExMixxMTIsIzgKCW1vdgkJcjMsIzAKCXZleHQuOAkJcTMscTkscTksIzgKCW1vdgkJcjEyLCMwCgl2ZW9yCQlxMTMscTEzLHExMgkJQCBLYXJhdHN1YmEgcHJlLXByb2Nlc3NpbmcKCW1vdgkJcjIscjAKCWIJCS5MZ211bHRfdjgKLnNpemUJZ2NtX2dtdWx0X3Y4LC4tZ2NtX2dtdWx0X3Y4CgouZ2xvYmFsCWdjbV9naGFzaF92OAoudHlwZQlnY21fZ2hhc2hfdjgsJWZ1bmN0aW9uCi5hbGlnbgk0CmdjbV9naGFzaF92ODoKCXZsZDEuNjQJCXtxMH0sW3IwXQkJQCBsb2FkIFtyb3RhdGVkXSBYaQoJc3VicwkJcjMscjMsIzE2Cgl2bW92Lmk4CQlxMTEsIzB4ZTEKCW1vdgkJcjEyLCMxNgoJdmxkMS42NAkJe3ExMn0sW3IxXQkJQCBsb2FkIHR3aXN0ZWQgSAoJbW92ZXEJcjEyLCMwCgl2ZXh0LjgJCXEwLHEwLHEwLCM4Cgl2c2hsLnU2NAlxMTEscTExLCM1NwoJdmxkMS42NAkJe3E5fSxbcjJdLHIxMglAIGxvYWQgW3JvdGF0ZWRdIGlucAoJdmV4dC44CQlxMTMscTEyLHExMiwjOAojaWZuZGVmIF9fQVJNRUJfXwoJdnJldjY0LjgJcTAscTAKCXZyZXY2NC44CXE5LHE5CiNlbmRpZgoJdmVvcgkJcTEzLHExMyxxMTIJCUAgS2FyYXRzdWJhIHByZS1wcm9jZXNzaW5nCgl2ZXh0LjgJCXEzLHE5LHE5LCM4CgliCQkuTG9vcF92OAoKLmFsaWduCTQKLkxvb3Bfdjg6Cgl2ZXh0LjgJCXExMCxxMCxxMCwjOAoJdmVvcgkJcTMscTMscTAJCUAgaW5wXj1YaQoJdmVvcgkJcTkscTkscTEwCQlAIHE5IGlzIHJvdGF0ZWQgaW5wXlhpCgouTGdtdWx0X3Y4OgoJLmJ5dGUJMHg4NiwweDBlLDB4YTgsMHhmMglAIHBtdWxsIHEwLHExMixxMwkJQCBILmxvt1hpLmxvCgl2ZW9yCQlxOSxxOSxxMwkJQCBLYXJhdHN1YmEgcHJlLXByb2Nlc3NpbmcKCS5ieXRlCTB4ODcsMHg0ZSwweGE5LDB4ZjIJQCBwbXVsbDIgcTIscTEyLHEzCQlAIEguaGm3WGkuaGkKCXN1YnMJCXIzLHIzLCMxNgoJLmJ5dGUJMHhhMiwweDJlLDB4YWEsMHhmMglAIHBtdWxsIHExLHExMyxxOQkJQCAoSC5sbytILmhpKbcoWGkubG8rWGkuaGkpCgltb3ZlcQlyMTIsIzAKCgl2ZXh0LjgJCXE5LHEwLHEyLCM4CQlAIEthcmF0c3ViYSBwb3N0LXByb2Nlc3NpbmcKCXZlb3IJCXExMCxxMCxxMgoJdmVvcgkJcTEscTEscTkKCSB2bGQxLjY0CXtxOX0sW3IyXSxyMTIJQCBsb2FkIFtyb3RhdGVkXSBpbnAKCXZlb3IJCXExLHExLHExMAoJLmJ5dGUJMHgyNiwweDRlLDB4ZTAsMHhmMglAIHBtdWxsIHExMCxxMCxxMTEJCUAgMXN0IHBoYXNlCgoJdm1vdgkJZDQsZDMJCUAgWGh8WG0gLSAyNTYtYml0IHJlc3VsdAoJdm1vdgkJZDMsZDAJCUAgWG0gaXMgcm90YXRlZCBYbAojaWZuZGVmIF9fQVJNRUJfXwoJIHZyZXY2NC44CXE5LHE5CiNlbmRpZgoJdmVvcgkJcTAscTEscTEwCgkgdmV4dC44CQlxMyxxOSxxOSwjOAoKCXZleHQuOAkJcTEwLHEwLHEwLCM4CQlAIDJuZCBwaGFzZQoJLmJ5dGUJMHgyNiwweDBlLDB4YTAsMHhmMglAIHBtdWxsIHEwLHEwLHExMQoJdmVvcgkJcTEwLHExMCxxMgoJdmVvcgkJcTAscTAscTEwCgliaHMJCS5Mb29wX3Y4CgojaWZuZGVmIF9fQVJNRUJfXwoJdnJldjY0LjgJcTAscTAKI2VuZGlmCgl2ZXh0LjgJCXEwLHEwLHEwLCM4Cgl2c3QxLjY0CQl7cTB9LFtyMF0JCUAgd3JpdGUgb3V0IFhpCgoJYngJbHIKLnNpemUJZ2NtX2doYXNoX3Y4LC4tZ2NtX2doYXNoX3Y4Ci5hc2NpeiAgIkdIQVNIIGZvciBBUk12OCwgQ1JZUFRPR0FNUyBieSA8YXBwcm9Ab3BlbnNzbC5vcmc+IgouYWxpZ24gIDIK