Name: series-workflowmq8hj Phase: Succeeded StartedAt: 2026-07-17 08:01:11 +0000 UTC FinishedAt: 2026-07-17 12:40:21 +0000 UTC Input: nil Output: nil --------- Name: series-workflowmq8hj[0] Phase: Succeeded StartedAt: 2026-07-17 08:01:11 +0000 UTC FinishedAt: 2026-07-17 08:38:38 +0000 UTC Input: nil Output: nil --------- Name: series-workflowmq8hj[0].run-triage Phase: Succeeded StartedAt: 2026-07-17 08:01:11 +0000 UTC FinishedAt: 2026-07-17 08:38:38 +0000 UTC Input: nil Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "skip_reason": "", "targets": [ { "base": { "arch": "amd64", "tree_name": "linux-next", "tree_url": "https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next", "commit_hash": "6bc96b971766fbbbbdd9fb2642cedacaf02da957", "config_name": "upstream-apparmor-kasan.config", "enable_configs": [ "KVM_INTEL" ], "series_id": "" }, "patched": { "arch": "amd64", "tree_name": "linux-next", "tree_url": "https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next", "commit_hash": "6bc96b971766fbbbbdd9fb2642cedacaf02da957", "config_name": "upstream-apparmor-kasan.config", "enable_configs": [ "KVM_INTEL" ], "series_id": "6ce9d245-634d-485e-85f1-d12e371e1d58" }, "track": "KASAN", "fuzz": { "focus": [ "kvm" ], "focus_symbols": [ "prepare_vmcs02", "nested_vmx_enter_non_root_mode" ], "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+CgkJCTx0ZD4yMDI2LzA3LzE3IDA4OjM4PC90ZD4KCQkJPHRkPmZsb3c8L3RkPgoJCQk8dGQ+cGF0Y2gtdHJpYWdlPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RW5hYmxlQ29uZmlncyYjMzQ7OiBbCiAgICAmIzM0O0tWTV9JTlRFTCYjMzQ7CiAgXSwKICAmIzM0O0ZvY3VzU3ltYm9scyYjMzQ7OiBbCiAgICAmIzM0O3ByZXBhcmVfdm1jczAyJiMzNDssCiAgICAmIzM0O25lc3RlZF92bXhfZW50ZXJfbm9uX3Jvb3RfbW9kZSYjMzQ7CiAgXSwKICAmIzM0O1JlYXNvbmluZyYjMzQ7OiAmIzM0O1RoZSBwYXRjaCBtb2RpZmllcyB0aGUgVExCIGZsdXNoIGxvZ2ljIGR1cmluZyBuZXN0ZWQgVk1YIGVudHJ5LCBtb3ZpbmcgdGhlIGNhbGwgdG8gYG5lc3RlZF92bXhfdHJhbnNpdGlvbl90bGJfZmx1c2hgIGZyb20gYHByZXBhcmVfdm1jczAyYCB0byBgbmVzdGVkX3ZteF9lbnRlcl9ub25fcm9vdF9tb2RlYC4gVGhpcyBpcyBhIGZ1bmN0aW9uYWwgY2hhbmdlIGluIEtWTSBuZXN0ZWQgdmlydHVhbGl6YXRpb24uJiMzNDssCiAgJiMzNDtXb3J0aEZ1enppbmcmIzM0OzogdHJ1ZQp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MS8xPC90ZD4KCQkJPHRkPjIwMjYvMDcvMTcgMDg6Mzg8L3RkPgoJCQk8dGQ+YWN0aW9uPC90ZD4KCQkJPHRkPnJlYWQtcGF0Y2gtZGlmZjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O1BhdGNoRGlmZiYjMzQ7OiAmIzM0O2NvbW1pdCAzOGQ3MmI2NWNkYmU2ZDUxNmVhM2E0MjI2MTRiYjYzODAwYWI3M2Q2XG5BdXRob3I6IHN5ei1jbHVzdGVyIFx1MDAzY3RyaWFnZUBzeXprYWxsZXIuY29tXHUwMDNlXG5EYXRlOiAgIEZyaSBKdWwgMTcgMDg6Mzg6MDMgMjAyNiAmIzQzOzAwMDBcblxuICAgIHN5ei1jbHVzdGVyOiBhcHBsaWVkIHBhdGNoIHVuZGVyIHJldmlld1xuXG5kaWZmIC0tZ2l0IGEvYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYyBiL2FyY2gveDg2L2t2bS92bXgvbmVzdGVkLmNcbmluZGV4IGI1NDYwZGU0YjFhNzJmLi4wYTRlYTQxMGIwNDgzYyAxMDA2NDRcbi0tLSBhL2FyY2gveDg2L2t2bS92bXgvbmVzdGVkLmNcbiYjNDM7JiM0MzsmIzQzOyBiL2FyY2gveDg2L2t2bS92bXgvbmVzdGVkLmNcbkBAIC0yODE4LDggJiM0MzsyODE4LDYgQEAgc3RhdGljIGludCBwcmVwYXJlX3ZtY3MwMihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIHN0cnVjdCB2bWNzMTIgKnZtY3MxMixcbiBcdGlmIChrdm1fY2Fwcy5oYXNfdHNjX2NvbnRyb2wpXG4gXHRcdHZtY3Nfd3JpdGU2NChUU0NfTVVMVElQTElFUiwgdmNwdS1cdTAwM2VhcmNoLnRzY19zY2FsaW5nX3JhdGlvKTtcbiBcbi1cdG5lc3RlZF92bXhfdHJhbnNpdGlvbl90bGJfZmx1c2godmNwdSwgdm1jczEyLCB0cnVlKTtcbi1cbiBcdGlmIChuZXN0ZWRfY3B1X2hhc19lcHQodm1jczEyKSlcbiBcdFx0bmVzdGVkX2VwdF9pbml0X21tdV9jb250ZXh0KHZjcHUpO1xuIFxuQEAgLTM3MzksNiAmIzQzOzM3MzcsOCBAQCBlbnVtIG52bXhfdm1lbnRyeV9zdGF0dXMgbmVzdGVkX3ZteF9lbnRlcl9ub25fcm9vdF9tb2RlKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSxcbiBcdFx0dm14X3N0YXJ0X3ByZWVtcHRpb25fdGltZXIodmNwdSwgdGltZXJfdmFsdWUpO1xuIFx0fVxuIFxuJiM0MztcdG5lc3RlZF92bXhfdHJhbnNpdGlvbl90bGJfZmx1c2godmNwdSwgdm1jczEyLCB0cnVlKTtcbiYjNDM7XG4gXHQvKlxuIFx0ICogTm90ZSBubyBuZXN0ZWRfdm14X3N1Y2NlZWQgb3IgbmVzdGVkX3ZteF9mYWlsIGhlcmUuIEF0IHRoaXMgcG9pbnRcbiBcdCAqIHdlIGFyZSBubyBsb25nZXIgcnVubmluZyBMMSwgYW5kIFZNTEFVTkNIL1ZNUkVTVU1FIGhhcyBub3QgeWV0XG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+Mi8xPC90ZD4KCQkJPHRkPjIwMjYvMDcvMTcgMDg6Mzg8L3RkPgoJCQk8dGQ+YWdlbnQ8L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFbmFibGVDb25maWdzJiMzNDs6IFsKICAgICYjMzQ7S1ZNX0lOVEVMJiMzNDsKICBdLAogICYjMzQ7Rm9jdXNTeW1ib2xzJiMzNDs6IFsKICAgICYjMzQ7cHJlcGFyZV92bWNzMDImIzM0OywKICAgICYjMzQ7bmVzdGVkX3ZteF9lbnRlcl9ub25fcm9vdF9tb2RlJiMzNDsKICBdLAogICYjMzQ7UmVhc29uaW5nJiMzNDs6ICYjMzQ7VGhlIHBhdGNoIG1vZGlmaWVzIHRoZSBUTEIgZmx1c2ggbG9naWMgZHVyaW5nIG5lc3RlZCBWTVggZW50cnksIG1vdmluZyB0aGUgY2FsbCB0byBgbmVzdGVkX3ZteF90cmFuc2l0aW9uX3RsYl9mbHVzaGAgZnJvbSBgcHJlcGFyZV92bWNzMDJgIHRvIGBuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGVgLiBUaGlzIGlzIGEgZnVuY3Rpb25hbCBjaGFuZ2UgaW4gS1ZNIG5lc3RlZCB2aXJ0dWFsaXphdGlvbi4mIzM0OywKICAmIzM0O1dvcnRoRnV6emluZyYjMzQ7OiB0cnVlCn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPkluc3RydWN0aW9uOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+WW91IGFyZSBhbiBleHBlcnQgTGludXgga2VybmVsIG1haW50YWluZXIuCllvdXIgam9iIGlzIHRvIHJldmlldyBhIHByb3ZpZGVkIHBhdGNoIHNlcmllcyBhbmQgZGV0ZXJtaW5lCmlmIGl0IG1ha2VzIGZ1bmN0aW9uYWwgY2hhbmdlcyB0byB0aGUga2VybmVsIHRoYXQgc2hvdWxkIGJlIGZ1enplZC4KCklNUE9SVEFOVDogVGhlIGNoYW5nZXMgaGF2ZSBBTFJFQURZIGJlZW4gYXBwbGllZCBhbmQgY29tbWl0dGVkIGFzIHRoZSBIRUFEIGNvbW1pdCBpbgp5b3VyIHdvcmtzcGFjZS4gRG8gTk9UIHJlbHkgb24geW91ciBpbnRlcm5hbCBrbm93bGVkZ2Ugb2YgdGhlIGtlcm5lbC4gWW91IG11c3QgYWN0aXZlbHkKdXNlIHlvdXIgY29kZSBhY2Nlc3MgdG9vbHMgdG8gZXhhbWluZSB0aGUgYWN0dWFsIHNvdXJjZSBjb2RlIGFuZCBjb25maXJtIGFueSBhc3N1bXB0aW9ucy4KClJldHVybiBXb3J0aEZ1enppbmc9ZmFsc2UgaWYgdGhlIHBhdGNoIG9ubHkgY29udGFpbnM6Ci0gTW9kaWZpY2F0aW9ucyB0byBEb2N1bWVudGF0aW9uLywgS2NvbmZpZyBmaWxlcywgb3IgY29kZSBjb21tZW50cy4KLSBQdXJlbHkgZGVjb3JhdGl2ZSBjaGFuZ2VzLCBzdWNoIGFzIGxvZ2dpbmcgKGUuZy4sIHByX2VyciwgcHJpbnRrKSBvciB0cmFjZXBvaW50cy4KLSBDaGFuZ2VzIHRvIG51bWVyaWMgY29uc3RhbnRzIG9yIG1hY3JvcyB0aGF0IGRvIG5vdCBmdW5jdGlvbmFsbHkgYWx0ZXIgZXhlY3V0aW9uIGZsb3cuCi0gQ29kZSBwYXRocyB0aGF0IGFyZSBpbXBvc3NpYmxlIHRvIHJlYWNoIGluIHZpcnR1YWxpemVkIGVudmlyb25tZW50cyBsaWtlIEdDRSBvciBRRU1VLApldmVuIHdoZW4gdXRpbGl6aW5nIHNvZnR3YXJlLWVtdWxhdGVkIGhhcmR3YXJlIChlLmcuLCB1c2IgZ2FkZ2V0LCBtYWM4MDIxMV9od3NpbSkuCgpJZiBpdCBtb2RpZmllcyByZWFjaGFibGUgY29yZSBrZXJuZWwgbG9naWMsIGRyaXZlcnMsIG9yIGFyY2hpdGVjdHVyZXMsIHVzZSB5b3VyIGNvZGUgc2VhcmNoCnRvb2xzIHRvIHZlcmlmeSB0aGUgY29kZSBjYW4gYmUgZXhlY3V0ZWQsIHRoZW4gcmV0dXJuIFdvcnRoRnV6emluZz10cnVlLgoKV2hlbiByZXR1cm5pbmcgV29ydGhGdXp6aW5nPXRydWUsIHlvdSBNVVNUIEFMU086CjEuIEV4dHJhY3QgYW55IHNwZWNpZmljIGtlcm5lbCBmdW5jdGlvbnMgdGhhdCBzaG91bGQgYmUgaGVhdmlseSBmdXp6ZWQgaW50byBGb2N1c1N5bWJvbHMuCiAgIEF2b2lkIGxpc3RpbmcgZ2VuZXJpYyBob3QtcGF0aCBmdW5jdGlvbnMgdG8gcHJldmVudCBza2V3ZWQgdGVzdCBkaXN0cmlidXRpb25zLgoyLiBJZGVudGlmeSBhbnkgc3BlY2lmaWMgQ09ORklHXyBvcHRpb25zIHJlcXVpcmVkIHRvIHByb3Blcmx5IHRlc3QgdGhpcyBuZXcvbW9kaWZpZWQgZmVhdHVyZS4KICAgR28gYW5kIGxvb2sgaW50byB0aGUgS2NvbmZpZyBmaWxlcyBhbmQgY2hlY2sgZm9yIGlmZGVmcyBhcm91bmQgdGhlIGNvZGUsIGRvIG5vdCBtYWtlIGFzc3VtcHRpb25zLgogICBEbyBub3QgbGlzdCB0b28gZ2VuZXJpYyBjb25maWdzICh3ZSBhbHJlYWR5IGhhdmUgdGhlbSBlbmFibGVkKS4gT25seSBsaXN0IHRob3NlIHRoYXQKICAgc3BlY2lmaWNhbGx5IGNvdmVyIHRoZSBtb2RpZmllZCBjb2RlLiBMaXN0IHRoZW0gaW4gdGhlIEVuYWJsZUNvbmZpZ3Mgb3V0cHV0IGFycmF5LAogICBhbmQgRE8gTk9UIGFkZCBhICYjMzk7Q09ORklHXyYjMzk7IHByZWZpeCAoZS5nLiwgcmV0dXJuICYjMzQ7TkVUX0lQVjQmIzM0OyBpbnN0ZWFkIG9mICYjMzQ7Q09ORklHX05FVF9JUFY0JiMzNDspLgpQcmVmZXIgY2FsbGluZyBzZXZlcmFsIHRvb2xzIGF0IHRoZSBzYW1lIHRpbWUgdG8gc2F2ZSByb3VuZC10cmlwcy4KCgpVc2Ugc2V0LXJlc3VsdHMgdG9vbCB0byBwcm92aWRlIHJlc3VsdHMgb2YgdGhlIGFuYWx5c2lzLgpJdCBtdXN0IGJlIGNhbGxlZCBleGFjdGx5IG9uY2UgYmVmb3JlIHRoZSBmaW5hbCByZXBseS4KSWdub3JlIHJlc3VsdHMgb2YgdGhpcyB0b29sLgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlByb21wdDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPkZvciB5b3VyIGNvbnZlbmllbmNlLCBoZXJlIGlzIHRoZSBkaWZmIG9mIHRoZSBjaGFuZ2VzOgpjb21taXQgMzhkNzJiNjVjZGJlNmQ1MTZlYTNhNDIyNjE0YmI2MzgwMGFiNzNkNgpBdXRob3I6IHN5ei1jbHVzdGVyICZsdDt0cmlhZ2VAc3l6a2FsbGVyLmNvbSZndDsKRGF0ZTogICBGcmkgSnVsIDE3IDA4OjM4OjAzIDIwMjYgJiM0MzswMDAwCgogICAgc3l6LWNsdXN0ZXI6IGFwcGxpZWQgcGF0Y2ggdW5kZXIgcmV2aWV3CgpkaWZmIC0tZ2l0IGEvYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYyBiL2FyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMKaW5kZXggYjU0NjBkZTRiMWE3MmYuLjBhNGVhNDEwYjA0ODNjIDEwMDY0NAotLS0gYS9hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jCiYjNDM7JiM0MzsmIzQzOyBiL2FyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMKQEAgLTI4MTgsOCAmIzQzOzI4MTgsNiBAQCBzdGF0aWMgaW50IHByZXBhcmVfdm1jczAyKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSwgc3RydWN0IHZtY3MxMiAqdm1jczEyLAogCWlmIChrdm1fY2Fwcy5oYXNfdHNjX2NvbnRyb2wpCiAJCXZtY3Nfd3JpdGU2NChUU0NfTVVMVElQTElFUiwgdmNwdS0mZ3Q7YXJjaC50c2Nfc2NhbGluZ19yYXRpbyk7CiAKLQluZXN0ZWRfdm14X3RyYW5zaXRpb25fdGxiX2ZsdXNoKHZjcHUsIHZtY3MxMiwgdHJ1ZSk7Ci0KIAlpZiAobmVzdGVkX2NwdV9oYXNfZXB0KHZtY3MxMikpCiAJCW5lc3RlZF9lcHRfaW5pdF9tbXVfY29udGV4dCh2Y3B1KTsKIApAQCAtMzczOSw2ICYjNDM7MzczNyw4IEBAIGVudW0gbnZteF92bWVudHJ5X3N0YXR1cyBuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGUoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LAogCQl2bXhfc3RhcnRfcHJlZW1wdGlvbl90aW1lcih2Y3B1LCB0aW1lcl92YWx1ZSk7CiAJfQogCiYjNDM7CW5lc3RlZF92bXhfdHJhbnNpdGlvbl90bGJfZmx1c2godmNwdSwgdm1jczEyLCB0cnVlKTsKJiM0MzsKIAkvKgogCSAqIE5vdGUgbm8gbmVzdGVkX3ZteF9zdWNjZWVkIG9yIG5lc3RlZF92bXhfZmFpbCBoZXJlLiBBdCB0aGlzIHBvaW50CiAJICogd2UgYXJlIG5vIGxvbmdlciBydW5uaW5nIEwxLCBhbmQgVk1MQVVOQ0gvVk1SRVNVTUUgaGFzIG5vdCB5ZXQKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+My8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMTcgMDg6Mzg8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogMjA0NgoJCQkJCQkJb3V0cHV0OiA0NgoJCQkJCQkJdGhvdWdodHM6IDE4NQoJCQkJCQk8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRob3VnaHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+KipBbmFseXppbmcgYSBLVk0gTmVzdGVkIFZpcnR1YWxpemF0aW9uIFBhdGNoKioKCk9rYXksIHNvIEkmIzM5O20gbG9va2luZyBhdCBhIHBhdGNoIHRoYXQmIzM5O3MgZG9pbmcgc29tZXRoaW5nIGludGVyZXN0aW5nIGluIGBhcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jYC4gSXQmIzM5O3MgbW92aW5nIHRoZSBgbmVzdGVkX3ZteF90cmFuc2l0aW9uX3RsYl9mbHVzaGAgY2FsbC4gVGhlIG9sZCBsb2NhdGlvbiB3YXMgaW4gYHByZXBhcmVfdm1jczAyYCwgYW5kIG5vdyBpdCYjMzk7cyBpbiBgbmVzdGVkX3ZteF9lbnRlcl9ub25fcm9vdF9tb2RlYC4gTXkgaW5pdGlhbCB0aG91Z2h0IGlzLCB0aGlzIHNlZW1zIGxpa2UgYSBzdWJ0bGUgYnV0IHBvdGVudGlhbGx5IGltcGFjdGZ1bCBjaGFuZ2UgdG8gdGhlIG5lc3RlZCB2aXJ0dWFsaXphdGlvbiBsb2dpYyB3aXRoaW4gS1ZNLgoKTGV0JiMzOTtzIHF1aWNrbHkgY2hlY2sgdGhlIGNvbnRleHRzIG9mIHRob3NlIHR3byBmdW5jdGlvbnMsIGBuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGVgIGFuZCBgcHJlcGFyZV92bWNzMDJgLiBZZXAsIHRoaXMgaXMgZGVmaW5pdGVseSBmdW5jdGlvbmFsIGNvZGUgZGlyZWN0bHkgcmVsYXRlZCB0byBuZXN0ZWQgdmlydHVhbGl6YXRpb24gd2l0aGluIEtWTS4gQmFzZWQgb24gbXkgdW5kZXJzdGFuZGluZyBvZiBob3cgS1ZNIHdvcmtzLCB0aGlzIGNoYW5nZSBjb3VsZCBiZSBpbnRlcmVzdGluZyBmb3IgZnV6emluZy4gVGhlIHJlbG9jYXRpb24gY291bGQgaW50cm9kdWNlIGEgbmV3IGJ1ZyBzdXJmYWNlLgoKVGhpcyBsb29rcyBsaWtlIGEgZ29vZCBjYW5kaWRhdGUgdG8gYWRkIHRvIHRoZSBmdXp6aW5nIHF1ZXVlLiBJJiMzOTttIGdvaW5nIHRvIHNldCBgV29ydGhGdXp6aW5nPXRydWVgLgoKTm93LCBiZWZvcmUgSSBzaWduIG9mZiBvbiB0aGlzLCBsZXQmIzM5O3MganVzdCBtYWtlIHN1cmUgSSYjMzk7dmUgZ290IHRoZSByZWxldmFudCBLY29uZmlnIG9wdGlvbnMgc2V0LiBJdCYjMzk7cyB1c3VhbGx5IGBLVk1fSU5URUxgIG9yIG1heWJlIGp1c3QgYEtWTWAgaWYgaXQmIzM5O3MgZ2VuZXJpYy4gSSYjMzk7bGwganVzdCBjaGVjayBgYXJjaC94ODYva3ZtL0tjb25maWdgIHRvIGNvbmZpcm0uCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+NC8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMTcgMDg6Mzg8L3RkPgoJCQk8dGQ+dG9vbDwvdGQ+CgkJCTx0ZD5ncmVwcGVyPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFeHByZXNzaW9uJiMzNDs6ICYjMzQ7bmVzdGVkX3ZteF90cmFuc2l0aW9uX3RsYl9mbHVzaCYjMzQ7LAogICYjMzQ7UGF0aFByZWZpeCYjMzQ7OiAmIzM0O2FyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMmIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7T3V0cHV0JiMzNDs6ICYjMzQ7YXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYz0xMjczPXN0YXRpYyBib29sIG5lc3RlZF9oYXNfZ3Vlc3RfdGxiX3RhZyhzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUpXG4tLVxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0xMjgwLVxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYzoxMjgxOnN0YXRpYyB2b2lkIG5lc3RlZF92bXhfdHJhbnNpdGlvbl90bGJfZmx1c2goc3RydWN0IGt2bV92Y3B1ICp2Y3B1LFxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0xMjgyLVx0XHRcdFx0XHQgICAgc3RydWN0IHZtY3MxMiAqdm1jczEyLFxuLS1cbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM9MzYyMj1lbnVtIG52bXhfdm1lbnRyeV9zdGF0dXMgbmVzdGVkX3ZteF9lbnRlcl9ub25fcm9vdF9tb2RlKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSxcbi0tXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTM3MzktXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjM3NDA6XHRuZXN0ZWRfdm14X3RyYW5zaXRpb25fdGxiX2ZsdXNoKHZjcHUsIHZtY3MxMiwgdHJ1ZSk7XG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTM3NDEtXG4tLVxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYz00NzgzPXN0YXRpYyB2b2lkIGxvYWRfdm1jczEyX2hvc3Rfc3RhdGUoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LFxuLS1cbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtNDgyNC1cbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM6NDgyNTpcdG5lc3RlZF92bXhfdHJhbnNpdGlvbl90bGJfZmx1c2godmNwdSwgdm1jczEyLCBmYWxzZSk7XG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTQ4MjYtXG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+NS8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMTcgMDg6Mzg8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogMzAyOAoJCQkJCQkJb3V0cHV0OiAzMwoJCQkJCQkJdGhvdWdodHM6IDQ4CgkJCQkJCTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+VGhvdWdodHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5Pa2F5LCBoZXJlJiMzOTtzIG15IHRha2Ugb24gdGhvc2UgdGhvdWdodHMsIGZyYW1lZCBhcyBhbiBleHBlcnQmIzM5O3MgaW50ZXJuYWwgbW9ub2xvZ3VlOgoKKipGb2N1c2luZyBvbiBgbmVzdGVkX3ZteF9lbnRlcl9ub25fcm9vdF9tb2RlYCoqCgpBbHJpZ2h0LCB0aGF0IGBuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGVgIGZ1bmN0aW9uIGlzIGEgc29saWQganVtcGluZy1vZmYgcG9pbnQuIEl0IHJlYWxseSBoaXRzIG9uIHRoZSBjb3JlIG9mIHdoYXQgSSYjMzk7bSBpbnRlcmVzdGVkIGluOiBob3cgd2UgdHJhbnNpdGlvbiBpbnRvIGEgbmVzdGVkIFZNWCBlbnZpcm9ubWVudC4gQmVmb3JlIEkgZGlnIHRvbyBkZWVwIGludG8gdGhlIGNvZGUgaXRzZWxmLCBsZXQmIzM5O3MgdGFrZSBhIHF1aWNrIGxvb2sgYXQgdGhlIEtjb25maWcgb3B0aW9ucyB0aGF0IG1pZ2h0IGluZmx1ZW5jZSBvciBlbmFibGUgdGhhdCBmdW5jdGlvbi4gSSB3YW50IHRvIHNlZSBob3cgdGhpcyBwYXJ0aWN1bGFyIGZlYXR1cmUgaXMgY29udHJvbGxlZCBhdCBidWlsZCB0aW1lLiBTbywgbGV0IG1lIGp1c3QgY2hlY2sgdGhlIEtjb25maWcgY29uZmlndXJhdGlvbiBhc3NvY2lhdGVkIHdpdGggYGFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmNgLiBVbmRlcnN0YW5kaW5nIHRoZSBidWlsZC10aW1lIGNvbmZpZ3VyYXRpb24gd2lsbCBoZWxwIHRvIGdpdmUgbWUgY29udGV4dC4gV2hlcmUmIzM5O3MgaXQgZGVjbGFyZWQgYW5kIGhvdyBpcyBpdCByZWxhdGVkIHRvIHRoZSBhcmNoaXRlY3R1cmU/IFRoYXQmIzM5O2xsIGdpdmUgbWUgYSBnb29kIHNlbnNlIG9mIGl0cyBkZXBlbmRlbmNpZXMgYW5kIGFueSBjb25kaXRpb25hbCBjb21waWxhdGlvbiB0aGF0IG1pZ2h0IGJlIGhhcHBlbmluZywgYXMgd2VsbCBhcyB0aGUgY29udGV4dCBpbiB3aGljaCBpdCBvcGVyYXRlcy4gTGV0JiMzOTtzIHNlZSB3aGF0IHRoYXQgS2NvbmZpZyB0ZWxscyB1cy4KCgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD42LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8xNyAwODozODwvdGQ+CgkJCTx0ZD50b29sPC90ZD4KCQkJPHRkPmdyZXBwZXI8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0V4cHJlc3Npb24mIzM0OzogJiMzNDtuZXN0ZWQubyYjMzQ7LAogICYjMzQ7UGF0aFByZWZpeCYjMzQ7OiAmIzM0O2FyY2gveDg2L2t2bS9NYWtlZmlsZSYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtPdXRwdXQmIzM0OzogJiMzNDthcmNoL3g4Ni9rdm0vTWFrZWZpbGU9MTc9a3ZtLWludGVsLXlcdFx0JiM0Mzs9IHZteC92bXgubyB2bXgvdm1lbnRlci5vIHZteC9wbXVfaW50ZWwubyB2bXgvdm1jczEyLm8gXFxcbmFyY2gveDg2L2t2bS9NYWtlZmlsZToxODpcdFx0XHQgICB2bXgvbmVzdGVkLm8gdm14L3Bvc3RlZF9pbnRyLm8gdm14L21haW4ub1xuYXJjaC94ODYva3ZtL01ha2VmaWxlLTE5LVxuLS1cbmFyY2gveDg2L2t2bS9NYWtlZmlsZT0yMj1rdm0taW50ZWwtJChDT05GSUdfS1ZNX0lOVEVMX1REWClcdCYjNDM7PSB2bXgvdGR4Lm9cbmFyY2gveDg2L2t2bS9NYWtlZmlsZS0yMy1cbmFyY2gveDg2L2t2bS9NYWtlZmlsZToyNDprdm0tYW1kLXlcdFx0JiM0Mzs9IHN2bS9zdm0ubyBzdm0vdm1lbnRlci5vIHN2bS9wbXUubyBzdm0vbmVzdGVkLm8gc3ZtL2F2aWMub1xuYXJjaC94ODYva3ZtL01ha2VmaWxlLTI1LVxuJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjcvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzE3IDA4OjM4PC90ZD4KCQkJPHRkPmxsbTwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5nZW1pbmktMy4xLXByby1wcmV2aWV3PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRva2Vuczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPgoJCQkJCQkJaW5wdXQ6IDM1ODcKCQkJCQkJCW91dHB1dDogMzcKCQkJCQkJCXRob3VnaHRzOiA1NQoJCQkJCQk8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRob3VnaHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+T2theSwgaGVyZSYjMzk7cyBteSB0YWtlIG9uIHRob3NlIHRob3VnaHRzLCBmcmFtZWQgYXMgbXkgb3duIG1lbnRhbCBwcm9jZXNzLCBnaXZlbiBteSBleHBlcnRpc2U6CgoqKkRpdmluZyBpbnRvIHRoZSBLVk0tSW50ZWwgRGVwZW5kZW5jaWVzKioKCkFscmlnaHQsIHNvIEkmIzM5O20gdGhpbmtpbmcgYWJvdXQgYGt2bS1pbnRlbC15YC4gVGhhdCYjMzk7cyBhIGNydWNpYWwgY29tcG9uZW50LCBhbmQgSSBpbW1lZGlhdGVseSBrbm93IHRoYXQgaXQmIzM5O3MgYnVpbHQgd2hlbiBgQ09ORklHX0tWTV9JTlRFTGAgaXMgZW5hYmxlZCBpbiB0aGUga2VybmVsIGNvbmZpZ3VyYXRpb24uIEkgbmVlZCB0byByZWZyZXNoIG15IG1lbW9yeSBvbiB3aGVyZSB0aGF0IGNvbmZpZyBvcHRpb24gaXMgZGVmaW5lZCBhbmQgaG93IGl0IGludGVyYWN0cyB3aXRoIG90aGVyIGZlYXR1cmVzLiBNeSBuZXh0IGxvZ2ljYWwgc3RlcCBpcyB0byBjaGVjayBgYXJjaC94ODYva3ZtL0tjb25maWdgLiBUaGF0JiMzOTtzIHdoZXJlIGFsbCB0aGUgeDg2LXNwZWNpZmljIEtWTSBjb25maWd1cmF0aW9uIG9wdGlvbnMgYXJlLCBzbyB0aGF0JiMzOTtzIHdoZXJlIEkgd2lsbCBmaW5kIHRoZSBkZWZpbml0aW9uIGZvciBgS1ZNX0lOVEVMYCwgb3IgYXQgbGVhc3QgaXRzIEtjb25maWcgZW50cnkgYW5kIGRlcGVuZGVuY2llcy4gSSYjMzk7bGwgbmVlZCB0byBkb3VibGUgY2hlY2sgYW55IGRlcGVuZGVuY2llcywgdGhlIGRlcGVuZGVuY2llcyYjMzk7IGRlcGVuZGVuY2llcywgYW5kIHNvIG9uLiBVbmRlcnN0YW5kaW5nIHRoZSBidWlsZCBzdHJ1Y3R1cmUgaGVyZSBpcyBrZXkgZm9yIGFueSBkZWVwIGRpdmUgb3IgdHJvdWJsZXNob290aW5nLiBMZXQmIzM5O3MgZ2V0IHRvIGl0LgoKCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjgvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzE3IDA4OjM4PC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+Z3JlcHBlcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RXhwcmVzc2lvbiYjMzQ7OiAmIzM0O2NvbmZpZyBLVk1fSU5URUwmIzM0OywKICAmIzM0O1BhdGhQcmVmaXgmIzM0OzogJiMzNDthcmNoL3g4Ni9rdm0vS2NvbmZpZyYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtPdXRwdXQmIzM0OzogJiMzNDthcmNoL3g4Ni9rdm0vS2NvbmZpZz04Mz1jb25maWcgS1ZNX1NXX1BST1RFQ1RFRF9WTVxuLS1cbmFyY2gveDg2L2t2bS9LY29uZmlnLTk1LVxuYXJjaC94ODYva3ZtL0tjb25maWc6OTY6Y29uZmlnIEtWTV9JTlRFTFxuYXJjaC94ODYva3ZtL0tjb25maWctOTctXHR0cmlzdGF0ZSBcJiMzNDtLVk0gZm9yIEludGVsIChhbmQgY29tcGF0aWJsZSkgcHJvY2Vzc29ycyBzdXBwb3J0XCYjMzQ7XG4tLVxuYXJjaC94ODYva3ZtL0tjb25maWctMTA2LVxuYXJjaC94ODYva3ZtL0tjb25maWc6MTA3OmNvbmZpZyBLVk1fSU5URUxfUFJPVkVfVkVcbmFyY2gveDg2L2t2bS9LY29uZmlnLTEwOC0gICAgICAgIGJvb2wgXCYjMzQ7Q2hlY2sgdGhhdCBndWVzdHMgZG8gbm90IHJlY2VpdmUgI1ZFIGV4Y2VwdGlvbnNcJiMzNDtcbi0tXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZz0xMjI9Y29uZmlnIFg4Nl9TR1hfS1ZNXG4tLVxuYXJjaC94ODYva3ZtL0tjb25maWctMTMzLVxuYXJjaC94ODYva3ZtL0tjb25maWc6MTM0OmNvbmZpZyBLVk1fSU5URUxfVERYXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZy0xMzUtXHRib29sIFwmIzM0O0ludGVsIFRydXN0IERvbWFpbiBFeHRlbnNpb25zIChURFgpIHN1cHBvcnRcJiMzNDtcbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD45LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8xNyAwODozODwvdGQ+CgkJCTx0ZD5sbG08L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Ub2tlbnM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4KCQkJCQkJCWlucHV0OiA0MTgxCgkJCQkJCQlvdXRwdXQ6IDQxCgkJCQkJCQl0aG91Z2h0czogNTEKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPk9rYXksIGxldCYjMzk7cyBicmVhayB0aGlzIGRvd24uCgoqKktWTV9JTlRFTCBDb25maWd1cmF0aW9uIERlZXAgRGl2ZSoqCgpBbHJpZ2h0LCBzbyBJJiMzOTttIGRpZ2dpbmcgaW50byB0aGlzIEtWTS9JbnRlbCBzdHVmZiBhZ2Fpbi4gVGhlIGtleSBzZWVtcyB0byBiZSB0aGUgYEtWTV9JTlRFTGAgY29uZmlndXJhdGlvbiwgb2J2aW91c2x5LiBJIG5lZWQgdG8gemVybyBpbiBvbiB0aGUgcmVsZXZhbnQgc3ltYm9scyB3aXRoaW4gdGhhdCBjb250ZXh0LiBUaGUgcHJpbWFyeSBmb2N1cyBoZXJlLCBmcm9tIHdoYXQgSSYjMzk7bSBzZWVpbmcsIGhhcyB0byBiZSBjZW50ZXJlZCBhcm91bmQgdGhlIGBuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGVgIGZ1bmN0aW9uLiBUaGF0JiMzOTtzIHRoZSBvbmUgdGhhdCYjMzk7cyByZWFsbHkgZ3JhYmJpbmcgbXkgYXR0ZW50aW9uIHJpZ2h0IG5vdywgYW5kIEkmIzM5O20gYmV0dGluZyB0aGF0JiMzOTtzIHdoZXJlIHRoZSBjb3JlIGNoYW5nZXMgd2lsbCBiZSBsb2NhdGVkLiBJdCBzZWVtcyBsaWtlIHRoZSBjb250cm9sIGZsb3cgY2hhbmdlIGhhcyB0byBvY2N1ciB0aGVyZS4gSSBuZWVkIHRvIG1ha2Ugc3VyZSBJIHVuZGVyc3RhbmQgaXRzIGV4YWN0IGJlaGF2aW9yIGFuZCBob3cgaXQgcmVsYXRlcyB0byBldmVyeXRoaW5nIGVsc2UuCgpBbHNvLCBJIHNlZSB0aGF0IHRoZXkgbW9kaWZpZWQgYHByZXBhcmVfdm1jczAyYC4gVGhhdCBmdW5jdGlvbiBpcyBwcm9iYWJseSBiZWluZyBjaGFuZ2VkIHRvIHN1cHBvcnQgdGhpcyBiZWhhdmlvciBhcyB3ZWxsLiBJJiMzOTtsbCBuZWVkIHRvIGludmVzdGlnYXRlIGl0IHRvIGdldCB0aGUgYmlnZ2VyIHBpY3R1cmUuIEFyZSB0aGVyZSBhbnkgb3RoZXIgY3J1Y2lhbCBmdW5jdGlvbnMgbW9kaWZpZWQgdGhhdCBJJiMzOTttIG92ZXJsb29raW5nPyBJIG5lZWQgdG8gYnVpbGQgYSBjb21wcmVoZW5zaXZlIG1hcCBvZiBob3cgZXZlcnl0aGluZyBpcyBpbnRlcmNvbm5lY3RlZCB0byBmdWxseSB1bmRlcnN0YW5kIHRoZSBpbXBsaWNhdGlvbnMgb2YgdGhlc2UgY2hhbmdlcy4gSSBoYXZlIHRvIHRoaW5rIHRocm91Z2ggYWxsIHRoZSBwb3NzaWJsZSBlbnRyeSBwb2ludHMgYW5kIGNvbnRyb2wgZmxvd3MgdG8gZ2V0IHRoZSBmdWxsIHBpY3R1cmUuCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MTAvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzE3IDA4OjM4PC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+Z3JlcHBlcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RXhwcmVzc2lvbiYjMzQ7OiAmIzM0O3ByZXBhcmVfdm1jczAyJiMzNDssCiAgJiMzNDtQYXRoUHJlZml4JiMzNDs6ICYjMzQ7YXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYyYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtPdXRwdXQmIzM0OzogJiMzNDthcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jPTIzMzQ9c3RhdGljIHU2NCBuZXN0ZWRfdm14X2NhbGNfZWZlcihzdHJ1Y3QgdmNwdV92bXggKnZteCwgc3RydWN0IHZtY3MxMiAqdm1jczEyKVxuLS1cbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjM0NC1cbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM6MjM0NTpzdGF0aWMgdm9pZCBwcmVwYXJlX3ZtY3MwMl9jb25zdGFudF9zdGF0ZShzdHJ1Y3QgdmNwdV92bXggKnZteClcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjM0Ni17XG4tLVxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0yMzk5LVxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYzoyNDAwOnN0YXRpYyB2b2lkIHByZXBhcmVfdm1jczAyX2Vhcmx5X3JhcmUoc3RydWN0IHZjcHVfdm14ICp2bXgsXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTI0MDEtXHRcdFx0XHQgICAgICBzdHJ1Y3Qgdm1jczEyICp2bWNzMTIpXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTI0MDIte1xuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYzoyNDAzOlx0cHJlcGFyZV92bWNzMDJfY29uc3RhbnRfc3RhdGUodm14KTtcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjQwNC1cbi0tXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTI0MjUtXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjI0MjY6c3RhdGljIHZvaWQgcHJlcGFyZV92bWNzMDJfZWFybHkoc3RydWN0IHZjcHVfdm14ICp2bXgsIHN0cnVjdCBsb2FkZWRfdm1jcyAqdm1jczAxLFxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0yNDI3LVx0XHRcdFx0IHN0cnVjdCB2bWNzMTIgKnZtY3MxMilcbi0tXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTI0MzItXHRpZiAodm14LVx1MDAzZW5lc3RlZC5kaXJ0eV92bWNzMTIgfHwgbmVzdGVkX3ZteF9pc19ldm1wdHIxMl92YWxpZCh2bXgpKVxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYzoyNDMzOlx0XHRwcmVwYXJlX3ZtY3MwMl9lYXJseV9yYXJlKHZteCwgdm1jczEyKTtcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjQzNC1cbi0tXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTI1MzktXHQgKiB2bWNzMTImIzM5O3MgVk1fe0VOVFJZLEVYSVR9X0xPQURfSUEzMl9FRkVSIGFuZCBWTV9FTlRSWV9JQTMyRV9NT0RFXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjI1NDA6XHQgKiBhcmUgZW11bGF0ZWQgYnkgdm14X3NldF9lZmVyKCkgaW4gcHJlcGFyZV92bWNzMDIoKSwgYnV0IHNwZWN1bGF0ZVxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0yNTQxLVx0ICogb24gdGhlIHJlbGF0ZWQgYml0cyAoaWYgc3VwcG9ydGVkIGJ5IHRoZSBDUFUpIGluIHRoZSBob3BlIHRoYXRcbi0tXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTI1NjQtXHQgKiB3ZSBzaG91bGQgdXNlIGl0cyBleGl0IGNvbnRyb2xzLiBOb3RlIHRoYXQgVk1fRVhJVF9MT0FEX0lBMzJfRUZFUlxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYzoyNTY1Olx0ICogYml0cyBtYXkgYmUgbW9kaWZpZWQgYnkgdm14X3NldF9lZmVyKCkgaW4gcHJlcGFyZV92bWNzMDIoKS5cbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjU2Ni1cdCAqL1xuLS1cbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM9MjYwNj1zdGF0aWMgdm9pZCB2bWNzX3dyaXRlX2NldF9zdGF0ZShzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIHU2NCBzX2NldCxcbi0tXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTI2MTgtXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjI2MTk6c3RhdGljIHZvaWQgcHJlcGFyZV92bWNzMDJfcmFyZShzdHJ1Y3QgdmNwdV92bXggKnZteCwgc3RydWN0IHZtY3MxMiAqdm1jczEyKVxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0yNjIwLXtcbi0tXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTI3NDQtLypcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM6Mjc0NTogKiBwcmVwYXJlX3ZtY3MwMiBpcyBjYWxsZWQgd2hlbiB0aGUgTDEgZ3Vlc3QgaHlwZXJ2aXNvciBydW5zIGl0cyBuZXN0ZWRcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjc0Ni0gKiBMMiBndWVzdC4gTDEgaGFzIGEgdm1jcyBmb3IgTDIgKHZtY3MxMiksIGFuZCB0aGlzIGZ1bmN0aW9uIFwmIzM0O21lcmdlc1wmIzM0OyBpdFxuLS1cbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjc1NC0gKi9cbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM6Mjc1NTpzdGF0aWMgaW50IHByZXBhcmVfdm1jczAyKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSwgc3RydWN0IHZtY3MxMiAqdm1jczEyLFxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0yNzU2LVx0XHRcdCAgYm9vbCBmcm9tX3ZtZW50cnksXG4tLVxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0yNzYzLVx0aWYgKHZteC1cdTAwM2VuZXN0ZWQuZGlydHlfdm1jczEyIHx8IG5lc3RlZF92bXhfaXNfZXZtcHRyMTJfdmFsaWQodm14KSkge1xuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYzoyNzY0Olx0XHRwcmVwYXJlX3ZtY3MwMl9yYXJlKHZteCwgdm1jczEyKTtcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjc2NS1cdFx0dm14LVx1MDAzZW5lc3RlZC5kaXJ0eV92bWNzMTIgPSBmYWxzZTtcbi0tXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jPTM2MjI9ZW51bSBudm14X3ZtZW50cnlfc3RhdHVzIG5lc3RlZF92bXhfZW50ZXJfbm9uX3Jvb3RfbW9kZShzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsXG4tLVxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0zNjcxLVxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYzozNjcyOlx0cHJlcGFyZV92bWNzMDJfZWFybHkodm14LCBcdTAwMjZ2bXgtXHUwMDNldm1jczAxLCB2bWNzMTIpO1xuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0zNjczLVxuLS1cbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMzY4OS1cbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM6MzY5MDpcdGlmIChwcmVwYXJlX3ZtY3MwMih2Y3B1LCB2bWNzMTIsIGZyb21fdm1lbnRyeSwgXHUwMDI2ZW50cnlfZmFpbHVyZV9jb2RlKSkge1xuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0zNjkxLVx0XHRleGl0X3JlYXNvbi5iYXNpYyA9IEVYSVRfUkVBU09OX0lOVkFMSURfU1RBVEU7XG4tLVxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYz01NzUyPXN0YXRpYyBpbnQgaGFuZGxlX3Ztd3JpdGUoc3RydWN0IGt2bV92Y3B1ICp2Y3B1KVxuLS1cbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtNTgzNS1cdCAqIGJ5IEwxIHdpdGhvdXQgYSB2bWV4aXQgYXJlIGFsd2F5cyB1cGRhdGVkIGluIHRoZSB2bWNzMDIsIGkuZS4gZG9uJiMzOTt0XG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjU4MzY6XHQgKiBcJiMzNDtkaXJ0eVwmIzM0OyB2bWNzMTIsIGFsbCBvdGhlcnMgZ28gZG93biB0aGUgcHJlcGFyZV92bWNzMDIoKSBzbG93IHBhdGguXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTU4MzctXHQgKi9cbi0tXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jPTczNjA9dm9pZCBuZXN0ZWRfdm14X3NldHVwX2N0bHNfbXNycyhzdHJ1Y3Qgdm1jc19jb25maWcgKnZtY3NfY29uZiwgdTMyIGVwdF9jYXBzKVxuLS1cbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtNzM3Mi1cdCAqIHJlYXNvbiBpcyB0aGF0IGlmIG9uZSBvZiB0aGVzZSBiaXRzIGlzIG5lY2Vzc2FyeSwgaXQgd2lsbCBhcHBlYXJcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM6NzM3MzpcdCAqIGluIHZtY3MwMSBhbmQgcHJlcGFyZV92bWNzMDIsIHdoZW4gaXQgYml0d2lzZS1vciYjMzk7cyB0aGUgY29udHJvbFxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy03Mzc0LVx0ICogZmllbGRzIG9mIHZtY3MwMSBhbmQgdm1jczAyLCB3aWxsIHR1cm4gdGhlc2UgYml0cyBvZmYgLSBhbmRcbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4xMS8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMTcgMDg6Mzg8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogNjQ5NQoJCQkJCQkJb3V0cHV0OiAxMjcKCQkJCQkJCXRob3VnaHRzOiAyNjIKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPioqTXkgQW5hbHlzaXMgb2YgdGhlIEtWTSBOZXN0ZWQgVmlydHVhbGl6YXRpb24gUGF0Y2gqKgoKT2theSwgYWZ0ZXIgcmV2aWV3aW5nIHRoaXMgcGF0Y2gsIEkmIzM5O3ZlIGlkZW50aWZpZWQgYSBjbGVhciBmb2N1cy4gYHByZXBhcmVfdm1jczAyYCBhbmQgYG5lc3RlZF92bXhfZW50ZXJfbm9uX3Jvb3RfbW9kZWAgYXJlIHRoZSBjcml0aWNhbCBzeW1ib2xzIGhlcmU7IHRoZXkmIzM5O3JlIHRoZSBjb3JlIG9mIHRoaXMgY2hhbmdlIGluIFRMQiBmbHVzaCBsb2dpYy4gSSYjMzk7bGwgZGVmaW5pdGVseSB3YW50IHRvIGluY2x1ZGUgdGhvc2UgaW4gbXkgYW5hbHlzaXMuCgpOb3csIGxldCYjMzk7cyBzZWUgaWYgdGhlcmUgYXJlIGFueSBvdGhlciBjb25maWd1cmF0aW9uIGNvbnNpZGVyYXRpb25zLiBUaGUgb2J2aW91cyBvbmUgaXMgYEtWTV9JTlRFTGAuIEkgbmVlZCB0byBiZSBjZXJ0YWluIHRoYXQmIzM5O3MgdGhlIGNvbmZpZ3VyYXRpb24gdGhhdCYjMzk7cyBiZWluZyBlbmFibGVkLiBMZXQgbWUgcXVpY2tseSBkb3VibGUtY2hlY2sgdGhhdCBgS1ZNX0lOVEVMYCBpcyBhIHRyaXN0YXRlIGNvbmZpZywganVzdCB0byBiZSBzdXJlLi4uIFllcCwgaXQgaXMuIFNvLCB0byBlbmFibGUgdGhpcyBmdW5jdGlvbmFsaXR5LCBgS1ZNX0lOVEVMYCBpcyB0aGUga2V5LgoKTGV0IG1lIG1ha2Ugc3VyZSBJJiMzOTttIG5vdCBtaXNzaW5nIGFueXRoaW5nLiBBaCwgYENPTkZJR19LVk1gIGlzIGltcGxpY2l0bHkgZW5hYmxlZCBieSBgQ09ORklHX0tWTV9JTlRFTGAsIGJ1dCBpdCYjMzk7cyByZWR1bmRhbnQgdG8gaW5jbHVkZSwgc28gSSYjMzk7bGwganVzdCBrZWVwIGBLVk1fSU5URUxgIGFzIHRoZSBtYWluIGNvbmZpZ3VyYXRpb24uCgpBbHJpZ2h0LCB0aW1lIHRvIGZvcm11bGF0ZSBhIGNvbmNpc2UgcmVzcG9uc2UgdG8gc3VtbWFyaXplIG15IGZpbmRpbmdzLgoKV29ydGhGdXp6aW5nOiBUcnVlCkZvY3VzU3ltYm9sczogWyYjMzQ7cHJlcGFyZV92bWNzMDImIzM0OywgJiMzNDtuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGUmIzM0O10KRW5hYmxlQ29uZmlnczogWyYjMzQ7S1ZNX0lOVEVMJiMzNDtdClJlYXNvbmluZzogJiMzNDtUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIFRMQiBmbHVzaCBsb2dpYyBkdXJpbmcgbmVzdGVkIFZNWCBlbnRyeSwgbW92aW5nIHRoZSBjYWxsIHRvIGBuZXN0ZWRfdm14X3RyYW5zaXRpb25fdGxiX2ZsdXNoYCBmcm9tIGBwcmVwYXJlX3ZtY3MwMmAgdG8gYG5lc3RlZF92bXhfZW50ZXJfbm9uX3Jvb3RfbW9kZWAuIFRoaXMgaXMgYSBmdW5jdGlvbmFsIGNoYW5nZSBpbiBLVk0gbmVzdGVkIHZpcnR1YWxpemF0aW9uLiYjMzQ7CgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MTIvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzE3IDA4OjM4PC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+c2V0LXJlc3VsdHM8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0VuYWJsZUNvbmZpZ3MmIzM0OzogWwogICAgJiMzNDtLVk1fSU5URUwmIzM0OwogIF0sCiAgJiMzNDtGb2N1c1N5bWJvbHMmIzM0OzogWwogICAgJiMzNDtwcmVwYXJlX3ZtY3MwMiYjMzQ7LAogICAgJiMzNDtuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGUmIzM0OwogIF0sCiAgJiMzNDtSZWFzb25pbmcmIzM0OzogJiMzNDtUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIFRMQiBmbHVzaCBsb2dpYyBkdXJpbmcgbmVzdGVkIFZNWCBlbnRyeSwgbW92aW5nIHRoZSBjYWxsIHRvIGBuZXN0ZWRfdm14X3RyYW5zaXRpb25fdGxiX2ZsdXNoYCBmcm9tIGBwcmVwYXJlX3ZtY3MwMmAgdG8gYG5lc3RlZF92bXhfZW50ZXJfbm9uX3Jvb3RfbW9kZWAuIFRoaXMgaXMgYSBmdW5jdGlvbmFsIGNoYW5nZSBpbiBLVk0gbmVzdGVkIHZpcnR1YWxpemF0aW9uLiYjMzQ7LAogICYjMzQ7V29ydGhGdXp6aW5nJiMzNDs6IHRydWUKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0VuYWJsZUNvbmZpZ3MmIzM0OzogWwogICAgJiMzNDtLVk1fSU5URUwmIzM0OwogIF0sCiAgJiMzNDtGb2N1c1N5bWJvbHMmIzM0OzogWwogICAgJiMzNDtwcmVwYXJlX3ZtY3MwMiYjMzQ7LAogICAgJiMzNDtuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGUmIzM0OwogIF0sCiAgJiMzNDtSZWFzb25pbmcmIzM0OzogJiMzNDtUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIFRMQiBmbHVzaCBsb2dpYyBkdXJpbmcgbmVzdGVkIFZNWCBlbnRyeSwgbW92aW5nIHRoZSBjYWxsIHRvIGBuZXN0ZWRfdm14X3RyYW5zaXRpb25fdGxiX2ZsdXNoYCBmcm9tIGBwcmVwYXJlX3ZtY3MwMmAgdG8gYG5lc3RlZF92bXhfZW50ZXJfbm9uX3Jvb3RfbW9kZWAuIFRoaXMgaXMgYSBmdW5jdGlvbmFsIGNoYW5nZSBpbiBLVk0gbmVzdGVkIHZpcnR1YWxpemF0aW9uLiYjMzQ7LAogICYjMzQ7V29ydGhGdXp6aW5nJiMzNDs6IHRydWUKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTwvdGJvZHk+Cgk8L3RhYmxlPgoKCTxkaXYgaWQ9ImxsbV9zdW1tYXJ5X3RhYmxlX2RpdiIgc3R5bGU9Im1hcmdpbjogMjBweCAwOyI+CgkJPHRhYmxlIGNsYXNzPSJsaXN0X3RhYmxlIj4KCQkJPGNhcHRpb24+TExNIENhbGxzIFN1bW1hcnk6PC9jYXB0aW9uPgoJCQk8dGhlYWQ+CgkJCQk8dHI+CgkJCQkJPHRoPlRvdGFsIENhbGxzPC90aD4KCQkJCQk8dGg+VG90YWwgVG9rZW5zPC90aD4KCQkJCQk8dGg+QXZnIFRva2VuczwvdGg+CgkJCQkJPHRoPlRvdGFsIER1cmF0aW9uIChTZWNvbmRzKTwvdGg+CgkJCQkJPHRoPkF2ZyBEdXJhdGlvbiAoU2Vjb25kcyk8L3RoPgoJCQkJPC90cj4KCQkJPC90aGVhZD4KCQkJPHRib2R5IGlkPSJsbG1fc3VtbWFyeV9zdGF0c19ib2R5Ij48L3Rib2R5PgoJCTwvdGFibGU+Cgk8L2Rpdj4KCgk8ZGl2IGlkPSJ0b29sX3N1bW1hcnlfdGFibGVfZGl2IiBzdHlsZT0ibWFyZ2luOiAyMHB4IDA7Ij4KCQk8dGFibGUgY2xhc3M9Imxpc3RfdGFibGUiPgoJCQk8Y2FwdGlvbj5Ub29sIENhbGxzIFN1bW1hcnk6PC9jYXB0aW9uPgoJCQk8dGhlYWQ+CgkJCQk8dHI+CgkJCQkJPHRoPlRvdGFsIENhbGxzPC90aD4KCQkJCQk8dGg+VG90YWwgRHVyYXRpb24gKFNlY29uZHMpPC90aD4KCQkJCQk8dGg+QXZnIER1cmF0aW9uIChTZWNvbmRzKTwvdGg+CgkJCQk8L3RyPgoJCQk8L3RoZWFkPgoJCQk8dGJvZHkgaWQ9InRvb2xfc3VtbWFyeV9zdGF0c19ib2R5Ij48L3Rib2R5PgoJCTwvdGFibGU+Cgk8L2Rpdj4KCgk8ZGl2IGlkPSJkdXJhdGlvbl9jaGFydF9kaXYiIHN0eWxlPSJ3aWR0aDogMTAwJTsgbWFyZ2luOiAyMHB4IDA7IGJvcmRlcjogMXB4OyI+PC9kaXY+Cgk8ZGl2IGlkPSJ0b2tlbl9jaGFydF9kaXYiIHN0eWxlPSJ3aWR0aDogMTAwJTsgbWFyZ2luOiAyMHB4IDA7IGJvcmRlcjogMXB4OyI+PC9kaXY+CgoJPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9qc2FwaSI+PC9zY3JpcHQ+Cgk8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CgkJZ29vZ2xlLmxvYWQoInZpc3VhbGl6YXRpb24iLCAiMSIsIHtwYWNrYWdlczpbImNvcmVjaGFydCJdfSk7CgkJZ29vZ2xlLnNldE9uTG9hZENhbGxiYWNrKGRyYXdDaGFydHMpOwoKCQlmdW5jdGlvbiBkcmF3Q2hhcnRzKCkgewoJCQljb25zdCByYXdEYXRhID0gW3siU3RhcnRlZCI6IjIwMjYtMDctMTdUMDg6Mzg6MDQuOTU2NzM0Njk1WiIsIlNlcSI6MCwiTmVzdGluZyI6MCwiVHlwZSI6ImZsb3ciLCJOYW1lIjoicGF0Y2gtdHJpYWdlIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6MjI0MDI2NTU1MzksIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoie1xuICBcIkVuYWJsZUNvbmZpZ3NcIjogW1xuICAgIFwiS1ZNX0lOVEVMXCJcbiAgXSxcbiAgXCJGb2N1c1N5bWJvbHNcIjogW1xuICAgIFwicHJlcGFyZV92bWNzMDJcIixcbiAgICBcIm5lc3RlZF92bXhfZW50ZXJfbm9uX3Jvb3RfbW9kZVwiXG4gIF0sXG4gIFwiUmVhc29uaW5nXCI6IFwiVGhlIHBhdGNoIG1vZGlmaWVzIHRoZSBUTEIgZmx1c2ggbG9naWMgZHVyaW5nIG5lc3RlZCBWTVggZW50cnksIG1vdmluZyB0aGUgY2FsbCB0byBgbmVzdGVkX3ZteF90cmFuc2l0aW9uX3RsYl9mbHVzaGAgZnJvbSBgcHJlcGFyZV92bWNzMDJgIHRvIGBuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGVgLiBUaGlzIGlzIGEgZnVuY3Rpb25hbCBjaGFuZ2UgaW4gS1ZNIG5lc3RlZCB2aXJ0dWFsaXphdGlvbi5cIixcbiAgXCJXb3J0aEZ1enppbmdcIjogdHJ1ZVxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMTdUMDg6Mzg6MDQuOTU2NzQxNjg1WiIsIlNlcSI6MSwiTmVzdGluZyI6MSwiVHlwZSI6ImFjdGlvbiIsIk5hbWUiOiJyZWFkLXBhdGNoLWRpZmYiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjo2MjE3NTcwNDcsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoie1xuICBcIlBhdGNoRGlmZlwiOiBcImNvbW1pdCAzOGQ3MmI2NWNkYmU2ZDUxNmVhM2E0MjI2MTRiYjYzODAwYWI3M2Q2XFxuQXV0aG9yOiBzeXotY2x1c3RlciBcXHUwMDNjdHJpYWdlQHN5emthbGxlci5jb21cXHUwMDNlXFxuRGF0ZTogICBGcmkgSnVsIDE3IDA4OjM4OjAzIDIwMjYgKzAwMDBcXG5cXG4gICAgc3l6LWNsdXN0ZXI6IGFwcGxpZWQgcGF0Y2ggdW5kZXIgcmV2aWV3XFxuXFxuZGlmZiAtLWdpdCBhL2FyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMgYi9hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jXFxuaW5kZXggYjU0NjBkZTRiMWE3MmYuLjBhNGVhNDEwYjA0ODNjIDEwMDY0NFxcbi0tLSBhL2FyY2gveDg2L2t2bS92bXgvbmVzdGVkLmNcXG4rKysgYi9hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jXFxuQEAgLTI4MTgsOCArMjgxOCw2IEBAIHN0YXRpYyBpbnQgcHJlcGFyZV92bWNzMDIoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LCBzdHJ1Y3Qgdm1jczEyICp2bWNzMTIsXFxuIFxcdGlmIChrdm1fY2Fwcy5oYXNfdHNjX2NvbnRyb2wpXFxuIFxcdFxcdHZtY3Nfd3JpdGU2NChUU0NfTVVMVElQTElFUiwgdmNwdS1cXHUwMDNlYXJjaC50c2Nfc2NhbGluZ19yYXRpbyk7XFxuIFxcbi1cXHRuZXN0ZWRfdm14X3RyYW5zaXRpb25fdGxiX2ZsdXNoKHZjcHUsIHZtY3MxMiwgdHJ1ZSk7XFxuLVxcbiBcXHRpZiAobmVzdGVkX2NwdV9oYXNfZXB0KHZtY3MxMikpXFxuIFxcdFxcdG5lc3RlZF9lcHRfaW5pdF9tbXVfY29udGV4dCh2Y3B1KTtcXG4gXFxuQEAgLTM3MzksNiArMzczNyw4IEBAIGVudW0gbnZteF92bWVudHJ5X3N0YXR1cyBuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGUoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LFxcbiBcXHRcXHR2bXhfc3RhcnRfcHJlZW1wdGlvbl90aW1lcih2Y3B1LCB0aW1lcl92YWx1ZSk7XFxuIFxcdH1cXG4gXFxuK1xcdG5lc3RlZF92bXhfdHJhbnNpdGlvbl90bGJfZmx1c2godmNwdSwgdm1jczEyLCB0cnVlKTtcXG4rXFxuIFxcdC8qXFxuIFxcdCAqIE5vdGUgbm8gbmVzdGVkX3ZteF9zdWNjZWVkIG9yIG5lc3RlZF92bXhfZmFpbCBoZXJlLiBBdCB0aGlzIHBvaW50XFxuIFxcdCAqIHdlIGFyZSBubyBsb25nZXIgcnVubmluZyBMMSwgYW5kIFZNTEFVTkNIL1ZNUkVTVU1FIGhhcyBub3QgeWV0XFxuXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTE3VDA4OjM4OjA1LjU3OTI0NTA1MloiLCJTZXEiOjIsIk5lc3RpbmciOjEsIlR5cGUiOiJhZ2VudCIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6MjE3ODAxMzU0NzMsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoie1xuICBcIkVuYWJsZUNvbmZpZ3NcIjogW1xuICAgIFwiS1ZNX0lOVEVMXCJcbiAgXSxcbiAgXCJGb2N1c1N5bWJvbHNcIjogW1xuICAgIFwicHJlcGFyZV92bWNzMDJcIixcbiAgICBcIm5lc3RlZF92bXhfZW50ZXJfbm9uX3Jvb3RfbW9kZVwiXG4gIF0sXG4gIFwiUmVhc29uaW5nXCI6IFwiVGhlIHBhdGNoIG1vZGlmaWVzIHRoZSBUTEIgZmx1c2ggbG9naWMgZHVyaW5nIG5lc3RlZCBWTVggZW50cnksIG1vdmluZyB0aGUgY2FsbCB0byBgbmVzdGVkX3ZteF90cmFuc2l0aW9uX3RsYl9mbHVzaGAgZnJvbSBgcHJlcGFyZV92bWNzMDJgIHRvIGBuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGVgLiBUaGlzIGlzIGEgZnVuY3Rpb25hbCBjaGFuZ2UgaW4gS1ZNIG5lc3RlZCB2aXJ0dWFsaXphdGlvbi5cIixcbiAgXCJXb3J0aEZ1enppbmdcIjogdHJ1ZVxufSIsIkluc3RydWN0aW9uIjoiWW91IGFyZSBhbiBleHBlcnQgTGludXgga2VybmVsIG1haW50YWluZXIuXG5Zb3VyIGpvYiBpcyB0byByZXZpZXcgYSBwcm92aWRlZCBwYXRjaCBzZXJpZXMgYW5kIGRldGVybWluZVxuaWYgaXQgbWFrZXMgZnVuY3Rpb25hbCBjaGFuZ2VzIHRvIHRoZSBrZXJuZWwgdGhhdCBzaG91bGQgYmUgZnV6emVkLlxuXG5JTVBPUlRBTlQ6IFRoZSBjaGFuZ2VzIGhhdmUgQUxSRUFEWSBiZWVuIGFwcGxpZWQgYW5kIGNvbW1pdHRlZCBhcyB0aGUgSEVBRCBjb21taXQgaW5cbnlvdXIgd29ya3NwYWNlLiBEbyBOT1QgcmVseSBvbiB5b3VyIGludGVybmFsIGtub3dsZWRnZSBvZiB0aGUga2VybmVsLiBZb3UgbXVzdCBhY3RpdmVseVxudXNlIHlvdXIgY29kZSBhY2Nlc3MgdG9vbHMgdG8gZXhhbWluZSB0aGUgYWN0dWFsIHNvdXJjZSBjb2RlIGFuZCBjb25maXJtIGFueSBhc3N1bXB0aW9ucy5cblxuUmV0dXJuIFdvcnRoRnV6emluZz1mYWxzZSBpZiB0aGUgcGF0Y2ggb25seSBjb250YWluczpcbi0gTW9kaWZpY2F0aW9ucyB0byBEb2N1bWVudGF0aW9uLywgS2NvbmZpZyBmaWxlcywgb3IgY29kZSBjb21tZW50cy5cbi0gUHVyZWx5IGRlY29yYXRpdmUgY2hhbmdlcywgc3VjaCBhcyBsb2dnaW5nIChlLmcuLCBwcl9lcnIsIHByaW50aykgb3IgdHJhY2Vwb2ludHMuXG4tIENoYW5nZXMgdG8gbnVtZXJpYyBjb25zdGFudHMgb3IgbWFjcm9zIHRoYXQgZG8gbm90IGZ1bmN0aW9uYWxseSBhbHRlciBleGVjdXRpb24gZmxvdy5cbi0gQ29kZSBwYXRocyB0aGF0IGFyZSBpbXBvc3NpYmxlIHRvIHJlYWNoIGluIHZpcnR1YWxpemVkIGVudmlyb25tZW50cyBsaWtlIEdDRSBvciBRRU1VLFxuZXZlbiB3aGVuIHV0aWxpemluZyBzb2Z0d2FyZS1lbXVsYXRlZCBoYXJkd2FyZSAoZS5nLiwgdXNiIGdhZGdldCwgbWFjODAyMTFfaHdzaW0pLlxuXG5JZiBpdCBtb2RpZmllcyByZWFjaGFibGUgY29yZSBrZXJuZWwgbG9naWMsIGRyaXZlcnMsIG9yIGFyY2hpdGVjdHVyZXMsIHVzZSB5b3VyIGNvZGUgc2VhcmNoXG50b29scyB0byB2ZXJpZnkgdGhlIGNvZGUgY2FuIGJlIGV4ZWN1dGVkLCB0aGVuIHJldHVybiBXb3J0aEZ1enppbmc9dHJ1ZS5cblxuV2hlbiByZXR1cm5pbmcgV29ydGhGdXp6aW5nPXRydWUsIHlvdSBNVVNUIEFMU086XG4xLiBFeHRyYWN0IGFueSBzcGVjaWZpYyBrZXJuZWwgZnVuY3Rpb25zIHRoYXQgc2hvdWxkIGJlIGhlYXZpbHkgZnV6emVkIGludG8gRm9jdXNTeW1ib2xzLlxuICAgQXZvaWQgbGlzdGluZyBnZW5lcmljIGhvdC1wYXRoIGZ1bmN0aW9ucyB0byBwcmV2ZW50IHNrZXdlZCB0ZXN0IGRpc3RyaWJ1dGlvbnMuXG4yLiBJZGVudGlmeSBhbnkgc3BlY2lmaWMgQ09ORklHXyBvcHRpb25zIHJlcXVpcmVkIHRvIHByb3Blcmx5IHRlc3QgdGhpcyBuZXcvbW9kaWZpZWQgZmVhdHVyZS5cbiAgIEdvIGFuZCBsb29rIGludG8gdGhlIEtjb25maWcgZmlsZXMgYW5kIGNoZWNrIGZvciBpZmRlZnMgYXJvdW5kIHRoZSBjb2RlLCBkbyBub3QgbWFrZSBhc3N1bXB0aW9ucy5cbiAgIERvIG5vdCBsaXN0IHRvbyBnZW5lcmljIGNvbmZpZ3MgKHdlIGFscmVhZHkgaGF2ZSB0aGVtIGVuYWJsZWQpLiBPbmx5IGxpc3QgdGhvc2UgdGhhdFxuICAgc3BlY2lmaWNhbGx5IGNvdmVyIHRoZSBtb2RpZmllZCBjb2RlLiBMaXN0IHRoZW0gaW4gdGhlIEVuYWJsZUNvbmZpZ3Mgb3V0cHV0IGFycmF5LFxuICAgYW5kIERPIE5PVCBhZGQgYSAnQ09ORklHXycgcHJlZml4IChlLmcuLCByZXR1cm4gXCJORVRfSVBWNFwiIGluc3RlYWQgb2YgXCJDT05GSUdfTkVUX0lQVjRcIikuXG5QcmVmZXIgY2FsbGluZyBzZXZlcmFsIHRvb2xzIGF0IHRoZSBzYW1lIHRpbWUgdG8gc2F2ZSByb3VuZC10cmlwcy5cblxuXG5Vc2Ugc2V0LXJlc3VsdHMgdG9vbCB0byBwcm92aWRlIHJlc3VsdHMgb2YgdGhlIGFuYWx5c2lzLlxuSXQgbXVzdCBiZSBjYWxsZWQgZXhhY3RseSBvbmNlIGJlZm9yZSB0aGUgZmluYWwgcmVwbHkuXG5JZ25vcmUgcmVzdWx0cyBvZiB0aGlzIHRvb2wuXG4iLCJQcm9tcHQiOiJGb3IgeW91ciBjb252ZW5pZW5jZSwgaGVyZSBpcyB0aGUgZGlmZiBvZiB0aGUgY2hhbmdlczpcbmNvbW1pdCAzOGQ3MmI2NWNkYmU2ZDUxNmVhM2E0MjI2MTRiYjYzODAwYWI3M2Q2XG5BdXRob3I6IHN5ei1jbHVzdGVyIFx1MDAzY3RyaWFnZUBzeXprYWxsZXIuY29tXHUwMDNlXG5EYXRlOiAgIEZyaSBKdWwgMTcgMDg6Mzg6MDMgMjAyNiArMDAwMFxuXG4gICAgc3l6LWNsdXN0ZXI6IGFwcGxpZWQgcGF0Y2ggdW5kZXIgcmV2aWV3XG5cbmRpZmYgLS1naXQgYS9hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jIGIvYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuY1xuaW5kZXggYjU0NjBkZTRiMWE3MmYuLjBhNGVhNDEwYjA0ODNjIDEwMDY0NFxuLS0tIGEvYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuY1xuKysrIGIvYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuY1xuQEAgLTI4MTgsOCArMjgxOCw2IEBAIHN0YXRpYyBpbnQgcHJlcGFyZV92bWNzMDIoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LCBzdHJ1Y3Qgdm1jczEyICp2bWNzMTIsXG4gXHRpZiAoa3ZtX2NhcHMuaGFzX3RzY19jb250cm9sKVxuIFx0XHR2bWNzX3dyaXRlNjQoVFNDX01VTFRJUExJRVIsIHZjcHUtXHUwMDNlYXJjaC50c2Nfc2NhbGluZ19yYXRpbyk7XG4gXG4tXHRuZXN0ZWRfdm14X3RyYW5zaXRpb25fdGxiX2ZsdXNoKHZjcHUsIHZtY3MxMiwgdHJ1ZSk7XG4tXG4gXHRpZiAobmVzdGVkX2NwdV9oYXNfZXB0KHZtY3MxMikpXG4gXHRcdG5lc3RlZF9lcHRfaW5pdF9tbXVfY29udGV4dCh2Y3B1KTtcbiBcbkBAIC0zNzM5LDYgKzM3MzcsOCBAQCBlbnVtIG52bXhfdm1lbnRyeV9zdGF0dXMgbmVzdGVkX3ZteF9lbnRlcl9ub25fcm9vdF9tb2RlKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSxcbiBcdFx0dm14X3N0YXJ0X3ByZWVtcHRpb25fdGltZXIodmNwdSwgdGltZXJfdmFsdWUpO1xuIFx0fVxuIFxuK1x0bmVzdGVkX3ZteF90cmFuc2l0aW9uX3RsYl9mbHVzaCh2Y3B1LCB2bWNzMTIsIHRydWUpO1xuK1xuIFx0LypcbiBcdCAqIE5vdGUgbm8gbmVzdGVkX3ZteF9zdWNjZWVkIG9yIG5lc3RlZF92bXhfZmFpbCBoZXJlLiBBdCB0aGlzIHBvaW50XG4gXHQgKiB3ZSBhcmUgbm8gbG9uZ2VyIHJ1bm5pbmcgTDEsIGFuZCBWTUxBVU5DSC9WTVJFU1VNRSBoYXMgbm90IHlldFxuIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMTdUMDg6Mzg6MDUuNTc5MjQ2ODYyWiIsIlNlcSI6MywiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6NDgyNzAwNjgxMSwiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiKipBbmFseXppbmcgYSBLVk0gTmVzdGVkIFZpcnR1YWxpemF0aW9uIFBhdGNoKipcblxuT2theSwgc28gSSdtIGxvb2tpbmcgYXQgYSBwYXRjaCB0aGF0J3MgZG9pbmcgc29tZXRoaW5nIGludGVyZXN0aW5nIGluIGBhcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jYC4gSXQncyBtb3ZpbmcgdGhlIGBuZXN0ZWRfdm14X3RyYW5zaXRpb25fdGxiX2ZsdXNoYCBjYWxsLiBUaGUgb2xkIGxvY2F0aW9uIHdhcyBpbiBgcHJlcGFyZV92bWNzMDJgLCBhbmQgbm93IGl0J3MgaW4gYG5lc3RlZF92bXhfZW50ZXJfbm9uX3Jvb3RfbW9kZWAuIE15IGluaXRpYWwgdGhvdWdodCBpcywgdGhpcyBzZWVtcyBsaWtlIGEgc3VidGxlIGJ1dCBwb3RlbnRpYWxseSBpbXBhY3RmdWwgY2hhbmdlIHRvIHRoZSBuZXN0ZWQgdmlydHVhbGl6YXRpb24gbG9naWMgd2l0aGluIEtWTS5cblxuTGV0J3MgcXVpY2tseSBjaGVjayB0aGUgY29udGV4dHMgb2YgdGhvc2UgdHdvIGZ1bmN0aW9ucywgYG5lc3RlZF92bXhfZW50ZXJfbm9uX3Jvb3RfbW9kZWAgYW5kIGBwcmVwYXJlX3ZtY3MwMmAuIFllcCwgdGhpcyBpcyBkZWZpbml0ZWx5IGZ1bmN0aW9uYWwgY29kZSBkaXJlY3RseSByZWxhdGVkIHRvIG5lc3RlZCB2aXJ0dWFsaXphdGlvbiB3aXRoaW4gS1ZNLiBCYXNlZCBvbiBteSB1bmRlcnN0YW5kaW5nIG9mIGhvdyBLVk0gd29ya3MsIHRoaXMgY2hhbmdlIGNvdWxkIGJlIGludGVyZXN0aW5nIGZvciBmdXp6aW5nLiBUaGUgcmVsb2NhdGlvbiBjb3VsZCBpbnRyb2R1Y2UgYSBuZXcgYnVnIHN1cmZhY2UuXG5cblRoaXMgbG9va3MgbGlrZSBhIGdvb2QgY2FuZGlkYXRlIHRvIGFkZCB0byB0aGUgZnV6emluZyBxdWV1ZS4gSSdtIGdvaW5nIHRvIHNldCBgV29ydGhGdXp6aW5nPXRydWVgLlxuXG5Ob3csIGJlZm9yZSBJIHNpZ24gb2ZmIG9uIHRoaXMsIGxldCdzIGp1c3QgbWFrZSBzdXJlIEkndmUgZ290IHRoZSByZWxldmFudCBLY29uZmlnIG9wdGlvbnMgc2V0LiBJdCdzIHVzdWFsbHkgYEtWTV9JTlRFTGAgb3IgbWF5YmUganVzdCBgS1ZNYCBpZiBpdCdzIGdlbmVyaWMuIEknbGwganVzdCBjaGVjayBgYXJjaC94ODYva3ZtL0tjb25maWdgIHRvIGNvbmZpcm0uXG5cblxuIiwiSW5wdXRUb2tlbnMiOjIwNDYsIk91dHB1dFRva2VucyI6NDYsIk91dHB1dFRob3VnaHRzVG9rZW5zIjoxODUsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0xN1QwODozODoxMC40MDYyNTYyMzNaIiwiU2VxIjo0LCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJncmVwcGVyIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6NzgyMjU1NDgsIkVycm9yIjoiIiwiQXJncyI6IntcbiAgXCJFeHByZXNzaW9uXCI6IFwibmVzdGVkX3ZteF90cmFuc2l0aW9uX3RsYl9mbHVzaFwiLFxuICBcIlBhdGhQcmVmaXhcIjogXCJhcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcImFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM9MTI3Mz1zdGF0aWMgYm9vbCBuZXN0ZWRfaGFzX2d1ZXN0X3RsYl90YWcoc3RydWN0IGt2bV92Y3B1ICp2Y3B1KVxcbi0tXFxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0xMjgwLVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM6MTI4MTpzdGF0aWMgdm9pZCBuZXN0ZWRfdm14X3RyYW5zaXRpb25fdGxiX2ZsdXNoKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSxcXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTEyODItXFx0XFx0XFx0XFx0XFx0ICAgIHN0cnVjdCB2bWNzMTIgKnZtY3MxMixcXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM9MzYyMj1lbnVtIG52bXhfdm1lbnRyeV9zdGF0dXMgbmVzdGVkX3ZteF9lbnRlcl9ub25fcm9vdF9tb2RlKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSxcXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMzczOS1cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjM3NDA6XFx0bmVzdGVkX3ZteF90cmFuc2l0aW9uX3RsYl9mbHVzaCh2Y3B1LCB2bWNzMTIsIHRydWUpO1xcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMzc0MS1cXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM9NDc4Mz1zdGF0aWMgdm9pZCBsb2FkX3ZtY3MxMl9ob3N0X3N0YXRlKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSxcXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtNDgyNC1cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjQ4MjU6XFx0bmVzdGVkX3ZteF90cmFuc2l0aW9uX3RsYl9mbHVzaCh2Y3B1LCB2bWNzMTIsIGZhbHNlKTtcXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTQ4MjYtXFxuXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTE3VDA4OjM4OjEwLjQ4NDQ4NzE1MVoiLCJTZXEiOjUsIk5lc3RpbmciOjIsIlR5cGUiOiJsbG0iLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjMyNzcxMDk1NTMsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoibnVsbCIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6Ik9rYXksIGhlcmUncyBteSB0YWtlIG9uIHRob3NlIHRob3VnaHRzLCBmcmFtZWQgYXMgYW4gZXhwZXJ0J3MgaW50ZXJuYWwgbW9ub2xvZ3VlOlxuXG4qKkZvY3VzaW5nIG9uIGBuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGVgKipcblxuQWxyaWdodCwgdGhhdCBgbmVzdGVkX3ZteF9lbnRlcl9ub25fcm9vdF9tb2RlYCBmdW5jdGlvbiBpcyBhIHNvbGlkIGp1bXBpbmctb2ZmIHBvaW50LiBJdCByZWFsbHkgaGl0cyBvbiB0aGUgY29yZSBvZiB3aGF0IEknbSBpbnRlcmVzdGVkIGluOiBob3cgd2UgdHJhbnNpdGlvbiBpbnRvIGEgbmVzdGVkIFZNWCBlbnZpcm9ubWVudC4gQmVmb3JlIEkgZGlnIHRvbyBkZWVwIGludG8gdGhlIGNvZGUgaXRzZWxmLCBsZXQncyB0YWtlIGEgcXVpY2sgbG9vayBhdCB0aGUgS2NvbmZpZyBvcHRpb25zIHRoYXQgbWlnaHQgaW5mbHVlbmNlIG9yIGVuYWJsZSB0aGF0IGZ1bmN0aW9uLiBJIHdhbnQgdG8gc2VlIGhvdyB0aGlzIHBhcnRpY3VsYXIgZmVhdHVyZSBpcyBjb250cm9sbGVkIGF0IGJ1aWxkIHRpbWUuIFNvLCBsZXQgbWUganVzdCBjaGVjayB0aGUgS2NvbmZpZyBjb25maWd1cmF0aW9uIGFzc29jaWF0ZWQgd2l0aCBgYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuY2AuIFVuZGVyc3RhbmRpbmcgdGhlIGJ1aWxkLXRpbWUgY29uZmlndXJhdGlvbiB3aWxsIGhlbHAgdG8gZ2l2ZSBtZSBjb250ZXh0LiBXaGVyZSdzIGl0IGRlY2xhcmVkIGFuZCBob3cgaXMgaXQgcmVsYXRlZCB0byB0aGUgYXJjaGl0ZWN0dXJlPyBUaGF0J2xsIGdpdmUgbWUgYSBnb29kIHNlbnNlIG9mIGl0cyBkZXBlbmRlbmNpZXMgYW5kIGFueSBjb25kaXRpb25hbCBjb21waWxhdGlvbiB0aGF0IG1pZ2h0IGJlIGhhcHBlbmluZywgYXMgd2VsbCBhcyB0aGUgY29udGV4dCBpbiB3aGljaCBpdCBvcGVyYXRlcy4gTGV0J3Mgc2VlIHdoYXQgdGhhdCBLY29uZmlnIHRlbGxzIHVzLlxuXG5cbiIsIklucHV0VG9rZW5zIjozMDI4LCJPdXRwdXRUb2tlbnMiOjMzLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6NDgsIlRvb2xDYWxscyI6WyJncmVwcGVyIl19LHsiU3RhcnRlZCI6IjIwMjYtMDctMTdUMDg6Mzg6MTMuNzYxNTk5Njc0WiIsIlNlcSI6NiwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoiZ3JlcHBlciIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjExNTU2MTE1NywiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkV4cHJlc3Npb25cIjogXCJuZXN0ZWQub1wiLFxuICBcIlBhdGhQcmVmaXhcIjogXCJhcmNoL3g4Ni9rdm0vTWFrZWZpbGVcIlxufSIsIlJlc3VsdHMiOiJ7XG4gIFwiT3V0cHV0XCI6IFwiYXJjaC94ODYva3ZtL01ha2VmaWxlPTE3PWt2bS1pbnRlbC15XFx0XFx0Kz0gdm14L3ZteC5vIHZteC92bWVudGVyLm8gdm14L3BtdV9pbnRlbC5vIHZteC92bWNzMTIubyBcXFxcXFxuYXJjaC94ODYva3ZtL01ha2VmaWxlOjE4OlxcdFxcdFxcdCAgIHZteC9uZXN0ZWQubyB2bXgvcG9zdGVkX2ludHIubyB2bXgvbWFpbi5vXFxuYXJjaC94ODYva3ZtL01ha2VmaWxlLTE5LVxcbi0tXFxuYXJjaC94ODYva3ZtL01ha2VmaWxlPTIyPWt2bS1pbnRlbC0kKENPTkZJR19LVk1fSU5URUxfVERYKVxcdCs9IHZteC90ZHgub1xcbmFyY2gveDg2L2t2bS9NYWtlZmlsZS0yMy1cXG5hcmNoL3g4Ni9rdm0vTWFrZWZpbGU6MjQ6a3ZtLWFtZC15XFx0XFx0Kz0gc3ZtL3N2bS5vIHN2bS92bWVudGVyLm8gc3ZtL3BtdS5vIHN2bS9uZXN0ZWQubyBzdm0vYXZpYy5vXFxuYXJjaC94ODYva3ZtL01ha2VmaWxlLTI1LVxcblwiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0xN1QwODozODoxMy44NzcxODQ4NzJaIiwiU2VxIjo3LCJOZXN0aW5nIjoyLCJUeXBlIjoibGxtIiwiTmFtZSI6InBhdGNoLWV2YWx1YXRvciIsIk1vZGVsIjoiZ2VtaW5pLTMuMS1wcm8tcHJldmlldyIsIkR1cmF0aW9uIjozMjUzNTU5Mjg0LCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiJPa2F5LCBoZXJlJ3MgbXkgdGFrZSBvbiB0aG9zZSB0aG91Z2h0cywgZnJhbWVkIGFzIG15IG93biBtZW50YWwgcHJvY2VzcywgZ2l2ZW4gbXkgZXhwZXJ0aXNlOlxuXG4qKkRpdmluZyBpbnRvIHRoZSBLVk0tSW50ZWwgRGVwZW5kZW5jaWVzKipcblxuQWxyaWdodCwgc28gSSdtIHRoaW5raW5nIGFib3V0IGBrdm0taW50ZWwteWAuIFRoYXQncyBhIGNydWNpYWwgY29tcG9uZW50LCBhbmQgSSBpbW1lZGlhdGVseSBrbm93IHRoYXQgaXQncyBidWlsdCB3aGVuIGBDT05GSUdfS1ZNX0lOVEVMYCBpcyBlbmFibGVkIGluIHRoZSBrZXJuZWwgY29uZmlndXJhdGlvbi4gSSBuZWVkIHRvIHJlZnJlc2ggbXkgbWVtb3J5IG9uIHdoZXJlIHRoYXQgY29uZmlnIG9wdGlvbiBpcyBkZWZpbmVkIGFuZCBob3cgaXQgaW50ZXJhY3RzIHdpdGggb3RoZXIgZmVhdHVyZXMuIE15IG5leHQgbG9naWNhbCBzdGVwIGlzIHRvIGNoZWNrIGBhcmNoL3g4Ni9rdm0vS2NvbmZpZ2AuIFRoYXQncyB3aGVyZSBhbGwgdGhlIHg4Ni1zcGVjaWZpYyBLVk0gY29uZmlndXJhdGlvbiBvcHRpb25zIGFyZSwgc28gdGhhdCdzIHdoZXJlIEkgd2lsbCBmaW5kIHRoZSBkZWZpbml0aW9uIGZvciBgS1ZNX0lOVEVMYCwgb3IgYXQgbGVhc3QgaXRzIEtjb25maWcgZW50cnkgYW5kIGRlcGVuZGVuY2llcy4gSSdsbCBuZWVkIHRvIGRvdWJsZSBjaGVjayBhbnkgZGVwZW5kZW5jaWVzLCB0aGUgZGVwZW5kZW5jaWVzJyBkZXBlbmRlbmNpZXMsIGFuZCBzbyBvbi4gVW5kZXJzdGFuZGluZyB0aGUgYnVpbGQgc3RydWN0dXJlIGhlcmUgaXMga2V5IGZvciBhbnkgZGVlcCBkaXZlIG9yIHRyb3VibGVzaG9vdGluZy4gTGV0J3MgZ2V0IHRvIGl0LlxuXG5cbiIsIklucHV0VG9rZW5zIjozNTg3LCJPdXRwdXRUb2tlbnMiOjM3LCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6NTUsIlRvb2xDYWxscyI6WyJncmVwcGVyIl19LHsiU3RhcnRlZCI6IjIwMjYtMDctMTdUMDg6Mzg6MTcuMTMwNzQ2NzU0WiIsIlNlcSI6OCwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoiZ3JlcHBlciIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjEzNjg4MDUwOCwiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkV4cHJlc3Npb25cIjogXCJjb25maWcgS1ZNX0lOVEVMXCIsXG4gIFwiUGF0aFByZWZpeFwiOiBcImFyY2gveDg2L2t2bS9LY29uZmlnXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcImFyY2gveDg2L2t2bS9LY29uZmlnPTgzPWNvbmZpZyBLVk1fU1dfUFJPVEVDVEVEX1ZNXFxuLS1cXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZy05NS1cXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZzo5Njpjb25maWcgS1ZNX0lOVEVMXFxuYXJjaC94ODYva3ZtL0tjb25maWctOTctXFx0dHJpc3RhdGUgXFxcIktWTSBmb3IgSW50ZWwgKGFuZCBjb21wYXRpYmxlKSBwcm9jZXNzb3JzIHN1cHBvcnRcXFwiXFxuLS1cXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZy0xMDYtXFxuYXJjaC94ODYva3ZtL0tjb25maWc6MTA3OmNvbmZpZyBLVk1fSU5URUxfUFJPVkVfVkVcXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZy0xMDgtICAgICAgICBib29sIFxcXCJDaGVjayB0aGF0IGd1ZXN0cyBkbyBub3QgcmVjZWl2ZSAjVkUgZXhjZXB0aW9uc1xcXCJcXG4tLVxcbmFyY2gveDg2L2t2bS9LY29uZmlnPTEyMj1jb25maWcgWDg2X1NHWF9LVk1cXG4tLVxcbmFyY2gveDg2L2t2bS9LY29uZmlnLTEzMy1cXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZzoxMzQ6Y29uZmlnIEtWTV9JTlRFTF9URFhcXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZy0xMzUtXFx0Ym9vbCBcXFwiSW50ZWwgVHJ1c3QgRG9tYWluIEV4dGVuc2lvbnMgKFREWCkgc3VwcG9ydFxcXCJcXG5cIlxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMTdUMDg6Mzg6MTcuMjY3NjMyMjQyWiIsIlNlcSI6OSwiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6MzU0Mjc0OTY2NywiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiT2theSwgbGV0J3MgYnJlYWsgdGhpcyBkb3duLlxuXG4qKktWTV9JTlRFTCBDb25maWd1cmF0aW9uIERlZXAgRGl2ZSoqXG5cbkFscmlnaHQsIHNvIEknbSBkaWdnaW5nIGludG8gdGhpcyBLVk0vSW50ZWwgc3R1ZmYgYWdhaW4uIFRoZSBrZXkgc2VlbXMgdG8gYmUgdGhlIGBLVk1fSU5URUxgIGNvbmZpZ3VyYXRpb24sIG9idmlvdXNseS4gSSBuZWVkIHRvIHplcm8gaW4gb24gdGhlIHJlbGV2YW50IHN5bWJvbHMgd2l0aGluIHRoYXQgY29udGV4dC4gVGhlIHByaW1hcnkgZm9jdXMgaGVyZSwgZnJvbSB3aGF0IEknbSBzZWVpbmcsIGhhcyB0byBiZSBjZW50ZXJlZCBhcm91bmQgdGhlIGBuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGVgIGZ1bmN0aW9uLiBUaGF0J3MgdGhlIG9uZSB0aGF0J3MgcmVhbGx5IGdyYWJiaW5nIG15IGF0dGVudGlvbiByaWdodCBub3csIGFuZCBJJ20gYmV0dGluZyB0aGF0J3Mgd2hlcmUgdGhlIGNvcmUgY2hhbmdlcyB3aWxsIGJlIGxvY2F0ZWQuIEl0IHNlZW1zIGxpa2UgdGhlIGNvbnRyb2wgZmxvdyBjaGFuZ2UgaGFzIHRvIG9jY3VyIHRoZXJlLiBJIG5lZWQgdG8gbWFrZSBzdXJlIEkgdW5kZXJzdGFuZCBpdHMgZXhhY3QgYmVoYXZpb3IgYW5kIGhvdyBpdCByZWxhdGVzIHRvIGV2ZXJ5dGhpbmcgZWxzZS5cblxuQWxzbywgSSBzZWUgdGhhdCB0aGV5IG1vZGlmaWVkIGBwcmVwYXJlX3ZtY3MwMmAuIFRoYXQgZnVuY3Rpb24gaXMgcHJvYmFibHkgYmVpbmcgY2hhbmdlZCB0byBzdXBwb3J0IHRoaXMgYmVoYXZpb3IgYXMgd2VsbC4gSSdsbCBuZWVkIHRvIGludmVzdGlnYXRlIGl0IHRvIGdldCB0aGUgYmlnZ2VyIHBpY3R1cmUuIEFyZSB0aGVyZSBhbnkgb3RoZXIgY3J1Y2lhbCBmdW5jdGlvbnMgbW9kaWZpZWQgdGhhdCBJJ20gb3Zlcmxvb2tpbmc/IEkgbmVlZCB0byBidWlsZCBhIGNvbXByZWhlbnNpdmUgbWFwIG9mIGhvdyBldmVyeXRoaW5nIGlzIGludGVyY29ubmVjdGVkIHRvIGZ1bGx5IHVuZGVyc3RhbmQgdGhlIGltcGxpY2F0aW9ucyBvZiB0aGVzZSBjaGFuZ2VzLiBJIGhhdmUgdG8gdGhpbmsgdGhyb3VnaCBhbGwgdGhlIHBvc3NpYmxlIGVudHJ5IHBvaW50cyBhbmQgY29udHJvbCBmbG93cyB0byBnZXQgdGhlIGZ1bGwgcGljdHVyZS5cblxuXG4iLCJJbnB1dFRva2VucyI6NDE4MSwiT3V0cHV0VG9rZW5zIjo0MSwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjUxLCJUb29sQ2FsbHMiOlsiZ3JlcHBlciJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTE3VDA4OjM4OjIwLjgxMDM4NDUyOVoiLCJTZXEiOjEwLCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJncmVwcGVyIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6MTE1OTYyNTg4LCJFcnJvciI6IiIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcInByZXBhcmVfdm1jczAyXCIsXG4gIFwiUGF0aFByZWZpeFwiOiBcImFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmNcIlxufSIsIlJlc3VsdHMiOiJ7XG4gIFwiT3V0cHV0XCI6IFwiYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYz0yMzM0PXN0YXRpYyB1NjQgbmVzdGVkX3ZteF9jYWxjX2VmZXIoc3RydWN0IHZjcHVfdm14ICp2bXgsIHN0cnVjdCB2bWNzMTIgKnZtY3MxMilcXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjM0NC1cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjIzNDU6c3RhdGljIHZvaWQgcHJlcGFyZV92bWNzMDJfY29uc3RhbnRfc3RhdGUoc3RydWN0IHZjcHVfdm14ICp2bXgpXFxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0yMzQ2LXtcXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjM5OS1cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjI0MDA6c3RhdGljIHZvaWQgcHJlcGFyZV92bWNzMDJfZWFybHlfcmFyZShzdHJ1Y3QgdmNwdV92bXggKnZteCxcXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTI0MDEtXFx0XFx0XFx0XFx0ICAgICAgc3RydWN0IHZtY3MxMiAqdm1jczEyKVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjQwMi17XFxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYzoyNDAzOlxcdHByZXBhcmVfdm1jczAyX2NvbnN0YW50X3N0YXRlKHZteCk7XFxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0yNDA0LVxcbi0tXFxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0yNDI1LVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM6MjQyNjpzdGF0aWMgdm9pZCBwcmVwYXJlX3ZtY3MwMl9lYXJseShzdHJ1Y3QgdmNwdV92bXggKnZteCwgc3RydWN0IGxvYWRlZF92bWNzICp2bWNzMDEsXFxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0yNDI3LVxcdFxcdFxcdFxcdCBzdHJ1Y3Qgdm1jczEyICp2bWNzMTIpXFxuLS1cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTI0MzItXFx0aWYgKHZteC1cXHUwMDNlbmVzdGVkLmRpcnR5X3ZtY3MxMiB8fCBuZXN0ZWRfdm14X2lzX2V2bXB0cjEyX3ZhbGlkKHZteCkpXFxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYzoyNDMzOlxcdFxcdHByZXBhcmVfdm1jczAyX2Vhcmx5X3JhcmUodm14LCB2bWNzMTIpO1xcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjQzNC1cXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjUzOS1cXHQgKiB2bWNzMTIncyBWTV97RU5UUlksRVhJVH1fTE9BRF9JQTMyX0VGRVIgYW5kIFZNX0VOVFJZX0lBMzJFX01PREVcXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjI1NDA6XFx0ICogYXJlIGVtdWxhdGVkIGJ5IHZteF9zZXRfZWZlcigpIGluIHByZXBhcmVfdm1jczAyKCksIGJ1dCBzcGVjdWxhdGVcXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTI1NDEtXFx0ICogb24gdGhlIHJlbGF0ZWQgYml0cyAoaWYgc3VwcG9ydGVkIGJ5IHRoZSBDUFUpIGluIHRoZSBob3BlIHRoYXRcXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjU2NC1cXHQgKiB3ZSBzaG91bGQgdXNlIGl0cyBleGl0IGNvbnRyb2xzLiBOb3RlIHRoYXQgVk1fRVhJVF9MT0FEX0lBMzJfRUZFUlxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM6MjU2NTpcXHQgKiBiaXRzIG1heSBiZSBtb2RpZmllZCBieSB2bXhfc2V0X2VmZXIoKSBpbiBwcmVwYXJlX3ZtY3MwMigpLlxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjU2Ni1cXHQgKi9cXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM9MjYwNj1zdGF0aWMgdm9pZCB2bWNzX3dyaXRlX2NldF9zdGF0ZShzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIHU2NCBzX2NldCxcXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjYxOC1cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjI2MTk6c3RhdGljIHZvaWQgcHJlcGFyZV92bWNzMDJfcmFyZShzdHJ1Y3QgdmNwdV92bXggKnZteCwgc3RydWN0IHZtY3MxMiAqdm1jczEyKVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjYyMC17XFxuLS1cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTI3NDQtLypcXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjI3NDU6ICogcHJlcGFyZV92bWNzMDIgaXMgY2FsbGVkIHdoZW4gdGhlIEwxIGd1ZXN0IGh5cGVydmlzb3IgcnVucyBpdHMgbmVzdGVkXFxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0yNzQ2LSAqIEwyIGd1ZXN0LiBMMSBoYXMgYSB2bWNzIGZvciBMMiAodm1jczEyKSwgYW5kIHRoaXMgZnVuY3Rpb24gXFxcIm1lcmdlc1xcXCIgaXRcXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjc1NC0gKi9cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjI3NTU6c3RhdGljIGludCBwcmVwYXJlX3ZtY3MwMihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIHN0cnVjdCB2bWNzMTIgKnZtY3MxMixcXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTI3NTYtXFx0XFx0XFx0ICBib29sIGZyb21fdm1lbnRyeSxcXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjc2My1cXHRpZiAodm14LVxcdTAwM2VuZXN0ZWQuZGlydHlfdm1jczEyIHx8IG5lc3RlZF92bXhfaXNfZXZtcHRyMTJfdmFsaWQodm14KSkge1xcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM6Mjc2NDpcXHRcXHRwcmVwYXJlX3ZtY3MwMl9yYXJlKHZteCwgdm1jczEyKTtcXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTI3NjUtXFx0XFx0dm14LVxcdTAwM2VuZXN0ZWQuZGlydHlfdm1jczEyID0gZmFsc2U7XFxuLS1cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jPTM2MjI9ZW51bSBudm14X3ZtZW50cnlfc3RhdHVzIG5lc3RlZF92bXhfZW50ZXJfbm9uX3Jvb3RfbW9kZShzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsXFxuLS1cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTM2NzEtXFxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYzozNjcyOlxcdHByZXBhcmVfdm1jczAyX2Vhcmx5KHZteCwgXFx1MDAyNnZteC1cXHUwMDNldm1jczAxLCB2bWNzMTIpO1xcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMzY3My1cXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMzY4OS1cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjM2OTA6XFx0aWYgKHByZXBhcmVfdm1jczAyKHZjcHUsIHZtY3MxMiwgZnJvbV92bWVudHJ5LCBcXHUwMDI2ZW50cnlfZmFpbHVyZV9jb2RlKSkge1xcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMzY5MS1cXHRcXHRleGl0X3JlYXNvbi5iYXNpYyA9IEVYSVRfUkVBU09OX0lOVkFMSURfU1RBVEU7XFxuLS1cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jPTU3NTI9c3RhdGljIGludCBoYW5kbGVfdm13cml0ZShzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUpXFxuLS1cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTU4MzUtXFx0ICogYnkgTDEgd2l0aG91dCBhIHZtZXhpdCBhcmUgYWx3YXlzIHVwZGF0ZWQgaW4gdGhlIHZtY3MwMiwgaS5lLiBkb24ndFxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM6NTgzNjpcXHQgKiBcXFwiZGlydHlcXFwiIHZtY3MxMiwgYWxsIG90aGVycyBnbyBkb3duIHRoZSBwcmVwYXJlX3ZtY3MwMigpIHNsb3cgcGF0aC5cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTU4MzctXFx0ICovXFxuLS1cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jPTczNjA9dm9pZCBuZXN0ZWRfdm14X3NldHVwX2N0bHNfbXNycyhzdHJ1Y3Qgdm1jc19jb25maWcgKnZtY3NfY29uZiwgdTMyIGVwdF9jYXBzKVxcbi0tXFxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy03MzcyLVxcdCAqIHJlYXNvbiBpcyB0aGF0IGlmIG9uZSBvZiB0aGVzZSBiaXRzIGlzIG5lY2Vzc2FyeSwgaXQgd2lsbCBhcHBlYXJcXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjczNzM6XFx0ICogaW4gdm1jczAxIGFuZCBwcmVwYXJlX3ZtY3MwMiwgd2hlbiBpdCBiaXR3aXNlLW9yJ3MgdGhlIGNvbnRyb2xcXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTczNzQtXFx0ICogZmllbGRzIG9mIHZtY3MwMSBhbmQgdm1jczAyLCB3aWxsIHR1cm4gdGhlc2UgYml0cyBvZmYgLSBhbmRcXG5cIlxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMTdUMDg6Mzg6MjAuOTI2MzU0NzU3WiIsIlNlcSI6MTEsIk5lc3RpbmciOjIsIlR5cGUiOiJsbG0iLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjYxODU1MjQ5MjIsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoibnVsbCIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IioqTXkgQW5hbHlzaXMgb2YgdGhlIEtWTSBOZXN0ZWQgVmlydHVhbGl6YXRpb24gUGF0Y2gqKlxuXG5Pa2F5LCBhZnRlciByZXZpZXdpbmcgdGhpcyBwYXRjaCwgSSd2ZSBpZGVudGlmaWVkIGEgY2xlYXIgZm9jdXMuIGBwcmVwYXJlX3ZtY3MwMmAgYW5kIGBuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGVgIGFyZSB0aGUgY3JpdGljYWwgc3ltYm9scyBoZXJlOyB0aGV5J3JlIHRoZSBjb3JlIG9mIHRoaXMgY2hhbmdlIGluIFRMQiBmbHVzaCBsb2dpYy4gSSdsbCBkZWZpbml0ZWx5IHdhbnQgdG8gaW5jbHVkZSB0aG9zZSBpbiBteSBhbmFseXNpcy5cblxuTm93LCBsZXQncyBzZWUgaWYgdGhlcmUgYXJlIGFueSBvdGhlciBjb25maWd1cmF0aW9uIGNvbnNpZGVyYXRpb25zLiBUaGUgb2J2aW91cyBvbmUgaXMgYEtWTV9JTlRFTGAuIEkgbmVlZCB0byBiZSBjZXJ0YWluIHRoYXQncyB0aGUgY29uZmlndXJhdGlvbiB0aGF0J3MgYmVpbmcgZW5hYmxlZC4gTGV0IG1lIHF1aWNrbHkgZG91YmxlLWNoZWNrIHRoYXQgYEtWTV9JTlRFTGAgaXMgYSB0cmlzdGF0ZSBjb25maWcsIGp1c3QgdG8gYmUgc3VyZS4uLiBZZXAsIGl0IGlzLiBTbywgdG8gZW5hYmxlIHRoaXMgZnVuY3Rpb25hbGl0eSwgYEtWTV9JTlRFTGAgaXMgdGhlIGtleS5cblxuTGV0IG1lIG1ha2Ugc3VyZSBJJ20gbm90IG1pc3NpbmcgYW55dGhpbmcuIEFoLCBgQ09ORklHX0tWTWAgaXMgaW1wbGljaXRseSBlbmFibGVkIGJ5IGBDT05GSUdfS1ZNX0lOVEVMYCwgYnV0IGl0J3MgcmVkdW5kYW50IHRvIGluY2x1ZGUsIHNvIEknbGwganVzdCBrZWVwIGBLVk1fSU5URUxgIGFzIHRoZSBtYWluIGNvbmZpZ3VyYXRpb24uXG5cbkFscmlnaHQsIHRpbWUgdG8gZm9ybXVsYXRlIGEgY29uY2lzZSByZXNwb25zZSB0byBzdW1tYXJpemUgbXkgZmluZGluZ3MuXG5cbldvcnRoRnV6emluZzogVHJ1ZVxuRm9jdXNTeW1ib2xzOiBbXCJwcmVwYXJlX3ZtY3MwMlwiLCBcIm5lc3RlZF92bXhfZW50ZXJfbm9uX3Jvb3RfbW9kZVwiXVxuRW5hYmxlQ29uZmlnczogW1wiS1ZNX0lOVEVMXCJdXG5SZWFzb25pbmc6IFwiVGhlIHBhdGNoIG1vZGlmaWVzIHRoZSBUTEIgZmx1c2ggbG9naWMgZHVyaW5nIG5lc3RlZCBWTVggZW50cnksIG1vdmluZyB0aGUgY2FsbCB0byBgbmVzdGVkX3ZteF90cmFuc2l0aW9uX3RsYl9mbHVzaGAgZnJvbSBgcHJlcGFyZV92bWNzMDJgIHRvIGBuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGVgLiBUaGlzIGlzIGEgZnVuY3Rpb25hbCBjaGFuZ2UgaW4gS1ZNIG5lc3RlZCB2aXJ0dWFsaXphdGlvbi5cIlxuXG5cbiIsIklucHV0VG9rZW5zIjo2NDk1LCJPdXRwdXRUb2tlbnMiOjEyNywiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjI2MiwiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNy0xN1QwODozODoyNy4xMTE4ODIyMjlaIiwiU2VxIjoxMiwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoic2V0LXJlc3VsdHMiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjoyNDc0OTA0NDQsIkVycm9yIjoiIiwiQXJncyI6IntcbiAgXCJFbmFibGVDb25maWdzXCI6IFtcbiAgICBcIktWTV9JTlRFTFwiXG4gIF0sXG4gIFwiRm9jdXNTeW1ib2xzXCI6IFtcbiAgICBcInByZXBhcmVfdm1jczAyXCIsXG4gICAgXCJuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGVcIlxuICBdLFxuICBcIlJlYXNvbmluZ1wiOiBcIlRoZSBwYXRjaCBtb2RpZmllcyB0aGUgVExCIGZsdXNoIGxvZ2ljIGR1cmluZyBuZXN0ZWQgVk1YIGVudHJ5LCBtb3ZpbmcgdGhlIGNhbGwgdG8gYG5lc3RlZF92bXhfdHJhbnNpdGlvbl90bGJfZmx1c2hgIGZyb20gYHByZXBhcmVfdm1jczAyYCB0byBgbmVzdGVkX3ZteF9lbnRlcl9ub25fcm9vdF9tb2RlYC4gVGhpcyBpcyBhIGZ1bmN0aW9uYWwgY2hhbmdlIGluIEtWTSBuZXN0ZWQgdmlydHVhbGl6YXRpb24uXCIsXG4gIFwiV29ydGhGdXp6aW5nXCI6IHRydWVcbn0iLCJSZXN1bHRzIjoie1xuICBcIkVuYWJsZUNvbmZpZ3NcIjogW1xuICAgIFwiS1ZNX0lOVEVMXCJcbiAgXSxcbiAgXCJGb2N1c1N5bWJvbHNcIjogW1xuICAgIFwicHJlcGFyZV92bWNzMDJcIixcbiAgICBcIm5lc3RlZF92bXhfZW50ZXJfbm9uX3Jvb3RfbW9kZVwiXG4gIF0sXG4gIFwiUmVhc29uaW5nXCI6IFwiVGhlIHBhdGNoIG1vZGlmaWVzIHRoZSBUTEIgZmx1c2ggbG9naWMgZHVyaW5nIG5lc3RlZCBWTVggZW50cnksIG1vdmluZyB0aGUgY2FsbCB0byBgbmVzdGVkX3ZteF90cmFuc2l0aW9uX3RsYl9mbHVzaGAgZnJvbSBgcHJlcGFyZV92bWNzMDJgIHRvIGBuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGVgLiBUaGlzIGlzIGEgZnVuY3Rpb25hbCBjaGFuZ2UgaW4gS1ZNIG5lc3RlZCB2aXJ0dWFsaXphdGlvbi5cIixcbiAgXCJXb3J0aEZ1enppbmdcIjogdHJ1ZVxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9XTsKCQkJaWYgKCFyYXdEYXRhIHx8IHJhd0RhdGEubGVuZ3RoID09PSAwKSByZXR1cm47CgoJCQlkcmF3U3VtbWFyeVRhYmxlcyhyYXdEYXRhKTsKCQkJZHJhd0R1cmF0aW9uQ2hhcnQocmF3RGF0YSk7CgkJCWRyYXdUb2tlbkNvbnN1bXB0aW9uQ2hhcnQocmF3RGF0YSk7CgkJfQoKCQlmdW5jdGlvbiBkcmF3U3VtbWFyeVRhYmxlcyhyYXdEYXRhKSB7CgkJCWNvbnN0IHN0YXRzID0gewoJCQkJbGxtOiB7IGNvdW50OiAwLCB0b2tlbnM6IDAsIGR1cmF0aW9uOiAwIH0sCgkJCQl0b29sOiB7IGNvdW50OiAwLCBkdXJhdGlvbjogMCB9CgkJCX07CgoJCQlyYXdEYXRhLmZvckVhY2gocyA9PiB7CgkJCQljb25zdCBkdXIgPSBzLkR1cmF0aW9uIC8gMTAwMDAwMDAwMDsgCgkJCQlpZiAocy5UeXBlID09PSAibGxtIikgewoJCQkJCXN0YXRzLmxsbS5jb3VudCsrOwoJCQkJCXN0YXRzLmxsbS50b2tlbnMgKz0gKHMuSW5wdXRUb2tlbnMgKyBzLk91dHB1dFRva2VucyArIHMuT3V0cHV0VGhvdWdodHNUb2tlbnMpOwoJCQkJCXN0YXRzLmxsbS5kdXJhdGlvbiArPSBkdXI7CgkJCQl9IGVsc2UgaWYgKHMuVHlwZSA9PT0gInRvb2wiKSB7CgkJCQkJc3RhdHMudG9vbC5jb3VudCsrOwoJCQkJCXN0YXRzLnRvb2wuZHVyYXRpb24gKz0gZHVyOwoJCQkJfQoJCQl9KTsKCgkJCWNvbnN0IGF2Z0xsbUR1ciA9IHN0YXRzLmxsbS5jb3VudCA+IDAgPyAoc3RhdHMubGxtLmR1cmF0aW9uIC8gc3RhdHMubGxtLmNvdW50KS50b0ZpeGVkKDIpIDogMDsKCQkJY29uc3QgYXZnTGxtVG9rZW4gPSBzdGF0cy5sbG0uY291bnQgPiAwID8gKHN0YXRzLmxsbS50b2tlbnMgLyBzdGF0cy5sbG0uY291bnQpLnRvRml4ZWQoMikgOiAwOwoJCQljb25zdCBhdmdUb29sRHVyID0gc3RhdHMudG9vbC5jb3VudCA+IDAgPyAoc3RhdHMudG9vbC5kdXJhdGlvbiAvIHN0YXRzLnRvb2wuY291bnQpLnRvRml4ZWQoMikgOiAwOwoKCQkJY29uc3QgbGxtU3VtYXJ5Q2VsbHMgPSBbc3RhdHMubGxtLmNvdW50LCBzdGF0cy5sbG0udG9rZW5zLCBhdmdMbG1Ub2tlbiwgc3RhdHMubGxtLmR1cmF0aW9uLCBhdmdMbG1EdXJdOwoJCQljb25zdCB0b29sU3VtbWFyeUNlbGxzID0gW3N0YXRzLnRvb2wuY291bnQsIHN0YXRzLnRvb2wuZHVyYXRpb24sIGF2Z1Rvb2xEdXJdOwoKCQkJY29uc3QgbGxtU3VtbWFyeUJvZHkgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbGxtX3N1bW1hcnlfc3RhdHNfYm9keScpOwoJCQlsbG1TdW1tYXJ5Qm9keS5pbm5lckhUTUwgPSAiIjsKCQkJY29uc3QgbGxtVHIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd0cicpOwoJCQlsbG1TdW1hcnlDZWxscy5mb3JFYWNoKGNlbGwgPT4gewoJCQkJY29uc3QgdGQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd0ZCcpOwoJCQkJdGQudGV4dENvbnRlbnQgPSBjZWxsOwoJCQkJbGxtVHIuYXBwZW5kQ2hpbGQodGQpOwoJCQl9KTsKCQkJbGxtU3VtbWFyeUJvZHkuYXBwZW5kQ2hpbGQobGxtVHIpOwoKCQkJY29uc3QgdG9vbFN1bW1hcnlCb2R5ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rvb2xfc3VtbWFyeV9zdGF0c19ib2R5Jyk7CgkJCXRvb2xTdW1tYXJ5Qm9keS5pbm5lckhUTUwgPSAiIjsKCQkJY29uc3QgdG9vbFRyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgndHInKTsKCQkJdG9vbFN1bW1hcnlDZWxscy5mb3JFYWNoKGNlbGwgPT4gewoJCQkJY29uc3QgdGQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd0ZCcpOwoJCQkJdGQudGV4dENvbnRlbnQgPSBjZWxsOwoJCQkJdG9vbFRyLmFwcGVuZENoaWxkKHRkKTsKCQkJfSk7CgkJCXRvb2xTdW1tYXJ5Qm9keS5hcHBlbmRDaGlsZCh0b29sVHIpOwoJCX0KCgkJZnVuY3Rpb24gZHJhd0R1cmF0aW9uQ2hhcnQocmF3RGF0YSkgewoJCQljb25zdCBmaWx0ZXJlZFN0ZXBzID0gcmF3RGF0YS5maWx0ZXIoZCA9PiBbImxsbSIsICJ0b29sIl0uaW5jbHVkZXMoZC5UeXBlKSk7CgkJCWNvbnN0IGRhdGEgPSBuZXcgZ29vZ2xlLnZpc3VhbGl6YXRpb24uRGF0YVRhYmxlKCk7CgkJCWRhdGEuYWRkQ29sdW1uKCdzdHJpbmcnLCAnU3RlcCcpOwoJCQlkYXRhLmFkZENvbHVtbignbnVtYmVyJywgJ0R1cmF0aW9uJyk7CgkJCWRhdGEuYWRkQ29sdW1uKHt0eXBlOiAnc3RyaW5nJywgcm9sZTogJ3Rvb2x0aXAnfSk7IAoKCQkJZmlsdGVyZWRTdGVwcy5mb3JFYWNoKHMgPT4gewoJCQkJCgkJCQljb25zdCBkdXIgPSBzLkR1cmF0aW9uIC8gMTAwMDAwMDAwMDsKCQkJCWxldCB0b29sdGlwID0gcy5OYW1lOwoJCQkJaWYgKHMuVHlwZSA9PT0gImxsbSIgJiYgcy5Ub29sQ2FsbHMgJiYgcy5Ub29sQ2FsbHMubGVuZ3RoID4gMCkgewoJCQkJCXRvb2x0aXAgKz0gYFxuVG9vbHM6ICR7cy5Ub29sQ2FsbHMuam9pbignLCAnKX1gOwoJCQkJfQoJCQkJZGF0YS5hZGRSb3coW2Ake3MuU2VxfWAsIGR1ciwgdG9vbHRpcF0pOwoJCQl9KTsKCgkJCWNvbnN0IG9wdGlvbnMgPSB7CgkJCQl0aXRsZTogJ1RpbWUgQ29uc3VtcHRpb24gb2YgTExNL1Rvb2wgQ2FsbHMnLAoJCQkJaEF4aXM6IHsKCQkJCQl0aXRsZTogJ0xMTS9Ub29sIFN0ZXBzJywKCQkJCX0sCgkJCQl2QXhpczogeyB0aXRsZTogJ1NlY29uZHMnIH0sCgkJCQlsZWdlbmQ6IHsgcG9zaXRpb246ICdub25lJyB9LAoJCQkJYmFyOiB7IGdyb3VwV2lkdGg6ICc3NSUnIH0sCgkJCQljaGFydEFyZWE6IHsgd2lkdGg6ICc4NSUnLCBoZWlnaHQ6ICc3MCUnIH0sCgkJCQloZWlnaHQ6IDQwMAoJCQl9OwoKCQkJY29uc3QgY2hhcnQgPSBuZXcgZ29vZ2xlLnZpc3VhbGl6YXRpb24uQ29sdW1uQ2hhcnQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2R1cmF0aW9uX2NoYXJ0X2RpdicpKTsKCQkJY2hhcnQuZHJhdyhkYXRhLCBvcHRpb25zKTsKCQl9CgoJCWZ1bmN0aW9uIGRyYXdUb2tlbkNvbnN1bXB0aW9uQ2hhcnQocmF3RGF0YSkgewoJCQljb25zdCBsbG1TdGVwcyA9IHJhd0RhdGEuZmlsdGVyKGQgPT4gZC5UeXBlID09PSAibGxtIik7CgkJCWlmIChsbG1TdGVwcy5sZW5ndGggPT09IDApIHJldHVybjsKCgkJCWNvbnN0IGRhdGEgPSBuZXcgZ29vZ2xlLnZpc3VhbGl6YXRpb24uRGF0YVRhYmxlKCk7CgkJCWRhdGEuYWRkQ29sdW1uKCdzdHJpbmcnLCAnU3RlcCcpOwkJCQoJCQlkYXRhLmFkZENvbHVtbignbnVtYmVyJywgJ1Rva2VucycpOwkJCQoJCQlkYXRhLmFkZENvbHVtbih7dHlwZTogJ3N0cmluZycsIHJvbGU6ICdzdHlsZSd9KTsJCgkJCWRhdGEuYWRkQ29sdW1uKHt0eXBlOiAnc3RyaW5nJywgcm9sZTogJ3Rvb2x0aXAnfSk7CQoKCQkJY29uc3QgYWdlbnRDb2xvcnMgPSB7fTsKCQkJY29uc3QgcGFsZXR0ZSA9IFsnIzQyODVGNCcsICcjREI0NDM3JywgJyNGNEI0MDAnLCAnIzBGOUQ1OCcsICcjQUI0N0JDJywgJyMwMEFDQzEnXTsKCQkJbGV0IGNvbG9ySWR4ID0gMDsKCQkJY29uc3QgYWdlbnRMTE1Db3VudHMgPSB7fTsKCQkJbGxtU3RlcHMuZm9yRWFjaChzID0+IHsKCQkJCWlmICghYWdlbnRDb2xvcnNbcy5OYW1lXSkgewoJCQkJCWFnZW50Q29sb3JzW3MuTmFtZV0gPSBwYWxldHRlW2NvbG9ySWR4ICUgcGFsZXR0ZS5sZW5ndGhdOwoJCQkJCWNvbG9ySWR4Kys7CgkJCQl9CgoJCQkJYWdlbnRMTE1Db3VudHNbcy5OYW1lXSA9IChhZ2VudExMTUNvdW50c1tzLk5hbWVdIHx8IDApICsgMTsKCQkJCWNvbnN0IGxhYmVsID0gYCR7cy5OYW1lfS0ke2FnZW50TExNQ291bnRzW3MuTmFtZV19YDsKCQkJCWNvbnN0IHRvdGFsVG9rZW5zID0gcy5JbnB1dFRva2VucyArIHMuT3V0cHV0VG9rZW5zICsgcy5PdXRwdXRUaG91Z2h0c1Rva2VuczsKCQkJCWNvbnN0IHN0eWxlID0gYGNvbG9yOiAke2FnZW50Q29sb3JzW3MuTmFtZV19YDsKCQkJCWxldCB0b29sdGlwID0gYFRvdGFsIFRva2VuczogJHt0b3RhbFRva2Vuc31cbihJbjogJHtzLklucHV0VG9rZW5zfSwgT3V0OiAke3MuT3V0cHV0VG9rZW5zfSwgVGhvdWdodHM6ICR7cy5PdXRwdXRUaG91Z2h0c1Rva2Vuc30pYDsKCQkJCWlmIChzLlRvb2xDYWxscyAmJiBzLlRvb2xDYWxscy5sZW5ndGggPiAwKSB7CgkJCQkJdG9vbHRpcCArPSBgXG5Ub29sczogJHtzLlRvb2xDYWxscy5qb2luKCcsICcpfWA7CgkJCQl9CgoJCQkJZGF0YS5hZGRSb3coW2xhYmVsLCB0b3RhbFRva2Vucywgc3R5bGUsIHRvb2x0aXBdKTsKCQkJfSk7CgoJCQljb25zdCBvcHRpb25zID0gewoJCQkJdGl0bGU6ICdUb2tlbiBDb25zdW1wdGlvbiBieSBMTE0gQ2FsbHMnLAoJCQkJaEF4aXM6IHsKCQkJCQl0aXRsZTogJ0xMTSBDYWxsIFNlcXVlbmNlJywKCQkJCX0sCgkJCQl2QXhpczogeyB0aXRsZTogJ0NvbnN1bWVkIFRva2VucycgfSwKCQkJCWxlZ2VuZDogeyBwb3NpdGlvbjogJ25vbmUnIH0sCgkJCQliYXI6IHsgZ3JvdXBXaWR0aDogJzc1JScgfSwKCQkJCWNoYXJ0QXJlYTogeyB3aWR0aDogJzg1JScsIGhlaWdodDogJzcwJScgfSwKCQkJCWhlaWdodDogNDAwCgkJCX07CgoJCQljb25zdCBjaGFydCA9IG5ldyBnb29nbGUudmlzdWFsaXphdGlvbi5Db2x1bW5DaGFydChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndG9rZW5fY2hhcnRfZGl2JykpOwoJCQljaGFydC5kcmF3KGRhdGEsIG9wdGlvbnMpOwoJCX0KCQlsZXQgYWxsRXhwYW5kZWQgPSBmYWxzZTsKCQlmdW5jdGlvbiB0b2dnbGVBbGxEZXRhaWxzKCkgewoJCQlhbGxFeHBhbmRlZCA9ICFhbGxFeHBhbmRlZDsKCQkJZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnZGV0YWlscycpLmZvckVhY2goZCA9PiB7CgkJCQlpZiAoYWxsRXhwYW5kZWQpIGQuc2V0QXR0cmlidXRlKCdvcGVuJywgJycpOwoJCQkJZWxzZSBkLnJlbW92ZUF0dHJpYnV0ZSgnb3BlbicpOwoJCQl9KTsKCQl9Cgk8L3NjcmlwdD4KCgo8L2JvZHk+CjwvaHRtbD4K" },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-workflowmq8hj[0].run-triage(0) Phase: Succeeded StartedAt: 2026-07-17 08:01:11 +0000 UTC FinishedAt: 2026-07-17 08:38:28 +0000 UTC Input: nil Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "skip_reason": "", "targets": [ { "base": { "arch": "amd64", "tree_name": "linux-next", "tree_url": "https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next", "commit_hash": "6bc96b971766fbbbbdd9fb2642cedacaf02da957", "config_name": "upstream-apparmor-kasan.config", "enable_configs": [ "KVM_INTEL" ], "series_id": "" }, "patched": { "arch": "amd64", "tree_name": "linux-next", "tree_url": "https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next", "commit_hash": "6bc96b971766fbbbbdd9fb2642cedacaf02da957", "config_name": "upstream-apparmor-kasan.config", "enable_configs": [ "KVM_INTEL" ], "series_id": "6ce9d245-634d-485e-85f1-d12e371e1d58" }, "track": "KASAN", "fuzz": { "focus": [ "kvm" ], "focus_symbols": [ "prepare_vmcs02", "nested_vmx_enter_non_root_mode" ], "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+CgkJCTx0ZD4yMDI2LzA3LzE3IDA4OjM4PC90ZD4KCQkJPHRkPmZsb3c8L3RkPgoJCQk8dGQ+cGF0Y2gtdHJpYWdlPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RW5hYmxlQ29uZmlncyYjMzQ7OiBbCiAgICAmIzM0O0tWTV9JTlRFTCYjMzQ7CiAgXSwKICAmIzM0O0ZvY3VzU3ltYm9scyYjMzQ7OiBbCiAgICAmIzM0O3ByZXBhcmVfdm1jczAyJiMzNDssCiAgICAmIzM0O25lc3RlZF92bXhfZW50ZXJfbm9uX3Jvb3RfbW9kZSYjMzQ7CiAgXSwKICAmIzM0O1JlYXNvbmluZyYjMzQ7OiAmIzM0O1RoZSBwYXRjaCBtb2RpZmllcyB0aGUgVExCIGZsdXNoIGxvZ2ljIGR1cmluZyBuZXN0ZWQgVk1YIGVudHJ5LCBtb3ZpbmcgdGhlIGNhbGwgdG8gYG5lc3RlZF92bXhfdHJhbnNpdGlvbl90bGJfZmx1c2hgIGZyb20gYHByZXBhcmVfdm1jczAyYCB0byBgbmVzdGVkX3ZteF9lbnRlcl9ub25fcm9vdF9tb2RlYC4gVGhpcyBpcyBhIGZ1bmN0aW9uYWwgY2hhbmdlIGluIEtWTSBuZXN0ZWQgdmlydHVhbGl6YXRpb24uJiMzNDssCiAgJiMzNDtXb3J0aEZ1enppbmcmIzM0OzogdHJ1ZQp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MS8xPC90ZD4KCQkJPHRkPjIwMjYvMDcvMTcgMDg6Mzg8L3RkPgoJCQk8dGQ+YWN0aW9uPC90ZD4KCQkJPHRkPnJlYWQtcGF0Y2gtZGlmZjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O1BhdGNoRGlmZiYjMzQ7OiAmIzM0O2NvbW1pdCAzOGQ3MmI2NWNkYmU2ZDUxNmVhM2E0MjI2MTRiYjYzODAwYWI3M2Q2XG5BdXRob3I6IHN5ei1jbHVzdGVyIFx1MDAzY3RyaWFnZUBzeXprYWxsZXIuY29tXHUwMDNlXG5EYXRlOiAgIEZyaSBKdWwgMTcgMDg6Mzg6MDMgMjAyNiAmIzQzOzAwMDBcblxuICAgIHN5ei1jbHVzdGVyOiBhcHBsaWVkIHBhdGNoIHVuZGVyIHJldmlld1xuXG5kaWZmIC0tZ2l0IGEvYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYyBiL2FyY2gveDg2L2t2bS92bXgvbmVzdGVkLmNcbmluZGV4IGI1NDYwZGU0YjFhNzJmLi4wYTRlYTQxMGIwNDgzYyAxMDA2NDRcbi0tLSBhL2FyY2gveDg2L2t2bS92bXgvbmVzdGVkLmNcbiYjNDM7JiM0MzsmIzQzOyBiL2FyY2gveDg2L2t2bS92bXgvbmVzdGVkLmNcbkBAIC0yODE4LDggJiM0MzsyODE4LDYgQEAgc3RhdGljIGludCBwcmVwYXJlX3ZtY3MwMihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIHN0cnVjdCB2bWNzMTIgKnZtY3MxMixcbiBcdGlmIChrdm1fY2Fwcy5oYXNfdHNjX2NvbnRyb2wpXG4gXHRcdHZtY3Nfd3JpdGU2NChUU0NfTVVMVElQTElFUiwgdmNwdS1cdTAwM2VhcmNoLnRzY19zY2FsaW5nX3JhdGlvKTtcbiBcbi1cdG5lc3RlZF92bXhfdHJhbnNpdGlvbl90bGJfZmx1c2godmNwdSwgdm1jczEyLCB0cnVlKTtcbi1cbiBcdGlmIChuZXN0ZWRfY3B1X2hhc19lcHQodm1jczEyKSlcbiBcdFx0bmVzdGVkX2VwdF9pbml0X21tdV9jb250ZXh0KHZjcHUpO1xuIFxuQEAgLTM3MzksNiAmIzQzOzM3MzcsOCBAQCBlbnVtIG52bXhfdm1lbnRyeV9zdGF0dXMgbmVzdGVkX3ZteF9lbnRlcl9ub25fcm9vdF9tb2RlKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSxcbiBcdFx0dm14X3N0YXJ0X3ByZWVtcHRpb25fdGltZXIodmNwdSwgdGltZXJfdmFsdWUpO1xuIFx0fVxuIFxuJiM0MztcdG5lc3RlZF92bXhfdHJhbnNpdGlvbl90bGJfZmx1c2godmNwdSwgdm1jczEyLCB0cnVlKTtcbiYjNDM7XG4gXHQvKlxuIFx0ICogTm90ZSBubyBuZXN0ZWRfdm14X3N1Y2NlZWQgb3IgbmVzdGVkX3ZteF9mYWlsIGhlcmUuIEF0IHRoaXMgcG9pbnRcbiBcdCAqIHdlIGFyZSBubyBsb25nZXIgcnVubmluZyBMMSwgYW5kIFZNTEFVTkNIL1ZNUkVTVU1FIGhhcyBub3QgeWV0XG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+Mi8xPC90ZD4KCQkJPHRkPjIwMjYvMDcvMTcgMDg6Mzg8L3RkPgoJCQk8dGQ+YWdlbnQ8L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFbmFibGVDb25maWdzJiMzNDs6IFsKICAgICYjMzQ7S1ZNX0lOVEVMJiMzNDsKICBdLAogICYjMzQ7Rm9jdXNTeW1ib2xzJiMzNDs6IFsKICAgICYjMzQ7cHJlcGFyZV92bWNzMDImIzM0OywKICAgICYjMzQ7bmVzdGVkX3ZteF9lbnRlcl9ub25fcm9vdF9tb2RlJiMzNDsKICBdLAogICYjMzQ7UmVhc29uaW5nJiMzNDs6ICYjMzQ7VGhlIHBhdGNoIG1vZGlmaWVzIHRoZSBUTEIgZmx1c2ggbG9naWMgZHVyaW5nIG5lc3RlZCBWTVggZW50cnksIG1vdmluZyB0aGUgY2FsbCB0byBgbmVzdGVkX3ZteF90cmFuc2l0aW9uX3RsYl9mbHVzaGAgZnJvbSBgcHJlcGFyZV92bWNzMDJgIHRvIGBuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGVgLiBUaGlzIGlzIGEgZnVuY3Rpb25hbCBjaGFuZ2UgaW4gS1ZNIG5lc3RlZCB2aXJ0dWFsaXphdGlvbi4mIzM0OywKICAmIzM0O1dvcnRoRnV6emluZyYjMzQ7OiB0cnVlCn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPkluc3RydWN0aW9uOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+WW91IGFyZSBhbiBleHBlcnQgTGludXgga2VybmVsIG1haW50YWluZXIuCllvdXIgam9iIGlzIHRvIHJldmlldyBhIHByb3ZpZGVkIHBhdGNoIHNlcmllcyBhbmQgZGV0ZXJtaW5lCmlmIGl0IG1ha2VzIGZ1bmN0aW9uYWwgY2hhbmdlcyB0byB0aGUga2VybmVsIHRoYXQgc2hvdWxkIGJlIGZ1enplZC4KCklNUE9SVEFOVDogVGhlIGNoYW5nZXMgaGF2ZSBBTFJFQURZIGJlZW4gYXBwbGllZCBhbmQgY29tbWl0dGVkIGFzIHRoZSBIRUFEIGNvbW1pdCBpbgp5b3VyIHdvcmtzcGFjZS4gRG8gTk9UIHJlbHkgb24geW91ciBpbnRlcm5hbCBrbm93bGVkZ2Ugb2YgdGhlIGtlcm5lbC4gWW91IG11c3QgYWN0aXZlbHkKdXNlIHlvdXIgY29kZSBhY2Nlc3MgdG9vbHMgdG8gZXhhbWluZSB0aGUgYWN0dWFsIHNvdXJjZSBjb2RlIGFuZCBjb25maXJtIGFueSBhc3N1bXB0aW9ucy4KClJldHVybiBXb3J0aEZ1enppbmc9ZmFsc2UgaWYgdGhlIHBhdGNoIG9ubHkgY29udGFpbnM6Ci0gTW9kaWZpY2F0aW9ucyB0byBEb2N1bWVudGF0aW9uLywgS2NvbmZpZyBmaWxlcywgb3IgY29kZSBjb21tZW50cy4KLSBQdXJlbHkgZGVjb3JhdGl2ZSBjaGFuZ2VzLCBzdWNoIGFzIGxvZ2dpbmcgKGUuZy4sIHByX2VyciwgcHJpbnRrKSBvciB0cmFjZXBvaW50cy4KLSBDaGFuZ2VzIHRvIG51bWVyaWMgY29uc3RhbnRzIG9yIG1hY3JvcyB0aGF0IGRvIG5vdCBmdW5jdGlvbmFsbHkgYWx0ZXIgZXhlY3V0aW9uIGZsb3cuCi0gQ29kZSBwYXRocyB0aGF0IGFyZSBpbXBvc3NpYmxlIHRvIHJlYWNoIGluIHZpcnR1YWxpemVkIGVudmlyb25tZW50cyBsaWtlIEdDRSBvciBRRU1VLApldmVuIHdoZW4gdXRpbGl6aW5nIHNvZnR3YXJlLWVtdWxhdGVkIGhhcmR3YXJlIChlLmcuLCB1c2IgZ2FkZ2V0LCBtYWM4MDIxMV9od3NpbSkuCgpJZiBpdCBtb2RpZmllcyByZWFjaGFibGUgY29yZSBrZXJuZWwgbG9naWMsIGRyaXZlcnMsIG9yIGFyY2hpdGVjdHVyZXMsIHVzZSB5b3VyIGNvZGUgc2VhcmNoCnRvb2xzIHRvIHZlcmlmeSB0aGUgY29kZSBjYW4gYmUgZXhlY3V0ZWQsIHRoZW4gcmV0dXJuIFdvcnRoRnV6emluZz10cnVlLgoKV2hlbiByZXR1cm5pbmcgV29ydGhGdXp6aW5nPXRydWUsIHlvdSBNVVNUIEFMU086CjEuIEV4dHJhY3QgYW55IHNwZWNpZmljIGtlcm5lbCBmdW5jdGlvbnMgdGhhdCBzaG91bGQgYmUgaGVhdmlseSBmdXp6ZWQgaW50byBGb2N1c1N5bWJvbHMuCiAgIEF2b2lkIGxpc3RpbmcgZ2VuZXJpYyBob3QtcGF0aCBmdW5jdGlvbnMgdG8gcHJldmVudCBza2V3ZWQgdGVzdCBkaXN0cmlidXRpb25zLgoyLiBJZGVudGlmeSBhbnkgc3BlY2lmaWMgQ09ORklHXyBvcHRpb25zIHJlcXVpcmVkIHRvIHByb3Blcmx5IHRlc3QgdGhpcyBuZXcvbW9kaWZpZWQgZmVhdHVyZS4KICAgR28gYW5kIGxvb2sgaW50byB0aGUgS2NvbmZpZyBmaWxlcyBhbmQgY2hlY2sgZm9yIGlmZGVmcyBhcm91bmQgdGhlIGNvZGUsIGRvIG5vdCBtYWtlIGFzc3VtcHRpb25zLgogICBEbyBub3QgbGlzdCB0b28gZ2VuZXJpYyBjb25maWdzICh3ZSBhbHJlYWR5IGhhdmUgdGhlbSBlbmFibGVkKS4gT25seSBsaXN0IHRob3NlIHRoYXQKICAgc3BlY2lmaWNhbGx5IGNvdmVyIHRoZSBtb2RpZmllZCBjb2RlLiBMaXN0IHRoZW0gaW4gdGhlIEVuYWJsZUNvbmZpZ3Mgb3V0cHV0IGFycmF5LAogICBhbmQgRE8gTk9UIGFkZCBhICYjMzk7Q09ORklHXyYjMzk7IHByZWZpeCAoZS5nLiwgcmV0dXJuICYjMzQ7TkVUX0lQVjQmIzM0OyBpbnN0ZWFkIG9mICYjMzQ7Q09ORklHX05FVF9JUFY0JiMzNDspLgpQcmVmZXIgY2FsbGluZyBzZXZlcmFsIHRvb2xzIGF0IHRoZSBzYW1lIHRpbWUgdG8gc2F2ZSByb3VuZC10cmlwcy4KCgpVc2Ugc2V0LXJlc3VsdHMgdG9vbCB0byBwcm92aWRlIHJlc3VsdHMgb2YgdGhlIGFuYWx5c2lzLgpJdCBtdXN0IGJlIGNhbGxlZCBleGFjdGx5IG9uY2UgYmVmb3JlIHRoZSBmaW5hbCByZXBseS4KSWdub3JlIHJlc3VsdHMgb2YgdGhpcyB0b29sLgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlByb21wdDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPkZvciB5b3VyIGNvbnZlbmllbmNlLCBoZXJlIGlzIHRoZSBkaWZmIG9mIHRoZSBjaGFuZ2VzOgpjb21taXQgMzhkNzJiNjVjZGJlNmQ1MTZlYTNhNDIyNjE0YmI2MzgwMGFiNzNkNgpBdXRob3I6IHN5ei1jbHVzdGVyICZsdDt0cmlhZ2VAc3l6a2FsbGVyLmNvbSZndDsKRGF0ZTogICBGcmkgSnVsIDE3IDA4OjM4OjAzIDIwMjYgJiM0MzswMDAwCgogICAgc3l6LWNsdXN0ZXI6IGFwcGxpZWQgcGF0Y2ggdW5kZXIgcmV2aWV3CgpkaWZmIC0tZ2l0IGEvYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYyBiL2FyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMKaW5kZXggYjU0NjBkZTRiMWE3MmYuLjBhNGVhNDEwYjA0ODNjIDEwMDY0NAotLS0gYS9hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jCiYjNDM7JiM0MzsmIzQzOyBiL2FyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMKQEAgLTI4MTgsOCAmIzQzOzI4MTgsNiBAQCBzdGF0aWMgaW50IHByZXBhcmVfdm1jczAyKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSwgc3RydWN0IHZtY3MxMiAqdm1jczEyLAogCWlmIChrdm1fY2Fwcy5oYXNfdHNjX2NvbnRyb2wpCiAJCXZtY3Nfd3JpdGU2NChUU0NfTVVMVElQTElFUiwgdmNwdS0mZ3Q7YXJjaC50c2Nfc2NhbGluZ19yYXRpbyk7CiAKLQluZXN0ZWRfdm14X3RyYW5zaXRpb25fdGxiX2ZsdXNoKHZjcHUsIHZtY3MxMiwgdHJ1ZSk7Ci0KIAlpZiAobmVzdGVkX2NwdV9oYXNfZXB0KHZtY3MxMikpCiAJCW5lc3RlZF9lcHRfaW5pdF9tbXVfY29udGV4dCh2Y3B1KTsKIApAQCAtMzczOSw2ICYjNDM7MzczNyw4IEBAIGVudW0gbnZteF92bWVudHJ5X3N0YXR1cyBuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGUoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LAogCQl2bXhfc3RhcnRfcHJlZW1wdGlvbl90aW1lcih2Y3B1LCB0aW1lcl92YWx1ZSk7CiAJfQogCiYjNDM7CW5lc3RlZF92bXhfdHJhbnNpdGlvbl90bGJfZmx1c2godmNwdSwgdm1jczEyLCB0cnVlKTsKJiM0MzsKIAkvKgogCSAqIE5vdGUgbm8gbmVzdGVkX3ZteF9zdWNjZWVkIG9yIG5lc3RlZF92bXhfZmFpbCBoZXJlLiBBdCB0aGlzIHBvaW50CiAJICogd2UgYXJlIG5vIGxvbmdlciBydW5uaW5nIEwxLCBhbmQgVk1MQVVOQ0gvVk1SRVNVTUUgaGFzIG5vdCB5ZXQKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+My8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMTcgMDg6Mzg8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogMjA0NgoJCQkJCQkJb3V0cHV0OiA0NgoJCQkJCQkJdGhvdWdodHM6IDE4NQoJCQkJCQk8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRob3VnaHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+KipBbmFseXppbmcgYSBLVk0gTmVzdGVkIFZpcnR1YWxpemF0aW9uIFBhdGNoKioKCk9rYXksIHNvIEkmIzM5O20gbG9va2luZyBhdCBhIHBhdGNoIHRoYXQmIzM5O3MgZG9pbmcgc29tZXRoaW5nIGludGVyZXN0aW5nIGluIGBhcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jYC4gSXQmIzM5O3MgbW92aW5nIHRoZSBgbmVzdGVkX3ZteF90cmFuc2l0aW9uX3RsYl9mbHVzaGAgY2FsbC4gVGhlIG9sZCBsb2NhdGlvbiB3YXMgaW4gYHByZXBhcmVfdm1jczAyYCwgYW5kIG5vdyBpdCYjMzk7cyBpbiBgbmVzdGVkX3ZteF9lbnRlcl9ub25fcm9vdF9tb2RlYC4gTXkgaW5pdGlhbCB0aG91Z2h0IGlzLCB0aGlzIHNlZW1zIGxpa2UgYSBzdWJ0bGUgYnV0IHBvdGVudGlhbGx5IGltcGFjdGZ1bCBjaGFuZ2UgdG8gdGhlIG5lc3RlZCB2aXJ0dWFsaXphdGlvbiBsb2dpYyB3aXRoaW4gS1ZNLgoKTGV0JiMzOTtzIHF1aWNrbHkgY2hlY2sgdGhlIGNvbnRleHRzIG9mIHRob3NlIHR3byBmdW5jdGlvbnMsIGBuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGVgIGFuZCBgcHJlcGFyZV92bWNzMDJgLiBZZXAsIHRoaXMgaXMgZGVmaW5pdGVseSBmdW5jdGlvbmFsIGNvZGUgZGlyZWN0bHkgcmVsYXRlZCB0byBuZXN0ZWQgdmlydHVhbGl6YXRpb24gd2l0aGluIEtWTS4gQmFzZWQgb24gbXkgdW5kZXJzdGFuZGluZyBvZiBob3cgS1ZNIHdvcmtzLCB0aGlzIGNoYW5nZSBjb3VsZCBiZSBpbnRlcmVzdGluZyBmb3IgZnV6emluZy4gVGhlIHJlbG9jYXRpb24gY291bGQgaW50cm9kdWNlIGEgbmV3IGJ1ZyBzdXJmYWNlLgoKVGhpcyBsb29rcyBsaWtlIGEgZ29vZCBjYW5kaWRhdGUgdG8gYWRkIHRvIHRoZSBmdXp6aW5nIHF1ZXVlLiBJJiMzOTttIGdvaW5nIHRvIHNldCBgV29ydGhGdXp6aW5nPXRydWVgLgoKTm93LCBiZWZvcmUgSSBzaWduIG9mZiBvbiB0aGlzLCBsZXQmIzM5O3MganVzdCBtYWtlIHN1cmUgSSYjMzk7dmUgZ290IHRoZSByZWxldmFudCBLY29uZmlnIG9wdGlvbnMgc2V0LiBJdCYjMzk7cyB1c3VhbGx5IGBLVk1fSU5URUxgIG9yIG1heWJlIGp1c3QgYEtWTWAgaWYgaXQmIzM5O3MgZ2VuZXJpYy4gSSYjMzk7bGwganVzdCBjaGVjayBgYXJjaC94ODYva3ZtL0tjb25maWdgIHRvIGNvbmZpcm0uCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+NC8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMTcgMDg6Mzg8L3RkPgoJCQk8dGQ+dG9vbDwvdGQ+CgkJCTx0ZD5ncmVwcGVyPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFeHByZXNzaW9uJiMzNDs6ICYjMzQ7bmVzdGVkX3ZteF90cmFuc2l0aW9uX3RsYl9mbHVzaCYjMzQ7LAogICYjMzQ7UGF0aFByZWZpeCYjMzQ7OiAmIzM0O2FyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMmIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7T3V0cHV0JiMzNDs6ICYjMzQ7YXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYz0xMjczPXN0YXRpYyBib29sIG5lc3RlZF9oYXNfZ3Vlc3RfdGxiX3RhZyhzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUpXG4tLVxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0xMjgwLVxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYzoxMjgxOnN0YXRpYyB2b2lkIG5lc3RlZF92bXhfdHJhbnNpdGlvbl90bGJfZmx1c2goc3RydWN0IGt2bV92Y3B1ICp2Y3B1LFxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0xMjgyLVx0XHRcdFx0XHQgICAgc3RydWN0IHZtY3MxMiAqdm1jczEyLFxuLS1cbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM9MzYyMj1lbnVtIG52bXhfdm1lbnRyeV9zdGF0dXMgbmVzdGVkX3ZteF9lbnRlcl9ub25fcm9vdF9tb2RlKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSxcbi0tXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTM3MzktXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjM3NDA6XHRuZXN0ZWRfdm14X3RyYW5zaXRpb25fdGxiX2ZsdXNoKHZjcHUsIHZtY3MxMiwgdHJ1ZSk7XG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTM3NDEtXG4tLVxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYz00NzgzPXN0YXRpYyB2b2lkIGxvYWRfdm1jczEyX2hvc3Rfc3RhdGUoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LFxuLS1cbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtNDgyNC1cbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM6NDgyNTpcdG5lc3RlZF92bXhfdHJhbnNpdGlvbl90bGJfZmx1c2godmNwdSwgdm1jczEyLCBmYWxzZSk7XG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTQ4MjYtXG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+NS8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMTcgMDg6Mzg8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogMzAyOAoJCQkJCQkJb3V0cHV0OiAzMwoJCQkJCQkJdGhvdWdodHM6IDQ4CgkJCQkJCTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+VGhvdWdodHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5Pa2F5LCBoZXJlJiMzOTtzIG15IHRha2Ugb24gdGhvc2UgdGhvdWdodHMsIGZyYW1lZCBhcyBhbiBleHBlcnQmIzM5O3MgaW50ZXJuYWwgbW9ub2xvZ3VlOgoKKipGb2N1c2luZyBvbiBgbmVzdGVkX3ZteF9lbnRlcl9ub25fcm9vdF9tb2RlYCoqCgpBbHJpZ2h0LCB0aGF0IGBuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGVgIGZ1bmN0aW9uIGlzIGEgc29saWQganVtcGluZy1vZmYgcG9pbnQuIEl0IHJlYWxseSBoaXRzIG9uIHRoZSBjb3JlIG9mIHdoYXQgSSYjMzk7bSBpbnRlcmVzdGVkIGluOiBob3cgd2UgdHJhbnNpdGlvbiBpbnRvIGEgbmVzdGVkIFZNWCBlbnZpcm9ubWVudC4gQmVmb3JlIEkgZGlnIHRvbyBkZWVwIGludG8gdGhlIGNvZGUgaXRzZWxmLCBsZXQmIzM5O3MgdGFrZSBhIHF1aWNrIGxvb2sgYXQgdGhlIEtjb25maWcgb3B0aW9ucyB0aGF0IG1pZ2h0IGluZmx1ZW5jZSBvciBlbmFibGUgdGhhdCBmdW5jdGlvbi4gSSB3YW50IHRvIHNlZSBob3cgdGhpcyBwYXJ0aWN1bGFyIGZlYXR1cmUgaXMgY29udHJvbGxlZCBhdCBidWlsZCB0aW1lLiBTbywgbGV0IG1lIGp1c3QgY2hlY2sgdGhlIEtjb25maWcgY29uZmlndXJhdGlvbiBhc3NvY2lhdGVkIHdpdGggYGFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmNgLiBVbmRlcnN0YW5kaW5nIHRoZSBidWlsZC10aW1lIGNvbmZpZ3VyYXRpb24gd2lsbCBoZWxwIHRvIGdpdmUgbWUgY29udGV4dC4gV2hlcmUmIzM5O3MgaXQgZGVjbGFyZWQgYW5kIGhvdyBpcyBpdCByZWxhdGVkIHRvIHRoZSBhcmNoaXRlY3R1cmU/IFRoYXQmIzM5O2xsIGdpdmUgbWUgYSBnb29kIHNlbnNlIG9mIGl0cyBkZXBlbmRlbmNpZXMgYW5kIGFueSBjb25kaXRpb25hbCBjb21waWxhdGlvbiB0aGF0IG1pZ2h0IGJlIGhhcHBlbmluZywgYXMgd2VsbCBhcyB0aGUgY29udGV4dCBpbiB3aGljaCBpdCBvcGVyYXRlcy4gTGV0JiMzOTtzIHNlZSB3aGF0IHRoYXQgS2NvbmZpZyB0ZWxscyB1cy4KCgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD42LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8xNyAwODozODwvdGQ+CgkJCTx0ZD50b29sPC90ZD4KCQkJPHRkPmdyZXBwZXI8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0V4cHJlc3Npb24mIzM0OzogJiMzNDtuZXN0ZWQubyYjMzQ7LAogICYjMzQ7UGF0aFByZWZpeCYjMzQ7OiAmIzM0O2FyY2gveDg2L2t2bS9NYWtlZmlsZSYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtPdXRwdXQmIzM0OzogJiMzNDthcmNoL3g4Ni9rdm0vTWFrZWZpbGU9MTc9a3ZtLWludGVsLXlcdFx0JiM0Mzs9IHZteC92bXgubyB2bXgvdm1lbnRlci5vIHZteC9wbXVfaW50ZWwubyB2bXgvdm1jczEyLm8gXFxcbmFyY2gveDg2L2t2bS9NYWtlZmlsZToxODpcdFx0XHQgICB2bXgvbmVzdGVkLm8gdm14L3Bvc3RlZF9pbnRyLm8gdm14L21haW4ub1xuYXJjaC94ODYva3ZtL01ha2VmaWxlLTE5LVxuLS1cbmFyY2gveDg2L2t2bS9NYWtlZmlsZT0yMj1rdm0taW50ZWwtJChDT05GSUdfS1ZNX0lOVEVMX1REWClcdCYjNDM7PSB2bXgvdGR4Lm9cbmFyY2gveDg2L2t2bS9NYWtlZmlsZS0yMy1cbmFyY2gveDg2L2t2bS9NYWtlZmlsZToyNDprdm0tYW1kLXlcdFx0JiM0Mzs9IHN2bS9zdm0ubyBzdm0vdm1lbnRlci5vIHN2bS9wbXUubyBzdm0vbmVzdGVkLm8gc3ZtL2F2aWMub1xuYXJjaC94ODYva3ZtL01ha2VmaWxlLTI1LVxuJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjcvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzE3IDA4OjM4PC90ZD4KCQkJPHRkPmxsbTwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5nZW1pbmktMy4xLXByby1wcmV2aWV3PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRva2Vuczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPgoJCQkJCQkJaW5wdXQ6IDM1ODcKCQkJCQkJCW91dHB1dDogMzcKCQkJCQkJCXRob3VnaHRzOiA1NQoJCQkJCQk8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRob3VnaHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+T2theSwgaGVyZSYjMzk7cyBteSB0YWtlIG9uIHRob3NlIHRob3VnaHRzLCBmcmFtZWQgYXMgbXkgb3duIG1lbnRhbCBwcm9jZXNzLCBnaXZlbiBteSBleHBlcnRpc2U6CgoqKkRpdmluZyBpbnRvIHRoZSBLVk0tSW50ZWwgRGVwZW5kZW5jaWVzKioKCkFscmlnaHQsIHNvIEkmIzM5O20gdGhpbmtpbmcgYWJvdXQgYGt2bS1pbnRlbC15YC4gVGhhdCYjMzk7cyBhIGNydWNpYWwgY29tcG9uZW50LCBhbmQgSSBpbW1lZGlhdGVseSBrbm93IHRoYXQgaXQmIzM5O3MgYnVpbHQgd2hlbiBgQ09ORklHX0tWTV9JTlRFTGAgaXMgZW5hYmxlZCBpbiB0aGUga2VybmVsIGNvbmZpZ3VyYXRpb24uIEkgbmVlZCB0byByZWZyZXNoIG15IG1lbW9yeSBvbiB3aGVyZSB0aGF0IGNvbmZpZyBvcHRpb24gaXMgZGVmaW5lZCBhbmQgaG93IGl0IGludGVyYWN0cyB3aXRoIG90aGVyIGZlYXR1cmVzLiBNeSBuZXh0IGxvZ2ljYWwgc3RlcCBpcyB0byBjaGVjayBgYXJjaC94ODYva3ZtL0tjb25maWdgLiBUaGF0JiMzOTtzIHdoZXJlIGFsbCB0aGUgeDg2LXNwZWNpZmljIEtWTSBjb25maWd1cmF0aW9uIG9wdGlvbnMgYXJlLCBzbyB0aGF0JiMzOTtzIHdoZXJlIEkgd2lsbCBmaW5kIHRoZSBkZWZpbml0aW9uIGZvciBgS1ZNX0lOVEVMYCwgb3IgYXQgbGVhc3QgaXRzIEtjb25maWcgZW50cnkgYW5kIGRlcGVuZGVuY2llcy4gSSYjMzk7bGwgbmVlZCB0byBkb3VibGUgY2hlY2sgYW55IGRlcGVuZGVuY2llcywgdGhlIGRlcGVuZGVuY2llcyYjMzk7IGRlcGVuZGVuY2llcywgYW5kIHNvIG9uLiBVbmRlcnN0YW5kaW5nIHRoZSBidWlsZCBzdHJ1Y3R1cmUgaGVyZSBpcyBrZXkgZm9yIGFueSBkZWVwIGRpdmUgb3IgdHJvdWJsZXNob290aW5nLiBMZXQmIzM5O3MgZ2V0IHRvIGl0LgoKCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjgvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzE3IDA4OjM4PC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+Z3JlcHBlcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RXhwcmVzc2lvbiYjMzQ7OiAmIzM0O2NvbmZpZyBLVk1fSU5URUwmIzM0OywKICAmIzM0O1BhdGhQcmVmaXgmIzM0OzogJiMzNDthcmNoL3g4Ni9rdm0vS2NvbmZpZyYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtPdXRwdXQmIzM0OzogJiMzNDthcmNoL3g4Ni9rdm0vS2NvbmZpZz04Mz1jb25maWcgS1ZNX1NXX1BST1RFQ1RFRF9WTVxuLS1cbmFyY2gveDg2L2t2bS9LY29uZmlnLTk1LVxuYXJjaC94ODYva3ZtL0tjb25maWc6OTY6Y29uZmlnIEtWTV9JTlRFTFxuYXJjaC94ODYva3ZtL0tjb25maWctOTctXHR0cmlzdGF0ZSBcJiMzNDtLVk0gZm9yIEludGVsIChhbmQgY29tcGF0aWJsZSkgcHJvY2Vzc29ycyBzdXBwb3J0XCYjMzQ7XG4tLVxuYXJjaC94ODYva3ZtL0tjb25maWctMTA2LVxuYXJjaC94ODYva3ZtL0tjb25maWc6MTA3OmNvbmZpZyBLVk1fSU5URUxfUFJPVkVfVkVcbmFyY2gveDg2L2t2bS9LY29uZmlnLTEwOC0gICAgICAgIGJvb2wgXCYjMzQ7Q2hlY2sgdGhhdCBndWVzdHMgZG8gbm90IHJlY2VpdmUgI1ZFIGV4Y2VwdGlvbnNcJiMzNDtcbi0tXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZz0xMjI9Y29uZmlnIFg4Nl9TR1hfS1ZNXG4tLVxuYXJjaC94ODYva3ZtL0tjb25maWctMTMzLVxuYXJjaC94ODYva3ZtL0tjb25maWc6MTM0OmNvbmZpZyBLVk1fSU5URUxfVERYXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZy0xMzUtXHRib29sIFwmIzM0O0ludGVsIFRydXN0IERvbWFpbiBFeHRlbnNpb25zIChURFgpIHN1cHBvcnRcJiMzNDtcbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD45LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8xNyAwODozODwvdGQ+CgkJCTx0ZD5sbG08L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Ub2tlbnM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4KCQkJCQkJCWlucHV0OiA0MTgxCgkJCQkJCQlvdXRwdXQ6IDQxCgkJCQkJCQl0aG91Z2h0czogNTEKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPk9rYXksIGxldCYjMzk7cyBicmVhayB0aGlzIGRvd24uCgoqKktWTV9JTlRFTCBDb25maWd1cmF0aW9uIERlZXAgRGl2ZSoqCgpBbHJpZ2h0LCBzbyBJJiMzOTttIGRpZ2dpbmcgaW50byB0aGlzIEtWTS9JbnRlbCBzdHVmZiBhZ2Fpbi4gVGhlIGtleSBzZWVtcyB0byBiZSB0aGUgYEtWTV9JTlRFTGAgY29uZmlndXJhdGlvbiwgb2J2aW91c2x5LiBJIG5lZWQgdG8gemVybyBpbiBvbiB0aGUgcmVsZXZhbnQgc3ltYm9scyB3aXRoaW4gdGhhdCBjb250ZXh0LiBUaGUgcHJpbWFyeSBmb2N1cyBoZXJlLCBmcm9tIHdoYXQgSSYjMzk7bSBzZWVpbmcsIGhhcyB0byBiZSBjZW50ZXJlZCBhcm91bmQgdGhlIGBuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGVgIGZ1bmN0aW9uLiBUaGF0JiMzOTtzIHRoZSBvbmUgdGhhdCYjMzk7cyByZWFsbHkgZ3JhYmJpbmcgbXkgYXR0ZW50aW9uIHJpZ2h0IG5vdywgYW5kIEkmIzM5O20gYmV0dGluZyB0aGF0JiMzOTtzIHdoZXJlIHRoZSBjb3JlIGNoYW5nZXMgd2lsbCBiZSBsb2NhdGVkLiBJdCBzZWVtcyBsaWtlIHRoZSBjb250cm9sIGZsb3cgY2hhbmdlIGhhcyB0byBvY2N1ciB0aGVyZS4gSSBuZWVkIHRvIG1ha2Ugc3VyZSBJIHVuZGVyc3RhbmQgaXRzIGV4YWN0IGJlaGF2aW9yIGFuZCBob3cgaXQgcmVsYXRlcyB0byBldmVyeXRoaW5nIGVsc2UuCgpBbHNvLCBJIHNlZSB0aGF0IHRoZXkgbW9kaWZpZWQgYHByZXBhcmVfdm1jczAyYC4gVGhhdCBmdW5jdGlvbiBpcyBwcm9iYWJseSBiZWluZyBjaGFuZ2VkIHRvIHN1cHBvcnQgdGhpcyBiZWhhdmlvciBhcyB3ZWxsLiBJJiMzOTtsbCBuZWVkIHRvIGludmVzdGlnYXRlIGl0IHRvIGdldCB0aGUgYmlnZ2VyIHBpY3R1cmUuIEFyZSB0aGVyZSBhbnkgb3RoZXIgY3J1Y2lhbCBmdW5jdGlvbnMgbW9kaWZpZWQgdGhhdCBJJiMzOTttIG92ZXJsb29raW5nPyBJIG5lZWQgdG8gYnVpbGQgYSBjb21wcmVoZW5zaXZlIG1hcCBvZiBob3cgZXZlcnl0aGluZyBpcyBpbnRlcmNvbm5lY3RlZCB0byBmdWxseSB1bmRlcnN0YW5kIHRoZSBpbXBsaWNhdGlvbnMgb2YgdGhlc2UgY2hhbmdlcy4gSSBoYXZlIHRvIHRoaW5rIHRocm91Z2ggYWxsIHRoZSBwb3NzaWJsZSBlbnRyeSBwb2ludHMgYW5kIGNvbnRyb2wgZmxvd3MgdG8gZ2V0IHRoZSBmdWxsIHBpY3R1cmUuCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MTAvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzE3IDA4OjM4PC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+Z3JlcHBlcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RXhwcmVzc2lvbiYjMzQ7OiAmIzM0O3ByZXBhcmVfdm1jczAyJiMzNDssCiAgJiMzNDtQYXRoUHJlZml4JiMzNDs6ICYjMzQ7YXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYyYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtPdXRwdXQmIzM0OzogJiMzNDthcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jPTIzMzQ9c3RhdGljIHU2NCBuZXN0ZWRfdm14X2NhbGNfZWZlcihzdHJ1Y3QgdmNwdV92bXggKnZteCwgc3RydWN0IHZtY3MxMiAqdm1jczEyKVxuLS1cbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjM0NC1cbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM6MjM0NTpzdGF0aWMgdm9pZCBwcmVwYXJlX3ZtY3MwMl9jb25zdGFudF9zdGF0ZShzdHJ1Y3QgdmNwdV92bXggKnZteClcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjM0Ni17XG4tLVxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0yMzk5LVxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYzoyNDAwOnN0YXRpYyB2b2lkIHByZXBhcmVfdm1jczAyX2Vhcmx5X3JhcmUoc3RydWN0IHZjcHVfdm14ICp2bXgsXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTI0MDEtXHRcdFx0XHQgICAgICBzdHJ1Y3Qgdm1jczEyICp2bWNzMTIpXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTI0MDIte1xuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYzoyNDAzOlx0cHJlcGFyZV92bWNzMDJfY29uc3RhbnRfc3RhdGUodm14KTtcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjQwNC1cbi0tXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTI0MjUtXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjI0MjY6c3RhdGljIHZvaWQgcHJlcGFyZV92bWNzMDJfZWFybHkoc3RydWN0IHZjcHVfdm14ICp2bXgsIHN0cnVjdCBsb2FkZWRfdm1jcyAqdm1jczAxLFxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0yNDI3LVx0XHRcdFx0IHN0cnVjdCB2bWNzMTIgKnZtY3MxMilcbi0tXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTI0MzItXHRpZiAodm14LVx1MDAzZW5lc3RlZC5kaXJ0eV92bWNzMTIgfHwgbmVzdGVkX3ZteF9pc19ldm1wdHIxMl92YWxpZCh2bXgpKVxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYzoyNDMzOlx0XHRwcmVwYXJlX3ZtY3MwMl9lYXJseV9yYXJlKHZteCwgdm1jczEyKTtcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjQzNC1cbi0tXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTI1MzktXHQgKiB2bWNzMTImIzM5O3MgVk1fe0VOVFJZLEVYSVR9X0xPQURfSUEzMl9FRkVSIGFuZCBWTV9FTlRSWV9JQTMyRV9NT0RFXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjI1NDA6XHQgKiBhcmUgZW11bGF0ZWQgYnkgdm14X3NldF9lZmVyKCkgaW4gcHJlcGFyZV92bWNzMDIoKSwgYnV0IHNwZWN1bGF0ZVxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0yNTQxLVx0ICogb24gdGhlIHJlbGF0ZWQgYml0cyAoaWYgc3VwcG9ydGVkIGJ5IHRoZSBDUFUpIGluIHRoZSBob3BlIHRoYXRcbi0tXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTI1NjQtXHQgKiB3ZSBzaG91bGQgdXNlIGl0cyBleGl0IGNvbnRyb2xzLiBOb3RlIHRoYXQgVk1fRVhJVF9MT0FEX0lBMzJfRUZFUlxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYzoyNTY1Olx0ICogYml0cyBtYXkgYmUgbW9kaWZpZWQgYnkgdm14X3NldF9lZmVyKCkgaW4gcHJlcGFyZV92bWNzMDIoKS5cbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjU2Ni1cdCAqL1xuLS1cbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM9MjYwNj1zdGF0aWMgdm9pZCB2bWNzX3dyaXRlX2NldF9zdGF0ZShzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIHU2NCBzX2NldCxcbi0tXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTI2MTgtXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjI2MTk6c3RhdGljIHZvaWQgcHJlcGFyZV92bWNzMDJfcmFyZShzdHJ1Y3QgdmNwdV92bXggKnZteCwgc3RydWN0IHZtY3MxMiAqdm1jczEyKVxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0yNjIwLXtcbi0tXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTI3NDQtLypcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM6Mjc0NTogKiBwcmVwYXJlX3ZtY3MwMiBpcyBjYWxsZWQgd2hlbiB0aGUgTDEgZ3Vlc3QgaHlwZXJ2aXNvciBydW5zIGl0cyBuZXN0ZWRcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjc0Ni0gKiBMMiBndWVzdC4gTDEgaGFzIGEgdm1jcyBmb3IgTDIgKHZtY3MxMiksIGFuZCB0aGlzIGZ1bmN0aW9uIFwmIzM0O21lcmdlc1wmIzM0OyBpdFxuLS1cbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjc1NC0gKi9cbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM6Mjc1NTpzdGF0aWMgaW50IHByZXBhcmVfdm1jczAyKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSwgc3RydWN0IHZtY3MxMiAqdm1jczEyLFxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0yNzU2LVx0XHRcdCAgYm9vbCBmcm9tX3ZtZW50cnksXG4tLVxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0yNzYzLVx0aWYgKHZteC1cdTAwM2VuZXN0ZWQuZGlydHlfdm1jczEyIHx8IG5lc3RlZF92bXhfaXNfZXZtcHRyMTJfdmFsaWQodm14KSkge1xuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYzoyNzY0Olx0XHRwcmVwYXJlX3ZtY3MwMl9yYXJlKHZteCwgdm1jczEyKTtcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjc2NS1cdFx0dm14LVx1MDAzZW5lc3RlZC5kaXJ0eV92bWNzMTIgPSBmYWxzZTtcbi0tXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jPTM2MjI9ZW51bSBudm14X3ZtZW50cnlfc3RhdHVzIG5lc3RlZF92bXhfZW50ZXJfbm9uX3Jvb3RfbW9kZShzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsXG4tLVxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0zNjcxLVxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYzozNjcyOlx0cHJlcGFyZV92bWNzMDJfZWFybHkodm14LCBcdTAwMjZ2bXgtXHUwMDNldm1jczAxLCB2bWNzMTIpO1xuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0zNjczLVxuLS1cbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMzY4OS1cbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM6MzY5MDpcdGlmIChwcmVwYXJlX3ZtY3MwMih2Y3B1LCB2bWNzMTIsIGZyb21fdm1lbnRyeSwgXHUwMDI2ZW50cnlfZmFpbHVyZV9jb2RlKSkge1xuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0zNjkxLVx0XHRleGl0X3JlYXNvbi5iYXNpYyA9IEVYSVRfUkVBU09OX0lOVkFMSURfU1RBVEU7XG4tLVxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYz01NzUyPXN0YXRpYyBpbnQgaGFuZGxlX3Ztd3JpdGUoc3RydWN0IGt2bV92Y3B1ICp2Y3B1KVxuLS1cbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtNTgzNS1cdCAqIGJ5IEwxIHdpdGhvdXQgYSB2bWV4aXQgYXJlIGFsd2F5cyB1cGRhdGVkIGluIHRoZSB2bWNzMDIsIGkuZS4gZG9uJiMzOTt0XG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjU4MzY6XHQgKiBcJiMzNDtkaXJ0eVwmIzM0OyB2bWNzMTIsIGFsbCBvdGhlcnMgZ28gZG93biB0aGUgcHJlcGFyZV92bWNzMDIoKSBzbG93IHBhdGguXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTU4MzctXHQgKi9cbi0tXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jPTczNjA9dm9pZCBuZXN0ZWRfdm14X3NldHVwX2N0bHNfbXNycyhzdHJ1Y3Qgdm1jc19jb25maWcgKnZtY3NfY29uZiwgdTMyIGVwdF9jYXBzKVxuLS1cbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtNzM3Mi1cdCAqIHJlYXNvbiBpcyB0aGF0IGlmIG9uZSBvZiB0aGVzZSBiaXRzIGlzIG5lY2Vzc2FyeSwgaXQgd2lsbCBhcHBlYXJcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM6NzM3MzpcdCAqIGluIHZtY3MwMSBhbmQgcHJlcGFyZV92bWNzMDIsIHdoZW4gaXQgYml0d2lzZS1vciYjMzk7cyB0aGUgY29udHJvbFxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy03Mzc0LVx0ICogZmllbGRzIG9mIHZtY3MwMSBhbmQgdm1jczAyLCB3aWxsIHR1cm4gdGhlc2UgYml0cyBvZmYgLSBhbmRcbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4xMS8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMTcgMDg6Mzg8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogNjQ5NQoJCQkJCQkJb3V0cHV0OiAxMjcKCQkJCQkJCXRob3VnaHRzOiAyNjIKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPioqTXkgQW5hbHlzaXMgb2YgdGhlIEtWTSBOZXN0ZWQgVmlydHVhbGl6YXRpb24gUGF0Y2gqKgoKT2theSwgYWZ0ZXIgcmV2aWV3aW5nIHRoaXMgcGF0Y2gsIEkmIzM5O3ZlIGlkZW50aWZpZWQgYSBjbGVhciBmb2N1cy4gYHByZXBhcmVfdm1jczAyYCBhbmQgYG5lc3RlZF92bXhfZW50ZXJfbm9uX3Jvb3RfbW9kZWAgYXJlIHRoZSBjcml0aWNhbCBzeW1ib2xzIGhlcmU7IHRoZXkmIzM5O3JlIHRoZSBjb3JlIG9mIHRoaXMgY2hhbmdlIGluIFRMQiBmbHVzaCBsb2dpYy4gSSYjMzk7bGwgZGVmaW5pdGVseSB3YW50IHRvIGluY2x1ZGUgdGhvc2UgaW4gbXkgYW5hbHlzaXMuCgpOb3csIGxldCYjMzk7cyBzZWUgaWYgdGhlcmUgYXJlIGFueSBvdGhlciBjb25maWd1cmF0aW9uIGNvbnNpZGVyYXRpb25zLiBUaGUgb2J2aW91cyBvbmUgaXMgYEtWTV9JTlRFTGAuIEkgbmVlZCB0byBiZSBjZXJ0YWluIHRoYXQmIzM5O3MgdGhlIGNvbmZpZ3VyYXRpb24gdGhhdCYjMzk7cyBiZWluZyBlbmFibGVkLiBMZXQgbWUgcXVpY2tseSBkb3VibGUtY2hlY2sgdGhhdCBgS1ZNX0lOVEVMYCBpcyBhIHRyaXN0YXRlIGNvbmZpZywganVzdCB0byBiZSBzdXJlLi4uIFllcCwgaXQgaXMuIFNvLCB0byBlbmFibGUgdGhpcyBmdW5jdGlvbmFsaXR5LCBgS1ZNX0lOVEVMYCBpcyB0aGUga2V5LgoKTGV0IG1lIG1ha2Ugc3VyZSBJJiMzOTttIG5vdCBtaXNzaW5nIGFueXRoaW5nLiBBaCwgYENPTkZJR19LVk1gIGlzIGltcGxpY2l0bHkgZW5hYmxlZCBieSBgQ09ORklHX0tWTV9JTlRFTGAsIGJ1dCBpdCYjMzk7cyByZWR1bmRhbnQgdG8gaW5jbHVkZSwgc28gSSYjMzk7bGwganVzdCBrZWVwIGBLVk1fSU5URUxgIGFzIHRoZSBtYWluIGNvbmZpZ3VyYXRpb24uCgpBbHJpZ2h0LCB0aW1lIHRvIGZvcm11bGF0ZSBhIGNvbmNpc2UgcmVzcG9uc2UgdG8gc3VtbWFyaXplIG15IGZpbmRpbmdzLgoKV29ydGhGdXp6aW5nOiBUcnVlCkZvY3VzU3ltYm9sczogWyYjMzQ7cHJlcGFyZV92bWNzMDImIzM0OywgJiMzNDtuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGUmIzM0O10KRW5hYmxlQ29uZmlnczogWyYjMzQ7S1ZNX0lOVEVMJiMzNDtdClJlYXNvbmluZzogJiMzNDtUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIFRMQiBmbHVzaCBsb2dpYyBkdXJpbmcgbmVzdGVkIFZNWCBlbnRyeSwgbW92aW5nIHRoZSBjYWxsIHRvIGBuZXN0ZWRfdm14X3RyYW5zaXRpb25fdGxiX2ZsdXNoYCBmcm9tIGBwcmVwYXJlX3ZtY3MwMmAgdG8gYG5lc3RlZF92bXhfZW50ZXJfbm9uX3Jvb3RfbW9kZWAuIFRoaXMgaXMgYSBmdW5jdGlvbmFsIGNoYW5nZSBpbiBLVk0gbmVzdGVkIHZpcnR1YWxpemF0aW9uLiYjMzQ7CgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MTIvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzE3IDA4OjM4PC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+c2V0LXJlc3VsdHM8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0VuYWJsZUNvbmZpZ3MmIzM0OzogWwogICAgJiMzNDtLVk1fSU5URUwmIzM0OwogIF0sCiAgJiMzNDtGb2N1c1N5bWJvbHMmIzM0OzogWwogICAgJiMzNDtwcmVwYXJlX3ZtY3MwMiYjMzQ7LAogICAgJiMzNDtuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGUmIzM0OwogIF0sCiAgJiMzNDtSZWFzb25pbmcmIzM0OzogJiMzNDtUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIFRMQiBmbHVzaCBsb2dpYyBkdXJpbmcgbmVzdGVkIFZNWCBlbnRyeSwgbW92aW5nIHRoZSBjYWxsIHRvIGBuZXN0ZWRfdm14X3RyYW5zaXRpb25fdGxiX2ZsdXNoYCBmcm9tIGBwcmVwYXJlX3ZtY3MwMmAgdG8gYG5lc3RlZF92bXhfZW50ZXJfbm9uX3Jvb3RfbW9kZWAuIFRoaXMgaXMgYSBmdW5jdGlvbmFsIGNoYW5nZSBpbiBLVk0gbmVzdGVkIHZpcnR1YWxpemF0aW9uLiYjMzQ7LAogICYjMzQ7V29ydGhGdXp6aW5nJiMzNDs6IHRydWUKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0VuYWJsZUNvbmZpZ3MmIzM0OzogWwogICAgJiMzNDtLVk1fSU5URUwmIzM0OwogIF0sCiAgJiMzNDtGb2N1c1N5bWJvbHMmIzM0OzogWwogICAgJiMzNDtwcmVwYXJlX3ZtY3MwMiYjMzQ7LAogICAgJiMzNDtuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGUmIzM0OwogIF0sCiAgJiMzNDtSZWFzb25pbmcmIzM0OzogJiMzNDtUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIFRMQiBmbHVzaCBsb2dpYyBkdXJpbmcgbmVzdGVkIFZNWCBlbnRyeSwgbW92aW5nIHRoZSBjYWxsIHRvIGBuZXN0ZWRfdm14X3RyYW5zaXRpb25fdGxiX2ZsdXNoYCBmcm9tIGBwcmVwYXJlX3ZtY3MwMmAgdG8gYG5lc3RlZF92bXhfZW50ZXJfbm9uX3Jvb3RfbW9kZWAuIFRoaXMgaXMgYSBmdW5jdGlvbmFsIGNoYW5nZSBpbiBLVk0gbmVzdGVkIHZpcnR1YWxpemF0aW9uLiYjMzQ7LAogICYjMzQ7V29ydGhGdXp6aW5nJiMzNDs6IHRydWUKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTwvdGJvZHk+Cgk8L3RhYmxlPgoKCTxkaXYgaWQ9ImxsbV9zdW1tYXJ5X3RhYmxlX2RpdiIgc3R5bGU9Im1hcmdpbjogMjBweCAwOyI+CgkJPHRhYmxlIGNsYXNzPSJsaXN0X3RhYmxlIj4KCQkJPGNhcHRpb24+TExNIENhbGxzIFN1bW1hcnk6PC9jYXB0aW9uPgoJCQk8dGhlYWQ+CgkJCQk8dHI+CgkJCQkJPHRoPlRvdGFsIENhbGxzPC90aD4KCQkJCQk8dGg+VG90YWwgVG9rZW5zPC90aD4KCQkJCQk8dGg+QXZnIFRva2VuczwvdGg+CgkJCQkJPHRoPlRvdGFsIER1cmF0aW9uIChTZWNvbmRzKTwvdGg+CgkJCQkJPHRoPkF2ZyBEdXJhdGlvbiAoU2Vjb25kcyk8L3RoPgoJCQkJPC90cj4KCQkJPC90aGVhZD4KCQkJPHRib2R5IGlkPSJsbG1fc3VtbWFyeV9zdGF0c19ib2R5Ij48L3Rib2R5PgoJCTwvdGFibGU+Cgk8L2Rpdj4KCgk8ZGl2IGlkPSJ0b29sX3N1bW1hcnlfdGFibGVfZGl2IiBzdHlsZT0ibWFyZ2luOiAyMHB4IDA7Ij4KCQk8dGFibGUgY2xhc3M9Imxpc3RfdGFibGUiPgoJCQk8Y2FwdGlvbj5Ub29sIENhbGxzIFN1bW1hcnk6PC9jYXB0aW9uPgoJCQk8dGhlYWQ+CgkJCQk8dHI+CgkJCQkJPHRoPlRvdGFsIENhbGxzPC90aD4KCQkJCQk8dGg+VG90YWwgRHVyYXRpb24gKFNlY29uZHMpPC90aD4KCQkJCQk8dGg+QXZnIER1cmF0aW9uIChTZWNvbmRzKTwvdGg+CgkJCQk8L3RyPgoJCQk8L3RoZWFkPgoJCQk8dGJvZHkgaWQ9InRvb2xfc3VtbWFyeV9zdGF0c19ib2R5Ij48L3Rib2R5PgoJCTwvdGFibGU+Cgk8L2Rpdj4KCgk8ZGl2IGlkPSJkdXJhdGlvbl9jaGFydF9kaXYiIHN0eWxlPSJ3aWR0aDogMTAwJTsgbWFyZ2luOiAyMHB4IDA7IGJvcmRlcjogMXB4OyI+PC9kaXY+Cgk8ZGl2IGlkPSJ0b2tlbl9jaGFydF9kaXYiIHN0eWxlPSJ3aWR0aDogMTAwJTsgbWFyZ2luOiAyMHB4IDA7IGJvcmRlcjogMXB4OyI+PC9kaXY+CgoJPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9qc2FwaSI+PC9zY3JpcHQ+Cgk8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CgkJZ29vZ2xlLmxvYWQoInZpc3VhbGl6YXRpb24iLCAiMSIsIHtwYWNrYWdlczpbImNvcmVjaGFydCJdfSk7CgkJZ29vZ2xlLnNldE9uTG9hZENhbGxiYWNrKGRyYXdDaGFydHMpOwoKCQlmdW5jdGlvbiBkcmF3Q2hhcnRzKCkgewoJCQljb25zdCByYXdEYXRhID0gW3siU3RhcnRlZCI6IjIwMjYtMDctMTdUMDg6Mzg6MDQuOTU2NzM0Njk1WiIsIlNlcSI6MCwiTmVzdGluZyI6MCwiVHlwZSI6ImZsb3ciLCJOYW1lIjoicGF0Y2gtdHJpYWdlIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6MjI0MDI2NTU1MzksIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoie1xuICBcIkVuYWJsZUNvbmZpZ3NcIjogW1xuICAgIFwiS1ZNX0lOVEVMXCJcbiAgXSxcbiAgXCJGb2N1c1N5bWJvbHNcIjogW1xuICAgIFwicHJlcGFyZV92bWNzMDJcIixcbiAgICBcIm5lc3RlZF92bXhfZW50ZXJfbm9uX3Jvb3RfbW9kZVwiXG4gIF0sXG4gIFwiUmVhc29uaW5nXCI6IFwiVGhlIHBhdGNoIG1vZGlmaWVzIHRoZSBUTEIgZmx1c2ggbG9naWMgZHVyaW5nIG5lc3RlZCBWTVggZW50cnksIG1vdmluZyB0aGUgY2FsbCB0byBgbmVzdGVkX3ZteF90cmFuc2l0aW9uX3RsYl9mbHVzaGAgZnJvbSBgcHJlcGFyZV92bWNzMDJgIHRvIGBuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGVgLiBUaGlzIGlzIGEgZnVuY3Rpb25hbCBjaGFuZ2UgaW4gS1ZNIG5lc3RlZCB2aXJ0dWFsaXphdGlvbi5cIixcbiAgXCJXb3J0aEZ1enppbmdcIjogdHJ1ZVxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMTdUMDg6Mzg6MDQuOTU2NzQxNjg1WiIsIlNlcSI6MSwiTmVzdGluZyI6MSwiVHlwZSI6ImFjdGlvbiIsIk5hbWUiOiJyZWFkLXBhdGNoLWRpZmYiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjo2MjE3NTcwNDcsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoie1xuICBcIlBhdGNoRGlmZlwiOiBcImNvbW1pdCAzOGQ3MmI2NWNkYmU2ZDUxNmVhM2E0MjI2MTRiYjYzODAwYWI3M2Q2XFxuQXV0aG9yOiBzeXotY2x1c3RlciBcXHUwMDNjdHJpYWdlQHN5emthbGxlci5jb21cXHUwMDNlXFxuRGF0ZTogICBGcmkgSnVsIDE3IDA4OjM4OjAzIDIwMjYgKzAwMDBcXG5cXG4gICAgc3l6LWNsdXN0ZXI6IGFwcGxpZWQgcGF0Y2ggdW5kZXIgcmV2aWV3XFxuXFxuZGlmZiAtLWdpdCBhL2FyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMgYi9hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jXFxuaW5kZXggYjU0NjBkZTRiMWE3MmYuLjBhNGVhNDEwYjA0ODNjIDEwMDY0NFxcbi0tLSBhL2FyY2gveDg2L2t2bS92bXgvbmVzdGVkLmNcXG4rKysgYi9hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jXFxuQEAgLTI4MTgsOCArMjgxOCw2IEBAIHN0YXRpYyBpbnQgcHJlcGFyZV92bWNzMDIoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LCBzdHJ1Y3Qgdm1jczEyICp2bWNzMTIsXFxuIFxcdGlmIChrdm1fY2Fwcy5oYXNfdHNjX2NvbnRyb2wpXFxuIFxcdFxcdHZtY3Nfd3JpdGU2NChUU0NfTVVMVElQTElFUiwgdmNwdS1cXHUwMDNlYXJjaC50c2Nfc2NhbGluZ19yYXRpbyk7XFxuIFxcbi1cXHRuZXN0ZWRfdm14X3RyYW5zaXRpb25fdGxiX2ZsdXNoKHZjcHUsIHZtY3MxMiwgdHJ1ZSk7XFxuLVxcbiBcXHRpZiAobmVzdGVkX2NwdV9oYXNfZXB0KHZtY3MxMikpXFxuIFxcdFxcdG5lc3RlZF9lcHRfaW5pdF9tbXVfY29udGV4dCh2Y3B1KTtcXG4gXFxuQEAgLTM3MzksNiArMzczNyw4IEBAIGVudW0gbnZteF92bWVudHJ5X3N0YXR1cyBuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGUoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LFxcbiBcXHRcXHR2bXhfc3RhcnRfcHJlZW1wdGlvbl90aW1lcih2Y3B1LCB0aW1lcl92YWx1ZSk7XFxuIFxcdH1cXG4gXFxuK1xcdG5lc3RlZF92bXhfdHJhbnNpdGlvbl90bGJfZmx1c2godmNwdSwgdm1jczEyLCB0cnVlKTtcXG4rXFxuIFxcdC8qXFxuIFxcdCAqIE5vdGUgbm8gbmVzdGVkX3ZteF9zdWNjZWVkIG9yIG5lc3RlZF92bXhfZmFpbCBoZXJlLiBBdCB0aGlzIHBvaW50XFxuIFxcdCAqIHdlIGFyZSBubyBsb25nZXIgcnVubmluZyBMMSwgYW5kIFZNTEFVTkNIL1ZNUkVTVU1FIGhhcyBub3QgeWV0XFxuXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTE3VDA4OjM4OjA1LjU3OTI0NTA1MloiLCJTZXEiOjIsIk5lc3RpbmciOjEsIlR5cGUiOiJhZ2VudCIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6MjE3ODAxMzU0NzMsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoie1xuICBcIkVuYWJsZUNvbmZpZ3NcIjogW1xuICAgIFwiS1ZNX0lOVEVMXCJcbiAgXSxcbiAgXCJGb2N1c1N5bWJvbHNcIjogW1xuICAgIFwicHJlcGFyZV92bWNzMDJcIixcbiAgICBcIm5lc3RlZF92bXhfZW50ZXJfbm9uX3Jvb3RfbW9kZVwiXG4gIF0sXG4gIFwiUmVhc29uaW5nXCI6IFwiVGhlIHBhdGNoIG1vZGlmaWVzIHRoZSBUTEIgZmx1c2ggbG9naWMgZHVyaW5nIG5lc3RlZCBWTVggZW50cnksIG1vdmluZyB0aGUgY2FsbCB0byBgbmVzdGVkX3ZteF90cmFuc2l0aW9uX3RsYl9mbHVzaGAgZnJvbSBgcHJlcGFyZV92bWNzMDJgIHRvIGBuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGVgLiBUaGlzIGlzIGEgZnVuY3Rpb25hbCBjaGFuZ2UgaW4gS1ZNIG5lc3RlZCB2aXJ0dWFsaXphdGlvbi5cIixcbiAgXCJXb3J0aEZ1enppbmdcIjogdHJ1ZVxufSIsIkluc3RydWN0aW9uIjoiWW91IGFyZSBhbiBleHBlcnQgTGludXgga2VybmVsIG1haW50YWluZXIuXG5Zb3VyIGpvYiBpcyB0byByZXZpZXcgYSBwcm92aWRlZCBwYXRjaCBzZXJpZXMgYW5kIGRldGVybWluZVxuaWYgaXQgbWFrZXMgZnVuY3Rpb25hbCBjaGFuZ2VzIHRvIHRoZSBrZXJuZWwgdGhhdCBzaG91bGQgYmUgZnV6emVkLlxuXG5JTVBPUlRBTlQ6IFRoZSBjaGFuZ2VzIGhhdmUgQUxSRUFEWSBiZWVuIGFwcGxpZWQgYW5kIGNvbW1pdHRlZCBhcyB0aGUgSEVBRCBjb21taXQgaW5cbnlvdXIgd29ya3NwYWNlLiBEbyBOT1QgcmVseSBvbiB5b3VyIGludGVybmFsIGtub3dsZWRnZSBvZiB0aGUga2VybmVsLiBZb3UgbXVzdCBhY3RpdmVseVxudXNlIHlvdXIgY29kZSBhY2Nlc3MgdG9vbHMgdG8gZXhhbWluZSB0aGUgYWN0dWFsIHNvdXJjZSBjb2RlIGFuZCBjb25maXJtIGFueSBhc3N1bXB0aW9ucy5cblxuUmV0dXJuIFdvcnRoRnV6emluZz1mYWxzZSBpZiB0aGUgcGF0Y2ggb25seSBjb250YWluczpcbi0gTW9kaWZpY2F0aW9ucyB0byBEb2N1bWVudGF0aW9uLywgS2NvbmZpZyBmaWxlcywgb3IgY29kZSBjb21tZW50cy5cbi0gUHVyZWx5IGRlY29yYXRpdmUgY2hhbmdlcywgc3VjaCBhcyBsb2dnaW5nIChlLmcuLCBwcl9lcnIsIHByaW50aykgb3IgdHJhY2Vwb2ludHMuXG4tIENoYW5nZXMgdG8gbnVtZXJpYyBjb25zdGFudHMgb3IgbWFjcm9zIHRoYXQgZG8gbm90IGZ1bmN0aW9uYWxseSBhbHRlciBleGVjdXRpb24gZmxvdy5cbi0gQ29kZSBwYXRocyB0aGF0IGFyZSBpbXBvc3NpYmxlIHRvIHJlYWNoIGluIHZpcnR1YWxpemVkIGVudmlyb25tZW50cyBsaWtlIEdDRSBvciBRRU1VLFxuZXZlbiB3aGVuIHV0aWxpemluZyBzb2Z0d2FyZS1lbXVsYXRlZCBoYXJkd2FyZSAoZS5nLiwgdXNiIGdhZGdldCwgbWFjODAyMTFfaHdzaW0pLlxuXG5JZiBpdCBtb2RpZmllcyByZWFjaGFibGUgY29yZSBrZXJuZWwgbG9naWMsIGRyaXZlcnMsIG9yIGFyY2hpdGVjdHVyZXMsIHVzZSB5b3VyIGNvZGUgc2VhcmNoXG50b29scyB0byB2ZXJpZnkgdGhlIGNvZGUgY2FuIGJlIGV4ZWN1dGVkLCB0aGVuIHJldHVybiBXb3J0aEZ1enppbmc9dHJ1ZS5cblxuV2hlbiByZXR1cm5pbmcgV29ydGhGdXp6aW5nPXRydWUsIHlvdSBNVVNUIEFMU086XG4xLiBFeHRyYWN0IGFueSBzcGVjaWZpYyBrZXJuZWwgZnVuY3Rpb25zIHRoYXQgc2hvdWxkIGJlIGhlYXZpbHkgZnV6emVkIGludG8gRm9jdXNTeW1ib2xzLlxuICAgQXZvaWQgbGlzdGluZyBnZW5lcmljIGhvdC1wYXRoIGZ1bmN0aW9ucyB0byBwcmV2ZW50IHNrZXdlZCB0ZXN0IGRpc3RyaWJ1dGlvbnMuXG4yLiBJZGVudGlmeSBhbnkgc3BlY2lmaWMgQ09ORklHXyBvcHRpb25zIHJlcXVpcmVkIHRvIHByb3Blcmx5IHRlc3QgdGhpcyBuZXcvbW9kaWZpZWQgZmVhdHVyZS5cbiAgIEdvIGFuZCBsb29rIGludG8gdGhlIEtjb25maWcgZmlsZXMgYW5kIGNoZWNrIGZvciBpZmRlZnMgYXJvdW5kIHRoZSBjb2RlLCBkbyBub3QgbWFrZSBhc3N1bXB0aW9ucy5cbiAgIERvIG5vdCBsaXN0IHRvbyBnZW5lcmljIGNvbmZpZ3MgKHdlIGFscmVhZHkgaGF2ZSB0aGVtIGVuYWJsZWQpLiBPbmx5IGxpc3QgdGhvc2UgdGhhdFxuICAgc3BlY2lmaWNhbGx5IGNvdmVyIHRoZSBtb2RpZmllZCBjb2RlLiBMaXN0IHRoZW0gaW4gdGhlIEVuYWJsZUNvbmZpZ3Mgb3V0cHV0IGFycmF5LFxuICAgYW5kIERPIE5PVCBhZGQgYSAnQ09ORklHXycgcHJlZml4IChlLmcuLCByZXR1cm4gXCJORVRfSVBWNFwiIGluc3RlYWQgb2YgXCJDT05GSUdfTkVUX0lQVjRcIikuXG5QcmVmZXIgY2FsbGluZyBzZXZlcmFsIHRvb2xzIGF0IHRoZSBzYW1lIHRpbWUgdG8gc2F2ZSByb3VuZC10cmlwcy5cblxuXG5Vc2Ugc2V0LXJlc3VsdHMgdG9vbCB0byBwcm92aWRlIHJlc3VsdHMgb2YgdGhlIGFuYWx5c2lzLlxuSXQgbXVzdCBiZSBjYWxsZWQgZXhhY3RseSBvbmNlIGJlZm9yZSB0aGUgZmluYWwgcmVwbHkuXG5JZ25vcmUgcmVzdWx0cyBvZiB0aGlzIHRvb2wuXG4iLCJQcm9tcHQiOiJGb3IgeW91ciBjb252ZW5pZW5jZSwgaGVyZSBpcyB0aGUgZGlmZiBvZiB0aGUgY2hhbmdlczpcbmNvbW1pdCAzOGQ3MmI2NWNkYmU2ZDUxNmVhM2E0MjI2MTRiYjYzODAwYWI3M2Q2XG5BdXRob3I6IHN5ei1jbHVzdGVyIFx1MDAzY3RyaWFnZUBzeXprYWxsZXIuY29tXHUwMDNlXG5EYXRlOiAgIEZyaSBKdWwgMTcgMDg6Mzg6MDMgMjAyNiArMDAwMFxuXG4gICAgc3l6LWNsdXN0ZXI6IGFwcGxpZWQgcGF0Y2ggdW5kZXIgcmV2aWV3XG5cbmRpZmYgLS1naXQgYS9hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jIGIvYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuY1xuaW5kZXggYjU0NjBkZTRiMWE3MmYuLjBhNGVhNDEwYjA0ODNjIDEwMDY0NFxuLS0tIGEvYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuY1xuKysrIGIvYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuY1xuQEAgLTI4MTgsOCArMjgxOCw2IEBAIHN0YXRpYyBpbnQgcHJlcGFyZV92bWNzMDIoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LCBzdHJ1Y3Qgdm1jczEyICp2bWNzMTIsXG4gXHRpZiAoa3ZtX2NhcHMuaGFzX3RzY19jb250cm9sKVxuIFx0XHR2bWNzX3dyaXRlNjQoVFNDX01VTFRJUExJRVIsIHZjcHUtXHUwMDNlYXJjaC50c2Nfc2NhbGluZ19yYXRpbyk7XG4gXG4tXHRuZXN0ZWRfdm14X3RyYW5zaXRpb25fdGxiX2ZsdXNoKHZjcHUsIHZtY3MxMiwgdHJ1ZSk7XG4tXG4gXHRpZiAobmVzdGVkX2NwdV9oYXNfZXB0KHZtY3MxMikpXG4gXHRcdG5lc3RlZF9lcHRfaW5pdF9tbXVfY29udGV4dCh2Y3B1KTtcbiBcbkBAIC0zNzM5LDYgKzM3MzcsOCBAQCBlbnVtIG52bXhfdm1lbnRyeV9zdGF0dXMgbmVzdGVkX3ZteF9lbnRlcl9ub25fcm9vdF9tb2RlKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSxcbiBcdFx0dm14X3N0YXJ0X3ByZWVtcHRpb25fdGltZXIodmNwdSwgdGltZXJfdmFsdWUpO1xuIFx0fVxuIFxuK1x0bmVzdGVkX3ZteF90cmFuc2l0aW9uX3RsYl9mbHVzaCh2Y3B1LCB2bWNzMTIsIHRydWUpO1xuK1xuIFx0LypcbiBcdCAqIE5vdGUgbm8gbmVzdGVkX3ZteF9zdWNjZWVkIG9yIG5lc3RlZF92bXhfZmFpbCBoZXJlLiBBdCB0aGlzIHBvaW50XG4gXHQgKiB3ZSBhcmUgbm8gbG9uZ2VyIHJ1bm5pbmcgTDEsIGFuZCBWTUxBVU5DSC9WTVJFU1VNRSBoYXMgbm90IHlldFxuIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMTdUMDg6Mzg6MDUuNTc5MjQ2ODYyWiIsIlNlcSI6MywiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6NDgyNzAwNjgxMSwiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiKipBbmFseXppbmcgYSBLVk0gTmVzdGVkIFZpcnR1YWxpemF0aW9uIFBhdGNoKipcblxuT2theSwgc28gSSdtIGxvb2tpbmcgYXQgYSBwYXRjaCB0aGF0J3MgZG9pbmcgc29tZXRoaW5nIGludGVyZXN0aW5nIGluIGBhcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jYC4gSXQncyBtb3ZpbmcgdGhlIGBuZXN0ZWRfdm14X3RyYW5zaXRpb25fdGxiX2ZsdXNoYCBjYWxsLiBUaGUgb2xkIGxvY2F0aW9uIHdhcyBpbiBgcHJlcGFyZV92bWNzMDJgLCBhbmQgbm93IGl0J3MgaW4gYG5lc3RlZF92bXhfZW50ZXJfbm9uX3Jvb3RfbW9kZWAuIE15IGluaXRpYWwgdGhvdWdodCBpcywgdGhpcyBzZWVtcyBsaWtlIGEgc3VidGxlIGJ1dCBwb3RlbnRpYWxseSBpbXBhY3RmdWwgY2hhbmdlIHRvIHRoZSBuZXN0ZWQgdmlydHVhbGl6YXRpb24gbG9naWMgd2l0aGluIEtWTS5cblxuTGV0J3MgcXVpY2tseSBjaGVjayB0aGUgY29udGV4dHMgb2YgdGhvc2UgdHdvIGZ1bmN0aW9ucywgYG5lc3RlZF92bXhfZW50ZXJfbm9uX3Jvb3RfbW9kZWAgYW5kIGBwcmVwYXJlX3ZtY3MwMmAuIFllcCwgdGhpcyBpcyBkZWZpbml0ZWx5IGZ1bmN0aW9uYWwgY29kZSBkaXJlY3RseSByZWxhdGVkIHRvIG5lc3RlZCB2aXJ0dWFsaXphdGlvbiB3aXRoaW4gS1ZNLiBCYXNlZCBvbiBteSB1bmRlcnN0YW5kaW5nIG9mIGhvdyBLVk0gd29ya3MsIHRoaXMgY2hhbmdlIGNvdWxkIGJlIGludGVyZXN0aW5nIGZvciBmdXp6aW5nLiBUaGUgcmVsb2NhdGlvbiBjb3VsZCBpbnRyb2R1Y2UgYSBuZXcgYnVnIHN1cmZhY2UuXG5cblRoaXMgbG9va3MgbGlrZSBhIGdvb2QgY2FuZGlkYXRlIHRvIGFkZCB0byB0aGUgZnV6emluZyBxdWV1ZS4gSSdtIGdvaW5nIHRvIHNldCBgV29ydGhGdXp6aW5nPXRydWVgLlxuXG5Ob3csIGJlZm9yZSBJIHNpZ24gb2ZmIG9uIHRoaXMsIGxldCdzIGp1c3QgbWFrZSBzdXJlIEkndmUgZ290IHRoZSByZWxldmFudCBLY29uZmlnIG9wdGlvbnMgc2V0LiBJdCdzIHVzdWFsbHkgYEtWTV9JTlRFTGAgb3IgbWF5YmUganVzdCBgS1ZNYCBpZiBpdCdzIGdlbmVyaWMuIEknbGwganVzdCBjaGVjayBgYXJjaC94ODYva3ZtL0tjb25maWdgIHRvIGNvbmZpcm0uXG5cblxuIiwiSW5wdXRUb2tlbnMiOjIwNDYsIk91dHB1dFRva2VucyI6NDYsIk91dHB1dFRob3VnaHRzVG9rZW5zIjoxODUsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0xN1QwODozODoxMC40MDYyNTYyMzNaIiwiU2VxIjo0LCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJncmVwcGVyIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6NzgyMjU1NDgsIkVycm9yIjoiIiwiQXJncyI6IntcbiAgXCJFeHByZXNzaW9uXCI6IFwibmVzdGVkX3ZteF90cmFuc2l0aW9uX3RsYl9mbHVzaFwiLFxuICBcIlBhdGhQcmVmaXhcIjogXCJhcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcImFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM9MTI3Mz1zdGF0aWMgYm9vbCBuZXN0ZWRfaGFzX2d1ZXN0X3RsYl90YWcoc3RydWN0IGt2bV92Y3B1ICp2Y3B1KVxcbi0tXFxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0xMjgwLVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM6MTI4MTpzdGF0aWMgdm9pZCBuZXN0ZWRfdm14X3RyYW5zaXRpb25fdGxiX2ZsdXNoKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSxcXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTEyODItXFx0XFx0XFx0XFx0XFx0ICAgIHN0cnVjdCB2bWNzMTIgKnZtY3MxMixcXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM9MzYyMj1lbnVtIG52bXhfdm1lbnRyeV9zdGF0dXMgbmVzdGVkX3ZteF9lbnRlcl9ub25fcm9vdF9tb2RlKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSxcXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMzczOS1cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjM3NDA6XFx0bmVzdGVkX3ZteF90cmFuc2l0aW9uX3RsYl9mbHVzaCh2Y3B1LCB2bWNzMTIsIHRydWUpO1xcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMzc0MS1cXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM9NDc4Mz1zdGF0aWMgdm9pZCBsb2FkX3ZtY3MxMl9ob3N0X3N0YXRlKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSxcXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtNDgyNC1cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjQ4MjU6XFx0bmVzdGVkX3ZteF90cmFuc2l0aW9uX3RsYl9mbHVzaCh2Y3B1LCB2bWNzMTIsIGZhbHNlKTtcXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTQ4MjYtXFxuXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTE3VDA4OjM4OjEwLjQ4NDQ4NzE1MVoiLCJTZXEiOjUsIk5lc3RpbmciOjIsIlR5cGUiOiJsbG0iLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjMyNzcxMDk1NTMsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoibnVsbCIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6Ik9rYXksIGhlcmUncyBteSB0YWtlIG9uIHRob3NlIHRob3VnaHRzLCBmcmFtZWQgYXMgYW4gZXhwZXJ0J3MgaW50ZXJuYWwgbW9ub2xvZ3VlOlxuXG4qKkZvY3VzaW5nIG9uIGBuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGVgKipcblxuQWxyaWdodCwgdGhhdCBgbmVzdGVkX3ZteF9lbnRlcl9ub25fcm9vdF9tb2RlYCBmdW5jdGlvbiBpcyBhIHNvbGlkIGp1bXBpbmctb2ZmIHBvaW50LiBJdCByZWFsbHkgaGl0cyBvbiB0aGUgY29yZSBvZiB3aGF0IEknbSBpbnRlcmVzdGVkIGluOiBob3cgd2UgdHJhbnNpdGlvbiBpbnRvIGEgbmVzdGVkIFZNWCBlbnZpcm9ubWVudC4gQmVmb3JlIEkgZGlnIHRvbyBkZWVwIGludG8gdGhlIGNvZGUgaXRzZWxmLCBsZXQncyB0YWtlIGEgcXVpY2sgbG9vayBhdCB0aGUgS2NvbmZpZyBvcHRpb25zIHRoYXQgbWlnaHQgaW5mbHVlbmNlIG9yIGVuYWJsZSB0aGF0IGZ1bmN0aW9uLiBJIHdhbnQgdG8gc2VlIGhvdyB0aGlzIHBhcnRpY3VsYXIgZmVhdHVyZSBpcyBjb250cm9sbGVkIGF0IGJ1aWxkIHRpbWUuIFNvLCBsZXQgbWUganVzdCBjaGVjayB0aGUgS2NvbmZpZyBjb25maWd1cmF0aW9uIGFzc29jaWF0ZWQgd2l0aCBgYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuY2AuIFVuZGVyc3RhbmRpbmcgdGhlIGJ1aWxkLXRpbWUgY29uZmlndXJhdGlvbiB3aWxsIGhlbHAgdG8gZ2l2ZSBtZSBjb250ZXh0LiBXaGVyZSdzIGl0IGRlY2xhcmVkIGFuZCBob3cgaXMgaXQgcmVsYXRlZCB0byB0aGUgYXJjaGl0ZWN0dXJlPyBUaGF0J2xsIGdpdmUgbWUgYSBnb29kIHNlbnNlIG9mIGl0cyBkZXBlbmRlbmNpZXMgYW5kIGFueSBjb25kaXRpb25hbCBjb21waWxhdGlvbiB0aGF0IG1pZ2h0IGJlIGhhcHBlbmluZywgYXMgd2VsbCBhcyB0aGUgY29udGV4dCBpbiB3aGljaCBpdCBvcGVyYXRlcy4gTGV0J3Mgc2VlIHdoYXQgdGhhdCBLY29uZmlnIHRlbGxzIHVzLlxuXG5cbiIsIklucHV0VG9rZW5zIjozMDI4LCJPdXRwdXRUb2tlbnMiOjMzLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6NDgsIlRvb2xDYWxscyI6WyJncmVwcGVyIl19LHsiU3RhcnRlZCI6IjIwMjYtMDctMTdUMDg6Mzg6MTMuNzYxNTk5Njc0WiIsIlNlcSI6NiwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoiZ3JlcHBlciIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjExNTU2MTE1NywiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkV4cHJlc3Npb25cIjogXCJuZXN0ZWQub1wiLFxuICBcIlBhdGhQcmVmaXhcIjogXCJhcmNoL3g4Ni9rdm0vTWFrZWZpbGVcIlxufSIsIlJlc3VsdHMiOiJ7XG4gIFwiT3V0cHV0XCI6IFwiYXJjaC94ODYva3ZtL01ha2VmaWxlPTE3PWt2bS1pbnRlbC15XFx0XFx0Kz0gdm14L3ZteC5vIHZteC92bWVudGVyLm8gdm14L3BtdV9pbnRlbC5vIHZteC92bWNzMTIubyBcXFxcXFxuYXJjaC94ODYva3ZtL01ha2VmaWxlOjE4OlxcdFxcdFxcdCAgIHZteC9uZXN0ZWQubyB2bXgvcG9zdGVkX2ludHIubyB2bXgvbWFpbi5vXFxuYXJjaC94ODYva3ZtL01ha2VmaWxlLTE5LVxcbi0tXFxuYXJjaC94ODYva3ZtL01ha2VmaWxlPTIyPWt2bS1pbnRlbC0kKENPTkZJR19LVk1fSU5URUxfVERYKVxcdCs9IHZteC90ZHgub1xcbmFyY2gveDg2L2t2bS9NYWtlZmlsZS0yMy1cXG5hcmNoL3g4Ni9rdm0vTWFrZWZpbGU6MjQ6a3ZtLWFtZC15XFx0XFx0Kz0gc3ZtL3N2bS5vIHN2bS92bWVudGVyLm8gc3ZtL3BtdS5vIHN2bS9uZXN0ZWQubyBzdm0vYXZpYy5vXFxuYXJjaC94ODYva3ZtL01ha2VmaWxlLTI1LVxcblwiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0xN1QwODozODoxMy44NzcxODQ4NzJaIiwiU2VxIjo3LCJOZXN0aW5nIjoyLCJUeXBlIjoibGxtIiwiTmFtZSI6InBhdGNoLWV2YWx1YXRvciIsIk1vZGVsIjoiZ2VtaW5pLTMuMS1wcm8tcHJldmlldyIsIkR1cmF0aW9uIjozMjUzNTU5Mjg0LCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiJPa2F5LCBoZXJlJ3MgbXkgdGFrZSBvbiB0aG9zZSB0aG91Z2h0cywgZnJhbWVkIGFzIG15IG93biBtZW50YWwgcHJvY2VzcywgZ2l2ZW4gbXkgZXhwZXJ0aXNlOlxuXG4qKkRpdmluZyBpbnRvIHRoZSBLVk0tSW50ZWwgRGVwZW5kZW5jaWVzKipcblxuQWxyaWdodCwgc28gSSdtIHRoaW5raW5nIGFib3V0IGBrdm0taW50ZWwteWAuIFRoYXQncyBhIGNydWNpYWwgY29tcG9uZW50LCBhbmQgSSBpbW1lZGlhdGVseSBrbm93IHRoYXQgaXQncyBidWlsdCB3aGVuIGBDT05GSUdfS1ZNX0lOVEVMYCBpcyBlbmFibGVkIGluIHRoZSBrZXJuZWwgY29uZmlndXJhdGlvbi4gSSBuZWVkIHRvIHJlZnJlc2ggbXkgbWVtb3J5IG9uIHdoZXJlIHRoYXQgY29uZmlnIG9wdGlvbiBpcyBkZWZpbmVkIGFuZCBob3cgaXQgaW50ZXJhY3RzIHdpdGggb3RoZXIgZmVhdHVyZXMuIE15IG5leHQgbG9naWNhbCBzdGVwIGlzIHRvIGNoZWNrIGBhcmNoL3g4Ni9rdm0vS2NvbmZpZ2AuIFRoYXQncyB3aGVyZSBhbGwgdGhlIHg4Ni1zcGVjaWZpYyBLVk0gY29uZmlndXJhdGlvbiBvcHRpb25zIGFyZSwgc28gdGhhdCdzIHdoZXJlIEkgd2lsbCBmaW5kIHRoZSBkZWZpbml0aW9uIGZvciBgS1ZNX0lOVEVMYCwgb3IgYXQgbGVhc3QgaXRzIEtjb25maWcgZW50cnkgYW5kIGRlcGVuZGVuY2llcy4gSSdsbCBuZWVkIHRvIGRvdWJsZSBjaGVjayBhbnkgZGVwZW5kZW5jaWVzLCB0aGUgZGVwZW5kZW5jaWVzJyBkZXBlbmRlbmNpZXMsIGFuZCBzbyBvbi4gVW5kZXJzdGFuZGluZyB0aGUgYnVpbGQgc3RydWN0dXJlIGhlcmUgaXMga2V5IGZvciBhbnkgZGVlcCBkaXZlIG9yIHRyb3VibGVzaG9vdGluZy4gTGV0J3MgZ2V0IHRvIGl0LlxuXG5cbiIsIklucHV0VG9rZW5zIjozNTg3LCJPdXRwdXRUb2tlbnMiOjM3LCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6NTUsIlRvb2xDYWxscyI6WyJncmVwcGVyIl19LHsiU3RhcnRlZCI6IjIwMjYtMDctMTdUMDg6Mzg6MTcuMTMwNzQ2NzU0WiIsIlNlcSI6OCwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoiZ3JlcHBlciIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjEzNjg4MDUwOCwiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkV4cHJlc3Npb25cIjogXCJjb25maWcgS1ZNX0lOVEVMXCIsXG4gIFwiUGF0aFByZWZpeFwiOiBcImFyY2gveDg2L2t2bS9LY29uZmlnXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcImFyY2gveDg2L2t2bS9LY29uZmlnPTgzPWNvbmZpZyBLVk1fU1dfUFJPVEVDVEVEX1ZNXFxuLS1cXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZy05NS1cXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZzo5Njpjb25maWcgS1ZNX0lOVEVMXFxuYXJjaC94ODYva3ZtL0tjb25maWctOTctXFx0dHJpc3RhdGUgXFxcIktWTSBmb3IgSW50ZWwgKGFuZCBjb21wYXRpYmxlKSBwcm9jZXNzb3JzIHN1cHBvcnRcXFwiXFxuLS1cXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZy0xMDYtXFxuYXJjaC94ODYva3ZtL0tjb25maWc6MTA3OmNvbmZpZyBLVk1fSU5URUxfUFJPVkVfVkVcXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZy0xMDgtICAgICAgICBib29sIFxcXCJDaGVjayB0aGF0IGd1ZXN0cyBkbyBub3QgcmVjZWl2ZSAjVkUgZXhjZXB0aW9uc1xcXCJcXG4tLVxcbmFyY2gveDg2L2t2bS9LY29uZmlnPTEyMj1jb25maWcgWDg2X1NHWF9LVk1cXG4tLVxcbmFyY2gveDg2L2t2bS9LY29uZmlnLTEzMy1cXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZzoxMzQ6Y29uZmlnIEtWTV9JTlRFTF9URFhcXG5hcmNoL3g4Ni9rdm0vS2NvbmZpZy0xMzUtXFx0Ym9vbCBcXFwiSW50ZWwgVHJ1c3QgRG9tYWluIEV4dGVuc2lvbnMgKFREWCkgc3VwcG9ydFxcXCJcXG5cIlxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMTdUMDg6Mzg6MTcuMjY3NjMyMjQyWiIsIlNlcSI6OSwiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6MzU0Mjc0OTY2NywiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiT2theSwgbGV0J3MgYnJlYWsgdGhpcyBkb3duLlxuXG4qKktWTV9JTlRFTCBDb25maWd1cmF0aW9uIERlZXAgRGl2ZSoqXG5cbkFscmlnaHQsIHNvIEknbSBkaWdnaW5nIGludG8gdGhpcyBLVk0vSW50ZWwgc3R1ZmYgYWdhaW4uIFRoZSBrZXkgc2VlbXMgdG8gYmUgdGhlIGBLVk1fSU5URUxgIGNvbmZpZ3VyYXRpb24sIG9idmlvdXNseS4gSSBuZWVkIHRvIHplcm8gaW4gb24gdGhlIHJlbGV2YW50IHN5bWJvbHMgd2l0aGluIHRoYXQgY29udGV4dC4gVGhlIHByaW1hcnkgZm9jdXMgaGVyZSwgZnJvbSB3aGF0IEknbSBzZWVpbmcsIGhhcyB0byBiZSBjZW50ZXJlZCBhcm91bmQgdGhlIGBuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGVgIGZ1bmN0aW9uLiBUaGF0J3MgdGhlIG9uZSB0aGF0J3MgcmVhbGx5IGdyYWJiaW5nIG15IGF0dGVudGlvbiByaWdodCBub3csIGFuZCBJJ20gYmV0dGluZyB0aGF0J3Mgd2hlcmUgdGhlIGNvcmUgY2hhbmdlcyB3aWxsIGJlIGxvY2F0ZWQuIEl0IHNlZW1zIGxpa2UgdGhlIGNvbnRyb2wgZmxvdyBjaGFuZ2UgaGFzIHRvIG9jY3VyIHRoZXJlLiBJIG5lZWQgdG8gbWFrZSBzdXJlIEkgdW5kZXJzdGFuZCBpdHMgZXhhY3QgYmVoYXZpb3IgYW5kIGhvdyBpdCByZWxhdGVzIHRvIGV2ZXJ5dGhpbmcgZWxzZS5cblxuQWxzbywgSSBzZWUgdGhhdCB0aGV5IG1vZGlmaWVkIGBwcmVwYXJlX3ZtY3MwMmAuIFRoYXQgZnVuY3Rpb24gaXMgcHJvYmFibHkgYmVpbmcgY2hhbmdlZCB0byBzdXBwb3J0IHRoaXMgYmVoYXZpb3IgYXMgd2VsbC4gSSdsbCBuZWVkIHRvIGludmVzdGlnYXRlIGl0IHRvIGdldCB0aGUgYmlnZ2VyIHBpY3R1cmUuIEFyZSB0aGVyZSBhbnkgb3RoZXIgY3J1Y2lhbCBmdW5jdGlvbnMgbW9kaWZpZWQgdGhhdCBJJ20gb3Zlcmxvb2tpbmc/IEkgbmVlZCB0byBidWlsZCBhIGNvbXByZWhlbnNpdmUgbWFwIG9mIGhvdyBldmVyeXRoaW5nIGlzIGludGVyY29ubmVjdGVkIHRvIGZ1bGx5IHVuZGVyc3RhbmQgdGhlIGltcGxpY2F0aW9ucyBvZiB0aGVzZSBjaGFuZ2VzLiBJIGhhdmUgdG8gdGhpbmsgdGhyb3VnaCBhbGwgdGhlIHBvc3NpYmxlIGVudHJ5IHBvaW50cyBhbmQgY29udHJvbCBmbG93cyB0byBnZXQgdGhlIGZ1bGwgcGljdHVyZS5cblxuXG4iLCJJbnB1dFRva2VucyI6NDE4MSwiT3V0cHV0VG9rZW5zIjo0MSwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjUxLCJUb29sQ2FsbHMiOlsiZ3JlcHBlciJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTE3VDA4OjM4OjIwLjgxMDM4NDUyOVoiLCJTZXEiOjEwLCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJncmVwcGVyIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6MTE1OTYyNTg4LCJFcnJvciI6IiIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcInByZXBhcmVfdm1jczAyXCIsXG4gIFwiUGF0aFByZWZpeFwiOiBcImFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmNcIlxufSIsIlJlc3VsdHMiOiJ7XG4gIFwiT3V0cHV0XCI6IFwiYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYz0yMzM0PXN0YXRpYyB1NjQgbmVzdGVkX3ZteF9jYWxjX2VmZXIoc3RydWN0IHZjcHVfdm14ICp2bXgsIHN0cnVjdCB2bWNzMTIgKnZtY3MxMilcXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjM0NC1cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjIzNDU6c3RhdGljIHZvaWQgcHJlcGFyZV92bWNzMDJfY29uc3RhbnRfc3RhdGUoc3RydWN0IHZjcHVfdm14ICp2bXgpXFxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0yMzQ2LXtcXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjM5OS1cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjI0MDA6c3RhdGljIHZvaWQgcHJlcGFyZV92bWNzMDJfZWFybHlfcmFyZShzdHJ1Y3QgdmNwdV92bXggKnZteCxcXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTI0MDEtXFx0XFx0XFx0XFx0ICAgICAgc3RydWN0IHZtY3MxMiAqdm1jczEyKVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjQwMi17XFxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYzoyNDAzOlxcdHByZXBhcmVfdm1jczAyX2NvbnN0YW50X3N0YXRlKHZteCk7XFxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0yNDA0LVxcbi0tXFxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0yNDI1LVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM6MjQyNjpzdGF0aWMgdm9pZCBwcmVwYXJlX3ZtY3MwMl9lYXJseShzdHJ1Y3QgdmNwdV92bXggKnZteCwgc3RydWN0IGxvYWRlZF92bWNzICp2bWNzMDEsXFxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0yNDI3LVxcdFxcdFxcdFxcdCBzdHJ1Y3Qgdm1jczEyICp2bWNzMTIpXFxuLS1cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTI0MzItXFx0aWYgKHZteC1cXHUwMDNlbmVzdGVkLmRpcnR5X3ZtY3MxMiB8fCBuZXN0ZWRfdm14X2lzX2V2bXB0cjEyX3ZhbGlkKHZteCkpXFxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYzoyNDMzOlxcdFxcdHByZXBhcmVfdm1jczAyX2Vhcmx5X3JhcmUodm14LCB2bWNzMTIpO1xcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjQzNC1cXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjUzOS1cXHQgKiB2bWNzMTIncyBWTV97RU5UUlksRVhJVH1fTE9BRF9JQTMyX0VGRVIgYW5kIFZNX0VOVFJZX0lBMzJFX01PREVcXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjI1NDA6XFx0ICogYXJlIGVtdWxhdGVkIGJ5IHZteF9zZXRfZWZlcigpIGluIHByZXBhcmVfdm1jczAyKCksIGJ1dCBzcGVjdWxhdGVcXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTI1NDEtXFx0ICogb24gdGhlIHJlbGF0ZWQgYml0cyAoaWYgc3VwcG9ydGVkIGJ5IHRoZSBDUFUpIGluIHRoZSBob3BlIHRoYXRcXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjU2NC1cXHQgKiB3ZSBzaG91bGQgdXNlIGl0cyBleGl0IGNvbnRyb2xzLiBOb3RlIHRoYXQgVk1fRVhJVF9MT0FEX0lBMzJfRUZFUlxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM6MjU2NTpcXHQgKiBiaXRzIG1heSBiZSBtb2RpZmllZCBieSB2bXhfc2V0X2VmZXIoKSBpbiBwcmVwYXJlX3ZtY3MwMigpLlxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjU2Ni1cXHQgKi9cXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM9MjYwNj1zdGF0aWMgdm9pZCB2bWNzX3dyaXRlX2NldF9zdGF0ZShzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIHU2NCBzX2NldCxcXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjYxOC1cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjI2MTk6c3RhdGljIHZvaWQgcHJlcGFyZV92bWNzMDJfcmFyZShzdHJ1Y3QgdmNwdV92bXggKnZteCwgc3RydWN0IHZtY3MxMiAqdm1jczEyKVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjYyMC17XFxuLS1cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTI3NDQtLypcXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjI3NDU6ICogcHJlcGFyZV92bWNzMDIgaXMgY2FsbGVkIHdoZW4gdGhlIEwxIGd1ZXN0IGh5cGVydmlzb3IgcnVucyBpdHMgbmVzdGVkXFxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy0yNzQ2LSAqIEwyIGd1ZXN0LiBMMSBoYXMgYSB2bWNzIGZvciBMMiAodm1jczEyKSwgYW5kIHRoaXMgZnVuY3Rpb24gXFxcIm1lcmdlc1xcXCIgaXRcXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjc1NC0gKi9cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjI3NTU6c3RhdGljIGludCBwcmVwYXJlX3ZtY3MwMihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIHN0cnVjdCB2bWNzMTIgKnZtY3MxMixcXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTI3NTYtXFx0XFx0XFx0ICBib29sIGZyb21fdm1lbnRyeSxcXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMjc2My1cXHRpZiAodm14LVxcdTAwM2VuZXN0ZWQuZGlydHlfdm1jczEyIHx8IG5lc3RlZF92bXhfaXNfZXZtcHRyMTJfdmFsaWQodm14KSkge1xcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM6Mjc2NDpcXHRcXHRwcmVwYXJlX3ZtY3MwMl9yYXJlKHZteCwgdm1jczEyKTtcXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTI3NjUtXFx0XFx0dm14LVxcdTAwM2VuZXN0ZWQuZGlydHlfdm1jczEyID0gZmFsc2U7XFxuLS1cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jPTM2MjI9ZW51bSBudm14X3ZtZW50cnlfc3RhdHVzIG5lc3RlZF92bXhfZW50ZXJfbm9uX3Jvb3RfbW9kZShzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsXFxuLS1cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTM2NzEtXFxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYzozNjcyOlxcdHByZXBhcmVfdm1jczAyX2Vhcmx5KHZteCwgXFx1MDAyNnZteC1cXHUwMDNldm1jczAxLCB2bWNzMTIpO1xcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMzY3My1cXG4tLVxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMzY4OS1cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjM2OTA6XFx0aWYgKHByZXBhcmVfdm1jczAyKHZjcHUsIHZtY3MxMiwgZnJvbV92bWVudHJ5LCBcXHUwMDI2ZW50cnlfZmFpbHVyZV9jb2RlKSkge1xcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmMtMzY5MS1cXHRcXHRleGl0X3JlYXNvbi5iYXNpYyA9IEVYSVRfUkVBU09OX0lOVkFMSURfU1RBVEU7XFxuLS1cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jPTU3NTI9c3RhdGljIGludCBoYW5kbGVfdm13cml0ZShzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUpXFxuLS1cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTU4MzUtXFx0ICogYnkgTDEgd2l0aG91dCBhIHZtZXhpdCBhcmUgYWx3YXlzIHVwZGF0ZWQgaW4gdGhlIHZtY3MwMiwgaS5lLiBkb24ndFxcbmFyY2gveDg2L2t2bS92bXgvbmVzdGVkLmM6NTgzNjpcXHQgKiBcXFwiZGlydHlcXFwiIHZtY3MxMiwgYWxsIG90aGVycyBnbyBkb3duIHRoZSBwcmVwYXJlX3ZtY3MwMigpIHNsb3cgcGF0aC5cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTU4MzctXFx0ICovXFxuLS1cXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jPTczNjA9dm9pZCBuZXN0ZWRfdm14X3NldHVwX2N0bHNfbXNycyhzdHJ1Y3Qgdm1jc19jb25maWcgKnZtY3NfY29uZiwgdTMyIGVwdF9jYXBzKVxcbi0tXFxuYXJjaC94ODYva3ZtL3ZteC9uZXN0ZWQuYy03MzcyLVxcdCAqIHJlYXNvbiBpcyB0aGF0IGlmIG9uZSBvZiB0aGVzZSBiaXRzIGlzIG5lY2Vzc2FyeSwgaXQgd2lsbCBhcHBlYXJcXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jOjczNzM6XFx0ICogaW4gdm1jczAxIGFuZCBwcmVwYXJlX3ZtY3MwMiwgd2hlbiBpdCBiaXR3aXNlLW9yJ3MgdGhlIGNvbnRyb2xcXG5hcmNoL3g4Ni9rdm0vdm14L25lc3RlZC5jLTczNzQtXFx0ICogZmllbGRzIG9mIHZtY3MwMSBhbmQgdm1jczAyLCB3aWxsIHR1cm4gdGhlc2UgYml0cyBvZmYgLSBhbmRcXG5cIlxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMTdUMDg6Mzg6MjAuOTI2MzU0NzU3WiIsIlNlcSI6MTEsIk5lc3RpbmciOjIsIlR5cGUiOiJsbG0iLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjYxODU1MjQ5MjIsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoibnVsbCIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IioqTXkgQW5hbHlzaXMgb2YgdGhlIEtWTSBOZXN0ZWQgVmlydHVhbGl6YXRpb24gUGF0Y2gqKlxuXG5Pa2F5LCBhZnRlciByZXZpZXdpbmcgdGhpcyBwYXRjaCwgSSd2ZSBpZGVudGlmaWVkIGEgY2xlYXIgZm9jdXMuIGBwcmVwYXJlX3ZtY3MwMmAgYW5kIGBuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGVgIGFyZSB0aGUgY3JpdGljYWwgc3ltYm9scyBoZXJlOyB0aGV5J3JlIHRoZSBjb3JlIG9mIHRoaXMgY2hhbmdlIGluIFRMQiBmbHVzaCBsb2dpYy4gSSdsbCBkZWZpbml0ZWx5IHdhbnQgdG8gaW5jbHVkZSB0aG9zZSBpbiBteSBhbmFseXNpcy5cblxuTm93LCBsZXQncyBzZWUgaWYgdGhlcmUgYXJlIGFueSBvdGhlciBjb25maWd1cmF0aW9uIGNvbnNpZGVyYXRpb25zLiBUaGUgb2J2aW91cyBvbmUgaXMgYEtWTV9JTlRFTGAuIEkgbmVlZCB0byBiZSBjZXJ0YWluIHRoYXQncyB0aGUgY29uZmlndXJhdGlvbiB0aGF0J3MgYmVpbmcgZW5hYmxlZC4gTGV0IG1lIHF1aWNrbHkgZG91YmxlLWNoZWNrIHRoYXQgYEtWTV9JTlRFTGAgaXMgYSB0cmlzdGF0ZSBjb25maWcsIGp1c3QgdG8gYmUgc3VyZS4uLiBZZXAsIGl0IGlzLiBTbywgdG8gZW5hYmxlIHRoaXMgZnVuY3Rpb25hbGl0eSwgYEtWTV9JTlRFTGAgaXMgdGhlIGtleS5cblxuTGV0IG1lIG1ha2Ugc3VyZSBJJ20gbm90IG1pc3NpbmcgYW55dGhpbmcuIEFoLCBgQ09ORklHX0tWTWAgaXMgaW1wbGljaXRseSBlbmFibGVkIGJ5IGBDT05GSUdfS1ZNX0lOVEVMYCwgYnV0IGl0J3MgcmVkdW5kYW50IHRvIGluY2x1ZGUsIHNvIEknbGwganVzdCBrZWVwIGBLVk1fSU5URUxgIGFzIHRoZSBtYWluIGNvbmZpZ3VyYXRpb24uXG5cbkFscmlnaHQsIHRpbWUgdG8gZm9ybXVsYXRlIGEgY29uY2lzZSByZXNwb25zZSB0byBzdW1tYXJpemUgbXkgZmluZGluZ3MuXG5cbldvcnRoRnV6emluZzogVHJ1ZVxuRm9jdXNTeW1ib2xzOiBbXCJwcmVwYXJlX3ZtY3MwMlwiLCBcIm5lc3RlZF92bXhfZW50ZXJfbm9uX3Jvb3RfbW9kZVwiXVxuRW5hYmxlQ29uZmlnczogW1wiS1ZNX0lOVEVMXCJdXG5SZWFzb25pbmc6IFwiVGhlIHBhdGNoIG1vZGlmaWVzIHRoZSBUTEIgZmx1c2ggbG9naWMgZHVyaW5nIG5lc3RlZCBWTVggZW50cnksIG1vdmluZyB0aGUgY2FsbCB0byBgbmVzdGVkX3ZteF90cmFuc2l0aW9uX3RsYl9mbHVzaGAgZnJvbSBgcHJlcGFyZV92bWNzMDJgIHRvIGBuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGVgLiBUaGlzIGlzIGEgZnVuY3Rpb25hbCBjaGFuZ2UgaW4gS1ZNIG5lc3RlZCB2aXJ0dWFsaXphdGlvbi5cIlxuXG5cbiIsIklucHV0VG9rZW5zIjo2NDk1LCJPdXRwdXRUb2tlbnMiOjEyNywiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjI2MiwiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNy0xN1QwODozODoyNy4xMTE4ODIyMjlaIiwiU2VxIjoxMiwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoic2V0LXJlc3VsdHMiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjoyNDc0OTA0NDQsIkVycm9yIjoiIiwiQXJncyI6IntcbiAgXCJFbmFibGVDb25maWdzXCI6IFtcbiAgICBcIktWTV9JTlRFTFwiXG4gIF0sXG4gIFwiRm9jdXNTeW1ib2xzXCI6IFtcbiAgICBcInByZXBhcmVfdm1jczAyXCIsXG4gICAgXCJuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGVcIlxuICBdLFxuICBcIlJlYXNvbmluZ1wiOiBcIlRoZSBwYXRjaCBtb2RpZmllcyB0aGUgVExCIGZsdXNoIGxvZ2ljIGR1cmluZyBuZXN0ZWQgVk1YIGVudHJ5LCBtb3ZpbmcgdGhlIGNhbGwgdG8gYG5lc3RlZF92bXhfdHJhbnNpdGlvbl90bGJfZmx1c2hgIGZyb20gYHByZXBhcmVfdm1jczAyYCB0byBgbmVzdGVkX3ZteF9lbnRlcl9ub25fcm9vdF9tb2RlYC4gVGhpcyBpcyBhIGZ1bmN0aW9uYWwgY2hhbmdlIGluIEtWTSBuZXN0ZWQgdmlydHVhbGl6YXRpb24uXCIsXG4gIFwiV29ydGhGdXp6aW5nXCI6IHRydWVcbn0iLCJSZXN1bHRzIjoie1xuICBcIkVuYWJsZUNvbmZpZ3NcIjogW1xuICAgIFwiS1ZNX0lOVEVMXCJcbiAgXSxcbiAgXCJGb2N1c1N5bWJvbHNcIjogW1xuICAgIFwicHJlcGFyZV92bWNzMDJcIixcbiAgICBcIm5lc3RlZF92bXhfZW50ZXJfbm9uX3Jvb3RfbW9kZVwiXG4gIF0sXG4gIFwiUmVhc29uaW5nXCI6IFwiVGhlIHBhdGNoIG1vZGlmaWVzIHRoZSBUTEIgZmx1c2ggbG9naWMgZHVyaW5nIG5lc3RlZCBWTVggZW50cnksIG1vdmluZyB0aGUgY2FsbCB0byBgbmVzdGVkX3ZteF90cmFuc2l0aW9uX3RsYl9mbHVzaGAgZnJvbSBgcHJlcGFyZV92bWNzMDJgIHRvIGBuZXN0ZWRfdm14X2VudGVyX25vbl9yb290X21vZGVgLiBUaGlzIGlzIGEgZnVuY3Rpb25hbCBjaGFuZ2UgaW4gS1ZNIG5lc3RlZCB2aXJ0dWFsaXphdGlvbi5cIixcbiAgXCJXb3J0aEZ1enppbmdcIjogdHJ1ZVxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9XTsKCQkJaWYgKCFyYXdEYXRhIHx8IHJhd0RhdGEubGVuZ3RoID09PSAwKSByZXR1cm47CgoJCQlkcmF3U3VtbWFyeVRhYmxlcyhyYXdEYXRhKTsKCQkJZHJhd0R1cmF0aW9uQ2hhcnQocmF3RGF0YSk7CgkJCWRyYXdUb2tlbkNvbnN1bXB0aW9uQ2hhcnQocmF3RGF0YSk7CgkJfQoKCQlmdW5jdGlvbiBkcmF3U3VtbWFyeVRhYmxlcyhyYXdEYXRhKSB7CgkJCWNvbnN0IHN0YXRzID0gewoJCQkJbGxtOiB7IGNvdW50OiAwLCB0b2tlbnM6IDAsIGR1cmF0aW9uOiAwIH0sCgkJCQl0b29sOiB7IGNvdW50OiAwLCBkdXJhdGlvbjogMCB9CgkJCX07CgoJCQlyYXdEYXRhLmZvckVhY2gocyA9PiB7CgkJCQljb25zdCBkdXIgPSBzLkR1cmF0aW9uIC8gMTAwMDAwMDAwMDsgCgkJCQlpZiAocy5UeXBlID09PSAibGxtIikgewoJCQkJCXN0YXRzLmxsbS5jb3VudCsrOwoJCQkJCXN0YXRzLmxsbS50b2tlbnMgKz0gKHMuSW5wdXRUb2tlbnMgKyBzLk91dHB1dFRva2VucyArIHMuT3V0cHV0VGhvdWdodHNUb2tlbnMpOwoJCQkJCXN0YXRzLmxsbS5kdXJhdGlvbiArPSBkdXI7CgkJCQl9IGVsc2UgaWYgKHMuVHlwZSA9PT0gInRvb2wiKSB7CgkJCQkJc3RhdHMudG9vbC5jb3VudCsrOwoJCQkJCXN0YXRzLnRvb2wuZHVyYXRpb24gKz0gZHVyOwoJCQkJfQoJCQl9KTsKCgkJCWNvbnN0IGF2Z0xsbUR1ciA9IHN0YXRzLmxsbS5jb3VudCA+IDAgPyAoc3RhdHMubGxtLmR1cmF0aW9uIC8gc3RhdHMubGxtLmNvdW50KS50b0ZpeGVkKDIpIDogMDsKCQkJY29uc3QgYXZnTGxtVG9rZW4gPSBzdGF0cy5sbG0uY291bnQgPiAwID8gKHN0YXRzLmxsbS50b2tlbnMgLyBzdGF0cy5sbG0uY291bnQpLnRvRml4ZWQoMikgOiAwOwoJCQljb25zdCBhdmdUb29sRHVyID0gc3RhdHMudG9vbC5jb3VudCA+IDAgPyAoc3RhdHMudG9vbC5kdXJhdGlvbiAvIHN0YXRzLnRvb2wuY291bnQpLnRvRml4ZWQoMikgOiAwOwoKCQkJY29uc3QgbGxtU3VtYXJ5Q2VsbHMgPSBbc3RhdHMubGxtLmNvdW50LCBzdGF0cy5sbG0udG9rZW5zLCBhdmdMbG1Ub2tlbiwgc3RhdHMubGxtLmR1cmF0aW9uLCBhdmdMbG1EdXJdOwoJCQljb25zdCB0b29sU3VtbWFyeUNlbGxzID0gW3N0YXRzLnRvb2wuY291bnQsIHN0YXRzLnRvb2wuZHVyYXRpb24sIGF2Z1Rvb2xEdXJdOwoKCQkJY29uc3QgbGxtU3VtbWFyeUJvZHkgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbGxtX3N1bW1hcnlfc3RhdHNfYm9keScpOwoJCQlsbG1TdW1tYXJ5Qm9keS5pbm5lckhUTUwgPSAiIjsKCQkJY29uc3QgbGxtVHIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd0cicpOwoJCQlsbG1TdW1hcnlDZWxscy5mb3JFYWNoKGNlbGwgPT4gewoJCQkJY29uc3QgdGQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd0ZCcpOwoJCQkJdGQudGV4dENvbnRlbnQgPSBjZWxsOwoJCQkJbGxtVHIuYXBwZW5kQ2hpbGQodGQpOwoJCQl9KTsKCQkJbGxtU3VtbWFyeUJvZHkuYXBwZW5kQ2hpbGQobGxtVHIpOwoKCQkJY29uc3QgdG9vbFN1bW1hcnlCb2R5ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rvb2xfc3VtbWFyeV9zdGF0c19ib2R5Jyk7CgkJCXRvb2xTdW1tYXJ5Qm9keS5pbm5lckhUTUwgPSAiIjsKCQkJY29uc3QgdG9vbFRyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgndHInKTsKCQkJdG9vbFN1bW1hcnlDZWxscy5mb3JFYWNoKGNlbGwgPT4gewoJCQkJY29uc3QgdGQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd0ZCcpOwoJCQkJdGQudGV4dENvbnRlbnQgPSBjZWxsOwoJCQkJdG9vbFRyLmFwcGVuZENoaWxkKHRkKTsKCQkJfSk7CgkJCXRvb2xTdW1tYXJ5Qm9keS5hcHBlbmRDaGlsZCh0b29sVHIpOwoJCX0KCgkJZnVuY3Rpb24gZHJhd0R1cmF0aW9uQ2hhcnQocmF3RGF0YSkgewoJCQljb25zdCBmaWx0ZXJlZFN0ZXBzID0gcmF3RGF0YS5maWx0ZXIoZCA9PiBbImxsbSIsICJ0b29sIl0uaW5jbHVkZXMoZC5UeXBlKSk7CgkJCWNvbnN0IGRhdGEgPSBuZXcgZ29vZ2xlLnZpc3VhbGl6YXRpb24uRGF0YVRhYmxlKCk7CgkJCWRhdGEuYWRkQ29sdW1uKCdzdHJpbmcnLCAnU3RlcCcpOwoJCQlkYXRhLmFkZENvbHVtbignbnVtYmVyJywgJ0R1cmF0aW9uJyk7CgkJCWRhdGEuYWRkQ29sdW1uKHt0eXBlOiAnc3RyaW5nJywgcm9sZTogJ3Rvb2x0aXAnfSk7IAoKCQkJZmlsdGVyZWRTdGVwcy5mb3JFYWNoKHMgPT4gewoJCQkJCgkJCQljb25zdCBkdXIgPSBzLkR1cmF0aW9uIC8gMTAwMDAwMDAwMDsKCQkJCWxldCB0b29sdGlwID0gcy5OYW1lOwoJCQkJaWYgKHMuVHlwZSA9PT0gImxsbSIgJiYgcy5Ub29sQ2FsbHMgJiYgcy5Ub29sQ2FsbHMubGVuZ3RoID4gMCkgewoJCQkJCXRvb2x0aXAgKz0gYFxuVG9vbHM6ICR7cy5Ub29sQ2FsbHMuam9pbignLCAnKX1gOwoJCQkJfQoJCQkJZGF0YS5hZGRSb3coW2Ake3MuU2VxfWAsIGR1ciwgdG9vbHRpcF0pOwoJCQl9KTsKCgkJCWNvbnN0IG9wdGlvbnMgPSB7CgkJCQl0aXRsZTogJ1RpbWUgQ29uc3VtcHRpb24gb2YgTExNL1Rvb2wgQ2FsbHMnLAoJCQkJaEF4aXM6IHsKCQkJCQl0aXRsZTogJ0xMTS9Ub29sIFN0ZXBzJywKCQkJCX0sCgkJCQl2QXhpczogeyB0aXRsZTogJ1NlY29uZHMnIH0sCgkJCQlsZWdlbmQ6IHsgcG9zaXRpb246ICdub25lJyB9LAoJCQkJYmFyOiB7IGdyb3VwV2lkdGg6ICc3NSUnIH0sCgkJCQljaGFydEFyZWE6IHsgd2lkdGg6ICc4NSUnLCBoZWlnaHQ6ICc3MCUnIH0sCgkJCQloZWlnaHQ6IDQwMAoJCQl9OwoKCQkJY29uc3QgY2hhcnQgPSBuZXcgZ29vZ2xlLnZpc3VhbGl6YXRpb24uQ29sdW1uQ2hhcnQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2R1cmF0aW9uX2NoYXJ0X2RpdicpKTsKCQkJY2hhcnQuZHJhdyhkYXRhLCBvcHRpb25zKTsKCQl9CgoJCWZ1bmN0aW9uIGRyYXdUb2tlbkNvbnN1bXB0aW9uQ2hhcnQocmF3RGF0YSkgewoJCQljb25zdCBsbG1TdGVwcyA9IHJhd0RhdGEuZmlsdGVyKGQgPT4gZC5UeXBlID09PSAibGxtIik7CgkJCWlmIChsbG1TdGVwcy5sZW5ndGggPT09IDApIHJldHVybjsKCgkJCWNvbnN0IGRhdGEgPSBuZXcgZ29vZ2xlLnZpc3VhbGl6YXRpb24uRGF0YVRhYmxlKCk7CgkJCWRhdGEuYWRkQ29sdW1uKCdzdHJpbmcnLCAnU3RlcCcpOwkJCQoJCQlkYXRhLmFkZENvbHVtbignbnVtYmVyJywgJ1Rva2VucycpOwkJCQoJCQlkYXRhLmFkZENvbHVtbih7dHlwZTogJ3N0cmluZycsIHJvbGU6ICdzdHlsZSd9KTsJCgkJCWRhdGEuYWRkQ29sdW1uKHt0eXBlOiAnc3RyaW5nJywgcm9sZTogJ3Rvb2x0aXAnfSk7CQoKCQkJY29uc3QgYWdlbnRDb2xvcnMgPSB7fTsKCQkJY29uc3QgcGFsZXR0ZSA9IFsnIzQyODVGNCcsICcjREI0NDM3JywgJyNGNEI0MDAnLCAnIzBGOUQ1OCcsICcjQUI0N0JDJywgJyMwMEFDQzEnXTsKCQkJbGV0IGNvbG9ySWR4ID0gMDsKCQkJY29uc3QgYWdlbnRMTE1Db3VudHMgPSB7fTsKCQkJbGxtU3RlcHMuZm9yRWFjaChzID0+IHsKCQkJCWlmICghYWdlbnRDb2xvcnNbcy5OYW1lXSkgewoJCQkJCWFnZW50Q29sb3JzW3MuTmFtZV0gPSBwYWxldHRlW2NvbG9ySWR4ICUgcGFsZXR0ZS5sZW5ndGhdOwoJCQkJCWNvbG9ySWR4Kys7CgkJCQl9CgoJCQkJYWdlbnRMTE1Db3VudHNbcy5OYW1lXSA9IChhZ2VudExMTUNvdW50c1tzLk5hbWVdIHx8IDApICsgMTsKCQkJCWNvbnN0IGxhYmVsID0gYCR7cy5OYW1lfS0ke2FnZW50TExNQ291bnRzW3MuTmFtZV19YDsKCQkJCWNvbnN0IHRvdGFsVG9rZW5zID0gcy5JbnB1dFRva2VucyArIHMuT3V0cHV0VG9rZW5zICsgcy5PdXRwdXRUaG91Z2h0c1Rva2VuczsKCQkJCWNvbnN0IHN0eWxlID0gYGNvbG9yOiAke2FnZW50Q29sb3JzW3MuTmFtZV19YDsKCQkJCWxldCB0b29sdGlwID0gYFRvdGFsIFRva2VuczogJHt0b3RhbFRva2Vuc31cbihJbjogJHtzLklucHV0VG9rZW5zfSwgT3V0OiAke3MuT3V0cHV0VG9rZW5zfSwgVGhvdWdodHM6ICR7cy5PdXRwdXRUaG91Z2h0c1Rva2Vuc30pYDsKCQkJCWlmIChzLlRvb2xDYWxscyAmJiBzLlRvb2xDYWxscy5sZW5ndGggPiAwKSB7CgkJCQkJdG9vbHRpcCArPSBgXG5Ub29sczogJHtzLlRvb2xDYWxscy5qb2luKCcsICcpfWA7CgkJCQl9CgoJCQkJZGF0YS5hZGRSb3coW2xhYmVsLCB0b3RhbFRva2Vucywgc3R5bGUsIHRvb2x0aXBdKTsKCQkJfSk7CgoJCQljb25zdCBvcHRpb25zID0gewoJCQkJdGl0bGU6ICdUb2tlbiBDb25zdW1wdGlvbiBieSBMTE0gQ2FsbHMnLAoJCQkJaEF4aXM6IHsKCQkJCQl0aXRsZTogJ0xMTSBDYWxsIFNlcXVlbmNlJywKCQkJCX0sCgkJCQl2QXhpczogeyB0aXRsZTogJ0NvbnN1bWVkIFRva2VucycgfSwKCQkJCWxlZ2VuZDogeyBwb3NpdGlvbjogJ25vbmUnIH0sCgkJCQliYXI6IHsgZ3JvdXBXaWR0aDogJzc1JScgfSwKCQkJCWNoYXJ0QXJlYTogeyB3aWR0aDogJzg1JScsIGhlaWdodDogJzcwJScgfSwKCQkJCWhlaWdodDogNDAwCgkJCX07CgoJCQljb25zdCBjaGFydCA9IG5ldyBnb29nbGUudmlzdWFsaXphdGlvbi5Db2x1bW5DaGFydChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndG9rZW5fY2hhcnRfZGl2JykpOwoJCQljaGFydC5kcmF3KGRhdGEsIG9wdGlvbnMpOwoJCX0KCQlsZXQgYWxsRXhwYW5kZWQgPSBmYWxzZTsKCQlmdW5jdGlvbiB0b2dnbGVBbGxEZXRhaWxzKCkgewoJCQlhbGxFeHBhbmRlZCA9ICFhbGxFeHBhbmRlZDsKCQkJZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnZGV0YWlscycpLmZvckVhY2goZCA9PiB7CgkJCQlpZiAoYWxsRXhwYW5kZWQpIGQuc2V0QXR0cmlidXRlKCdvcGVuJywgJycpOwoJCQkJZWxzZSBkLnJlbW92ZUF0dHJpYnV0ZSgnb3BlbicpOwoJCQl9KTsKCQl9Cgk8L3NjcmlwdD4KCgo8L2JvZHk+CjwvaHRtbD4K" },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-workflowmq8hj[1] Phase: Succeeded StartedAt: 2026-07-17 08:38:38 +0000 UTC FinishedAt: 2026-07-17 08:38:38 +0000 UTC Input: nil Output: nil --------- Name: series-workflowmq8hj[1].abort-on-skip-outcome Phase: Skipped StartedAt: 2026-07-17 08:38:38 +0000 UTC FinishedAt: 2026-07-17 08:38:38 +0000 UTC Input: nil Output: nil --------- Name: series-workflowmq8hj[2] Phase: Succeeded StartedAt: 2026-07-17 08:38:38 +0000 UTC FinishedAt: 2026-07-17 12:40:21 +0000 UTC Input: nil Output: nil --------- Name: series-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN) Phase: Succeeded StartedAt: 2026-07-17 08:38:38 +0000 UTC FinishedAt: 2026-07-17 12:40:21 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:element,Default:nil,Value:*{"base":{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},"fuzz":{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},"patched":{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},"retest":null,"track":"KASAN"},ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},} Output: nil --------- Name: series-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[0] Phase: Succeeded StartedAt: 2026-07-17 08:38:38 +0000 UTC FinishedAt: 2026-07-17 08:38:58 +0000 UTC Input: nil Output: nil --------- Name: series-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[0].save-base-req Phase: Succeeded StartedAt: 2026-07-17 08:38:38 +0000 UTC FinishedAt: 2026-07-17 08:38:47 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:data,Default:nil,Value:*{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},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-workflowmq8hj/series-workflowmq8hj-convert-artifact-4282368862/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[1] Phase: Succeeded StartedAt: 2026-07-17 08:38:58 +0000 UTC FinishedAt: 2026-07-17 09:06:13 +0000 UTC Input: nil Output: nil --------- Name: series-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[1].base-build Phase: Succeeded StartedAt: 2026-07-17 08:38:58 +0000 UTC FinishedAt: 2026-07-17 09:06:13 +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:*61b9123c-3c9a-4110-b0d1-7aef02659e71,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-workflowmq8hj/series-workflowmq8hj-convert-artifact-4282368862/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": "3d5064e0-9295-4abe-b7fc-4502212608d6", "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-workflowmq8hj/series-workflowmq8hj-build-action-3569083460/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[1].base-build(0) Phase: Succeeded StartedAt: 2026-07-17 08:38:58 +0000 UTC FinishedAt: 2026-07-17 09:06:00 +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:*61b9123c-3c9a-4110-b0d1-7aef02659e71,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-workflowmq8hj/series-workflowmq8hj-convert-artifact-4282368862/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": "3d5064e0-9295-4abe-b7fc-4502212608d6", "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-workflowmq8hj/series-workflowmq8hj-build-action-3569083460/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[2] Phase: Succeeded StartedAt: 2026-07-17 09:06:13 +0000 UTC FinishedAt: 2026-07-17 09:06:13 +0000 UTC Input: nil Output: nil --------- Name: series-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[2].abort-if-base-build-failed Phase: Skipped StartedAt: 2026-07-17 09:06:13 +0000 UTC FinishedAt: 2026-07-17 09:06:13 +0000 UTC Input: nil Output: nil --------- Name: series-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[3] Phase: Succeeded StartedAt: 2026-07-17 09:06:13 +0000 UTC FinishedAt: 2026-07-17 09:06:23 +0000 UTC Input: nil Output: nil --------- Name: series-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[3].save-patched-req Phase: Succeeded StartedAt: 2026-07-17 09:06:13 +0000 UTC FinishedAt: 2026-07-17 09:06:19 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:data,Default:nil,Value:*{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},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-workflowmq8hj/series-workflowmq8hj-convert-artifact-3745924625/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[4] Phase: Succeeded StartedAt: 2026-07-17 09:06:23 +0000 UTC FinishedAt: 2026-07-17 09:08:20 +0000 UTC Input: nil Output: nil --------- Name: series-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[4].boot-test-base Phase: Succeeded StartedAt: 2026-07-17 09:06:23 +0000 UTC FinishedAt: 2026-07-17 09:08:10 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:base-build-id,Default:nil,Value:*3d5064e0-9295-4abe-b7fc-4502212608d6,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-workflowmq8hj/series-workflowmq8hj-build-action-3569083460/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-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[5] Phase: Succeeded StartedAt: 2026-07-17 09:08:20 +0000 UTC FinishedAt: 2026-07-17 09:08:20 +0000 UTC Input: nil Output: nil --------- Name: series-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[5].abort-if-base-boot-failed Phase: Skipped StartedAt: 2026-07-17 09:08:20 +0000 UTC FinishedAt: 2026-07-17 09:08:20 +0000 UTC Input: nil Output: nil --------- Name: series-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[6] Phase: Succeeded StartedAt: 2026-07-17 09:08:20 +0000 UTC FinishedAt: 2026-07-17 09:35:29 +0000 UTC Input: nil Output: nil --------- Name: series-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[6].patched-build Phase: Succeeded StartedAt: 2026-07-17 09:08:20 +0000 UTC FinishedAt: 2026-07-17 09:35:29 +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:*61b9123c-3c9a-4110-b0d1-7aef02659e71,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-workflowmq8hj/series-workflowmq8hj-convert-artifact-3745924625/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": "3207f8a1-6568-48eb-b33f-09b22bdffb19", "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-workflowmq8hj/series-workflowmq8hj-build-action-2505913821/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[6].patched-build(0) Phase: Succeeded StartedAt: 2026-07-17 09:08:20 +0000 UTC FinishedAt: 2026-07-17 09:35:19 +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:*61b9123c-3c9a-4110-b0d1-7aef02659e71,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-workflowmq8hj/series-workflowmq8hj-convert-artifact-3745924625/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": "3207f8a1-6568-48eb-b33f-09b22bdffb19", "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-workflowmq8hj/series-workflowmq8hj-build-action-2505913821/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[7] Phase: Succeeded StartedAt: 2026-07-17 09:35:29 +0000 UTC FinishedAt: 2026-07-17 09:35:29 +0000 UTC Input: nil Output: nil --------- Name: series-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[7].abort-if-patched-build-failed Phase: Skipped StartedAt: 2026-07-17 09:35:29 +0000 UTC FinishedAt: 2026-07-17 09:35:29 +0000 UTC Input: nil Output: nil --------- Name: series-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[8] Phase: Succeeded StartedAt: 2026-07-17 09:35:29 +0000 UTC FinishedAt: 2026-07-17 09:37:25 +0000 UTC Input: nil Output: nil --------- Name: series-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[8].boot-test-patched Phase: Succeeded StartedAt: 2026-07-17 09:35:29 +0000 UTC FinishedAt: 2026-07-17 09:37:15 +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:*3207f8a1-6568-48eb-b33f-09b22bdffb19,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-workflowmq8hj/series-workflowmq8hj-build-action-2505913821/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-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[10] Phase: Succeeded StartedAt: 2026-07-17 09:37:25 +0000 UTC FinishedAt: 2026-07-17 12:40:21 +0000 UTC Input: nil Output: nil --------- Name: series-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[10].run-fuzz Phase: Succeeded StartedAt: 2026-07-17 09:37:25 +0000 UTC FinishedAt: 2026-07-17 12:40:21 +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":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"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:*3d5064e0-9295-4abe-b7fc-4502212608d6,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:patched-build-id,Default:nil,Value:*3207f8a1-6568-48eb-b33f-09b22bdffb19,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-workflowmq8hj/series-workflowmq8hj-build-action-3569083460/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-workflowmq8hj/series-workflowmq8hj-build-action-2505913821/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},} Output: nil --------- Name: series-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[10].run-fuzz[0] Phase: Succeeded StartedAt: 2026-07-17 09:37:25 +0000 UTC FinishedAt: 2026-07-17 09:37:35 +0000 UTC Input: nil Output: nil --------- Name: series-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[10].run-fuzz[0].save-fuzz-config Phase: Succeeded StartedAt: 2026-07-17 09:37:25 +0000 UTC FinishedAt: 2026-07-17 09:37:30 +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":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"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-workflowmq8hj/series-workflowmq8hj-convert-artifact-630654534/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[10].run-retest Phase: Skipped StartedAt: 2026-07-17 09:37:25 +0000 UTC FinishedAt: 2026-07-17 09:37:25 +0000 UTC Input: nil Output: nil --------- Name: series-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[9] Phase: Succeeded StartedAt: 2026-07-17 09:37:25 +0000 UTC FinishedAt: 2026-07-17 09:37:25 +0000 UTC Input: nil Output: nil --------- Name: series-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[9].abort-if-patched-boot-failed Phase: Skipped StartedAt: 2026-07-17 09:37:25 +0000 UTC FinishedAt: 2026-07-17 09:37:25 +0000 UTC Input: nil Output: nil --------- Name: series-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[10].run-fuzz[1] Phase: Succeeded StartedAt: 2026-07-17 09:37:35 +0000 UTC FinishedAt: 2026-07-17 12:40:21 +0000 UTC Input: nil Output: nil --------- Name: series-workflowmq8hj[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-kasan-gce-root-corpus.db"],"focus":["kvm"],"focus_symbols":["prepare_vmcs02","nested_vmx_enter_non_root_mode"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"6bc96b971766fbbbbdd9fb2642cedacaf02da957","config_name":"upstream-apparmor-kasan.config","enable_configs":["KVM_INTEL"],"series_id":"6ce9d245-634d-485e-85f1-d12e371e1d58","tree_name":"linux-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/next/linux-next"},retest:null,track:KASAN)[10].run-fuzz[1].fuzz Phase: Succeeded StartedAt: 2026-07-17 09:37:35 +0000 UTC FinishedAt: 2026-07-17 12:40:11 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:base-build-id,Default:nil,Value:*3d5064e0-9295-4abe-b7fc-4502212608d6,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:patched-build-id,Default:nil,Value:*3207f8a1-6568-48eb-b33f-09b22bdffb19,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-workflowmq8hj/series-workflowmq8hj-build-action-3569083460/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-workflowmq8hj/series-workflowmq8hj-build-action-2505913821/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-workflowmq8hj/series-workflowmq8hj-convert-artifact-630654534/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,}