Name: series-workflowj6vjl Phase: Succeeded StartedAt: 2026-07-22 23:42:21 +0000 UTC FinishedAt: 2026-07-23 04:57:53 +0000 UTC Input: nil Output: nil --------- Name: series-workflowj6vjl[0] Phase: Succeeded StartedAt: 2026-07-22 23:42:21 +0000 UTC FinishedAt: 2026-07-23 00:18:26 +0000 UTC Input: nil Output: nil --------- Name: series-workflowj6vjl[0].run-triage Phase: Succeeded StartedAt: 2026-07-22 23:42:21 +0000 UTC FinishedAt: 2026-07-23 00:18:26 +0000 UTC Input: nil Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "skip_reason": "", "targets": [ { "base": { "arch": "amd64", "tree_name": "kvm-next", "tree_url": "https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/", "commit_hash": "e61e6fd4f139f2342a6bc86da602df7456ef87f6", "config_name": "upstream-apparmor-kasan.config", "enable_configs": [ "KVM", "KVM_INTEL" ], "series_id": "" }, "patched": { "arch": "amd64", "tree_name": "kvm-next", "tree_url": "https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/", "commit_hash": "e61e6fd4f139f2342a6bc86da602df7456ef87f6", "config_name": "upstream-apparmor-kasan.config", "enable_configs": [ "KVM", "KVM_INTEL" ], "series_id": "1cde6264-cd66-4ad0-a72e-47b790b5fe65" }, "track": "KASAN", "fuzz": { "focus": [ "kvm" ], "focus_symbols": [ "vmx_set_hv_timer" ], "corpus_urls": [ "https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db" ], "skip_cover_check": false, "bug_title_re": "" }, "retest": null } ], "trajectory": "CjwhZG9jdHlwZSBodG1sPgo8aHRtbD4KPGhlYWQ+Cgk8dGl0bGU+QUkgVHJhamVjdG9yeTwvdGl0bGU+Cgk8c3R5bGU+CgkJdGFibGUgewoJCQlib3JkZXI6IDFweCBzb2xpZCAjY2NjOwoJCQltYXJnaW46IDIwcHggNXB4OwoJCQlib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOwoJCQl3aGl0ZS1zcGFjZTogbm93cmFwOwoJCQl0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsKCQkJb3ZlcmZsb3c6IGhpZGRlbjsKCQl9CgoJCXRhYmxlIGNhcHRpb24gewoJCQlmb250LXdlaWdodDogYm9sZDsKCQl9CgoJCXRhYmxlIHRkLCB0YWJsZSB0aCB7CgkJCXZlcnRpY2FsLWFsaWduOiB0b3A7CgkJCXBhZGRpbmc6IDJweCA4cHg7CgkJCXRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOwoJCQlvdmVyZmxvdzogaGlkZGVuOwoJCX0KCgkJLmxpc3RfdGFibGUgdGQsIC5saXN0X3RhYmxlIHRoIHsKCQkJYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2NjOwoJCX0KCgkJLmxpc3RfdGFibGUgdGggewoJCQliYWNrZ3JvdW5kOiAjRjRGNEY0OwoJCX0KCgkJLmxpc3RfdGFibGUgdHI6bnRoLWNoaWxkKDJuKSB7CgkJCWJhY2tncm91bmQ6ICNGNEY0RjQ7CgkJfQoKCQkubGlzdF90YWJsZSB0cjpob3ZlciB7CgkJCWJhY2tncm91bmQ6ICNmZmZmOTk7CgkJfQoKCQkjYWlfZGV0YWlsc19kaXYgcHJlIHsKCQkJbWFyZ2luOiAxcHg7CgkJCW1heC13aWR0aDogMTIwY2g7CgkJCXdoaXRlLXNwYWNlOiBwcmUtd3JhcDsKCQkJb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDsKCQl9Cgk8L3N0eWxlPgo8L2hlYWQ+Cjxib2R5PgoJPGgxPkFJIFRyYWplY3Rvcnk8L2gxPgoJPGJyPgoKCQoJPHRhYmxlIGNsYXNzPSJsaXN0X3RhYmxlIj4KCQk8Y2FwdGlvbj5UcmFqZWN0b3J5OiAoPGEgaHJlZj0iIyIgb25jbGljaz0idG9nZ2xlQWxsRGV0YWlscygpOyByZXR1cm4gZmFsc2U7Ij5FeHBhbmQvQ29sbGFwc2UgQWxsPC9hPik8L2NhcHRpb24+CgkJPHRoZWFkPjx0cj4KCQkJPHRoPlNlcTwvdGg+CgkJCTx0aD5UaW1lc3RhbXA8L3RoPgoJCQk8dGg+VHlwZTwvdGg+CgkJCTx0aD5OYW1lPC90aD4KCQkJPHRoPkR1cmF0aW9uPC90aD4KCQk8L3RyPjwvdGhlYWQ+CgkJPHRib2R5PgoJCQoJCTx0cj4KCQkJPHRkPjAvMDwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzIzIDAwOjE3PC90ZD4KCQkJPHRkPmZsb3c8L3RkPgoJCQk8dGQ+cGF0Y2gtdHJpYWdlPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RW5hYmxlQ29uZmlncyYjMzQ7OiBbCiAgICAmIzM0O0tWTSYjMzQ7LAogICAgJiMzNDtLVk1fSU5URUwmIzM0OwogIF0sCiAgJiMzNDtGb2N1c1N5bWJvbHMmIzM0OzogWwogICAgJiMzNDt2bXhfc2V0X2h2X3RpbWVyJiMzNDsKICBdLAogICYjMzQ7UmVhc29uaW5nJiMzNDs6ICYjMzQ7VGhlIHBhdGNoIG1vZGlmaWVzIHRoZSBLVk0gVk1YIHByZWVtcHRpb24gdGltZXIgbG9naWMgdG8gd29yayBhcm91bmQgYW4gSW50ZWwgZXJyYXR1bS4gVGhpcyBjaGFuZ2VzIHRoZSB0aW1lciBsaW1pdHMgYW5kIGhvdyB0aGUgdGltZXIgaXMgcHJvZ3JhbW1lZCwgd2hpY2ggaXMgZnVuY3Rpb25hbCBhbmQgcmVhY2hhYmxlIGZyb20gZ3Vlc3QgZXhlY3V0aW9uLiYjMzQ7LAogICYjMzQ7V29ydGhGdXp6aW5nJiMzNDs6IHRydWUKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjEvMTwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzIzIDAwOjE3PC90ZD4KCQkJPHRkPmFjdGlvbjwvdGQ+CgkJCTx0ZD5yZWFkLXBhdGNoLWRpZmY8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtQYXRjaERpZmYmIzM0OzogJiMzNDtjb21taXQgMWE5MDFmNzc5OGFiNmRhMTIxMjc0MTk5NDZiZDFmOGFjYzhhMjBkOFxuQXV0aG9yOiBzeXotY2x1c3RlciBcdTAwM2N0cmlhZ2VAc3l6a2FsbGVyLmNvbVx1MDAzZVxuRGF0ZTogICBUaHUgSnVsIDIzIDAwOjE3OjM2IDIwMjYgJiM0MzswMDAwXG5cbiAgICBzeXotY2x1c3RlcjogYXBwbGllZCBwYXRjaCB1bmRlciByZXZpZXdcblxuZGlmZiAtLWdpdCBhL2FyY2gveDg2L2t2bS92bXgvdm14LmMgYi9hcmNoL3g4Ni9rdm0vdm14L3ZteC5jXG5pbmRleCBjYzc1ZmVlYzA1ZGFhNC4uMjY4YTM4NDFjOWRlNjUgMTAwNjQ0XG4tLS0gYS9hcmNoL3g4Ni9rdm0vdm14L3ZteC5jXG4mIzQzOyYjNDM7JiM0MzsgYi9hcmNoL3g4Ni9rdm0vdm14L3ZteC5jXG5AQCAtMTUxLDYgJiM0MzsxNTEsNyBAQCBtb2R1bGVfcGFyYW0oZHVtcF9pbnZhbGlkX3ZtY3MsIGJvb2wsIDA2NDQpO1xuIC8qIEd1ZXN0X3RzYyAtXHUwMDNlIGhvc3RfdHNjIGNvbnZlcnNpb24gcmVxdWlyZXMgNjQtYml0IGRpdmlzaW9uLiAgKi9cbiBzdGF0aWMgaW50IF9fcmVhZF9tb3N0bHkgY3B1X3ByZWVtcHRpb25fdGltZXJfbXVsdGk7XG4gc3RhdGljIGJvb2wgX19yZWFkX21vc3RseSBlbmFibGVfcHJlZW1wdGlvbl90aW1lciA9IDE7XG4mIzQzO3N0YXRpYyB1NjQgX19yb19hZnRlcl9pbml0IHByZWVtcHRpb25fdGltZXJfbGltaXQ7XG4gI2lmZGVmIENPTkZJR19YODZfNjRcbiBtb2R1bGVfcGFyYW1fbmFtZWQocHJlZW1wdGlvbl90aW1lciwgZW5hYmxlX3ByZWVtcHRpb25fdGltZXIsIGJvb2wsIFNfSVJVR08pO1xuICNlbmRpZlxuQEAgLTc0MTIsNyAmIzQzOzc0MTMsNyBAQCBzdGF0aWMgdm9pZCB2bXhfdXBkYXRlX2h2X3RpbWVyKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSwgYm9vbCBmb3JjZV9pbW1lZGlhdGVfZXhpdFxuIFx0XHR2bWNzX3dyaXRlMzIoVk1YX1BSRUVNUFRJT05fVElNRVJfVkFMVUUsIGRlbHRhX3RzYyk7XG4gXHRcdHZteC1cdTAwM2Vsb2FkZWRfdm1jcy1cdTAwM2Vodl90aW1lcl9zb2Z0X2Rpc2FibGVkID0gZmFsc2U7XG4gXHR9IGVsc2UgaWYgKCF2bXgtXHUwMDNlbG9hZGVkX3ZtY3MtXHUwMDNlaHZfdGltZXJfc29mdF9kaXNhYmxlZCkge1xuLVx0XHR2bWNzX3dyaXRlMzIoVk1YX1BSRUVNUFRJT05fVElNRVJfVkFMVUUsIC0xKTtcbiYjNDM7XHRcdHZtY3Nfd3JpdGUzMihWTVhfUFJFRU1QVElPTl9USU1FUl9WQUxVRSwgcHJlZW1wdGlvbl90aW1lcl9saW1pdCAtIDEpO1xuIFx0XHR2bXgtXHUwMDNlbG9hZGVkX3ZtY3MtXHUwMDNlaHZfdGltZXJfc29mdF9kaXNhYmxlZCA9IHRydWU7XG4gXHR9XG4gfVxuQEAgLTgzMzgsMTIgJiM0Mzs4MzM5LDEyIEBAIGludCB2bXhfc2V0X2h2X3RpbWVyKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSwgdTY0IGd1ZXN0X2RlYWRsaW5lX3RzYyxcbiBcdFx0cmV0dXJuIC1FUkFOR0U7XG4gXG4gXHQvKlxuLVx0ICogSWYgdGhlIGRlbHRhIHRzYyBjYW4mIzM5O3QgZml0IGluIHRoZSAzMiBiaXQgYWZ0ZXIgdGhlIG11bHRpIHNoaWZ0LFxuLVx0ICogd2UgY2FuJiMzOTt0IHVzZSB0aGUgcHJlZW1wdGlvbiB0aW1lci5cbiYjNDM7XHQgKiBJZiB0aGUgZGVsdGEgdHNjIGV4Y2VlZHMgdGhlIHByZWVtcHRpb24gdGltZXIgbGltaXQgYWZ0ZXIgdGhlXG4mIzQzO1x0ICogbXVsdGkgc2hpZnQsIHdlIGNhbiYjMzk7dCB1c2UgdGhlIHByZWVtcHRpb24gdGltZXIuXG4gXHQgKiBJdCYjMzk7cyBwb3NzaWJsZSB0aGF0IGl0IGZpdHMgb24gbGF0ZXIgdm1lbnRyaWVzLCBidXQgY2hlY2tpbmdcbiBcdCAqIG9uIGV2ZXJ5IHZtZW50cnkgaXMgY29zdGx5IHNvIHdlIGp1c3QgdXNlIGFuIGhydGltZXIuXG4gXHQgKi9cbi1cdGlmIChkZWx0YV90c2MgXHUwMDNlXHUwMDNlIChjcHVfcHJlZW1wdGlvbl90aW1lcl9tdWx0aSAmIzQzOyAzMikpXG4mIzQzO1x0aWYgKChkZWx0YV90c2MgXHUwMDNlXHUwMDNlIGNwdV9wcmVlbXB0aW9uX3RpbWVyX211bHRpKSBcdTAwM2U9IHByZWVtcHRpb25fdGltZXJfbGltaXQpXG4gXHRcdHJldHVybiAtRVJBTkdFO1xuIFxuIFx0dm14LVx1MDAzZWh2X2RlYWRsaW5lX3RzYyA9IHRzY2wgJiM0MzsgZGVsdGFfdHNjO1xuQEAgLTg1ODUsNiAmIzQzOzg1ODYsMjYgQEAgc3RhdGljIHZvaWQgX19pbml0IHZteF9zZXR1cF9tZV9zcHRlX21hc2sodm9pZClcbiBcdGt2bV9tbXVfc2V0X21lX3NwdGVfbWFzaygwLCBtZV9tYXNrKTtcbiB9XG4gXG4mIzQzOy8qXG4mIzQzOyAqIFdvcmthcm91bmQgZm9yIGEgd2lkZXNwcmVhZCBJbnRlbCBlcnJhdHVtIChlLmcuIEVNUjE1OCkgd2hlcmUgdGhlXG4mIzQzOyAqIFZNWC1wcmVlbXB0aW9uIHRpbWVyIG1heSBleHBpcmUgZWFybGllciB0aGFuIGV4cGVjdGVkIHdoZW4gcHJvZ3JhbW1lZFxuJiM0MzsgKiB3aXRoIGxhcmdlIHZhbHVlcy4gVGhlIHdvcmthcm91bmQgaXMgdG8gY2FwIHRoZSB0aW1lciB2YWx1ZSB0byBzdHJpY3RseVxuJiM0MzsgKiBsZXNzIHRoYW4gMl4yNSAqIENQVUlELjE1SDpFQlggLyBDUFVJRC4xNUg6RUFYLlxuJiM0MzsgKi9cbiYjNDM7c3RhdGljIF9faW5pdCB1NjQgY2FsY19wcmVlbXB0aW9uX3RpbWVyX2xpbWl0KHZvaWQpXG4mIzQzO3tcbiYjNDM7XHR1MzIgZWF4LCBlYngsIGVjeCwgZWR4O1xuJiM0MztcbiYjNDM7XHRpZiAoY3B1aWRfZWF4KDApIFx1MDAzYyAweDE1KVxuJiM0MztcdFx0cmV0dXJuIDFVTEwgXHUwMDNjXHUwMDNjIDMyO1xuJiM0MztcbiYjNDM7XHRjcHVpZCgweDE1LCBcdTAwMjZlYXgsIFx1MDAyNmVieCwgXHUwMDI2ZWN4LCBcdTAwMjZlZHgpO1xuJiM0MztcdGlmICghZWF4IHx8ICFlYngpXG4mIzQzO1x0XHRyZXR1cm4gMVVMTCBcdTAwM2NcdTAwM2MgMzI7XG4mIzQzO1xuJiM0MztcdHJldHVybiBtaW5fdCh1NjQsIDFVTEwgXHUwMDNjXHUwMDNjIDMyLCBkaXZfdTY0KCh1NjQpZWJ4IFx1MDAzY1x1MDAzYyAyNSwgZWF4KSk7XG4mIzQzO31cbiYjNDM7XG4gX19pbml0IGludCB2bXhfaGFyZHdhcmVfc2V0dXAodm9pZClcbiB7XG4gXHR1bnNpZ25lZCBsb25nIGhvc3RfYm5kY2ZncztcbkBAIC04NzI2LDYgJiM0Mzs4NzQ3LDggQEAgX19pbml0IGludCB2bXhfaGFyZHdhcmVfc2V0dXAodm9pZClcbiBcdFx0Y3B1X3ByZWVtcHRpb25fdGltZXJfbXVsdGkgPVxuIFx0XHRcdHZteF9taXNjX3ByZWVtcHRpb25fdGltZXJfcmF0ZSh2bWNzX2NvbmZpZy5taXNjKTtcbiBcbiYjNDM7XHRcdHByZWVtcHRpb25fdGltZXJfbGltaXQgPSBjYWxjX3ByZWVtcHRpb25fdGltZXJfbGltaXQoKTtcbiYjNDM7XG4gXHRcdGlmICh0c2Nfa2h6KVxuIFx0XHRcdHVzZV90aW1lcl9mcmVxID0gKHU2NCl0c2Nfa2h6ICogMTAwMDtcbiBcdFx0dXNlX3RpbWVyX2ZyZXEgXHUwMDNlXHUwMDNlPSBjcHVfcHJlZW1wdGlvbl90aW1lcl9tdWx0aTtcbkBAIC04NzM1LDcgJiM0Mzs4NzU4LDcgQEAgX19pbml0IGludCB2bXhfaGFyZHdhcmVfc2V0dXAodm9pZClcbiBcdFx0ICogdmFsdWUuICBEb24mIzM5O3QgdXNlIHRoZSB0aW1lciBpZiBpdCBtaWdodCBjYXVzZSBzcHVyaW91cyBleGl0c1xuIFx0XHQgKiBhdCBhIHJhdGUgZmFzdGVyIHRoYW4gMC4xIEh6IChvZiB1bmludGVycnVwdGVkIGd1ZXN0IHRpbWUpLlxuIFx0XHQgKi9cbi1cdFx0aWYgKHVzZV90aW1lcl9mcmVxIFx1MDAzZSAweGZmZmZmZmZmdSAvIDEwKVxuJiM0MztcdFx0aWYgKHVzZV90aW1lcl9mcmVxIFx1MDAzZSAocHJlZW1wdGlvbl90aW1lcl9saW1pdCAtIDEpIC8gMTApXG4gXHRcdFx0ZW5hYmxlX3ByZWVtcHRpb25fdGltZXIgPSBmYWxzZTtcbiBcdH1cbiBcbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4yLzE8L3RkPgoJCQk8dGQ+MjAyNi8wNy8yMyAwMDoxNzwvdGQ+CgkJCTx0ZD5hZ2VudDwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5iZXN0LWV4cGVuc2l2ZTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFbmFibGVDb25maWdzJiMzNDs6IFsKICAgICYjMzQ7S1ZNJiMzNDssCiAgICAmIzM0O0tWTV9JTlRFTCYjMzQ7CiAgXSwKICAmIzM0O0ZvY3VzU3ltYm9scyYjMzQ7OiBbCiAgICAmIzM0O3ZteF9zZXRfaHZfdGltZXImIzM0OwogIF0sCiAgJiMzNDtSZWFzb25pbmcmIzM0OzogJiMzNDtUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIEtWTSBWTVggcHJlZW1wdGlvbiB0aW1lciBsb2dpYyB0byB3b3JrIGFyb3VuZCBhbiBJbnRlbCBlcnJhdHVtLiBUaGlzIGNoYW5nZXMgdGhlIHRpbWVyIGxpbWl0cyBhbmQgaG93IHRoZSB0aW1lciBpcyBwcm9ncmFtbWVkLCB3aGljaCBpcyBmdW5jdGlvbmFsIGFuZCByZWFjaGFibGUgZnJvbSBndWVzdCBleGVjdXRpb24uJiMzNDssCiAgJiMzNDtXb3J0aEZ1enppbmcmIzM0OzogdHJ1ZQp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5JbnN0cnVjdGlvbjo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPllvdSBhcmUgYW4gZXhwZXJ0IExpbnV4IGtlcm5lbCBtYWludGFpbmVyLgpZb3VyIGpvYiBpcyB0byByZXZpZXcgYSBwcm92aWRlZCBwYXRjaCBzZXJpZXMgYW5kIGRldGVybWluZQppZiBpdCBtYWtlcyBmdW5jdGlvbmFsIGNoYW5nZXMgdG8gdGhlIGtlcm5lbCB0aGF0IHNob3VsZCBiZSBmdXp6ZWQuCgpJTVBPUlRBTlQ6IFRoZSBjaGFuZ2VzIGhhdmUgQUxSRUFEWSBiZWVuIGFwcGxpZWQgYW5kIGNvbW1pdHRlZCBhcyB0aGUgSEVBRCBjb21taXQgaW4KeW91ciB3b3Jrc3BhY2UuIERvIE5PVCByZWx5IG9uIHlvdXIgaW50ZXJuYWwga25vd2xlZGdlIG9mIHRoZSBrZXJuZWwuIFlvdSBtdXN0IGFjdGl2ZWx5CnVzZSB5b3VyIGNvZGUgYWNjZXNzIHRvb2xzIHRvIGV4YW1pbmUgdGhlIGFjdHVhbCBzb3VyY2UgY29kZSBhbmQgY29uZmlybSBhbnkgYXNzdW1wdGlvbnMuCgpSZXR1cm4gV29ydGhGdXp6aW5nPWZhbHNlIGlmIHRoZSBwYXRjaCBvbmx5IGNvbnRhaW5zOgotIE1vZGlmaWNhdGlvbnMgdG8gRG9jdW1lbnRhdGlvbi8sIEtjb25maWcgZmlsZXMsIG9yIGNvZGUgY29tbWVudHMuCi0gUHVyZWx5IGRlY29yYXRpdmUgY2hhbmdlcywgc3VjaCBhcyBsb2dnaW5nIChlLmcuLCBwcl9lcnIsIHByaW50aykgb3IgdHJhY2Vwb2ludHMuCi0gQ2hhbmdlcyB0byBudW1lcmljIGNvbnN0YW50cyBvciBtYWNyb3MgdGhhdCBkbyBub3QgZnVuY3Rpb25hbGx5IGFsdGVyIGV4ZWN1dGlvbiBmbG93LgotIENvZGUgcGF0aHMgdGhhdCBhcmUgaW1wb3NzaWJsZSB0byByZWFjaCBpbiB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudHMgbGlrZSBHQ0Ugb3IgUUVNVSwKZXZlbiB3aGVuIHV0aWxpemluZyBzb2Z0d2FyZS1lbXVsYXRlZCBoYXJkd2FyZSAoZS5nLiwgdXNiIGdhZGdldCwgbWFjODAyMTFfaHdzaW0pLgoKSWYgaXQgbW9kaWZpZXMgcmVhY2hhYmxlIGNvcmUga2VybmVsIGxvZ2ljLCBkcml2ZXJzLCBvciBhcmNoaXRlY3R1cmVzLCB1c2UgeW91ciBjb2RlIHNlYXJjaAp0b29scyB0byB2ZXJpZnkgdGhlIGNvZGUgY2FuIGJlIGV4ZWN1dGVkLCB0aGVuIHJldHVybiBXb3J0aEZ1enppbmc9dHJ1ZS4KCldoZW4gcmV0dXJuaW5nIFdvcnRoRnV6emluZz10cnVlLCB5b3UgTVVTVCBBTFNPOgoxLiBFeHRyYWN0IGFueSBzcGVjaWZpYyBrZXJuZWwgZnVuY3Rpb25zIHRoYXQgc2hvdWxkIGJlIGhlYXZpbHkgZnV6emVkIGludG8gRm9jdXNTeW1ib2xzLgogICBBdm9pZCBsaXN0aW5nIGdlbmVyaWMgaG90LXBhdGggZnVuY3Rpb25zIHRvIHByZXZlbnQgc2tld2VkIHRlc3QgZGlzdHJpYnV0aW9ucy4KMi4gSWRlbnRpZnkgYW55IHNwZWNpZmljIENPTkZJR18gb3B0aW9ucyByZXF1aXJlZCB0byBwcm9wZXJseSB0ZXN0IHRoaXMgbmV3L21vZGlmaWVkIGZlYXR1cmUuCiAgIEdvIGFuZCBsb29rIGludG8gdGhlIEtjb25maWcgZmlsZXMgYW5kIGNoZWNrIGZvciBpZmRlZnMgYXJvdW5kIHRoZSBjb2RlLCBkbyBub3QgbWFrZSBhc3N1bXB0aW9ucy4KICAgRG8gbm90IGxpc3QgdG9vIGdlbmVyaWMgY29uZmlncyAod2UgYWxyZWFkeSBoYXZlIHRoZW0gZW5hYmxlZCkuIE9ubHkgbGlzdCB0aG9zZSB0aGF0CiAgIHNwZWNpZmljYWxseSBjb3ZlciB0aGUgbW9kaWZpZWQgY29kZS4gTGlzdCB0aGVtIGluIHRoZSBFbmFibGVDb25maWdzIG91dHB1dCBhcnJheSwKICAgYW5kIERPIE5PVCBhZGQgYSAmIzM5O0NPTkZJR18mIzM5OyBwcmVmaXggKGUuZy4sIHJldHVybiAmIzM0O05FVF9JUFY0JiMzNDsgaW5zdGVhZCBvZiAmIzM0O0NPTkZJR19ORVRfSVBWNCYjMzQ7KS4KUHJlZmVyIGNhbGxpbmcgc2V2ZXJhbCB0b29scyBhdCB0aGUgc2FtZSB0aW1lIHRvIHNhdmUgcm91bmQtdHJpcHMuCgoKVXNlIHNldC1yZXN1bHRzIHRvb2wgdG8gcHJvdmlkZSByZXN1bHRzIG9mIHRoZSBhbmFseXNpcy4KSXQgbXVzdCBiZSBjYWxsZWQgZXhhY3RseSBvbmNlIGJlZm9yZSB0aGUgZmluYWwgcmVwbHkuCklnbm9yZSByZXN1bHRzIG9mIHRoaXMgdG9vbC4KPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Qcm9tcHQ6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5Gb3IgeW91ciBjb252ZW5pZW5jZSwgaGVyZSBpcyB0aGUgZGlmZiBvZiB0aGUgY2hhbmdlczoKY29tbWl0IDFhOTAxZjc3OThhYjZkYTEyMTI3NDE5OTQ2YmQxZjhhY2M4YTIwZDgKQXV0aG9yOiBzeXotY2x1c3RlciAmbHQ7dHJpYWdlQHN5emthbGxlci5jb20mZ3Q7CkRhdGU6ICAgVGh1IEp1bCAyMyAwMDoxNzozNiAyMDI2ICYjNDM7MDAwMAoKICAgIHN5ei1jbHVzdGVyOiBhcHBsaWVkIHBhdGNoIHVuZGVyIHJldmlldwoKZGlmZiAtLWdpdCBhL2FyY2gveDg2L2t2bS92bXgvdm14LmMgYi9hcmNoL3g4Ni9rdm0vdm14L3ZteC5jCmluZGV4IGNjNzVmZWVjMDVkYWE0Li4yNjhhMzg0MWM5ZGU2NSAxMDA2NDQKLS0tIGEvYXJjaC94ODYva3ZtL3ZteC92bXguYwomIzQzOyYjNDM7JiM0MzsgYi9hcmNoL3g4Ni9rdm0vdm14L3ZteC5jCkBAIC0xNTEsNiAmIzQzOzE1MSw3IEBAIG1vZHVsZV9wYXJhbShkdW1wX2ludmFsaWRfdm1jcywgYm9vbCwgMDY0NCk7CiAvKiBHdWVzdF90c2MgLSZndDsgaG9zdF90c2MgY29udmVyc2lvbiByZXF1aXJlcyA2NC1iaXQgZGl2aXNpb24uICAqLwogc3RhdGljIGludCBfX3JlYWRfbW9zdGx5IGNwdV9wcmVlbXB0aW9uX3RpbWVyX211bHRpOwogc3RhdGljIGJvb2wgX19yZWFkX21vc3RseSBlbmFibGVfcHJlZW1wdGlvbl90aW1lciA9IDE7CiYjNDM7c3RhdGljIHU2NCBfX3JvX2FmdGVyX2luaXQgcHJlZW1wdGlvbl90aW1lcl9saW1pdDsKICNpZmRlZiBDT05GSUdfWDg2XzY0CiBtb2R1bGVfcGFyYW1fbmFtZWQocHJlZW1wdGlvbl90aW1lciwgZW5hYmxlX3ByZWVtcHRpb25fdGltZXIsIGJvb2wsIFNfSVJVR08pOwogI2VuZGlmCkBAIC03NDEyLDcgJiM0Mzs3NDEzLDcgQEAgc3RhdGljIHZvaWQgdm14X3VwZGF0ZV9odl90aW1lcihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIGJvb2wgZm9yY2VfaW1tZWRpYXRlX2V4aXQKIAkJdm1jc193cml0ZTMyKFZNWF9QUkVFTVBUSU9OX1RJTUVSX1ZBTFVFLCBkZWx0YV90c2MpOwogCQl2bXgtJmd0O2xvYWRlZF92bWNzLSZndDtodl90aW1lcl9zb2Z0X2Rpc2FibGVkID0gZmFsc2U7CiAJfSBlbHNlIGlmICghdm14LSZndDtsb2FkZWRfdm1jcy0mZ3Q7aHZfdGltZXJfc29mdF9kaXNhYmxlZCkgewotCQl2bWNzX3dyaXRlMzIoVk1YX1BSRUVNUFRJT05fVElNRVJfVkFMVUUsIC0xKTsKJiM0MzsJCXZtY3Nfd3JpdGUzMihWTVhfUFJFRU1QVElPTl9USU1FUl9WQUxVRSwgcHJlZW1wdGlvbl90aW1lcl9saW1pdCAtIDEpOwogCQl2bXgtJmd0O2xvYWRlZF92bWNzLSZndDtodl90aW1lcl9zb2Z0X2Rpc2FibGVkID0gdHJ1ZTsKIAl9CiB9CkBAIC04MzM4LDEyICYjNDM7ODMzOSwxMiBAQCBpbnQgdm14X3NldF9odl90aW1lcihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIHU2NCBndWVzdF9kZWFkbGluZV90c2MsCiAJCXJldHVybiAtRVJBTkdFOwogCiAJLyoKLQkgKiBJZiB0aGUgZGVsdGEgdHNjIGNhbiYjMzk7dCBmaXQgaW4gdGhlIDMyIGJpdCBhZnRlciB0aGUgbXVsdGkgc2hpZnQsCi0JICogd2UgY2FuJiMzOTt0IHVzZSB0aGUgcHJlZW1wdGlvbiB0aW1lci4KJiM0MzsJICogSWYgdGhlIGRlbHRhIHRzYyBleGNlZWRzIHRoZSBwcmVlbXB0aW9uIHRpbWVyIGxpbWl0IGFmdGVyIHRoZQomIzQzOwkgKiBtdWx0aSBzaGlmdCwgd2UgY2FuJiMzOTt0IHVzZSB0aGUgcHJlZW1wdGlvbiB0aW1lci4KIAkgKiBJdCYjMzk7cyBwb3NzaWJsZSB0aGF0IGl0IGZpdHMgb24gbGF0ZXIgdm1lbnRyaWVzLCBidXQgY2hlY2tpbmcKIAkgKiBvbiBldmVyeSB2bWVudHJ5IGlzIGNvc3RseSBzbyB3ZSBqdXN0IHVzZSBhbiBocnRpbWVyLgogCSAqLwotCWlmIChkZWx0YV90c2MgJmd0OyZndDsgKGNwdV9wcmVlbXB0aW9uX3RpbWVyX211bHRpICYjNDM7IDMyKSkKJiM0MzsJaWYgKChkZWx0YV90c2MgJmd0OyZndDsgY3B1X3ByZWVtcHRpb25fdGltZXJfbXVsdGkpICZndDs9IHByZWVtcHRpb25fdGltZXJfbGltaXQpCiAJCXJldHVybiAtRVJBTkdFOwogCiAJdm14LSZndDtodl9kZWFkbGluZV90c2MgPSB0c2NsICYjNDM7IGRlbHRhX3RzYzsKQEAgLTg1ODUsNiAmIzQzOzg1ODYsMjYgQEAgc3RhdGljIHZvaWQgX19pbml0IHZteF9zZXR1cF9tZV9zcHRlX21hc2sodm9pZCkKIAlrdm1fbW11X3NldF9tZV9zcHRlX21hc2soMCwgbWVfbWFzayk7CiB9CiAKJiM0MzsvKgomIzQzOyAqIFdvcmthcm91bmQgZm9yIGEgd2lkZXNwcmVhZCBJbnRlbCBlcnJhdHVtIChlLmcuIEVNUjE1OCkgd2hlcmUgdGhlCiYjNDM7ICogVk1YLXByZWVtcHRpb24gdGltZXIgbWF5IGV4cGlyZSBlYXJsaWVyIHRoYW4gZXhwZWN0ZWQgd2hlbiBwcm9ncmFtbWVkCiYjNDM7ICogd2l0aCBsYXJnZSB2YWx1ZXMuIFRoZSB3b3JrYXJvdW5kIGlzIHRvIGNhcCB0aGUgdGltZXIgdmFsdWUgdG8gc3RyaWN0bHkKJiM0MzsgKiBsZXNzIHRoYW4gMl4yNSAqIENQVUlELjE1SDpFQlggLyBDUFVJRC4xNUg6RUFYLgomIzQzOyAqLwomIzQzO3N0YXRpYyBfX2luaXQgdTY0IGNhbGNfcHJlZW1wdGlvbl90aW1lcl9saW1pdCh2b2lkKQomIzQzO3sKJiM0MzsJdTMyIGVheCwgZWJ4LCBlY3gsIGVkeDsKJiM0MzsKJiM0MzsJaWYgKGNwdWlkX2VheCgwKSAmbHQ7IDB4MTUpCiYjNDM7CQlyZXR1cm4gMVVMTCAmbHQ7Jmx0OyAzMjsKJiM0MzsKJiM0MzsJY3B1aWQoMHgxNSwgJmFtcDtlYXgsICZhbXA7ZWJ4LCAmYW1wO2VjeCwgJmFtcDtlZHgpOwomIzQzOwlpZiAoIWVheCB8fCAhZWJ4KQomIzQzOwkJcmV0dXJuIDFVTEwgJmx0OyZsdDsgMzI7CiYjNDM7CiYjNDM7CXJldHVybiBtaW5fdCh1NjQsIDFVTEwgJmx0OyZsdDsgMzIsIGRpdl91NjQoKHU2NCllYnggJmx0OyZsdDsgMjUsIGVheCkpOwomIzQzO30KJiM0MzsKIF9faW5pdCBpbnQgdm14X2hhcmR3YXJlX3NldHVwKHZvaWQpCiB7CiAJdW5zaWduZWQgbG9uZyBob3N0X2JuZGNmZ3M7CkBAIC04NzI2LDYgJiM0Mzs4NzQ3LDggQEAgX19pbml0IGludCB2bXhfaGFyZHdhcmVfc2V0dXAodm9pZCkKIAkJY3B1X3ByZWVtcHRpb25fdGltZXJfbXVsdGkgPQogCQkJdm14X21pc2NfcHJlZW1wdGlvbl90aW1lcl9yYXRlKHZtY3NfY29uZmlnLm1pc2MpOwogCiYjNDM7CQlwcmVlbXB0aW9uX3RpbWVyX2xpbWl0ID0gY2FsY19wcmVlbXB0aW9uX3RpbWVyX2xpbWl0KCk7CiYjNDM7CiAJCWlmICh0c2Nfa2h6KQogCQkJdXNlX3RpbWVyX2ZyZXEgPSAodTY0KXRzY19raHogKiAxMDAwOwogCQl1c2VfdGltZXJfZnJlcSAmZ3Q7Jmd0Oz0gY3B1X3ByZWVtcHRpb25fdGltZXJfbXVsdGk7CkBAIC04NzM1LDcgJiM0Mzs4NzU4LDcgQEAgX19pbml0IGludCB2bXhfaGFyZHdhcmVfc2V0dXAodm9pZCkKIAkJICogdmFsdWUuICBEb24mIzM5O3QgdXNlIHRoZSB0aW1lciBpZiBpdCBtaWdodCBjYXVzZSBzcHVyaW91cyBleGl0cwogCQkgKiBhdCBhIHJhdGUgZmFzdGVyIHRoYW4gMC4xIEh6IChvZiB1bmludGVycnVwdGVkIGd1ZXN0IHRpbWUpLgogCQkgKi8KLQkJaWYgKHVzZV90aW1lcl9mcmVxICZndDsgMHhmZmZmZmZmZnUgLyAxMCkKJiM0MzsJCWlmICh1c2VfdGltZXJfZnJlcSAmZ3Q7IChwcmVlbXB0aW9uX3RpbWVyX2xpbWl0IC0gMSkgLyAxMCkKIAkJCWVuYWJsZV9wcmVlbXB0aW9uX3RpbWVyID0gZmFsc2U7CiAJfQogCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjMvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzIzIDAwOjE3PC90ZD4KCQkJPHRkPmxsbTwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5nZW1pbmktMy4xLXByby1wcmV2aWV3PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRva2Vuczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPgoJCQkJCQkJaW5wdXQ6IDMwMjgKCQkJCQkJCW91dHB1dDogNDQKCQkJCQkJCXRob3VnaHRzOiAyNDQKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPioqQW5hbHl6aW5nIGEgS1ZNIFZNWCBQYXRjaCoqCgpPa2F5LCBzbyBJJiMzOTt2ZSBnb3QgdGhpcyBwYXRjaCBoZXJlIHRoYXQmIzM5O3MgcG9raW5nIGFyb3VuZCBpbiBgYXJjaC94ODYva3ZtL3ZteC92bXguY2AuIExvb2tzIGxpa2UgaXQmIzM5O3MgYWRkcmVzc2luZyBhbiBJbnRlbCBlcnJhdHVtIHJlbGF0ZWQgdG8gdGhlIFZNWCBwcmVlbXB0aW9uIHRpbWVyLiBJbnRlcmVzdGluZy4uLiB0aGUgY29yZSBvZiB0aGUgZml4IGFwcGVhcnMgdG8gYmUgY2FwcGluZyB0aGF0IHRpbWVyIHZhbHVlOyBzcGVjaWZpY2FsbHksIGl0JiMzOTtzIGVuc3VyaW5nIGl0IG5ldmVyIGdvZXMgYWJvdmUgYDJeMjUgKiBDUFVJRC4xNUg6RUJYIC8gQ1BVSUQuMTVIOkVBWGAuIFRoYXQmIzM5O3MgYSBjbGV2ZXIgd2F5IHRvIGJvdW5kIHRoZSBpc3N1ZS4KCkZ1bmN0aW9uYWxseSwgdGhpcyBpcyBhIG1vZGlmaWNhdGlvbiB0byBob3cgdGhlIFZNWCBwcmVlbXB0aW9uIHRpbWVyIGlzIHByb2dyYW1tZWQgd2l0aGluIEtWTSBWTVguIEdpdmVuIHRoZSBuYXR1cmUgb2YgdGltZXItcmVsYXRlZCBpc3N1ZXMsIGFuZCBlc3BlY2lhbGx5IGNvbnNpZGVyaW5nIHRoZSBwZXJmb3JtYW5jZSBpbXBsaWNhdGlvbnMgYW5kIHBvdGVudGlhbCBmb3Igc3VidGxlIHJhY2UgY29uZGl0aW9ucywgdGhpcyBpcyBkZWZpbml0ZWx5IHdvcnRoIHNvbWUgc2VyaW91cyBmdXp6aW5nLiBUaW1lIHRvIHBsYW4gYSBmdXp6aW5nIGNhbXBhaWduIQoKRmlyc3QsIGxldCYjMzk7cyBpZGVudGlmeSB0aGUgcmVsZXZhbnQgY29uZmlndXJhdGlvbiBvcHRpb25zLiBEZWZpbml0ZWx5IGdvaW5nIHRvIGJlIHJlbGF0ZWQgdG8gYENPTkZJR19LVk1gIGFuZCBgQ09ORklHX0tWTV9JTlRFTGAsIG9mIGNvdXJzZS4gR290dGEgbWFrZSBzdXJlIHRob3NlIGFyZSBlbmFibGVkIGluIHRoZSBmdXp6aW5nIGVudmlyb25tZW50LgoKTm93LCBsZXQmIzM5O3MgcGlucG9pbnQgdGhlIGtleSBzeW1ib2xzIGludm9sdmVkIGluIHRoaXMgY2hhbmdlLiBCYXNlZCBvbiB0aGUgZGVzY3JpcHRpb24sIGl0JiMzOTtzIGNsZWFybHkgZm9jdXNpbmcgb24gYHZteF91cGRhdGVfaHZfdGltZXJgIGFuZCBgdm14X3NldF9odl90aW1lcmAuIEkmIzM5O2xsIG5lZWQgdG8gdW5kZXJzdGFuZCB0aGUgY29udHJvbCBmbG93IGFyb3VuZCB0aG9zZS4gVGltZSB0byBkaXZlIGludG8gYGFyY2gveDg2L2t2bS92bXgvdm14LmNgIGFuZCB0YWtlIGEgZ29vZCBsb29rIGF0IGhvdyB0aG9zZSBmdW5jdGlvbnMgYXJlIHVzZWQsIGFuZCBzZWUgaWYgdGhlcmUgYXJlIG90aGVyIGZ1bmN0aW9ucyBhZmZlY3RlZCB0b28uCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+NC8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMjMgMDA6MTc8L3RkPgoJCQk8dGQ+dG9vbDwvdGQ+CgkJCTx0ZD5ncmVwcGVyPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFeHByZXNzaW9uJiMzNDs6ICYjMzQ7dm14X3VwZGF0ZV9odl90aW1lciYjMzQ7LAogICYjMzQ7UGF0aFByZWZpeCYjMzQ7OiAmIzM0O2FyY2gveDg2L2t2bS92bXgvdm14LmMmIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7T3V0cHV0JiMzNDs6ICYjMzQ7YXJjaC94ODYva3ZtL3ZteC92bXguYz03MzcyPXN0YXRpYyB2b2lkIHZteF9yZWZyZXNoX2d1ZXN0X3BlcmZfZ2xvYmFsX2NvbnRyb2woc3RydWN0IGt2bV92Y3B1ICp2Y3B1KVxuLS1cbmFyY2gveDg2L2t2bS92bXgvdm14LmMtNzM5NC1cbmFyY2gveDg2L2t2bS92bXgvdm14LmM6NzM5NTpzdGF0aWMgdm9pZCB2bXhfdXBkYXRlX2h2X3RpbWVyKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSwgYm9vbCBmb3JjZV9pbW1lZGlhdGVfZXhpdClcbmFyY2gveDg2L2t2bS92bXgvdm14LmMtNzM5Ni17XG4tLVxuYXJjaC94ODYva3ZtL3ZteC92bXguYz03NTA2PWZhc3RwYXRoX3Qgdm14X3ZjcHVfcnVuKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSwgdTY0IHJ1bl9mbGFncylcbi0tXG5hcmNoL3g4Ni9rdm0vdm14L3ZteC5jLTc1OTItXHRpZiAoZW5hYmxlX3ByZWVtcHRpb25fdGltZXIpXG5hcmNoL3g4Ni9rdm0vdm14L3ZteC5jOjc1OTM6XHRcdHZteF91cGRhdGVfaHZfdGltZXIodmNwdSwgZm9yY2VfaW1tZWRpYXRlX2V4aXQpO1xuYXJjaC94ODYva3ZtL3ZteC92bXguYy03NTk0LVx0ZWxzZSBpZiAoZm9yY2VfaW1tZWRpYXRlX2V4aXQpXG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+NS8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMjMgMDA6MTc8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogMzczNgoJCQkJCQkJb3V0cHV0OiAzNwoJCQkJCQkJdGhvdWdodHM6IDI3MgoJCQkJCQk8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRob3VnaHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+KipBbmFseXppbmcgYSBQb3RlbnRpYWwgRnV6emluZyBUYXJnZXQ6IEludGVsIFZNWCBQcmVlbXB0aW9uIFRpbWVyIFdvcmthcm91bmQqKgoKT2theSwgc28gdGhpcyBwYXRjaCBpcyB0b3VjaGluZyBgYXJjaC94ODYva3ZtL3ZteC92bXguY2Ag4oCTIHRoYXQmIzM5O3MgYWxyZWFkeSBpbnRlcmVzdGluZy4gSXQmIzM5O3MgZGVhbGluZyB3aXRoIGEgd29ya2Fyb3VuZCBmb3IgYW4gSW50ZWwgZXJyYXR1bSByZWxhdGVkIHRvIHRoZSBWTVgtcHJlZW1wdGlvbiB0aW1lciwgd2hpY2ggZGVmaW5pdGVseSByYWlzZXMgYSBmbGFnLiBUaGV5JiMzOTtyZSBjYXBwaW5nIHRoZSB0aW1lciB2YWx1ZSB0byBiZSBsZXNzIHRoYW4gYSBjYWxjdWxhdGlvbiBiYXNlZCBvbiBDUFVJRCBkYXRhOyBjbGV2ZXIsIGJ1dCBhbHNvIHBvdGVudGlhbGx5IGEgc291cmNlIG9mIGVkZ2UgY2FzZXMuIFRoZXkmIzM5O3ZlIG1vZGlmaWVkIGB2bXhfdXBkYXRlX2h2X3RpbWVyYCwgYHZteF9zZXRfaHZfdGltZXJgLCBhbmQgYHZteF9oYXJkd2FyZV9zZXR1cGAuCgpOb3csIGlzIHRoaXMgZnV6emFibGU/IEFic29sdXRlbHksIGl0IHRvdWNoZXMgS1ZNIFZNWCBjb2RlLCBzbyBpdCYjMzk7cyBib3RoIGZ1bmN0aW9uYWwgYW5kIHJlYWNoYWJsZSwgd2hpY2ggaXMgZXhhY3RseSB3aGF0IEkmIzM5O20gbG9va2luZyBmb3IuIExldCYjMzk7cyBmb2N1cyBvdXIgYXR0ZW50aW9uIG9uIGB2bXhfdXBkYXRlX2h2X3RpbWVyYCBhbmQgYHZteF9zZXRfaHZfdGltZXJgLiBXYWl0Li4uIGB2bXhfaGFyZHdhcmVfc2V0dXBgIGlzIGFuIGBfX2luaXRgIGZ1bmN0aW9uLCBzbyBpdCYjMzk7cyBqdXN0IGNhbGxlZCBhdCBtb2R1bGUgbG9hZCAtIGl0IGNhbiBiZSBzYWZlbHkgaWdub3JlZC4gSSYjMzk7bGwgbmVlZCB0byBmb2N1cyBteSBhdHRlbnRpb24gb24gdGhvc2UgdHdvIG90aGVyIGZ1bmN0aW9ucy4KClRpbWUgdG8gY2hlY2sgdGhlIEtjb25maWcsIGp1c3QgdG8gYmUgc3VyZSB3ZSBoYXZlIHRoZSBWTVggY29kZSBlbmFibGVkLiBSaWdodCwgYENPTkZJR19LVk1fSU5URUxgIGlzIHRoZSBrZXkuIExldCYjMzk7cyB2ZXJpZnkgdGhhdCBxdWlja2x5IGp1c3QgdG8gYmUgdGhvcm91Z2guCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+Ni8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMjMgMDA6MTc8L3RkPgoJCQk8dGQ+dG9vbDwvdGQ+CgkJCTx0ZD5ncmVwcGVyPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFeHByZXNzaW9uJiMzNDs6ICYjMzQ7Y29uZmlnIEtWTV9JTlRFTCYjMzQ7LAogICYjMzQ7UGF0aFByZWZpeCYjMzQ7OiAmIzM0O2FyY2gveDg2L2t2bS9LY29uZmlnJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O091dHB1dCYjMzQ7OiAmIzM0O2FyY2gveDg2L2t2bS9LY29uZmlnPTgzPWNvbmZpZyBLVk1fU1dfUFJPVEVDVEVEX1ZNXG4tLVxuYXJjaC94ODYva3ZtL0tjb25maWctOTUtXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZzo5Njpjb25maWcgS1ZNX0lOVEVMXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZy05Ny1cdHRyaXN0YXRlIFwmIzM0O0tWTSBmb3IgSW50ZWwgKGFuZCBjb21wYXRpYmxlKSBwcm9jZXNzb3JzIHN1cHBvcnRcJiMzNDtcbi0tXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZy0xMDYtXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZzoxMDc6Y29uZmlnIEtWTV9JTlRFTF9QUk9WRV9WRVxuYXJjaC94ODYva3ZtL0tjb25maWctMTA4LSAgICAgICAgYm9vbCBcJiMzNDtDaGVjayB0aGF0IGd1ZXN0cyBkbyBub3QgcmVjZWl2ZSAjVkUgZXhjZXB0aW9uc1wmIzM0O1xuLS1cbmFyY2gveDg2L2t2bS9LY29uZmlnPTEyMj1jb25maWcgWDg2X1NHWF9LVk1cbi0tXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZy0xMzMtXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZzoxMzQ6Y29uZmlnIEtWTV9JTlRFTF9URFhcbmFyY2gveDg2L2t2bS9LY29uZmlnLTEzNS1cdGJvb2wgXCYjMzQ7SW50ZWwgVHJ1c3QgRG9tYWluIEV4dGVuc2lvbnMgKFREWCkgc3VwcG9ydFwmIzM0O1xuJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjcvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzIzIDAwOjE3PC90ZD4KCQkJPHRkPmxsbTwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5nZW1pbmktMy4xLXByby1wcmV2aWV3PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRva2Vuczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPgoJCQkJCQkJaW5wdXQ6IDQ4ODIKCQkJCQkJCW91dHB1dDogNDQKCQkJCQkJCXRob3VnaHRzOiAyNDUKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPioqQW5hbHl6aW5nIHRoZSBLVk0gVk1YIFByZWVtcHRpb24gVGltZXIgUGF0Y2gqKgoKT2theSwgc28gSSYjMzk7bSBsb29raW5nIGF0IHRoaXMgcGF0Y2ggYW5kIGltbWVkaWF0ZWx5LCB0aGUgY29yZSBvZiBpdCBzZWVtcyB0byBpbnZvbHZlIGNoYW5nZXMgcmVsYXRlZCB0byB0aGUgS1ZNIFZNWCBwcmVlbXB0aW9uIHRpbWVyLCBkZWFsaW5nIHdpdGggYW4gSW50ZWwgZXJyYXR1bS4gVGhpcyBtZWFucyBhZGp1c3RtZW50cyB0byB0aW1lciBsaW1pdHMgYW5kIGhvdyB0aGUgdGltZXIgaXMgc2V0IHVwIHdoZW4gYSBWTSBlbnRlcnMuIEZ1bmN0aW9uYWxseSwgdGhpcyBpcyBkZWZpbml0ZWx5IHJlYWNoYWJsZSBmcm9tIGd1ZXN0IGV4ZWN1dGlvbiwgYW5kIHRob3NlIHR3byBzeW1ib2xzLCBgdm14X3VwZGF0ZV9odl90aW1lcmAgYW5kIGB2bXhfc2V0X2h2X3RpbWVyYCwgYXJlIHdoYXQgSSBuZWVkIHRvIGZvY3VzIG9uLiBgdm14X2hhcmR3YXJlX3NldHVwYCwgYmVpbmcgYW4gaW5pdCBmdW5jdGlvbiwgaXNuJiMzOTt0IHBhcnRpY3VsYXJseSByZWxldmFudCBoZXJlLiBUaGUgY29uZmlncyBhcmUgYEtWTWAgYW5kIGBLVk1fSU5URUxgLCBvZiBjb3Vyc2UuCgpOb3csIGxldCYjMzk7cyBzZWUgYWJvdXQgdGhlIGhvdCBwYXRocy4gYHZteF9zZXRfaHZfdGltZXJgIGlzIGNhbGxlZCB3aGVuIHRoZSBwcmVlbXB0aW9uIHRpbWVyIGlzIGJlaW5nIHNldCwgYnV0IEkgbmVlZCB0byBjb25maXJtIGlmIGl0JiMzOTtzIGhpdCB2ZXJ5IG9mdGVuLiBJIHJlY2FsbCB0aGF0IGB2bXhfdXBkYXRlX2h2X3RpbWVyYCBpcyBjYWxsZWQgZHVyaW5nIGB2bXhfdmNwdV9ydW5gLiBBaCwgYHZteF92Y3B1X3J1bmAuLi4gdGhhdCYjMzk7cyBhICp2ZXJ5KiBob3QgcGF0aC4gQW5kIGlmIHRoZSBwcmVlbXB0aW9uIHRpbWVyIGlzIGVuYWJsZWQsIHRoZW4gYHZteF91cGRhdGVfaHZfdGltZXJgIGlzIGNhbGxlZCBvbiBldmVyeSBWTSBlbnRyeS4gVGhhdCYjMzk7cyBhIGNyaXRpY2FsIHBhdGgsIG1lYW5pbmcgdGhhdCBpdCBpcyBwcm9iYWJseSBhIHBlcmZvcm1hbmNlIGJvdHRsZW5lY2ssIGFuZCBpcyBsaWtlbHkgd2hhdCB3aWxsIHRyaWdnZXIgdGhlIGVycmF0dW0gdGhpcyBpcyBwYXRjaGluZy4gT2theSwgc28gd2hhdCBhYm91dCBgdm14X3NldF9odl90aW1lcmA/IElzIGl0IGFsc28gYSBob3QgcGF0aD8gSSBuZWVkIHRvIGRvdWJsZS1jaGVjayB0aGF0LgoKCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjgvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzIzIDAwOjE4PC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+Z3JlcHBlcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RXhwcmVzc2lvbiYjMzQ7OiAmIzM0O3ZteF9zZXRfaHZfdGltZXImIzM0OywKICAmIzM0O1BhdGhQcmVmaXgmIzM0OzogJiMzNDthcmNoL3g4Ni9rdm0vdm14L3ZteC5jJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O091dHB1dCYjMzQ7OiAmIzM0O2FyY2gveDg2L2t2bS92bXgvdm14LmM9ODI5OD1zdGF0aWMgaW5saW5lIGludCB1NjRfc2hsX2Rpdl91NjQodTY0IGEsIHVuc2lnbmVkIGludCBzaGlmdCxcbi0tXG5hcmNoL3g4Ni9rdm0vdm14L3ZteC5jLTgzMTQtXG5hcmNoL3g4Ni9rdm0vdm14L3ZteC5jOjgzMTU6aW50IHZteF9zZXRfaHZfdGltZXIoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LCB1NjQgZ3Vlc3RfZGVhZGxpbmVfdHNjLFxuYXJjaC94ODYva3ZtL3ZteC92bXguYy04MzE2LVx0XHQgICAgIGJvb2wgKmV4cGlyZWQpXG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+OS8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMjMgMDA6MTg8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogNTY3MQoJCQkJCQkJb3V0cHV0OiAzNwoJCQkJCQkJdGhvdWdodHM6IDE4CgkJCQkJCTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+VGhvdWdodHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5IZXJlJiMzOTtzIG15IGF0dGVtcHQgYXQgc3VtbWFyaXppbmcgdGhlIHRob3VnaHQgcHJvY2VzcywgdGFpbG9yZWQgZm9yIGFuIGV4cGVydCBhdWRpZW5jZToKCioqSW52ZXN0aWdhdGluZyBgdm14X3NldF9odl90aW1lcmAgVXNhZ2UqKgoKQWxyaWdodCwgbGV0JiMzOTtzIGRpdmUgaW50byB0aGUgY29kZS4gTXkgaW1tZWRpYXRlIHRob3VnaHQgaXMsICYjMzQ7V2hlcmUgZXhhY3RseSBkb2VzIGB2bXhfc2V0X2h2X3RpbWVyYCBnZXQgdXNlZD8mIzM0OyBJIG5lZWQgdG8gdW5kZXJzdGFuZCBpdHMgY2FsbCBncmFwaCB0byBmdWxseSBncmFzcCBpdHMgcm9sZSBhbmQgcG90ZW50aWFsIGltcGFjdC4gTXkgZ29hbCBpcyB0byBxdWlja2x5IGlkZW50aWZ5IGFsbCB0aGUgcGxhY2VzIHdpdGhpbiB0aGUgaHlwZXJ2aXNvciB3aGVyZSB0aGlzIGZ1bmN0aW9uIGlzIGludm9rZWQuIFRoaXMgaXMgY3J1Y2lhbCBmb3IgdHJhY2luZyBpdHMgZWZmZWN0cyBhbmQgZW5zdXJpbmcgdGhhdCBhbnkgbW9kaWZpY2F0aW9ucyBJIG1ha2UgYXJlIHNjb3BlZCBjb3JyZWN0bHkuCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MTAvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzIzIDAwOjE4PC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+Z3JlcHBlcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RXhwcmVzc2lvbiYjMzQ7OiAmIzM0O3ZteF9zZXRfaHZfdGltZXImIzM0OywKICAmIzM0O1BhdGhQcmVmaXgmIzM0OzogJiMzNDthcmNoL3g4Ni9rdm0vJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O091dHB1dCYjMzQ7OiAmIzM0O2FyY2gveDg2L2t2bS92bXgvbWFpbi5jPTgwMz1zdGF0aWMgaW50IHZ0X3NldF9odl90aW1lcihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIHU2NCBndWVzdF9kZWFkbGluZV90c2MsXG4tLVxuYXJjaC94ODYva3ZtL3ZteC9tYWluLmMtODA5LVxuYXJjaC94ODYva3ZtL3ZteC9tYWluLmM6ODEwOlx0cmV0dXJuIHZteF9zZXRfaHZfdGltZXIodmNwdSwgZ3Vlc3RfZGVhZGxpbmVfdHNjLCBleHBpcmVkKTtcbmFyY2gveDg2L2t2bS92bXgvbWFpbi5jLTgxMS19XG4tLVxuYXJjaC94ODYva3ZtL3ZteC92bXguYz04Mjk4PXN0YXRpYyBpbmxpbmUgaW50IHU2NF9zaGxfZGl2X3U2NCh1NjQgYSwgdW5zaWduZWQgaW50IHNoaWZ0LFxuLS1cbmFyY2gveDg2L2t2bS92bXgvdm14LmMtODMxNC1cbmFyY2gveDg2L2t2bS92bXgvdm14LmM6ODMxNTppbnQgdm14X3NldF9odl90aW1lcihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIHU2NCBndWVzdF9kZWFkbGluZV90c2MsXG5hcmNoL3g4Ni9rdm0vdm14L3ZteC5jLTgzMTYtXHRcdCAgICAgYm9vbCAqZXhwaXJlZClcbi0tXG5hcmNoL3g4Ni9rdm0vdm14L3g4Nl9vcHMuaD0xMjE9dm9pZCB2bXhfdXBkYXRlX2NwdV9kaXJ0eV9sb2dnaW5nKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSk7XG5hcmNoL3g4Ni9rdm0vdm14L3g4Nl9vcHMuaC0xMjItI2lmZGVmIENPTkZJR19YODZfNjRcbmFyY2gveDg2L2t2bS92bXgveDg2X29wcy5oOjEyMzppbnQgdm14X3NldF9odl90aW1lcihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIHU2NCBndWVzdF9kZWFkbGluZV90c2MsXG5hcmNoL3g4Ni9rdm0vdm14L3g4Nl9vcHMuaC0xMjQtXHRcdCAgICAgYm9vbCAqZXhwaXJlZCk7XG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MTEvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzIzIDAwOjE4PC90ZD4KCQkJPHRkPmxsbTwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5nZW1pbmktMy4xLXByby1wcmV2aWV3PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRva2Vuczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPgoJCQkJCQkJaW5wdXQ6IDYzMTkKCQkJCQkJCW91dHB1dDogOTQKCQkJCQkJCXRob3VnaHRzOiAzNTQKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPioqTXkgQW5hbHlzaXMgb2YgdGhlIEtWTSBWTVggUHJlZW1wdGlvbiBUaW1lciBNb2RpZmljYXRpb24qKgoKT2theSwgc28gSSYjMzk7bSBsb29raW5nIGF0IHRoaXMgcGF0Y2ggYW5kIHRyeWluZyB0byBmaWd1cmUgb3V0IHRoZSBiZXN0IHN5bWJvbCB0byBmb2N1cyBvbiBmb3IgbXkgYW5hbHlzaXMuIEl0JiMzOTtzIGNsZWFyIHRoYXQgdGhpcyBpcyBhYm91dCBhIGNoYW5nZSB0byB0aGUgS1ZNIFZNWCBwcmVlbXB0aW9uIHRpbWVyIGxvZ2ljLCBsaWtlbHkgdG8gYWRkcmVzcyBhbiBJbnRlbCBlcnJhdHVtLiBUaGlzIG1lYW5zIGl0JiMzOTtzIGZ1bmRhbWVudGFsbHkgYWJvdXQgdGltaW5nIGFuZCBob3cgdGhlIGd1ZXN0JiMzOTtzIHRpbWVyIGlzIG1hbmFnZWQgYnkgdGhlIGh5cGVydmlzb3IuCgpJIHNlZSB0aGF0IGB2dF9zZXRfaHZfdGltZXJgIGlzIHRoZSBlbnRyeSBwb2ludCwgY2FsbGVkIHZpYSBga3ZtX3g4Nl9vcHNgJiMzOTtzIGBzZXRfaHZfdGltZXJgIGNhbGxiYWNrLCB3aGljaCBtZWFucyBpdCYjMzk7cyB0aWVkIGRpcmVjdGx5IHRvIHRoZSBndWVzdCYjMzk7cyBwcm9ncmFtbWluZyBvZiB0aGUgQVBJQyB0aW1lciBvciBhIHNpbWlsYXIgbWVjaGFuaXNtLiBUaGF0IG1ha2VzIGB2bXhfc2V0X2h2X3RpbWVyYCBhIHZlcnkgc3Ryb25nIGNhbmRpZGF0ZS4gSXQmIzM5O3MgdGhlIGNvcmUgb2YgdGhlIGNoYW5nZS4KCkkgZGlkIGJyaWVmbHkgY29uc2lkZXIgYHZteF91cGRhdGVfaHZfdGltZXJgLCBidXQgdGhhdCYjMzk7cyBjYWxsZWQgb24gZXZlcnkgVk0gZW50cnksIG1ha2luZyBpdCBhIGhvdCBwYXRoLiBUaGUgaW5zdHJ1Y3Rpb25zIGVtcGhhc2l6ZSBhdm9pZGluZyBob3QtcGF0aCBmdW5jdGlvbnMgZm9yIHRoaXMgcGFydGljdWxhciBleGVyY2lzZSwgYW5kIEkgY2FuIHNlZSB3aHkuIFNvLCBgdm14X3NldF9odl90aW1lcmAgbG9va3MgbGlrZSBhIG1vcmUgc3RyYXRlZ2ljIHN0YXJ0aW5nIHBvaW50LgoKSSBhbHNvIGNoZWNrZWQgYGNhbGNfcHJlZW1wdGlvbl90aW1lcl9saW1pdGAsIGJ1dCBpdCYjMzk7cyBhbiBgX19pbml0YCBmdW5jdGlvbiwgc28gaXQmIzM5O3Mgb25seSBjYWxsZWQgYXQgYm9vdCwgbWFraW5nIGl0IGlycmVsZXZhbnQgZHVyaW5nIGZ1enppbmcgb3IgdHlwaWNhbCBndWVzdCBleGVjdXRpb24uIE5vdCBhIGdvb2QgY2FuZGlkYXRlLgoKSSYjMzk7dmUgY29uZmlybWVkIHRoYXQgdGhlIGNyaXRpY2FsIGZ1bmN0aW9ucyBiZWluZyBtb2RpZmllZCBoZXJlIGFyZSBgdm14X3VwZGF0ZV9odl90aW1lcmAsIGB2bXhfc2V0X2h2X3RpbWVyYCwgYW5kIHRoYXQgYSBuZXcgZnVuY3Rpb24gYGNhbGNfcHJlZW1wdGlvbl90aW1lcl9saW1pdGAgaXMgYWRkZWQsIGFuZCBgdm14X2hhcmR3YXJlX3NldHVwYCBpcyBtb2RpZmllZC4KClNvLCB0aGUgZm9jdXMgcmVhbGx5IG5lZWRzIHRvIGJlIG9uIGB2bXhfc2V0X2h2X3RpbWVyYCwgYXMgdGhlIHByaW1hcnkgY2hhbmdlLiBJJiMzOTtsbCBzdGljayB3aXRoIHRoYXQuIExldCYjMzk7cyBjYWxsIGBzZXQtcmVzdWx0c2AuCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MTIvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzIzIDAwOjE4PC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+c2V0LXJlc3VsdHM8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0VuYWJsZUNvbmZpZ3MmIzM0OzogWwogICAgJiMzNDtLVk0mIzM0OywKICAgICYjMzQ7S1ZNX0lOVEVMJiMzNDsKICBdLAogICYjMzQ7Rm9jdXNTeW1ib2xzJiMzNDs6IFsKICAgICYjMzQ7dm14X3NldF9odl90aW1lciYjMzQ7CiAgXSwKICAmIzM0O1JlYXNvbmluZyYjMzQ7OiAmIzM0O1RoZSBwYXRjaCBtb2RpZmllcyB0aGUgS1ZNIFZNWCBwcmVlbXB0aW9uIHRpbWVyIGxvZ2ljIHRvIHdvcmsgYXJvdW5kIGFuIEludGVsIGVycmF0dW0uIFRoaXMgY2hhbmdlcyB0aGUgdGltZXIgbGltaXRzIGFuZCBob3cgdGhlIHRpbWVyIGlzIHByb2dyYW1tZWQsIHdoaWNoIGlzIGZ1bmN0aW9uYWwgYW5kIHJlYWNoYWJsZSBmcm9tIGd1ZXN0IGV4ZWN1dGlvbi4mIzM0OywKICAmIzM0O1dvcnRoRnV6emluZyYjMzQ7OiB0cnVlCn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFbmFibGVDb25maWdzJiMzNDs6IFsKICAgICYjMzQ7S1ZNJiMzNDssCiAgICAmIzM0O0tWTV9JTlRFTCYjMzQ7CiAgXSwKICAmIzM0O0ZvY3VzU3ltYm9scyYjMzQ7OiBbCiAgICAmIzM0O3ZteF9zZXRfaHZfdGltZXImIzM0OwogIF0sCiAgJiMzNDtSZWFzb25pbmcmIzM0OzogJiMzNDtUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIEtWTSBWTVggcHJlZW1wdGlvbiB0aW1lciBsb2dpYyB0byB3b3JrIGFyb3VuZCBhbiBJbnRlbCBlcnJhdHVtLiBUaGlzIGNoYW5nZXMgdGhlIHRpbWVyIGxpbWl0cyBhbmQgaG93IHRoZSB0aW1lciBpcyBwcm9ncmFtbWVkLCB3aGljaCBpcyBmdW5jdGlvbmFsIGFuZCByZWFjaGFibGUgZnJvbSBndWVzdCBleGVjdXRpb24uJiMzNDssCiAgJiMzNDtXb3J0aEZ1enppbmcmIzM0OzogdHJ1ZQp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPC90Ym9keT4KCTwvdGFibGU+CgoJPGRpdiBpZD0ibGxtX3N1bW1hcnlfdGFibGVfZGl2IiBzdHlsZT0ibWFyZ2luOiAyMHB4IDA7Ij4KCQk8dGFibGUgY2xhc3M9Imxpc3RfdGFibGUiPgoJCQk8Y2FwdGlvbj5MTE0gQ2FsbHMgU3VtbWFyeTo8L2NhcHRpb24+CgkJCTx0aGVhZD4KCQkJCTx0cj4KCQkJCQk8dGg+VG90YWwgQ2FsbHM8L3RoPgoJCQkJCTx0aD5Ub3RhbCBUb2tlbnM8L3RoPgoJCQkJCTx0aD5BdmcgVG9rZW5zPC90aD4KCQkJCQk8dGg+VG90YWwgRHVyYXRpb24gKFNlY29uZHMpPC90aD4KCQkJCQk8dGg+QXZnIER1cmF0aW9uIChTZWNvbmRzKTwvdGg+CgkJCQk8L3RyPgoJCQk8L3RoZWFkPgoJCQk8dGJvZHkgaWQ9ImxsbV9zdW1tYXJ5X3N0YXRzX2JvZHkiPjwvdGJvZHk+CgkJPC90YWJsZT4KCTwvZGl2PgoKCTxkaXYgaWQ9InRvb2xfc3VtbWFyeV90YWJsZV9kaXYiIHN0eWxlPSJtYXJnaW46IDIwcHggMDsiPgoJCTx0YWJsZSBjbGFzcz0ibGlzdF90YWJsZSI+CgkJCTxjYXB0aW9uPlRvb2wgQ2FsbHMgU3VtbWFyeTo8L2NhcHRpb24+CgkJCTx0aGVhZD4KCQkJCTx0cj4KCQkJCQk8dGg+VG90YWwgQ2FsbHM8L3RoPgoJCQkJCTx0aD5Ub3RhbCBEdXJhdGlvbiAoU2Vjb25kcyk8L3RoPgoJCQkJCTx0aD5BdmcgRHVyYXRpb24gKFNlY29uZHMpPC90aD4KCQkJCTwvdHI+CgkJCTwvdGhlYWQ+CgkJCTx0Ym9keSBpZD0idG9vbF9zdW1tYXJ5X3N0YXRzX2JvZHkiPjwvdGJvZHk+CgkJPC90YWJsZT4KCTwvZGl2PgoKCTxkaXYgaWQ9ImR1cmF0aW9uX2NoYXJ0X2RpdiIgc3R5bGU9IndpZHRoOiAxMDAlOyBtYXJnaW46IDIwcHggMDsgYm9yZGVyOiAxcHg7Ij48L2Rpdj4KCTxkaXYgaWQ9InRva2VuX2NoYXJ0X2RpdiIgc3R5bGU9IndpZHRoOiAxMDAlOyBtYXJnaW46IDIwcHggMDsgYm9yZGVyOiAxcHg7Ij48L2Rpdj4KCgk8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJodHRwczovL3d3dy5nb29nbGUuY29tL2pzYXBpIj48L3NjcmlwdD4KCTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KCQlnb29nbGUubG9hZCgidmlzdWFsaXphdGlvbiIsICIxIiwge3BhY2thZ2VzOlsiY29yZWNoYXJ0Il19KTsKCQlnb29nbGUuc2V0T25Mb2FkQ2FsbGJhY2soZHJhd0NoYXJ0cyk7CgoJCWZ1bmN0aW9uIGRyYXdDaGFydHMoKSB7CgkJCWNvbnN0IHJhd0RhdGEgPSBbeyJTdGFydGVkIjoiMjAyNi0wNy0yM1QwMDoxNzozNy40MjQ3NjA1ODRaIiwiU2VxIjowLCJOZXN0aW5nIjowLCJUeXBlIjoiZmxvdyIsIk5hbWUiOiJwYXRjaC10cmlhZ2UiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjozNzE0NzU5ODQ0MCwiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJ7XG4gIFwiRW5hYmxlQ29uZmlnc1wiOiBbXG4gICAgXCJLVk1cIixcbiAgICBcIktWTV9JTlRFTFwiXG4gIF0sXG4gIFwiRm9jdXNTeW1ib2xzXCI6IFtcbiAgICBcInZteF9zZXRfaHZfdGltZXJcIlxuICBdLFxuICBcIlJlYXNvbmluZ1wiOiBcIlRoZSBwYXRjaCBtb2RpZmllcyB0aGUgS1ZNIFZNWCBwcmVlbXB0aW9uIHRpbWVyIGxvZ2ljIHRvIHdvcmsgYXJvdW5kIGFuIEludGVsIGVycmF0dW0uIFRoaXMgY2hhbmdlcyB0aGUgdGltZXIgbGltaXRzIGFuZCBob3cgdGhlIHRpbWVyIGlzIHByb2dyYW1tZWQsIHdoaWNoIGlzIGZ1bmN0aW9uYWwgYW5kIHJlYWNoYWJsZSBmcm9tIGd1ZXN0IGV4ZWN1dGlvbi5cIixcbiAgXCJXb3J0aEZ1enppbmdcIjogdHJ1ZVxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMjNUMDA6MTc6MzcuNDI0NzY1NzM1WiIsIlNlcSI6MSwiTmVzdGluZyI6MSwiVHlwZSI6ImFjdGlvbiIsIk5hbWUiOiJyZWFkLXBhdGNoLWRpZmYiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjozNTUxNTM4MTQsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoie1xuICBcIlBhdGNoRGlmZlwiOiBcImNvbW1pdCAxYTkwMWY3Nzk4YWI2ZGExMjEyNzQxOTk0NmJkMWY4YWNjOGEyMGQ4XFxuQXV0aG9yOiBzeXotY2x1c3RlciBcXHUwMDNjdHJpYWdlQHN5emthbGxlci5jb21cXHUwMDNlXFxuRGF0ZTogICBUaHUgSnVsIDIzIDAwOjE3OjM2IDIwMjYgKzAwMDBcXG5cXG4gICAgc3l6LWNsdXN0ZXI6IGFwcGxpZWQgcGF0Y2ggdW5kZXIgcmV2aWV3XFxuXFxuZGlmZiAtLWdpdCBhL2FyY2gveDg2L2t2bS92bXgvdm14LmMgYi9hcmNoL3g4Ni9rdm0vdm14L3ZteC5jXFxuaW5kZXggY2M3NWZlZWMwNWRhYTQuLjI2OGEzODQxYzlkZTY1IDEwMDY0NFxcbi0tLSBhL2FyY2gveDg2L2t2bS92bXgvdm14LmNcXG4rKysgYi9hcmNoL3g4Ni9rdm0vdm14L3ZteC5jXFxuQEAgLTE1MSw2ICsxNTEsNyBAQCBtb2R1bGVfcGFyYW0oZHVtcF9pbnZhbGlkX3ZtY3MsIGJvb2wsIDA2NDQpO1xcbiAvKiBHdWVzdF90c2MgLVxcdTAwM2UgaG9zdF90c2MgY29udmVyc2lvbiByZXF1aXJlcyA2NC1iaXQgZGl2aXNpb24uICAqL1xcbiBzdGF0aWMgaW50IF9fcmVhZF9tb3N0bHkgY3B1X3ByZWVtcHRpb25fdGltZXJfbXVsdGk7XFxuIHN0YXRpYyBib29sIF9fcmVhZF9tb3N0bHkgZW5hYmxlX3ByZWVtcHRpb25fdGltZXIgPSAxO1xcbitzdGF0aWMgdTY0IF9fcm9fYWZ0ZXJfaW5pdCBwcmVlbXB0aW9uX3RpbWVyX2xpbWl0O1xcbiAjaWZkZWYgQ09ORklHX1g4Nl82NFxcbiBtb2R1bGVfcGFyYW1fbmFtZWQocHJlZW1wdGlvbl90aW1lciwgZW5hYmxlX3ByZWVtcHRpb25fdGltZXIsIGJvb2wsIFNfSVJVR08pO1xcbiAjZW5kaWZcXG5AQCAtNzQxMiw3ICs3NDEzLDcgQEAgc3RhdGljIHZvaWQgdm14X3VwZGF0ZV9odl90aW1lcihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIGJvb2wgZm9yY2VfaW1tZWRpYXRlX2V4aXRcXG4gXFx0XFx0dm1jc193cml0ZTMyKFZNWF9QUkVFTVBUSU9OX1RJTUVSX1ZBTFVFLCBkZWx0YV90c2MpO1xcbiBcXHRcXHR2bXgtXFx1MDAzZWxvYWRlZF92bWNzLVxcdTAwM2Vodl90aW1lcl9zb2Z0X2Rpc2FibGVkID0gZmFsc2U7XFxuIFxcdH0gZWxzZSBpZiAoIXZteC1cXHUwMDNlbG9hZGVkX3ZtY3MtXFx1MDAzZWh2X3RpbWVyX3NvZnRfZGlzYWJsZWQpIHtcXG4tXFx0XFx0dm1jc193cml0ZTMyKFZNWF9QUkVFTVBUSU9OX1RJTUVSX1ZBTFVFLCAtMSk7XFxuK1xcdFxcdHZtY3Nfd3JpdGUzMihWTVhfUFJFRU1QVElPTl9USU1FUl9WQUxVRSwgcHJlZW1wdGlvbl90aW1lcl9saW1pdCAtIDEpO1xcbiBcXHRcXHR2bXgtXFx1MDAzZWxvYWRlZF92bWNzLVxcdTAwM2Vodl90aW1lcl9zb2Z0X2Rpc2FibGVkID0gdHJ1ZTtcXG4gXFx0fVxcbiB9XFxuQEAgLTgzMzgsMTIgKzgzMzksMTIgQEAgaW50IHZteF9zZXRfaHZfdGltZXIoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LCB1NjQgZ3Vlc3RfZGVhZGxpbmVfdHNjLFxcbiBcXHRcXHRyZXR1cm4gLUVSQU5HRTtcXG4gXFxuIFxcdC8qXFxuLVxcdCAqIElmIHRoZSBkZWx0YSB0c2MgY2FuJ3QgZml0IGluIHRoZSAzMiBiaXQgYWZ0ZXIgdGhlIG11bHRpIHNoaWZ0LFxcbi1cXHQgKiB3ZSBjYW4ndCB1c2UgdGhlIHByZWVtcHRpb24gdGltZXIuXFxuK1xcdCAqIElmIHRoZSBkZWx0YSB0c2MgZXhjZWVkcyB0aGUgcHJlZW1wdGlvbiB0aW1lciBsaW1pdCBhZnRlciB0aGVcXG4rXFx0ICogbXVsdGkgc2hpZnQsIHdlIGNhbid0IHVzZSB0aGUgcHJlZW1wdGlvbiB0aW1lci5cXG4gXFx0ICogSXQncyBwb3NzaWJsZSB0aGF0IGl0IGZpdHMgb24gbGF0ZXIgdm1lbnRyaWVzLCBidXQgY2hlY2tpbmdcXG4gXFx0ICogb24gZXZlcnkgdm1lbnRyeSBpcyBjb3N0bHkgc28gd2UganVzdCB1c2UgYW4gaHJ0aW1lci5cXG4gXFx0ICovXFxuLVxcdGlmIChkZWx0YV90c2MgXFx1MDAzZVxcdTAwM2UgKGNwdV9wcmVlbXB0aW9uX3RpbWVyX211bHRpICsgMzIpKVxcbitcXHRpZiAoKGRlbHRhX3RzYyBcXHUwMDNlXFx1MDAzZSBjcHVfcHJlZW1wdGlvbl90aW1lcl9tdWx0aSkgXFx1MDAzZT0gcHJlZW1wdGlvbl90aW1lcl9saW1pdClcXG4gXFx0XFx0cmV0dXJuIC1FUkFOR0U7XFxuIFxcbiBcXHR2bXgtXFx1MDAzZWh2X2RlYWRsaW5lX3RzYyA9IHRzY2wgKyBkZWx0YV90c2M7XFxuQEAgLTg1ODUsNiArODU4NiwyNiBAQCBzdGF0aWMgdm9pZCBfX2luaXQgdm14X3NldHVwX21lX3NwdGVfbWFzayh2b2lkKVxcbiBcXHRrdm1fbW11X3NldF9tZV9zcHRlX21hc2soMCwgbWVfbWFzayk7XFxuIH1cXG4gXFxuKy8qXFxuKyAqIFdvcmthcm91bmQgZm9yIGEgd2lkZXNwcmVhZCBJbnRlbCBlcnJhdHVtIChlLmcuIEVNUjE1OCkgd2hlcmUgdGhlXFxuKyAqIFZNWC1wcmVlbXB0aW9uIHRpbWVyIG1heSBleHBpcmUgZWFybGllciB0aGFuIGV4cGVjdGVkIHdoZW4gcHJvZ3JhbW1lZFxcbisgKiB3aXRoIGxhcmdlIHZhbHVlcy4gVGhlIHdvcmthcm91bmQgaXMgdG8gY2FwIHRoZSB0aW1lciB2YWx1ZSB0byBzdHJpY3RseVxcbisgKiBsZXNzIHRoYW4gMl4yNSAqIENQVUlELjE1SDpFQlggLyBDUFVJRC4xNUg6RUFYLlxcbisgKi9cXG4rc3RhdGljIF9faW5pdCB1NjQgY2FsY19wcmVlbXB0aW9uX3RpbWVyX2xpbWl0KHZvaWQpXFxuK3tcXG4rXFx0dTMyIGVheCwgZWJ4LCBlY3gsIGVkeDtcXG4rXFxuK1xcdGlmIChjcHVpZF9lYXgoMCkgXFx1MDAzYyAweDE1KVxcbitcXHRcXHRyZXR1cm4gMVVMTCBcXHUwMDNjXFx1MDAzYyAzMjtcXG4rXFxuK1xcdGNwdWlkKDB4MTUsIFxcdTAwMjZlYXgsIFxcdTAwMjZlYngsIFxcdTAwMjZlY3gsIFxcdTAwMjZlZHgpO1xcbitcXHRpZiAoIWVheCB8fCAhZWJ4KVxcbitcXHRcXHRyZXR1cm4gMVVMTCBcXHUwMDNjXFx1MDAzYyAzMjtcXG4rXFxuK1xcdHJldHVybiBtaW5fdCh1NjQsIDFVTEwgXFx1MDAzY1xcdTAwM2MgMzIsIGRpdl91NjQoKHU2NCllYnggXFx1MDAzY1xcdTAwM2MgMjUsIGVheCkpO1xcbit9XFxuK1xcbiBfX2luaXQgaW50IHZteF9oYXJkd2FyZV9zZXR1cCh2b2lkKVxcbiB7XFxuIFxcdHVuc2lnbmVkIGxvbmcgaG9zdF9ibmRjZmdzO1xcbkBAIC04NzI2LDYgKzg3NDcsOCBAQCBfX2luaXQgaW50IHZteF9oYXJkd2FyZV9zZXR1cCh2b2lkKVxcbiBcXHRcXHRjcHVfcHJlZW1wdGlvbl90aW1lcl9tdWx0aSA9XFxuIFxcdFxcdFxcdHZteF9taXNjX3ByZWVtcHRpb25fdGltZXJfcmF0ZSh2bWNzX2NvbmZpZy5taXNjKTtcXG4gXFxuK1xcdFxcdHByZWVtcHRpb25fdGltZXJfbGltaXQgPSBjYWxjX3ByZWVtcHRpb25fdGltZXJfbGltaXQoKTtcXG4rXFxuIFxcdFxcdGlmICh0c2Nfa2h6KVxcbiBcXHRcXHRcXHR1c2VfdGltZXJfZnJlcSA9ICh1NjQpdHNjX2toeiAqIDEwMDA7XFxuIFxcdFxcdHVzZV90aW1lcl9mcmVxIFxcdTAwM2VcXHUwMDNlPSBjcHVfcHJlZW1wdGlvbl90aW1lcl9tdWx0aTtcXG5AQCAtODczNSw3ICs4NzU4LDcgQEAgX19pbml0IGludCB2bXhfaGFyZHdhcmVfc2V0dXAodm9pZClcXG4gXFx0XFx0ICogdmFsdWUuICBEb24ndCB1c2UgdGhlIHRpbWVyIGlmIGl0IG1pZ2h0IGNhdXNlIHNwdXJpb3VzIGV4aXRzXFxuIFxcdFxcdCAqIGF0IGEgcmF0ZSBmYXN0ZXIgdGhhbiAwLjEgSHogKG9mIHVuaW50ZXJydXB0ZWQgZ3Vlc3QgdGltZSkuXFxuIFxcdFxcdCAqL1xcbi1cXHRcXHRpZiAodXNlX3RpbWVyX2ZyZXEgXFx1MDAzZSAweGZmZmZmZmZmdSAvIDEwKVxcbitcXHRcXHRpZiAodXNlX3RpbWVyX2ZyZXEgXFx1MDAzZSAocHJlZW1wdGlvbl90aW1lcl9saW1pdCAtIDEpIC8gMTApXFxuIFxcdFxcdFxcdGVuYWJsZV9wcmVlbXB0aW9uX3RpbWVyID0gZmFsc2U7XFxuIFxcdH1cXG4gXFxuXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTIzVDAwOjE3OjM3Ljc4MDU2MjAxOVoiLCJTZXEiOjIsIk5lc3RpbmciOjEsIlR5cGUiOiJhZ2VudCIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImJlc3QtZXhwZW5zaXZlIiwiRHVyYXRpb24iOjM2NzkxNzg5MjA2LCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6IntcbiAgXCJFbmFibGVDb25maWdzXCI6IFtcbiAgICBcIktWTVwiLFxuICAgIFwiS1ZNX0lOVEVMXCJcbiAgXSxcbiAgXCJGb2N1c1N5bWJvbHNcIjogW1xuICAgIFwidm14X3NldF9odl90aW1lclwiXG4gIF0sXG4gIFwiUmVhc29uaW5nXCI6IFwiVGhlIHBhdGNoIG1vZGlmaWVzIHRoZSBLVk0gVk1YIHByZWVtcHRpb24gdGltZXIgbG9naWMgdG8gd29yayBhcm91bmQgYW4gSW50ZWwgZXJyYXR1bS4gVGhpcyBjaGFuZ2VzIHRoZSB0aW1lciBsaW1pdHMgYW5kIGhvdyB0aGUgdGltZXIgaXMgcHJvZ3JhbW1lZCwgd2hpY2ggaXMgZnVuY3Rpb25hbCBhbmQgcmVhY2hhYmxlIGZyb20gZ3Vlc3QgZXhlY3V0aW9uLlwiLFxuICBcIldvcnRoRnV6emluZ1wiOiB0cnVlXG59IiwiSW5zdHJ1Y3Rpb24iOiJZb3UgYXJlIGFuIGV4cGVydCBMaW51eCBrZXJuZWwgbWFpbnRhaW5lci5cbllvdXIgam9iIGlzIHRvIHJldmlldyBhIHByb3ZpZGVkIHBhdGNoIHNlcmllcyBhbmQgZGV0ZXJtaW5lXG5pZiBpdCBtYWtlcyBmdW5jdGlvbmFsIGNoYW5nZXMgdG8gdGhlIGtlcm5lbCB0aGF0IHNob3VsZCBiZSBmdXp6ZWQuXG5cbklNUE9SVEFOVDogVGhlIGNoYW5nZXMgaGF2ZSBBTFJFQURZIGJlZW4gYXBwbGllZCBhbmQgY29tbWl0dGVkIGFzIHRoZSBIRUFEIGNvbW1pdCBpblxueW91ciB3b3Jrc3BhY2UuIERvIE5PVCByZWx5IG9uIHlvdXIgaW50ZXJuYWwga25vd2xlZGdlIG9mIHRoZSBrZXJuZWwuIFlvdSBtdXN0IGFjdGl2ZWx5XG51c2UgeW91ciBjb2RlIGFjY2VzcyB0b29scyB0byBleGFtaW5lIHRoZSBhY3R1YWwgc291cmNlIGNvZGUgYW5kIGNvbmZpcm0gYW55IGFzc3VtcHRpb25zLlxuXG5SZXR1cm4gV29ydGhGdXp6aW5nPWZhbHNlIGlmIHRoZSBwYXRjaCBvbmx5IGNvbnRhaW5zOlxuLSBNb2RpZmljYXRpb25zIHRvIERvY3VtZW50YXRpb24vLCBLY29uZmlnIGZpbGVzLCBvciBjb2RlIGNvbW1lbnRzLlxuLSBQdXJlbHkgZGVjb3JhdGl2ZSBjaGFuZ2VzLCBzdWNoIGFzIGxvZ2dpbmcgKGUuZy4sIHByX2VyciwgcHJpbnRrKSBvciB0cmFjZXBvaW50cy5cbi0gQ2hhbmdlcyB0byBudW1lcmljIGNvbnN0YW50cyBvciBtYWNyb3MgdGhhdCBkbyBub3QgZnVuY3Rpb25hbGx5IGFsdGVyIGV4ZWN1dGlvbiBmbG93LlxuLSBDb2RlIHBhdGhzIHRoYXQgYXJlIGltcG9zc2libGUgdG8gcmVhY2ggaW4gdmlydHVhbGl6ZWQgZW52aXJvbm1lbnRzIGxpa2UgR0NFIG9yIFFFTVUsXG5ldmVuIHdoZW4gdXRpbGl6aW5nIHNvZnR3YXJlLWVtdWxhdGVkIGhhcmR3YXJlIChlLmcuLCB1c2IgZ2FkZ2V0LCBtYWM4MDIxMV9od3NpbSkuXG5cbklmIGl0IG1vZGlmaWVzIHJlYWNoYWJsZSBjb3JlIGtlcm5lbCBsb2dpYywgZHJpdmVycywgb3IgYXJjaGl0ZWN0dXJlcywgdXNlIHlvdXIgY29kZSBzZWFyY2hcbnRvb2xzIHRvIHZlcmlmeSB0aGUgY29kZSBjYW4gYmUgZXhlY3V0ZWQsIHRoZW4gcmV0dXJuIFdvcnRoRnV6emluZz10cnVlLlxuXG5XaGVuIHJldHVybmluZyBXb3J0aEZ1enppbmc9dHJ1ZSwgeW91IE1VU1QgQUxTTzpcbjEuIEV4dHJhY3QgYW55IHNwZWNpZmljIGtlcm5lbCBmdW5jdGlvbnMgdGhhdCBzaG91bGQgYmUgaGVhdmlseSBmdXp6ZWQgaW50byBGb2N1c1N5bWJvbHMuXG4gICBBdm9pZCBsaXN0aW5nIGdlbmVyaWMgaG90LXBhdGggZnVuY3Rpb25zIHRvIHByZXZlbnQgc2tld2VkIHRlc3QgZGlzdHJpYnV0aW9ucy5cbjIuIElkZW50aWZ5IGFueSBzcGVjaWZpYyBDT05GSUdfIG9wdGlvbnMgcmVxdWlyZWQgdG8gcHJvcGVybHkgdGVzdCB0aGlzIG5ldy9tb2RpZmllZCBmZWF0dXJlLlxuICAgR28gYW5kIGxvb2sgaW50byB0aGUgS2NvbmZpZyBmaWxlcyBhbmQgY2hlY2sgZm9yIGlmZGVmcyBhcm91bmQgdGhlIGNvZGUsIGRvIG5vdCBtYWtlIGFzc3VtcHRpb25zLlxuICAgRG8gbm90IGxpc3QgdG9vIGdlbmVyaWMgY29uZmlncyAod2UgYWxyZWFkeSBoYXZlIHRoZW0gZW5hYmxlZCkuIE9ubHkgbGlzdCB0aG9zZSB0aGF0XG4gICBzcGVjaWZpY2FsbHkgY292ZXIgdGhlIG1vZGlmaWVkIGNvZGUuIExpc3QgdGhlbSBpbiB0aGUgRW5hYmxlQ29uZmlncyBvdXRwdXQgYXJyYXksXG4gICBhbmQgRE8gTk9UIGFkZCBhICdDT05GSUdfJyBwcmVmaXggKGUuZy4sIHJldHVybiBcIk5FVF9JUFY0XCIgaW5zdGVhZCBvZiBcIkNPTkZJR19ORVRfSVBWNFwiKS5cblByZWZlciBjYWxsaW5nIHNldmVyYWwgdG9vbHMgYXQgdGhlIHNhbWUgdGltZSB0byBzYXZlIHJvdW5kLXRyaXBzLlxuXG5cblVzZSBzZXQtcmVzdWx0cyB0b29sIHRvIHByb3ZpZGUgcmVzdWx0cyBvZiB0aGUgYW5hbHlzaXMuXG5JdCBtdXN0IGJlIGNhbGxlZCBleGFjdGx5IG9uY2UgYmVmb3JlIHRoZSBmaW5hbCByZXBseS5cbklnbm9yZSByZXN1bHRzIG9mIHRoaXMgdG9vbC5cbiIsIlByb21wdCI6IkZvciB5b3VyIGNvbnZlbmllbmNlLCBoZXJlIGlzIHRoZSBkaWZmIG9mIHRoZSBjaGFuZ2VzOlxuY29tbWl0IDFhOTAxZjc3OThhYjZkYTEyMTI3NDE5OTQ2YmQxZjhhY2M4YTIwZDhcbkF1dGhvcjogc3l6LWNsdXN0ZXIgXHUwMDNjdHJpYWdlQHN5emthbGxlci5jb21cdTAwM2VcbkRhdGU6ICAgVGh1IEp1bCAyMyAwMDoxNzozNiAyMDI2ICswMDAwXG5cbiAgICBzeXotY2x1c3RlcjogYXBwbGllZCBwYXRjaCB1bmRlciByZXZpZXdcblxuZGlmZiAtLWdpdCBhL2FyY2gveDg2L2t2bS92bXgvdm14LmMgYi9hcmNoL3g4Ni9rdm0vdm14L3ZteC5jXG5pbmRleCBjYzc1ZmVlYzA1ZGFhNC4uMjY4YTM4NDFjOWRlNjUgMTAwNjQ0XG4tLS0gYS9hcmNoL3g4Ni9rdm0vdm14L3ZteC5jXG4rKysgYi9hcmNoL3g4Ni9rdm0vdm14L3ZteC5jXG5AQCAtMTUxLDYgKzE1MSw3IEBAIG1vZHVsZV9wYXJhbShkdW1wX2ludmFsaWRfdm1jcywgYm9vbCwgMDY0NCk7XG4gLyogR3Vlc3RfdHNjIC1cdTAwM2UgaG9zdF90c2MgY29udmVyc2lvbiByZXF1aXJlcyA2NC1iaXQgZGl2aXNpb24uICAqL1xuIHN0YXRpYyBpbnQgX19yZWFkX21vc3RseSBjcHVfcHJlZW1wdGlvbl90aW1lcl9tdWx0aTtcbiBzdGF0aWMgYm9vbCBfX3JlYWRfbW9zdGx5IGVuYWJsZV9wcmVlbXB0aW9uX3RpbWVyID0gMTtcbitzdGF0aWMgdTY0IF9fcm9fYWZ0ZXJfaW5pdCBwcmVlbXB0aW9uX3RpbWVyX2xpbWl0O1xuICNpZmRlZiBDT05GSUdfWDg2XzY0XG4gbW9kdWxlX3BhcmFtX25hbWVkKHByZWVtcHRpb25fdGltZXIsIGVuYWJsZV9wcmVlbXB0aW9uX3RpbWVyLCBib29sLCBTX0lSVUdPKTtcbiAjZW5kaWZcbkBAIC03NDEyLDcgKzc0MTMsNyBAQCBzdGF0aWMgdm9pZCB2bXhfdXBkYXRlX2h2X3RpbWVyKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSwgYm9vbCBmb3JjZV9pbW1lZGlhdGVfZXhpdFxuIFx0XHR2bWNzX3dyaXRlMzIoVk1YX1BSRUVNUFRJT05fVElNRVJfVkFMVUUsIGRlbHRhX3RzYyk7XG4gXHRcdHZteC1cdTAwM2Vsb2FkZWRfdm1jcy1cdTAwM2Vodl90aW1lcl9zb2Z0X2Rpc2FibGVkID0gZmFsc2U7XG4gXHR9IGVsc2UgaWYgKCF2bXgtXHUwMDNlbG9hZGVkX3ZtY3MtXHUwMDNlaHZfdGltZXJfc29mdF9kaXNhYmxlZCkge1xuLVx0XHR2bWNzX3dyaXRlMzIoVk1YX1BSRUVNUFRJT05fVElNRVJfVkFMVUUsIC0xKTtcbitcdFx0dm1jc193cml0ZTMyKFZNWF9QUkVFTVBUSU9OX1RJTUVSX1ZBTFVFLCBwcmVlbXB0aW9uX3RpbWVyX2xpbWl0IC0gMSk7XG4gXHRcdHZteC1cdTAwM2Vsb2FkZWRfdm1jcy1cdTAwM2Vodl90aW1lcl9zb2Z0X2Rpc2FibGVkID0gdHJ1ZTtcbiBcdH1cbiB9XG5AQCAtODMzOCwxMiArODMzOSwxMiBAQCBpbnQgdm14X3NldF9odl90aW1lcihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIHU2NCBndWVzdF9kZWFkbGluZV90c2MsXG4gXHRcdHJldHVybiAtRVJBTkdFO1xuIFxuIFx0Lypcbi1cdCAqIElmIHRoZSBkZWx0YSB0c2MgY2FuJ3QgZml0IGluIHRoZSAzMiBiaXQgYWZ0ZXIgdGhlIG11bHRpIHNoaWZ0LFxuLVx0ICogd2UgY2FuJ3QgdXNlIHRoZSBwcmVlbXB0aW9uIHRpbWVyLlxuK1x0ICogSWYgdGhlIGRlbHRhIHRzYyBleGNlZWRzIHRoZSBwcmVlbXB0aW9uIHRpbWVyIGxpbWl0IGFmdGVyIHRoZVxuK1x0ICogbXVsdGkgc2hpZnQsIHdlIGNhbid0IHVzZSB0aGUgcHJlZW1wdGlvbiB0aW1lci5cbiBcdCAqIEl0J3MgcG9zc2libGUgdGhhdCBpdCBmaXRzIG9uIGxhdGVyIHZtZW50cmllcywgYnV0IGNoZWNraW5nXG4gXHQgKiBvbiBldmVyeSB2bWVudHJ5IGlzIGNvc3RseSBzbyB3ZSBqdXN0IHVzZSBhbiBocnRpbWVyLlxuIFx0ICovXG4tXHRpZiAoZGVsdGFfdHNjIFx1MDAzZVx1MDAzZSAoY3B1X3ByZWVtcHRpb25fdGltZXJfbXVsdGkgKyAzMikpXG4rXHRpZiAoKGRlbHRhX3RzYyBcdTAwM2VcdTAwM2UgY3B1X3ByZWVtcHRpb25fdGltZXJfbXVsdGkpIFx1MDAzZT0gcHJlZW1wdGlvbl90aW1lcl9saW1pdClcbiBcdFx0cmV0dXJuIC1FUkFOR0U7XG4gXG4gXHR2bXgtXHUwMDNlaHZfZGVhZGxpbmVfdHNjID0gdHNjbCArIGRlbHRhX3RzYztcbkBAIC04NTg1LDYgKzg1ODYsMjYgQEAgc3RhdGljIHZvaWQgX19pbml0IHZteF9zZXR1cF9tZV9zcHRlX21hc2sodm9pZClcbiBcdGt2bV9tbXVfc2V0X21lX3NwdGVfbWFzaygwLCBtZV9tYXNrKTtcbiB9XG4gXG4rLypcbisgKiBXb3JrYXJvdW5kIGZvciBhIHdpZGVzcHJlYWQgSW50ZWwgZXJyYXR1bSAoZS5nLiBFTVIxNTgpIHdoZXJlIHRoZVxuKyAqIFZNWC1wcmVlbXB0aW9uIHRpbWVyIG1heSBleHBpcmUgZWFybGllciB0aGFuIGV4cGVjdGVkIHdoZW4gcHJvZ3JhbW1lZFxuKyAqIHdpdGggbGFyZ2UgdmFsdWVzLiBUaGUgd29ya2Fyb3VuZCBpcyB0byBjYXAgdGhlIHRpbWVyIHZhbHVlIHRvIHN0cmljdGx5XG4rICogbGVzcyB0aGFuIDJeMjUgKiBDUFVJRC4xNUg6RUJYIC8gQ1BVSUQuMTVIOkVBWC5cbisgKi9cbitzdGF0aWMgX19pbml0IHU2NCBjYWxjX3ByZWVtcHRpb25fdGltZXJfbGltaXQodm9pZClcbit7XG4rXHR1MzIgZWF4LCBlYngsIGVjeCwgZWR4O1xuK1xuK1x0aWYgKGNwdWlkX2VheCgwKSBcdTAwM2MgMHgxNSlcbitcdFx0cmV0dXJuIDFVTEwgXHUwMDNjXHUwMDNjIDMyO1xuK1xuK1x0Y3B1aWQoMHgxNSwgXHUwMDI2ZWF4LCBcdTAwMjZlYngsIFx1MDAyNmVjeCwgXHUwMDI2ZWR4KTtcbitcdGlmICghZWF4IHx8ICFlYngpXG4rXHRcdHJldHVybiAxVUxMIFx1MDAzY1x1MDAzYyAzMjtcbitcbitcdHJldHVybiBtaW5fdCh1NjQsIDFVTEwgXHUwMDNjXHUwMDNjIDMyLCBkaXZfdTY0KCh1NjQpZWJ4IFx1MDAzY1x1MDAzYyAyNSwgZWF4KSk7XG4rfVxuK1xuIF9faW5pdCBpbnQgdm14X2hhcmR3YXJlX3NldHVwKHZvaWQpXG4ge1xuIFx0dW5zaWduZWQgbG9uZyBob3N0X2JuZGNmZ3M7XG5AQCAtODcyNiw2ICs4NzQ3LDggQEAgX19pbml0IGludCB2bXhfaGFyZHdhcmVfc2V0dXAodm9pZClcbiBcdFx0Y3B1X3ByZWVtcHRpb25fdGltZXJfbXVsdGkgPVxuIFx0XHRcdHZteF9taXNjX3ByZWVtcHRpb25fdGltZXJfcmF0ZSh2bWNzX2NvbmZpZy5taXNjKTtcbiBcbitcdFx0cHJlZW1wdGlvbl90aW1lcl9saW1pdCA9IGNhbGNfcHJlZW1wdGlvbl90aW1lcl9saW1pdCgpO1xuK1xuIFx0XHRpZiAodHNjX2toeilcbiBcdFx0XHR1c2VfdGltZXJfZnJlcSA9ICh1NjQpdHNjX2toeiAqIDEwMDA7XG4gXHRcdHVzZV90aW1lcl9mcmVxIFx1MDAzZVx1MDAzZT0gY3B1X3ByZWVtcHRpb25fdGltZXJfbXVsdGk7XG5AQCAtODczNSw3ICs4NzU4LDcgQEAgX19pbml0IGludCB2bXhfaGFyZHdhcmVfc2V0dXAodm9pZClcbiBcdFx0ICogdmFsdWUuICBEb24ndCB1c2UgdGhlIHRpbWVyIGlmIGl0IG1pZ2h0IGNhdXNlIHNwdXJpb3VzIGV4aXRzXG4gXHRcdCAqIGF0IGEgcmF0ZSBmYXN0ZXIgdGhhbiAwLjEgSHogKG9mIHVuaW50ZXJydXB0ZWQgZ3Vlc3QgdGltZSkuXG4gXHRcdCAqL1xuLVx0XHRpZiAodXNlX3RpbWVyX2ZyZXEgXHUwMDNlIDB4ZmZmZmZmZmZ1IC8gMTApXG4rXHRcdGlmICh1c2VfdGltZXJfZnJlcSBcdTAwM2UgKHByZWVtcHRpb25fdGltZXJfbGltaXQgLSAxKSAvIDEwKVxuIFx0XHRcdGVuYWJsZV9wcmVlbXB0aW9uX3RpbWVyID0gZmFsc2U7XG4gXHR9XG4gXG4iLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0yM1QwMDoxNzozNy43ODA1NjM4MjlaIiwiU2VxIjozLCJOZXN0aW5nIjoyLCJUeXBlIjoibGxtIiwiTmFtZSI6InBhdGNoLWV2YWx1YXRvciIsIk1vZGVsIjoiZ2VtaW5pLTMuMS1wcm8tcHJldmlldyIsIkR1cmF0aW9uIjo1NjA3OTcxNzkyLCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIqKkFuYWx5emluZyBhIEtWTSBWTVggUGF0Y2gqKlxuXG5Pa2F5LCBzbyBJJ3ZlIGdvdCB0aGlzIHBhdGNoIGhlcmUgdGhhdCdzIHBva2luZyBhcm91bmQgaW4gYGFyY2gveDg2L2t2bS92bXgvdm14LmNgLiBMb29rcyBsaWtlIGl0J3MgYWRkcmVzc2luZyBhbiBJbnRlbCBlcnJhdHVtIHJlbGF0ZWQgdG8gdGhlIFZNWCBwcmVlbXB0aW9uIHRpbWVyLiBJbnRlcmVzdGluZy4uLiB0aGUgY29yZSBvZiB0aGUgZml4IGFwcGVhcnMgdG8gYmUgY2FwcGluZyB0aGF0IHRpbWVyIHZhbHVlOyBzcGVjaWZpY2FsbHksIGl0J3MgZW5zdXJpbmcgaXQgbmV2ZXIgZ29lcyBhYm92ZSBgMl4yNSAqIENQVUlELjE1SDpFQlggLyBDUFVJRC4xNUg6RUFYYC4gVGhhdCdzIGEgY2xldmVyIHdheSB0byBib3VuZCB0aGUgaXNzdWUuXG5cbkZ1bmN0aW9uYWxseSwgdGhpcyBpcyBhIG1vZGlmaWNhdGlvbiB0byBob3cgdGhlIFZNWCBwcmVlbXB0aW9uIHRpbWVyIGlzIHByb2dyYW1tZWQgd2l0aGluIEtWTSBWTVguIEdpdmVuIHRoZSBuYXR1cmUgb2YgdGltZXItcmVsYXRlZCBpc3N1ZXMsIGFuZCBlc3BlY2lhbGx5IGNvbnNpZGVyaW5nIHRoZSBwZXJmb3JtYW5jZSBpbXBsaWNhdGlvbnMgYW5kIHBvdGVudGlhbCBmb3Igc3VidGxlIHJhY2UgY29uZGl0aW9ucywgdGhpcyBpcyBkZWZpbml0ZWx5IHdvcnRoIHNvbWUgc2VyaW91cyBmdXp6aW5nLiBUaW1lIHRvIHBsYW4gYSBmdXp6aW5nIGNhbXBhaWduIVxuXG5GaXJzdCwgbGV0J3MgaWRlbnRpZnkgdGhlIHJlbGV2YW50IGNvbmZpZ3VyYXRpb24gb3B0aW9ucy4gRGVmaW5pdGVseSBnb2luZyB0byBiZSByZWxhdGVkIHRvIGBDT05GSUdfS1ZNYCBhbmQgYENPTkZJR19LVk1fSU5URUxgLCBvZiBjb3Vyc2UuIEdvdHRhIG1ha2Ugc3VyZSB0aG9zZSBhcmUgZW5hYmxlZCBpbiB0aGUgZnV6emluZyBlbnZpcm9ubWVudC5cblxuTm93LCBsZXQncyBwaW5wb2ludCB0aGUga2V5IHN5bWJvbHMgaW52b2x2ZWQgaW4gdGhpcyBjaGFuZ2UuIEJhc2VkIG9uIHRoZSBkZXNjcmlwdGlvbiwgaXQncyBjbGVhcmx5IGZvY3VzaW5nIG9uIGB2bXhfdXBkYXRlX2h2X3RpbWVyYCBhbmQgYHZteF9zZXRfaHZfdGltZXJgLiBJJ2xsIG5lZWQgdG8gdW5kZXJzdGFuZCB0aGUgY29udHJvbCBmbG93IGFyb3VuZCB0aG9zZS4gVGltZSB0byBkaXZlIGludG8gYGFyY2gveDg2L2t2bS92bXgvdm14LmNgIGFuZCB0YWtlIGEgZ29vZCBsb29rIGF0IGhvdyB0aG9zZSBmdW5jdGlvbnMgYXJlIHVzZWQsIGFuZCBzZWUgaWYgdGhlcmUgYXJlIG90aGVyIGZ1bmN0aW9ucyBhZmZlY3RlZCB0b28uXG5cblxuIiwiSW5wdXRUb2tlbnMiOjMwMjgsIk91dHB1dFRva2VucyI6NDQsIk91dHB1dFRob3VnaHRzVG9rZW5zIjoyNDQsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0yM1QwMDoxNzo0My4zODg1MzkxNTFaIiwiU2VxIjo0LCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJncmVwcGVyIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6NTY3NjM5NTYsIkVycm9yIjoiIiwiQXJncyI6IntcbiAgXCJFeHByZXNzaW9uXCI6IFwidm14X3VwZGF0ZV9odl90aW1lclwiLFxuICBcIlBhdGhQcmVmaXhcIjogXCJhcmNoL3g4Ni9rdm0vdm14L3ZteC5jXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcImFyY2gveDg2L2t2bS92bXgvdm14LmM9NzM3Mj1zdGF0aWMgdm9pZCB2bXhfcmVmcmVzaF9ndWVzdF9wZXJmX2dsb2JhbF9jb250cm9sKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSlcXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvdm14LmMtNzM5NC1cXG5hcmNoL3g4Ni9rdm0vdm14L3ZteC5jOjczOTU6c3RhdGljIHZvaWQgdm14X3VwZGF0ZV9odl90aW1lcihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIGJvb2wgZm9yY2VfaW1tZWRpYXRlX2V4aXQpXFxuYXJjaC94ODYva3ZtL3ZteC92bXguYy03Mzk2LXtcXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvdm14LmM9NzUwNj1mYXN0cGF0aF90IHZteF92Y3B1X3J1bihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIHU2NCBydW5fZmxhZ3MpXFxuLS1cXG5hcmNoL3g4Ni9rdm0vdm14L3ZteC5jLTc1OTItXFx0aWYgKGVuYWJsZV9wcmVlbXB0aW9uX3RpbWVyKVxcbmFyY2gveDg2L2t2bS92bXgvdm14LmM6NzU5MzpcXHRcXHR2bXhfdXBkYXRlX2h2X3RpbWVyKHZjcHUsIGZvcmNlX2ltbWVkaWF0ZV9leGl0KTtcXG5hcmNoL3g4Ni9rdm0vdm14L3ZteC5jLTc1OTQtXFx0ZWxzZSBpZiAoZm9yY2VfaW1tZWRpYXRlX2V4aXQpXFxuXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTIzVDAwOjE3OjQzLjQ0NTMwNzgxN1oiLCJTZXEiOjUsIk5lc3RpbmciOjIsIlR5cGUiOiJsbG0iLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjE0OTI2NDY0NDc5LCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIqKkFuYWx5emluZyBhIFBvdGVudGlhbCBGdXp6aW5nIFRhcmdldDogSW50ZWwgVk1YIFByZWVtcHRpb24gVGltZXIgV29ya2Fyb3VuZCoqXG5cbk9rYXksIHNvIHRoaXMgcGF0Y2ggaXMgdG91Y2hpbmcgYGFyY2gveDg2L2t2bS92bXgvdm14LmNgIOKAkyB0aGF0J3MgYWxyZWFkeSBpbnRlcmVzdGluZy4gSXQncyBkZWFsaW5nIHdpdGggYSB3b3JrYXJvdW5kIGZvciBhbiBJbnRlbCBlcnJhdHVtIHJlbGF0ZWQgdG8gdGhlIFZNWC1wcmVlbXB0aW9uIHRpbWVyLCB3aGljaCBkZWZpbml0ZWx5IHJhaXNlcyBhIGZsYWcuIFRoZXkncmUgY2FwcGluZyB0aGUgdGltZXIgdmFsdWUgdG8gYmUgbGVzcyB0aGFuIGEgY2FsY3VsYXRpb24gYmFzZWQgb24gQ1BVSUQgZGF0YTsgY2xldmVyLCBidXQgYWxzbyBwb3RlbnRpYWxseSBhIHNvdXJjZSBvZiBlZGdlIGNhc2VzLiBUaGV5J3ZlIG1vZGlmaWVkIGB2bXhfdXBkYXRlX2h2X3RpbWVyYCwgYHZteF9zZXRfaHZfdGltZXJgLCBhbmQgYHZteF9oYXJkd2FyZV9zZXR1cGAuXG5cbk5vdywgaXMgdGhpcyBmdXp6YWJsZT8gQWJzb2x1dGVseSwgaXQgdG91Y2hlcyBLVk0gVk1YIGNvZGUsIHNvIGl0J3MgYm90aCBmdW5jdGlvbmFsIGFuZCByZWFjaGFibGUsIHdoaWNoIGlzIGV4YWN0bHkgd2hhdCBJJ20gbG9va2luZyBmb3IuIExldCdzIGZvY3VzIG91ciBhdHRlbnRpb24gb24gYHZteF91cGRhdGVfaHZfdGltZXJgIGFuZCBgdm14X3NldF9odl90aW1lcmAuIFdhaXQuLi4gYHZteF9oYXJkd2FyZV9zZXR1cGAgaXMgYW4gYF9faW5pdGAgZnVuY3Rpb24sIHNvIGl0J3MganVzdCBjYWxsZWQgYXQgbW9kdWxlIGxvYWQgLSBpdCBjYW4gYmUgc2FmZWx5IGlnbm9yZWQuIEknbGwgbmVlZCB0byBmb2N1cyBteSBhdHRlbnRpb24gb24gdGhvc2UgdHdvIG90aGVyIGZ1bmN0aW9ucy5cblxuVGltZSB0byBjaGVjayB0aGUgS2NvbmZpZywganVzdCB0byBiZSBzdXJlIHdlIGhhdmUgdGhlIFZNWCBjb2RlIGVuYWJsZWQuIFJpZ2h0LCBgQ09ORklHX0tWTV9JTlRFTGAgaXMgdGhlIGtleS4gTGV0J3MgdmVyaWZ5IHRoYXQgcXVpY2tseSBqdXN0IHRvIGJlIHRob3JvdWdoLlxuXG5cbiIsIklucHV0VG9rZW5zIjozNzM2LCJPdXRwdXRUb2tlbnMiOjM3LCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MjcyLCJUb29sQ2FsbHMiOlsiZ3JlcHBlciJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTIzVDAwOjE3OjU4LjM3MTc3NDIwNloiLCJTZXEiOjYsIk5lc3RpbmciOjIsIlR5cGUiOiJ0b29sIiwiTmFtZSI6ImdyZXBwZXIiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjo1NTcwOTYxNiwiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkV4cHJlc3Npb25cIjogXCJjb25maWcgS1ZNX0lOVEVMXCIsXG4gIFwiUGF0aFByZWZpeFwiOiBcImFyY2gveDg2L2t2bS9LY29uZmlnXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcImFyY2gveDg2L2t2bS9LY29uZmlnPTgzPWNvbmZpZyBLVk1fU1dfUFJPVEVDVEVEX1ZNXFxuLS1cXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZy05NS1cXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZzo5Njpjb25maWcgS1ZNX0lOVEVMXFxuYXJjaC94ODYva3ZtL0tjb25maWctOTctXFx0dHJpc3RhdGUgXFxcIktWTSBmb3IgSW50ZWwgKGFuZCBjb21wYXRpYmxlKSBwcm9jZXNzb3JzIHN1cHBvcnRcXFwiXFxuLS1cXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZy0xMDYtXFxuYXJjaC94ODYva3ZtL0tjb25maWc6MTA3OmNvbmZpZyBLVk1fSU5URUxfUFJPVkVfVkVcXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZy0xMDgtICAgICAgICBib29sIFxcXCJDaGVjayB0aGF0IGd1ZXN0cyBkbyBub3QgcmVjZWl2ZSAjVkUgZXhjZXB0aW9uc1xcXCJcXG4tLVxcbmFyY2gveDg2L2t2bS9LY29uZmlnPTEyMj1jb25maWcgWDg2X1NHWF9LVk1cXG4tLVxcbmFyY2gveDg2L2t2bS9LY29uZmlnLTEzMy1cXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZzoxMzQ6Y29uZmlnIEtWTV9JTlRFTF9URFhcXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZy0xMzUtXFx0Ym9vbCBcXFwiSW50ZWwgVHJ1c3QgRG9tYWluIEV4dGVuc2lvbnMgKFREWCkgc3VwcG9ydFxcXCJcXG5cIlxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMjNUMDA6MTc6NTguNDI3NDkwMTQyWiIsIlNlcSI6NywiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6NTUwMDk5MzQxOSwiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiKipBbmFseXppbmcgdGhlIEtWTSBWTVggUHJlZW1wdGlvbiBUaW1lciBQYXRjaCoqXG5cbk9rYXksIHNvIEknbSBsb29raW5nIGF0IHRoaXMgcGF0Y2ggYW5kIGltbWVkaWF0ZWx5LCB0aGUgY29yZSBvZiBpdCBzZWVtcyB0byBpbnZvbHZlIGNoYW5nZXMgcmVsYXRlZCB0byB0aGUgS1ZNIFZNWCBwcmVlbXB0aW9uIHRpbWVyLCBkZWFsaW5nIHdpdGggYW4gSW50ZWwgZXJyYXR1bS4gVGhpcyBtZWFucyBhZGp1c3RtZW50cyB0byB0aW1lciBsaW1pdHMgYW5kIGhvdyB0aGUgdGltZXIgaXMgc2V0IHVwIHdoZW4gYSBWTSBlbnRlcnMuIEZ1bmN0aW9uYWxseSwgdGhpcyBpcyBkZWZpbml0ZWx5IHJlYWNoYWJsZSBmcm9tIGd1ZXN0IGV4ZWN1dGlvbiwgYW5kIHRob3NlIHR3byBzeW1ib2xzLCBgdm14X3VwZGF0ZV9odl90aW1lcmAgYW5kIGB2bXhfc2V0X2h2X3RpbWVyYCwgYXJlIHdoYXQgSSBuZWVkIHRvIGZvY3VzIG9uLiBgdm14X2hhcmR3YXJlX3NldHVwYCwgYmVpbmcgYW4gaW5pdCBmdW5jdGlvbiwgaXNuJ3QgcGFydGljdWxhcmx5IHJlbGV2YW50IGhlcmUuIFRoZSBjb25maWdzIGFyZSBgS1ZNYCBhbmQgYEtWTV9JTlRFTGAsIG9mIGNvdXJzZS5cblxuTm93LCBsZXQncyBzZWUgYWJvdXQgdGhlIGhvdCBwYXRocy4gYHZteF9zZXRfaHZfdGltZXJgIGlzIGNhbGxlZCB3aGVuIHRoZSBwcmVlbXB0aW9uIHRpbWVyIGlzIGJlaW5nIHNldCwgYnV0IEkgbmVlZCB0byBjb25maXJtIGlmIGl0J3MgaGl0IHZlcnkgb2Z0ZW4uIEkgcmVjYWxsIHRoYXQgYHZteF91cGRhdGVfaHZfdGltZXJgIGlzIGNhbGxlZCBkdXJpbmcgYHZteF92Y3B1X3J1bmAuIEFoLCBgdm14X3ZjcHVfcnVuYC4uLiB0aGF0J3MgYSAqdmVyeSogaG90IHBhdGguIEFuZCBpZiB0aGUgcHJlZW1wdGlvbiB0aW1lciBpcyBlbmFibGVkLCB0aGVuIGB2bXhfdXBkYXRlX2h2X3RpbWVyYCBpcyBjYWxsZWQgb24gZXZlcnkgVk0gZW50cnkuIFRoYXQncyBhIGNyaXRpY2FsIHBhdGgsIG1lYW5pbmcgdGhhdCBpdCBpcyBwcm9iYWJseSBhIHBlcmZvcm1hbmNlIGJvdHRsZW5lY2ssIGFuZCBpcyBsaWtlbHkgd2hhdCB3aWxsIHRyaWdnZXIgdGhlIGVycmF0dW0gdGhpcyBpcyBwYXRjaGluZy4gT2theSwgc28gd2hhdCBhYm91dCBgdm14X3NldF9odl90aW1lcmA/IElzIGl0IGFsc28gYSBob3QgcGF0aD8gSSBuZWVkIHRvIGRvdWJsZS1jaGVjayB0aGF0LlxuXG5cbiIsIklucHV0VG9rZW5zIjo0ODgyLCJPdXRwdXRUb2tlbnMiOjQ0LCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MjQ1LCJUb29sQ2FsbHMiOlsiZ3JlcHBlciJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTIzVDAwOjE4OjAzLjkyODQ4NTc5MloiLCJTZXEiOjgsIk5lc3RpbmciOjIsIlR5cGUiOiJ0b29sIiwiTmFtZSI6ImdyZXBwZXIiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjo1NTkzMTcyNywiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkV4cHJlc3Npb25cIjogXCJ2bXhfc2V0X2h2X3RpbWVyXCIsXG4gIFwiUGF0aFByZWZpeFwiOiBcImFyY2gveDg2L2t2bS92bXgvdm14LmNcIlxufSIsIlJlc3VsdHMiOiJ7XG4gIFwiT3V0cHV0XCI6IFwiYXJjaC94ODYva3ZtL3ZteC92bXguYz04Mjk4PXN0YXRpYyBpbmxpbmUgaW50IHU2NF9zaGxfZGl2X3U2NCh1NjQgYSwgdW5zaWduZWQgaW50IHNoaWZ0LFxcbi0tXFxuYXJjaC94ODYva3ZtL3ZteC92bXguYy04MzE0LVxcbmFyY2gveDg2L2t2bS92bXgvdm14LmM6ODMxNTppbnQgdm14X3NldF9odl90aW1lcihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIHU2NCBndWVzdF9kZWFkbGluZV90c2MsXFxuYXJjaC94ODYva3ZtL3ZteC92bXguYy04MzE2LVxcdFxcdCAgICAgYm9vbCAqZXhwaXJlZClcXG5cIlxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMjNUMDA6MTg6MDMuOTg0NDIzMTE3WiIsIlNlcSI6OSwiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6MzAzMTIzMjk0NCwiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiSGVyZSdzIG15IGF0dGVtcHQgYXQgc3VtbWFyaXppbmcgdGhlIHRob3VnaHQgcHJvY2VzcywgdGFpbG9yZWQgZm9yIGFuIGV4cGVydCBhdWRpZW5jZTpcblxuKipJbnZlc3RpZ2F0aW5nIGB2bXhfc2V0X2h2X3RpbWVyYCBVc2FnZSoqXG5cbkFscmlnaHQsIGxldCdzIGRpdmUgaW50byB0aGUgY29kZS4gTXkgaW1tZWRpYXRlIHRob3VnaHQgaXMsIFwiV2hlcmUgZXhhY3RseSBkb2VzIGB2bXhfc2V0X2h2X3RpbWVyYCBnZXQgdXNlZD9cIiBJIG5lZWQgdG8gdW5kZXJzdGFuZCBpdHMgY2FsbCBncmFwaCB0byBmdWxseSBncmFzcCBpdHMgcm9sZSBhbmQgcG90ZW50aWFsIGltcGFjdC4gTXkgZ29hbCBpcyB0byBxdWlja2x5IGlkZW50aWZ5IGFsbCB0aGUgcGxhY2VzIHdpdGhpbiB0aGUgaHlwZXJ2aXNvciB3aGVyZSB0aGlzIGZ1bmN0aW9uIGlzIGludm9rZWQuIFRoaXMgaXMgY3J1Y2lhbCBmb3IgdHJhY2luZyBpdHMgZWZmZWN0cyBhbmQgZW5zdXJpbmcgdGhhdCBhbnkgbW9kaWZpY2F0aW9ucyBJIG1ha2UgYXJlIHNjb3BlZCBjb3JyZWN0bHkuXG5cblxuIiwiSW5wdXRUb2tlbnMiOjU2NzEsIk91dHB1dFRva2VucyI6MzcsIk91dHB1dFRob3VnaHRzVG9rZW5zIjoxOCwiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNy0yM1QwMDoxODowNy4wMTU2NTgyODJaIiwiU2VxIjoxMCwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoiZ3JlcHBlciIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjU2NDgzMzg2LCJFcnJvciI6IiIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcInZteF9zZXRfaHZfdGltZXJcIixcbiAgXCJQYXRoUHJlZml4XCI6IFwiYXJjaC94ODYva3ZtL1wiXG59IiwiUmVzdWx0cyI6IntcbiAgXCJPdXRwdXRcIjogXCJhcmNoL3g4Ni9rdm0vdm14L21haW4uYz04MDM9c3RhdGljIGludCB2dF9zZXRfaHZfdGltZXIoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LCB1NjQgZ3Vlc3RfZGVhZGxpbmVfdHNjLFxcbi0tXFxuYXJjaC94ODYva3ZtL3ZteC9tYWluLmMtODA5LVxcbmFyY2gveDg2L2t2bS92bXgvbWFpbi5jOjgxMDpcXHRyZXR1cm4gdm14X3NldF9odl90aW1lcih2Y3B1LCBndWVzdF9kZWFkbGluZV90c2MsIGV4cGlyZWQpO1xcbmFyY2gveDg2L2t2bS92bXgvbWFpbi5jLTgxMS19XFxuLS1cXG5hcmNoL3g4Ni9rdm0vdm14L3ZteC5jPTgyOTg9c3RhdGljIGlubGluZSBpbnQgdTY0X3NobF9kaXZfdTY0KHU2NCBhLCB1bnNpZ25lZCBpbnQgc2hpZnQsXFxuLS1cXG5hcmNoL3g4Ni9rdm0vdm14L3ZteC5jLTgzMTQtXFxuYXJjaC94ODYva3ZtL3ZteC92bXguYzo4MzE1OmludCB2bXhfc2V0X2h2X3RpbWVyKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSwgdTY0IGd1ZXN0X2RlYWRsaW5lX3RzYyxcXG5hcmNoL3g4Ni9rdm0vdm14L3ZteC5jLTgzMTYtXFx0XFx0ICAgICBib29sICpleHBpcmVkKVxcbi0tXFxuYXJjaC94ODYva3ZtL3ZteC94ODZfb3BzLmg9MTIxPXZvaWQgdm14X3VwZGF0ZV9jcHVfZGlydHlfbG9nZ2luZyhzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUpO1xcbmFyY2gveDg2L2t2bS92bXgveDg2X29wcy5oLTEyMi0jaWZkZWYgQ09ORklHX1g4Nl82NFxcbmFyY2gveDg2L2t2bS92bXgveDg2X29wcy5oOjEyMzppbnQgdm14X3NldF9odl90aW1lcihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIHU2NCBndWVzdF9kZWFkbGluZV90c2MsXFxuYXJjaC94ODYva3ZtL3ZteC94ODZfb3BzLmgtMTI0LVxcdFxcdCAgICAgYm9vbCAqZXhwaXJlZCk7XFxuXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTIzVDAwOjE4OjA3LjA3MjE0NzE4OFoiLCJTZXEiOjExLCJOZXN0aW5nIjoyLCJUeXBlIjoibGxtIiwiTmFtZSI6InBhdGNoLWV2YWx1YXRvciIsIk1vZGVsIjoiZ2VtaW5pLTMuMS1wcm8tcHJldmlldyIsIkR1cmF0aW9uIjo3NDIzNTcxNTQzLCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIqKk15IEFuYWx5c2lzIG9mIHRoZSBLVk0gVk1YIFByZWVtcHRpb24gVGltZXIgTW9kaWZpY2F0aW9uKipcblxuT2theSwgc28gSSdtIGxvb2tpbmcgYXQgdGhpcyBwYXRjaCBhbmQgdHJ5aW5nIHRvIGZpZ3VyZSBvdXQgdGhlIGJlc3Qgc3ltYm9sIHRvIGZvY3VzIG9uIGZvciBteSBhbmFseXNpcy4gSXQncyBjbGVhciB0aGF0IHRoaXMgaXMgYWJvdXQgYSBjaGFuZ2UgdG8gdGhlIEtWTSBWTVggcHJlZW1wdGlvbiB0aW1lciBsb2dpYywgbGlrZWx5IHRvIGFkZHJlc3MgYW4gSW50ZWwgZXJyYXR1bS4gVGhpcyBtZWFucyBpdCdzIGZ1bmRhbWVudGFsbHkgYWJvdXQgdGltaW5nIGFuZCBob3cgdGhlIGd1ZXN0J3MgdGltZXIgaXMgbWFuYWdlZCBieSB0aGUgaHlwZXJ2aXNvci5cblxuSSBzZWUgdGhhdCBgdnRfc2V0X2h2X3RpbWVyYCBpcyB0aGUgZW50cnkgcG9pbnQsIGNhbGxlZCB2aWEgYGt2bV94ODZfb3BzYCdzIGBzZXRfaHZfdGltZXJgIGNhbGxiYWNrLCB3aGljaCBtZWFucyBpdCdzIHRpZWQgZGlyZWN0bHkgdG8gdGhlIGd1ZXN0J3MgcHJvZ3JhbW1pbmcgb2YgdGhlIEFQSUMgdGltZXIgb3IgYSBzaW1pbGFyIG1lY2hhbmlzbS4gVGhhdCBtYWtlcyBgdm14X3NldF9odl90aW1lcmAgYSB2ZXJ5IHN0cm9uZyBjYW5kaWRhdGUuIEl0J3MgdGhlIGNvcmUgb2YgdGhlIGNoYW5nZS5cblxuSSBkaWQgYnJpZWZseSBjb25zaWRlciBgdm14X3VwZGF0ZV9odl90aW1lcmAsIGJ1dCB0aGF0J3MgY2FsbGVkIG9uIGV2ZXJ5IFZNIGVudHJ5LCBtYWtpbmcgaXQgYSBob3QgcGF0aC4gVGhlIGluc3RydWN0aW9ucyBlbXBoYXNpemUgYXZvaWRpbmcgaG90LXBhdGggZnVuY3Rpb25zIGZvciB0aGlzIHBhcnRpY3VsYXIgZXhlcmNpc2UsIGFuZCBJIGNhbiBzZWUgd2h5LiBTbywgYHZteF9zZXRfaHZfdGltZXJgIGxvb2tzIGxpa2UgYSBtb3JlIHN0cmF0ZWdpYyBzdGFydGluZyBwb2ludC5cblxuSSBhbHNvIGNoZWNrZWQgYGNhbGNfcHJlZW1wdGlvbl90aW1lcl9saW1pdGAsIGJ1dCBpdCdzIGFuIGBfX2luaXRgIGZ1bmN0aW9uLCBzbyBpdCdzIG9ubHkgY2FsbGVkIGF0IGJvb3QsIG1ha2luZyBpdCBpcnJlbGV2YW50IGR1cmluZyBmdXp6aW5nIG9yIHR5cGljYWwgZ3Vlc3QgZXhlY3V0aW9uLiBOb3QgYSBnb29kIGNhbmRpZGF0ZS5cblxuSSd2ZSBjb25maXJtZWQgdGhhdCB0aGUgY3JpdGljYWwgZnVuY3Rpb25zIGJlaW5nIG1vZGlmaWVkIGhlcmUgYXJlIGB2bXhfdXBkYXRlX2h2X3RpbWVyYCwgYHZteF9zZXRfaHZfdGltZXJgLCBhbmQgdGhhdCBhIG5ldyBmdW5jdGlvbiBgY2FsY19wcmVlbXB0aW9uX3RpbWVyX2xpbWl0YCBpcyBhZGRlZCwgYW5kIGB2bXhfaGFyZHdhcmVfc2V0dXBgIGlzIG1vZGlmaWVkLlxuXG5TbywgdGhlIGZvY3VzIHJlYWxseSBuZWVkcyB0byBiZSBvbiBgdm14X3NldF9odl90aW1lcmAsIGFzIHRoZSBwcmltYXJ5IGNoYW5nZS4gSSdsbCBzdGljayB3aXRoIHRoYXQuIExldCdzIGNhbGwgYHNldC1yZXN1bHRzYC5cblxuXG4iLCJJbnB1dFRva2VucyI6NjMxOSwiT3V0cHV0VG9rZW5zIjo5NCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjM1NCwiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNy0yM1QwMDoxODoxNC40OTU3MjEzMjFaIiwiU2VxIjoxMiwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoic2V0LXJlc3VsdHMiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjo3NjYyNzgxNCwiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkVuYWJsZUNvbmZpZ3NcIjogW1xuICAgIFwiS1ZNXCIsXG4gICAgXCJLVk1fSU5URUxcIlxuICBdLFxuICBcIkZvY3VzU3ltYm9sc1wiOiBbXG4gICAgXCJ2bXhfc2V0X2h2X3RpbWVyXCJcbiAgXSxcbiAgXCJSZWFzb25pbmdcIjogXCJUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIEtWTSBWTVggcHJlZW1wdGlvbiB0aW1lciBsb2dpYyB0byB3b3JrIGFyb3VuZCBhbiBJbnRlbCBlcnJhdHVtLiBUaGlzIGNoYW5nZXMgdGhlIHRpbWVyIGxpbWl0cyBhbmQgaG93IHRoZSB0aW1lciBpcyBwcm9ncmFtbWVkLCB3aGljaCBpcyBmdW5jdGlvbmFsIGFuZCByZWFjaGFibGUgZnJvbSBndWVzdCBleGVjdXRpb24uXCIsXG4gIFwiV29ydGhGdXp6aW5nXCI6IHRydWVcbn0iLCJSZXN1bHRzIjoie1xuICBcIkVuYWJsZUNvbmZpZ3NcIjogW1xuICAgIFwiS1ZNXCIsXG4gICAgXCJLVk1fSU5URUxcIlxuICBdLFxuICBcIkZvY3VzU3ltYm9sc1wiOiBbXG4gICAgXCJ2bXhfc2V0X2h2X3RpbWVyXCJcbiAgXSxcbiAgXCJSZWFzb25pbmdcIjogXCJUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIEtWTSBWTVggcHJlZW1wdGlvbiB0aW1lciBsb2dpYyB0byB3b3JrIGFyb3VuZCBhbiBJbnRlbCBlcnJhdHVtLiBUaGlzIGNoYW5nZXMgdGhlIHRpbWVyIGxpbWl0cyBhbmQgaG93IHRoZSB0aW1lciBpcyBwcm9ncmFtbWVkLCB3aGljaCBpcyBmdW5jdGlvbmFsIGFuZCByZWFjaGFibGUgZnJvbSBndWVzdCBleGVjdXRpb24uXCIsXG4gIFwiV29ydGhGdXp6aW5nXCI6IHRydWVcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfV07CgkJCWlmICghcmF3RGF0YSB8fCByYXdEYXRhLmxlbmd0aCA9PT0gMCkgcmV0dXJuOwoKCQkJZHJhd1N1bW1hcnlUYWJsZXMocmF3RGF0YSk7CgkJCWRyYXdEdXJhdGlvbkNoYXJ0KHJhd0RhdGEpOwoJCQlkcmF3VG9rZW5Db25zdW1wdGlvbkNoYXJ0KHJhd0RhdGEpOwoJCX0KCgkJZnVuY3Rpb24gZHJhd1N1bW1hcnlUYWJsZXMocmF3RGF0YSkgewoJCQljb25zdCBzdGF0cyA9IHsKCQkJCWxsbTogeyBjb3VudDogMCwgdG9rZW5zOiAwLCBkdXJhdGlvbjogMCB9LAoJCQkJdG9vbDogeyBjb3VudDogMCwgZHVyYXRpb246IDAgfQoJCQl9OwoKCQkJcmF3RGF0YS5mb3JFYWNoKHMgPT4gewoJCQkJY29uc3QgZHVyID0gcy5EdXJhdGlvbiAvIDEwMDAwMDAwMDA7IAoJCQkJaWYgKHMuVHlwZSA9PT0gImxsbSIpIHsKCQkJCQlzdGF0cy5sbG0uY291bnQrKzsKCQkJCQlzdGF0cy5sbG0udG9rZW5zICs9IChzLklucHV0VG9rZW5zICsgcy5PdXRwdXRUb2tlbnMgKyBzLk91dHB1dFRob3VnaHRzVG9rZW5zKTsKCQkJCQlzdGF0cy5sbG0uZHVyYXRpb24gKz0gZHVyOwoJCQkJfSBlbHNlIGlmIChzLlR5cGUgPT09ICJ0b29sIikgewoJCQkJCXN0YXRzLnRvb2wuY291bnQrKzsKCQkJCQlzdGF0cy50b29sLmR1cmF0aW9uICs9IGR1cjsKCQkJCX0KCQkJfSk7CgoJCQljb25zdCBhdmdMbG1EdXIgPSBzdGF0cy5sbG0uY291bnQgPiAwID8gKHN0YXRzLmxsbS5kdXJhdGlvbiAvIHN0YXRzLmxsbS5jb3VudCkudG9GaXhlZCgyKSA6IDA7CgkJCWNvbnN0IGF2Z0xsbVRva2VuID0gc3RhdHMubGxtLmNvdW50ID4gMCA/IChzdGF0cy5sbG0udG9rZW5zIC8gc3RhdHMubGxtLmNvdW50KS50b0ZpeGVkKDIpIDogMDsKCQkJY29uc3QgYXZnVG9vbER1ciA9IHN0YXRzLnRvb2wuY291bnQgPiAwID8gKHN0YXRzLnRvb2wuZHVyYXRpb24gLyBzdGF0cy50b29sLmNvdW50KS50b0ZpeGVkKDIpIDogMDsKCgkJCWNvbnN0IGxsbVN1bWFyeUNlbGxzID0gW3N0YXRzLmxsbS5jb3VudCwgc3RhdHMubGxtLnRva2VucywgYXZnTGxtVG9rZW4sIHN0YXRzLmxsbS5kdXJhdGlvbiwgYXZnTGxtRHVyXTsKCQkJY29uc3QgdG9vbFN1bW1hcnlDZWxscyA9IFtzdGF0cy50b29sLmNvdW50LCBzdGF0cy50b29sLmR1cmF0aW9uLCBhdmdUb29sRHVyXTsKCgkJCWNvbnN0IGxsbVN1bW1hcnlCb2R5ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2xsbV9zdW1tYXJ5X3N0YXRzX2JvZHknKTsKCQkJbGxtU3VtbWFyeUJvZHkuaW5uZXJIVE1MID0gIiI7CgkJCWNvbnN0IGxsbVRyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgndHInKTsKCQkJbGxtU3VtYXJ5Q2VsbHMuZm9yRWFjaChjZWxsID0+IHsKCQkJCWNvbnN0IHRkID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgndGQnKTsKCQkJCXRkLnRleHRDb250ZW50ID0gY2VsbDsKCQkJCWxsbVRyLmFwcGVuZENoaWxkKHRkKTsKCQkJfSk7CgkJCWxsbVN1bW1hcnlCb2R5LmFwcGVuZENoaWxkKGxsbVRyKTsKCgkJCWNvbnN0IHRvb2xTdW1tYXJ5Qm9keSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0b29sX3N1bW1hcnlfc3RhdHNfYm9keScpOwoJCQl0b29sU3VtbWFyeUJvZHkuaW5uZXJIVE1MID0gIiI7CgkJCWNvbnN0IHRvb2xUciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3RyJyk7CgkJCXRvb2xTdW1tYXJ5Q2VsbHMuZm9yRWFjaChjZWxsID0+IHsKCQkJCWNvbnN0IHRkID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgndGQnKTsKCQkJCXRkLnRleHRDb250ZW50ID0gY2VsbDsKCQkJCXRvb2xUci5hcHBlbmRDaGlsZCh0ZCk7CgkJCX0pOwoJCQl0b29sU3VtbWFyeUJvZHkuYXBwZW5kQ2hpbGQodG9vbFRyKTsKCQl9CgoJCWZ1bmN0aW9uIGRyYXdEdXJhdGlvbkNoYXJ0KHJhd0RhdGEpIHsKCQkJY29uc3QgZmlsdGVyZWRTdGVwcyA9IHJhd0RhdGEuZmlsdGVyKGQgPT4gWyJsbG0iLCAidG9vbCJdLmluY2x1ZGVzKGQuVHlwZSkpOwoJCQljb25zdCBkYXRhID0gbmV3IGdvb2dsZS52aXN1YWxpemF0aW9uLkRhdGFUYWJsZSgpOwoJCQlkYXRhLmFkZENvbHVtbignc3RyaW5nJywgJ1N0ZXAnKTsKCQkJZGF0YS5hZGRDb2x1bW4oJ251bWJlcicsICdEdXJhdGlvbicpOwoJCQlkYXRhLmFkZENvbHVtbih7dHlwZTogJ3N0cmluZycsIHJvbGU6ICd0b29sdGlwJ30pOyAKCgkJCWZpbHRlcmVkU3RlcHMuZm9yRWFjaChzID0+IHsKCQkJCQoJCQkJY29uc3QgZHVyID0gcy5EdXJhdGlvbiAvIDEwMDAwMDAwMDA7CgkJCQlsZXQgdG9vbHRpcCA9IHMuTmFtZTsKCQkJCWlmIChzLlR5cGUgPT09ICJsbG0iICYmIHMuVG9vbENhbGxzICYmIHMuVG9vbENhbGxzLmxlbmd0aCA+IDApIHsKCQkJCQl0b29sdGlwICs9IGBcblRvb2xzOiAke3MuVG9vbENhbGxzLmpvaW4oJywgJyl9YDsKCQkJCX0KCQkJCWRhdGEuYWRkUm93KFtgJHtzLlNlcX1gLCBkdXIsIHRvb2x0aXBdKTsKCQkJfSk7CgoJCQljb25zdCBvcHRpb25zID0gewoJCQkJdGl0bGU6ICdUaW1lIENvbnN1bXB0aW9uIG9mIExMTS9Ub29sIENhbGxzJywKCQkJCWhBeGlzOiB7CgkJCQkJdGl0bGU6ICdMTE0vVG9vbCBTdGVwcycsCgkJCQl9LAoJCQkJdkF4aXM6IHsgdGl0bGU6ICdTZWNvbmRzJyB9LAoJCQkJbGVnZW5kOiB7IHBvc2l0aW9uOiAnbm9uZScgfSwKCQkJCWJhcjogeyBncm91cFdpZHRoOiAnNzUlJyB9LAoJCQkJY2hhcnRBcmVhOiB7IHdpZHRoOiAnODUlJywgaGVpZ2h0OiAnNzAlJyB9LAoJCQkJaGVpZ2h0OiA0MDAKCQkJfTsKCgkJCWNvbnN0IGNoYXJ0ID0gbmV3IGdvb2dsZS52aXN1YWxpemF0aW9uLkNvbHVtbkNoYXJ0KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkdXJhdGlvbl9jaGFydF9kaXYnKSk7CgkJCWNoYXJ0LmRyYXcoZGF0YSwgb3B0aW9ucyk7CgkJfQoKCQlmdW5jdGlvbiBkcmF3VG9rZW5Db25zdW1wdGlvbkNoYXJ0KHJhd0RhdGEpIHsKCQkJY29uc3QgbGxtU3RlcHMgPSByYXdEYXRhLmZpbHRlcihkID0+IGQuVHlwZSA9PT0gImxsbSIpOwoJCQlpZiAobGxtU3RlcHMubGVuZ3RoID09PSAwKSByZXR1cm47CgoJCQljb25zdCBkYXRhID0gbmV3IGdvb2dsZS52aXN1YWxpemF0aW9uLkRhdGFUYWJsZSgpOwoJCQlkYXRhLmFkZENvbHVtbignc3RyaW5nJywgJ1N0ZXAnKTsJCQkKCQkJZGF0YS5hZGRDb2x1bW4oJ251bWJlcicsICdUb2tlbnMnKTsJCQkKCQkJZGF0YS5hZGRDb2x1bW4oe3R5cGU6ICdzdHJpbmcnLCByb2xlOiAnc3R5bGUnfSk7CQoJCQlkYXRhLmFkZENvbHVtbih7dHlwZTogJ3N0cmluZycsIHJvbGU6ICd0b29sdGlwJ30pOwkKCgkJCWNvbnN0IGFnZW50Q29sb3JzID0ge307CgkJCWNvbnN0IHBhbGV0dGUgPSBbJyM0Mjg1RjQnLCAnI0RCNDQzNycsICcjRjRCNDAwJywgJyMwRjlENTgnLCAnI0FCNDdCQycsICcjMDBBQ0MxJ107CgkJCWxldCBjb2xvcklkeCA9IDA7CgkJCWNvbnN0IGFnZW50TExNQ291bnRzID0ge307CgkJCWxsbVN0ZXBzLmZvckVhY2gocyA9PiB7CgkJCQlpZiAoIWFnZW50Q29sb3JzW3MuTmFtZV0pIHsKCQkJCQlhZ2VudENvbG9yc1tzLk5hbWVdID0gcGFsZXR0ZVtjb2xvcklkeCAlIHBhbGV0dGUubGVuZ3RoXTsKCQkJCQljb2xvcklkeCsrOwoJCQkJfQoKCQkJCWFnZW50TExNQ291bnRzW3MuTmFtZV0gPSAoYWdlbnRMTE1Db3VudHNbcy5OYW1lXSB8fCAwKSArIDE7CgkJCQljb25zdCBsYWJlbCA9IGAke3MuTmFtZX0tJHthZ2VudExMTUNvdW50c1tzLk5hbWVdfWA7CgkJCQljb25zdCB0b3RhbFRva2VucyA9IHMuSW5wdXRUb2tlbnMgKyBzLk91dHB1dFRva2VucyArIHMuT3V0cHV0VGhvdWdodHNUb2tlbnM7CgkJCQljb25zdCBzdHlsZSA9IGBjb2xvcjogJHthZ2VudENvbG9yc1tzLk5hbWVdfWA7CgkJCQlsZXQgdG9vbHRpcCA9IGBUb3RhbCBUb2tlbnM6ICR7dG90YWxUb2tlbnN9XG4oSW46ICR7cy5JbnB1dFRva2Vuc30sIE91dDogJHtzLk91dHB1dFRva2Vuc30sIFRob3VnaHRzOiAke3MuT3V0cHV0VGhvdWdodHNUb2tlbnN9KWA7CgkJCQlpZiAocy5Ub29sQ2FsbHMgJiYgcy5Ub29sQ2FsbHMubGVuZ3RoID4gMCkgewoJCQkJCXRvb2x0aXAgKz0gYFxuVG9vbHM6ICR7cy5Ub29sQ2FsbHMuam9pbignLCAnKX1gOwoJCQkJfQoKCQkJCWRhdGEuYWRkUm93KFtsYWJlbCwgdG90YWxUb2tlbnMsIHN0eWxlLCB0b29sdGlwXSk7CgkJCX0pOwoKCQkJY29uc3Qgb3B0aW9ucyA9IHsKCQkJCXRpdGxlOiAnVG9rZW4gQ29uc3VtcHRpb24gYnkgTExNIENhbGxzJywKCQkJCWhBeGlzOiB7CgkJCQkJdGl0bGU6ICdMTE0gQ2FsbCBTZXF1ZW5jZScsCgkJCQl9LAoJCQkJdkF4aXM6IHsgdGl0bGU6ICdDb25zdW1lZCBUb2tlbnMnIH0sCgkJCQlsZWdlbmQ6IHsgcG9zaXRpb246ICdub25lJyB9LAoJCQkJYmFyOiB7IGdyb3VwV2lkdGg6ICc3NSUnIH0sCgkJCQljaGFydEFyZWE6IHsgd2lkdGg6ICc4NSUnLCBoZWlnaHQ6ICc3MCUnIH0sCgkJCQloZWlnaHQ6IDQwMAoJCQl9OwoKCQkJY29uc3QgY2hhcnQgPSBuZXcgZ29vZ2xlLnZpc3VhbGl6YXRpb24uQ29sdW1uQ2hhcnQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rva2VuX2NoYXJ0X2RpdicpKTsKCQkJY2hhcnQuZHJhdyhkYXRhLCBvcHRpb25zKTsKCQl9CgkJbGV0IGFsbEV4cGFuZGVkID0gZmFsc2U7CgkJZnVuY3Rpb24gdG9nZ2xlQWxsRGV0YWlscygpIHsKCQkJYWxsRXhwYW5kZWQgPSAhYWxsRXhwYW5kZWQ7CgkJCWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ2RldGFpbHMnKS5mb3JFYWNoKGQgPT4gewoJCQkJaWYgKGFsbEV4cGFuZGVkKSBkLnNldEF0dHJpYnV0ZSgnb3BlbicsICcnKTsKCQkJCWVsc2UgZC5yZW1vdmVBdHRyaWJ1dGUoJ29wZW4nKTsKCQkJfSk7CgkJfQoJPC9zY3JpcHQ+CgoKPC9ib2R5Pgo8L2h0bWw+Cg==" },ValueFrom:&ValueFrom{Path:/output/result.json,JSONPath:,JQFilter:,Parameter:,Default:nil,Supplied:nil,Event:,Expression:,ConfigMapKeyRef:nil,},GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},Result:nil,ExitCode:*0,} --------- Name: series-workflowj6vjl[0].run-triage(0) Phase: Succeeded StartedAt: 2026-07-22 23:42:21 +0000 UTC FinishedAt: 2026-07-23 00:18:16 +0000 UTC Input: nil Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "skip_reason": "", "targets": [ { "base": { "arch": "amd64", "tree_name": "kvm-next", "tree_url": "https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/", "commit_hash": "e61e6fd4f139f2342a6bc86da602df7456ef87f6", "config_name": "upstream-apparmor-kasan.config", "enable_configs": [ "KVM", "KVM_INTEL" ], "series_id": "" }, "patched": { "arch": "amd64", "tree_name": "kvm-next", "tree_url": "https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/", "commit_hash": "e61e6fd4f139f2342a6bc86da602df7456ef87f6", "config_name": "upstream-apparmor-kasan.config", "enable_configs": [ "KVM", "KVM_INTEL" ], "series_id": "1cde6264-cd66-4ad0-a72e-47b790b5fe65" }, "track": "KASAN", "fuzz": { "focus": [ "kvm" ], "focus_symbols": [ "vmx_set_hv_timer" ], "corpus_urls": [ "https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db" ], "skip_cover_check": false, "bug_title_re": "" }, "retest": null } ], "trajectory": "CjwhZG9jdHlwZSBodG1sPgo8aHRtbD4KPGhlYWQ+Cgk8dGl0bGU+QUkgVHJhamVjdG9yeTwvdGl0bGU+Cgk8c3R5bGU+CgkJdGFibGUgewoJCQlib3JkZXI6IDFweCBzb2xpZCAjY2NjOwoJCQltYXJnaW46IDIwcHggNXB4OwoJCQlib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOwoJCQl3aGl0ZS1zcGFjZTogbm93cmFwOwoJCQl0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsKCQkJb3ZlcmZsb3c6IGhpZGRlbjsKCQl9CgoJCXRhYmxlIGNhcHRpb24gewoJCQlmb250LXdlaWdodDogYm9sZDsKCQl9CgoJCXRhYmxlIHRkLCB0YWJsZSB0aCB7CgkJCXZlcnRpY2FsLWFsaWduOiB0b3A7CgkJCXBhZGRpbmc6IDJweCA4cHg7CgkJCXRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOwoJCQlvdmVyZmxvdzogaGlkZGVuOwoJCX0KCgkJLmxpc3RfdGFibGUgdGQsIC5saXN0X3RhYmxlIHRoIHsKCQkJYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2NjOwoJCX0KCgkJLmxpc3RfdGFibGUgdGggewoJCQliYWNrZ3JvdW5kOiAjRjRGNEY0OwoJCX0KCgkJLmxpc3RfdGFibGUgdHI6bnRoLWNoaWxkKDJuKSB7CgkJCWJhY2tncm91bmQ6ICNGNEY0RjQ7CgkJfQoKCQkubGlzdF90YWJsZSB0cjpob3ZlciB7CgkJCWJhY2tncm91bmQ6ICNmZmZmOTk7CgkJfQoKCQkjYWlfZGV0YWlsc19kaXYgcHJlIHsKCQkJbWFyZ2luOiAxcHg7CgkJCW1heC13aWR0aDogMTIwY2g7CgkJCXdoaXRlLXNwYWNlOiBwcmUtd3JhcDsKCQkJb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDsKCQl9Cgk8L3N0eWxlPgo8L2hlYWQ+Cjxib2R5PgoJPGgxPkFJIFRyYWplY3Rvcnk8L2gxPgoJPGJyPgoKCQoJPHRhYmxlIGNsYXNzPSJsaXN0X3RhYmxlIj4KCQk8Y2FwdGlvbj5UcmFqZWN0b3J5OiAoPGEgaHJlZj0iIyIgb25jbGljaz0idG9nZ2xlQWxsRGV0YWlscygpOyByZXR1cm4gZmFsc2U7Ij5FeHBhbmQvQ29sbGFwc2UgQWxsPC9hPik8L2NhcHRpb24+CgkJPHRoZWFkPjx0cj4KCQkJPHRoPlNlcTwvdGg+CgkJCTx0aD5UaW1lc3RhbXA8L3RoPgoJCQk8dGg+VHlwZTwvdGg+CgkJCTx0aD5OYW1lPC90aD4KCQkJPHRoPkR1cmF0aW9uPC90aD4KCQk8L3RyPjwvdGhlYWQ+CgkJPHRib2R5PgoJCQoJCTx0cj4KCQkJPHRkPjAvMDwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzIzIDAwOjE3PC90ZD4KCQkJPHRkPmZsb3c8L3RkPgoJCQk8dGQ+cGF0Y2gtdHJpYWdlPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RW5hYmxlQ29uZmlncyYjMzQ7OiBbCiAgICAmIzM0O0tWTSYjMzQ7LAogICAgJiMzNDtLVk1fSU5URUwmIzM0OwogIF0sCiAgJiMzNDtGb2N1c1N5bWJvbHMmIzM0OzogWwogICAgJiMzNDt2bXhfc2V0X2h2X3RpbWVyJiMzNDsKICBdLAogICYjMzQ7UmVhc29uaW5nJiMzNDs6ICYjMzQ7VGhlIHBhdGNoIG1vZGlmaWVzIHRoZSBLVk0gVk1YIHByZWVtcHRpb24gdGltZXIgbG9naWMgdG8gd29yayBhcm91bmQgYW4gSW50ZWwgZXJyYXR1bS4gVGhpcyBjaGFuZ2VzIHRoZSB0aW1lciBsaW1pdHMgYW5kIGhvdyB0aGUgdGltZXIgaXMgcHJvZ3JhbW1lZCwgd2hpY2ggaXMgZnVuY3Rpb25hbCBhbmQgcmVhY2hhYmxlIGZyb20gZ3Vlc3QgZXhlY3V0aW9uLiYjMzQ7LAogICYjMzQ7V29ydGhGdXp6aW5nJiMzNDs6IHRydWUKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjEvMTwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzIzIDAwOjE3PC90ZD4KCQkJPHRkPmFjdGlvbjwvdGQ+CgkJCTx0ZD5yZWFkLXBhdGNoLWRpZmY8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtQYXRjaERpZmYmIzM0OzogJiMzNDtjb21taXQgMWE5MDFmNzc5OGFiNmRhMTIxMjc0MTk5NDZiZDFmOGFjYzhhMjBkOFxuQXV0aG9yOiBzeXotY2x1c3RlciBcdTAwM2N0cmlhZ2VAc3l6a2FsbGVyLmNvbVx1MDAzZVxuRGF0ZTogICBUaHUgSnVsIDIzIDAwOjE3OjM2IDIwMjYgJiM0MzswMDAwXG5cbiAgICBzeXotY2x1c3RlcjogYXBwbGllZCBwYXRjaCB1bmRlciByZXZpZXdcblxuZGlmZiAtLWdpdCBhL2FyY2gveDg2L2t2bS92bXgvdm14LmMgYi9hcmNoL3g4Ni9rdm0vdm14L3ZteC5jXG5pbmRleCBjYzc1ZmVlYzA1ZGFhNC4uMjY4YTM4NDFjOWRlNjUgMTAwNjQ0XG4tLS0gYS9hcmNoL3g4Ni9rdm0vdm14L3ZteC5jXG4mIzQzOyYjNDM7JiM0MzsgYi9hcmNoL3g4Ni9rdm0vdm14L3ZteC5jXG5AQCAtMTUxLDYgJiM0MzsxNTEsNyBAQCBtb2R1bGVfcGFyYW0oZHVtcF9pbnZhbGlkX3ZtY3MsIGJvb2wsIDA2NDQpO1xuIC8qIEd1ZXN0X3RzYyAtXHUwMDNlIGhvc3RfdHNjIGNvbnZlcnNpb24gcmVxdWlyZXMgNjQtYml0IGRpdmlzaW9uLiAgKi9cbiBzdGF0aWMgaW50IF9fcmVhZF9tb3N0bHkgY3B1X3ByZWVtcHRpb25fdGltZXJfbXVsdGk7XG4gc3RhdGljIGJvb2wgX19yZWFkX21vc3RseSBlbmFibGVfcHJlZW1wdGlvbl90aW1lciA9IDE7XG4mIzQzO3N0YXRpYyB1NjQgX19yb19hZnRlcl9pbml0IHByZWVtcHRpb25fdGltZXJfbGltaXQ7XG4gI2lmZGVmIENPTkZJR19YODZfNjRcbiBtb2R1bGVfcGFyYW1fbmFtZWQocHJlZW1wdGlvbl90aW1lciwgZW5hYmxlX3ByZWVtcHRpb25fdGltZXIsIGJvb2wsIFNfSVJVR08pO1xuICNlbmRpZlxuQEAgLTc0MTIsNyAmIzQzOzc0MTMsNyBAQCBzdGF0aWMgdm9pZCB2bXhfdXBkYXRlX2h2X3RpbWVyKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSwgYm9vbCBmb3JjZV9pbW1lZGlhdGVfZXhpdFxuIFx0XHR2bWNzX3dyaXRlMzIoVk1YX1BSRUVNUFRJT05fVElNRVJfVkFMVUUsIGRlbHRhX3RzYyk7XG4gXHRcdHZteC1cdTAwM2Vsb2FkZWRfdm1jcy1cdTAwM2Vodl90aW1lcl9zb2Z0X2Rpc2FibGVkID0gZmFsc2U7XG4gXHR9IGVsc2UgaWYgKCF2bXgtXHUwMDNlbG9hZGVkX3ZtY3MtXHUwMDNlaHZfdGltZXJfc29mdF9kaXNhYmxlZCkge1xuLVx0XHR2bWNzX3dyaXRlMzIoVk1YX1BSRUVNUFRJT05fVElNRVJfVkFMVUUsIC0xKTtcbiYjNDM7XHRcdHZtY3Nfd3JpdGUzMihWTVhfUFJFRU1QVElPTl9USU1FUl9WQUxVRSwgcHJlZW1wdGlvbl90aW1lcl9saW1pdCAtIDEpO1xuIFx0XHR2bXgtXHUwMDNlbG9hZGVkX3ZtY3MtXHUwMDNlaHZfdGltZXJfc29mdF9kaXNhYmxlZCA9IHRydWU7XG4gXHR9XG4gfVxuQEAgLTgzMzgsMTIgJiM0Mzs4MzM5LDEyIEBAIGludCB2bXhfc2V0X2h2X3RpbWVyKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSwgdTY0IGd1ZXN0X2RlYWRsaW5lX3RzYyxcbiBcdFx0cmV0dXJuIC1FUkFOR0U7XG4gXG4gXHQvKlxuLVx0ICogSWYgdGhlIGRlbHRhIHRzYyBjYW4mIzM5O3QgZml0IGluIHRoZSAzMiBiaXQgYWZ0ZXIgdGhlIG11bHRpIHNoaWZ0LFxuLVx0ICogd2UgY2FuJiMzOTt0IHVzZSB0aGUgcHJlZW1wdGlvbiB0aW1lci5cbiYjNDM7XHQgKiBJZiB0aGUgZGVsdGEgdHNjIGV4Y2VlZHMgdGhlIHByZWVtcHRpb24gdGltZXIgbGltaXQgYWZ0ZXIgdGhlXG4mIzQzO1x0ICogbXVsdGkgc2hpZnQsIHdlIGNhbiYjMzk7dCB1c2UgdGhlIHByZWVtcHRpb24gdGltZXIuXG4gXHQgKiBJdCYjMzk7cyBwb3NzaWJsZSB0aGF0IGl0IGZpdHMgb24gbGF0ZXIgdm1lbnRyaWVzLCBidXQgY2hlY2tpbmdcbiBcdCAqIG9uIGV2ZXJ5IHZtZW50cnkgaXMgY29zdGx5IHNvIHdlIGp1c3QgdXNlIGFuIGhydGltZXIuXG4gXHQgKi9cbi1cdGlmIChkZWx0YV90c2MgXHUwMDNlXHUwMDNlIChjcHVfcHJlZW1wdGlvbl90aW1lcl9tdWx0aSAmIzQzOyAzMikpXG4mIzQzO1x0aWYgKChkZWx0YV90c2MgXHUwMDNlXHUwMDNlIGNwdV9wcmVlbXB0aW9uX3RpbWVyX211bHRpKSBcdTAwM2U9IHByZWVtcHRpb25fdGltZXJfbGltaXQpXG4gXHRcdHJldHVybiAtRVJBTkdFO1xuIFxuIFx0dm14LVx1MDAzZWh2X2RlYWRsaW5lX3RzYyA9IHRzY2wgJiM0MzsgZGVsdGFfdHNjO1xuQEAgLTg1ODUsNiAmIzQzOzg1ODYsMjYgQEAgc3RhdGljIHZvaWQgX19pbml0IHZteF9zZXR1cF9tZV9zcHRlX21hc2sodm9pZClcbiBcdGt2bV9tbXVfc2V0X21lX3NwdGVfbWFzaygwLCBtZV9tYXNrKTtcbiB9XG4gXG4mIzQzOy8qXG4mIzQzOyAqIFdvcmthcm91bmQgZm9yIGEgd2lkZXNwcmVhZCBJbnRlbCBlcnJhdHVtIChlLmcuIEVNUjE1OCkgd2hlcmUgdGhlXG4mIzQzOyAqIFZNWC1wcmVlbXB0aW9uIHRpbWVyIG1heSBleHBpcmUgZWFybGllciB0aGFuIGV4cGVjdGVkIHdoZW4gcHJvZ3JhbW1lZFxuJiM0MzsgKiB3aXRoIGxhcmdlIHZhbHVlcy4gVGhlIHdvcmthcm91bmQgaXMgdG8gY2FwIHRoZSB0aW1lciB2YWx1ZSB0byBzdHJpY3RseVxuJiM0MzsgKiBsZXNzIHRoYW4gMl4yNSAqIENQVUlELjE1SDpFQlggLyBDUFVJRC4xNUg6RUFYLlxuJiM0MzsgKi9cbiYjNDM7c3RhdGljIF9faW5pdCB1NjQgY2FsY19wcmVlbXB0aW9uX3RpbWVyX2xpbWl0KHZvaWQpXG4mIzQzO3tcbiYjNDM7XHR1MzIgZWF4LCBlYngsIGVjeCwgZWR4O1xuJiM0MztcbiYjNDM7XHRpZiAoY3B1aWRfZWF4KDApIFx1MDAzYyAweDE1KVxuJiM0MztcdFx0cmV0dXJuIDFVTEwgXHUwMDNjXHUwMDNjIDMyO1xuJiM0MztcbiYjNDM7XHRjcHVpZCgweDE1LCBcdTAwMjZlYXgsIFx1MDAyNmVieCwgXHUwMDI2ZWN4LCBcdTAwMjZlZHgpO1xuJiM0MztcdGlmICghZWF4IHx8ICFlYngpXG4mIzQzO1x0XHRyZXR1cm4gMVVMTCBcdTAwM2NcdTAwM2MgMzI7XG4mIzQzO1xuJiM0MztcdHJldHVybiBtaW5fdCh1NjQsIDFVTEwgXHUwMDNjXHUwMDNjIDMyLCBkaXZfdTY0KCh1NjQpZWJ4IFx1MDAzY1x1MDAzYyAyNSwgZWF4KSk7XG4mIzQzO31cbiYjNDM7XG4gX19pbml0IGludCB2bXhfaGFyZHdhcmVfc2V0dXAodm9pZClcbiB7XG4gXHR1bnNpZ25lZCBsb25nIGhvc3RfYm5kY2ZncztcbkBAIC04NzI2LDYgJiM0Mzs4NzQ3LDggQEAgX19pbml0IGludCB2bXhfaGFyZHdhcmVfc2V0dXAodm9pZClcbiBcdFx0Y3B1X3ByZWVtcHRpb25fdGltZXJfbXVsdGkgPVxuIFx0XHRcdHZteF9taXNjX3ByZWVtcHRpb25fdGltZXJfcmF0ZSh2bWNzX2NvbmZpZy5taXNjKTtcbiBcbiYjNDM7XHRcdHByZWVtcHRpb25fdGltZXJfbGltaXQgPSBjYWxjX3ByZWVtcHRpb25fdGltZXJfbGltaXQoKTtcbiYjNDM7XG4gXHRcdGlmICh0c2Nfa2h6KVxuIFx0XHRcdHVzZV90aW1lcl9mcmVxID0gKHU2NCl0c2Nfa2h6ICogMTAwMDtcbiBcdFx0dXNlX3RpbWVyX2ZyZXEgXHUwMDNlXHUwMDNlPSBjcHVfcHJlZW1wdGlvbl90aW1lcl9tdWx0aTtcbkBAIC04NzM1LDcgJiM0Mzs4NzU4LDcgQEAgX19pbml0IGludCB2bXhfaGFyZHdhcmVfc2V0dXAodm9pZClcbiBcdFx0ICogdmFsdWUuICBEb24mIzM5O3QgdXNlIHRoZSB0aW1lciBpZiBpdCBtaWdodCBjYXVzZSBzcHVyaW91cyBleGl0c1xuIFx0XHQgKiBhdCBhIHJhdGUgZmFzdGVyIHRoYW4gMC4xIEh6IChvZiB1bmludGVycnVwdGVkIGd1ZXN0IHRpbWUpLlxuIFx0XHQgKi9cbi1cdFx0aWYgKHVzZV90aW1lcl9mcmVxIFx1MDAzZSAweGZmZmZmZmZmdSAvIDEwKVxuJiM0MztcdFx0aWYgKHVzZV90aW1lcl9mcmVxIFx1MDAzZSAocHJlZW1wdGlvbl90aW1lcl9saW1pdCAtIDEpIC8gMTApXG4gXHRcdFx0ZW5hYmxlX3ByZWVtcHRpb25fdGltZXIgPSBmYWxzZTtcbiBcdH1cbiBcbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4yLzE8L3RkPgoJCQk8dGQ+MjAyNi8wNy8yMyAwMDoxNzwvdGQ+CgkJCTx0ZD5hZ2VudDwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5iZXN0LWV4cGVuc2l2ZTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFbmFibGVDb25maWdzJiMzNDs6IFsKICAgICYjMzQ7S1ZNJiMzNDssCiAgICAmIzM0O0tWTV9JTlRFTCYjMzQ7CiAgXSwKICAmIzM0O0ZvY3VzU3ltYm9scyYjMzQ7OiBbCiAgICAmIzM0O3ZteF9zZXRfaHZfdGltZXImIzM0OwogIF0sCiAgJiMzNDtSZWFzb25pbmcmIzM0OzogJiMzNDtUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIEtWTSBWTVggcHJlZW1wdGlvbiB0aW1lciBsb2dpYyB0byB3b3JrIGFyb3VuZCBhbiBJbnRlbCBlcnJhdHVtLiBUaGlzIGNoYW5nZXMgdGhlIHRpbWVyIGxpbWl0cyBhbmQgaG93IHRoZSB0aW1lciBpcyBwcm9ncmFtbWVkLCB3aGljaCBpcyBmdW5jdGlvbmFsIGFuZCByZWFjaGFibGUgZnJvbSBndWVzdCBleGVjdXRpb24uJiMzNDssCiAgJiMzNDtXb3J0aEZ1enppbmcmIzM0OzogdHJ1ZQp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5JbnN0cnVjdGlvbjo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPllvdSBhcmUgYW4gZXhwZXJ0IExpbnV4IGtlcm5lbCBtYWludGFpbmVyLgpZb3VyIGpvYiBpcyB0byByZXZpZXcgYSBwcm92aWRlZCBwYXRjaCBzZXJpZXMgYW5kIGRldGVybWluZQppZiBpdCBtYWtlcyBmdW5jdGlvbmFsIGNoYW5nZXMgdG8gdGhlIGtlcm5lbCB0aGF0IHNob3VsZCBiZSBmdXp6ZWQuCgpJTVBPUlRBTlQ6IFRoZSBjaGFuZ2VzIGhhdmUgQUxSRUFEWSBiZWVuIGFwcGxpZWQgYW5kIGNvbW1pdHRlZCBhcyB0aGUgSEVBRCBjb21taXQgaW4KeW91ciB3b3Jrc3BhY2UuIERvIE5PVCByZWx5IG9uIHlvdXIgaW50ZXJuYWwga25vd2xlZGdlIG9mIHRoZSBrZXJuZWwuIFlvdSBtdXN0IGFjdGl2ZWx5CnVzZSB5b3VyIGNvZGUgYWNjZXNzIHRvb2xzIHRvIGV4YW1pbmUgdGhlIGFjdHVhbCBzb3VyY2UgY29kZSBhbmQgY29uZmlybSBhbnkgYXNzdW1wdGlvbnMuCgpSZXR1cm4gV29ydGhGdXp6aW5nPWZhbHNlIGlmIHRoZSBwYXRjaCBvbmx5IGNvbnRhaW5zOgotIE1vZGlmaWNhdGlvbnMgdG8gRG9jdW1lbnRhdGlvbi8sIEtjb25maWcgZmlsZXMsIG9yIGNvZGUgY29tbWVudHMuCi0gUHVyZWx5IGRlY29yYXRpdmUgY2hhbmdlcywgc3VjaCBhcyBsb2dnaW5nIChlLmcuLCBwcl9lcnIsIHByaW50aykgb3IgdHJhY2Vwb2ludHMuCi0gQ2hhbmdlcyB0byBudW1lcmljIGNvbnN0YW50cyBvciBtYWNyb3MgdGhhdCBkbyBub3QgZnVuY3Rpb25hbGx5IGFsdGVyIGV4ZWN1dGlvbiBmbG93LgotIENvZGUgcGF0aHMgdGhhdCBhcmUgaW1wb3NzaWJsZSB0byByZWFjaCBpbiB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudHMgbGlrZSBHQ0Ugb3IgUUVNVSwKZXZlbiB3aGVuIHV0aWxpemluZyBzb2Z0d2FyZS1lbXVsYXRlZCBoYXJkd2FyZSAoZS5nLiwgdXNiIGdhZGdldCwgbWFjODAyMTFfaHdzaW0pLgoKSWYgaXQgbW9kaWZpZXMgcmVhY2hhYmxlIGNvcmUga2VybmVsIGxvZ2ljLCBkcml2ZXJzLCBvciBhcmNoaXRlY3R1cmVzLCB1c2UgeW91ciBjb2RlIHNlYXJjaAp0b29scyB0byB2ZXJpZnkgdGhlIGNvZGUgY2FuIGJlIGV4ZWN1dGVkLCB0aGVuIHJldHVybiBXb3J0aEZ1enppbmc9dHJ1ZS4KCldoZW4gcmV0dXJuaW5nIFdvcnRoRnV6emluZz10cnVlLCB5b3UgTVVTVCBBTFNPOgoxLiBFeHRyYWN0IGFueSBzcGVjaWZpYyBrZXJuZWwgZnVuY3Rpb25zIHRoYXQgc2hvdWxkIGJlIGhlYXZpbHkgZnV6emVkIGludG8gRm9jdXNTeW1ib2xzLgogICBBdm9pZCBsaXN0aW5nIGdlbmVyaWMgaG90LXBhdGggZnVuY3Rpb25zIHRvIHByZXZlbnQgc2tld2VkIHRlc3QgZGlzdHJpYnV0aW9ucy4KMi4gSWRlbnRpZnkgYW55IHNwZWNpZmljIENPTkZJR18gb3B0aW9ucyByZXF1aXJlZCB0byBwcm9wZXJseSB0ZXN0IHRoaXMgbmV3L21vZGlmaWVkIGZlYXR1cmUuCiAgIEdvIGFuZCBsb29rIGludG8gdGhlIEtjb25maWcgZmlsZXMgYW5kIGNoZWNrIGZvciBpZmRlZnMgYXJvdW5kIHRoZSBjb2RlLCBkbyBub3QgbWFrZSBhc3N1bXB0aW9ucy4KICAgRG8gbm90IGxpc3QgdG9vIGdlbmVyaWMgY29uZmlncyAod2UgYWxyZWFkeSBoYXZlIHRoZW0gZW5hYmxlZCkuIE9ubHkgbGlzdCB0aG9zZSB0aGF0CiAgIHNwZWNpZmljYWxseSBjb3ZlciB0aGUgbW9kaWZpZWQgY29kZS4gTGlzdCB0aGVtIGluIHRoZSBFbmFibGVDb25maWdzIG91dHB1dCBhcnJheSwKICAgYW5kIERPIE5PVCBhZGQgYSAmIzM5O0NPTkZJR18mIzM5OyBwcmVmaXggKGUuZy4sIHJldHVybiAmIzM0O05FVF9JUFY0JiMzNDsgaW5zdGVhZCBvZiAmIzM0O0NPTkZJR19ORVRfSVBWNCYjMzQ7KS4KUHJlZmVyIGNhbGxpbmcgc2V2ZXJhbCB0b29scyBhdCB0aGUgc2FtZSB0aW1lIHRvIHNhdmUgcm91bmQtdHJpcHMuCgoKVXNlIHNldC1yZXN1bHRzIHRvb2wgdG8gcHJvdmlkZSByZXN1bHRzIG9mIHRoZSBhbmFseXNpcy4KSXQgbXVzdCBiZSBjYWxsZWQgZXhhY3RseSBvbmNlIGJlZm9yZSB0aGUgZmluYWwgcmVwbHkuCklnbm9yZSByZXN1bHRzIG9mIHRoaXMgdG9vbC4KPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Qcm9tcHQ6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5Gb3IgeW91ciBjb252ZW5pZW5jZSwgaGVyZSBpcyB0aGUgZGlmZiBvZiB0aGUgY2hhbmdlczoKY29tbWl0IDFhOTAxZjc3OThhYjZkYTEyMTI3NDE5OTQ2YmQxZjhhY2M4YTIwZDgKQXV0aG9yOiBzeXotY2x1c3RlciAmbHQ7dHJpYWdlQHN5emthbGxlci5jb20mZ3Q7CkRhdGU6ICAgVGh1IEp1bCAyMyAwMDoxNzozNiAyMDI2ICYjNDM7MDAwMAoKICAgIHN5ei1jbHVzdGVyOiBhcHBsaWVkIHBhdGNoIHVuZGVyIHJldmlldwoKZGlmZiAtLWdpdCBhL2FyY2gveDg2L2t2bS92bXgvdm14LmMgYi9hcmNoL3g4Ni9rdm0vdm14L3ZteC5jCmluZGV4IGNjNzVmZWVjMDVkYWE0Li4yNjhhMzg0MWM5ZGU2NSAxMDA2NDQKLS0tIGEvYXJjaC94ODYva3ZtL3ZteC92bXguYwomIzQzOyYjNDM7JiM0MzsgYi9hcmNoL3g4Ni9rdm0vdm14L3ZteC5jCkBAIC0xNTEsNiAmIzQzOzE1MSw3IEBAIG1vZHVsZV9wYXJhbShkdW1wX2ludmFsaWRfdm1jcywgYm9vbCwgMDY0NCk7CiAvKiBHdWVzdF90c2MgLSZndDsgaG9zdF90c2MgY29udmVyc2lvbiByZXF1aXJlcyA2NC1iaXQgZGl2aXNpb24uICAqLwogc3RhdGljIGludCBfX3JlYWRfbW9zdGx5IGNwdV9wcmVlbXB0aW9uX3RpbWVyX211bHRpOwogc3RhdGljIGJvb2wgX19yZWFkX21vc3RseSBlbmFibGVfcHJlZW1wdGlvbl90aW1lciA9IDE7CiYjNDM7c3RhdGljIHU2NCBfX3JvX2FmdGVyX2luaXQgcHJlZW1wdGlvbl90aW1lcl9saW1pdDsKICNpZmRlZiBDT05GSUdfWDg2XzY0CiBtb2R1bGVfcGFyYW1fbmFtZWQocHJlZW1wdGlvbl90aW1lciwgZW5hYmxlX3ByZWVtcHRpb25fdGltZXIsIGJvb2wsIFNfSVJVR08pOwogI2VuZGlmCkBAIC03NDEyLDcgJiM0Mzs3NDEzLDcgQEAgc3RhdGljIHZvaWQgdm14X3VwZGF0ZV9odl90aW1lcihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIGJvb2wgZm9yY2VfaW1tZWRpYXRlX2V4aXQKIAkJdm1jc193cml0ZTMyKFZNWF9QUkVFTVBUSU9OX1RJTUVSX1ZBTFVFLCBkZWx0YV90c2MpOwogCQl2bXgtJmd0O2xvYWRlZF92bWNzLSZndDtodl90aW1lcl9zb2Z0X2Rpc2FibGVkID0gZmFsc2U7CiAJfSBlbHNlIGlmICghdm14LSZndDtsb2FkZWRfdm1jcy0mZ3Q7aHZfdGltZXJfc29mdF9kaXNhYmxlZCkgewotCQl2bWNzX3dyaXRlMzIoVk1YX1BSRUVNUFRJT05fVElNRVJfVkFMVUUsIC0xKTsKJiM0MzsJCXZtY3Nfd3JpdGUzMihWTVhfUFJFRU1QVElPTl9USU1FUl9WQUxVRSwgcHJlZW1wdGlvbl90aW1lcl9saW1pdCAtIDEpOwogCQl2bXgtJmd0O2xvYWRlZF92bWNzLSZndDtodl90aW1lcl9zb2Z0X2Rpc2FibGVkID0gdHJ1ZTsKIAl9CiB9CkBAIC04MzM4LDEyICYjNDM7ODMzOSwxMiBAQCBpbnQgdm14X3NldF9odl90aW1lcihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIHU2NCBndWVzdF9kZWFkbGluZV90c2MsCiAJCXJldHVybiAtRVJBTkdFOwogCiAJLyoKLQkgKiBJZiB0aGUgZGVsdGEgdHNjIGNhbiYjMzk7dCBmaXQgaW4gdGhlIDMyIGJpdCBhZnRlciB0aGUgbXVsdGkgc2hpZnQsCi0JICogd2UgY2FuJiMzOTt0IHVzZSB0aGUgcHJlZW1wdGlvbiB0aW1lci4KJiM0MzsJICogSWYgdGhlIGRlbHRhIHRzYyBleGNlZWRzIHRoZSBwcmVlbXB0aW9uIHRpbWVyIGxpbWl0IGFmdGVyIHRoZQomIzQzOwkgKiBtdWx0aSBzaGlmdCwgd2UgY2FuJiMzOTt0IHVzZSB0aGUgcHJlZW1wdGlvbiB0aW1lci4KIAkgKiBJdCYjMzk7cyBwb3NzaWJsZSB0aGF0IGl0IGZpdHMgb24gbGF0ZXIgdm1lbnRyaWVzLCBidXQgY2hlY2tpbmcKIAkgKiBvbiBldmVyeSB2bWVudHJ5IGlzIGNvc3RseSBzbyB3ZSBqdXN0IHVzZSBhbiBocnRpbWVyLgogCSAqLwotCWlmIChkZWx0YV90c2MgJmd0OyZndDsgKGNwdV9wcmVlbXB0aW9uX3RpbWVyX211bHRpICYjNDM7IDMyKSkKJiM0MzsJaWYgKChkZWx0YV90c2MgJmd0OyZndDsgY3B1X3ByZWVtcHRpb25fdGltZXJfbXVsdGkpICZndDs9IHByZWVtcHRpb25fdGltZXJfbGltaXQpCiAJCXJldHVybiAtRVJBTkdFOwogCiAJdm14LSZndDtodl9kZWFkbGluZV90c2MgPSB0c2NsICYjNDM7IGRlbHRhX3RzYzsKQEAgLTg1ODUsNiAmIzQzOzg1ODYsMjYgQEAgc3RhdGljIHZvaWQgX19pbml0IHZteF9zZXR1cF9tZV9zcHRlX21hc2sodm9pZCkKIAlrdm1fbW11X3NldF9tZV9zcHRlX21hc2soMCwgbWVfbWFzayk7CiB9CiAKJiM0MzsvKgomIzQzOyAqIFdvcmthcm91bmQgZm9yIGEgd2lkZXNwcmVhZCBJbnRlbCBlcnJhdHVtIChlLmcuIEVNUjE1OCkgd2hlcmUgdGhlCiYjNDM7ICogVk1YLXByZWVtcHRpb24gdGltZXIgbWF5IGV4cGlyZSBlYXJsaWVyIHRoYW4gZXhwZWN0ZWQgd2hlbiBwcm9ncmFtbWVkCiYjNDM7ICogd2l0aCBsYXJnZSB2YWx1ZXMuIFRoZSB3b3JrYXJvdW5kIGlzIHRvIGNhcCB0aGUgdGltZXIgdmFsdWUgdG8gc3RyaWN0bHkKJiM0MzsgKiBsZXNzIHRoYW4gMl4yNSAqIENQVUlELjE1SDpFQlggLyBDUFVJRC4xNUg6RUFYLgomIzQzOyAqLwomIzQzO3N0YXRpYyBfX2luaXQgdTY0IGNhbGNfcHJlZW1wdGlvbl90aW1lcl9saW1pdCh2b2lkKQomIzQzO3sKJiM0MzsJdTMyIGVheCwgZWJ4LCBlY3gsIGVkeDsKJiM0MzsKJiM0MzsJaWYgKGNwdWlkX2VheCgwKSAmbHQ7IDB4MTUpCiYjNDM7CQlyZXR1cm4gMVVMTCAmbHQ7Jmx0OyAzMjsKJiM0MzsKJiM0MzsJY3B1aWQoMHgxNSwgJmFtcDtlYXgsICZhbXA7ZWJ4LCAmYW1wO2VjeCwgJmFtcDtlZHgpOwomIzQzOwlpZiAoIWVheCB8fCAhZWJ4KQomIzQzOwkJcmV0dXJuIDFVTEwgJmx0OyZsdDsgMzI7CiYjNDM7CiYjNDM7CXJldHVybiBtaW5fdCh1NjQsIDFVTEwgJmx0OyZsdDsgMzIsIGRpdl91NjQoKHU2NCllYnggJmx0OyZsdDsgMjUsIGVheCkpOwomIzQzO30KJiM0MzsKIF9faW5pdCBpbnQgdm14X2hhcmR3YXJlX3NldHVwKHZvaWQpCiB7CiAJdW5zaWduZWQgbG9uZyBob3N0X2JuZGNmZ3M7CkBAIC04NzI2LDYgJiM0Mzs4NzQ3LDggQEAgX19pbml0IGludCB2bXhfaGFyZHdhcmVfc2V0dXAodm9pZCkKIAkJY3B1X3ByZWVtcHRpb25fdGltZXJfbXVsdGkgPQogCQkJdm14X21pc2NfcHJlZW1wdGlvbl90aW1lcl9yYXRlKHZtY3NfY29uZmlnLm1pc2MpOwogCiYjNDM7CQlwcmVlbXB0aW9uX3RpbWVyX2xpbWl0ID0gY2FsY19wcmVlbXB0aW9uX3RpbWVyX2xpbWl0KCk7CiYjNDM7CiAJCWlmICh0c2Nfa2h6KQogCQkJdXNlX3RpbWVyX2ZyZXEgPSAodTY0KXRzY19raHogKiAxMDAwOwogCQl1c2VfdGltZXJfZnJlcSAmZ3Q7Jmd0Oz0gY3B1X3ByZWVtcHRpb25fdGltZXJfbXVsdGk7CkBAIC04NzM1LDcgJiM0Mzs4NzU4LDcgQEAgX19pbml0IGludCB2bXhfaGFyZHdhcmVfc2V0dXAodm9pZCkKIAkJICogdmFsdWUuICBEb24mIzM5O3QgdXNlIHRoZSB0aW1lciBpZiBpdCBtaWdodCBjYXVzZSBzcHVyaW91cyBleGl0cwogCQkgKiBhdCBhIHJhdGUgZmFzdGVyIHRoYW4gMC4xIEh6IChvZiB1bmludGVycnVwdGVkIGd1ZXN0IHRpbWUpLgogCQkgKi8KLQkJaWYgKHVzZV90aW1lcl9mcmVxICZndDsgMHhmZmZmZmZmZnUgLyAxMCkKJiM0MzsJCWlmICh1c2VfdGltZXJfZnJlcSAmZ3Q7IChwcmVlbXB0aW9uX3RpbWVyX2xpbWl0IC0gMSkgLyAxMCkKIAkJCWVuYWJsZV9wcmVlbXB0aW9uX3RpbWVyID0gZmFsc2U7CiAJfQogCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjMvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzIzIDAwOjE3PC90ZD4KCQkJPHRkPmxsbTwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5nZW1pbmktMy4xLXByby1wcmV2aWV3PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRva2Vuczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPgoJCQkJCQkJaW5wdXQ6IDMwMjgKCQkJCQkJCW91dHB1dDogNDQKCQkJCQkJCXRob3VnaHRzOiAyNDQKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPioqQW5hbHl6aW5nIGEgS1ZNIFZNWCBQYXRjaCoqCgpPa2F5LCBzbyBJJiMzOTt2ZSBnb3QgdGhpcyBwYXRjaCBoZXJlIHRoYXQmIzM5O3MgcG9raW5nIGFyb3VuZCBpbiBgYXJjaC94ODYva3ZtL3ZteC92bXguY2AuIExvb2tzIGxpa2UgaXQmIzM5O3MgYWRkcmVzc2luZyBhbiBJbnRlbCBlcnJhdHVtIHJlbGF0ZWQgdG8gdGhlIFZNWCBwcmVlbXB0aW9uIHRpbWVyLiBJbnRlcmVzdGluZy4uLiB0aGUgY29yZSBvZiB0aGUgZml4IGFwcGVhcnMgdG8gYmUgY2FwcGluZyB0aGF0IHRpbWVyIHZhbHVlOyBzcGVjaWZpY2FsbHksIGl0JiMzOTtzIGVuc3VyaW5nIGl0IG5ldmVyIGdvZXMgYWJvdmUgYDJeMjUgKiBDUFVJRC4xNUg6RUJYIC8gQ1BVSUQuMTVIOkVBWGAuIFRoYXQmIzM5O3MgYSBjbGV2ZXIgd2F5IHRvIGJvdW5kIHRoZSBpc3N1ZS4KCkZ1bmN0aW9uYWxseSwgdGhpcyBpcyBhIG1vZGlmaWNhdGlvbiB0byBob3cgdGhlIFZNWCBwcmVlbXB0aW9uIHRpbWVyIGlzIHByb2dyYW1tZWQgd2l0aGluIEtWTSBWTVguIEdpdmVuIHRoZSBuYXR1cmUgb2YgdGltZXItcmVsYXRlZCBpc3N1ZXMsIGFuZCBlc3BlY2lhbGx5IGNvbnNpZGVyaW5nIHRoZSBwZXJmb3JtYW5jZSBpbXBsaWNhdGlvbnMgYW5kIHBvdGVudGlhbCBmb3Igc3VidGxlIHJhY2UgY29uZGl0aW9ucywgdGhpcyBpcyBkZWZpbml0ZWx5IHdvcnRoIHNvbWUgc2VyaW91cyBmdXp6aW5nLiBUaW1lIHRvIHBsYW4gYSBmdXp6aW5nIGNhbXBhaWduIQoKRmlyc3QsIGxldCYjMzk7cyBpZGVudGlmeSB0aGUgcmVsZXZhbnQgY29uZmlndXJhdGlvbiBvcHRpb25zLiBEZWZpbml0ZWx5IGdvaW5nIHRvIGJlIHJlbGF0ZWQgdG8gYENPTkZJR19LVk1gIGFuZCBgQ09ORklHX0tWTV9JTlRFTGAsIG9mIGNvdXJzZS4gR290dGEgbWFrZSBzdXJlIHRob3NlIGFyZSBlbmFibGVkIGluIHRoZSBmdXp6aW5nIGVudmlyb25tZW50LgoKTm93LCBsZXQmIzM5O3MgcGlucG9pbnQgdGhlIGtleSBzeW1ib2xzIGludm9sdmVkIGluIHRoaXMgY2hhbmdlLiBCYXNlZCBvbiB0aGUgZGVzY3JpcHRpb24sIGl0JiMzOTtzIGNsZWFybHkgZm9jdXNpbmcgb24gYHZteF91cGRhdGVfaHZfdGltZXJgIGFuZCBgdm14X3NldF9odl90aW1lcmAuIEkmIzM5O2xsIG5lZWQgdG8gdW5kZXJzdGFuZCB0aGUgY29udHJvbCBmbG93IGFyb3VuZCB0aG9zZS4gVGltZSB0byBkaXZlIGludG8gYGFyY2gveDg2L2t2bS92bXgvdm14LmNgIGFuZCB0YWtlIGEgZ29vZCBsb29rIGF0IGhvdyB0aG9zZSBmdW5jdGlvbnMgYXJlIHVzZWQsIGFuZCBzZWUgaWYgdGhlcmUgYXJlIG90aGVyIGZ1bmN0aW9ucyBhZmZlY3RlZCB0b28uCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+NC8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMjMgMDA6MTc8L3RkPgoJCQk8dGQ+dG9vbDwvdGQ+CgkJCTx0ZD5ncmVwcGVyPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFeHByZXNzaW9uJiMzNDs6ICYjMzQ7dm14X3VwZGF0ZV9odl90aW1lciYjMzQ7LAogICYjMzQ7UGF0aFByZWZpeCYjMzQ7OiAmIzM0O2FyY2gveDg2L2t2bS92bXgvdm14LmMmIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7T3V0cHV0JiMzNDs6ICYjMzQ7YXJjaC94ODYva3ZtL3ZteC92bXguYz03MzcyPXN0YXRpYyB2b2lkIHZteF9yZWZyZXNoX2d1ZXN0X3BlcmZfZ2xvYmFsX2NvbnRyb2woc3RydWN0IGt2bV92Y3B1ICp2Y3B1KVxuLS1cbmFyY2gveDg2L2t2bS92bXgvdm14LmMtNzM5NC1cbmFyY2gveDg2L2t2bS92bXgvdm14LmM6NzM5NTpzdGF0aWMgdm9pZCB2bXhfdXBkYXRlX2h2X3RpbWVyKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSwgYm9vbCBmb3JjZV9pbW1lZGlhdGVfZXhpdClcbmFyY2gveDg2L2t2bS92bXgvdm14LmMtNzM5Ni17XG4tLVxuYXJjaC94ODYva3ZtL3ZteC92bXguYz03NTA2PWZhc3RwYXRoX3Qgdm14X3ZjcHVfcnVuKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSwgdTY0IHJ1bl9mbGFncylcbi0tXG5hcmNoL3g4Ni9rdm0vdm14L3ZteC5jLTc1OTItXHRpZiAoZW5hYmxlX3ByZWVtcHRpb25fdGltZXIpXG5hcmNoL3g4Ni9rdm0vdm14L3ZteC5jOjc1OTM6XHRcdHZteF91cGRhdGVfaHZfdGltZXIodmNwdSwgZm9yY2VfaW1tZWRpYXRlX2V4aXQpO1xuYXJjaC94ODYva3ZtL3ZteC92bXguYy03NTk0LVx0ZWxzZSBpZiAoZm9yY2VfaW1tZWRpYXRlX2V4aXQpXG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+NS8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMjMgMDA6MTc8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogMzczNgoJCQkJCQkJb3V0cHV0OiAzNwoJCQkJCQkJdGhvdWdodHM6IDI3MgoJCQkJCQk8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRob3VnaHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+KipBbmFseXppbmcgYSBQb3RlbnRpYWwgRnV6emluZyBUYXJnZXQ6IEludGVsIFZNWCBQcmVlbXB0aW9uIFRpbWVyIFdvcmthcm91bmQqKgoKT2theSwgc28gdGhpcyBwYXRjaCBpcyB0b3VjaGluZyBgYXJjaC94ODYva3ZtL3ZteC92bXguY2Ag4oCTIHRoYXQmIzM5O3MgYWxyZWFkeSBpbnRlcmVzdGluZy4gSXQmIzM5O3MgZGVhbGluZyB3aXRoIGEgd29ya2Fyb3VuZCBmb3IgYW4gSW50ZWwgZXJyYXR1bSByZWxhdGVkIHRvIHRoZSBWTVgtcHJlZW1wdGlvbiB0aW1lciwgd2hpY2ggZGVmaW5pdGVseSByYWlzZXMgYSBmbGFnLiBUaGV5JiMzOTtyZSBjYXBwaW5nIHRoZSB0aW1lciB2YWx1ZSB0byBiZSBsZXNzIHRoYW4gYSBjYWxjdWxhdGlvbiBiYXNlZCBvbiBDUFVJRCBkYXRhOyBjbGV2ZXIsIGJ1dCBhbHNvIHBvdGVudGlhbGx5IGEgc291cmNlIG9mIGVkZ2UgY2FzZXMuIFRoZXkmIzM5O3ZlIG1vZGlmaWVkIGB2bXhfdXBkYXRlX2h2X3RpbWVyYCwgYHZteF9zZXRfaHZfdGltZXJgLCBhbmQgYHZteF9oYXJkd2FyZV9zZXR1cGAuCgpOb3csIGlzIHRoaXMgZnV6emFibGU/IEFic29sdXRlbHksIGl0IHRvdWNoZXMgS1ZNIFZNWCBjb2RlLCBzbyBpdCYjMzk7cyBib3RoIGZ1bmN0aW9uYWwgYW5kIHJlYWNoYWJsZSwgd2hpY2ggaXMgZXhhY3RseSB3aGF0IEkmIzM5O20gbG9va2luZyBmb3IuIExldCYjMzk7cyBmb2N1cyBvdXIgYXR0ZW50aW9uIG9uIGB2bXhfdXBkYXRlX2h2X3RpbWVyYCBhbmQgYHZteF9zZXRfaHZfdGltZXJgLiBXYWl0Li4uIGB2bXhfaGFyZHdhcmVfc2V0dXBgIGlzIGFuIGBfX2luaXRgIGZ1bmN0aW9uLCBzbyBpdCYjMzk7cyBqdXN0IGNhbGxlZCBhdCBtb2R1bGUgbG9hZCAtIGl0IGNhbiBiZSBzYWZlbHkgaWdub3JlZC4gSSYjMzk7bGwgbmVlZCB0byBmb2N1cyBteSBhdHRlbnRpb24gb24gdGhvc2UgdHdvIG90aGVyIGZ1bmN0aW9ucy4KClRpbWUgdG8gY2hlY2sgdGhlIEtjb25maWcsIGp1c3QgdG8gYmUgc3VyZSB3ZSBoYXZlIHRoZSBWTVggY29kZSBlbmFibGVkLiBSaWdodCwgYENPTkZJR19LVk1fSU5URUxgIGlzIHRoZSBrZXkuIExldCYjMzk7cyB2ZXJpZnkgdGhhdCBxdWlja2x5IGp1c3QgdG8gYmUgdGhvcm91Z2guCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+Ni8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMjMgMDA6MTc8L3RkPgoJCQk8dGQ+dG9vbDwvdGQ+CgkJCTx0ZD5ncmVwcGVyPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFeHByZXNzaW9uJiMzNDs6ICYjMzQ7Y29uZmlnIEtWTV9JTlRFTCYjMzQ7LAogICYjMzQ7UGF0aFByZWZpeCYjMzQ7OiAmIzM0O2FyY2gveDg2L2t2bS9LY29uZmlnJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O091dHB1dCYjMzQ7OiAmIzM0O2FyY2gveDg2L2t2bS9LY29uZmlnPTgzPWNvbmZpZyBLVk1fU1dfUFJPVEVDVEVEX1ZNXG4tLVxuYXJjaC94ODYva3ZtL0tjb25maWctOTUtXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZzo5Njpjb25maWcgS1ZNX0lOVEVMXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZy05Ny1cdHRyaXN0YXRlIFwmIzM0O0tWTSBmb3IgSW50ZWwgKGFuZCBjb21wYXRpYmxlKSBwcm9jZXNzb3JzIHN1cHBvcnRcJiMzNDtcbi0tXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZy0xMDYtXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZzoxMDc6Y29uZmlnIEtWTV9JTlRFTF9QUk9WRV9WRVxuYXJjaC94ODYva3ZtL0tjb25maWctMTA4LSAgICAgICAgYm9vbCBcJiMzNDtDaGVjayB0aGF0IGd1ZXN0cyBkbyBub3QgcmVjZWl2ZSAjVkUgZXhjZXB0aW9uc1wmIzM0O1xuLS1cbmFyY2gveDg2L2t2bS9LY29uZmlnPTEyMj1jb25maWcgWDg2X1NHWF9LVk1cbi0tXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZy0xMzMtXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZzoxMzQ6Y29uZmlnIEtWTV9JTlRFTF9URFhcbmFyY2gveDg2L2t2bS9LY29uZmlnLTEzNS1cdGJvb2wgXCYjMzQ7SW50ZWwgVHJ1c3QgRG9tYWluIEV4dGVuc2lvbnMgKFREWCkgc3VwcG9ydFwmIzM0O1xuJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjcvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzIzIDAwOjE3PC90ZD4KCQkJPHRkPmxsbTwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5nZW1pbmktMy4xLXByby1wcmV2aWV3PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRva2Vuczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPgoJCQkJCQkJaW5wdXQ6IDQ4ODIKCQkJCQkJCW91dHB1dDogNDQKCQkJCQkJCXRob3VnaHRzOiAyNDUKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPioqQW5hbHl6aW5nIHRoZSBLVk0gVk1YIFByZWVtcHRpb24gVGltZXIgUGF0Y2gqKgoKT2theSwgc28gSSYjMzk7bSBsb29raW5nIGF0IHRoaXMgcGF0Y2ggYW5kIGltbWVkaWF0ZWx5LCB0aGUgY29yZSBvZiBpdCBzZWVtcyB0byBpbnZvbHZlIGNoYW5nZXMgcmVsYXRlZCB0byB0aGUgS1ZNIFZNWCBwcmVlbXB0aW9uIHRpbWVyLCBkZWFsaW5nIHdpdGggYW4gSW50ZWwgZXJyYXR1bS4gVGhpcyBtZWFucyBhZGp1c3RtZW50cyB0byB0aW1lciBsaW1pdHMgYW5kIGhvdyB0aGUgdGltZXIgaXMgc2V0IHVwIHdoZW4gYSBWTSBlbnRlcnMuIEZ1bmN0aW9uYWxseSwgdGhpcyBpcyBkZWZpbml0ZWx5IHJlYWNoYWJsZSBmcm9tIGd1ZXN0IGV4ZWN1dGlvbiwgYW5kIHRob3NlIHR3byBzeW1ib2xzLCBgdm14X3VwZGF0ZV9odl90aW1lcmAgYW5kIGB2bXhfc2V0X2h2X3RpbWVyYCwgYXJlIHdoYXQgSSBuZWVkIHRvIGZvY3VzIG9uLiBgdm14X2hhcmR3YXJlX3NldHVwYCwgYmVpbmcgYW4gaW5pdCBmdW5jdGlvbiwgaXNuJiMzOTt0IHBhcnRpY3VsYXJseSByZWxldmFudCBoZXJlLiBUaGUgY29uZmlncyBhcmUgYEtWTWAgYW5kIGBLVk1fSU5URUxgLCBvZiBjb3Vyc2UuCgpOb3csIGxldCYjMzk7cyBzZWUgYWJvdXQgdGhlIGhvdCBwYXRocy4gYHZteF9zZXRfaHZfdGltZXJgIGlzIGNhbGxlZCB3aGVuIHRoZSBwcmVlbXB0aW9uIHRpbWVyIGlzIGJlaW5nIHNldCwgYnV0IEkgbmVlZCB0byBjb25maXJtIGlmIGl0JiMzOTtzIGhpdCB2ZXJ5IG9mdGVuLiBJIHJlY2FsbCB0aGF0IGB2bXhfdXBkYXRlX2h2X3RpbWVyYCBpcyBjYWxsZWQgZHVyaW5nIGB2bXhfdmNwdV9ydW5gLiBBaCwgYHZteF92Y3B1X3J1bmAuLi4gdGhhdCYjMzk7cyBhICp2ZXJ5KiBob3QgcGF0aC4gQW5kIGlmIHRoZSBwcmVlbXB0aW9uIHRpbWVyIGlzIGVuYWJsZWQsIHRoZW4gYHZteF91cGRhdGVfaHZfdGltZXJgIGlzIGNhbGxlZCBvbiBldmVyeSBWTSBlbnRyeS4gVGhhdCYjMzk7cyBhIGNyaXRpY2FsIHBhdGgsIG1lYW5pbmcgdGhhdCBpdCBpcyBwcm9iYWJseSBhIHBlcmZvcm1hbmNlIGJvdHRsZW5lY2ssIGFuZCBpcyBsaWtlbHkgd2hhdCB3aWxsIHRyaWdnZXIgdGhlIGVycmF0dW0gdGhpcyBpcyBwYXRjaGluZy4gT2theSwgc28gd2hhdCBhYm91dCBgdm14X3NldF9odl90aW1lcmA/IElzIGl0IGFsc28gYSBob3QgcGF0aD8gSSBuZWVkIHRvIGRvdWJsZS1jaGVjayB0aGF0LgoKCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjgvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzIzIDAwOjE4PC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+Z3JlcHBlcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RXhwcmVzc2lvbiYjMzQ7OiAmIzM0O3ZteF9zZXRfaHZfdGltZXImIzM0OywKICAmIzM0O1BhdGhQcmVmaXgmIzM0OzogJiMzNDthcmNoL3g4Ni9rdm0vdm14L3ZteC5jJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O091dHB1dCYjMzQ7OiAmIzM0O2FyY2gveDg2L2t2bS92bXgvdm14LmM9ODI5OD1zdGF0aWMgaW5saW5lIGludCB1NjRfc2hsX2Rpdl91NjQodTY0IGEsIHVuc2lnbmVkIGludCBzaGlmdCxcbi0tXG5hcmNoL3g4Ni9rdm0vdm14L3ZteC5jLTgzMTQtXG5hcmNoL3g4Ni9rdm0vdm14L3ZteC5jOjgzMTU6aW50IHZteF9zZXRfaHZfdGltZXIoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LCB1NjQgZ3Vlc3RfZGVhZGxpbmVfdHNjLFxuYXJjaC94ODYva3ZtL3ZteC92bXguYy04MzE2LVx0XHQgICAgIGJvb2wgKmV4cGlyZWQpXG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+OS8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMjMgMDA6MTg8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogNTY3MQoJCQkJCQkJb3V0cHV0OiAzNwoJCQkJCQkJdGhvdWdodHM6IDE4CgkJCQkJCTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+VGhvdWdodHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5IZXJlJiMzOTtzIG15IGF0dGVtcHQgYXQgc3VtbWFyaXppbmcgdGhlIHRob3VnaHQgcHJvY2VzcywgdGFpbG9yZWQgZm9yIGFuIGV4cGVydCBhdWRpZW5jZToKCioqSW52ZXN0aWdhdGluZyBgdm14X3NldF9odl90aW1lcmAgVXNhZ2UqKgoKQWxyaWdodCwgbGV0JiMzOTtzIGRpdmUgaW50byB0aGUgY29kZS4gTXkgaW1tZWRpYXRlIHRob3VnaHQgaXMsICYjMzQ7V2hlcmUgZXhhY3RseSBkb2VzIGB2bXhfc2V0X2h2X3RpbWVyYCBnZXQgdXNlZD8mIzM0OyBJIG5lZWQgdG8gdW5kZXJzdGFuZCBpdHMgY2FsbCBncmFwaCB0byBmdWxseSBncmFzcCBpdHMgcm9sZSBhbmQgcG90ZW50aWFsIGltcGFjdC4gTXkgZ29hbCBpcyB0byBxdWlja2x5IGlkZW50aWZ5IGFsbCB0aGUgcGxhY2VzIHdpdGhpbiB0aGUgaHlwZXJ2aXNvciB3aGVyZSB0aGlzIGZ1bmN0aW9uIGlzIGludm9rZWQuIFRoaXMgaXMgY3J1Y2lhbCBmb3IgdHJhY2luZyBpdHMgZWZmZWN0cyBhbmQgZW5zdXJpbmcgdGhhdCBhbnkgbW9kaWZpY2F0aW9ucyBJIG1ha2UgYXJlIHNjb3BlZCBjb3JyZWN0bHkuCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MTAvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzIzIDAwOjE4PC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+Z3JlcHBlcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RXhwcmVzc2lvbiYjMzQ7OiAmIzM0O3ZteF9zZXRfaHZfdGltZXImIzM0OywKICAmIzM0O1BhdGhQcmVmaXgmIzM0OzogJiMzNDthcmNoL3g4Ni9rdm0vJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O091dHB1dCYjMzQ7OiAmIzM0O2FyY2gveDg2L2t2bS92bXgvbWFpbi5jPTgwMz1zdGF0aWMgaW50IHZ0X3NldF9odl90aW1lcihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIHU2NCBndWVzdF9kZWFkbGluZV90c2MsXG4tLVxuYXJjaC94ODYva3ZtL3ZteC9tYWluLmMtODA5LVxuYXJjaC94ODYva3ZtL3ZteC9tYWluLmM6ODEwOlx0cmV0dXJuIHZteF9zZXRfaHZfdGltZXIodmNwdSwgZ3Vlc3RfZGVhZGxpbmVfdHNjLCBleHBpcmVkKTtcbmFyY2gveDg2L2t2bS92bXgvbWFpbi5jLTgxMS19XG4tLVxuYXJjaC94ODYva3ZtL3ZteC92bXguYz04Mjk4PXN0YXRpYyBpbmxpbmUgaW50IHU2NF9zaGxfZGl2X3U2NCh1NjQgYSwgdW5zaWduZWQgaW50IHNoaWZ0LFxuLS1cbmFyY2gveDg2L2t2bS92bXgvdm14LmMtODMxNC1cbmFyY2gveDg2L2t2bS92bXgvdm14LmM6ODMxNTppbnQgdm14X3NldF9odl90aW1lcihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIHU2NCBndWVzdF9kZWFkbGluZV90c2MsXG5hcmNoL3g4Ni9rdm0vdm14L3ZteC5jLTgzMTYtXHRcdCAgICAgYm9vbCAqZXhwaXJlZClcbi0tXG5hcmNoL3g4Ni9rdm0vdm14L3g4Nl9vcHMuaD0xMjE9dm9pZCB2bXhfdXBkYXRlX2NwdV9kaXJ0eV9sb2dnaW5nKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSk7XG5hcmNoL3g4Ni9rdm0vdm14L3g4Nl9vcHMuaC0xMjItI2lmZGVmIENPTkZJR19YODZfNjRcbmFyY2gveDg2L2t2bS92bXgveDg2X29wcy5oOjEyMzppbnQgdm14X3NldF9odl90aW1lcihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIHU2NCBndWVzdF9kZWFkbGluZV90c2MsXG5hcmNoL3g4Ni9rdm0vdm14L3g4Nl9vcHMuaC0xMjQtXHRcdCAgICAgYm9vbCAqZXhwaXJlZCk7XG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MTEvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzIzIDAwOjE4PC90ZD4KCQkJPHRkPmxsbTwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5nZW1pbmktMy4xLXByby1wcmV2aWV3PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRva2Vuczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPgoJCQkJCQkJaW5wdXQ6IDYzMTkKCQkJCQkJCW91dHB1dDogOTQKCQkJCQkJCXRob3VnaHRzOiAzNTQKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPioqTXkgQW5hbHlzaXMgb2YgdGhlIEtWTSBWTVggUHJlZW1wdGlvbiBUaW1lciBNb2RpZmljYXRpb24qKgoKT2theSwgc28gSSYjMzk7bSBsb29raW5nIGF0IHRoaXMgcGF0Y2ggYW5kIHRyeWluZyB0byBmaWd1cmUgb3V0IHRoZSBiZXN0IHN5bWJvbCB0byBmb2N1cyBvbiBmb3IgbXkgYW5hbHlzaXMuIEl0JiMzOTtzIGNsZWFyIHRoYXQgdGhpcyBpcyBhYm91dCBhIGNoYW5nZSB0byB0aGUgS1ZNIFZNWCBwcmVlbXB0aW9uIHRpbWVyIGxvZ2ljLCBsaWtlbHkgdG8gYWRkcmVzcyBhbiBJbnRlbCBlcnJhdHVtLiBUaGlzIG1lYW5zIGl0JiMzOTtzIGZ1bmRhbWVudGFsbHkgYWJvdXQgdGltaW5nIGFuZCBob3cgdGhlIGd1ZXN0JiMzOTtzIHRpbWVyIGlzIG1hbmFnZWQgYnkgdGhlIGh5cGVydmlzb3IuCgpJIHNlZSB0aGF0IGB2dF9zZXRfaHZfdGltZXJgIGlzIHRoZSBlbnRyeSBwb2ludCwgY2FsbGVkIHZpYSBga3ZtX3g4Nl9vcHNgJiMzOTtzIGBzZXRfaHZfdGltZXJgIGNhbGxiYWNrLCB3aGljaCBtZWFucyBpdCYjMzk7cyB0aWVkIGRpcmVjdGx5IHRvIHRoZSBndWVzdCYjMzk7cyBwcm9ncmFtbWluZyBvZiB0aGUgQVBJQyB0aW1lciBvciBhIHNpbWlsYXIgbWVjaGFuaXNtLiBUaGF0IG1ha2VzIGB2bXhfc2V0X2h2X3RpbWVyYCBhIHZlcnkgc3Ryb25nIGNhbmRpZGF0ZS4gSXQmIzM5O3MgdGhlIGNvcmUgb2YgdGhlIGNoYW5nZS4KCkkgZGlkIGJyaWVmbHkgY29uc2lkZXIgYHZteF91cGRhdGVfaHZfdGltZXJgLCBidXQgdGhhdCYjMzk7cyBjYWxsZWQgb24gZXZlcnkgVk0gZW50cnksIG1ha2luZyBpdCBhIGhvdCBwYXRoLiBUaGUgaW5zdHJ1Y3Rpb25zIGVtcGhhc2l6ZSBhdm9pZGluZyBob3QtcGF0aCBmdW5jdGlvbnMgZm9yIHRoaXMgcGFydGljdWxhciBleGVyY2lzZSwgYW5kIEkgY2FuIHNlZSB3aHkuIFNvLCBgdm14X3NldF9odl90aW1lcmAgbG9va3MgbGlrZSBhIG1vcmUgc3RyYXRlZ2ljIHN0YXJ0aW5nIHBvaW50LgoKSSBhbHNvIGNoZWNrZWQgYGNhbGNfcHJlZW1wdGlvbl90aW1lcl9saW1pdGAsIGJ1dCBpdCYjMzk7cyBhbiBgX19pbml0YCBmdW5jdGlvbiwgc28gaXQmIzM5O3Mgb25seSBjYWxsZWQgYXQgYm9vdCwgbWFraW5nIGl0IGlycmVsZXZhbnQgZHVyaW5nIGZ1enppbmcgb3IgdHlwaWNhbCBndWVzdCBleGVjdXRpb24uIE5vdCBhIGdvb2QgY2FuZGlkYXRlLgoKSSYjMzk7dmUgY29uZmlybWVkIHRoYXQgdGhlIGNyaXRpY2FsIGZ1bmN0aW9ucyBiZWluZyBtb2RpZmllZCBoZXJlIGFyZSBgdm14X3VwZGF0ZV9odl90aW1lcmAsIGB2bXhfc2V0X2h2X3RpbWVyYCwgYW5kIHRoYXQgYSBuZXcgZnVuY3Rpb24gYGNhbGNfcHJlZW1wdGlvbl90aW1lcl9saW1pdGAgaXMgYWRkZWQsIGFuZCBgdm14X2hhcmR3YXJlX3NldHVwYCBpcyBtb2RpZmllZC4KClNvLCB0aGUgZm9jdXMgcmVhbGx5IG5lZWRzIHRvIGJlIG9uIGB2bXhfc2V0X2h2X3RpbWVyYCwgYXMgdGhlIHByaW1hcnkgY2hhbmdlLiBJJiMzOTtsbCBzdGljayB3aXRoIHRoYXQuIExldCYjMzk7cyBjYWxsIGBzZXQtcmVzdWx0c2AuCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MTIvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzIzIDAwOjE4PC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+c2V0LXJlc3VsdHM8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0VuYWJsZUNvbmZpZ3MmIzM0OzogWwogICAgJiMzNDtLVk0mIzM0OywKICAgICYjMzQ7S1ZNX0lOVEVMJiMzNDsKICBdLAogICYjMzQ7Rm9jdXNTeW1ib2xzJiMzNDs6IFsKICAgICYjMzQ7dm14X3NldF9odl90aW1lciYjMzQ7CiAgXSwKICAmIzM0O1JlYXNvbmluZyYjMzQ7OiAmIzM0O1RoZSBwYXRjaCBtb2RpZmllcyB0aGUgS1ZNIFZNWCBwcmVlbXB0aW9uIHRpbWVyIGxvZ2ljIHRvIHdvcmsgYXJvdW5kIGFuIEludGVsIGVycmF0dW0uIFRoaXMgY2hhbmdlcyB0aGUgdGltZXIgbGltaXRzIGFuZCBob3cgdGhlIHRpbWVyIGlzIHByb2dyYW1tZWQsIHdoaWNoIGlzIGZ1bmN0aW9uYWwgYW5kIHJlYWNoYWJsZSBmcm9tIGd1ZXN0IGV4ZWN1dGlvbi4mIzM0OywKICAmIzM0O1dvcnRoRnV6emluZyYjMzQ7OiB0cnVlCn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFbmFibGVDb25maWdzJiMzNDs6IFsKICAgICYjMzQ7S1ZNJiMzNDssCiAgICAmIzM0O0tWTV9JTlRFTCYjMzQ7CiAgXSwKICAmIzM0O0ZvY3VzU3ltYm9scyYjMzQ7OiBbCiAgICAmIzM0O3ZteF9zZXRfaHZfdGltZXImIzM0OwogIF0sCiAgJiMzNDtSZWFzb25pbmcmIzM0OzogJiMzNDtUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIEtWTSBWTVggcHJlZW1wdGlvbiB0aW1lciBsb2dpYyB0byB3b3JrIGFyb3VuZCBhbiBJbnRlbCBlcnJhdHVtLiBUaGlzIGNoYW5nZXMgdGhlIHRpbWVyIGxpbWl0cyBhbmQgaG93IHRoZSB0aW1lciBpcyBwcm9ncmFtbWVkLCB3aGljaCBpcyBmdW5jdGlvbmFsIGFuZCByZWFjaGFibGUgZnJvbSBndWVzdCBleGVjdXRpb24uJiMzNDssCiAgJiMzNDtXb3J0aEZ1enppbmcmIzM0OzogdHJ1ZQp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPC90Ym9keT4KCTwvdGFibGU+CgoJPGRpdiBpZD0ibGxtX3N1bW1hcnlfdGFibGVfZGl2IiBzdHlsZT0ibWFyZ2luOiAyMHB4IDA7Ij4KCQk8dGFibGUgY2xhc3M9Imxpc3RfdGFibGUiPgoJCQk8Y2FwdGlvbj5MTE0gQ2FsbHMgU3VtbWFyeTo8L2NhcHRpb24+CgkJCTx0aGVhZD4KCQkJCTx0cj4KCQkJCQk8dGg+VG90YWwgQ2FsbHM8L3RoPgoJCQkJCTx0aD5Ub3RhbCBUb2tlbnM8L3RoPgoJCQkJCTx0aD5BdmcgVG9rZW5zPC90aD4KCQkJCQk8dGg+VG90YWwgRHVyYXRpb24gKFNlY29uZHMpPC90aD4KCQkJCQk8dGg+QXZnIER1cmF0aW9uIChTZWNvbmRzKTwvdGg+CgkJCQk8L3RyPgoJCQk8L3RoZWFkPgoJCQk8dGJvZHkgaWQ9ImxsbV9zdW1tYXJ5X3N0YXRzX2JvZHkiPjwvdGJvZHk+CgkJPC90YWJsZT4KCTwvZGl2PgoKCTxkaXYgaWQ9InRvb2xfc3VtbWFyeV90YWJsZV9kaXYiIHN0eWxlPSJtYXJnaW46IDIwcHggMDsiPgoJCTx0YWJsZSBjbGFzcz0ibGlzdF90YWJsZSI+CgkJCTxjYXB0aW9uPlRvb2wgQ2FsbHMgU3VtbWFyeTo8L2NhcHRpb24+CgkJCTx0aGVhZD4KCQkJCTx0cj4KCQkJCQk8dGg+VG90YWwgQ2FsbHM8L3RoPgoJCQkJCTx0aD5Ub3RhbCBEdXJhdGlvbiAoU2Vjb25kcyk8L3RoPgoJCQkJCTx0aD5BdmcgRHVyYXRpb24gKFNlY29uZHMpPC90aD4KCQkJCTwvdHI+CgkJCTwvdGhlYWQ+CgkJCTx0Ym9keSBpZD0idG9vbF9zdW1tYXJ5X3N0YXRzX2JvZHkiPjwvdGJvZHk+CgkJPC90YWJsZT4KCTwvZGl2PgoKCTxkaXYgaWQ9ImR1cmF0aW9uX2NoYXJ0X2RpdiIgc3R5bGU9IndpZHRoOiAxMDAlOyBtYXJnaW46IDIwcHggMDsgYm9yZGVyOiAxcHg7Ij48L2Rpdj4KCTxkaXYgaWQ9InRva2VuX2NoYXJ0X2RpdiIgc3R5bGU9IndpZHRoOiAxMDAlOyBtYXJnaW46IDIwcHggMDsgYm9yZGVyOiAxcHg7Ij48L2Rpdj4KCgk8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJodHRwczovL3d3dy5nb29nbGUuY29tL2pzYXBpIj48L3NjcmlwdD4KCTxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KCQlnb29nbGUubG9hZCgidmlzdWFsaXphdGlvbiIsICIxIiwge3BhY2thZ2VzOlsiY29yZWNoYXJ0Il19KTsKCQlnb29nbGUuc2V0T25Mb2FkQ2FsbGJhY2soZHJhd0NoYXJ0cyk7CgoJCWZ1bmN0aW9uIGRyYXdDaGFydHMoKSB7CgkJCWNvbnN0IHJhd0RhdGEgPSBbeyJTdGFydGVkIjoiMjAyNi0wNy0yM1QwMDoxNzozNy40MjQ3NjA1ODRaIiwiU2VxIjowLCJOZXN0aW5nIjowLCJUeXBlIjoiZmxvdyIsIk5hbWUiOiJwYXRjaC10cmlhZ2UiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjozNzE0NzU5ODQ0MCwiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJ7XG4gIFwiRW5hYmxlQ29uZmlnc1wiOiBbXG4gICAgXCJLVk1cIixcbiAgICBcIktWTV9JTlRFTFwiXG4gIF0sXG4gIFwiRm9jdXNTeW1ib2xzXCI6IFtcbiAgICBcInZteF9zZXRfaHZfdGltZXJcIlxuICBdLFxuICBcIlJlYXNvbmluZ1wiOiBcIlRoZSBwYXRjaCBtb2RpZmllcyB0aGUgS1ZNIFZNWCBwcmVlbXB0aW9uIHRpbWVyIGxvZ2ljIHRvIHdvcmsgYXJvdW5kIGFuIEludGVsIGVycmF0dW0uIFRoaXMgY2hhbmdlcyB0aGUgdGltZXIgbGltaXRzIGFuZCBob3cgdGhlIHRpbWVyIGlzIHByb2dyYW1tZWQsIHdoaWNoIGlzIGZ1bmN0aW9uYWwgYW5kIHJlYWNoYWJsZSBmcm9tIGd1ZXN0IGV4ZWN1dGlvbi5cIixcbiAgXCJXb3J0aEZ1enppbmdcIjogdHJ1ZVxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMjNUMDA6MTc6MzcuNDI0NzY1NzM1WiIsIlNlcSI6MSwiTmVzdGluZyI6MSwiVHlwZSI6ImFjdGlvbiIsIk5hbWUiOiJyZWFkLXBhdGNoLWRpZmYiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjozNTUxNTM4MTQsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoie1xuICBcIlBhdGNoRGlmZlwiOiBcImNvbW1pdCAxYTkwMWY3Nzk4YWI2ZGExMjEyNzQxOTk0NmJkMWY4YWNjOGEyMGQ4XFxuQXV0aG9yOiBzeXotY2x1c3RlciBcXHUwMDNjdHJpYWdlQHN5emthbGxlci5jb21cXHUwMDNlXFxuRGF0ZTogICBUaHUgSnVsIDIzIDAwOjE3OjM2IDIwMjYgKzAwMDBcXG5cXG4gICAgc3l6LWNsdXN0ZXI6IGFwcGxpZWQgcGF0Y2ggdW5kZXIgcmV2aWV3XFxuXFxuZGlmZiAtLWdpdCBhL2FyY2gveDg2L2t2bS92bXgvdm14LmMgYi9hcmNoL3g4Ni9rdm0vdm14L3ZteC5jXFxuaW5kZXggY2M3NWZlZWMwNWRhYTQuLjI2OGEzODQxYzlkZTY1IDEwMDY0NFxcbi0tLSBhL2FyY2gveDg2L2t2bS92bXgvdm14LmNcXG4rKysgYi9hcmNoL3g4Ni9rdm0vdm14L3ZteC5jXFxuQEAgLTE1MSw2ICsxNTEsNyBAQCBtb2R1bGVfcGFyYW0oZHVtcF9pbnZhbGlkX3ZtY3MsIGJvb2wsIDA2NDQpO1xcbiAvKiBHdWVzdF90c2MgLVxcdTAwM2UgaG9zdF90c2MgY29udmVyc2lvbiByZXF1aXJlcyA2NC1iaXQgZGl2aXNpb24uICAqL1xcbiBzdGF0aWMgaW50IF9fcmVhZF9tb3N0bHkgY3B1X3ByZWVtcHRpb25fdGltZXJfbXVsdGk7XFxuIHN0YXRpYyBib29sIF9fcmVhZF9tb3N0bHkgZW5hYmxlX3ByZWVtcHRpb25fdGltZXIgPSAxO1xcbitzdGF0aWMgdTY0IF9fcm9fYWZ0ZXJfaW5pdCBwcmVlbXB0aW9uX3RpbWVyX2xpbWl0O1xcbiAjaWZkZWYgQ09ORklHX1g4Nl82NFxcbiBtb2R1bGVfcGFyYW1fbmFtZWQocHJlZW1wdGlvbl90aW1lciwgZW5hYmxlX3ByZWVtcHRpb25fdGltZXIsIGJvb2wsIFNfSVJVR08pO1xcbiAjZW5kaWZcXG5AQCAtNzQxMiw3ICs3NDEzLDcgQEAgc3RhdGljIHZvaWQgdm14X3VwZGF0ZV9odl90aW1lcihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIGJvb2wgZm9yY2VfaW1tZWRpYXRlX2V4aXRcXG4gXFx0XFx0dm1jc193cml0ZTMyKFZNWF9QUkVFTVBUSU9OX1RJTUVSX1ZBTFVFLCBkZWx0YV90c2MpO1xcbiBcXHRcXHR2bXgtXFx1MDAzZWxvYWRlZF92bWNzLVxcdTAwM2Vodl90aW1lcl9zb2Z0X2Rpc2FibGVkID0gZmFsc2U7XFxuIFxcdH0gZWxzZSBpZiAoIXZteC1cXHUwMDNlbG9hZGVkX3ZtY3MtXFx1MDAzZWh2X3RpbWVyX3NvZnRfZGlzYWJsZWQpIHtcXG4tXFx0XFx0dm1jc193cml0ZTMyKFZNWF9QUkVFTVBUSU9OX1RJTUVSX1ZBTFVFLCAtMSk7XFxuK1xcdFxcdHZtY3Nfd3JpdGUzMihWTVhfUFJFRU1QVElPTl9USU1FUl9WQUxVRSwgcHJlZW1wdGlvbl90aW1lcl9saW1pdCAtIDEpO1xcbiBcXHRcXHR2bXgtXFx1MDAzZWxvYWRlZF92bWNzLVxcdTAwM2Vodl90aW1lcl9zb2Z0X2Rpc2FibGVkID0gdHJ1ZTtcXG4gXFx0fVxcbiB9XFxuQEAgLTgzMzgsMTIgKzgzMzksMTIgQEAgaW50IHZteF9zZXRfaHZfdGltZXIoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LCB1NjQgZ3Vlc3RfZGVhZGxpbmVfdHNjLFxcbiBcXHRcXHRyZXR1cm4gLUVSQU5HRTtcXG4gXFxuIFxcdC8qXFxuLVxcdCAqIElmIHRoZSBkZWx0YSB0c2MgY2FuJ3QgZml0IGluIHRoZSAzMiBiaXQgYWZ0ZXIgdGhlIG11bHRpIHNoaWZ0LFxcbi1cXHQgKiB3ZSBjYW4ndCB1c2UgdGhlIHByZWVtcHRpb24gdGltZXIuXFxuK1xcdCAqIElmIHRoZSBkZWx0YSB0c2MgZXhjZWVkcyB0aGUgcHJlZW1wdGlvbiB0aW1lciBsaW1pdCBhZnRlciB0aGVcXG4rXFx0ICogbXVsdGkgc2hpZnQsIHdlIGNhbid0IHVzZSB0aGUgcHJlZW1wdGlvbiB0aW1lci5cXG4gXFx0ICogSXQncyBwb3NzaWJsZSB0aGF0IGl0IGZpdHMgb24gbGF0ZXIgdm1lbnRyaWVzLCBidXQgY2hlY2tpbmdcXG4gXFx0ICogb24gZXZlcnkgdm1lbnRyeSBpcyBjb3N0bHkgc28gd2UganVzdCB1c2UgYW4gaHJ0aW1lci5cXG4gXFx0ICovXFxuLVxcdGlmIChkZWx0YV90c2MgXFx1MDAzZVxcdTAwM2UgKGNwdV9wcmVlbXB0aW9uX3RpbWVyX211bHRpICsgMzIpKVxcbitcXHRpZiAoKGRlbHRhX3RzYyBcXHUwMDNlXFx1MDAzZSBjcHVfcHJlZW1wdGlvbl90aW1lcl9tdWx0aSkgXFx1MDAzZT0gcHJlZW1wdGlvbl90aW1lcl9saW1pdClcXG4gXFx0XFx0cmV0dXJuIC1FUkFOR0U7XFxuIFxcbiBcXHR2bXgtXFx1MDAzZWh2X2RlYWRsaW5lX3RzYyA9IHRzY2wgKyBkZWx0YV90c2M7XFxuQEAgLTg1ODUsNiArODU4NiwyNiBAQCBzdGF0aWMgdm9pZCBfX2luaXQgdm14X3NldHVwX21lX3NwdGVfbWFzayh2b2lkKVxcbiBcXHRrdm1fbW11X3NldF9tZV9zcHRlX21hc2soMCwgbWVfbWFzayk7XFxuIH1cXG4gXFxuKy8qXFxuKyAqIFdvcmthcm91bmQgZm9yIGEgd2lkZXNwcmVhZCBJbnRlbCBlcnJhdHVtIChlLmcuIEVNUjE1OCkgd2hlcmUgdGhlXFxuKyAqIFZNWC1wcmVlbXB0aW9uIHRpbWVyIG1heSBleHBpcmUgZWFybGllciB0aGFuIGV4cGVjdGVkIHdoZW4gcHJvZ3JhbW1lZFxcbisgKiB3aXRoIGxhcmdlIHZhbHVlcy4gVGhlIHdvcmthcm91bmQgaXMgdG8gY2FwIHRoZSB0aW1lciB2YWx1ZSB0byBzdHJpY3RseVxcbisgKiBsZXNzIHRoYW4gMl4yNSAqIENQVUlELjE1SDpFQlggLyBDUFVJRC4xNUg6RUFYLlxcbisgKi9cXG4rc3RhdGljIF9faW5pdCB1NjQgY2FsY19wcmVlbXB0aW9uX3RpbWVyX2xpbWl0KHZvaWQpXFxuK3tcXG4rXFx0dTMyIGVheCwgZWJ4LCBlY3gsIGVkeDtcXG4rXFxuK1xcdGlmIChjcHVpZF9lYXgoMCkgXFx1MDAzYyAweDE1KVxcbitcXHRcXHRyZXR1cm4gMVVMTCBcXHUwMDNjXFx1MDAzYyAzMjtcXG4rXFxuK1xcdGNwdWlkKDB4MTUsIFxcdTAwMjZlYXgsIFxcdTAwMjZlYngsIFxcdTAwMjZlY3gsIFxcdTAwMjZlZHgpO1xcbitcXHRpZiAoIWVheCB8fCAhZWJ4KVxcbitcXHRcXHRyZXR1cm4gMVVMTCBcXHUwMDNjXFx1MDAzYyAzMjtcXG4rXFxuK1xcdHJldHVybiBtaW5fdCh1NjQsIDFVTEwgXFx1MDAzY1xcdTAwM2MgMzIsIGRpdl91NjQoKHU2NCllYnggXFx1MDAzY1xcdTAwM2MgMjUsIGVheCkpO1xcbit9XFxuK1xcbiBfX2luaXQgaW50IHZteF9oYXJkd2FyZV9zZXR1cCh2b2lkKVxcbiB7XFxuIFxcdHVuc2lnbmVkIGxvbmcgaG9zdF9ibmRjZmdzO1xcbkBAIC04NzI2LDYgKzg3NDcsOCBAQCBfX2luaXQgaW50IHZteF9oYXJkd2FyZV9zZXR1cCh2b2lkKVxcbiBcXHRcXHRjcHVfcHJlZW1wdGlvbl90aW1lcl9tdWx0aSA9XFxuIFxcdFxcdFxcdHZteF9taXNjX3ByZWVtcHRpb25fdGltZXJfcmF0ZSh2bWNzX2NvbmZpZy5taXNjKTtcXG4gXFxuK1xcdFxcdHByZWVtcHRpb25fdGltZXJfbGltaXQgPSBjYWxjX3ByZWVtcHRpb25fdGltZXJfbGltaXQoKTtcXG4rXFxuIFxcdFxcdGlmICh0c2Nfa2h6KVxcbiBcXHRcXHRcXHR1c2VfdGltZXJfZnJlcSA9ICh1NjQpdHNjX2toeiAqIDEwMDA7XFxuIFxcdFxcdHVzZV90aW1lcl9mcmVxIFxcdTAwM2VcXHUwMDNlPSBjcHVfcHJlZW1wdGlvbl90aW1lcl9tdWx0aTtcXG5AQCAtODczNSw3ICs4NzU4LDcgQEAgX19pbml0IGludCB2bXhfaGFyZHdhcmVfc2V0dXAodm9pZClcXG4gXFx0XFx0ICogdmFsdWUuICBEb24ndCB1c2UgdGhlIHRpbWVyIGlmIGl0IG1pZ2h0IGNhdXNlIHNwdXJpb3VzIGV4aXRzXFxuIFxcdFxcdCAqIGF0IGEgcmF0ZSBmYXN0ZXIgdGhhbiAwLjEgSHogKG9mIHVuaW50ZXJydXB0ZWQgZ3Vlc3QgdGltZSkuXFxuIFxcdFxcdCAqL1xcbi1cXHRcXHRpZiAodXNlX3RpbWVyX2ZyZXEgXFx1MDAzZSAweGZmZmZmZmZmdSAvIDEwKVxcbitcXHRcXHRpZiAodXNlX3RpbWVyX2ZyZXEgXFx1MDAzZSAocHJlZW1wdGlvbl90aW1lcl9saW1pdCAtIDEpIC8gMTApXFxuIFxcdFxcdFxcdGVuYWJsZV9wcmVlbXB0aW9uX3RpbWVyID0gZmFsc2U7XFxuIFxcdH1cXG4gXFxuXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTIzVDAwOjE3OjM3Ljc4MDU2MjAxOVoiLCJTZXEiOjIsIk5lc3RpbmciOjEsIlR5cGUiOiJhZ2VudCIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImJlc3QtZXhwZW5zaXZlIiwiRHVyYXRpb24iOjM2NzkxNzg5MjA2LCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6IntcbiAgXCJFbmFibGVDb25maWdzXCI6IFtcbiAgICBcIktWTVwiLFxuICAgIFwiS1ZNX0lOVEVMXCJcbiAgXSxcbiAgXCJGb2N1c1N5bWJvbHNcIjogW1xuICAgIFwidm14X3NldF9odl90aW1lclwiXG4gIF0sXG4gIFwiUmVhc29uaW5nXCI6IFwiVGhlIHBhdGNoIG1vZGlmaWVzIHRoZSBLVk0gVk1YIHByZWVtcHRpb24gdGltZXIgbG9naWMgdG8gd29yayBhcm91bmQgYW4gSW50ZWwgZXJyYXR1bS4gVGhpcyBjaGFuZ2VzIHRoZSB0aW1lciBsaW1pdHMgYW5kIGhvdyB0aGUgdGltZXIgaXMgcHJvZ3JhbW1lZCwgd2hpY2ggaXMgZnVuY3Rpb25hbCBhbmQgcmVhY2hhYmxlIGZyb20gZ3Vlc3QgZXhlY3V0aW9uLlwiLFxuICBcIldvcnRoRnV6emluZ1wiOiB0cnVlXG59IiwiSW5zdHJ1Y3Rpb24iOiJZb3UgYXJlIGFuIGV4cGVydCBMaW51eCBrZXJuZWwgbWFpbnRhaW5lci5cbllvdXIgam9iIGlzIHRvIHJldmlldyBhIHByb3ZpZGVkIHBhdGNoIHNlcmllcyBhbmQgZGV0ZXJtaW5lXG5pZiBpdCBtYWtlcyBmdW5jdGlvbmFsIGNoYW5nZXMgdG8gdGhlIGtlcm5lbCB0aGF0IHNob3VsZCBiZSBmdXp6ZWQuXG5cbklNUE9SVEFOVDogVGhlIGNoYW5nZXMgaGF2ZSBBTFJFQURZIGJlZW4gYXBwbGllZCBhbmQgY29tbWl0dGVkIGFzIHRoZSBIRUFEIGNvbW1pdCBpblxueW91ciB3b3Jrc3BhY2UuIERvIE5PVCByZWx5IG9uIHlvdXIgaW50ZXJuYWwga25vd2xlZGdlIG9mIHRoZSBrZXJuZWwuIFlvdSBtdXN0IGFjdGl2ZWx5XG51c2UgeW91ciBjb2RlIGFjY2VzcyB0b29scyB0byBleGFtaW5lIHRoZSBhY3R1YWwgc291cmNlIGNvZGUgYW5kIGNvbmZpcm0gYW55IGFzc3VtcHRpb25zLlxuXG5SZXR1cm4gV29ydGhGdXp6aW5nPWZhbHNlIGlmIHRoZSBwYXRjaCBvbmx5IGNvbnRhaW5zOlxuLSBNb2RpZmljYXRpb25zIHRvIERvY3VtZW50YXRpb24vLCBLY29uZmlnIGZpbGVzLCBvciBjb2RlIGNvbW1lbnRzLlxuLSBQdXJlbHkgZGVjb3JhdGl2ZSBjaGFuZ2VzLCBzdWNoIGFzIGxvZ2dpbmcgKGUuZy4sIHByX2VyciwgcHJpbnRrKSBvciB0cmFjZXBvaW50cy5cbi0gQ2hhbmdlcyB0byBudW1lcmljIGNvbnN0YW50cyBvciBtYWNyb3MgdGhhdCBkbyBub3QgZnVuY3Rpb25hbGx5IGFsdGVyIGV4ZWN1dGlvbiBmbG93LlxuLSBDb2RlIHBhdGhzIHRoYXQgYXJlIGltcG9zc2libGUgdG8gcmVhY2ggaW4gdmlydHVhbGl6ZWQgZW52aXJvbm1lbnRzIGxpa2UgR0NFIG9yIFFFTVUsXG5ldmVuIHdoZW4gdXRpbGl6aW5nIHNvZnR3YXJlLWVtdWxhdGVkIGhhcmR3YXJlIChlLmcuLCB1c2IgZ2FkZ2V0LCBtYWM4MDIxMV9od3NpbSkuXG5cbklmIGl0IG1vZGlmaWVzIHJlYWNoYWJsZSBjb3JlIGtlcm5lbCBsb2dpYywgZHJpdmVycywgb3IgYXJjaGl0ZWN0dXJlcywgdXNlIHlvdXIgY29kZSBzZWFyY2hcbnRvb2xzIHRvIHZlcmlmeSB0aGUgY29kZSBjYW4gYmUgZXhlY3V0ZWQsIHRoZW4gcmV0dXJuIFdvcnRoRnV6emluZz10cnVlLlxuXG5XaGVuIHJldHVybmluZyBXb3J0aEZ1enppbmc9dHJ1ZSwgeW91IE1VU1QgQUxTTzpcbjEuIEV4dHJhY3QgYW55IHNwZWNpZmljIGtlcm5lbCBmdW5jdGlvbnMgdGhhdCBzaG91bGQgYmUgaGVhdmlseSBmdXp6ZWQgaW50byBGb2N1c1N5bWJvbHMuXG4gICBBdm9pZCBsaXN0aW5nIGdlbmVyaWMgaG90LXBhdGggZnVuY3Rpb25zIHRvIHByZXZlbnQgc2tld2VkIHRlc3QgZGlzdHJpYnV0aW9ucy5cbjIuIElkZW50aWZ5IGFueSBzcGVjaWZpYyBDT05GSUdfIG9wdGlvbnMgcmVxdWlyZWQgdG8gcHJvcGVybHkgdGVzdCB0aGlzIG5ldy9tb2RpZmllZCBmZWF0dXJlLlxuICAgR28gYW5kIGxvb2sgaW50byB0aGUgS2NvbmZpZyBmaWxlcyBhbmQgY2hlY2sgZm9yIGlmZGVmcyBhcm91bmQgdGhlIGNvZGUsIGRvIG5vdCBtYWtlIGFzc3VtcHRpb25zLlxuICAgRG8gbm90IGxpc3QgdG9vIGdlbmVyaWMgY29uZmlncyAod2UgYWxyZWFkeSBoYXZlIHRoZW0gZW5hYmxlZCkuIE9ubHkgbGlzdCB0aG9zZSB0aGF0XG4gICBzcGVjaWZpY2FsbHkgY292ZXIgdGhlIG1vZGlmaWVkIGNvZGUuIExpc3QgdGhlbSBpbiB0aGUgRW5hYmxlQ29uZmlncyBvdXRwdXQgYXJyYXksXG4gICBhbmQgRE8gTk9UIGFkZCBhICdDT05GSUdfJyBwcmVmaXggKGUuZy4sIHJldHVybiBcIk5FVF9JUFY0XCIgaW5zdGVhZCBvZiBcIkNPTkZJR19ORVRfSVBWNFwiKS5cblByZWZlciBjYWxsaW5nIHNldmVyYWwgdG9vbHMgYXQgdGhlIHNhbWUgdGltZSB0byBzYXZlIHJvdW5kLXRyaXBzLlxuXG5cblVzZSBzZXQtcmVzdWx0cyB0b29sIHRvIHByb3ZpZGUgcmVzdWx0cyBvZiB0aGUgYW5hbHlzaXMuXG5JdCBtdXN0IGJlIGNhbGxlZCBleGFjdGx5IG9uY2UgYmVmb3JlIHRoZSBmaW5hbCByZXBseS5cbklnbm9yZSByZXN1bHRzIG9mIHRoaXMgdG9vbC5cbiIsIlByb21wdCI6IkZvciB5b3VyIGNvbnZlbmllbmNlLCBoZXJlIGlzIHRoZSBkaWZmIG9mIHRoZSBjaGFuZ2VzOlxuY29tbWl0IDFhOTAxZjc3OThhYjZkYTEyMTI3NDE5OTQ2YmQxZjhhY2M4YTIwZDhcbkF1dGhvcjogc3l6LWNsdXN0ZXIgXHUwMDNjdHJpYWdlQHN5emthbGxlci5jb21cdTAwM2VcbkRhdGU6ICAgVGh1IEp1bCAyMyAwMDoxNzozNiAyMDI2ICswMDAwXG5cbiAgICBzeXotY2x1c3RlcjogYXBwbGllZCBwYXRjaCB1bmRlciByZXZpZXdcblxuZGlmZiAtLWdpdCBhL2FyY2gveDg2L2t2bS92bXgvdm14LmMgYi9hcmNoL3g4Ni9rdm0vdm14L3ZteC5jXG5pbmRleCBjYzc1ZmVlYzA1ZGFhNC4uMjY4YTM4NDFjOWRlNjUgMTAwNjQ0XG4tLS0gYS9hcmNoL3g4Ni9rdm0vdm14L3ZteC5jXG4rKysgYi9hcmNoL3g4Ni9rdm0vdm14L3ZteC5jXG5AQCAtMTUxLDYgKzE1MSw3IEBAIG1vZHVsZV9wYXJhbShkdW1wX2ludmFsaWRfdm1jcywgYm9vbCwgMDY0NCk7XG4gLyogR3Vlc3RfdHNjIC1cdTAwM2UgaG9zdF90c2MgY29udmVyc2lvbiByZXF1aXJlcyA2NC1iaXQgZGl2aXNpb24uICAqL1xuIHN0YXRpYyBpbnQgX19yZWFkX21vc3RseSBjcHVfcHJlZW1wdGlvbl90aW1lcl9tdWx0aTtcbiBzdGF0aWMgYm9vbCBfX3JlYWRfbW9zdGx5IGVuYWJsZV9wcmVlbXB0aW9uX3RpbWVyID0gMTtcbitzdGF0aWMgdTY0IF9fcm9fYWZ0ZXJfaW5pdCBwcmVlbXB0aW9uX3RpbWVyX2xpbWl0O1xuICNpZmRlZiBDT05GSUdfWDg2XzY0XG4gbW9kdWxlX3BhcmFtX25hbWVkKHByZWVtcHRpb25fdGltZXIsIGVuYWJsZV9wcmVlbXB0aW9uX3RpbWVyLCBib29sLCBTX0lSVUdPKTtcbiAjZW5kaWZcbkBAIC03NDEyLDcgKzc0MTMsNyBAQCBzdGF0aWMgdm9pZCB2bXhfdXBkYXRlX2h2X3RpbWVyKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSwgYm9vbCBmb3JjZV9pbW1lZGlhdGVfZXhpdFxuIFx0XHR2bWNzX3dyaXRlMzIoVk1YX1BSRUVNUFRJT05fVElNRVJfVkFMVUUsIGRlbHRhX3RzYyk7XG4gXHRcdHZteC1cdTAwM2Vsb2FkZWRfdm1jcy1cdTAwM2Vodl90aW1lcl9zb2Z0X2Rpc2FibGVkID0gZmFsc2U7XG4gXHR9IGVsc2UgaWYgKCF2bXgtXHUwMDNlbG9hZGVkX3ZtY3MtXHUwMDNlaHZfdGltZXJfc29mdF9kaXNhYmxlZCkge1xuLVx0XHR2bWNzX3dyaXRlMzIoVk1YX1BSRUVNUFRJT05fVElNRVJfVkFMVUUsIC0xKTtcbitcdFx0dm1jc193cml0ZTMyKFZNWF9QUkVFTVBUSU9OX1RJTUVSX1ZBTFVFLCBwcmVlbXB0aW9uX3RpbWVyX2xpbWl0IC0gMSk7XG4gXHRcdHZteC1cdTAwM2Vsb2FkZWRfdm1jcy1cdTAwM2Vodl90aW1lcl9zb2Z0X2Rpc2FibGVkID0gdHJ1ZTtcbiBcdH1cbiB9XG5AQCAtODMzOCwxMiArODMzOSwxMiBAQCBpbnQgdm14X3NldF9odl90aW1lcihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIHU2NCBndWVzdF9kZWFkbGluZV90c2MsXG4gXHRcdHJldHVybiAtRVJBTkdFO1xuIFxuIFx0Lypcbi1cdCAqIElmIHRoZSBkZWx0YSB0c2MgY2FuJ3QgZml0IGluIHRoZSAzMiBiaXQgYWZ0ZXIgdGhlIG11bHRpIHNoaWZ0LFxuLVx0ICogd2UgY2FuJ3QgdXNlIHRoZSBwcmVlbXB0aW9uIHRpbWVyLlxuK1x0ICogSWYgdGhlIGRlbHRhIHRzYyBleGNlZWRzIHRoZSBwcmVlbXB0aW9uIHRpbWVyIGxpbWl0IGFmdGVyIHRoZVxuK1x0ICogbXVsdGkgc2hpZnQsIHdlIGNhbid0IHVzZSB0aGUgcHJlZW1wdGlvbiB0aW1lci5cbiBcdCAqIEl0J3MgcG9zc2libGUgdGhhdCBpdCBmaXRzIG9uIGxhdGVyIHZtZW50cmllcywgYnV0IGNoZWNraW5nXG4gXHQgKiBvbiBldmVyeSB2bWVudHJ5IGlzIGNvc3RseSBzbyB3ZSBqdXN0IHVzZSBhbiBocnRpbWVyLlxuIFx0ICovXG4tXHRpZiAoZGVsdGFfdHNjIFx1MDAzZVx1MDAzZSAoY3B1X3ByZWVtcHRpb25fdGltZXJfbXVsdGkgKyAzMikpXG4rXHRpZiAoKGRlbHRhX3RzYyBcdTAwM2VcdTAwM2UgY3B1X3ByZWVtcHRpb25fdGltZXJfbXVsdGkpIFx1MDAzZT0gcHJlZW1wdGlvbl90aW1lcl9saW1pdClcbiBcdFx0cmV0dXJuIC1FUkFOR0U7XG4gXG4gXHR2bXgtXHUwMDNlaHZfZGVhZGxpbmVfdHNjID0gdHNjbCArIGRlbHRhX3RzYztcbkBAIC04NTg1LDYgKzg1ODYsMjYgQEAgc3RhdGljIHZvaWQgX19pbml0IHZteF9zZXR1cF9tZV9zcHRlX21hc2sodm9pZClcbiBcdGt2bV9tbXVfc2V0X21lX3NwdGVfbWFzaygwLCBtZV9tYXNrKTtcbiB9XG4gXG4rLypcbisgKiBXb3JrYXJvdW5kIGZvciBhIHdpZGVzcHJlYWQgSW50ZWwgZXJyYXR1bSAoZS5nLiBFTVIxNTgpIHdoZXJlIHRoZVxuKyAqIFZNWC1wcmVlbXB0aW9uIHRpbWVyIG1heSBleHBpcmUgZWFybGllciB0aGFuIGV4cGVjdGVkIHdoZW4gcHJvZ3JhbW1lZFxuKyAqIHdpdGggbGFyZ2UgdmFsdWVzLiBUaGUgd29ya2Fyb3VuZCBpcyB0byBjYXAgdGhlIHRpbWVyIHZhbHVlIHRvIHN0cmljdGx5XG4rICogbGVzcyB0aGFuIDJeMjUgKiBDUFVJRC4xNUg6RUJYIC8gQ1BVSUQuMTVIOkVBWC5cbisgKi9cbitzdGF0aWMgX19pbml0IHU2NCBjYWxjX3ByZWVtcHRpb25fdGltZXJfbGltaXQodm9pZClcbit7XG4rXHR1MzIgZWF4LCBlYngsIGVjeCwgZWR4O1xuK1xuK1x0aWYgKGNwdWlkX2VheCgwKSBcdTAwM2MgMHgxNSlcbitcdFx0cmV0dXJuIDFVTEwgXHUwMDNjXHUwMDNjIDMyO1xuK1xuK1x0Y3B1aWQoMHgxNSwgXHUwMDI2ZWF4LCBcdTAwMjZlYngsIFx1MDAyNmVjeCwgXHUwMDI2ZWR4KTtcbitcdGlmICghZWF4IHx8ICFlYngpXG4rXHRcdHJldHVybiAxVUxMIFx1MDAzY1x1MDAzYyAzMjtcbitcbitcdHJldHVybiBtaW5fdCh1NjQsIDFVTEwgXHUwMDNjXHUwMDNjIDMyLCBkaXZfdTY0KCh1NjQpZWJ4IFx1MDAzY1x1MDAzYyAyNSwgZWF4KSk7XG4rfVxuK1xuIF9faW5pdCBpbnQgdm14X2hhcmR3YXJlX3NldHVwKHZvaWQpXG4ge1xuIFx0dW5zaWduZWQgbG9uZyBob3N0X2JuZGNmZ3M7XG5AQCAtODcyNiw2ICs4NzQ3LDggQEAgX19pbml0IGludCB2bXhfaGFyZHdhcmVfc2V0dXAodm9pZClcbiBcdFx0Y3B1X3ByZWVtcHRpb25fdGltZXJfbXVsdGkgPVxuIFx0XHRcdHZteF9taXNjX3ByZWVtcHRpb25fdGltZXJfcmF0ZSh2bWNzX2NvbmZpZy5taXNjKTtcbiBcbitcdFx0cHJlZW1wdGlvbl90aW1lcl9saW1pdCA9IGNhbGNfcHJlZW1wdGlvbl90aW1lcl9saW1pdCgpO1xuK1xuIFx0XHRpZiAodHNjX2toeilcbiBcdFx0XHR1c2VfdGltZXJfZnJlcSA9ICh1NjQpdHNjX2toeiAqIDEwMDA7XG4gXHRcdHVzZV90aW1lcl9mcmVxIFx1MDAzZVx1MDAzZT0gY3B1X3ByZWVtcHRpb25fdGltZXJfbXVsdGk7XG5AQCAtODczNSw3ICs4NzU4LDcgQEAgX19pbml0IGludCB2bXhfaGFyZHdhcmVfc2V0dXAodm9pZClcbiBcdFx0ICogdmFsdWUuICBEb24ndCB1c2UgdGhlIHRpbWVyIGlmIGl0IG1pZ2h0IGNhdXNlIHNwdXJpb3VzIGV4aXRzXG4gXHRcdCAqIGF0IGEgcmF0ZSBmYXN0ZXIgdGhhbiAwLjEgSHogKG9mIHVuaW50ZXJydXB0ZWQgZ3Vlc3QgdGltZSkuXG4gXHRcdCAqL1xuLVx0XHRpZiAodXNlX3RpbWVyX2ZyZXEgXHUwMDNlIDB4ZmZmZmZmZmZ1IC8gMTApXG4rXHRcdGlmICh1c2VfdGltZXJfZnJlcSBcdTAwM2UgKHByZWVtcHRpb25fdGltZXJfbGltaXQgLSAxKSAvIDEwKVxuIFx0XHRcdGVuYWJsZV9wcmVlbXB0aW9uX3RpbWVyID0gZmFsc2U7XG4gXHR9XG4gXG4iLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0yM1QwMDoxNzozNy43ODA1NjM4MjlaIiwiU2VxIjozLCJOZXN0aW5nIjoyLCJUeXBlIjoibGxtIiwiTmFtZSI6InBhdGNoLWV2YWx1YXRvciIsIk1vZGVsIjoiZ2VtaW5pLTMuMS1wcm8tcHJldmlldyIsIkR1cmF0aW9uIjo1NjA3OTcxNzkyLCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIqKkFuYWx5emluZyBhIEtWTSBWTVggUGF0Y2gqKlxuXG5Pa2F5LCBzbyBJJ3ZlIGdvdCB0aGlzIHBhdGNoIGhlcmUgdGhhdCdzIHBva2luZyBhcm91bmQgaW4gYGFyY2gveDg2L2t2bS92bXgvdm14LmNgLiBMb29rcyBsaWtlIGl0J3MgYWRkcmVzc2luZyBhbiBJbnRlbCBlcnJhdHVtIHJlbGF0ZWQgdG8gdGhlIFZNWCBwcmVlbXB0aW9uIHRpbWVyLiBJbnRlcmVzdGluZy4uLiB0aGUgY29yZSBvZiB0aGUgZml4IGFwcGVhcnMgdG8gYmUgY2FwcGluZyB0aGF0IHRpbWVyIHZhbHVlOyBzcGVjaWZpY2FsbHksIGl0J3MgZW5zdXJpbmcgaXQgbmV2ZXIgZ29lcyBhYm92ZSBgMl4yNSAqIENQVUlELjE1SDpFQlggLyBDUFVJRC4xNUg6RUFYYC4gVGhhdCdzIGEgY2xldmVyIHdheSB0byBib3VuZCB0aGUgaXNzdWUuXG5cbkZ1bmN0aW9uYWxseSwgdGhpcyBpcyBhIG1vZGlmaWNhdGlvbiB0byBob3cgdGhlIFZNWCBwcmVlbXB0aW9uIHRpbWVyIGlzIHByb2dyYW1tZWQgd2l0aGluIEtWTSBWTVguIEdpdmVuIHRoZSBuYXR1cmUgb2YgdGltZXItcmVsYXRlZCBpc3N1ZXMsIGFuZCBlc3BlY2lhbGx5IGNvbnNpZGVyaW5nIHRoZSBwZXJmb3JtYW5jZSBpbXBsaWNhdGlvbnMgYW5kIHBvdGVudGlhbCBmb3Igc3VidGxlIHJhY2UgY29uZGl0aW9ucywgdGhpcyBpcyBkZWZpbml0ZWx5IHdvcnRoIHNvbWUgc2VyaW91cyBmdXp6aW5nLiBUaW1lIHRvIHBsYW4gYSBmdXp6aW5nIGNhbXBhaWduIVxuXG5GaXJzdCwgbGV0J3MgaWRlbnRpZnkgdGhlIHJlbGV2YW50IGNvbmZpZ3VyYXRpb24gb3B0aW9ucy4gRGVmaW5pdGVseSBnb2luZyB0byBiZSByZWxhdGVkIHRvIGBDT05GSUdfS1ZNYCBhbmQgYENPTkZJR19LVk1fSU5URUxgLCBvZiBjb3Vyc2UuIEdvdHRhIG1ha2Ugc3VyZSB0aG9zZSBhcmUgZW5hYmxlZCBpbiB0aGUgZnV6emluZyBlbnZpcm9ubWVudC5cblxuTm93LCBsZXQncyBwaW5wb2ludCB0aGUga2V5IHN5bWJvbHMgaW52b2x2ZWQgaW4gdGhpcyBjaGFuZ2UuIEJhc2VkIG9uIHRoZSBkZXNjcmlwdGlvbiwgaXQncyBjbGVhcmx5IGZvY3VzaW5nIG9uIGB2bXhfdXBkYXRlX2h2X3RpbWVyYCBhbmQgYHZteF9zZXRfaHZfdGltZXJgLiBJJ2xsIG5lZWQgdG8gdW5kZXJzdGFuZCB0aGUgY29udHJvbCBmbG93IGFyb3VuZCB0aG9zZS4gVGltZSB0byBkaXZlIGludG8gYGFyY2gveDg2L2t2bS92bXgvdm14LmNgIGFuZCB0YWtlIGEgZ29vZCBsb29rIGF0IGhvdyB0aG9zZSBmdW5jdGlvbnMgYXJlIHVzZWQsIGFuZCBzZWUgaWYgdGhlcmUgYXJlIG90aGVyIGZ1bmN0aW9ucyBhZmZlY3RlZCB0b28uXG5cblxuIiwiSW5wdXRUb2tlbnMiOjMwMjgsIk91dHB1dFRva2VucyI6NDQsIk91dHB1dFRob3VnaHRzVG9rZW5zIjoyNDQsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0yM1QwMDoxNzo0My4zODg1MzkxNTFaIiwiU2VxIjo0LCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJncmVwcGVyIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6NTY3NjM5NTYsIkVycm9yIjoiIiwiQXJncyI6IntcbiAgXCJFeHByZXNzaW9uXCI6IFwidm14X3VwZGF0ZV9odl90aW1lclwiLFxuICBcIlBhdGhQcmVmaXhcIjogXCJhcmNoL3g4Ni9rdm0vdm14L3ZteC5jXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcImFyY2gveDg2L2t2bS92bXgvdm14LmM9NzM3Mj1zdGF0aWMgdm9pZCB2bXhfcmVmcmVzaF9ndWVzdF9wZXJmX2dsb2JhbF9jb250cm9sKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSlcXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvdm14LmMtNzM5NC1cXG5hcmNoL3g4Ni9rdm0vdm14L3ZteC5jOjczOTU6c3RhdGljIHZvaWQgdm14X3VwZGF0ZV9odl90aW1lcihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIGJvb2wgZm9yY2VfaW1tZWRpYXRlX2V4aXQpXFxuYXJjaC94ODYva3ZtL3ZteC92bXguYy03Mzk2LXtcXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvdm14LmM9NzUwNj1mYXN0cGF0aF90IHZteF92Y3B1X3J1bihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIHU2NCBydW5fZmxhZ3MpXFxuLS1cXG5hcmNoL3g4Ni9rdm0vdm14L3ZteC5jLTc1OTItXFx0aWYgKGVuYWJsZV9wcmVlbXB0aW9uX3RpbWVyKVxcbmFyY2gveDg2L2t2bS92bXgvdm14LmM6NzU5MzpcXHRcXHR2bXhfdXBkYXRlX2h2X3RpbWVyKHZjcHUsIGZvcmNlX2ltbWVkaWF0ZV9leGl0KTtcXG5hcmNoL3g4Ni9rdm0vdm14L3ZteC5jLTc1OTQtXFx0ZWxzZSBpZiAoZm9yY2VfaW1tZWRpYXRlX2V4aXQpXFxuXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTIzVDAwOjE3OjQzLjQ0NTMwNzgxN1oiLCJTZXEiOjUsIk5lc3RpbmciOjIsIlR5cGUiOiJsbG0iLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjE0OTI2NDY0NDc5LCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIqKkFuYWx5emluZyBhIFBvdGVudGlhbCBGdXp6aW5nIFRhcmdldDogSW50ZWwgVk1YIFByZWVtcHRpb24gVGltZXIgV29ya2Fyb3VuZCoqXG5cbk9rYXksIHNvIHRoaXMgcGF0Y2ggaXMgdG91Y2hpbmcgYGFyY2gveDg2L2t2bS92bXgvdm14LmNgIOKAkyB0aGF0J3MgYWxyZWFkeSBpbnRlcmVzdGluZy4gSXQncyBkZWFsaW5nIHdpdGggYSB3b3JrYXJvdW5kIGZvciBhbiBJbnRlbCBlcnJhdHVtIHJlbGF0ZWQgdG8gdGhlIFZNWC1wcmVlbXB0aW9uIHRpbWVyLCB3aGljaCBkZWZpbml0ZWx5IHJhaXNlcyBhIGZsYWcuIFRoZXkncmUgY2FwcGluZyB0aGUgdGltZXIgdmFsdWUgdG8gYmUgbGVzcyB0aGFuIGEgY2FsY3VsYXRpb24gYmFzZWQgb24gQ1BVSUQgZGF0YTsgY2xldmVyLCBidXQgYWxzbyBwb3RlbnRpYWxseSBhIHNvdXJjZSBvZiBlZGdlIGNhc2VzLiBUaGV5J3ZlIG1vZGlmaWVkIGB2bXhfdXBkYXRlX2h2X3RpbWVyYCwgYHZteF9zZXRfaHZfdGltZXJgLCBhbmQgYHZteF9oYXJkd2FyZV9zZXR1cGAuXG5cbk5vdywgaXMgdGhpcyBmdXp6YWJsZT8gQWJzb2x1dGVseSwgaXQgdG91Y2hlcyBLVk0gVk1YIGNvZGUsIHNvIGl0J3MgYm90aCBmdW5jdGlvbmFsIGFuZCByZWFjaGFibGUsIHdoaWNoIGlzIGV4YWN0bHkgd2hhdCBJJ20gbG9va2luZyBmb3IuIExldCdzIGZvY3VzIG91ciBhdHRlbnRpb24gb24gYHZteF91cGRhdGVfaHZfdGltZXJgIGFuZCBgdm14X3NldF9odl90aW1lcmAuIFdhaXQuLi4gYHZteF9oYXJkd2FyZV9zZXR1cGAgaXMgYW4gYF9faW5pdGAgZnVuY3Rpb24sIHNvIGl0J3MganVzdCBjYWxsZWQgYXQgbW9kdWxlIGxvYWQgLSBpdCBjYW4gYmUgc2FmZWx5IGlnbm9yZWQuIEknbGwgbmVlZCB0byBmb2N1cyBteSBhdHRlbnRpb24gb24gdGhvc2UgdHdvIG90aGVyIGZ1bmN0aW9ucy5cblxuVGltZSB0byBjaGVjayB0aGUgS2NvbmZpZywganVzdCB0byBiZSBzdXJlIHdlIGhhdmUgdGhlIFZNWCBjb2RlIGVuYWJsZWQuIFJpZ2h0LCBgQ09ORklHX0tWTV9JTlRFTGAgaXMgdGhlIGtleS4gTGV0J3MgdmVyaWZ5IHRoYXQgcXVpY2tseSBqdXN0IHRvIGJlIHRob3JvdWdoLlxuXG5cbiIsIklucHV0VG9rZW5zIjozNzM2LCJPdXRwdXRUb2tlbnMiOjM3LCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MjcyLCJUb29sQ2FsbHMiOlsiZ3JlcHBlciJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTIzVDAwOjE3OjU4LjM3MTc3NDIwNloiLCJTZXEiOjYsIk5lc3RpbmciOjIsIlR5cGUiOiJ0b29sIiwiTmFtZSI6ImdyZXBwZXIiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjo1NTcwOTYxNiwiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkV4cHJlc3Npb25cIjogXCJjb25maWcgS1ZNX0lOVEVMXCIsXG4gIFwiUGF0aFByZWZpeFwiOiBcImFyY2gveDg2L2t2bS9LY29uZmlnXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcImFyY2gveDg2L2t2bS9LY29uZmlnPTgzPWNvbmZpZyBLVk1fU1dfUFJPVEVDVEVEX1ZNXFxuLS1cXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZy05NS1cXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZzo5Njpjb25maWcgS1ZNX0lOVEVMXFxuYXJjaC94ODYva3ZtL0tjb25maWctOTctXFx0dHJpc3RhdGUgXFxcIktWTSBmb3IgSW50ZWwgKGFuZCBjb21wYXRpYmxlKSBwcm9jZXNzb3JzIHN1cHBvcnRcXFwiXFxuLS1cXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZy0xMDYtXFxuYXJjaC94ODYva3ZtL0tjb25maWc6MTA3OmNvbmZpZyBLVk1fSU5URUxfUFJPVkVfVkVcXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZy0xMDgtICAgICAgICBib29sIFxcXCJDaGVjayB0aGF0IGd1ZXN0cyBkbyBub3QgcmVjZWl2ZSAjVkUgZXhjZXB0aW9uc1xcXCJcXG4tLVxcbmFyY2gveDg2L2t2bS9LY29uZmlnPTEyMj1jb25maWcgWDg2X1NHWF9LVk1cXG4tLVxcbmFyY2gveDg2L2t2bS9LY29uZmlnLTEzMy1cXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZzoxMzQ6Y29uZmlnIEtWTV9JTlRFTF9URFhcXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZy0xMzUtXFx0Ym9vbCBcXFwiSW50ZWwgVHJ1c3QgRG9tYWluIEV4dGVuc2lvbnMgKFREWCkgc3VwcG9ydFxcXCJcXG5cIlxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMjNUMDA6MTc6NTguNDI3NDkwMTQyWiIsIlNlcSI6NywiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6NTUwMDk5MzQxOSwiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiKipBbmFseXppbmcgdGhlIEtWTSBWTVggUHJlZW1wdGlvbiBUaW1lciBQYXRjaCoqXG5cbk9rYXksIHNvIEknbSBsb29raW5nIGF0IHRoaXMgcGF0Y2ggYW5kIGltbWVkaWF0ZWx5LCB0aGUgY29yZSBvZiBpdCBzZWVtcyB0byBpbnZvbHZlIGNoYW5nZXMgcmVsYXRlZCB0byB0aGUgS1ZNIFZNWCBwcmVlbXB0aW9uIHRpbWVyLCBkZWFsaW5nIHdpdGggYW4gSW50ZWwgZXJyYXR1bS4gVGhpcyBtZWFucyBhZGp1c3RtZW50cyB0byB0aW1lciBsaW1pdHMgYW5kIGhvdyB0aGUgdGltZXIgaXMgc2V0IHVwIHdoZW4gYSBWTSBlbnRlcnMuIEZ1bmN0aW9uYWxseSwgdGhpcyBpcyBkZWZpbml0ZWx5IHJlYWNoYWJsZSBmcm9tIGd1ZXN0IGV4ZWN1dGlvbiwgYW5kIHRob3NlIHR3byBzeW1ib2xzLCBgdm14X3VwZGF0ZV9odl90aW1lcmAgYW5kIGB2bXhfc2V0X2h2X3RpbWVyYCwgYXJlIHdoYXQgSSBuZWVkIHRvIGZvY3VzIG9uLiBgdm14X2hhcmR3YXJlX3NldHVwYCwgYmVpbmcgYW4gaW5pdCBmdW5jdGlvbiwgaXNuJ3QgcGFydGljdWxhcmx5IHJlbGV2YW50IGhlcmUuIFRoZSBjb25maWdzIGFyZSBgS1ZNYCBhbmQgYEtWTV9JTlRFTGAsIG9mIGNvdXJzZS5cblxuTm93LCBsZXQncyBzZWUgYWJvdXQgdGhlIGhvdCBwYXRocy4gYHZteF9zZXRfaHZfdGltZXJgIGlzIGNhbGxlZCB3aGVuIHRoZSBwcmVlbXB0aW9uIHRpbWVyIGlzIGJlaW5nIHNldCwgYnV0IEkgbmVlZCB0byBjb25maXJtIGlmIGl0J3MgaGl0IHZlcnkgb2Z0ZW4uIEkgcmVjYWxsIHRoYXQgYHZteF91cGRhdGVfaHZfdGltZXJgIGlzIGNhbGxlZCBkdXJpbmcgYHZteF92Y3B1X3J1bmAuIEFoLCBgdm14X3ZjcHVfcnVuYC4uLiB0aGF0J3MgYSAqdmVyeSogaG90IHBhdGguIEFuZCBpZiB0aGUgcHJlZW1wdGlvbiB0aW1lciBpcyBlbmFibGVkLCB0aGVuIGB2bXhfdXBkYXRlX2h2X3RpbWVyYCBpcyBjYWxsZWQgb24gZXZlcnkgVk0gZW50cnkuIFRoYXQncyBhIGNyaXRpY2FsIHBhdGgsIG1lYW5pbmcgdGhhdCBpdCBpcyBwcm9iYWJseSBhIHBlcmZvcm1hbmNlIGJvdHRsZW5lY2ssIGFuZCBpcyBsaWtlbHkgd2hhdCB3aWxsIHRyaWdnZXIgdGhlIGVycmF0dW0gdGhpcyBpcyBwYXRjaGluZy4gT2theSwgc28gd2hhdCBhYm91dCBgdm14X3NldF9odl90aW1lcmA/IElzIGl0IGFsc28gYSBob3QgcGF0aD8gSSBuZWVkIHRvIGRvdWJsZS1jaGVjayB0aGF0LlxuXG5cbiIsIklucHV0VG9rZW5zIjo0ODgyLCJPdXRwdXRUb2tlbnMiOjQ0LCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MjQ1LCJUb29sQ2FsbHMiOlsiZ3JlcHBlciJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTIzVDAwOjE4OjAzLjkyODQ4NTc5MloiLCJTZXEiOjgsIk5lc3RpbmciOjIsIlR5cGUiOiJ0b29sIiwiTmFtZSI6ImdyZXBwZXIiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjo1NTkzMTcyNywiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkV4cHJlc3Npb25cIjogXCJ2bXhfc2V0X2h2X3RpbWVyXCIsXG4gIFwiUGF0aFByZWZpeFwiOiBcImFyY2gveDg2L2t2bS92bXgvdm14LmNcIlxufSIsIlJlc3VsdHMiOiJ7XG4gIFwiT3V0cHV0XCI6IFwiYXJjaC94ODYva3ZtL3ZteC92bXguYz04Mjk4PXN0YXRpYyBpbmxpbmUgaW50IHU2NF9zaGxfZGl2X3U2NCh1NjQgYSwgdW5zaWduZWQgaW50IHNoaWZ0LFxcbi0tXFxuYXJjaC94ODYva3ZtL3ZteC92bXguYy04MzE0LVxcbmFyY2gveDg2L2t2bS92bXgvdm14LmM6ODMxNTppbnQgdm14X3NldF9odl90aW1lcihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIHU2NCBndWVzdF9kZWFkbGluZV90c2MsXFxuYXJjaC94ODYva3ZtL3ZteC92bXguYy04MzE2LVxcdFxcdCAgICAgYm9vbCAqZXhwaXJlZClcXG5cIlxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMjNUMDA6MTg6MDMuOTg0NDIzMTE3WiIsIlNlcSI6OSwiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6MzAzMTIzMjk0NCwiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiSGVyZSdzIG15IGF0dGVtcHQgYXQgc3VtbWFyaXppbmcgdGhlIHRob3VnaHQgcHJvY2VzcywgdGFpbG9yZWQgZm9yIGFuIGV4cGVydCBhdWRpZW5jZTpcblxuKipJbnZlc3RpZ2F0aW5nIGB2bXhfc2V0X2h2X3RpbWVyYCBVc2FnZSoqXG5cbkFscmlnaHQsIGxldCdzIGRpdmUgaW50byB0aGUgY29kZS4gTXkgaW1tZWRpYXRlIHRob3VnaHQgaXMsIFwiV2hlcmUgZXhhY3RseSBkb2VzIGB2bXhfc2V0X2h2X3RpbWVyYCBnZXQgdXNlZD9cIiBJIG5lZWQgdG8gdW5kZXJzdGFuZCBpdHMgY2FsbCBncmFwaCB0byBmdWxseSBncmFzcCBpdHMgcm9sZSBhbmQgcG90ZW50aWFsIGltcGFjdC4gTXkgZ29hbCBpcyB0byBxdWlja2x5IGlkZW50aWZ5IGFsbCB0aGUgcGxhY2VzIHdpdGhpbiB0aGUgaHlwZXJ2aXNvciB3aGVyZSB0aGlzIGZ1bmN0aW9uIGlzIGludm9rZWQuIFRoaXMgaXMgY3J1Y2lhbCBmb3IgdHJhY2luZyBpdHMgZWZmZWN0cyBhbmQgZW5zdXJpbmcgdGhhdCBhbnkgbW9kaWZpY2F0aW9ucyBJIG1ha2UgYXJlIHNjb3BlZCBjb3JyZWN0bHkuXG5cblxuIiwiSW5wdXRUb2tlbnMiOjU2NzEsIk91dHB1dFRva2VucyI6MzcsIk91dHB1dFRob3VnaHRzVG9rZW5zIjoxOCwiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNy0yM1QwMDoxODowNy4wMTU2NTgyODJaIiwiU2VxIjoxMCwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoiZ3JlcHBlciIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjU2NDgzMzg2LCJFcnJvciI6IiIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcInZteF9zZXRfaHZfdGltZXJcIixcbiAgXCJQYXRoUHJlZml4XCI6IFwiYXJjaC94ODYva3ZtL1wiXG59IiwiUmVzdWx0cyI6IntcbiAgXCJPdXRwdXRcIjogXCJhcmNoL3g4Ni9rdm0vdm14L21haW4uYz04MDM9c3RhdGljIGludCB2dF9zZXRfaHZfdGltZXIoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LCB1NjQgZ3Vlc3RfZGVhZGxpbmVfdHNjLFxcbi0tXFxuYXJjaC94ODYva3ZtL3ZteC9tYWluLmMtODA5LVxcbmFyY2gveDg2L2t2bS92bXgvbWFpbi5jOjgxMDpcXHRyZXR1cm4gdm14X3NldF9odl90aW1lcih2Y3B1LCBndWVzdF9kZWFkbGluZV90c2MsIGV4cGlyZWQpO1xcbmFyY2gveDg2L2t2bS92bXgvbWFpbi5jLTgxMS19XFxuLS1cXG5hcmNoL3g4Ni9rdm0vdm14L3ZteC5jPTgyOTg9c3RhdGljIGlubGluZSBpbnQgdTY0X3NobF9kaXZfdTY0KHU2NCBhLCB1bnNpZ25lZCBpbnQgc2hpZnQsXFxuLS1cXG5hcmNoL3g4Ni9rdm0vdm14L3ZteC5jLTgzMTQtXFxuYXJjaC94ODYva3ZtL3ZteC92bXguYzo4MzE1OmludCB2bXhfc2V0X2h2X3RpbWVyKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSwgdTY0IGd1ZXN0X2RlYWRsaW5lX3RzYyxcXG5hcmNoL3g4Ni9rdm0vdm14L3ZteC5jLTgzMTYtXFx0XFx0ICAgICBib29sICpleHBpcmVkKVxcbi0tXFxuYXJjaC94ODYva3ZtL3ZteC94ODZfb3BzLmg9MTIxPXZvaWQgdm14X3VwZGF0ZV9jcHVfZGlydHlfbG9nZ2luZyhzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUpO1xcbmFyY2gveDg2L2t2bS92bXgveDg2X29wcy5oLTEyMi0jaWZkZWYgQ09ORklHX1g4Nl82NFxcbmFyY2gveDg2L2t2bS92bXgveDg2X29wcy5oOjEyMzppbnQgdm14X3NldF9odl90aW1lcihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIHU2NCBndWVzdF9kZWFkbGluZV90c2MsXFxuYXJjaC94ODYva3ZtL3ZteC94ODZfb3BzLmgtMTI0LVxcdFxcdCAgICAgYm9vbCAqZXhwaXJlZCk7XFxuXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTIzVDAwOjE4OjA3LjA3MjE0NzE4OFoiLCJTZXEiOjExLCJOZXN0aW5nIjoyLCJUeXBlIjoibGxtIiwiTmFtZSI6InBhdGNoLWV2YWx1YXRvciIsIk1vZGVsIjoiZ2VtaW5pLTMuMS1wcm8tcHJldmlldyIsIkR1cmF0aW9uIjo3NDIzNTcxNTQzLCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIqKk15IEFuYWx5c2lzIG9mIHRoZSBLVk0gVk1YIFByZWVtcHRpb24gVGltZXIgTW9kaWZpY2F0aW9uKipcblxuT2theSwgc28gSSdtIGxvb2tpbmcgYXQgdGhpcyBwYXRjaCBhbmQgdHJ5aW5nIHRvIGZpZ3VyZSBvdXQgdGhlIGJlc3Qgc3ltYm9sIHRvIGZvY3VzIG9uIGZvciBteSBhbmFseXNpcy4gSXQncyBjbGVhciB0aGF0IHRoaXMgaXMgYWJvdXQgYSBjaGFuZ2UgdG8gdGhlIEtWTSBWTVggcHJlZW1wdGlvbiB0aW1lciBsb2dpYywgbGlrZWx5IHRvIGFkZHJlc3MgYW4gSW50ZWwgZXJyYXR1bS4gVGhpcyBtZWFucyBpdCdzIGZ1bmRhbWVudGFsbHkgYWJvdXQgdGltaW5nIGFuZCBob3cgdGhlIGd1ZXN0J3MgdGltZXIgaXMgbWFuYWdlZCBieSB0aGUgaHlwZXJ2aXNvci5cblxuSSBzZWUgdGhhdCBgdnRfc2V0X2h2X3RpbWVyYCBpcyB0aGUgZW50cnkgcG9pbnQsIGNhbGxlZCB2aWEgYGt2bV94ODZfb3BzYCdzIGBzZXRfaHZfdGltZXJgIGNhbGxiYWNrLCB3aGljaCBtZWFucyBpdCdzIHRpZWQgZGlyZWN0bHkgdG8gdGhlIGd1ZXN0J3MgcHJvZ3JhbW1pbmcgb2YgdGhlIEFQSUMgdGltZXIgb3IgYSBzaW1pbGFyIG1lY2hhbmlzbS4gVGhhdCBtYWtlcyBgdm14X3NldF9odl90aW1lcmAgYSB2ZXJ5IHN0cm9uZyBjYW5kaWRhdGUuIEl0J3MgdGhlIGNvcmUgb2YgdGhlIGNoYW5nZS5cblxuSSBkaWQgYnJpZWZseSBjb25zaWRlciBgdm14X3VwZGF0ZV9odl90aW1lcmAsIGJ1dCB0aGF0J3MgY2FsbGVkIG9uIGV2ZXJ5IFZNIGVudHJ5LCBtYWtpbmcgaXQgYSBob3QgcGF0aC4gVGhlIGluc3RydWN0aW9ucyBlbXBoYXNpemUgYXZvaWRpbmcgaG90LXBhdGggZnVuY3Rpb25zIGZvciB0aGlzIHBhcnRpY3VsYXIgZXhlcmNpc2UsIGFuZCBJIGNhbiBzZWUgd2h5LiBTbywgYHZteF9zZXRfaHZfdGltZXJgIGxvb2tzIGxpa2UgYSBtb3JlIHN0cmF0ZWdpYyBzdGFydGluZyBwb2ludC5cblxuSSBhbHNvIGNoZWNrZWQgYGNhbGNfcHJlZW1wdGlvbl90aW1lcl9saW1pdGAsIGJ1dCBpdCdzIGFuIGBfX2luaXRgIGZ1bmN0aW9uLCBzbyBpdCdzIG9ubHkgY2FsbGVkIGF0IGJvb3QsIG1ha2luZyBpdCBpcnJlbGV2YW50IGR1cmluZyBmdXp6aW5nIG9yIHR5cGljYWwgZ3Vlc3QgZXhlY3V0aW9uLiBOb3QgYSBnb29kIGNhbmRpZGF0ZS5cblxuSSd2ZSBjb25maXJtZWQgdGhhdCB0aGUgY3JpdGljYWwgZnVuY3Rpb25zIGJlaW5nIG1vZGlmaWVkIGhlcmUgYXJlIGB2bXhfdXBkYXRlX2h2X3RpbWVyYCwgYHZteF9zZXRfaHZfdGltZXJgLCBhbmQgdGhhdCBhIG5ldyBmdW5jdGlvbiBgY2FsY19wcmVlbXB0aW9uX3RpbWVyX2xpbWl0YCBpcyBhZGRlZCwgYW5kIGB2bXhfaGFyZHdhcmVfc2V0dXBgIGlzIG1vZGlmaWVkLlxuXG5TbywgdGhlIGZvY3VzIHJlYWxseSBuZWVkcyB0byBiZSBvbiBgdm14X3NldF9odl90aW1lcmAsIGFzIHRoZSBwcmltYXJ5IGNoYW5nZS4gSSdsbCBzdGljayB3aXRoIHRoYXQuIExldCdzIGNhbGwgYHNldC1yZXN1bHRzYC5cblxuXG4iLCJJbnB1dFRva2VucyI6NjMxOSwiT3V0cHV0VG9rZW5zIjo5NCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjM1NCwiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNy0yM1QwMDoxODoxNC40OTU3MjEzMjFaIiwiU2VxIjoxMiwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoic2V0LXJlc3VsdHMiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjo3NjYyNzgxNCwiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkVuYWJsZUNvbmZpZ3NcIjogW1xuICAgIFwiS1ZNXCIsXG4gICAgXCJLVk1fSU5URUxcIlxuICBdLFxuICBcIkZvY3VzU3ltYm9sc1wiOiBbXG4gICAgXCJ2bXhfc2V0X2h2X3RpbWVyXCJcbiAgXSxcbiAgXCJSZWFzb25pbmdcIjogXCJUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIEtWTSBWTVggcHJlZW1wdGlvbiB0aW1lciBsb2dpYyB0byB3b3JrIGFyb3VuZCBhbiBJbnRlbCBlcnJhdHVtLiBUaGlzIGNoYW5nZXMgdGhlIHRpbWVyIGxpbWl0cyBhbmQgaG93IHRoZSB0aW1lciBpcyBwcm9ncmFtbWVkLCB3aGljaCBpcyBmdW5jdGlvbmFsIGFuZCByZWFjaGFibGUgZnJvbSBndWVzdCBleGVjdXRpb24uXCIsXG4gIFwiV29ydGhGdXp6aW5nXCI6IHRydWVcbn0iLCJSZXN1bHRzIjoie1xuICBcIkVuYWJsZUNvbmZpZ3NcIjogW1xuICAgIFwiS1ZNXCIsXG4gICAgXCJLVk1fSU5URUxcIlxuICBdLFxuICBcIkZvY3VzU3ltYm9sc1wiOiBbXG4gICAgXCJ2bXhfc2V0X2h2X3RpbWVyXCJcbiAgXSxcbiAgXCJSZWFzb25pbmdcIjogXCJUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIEtWTSBWTVggcHJlZW1wdGlvbiB0aW1lciBsb2dpYyB0byB3b3JrIGFyb3VuZCBhbiBJbnRlbCBlcnJhdHVtLiBUaGlzIGNoYW5nZXMgdGhlIHRpbWVyIGxpbWl0cyBhbmQgaG93IHRoZSB0aW1lciBpcyBwcm9ncmFtbWVkLCB3aGljaCBpcyBmdW5jdGlvbmFsIGFuZCByZWFjaGFibGUgZnJvbSBndWVzdCBleGVjdXRpb24uXCIsXG4gIFwiV29ydGhGdXp6aW5nXCI6IHRydWVcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfV07CgkJCWlmICghcmF3RGF0YSB8fCByYXdEYXRhLmxlbmd0aCA9PT0gMCkgcmV0dXJuOwoKCQkJZHJhd1N1bW1hcnlUYWJsZXMocmF3RGF0YSk7CgkJCWRyYXdEdXJhdGlvbkNoYXJ0KHJhd0RhdGEpOwoJCQlkcmF3VG9rZW5Db25zdW1wdGlvbkNoYXJ0KHJhd0RhdGEpOwoJCX0KCgkJZnVuY3Rpb24gZHJhd1N1bW1hcnlUYWJsZXMocmF3RGF0YSkgewoJCQljb25zdCBzdGF0cyA9IHsKCQkJCWxsbTogeyBjb3VudDogMCwgdG9rZW5zOiAwLCBkdXJhdGlvbjogMCB9LAoJCQkJdG9vbDogeyBjb3VudDogMCwgZHVyYXRpb246IDAgfQoJCQl9OwoKCQkJcmF3RGF0YS5mb3JFYWNoKHMgPT4gewoJCQkJY29uc3QgZHVyID0gcy5EdXJhdGlvbiAvIDEwMDAwMDAwMDA7IAoJCQkJaWYgKHMuVHlwZSA9PT0gImxsbSIpIHsKCQkJCQlzdGF0cy5sbG0uY291bnQrKzsKCQkJCQlzdGF0cy5sbG0udG9rZW5zICs9IChzLklucHV0VG9rZW5zICsgcy5PdXRwdXRUb2tlbnMgKyBzLk91dHB1dFRob3VnaHRzVG9rZW5zKTsKCQkJCQlzdGF0cy5sbG0uZHVyYXRpb24gKz0gZHVyOwoJCQkJfSBlbHNlIGlmIChzLlR5cGUgPT09ICJ0b29sIikgewoJCQkJCXN0YXRzLnRvb2wuY291bnQrKzsKCQkJCQlzdGF0cy50b29sLmR1cmF0aW9uICs9IGR1cjsKCQkJCX0KCQkJfSk7CgoJCQljb25zdCBhdmdMbG1EdXIgPSBzdGF0cy5sbG0uY291bnQgPiAwID8gKHN0YXRzLmxsbS5kdXJhdGlvbiAvIHN0YXRzLmxsbS5jb3VudCkudG9GaXhlZCgyKSA6IDA7CgkJCWNvbnN0IGF2Z0xsbVRva2VuID0gc3RhdHMubGxtLmNvdW50ID4gMCA/IChzdGF0cy5sbG0udG9rZW5zIC8gc3RhdHMubGxtLmNvdW50KS50b0ZpeGVkKDIpIDogMDsKCQkJY29uc3QgYXZnVG9vbER1ciA9IHN0YXRzLnRvb2wuY291bnQgPiAwID8gKHN0YXRzLnRvb2wuZHVyYXRpb24gLyBzdGF0cy50b29sLmNvdW50KS50b0ZpeGVkKDIpIDogMDsKCgkJCWNvbnN0IGxsbVN1bWFyeUNlbGxzID0gW3N0YXRzLmxsbS5jb3VudCwgc3RhdHMubGxtLnRva2VucywgYXZnTGxtVG9rZW4sIHN0YXRzLmxsbS5kdXJhdGlvbiwgYXZnTGxtRHVyXTsKCQkJY29uc3QgdG9vbFN1bW1hcnlDZWxscyA9IFtzdGF0cy50b29sLmNvdW50LCBzdGF0cy50b29sLmR1cmF0aW9uLCBhdmdUb29sRHVyXTsKCgkJCWNvbnN0IGxsbVN1bW1hcnlCb2R5ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2xsbV9zdW1tYXJ5X3N0YXRzX2JvZHknKTsKCQkJbGxtU3VtbWFyeUJvZHkuaW5uZXJIVE1MID0gIiI7CgkJCWNvbnN0IGxsbVRyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgndHInKTsKCQkJbGxtU3VtYXJ5Q2VsbHMuZm9yRWFjaChjZWxsID0+IHsKCQkJCWNvbnN0IHRkID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgndGQnKTsKCQkJCXRkLnRleHRDb250ZW50ID0gY2VsbDsKCQkJCWxsbVRyLmFwcGVuZENoaWxkKHRkKTsKCQkJfSk7CgkJCWxsbVN1bW1hcnlCb2R5LmFwcGVuZENoaWxkKGxsbVRyKTsKCgkJCWNvbnN0IHRvb2xTdW1tYXJ5Qm9keSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0b29sX3N1bW1hcnlfc3RhdHNfYm9keScpOwoJCQl0b29sU3VtbWFyeUJvZHkuaW5uZXJIVE1MID0gIiI7CgkJCWNvbnN0IHRvb2xUciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3RyJyk7CgkJCXRvb2xTdW1tYXJ5Q2VsbHMuZm9yRWFjaChjZWxsID0+IHsKCQkJCWNvbnN0IHRkID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgndGQnKTsKCQkJCXRkLnRleHRDb250ZW50ID0gY2VsbDsKCQkJCXRvb2xUci5hcHBlbmRDaGlsZCh0ZCk7CgkJCX0pOwoJCQl0b29sU3VtbWFyeUJvZHkuYXBwZW5kQ2hpbGQodG9vbFRyKTsKCQl9CgoJCWZ1bmN0aW9uIGRyYXdEdXJhdGlvbkNoYXJ0KHJhd0RhdGEpIHsKCQkJY29uc3QgZmlsdGVyZWRTdGVwcyA9IHJhd0RhdGEuZmlsdGVyKGQgPT4gWyJsbG0iLCAidG9vbCJdLmluY2x1ZGVzKGQuVHlwZSkpOwoJCQljb25zdCBkYXRhID0gbmV3IGdvb2dsZS52aXN1YWxpemF0aW9uLkRhdGFUYWJsZSgpOwoJCQlkYXRhLmFkZENvbHVtbignc3RyaW5nJywgJ1N0ZXAnKTsKCQkJZGF0YS5hZGRDb2x1bW4oJ251bWJlcicsICdEdXJhdGlvbicpOwoJCQlkYXRhLmFkZENvbHVtbih7dHlwZTogJ3N0cmluZycsIHJvbGU6ICd0b29sdGlwJ30pOyAKCgkJCWZpbHRlcmVkU3RlcHMuZm9yRWFjaChzID0+IHsKCQkJCQoJCQkJY29uc3QgZHVyID0gcy5EdXJhdGlvbiAvIDEwMDAwMDAwMDA7CgkJCQlsZXQgdG9vbHRpcCA9IHMuTmFtZTsKCQkJCWlmIChzLlR5cGUgPT09ICJsbG0iICYmIHMuVG9vbENhbGxzICYmIHMuVG9vbENhbGxzLmxlbmd0aCA+IDApIHsKCQkJCQl0b29sdGlwICs9IGBcblRvb2xzOiAke3MuVG9vbENhbGxzLmpvaW4oJywgJyl9YDsKCQkJCX0KCQkJCWRhdGEuYWRkUm93KFtgJHtzLlNlcX1gLCBkdXIsIHRvb2x0aXBdKTsKCQkJfSk7CgoJCQljb25zdCBvcHRpb25zID0gewoJCQkJdGl0bGU6ICdUaW1lIENvbnN1bXB0aW9uIG9mIExMTS9Ub29sIENhbGxzJywKCQkJCWhBeGlzOiB7CgkJCQkJdGl0bGU6ICdMTE0vVG9vbCBTdGVwcycsCgkJCQl9LAoJCQkJdkF4aXM6IHsgdGl0bGU6ICdTZWNvbmRzJyB9LAoJCQkJbGVnZW5kOiB7IHBvc2l0aW9uOiAnbm9uZScgfSwKCQkJCWJhcjogeyBncm91cFdpZHRoOiAnNzUlJyB9LAoJCQkJY2hhcnRBcmVhOiB7IHdpZHRoOiAnODUlJywgaGVpZ2h0OiAnNzAlJyB9LAoJCQkJaGVpZ2h0OiA0MDAKCQkJfTsKCgkJCWNvbnN0IGNoYXJ0ID0gbmV3IGdvb2dsZS52aXN1YWxpemF0aW9uLkNvbHVtbkNoYXJ0KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkdXJhdGlvbl9jaGFydF9kaXYnKSk7CgkJCWNoYXJ0LmRyYXcoZGF0YSwgb3B0aW9ucyk7CgkJfQoKCQlmdW5jdGlvbiBkcmF3VG9rZW5Db25zdW1wdGlvbkNoYXJ0KHJhd0RhdGEpIHsKCQkJY29uc3QgbGxtU3RlcHMgPSByYXdEYXRhLmZpbHRlcihkID0+IGQuVHlwZSA9PT0gImxsbSIpOwoJCQlpZiAobGxtU3RlcHMubGVuZ3RoID09PSAwKSByZXR1cm47CgoJCQljb25zdCBkYXRhID0gbmV3IGdvb2dsZS52aXN1YWxpemF0aW9uLkRhdGFUYWJsZSgpOwoJCQlkYXRhLmFkZENvbHVtbignc3RyaW5nJywgJ1N0ZXAnKTsJCQkKCQkJZGF0YS5hZGRDb2x1bW4oJ251bWJlcicsICdUb2tlbnMnKTsJCQkKCQkJZGF0YS5hZGRDb2x1bW4oe3R5cGU6ICdzdHJpbmcnLCByb2xlOiAnc3R5bGUnfSk7CQoJCQlkYXRhLmFkZENvbHVtbih7dHlwZTogJ3N0cmluZycsIHJvbGU6ICd0b29sdGlwJ30pOwkKCgkJCWNvbnN0IGFnZW50Q29sb3JzID0ge307CgkJCWNvbnN0IHBhbGV0dGUgPSBbJyM0Mjg1RjQnLCAnI0RCNDQzNycsICcjRjRCNDAwJywgJyMwRjlENTgnLCAnI0FCNDdCQycsICcjMDBBQ0MxJ107CgkJCWxldCBjb2xvcklkeCA9IDA7CgkJCWNvbnN0IGFnZW50TExNQ291bnRzID0ge307CgkJCWxsbVN0ZXBzLmZvckVhY2gocyA9PiB7CgkJCQlpZiAoIWFnZW50Q29sb3JzW3MuTmFtZV0pIHsKCQkJCQlhZ2VudENvbG9yc1tzLk5hbWVdID0gcGFsZXR0ZVtjb2xvcklkeCAlIHBhbGV0dGUubGVuZ3RoXTsKCQkJCQljb2xvcklkeCsrOwoJCQkJfQoKCQkJCWFnZW50TExNQ291bnRzW3MuTmFtZV0gPSAoYWdlbnRMTE1Db3VudHNbcy5OYW1lXSB8fCAwKSArIDE7CgkJCQljb25zdCBsYWJlbCA9IGAke3MuTmFtZX0tJHthZ2VudExMTUNvdW50c1tzLk5hbWVdfWA7CgkJCQljb25zdCB0b3RhbFRva2VucyA9IHMuSW5wdXRUb2tlbnMgKyBzLk91dHB1dFRva2VucyArIHMuT3V0cHV0VGhvdWdodHNUb2tlbnM7CgkJCQljb25zdCBzdHlsZSA9IGBjb2xvcjogJHthZ2VudENvbG9yc1tzLk5hbWVdfWA7CgkJCQlsZXQgdG9vbHRpcCA9IGBUb3RhbCBUb2tlbnM6ICR7dG90YWxUb2tlbnN9XG4oSW46ICR7cy5JbnB1dFRva2Vuc30sIE91dDogJHtzLk91dHB1dFRva2Vuc30sIFRob3VnaHRzOiAke3MuT3V0cHV0VGhvdWdodHNUb2tlbnN9KWA7CgkJCQlpZiAocy5Ub29sQ2FsbHMgJiYgcy5Ub29sQ2FsbHMubGVuZ3RoID4gMCkgewoJCQkJCXRvb2x0aXAgKz0gYFxuVG9vbHM6ICR7cy5Ub29sQ2FsbHMuam9pbignLCAnKX1gOwoJCQkJfQoKCQkJCWRhdGEuYWRkUm93KFtsYWJlbCwgdG90YWxUb2tlbnMsIHN0eWxlLCB0b29sdGlwXSk7CgkJCX0pOwoKCQkJY29uc3Qgb3B0aW9ucyA9IHsKCQkJCXRpdGxlOiAnVG9rZW4gQ29uc3VtcHRpb24gYnkgTExNIENhbGxzJywKCQkJCWhBeGlzOiB7CgkJCQkJdGl0bGU6ICdMTE0gQ2FsbCBTZXF1ZW5jZScsCgkJCQl9LAoJCQkJdkF4aXM6IHsgdGl0bGU6ICdDb25zdW1lZCBUb2tlbnMnIH0sCgkJCQlsZWdlbmQ6IHsgcG9zaXRpb246ICdub25lJyB9LAoJCQkJYmFyOiB7IGdyb3VwV2lkdGg6ICc3NSUnIH0sCgkJCQljaGFydEFyZWE6IHsgd2lkdGg6ICc4NSUnLCBoZWlnaHQ6ICc3MCUnIH0sCgkJCQloZWlnaHQ6IDQwMAoJCQl9OwoKCQkJY29uc3QgY2hhcnQgPSBuZXcgZ29vZ2xlLnZpc3VhbGl6YXRpb24uQ29sdW1uQ2hhcnQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rva2VuX2NoYXJ0X2RpdicpKTsKCQkJY2hhcnQuZHJhdyhkYXRhLCBvcHRpb25zKTsKCQl9CgkJbGV0IGFsbEV4cGFuZGVkID0gZmFsc2U7CgkJZnVuY3Rpb24gdG9nZ2xlQWxsRGV0YWlscygpIHsKCQkJYWxsRXhwYW5kZWQgPSAhYWxsRXhwYW5kZWQ7CgkJCWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ2RldGFpbHMnKS5mb3JFYWNoKGQgPT4gewoJCQkJaWYgKGFsbEV4cGFuZGVkKSBkLnNldEF0dHJpYnV0ZSgnb3BlbicsICcnKTsKCQkJCWVsc2UgZC5yZW1vdmVBdHRyaWJ1dGUoJ29wZW4nKTsKCQkJfSk7CgkJfQoJPC9zY3JpcHQ+CgoKPC9ib2R5Pgo8L2h0bWw+Cg==" },ValueFrom:&ValueFrom{Path:/output/result.json,JSONPath:,JQFilter:,Parameter:,Default:nil,Supplied:nil,Event:,Expression:,ConfigMapKeyRef:nil,},GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},Result:nil,ExitCode:*0,} --------- Name: series-workflowj6vjl[1] Phase: Succeeded StartedAt: 2026-07-23 00:18:26 +0000 UTC FinishedAt: 2026-07-23 00:18:26 +0000 UTC Input: nil Output: nil --------- Name: series-workflowj6vjl[1].abort-on-skip-outcome Phase: Skipped StartedAt: 2026-07-23 00:18:26 +0000 UTC FinishedAt: 2026-07-23 00:18:26 +0000 UTC Input: nil Output: nil --------- Name: series-workflowj6vjl[2] Phase: Succeeded StartedAt: 2026-07-23 00:18:26 +0000 UTC FinishedAt: 2026-07-23 04:57:53 +0000 UTC Input: nil Output: nil --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN) Phase: Succeeded StartedAt: 2026-07-23 00:18:26 +0000 UTC FinishedAt: 2026-07-23 04:57:53 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:element,Default:nil,Value:*{"base":{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},"fuzz":{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},"patched":{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},"retest":null,"track":"KASAN"},ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},} Output: nil --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[0] Phase: Succeeded StartedAt: 2026-07-23 00:18:26 +0000 UTC FinishedAt: 2026-07-23 00:18:36 +0000 UTC Input: nil Output: nil --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[0].save-base-req Phase: Succeeded StartedAt: 2026-07-23 00:18:26 +0000 UTC FinishedAt: 2026-07-23 00:18:32 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:data,Default:nil,Value:*{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},} Output: &Outputs{Parameters:[]Parameter{},Artifacts:[]Artifact{Artifact{Name:artifact,Path:/tmp/artifact,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowj6vjl/series-workflowj6vjl-convert-artifact-4117704250/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[1] Phase: Succeeded StartedAt: 2026-07-23 00:18:36 +0000 UTC FinishedAt: 2026-07-23 01:01:27 +0000 UTC Input: nil Output: nil --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[1].base-build Phase: Succeeded StartedAt: 2026-07-23 00:18:36 +0000 UTC FinishedAt: 2026-07-23 01:01:27 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:findings,Default:nil,Value:*false,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:test-name,Default:nil,Value:*[KASAN] Build Base,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:smoke-build,Default:nil,Value:*false,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:session-id,Default:nil,Value:*e44f59f4-dce7-4a9b-9361-879d4fd7300d,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:request,Path:/tmp/request.json,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowj6vjl/series-workflowj6vjl-convert-artifact-4117704250/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},} Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "build_id": "7adde07f-8d8d-4a1a-a639-8aaea77081d1", "success": true },ValueFrom:&ValueFrom{Path:/output/result.json,JSONPath:,JQFilter:,Parameter:,Default:*,Supplied:nil,Event:,Expression:,ConfigMapKeyRef:nil,},GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:kernel,Path:/output,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowj6vjl/series-workflowj6vjl-build-action-799826920/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[1].base-build(0) Phase: Succeeded StartedAt: 2026-07-23 00:18:36 +0000 UTC FinishedAt: 2026-07-23 00:59:48 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:findings,Default:nil,Value:*false,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:test-name,Default:nil,Value:*[KASAN] Build Base,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:smoke-build,Default:nil,Value:*false,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:session-id,Default:nil,Value:*e44f59f4-dce7-4a9b-9361-879d4fd7300d,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:request,Path:/tmp/request.json,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowj6vjl/series-workflowj6vjl-convert-artifact-4117704250/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},} Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "build_id": "7adde07f-8d8d-4a1a-a639-8aaea77081d1", "success": true },ValueFrom:&ValueFrom{Path:/output/result.json,JSONPath:,JQFilter:,Parameter:,Default:*,Supplied:nil,Event:,Expression:,ConfigMapKeyRef:nil,},GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:kernel,Path:/output,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowj6vjl/series-workflowj6vjl-build-action-799826920/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[2] Phase: Succeeded StartedAt: 2026-07-23 01:01:27 +0000 UTC FinishedAt: 2026-07-23 01:01:27 +0000 UTC Input: nil Output: nil --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[2].abort-if-base-build-failed Phase: Skipped StartedAt: 2026-07-23 01:01:27 +0000 UTC FinishedAt: 2026-07-23 01:01:27 +0000 UTC Input: nil Output: nil --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[3] Phase: Succeeded StartedAt: 2026-07-23 01:01:27 +0000 UTC FinishedAt: 2026-07-23 01:01:51 +0000 UTC Input: nil Output: nil --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[3].save-patched-req Phase: Succeeded StartedAt: 2026-07-23 01:01:27 +0000 UTC FinishedAt: 2026-07-23 01:01:36 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:data,Default:nil,Value:*{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},} Output: &Outputs{Parameters:[]Parameter{},Artifacts:[]Artifact{Artifact{Name:artifact,Path:/tmp/artifact,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowj6vjl/series-workflowj6vjl-convert-artifact-3993382037/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[4] Phase: Succeeded StartedAt: 2026-07-23 01:01:51 +0000 UTC FinishedAt: 2026-07-23 01:03:48 +0000 UTC Input: nil Output: nil --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[4].boot-test-base Phase: Succeeded StartedAt: 2026-07-23 01:01:51 +0000 UTC FinishedAt: 2026-07-23 01:03:38 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:base-build-id,Default:nil,Value:*7adde07f-8d8d-4a1a-a639-8aaea77081d1,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:patched-build-id,Default:nil,Value:*,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:test-name,Default:nil,Value:*[KASAN] Boot test: Base,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:report-findings,Default:nil,Value:*false,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:kernel,Path:/base,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowj6vjl/series-workflowj6vjl-build-action-799826920/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},} Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "success": true },ValueFrom:&ValueFrom{Path:/output/result.json,JSONPath:,JQFilter:,Parameter:,Default:nil,Supplied:nil,Event:,Expression:,ConfigMapKeyRef:nil,},GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},Result:nil,ExitCode:*0,} --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[5] Phase: Succeeded StartedAt: 2026-07-23 01:03:48 +0000 UTC FinishedAt: 2026-07-23 01:03:48 +0000 UTC Input: nil Output: nil --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[5].abort-if-base-boot-failed Phase: Skipped StartedAt: 2026-07-23 01:03:48 +0000 UTC FinishedAt: 2026-07-23 01:03:48 +0000 UTC Input: nil Output: nil --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[6] Phase: Succeeded StartedAt: 2026-07-23 01:03:48 +0000 UTC FinishedAt: 2026-07-23 01:52:28 +0000 UTC Input: nil Output: nil --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[6].patched-build Phase: Succeeded StartedAt: 2026-07-23 01:03:48 +0000 UTC FinishedAt: 2026-07-23 01:52:28 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:findings,Default:nil,Value:*true,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:test-name,Default:nil,Value:*[KASAN] Build Patched,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:smoke-build,Default:nil,Value:*false,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:session-id,Default:nil,Value:*e44f59f4-dce7-4a9b-9361-879d4fd7300d,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:request,Path:/tmp/request.json,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowj6vjl/series-workflowj6vjl-convert-artifact-3993382037/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},} Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "build_id": "33689e82-e35f-43e2-98eb-363f3890194c", "success": true },ValueFrom:&ValueFrom{Path:/output/result.json,JSONPath:,JQFilter:,Parameter:,Default:*,Supplied:nil,Event:,Expression:,ConfigMapKeyRef:nil,},GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:kernel,Path:/output,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowj6vjl/series-workflowj6vjl-build-action-4107588385/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[6].patched-build(0) Phase: Succeeded StartedAt: 2026-07-23 01:03:48 +0000 UTC FinishedAt: 2026-07-23 01:52:18 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:findings,Default:nil,Value:*true,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:test-name,Default:nil,Value:*[KASAN] Build Patched,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:smoke-build,Default:nil,Value:*false,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:session-id,Default:nil,Value:*e44f59f4-dce7-4a9b-9361-879d4fd7300d,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:request,Path:/tmp/request.json,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowj6vjl/series-workflowj6vjl-convert-artifact-3993382037/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},} Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "build_id": "33689e82-e35f-43e2-98eb-363f3890194c", "success": true },ValueFrom:&ValueFrom{Path:/output/result.json,JSONPath:,JQFilter:,Parameter:,Default:*,Supplied:nil,Event:,Expression:,ConfigMapKeyRef:nil,},GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:kernel,Path:/output,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowj6vjl/series-workflowj6vjl-build-action-4107588385/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[7] Phase: Succeeded StartedAt: 2026-07-23 01:52:28 +0000 UTC FinishedAt: 2026-07-23 01:52:28 +0000 UTC Input: nil Output: nil --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[7].abort-if-patched-build-failed Phase: Skipped StartedAt: 2026-07-23 01:52:28 +0000 UTC FinishedAt: 2026-07-23 01:52:28 +0000 UTC Input: nil Output: nil --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[8] Phase: Succeeded StartedAt: 2026-07-23 01:52:28 +0000 UTC FinishedAt: 2026-07-23 01:54:40 +0000 UTC Input: nil Output: nil --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[8].boot-test-patched Phase: Succeeded StartedAt: 2026-07-23 01:52:28 +0000 UTC FinishedAt: 2026-07-23 01:54:30 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:base-build-id,Default:nil,Value:*,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:patched-build-id,Default:nil,Value:*33689e82-e35f-43e2-98eb-363f3890194c,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:test-name,Default:nil,Value:*[KASAN] Boot test: Patched,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:report-findings,Default:nil,Value:*true,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:kernel,Path:/base,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowj6vjl/series-workflowj6vjl-build-action-4107588385/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},} Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "success": true },ValueFrom:&ValueFrom{Path:/output/result.json,JSONPath:,JQFilter:,Parameter:,Default:nil,Supplied:nil,Event:,Expression:,ConfigMapKeyRef:nil,},GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},Result:nil,ExitCode:*0,} --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[10] Phase: Succeeded StartedAt: 2026-07-23 01:54:40 +0000 UTC FinishedAt: 2026-07-23 04:57:53 +0000 UTC Input: nil Output: nil --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[10].run-fuzz Phase: Succeeded StartedAt: 2026-07-23 01:54:40 +0000 UTC FinishedAt: 2026-07-23 04:57:53 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:config,Default:nil,Value:*{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:track,Default:nil,Value:*KASAN,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:base-build-id,Default:nil,Value:*7adde07f-8d8d-4a1a-a639-8aaea77081d1,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:patched-build-id,Default:nil,Value:*33689e82-e35f-43e2-98eb-363f3890194c,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:base-kernel,Path:,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowj6vjl/series-workflowj6vjl-build-action-799826920/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},Artifact{Name:patched-kernel,Path:,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowj6vjl/series-workflowj6vjl-build-action-4107588385/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},} Output: nil --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[10].run-fuzz[0] Phase: Succeeded StartedAt: 2026-07-23 01:54:40 +0000 UTC FinishedAt: 2026-07-23 01:55:02 +0000 UTC Input: nil Output: nil --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[10].run-fuzz[0].save-fuzz-config Phase: Succeeded StartedAt: 2026-07-23 01:54:40 +0000 UTC FinishedAt: 2026-07-23 01:54:49 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:data,Default:nil,Value:*{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},} Output: &Outputs{Parameters:[]Parameter{},Artifacts:[]Artifact{Artifact{Name:artifact,Path:/tmp/artifact,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowj6vjl/series-workflowj6vjl-convert-artifact-105305978/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[9] Phase: Succeeded StartedAt: 2026-07-23 01:54:40 +0000 UTC FinishedAt: 2026-07-23 01:54:40 +0000 UTC Input: nil Output: nil --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[9].abort-if-patched-boot-failed Phase: Skipped StartedAt: 2026-07-23 01:54:40 +0000 UTC FinishedAt: 2026-07-23 01:54:40 +0000 UTC Input: nil Output: nil --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[10].run-retest Phase: Skipped StartedAt: 2026-07-23 01:54:41 +0000 UTC FinishedAt: 2026-07-23 01:54:41 +0000 UTC Input: nil Output: nil --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[10].run-fuzz[1] Phase: Succeeded StartedAt: 2026-07-23 01:55:02 +0000 UTC FinishedAt: 2026-07-23 04:57:53 +0000 UTC Input: nil Output: nil --------- Name: series-workflowj6vjl[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["vmx_set_hv_timer"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"e61e6fd4f139f2342a6bc86da602df7456ef87f6","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM","KVM_INTEL"],"series_id":"1cde6264-cd66-4ad0-a72e-47b790b5fe65","tree_name":"kvm-next","tree_url":"https://kernel.googlesource.com/pub/scm/virt/kvm/kvm/"},retest:null,track:KASAN)[10].run-fuzz[1].fuzz Phase: Succeeded StartedAt: 2026-07-23 01:55:02 +0000 UTC FinishedAt: 2026-07-23 04:57:43 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:base-build-id,Default:nil,Value:*7adde07f-8d8d-4a1a-a639-8aaea77081d1,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:patched-build-id,Default:nil,Value:*33689e82-e35f-43e2-98eb-363f3890194c,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:test-name,Default:nil,Value:*[KASAN] Fuzz,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:base-kernel,Path:/base,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowj6vjl/series-workflowj6vjl-build-action-799826920/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},Artifact{Name:patched-kernel,Path:/patched,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowj6vjl/series-workflowj6vjl-build-action-4107588385/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},Artifact{Name:config,Path:/tmp/config.json,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflowj6vjl/series-workflowj6vjl-convert-artifact-105305978/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},} Output: &Outputs{Parameters:[]Parameter{},Artifacts:[]Artifact{},Result:nil,ExitCode:*0,}