Name: series-workflowk27hb Phase: Succeeded StartedAt: 2026-07-17 13:04:08 +0000 UTC FinishedAt: 2026-07-17 17:58:10 +0000 UTC Input: nil Output: nil --------- Name: series-workflowk27hb[0] Phase: Succeeded StartedAt: 2026-07-17 13:04:08 +0000 UTC FinishedAt: 2026-07-17 13:14:31 +0000 UTC Input: nil Output: nil --------- Name: series-workflowk27hb[0].run-triage Phase: Succeeded StartedAt: 2026-07-17 13:04:08 +0000 UTC FinishedAt: 2026-07-17 13:14:31 +0000 UTC Input: nil Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "skip_reason": "", "targets": [ { "base": { "arch": "amd64", "tree_name": "bpf-next", "tree_url": "https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git", "commit_hash": "1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d", "config_name": "upstream-apparmor-kasan.config", "enable_configs": [ "BPF_SYSCALL" ], "series_id": "" }, "patched": { "arch": "amd64", "tree_name": "bpf-next", "tree_url": "https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git", "commit_hash": "1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d", "config_name": "upstream-apparmor-kasan.config", "enable_configs": [ "BPF_SYSCALL" ], "series_id": "f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea" }, "track": "KASAN", "fuzz": { "focus": [ "bpf" ], "focus_symbols": [ "check_stack_range_initialized" ], "corpus_urls": [ "https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db" ], "skip_cover_check": false, "bug_title_re": "" }, "retest": null } ], "trajectory": "CjwhZG9jdHlwZSBodG1sPgo8aHRtbD4KPGhlYWQ+Cgk8dGl0bGU+QUkgVHJhamVjdG9yeTwvdGl0bGU+Cgk8c3R5bGU+CgkJdGFibGUgewoJCQlib3JkZXI6IDFweCBzb2xpZCAjY2NjOwoJCQltYXJnaW46IDIwcHggNXB4OwoJCQlib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOwoJCQl3aGl0ZS1zcGFjZTogbm93cmFwOwoJCQl0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsKCQkJb3ZlcmZsb3c6IGhpZGRlbjsKCQl9CgoJCXRhYmxlIGNhcHRpb24gewoJCQlmb250LXdlaWdodDogYm9sZDsKCQl9CgoJCXRhYmxlIHRkLCB0YWJsZSB0aCB7CgkJCXZlcnRpY2FsLWFsaWduOiB0b3A7CgkJCXBhZGRpbmc6IDJweCA4cHg7CgkJCXRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOwoJCQlvdmVyZmxvdzogaGlkZGVuOwoJCX0KCgkJLmxpc3RfdGFibGUgdGQsIC5saXN0X3RhYmxlIHRoIHsKCQkJYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2NjOwoJCX0KCgkJLmxpc3RfdGFibGUgdGggewoJCQliYWNrZ3JvdW5kOiAjRjRGNEY0OwoJCX0KCgkJLmxpc3RfdGFibGUgdHI6bnRoLWNoaWxkKDJuKSB7CgkJCWJhY2tncm91bmQ6ICNGNEY0RjQ7CgkJfQoKCQkubGlzdF90YWJsZSB0cjpob3ZlciB7CgkJCWJhY2tncm91bmQ6ICNmZmZmOTk7CgkJfQoKCQkjYWlfZGV0YWlsc19kaXYgcHJlIHsKCQkJbWFyZ2luOiAxcHg7CgkJCW1heC13aWR0aDogMTIwY2g7CgkJCXdoaXRlLXNwYWNlOiBwcmUtd3JhcDsKCQkJb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDsKCQl9Cgk8L3N0eWxlPgo8L2hlYWQ+Cjxib2R5PgoJPGgxPkFJIFRyYWplY3Rvcnk8L2gxPgoJPGJyPgoKCQoJPHRhYmxlIGNsYXNzPSJsaXN0X3RhYmxlIj4KCQk8Y2FwdGlvbj5UcmFqZWN0b3J5OiAoPGEgaHJlZj0iIyIgb25jbGljaz0idG9nZ2xlQWxsRGV0YWlscygpOyByZXR1cm4gZmFsc2U7Ij5FeHBhbmQvQ29sbGFwc2UgQWxsPC9hPik8L2NhcHRpb24+CgkJPHRoZWFkPjx0cj4KCQkJPHRoPlNlcTwvdGg+CgkJCTx0aD5UaW1lc3RhbXA8L3RoPgoJCQk8dGg+VHlwZTwvdGg+CgkJCTx0aD5OYW1lPC90aD4KCQkJPHRoPkR1cmF0aW9uPC90aD4KCQk8L3RyPjwvdGhlYWQ+CgkJPHRib2R5PgoJCQoJCTx0cj4KCQkJPHRkPjAvMDwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzE3IDEzOjEzPC90ZD4KCQkJPHRkPmZsb3c8L3RkPgoJCQk8dGQ+cGF0Y2gtdHJpYWdlPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RW5hYmxlQ29uZmlncyYjMzQ7OiBbCiAgICAmIzM0O0JQRl9TWVNDQUxMJiMzNDsKICBdLAogICYjMzQ7Rm9jdXNTeW1ib2xzJiMzNDs6IFsKICAgICYjMzQ7Y2hlY2tfc3RhY2tfcmFuZ2VfaW5pdGlhbGl6ZWQmIzM0OwogIF0sCiAgJiMzNDtSZWFzb25pbmcmIzM0OzogJiMzNDtUaGUgcGF0Y2ggZml4ZXMgYSBidWcgaW4gdGhlIEJQRiB2ZXJpZmllciYjMzk7cyBzdGFjayByYW5nZSBpbml0aWFsaXphdGlvbiBjaGVjay4gRnV6emluZyB0aGUgdmVyaWZpZXIgd2l0aCBCUEZfU1lTQ0FMTCBlbmFibGVkIHdpbGwgaGVscCBlbnN1cmUgdGhpcyBsb2dpYyBpcyByb2J1c3QuJiMzNDssCiAgJiMzNDtXb3J0aEZ1enppbmcmIzM0OzogdHJ1ZQp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MS8xPC90ZD4KCQkJPHRkPjIwMjYvMDcvMTcgMTM6MTM8L3RkPgoJCQk8dGQ+YWN0aW9uPC90ZD4KCQkJPHRkPnJlYWQtcGF0Y2gtZGlmZjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O1BhdGNoRGlmZiYjMzQ7OiAmIzM0O2NvbW1pdCA5MjBhNWE0Njg5ZDE5OTNjOWVlNzU3YmY2YmE5MThhNmMwYTEwYTVkXG5BdXRob3I6IHN5ei1jbHVzdGVyIFx1MDAzY3RyaWFnZUBzeXprYWxsZXIuY29tXHUwMDNlXG5EYXRlOiAgIEZyaSBKdWwgMTcgMTM6MTM6NTYgMjAyNiAmIzQzOzAwMDBcblxuICAgIHN5ei1jbHVzdGVyOiBhcHBsaWVkIHBhdGNoIHVuZGVyIHJldmlld1xuXG5kaWZmIC0tZ2l0IGEva2VybmVsL2JwZi92ZXJpZmllci5jIGIva2VybmVsL2JwZi92ZXJpZmllci5jXG5pbmRleCBhNzhjZGFiZjg1NjA3Zi4uN2M2MWFkZTI3ZDJhNjQgMTAwNjQ0XG4tLS0gYS9rZXJuZWwvYnBmL3ZlcmlmaWVyLmNcbiYjNDM7JiM0MzsmIzQzOyBiL2tlcm5lbC9icGYvdmVyaWZpZXIuY1xuQEAgLTY3MzUsNyAmIzQzOzY3MzUsOCBAQCBzdGF0aWMgaW50IGNoZWNrX3N0YWNrX3JhbmdlX2luaXRpYWxpemVkKFxuIFx0XHRcdGdvdG8gbWFyaztcbiBcdFx0fVxuIFxuLVx0XHRpZiAoYnBmX2lzX3NwaWxsZWRfcmVnKFx1MDAyNnN0YXRlLVx1MDAzZXN0YWNrW3NwaV0pIFx1MDAyNlx1MDAyNlxuJiM0MztcdFx0aWYgKCpzdHlwZSA9PSBTVEFDS19TUElMTCBcdTAwMjZcdTAwMjZcbiYjNDM7XHRcdCAgICBicGZfaXNfc3BpbGxlZF9yZWcoXHUwMDI2c3RhdGUtXHUwMDNlc3RhY2tbc3BpXSkgXHUwMDI2XHUwMDI2XG4gXHRcdCAgICAoc3RhdGUtXHUwMDNlc3RhY2tbc3BpXS5zcGlsbGVkX3B0ci50eXBlID09IFNDQUxBUl9WQUxVRSB8fFxuIFx0XHQgICAgIGVudi1cdTAwM2VhbGxvd19wdHJfbGVha3MpKSB7XG4gXHRcdFx0aWYgKGNsb2JiZXIpIHtcbmRpZmYgLS1naXQgYS90b29scy90ZXN0aW5nL3NlbGZ0ZXN0cy9icGYvcHJvZ3MvdmVyaWZpZXJfc3BpbGxfZmlsbC5jIGIvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvYnBmL3Byb2dzL3ZlcmlmaWVyX3NwaWxsX2ZpbGwuY1xuaW5kZXggOGIxNjZjNDJjNGUwZTguLjJlNjJhN2RkY2JjZTIzIDEwMDY0NFxuLS0tIGEvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvYnBmL3Byb2dzL3ZlcmlmaWVyX3NwaWxsX2ZpbGwuY1xuJiM0MzsmIzQzOyYjNDM7IGIvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvYnBmL3Byb2dzL3ZlcmlmaWVyX3NwaWxsX2ZpbGwuY1xuQEAgLTExLDYgJiM0MzsxMSwxMyBAQCBzdHJ1Y3Qge1xuIFx0X191aW50KG1heF9lbnRyaWVzLCA0MDk2KTtcbiB9IG1hcF9yaW5nYnVmIFNFQyhcJiMzNDsubWFwc1wmIzM0Oyk7XG4gXG4mIzQzO3N0cnVjdCB7XG4mIzQzO1x0X191aW50KHR5cGUsIEJQRl9NQVBfVFlQRV9BUlJBWSk7XG4mIzQzO1x0X191aW50KG1heF9lbnRyaWVzLCAxKTtcbiYjNDM7XHRfX3R5cGUoa2V5LCBfX3UzMik7XG4mIzQzO1x0X190eXBlKHZhbHVlLCBfX3U4KTtcbiYjNDM7fSBtYXBfcGFydGlhbF9zcGlsbCBTRUMoXCYjMzQ7Lm1hcHNcJiMzNDspO1xuJiM0MztcbiBTRUMoXCYjMzQ7c29ja2V0XCYjMzQ7KVxuIF9fZGVzY3JpcHRpb24oXCYjMzQ7Y2hlY2sgdmFsaWQgc3BpbGwvZmlsbFwmIzM0OylcbiBfX3N1Y2Nlc3MgX19mYWlsdXJlX3VucHJpdiBfX21zZ191bnByaXYoXCYjMzQ7UjAgbGVha3MgYWRkclwmIzM0OylcbkBAIC0xMzA3LDYgJiM0MzsxMzE0LDMzIEBAIF9fbmFrZWQgdm9pZCBzdGFja19ub3BlcmZtb25fc3BpbGxfMzJiaXRfb250b182NGJpdF9zbG90KHZvaWQpXG4gXHQ6IF9fY2xvYmJlcl9hbGwpO1xuIH1cbiBcbiYjNDM7U0VDKFwmIzM0O3NvY2tldFwmIzM0OylcbiYjNDM7X19kZXNjcmlwdGlvbihcJiMzNDtoZWxwZXIgcmVhZCBtdXN0IHJlamVjdCBhbiBpbnZhbGlkIHNpYmxpbmcgb2YgYSBuYXJyb3cgc3BpbGxcJiMzNDspXG4mIzQzO19fc3VjY2Vzc1xuJiM0MztfX2NhcHNfdW5wcml2KENBUF9CUEYpXG4mIzQzO19fZmFpbHVyZV91bnByaXYgX19tc2dfdW5wcml2KFwmIzM0O2ludmFsaWQgcmVhZCBmcm9tIHN0YWNrIFIzIG9mZiAtNyYjNDM7MCBzaXplIDFcJiMzNDspXG4mIzQzO19fbmFrZWQgdm9pZCBoZWxwZXJfcmVhZF9pbnZhbGlkX3BhcnRpYWxfc3BpbGxfc2libGluZyh2b2lkKVxuJiM0Mzt7XG4mIzQzO1x0YXNtIHZvbGF0aWxlIChcJiMzNDtcdFx0XHRcdFx0XFxcbiYjNDM7XHRyNSA9IDE7XHRcdFx0XHRcdFx0XFxcbiYjNDM7XHQqKHU4ICopKHIxMCAtIDgpID0gcjU7XHRcdFx0XHRcXFxuJiM0MztcdHIyID0gMDtcdFx0XHRcdFx0XHRcXFxuJiM0MztcdCoodTMyICopKHIxMCAtIDE2KSA9IHIyO1x0XHRcdFxcXG4mIzQzO1x0cjEgPSAlW21hcF9wYXJ0aWFsX3NwaWxsXSBsbDtcdFx0XHRcXFxuJiM0MztcdHIyID0gcjEwO1x0XHRcdFx0XHRcXFxuJiM0MztcdHIyICYjNDM7PSAtMTY7XHRcdFx0XHRcdFxcXG4mIzQzO1x0cjMgPSByMTA7XHRcdFx0XHRcdFxcXG4mIzQzO1x0cjMgJiM0Mzs9IC03O1x0XHRcdFx0XHRcXFxuJiM0MztcdHI0ID0gMDtcdFx0XHRcdFx0XHRcXFxuJiM0MztcdGNhbGwgJVticGZfbWFwX3VwZGF0ZV9lbGVtXTtcdFx0XHRcXFxuJiM0MztcdHIwID0gMDtcdFx0XHRcdFx0XHRcXFxuJiM0MztcdGV4aXQ7XHRcdFx0XHRcdFx0XFxcbiYjNDM7XCYjMzQ7XHQ6XG4mIzQzO1x0OiBfX2ltbShicGZfbWFwX3VwZGF0ZV9lbGVtKSxcbiYjNDM7XHQgIF9faW1tX2FkZHIobWFwX3BhcnRpYWxfc3BpbGwpXG4mIzQzO1x0OiBfX2Nsb2JiZXJfYWxsKTtcbiYjNDM7fVxuJiM0MztcbiAvKlxuICAqIHN0YWNrc2FmZSgpOiBjaGVjayBpZiAzMi1iaXQgc2NhbGFyIHNwaWxsIGluIG9sZCBzdGF0ZSBpcyBjb25zaWRlcmVkXG4gICogZXF1aXZhbGVudCB0byBTVEFDS19NSVNDIGluIGN1ciBzdGF0ZS5cbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4yLzE8L3RkPgoJCQk8dGQ+MjAyNi8wNy8xNyAxMzoxMzwvdGQ+CgkJCTx0ZD5hZ2VudDwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5nZW1pbmktMy4xLXByby1wcmV2aWV3PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0VuYWJsZUNvbmZpZ3MmIzM0OzogWwogICAgJiMzNDtCUEZfU1lTQ0FMTCYjMzQ7CiAgXSwKICAmIzM0O0ZvY3VzU3ltYm9scyYjMzQ7OiBbCiAgICAmIzM0O2NoZWNrX3N0YWNrX3JhbmdlX2luaXRpYWxpemVkJiMzNDsKICBdLAogICYjMzQ7UmVhc29uaW5nJiMzNDs6ICYjMzQ7VGhlIHBhdGNoIGZpeGVzIGEgYnVnIGluIHRoZSBCUEYgdmVyaWZpZXImIzM5O3Mgc3RhY2sgcmFuZ2UgaW5pdGlhbGl6YXRpb24gY2hlY2suIEZ1enppbmcgdGhlIHZlcmlmaWVyIHdpdGggQlBGX1NZU0NBTEwgZW5hYmxlZCB3aWxsIGhlbHAgZW5zdXJlIHRoaXMgbG9naWMgaXMgcm9idXN0LiYjMzQ7LAogICYjMzQ7V29ydGhGdXp6aW5nJiMzNDs6IHRydWUKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+SW5zdHJ1Y3Rpb246PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5Zb3UgYXJlIGFuIGV4cGVydCBMaW51eCBrZXJuZWwgbWFpbnRhaW5lci4KWW91ciBqb2IgaXMgdG8gcmV2aWV3IGEgcHJvdmlkZWQgcGF0Y2ggc2VyaWVzIGFuZCBkZXRlcm1pbmUKaWYgaXQgbWFrZXMgZnVuY3Rpb25hbCBjaGFuZ2VzIHRvIHRoZSBrZXJuZWwgdGhhdCBzaG91bGQgYmUgZnV6emVkLgoKSU1QT1JUQU5UOiBUaGUgY2hhbmdlcyBoYXZlIEFMUkVBRFkgYmVlbiBhcHBsaWVkIGFuZCBjb21taXR0ZWQgYXMgdGhlIEhFQUQgY29tbWl0IGluCnlvdXIgd29ya3NwYWNlLiBEbyBOT1QgcmVseSBvbiB5b3VyIGludGVybmFsIGtub3dsZWRnZSBvZiB0aGUga2VybmVsLiBZb3UgbXVzdCBhY3RpdmVseQp1c2UgeW91ciBjb2RlIGFjY2VzcyB0b29scyB0byBleGFtaW5lIHRoZSBhY3R1YWwgc291cmNlIGNvZGUgYW5kIGNvbmZpcm0gYW55IGFzc3VtcHRpb25zLgoKUmV0dXJuIFdvcnRoRnV6emluZz1mYWxzZSBpZiB0aGUgcGF0Y2ggb25seSBjb250YWluczoKLSBNb2RpZmljYXRpb25zIHRvIERvY3VtZW50YXRpb24vLCBLY29uZmlnIGZpbGVzLCBvciBjb2RlIGNvbW1lbnRzLgotIFB1cmVseSBkZWNvcmF0aXZlIGNoYW5nZXMsIHN1Y2ggYXMgbG9nZ2luZyAoZS5nLiwgcHJfZXJyLCBwcmludGspIG9yIHRyYWNlcG9pbnRzLgotIENoYW5nZXMgdG8gbnVtZXJpYyBjb25zdGFudHMgb3IgbWFjcm9zIHRoYXQgZG8gbm90IGZ1bmN0aW9uYWxseSBhbHRlciBleGVjdXRpb24gZmxvdy4KLSBDb2RlIHBhdGhzIHRoYXQgYXJlIGltcG9zc2libGUgdG8gcmVhY2ggaW4gdmlydHVhbGl6ZWQgZW52aXJvbm1lbnRzIGxpa2UgR0NFIG9yIFFFTVUsCmV2ZW4gd2hlbiB1dGlsaXppbmcgc29mdHdhcmUtZW11bGF0ZWQgaGFyZHdhcmUgKGUuZy4sIHVzYiBnYWRnZXQsIG1hYzgwMjExX2h3c2ltKS4KCklmIGl0IG1vZGlmaWVzIHJlYWNoYWJsZSBjb3JlIGtlcm5lbCBsb2dpYywgZHJpdmVycywgb3IgYXJjaGl0ZWN0dXJlcywgdXNlIHlvdXIgY29kZSBzZWFyY2gKdG9vbHMgdG8gdmVyaWZ5IHRoZSBjb2RlIGNhbiBiZSBleGVjdXRlZCwgdGhlbiByZXR1cm4gV29ydGhGdXp6aW5nPXRydWUuCgpXaGVuIHJldHVybmluZyBXb3J0aEZ1enppbmc9dHJ1ZSwgeW91IE1VU1QgQUxTTzoKMS4gRXh0cmFjdCBhbnkgc3BlY2lmaWMga2VybmVsIGZ1bmN0aW9ucyB0aGF0IHNob3VsZCBiZSBoZWF2aWx5IGZ1enplZCBpbnRvIEZvY3VzU3ltYm9scy4KICAgQXZvaWQgbGlzdGluZyBnZW5lcmljIGhvdC1wYXRoIGZ1bmN0aW9ucyB0byBwcmV2ZW50IHNrZXdlZCB0ZXN0IGRpc3RyaWJ1dGlvbnMuCjIuIElkZW50aWZ5IGFueSBzcGVjaWZpYyBDT05GSUdfIG9wdGlvbnMgcmVxdWlyZWQgdG8gcHJvcGVybHkgdGVzdCB0aGlzIG5ldy9tb2RpZmllZCBmZWF0dXJlLgogICBHbyBhbmQgbG9vayBpbnRvIHRoZSBLY29uZmlnIGZpbGVzIGFuZCBjaGVjayBmb3IgaWZkZWZzIGFyb3VuZCB0aGUgY29kZSwgZG8gbm90IG1ha2UgYXNzdW1wdGlvbnMuCiAgIERvIG5vdCBsaXN0IHRvbyBnZW5lcmljIGNvbmZpZ3MgKHdlIGFscmVhZHkgaGF2ZSB0aGVtIGVuYWJsZWQpLiBPbmx5IGxpc3QgdGhvc2UgdGhhdAogICBzcGVjaWZpY2FsbHkgY292ZXIgdGhlIG1vZGlmaWVkIGNvZGUuIExpc3QgdGhlbSBpbiB0aGUgRW5hYmxlQ29uZmlncyBvdXRwdXQgYXJyYXksCiAgIGFuZCBETyBOT1QgYWRkIGEgJiMzOTtDT05GSUdfJiMzOTsgcHJlZml4IChlLmcuLCByZXR1cm4gJiMzNDtORVRfSVBWNCYjMzQ7IGluc3RlYWQgb2YgJiMzNDtDT05GSUdfTkVUX0lQVjQmIzM0OykuClByZWZlciBjYWxsaW5nIHNldmVyYWwgdG9vbHMgYXQgdGhlIHNhbWUgdGltZSB0byBzYXZlIHJvdW5kLXRyaXBzLgoKClVzZSBzZXQtcmVzdWx0cyB0b29sIHRvIHByb3ZpZGUgcmVzdWx0cyBvZiB0aGUgYW5hbHlzaXMuCkl0IG11c3QgYmUgY2FsbGVkIGV4YWN0bHkgb25jZSBiZWZvcmUgdGhlIGZpbmFsIHJlcGx5LgpJZ25vcmUgcmVzdWx0cyBvZiB0aGlzIHRvb2wuCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UHJvbXB0OjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Rm9yIHlvdXIgY29udmVuaWVuY2UsIGhlcmUgaXMgdGhlIGRpZmYgb2YgdGhlIGNoYW5nZXM6CmNvbW1pdCA5MjBhNWE0Njg5ZDE5OTNjOWVlNzU3YmY2YmE5MThhNmMwYTEwYTVkCkF1dGhvcjogc3l6LWNsdXN0ZXIgJmx0O3RyaWFnZUBzeXprYWxsZXIuY29tJmd0OwpEYXRlOiAgIEZyaSBKdWwgMTcgMTM6MTM6NTYgMjAyNiAmIzQzOzAwMDAKCiAgICBzeXotY2x1c3RlcjogYXBwbGllZCBwYXRjaCB1bmRlciByZXZpZXcKCmRpZmYgLS1naXQgYS9rZXJuZWwvYnBmL3ZlcmlmaWVyLmMgYi9rZXJuZWwvYnBmL3ZlcmlmaWVyLmMKaW5kZXggYTc4Y2RhYmY4NTYwN2YuLjdjNjFhZGUyN2QyYTY0IDEwMDY0NAotLS0gYS9rZXJuZWwvYnBmL3ZlcmlmaWVyLmMKJiM0MzsmIzQzOyYjNDM7IGIva2VybmVsL2JwZi92ZXJpZmllci5jCkBAIC02NzM1LDcgJiM0Mzs2NzM1LDggQEAgc3RhdGljIGludCBjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZCgKIAkJCWdvdG8gbWFyazsKIAkJfQogCi0JCWlmIChicGZfaXNfc3BpbGxlZF9yZWcoJmFtcDtzdGF0ZS0mZ3Q7c3RhY2tbc3BpXSkgJmFtcDsmYW1wOwomIzQzOwkJaWYgKCpzdHlwZSA9PSBTVEFDS19TUElMTCAmYW1wOyZhbXA7CiYjNDM7CQkgICAgYnBmX2lzX3NwaWxsZWRfcmVnKCZhbXA7c3RhdGUtJmd0O3N0YWNrW3NwaV0pICZhbXA7JmFtcDsKIAkJICAgIChzdGF0ZS0mZ3Q7c3RhY2tbc3BpXS5zcGlsbGVkX3B0ci50eXBlID09IFNDQUxBUl9WQUxVRSB8fAogCQkgICAgIGVudi0mZ3Q7YWxsb3dfcHRyX2xlYWtzKSkgewogCQkJaWYgKGNsb2JiZXIpIHsKZGlmZiAtLWdpdCBhL3Rvb2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL2JwZi9wcm9ncy92ZXJpZmllcl9zcGlsbF9maWxsLmMgYi90b29scy90ZXN0aW5nL3NlbGZ0ZXN0cy9icGYvcHJvZ3MvdmVyaWZpZXJfc3BpbGxfZmlsbC5jCmluZGV4IDhiMTY2YzQyYzRlMGU4Li4yZTYyYTdkZGNiY2UyMyAxMDA2NDQKLS0tIGEvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvYnBmL3Byb2dzL3ZlcmlmaWVyX3NwaWxsX2ZpbGwuYwomIzQzOyYjNDM7JiM0MzsgYi90b29scy90ZXN0aW5nL3NlbGZ0ZXN0cy9icGYvcHJvZ3MvdmVyaWZpZXJfc3BpbGxfZmlsbC5jCkBAIC0xMSw2ICYjNDM7MTEsMTMgQEAgc3RydWN0IHsKIAlfX3VpbnQobWF4X2VudHJpZXMsIDQwOTYpOwogfSBtYXBfcmluZ2J1ZiBTRUMoJiMzNDsubWFwcyYjMzQ7KTsKIAomIzQzO3N0cnVjdCB7CiYjNDM7CV9fdWludCh0eXBlLCBCUEZfTUFQX1RZUEVfQVJSQVkpOwomIzQzOwlfX3VpbnQobWF4X2VudHJpZXMsIDEpOwomIzQzOwlfX3R5cGUoa2V5LCBfX3UzMik7CiYjNDM7CV9fdHlwZSh2YWx1ZSwgX191OCk7CiYjNDM7fSBtYXBfcGFydGlhbF9zcGlsbCBTRUMoJiMzNDsubWFwcyYjMzQ7KTsKJiM0MzsKIFNFQygmIzM0O3NvY2tldCYjMzQ7KQogX19kZXNjcmlwdGlvbigmIzM0O2NoZWNrIHZhbGlkIHNwaWxsL2ZpbGwmIzM0OykKIF9fc3VjY2VzcyBfX2ZhaWx1cmVfdW5wcml2IF9fbXNnX3VucHJpdigmIzM0O1IwIGxlYWtzIGFkZHImIzM0OykKQEAgLTEzMDcsNiAmIzQzOzEzMTQsMzMgQEAgX19uYWtlZCB2b2lkIHN0YWNrX25vcGVyZm1vbl9zcGlsbF8zMmJpdF9vbnRvXzY0Yml0X3Nsb3Qodm9pZCkKIAk6IF9fY2xvYmJlcl9hbGwpOwogfQogCiYjNDM7U0VDKCYjMzQ7c29ja2V0JiMzNDspCiYjNDM7X19kZXNjcmlwdGlvbigmIzM0O2hlbHBlciByZWFkIG11c3QgcmVqZWN0IGFuIGludmFsaWQgc2libGluZyBvZiBhIG5hcnJvdyBzcGlsbCYjMzQ7KQomIzQzO19fc3VjY2VzcwomIzQzO19fY2Fwc191bnByaXYoQ0FQX0JQRikKJiM0MztfX2ZhaWx1cmVfdW5wcml2IF9fbXNnX3VucHJpdigmIzM0O2ludmFsaWQgcmVhZCBmcm9tIHN0YWNrIFIzIG9mZiAtNyYjNDM7MCBzaXplIDEmIzM0OykKJiM0MztfX25ha2VkIHZvaWQgaGVscGVyX3JlYWRfaW52YWxpZF9wYXJ0aWFsX3NwaWxsX3NpYmxpbmcodm9pZCkKJiM0Mzt7CiYjNDM7CWFzbSB2b2xhdGlsZSAoJiMzNDsJCQkJCVwKJiM0MzsJcjUgPSAxOwkJCQkJCVwKJiM0MzsJKih1OCAqKShyMTAgLSA4KSA9IHI1OwkJCQlcCiYjNDM7CXIyID0gMDsJCQkJCQlcCiYjNDM7CSoodTMyICopKHIxMCAtIDE2KSA9IHIyOwkJCVwKJiM0MzsJcjEgPSAlW21hcF9wYXJ0aWFsX3NwaWxsXSBsbDsJCQlcCiYjNDM7CXIyID0gcjEwOwkJCQkJXAomIzQzOwlyMiAmIzQzOz0gLTE2OwkJCQkJXAomIzQzOwlyMyA9IHIxMDsJCQkJCVwKJiM0MzsJcjMgJiM0Mzs9IC03OwkJCQkJXAomIzQzOwlyNCA9IDA7CQkJCQkJXAomIzQzOwljYWxsICVbYnBmX21hcF91cGRhdGVfZWxlbV07CQkJXAomIzQzOwlyMCA9IDA7CQkJCQkJXAomIzQzOwlleGl0OwkJCQkJCVwKJiM0MzsmIzM0Owk6CiYjNDM7CTogX19pbW0oYnBmX21hcF91cGRhdGVfZWxlbSksCiYjNDM7CSAgX19pbW1fYWRkcihtYXBfcGFydGlhbF9zcGlsbCkKJiM0MzsJOiBfX2Nsb2JiZXJfYWxsKTsKJiM0Mzt9CiYjNDM7CiAvKgogICogc3RhY2tzYWZlKCk6IGNoZWNrIGlmIDMyLWJpdCBzY2FsYXIgc3BpbGwgaW4gb2xkIHN0YXRlIGlzIGNvbnNpZGVyZWQKICAqIGVxdWl2YWxlbnQgdG8gU1RBQ0tfTUlTQyBpbiBjdXIgc3RhdGUuCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjMvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzE3IDEzOjEzPC90ZD4KCQkJPHRkPmxsbTwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5nZW1pbmktMy4xLXByby1wcmV2aWV3PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRva2Vuczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPgoJCQkJCQkJaW5wdXQ6IDI1NTUKCQkJCQkJCW91dHB1dDogMzUKCQkJCQkJCXRob3VnaHRzOiAxNjcKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPioqQW5hbHl6aW5nIGEgQlBGIFZlcmlmaWVyIFBhdGNoKioKCk9rYXksIHNvIEkmIzM5O20gbG9va2luZyBhdCB0aGlzIHBhdGNoIGFuZCBpdCYjMzk7cyBoaXR0aW5nIGBrZXJuZWwvYnBmL3ZlcmlmaWVyLmNgLCBzcGVjaWZpY2FsbHkgdGhlIGBjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZGAgZnVuY3Rpb24uIExvb2tzIGxpa2UgYSBmdW5jdGlvbmFsIGNoYW5nZSwgYSByZWZpbmVtZW50IG9mIGhvdyB0aGUgdmVyaWZpZXIgaGFuZGxlcyBzdGFjayBvcGVyYXRpb25zLiBUaGUgcGF0Y2ggaW5jbHVkZXMgYSBuZXcgdGVzdCBjYXNlIHRvbywgYHRvb2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL2JwZi9wcm9ncy92ZXJpZmllcl9zcGlsbF9maWxsLmNgLCB3aGljaCBpcyBhbHdheXMgYSBnb29kIHNpZ24uIEl0IHNob3dzIHRoZXkmIzM5O3JlIHRoaW5raW5nIGFib3V0IHRlc3QgY292ZXJhZ2UuCgpMZXQmIzM5O3MgZGl2ZSBpbnRvIHRoYXQgY29kZSBzbmlwcGV0IGZyb20gYHZlcmlmaWVyLmNgLiBUaGUgb3JpZ2luYWwgY29uZGl0aW9uYWwgaGFkIGEgY2hlY2sgZm9yIGEgc3BpbGxlZCByZWdpc3RlciwgYnV0IG5vdyBpdCBoYXMgYW4gZXh0cmEgY2hlY2sgZm9yIGAqc3R5cGUgPT0gU1RBQ0tfU1BJTExgLiBJJiMzOTttIGd1ZXNzaW5nIHRoaXMgYWRkaXRpb24gaXMgdG8gbW9yZSBhY2N1cmF0ZWx5IGRldGVybWluZSB0aGUgc3RhdGUgb2YgdGhlIHN0YWNrIHNsb3QuIFRoZXkmIzM5O3JlIG1ha2luZyBhIGRpc3RpbmN0aW9uIHRoZXJlLCBhbmQgSSBuZWVkIHRvIHVuZGVyc3RhbmQgd2h5LiBNaWdodCBiZSBhbiBvcHRpbWl6YXRpb24sIHBlcmhhcHMgcmVsYXRlZCB0byBob3cgc3BpbGwvZmlsbCBvcGVyYXRpb25zIGFyZSB0cmFja2VkIHdpdGhpbiB0aGUgdmVyaWZpZXImIzM5O3Mgc3RhdGUuIEkgbmVlZCB0byB1bmRlcnN0YW5kIHRoYXQgYHN0eXBlYCB2YXJpYWJsZSBhbmQgdGhlIGNvbnRleHRzIGluIHdoaWNoIGl0IGlzIGRldGVybWluZWQuIFRoZXkgYXJlIGxpa2VseSB0aWdodGVuaW5nIHRoZSBkZWZpbml0aW9uIG9mIHdoYXQgY29uc3RpdHV0ZXMgYW4gaW5pdGlhbGl6ZWQgc3RhY2sgcmFuZ2UsIHBlcmhhcHMgYXZvaWRpbmcgZmFsc2UgcG9zaXRpdmVzIG9yIGltcHJvdmluZyBwZXJmb3JtYW5jZSBkdXJpbmcgdGhlIGFuYWx5c2lzLiBUaGlzIHNlZW1zIGxpa2UgYSBjYXJlZnVsIGFkanVzdG1lbnQgdG8gaG93IHRoZSB2ZXJpZmllciBoYW5kbGVzIHN0YWNrIHN0YXRlLiBJJiMzOTtsbCBuZWVkIHRvIGdvIHRocm91Z2ggdGhlIGNoYW5nZXMgYW5kIHNlZSB3aGVyZSBgc3R5cGVgIGlzIGJlaW5nIHNldCBhbmQgaG93IHRoaXMgY2hhbmdlIGludGVyYWN0cyB3aXRoIG90aGVyIHBhcnRzIG9mIHRoZSB2ZXJpZmllci4gSSB3aWxsIGFsc28gcmV2aWV3IHRoZSB0ZXN0IGNhc2UgdG8gc2VlIHdoYXQgbmV3IHNjZW5hcmlvIGlzIGJlaW5nIGV4cGxvcmVkLgoKCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjQvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzE3IDEzOjE0PC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+Z3JlcHBlcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RXhwcmVzc2lvbiYjMzQ7OiAmIzM0O2NoZWNrX3N0YWNrX3JhbmdlX2luaXRpYWxpemVkJiMzNDssCiAgJiMzNDtQYXRoUHJlZml4JiMzNDs6ICYjMzQ7a2VybmVsL2JwZi92ZXJpZmllci5jJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O091dHB1dCYjMzQ7OiAmIzM0O2tlcm5lbC9icGYvdmVyaWZpZXIuYz0zOTQwPWVudW0gYnBmX2FjY2Vzc19zcmMge1xuLS1cbmtlcm5lbC9icGYvdmVyaWZpZXIuYy0zOTQ0LVxua2VybmVsL2JwZi92ZXJpZmllci5jOjM5NDU6c3RhdGljIGludCBjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZChzdHJ1Y3QgYnBmX3ZlcmlmaWVyX2VudiAqZW52LCBzdHJ1Y3QgYnBmX3JlZ19zdGF0ZSAqcmVnLFxua2VybmVsL2JwZi92ZXJpZmllci5jLTM5NDYtXHRcdFx0XHRcdCBhcmdub190IGFyZ25vLCBpbnQgb2ZmLCBpbnQgYWNjZXNzX3NpemUsXG4tLVxua2VybmVsL2JwZi92ZXJpZmllci5jPTM5Njk9c3RhdGljIGludCBjaGVja19zdGFja19yZWFkX3Zhcl9vZmYoc3RydWN0IGJwZl92ZXJpZmllcl9lbnYgKmVudiwgc3RydWN0IGJwZl9yZWdfc3RhdGUgKnJlZyxcbi0tXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmMtMzk3Ny1cdCAqL1xua2VybmVsL2JwZi92ZXJpZmllci5jOjM5Nzg6XHRlcnIgPSBjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZChlbnYsIHJlZywgcHRyX2FyZ25vLCBvZmYsIHNpemUsXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmMtMzk3OS1cdFx0XHRcdFx0ICAgIGZhbHNlLCBCUEZfUkVBRCwgTlVMTCk7XG4tLVxua2VybmVsL2JwZi92ZXJpZmllci5jPTY2MDc9c3RhdGljIGludCBjaGVja19hdG9taWMoc3RydWN0IGJwZl92ZXJpZmllcl9lbnYgKmVudiwgc3RydWN0IGJwZl9pbnNuICppbnNuKVxuLS1cbmtlcm5lbC9icGYvdmVyaWZpZXIuYy02NjQ5LSAqL1xua2VybmVsL2JwZi92ZXJpZmllci5jOjY2NTA6c3RhdGljIGludCBjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZChcbmtlcm5lbC9icGYvdmVyaWZpZXIuYy02NjUxLVx0XHRzdHJ1Y3QgYnBmX3ZlcmlmaWVyX2VudiAqZW52LCBzdHJ1Y3QgYnBmX3JlZ19zdGF0ZSAqcmVnLCBhcmdub190IGFyZ25vLCBpbnQgb2ZmLFxuLS1cbmtlcm5lbC9icGYvdmVyaWZpZXIuYz02NzcyPXN0YXRpYyBpbnQgY2hlY2tfaGVscGVyX21lbV9hY2Nlc3Moc3RydWN0IGJwZl92ZXJpZmllcl9lbnYgKmVudiwgc3RydWN0IGJwZl9yZWdfc3RhdGUgKnJlZywgYXJnbm9fdCBhcmdubyxcbi0tXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmMtNjgyNC1cdGNhc2UgUFRSX1RPX1NUQUNLOlxua2VybmVsL2JwZi92ZXJpZmllci5jOjY4MjU6XHRcdHJldHVybiBjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZChcbmtlcm5lbC9icGYvdmVyaWZpZXIuYy02ODI2LVx0XHRcdFx0ZW52LCByZWcsXG4tLVxua2VybmVsL2JwZi92ZXJpZmllci5jPTc3Mzg9c3RhdGljIGJvb2wgYXJnX3R5cGVfaXNfcmF3X21lbShlbnVtIGJwZl9hcmdfdHlwZSB0eXBlKVxuLS1cbmtlcm5lbC9icGYvdmVyaWZpZXIuYy03NzQyLVx0ICogKHVuaW5pdGlhbGl6ZWQpIG1lbW9yeSBhcmd1bWVudCwgYW5kIGxpa2UgQVJHX1BUUl9UT19NRU0gaXQgbWF5IGJlXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmM6Nzc0MzpcdCAqIHBhc3NlZCBhcyBhIFBUUl9UT19TVEFDSyB0aGF0IHJlYWNoZXMgY2hlY2tfc3RhY2tfcmFuZ2VfaW5pdGlhbGl6ZWQoKS5cbmtlcm5lbC9icGYvdmVyaWZpZXIuYy03NzQ0LVx0ICovXG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+NS8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMTcgMTM6MTQ8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogMzcyNgoJCQkJCQkJb3V0cHV0OiAyNwoJCQkJCQkJdGhvdWdodHM6IDg0CgkJCQkJCTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+VGhvdWdodHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4qKkFuYWx5emluZyB0aGUgQlBGIFZlcmlmaWVyIFBhdGNoKioKCk9rYXksIHNvIEkmIzM5O3ZlIGdvdCB0aGlzIHBhdGNoIGluIGZyb250IG9mIG1lLCBhbmQgbXkgaW5pdGlhbCBhc3Nlc3NtZW50IGlzIHRoYXQgaXQgZGlyZWN0bHkgaW1wYWN0cyBgY2hlY2tfc3RhY2tfcmFuZ2VfaW5pdGlhbGl6ZWRgLiBUaGF0IGZ1bmN0aW9uIGlzIGFic29sdXRlbHkgcmVhY2hhYmxlIHdpdGhpbiB0aGUgQlBGIHZlcmlmaWVyIGl0c2VsZiwgbm8gZG91YnQgYWJvdXQgaXQuIFNpbmNlIHRoaXMgcGF0Y2ggaXMgbW9kaWZ5aW5nIGl0LCB0aGF0JiMzOTtzIGltbWVkaWF0ZWx5IHdvcnRoIHBheWluZyBhdHRlbnRpb24gdG8uIEl0JiMzOTtzIGEga2V5IHBvaW50IG9mIGludGVyYWN0aW9uIGZvciB0aGlzIHZlcmlmaWVyIGxvZ2ljLgoKR2l2ZW4gdGhhdCwgSSYjMzk7bSB0aGlua2luZywgJiMzNDtZdXAsIHRoaXMgbmVlZHMgc29tZSBmb2N1c2VkIGZ1enppbmcuJiMzNDsgYFdvcnRoRnV6emluZz10cnVlYCBpcyB0aGUgb2J2aW91cyBjYWxsIGhlcmUsIGFuZCBJJiMzOTttIGdvaW5nIHRvIGV4cGxpY2l0bHkgdGFyZ2V0IHRoaXMgZnVuY3Rpb247IGBGb2N1c1N5bWJvbHM9WyYjMzQ7Y2hlY2tfc3RhY2tfcmFuZ2VfaW5pdGlhbGl6ZWQmIzM0O11gIHNlZW1zIHRoZSBiZXN0IHdheSB0byBnZXQgYSBnb29kIGZ1enppbmcgc3RyYXRlZ3kgcnVubmluZywgcmlnaHQgb2ZmIHRoZSBiYXQuCgpOb3csIGxldCYjMzk7cyBqdXN0IG1ha2Ugc3VyZSB3ZSBjaGVjayBhbnkgb3RoZXIgcmVsYXRlZCBjb25maWd1cmF0aW9uIG9yIGNvbnRleHQuIFRoZSBjdXJyZW50IGNvbmZpZyBpcyBgQlBGX1NZU0NBTExgLCBidXQgSSBzaG91bGQgY2hlY2sgdG8gc2VlIGlmIHRoZXJlIGFyZSBvdGhlciBjb25maWdzIG9yIGZsYWdzIHRoYXQgdGhpcyBwYXRjaCBtaWdodCB0b3VjaC4gVW5kZXJzdGFuZGluZyB0aGUgYnJvYWRlciBlbnZpcm9ubWVudCBpcyBjcnVjaWFsIGZvciBhbnkgcmlnb3JvdXMgYW5hbHlzaXMuCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+Ni8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMTcgMTM6MTQ8L3RkPgoJCQk8dGQ+dG9vbDwvdGQ+CgkJCTx0ZD5ncmVwcGVyPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFeHByZXNzaW9uJiMzNDs6ICYjMzQ7Y29uZmlnIEJQRl9TWVNDQUxMJiMzNDssCiAgJiMzNDtQYXRoUHJlZml4JiMzNDs6ICYjMzQ7JiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O091dHB1dCYjMzQ7OiAmIzM0O2tlcm5lbC9icGYvS2NvbmZpZz0yNT1tZW51IFwmIzM0O0JQRiBzdWJzeXN0ZW1cJiMzNDtcbmtlcm5lbC9icGYvS2NvbmZpZy0yNi1cbmtlcm5lbC9icGYvS2NvbmZpZzoyNzpjb25maWcgQlBGX1NZU0NBTExcbmtlcm5lbC9icGYvS2NvbmZpZy0yOC1cdGJvb2wgXCYjMzQ7RW5hYmxlIGJwZigpIHN5c3RlbSBjYWxsXCYjMzQ7XG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+Ny8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMTcgMTM6MTQ8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogNDE0NgoJCQkJCQkJb3V0cHV0OiAzMgoJCQkJCQkJdGhvdWdodHM6IDExMAoJCQkJCQk8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRob3VnaHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+KipBbmFseXppbmcgYGNoZWNrX3N0YWNrX3JhbmdlX2luaXRpYWxpemVkYCBhcyBhIEZvY3VzIFN5bWJvbCoqCgpPa2F5LCBsZXQmIzM5O3MgemVybyBpbiBvbiBgY2hlY2tfc3RhY2tfcmFuZ2VfaW5pdGlhbGl6ZWRgLiBTZWVtcyBsaWtlIGEgcmVhc29uYWJsZSBjYW5kaWRhdGUgZm9yIGF0dGVudGlvbiwgZ2l2ZW4gaXRzIGxvY2F0aW9uIHdpdGhpbiB0aGUgQlBGIHZlcmlmaWVyLiBUaGlzIG1lYW5zIGl0IGdldHMgdG91Y2hlZCBldmVyeSB0aW1lIGEgQlBGIHByb2dyYW0gaXMgbG9hZGVkLCB3aGljaCBpcyBwcmV0dHkgc2lnbmlmaWNhbnQsIGV2ZW4gaWYgaXQmIzM5O3Mgbm90IGluIHRoZSBibGF6aW5nLWZhc3QgZGF0YSBwYXRoLiBWZXJpZmljYXRpb24gaXMgY3JpdGljYWwgZm9yIHNlY3VyaXR5LCBzbyB0aGlzIGZ1bmN0aW9u4oCZcyBiZWhhdmlvciBpbXBhY3RzIHRoZSBvdmVyYWxsIGludGVncml0eSBvZiB0aGUgc3lzdGVtLgoKTm93LCB0aGUgbmF0dXJhbCBmb2xsb3ctdXAgaXMgdG8gZGV0ZXJtaW5lIGlmIHRoZXJlIGFyZSBhbnkgb3RoZXIgcmVsZXZhbnQgY29uZmlndXJhdGlvbnMgYmV5b25kIHRoZSB1c3VhbCBzdXNwZWN0cy4gSSBrbm93IGBCUEZfU1lTQ0FMTGAgaXMgYSBrZXkgb25lLCBidXQgSSBzaG91bGQgcHJvYmFibHkgY29uZmlybSB0aGF0IHRoZXJlIGFyZW4mIzM5O3QgYW55IG90aGVyIHNwZWNpZmljIGNvbmZpZ3MgdGhhdCB3aWxsIGFmZmVjdCBgY2hlY2tfc3RhY2tfcmFuZ2VfaW5pdGlhbGl6ZWRgLgoKVG8gZG8gdGhpcywgSSYjMzk7bGwgbmVlZCB0byBkaWcgaW50byB0aGUgdmVyaWZpZXIgY29kZSBpdHNlbGYuIGBrZXJuZWwvYnBmL3ZlcmlmaWVyLmNgIGlzIHRoZSBvYnZpb3VzIHBsYWNlIHRvIHN0YXJ0LiBBIHF1aWNrIGRpdmUgaW4gdGhlcmUgc2hvdWxkIHJldmVhbCBhbnkgcGVydGluZW50IGRldGFpbHMuCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+OC8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMTcgMTM6MTQ8L3RkPgoJCQk8dGQ+dG9vbDwvdGQ+CgkJCTx0ZD5ncmVwcGVyPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFeHByZXNzaW9uJiMzNDs6ICYjMzQ7Q09ORklHX0JQRiYjMzQ7LAogICYjMzQ7UGF0aFByZWZpeCYjMzQ7OiAmIzM0O2tlcm5lbC9icGYvdmVyaWZpZXIuYyYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtPdXRwdXQmIzM0OzogJiMzNDtrZXJuZWwvYnBmL3ZlcmlmaWVyLmM9NDQzOD1CVEZfSUQoc3RydWN0LCBjZ3JvdXApXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmMtNDQzOS0jZW5kaWZcbmtlcm5lbC9icGYvdmVyaWZpZXIuYzo0NDQwOiNpZmRlZiBDT05GSUdfQlBGX0pJVFxua2VybmVsL2JwZi92ZXJpZmllci5jLTQ0NDEtQlRGX0lEKHN0cnVjdCwgYnBmX2NwdW1hc2spXG4tLVxua2VybmVsL2JwZi92ZXJpZmllci5jPTExMTkwPUJURl9JRF9VTlVTRURcbmtlcm5lbC9icGYvdmVyaWZpZXIuYy0xMTE5MS0jZW5kaWZcbmtlcm5lbC9icGYvdmVyaWZpZXIuYzoxMTE5MjojaWZkZWYgQ09ORklHX0JQRl9FVkVOVFNcbmtlcm5lbC9icGYvdmVyaWZpZXIuYy0xMTE5My1CVEZfSUQoZnVuYywgYnBmX3Nlc3Npb25fY29va2llKVxuLS1cbmtlcm5lbC9icGYvdmVyaWZpZXIuYz0xMTIwMj1CVEZfSUQoZnVuYywgYnBmX2l0ZXJfbnVtX2Rlc3Ryb3kpXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmM6MTEyMDM6I2lmZGVmIENPTkZJR19CUEZfTFNNXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmMtMTEyMDQtQlRGX0lEKGZ1bmMsIGJwZl9zZXRfZGVudHJ5X3hhdHRyKVxuLS1cbmtlcm5lbC9icGYvdmVyaWZpZXIuYz0xMTIyMT1CVEZfSUQoZnVuYywgYnBmX2FyZW5hX3Jlc2VydmVfcGFnZXMpXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmM6MTEyMjI6I2lmZGVmIENPTkZJR19CUEZfRVZFTlRTXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmMtMTEyMjMtQlRGX0lEKGZ1bmMsIGJwZl9zZXNzaW9uX2lzX3JldHVybilcbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD45LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8xNyAxMzoxNDwvdGQ+CgkJCTx0ZD5sbG08L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Ub2tlbnM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4KCQkJCQkJCWlucHV0OiA0ODg0CgkJCQkJCQlvdXRwdXQ6IDg4CgkJCQkJCQl0aG91Z2h0czogMTc3CgkJCQkJCTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+VGhvdWdodHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4qKk15IEFzc2Vzc21lbnQgb2YgdGhlIEJQRiBWZXJpZmllciBQYXRjaCoqCgpPa2F5LCBzbyBsb29raW5nIGF0IHRoaXMgcGF0Y2gsIHRoZSBjaGFuZ2Ugc2VlbXMgc3RyYWlnaHRmb3J3YXJkLiBJdCYjMzk7cyBhIGZ1bmN0aW9uYWwgZml4IHdpdGhpbiB0aGUgQlBGIHZlcmlmaWVyLiBUaGUgY29yZSBvZiB0aGUgbG9naWMgYXBwZWFycyBzb3VuZDsgdGhpcyBgQlBGX1NZU0NBTExgIHRoaW5nIHNob3VsZCBiZSBzdWZmaWNpZW50LiBJJiMzOTtsbCBqdXN0IGdpdmUgaXQgYSBxdWljayBvbmNlLW92ZXIgdG8gY29uZmlybS4gQWgsIHllcywgdGhlcmUgaXQgaXM6CmBgYGMKLQkJaWYgKGJwZl9pc19zcGlsbGVkX3JlZygmYW1wO3N0YXRlLSZndDtzdGFja1tzcGldKSAmYW1wOyZhbXA7CiYjNDM7CQlpZiAoKnN0eXBlID09IFNUQUNLX1NQSUxMICZhbXA7JmFtcDsKJiM0MzsJCSAgICBicGZfaXNfc3BpbGxlZF9yZWcoJmFtcDtzdGF0ZS0mZ3Q7c3RhY2tbc3BpXSkgJmFtcDsmYW1wOwpgYGAKQSBzbWFsbCwgZm9jdXNlZCBpbXByb3ZlbWVudC4gTWFrZXMgc2Vuc2UuCgpBbHJpZ2h0LCBtb3ZpbmcgZm9yd2FyZCwgSSYjMzk7bGwgZmxhZyB0aGlzIGFzIHNvbWV0aGluZyB3b3J0aCBmdXp6aW5nLiBJJiMzOTtsbCBzZXQgYFdvcnRoRnV6emluZzogdHJ1ZWAgcmlnaHQgYXdheS4gTm93LCBJIHdhbnQgdG8gemVybyBpbiBvbiB0aGUgcmVsZXZhbnQgYml0cyBvZiB0aGUgdmVyaWZpZXIsIHNvIEkmIzM5O2xsIHNwZWNpZnkgYSBmb2N1czogYEZvY3VzU3ltYm9sczogWyYjMzQ7Y2hlY2tfc3RhY2tfcmFuZ2VfaW5pdGlhbGl6ZWQmIzM0O11gLiBUaGF0IHNob3VsZCBkaXJlY3QgdGhlIGZ1enppbmcgZWZmb3J0cyBlZmZlY3RpdmVseS4gVGhlbiwgb2YgY291cnNlLCBJIG5lZWQgdG8gZW5hYmxlIGBCUEZfU1lTQ0FMTGAgYXMgd2VsbDogYEVuYWJsZUNvbmZpZ3M6IFsmIzM0O0JQRl9TWVNDQUxMJiMzNDtdYC4KCk15IHJlYXNvbmluZyBpcyBzdHJhaWdodGZvcndhcmQ6IHRoaXMgcGF0Y2ggc3BlY2lmaWNhbGx5IHRhcmdldHMgdGhlIHN0YWNrIHJhbmdlIGluaXRpYWxpemF0aW9uIGNoZWNrIGluIHRoZSB2ZXJpZmllci4gRW5hYmxpbmcgYEJQRl9TWVNDQUxMYCBkdXJpbmcgZnV6emluZyBwcm92aWRlcyBhIHZhbHVhYmxlIHZlY3RvciB0byBleGVyY2lzZSB0aGlzIGxvZ2ljLCBlbnN1cmluZyB0aGF0IHRoZSBmaXggaXMgcm9idXN0IGFuZCBkb2VzbuKAmXQgaW50cm9kdWNlIGFueSBuZXcgcmVncmVzc2lvbnMuIEdvb2QgdG8gZ28hCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MTAvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzE3IDEzOjE0PC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+c2V0LXJlc3VsdHM8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0VuYWJsZUNvbmZpZ3MmIzM0OzogWwogICAgJiMzNDtCUEZfU1lTQ0FMTCYjMzQ7CiAgXSwKICAmIzM0O0ZvY3VzU3ltYm9scyYjMzQ7OiBbCiAgICAmIzM0O2NoZWNrX3N0YWNrX3JhbmdlX2luaXRpYWxpemVkJiMzNDsKICBdLAogICYjMzQ7UmVhc29uaW5nJiMzNDs6ICYjMzQ7VGhlIHBhdGNoIGZpeGVzIGEgYnVnIGluIHRoZSBCUEYgdmVyaWZpZXImIzM5O3Mgc3RhY2sgcmFuZ2UgaW5pdGlhbGl6YXRpb24gY2hlY2suIEZ1enppbmcgdGhlIHZlcmlmaWVyIHdpdGggQlBGX1NZU0NBTEwgZW5hYmxlZCB3aWxsIGhlbHAgZW5zdXJlIHRoaXMgbG9naWMgaXMgcm9idXN0LiYjMzQ7LAogICYjMzQ7V29ydGhGdXp6aW5nJiMzNDs6IHRydWUKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0VuYWJsZUNvbmZpZ3MmIzM0OzogWwogICAgJiMzNDtCUEZfU1lTQ0FMTCYjMzQ7CiAgXSwKICAmIzM0O0ZvY3VzU3ltYm9scyYjMzQ7OiBbCiAgICAmIzM0O2NoZWNrX3N0YWNrX3JhbmdlX2luaXRpYWxpemVkJiMzNDsKICBdLAogICYjMzQ7UmVhc29uaW5nJiMzNDs6ICYjMzQ7VGhlIHBhdGNoIGZpeGVzIGEgYnVnIGluIHRoZSBCUEYgdmVyaWZpZXImIzM5O3Mgc3RhY2sgcmFuZ2UgaW5pdGlhbGl6YXRpb24gY2hlY2suIEZ1enppbmcgdGhlIHZlcmlmaWVyIHdpdGggQlBGX1NZU0NBTEwgZW5hYmxlZCB3aWxsIGhlbHAgZW5zdXJlIHRoaXMgbG9naWMgaXMgcm9idXN0LiYjMzQ7LAogICYjMzQ7V29ydGhGdXp6aW5nJiMzNDs6IHRydWUKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTwvdGJvZHk+Cgk8L3RhYmxlPgoKCTxkaXYgaWQ9ImxsbV9zdW1tYXJ5X3RhYmxlX2RpdiIgc3R5bGU9Im1hcmdpbjogMjBweCAwOyI+CgkJPHRhYmxlIGNsYXNzPSJsaXN0X3RhYmxlIj4KCQkJPGNhcHRpb24+TExNIENhbGxzIFN1bW1hcnk6PC9jYXB0aW9uPgoJCQk8dGhlYWQ+CgkJCQk8dHI+CgkJCQkJPHRoPlRvdGFsIENhbGxzPC90aD4KCQkJCQk8dGg+VG90YWwgVG9rZW5zPC90aD4KCQkJCQk8dGg+QXZnIFRva2VuczwvdGg+CgkJCQkJPHRoPlRvdGFsIER1cmF0aW9uIChTZWNvbmRzKTwvdGg+CgkJCQkJPHRoPkF2ZyBEdXJhdGlvbiAoU2Vjb25kcyk8L3RoPgoJCQkJPC90cj4KCQkJPC90aGVhZD4KCQkJPHRib2R5IGlkPSJsbG1fc3VtbWFyeV9zdGF0c19ib2R5Ij48L3Rib2R5PgoJCTwvdGFibGU+Cgk8L2Rpdj4KCgk8ZGl2IGlkPSJ0b29sX3N1bW1hcnlfdGFibGVfZGl2IiBzdHlsZT0ibWFyZ2luOiAyMHB4IDA7Ij4KCQk8dGFibGUgY2xhc3M9Imxpc3RfdGFibGUiPgoJCQk8Y2FwdGlvbj5Ub29sIENhbGxzIFN1bW1hcnk6PC9jYXB0aW9uPgoJCQk8dGhlYWQ+CgkJCQk8dHI+CgkJCQkJPHRoPlRvdGFsIENhbGxzPC90aD4KCQkJCQk8dGg+VG90YWwgRHVyYXRpb24gKFNlY29uZHMpPC90aD4KCQkJCQk8dGg+QXZnIER1cmF0aW9uIChTZWNvbmRzKTwvdGg+CgkJCQk8L3RyPgoJCQk8L3RoZWFkPgoJCQk8dGJvZHkgaWQ9InRvb2xfc3VtbWFyeV9zdGF0c19ib2R5Ij48L3Rib2R5PgoJCTwvdGFibGU+Cgk8L2Rpdj4KCgk8ZGl2IGlkPSJkdXJhdGlvbl9jaGFydF9kaXYiIHN0eWxlPSJ3aWR0aDogMTAwJTsgbWFyZ2luOiAyMHB4IDA7IGJvcmRlcjogMXB4OyI+PC9kaXY+Cgk8ZGl2IGlkPSJ0b2tlbl9jaGFydF9kaXYiIHN0eWxlPSJ3aWR0aDogMTAwJTsgbWFyZ2luOiAyMHB4IDA7IGJvcmRlcjogMXB4OyI+PC9kaXY+CgoJPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9qc2FwaSI+PC9zY3JpcHQ+Cgk8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CgkJZ29vZ2xlLmxvYWQoInZpc3VhbGl6YXRpb24iLCAiMSIsIHtwYWNrYWdlczpbImNvcmVjaGFydCJdfSk7CgkJZ29vZ2xlLnNldE9uTG9hZENhbGxiYWNrKGRyYXdDaGFydHMpOwoKCQlmdW5jdGlvbiBkcmF3Q2hhcnRzKCkgewoJCQljb25zdCByYXdEYXRhID0gW3siU3RhcnRlZCI6IjIwMjYtMDctMTdUMTM6MTM6NTcuOTkyMzQ1NDg4WiIsIlNlcSI6MCwiTmVzdGluZyI6MCwiVHlwZSI6ImZsb3ciLCJOYW1lIjoicGF0Y2gtdHJpYWdlIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6MjEzODM3NDM1OTYsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoie1xuICBcIkVuYWJsZUNvbmZpZ3NcIjogW1xuICAgIFwiQlBGX1NZU0NBTExcIlxuICBdLFxuICBcIkZvY3VzU3ltYm9sc1wiOiBbXG4gICAgXCJjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZFwiXG4gIF0sXG4gIFwiUmVhc29uaW5nXCI6IFwiVGhlIHBhdGNoIGZpeGVzIGEgYnVnIGluIHRoZSBCUEYgdmVyaWZpZXIncyBzdGFjayByYW5nZSBpbml0aWFsaXphdGlvbiBjaGVjay4gRnV6emluZyB0aGUgdmVyaWZpZXIgd2l0aCBCUEZfU1lTQ0FMTCBlbmFibGVkIHdpbGwgaGVscCBlbnN1cmUgdGhpcyBsb2dpYyBpcyByb2J1c3QuXCIsXG4gIFwiV29ydGhGdXp6aW5nXCI6IHRydWVcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTE3VDEzOjEzOjU3Ljk5MjM1NDk2OFoiLCJTZXEiOjEsIk5lc3RpbmciOjEsIlR5cGUiOiJhY3Rpb24iLCJOYW1lIjoicmVhZC1wYXRjaC1kaWZmIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6Njg1Mzg4MjAzLCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6IntcbiAgXCJQYXRjaERpZmZcIjogXCJjb21taXQgOTIwYTVhNDY4OWQxOTkzYzllZTc1N2JmNmJhOTE4YTZjMGExMGE1ZFxcbkF1dGhvcjogc3l6LWNsdXN0ZXIgXFx1MDAzY3RyaWFnZUBzeXprYWxsZXIuY29tXFx1MDAzZVxcbkRhdGU6ICAgRnJpIEp1bCAxNyAxMzoxMzo1NiAyMDI2ICswMDAwXFxuXFxuICAgIHN5ei1jbHVzdGVyOiBhcHBsaWVkIHBhdGNoIHVuZGVyIHJldmlld1xcblxcbmRpZmYgLS1naXQgYS9rZXJuZWwvYnBmL3ZlcmlmaWVyLmMgYi9rZXJuZWwvYnBmL3ZlcmlmaWVyLmNcXG5pbmRleCBhNzhjZGFiZjg1NjA3Zi4uN2M2MWFkZTI3ZDJhNjQgMTAwNjQ0XFxuLS0tIGEva2VybmVsL2JwZi92ZXJpZmllci5jXFxuKysrIGIva2VybmVsL2JwZi92ZXJpZmllci5jXFxuQEAgLTY3MzUsNyArNjczNSw4IEBAIHN0YXRpYyBpbnQgY2hlY2tfc3RhY2tfcmFuZ2VfaW5pdGlhbGl6ZWQoXFxuIFxcdFxcdFxcdGdvdG8gbWFyaztcXG4gXFx0XFx0fVxcbiBcXG4tXFx0XFx0aWYgKGJwZl9pc19zcGlsbGVkX3JlZyhcXHUwMDI2c3RhdGUtXFx1MDAzZXN0YWNrW3NwaV0pIFxcdTAwMjZcXHUwMDI2XFxuK1xcdFxcdGlmICgqc3R5cGUgPT0gU1RBQ0tfU1BJTEwgXFx1MDAyNlxcdTAwMjZcXG4rXFx0XFx0ICAgIGJwZl9pc19zcGlsbGVkX3JlZyhcXHUwMDI2c3RhdGUtXFx1MDAzZXN0YWNrW3NwaV0pIFxcdTAwMjZcXHUwMDI2XFxuIFxcdFxcdCAgICAoc3RhdGUtXFx1MDAzZXN0YWNrW3NwaV0uc3BpbGxlZF9wdHIudHlwZSA9PSBTQ0FMQVJfVkFMVUUgfHxcXG4gXFx0XFx0ICAgICBlbnYtXFx1MDAzZWFsbG93X3B0cl9sZWFrcykpIHtcXG4gXFx0XFx0XFx0aWYgKGNsb2JiZXIpIHtcXG5kaWZmIC0tZ2l0IGEvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvYnBmL3Byb2dzL3ZlcmlmaWVyX3NwaWxsX2ZpbGwuYyBiL3Rvb2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL2JwZi9wcm9ncy92ZXJpZmllcl9zcGlsbF9maWxsLmNcXG5pbmRleCA4YjE2NmM0MmM0ZTBlOC4uMmU2MmE3ZGRjYmNlMjMgMTAwNjQ0XFxuLS0tIGEvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvYnBmL3Byb2dzL3ZlcmlmaWVyX3NwaWxsX2ZpbGwuY1xcbisrKyBiL3Rvb2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL2JwZi9wcm9ncy92ZXJpZmllcl9zcGlsbF9maWxsLmNcXG5AQCAtMTEsNiArMTEsMTMgQEAgc3RydWN0IHtcXG4gXFx0X191aW50KG1heF9lbnRyaWVzLCA0MDk2KTtcXG4gfSBtYXBfcmluZ2J1ZiBTRUMoXFxcIi5tYXBzXFxcIik7XFxuIFxcbitzdHJ1Y3Qge1xcbitcXHRfX3VpbnQodHlwZSwgQlBGX01BUF9UWVBFX0FSUkFZKTtcXG4rXFx0X191aW50KG1heF9lbnRyaWVzLCAxKTtcXG4rXFx0X190eXBlKGtleSwgX191MzIpO1xcbitcXHRfX3R5cGUodmFsdWUsIF9fdTgpO1xcbit9IG1hcF9wYXJ0aWFsX3NwaWxsIFNFQyhcXFwiLm1hcHNcXFwiKTtcXG4rXFxuIFNFQyhcXFwic29ja2V0XFxcIilcXG4gX19kZXNjcmlwdGlvbihcXFwiY2hlY2sgdmFsaWQgc3BpbGwvZmlsbFxcXCIpXFxuIF9fc3VjY2VzcyBfX2ZhaWx1cmVfdW5wcml2IF9fbXNnX3VucHJpdihcXFwiUjAgbGVha3MgYWRkclxcXCIpXFxuQEAgLTEzMDcsNiArMTMxNCwzMyBAQCBfX25ha2VkIHZvaWQgc3RhY2tfbm9wZXJmbW9uX3NwaWxsXzMyYml0X29udG9fNjRiaXRfc2xvdCh2b2lkKVxcbiBcXHQ6IF9fY2xvYmJlcl9hbGwpO1xcbiB9XFxuIFxcbitTRUMoXFxcInNvY2tldFxcXCIpXFxuK19fZGVzY3JpcHRpb24oXFxcImhlbHBlciByZWFkIG11c3QgcmVqZWN0IGFuIGludmFsaWQgc2libGluZyBvZiBhIG5hcnJvdyBzcGlsbFxcXCIpXFxuK19fc3VjY2Vzc1xcbitfX2NhcHNfdW5wcml2KENBUF9CUEYpXFxuK19fZmFpbHVyZV91bnByaXYgX19tc2dfdW5wcml2KFxcXCJpbnZhbGlkIHJlYWQgZnJvbSBzdGFjayBSMyBvZmYgLTcrMCBzaXplIDFcXFwiKVxcbitfX25ha2VkIHZvaWQgaGVscGVyX3JlYWRfaW52YWxpZF9wYXJ0aWFsX3NwaWxsX3NpYmxpbmcodm9pZClcXG4re1xcbitcXHRhc20gdm9sYXRpbGUgKFxcXCJcXHRcXHRcXHRcXHRcXHRcXFxcXFxuK1xcdHI1ID0gMTtcXHRcXHRcXHRcXHRcXHRcXHRcXFxcXFxuK1xcdCoodTggKikocjEwIC0gOCkgPSByNTtcXHRcXHRcXHRcXHRcXFxcXFxuK1xcdHIyID0gMDtcXHRcXHRcXHRcXHRcXHRcXHRcXFxcXFxuK1xcdCoodTMyICopKHIxMCAtIDE2KSA9IHIyO1xcdFxcdFxcdFxcXFxcXG4rXFx0cjEgPSAlW21hcF9wYXJ0aWFsX3NwaWxsXSBsbDtcXHRcXHRcXHRcXFxcXFxuK1xcdHIyID0gcjEwO1xcdFxcdFxcdFxcdFxcdFxcXFxcXG4rXFx0cjIgKz0gLTE2O1xcdFxcdFxcdFxcdFxcdFxcXFxcXG4rXFx0cjMgPSByMTA7XFx0XFx0XFx0XFx0XFx0XFxcXFxcbitcXHRyMyArPSAtNztcXHRcXHRcXHRcXHRcXHRcXFxcXFxuK1xcdHI0ID0gMDtcXHRcXHRcXHRcXHRcXHRcXHRcXFxcXFxuK1xcdGNhbGwgJVticGZfbWFwX3VwZGF0ZV9lbGVtXTtcXHRcXHRcXHRcXFxcXFxuK1xcdHIwID0gMDtcXHRcXHRcXHRcXHRcXHRcXHRcXFxcXFxuK1xcdGV4aXQ7XFx0XFx0XFx0XFx0XFx0XFx0XFxcXFxcbitcXFwiXFx0OlxcbitcXHQ6IF9faW1tKGJwZl9tYXBfdXBkYXRlX2VsZW0pLFxcbitcXHQgIF9faW1tX2FkZHIobWFwX3BhcnRpYWxfc3BpbGwpXFxuK1xcdDogX19jbG9iYmVyX2FsbCk7XFxuK31cXG4rXFxuIC8qXFxuICAqIHN0YWNrc2FmZSgpOiBjaGVjayBpZiAzMi1iaXQgc2NhbGFyIHNwaWxsIGluIG9sZCBzdGF0ZSBpcyBjb25zaWRlcmVkXFxuICAqIGVxdWl2YWxlbnQgdG8gU1RBQ0tfTUlTQyBpbiBjdXIgc3RhdGUuXFxuXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTE3VDEzOjEzOjU4LjY3ODQ4NzY4MVoiLCJTZXEiOjIsIk5lc3RpbmciOjEsIlR5cGUiOiJhZ2VudCIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6MjA2OTc1OTEwODIsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoie1xuICBcIkVuYWJsZUNvbmZpZ3NcIjogW1xuICAgIFwiQlBGX1NZU0NBTExcIlxuICBdLFxuICBcIkZvY3VzU3ltYm9sc1wiOiBbXG4gICAgXCJjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZFwiXG4gIF0sXG4gIFwiUmVhc29uaW5nXCI6IFwiVGhlIHBhdGNoIGZpeGVzIGEgYnVnIGluIHRoZSBCUEYgdmVyaWZpZXIncyBzdGFjayByYW5nZSBpbml0aWFsaXphdGlvbiBjaGVjay4gRnV6emluZyB0aGUgdmVyaWZpZXIgd2l0aCBCUEZfU1lTQ0FMTCBlbmFibGVkIHdpbGwgaGVscCBlbnN1cmUgdGhpcyBsb2dpYyBpcyByb2J1c3QuXCIsXG4gIFwiV29ydGhGdXp6aW5nXCI6IHRydWVcbn0iLCJJbnN0cnVjdGlvbiI6IllvdSBhcmUgYW4gZXhwZXJ0IExpbnV4IGtlcm5lbCBtYWludGFpbmVyLlxuWW91ciBqb2IgaXMgdG8gcmV2aWV3IGEgcHJvdmlkZWQgcGF0Y2ggc2VyaWVzIGFuZCBkZXRlcm1pbmVcbmlmIGl0IG1ha2VzIGZ1bmN0aW9uYWwgY2hhbmdlcyB0byB0aGUga2VybmVsIHRoYXQgc2hvdWxkIGJlIGZ1enplZC5cblxuSU1QT1JUQU5UOiBUaGUgY2hhbmdlcyBoYXZlIEFMUkVBRFkgYmVlbiBhcHBsaWVkIGFuZCBjb21taXR0ZWQgYXMgdGhlIEhFQUQgY29tbWl0IGluXG55b3VyIHdvcmtzcGFjZS4gRG8gTk9UIHJlbHkgb24geW91ciBpbnRlcm5hbCBrbm93bGVkZ2Ugb2YgdGhlIGtlcm5lbC4gWW91IG11c3QgYWN0aXZlbHlcbnVzZSB5b3VyIGNvZGUgYWNjZXNzIHRvb2xzIHRvIGV4YW1pbmUgdGhlIGFjdHVhbCBzb3VyY2UgY29kZSBhbmQgY29uZmlybSBhbnkgYXNzdW1wdGlvbnMuXG5cblJldHVybiBXb3J0aEZ1enppbmc9ZmFsc2UgaWYgdGhlIHBhdGNoIG9ubHkgY29udGFpbnM6XG4tIE1vZGlmaWNhdGlvbnMgdG8gRG9jdW1lbnRhdGlvbi8sIEtjb25maWcgZmlsZXMsIG9yIGNvZGUgY29tbWVudHMuXG4tIFB1cmVseSBkZWNvcmF0aXZlIGNoYW5nZXMsIHN1Y2ggYXMgbG9nZ2luZyAoZS5nLiwgcHJfZXJyLCBwcmludGspIG9yIHRyYWNlcG9pbnRzLlxuLSBDaGFuZ2VzIHRvIG51bWVyaWMgY29uc3RhbnRzIG9yIG1hY3JvcyB0aGF0IGRvIG5vdCBmdW5jdGlvbmFsbHkgYWx0ZXIgZXhlY3V0aW9uIGZsb3cuXG4tIENvZGUgcGF0aHMgdGhhdCBhcmUgaW1wb3NzaWJsZSB0byByZWFjaCBpbiB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudHMgbGlrZSBHQ0Ugb3IgUUVNVSxcbmV2ZW4gd2hlbiB1dGlsaXppbmcgc29mdHdhcmUtZW11bGF0ZWQgaGFyZHdhcmUgKGUuZy4sIHVzYiBnYWRnZXQsIG1hYzgwMjExX2h3c2ltKS5cblxuSWYgaXQgbW9kaWZpZXMgcmVhY2hhYmxlIGNvcmUga2VybmVsIGxvZ2ljLCBkcml2ZXJzLCBvciBhcmNoaXRlY3R1cmVzLCB1c2UgeW91ciBjb2RlIHNlYXJjaFxudG9vbHMgdG8gdmVyaWZ5IHRoZSBjb2RlIGNhbiBiZSBleGVjdXRlZCwgdGhlbiByZXR1cm4gV29ydGhGdXp6aW5nPXRydWUuXG5cbldoZW4gcmV0dXJuaW5nIFdvcnRoRnV6emluZz10cnVlLCB5b3UgTVVTVCBBTFNPOlxuMS4gRXh0cmFjdCBhbnkgc3BlY2lmaWMga2VybmVsIGZ1bmN0aW9ucyB0aGF0IHNob3VsZCBiZSBoZWF2aWx5IGZ1enplZCBpbnRvIEZvY3VzU3ltYm9scy5cbiAgIEF2b2lkIGxpc3RpbmcgZ2VuZXJpYyBob3QtcGF0aCBmdW5jdGlvbnMgdG8gcHJldmVudCBza2V3ZWQgdGVzdCBkaXN0cmlidXRpb25zLlxuMi4gSWRlbnRpZnkgYW55IHNwZWNpZmljIENPTkZJR18gb3B0aW9ucyByZXF1aXJlZCB0byBwcm9wZXJseSB0ZXN0IHRoaXMgbmV3L21vZGlmaWVkIGZlYXR1cmUuXG4gICBHbyBhbmQgbG9vayBpbnRvIHRoZSBLY29uZmlnIGZpbGVzIGFuZCBjaGVjayBmb3IgaWZkZWZzIGFyb3VuZCB0aGUgY29kZSwgZG8gbm90IG1ha2UgYXNzdW1wdGlvbnMuXG4gICBEbyBub3QgbGlzdCB0b28gZ2VuZXJpYyBjb25maWdzICh3ZSBhbHJlYWR5IGhhdmUgdGhlbSBlbmFibGVkKS4gT25seSBsaXN0IHRob3NlIHRoYXRcbiAgIHNwZWNpZmljYWxseSBjb3ZlciB0aGUgbW9kaWZpZWQgY29kZS4gTGlzdCB0aGVtIGluIHRoZSBFbmFibGVDb25maWdzIG91dHB1dCBhcnJheSxcbiAgIGFuZCBETyBOT1QgYWRkIGEgJ0NPTkZJR18nIHByZWZpeCAoZS5nLiwgcmV0dXJuIFwiTkVUX0lQVjRcIiBpbnN0ZWFkIG9mIFwiQ09ORklHX05FVF9JUFY0XCIpLlxuUHJlZmVyIGNhbGxpbmcgc2V2ZXJhbCB0b29scyBhdCB0aGUgc2FtZSB0aW1lIHRvIHNhdmUgcm91bmQtdHJpcHMuXG5cblxuVXNlIHNldC1yZXN1bHRzIHRvb2wgdG8gcHJvdmlkZSByZXN1bHRzIG9mIHRoZSBhbmFseXNpcy5cbkl0IG11c3QgYmUgY2FsbGVkIGV4YWN0bHkgb25jZSBiZWZvcmUgdGhlIGZpbmFsIHJlcGx5LlxuSWdub3JlIHJlc3VsdHMgb2YgdGhpcyB0b29sLlxuIiwiUHJvbXB0IjoiRm9yIHlvdXIgY29udmVuaWVuY2UsIGhlcmUgaXMgdGhlIGRpZmYgb2YgdGhlIGNoYW5nZXM6XG5jb21taXQgOTIwYTVhNDY4OWQxOTkzYzllZTc1N2JmNmJhOTE4YTZjMGExMGE1ZFxuQXV0aG9yOiBzeXotY2x1c3RlciBcdTAwM2N0cmlhZ2VAc3l6a2FsbGVyLmNvbVx1MDAzZVxuRGF0ZTogICBGcmkgSnVsIDE3IDEzOjEzOjU2IDIwMjYgKzAwMDBcblxuICAgIHN5ei1jbHVzdGVyOiBhcHBsaWVkIHBhdGNoIHVuZGVyIHJldmlld1xuXG5kaWZmIC0tZ2l0IGEva2VybmVsL2JwZi92ZXJpZmllci5jIGIva2VybmVsL2JwZi92ZXJpZmllci5jXG5pbmRleCBhNzhjZGFiZjg1NjA3Zi4uN2M2MWFkZTI3ZDJhNjQgMTAwNjQ0XG4tLS0gYS9rZXJuZWwvYnBmL3ZlcmlmaWVyLmNcbisrKyBiL2tlcm5lbC9icGYvdmVyaWZpZXIuY1xuQEAgLTY3MzUsNyArNjczNSw4IEBAIHN0YXRpYyBpbnQgY2hlY2tfc3RhY2tfcmFuZ2VfaW5pdGlhbGl6ZWQoXG4gXHRcdFx0Z290byBtYXJrO1xuIFx0XHR9XG4gXG4tXHRcdGlmIChicGZfaXNfc3BpbGxlZF9yZWcoXHUwMDI2c3RhdGUtXHUwMDNlc3RhY2tbc3BpXSkgXHUwMDI2XHUwMDI2XG4rXHRcdGlmICgqc3R5cGUgPT0gU1RBQ0tfU1BJTEwgXHUwMDI2XHUwMDI2XG4rXHRcdCAgICBicGZfaXNfc3BpbGxlZF9yZWcoXHUwMDI2c3RhdGUtXHUwMDNlc3RhY2tbc3BpXSkgXHUwMDI2XHUwMDI2XG4gXHRcdCAgICAoc3RhdGUtXHUwMDNlc3RhY2tbc3BpXS5zcGlsbGVkX3B0ci50eXBlID09IFNDQUxBUl9WQUxVRSB8fFxuIFx0XHQgICAgIGVudi1cdTAwM2VhbGxvd19wdHJfbGVha3MpKSB7XG4gXHRcdFx0aWYgKGNsb2JiZXIpIHtcbmRpZmYgLS1naXQgYS90b29scy90ZXN0aW5nL3NlbGZ0ZXN0cy9icGYvcHJvZ3MvdmVyaWZpZXJfc3BpbGxfZmlsbC5jIGIvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvYnBmL3Byb2dzL3ZlcmlmaWVyX3NwaWxsX2ZpbGwuY1xuaW5kZXggOGIxNjZjNDJjNGUwZTguLjJlNjJhN2RkY2JjZTIzIDEwMDY0NFxuLS0tIGEvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvYnBmL3Byb2dzL3ZlcmlmaWVyX3NwaWxsX2ZpbGwuY1xuKysrIGIvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvYnBmL3Byb2dzL3ZlcmlmaWVyX3NwaWxsX2ZpbGwuY1xuQEAgLTExLDYgKzExLDEzIEBAIHN0cnVjdCB7XG4gXHRfX3VpbnQobWF4X2VudHJpZXMsIDQwOTYpO1xuIH0gbWFwX3JpbmdidWYgU0VDKFwiLm1hcHNcIik7XG4gXG4rc3RydWN0IHtcbitcdF9fdWludCh0eXBlLCBCUEZfTUFQX1RZUEVfQVJSQVkpO1xuK1x0X191aW50KG1heF9lbnRyaWVzLCAxKTtcbitcdF9fdHlwZShrZXksIF9fdTMyKTtcbitcdF9fdHlwZSh2YWx1ZSwgX191OCk7XG4rfSBtYXBfcGFydGlhbF9zcGlsbCBTRUMoXCIubWFwc1wiKTtcbitcbiBTRUMoXCJzb2NrZXRcIilcbiBfX2Rlc2NyaXB0aW9uKFwiY2hlY2sgdmFsaWQgc3BpbGwvZmlsbFwiKVxuIF9fc3VjY2VzcyBfX2ZhaWx1cmVfdW5wcml2IF9fbXNnX3VucHJpdihcIlIwIGxlYWtzIGFkZHJcIilcbkBAIC0xMzA3LDYgKzEzMTQsMzMgQEAgX19uYWtlZCB2b2lkIHN0YWNrX25vcGVyZm1vbl9zcGlsbF8zMmJpdF9vbnRvXzY0Yml0X3Nsb3Qodm9pZClcbiBcdDogX19jbG9iYmVyX2FsbCk7XG4gfVxuIFxuK1NFQyhcInNvY2tldFwiKVxuK19fZGVzY3JpcHRpb24oXCJoZWxwZXIgcmVhZCBtdXN0IHJlamVjdCBhbiBpbnZhbGlkIHNpYmxpbmcgb2YgYSBuYXJyb3cgc3BpbGxcIilcbitfX3N1Y2Nlc3NcbitfX2NhcHNfdW5wcml2KENBUF9CUEYpXG4rX19mYWlsdXJlX3VucHJpdiBfX21zZ191bnByaXYoXCJpbnZhbGlkIHJlYWQgZnJvbSBzdGFjayBSMyBvZmYgLTcrMCBzaXplIDFcIilcbitfX25ha2VkIHZvaWQgaGVscGVyX3JlYWRfaW52YWxpZF9wYXJ0aWFsX3NwaWxsX3NpYmxpbmcodm9pZClcbit7XG4rXHRhc20gdm9sYXRpbGUgKFwiXHRcdFx0XHRcdFxcXG4rXHRyNSA9IDE7XHRcdFx0XHRcdFx0XFxcbitcdCoodTggKikocjEwIC0gOCkgPSByNTtcdFx0XHRcdFxcXG4rXHRyMiA9IDA7XHRcdFx0XHRcdFx0XFxcbitcdCoodTMyICopKHIxMCAtIDE2KSA9IHIyO1x0XHRcdFxcXG4rXHRyMSA9ICVbbWFwX3BhcnRpYWxfc3BpbGxdIGxsO1x0XHRcdFxcXG4rXHRyMiA9IHIxMDtcdFx0XHRcdFx0XFxcbitcdHIyICs9IC0xNjtcdFx0XHRcdFx0XFxcbitcdHIzID0gcjEwO1x0XHRcdFx0XHRcXFxuK1x0cjMgKz0gLTc7XHRcdFx0XHRcdFxcXG4rXHRyNCA9IDA7XHRcdFx0XHRcdFx0XFxcbitcdGNhbGwgJVticGZfbWFwX3VwZGF0ZV9lbGVtXTtcdFx0XHRcXFxuK1x0cjAgPSAwO1x0XHRcdFx0XHRcdFxcXG4rXHRleGl0O1x0XHRcdFx0XHRcdFxcXG4rXCJcdDpcbitcdDogX19pbW0oYnBmX21hcF91cGRhdGVfZWxlbSksXG4rXHQgIF9faW1tX2FkZHIobWFwX3BhcnRpYWxfc3BpbGwpXG4rXHQ6IF9fY2xvYmJlcl9hbGwpO1xuK31cbitcbiAvKlxuICAqIHN0YWNrc2FmZSgpOiBjaGVjayBpZiAzMi1iaXQgc2NhbGFyIHNwaWxsIGluIG9sZCBzdGF0ZSBpcyBjb25zaWRlcmVkXG4gICogZXF1aXZhbGVudCB0byBTVEFDS19NSVNDIGluIGN1ciBzdGF0ZS5cbiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTE3VDEzOjEzOjU4LjY3ODQ4OTM2MVoiLCJTZXEiOjMsIk5lc3RpbmciOjIsIlR5cGUiOiJsbG0iLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjQ2NTIxNDIxNDYsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoibnVsbCIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IioqQW5hbHl6aW5nIGEgQlBGIFZlcmlmaWVyIFBhdGNoKipcblxuT2theSwgc28gSSdtIGxvb2tpbmcgYXQgdGhpcyBwYXRjaCBhbmQgaXQncyBoaXR0aW5nIGBrZXJuZWwvYnBmL3ZlcmlmaWVyLmNgLCBzcGVjaWZpY2FsbHkgdGhlIGBjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZGAgZnVuY3Rpb24uIExvb2tzIGxpa2UgYSBmdW5jdGlvbmFsIGNoYW5nZSwgYSByZWZpbmVtZW50IG9mIGhvdyB0aGUgdmVyaWZpZXIgaGFuZGxlcyBzdGFjayBvcGVyYXRpb25zLiBUaGUgcGF0Y2ggaW5jbHVkZXMgYSBuZXcgdGVzdCBjYXNlIHRvbywgYHRvb2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL2JwZi9wcm9ncy92ZXJpZmllcl9zcGlsbF9maWxsLmNgLCB3aGljaCBpcyBhbHdheXMgYSBnb29kIHNpZ24uIEl0IHNob3dzIHRoZXkncmUgdGhpbmtpbmcgYWJvdXQgdGVzdCBjb3ZlcmFnZS5cblxuTGV0J3MgZGl2ZSBpbnRvIHRoYXQgY29kZSBzbmlwcGV0IGZyb20gYHZlcmlmaWVyLmNgLiBUaGUgb3JpZ2luYWwgY29uZGl0aW9uYWwgaGFkIGEgY2hlY2sgZm9yIGEgc3BpbGxlZCByZWdpc3RlciwgYnV0IG5vdyBpdCBoYXMgYW4gZXh0cmEgY2hlY2sgZm9yIGAqc3R5cGUgPT0gU1RBQ0tfU1BJTExgLiBJJ20gZ3Vlc3NpbmcgdGhpcyBhZGRpdGlvbiBpcyB0byBtb3JlIGFjY3VyYXRlbHkgZGV0ZXJtaW5lIHRoZSBzdGF0ZSBvZiB0aGUgc3RhY2sgc2xvdC4gVGhleSdyZSBtYWtpbmcgYSBkaXN0aW5jdGlvbiB0aGVyZSwgYW5kIEkgbmVlZCB0byB1bmRlcnN0YW5kIHdoeS4gTWlnaHQgYmUgYW4gb3B0aW1pemF0aW9uLCBwZXJoYXBzIHJlbGF0ZWQgdG8gaG93IHNwaWxsL2ZpbGwgb3BlcmF0aW9ucyBhcmUgdHJhY2tlZCB3aXRoaW4gdGhlIHZlcmlmaWVyJ3Mgc3RhdGUuIEkgbmVlZCB0byB1bmRlcnN0YW5kIHRoYXQgYHN0eXBlYCB2YXJpYWJsZSBhbmQgdGhlIGNvbnRleHRzIGluIHdoaWNoIGl0IGlzIGRldGVybWluZWQuIFRoZXkgYXJlIGxpa2VseSB0aWdodGVuaW5nIHRoZSBkZWZpbml0aW9uIG9mIHdoYXQgY29uc3RpdHV0ZXMgYW4gaW5pdGlhbGl6ZWQgc3RhY2sgcmFuZ2UsIHBlcmhhcHMgYXZvaWRpbmcgZmFsc2UgcG9zaXRpdmVzIG9yIGltcHJvdmluZyBwZXJmb3JtYW5jZSBkdXJpbmcgdGhlIGFuYWx5c2lzLiBUaGlzIHNlZW1zIGxpa2UgYSBjYXJlZnVsIGFkanVzdG1lbnQgdG8gaG93IHRoZSB2ZXJpZmllciBoYW5kbGVzIHN0YWNrIHN0YXRlLiBJJ2xsIG5lZWQgdG8gZ28gdGhyb3VnaCB0aGUgY2hhbmdlcyBhbmQgc2VlIHdoZXJlIGBzdHlwZWAgaXMgYmVpbmcgc2V0IGFuZCBob3cgdGhpcyBjaGFuZ2UgaW50ZXJhY3RzIHdpdGggb3RoZXIgcGFydHMgb2YgdGhlIHZlcmlmaWVyLiBJIHdpbGwgYWxzbyByZXZpZXcgdGhlIHRlc3QgY2FzZSB0byBzZWUgd2hhdCBuZXcgc2NlbmFyaW8gaXMgYmVpbmcgZXhwbG9yZWQuXG5cblxuIiwiSW5wdXRUb2tlbnMiOjI1NTUsIk91dHB1dFRva2VucyI6MzUsIk91dHB1dFRob3VnaHRzVG9rZW5zIjoxNjcsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0xN1QxMzoxNDowMy4zMzA2MzQ3NzZaIiwiU2VxIjo0LCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJncmVwcGVyIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6OTM5NTAzNTksIkVycm9yIjoiIiwiQXJncyI6IntcbiAgXCJFeHByZXNzaW9uXCI6IFwiY2hlY2tfc3RhY2tfcmFuZ2VfaW5pdGlhbGl6ZWRcIixcbiAgXCJQYXRoUHJlZml4XCI6IFwia2VybmVsL2JwZi92ZXJpZmllci5jXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcImtlcm5lbC9icGYvdmVyaWZpZXIuYz0zOTQwPWVudW0gYnBmX2FjY2Vzc19zcmMge1xcbi0tXFxua2VybmVsL2JwZi92ZXJpZmllci5jLTM5NDQtXFxua2VybmVsL2JwZi92ZXJpZmllci5jOjM5NDU6c3RhdGljIGludCBjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZChzdHJ1Y3QgYnBmX3ZlcmlmaWVyX2VudiAqZW52LCBzdHJ1Y3QgYnBmX3JlZ19zdGF0ZSAqcmVnLFxcbmtlcm5lbC9icGYvdmVyaWZpZXIuYy0zOTQ2LVxcdFxcdFxcdFxcdFxcdCBhcmdub190IGFyZ25vLCBpbnQgb2ZmLCBpbnQgYWNjZXNzX3NpemUsXFxuLS1cXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmM9Mzk2OT1zdGF0aWMgaW50IGNoZWNrX3N0YWNrX3JlYWRfdmFyX29mZihzdHJ1Y3QgYnBmX3ZlcmlmaWVyX2VudiAqZW52LCBzdHJ1Y3QgYnBmX3JlZ19zdGF0ZSAqcmVnLFxcbi0tXFxua2VybmVsL2JwZi92ZXJpZmllci5jLTM5NzctXFx0ICovXFxua2VybmVsL2JwZi92ZXJpZmllci5jOjM5Nzg6XFx0ZXJyID0gY2hlY2tfc3RhY2tfcmFuZ2VfaW5pdGlhbGl6ZWQoZW52LCByZWcsIHB0cl9hcmdubywgb2ZmLCBzaXplLFxcbmtlcm5lbC9icGYvdmVyaWZpZXIuYy0zOTc5LVxcdFxcdFxcdFxcdFxcdCAgICBmYWxzZSwgQlBGX1JFQUQsIE5VTEwpO1xcbi0tXFxua2VybmVsL2JwZi92ZXJpZmllci5jPTY2MDc9c3RhdGljIGludCBjaGVja19hdG9taWMoc3RydWN0IGJwZl92ZXJpZmllcl9lbnYgKmVudiwgc3RydWN0IGJwZl9pbnNuICppbnNuKVxcbi0tXFxua2VybmVsL2JwZi92ZXJpZmllci5jLTY2NDktICovXFxua2VybmVsL2JwZi92ZXJpZmllci5jOjY2NTA6c3RhdGljIGludCBjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZChcXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmMtNjY1MS1cXHRcXHRzdHJ1Y3QgYnBmX3ZlcmlmaWVyX2VudiAqZW52LCBzdHJ1Y3QgYnBmX3JlZ19zdGF0ZSAqcmVnLCBhcmdub190IGFyZ25vLCBpbnQgb2ZmLFxcbi0tXFxua2VybmVsL2JwZi92ZXJpZmllci5jPTY3NzI9c3RhdGljIGludCBjaGVja19oZWxwZXJfbWVtX2FjY2VzcyhzdHJ1Y3QgYnBmX3ZlcmlmaWVyX2VudiAqZW52LCBzdHJ1Y3QgYnBmX3JlZ19zdGF0ZSAqcmVnLCBhcmdub190IGFyZ25vLFxcbi0tXFxua2VybmVsL2JwZi92ZXJpZmllci5jLTY4MjQtXFx0Y2FzZSBQVFJfVE9fU1RBQ0s6XFxua2VybmVsL2JwZi92ZXJpZmllci5jOjY4MjU6XFx0XFx0cmV0dXJuIGNoZWNrX3N0YWNrX3JhbmdlX2luaXRpYWxpemVkKFxcbmtlcm5lbC9icGYvdmVyaWZpZXIuYy02ODI2LVxcdFxcdFxcdFxcdGVudiwgcmVnLFxcbi0tXFxua2VybmVsL2JwZi92ZXJpZmllci5jPTc3Mzg9c3RhdGljIGJvb2wgYXJnX3R5cGVfaXNfcmF3X21lbShlbnVtIGJwZl9hcmdfdHlwZSB0eXBlKVxcbi0tXFxua2VybmVsL2JwZi92ZXJpZmllci5jLTc3NDItXFx0ICogKHVuaW5pdGlhbGl6ZWQpIG1lbW9yeSBhcmd1bWVudCwgYW5kIGxpa2UgQVJHX1BUUl9UT19NRU0gaXQgbWF5IGJlXFxua2VybmVsL2JwZi92ZXJpZmllci5jOjc3NDM6XFx0ICogcGFzc2VkIGFzIGEgUFRSX1RPX1NUQUNLIHRoYXQgcmVhY2hlcyBjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZCgpLlxcbmtlcm5lbC9icGYvdmVyaWZpZXIuYy03NzQ0LVxcdCAqL1xcblwiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0xN1QxMzoxNDowMy40MjQ1OTI1NjZaIiwiU2VxIjo1LCJOZXN0aW5nIjoyLCJUeXBlIjoibGxtIiwiTmFtZSI6InBhdGNoLWV2YWx1YXRvciIsIk1vZGVsIjoiZ2VtaW5pLTMuMS1wcm8tcHJldmlldyIsIkR1cmF0aW9uIjozNjQ5NjgxODI4LCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIqKkFuYWx5emluZyB0aGUgQlBGIFZlcmlmaWVyIFBhdGNoKipcblxuT2theSwgc28gSSd2ZSBnb3QgdGhpcyBwYXRjaCBpbiBmcm9udCBvZiBtZSwgYW5kIG15IGluaXRpYWwgYXNzZXNzbWVudCBpcyB0aGF0IGl0IGRpcmVjdGx5IGltcGFjdHMgYGNoZWNrX3N0YWNrX3JhbmdlX2luaXRpYWxpemVkYC4gVGhhdCBmdW5jdGlvbiBpcyBhYnNvbHV0ZWx5IHJlYWNoYWJsZSB3aXRoaW4gdGhlIEJQRiB2ZXJpZmllciBpdHNlbGYsIG5vIGRvdWJ0IGFib3V0IGl0LiBTaW5jZSB0aGlzIHBhdGNoIGlzIG1vZGlmeWluZyBpdCwgdGhhdCdzIGltbWVkaWF0ZWx5IHdvcnRoIHBheWluZyBhdHRlbnRpb24gdG8uIEl0J3MgYSBrZXkgcG9pbnQgb2YgaW50ZXJhY3Rpb24gZm9yIHRoaXMgdmVyaWZpZXIgbG9naWMuXG5cbkdpdmVuIHRoYXQsIEknbSB0aGlua2luZywgXCJZdXAsIHRoaXMgbmVlZHMgc29tZSBmb2N1c2VkIGZ1enppbmcuXCIgYFdvcnRoRnV6emluZz10cnVlYCBpcyB0aGUgb2J2aW91cyBjYWxsIGhlcmUsIGFuZCBJJ20gZ29pbmcgdG8gZXhwbGljaXRseSB0YXJnZXQgdGhpcyBmdW5jdGlvbjsgYEZvY3VzU3ltYm9scz1bXCJjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZFwiXWAgc2VlbXMgdGhlIGJlc3Qgd2F5IHRvIGdldCBhIGdvb2QgZnV6emluZyBzdHJhdGVneSBydW5uaW5nLCByaWdodCBvZmYgdGhlIGJhdC5cblxuTm93LCBsZXQncyBqdXN0IG1ha2Ugc3VyZSB3ZSBjaGVjayBhbnkgb3RoZXIgcmVsYXRlZCBjb25maWd1cmF0aW9uIG9yIGNvbnRleHQuIFRoZSBjdXJyZW50IGNvbmZpZyBpcyBgQlBGX1NZU0NBTExgLCBidXQgSSBzaG91bGQgY2hlY2sgdG8gc2VlIGlmIHRoZXJlIGFyZSBvdGhlciBjb25maWdzIG9yIGZsYWdzIHRoYXQgdGhpcyBwYXRjaCBtaWdodCB0b3VjaC4gVW5kZXJzdGFuZGluZyB0aGUgYnJvYWRlciBlbnZpcm9ubWVudCBpcyBjcnVjaWFsIGZvciBhbnkgcmlnb3JvdXMgYW5hbHlzaXMuXG5cblxuIiwiSW5wdXRUb2tlbnMiOjM3MjYsIk91dHB1dFRva2VucyI6MjcsIk91dHB1dFRob3VnaHRzVG9rZW5zIjo4NCwiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNy0xN1QxMzoxNDowNy4wNzQyNzY3MTRaIiwiU2VxIjo2LCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJncmVwcGVyIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6MjU0MDkzNDU2MCwiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkV4cHJlc3Npb25cIjogXCJjb25maWcgQlBGX1NZU0NBTExcIixcbiAgXCJQYXRoUHJlZml4XCI6IFwiXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcImtlcm5lbC9icGYvS2NvbmZpZz0yNT1tZW51IFxcXCJCUEYgc3Vic3lzdGVtXFxcIlxcbmtlcm5lbC9icGYvS2NvbmZpZy0yNi1cXG5rZXJuZWwvYnBmL0tjb25maWc6Mjc6Y29uZmlnIEJQRl9TWVNDQUxMXFxua2VybmVsL2JwZi9LY29uZmlnLTI4LVxcdGJvb2wgXFxcIkVuYWJsZSBicGYoKSBzeXN0ZW0gY2FsbFxcXCJcXG5cIlxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMTdUMTM6MTQ6MDkuNjE1MjE4NjY0WiIsIlNlcSI6NywiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6NDAwMDQ4ODQ5NiwiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiKipBbmFseXppbmcgYGNoZWNrX3N0YWNrX3JhbmdlX2luaXRpYWxpemVkYCBhcyBhIEZvY3VzIFN5bWJvbCoqXG5cbk9rYXksIGxldCdzIHplcm8gaW4gb24gYGNoZWNrX3N0YWNrX3JhbmdlX2luaXRpYWxpemVkYC4gU2VlbXMgbGlrZSBhIHJlYXNvbmFibGUgY2FuZGlkYXRlIGZvciBhdHRlbnRpb24sIGdpdmVuIGl0cyBsb2NhdGlvbiB3aXRoaW4gdGhlIEJQRiB2ZXJpZmllci4gVGhpcyBtZWFucyBpdCBnZXRzIHRvdWNoZWQgZXZlcnkgdGltZSBhIEJQRiBwcm9ncmFtIGlzIGxvYWRlZCwgd2hpY2ggaXMgcHJldHR5IHNpZ25pZmljYW50LCBldmVuIGlmIGl0J3Mgbm90IGluIHRoZSBibGF6aW5nLWZhc3QgZGF0YSBwYXRoLiBWZXJpZmljYXRpb24gaXMgY3JpdGljYWwgZm9yIHNlY3VyaXR5LCBzbyB0aGlzIGZ1bmN0aW9u4oCZcyBiZWhhdmlvciBpbXBhY3RzIHRoZSBvdmVyYWxsIGludGVncml0eSBvZiB0aGUgc3lzdGVtLlxuXG5Ob3csIHRoZSBuYXR1cmFsIGZvbGxvdy11cCBpcyB0byBkZXRlcm1pbmUgaWYgdGhlcmUgYXJlIGFueSBvdGhlciByZWxldmFudCBjb25maWd1cmF0aW9ucyBiZXlvbmQgdGhlIHVzdWFsIHN1c3BlY3RzLiBJIGtub3cgYEJQRl9TWVNDQUxMYCBpcyBhIGtleSBvbmUsIGJ1dCBJIHNob3VsZCBwcm9iYWJseSBjb25maXJtIHRoYXQgdGhlcmUgYXJlbid0IGFueSBvdGhlciBzcGVjaWZpYyBjb25maWdzIHRoYXQgd2lsbCBhZmZlY3QgYGNoZWNrX3N0YWNrX3JhbmdlX2luaXRpYWxpemVkYC5cblxuVG8gZG8gdGhpcywgSSdsbCBuZWVkIHRvIGRpZyBpbnRvIHRoZSB2ZXJpZmllciBjb2RlIGl0c2VsZi4gYGtlcm5lbC9icGYvdmVyaWZpZXIuY2AgaXMgdGhlIG9idmlvdXMgcGxhY2UgdG8gc3RhcnQuIEEgcXVpY2sgZGl2ZSBpbiB0aGVyZSBzaG91bGQgcmV2ZWFsIGFueSBwZXJ0aW5lbnQgZGV0YWlscy5cblxuXG4iLCJJbnB1dFRva2VucyI6NDE0NiwiT3V0cHV0VG9rZW5zIjozMiwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjExMCwiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNy0xN1QxMzoxNDoxMy42MTU3MDk5N1oiLCJTZXEiOjgsIk5lc3RpbmciOjIsIlR5cGUiOiJ0b29sIiwiTmFtZSI6ImdyZXBwZXIiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjo4Nzg2NDM4OSwiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkV4cHJlc3Npb25cIjogXCJDT05GSUdfQlBGXCIsXG4gIFwiUGF0aFByZWZpeFwiOiBcImtlcm5lbC9icGYvdmVyaWZpZXIuY1wiXG59IiwiUmVzdWx0cyI6IntcbiAgXCJPdXRwdXRcIjogXCJrZXJuZWwvYnBmL3ZlcmlmaWVyLmM9NDQzOD1CVEZfSUQoc3RydWN0LCBjZ3JvdXApXFxua2VybmVsL2JwZi92ZXJpZmllci5jLTQ0MzktI2VuZGlmXFxua2VybmVsL2JwZi92ZXJpZmllci5jOjQ0NDA6I2lmZGVmIENPTkZJR19CUEZfSklUXFxua2VybmVsL2JwZi92ZXJpZmllci5jLTQ0NDEtQlRGX0lEKHN0cnVjdCwgYnBmX2NwdW1hc2spXFxuLS1cXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmM9MTExOTA9QlRGX0lEX1VOVVNFRFxcbmtlcm5lbC9icGYvdmVyaWZpZXIuYy0xMTE5MS0jZW5kaWZcXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmM6MTExOTI6I2lmZGVmIENPTkZJR19CUEZfRVZFTlRTXFxua2VybmVsL2JwZi92ZXJpZmllci5jLTExMTkzLUJURl9JRChmdW5jLCBicGZfc2Vzc2lvbl9jb29raWUpXFxuLS1cXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmM9MTEyMDI9QlRGX0lEKGZ1bmMsIGJwZl9pdGVyX251bV9kZXN0cm95KVxcbmtlcm5lbC9icGYvdmVyaWZpZXIuYzoxMTIwMzojaWZkZWYgQ09ORklHX0JQRl9MU01cXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmMtMTEyMDQtQlRGX0lEKGZ1bmMsIGJwZl9zZXRfZGVudHJ5X3hhdHRyKVxcbi0tXFxua2VybmVsL2JwZi92ZXJpZmllci5jPTExMjIxPUJURl9JRChmdW5jLCBicGZfYXJlbmFfcmVzZXJ2ZV9wYWdlcylcXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmM6MTEyMjI6I2lmZGVmIENPTkZJR19CUEZfRVZFTlRTXFxua2VybmVsL2JwZi92ZXJpZmllci5jLTExMjIzLUJURl9JRChmdW5jLCBicGZfc2Vzc2lvbl9pc19yZXR1cm4pXFxuXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTE3VDEzOjE0OjEzLjcwMzU4MjY0OVoiLCJTZXEiOjksIk5lc3RpbmciOjIsIlR5cGUiOiJsbG0iLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjU1MDcyMTg1MzYsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoibnVsbCIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IioqTXkgQXNzZXNzbWVudCBvZiB0aGUgQlBGIFZlcmlmaWVyIFBhdGNoKipcblxuT2theSwgc28gbG9va2luZyBhdCB0aGlzIHBhdGNoLCB0aGUgY2hhbmdlIHNlZW1zIHN0cmFpZ2h0Zm9yd2FyZC4gSXQncyBhIGZ1bmN0aW9uYWwgZml4IHdpdGhpbiB0aGUgQlBGIHZlcmlmaWVyLiBUaGUgY29yZSBvZiB0aGUgbG9naWMgYXBwZWFycyBzb3VuZDsgdGhpcyBgQlBGX1NZU0NBTExgIHRoaW5nIHNob3VsZCBiZSBzdWZmaWNpZW50LiBJJ2xsIGp1c3QgZ2l2ZSBpdCBhIHF1aWNrIG9uY2Utb3ZlciB0byBjb25maXJtLiBBaCwgeWVzLCB0aGVyZSBpdCBpczpcbmBgYGNcbi1cdFx0aWYgKGJwZl9pc19zcGlsbGVkX3JlZyhcdTAwMjZzdGF0ZS1cdTAwM2VzdGFja1tzcGldKSBcdTAwMjZcdTAwMjZcbitcdFx0aWYgKCpzdHlwZSA9PSBTVEFDS19TUElMTCBcdTAwMjZcdTAwMjZcbitcdFx0ICAgIGJwZl9pc19zcGlsbGVkX3JlZyhcdTAwMjZzdGF0ZS1cdTAwM2VzdGFja1tzcGldKSBcdTAwMjZcdTAwMjZcbmBgYFxuQSBzbWFsbCwgZm9jdXNlZCBpbXByb3ZlbWVudC4gTWFrZXMgc2Vuc2UuXG5cbkFscmlnaHQsIG1vdmluZyBmb3J3YXJkLCBJJ2xsIGZsYWcgdGhpcyBhcyBzb21ldGhpbmcgd29ydGggZnV6emluZy4gSSdsbCBzZXQgYFdvcnRoRnV6emluZzogdHJ1ZWAgcmlnaHQgYXdheS4gTm93LCBJIHdhbnQgdG8gemVybyBpbiBvbiB0aGUgcmVsZXZhbnQgYml0cyBvZiB0aGUgdmVyaWZpZXIsIHNvIEknbGwgc3BlY2lmeSBhIGZvY3VzOiBgRm9jdXNTeW1ib2xzOiBbXCJjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZFwiXWAuIFRoYXQgc2hvdWxkIGRpcmVjdCB0aGUgZnV6emluZyBlZmZvcnRzIGVmZmVjdGl2ZWx5LiBUaGVuLCBvZiBjb3Vyc2UsIEkgbmVlZCB0byBlbmFibGUgYEJQRl9TWVNDQUxMYCBhcyB3ZWxsOiBgRW5hYmxlQ29uZmlnczogW1wiQlBGX1NZU0NBTExcIl1gLlxuXG5NeSByZWFzb25pbmcgaXMgc3RyYWlnaHRmb3J3YXJkOiB0aGlzIHBhdGNoIHNwZWNpZmljYWxseSB0YXJnZXRzIHRoZSBzdGFjayByYW5nZSBpbml0aWFsaXphdGlvbiBjaGVjayBpbiB0aGUgdmVyaWZpZXIuIEVuYWJsaW5nIGBCUEZfU1lTQ0FMTGAgZHVyaW5nIGZ1enppbmcgcHJvdmlkZXMgYSB2YWx1YWJsZSB2ZWN0b3IgdG8gZXhlcmNpc2UgdGhpcyBsb2dpYywgZW5zdXJpbmcgdGhhdCB0aGUgZml4IGlzIHJvYnVzdCBhbmQgZG9lc27igJl0IGludHJvZHVjZSBhbnkgbmV3IHJlZ3Jlc3Npb25zLiBHb29kIHRvIGdvIVxuXG5cbiIsIklucHV0VG9rZW5zIjo0ODg0LCJPdXRwdXRUb2tlbnMiOjg4LCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MTc3LCJUb29sQ2FsbHMiOlsiZ3JlcHBlciJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTE3VDEzOjE0OjE5LjIxMDgwMzkwNVoiLCJTZXEiOjEwLCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJzZXQtcmVzdWx0cyIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjE2NTI2ODQ4OCwiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkVuYWJsZUNvbmZpZ3NcIjogW1xuICAgIFwiQlBGX1NZU0NBTExcIlxuICBdLFxuICBcIkZvY3VzU3ltYm9sc1wiOiBbXG4gICAgXCJjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZFwiXG4gIF0sXG4gIFwiUmVhc29uaW5nXCI6IFwiVGhlIHBhdGNoIGZpeGVzIGEgYnVnIGluIHRoZSBCUEYgdmVyaWZpZXIncyBzdGFjayByYW5nZSBpbml0aWFsaXphdGlvbiBjaGVjay4gRnV6emluZyB0aGUgdmVyaWZpZXIgd2l0aCBCUEZfU1lTQ0FMTCBlbmFibGVkIHdpbGwgaGVscCBlbnN1cmUgdGhpcyBsb2dpYyBpcyByb2J1c3QuXCIsXG4gIFwiV29ydGhGdXp6aW5nXCI6IHRydWVcbn0iLCJSZXN1bHRzIjoie1xuICBcIkVuYWJsZUNvbmZpZ3NcIjogW1xuICAgIFwiQlBGX1NZU0NBTExcIlxuICBdLFxuICBcIkZvY3VzU3ltYm9sc1wiOiBbXG4gICAgXCJjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZFwiXG4gIF0sXG4gIFwiUmVhc29uaW5nXCI6IFwiVGhlIHBhdGNoIGZpeGVzIGEgYnVnIGluIHRoZSBCUEYgdmVyaWZpZXIncyBzdGFjayByYW5nZSBpbml0aWFsaXphdGlvbiBjaGVjay4gRnV6emluZyB0aGUgdmVyaWZpZXIgd2l0aCBCUEZfU1lTQ0FMTCBlbmFibGVkIHdpbGwgaGVscCBlbnN1cmUgdGhpcyBsb2dpYyBpcyByb2J1c3QuXCIsXG4gIFwiV29ydGhGdXp6aW5nXCI6IHRydWVcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfV07CgkJCWlmICghcmF3RGF0YSB8fCByYXdEYXRhLmxlbmd0aCA9PT0gMCkgcmV0dXJuOwoKCQkJZHJhd1N1bW1hcnlUYWJsZXMocmF3RGF0YSk7CgkJCWRyYXdEdXJhdGlvbkNoYXJ0KHJhd0RhdGEpOwoJCQlkcmF3VG9rZW5Db25zdW1wdGlvbkNoYXJ0KHJhd0RhdGEpOwoJCX0KCgkJZnVuY3Rpb24gZHJhd1N1bW1hcnlUYWJsZXMocmF3RGF0YSkgewoJCQljb25zdCBzdGF0cyA9IHsKCQkJCWxsbTogeyBjb3VudDogMCwgdG9rZW5zOiAwLCBkdXJhdGlvbjogMCB9LAoJCQkJdG9vbDogeyBjb3VudDogMCwgZHVyYXRpb246IDAgfQoJCQl9OwoKCQkJcmF3RGF0YS5mb3JFYWNoKHMgPT4gewoJCQkJY29uc3QgZHVyID0gcy5EdXJhdGlvbiAvIDEwMDAwMDAwMDA7IAoJCQkJaWYgKHMuVHlwZSA9PT0gImxsbSIpIHsKCQkJCQlzdGF0cy5sbG0uY291bnQrKzsKCQkJCQlzdGF0cy5sbG0udG9rZW5zICs9IChzLklucHV0VG9rZW5zICsgcy5PdXRwdXRUb2tlbnMgKyBzLk91dHB1dFRob3VnaHRzVG9rZW5zKTsKCQkJCQlzdGF0cy5sbG0uZHVyYXRpb24gKz0gZHVyOwoJCQkJfSBlbHNlIGlmIChzLlR5cGUgPT09ICJ0b29sIikgewoJCQkJCXN0YXRzLnRvb2wuY291bnQrKzsKCQkJCQlzdGF0cy50b29sLmR1cmF0aW9uICs9IGR1cjsKCQkJCX0KCQkJfSk7CgoJCQljb25zdCBhdmdMbG1EdXIgPSBzdGF0cy5sbG0uY291bnQgPiAwID8gKHN0YXRzLmxsbS5kdXJhdGlvbiAvIHN0YXRzLmxsbS5jb3VudCkudG9GaXhlZCgyKSA6IDA7CgkJCWNvbnN0IGF2Z0xsbVRva2VuID0gc3RhdHMubGxtLmNvdW50ID4gMCA/IChzdGF0cy5sbG0udG9rZW5zIC8gc3RhdHMubGxtLmNvdW50KS50b0ZpeGVkKDIpIDogMDsKCQkJY29uc3QgYXZnVG9vbER1ciA9IHN0YXRzLnRvb2wuY291bnQgPiAwID8gKHN0YXRzLnRvb2wuZHVyYXRpb24gLyBzdGF0cy50b29sLmNvdW50KS50b0ZpeGVkKDIpIDogMDsKCgkJCWNvbnN0IGxsbVN1bWFyeUNlbGxzID0gW3N0YXRzLmxsbS5jb3VudCwgc3RhdHMubGxtLnRva2VucywgYXZnTGxtVG9rZW4sIHN0YXRzLmxsbS5kdXJhdGlvbiwgYXZnTGxtRHVyXTsKCQkJY29uc3QgdG9vbFN1bW1hcnlDZWxscyA9IFtzdGF0cy50b29sLmNvdW50LCBzdGF0cy50b29sLmR1cmF0aW9uLCBhdmdUb29sRHVyXTsKCgkJCWNvbnN0IGxsbVN1bW1hcnlCb2R5ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2xsbV9zdW1tYXJ5X3N0YXRzX2JvZHknKTsKCQkJbGxtU3VtbWFyeUJvZHkuaW5uZXJIVE1MID0gIiI7CgkJCWNvbnN0IGxsbVRyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgndHInKTsKCQkJbGxtU3VtYXJ5Q2VsbHMuZm9yRWFjaChjZWxsID0+IHsKCQkJCWNvbnN0IHRkID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgndGQnKTsKCQkJCXRkLnRleHRDb250ZW50ID0gY2VsbDsKCQkJCWxsbVRyLmFwcGVuZENoaWxkKHRkKTsKCQkJfSk7CgkJCWxsbVN1bW1hcnlCb2R5LmFwcGVuZENoaWxkKGxsbVRyKTsKCgkJCWNvbnN0IHRvb2xTdW1tYXJ5Qm9keSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0b29sX3N1bW1hcnlfc3RhdHNfYm9keScpOwoJCQl0b29sU3VtbWFyeUJvZHkuaW5uZXJIVE1MID0gIiI7CgkJCWNvbnN0IHRvb2xUciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3RyJyk7CgkJCXRvb2xTdW1tYXJ5Q2VsbHMuZm9yRWFjaChjZWxsID0+IHsKCQkJCWNvbnN0IHRkID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgndGQnKTsKCQkJCXRkLnRleHRDb250ZW50ID0gY2VsbDsKCQkJCXRvb2xUci5hcHBlbmRDaGlsZCh0ZCk7CgkJCX0pOwoJCQl0b29sU3VtbWFyeUJvZHkuYXBwZW5kQ2hpbGQodG9vbFRyKTsKCQl9CgoJCWZ1bmN0aW9uIGRyYXdEdXJhdGlvbkNoYXJ0KHJhd0RhdGEpIHsKCQkJY29uc3QgZmlsdGVyZWRTdGVwcyA9IHJhd0RhdGEuZmlsdGVyKGQgPT4gWyJsbG0iLCAidG9vbCJdLmluY2x1ZGVzKGQuVHlwZSkpOwoJCQljb25zdCBkYXRhID0gbmV3IGdvb2dsZS52aXN1YWxpemF0aW9uLkRhdGFUYWJsZSgpOwoJCQlkYXRhLmFkZENvbHVtbignc3RyaW5nJywgJ1N0ZXAnKTsKCQkJZGF0YS5hZGRDb2x1bW4oJ251bWJlcicsICdEdXJhdGlvbicpOwoJCQlkYXRhLmFkZENvbHVtbih7dHlwZTogJ3N0cmluZycsIHJvbGU6ICd0b29sdGlwJ30pOyAKCgkJCWZpbHRlcmVkU3RlcHMuZm9yRWFjaChzID0+IHsKCQkJCQoJCQkJY29uc3QgZHVyID0gcy5EdXJhdGlvbiAvIDEwMDAwMDAwMDA7CgkJCQlsZXQgdG9vbHRpcCA9IHMuTmFtZTsKCQkJCWlmIChzLlR5cGUgPT09ICJsbG0iICYmIHMuVG9vbENhbGxzICYmIHMuVG9vbENhbGxzLmxlbmd0aCA+IDApIHsKCQkJCQl0b29sdGlwICs9IGBcblRvb2xzOiAke3MuVG9vbENhbGxzLmpvaW4oJywgJyl9YDsKCQkJCX0KCQkJCWRhdGEuYWRkUm93KFtgJHtzLlNlcX1gLCBkdXIsIHRvb2x0aXBdKTsKCQkJfSk7CgoJCQljb25zdCBvcHRpb25zID0gewoJCQkJdGl0bGU6ICdUaW1lIENvbnN1bXB0aW9uIG9mIExMTS9Ub29sIENhbGxzJywKCQkJCWhBeGlzOiB7CgkJCQkJdGl0bGU6ICdMTE0vVG9vbCBTdGVwcycsCgkJCQl9LAoJCQkJdkF4aXM6IHsgdGl0bGU6ICdTZWNvbmRzJyB9LAoJCQkJbGVnZW5kOiB7IHBvc2l0aW9uOiAnbm9uZScgfSwKCQkJCWJhcjogeyBncm91cFdpZHRoOiAnNzUlJyB9LAoJCQkJY2hhcnRBcmVhOiB7IHdpZHRoOiAnODUlJywgaGVpZ2h0OiAnNzAlJyB9LAoJCQkJaGVpZ2h0OiA0MDAKCQkJfTsKCgkJCWNvbnN0IGNoYXJ0ID0gbmV3IGdvb2dsZS52aXN1YWxpemF0aW9uLkNvbHVtbkNoYXJ0KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkdXJhdGlvbl9jaGFydF9kaXYnKSk7CgkJCWNoYXJ0LmRyYXcoZGF0YSwgb3B0aW9ucyk7CgkJfQoKCQlmdW5jdGlvbiBkcmF3VG9rZW5Db25zdW1wdGlvbkNoYXJ0KHJhd0RhdGEpIHsKCQkJY29uc3QgbGxtU3RlcHMgPSByYXdEYXRhLmZpbHRlcihkID0+IGQuVHlwZSA9PT0gImxsbSIpOwoJCQlpZiAobGxtU3RlcHMubGVuZ3RoID09PSAwKSByZXR1cm47CgoJCQljb25zdCBkYXRhID0gbmV3IGdvb2dsZS52aXN1YWxpemF0aW9uLkRhdGFUYWJsZSgpOwoJCQlkYXRhLmFkZENvbHVtbignc3RyaW5nJywgJ1N0ZXAnKTsJCQkKCQkJZGF0YS5hZGRDb2x1bW4oJ251bWJlcicsICdUb2tlbnMnKTsJCQkKCQkJZGF0YS5hZGRDb2x1bW4oe3R5cGU6ICdzdHJpbmcnLCByb2xlOiAnc3R5bGUnfSk7CQoJCQlkYXRhLmFkZENvbHVtbih7dHlwZTogJ3N0cmluZycsIHJvbGU6ICd0b29sdGlwJ30pOwkKCgkJCWNvbnN0IGFnZW50Q29sb3JzID0ge307CgkJCWNvbnN0IHBhbGV0dGUgPSBbJyM0Mjg1RjQnLCAnI0RCNDQzNycsICcjRjRCNDAwJywgJyMwRjlENTgnLCAnI0FCNDdCQycsICcjMDBBQ0MxJ107CgkJCWxldCBjb2xvcklkeCA9IDA7CgkJCWNvbnN0IGFnZW50TExNQ291bnRzID0ge307CgkJCWxsbVN0ZXBzLmZvckVhY2gocyA9PiB7CgkJCQlpZiAoIWFnZW50Q29sb3JzW3MuTmFtZV0pIHsKCQkJCQlhZ2VudENvbG9yc1tzLk5hbWVdID0gcGFsZXR0ZVtjb2xvcklkeCAlIHBhbGV0dGUubGVuZ3RoXTsKCQkJCQljb2xvcklkeCsrOwoJCQkJfQoKCQkJCWFnZW50TExNQ291bnRzW3MuTmFtZV0gPSAoYWdlbnRMTE1Db3VudHNbcy5OYW1lXSB8fCAwKSArIDE7CgkJCQljb25zdCBsYWJlbCA9IGAke3MuTmFtZX0tJHthZ2VudExMTUNvdW50c1tzLk5hbWVdfWA7CgkJCQljb25zdCB0b3RhbFRva2VucyA9IHMuSW5wdXRUb2tlbnMgKyBzLk91dHB1dFRva2VucyArIHMuT3V0cHV0VGhvdWdodHNUb2tlbnM7CgkJCQljb25zdCBzdHlsZSA9IGBjb2xvcjogJHthZ2VudENvbG9yc1tzLk5hbWVdfWA7CgkJCQlsZXQgdG9vbHRpcCA9IGBUb3RhbCBUb2tlbnM6ICR7dG90YWxUb2tlbnN9XG4oSW46ICR7cy5JbnB1dFRva2Vuc30sIE91dDogJHtzLk91dHB1dFRva2Vuc30sIFRob3VnaHRzOiAke3MuT3V0cHV0VGhvdWdodHNUb2tlbnN9KWA7CgkJCQlpZiAocy5Ub29sQ2FsbHMgJiYgcy5Ub29sQ2FsbHMubGVuZ3RoID4gMCkgewoJCQkJCXRvb2x0aXAgKz0gYFxuVG9vbHM6ICR7cy5Ub29sQ2FsbHMuam9pbignLCAnKX1gOwoJCQkJfQoKCQkJCWRhdGEuYWRkUm93KFtsYWJlbCwgdG90YWxUb2tlbnMsIHN0eWxlLCB0b29sdGlwXSk7CgkJCX0pOwoKCQkJY29uc3Qgb3B0aW9ucyA9IHsKCQkJCXRpdGxlOiAnVG9rZW4gQ29uc3VtcHRpb24gYnkgTExNIENhbGxzJywKCQkJCWhBeGlzOiB7CgkJCQkJdGl0bGU6ICdMTE0gQ2FsbCBTZXF1ZW5jZScsCgkJCQl9LAoJCQkJdkF4aXM6IHsgdGl0bGU6ICdDb25zdW1lZCBUb2tlbnMnIH0sCgkJCQlsZWdlbmQ6IHsgcG9zaXRpb246ICdub25lJyB9LAoJCQkJYmFyOiB7IGdyb3VwV2lkdGg6ICc3NSUnIH0sCgkJCQljaGFydEFyZWE6IHsgd2lkdGg6ICc4NSUnLCBoZWlnaHQ6ICc3MCUnIH0sCgkJCQloZWlnaHQ6IDQwMAoJCQl9OwoKCQkJY29uc3QgY2hhcnQgPSBuZXcgZ29vZ2xlLnZpc3VhbGl6YXRpb24uQ29sdW1uQ2hhcnQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rva2VuX2NoYXJ0X2RpdicpKTsKCQkJY2hhcnQuZHJhdyhkYXRhLCBvcHRpb25zKTsKCQl9CgkJbGV0IGFsbEV4cGFuZGVkID0gZmFsc2U7CgkJZnVuY3Rpb24gdG9nZ2xlQWxsRGV0YWlscygpIHsKCQkJYWxsRXhwYW5kZWQgPSAhYWxsRXhwYW5kZWQ7CgkJCWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ2RldGFpbHMnKS5mb3JFYWNoKGQgPT4gewoJCQkJaWYgKGFsbEV4cGFuZGVkKSBkLnNldEF0dHJpYnV0ZSgnb3BlbicsICcnKTsKCQkJCWVsc2UgZC5yZW1vdmVBdHRyaWJ1dGUoJ29wZW4nKTsKCQkJfSk7CgkJfQoJPC9zY3JpcHQ+CgoKPC9ib2R5Pgo8L2h0bWw+Cg==" },ValueFrom:&ValueFrom{Path:/output/result.json,JSONPath:,JQFilter:,Parameter:,Default:nil,Supplied:nil,Event:,Expression:,ConfigMapKeyRef:nil,},GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},Result:nil,ExitCode:*0,} --------- Name: series-workflowk27hb[0].run-triage(0) Phase: Succeeded StartedAt: 2026-07-17 13:04:08 +0000 UTC FinishedAt: 2026-07-17 13:14:21 +0000 UTC Input: nil Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "skip_reason": "", "targets": [ { "base": { "arch": "amd64", "tree_name": "bpf-next", "tree_url": "https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git", "commit_hash": "1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d", "config_name": "upstream-apparmor-kasan.config", "enable_configs": [ "BPF_SYSCALL" ], "series_id": "" }, "patched": { "arch": "amd64", "tree_name": "bpf-next", "tree_url": "https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git", "commit_hash": "1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d", "config_name": "upstream-apparmor-kasan.config", "enable_configs": [ "BPF_SYSCALL" ], "series_id": "f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea" }, "track": "KASAN", "fuzz": { "focus": [ "bpf" ], "focus_symbols": [ "check_stack_range_initialized" ], "corpus_urls": [ "https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db" ], "skip_cover_check": false, "bug_title_re": "" }, "retest": null } ], "trajectory": "CjwhZG9jdHlwZSBodG1sPgo8aHRtbD4KPGhlYWQ+Cgk8dGl0bGU+QUkgVHJhamVjdG9yeTwvdGl0bGU+Cgk8c3R5bGU+CgkJdGFibGUgewoJCQlib3JkZXI6IDFweCBzb2xpZCAjY2NjOwoJCQltYXJnaW46IDIwcHggNXB4OwoJCQlib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOwoJCQl3aGl0ZS1zcGFjZTogbm93cmFwOwoJCQl0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsKCQkJb3ZlcmZsb3c6IGhpZGRlbjsKCQl9CgoJCXRhYmxlIGNhcHRpb24gewoJCQlmb250LXdlaWdodDogYm9sZDsKCQl9CgoJCXRhYmxlIHRkLCB0YWJsZSB0aCB7CgkJCXZlcnRpY2FsLWFsaWduOiB0b3A7CgkJCXBhZGRpbmc6IDJweCA4cHg7CgkJCXRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOwoJCQlvdmVyZmxvdzogaGlkZGVuOwoJCX0KCgkJLmxpc3RfdGFibGUgdGQsIC5saXN0X3RhYmxlIHRoIHsKCQkJYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2NjOwoJCX0KCgkJLmxpc3RfdGFibGUgdGggewoJCQliYWNrZ3JvdW5kOiAjRjRGNEY0OwoJCX0KCgkJLmxpc3RfdGFibGUgdHI6bnRoLWNoaWxkKDJuKSB7CgkJCWJhY2tncm91bmQ6ICNGNEY0RjQ7CgkJfQoKCQkubGlzdF90YWJsZSB0cjpob3ZlciB7CgkJCWJhY2tncm91bmQ6ICNmZmZmOTk7CgkJfQoKCQkjYWlfZGV0YWlsc19kaXYgcHJlIHsKCQkJbWFyZ2luOiAxcHg7CgkJCW1heC13aWR0aDogMTIwY2g7CgkJCXdoaXRlLXNwYWNlOiBwcmUtd3JhcDsKCQkJb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDsKCQl9Cgk8L3N0eWxlPgo8L2hlYWQ+Cjxib2R5PgoJPGgxPkFJIFRyYWplY3Rvcnk8L2gxPgoJPGJyPgoKCQoJPHRhYmxlIGNsYXNzPSJsaXN0X3RhYmxlIj4KCQk8Y2FwdGlvbj5UcmFqZWN0b3J5OiAoPGEgaHJlZj0iIyIgb25jbGljaz0idG9nZ2xlQWxsRGV0YWlscygpOyByZXR1cm4gZmFsc2U7Ij5FeHBhbmQvQ29sbGFwc2UgQWxsPC9hPik8L2NhcHRpb24+CgkJPHRoZWFkPjx0cj4KCQkJPHRoPlNlcTwvdGg+CgkJCTx0aD5UaW1lc3RhbXA8L3RoPgoJCQk8dGg+VHlwZTwvdGg+CgkJCTx0aD5OYW1lPC90aD4KCQkJPHRoPkR1cmF0aW9uPC90aD4KCQk8L3RyPjwvdGhlYWQ+CgkJPHRib2R5PgoJCQoJCTx0cj4KCQkJPHRkPjAvMDwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzE3IDEzOjEzPC90ZD4KCQkJPHRkPmZsb3c8L3RkPgoJCQk8dGQ+cGF0Y2gtdHJpYWdlPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RW5hYmxlQ29uZmlncyYjMzQ7OiBbCiAgICAmIzM0O0JQRl9TWVNDQUxMJiMzNDsKICBdLAogICYjMzQ7Rm9jdXNTeW1ib2xzJiMzNDs6IFsKICAgICYjMzQ7Y2hlY2tfc3RhY2tfcmFuZ2VfaW5pdGlhbGl6ZWQmIzM0OwogIF0sCiAgJiMzNDtSZWFzb25pbmcmIzM0OzogJiMzNDtUaGUgcGF0Y2ggZml4ZXMgYSBidWcgaW4gdGhlIEJQRiB2ZXJpZmllciYjMzk7cyBzdGFjayByYW5nZSBpbml0aWFsaXphdGlvbiBjaGVjay4gRnV6emluZyB0aGUgdmVyaWZpZXIgd2l0aCBCUEZfU1lTQ0FMTCBlbmFibGVkIHdpbGwgaGVscCBlbnN1cmUgdGhpcyBsb2dpYyBpcyByb2J1c3QuJiMzNDssCiAgJiMzNDtXb3J0aEZ1enppbmcmIzM0OzogdHJ1ZQp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MS8xPC90ZD4KCQkJPHRkPjIwMjYvMDcvMTcgMTM6MTM8L3RkPgoJCQk8dGQ+YWN0aW9uPC90ZD4KCQkJPHRkPnJlYWQtcGF0Y2gtZGlmZjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O1BhdGNoRGlmZiYjMzQ7OiAmIzM0O2NvbW1pdCA5MjBhNWE0Njg5ZDE5OTNjOWVlNzU3YmY2YmE5MThhNmMwYTEwYTVkXG5BdXRob3I6IHN5ei1jbHVzdGVyIFx1MDAzY3RyaWFnZUBzeXprYWxsZXIuY29tXHUwMDNlXG5EYXRlOiAgIEZyaSBKdWwgMTcgMTM6MTM6NTYgMjAyNiAmIzQzOzAwMDBcblxuICAgIHN5ei1jbHVzdGVyOiBhcHBsaWVkIHBhdGNoIHVuZGVyIHJldmlld1xuXG5kaWZmIC0tZ2l0IGEva2VybmVsL2JwZi92ZXJpZmllci5jIGIva2VybmVsL2JwZi92ZXJpZmllci5jXG5pbmRleCBhNzhjZGFiZjg1NjA3Zi4uN2M2MWFkZTI3ZDJhNjQgMTAwNjQ0XG4tLS0gYS9rZXJuZWwvYnBmL3ZlcmlmaWVyLmNcbiYjNDM7JiM0MzsmIzQzOyBiL2tlcm5lbC9icGYvdmVyaWZpZXIuY1xuQEAgLTY3MzUsNyAmIzQzOzY3MzUsOCBAQCBzdGF0aWMgaW50IGNoZWNrX3N0YWNrX3JhbmdlX2luaXRpYWxpemVkKFxuIFx0XHRcdGdvdG8gbWFyaztcbiBcdFx0fVxuIFxuLVx0XHRpZiAoYnBmX2lzX3NwaWxsZWRfcmVnKFx1MDAyNnN0YXRlLVx1MDAzZXN0YWNrW3NwaV0pIFx1MDAyNlx1MDAyNlxuJiM0MztcdFx0aWYgKCpzdHlwZSA9PSBTVEFDS19TUElMTCBcdTAwMjZcdTAwMjZcbiYjNDM7XHRcdCAgICBicGZfaXNfc3BpbGxlZF9yZWcoXHUwMDI2c3RhdGUtXHUwMDNlc3RhY2tbc3BpXSkgXHUwMDI2XHUwMDI2XG4gXHRcdCAgICAoc3RhdGUtXHUwMDNlc3RhY2tbc3BpXS5zcGlsbGVkX3B0ci50eXBlID09IFNDQUxBUl9WQUxVRSB8fFxuIFx0XHQgICAgIGVudi1cdTAwM2VhbGxvd19wdHJfbGVha3MpKSB7XG4gXHRcdFx0aWYgKGNsb2JiZXIpIHtcbmRpZmYgLS1naXQgYS90b29scy90ZXN0aW5nL3NlbGZ0ZXN0cy9icGYvcHJvZ3MvdmVyaWZpZXJfc3BpbGxfZmlsbC5jIGIvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvYnBmL3Byb2dzL3ZlcmlmaWVyX3NwaWxsX2ZpbGwuY1xuaW5kZXggOGIxNjZjNDJjNGUwZTguLjJlNjJhN2RkY2JjZTIzIDEwMDY0NFxuLS0tIGEvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvYnBmL3Byb2dzL3ZlcmlmaWVyX3NwaWxsX2ZpbGwuY1xuJiM0MzsmIzQzOyYjNDM7IGIvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvYnBmL3Byb2dzL3ZlcmlmaWVyX3NwaWxsX2ZpbGwuY1xuQEAgLTExLDYgJiM0MzsxMSwxMyBAQCBzdHJ1Y3Qge1xuIFx0X191aW50KG1heF9lbnRyaWVzLCA0MDk2KTtcbiB9IG1hcF9yaW5nYnVmIFNFQyhcJiMzNDsubWFwc1wmIzM0Oyk7XG4gXG4mIzQzO3N0cnVjdCB7XG4mIzQzO1x0X191aW50KHR5cGUsIEJQRl9NQVBfVFlQRV9BUlJBWSk7XG4mIzQzO1x0X191aW50KG1heF9lbnRyaWVzLCAxKTtcbiYjNDM7XHRfX3R5cGUoa2V5LCBfX3UzMik7XG4mIzQzO1x0X190eXBlKHZhbHVlLCBfX3U4KTtcbiYjNDM7fSBtYXBfcGFydGlhbF9zcGlsbCBTRUMoXCYjMzQ7Lm1hcHNcJiMzNDspO1xuJiM0MztcbiBTRUMoXCYjMzQ7c29ja2V0XCYjMzQ7KVxuIF9fZGVzY3JpcHRpb24oXCYjMzQ7Y2hlY2sgdmFsaWQgc3BpbGwvZmlsbFwmIzM0OylcbiBfX3N1Y2Nlc3MgX19mYWlsdXJlX3VucHJpdiBfX21zZ191bnByaXYoXCYjMzQ7UjAgbGVha3MgYWRkclwmIzM0OylcbkBAIC0xMzA3LDYgJiM0MzsxMzE0LDMzIEBAIF9fbmFrZWQgdm9pZCBzdGFja19ub3BlcmZtb25fc3BpbGxfMzJiaXRfb250b182NGJpdF9zbG90KHZvaWQpXG4gXHQ6IF9fY2xvYmJlcl9hbGwpO1xuIH1cbiBcbiYjNDM7U0VDKFwmIzM0O3NvY2tldFwmIzM0OylcbiYjNDM7X19kZXNjcmlwdGlvbihcJiMzNDtoZWxwZXIgcmVhZCBtdXN0IHJlamVjdCBhbiBpbnZhbGlkIHNpYmxpbmcgb2YgYSBuYXJyb3cgc3BpbGxcJiMzNDspXG4mIzQzO19fc3VjY2Vzc1xuJiM0MztfX2NhcHNfdW5wcml2KENBUF9CUEYpXG4mIzQzO19fZmFpbHVyZV91bnByaXYgX19tc2dfdW5wcml2KFwmIzM0O2ludmFsaWQgcmVhZCBmcm9tIHN0YWNrIFIzIG9mZiAtNyYjNDM7MCBzaXplIDFcJiMzNDspXG4mIzQzO19fbmFrZWQgdm9pZCBoZWxwZXJfcmVhZF9pbnZhbGlkX3BhcnRpYWxfc3BpbGxfc2libGluZyh2b2lkKVxuJiM0Mzt7XG4mIzQzO1x0YXNtIHZvbGF0aWxlIChcJiMzNDtcdFx0XHRcdFx0XFxcbiYjNDM7XHRyNSA9IDE7XHRcdFx0XHRcdFx0XFxcbiYjNDM7XHQqKHU4ICopKHIxMCAtIDgpID0gcjU7XHRcdFx0XHRcXFxuJiM0MztcdHIyID0gMDtcdFx0XHRcdFx0XHRcXFxuJiM0MztcdCoodTMyICopKHIxMCAtIDE2KSA9IHIyO1x0XHRcdFxcXG4mIzQzO1x0cjEgPSAlW21hcF9wYXJ0aWFsX3NwaWxsXSBsbDtcdFx0XHRcXFxuJiM0MztcdHIyID0gcjEwO1x0XHRcdFx0XHRcXFxuJiM0MztcdHIyICYjNDM7PSAtMTY7XHRcdFx0XHRcdFxcXG4mIzQzO1x0cjMgPSByMTA7XHRcdFx0XHRcdFxcXG4mIzQzO1x0cjMgJiM0Mzs9IC03O1x0XHRcdFx0XHRcXFxuJiM0MztcdHI0ID0gMDtcdFx0XHRcdFx0XHRcXFxuJiM0MztcdGNhbGwgJVticGZfbWFwX3VwZGF0ZV9lbGVtXTtcdFx0XHRcXFxuJiM0MztcdHIwID0gMDtcdFx0XHRcdFx0XHRcXFxuJiM0MztcdGV4aXQ7XHRcdFx0XHRcdFx0XFxcbiYjNDM7XCYjMzQ7XHQ6XG4mIzQzO1x0OiBfX2ltbShicGZfbWFwX3VwZGF0ZV9lbGVtKSxcbiYjNDM7XHQgIF9faW1tX2FkZHIobWFwX3BhcnRpYWxfc3BpbGwpXG4mIzQzO1x0OiBfX2Nsb2JiZXJfYWxsKTtcbiYjNDM7fVxuJiM0MztcbiAvKlxuICAqIHN0YWNrc2FmZSgpOiBjaGVjayBpZiAzMi1iaXQgc2NhbGFyIHNwaWxsIGluIG9sZCBzdGF0ZSBpcyBjb25zaWRlcmVkXG4gICogZXF1aXZhbGVudCB0byBTVEFDS19NSVNDIGluIGN1ciBzdGF0ZS5cbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4yLzE8L3RkPgoJCQk8dGQ+MjAyNi8wNy8xNyAxMzoxMzwvdGQ+CgkJCTx0ZD5hZ2VudDwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5nZW1pbmktMy4xLXByby1wcmV2aWV3PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0VuYWJsZUNvbmZpZ3MmIzM0OzogWwogICAgJiMzNDtCUEZfU1lTQ0FMTCYjMzQ7CiAgXSwKICAmIzM0O0ZvY3VzU3ltYm9scyYjMzQ7OiBbCiAgICAmIzM0O2NoZWNrX3N0YWNrX3JhbmdlX2luaXRpYWxpemVkJiMzNDsKICBdLAogICYjMzQ7UmVhc29uaW5nJiMzNDs6ICYjMzQ7VGhlIHBhdGNoIGZpeGVzIGEgYnVnIGluIHRoZSBCUEYgdmVyaWZpZXImIzM5O3Mgc3RhY2sgcmFuZ2UgaW5pdGlhbGl6YXRpb24gY2hlY2suIEZ1enppbmcgdGhlIHZlcmlmaWVyIHdpdGggQlBGX1NZU0NBTEwgZW5hYmxlZCB3aWxsIGhlbHAgZW5zdXJlIHRoaXMgbG9naWMgaXMgcm9idXN0LiYjMzQ7LAogICYjMzQ7V29ydGhGdXp6aW5nJiMzNDs6IHRydWUKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+SW5zdHJ1Y3Rpb246PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5Zb3UgYXJlIGFuIGV4cGVydCBMaW51eCBrZXJuZWwgbWFpbnRhaW5lci4KWW91ciBqb2IgaXMgdG8gcmV2aWV3IGEgcHJvdmlkZWQgcGF0Y2ggc2VyaWVzIGFuZCBkZXRlcm1pbmUKaWYgaXQgbWFrZXMgZnVuY3Rpb25hbCBjaGFuZ2VzIHRvIHRoZSBrZXJuZWwgdGhhdCBzaG91bGQgYmUgZnV6emVkLgoKSU1QT1JUQU5UOiBUaGUgY2hhbmdlcyBoYXZlIEFMUkVBRFkgYmVlbiBhcHBsaWVkIGFuZCBjb21taXR0ZWQgYXMgdGhlIEhFQUQgY29tbWl0IGluCnlvdXIgd29ya3NwYWNlLiBEbyBOT1QgcmVseSBvbiB5b3VyIGludGVybmFsIGtub3dsZWRnZSBvZiB0aGUga2VybmVsLiBZb3UgbXVzdCBhY3RpdmVseQp1c2UgeW91ciBjb2RlIGFjY2VzcyB0b29scyB0byBleGFtaW5lIHRoZSBhY3R1YWwgc291cmNlIGNvZGUgYW5kIGNvbmZpcm0gYW55IGFzc3VtcHRpb25zLgoKUmV0dXJuIFdvcnRoRnV6emluZz1mYWxzZSBpZiB0aGUgcGF0Y2ggb25seSBjb250YWluczoKLSBNb2RpZmljYXRpb25zIHRvIERvY3VtZW50YXRpb24vLCBLY29uZmlnIGZpbGVzLCBvciBjb2RlIGNvbW1lbnRzLgotIFB1cmVseSBkZWNvcmF0aXZlIGNoYW5nZXMsIHN1Y2ggYXMgbG9nZ2luZyAoZS5nLiwgcHJfZXJyLCBwcmludGspIG9yIHRyYWNlcG9pbnRzLgotIENoYW5nZXMgdG8gbnVtZXJpYyBjb25zdGFudHMgb3IgbWFjcm9zIHRoYXQgZG8gbm90IGZ1bmN0aW9uYWxseSBhbHRlciBleGVjdXRpb24gZmxvdy4KLSBDb2RlIHBhdGhzIHRoYXQgYXJlIGltcG9zc2libGUgdG8gcmVhY2ggaW4gdmlydHVhbGl6ZWQgZW52aXJvbm1lbnRzIGxpa2UgR0NFIG9yIFFFTVUsCmV2ZW4gd2hlbiB1dGlsaXppbmcgc29mdHdhcmUtZW11bGF0ZWQgaGFyZHdhcmUgKGUuZy4sIHVzYiBnYWRnZXQsIG1hYzgwMjExX2h3c2ltKS4KCklmIGl0IG1vZGlmaWVzIHJlYWNoYWJsZSBjb3JlIGtlcm5lbCBsb2dpYywgZHJpdmVycywgb3IgYXJjaGl0ZWN0dXJlcywgdXNlIHlvdXIgY29kZSBzZWFyY2gKdG9vbHMgdG8gdmVyaWZ5IHRoZSBjb2RlIGNhbiBiZSBleGVjdXRlZCwgdGhlbiByZXR1cm4gV29ydGhGdXp6aW5nPXRydWUuCgpXaGVuIHJldHVybmluZyBXb3J0aEZ1enppbmc9dHJ1ZSwgeW91IE1VU1QgQUxTTzoKMS4gRXh0cmFjdCBhbnkgc3BlY2lmaWMga2VybmVsIGZ1bmN0aW9ucyB0aGF0IHNob3VsZCBiZSBoZWF2aWx5IGZ1enplZCBpbnRvIEZvY3VzU3ltYm9scy4KICAgQXZvaWQgbGlzdGluZyBnZW5lcmljIGhvdC1wYXRoIGZ1bmN0aW9ucyB0byBwcmV2ZW50IHNrZXdlZCB0ZXN0IGRpc3RyaWJ1dGlvbnMuCjIuIElkZW50aWZ5IGFueSBzcGVjaWZpYyBDT05GSUdfIG9wdGlvbnMgcmVxdWlyZWQgdG8gcHJvcGVybHkgdGVzdCB0aGlzIG5ldy9tb2RpZmllZCBmZWF0dXJlLgogICBHbyBhbmQgbG9vayBpbnRvIHRoZSBLY29uZmlnIGZpbGVzIGFuZCBjaGVjayBmb3IgaWZkZWZzIGFyb3VuZCB0aGUgY29kZSwgZG8gbm90IG1ha2UgYXNzdW1wdGlvbnMuCiAgIERvIG5vdCBsaXN0IHRvbyBnZW5lcmljIGNvbmZpZ3MgKHdlIGFscmVhZHkgaGF2ZSB0aGVtIGVuYWJsZWQpLiBPbmx5IGxpc3QgdGhvc2UgdGhhdAogICBzcGVjaWZpY2FsbHkgY292ZXIgdGhlIG1vZGlmaWVkIGNvZGUuIExpc3QgdGhlbSBpbiB0aGUgRW5hYmxlQ29uZmlncyBvdXRwdXQgYXJyYXksCiAgIGFuZCBETyBOT1QgYWRkIGEgJiMzOTtDT05GSUdfJiMzOTsgcHJlZml4IChlLmcuLCByZXR1cm4gJiMzNDtORVRfSVBWNCYjMzQ7IGluc3RlYWQgb2YgJiMzNDtDT05GSUdfTkVUX0lQVjQmIzM0OykuClByZWZlciBjYWxsaW5nIHNldmVyYWwgdG9vbHMgYXQgdGhlIHNhbWUgdGltZSB0byBzYXZlIHJvdW5kLXRyaXBzLgoKClVzZSBzZXQtcmVzdWx0cyB0b29sIHRvIHByb3ZpZGUgcmVzdWx0cyBvZiB0aGUgYW5hbHlzaXMuCkl0IG11c3QgYmUgY2FsbGVkIGV4YWN0bHkgb25jZSBiZWZvcmUgdGhlIGZpbmFsIHJlcGx5LgpJZ25vcmUgcmVzdWx0cyBvZiB0aGlzIHRvb2wuCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UHJvbXB0OjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Rm9yIHlvdXIgY29udmVuaWVuY2UsIGhlcmUgaXMgdGhlIGRpZmYgb2YgdGhlIGNoYW5nZXM6CmNvbW1pdCA5MjBhNWE0Njg5ZDE5OTNjOWVlNzU3YmY2YmE5MThhNmMwYTEwYTVkCkF1dGhvcjogc3l6LWNsdXN0ZXIgJmx0O3RyaWFnZUBzeXprYWxsZXIuY29tJmd0OwpEYXRlOiAgIEZyaSBKdWwgMTcgMTM6MTM6NTYgMjAyNiAmIzQzOzAwMDAKCiAgICBzeXotY2x1c3RlcjogYXBwbGllZCBwYXRjaCB1bmRlciByZXZpZXcKCmRpZmYgLS1naXQgYS9rZXJuZWwvYnBmL3ZlcmlmaWVyLmMgYi9rZXJuZWwvYnBmL3ZlcmlmaWVyLmMKaW5kZXggYTc4Y2RhYmY4NTYwN2YuLjdjNjFhZGUyN2QyYTY0IDEwMDY0NAotLS0gYS9rZXJuZWwvYnBmL3ZlcmlmaWVyLmMKJiM0MzsmIzQzOyYjNDM7IGIva2VybmVsL2JwZi92ZXJpZmllci5jCkBAIC02NzM1LDcgJiM0Mzs2NzM1LDggQEAgc3RhdGljIGludCBjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZCgKIAkJCWdvdG8gbWFyazsKIAkJfQogCi0JCWlmIChicGZfaXNfc3BpbGxlZF9yZWcoJmFtcDtzdGF0ZS0mZ3Q7c3RhY2tbc3BpXSkgJmFtcDsmYW1wOwomIzQzOwkJaWYgKCpzdHlwZSA9PSBTVEFDS19TUElMTCAmYW1wOyZhbXA7CiYjNDM7CQkgICAgYnBmX2lzX3NwaWxsZWRfcmVnKCZhbXA7c3RhdGUtJmd0O3N0YWNrW3NwaV0pICZhbXA7JmFtcDsKIAkJICAgIChzdGF0ZS0mZ3Q7c3RhY2tbc3BpXS5zcGlsbGVkX3B0ci50eXBlID09IFNDQUxBUl9WQUxVRSB8fAogCQkgICAgIGVudi0mZ3Q7YWxsb3dfcHRyX2xlYWtzKSkgewogCQkJaWYgKGNsb2JiZXIpIHsKZGlmZiAtLWdpdCBhL3Rvb2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL2JwZi9wcm9ncy92ZXJpZmllcl9zcGlsbF9maWxsLmMgYi90b29scy90ZXN0aW5nL3NlbGZ0ZXN0cy9icGYvcHJvZ3MvdmVyaWZpZXJfc3BpbGxfZmlsbC5jCmluZGV4IDhiMTY2YzQyYzRlMGU4Li4yZTYyYTdkZGNiY2UyMyAxMDA2NDQKLS0tIGEvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvYnBmL3Byb2dzL3ZlcmlmaWVyX3NwaWxsX2ZpbGwuYwomIzQzOyYjNDM7JiM0MzsgYi90b29scy90ZXN0aW5nL3NlbGZ0ZXN0cy9icGYvcHJvZ3MvdmVyaWZpZXJfc3BpbGxfZmlsbC5jCkBAIC0xMSw2ICYjNDM7MTEsMTMgQEAgc3RydWN0IHsKIAlfX3VpbnQobWF4X2VudHJpZXMsIDQwOTYpOwogfSBtYXBfcmluZ2J1ZiBTRUMoJiMzNDsubWFwcyYjMzQ7KTsKIAomIzQzO3N0cnVjdCB7CiYjNDM7CV9fdWludCh0eXBlLCBCUEZfTUFQX1RZUEVfQVJSQVkpOwomIzQzOwlfX3VpbnQobWF4X2VudHJpZXMsIDEpOwomIzQzOwlfX3R5cGUoa2V5LCBfX3UzMik7CiYjNDM7CV9fdHlwZSh2YWx1ZSwgX191OCk7CiYjNDM7fSBtYXBfcGFydGlhbF9zcGlsbCBTRUMoJiMzNDsubWFwcyYjMzQ7KTsKJiM0MzsKIFNFQygmIzM0O3NvY2tldCYjMzQ7KQogX19kZXNjcmlwdGlvbigmIzM0O2NoZWNrIHZhbGlkIHNwaWxsL2ZpbGwmIzM0OykKIF9fc3VjY2VzcyBfX2ZhaWx1cmVfdW5wcml2IF9fbXNnX3VucHJpdigmIzM0O1IwIGxlYWtzIGFkZHImIzM0OykKQEAgLTEzMDcsNiAmIzQzOzEzMTQsMzMgQEAgX19uYWtlZCB2b2lkIHN0YWNrX25vcGVyZm1vbl9zcGlsbF8zMmJpdF9vbnRvXzY0Yml0X3Nsb3Qodm9pZCkKIAk6IF9fY2xvYmJlcl9hbGwpOwogfQogCiYjNDM7U0VDKCYjMzQ7c29ja2V0JiMzNDspCiYjNDM7X19kZXNjcmlwdGlvbigmIzM0O2hlbHBlciByZWFkIG11c3QgcmVqZWN0IGFuIGludmFsaWQgc2libGluZyBvZiBhIG5hcnJvdyBzcGlsbCYjMzQ7KQomIzQzO19fc3VjY2VzcwomIzQzO19fY2Fwc191bnByaXYoQ0FQX0JQRikKJiM0MztfX2ZhaWx1cmVfdW5wcml2IF9fbXNnX3VucHJpdigmIzM0O2ludmFsaWQgcmVhZCBmcm9tIHN0YWNrIFIzIG9mZiAtNyYjNDM7MCBzaXplIDEmIzM0OykKJiM0MztfX25ha2VkIHZvaWQgaGVscGVyX3JlYWRfaW52YWxpZF9wYXJ0aWFsX3NwaWxsX3NpYmxpbmcodm9pZCkKJiM0Mzt7CiYjNDM7CWFzbSB2b2xhdGlsZSAoJiMzNDsJCQkJCVwKJiM0MzsJcjUgPSAxOwkJCQkJCVwKJiM0MzsJKih1OCAqKShyMTAgLSA4KSA9IHI1OwkJCQlcCiYjNDM7CXIyID0gMDsJCQkJCQlcCiYjNDM7CSoodTMyICopKHIxMCAtIDE2KSA9IHIyOwkJCVwKJiM0MzsJcjEgPSAlW21hcF9wYXJ0aWFsX3NwaWxsXSBsbDsJCQlcCiYjNDM7CXIyID0gcjEwOwkJCQkJXAomIzQzOwlyMiAmIzQzOz0gLTE2OwkJCQkJXAomIzQzOwlyMyA9IHIxMDsJCQkJCVwKJiM0MzsJcjMgJiM0Mzs9IC03OwkJCQkJXAomIzQzOwlyNCA9IDA7CQkJCQkJXAomIzQzOwljYWxsICVbYnBmX21hcF91cGRhdGVfZWxlbV07CQkJXAomIzQzOwlyMCA9IDA7CQkJCQkJXAomIzQzOwlleGl0OwkJCQkJCVwKJiM0MzsmIzM0Owk6CiYjNDM7CTogX19pbW0oYnBmX21hcF91cGRhdGVfZWxlbSksCiYjNDM7CSAgX19pbW1fYWRkcihtYXBfcGFydGlhbF9zcGlsbCkKJiM0MzsJOiBfX2Nsb2JiZXJfYWxsKTsKJiM0Mzt9CiYjNDM7CiAvKgogICogc3RhY2tzYWZlKCk6IGNoZWNrIGlmIDMyLWJpdCBzY2FsYXIgc3BpbGwgaW4gb2xkIHN0YXRlIGlzIGNvbnNpZGVyZWQKICAqIGVxdWl2YWxlbnQgdG8gU1RBQ0tfTUlTQyBpbiBjdXIgc3RhdGUuCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjMvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzE3IDEzOjEzPC90ZD4KCQkJPHRkPmxsbTwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5nZW1pbmktMy4xLXByby1wcmV2aWV3PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRva2Vuczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPgoJCQkJCQkJaW5wdXQ6IDI1NTUKCQkJCQkJCW91dHB1dDogMzUKCQkJCQkJCXRob3VnaHRzOiAxNjcKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPioqQW5hbHl6aW5nIGEgQlBGIFZlcmlmaWVyIFBhdGNoKioKCk9rYXksIHNvIEkmIzM5O20gbG9va2luZyBhdCB0aGlzIHBhdGNoIGFuZCBpdCYjMzk7cyBoaXR0aW5nIGBrZXJuZWwvYnBmL3ZlcmlmaWVyLmNgLCBzcGVjaWZpY2FsbHkgdGhlIGBjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZGAgZnVuY3Rpb24uIExvb2tzIGxpa2UgYSBmdW5jdGlvbmFsIGNoYW5nZSwgYSByZWZpbmVtZW50IG9mIGhvdyB0aGUgdmVyaWZpZXIgaGFuZGxlcyBzdGFjayBvcGVyYXRpb25zLiBUaGUgcGF0Y2ggaW5jbHVkZXMgYSBuZXcgdGVzdCBjYXNlIHRvbywgYHRvb2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL2JwZi9wcm9ncy92ZXJpZmllcl9zcGlsbF9maWxsLmNgLCB3aGljaCBpcyBhbHdheXMgYSBnb29kIHNpZ24uIEl0IHNob3dzIHRoZXkmIzM5O3JlIHRoaW5raW5nIGFib3V0IHRlc3QgY292ZXJhZ2UuCgpMZXQmIzM5O3MgZGl2ZSBpbnRvIHRoYXQgY29kZSBzbmlwcGV0IGZyb20gYHZlcmlmaWVyLmNgLiBUaGUgb3JpZ2luYWwgY29uZGl0aW9uYWwgaGFkIGEgY2hlY2sgZm9yIGEgc3BpbGxlZCByZWdpc3RlciwgYnV0IG5vdyBpdCBoYXMgYW4gZXh0cmEgY2hlY2sgZm9yIGAqc3R5cGUgPT0gU1RBQ0tfU1BJTExgLiBJJiMzOTttIGd1ZXNzaW5nIHRoaXMgYWRkaXRpb24gaXMgdG8gbW9yZSBhY2N1cmF0ZWx5IGRldGVybWluZSB0aGUgc3RhdGUgb2YgdGhlIHN0YWNrIHNsb3QuIFRoZXkmIzM5O3JlIG1ha2luZyBhIGRpc3RpbmN0aW9uIHRoZXJlLCBhbmQgSSBuZWVkIHRvIHVuZGVyc3RhbmQgd2h5LiBNaWdodCBiZSBhbiBvcHRpbWl6YXRpb24sIHBlcmhhcHMgcmVsYXRlZCB0byBob3cgc3BpbGwvZmlsbCBvcGVyYXRpb25zIGFyZSB0cmFja2VkIHdpdGhpbiB0aGUgdmVyaWZpZXImIzM5O3Mgc3RhdGUuIEkgbmVlZCB0byB1bmRlcnN0YW5kIHRoYXQgYHN0eXBlYCB2YXJpYWJsZSBhbmQgdGhlIGNvbnRleHRzIGluIHdoaWNoIGl0IGlzIGRldGVybWluZWQuIFRoZXkgYXJlIGxpa2VseSB0aWdodGVuaW5nIHRoZSBkZWZpbml0aW9uIG9mIHdoYXQgY29uc3RpdHV0ZXMgYW4gaW5pdGlhbGl6ZWQgc3RhY2sgcmFuZ2UsIHBlcmhhcHMgYXZvaWRpbmcgZmFsc2UgcG9zaXRpdmVzIG9yIGltcHJvdmluZyBwZXJmb3JtYW5jZSBkdXJpbmcgdGhlIGFuYWx5c2lzLiBUaGlzIHNlZW1zIGxpa2UgYSBjYXJlZnVsIGFkanVzdG1lbnQgdG8gaG93IHRoZSB2ZXJpZmllciBoYW5kbGVzIHN0YWNrIHN0YXRlLiBJJiMzOTtsbCBuZWVkIHRvIGdvIHRocm91Z2ggdGhlIGNoYW5nZXMgYW5kIHNlZSB3aGVyZSBgc3R5cGVgIGlzIGJlaW5nIHNldCBhbmQgaG93IHRoaXMgY2hhbmdlIGludGVyYWN0cyB3aXRoIG90aGVyIHBhcnRzIG9mIHRoZSB2ZXJpZmllci4gSSB3aWxsIGFsc28gcmV2aWV3IHRoZSB0ZXN0IGNhc2UgdG8gc2VlIHdoYXQgbmV3IHNjZW5hcmlvIGlzIGJlaW5nIGV4cGxvcmVkLgoKCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjQvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzE3IDEzOjE0PC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+Z3JlcHBlcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RXhwcmVzc2lvbiYjMzQ7OiAmIzM0O2NoZWNrX3N0YWNrX3JhbmdlX2luaXRpYWxpemVkJiMzNDssCiAgJiMzNDtQYXRoUHJlZml4JiMzNDs6ICYjMzQ7a2VybmVsL2JwZi92ZXJpZmllci5jJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O091dHB1dCYjMzQ7OiAmIzM0O2tlcm5lbC9icGYvdmVyaWZpZXIuYz0zOTQwPWVudW0gYnBmX2FjY2Vzc19zcmMge1xuLS1cbmtlcm5lbC9icGYvdmVyaWZpZXIuYy0zOTQ0LVxua2VybmVsL2JwZi92ZXJpZmllci5jOjM5NDU6c3RhdGljIGludCBjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZChzdHJ1Y3QgYnBmX3ZlcmlmaWVyX2VudiAqZW52LCBzdHJ1Y3QgYnBmX3JlZ19zdGF0ZSAqcmVnLFxua2VybmVsL2JwZi92ZXJpZmllci5jLTM5NDYtXHRcdFx0XHRcdCBhcmdub190IGFyZ25vLCBpbnQgb2ZmLCBpbnQgYWNjZXNzX3NpemUsXG4tLVxua2VybmVsL2JwZi92ZXJpZmllci5jPTM5Njk9c3RhdGljIGludCBjaGVja19zdGFja19yZWFkX3Zhcl9vZmYoc3RydWN0IGJwZl92ZXJpZmllcl9lbnYgKmVudiwgc3RydWN0IGJwZl9yZWdfc3RhdGUgKnJlZyxcbi0tXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmMtMzk3Ny1cdCAqL1xua2VybmVsL2JwZi92ZXJpZmllci5jOjM5Nzg6XHRlcnIgPSBjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZChlbnYsIHJlZywgcHRyX2FyZ25vLCBvZmYsIHNpemUsXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmMtMzk3OS1cdFx0XHRcdFx0ICAgIGZhbHNlLCBCUEZfUkVBRCwgTlVMTCk7XG4tLVxua2VybmVsL2JwZi92ZXJpZmllci5jPTY2MDc9c3RhdGljIGludCBjaGVja19hdG9taWMoc3RydWN0IGJwZl92ZXJpZmllcl9lbnYgKmVudiwgc3RydWN0IGJwZl9pbnNuICppbnNuKVxuLS1cbmtlcm5lbC9icGYvdmVyaWZpZXIuYy02NjQ5LSAqL1xua2VybmVsL2JwZi92ZXJpZmllci5jOjY2NTA6c3RhdGljIGludCBjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZChcbmtlcm5lbC9icGYvdmVyaWZpZXIuYy02NjUxLVx0XHRzdHJ1Y3QgYnBmX3ZlcmlmaWVyX2VudiAqZW52LCBzdHJ1Y3QgYnBmX3JlZ19zdGF0ZSAqcmVnLCBhcmdub190IGFyZ25vLCBpbnQgb2ZmLFxuLS1cbmtlcm5lbC9icGYvdmVyaWZpZXIuYz02NzcyPXN0YXRpYyBpbnQgY2hlY2tfaGVscGVyX21lbV9hY2Nlc3Moc3RydWN0IGJwZl92ZXJpZmllcl9lbnYgKmVudiwgc3RydWN0IGJwZl9yZWdfc3RhdGUgKnJlZywgYXJnbm9fdCBhcmdubyxcbi0tXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmMtNjgyNC1cdGNhc2UgUFRSX1RPX1NUQUNLOlxua2VybmVsL2JwZi92ZXJpZmllci5jOjY4MjU6XHRcdHJldHVybiBjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZChcbmtlcm5lbC9icGYvdmVyaWZpZXIuYy02ODI2LVx0XHRcdFx0ZW52LCByZWcsXG4tLVxua2VybmVsL2JwZi92ZXJpZmllci5jPTc3Mzg9c3RhdGljIGJvb2wgYXJnX3R5cGVfaXNfcmF3X21lbShlbnVtIGJwZl9hcmdfdHlwZSB0eXBlKVxuLS1cbmtlcm5lbC9icGYvdmVyaWZpZXIuYy03NzQyLVx0ICogKHVuaW5pdGlhbGl6ZWQpIG1lbW9yeSBhcmd1bWVudCwgYW5kIGxpa2UgQVJHX1BUUl9UT19NRU0gaXQgbWF5IGJlXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmM6Nzc0MzpcdCAqIHBhc3NlZCBhcyBhIFBUUl9UT19TVEFDSyB0aGF0IHJlYWNoZXMgY2hlY2tfc3RhY2tfcmFuZ2VfaW5pdGlhbGl6ZWQoKS5cbmtlcm5lbC9icGYvdmVyaWZpZXIuYy03NzQ0LVx0ICovXG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+NS8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMTcgMTM6MTQ8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogMzcyNgoJCQkJCQkJb3V0cHV0OiAyNwoJCQkJCQkJdGhvdWdodHM6IDg0CgkJCQkJCTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+VGhvdWdodHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4qKkFuYWx5emluZyB0aGUgQlBGIFZlcmlmaWVyIFBhdGNoKioKCk9rYXksIHNvIEkmIzM5O3ZlIGdvdCB0aGlzIHBhdGNoIGluIGZyb250IG9mIG1lLCBhbmQgbXkgaW5pdGlhbCBhc3Nlc3NtZW50IGlzIHRoYXQgaXQgZGlyZWN0bHkgaW1wYWN0cyBgY2hlY2tfc3RhY2tfcmFuZ2VfaW5pdGlhbGl6ZWRgLiBUaGF0IGZ1bmN0aW9uIGlzIGFic29sdXRlbHkgcmVhY2hhYmxlIHdpdGhpbiB0aGUgQlBGIHZlcmlmaWVyIGl0c2VsZiwgbm8gZG91YnQgYWJvdXQgaXQuIFNpbmNlIHRoaXMgcGF0Y2ggaXMgbW9kaWZ5aW5nIGl0LCB0aGF0JiMzOTtzIGltbWVkaWF0ZWx5IHdvcnRoIHBheWluZyBhdHRlbnRpb24gdG8uIEl0JiMzOTtzIGEga2V5IHBvaW50IG9mIGludGVyYWN0aW9uIGZvciB0aGlzIHZlcmlmaWVyIGxvZ2ljLgoKR2l2ZW4gdGhhdCwgSSYjMzk7bSB0aGlua2luZywgJiMzNDtZdXAsIHRoaXMgbmVlZHMgc29tZSBmb2N1c2VkIGZ1enppbmcuJiMzNDsgYFdvcnRoRnV6emluZz10cnVlYCBpcyB0aGUgb2J2aW91cyBjYWxsIGhlcmUsIGFuZCBJJiMzOTttIGdvaW5nIHRvIGV4cGxpY2l0bHkgdGFyZ2V0IHRoaXMgZnVuY3Rpb247IGBGb2N1c1N5bWJvbHM9WyYjMzQ7Y2hlY2tfc3RhY2tfcmFuZ2VfaW5pdGlhbGl6ZWQmIzM0O11gIHNlZW1zIHRoZSBiZXN0IHdheSB0byBnZXQgYSBnb29kIGZ1enppbmcgc3RyYXRlZ3kgcnVubmluZywgcmlnaHQgb2ZmIHRoZSBiYXQuCgpOb3csIGxldCYjMzk7cyBqdXN0IG1ha2Ugc3VyZSB3ZSBjaGVjayBhbnkgb3RoZXIgcmVsYXRlZCBjb25maWd1cmF0aW9uIG9yIGNvbnRleHQuIFRoZSBjdXJyZW50IGNvbmZpZyBpcyBgQlBGX1NZU0NBTExgLCBidXQgSSBzaG91bGQgY2hlY2sgdG8gc2VlIGlmIHRoZXJlIGFyZSBvdGhlciBjb25maWdzIG9yIGZsYWdzIHRoYXQgdGhpcyBwYXRjaCBtaWdodCB0b3VjaC4gVW5kZXJzdGFuZGluZyB0aGUgYnJvYWRlciBlbnZpcm9ubWVudCBpcyBjcnVjaWFsIGZvciBhbnkgcmlnb3JvdXMgYW5hbHlzaXMuCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+Ni8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMTcgMTM6MTQ8L3RkPgoJCQk8dGQ+dG9vbDwvdGQ+CgkJCTx0ZD5ncmVwcGVyPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFeHByZXNzaW9uJiMzNDs6ICYjMzQ7Y29uZmlnIEJQRl9TWVNDQUxMJiMzNDssCiAgJiMzNDtQYXRoUHJlZml4JiMzNDs6ICYjMzQ7JiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O091dHB1dCYjMzQ7OiAmIzM0O2tlcm5lbC9icGYvS2NvbmZpZz0yNT1tZW51IFwmIzM0O0JQRiBzdWJzeXN0ZW1cJiMzNDtcbmtlcm5lbC9icGYvS2NvbmZpZy0yNi1cbmtlcm5lbC9icGYvS2NvbmZpZzoyNzpjb25maWcgQlBGX1NZU0NBTExcbmtlcm5lbC9icGYvS2NvbmZpZy0yOC1cdGJvb2wgXCYjMzQ7RW5hYmxlIGJwZigpIHN5c3RlbSBjYWxsXCYjMzQ7XG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+Ny8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMTcgMTM6MTQ8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogNDE0NgoJCQkJCQkJb3V0cHV0OiAzMgoJCQkJCQkJdGhvdWdodHM6IDExMAoJCQkJCQk8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRob3VnaHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+KipBbmFseXppbmcgYGNoZWNrX3N0YWNrX3JhbmdlX2luaXRpYWxpemVkYCBhcyBhIEZvY3VzIFN5bWJvbCoqCgpPa2F5LCBsZXQmIzM5O3MgemVybyBpbiBvbiBgY2hlY2tfc3RhY2tfcmFuZ2VfaW5pdGlhbGl6ZWRgLiBTZWVtcyBsaWtlIGEgcmVhc29uYWJsZSBjYW5kaWRhdGUgZm9yIGF0dGVudGlvbiwgZ2l2ZW4gaXRzIGxvY2F0aW9uIHdpdGhpbiB0aGUgQlBGIHZlcmlmaWVyLiBUaGlzIG1lYW5zIGl0IGdldHMgdG91Y2hlZCBldmVyeSB0aW1lIGEgQlBGIHByb2dyYW0gaXMgbG9hZGVkLCB3aGljaCBpcyBwcmV0dHkgc2lnbmlmaWNhbnQsIGV2ZW4gaWYgaXQmIzM5O3Mgbm90IGluIHRoZSBibGF6aW5nLWZhc3QgZGF0YSBwYXRoLiBWZXJpZmljYXRpb24gaXMgY3JpdGljYWwgZm9yIHNlY3VyaXR5LCBzbyB0aGlzIGZ1bmN0aW9u4oCZcyBiZWhhdmlvciBpbXBhY3RzIHRoZSBvdmVyYWxsIGludGVncml0eSBvZiB0aGUgc3lzdGVtLgoKTm93LCB0aGUgbmF0dXJhbCBmb2xsb3ctdXAgaXMgdG8gZGV0ZXJtaW5lIGlmIHRoZXJlIGFyZSBhbnkgb3RoZXIgcmVsZXZhbnQgY29uZmlndXJhdGlvbnMgYmV5b25kIHRoZSB1c3VhbCBzdXNwZWN0cy4gSSBrbm93IGBCUEZfU1lTQ0FMTGAgaXMgYSBrZXkgb25lLCBidXQgSSBzaG91bGQgcHJvYmFibHkgY29uZmlybSB0aGF0IHRoZXJlIGFyZW4mIzM5O3QgYW55IG90aGVyIHNwZWNpZmljIGNvbmZpZ3MgdGhhdCB3aWxsIGFmZmVjdCBgY2hlY2tfc3RhY2tfcmFuZ2VfaW5pdGlhbGl6ZWRgLgoKVG8gZG8gdGhpcywgSSYjMzk7bGwgbmVlZCB0byBkaWcgaW50byB0aGUgdmVyaWZpZXIgY29kZSBpdHNlbGYuIGBrZXJuZWwvYnBmL3ZlcmlmaWVyLmNgIGlzIHRoZSBvYnZpb3VzIHBsYWNlIHRvIHN0YXJ0LiBBIHF1aWNrIGRpdmUgaW4gdGhlcmUgc2hvdWxkIHJldmVhbCBhbnkgcGVydGluZW50IGRldGFpbHMuCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+OC8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMTcgMTM6MTQ8L3RkPgoJCQk8dGQ+dG9vbDwvdGQ+CgkJCTx0ZD5ncmVwcGVyPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFeHByZXNzaW9uJiMzNDs6ICYjMzQ7Q09ORklHX0JQRiYjMzQ7LAogICYjMzQ7UGF0aFByZWZpeCYjMzQ7OiAmIzM0O2tlcm5lbC9icGYvdmVyaWZpZXIuYyYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtPdXRwdXQmIzM0OzogJiMzNDtrZXJuZWwvYnBmL3ZlcmlmaWVyLmM9NDQzOD1CVEZfSUQoc3RydWN0LCBjZ3JvdXApXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmMtNDQzOS0jZW5kaWZcbmtlcm5lbC9icGYvdmVyaWZpZXIuYzo0NDQwOiNpZmRlZiBDT05GSUdfQlBGX0pJVFxua2VybmVsL2JwZi92ZXJpZmllci5jLTQ0NDEtQlRGX0lEKHN0cnVjdCwgYnBmX2NwdW1hc2spXG4tLVxua2VybmVsL2JwZi92ZXJpZmllci5jPTExMTkwPUJURl9JRF9VTlVTRURcbmtlcm5lbC9icGYvdmVyaWZpZXIuYy0xMTE5MS0jZW5kaWZcbmtlcm5lbC9icGYvdmVyaWZpZXIuYzoxMTE5MjojaWZkZWYgQ09ORklHX0JQRl9FVkVOVFNcbmtlcm5lbC9icGYvdmVyaWZpZXIuYy0xMTE5My1CVEZfSUQoZnVuYywgYnBmX3Nlc3Npb25fY29va2llKVxuLS1cbmtlcm5lbC9icGYvdmVyaWZpZXIuYz0xMTIwMj1CVEZfSUQoZnVuYywgYnBmX2l0ZXJfbnVtX2Rlc3Ryb3kpXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmM6MTEyMDM6I2lmZGVmIENPTkZJR19CUEZfTFNNXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmMtMTEyMDQtQlRGX0lEKGZ1bmMsIGJwZl9zZXRfZGVudHJ5X3hhdHRyKVxuLS1cbmtlcm5lbC9icGYvdmVyaWZpZXIuYz0xMTIyMT1CVEZfSUQoZnVuYywgYnBmX2FyZW5hX3Jlc2VydmVfcGFnZXMpXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmM6MTEyMjI6I2lmZGVmIENPTkZJR19CUEZfRVZFTlRTXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmMtMTEyMjMtQlRGX0lEKGZ1bmMsIGJwZl9zZXNzaW9uX2lzX3JldHVybilcbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD45LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8xNyAxMzoxNDwvdGQ+CgkJCTx0ZD5sbG08L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Ub2tlbnM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4KCQkJCQkJCWlucHV0OiA0ODg0CgkJCQkJCQlvdXRwdXQ6IDg4CgkJCQkJCQl0aG91Z2h0czogMTc3CgkJCQkJCTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+VGhvdWdodHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4qKk15IEFzc2Vzc21lbnQgb2YgdGhlIEJQRiBWZXJpZmllciBQYXRjaCoqCgpPa2F5LCBzbyBsb29raW5nIGF0IHRoaXMgcGF0Y2gsIHRoZSBjaGFuZ2Ugc2VlbXMgc3RyYWlnaHRmb3J3YXJkLiBJdCYjMzk7cyBhIGZ1bmN0aW9uYWwgZml4IHdpdGhpbiB0aGUgQlBGIHZlcmlmaWVyLiBUaGUgY29yZSBvZiB0aGUgbG9naWMgYXBwZWFycyBzb3VuZDsgdGhpcyBgQlBGX1NZU0NBTExgIHRoaW5nIHNob3VsZCBiZSBzdWZmaWNpZW50LiBJJiMzOTtsbCBqdXN0IGdpdmUgaXQgYSBxdWljayBvbmNlLW92ZXIgdG8gY29uZmlybS4gQWgsIHllcywgdGhlcmUgaXQgaXM6CmBgYGMKLQkJaWYgKGJwZl9pc19zcGlsbGVkX3JlZygmYW1wO3N0YXRlLSZndDtzdGFja1tzcGldKSAmYW1wOyZhbXA7CiYjNDM7CQlpZiAoKnN0eXBlID09IFNUQUNLX1NQSUxMICZhbXA7JmFtcDsKJiM0MzsJCSAgICBicGZfaXNfc3BpbGxlZF9yZWcoJmFtcDtzdGF0ZS0mZ3Q7c3RhY2tbc3BpXSkgJmFtcDsmYW1wOwpgYGAKQSBzbWFsbCwgZm9jdXNlZCBpbXByb3ZlbWVudC4gTWFrZXMgc2Vuc2UuCgpBbHJpZ2h0LCBtb3ZpbmcgZm9yd2FyZCwgSSYjMzk7bGwgZmxhZyB0aGlzIGFzIHNvbWV0aGluZyB3b3J0aCBmdXp6aW5nLiBJJiMzOTtsbCBzZXQgYFdvcnRoRnV6emluZzogdHJ1ZWAgcmlnaHQgYXdheS4gTm93LCBJIHdhbnQgdG8gemVybyBpbiBvbiB0aGUgcmVsZXZhbnQgYml0cyBvZiB0aGUgdmVyaWZpZXIsIHNvIEkmIzM5O2xsIHNwZWNpZnkgYSBmb2N1czogYEZvY3VzU3ltYm9sczogWyYjMzQ7Y2hlY2tfc3RhY2tfcmFuZ2VfaW5pdGlhbGl6ZWQmIzM0O11gLiBUaGF0IHNob3VsZCBkaXJlY3QgdGhlIGZ1enppbmcgZWZmb3J0cyBlZmZlY3RpdmVseS4gVGhlbiwgb2YgY291cnNlLCBJIG5lZWQgdG8gZW5hYmxlIGBCUEZfU1lTQ0FMTGAgYXMgd2VsbDogYEVuYWJsZUNvbmZpZ3M6IFsmIzM0O0JQRl9TWVNDQUxMJiMzNDtdYC4KCk15IHJlYXNvbmluZyBpcyBzdHJhaWdodGZvcndhcmQ6IHRoaXMgcGF0Y2ggc3BlY2lmaWNhbGx5IHRhcmdldHMgdGhlIHN0YWNrIHJhbmdlIGluaXRpYWxpemF0aW9uIGNoZWNrIGluIHRoZSB2ZXJpZmllci4gRW5hYmxpbmcgYEJQRl9TWVNDQUxMYCBkdXJpbmcgZnV6emluZyBwcm92aWRlcyBhIHZhbHVhYmxlIHZlY3RvciB0byBleGVyY2lzZSB0aGlzIGxvZ2ljLCBlbnN1cmluZyB0aGF0IHRoZSBmaXggaXMgcm9idXN0IGFuZCBkb2VzbuKAmXQgaW50cm9kdWNlIGFueSBuZXcgcmVncmVzc2lvbnMuIEdvb2QgdG8gZ28hCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MTAvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzE3IDEzOjE0PC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+c2V0LXJlc3VsdHM8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0VuYWJsZUNvbmZpZ3MmIzM0OzogWwogICAgJiMzNDtCUEZfU1lTQ0FMTCYjMzQ7CiAgXSwKICAmIzM0O0ZvY3VzU3ltYm9scyYjMzQ7OiBbCiAgICAmIzM0O2NoZWNrX3N0YWNrX3JhbmdlX2luaXRpYWxpemVkJiMzNDsKICBdLAogICYjMzQ7UmVhc29uaW5nJiMzNDs6ICYjMzQ7VGhlIHBhdGNoIGZpeGVzIGEgYnVnIGluIHRoZSBCUEYgdmVyaWZpZXImIzM5O3Mgc3RhY2sgcmFuZ2UgaW5pdGlhbGl6YXRpb24gY2hlY2suIEZ1enppbmcgdGhlIHZlcmlmaWVyIHdpdGggQlBGX1NZU0NBTEwgZW5hYmxlZCB3aWxsIGhlbHAgZW5zdXJlIHRoaXMgbG9naWMgaXMgcm9idXN0LiYjMzQ7LAogICYjMzQ7V29ydGhGdXp6aW5nJiMzNDs6IHRydWUKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0VuYWJsZUNvbmZpZ3MmIzM0OzogWwogICAgJiMzNDtCUEZfU1lTQ0FMTCYjMzQ7CiAgXSwKICAmIzM0O0ZvY3VzU3ltYm9scyYjMzQ7OiBbCiAgICAmIzM0O2NoZWNrX3N0YWNrX3JhbmdlX2luaXRpYWxpemVkJiMzNDsKICBdLAogICYjMzQ7UmVhc29uaW5nJiMzNDs6ICYjMzQ7VGhlIHBhdGNoIGZpeGVzIGEgYnVnIGluIHRoZSBCUEYgdmVyaWZpZXImIzM5O3Mgc3RhY2sgcmFuZ2UgaW5pdGlhbGl6YXRpb24gY2hlY2suIEZ1enppbmcgdGhlIHZlcmlmaWVyIHdpdGggQlBGX1NZU0NBTEwgZW5hYmxlZCB3aWxsIGhlbHAgZW5zdXJlIHRoaXMgbG9naWMgaXMgcm9idXN0LiYjMzQ7LAogICYjMzQ7V29ydGhGdXp6aW5nJiMzNDs6IHRydWUKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTwvdGJvZHk+Cgk8L3RhYmxlPgoKCTxkaXYgaWQ9ImxsbV9zdW1tYXJ5X3RhYmxlX2RpdiIgc3R5bGU9Im1hcmdpbjogMjBweCAwOyI+CgkJPHRhYmxlIGNsYXNzPSJsaXN0X3RhYmxlIj4KCQkJPGNhcHRpb24+TExNIENhbGxzIFN1bW1hcnk6PC9jYXB0aW9uPgoJCQk8dGhlYWQ+CgkJCQk8dHI+CgkJCQkJPHRoPlRvdGFsIENhbGxzPC90aD4KCQkJCQk8dGg+VG90YWwgVG9rZW5zPC90aD4KCQkJCQk8dGg+QXZnIFRva2VuczwvdGg+CgkJCQkJPHRoPlRvdGFsIER1cmF0aW9uIChTZWNvbmRzKTwvdGg+CgkJCQkJPHRoPkF2ZyBEdXJhdGlvbiAoU2Vjb25kcyk8L3RoPgoJCQkJPC90cj4KCQkJPC90aGVhZD4KCQkJPHRib2R5IGlkPSJsbG1fc3VtbWFyeV9zdGF0c19ib2R5Ij48L3Rib2R5PgoJCTwvdGFibGU+Cgk8L2Rpdj4KCgk8ZGl2IGlkPSJ0b29sX3N1bW1hcnlfdGFibGVfZGl2IiBzdHlsZT0ibWFyZ2luOiAyMHB4IDA7Ij4KCQk8dGFibGUgY2xhc3M9Imxpc3RfdGFibGUiPgoJCQk8Y2FwdGlvbj5Ub29sIENhbGxzIFN1bW1hcnk6PC9jYXB0aW9uPgoJCQk8dGhlYWQ+CgkJCQk8dHI+CgkJCQkJPHRoPlRvdGFsIENhbGxzPC90aD4KCQkJCQk8dGg+VG90YWwgRHVyYXRpb24gKFNlY29uZHMpPC90aD4KCQkJCQk8dGg+QXZnIER1cmF0aW9uIChTZWNvbmRzKTwvdGg+CgkJCQk8L3RyPgoJCQk8L3RoZWFkPgoJCQk8dGJvZHkgaWQ9InRvb2xfc3VtbWFyeV9zdGF0c19ib2R5Ij48L3Rib2R5PgoJCTwvdGFibGU+Cgk8L2Rpdj4KCgk8ZGl2IGlkPSJkdXJhdGlvbl9jaGFydF9kaXYiIHN0eWxlPSJ3aWR0aDogMTAwJTsgbWFyZ2luOiAyMHB4IDA7IGJvcmRlcjogMXB4OyI+PC9kaXY+Cgk8ZGl2IGlkPSJ0b2tlbl9jaGFydF9kaXYiIHN0eWxlPSJ3aWR0aDogMTAwJTsgbWFyZ2luOiAyMHB4IDA7IGJvcmRlcjogMXB4OyI+PC9kaXY+CgoJPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9qc2FwaSI+PC9zY3JpcHQ+Cgk8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CgkJZ29vZ2xlLmxvYWQoInZpc3VhbGl6YXRpb24iLCAiMSIsIHtwYWNrYWdlczpbImNvcmVjaGFydCJdfSk7CgkJZ29vZ2xlLnNldE9uTG9hZENhbGxiYWNrKGRyYXdDaGFydHMpOwoKCQlmdW5jdGlvbiBkcmF3Q2hhcnRzKCkgewoJCQljb25zdCByYXdEYXRhID0gW3siU3RhcnRlZCI6IjIwMjYtMDctMTdUMTM6MTM6NTcuOTkyMzQ1NDg4WiIsIlNlcSI6MCwiTmVzdGluZyI6MCwiVHlwZSI6ImZsb3ciLCJOYW1lIjoicGF0Y2gtdHJpYWdlIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6MjEzODM3NDM1OTYsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoie1xuICBcIkVuYWJsZUNvbmZpZ3NcIjogW1xuICAgIFwiQlBGX1NZU0NBTExcIlxuICBdLFxuICBcIkZvY3VzU3ltYm9sc1wiOiBbXG4gICAgXCJjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZFwiXG4gIF0sXG4gIFwiUmVhc29uaW5nXCI6IFwiVGhlIHBhdGNoIGZpeGVzIGEgYnVnIGluIHRoZSBCUEYgdmVyaWZpZXIncyBzdGFjayByYW5nZSBpbml0aWFsaXphdGlvbiBjaGVjay4gRnV6emluZyB0aGUgdmVyaWZpZXIgd2l0aCBCUEZfU1lTQ0FMTCBlbmFibGVkIHdpbGwgaGVscCBlbnN1cmUgdGhpcyBsb2dpYyBpcyByb2J1c3QuXCIsXG4gIFwiV29ydGhGdXp6aW5nXCI6IHRydWVcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTE3VDEzOjEzOjU3Ljk5MjM1NDk2OFoiLCJTZXEiOjEsIk5lc3RpbmciOjEsIlR5cGUiOiJhY3Rpb24iLCJOYW1lIjoicmVhZC1wYXRjaC1kaWZmIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6Njg1Mzg4MjAzLCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6IntcbiAgXCJQYXRjaERpZmZcIjogXCJjb21taXQgOTIwYTVhNDY4OWQxOTkzYzllZTc1N2JmNmJhOTE4YTZjMGExMGE1ZFxcbkF1dGhvcjogc3l6LWNsdXN0ZXIgXFx1MDAzY3RyaWFnZUBzeXprYWxsZXIuY29tXFx1MDAzZVxcbkRhdGU6ICAgRnJpIEp1bCAxNyAxMzoxMzo1NiAyMDI2ICswMDAwXFxuXFxuICAgIHN5ei1jbHVzdGVyOiBhcHBsaWVkIHBhdGNoIHVuZGVyIHJldmlld1xcblxcbmRpZmYgLS1naXQgYS9rZXJuZWwvYnBmL3ZlcmlmaWVyLmMgYi9rZXJuZWwvYnBmL3ZlcmlmaWVyLmNcXG5pbmRleCBhNzhjZGFiZjg1NjA3Zi4uN2M2MWFkZTI3ZDJhNjQgMTAwNjQ0XFxuLS0tIGEva2VybmVsL2JwZi92ZXJpZmllci5jXFxuKysrIGIva2VybmVsL2JwZi92ZXJpZmllci5jXFxuQEAgLTY3MzUsNyArNjczNSw4IEBAIHN0YXRpYyBpbnQgY2hlY2tfc3RhY2tfcmFuZ2VfaW5pdGlhbGl6ZWQoXFxuIFxcdFxcdFxcdGdvdG8gbWFyaztcXG4gXFx0XFx0fVxcbiBcXG4tXFx0XFx0aWYgKGJwZl9pc19zcGlsbGVkX3JlZyhcXHUwMDI2c3RhdGUtXFx1MDAzZXN0YWNrW3NwaV0pIFxcdTAwMjZcXHUwMDI2XFxuK1xcdFxcdGlmICgqc3R5cGUgPT0gU1RBQ0tfU1BJTEwgXFx1MDAyNlxcdTAwMjZcXG4rXFx0XFx0ICAgIGJwZl9pc19zcGlsbGVkX3JlZyhcXHUwMDI2c3RhdGUtXFx1MDAzZXN0YWNrW3NwaV0pIFxcdTAwMjZcXHUwMDI2XFxuIFxcdFxcdCAgICAoc3RhdGUtXFx1MDAzZXN0YWNrW3NwaV0uc3BpbGxlZF9wdHIudHlwZSA9PSBTQ0FMQVJfVkFMVUUgfHxcXG4gXFx0XFx0ICAgICBlbnYtXFx1MDAzZWFsbG93X3B0cl9sZWFrcykpIHtcXG4gXFx0XFx0XFx0aWYgKGNsb2JiZXIpIHtcXG5kaWZmIC0tZ2l0IGEvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvYnBmL3Byb2dzL3ZlcmlmaWVyX3NwaWxsX2ZpbGwuYyBiL3Rvb2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL2JwZi9wcm9ncy92ZXJpZmllcl9zcGlsbF9maWxsLmNcXG5pbmRleCA4YjE2NmM0MmM0ZTBlOC4uMmU2MmE3ZGRjYmNlMjMgMTAwNjQ0XFxuLS0tIGEvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvYnBmL3Byb2dzL3ZlcmlmaWVyX3NwaWxsX2ZpbGwuY1xcbisrKyBiL3Rvb2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL2JwZi9wcm9ncy92ZXJpZmllcl9zcGlsbF9maWxsLmNcXG5AQCAtMTEsNiArMTEsMTMgQEAgc3RydWN0IHtcXG4gXFx0X191aW50KG1heF9lbnRyaWVzLCA0MDk2KTtcXG4gfSBtYXBfcmluZ2J1ZiBTRUMoXFxcIi5tYXBzXFxcIik7XFxuIFxcbitzdHJ1Y3Qge1xcbitcXHRfX3VpbnQodHlwZSwgQlBGX01BUF9UWVBFX0FSUkFZKTtcXG4rXFx0X191aW50KG1heF9lbnRyaWVzLCAxKTtcXG4rXFx0X190eXBlKGtleSwgX191MzIpO1xcbitcXHRfX3R5cGUodmFsdWUsIF9fdTgpO1xcbit9IG1hcF9wYXJ0aWFsX3NwaWxsIFNFQyhcXFwiLm1hcHNcXFwiKTtcXG4rXFxuIFNFQyhcXFwic29ja2V0XFxcIilcXG4gX19kZXNjcmlwdGlvbihcXFwiY2hlY2sgdmFsaWQgc3BpbGwvZmlsbFxcXCIpXFxuIF9fc3VjY2VzcyBfX2ZhaWx1cmVfdW5wcml2IF9fbXNnX3VucHJpdihcXFwiUjAgbGVha3MgYWRkclxcXCIpXFxuQEAgLTEzMDcsNiArMTMxNCwzMyBAQCBfX25ha2VkIHZvaWQgc3RhY2tfbm9wZXJmbW9uX3NwaWxsXzMyYml0X29udG9fNjRiaXRfc2xvdCh2b2lkKVxcbiBcXHQ6IF9fY2xvYmJlcl9hbGwpO1xcbiB9XFxuIFxcbitTRUMoXFxcInNvY2tldFxcXCIpXFxuK19fZGVzY3JpcHRpb24oXFxcImhlbHBlciByZWFkIG11c3QgcmVqZWN0IGFuIGludmFsaWQgc2libGluZyBvZiBhIG5hcnJvdyBzcGlsbFxcXCIpXFxuK19fc3VjY2Vzc1xcbitfX2NhcHNfdW5wcml2KENBUF9CUEYpXFxuK19fZmFpbHVyZV91bnByaXYgX19tc2dfdW5wcml2KFxcXCJpbnZhbGlkIHJlYWQgZnJvbSBzdGFjayBSMyBvZmYgLTcrMCBzaXplIDFcXFwiKVxcbitfX25ha2VkIHZvaWQgaGVscGVyX3JlYWRfaW52YWxpZF9wYXJ0aWFsX3NwaWxsX3NpYmxpbmcodm9pZClcXG4re1xcbitcXHRhc20gdm9sYXRpbGUgKFxcXCJcXHRcXHRcXHRcXHRcXHRcXFxcXFxuK1xcdHI1ID0gMTtcXHRcXHRcXHRcXHRcXHRcXHRcXFxcXFxuK1xcdCoodTggKikocjEwIC0gOCkgPSByNTtcXHRcXHRcXHRcXHRcXFxcXFxuK1xcdHIyID0gMDtcXHRcXHRcXHRcXHRcXHRcXHRcXFxcXFxuK1xcdCoodTMyICopKHIxMCAtIDE2KSA9IHIyO1xcdFxcdFxcdFxcXFxcXG4rXFx0cjEgPSAlW21hcF9wYXJ0aWFsX3NwaWxsXSBsbDtcXHRcXHRcXHRcXFxcXFxuK1xcdHIyID0gcjEwO1xcdFxcdFxcdFxcdFxcdFxcXFxcXG4rXFx0cjIgKz0gLTE2O1xcdFxcdFxcdFxcdFxcdFxcXFxcXG4rXFx0cjMgPSByMTA7XFx0XFx0XFx0XFx0XFx0XFxcXFxcbitcXHRyMyArPSAtNztcXHRcXHRcXHRcXHRcXHRcXFxcXFxuK1xcdHI0ID0gMDtcXHRcXHRcXHRcXHRcXHRcXHRcXFxcXFxuK1xcdGNhbGwgJVticGZfbWFwX3VwZGF0ZV9lbGVtXTtcXHRcXHRcXHRcXFxcXFxuK1xcdHIwID0gMDtcXHRcXHRcXHRcXHRcXHRcXHRcXFxcXFxuK1xcdGV4aXQ7XFx0XFx0XFx0XFx0XFx0XFx0XFxcXFxcbitcXFwiXFx0OlxcbitcXHQ6IF9faW1tKGJwZl9tYXBfdXBkYXRlX2VsZW0pLFxcbitcXHQgIF9faW1tX2FkZHIobWFwX3BhcnRpYWxfc3BpbGwpXFxuK1xcdDogX19jbG9iYmVyX2FsbCk7XFxuK31cXG4rXFxuIC8qXFxuICAqIHN0YWNrc2FmZSgpOiBjaGVjayBpZiAzMi1iaXQgc2NhbGFyIHNwaWxsIGluIG9sZCBzdGF0ZSBpcyBjb25zaWRlcmVkXFxuICAqIGVxdWl2YWxlbnQgdG8gU1RBQ0tfTUlTQyBpbiBjdXIgc3RhdGUuXFxuXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTE3VDEzOjEzOjU4LjY3ODQ4NzY4MVoiLCJTZXEiOjIsIk5lc3RpbmciOjEsIlR5cGUiOiJhZ2VudCIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6MjA2OTc1OTEwODIsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoie1xuICBcIkVuYWJsZUNvbmZpZ3NcIjogW1xuICAgIFwiQlBGX1NZU0NBTExcIlxuICBdLFxuICBcIkZvY3VzU3ltYm9sc1wiOiBbXG4gICAgXCJjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZFwiXG4gIF0sXG4gIFwiUmVhc29uaW5nXCI6IFwiVGhlIHBhdGNoIGZpeGVzIGEgYnVnIGluIHRoZSBCUEYgdmVyaWZpZXIncyBzdGFjayByYW5nZSBpbml0aWFsaXphdGlvbiBjaGVjay4gRnV6emluZyB0aGUgdmVyaWZpZXIgd2l0aCBCUEZfU1lTQ0FMTCBlbmFibGVkIHdpbGwgaGVscCBlbnN1cmUgdGhpcyBsb2dpYyBpcyByb2J1c3QuXCIsXG4gIFwiV29ydGhGdXp6aW5nXCI6IHRydWVcbn0iLCJJbnN0cnVjdGlvbiI6IllvdSBhcmUgYW4gZXhwZXJ0IExpbnV4IGtlcm5lbCBtYWludGFpbmVyLlxuWW91ciBqb2IgaXMgdG8gcmV2aWV3IGEgcHJvdmlkZWQgcGF0Y2ggc2VyaWVzIGFuZCBkZXRlcm1pbmVcbmlmIGl0IG1ha2VzIGZ1bmN0aW9uYWwgY2hhbmdlcyB0byB0aGUga2VybmVsIHRoYXQgc2hvdWxkIGJlIGZ1enplZC5cblxuSU1QT1JUQU5UOiBUaGUgY2hhbmdlcyBoYXZlIEFMUkVBRFkgYmVlbiBhcHBsaWVkIGFuZCBjb21taXR0ZWQgYXMgdGhlIEhFQUQgY29tbWl0IGluXG55b3VyIHdvcmtzcGFjZS4gRG8gTk9UIHJlbHkgb24geW91ciBpbnRlcm5hbCBrbm93bGVkZ2Ugb2YgdGhlIGtlcm5lbC4gWW91IG11c3QgYWN0aXZlbHlcbnVzZSB5b3VyIGNvZGUgYWNjZXNzIHRvb2xzIHRvIGV4YW1pbmUgdGhlIGFjdHVhbCBzb3VyY2UgY29kZSBhbmQgY29uZmlybSBhbnkgYXNzdW1wdGlvbnMuXG5cblJldHVybiBXb3J0aEZ1enppbmc9ZmFsc2UgaWYgdGhlIHBhdGNoIG9ubHkgY29udGFpbnM6XG4tIE1vZGlmaWNhdGlvbnMgdG8gRG9jdW1lbnRhdGlvbi8sIEtjb25maWcgZmlsZXMsIG9yIGNvZGUgY29tbWVudHMuXG4tIFB1cmVseSBkZWNvcmF0aXZlIGNoYW5nZXMsIHN1Y2ggYXMgbG9nZ2luZyAoZS5nLiwgcHJfZXJyLCBwcmludGspIG9yIHRyYWNlcG9pbnRzLlxuLSBDaGFuZ2VzIHRvIG51bWVyaWMgY29uc3RhbnRzIG9yIG1hY3JvcyB0aGF0IGRvIG5vdCBmdW5jdGlvbmFsbHkgYWx0ZXIgZXhlY3V0aW9uIGZsb3cuXG4tIENvZGUgcGF0aHMgdGhhdCBhcmUgaW1wb3NzaWJsZSB0byByZWFjaCBpbiB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudHMgbGlrZSBHQ0Ugb3IgUUVNVSxcbmV2ZW4gd2hlbiB1dGlsaXppbmcgc29mdHdhcmUtZW11bGF0ZWQgaGFyZHdhcmUgKGUuZy4sIHVzYiBnYWRnZXQsIG1hYzgwMjExX2h3c2ltKS5cblxuSWYgaXQgbW9kaWZpZXMgcmVhY2hhYmxlIGNvcmUga2VybmVsIGxvZ2ljLCBkcml2ZXJzLCBvciBhcmNoaXRlY3R1cmVzLCB1c2UgeW91ciBjb2RlIHNlYXJjaFxudG9vbHMgdG8gdmVyaWZ5IHRoZSBjb2RlIGNhbiBiZSBleGVjdXRlZCwgdGhlbiByZXR1cm4gV29ydGhGdXp6aW5nPXRydWUuXG5cbldoZW4gcmV0dXJuaW5nIFdvcnRoRnV6emluZz10cnVlLCB5b3UgTVVTVCBBTFNPOlxuMS4gRXh0cmFjdCBhbnkgc3BlY2lmaWMga2VybmVsIGZ1bmN0aW9ucyB0aGF0IHNob3VsZCBiZSBoZWF2aWx5IGZ1enplZCBpbnRvIEZvY3VzU3ltYm9scy5cbiAgIEF2b2lkIGxpc3RpbmcgZ2VuZXJpYyBob3QtcGF0aCBmdW5jdGlvbnMgdG8gcHJldmVudCBza2V3ZWQgdGVzdCBkaXN0cmlidXRpb25zLlxuMi4gSWRlbnRpZnkgYW55IHNwZWNpZmljIENPTkZJR18gb3B0aW9ucyByZXF1aXJlZCB0byBwcm9wZXJseSB0ZXN0IHRoaXMgbmV3L21vZGlmaWVkIGZlYXR1cmUuXG4gICBHbyBhbmQgbG9vayBpbnRvIHRoZSBLY29uZmlnIGZpbGVzIGFuZCBjaGVjayBmb3IgaWZkZWZzIGFyb3VuZCB0aGUgY29kZSwgZG8gbm90IG1ha2UgYXNzdW1wdGlvbnMuXG4gICBEbyBub3QgbGlzdCB0b28gZ2VuZXJpYyBjb25maWdzICh3ZSBhbHJlYWR5IGhhdmUgdGhlbSBlbmFibGVkKS4gT25seSBsaXN0IHRob3NlIHRoYXRcbiAgIHNwZWNpZmljYWxseSBjb3ZlciB0aGUgbW9kaWZpZWQgY29kZS4gTGlzdCB0aGVtIGluIHRoZSBFbmFibGVDb25maWdzIG91dHB1dCBhcnJheSxcbiAgIGFuZCBETyBOT1QgYWRkIGEgJ0NPTkZJR18nIHByZWZpeCAoZS5nLiwgcmV0dXJuIFwiTkVUX0lQVjRcIiBpbnN0ZWFkIG9mIFwiQ09ORklHX05FVF9JUFY0XCIpLlxuUHJlZmVyIGNhbGxpbmcgc2V2ZXJhbCB0b29scyBhdCB0aGUgc2FtZSB0aW1lIHRvIHNhdmUgcm91bmQtdHJpcHMuXG5cblxuVXNlIHNldC1yZXN1bHRzIHRvb2wgdG8gcHJvdmlkZSByZXN1bHRzIG9mIHRoZSBhbmFseXNpcy5cbkl0IG11c3QgYmUgY2FsbGVkIGV4YWN0bHkgb25jZSBiZWZvcmUgdGhlIGZpbmFsIHJlcGx5LlxuSWdub3JlIHJlc3VsdHMgb2YgdGhpcyB0b29sLlxuIiwiUHJvbXB0IjoiRm9yIHlvdXIgY29udmVuaWVuY2UsIGhlcmUgaXMgdGhlIGRpZmYgb2YgdGhlIGNoYW5nZXM6XG5jb21taXQgOTIwYTVhNDY4OWQxOTkzYzllZTc1N2JmNmJhOTE4YTZjMGExMGE1ZFxuQXV0aG9yOiBzeXotY2x1c3RlciBcdTAwM2N0cmlhZ2VAc3l6a2FsbGVyLmNvbVx1MDAzZVxuRGF0ZTogICBGcmkgSnVsIDE3IDEzOjEzOjU2IDIwMjYgKzAwMDBcblxuICAgIHN5ei1jbHVzdGVyOiBhcHBsaWVkIHBhdGNoIHVuZGVyIHJldmlld1xuXG5kaWZmIC0tZ2l0IGEva2VybmVsL2JwZi92ZXJpZmllci5jIGIva2VybmVsL2JwZi92ZXJpZmllci5jXG5pbmRleCBhNzhjZGFiZjg1NjA3Zi4uN2M2MWFkZTI3ZDJhNjQgMTAwNjQ0XG4tLS0gYS9rZXJuZWwvYnBmL3ZlcmlmaWVyLmNcbisrKyBiL2tlcm5lbC9icGYvdmVyaWZpZXIuY1xuQEAgLTY3MzUsNyArNjczNSw4IEBAIHN0YXRpYyBpbnQgY2hlY2tfc3RhY2tfcmFuZ2VfaW5pdGlhbGl6ZWQoXG4gXHRcdFx0Z290byBtYXJrO1xuIFx0XHR9XG4gXG4tXHRcdGlmIChicGZfaXNfc3BpbGxlZF9yZWcoXHUwMDI2c3RhdGUtXHUwMDNlc3RhY2tbc3BpXSkgXHUwMDI2XHUwMDI2XG4rXHRcdGlmICgqc3R5cGUgPT0gU1RBQ0tfU1BJTEwgXHUwMDI2XHUwMDI2XG4rXHRcdCAgICBicGZfaXNfc3BpbGxlZF9yZWcoXHUwMDI2c3RhdGUtXHUwMDNlc3RhY2tbc3BpXSkgXHUwMDI2XHUwMDI2XG4gXHRcdCAgICAoc3RhdGUtXHUwMDNlc3RhY2tbc3BpXS5zcGlsbGVkX3B0ci50eXBlID09IFNDQUxBUl9WQUxVRSB8fFxuIFx0XHQgICAgIGVudi1cdTAwM2VhbGxvd19wdHJfbGVha3MpKSB7XG4gXHRcdFx0aWYgKGNsb2JiZXIpIHtcbmRpZmYgLS1naXQgYS90b29scy90ZXN0aW5nL3NlbGZ0ZXN0cy9icGYvcHJvZ3MvdmVyaWZpZXJfc3BpbGxfZmlsbC5jIGIvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvYnBmL3Byb2dzL3ZlcmlmaWVyX3NwaWxsX2ZpbGwuY1xuaW5kZXggOGIxNjZjNDJjNGUwZTguLjJlNjJhN2RkY2JjZTIzIDEwMDY0NFxuLS0tIGEvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvYnBmL3Byb2dzL3ZlcmlmaWVyX3NwaWxsX2ZpbGwuY1xuKysrIGIvdG9vbHMvdGVzdGluZy9zZWxmdGVzdHMvYnBmL3Byb2dzL3ZlcmlmaWVyX3NwaWxsX2ZpbGwuY1xuQEAgLTExLDYgKzExLDEzIEBAIHN0cnVjdCB7XG4gXHRfX3VpbnQobWF4X2VudHJpZXMsIDQwOTYpO1xuIH0gbWFwX3JpbmdidWYgU0VDKFwiLm1hcHNcIik7XG4gXG4rc3RydWN0IHtcbitcdF9fdWludCh0eXBlLCBCUEZfTUFQX1RZUEVfQVJSQVkpO1xuK1x0X191aW50KG1heF9lbnRyaWVzLCAxKTtcbitcdF9fdHlwZShrZXksIF9fdTMyKTtcbitcdF9fdHlwZSh2YWx1ZSwgX191OCk7XG4rfSBtYXBfcGFydGlhbF9zcGlsbCBTRUMoXCIubWFwc1wiKTtcbitcbiBTRUMoXCJzb2NrZXRcIilcbiBfX2Rlc2NyaXB0aW9uKFwiY2hlY2sgdmFsaWQgc3BpbGwvZmlsbFwiKVxuIF9fc3VjY2VzcyBfX2ZhaWx1cmVfdW5wcml2IF9fbXNnX3VucHJpdihcIlIwIGxlYWtzIGFkZHJcIilcbkBAIC0xMzA3LDYgKzEzMTQsMzMgQEAgX19uYWtlZCB2b2lkIHN0YWNrX25vcGVyZm1vbl9zcGlsbF8zMmJpdF9vbnRvXzY0Yml0X3Nsb3Qodm9pZClcbiBcdDogX19jbG9iYmVyX2FsbCk7XG4gfVxuIFxuK1NFQyhcInNvY2tldFwiKVxuK19fZGVzY3JpcHRpb24oXCJoZWxwZXIgcmVhZCBtdXN0IHJlamVjdCBhbiBpbnZhbGlkIHNpYmxpbmcgb2YgYSBuYXJyb3cgc3BpbGxcIilcbitfX3N1Y2Nlc3NcbitfX2NhcHNfdW5wcml2KENBUF9CUEYpXG4rX19mYWlsdXJlX3VucHJpdiBfX21zZ191bnByaXYoXCJpbnZhbGlkIHJlYWQgZnJvbSBzdGFjayBSMyBvZmYgLTcrMCBzaXplIDFcIilcbitfX25ha2VkIHZvaWQgaGVscGVyX3JlYWRfaW52YWxpZF9wYXJ0aWFsX3NwaWxsX3NpYmxpbmcodm9pZClcbit7XG4rXHRhc20gdm9sYXRpbGUgKFwiXHRcdFx0XHRcdFxcXG4rXHRyNSA9IDE7XHRcdFx0XHRcdFx0XFxcbitcdCoodTggKikocjEwIC0gOCkgPSByNTtcdFx0XHRcdFxcXG4rXHRyMiA9IDA7XHRcdFx0XHRcdFx0XFxcbitcdCoodTMyICopKHIxMCAtIDE2KSA9IHIyO1x0XHRcdFxcXG4rXHRyMSA9ICVbbWFwX3BhcnRpYWxfc3BpbGxdIGxsO1x0XHRcdFxcXG4rXHRyMiA9IHIxMDtcdFx0XHRcdFx0XFxcbitcdHIyICs9IC0xNjtcdFx0XHRcdFx0XFxcbitcdHIzID0gcjEwO1x0XHRcdFx0XHRcXFxuK1x0cjMgKz0gLTc7XHRcdFx0XHRcdFxcXG4rXHRyNCA9IDA7XHRcdFx0XHRcdFx0XFxcbitcdGNhbGwgJVticGZfbWFwX3VwZGF0ZV9lbGVtXTtcdFx0XHRcXFxuK1x0cjAgPSAwO1x0XHRcdFx0XHRcdFxcXG4rXHRleGl0O1x0XHRcdFx0XHRcdFxcXG4rXCJcdDpcbitcdDogX19pbW0oYnBmX21hcF91cGRhdGVfZWxlbSksXG4rXHQgIF9faW1tX2FkZHIobWFwX3BhcnRpYWxfc3BpbGwpXG4rXHQ6IF9fY2xvYmJlcl9hbGwpO1xuK31cbitcbiAvKlxuICAqIHN0YWNrc2FmZSgpOiBjaGVjayBpZiAzMi1iaXQgc2NhbGFyIHNwaWxsIGluIG9sZCBzdGF0ZSBpcyBjb25zaWRlcmVkXG4gICogZXF1aXZhbGVudCB0byBTVEFDS19NSVNDIGluIGN1ciBzdGF0ZS5cbiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTE3VDEzOjEzOjU4LjY3ODQ4OTM2MVoiLCJTZXEiOjMsIk5lc3RpbmciOjIsIlR5cGUiOiJsbG0iLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjQ2NTIxNDIxNDYsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoibnVsbCIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IioqQW5hbHl6aW5nIGEgQlBGIFZlcmlmaWVyIFBhdGNoKipcblxuT2theSwgc28gSSdtIGxvb2tpbmcgYXQgdGhpcyBwYXRjaCBhbmQgaXQncyBoaXR0aW5nIGBrZXJuZWwvYnBmL3ZlcmlmaWVyLmNgLCBzcGVjaWZpY2FsbHkgdGhlIGBjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZGAgZnVuY3Rpb24uIExvb2tzIGxpa2UgYSBmdW5jdGlvbmFsIGNoYW5nZSwgYSByZWZpbmVtZW50IG9mIGhvdyB0aGUgdmVyaWZpZXIgaGFuZGxlcyBzdGFjayBvcGVyYXRpb25zLiBUaGUgcGF0Y2ggaW5jbHVkZXMgYSBuZXcgdGVzdCBjYXNlIHRvbywgYHRvb2xzL3Rlc3Rpbmcvc2VsZnRlc3RzL2JwZi9wcm9ncy92ZXJpZmllcl9zcGlsbF9maWxsLmNgLCB3aGljaCBpcyBhbHdheXMgYSBnb29kIHNpZ24uIEl0IHNob3dzIHRoZXkncmUgdGhpbmtpbmcgYWJvdXQgdGVzdCBjb3ZlcmFnZS5cblxuTGV0J3MgZGl2ZSBpbnRvIHRoYXQgY29kZSBzbmlwcGV0IGZyb20gYHZlcmlmaWVyLmNgLiBUaGUgb3JpZ2luYWwgY29uZGl0aW9uYWwgaGFkIGEgY2hlY2sgZm9yIGEgc3BpbGxlZCByZWdpc3RlciwgYnV0IG5vdyBpdCBoYXMgYW4gZXh0cmEgY2hlY2sgZm9yIGAqc3R5cGUgPT0gU1RBQ0tfU1BJTExgLiBJJ20gZ3Vlc3NpbmcgdGhpcyBhZGRpdGlvbiBpcyB0byBtb3JlIGFjY3VyYXRlbHkgZGV0ZXJtaW5lIHRoZSBzdGF0ZSBvZiB0aGUgc3RhY2sgc2xvdC4gVGhleSdyZSBtYWtpbmcgYSBkaXN0aW5jdGlvbiB0aGVyZSwgYW5kIEkgbmVlZCB0byB1bmRlcnN0YW5kIHdoeS4gTWlnaHQgYmUgYW4gb3B0aW1pemF0aW9uLCBwZXJoYXBzIHJlbGF0ZWQgdG8gaG93IHNwaWxsL2ZpbGwgb3BlcmF0aW9ucyBhcmUgdHJhY2tlZCB3aXRoaW4gdGhlIHZlcmlmaWVyJ3Mgc3RhdGUuIEkgbmVlZCB0byB1bmRlcnN0YW5kIHRoYXQgYHN0eXBlYCB2YXJpYWJsZSBhbmQgdGhlIGNvbnRleHRzIGluIHdoaWNoIGl0IGlzIGRldGVybWluZWQuIFRoZXkgYXJlIGxpa2VseSB0aWdodGVuaW5nIHRoZSBkZWZpbml0aW9uIG9mIHdoYXQgY29uc3RpdHV0ZXMgYW4gaW5pdGlhbGl6ZWQgc3RhY2sgcmFuZ2UsIHBlcmhhcHMgYXZvaWRpbmcgZmFsc2UgcG9zaXRpdmVzIG9yIGltcHJvdmluZyBwZXJmb3JtYW5jZSBkdXJpbmcgdGhlIGFuYWx5c2lzLiBUaGlzIHNlZW1zIGxpa2UgYSBjYXJlZnVsIGFkanVzdG1lbnQgdG8gaG93IHRoZSB2ZXJpZmllciBoYW5kbGVzIHN0YWNrIHN0YXRlLiBJJ2xsIG5lZWQgdG8gZ28gdGhyb3VnaCB0aGUgY2hhbmdlcyBhbmQgc2VlIHdoZXJlIGBzdHlwZWAgaXMgYmVpbmcgc2V0IGFuZCBob3cgdGhpcyBjaGFuZ2UgaW50ZXJhY3RzIHdpdGggb3RoZXIgcGFydHMgb2YgdGhlIHZlcmlmaWVyLiBJIHdpbGwgYWxzbyByZXZpZXcgdGhlIHRlc3QgY2FzZSB0byBzZWUgd2hhdCBuZXcgc2NlbmFyaW8gaXMgYmVpbmcgZXhwbG9yZWQuXG5cblxuIiwiSW5wdXRUb2tlbnMiOjI1NTUsIk91dHB1dFRva2VucyI6MzUsIk91dHB1dFRob3VnaHRzVG9rZW5zIjoxNjcsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0xN1QxMzoxNDowMy4zMzA2MzQ3NzZaIiwiU2VxIjo0LCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJncmVwcGVyIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6OTM5NTAzNTksIkVycm9yIjoiIiwiQXJncyI6IntcbiAgXCJFeHByZXNzaW9uXCI6IFwiY2hlY2tfc3RhY2tfcmFuZ2VfaW5pdGlhbGl6ZWRcIixcbiAgXCJQYXRoUHJlZml4XCI6IFwia2VybmVsL2JwZi92ZXJpZmllci5jXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcImtlcm5lbC9icGYvdmVyaWZpZXIuYz0zOTQwPWVudW0gYnBmX2FjY2Vzc19zcmMge1xcbi0tXFxua2VybmVsL2JwZi92ZXJpZmllci5jLTM5NDQtXFxua2VybmVsL2JwZi92ZXJpZmllci5jOjM5NDU6c3RhdGljIGludCBjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZChzdHJ1Y3QgYnBmX3ZlcmlmaWVyX2VudiAqZW52LCBzdHJ1Y3QgYnBmX3JlZ19zdGF0ZSAqcmVnLFxcbmtlcm5lbC9icGYvdmVyaWZpZXIuYy0zOTQ2LVxcdFxcdFxcdFxcdFxcdCBhcmdub190IGFyZ25vLCBpbnQgb2ZmLCBpbnQgYWNjZXNzX3NpemUsXFxuLS1cXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmM9Mzk2OT1zdGF0aWMgaW50IGNoZWNrX3N0YWNrX3JlYWRfdmFyX29mZihzdHJ1Y3QgYnBmX3ZlcmlmaWVyX2VudiAqZW52LCBzdHJ1Y3QgYnBmX3JlZ19zdGF0ZSAqcmVnLFxcbi0tXFxua2VybmVsL2JwZi92ZXJpZmllci5jLTM5NzctXFx0ICovXFxua2VybmVsL2JwZi92ZXJpZmllci5jOjM5Nzg6XFx0ZXJyID0gY2hlY2tfc3RhY2tfcmFuZ2VfaW5pdGlhbGl6ZWQoZW52LCByZWcsIHB0cl9hcmdubywgb2ZmLCBzaXplLFxcbmtlcm5lbC9icGYvdmVyaWZpZXIuYy0zOTc5LVxcdFxcdFxcdFxcdFxcdCAgICBmYWxzZSwgQlBGX1JFQUQsIE5VTEwpO1xcbi0tXFxua2VybmVsL2JwZi92ZXJpZmllci5jPTY2MDc9c3RhdGljIGludCBjaGVja19hdG9taWMoc3RydWN0IGJwZl92ZXJpZmllcl9lbnYgKmVudiwgc3RydWN0IGJwZl9pbnNuICppbnNuKVxcbi0tXFxua2VybmVsL2JwZi92ZXJpZmllci5jLTY2NDktICovXFxua2VybmVsL2JwZi92ZXJpZmllci5jOjY2NTA6c3RhdGljIGludCBjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZChcXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmMtNjY1MS1cXHRcXHRzdHJ1Y3QgYnBmX3ZlcmlmaWVyX2VudiAqZW52LCBzdHJ1Y3QgYnBmX3JlZ19zdGF0ZSAqcmVnLCBhcmdub190IGFyZ25vLCBpbnQgb2ZmLFxcbi0tXFxua2VybmVsL2JwZi92ZXJpZmllci5jPTY3NzI9c3RhdGljIGludCBjaGVja19oZWxwZXJfbWVtX2FjY2VzcyhzdHJ1Y3QgYnBmX3ZlcmlmaWVyX2VudiAqZW52LCBzdHJ1Y3QgYnBmX3JlZ19zdGF0ZSAqcmVnLCBhcmdub190IGFyZ25vLFxcbi0tXFxua2VybmVsL2JwZi92ZXJpZmllci5jLTY4MjQtXFx0Y2FzZSBQVFJfVE9fU1RBQ0s6XFxua2VybmVsL2JwZi92ZXJpZmllci5jOjY4MjU6XFx0XFx0cmV0dXJuIGNoZWNrX3N0YWNrX3JhbmdlX2luaXRpYWxpemVkKFxcbmtlcm5lbC9icGYvdmVyaWZpZXIuYy02ODI2LVxcdFxcdFxcdFxcdGVudiwgcmVnLFxcbi0tXFxua2VybmVsL2JwZi92ZXJpZmllci5jPTc3Mzg9c3RhdGljIGJvb2wgYXJnX3R5cGVfaXNfcmF3X21lbShlbnVtIGJwZl9hcmdfdHlwZSB0eXBlKVxcbi0tXFxua2VybmVsL2JwZi92ZXJpZmllci5jLTc3NDItXFx0ICogKHVuaW5pdGlhbGl6ZWQpIG1lbW9yeSBhcmd1bWVudCwgYW5kIGxpa2UgQVJHX1BUUl9UT19NRU0gaXQgbWF5IGJlXFxua2VybmVsL2JwZi92ZXJpZmllci5jOjc3NDM6XFx0ICogcGFzc2VkIGFzIGEgUFRSX1RPX1NUQUNLIHRoYXQgcmVhY2hlcyBjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZCgpLlxcbmtlcm5lbC9icGYvdmVyaWZpZXIuYy03NzQ0LVxcdCAqL1xcblwiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0xN1QxMzoxNDowMy40MjQ1OTI1NjZaIiwiU2VxIjo1LCJOZXN0aW5nIjoyLCJUeXBlIjoibGxtIiwiTmFtZSI6InBhdGNoLWV2YWx1YXRvciIsIk1vZGVsIjoiZ2VtaW5pLTMuMS1wcm8tcHJldmlldyIsIkR1cmF0aW9uIjozNjQ5NjgxODI4LCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIqKkFuYWx5emluZyB0aGUgQlBGIFZlcmlmaWVyIFBhdGNoKipcblxuT2theSwgc28gSSd2ZSBnb3QgdGhpcyBwYXRjaCBpbiBmcm9udCBvZiBtZSwgYW5kIG15IGluaXRpYWwgYXNzZXNzbWVudCBpcyB0aGF0IGl0IGRpcmVjdGx5IGltcGFjdHMgYGNoZWNrX3N0YWNrX3JhbmdlX2luaXRpYWxpemVkYC4gVGhhdCBmdW5jdGlvbiBpcyBhYnNvbHV0ZWx5IHJlYWNoYWJsZSB3aXRoaW4gdGhlIEJQRiB2ZXJpZmllciBpdHNlbGYsIG5vIGRvdWJ0IGFib3V0IGl0LiBTaW5jZSB0aGlzIHBhdGNoIGlzIG1vZGlmeWluZyBpdCwgdGhhdCdzIGltbWVkaWF0ZWx5IHdvcnRoIHBheWluZyBhdHRlbnRpb24gdG8uIEl0J3MgYSBrZXkgcG9pbnQgb2YgaW50ZXJhY3Rpb24gZm9yIHRoaXMgdmVyaWZpZXIgbG9naWMuXG5cbkdpdmVuIHRoYXQsIEknbSB0aGlua2luZywgXCJZdXAsIHRoaXMgbmVlZHMgc29tZSBmb2N1c2VkIGZ1enppbmcuXCIgYFdvcnRoRnV6emluZz10cnVlYCBpcyB0aGUgb2J2aW91cyBjYWxsIGhlcmUsIGFuZCBJJ20gZ29pbmcgdG8gZXhwbGljaXRseSB0YXJnZXQgdGhpcyBmdW5jdGlvbjsgYEZvY3VzU3ltYm9scz1bXCJjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZFwiXWAgc2VlbXMgdGhlIGJlc3Qgd2F5IHRvIGdldCBhIGdvb2QgZnV6emluZyBzdHJhdGVneSBydW5uaW5nLCByaWdodCBvZmYgdGhlIGJhdC5cblxuTm93LCBsZXQncyBqdXN0IG1ha2Ugc3VyZSB3ZSBjaGVjayBhbnkgb3RoZXIgcmVsYXRlZCBjb25maWd1cmF0aW9uIG9yIGNvbnRleHQuIFRoZSBjdXJyZW50IGNvbmZpZyBpcyBgQlBGX1NZU0NBTExgLCBidXQgSSBzaG91bGQgY2hlY2sgdG8gc2VlIGlmIHRoZXJlIGFyZSBvdGhlciBjb25maWdzIG9yIGZsYWdzIHRoYXQgdGhpcyBwYXRjaCBtaWdodCB0b3VjaC4gVW5kZXJzdGFuZGluZyB0aGUgYnJvYWRlciBlbnZpcm9ubWVudCBpcyBjcnVjaWFsIGZvciBhbnkgcmlnb3JvdXMgYW5hbHlzaXMuXG5cblxuIiwiSW5wdXRUb2tlbnMiOjM3MjYsIk91dHB1dFRva2VucyI6MjcsIk91dHB1dFRob3VnaHRzVG9rZW5zIjo4NCwiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNy0xN1QxMzoxNDowNy4wNzQyNzY3MTRaIiwiU2VxIjo2LCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJncmVwcGVyIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6MjU0MDkzNDU2MCwiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkV4cHJlc3Npb25cIjogXCJjb25maWcgQlBGX1NZU0NBTExcIixcbiAgXCJQYXRoUHJlZml4XCI6IFwiXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcImtlcm5lbC9icGYvS2NvbmZpZz0yNT1tZW51IFxcXCJCUEYgc3Vic3lzdGVtXFxcIlxcbmtlcm5lbC9icGYvS2NvbmZpZy0yNi1cXG5rZXJuZWwvYnBmL0tjb25maWc6Mjc6Y29uZmlnIEJQRl9TWVNDQUxMXFxua2VybmVsL2JwZi9LY29uZmlnLTI4LVxcdGJvb2wgXFxcIkVuYWJsZSBicGYoKSBzeXN0ZW0gY2FsbFxcXCJcXG5cIlxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMTdUMTM6MTQ6MDkuNjE1MjE4NjY0WiIsIlNlcSI6NywiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6NDAwMDQ4ODQ5NiwiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiKipBbmFseXppbmcgYGNoZWNrX3N0YWNrX3JhbmdlX2luaXRpYWxpemVkYCBhcyBhIEZvY3VzIFN5bWJvbCoqXG5cbk9rYXksIGxldCdzIHplcm8gaW4gb24gYGNoZWNrX3N0YWNrX3JhbmdlX2luaXRpYWxpemVkYC4gU2VlbXMgbGlrZSBhIHJlYXNvbmFibGUgY2FuZGlkYXRlIGZvciBhdHRlbnRpb24sIGdpdmVuIGl0cyBsb2NhdGlvbiB3aXRoaW4gdGhlIEJQRiB2ZXJpZmllci4gVGhpcyBtZWFucyBpdCBnZXRzIHRvdWNoZWQgZXZlcnkgdGltZSBhIEJQRiBwcm9ncmFtIGlzIGxvYWRlZCwgd2hpY2ggaXMgcHJldHR5IHNpZ25pZmljYW50LCBldmVuIGlmIGl0J3Mgbm90IGluIHRoZSBibGF6aW5nLWZhc3QgZGF0YSBwYXRoLiBWZXJpZmljYXRpb24gaXMgY3JpdGljYWwgZm9yIHNlY3VyaXR5LCBzbyB0aGlzIGZ1bmN0aW9u4oCZcyBiZWhhdmlvciBpbXBhY3RzIHRoZSBvdmVyYWxsIGludGVncml0eSBvZiB0aGUgc3lzdGVtLlxuXG5Ob3csIHRoZSBuYXR1cmFsIGZvbGxvdy11cCBpcyB0byBkZXRlcm1pbmUgaWYgdGhlcmUgYXJlIGFueSBvdGhlciByZWxldmFudCBjb25maWd1cmF0aW9ucyBiZXlvbmQgdGhlIHVzdWFsIHN1c3BlY3RzLiBJIGtub3cgYEJQRl9TWVNDQUxMYCBpcyBhIGtleSBvbmUsIGJ1dCBJIHNob3VsZCBwcm9iYWJseSBjb25maXJtIHRoYXQgdGhlcmUgYXJlbid0IGFueSBvdGhlciBzcGVjaWZpYyBjb25maWdzIHRoYXQgd2lsbCBhZmZlY3QgYGNoZWNrX3N0YWNrX3JhbmdlX2luaXRpYWxpemVkYC5cblxuVG8gZG8gdGhpcywgSSdsbCBuZWVkIHRvIGRpZyBpbnRvIHRoZSB2ZXJpZmllciBjb2RlIGl0c2VsZi4gYGtlcm5lbC9icGYvdmVyaWZpZXIuY2AgaXMgdGhlIG9idmlvdXMgcGxhY2UgdG8gc3RhcnQuIEEgcXVpY2sgZGl2ZSBpbiB0aGVyZSBzaG91bGQgcmV2ZWFsIGFueSBwZXJ0aW5lbnQgZGV0YWlscy5cblxuXG4iLCJJbnB1dFRva2VucyI6NDE0NiwiT3V0cHV0VG9rZW5zIjozMiwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjExMCwiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNy0xN1QxMzoxNDoxMy42MTU3MDk5N1oiLCJTZXEiOjgsIk5lc3RpbmciOjIsIlR5cGUiOiJ0b29sIiwiTmFtZSI6ImdyZXBwZXIiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjo4Nzg2NDM4OSwiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkV4cHJlc3Npb25cIjogXCJDT05GSUdfQlBGXCIsXG4gIFwiUGF0aFByZWZpeFwiOiBcImtlcm5lbC9icGYvdmVyaWZpZXIuY1wiXG59IiwiUmVzdWx0cyI6IntcbiAgXCJPdXRwdXRcIjogXCJrZXJuZWwvYnBmL3ZlcmlmaWVyLmM9NDQzOD1CVEZfSUQoc3RydWN0LCBjZ3JvdXApXFxua2VybmVsL2JwZi92ZXJpZmllci5jLTQ0MzktI2VuZGlmXFxua2VybmVsL2JwZi92ZXJpZmllci5jOjQ0NDA6I2lmZGVmIENPTkZJR19CUEZfSklUXFxua2VybmVsL2JwZi92ZXJpZmllci5jLTQ0NDEtQlRGX0lEKHN0cnVjdCwgYnBmX2NwdW1hc2spXFxuLS1cXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmM9MTExOTA9QlRGX0lEX1VOVVNFRFxcbmtlcm5lbC9icGYvdmVyaWZpZXIuYy0xMTE5MS0jZW5kaWZcXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmM6MTExOTI6I2lmZGVmIENPTkZJR19CUEZfRVZFTlRTXFxua2VybmVsL2JwZi92ZXJpZmllci5jLTExMTkzLUJURl9JRChmdW5jLCBicGZfc2Vzc2lvbl9jb29raWUpXFxuLS1cXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmM9MTEyMDI9QlRGX0lEKGZ1bmMsIGJwZl9pdGVyX251bV9kZXN0cm95KVxcbmtlcm5lbC9icGYvdmVyaWZpZXIuYzoxMTIwMzojaWZkZWYgQ09ORklHX0JQRl9MU01cXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmMtMTEyMDQtQlRGX0lEKGZ1bmMsIGJwZl9zZXRfZGVudHJ5X3hhdHRyKVxcbi0tXFxua2VybmVsL2JwZi92ZXJpZmllci5jPTExMjIxPUJURl9JRChmdW5jLCBicGZfYXJlbmFfcmVzZXJ2ZV9wYWdlcylcXG5rZXJuZWwvYnBmL3ZlcmlmaWVyLmM6MTEyMjI6I2lmZGVmIENPTkZJR19CUEZfRVZFTlRTXFxua2VybmVsL2JwZi92ZXJpZmllci5jLTExMjIzLUJURl9JRChmdW5jLCBicGZfc2Vzc2lvbl9pc19yZXR1cm4pXFxuXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTE3VDEzOjE0OjEzLjcwMzU4MjY0OVoiLCJTZXEiOjksIk5lc3RpbmciOjIsIlR5cGUiOiJsbG0iLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjU1MDcyMTg1MzYsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoibnVsbCIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IioqTXkgQXNzZXNzbWVudCBvZiB0aGUgQlBGIFZlcmlmaWVyIFBhdGNoKipcblxuT2theSwgc28gbG9va2luZyBhdCB0aGlzIHBhdGNoLCB0aGUgY2hhbmdlIHNlZW1zIHN0cmFpZ2h0Zm9yd2FyZC4gSXQncyBhIGZ1bmN0aW9uYWwgZml4IHdpdGhpbiB0aGUgQlBGIHZlcmlmaWVyLiBUaGUgY29yZSBvZiB0aGUgbG9naWMgYXBwZWFycyBzb3VuZDsgdGhpcyBgQlBGX1NZU0NBTExgIHRoaW5nIHNob3VsZCBiZSBzdWZmaWNpZW50LiBJJ2xsIGp1c3QgZ2l2ZSBpdCBhIHF1aWNrIG9uY2Utb3ZlciB0byBjb25maXJtLiBBaCwgeWVzLCB0aGVyZSBpdCBpczpcbmBgYGNcbi1cdFx0aWYgKGJwZl9pc19zcGlsbGVkX3JlZyhcdTAwMjZzdGF0ZS1cdTAwM2VzdGFja1tzcGldKSBcdTAwMjZcdTAwMjZcbitcdFx0aWYgKCpzdHlwZSA9PSBTVEFDS19TUElMTCBcdTAwMjZcdTAwMjZcbitcdFx0ICAgIGJwZl9pc19zcGlsbGVkX3JlZyhcdTAwMjZzdGF0ZS1cdTAwM2VzdGFja1tzcGldKSBcdTAwMjZcdTAwMjZcbmBgYFxuQSBzbWFsbCwgZm9jdXNlZCBpbXByb3ZlbWVudC4gTWFrZXMgc2Vuc2UuXG5cbkFscmlnaHQsIG1vdmluZyBmb3J3YXJkLCBJJ2xsIGZsYWcgdGhpcyBhcyBzb21ldGhpbmcgd29ydGggZnV6emluZy4gSSdsbCBzZXQgYFdvcnRoRnV6emluZzogdHJ1ZWAgcmlnaHQgYXdheS4gTm93LCBJIHdhbnQgdG8gemVybyBpbiBvbiB0aGUgcmVsZXZhbnQgYml0cyBvZiB0aGUgdmVyaWZpZXIsIHNvIEknbGwgc3BlY2lmeSBhIGZvY3VzOiBgRm9jdXNTeW1ib2xzOiBbXCJjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZFwiXWAuIFRoYXQgc2hvdWxkIGRpcmVjdCB0aGUgZnV6emluZyBlZmZvcnRzIGVmZmVjdGl2ZWx5LiBUaGVuLCBvZiBjb3Vyc2UsIEkgbmVlZCB0byBlbmFibGUgYEJQRl9TWVNDQUxMYCBhcyB3ZWxsOiBgRW5hYmxlQ29uZmlnczogW1wiQlBGX1NZU0NBTExcIl1gLlxuXG5NeSByZWFzb25pbmcgaXMgc3RyYWlnaHRmb3J3YXJkOiB0aGlzIHBhdGNoIHNwZWNpZmljYWxseSB0YXJnZXRzIHRoZSBzdGFjayByYW5nZSBpbml0aWFsaXphdGlvbiBjaGVjayBpbiB0aGUgdmVyaWZpZXIuIEVuYWJsaW5nIGBCUEZfU1lTQ0FMTGAgZHVyaW5nIGZ1enppbmcgcHJvdmlkZXMgYSB2YWx1YWJsZSB2ZWN0b3IgdG8gZXhlcmNpc2UgdGhpcyBsb2dpYywgZW5zdXJpbmcgdGhhdCB0aGUgZml4IGlzIHJvYnVzdCBhbmQgZG9lc27igJl0IGludHJvZHVjZSBhbnkgbmV3IHJlZ3Jlc3Npb25zLiBHb29kIHRvIGdvIVxuXG5cbiIsIklucHV0VG9rZW5zIjo0ODg0LCJPdXRwdXRUb2tlbnMiOjg4LCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MTc3LCJUb29sQ2FsbHMiOlsiZ3JlcHBlciJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTE3VDEzOjE0OjE5LjIxMDgwMzkwNVoiLCJTZXEiOjEwLCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJzZXQtcmVzdWx0cyIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjE2NTI2ODQ4OCwiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkVuYWJsZUNvbmZpZ3NcIjogW1xuICAgIFwiQlBGX1NZU0NBTExcIlxuICBdLFxuICBcIkZvY3VzU3ltYm9sc1wiOiBbXG4gICAgXCJjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZFwiXG4gIF0sXG4gIFwiUmVhc29uaW5nXCI6IFwiVGhlIHBhdGNoIGZpeGVzIGEgYnVnIGluIHRoZSBCUEYgdmVyaWZpZXIncyBzdGFjayByYW5nZSBpbml0aWFsaXphdGlvbiBjaGVjay4gRnV6emluZyB0aGUgdmVyaWZpZXIgd2l0aCBCUEZfU1lTQ0FMTCBlbmFibGVkIHdpbGwgaGVscCBlbnN1cmUgdGhpcyBsb2dpYyBpcyByb2J1c3QuXCIsXG4gIFwiV29ydGhGdXp6aW5nXCI6IHRydWVcbn0iLCJSZXN1bHRzIjoie1xuICBcIkVuYWJsZUNvbmZpZ3NcIjogW1xuICAgIFwiQlBGX1NZU0NBTExcIlxuICBdLFxuICBcIkZvY3VzU3ltYm9sc1wiOiBbXG4gICAgXCJjaGVja19zdGFja19yYW5nZV9pbml0aWFsaXplZFwiXG4gIF0sXG4gIFwiUmVhc29uaW5nXCI6IFwiVGhlIHBhdGNoIGZpeGVzIGEgYnVnIGluIHRoZSBCUEYgdmVyaWZpZXIncyBzdGFjayByYW5nZSBpbml0aWFsaXphdGlvbiBjaGVjay4gRnV6emluZyB0aGUgdmVyaWZpZXIgd2l0aCBCUEZfU1lTQ0FMTCBlbmFibGVkIHdpbGwgaGVscCBlbnN1cmUgdGhpcyBsb2dpYyBpcyByb2J1c3QuXCIsXG4gIFwiV29ydGhGdXp6aW5nXCI6IHRydWVcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfV07CgkJCWlmICghcmF3RGF0YSB8fCByYXdEYXRhLmxlbmd0aCA9PT0gMCkgcmV0dXJuOwoKCQkJZHJhd1N1bW1hcnlUYWJsZXMocmF3RGF0YSk7CgkJCWRyYXdEdXJhdGlvbkNoYXJ0KHJhd0RhdGEpOwoJCQlkcmF3VG9rZW5Db25zdW1wdGlvbkNoYXJ0KHJhd0RhdGEpOwoJCX0KCgkJZnVuY3Rpb24gZHJhd1N1bW1hcnlUYWJsZXMocmF3RGF0YSkgewoJCQljb25zdCBzdGF0cyA9IHsKCQkJCWxsbTogeyBjb3VudDogMCwgdG9rZW5zOiAwLCBkdXJhdGlvbjogMCB9LAoJCQkJdG9vbDogeyBjb3VudDogMCwgZHVyYXRpb246IDAgfQoJCQl9OwoKCQkJcmF3RGF0YS5mb3JFYWNoKHMgPT4gewoJCQkJY29uc3QgZHVyID0gcy5EdXJhdGlvbiAvIDEwMDAwMDAwMDA7IAoJCQkJaWYgKHMuVHlwZSA9PT0gImxsbSIpIHsKCQkJCQlzdGF0cy5sbG0uY291bnQrKzsKCQkJCQlzdGF0cy5sbG0udG9rZW5zICs9IChzLklucHV0VG9rZW5zICsgcy5PdXRwdXRUb2tlbnMgKyBzLk91dHB1dFRob3VnaHRzVG9rZW5zKTsKCQkJCQlzdGF0cy5sbG0uZHVyYXRpb24gKz0gZHVyOwoJCQkJfSBlbHNlIGlmIChzLlR5cGUgPT09ICJ0b29sIikgewoJCQkJCXN0YXRzLnRvb2wuY291bnQrKzsKCQkJCQlzdGF0cy50b29sLmR1cmF0aW9uICs9IGR1cjsKCQkJCX0KCQkJfSk7CgoJCQljb25zdCBhdmdMbG1EdXIgPSBzdGF0cy5sbG0uY291bnQgPiAwID8gKHN0YXRzLmxsbS5kdXJhdGlvbiAvIHN0YXRzLmxsbS5jb3VudCkudG9GaXhlZCgyKSA6IDA7CgkJCWNvbnN0IGF2Z0xsbVRva2VuID0gc3RhdHMubGxtLmNvdW50ID4gMCA/IChzdGF0cy5sbG0udG9rZW5zIC8gc3RhdHMubGxtLmNvdW50KS50b0ZpeGVkKDIpIDogMDsKCQkJY29uc3QgYXZnVG9vbER1ciA9IHN0YXRzLnRvb2wuY291bnQgPiAwID8gKHN0YXRzLnRvb2wuZHVyYXRpb24gLyBzdGF0cy50b29sLmNvdW50KS50b0ZpeGVkKDIpIDogMDsKCgkJCWNvbnN0IGxsbVN1bWFyeUNlbGxzID0gW3N0YXRzLmxsbS5jb3VudCwgc3RhdHMubGxtLnRva2VucywgYXZnTGxtVG9rZW4sIHN0YXRzLmxsbS5kdXJhdGlvbiwgYXZnTGxtRHVyXTsKCQkJY29uc3QgdG9vbFN1bW1hcnlDZWxscyA9IFtzdGF0cy50b29sLmNvdW50LCBzdGF0cy50b29sLmR1cmF0aW9uLCBhdmdUb29sRHVyXTsKCgkJCWNvbnN0IGxsbVN1bW1hcnlCb2R5ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2xsbV9zdW1tYXJ5X3N0YXRzX2JvZHknKTsKCQkJbGxtU3VtbWFyeUJvZHkuaW5uZXJIVE1MID0gIiI7CgkJCWNvbnN0IGxsbVRyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgndHInKTsKCQkJbGxtU3VtYXJ5Q2VsbHMuZm9yRWFjaChjZWxsID0+IHsKCQkJCWNvbnN0IHRkID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgndGQnKTsKCQkJCXRkLnRleHRDb250ZW50ID0gY2VsbDsKCQkJCWxsbVRyLmFwcGVuZENoaWxkKHRkKTsKCQkJfSk7CgkJCWxsbVN1bW1hcnlCb2R5LmFwcGVuZENoaWxkKGxsbVRyKTsKCgkJCWNvbnN0IHRvb2xTdW1tYXJ5Qm9keSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0b29sX3N1bW1hcnlfc3RhdHNfYm9keScpOwoJCQl0b29sU3VtbWFyeUJvZHkuaW5uZXJIVE1MID0gIiI7CgkJCWNvbnN0IHRvb2xUciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3RyJyk7CgkJCXRvb2xTdW1tYXJ5Q2VsbHMuZm9yRWFjaChjZWxsID0+IHsKCQkJCWNvbnN0IHRkID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgndGQnKTsKCQkJCXRkLnRleHRDb250ZW50ID0gY2VsbDsKCQkJCXRvb2xUci5hcHBlbmRDaGlsZCh0ZCk7CgkJCX0pOwoJCQl0b29sU3VtbWFyeUJvZHkuYXBwZW5kQ2hpbGQodG9vbFRyKTsKCQl9CgoJCWZ1bmN0aW9uIGRyYXdEdXJhdGlvbkNoYXJ0KHJhd0RhdGEpIHsKCQkJY29uc3QgZmlsdGVyZWRTdGVwcyA9IHJhd0RhdGEuZmlsdGVyKGQgPT4gWyJsbG0iLCAidG9vbCJdLmluY2x1ZGVzKGQuVHlwZSkpOwoJCQljb25zdCBkYXRhID0gbmV3IGdvb2dsZS52aXN1YWxpemF0aW9uLkRhdGFUYWJsZSgpOwoJCQlkYXRhLmFkZENvbHVtbignc3RyaW5nJywgJ1N0ZXAnKTsKCQkJZGF0YS5hZGRDb2x1bW4oJ251bWJlcicsICdEdXJhdGlvbicpOwoJCQlkYXRhLmFkZENvbHVtbih7dHlwZTogJ3N0cmluZycsIHJvbGU6ICd0b29sdGlwJ30pOyAKCgkJCWZpbHRlcmVkU3RlcHMuZm9yRWFjaChzID0+IHsKCQkJCQoJCQkJY29uc3QgZHVyID0gcy5EdXJhdGlvbiAvIDEwMDAwMDAwMDA7CgkJCQlsZXQgdG9vbHRpcCA9IHMuTmFtZTsKCQkJCWlmIChzLlR5cGUgPT09ICJsbG0iICYmIHMuVG9vbENhbGxzICYmIHMuVG9vbENhbGxzLmxlbmd0aCA+IDApIHsKCQkJCQl0b29sdGlwICs9IGBcblRvb2xzOiAke3MuVG9vbENhbGxzLmpvaW4oJywgJyl9YDsKCQkJCX0KCQkJCWRhdGEuYWRkUm93KFtgJHtzLlNlcX1gLCBkdXIsIHRvb2x0aXBdKTsKCQkJfSk7CgoJCQljb25zdCBvcHRpb25zID0gewoJCQkJdGl0bGU6ICdUaW1lIENvbnN1bXB0aW9uIG9mIExMTS9Ub29sIENhbGxzJywKCQkJCWhBeGlzOiB7CgkJCQkJdGl0bGU6ICdMTE0vVG9vbCBTdGVwcycsCgkJCQl9LAoJCQkJdkF4aXM6IHsgdGl0bGU6ICdTZWNvbmRzJyB9LAoJCQkJbGVnZW5kOiB7IHBvc2l0aW9uOiAnbm9uZScgfSwKCQkJCWJhcjogeyBncm91cFdpZHRoOiAnNzUlJyB9LAoJCQkJY2hhcnRBcmVhOiB7IHdpZHRoOiAnODUlJywgaGVpZ2h0OiAnNzAlJyB9LAoJCQkJaGVpZ2h0OiA0MDAKCQkJfTsKCgkJCWNvbnN0IGNoYXJ0ID0gbmV3IGdvb2dsZS52aXN1YWxpemF0aW9uLkNvbHVtbkNoYXJ0KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdkdXJhdGlvbl9jaGFydF9kaXYnKSk7CgkJCWNoYXJ0LmRyYXcoZGF0YSwgb3B0aW9ucyk7CgkJfQoKCQlmdW5jdGlvbiBkcmF3VG9rZW5Db25zdW1wdGlvbkNoYXJ0KHJhd0RhdGEpIHsKCQkJY29uc3QgbGxtU3RlcHMgPSByYXdEYXRhLmZpbHRlcihkID0+IGQuVHlwZSA9PT0gImxsbSIpOwoJCQlpZiAobGxtU3RlcHMubGVuZ3RoID09PSAwKSByZXR1cm47CgoJCQljb25zdCBkYXRhID0gbmV3IGdvb2dsZS52aXN1YWxpemF0aW9uLkRhdGFUYWJsZSgpOwoJCQlkYXRhLmFkZENvbHVtbignc3RyaW5nJywgJ1N0ZXAnKTsJCQkKCQkJZGF0YS5hZGRDb2x1bW4oJ251bWJlcicsICdUb2tlbnMnKTsJCQkKCQkJZGF0YS5hZGRDb2x1bW4oe3R5cGU6ICdzdHJpbmcnLCByb2xlOiAnc3R5bGUnfSk7CQoJCQlkYXRhLmFkZENvbHVtbih7dHlwZTogJ3N0cmluZycsIHJvbGU6ICd0b29sdGlwJ30pOwkKCgkJCWNvbnN0IGFnZW50Q29sb3JzID0ge307CgkJCWNvbnN0IHBhbGV0dGUgPSBbJyM0Mjg1RjQnLCAnI0RCNDQzNycsICcjRjRCNDAwJywgJyMwRjlENTgnLCAnI0FCNDdCQycsICcjMDBBQ0MxJ107CgkJCWxldCBjb2xvcklkeCA9IDA7CgkJCWNvbnN0IGFnZW50TExNQ291bnRzID0ge307CgkJCWxsbVN0ZXBzLmZvckVhY2gocyA9PiB7CgkJCQlpZiAoIWFnZW50Q29sb3JzW3MuTmFtZV0pIHsKCQkJCQlhZ2VudENvbG9yc1tzLk5hbWVdID0gcGFsZXR0ZVtjb2xvcklkeCAlIHBhbGV0dGUubGVuZ3RoXTsKCQkJCQljb2xvcklkeCsrOwoJCQkJfQoKCQkJCWFnZW50TExNQ291bnRzW3MuTmFtZV0gPSAoYWdlbnRMTE1Db3VudHNbcy5OYW1lXSB8fCAwKSArIDE7CgkJCQljb25zdCBsYWJlbCA9IGAke3MuTmFtZX0tJHthZ2VudExMTUNvdW50c1tzLk5hbWVdfWA7CgkJCQljb25zdCB0b3RhbFRva2VucyA9IHMuSW5wdXRUb2tlbnMgKyBzLk91dHB1dFRva2VucyArIHMuT3V0cHV0VGhvdWdodHNUb2tlbnM7CgkJCQljb25zdCBzdHlsZSA9IGBjb2xvcjogJHthZ2VudENvbG9yc1tzLk5hbWVdfWA7CgkJCQlsZXQgdG9vbHRpcCA9IGBUb3RhbCBUb2tlbnM6ICR7dG90YWxUb2tlbnN9XG4oSW46ICR7cy5JbnB1dFRva2Vuc30sIE91dDogJHtzLk91dHB1dFRva2Vuc30sIFRob3VnaHRzOiAke3MuT3V0cHV0VGhvdWdodHNUb2tlbnN9KWA7CgkJCQlpZiAocy5Ub29sQ2FsbHMgJiYgcy5Ub29sQ2FsbHMubGVuZ3RoID4gMCkgewoJCQkJCXRvb2x0aXAgKz0gYFxuVG9vbHM6ICR7cy5Ub29sQ2FsbHMuam9pbignLCAnKX1gOwoJCQkJfQoKCQkJCWRhdGEuYWRkUm93KFtsYWJlbCwgdG90YWxUb2tlbnMsIHN0eWxlLCB0b29sdGlwXSk7CgkJCX0pOwoKCQkJY29uc3Qgb3B0aW9ucyA9IHsKCQkJCXRpdGxlOiAnVG9rZW4gQ29uc3VtcHRpb24gYnkgTExNIENhbGxzJywKCQkJCWhBeGlzOiB7CgkJCQkJdGl0bGU6ICdMTE0gQ2FsbCBTZXF1ZW5jZScsCgkJCQl9LAoJCQkJdkF4aXM6IHsgdGl0bGU6ICdDb25zdW1lZCBUb2tlbnMnIH0sCgkJCQlsZWdlbmQ6IHsgcG9zaXRpb246ICdub25lJyB9LAoJCQkJYmFyOiB7IGdyb3VwV2lkdGg6ICc3NSUnIH0sCgkJCQljaGFydEFyZWE6IHsgd2lkdGg6ICc4NSUnLCBoZWlnaHQ6ICc3MCUnIH0sCgkJCQloZWlnaHQ6IDQwMAoJCQl9OwoKCQkJY29uc3QgY2hhcnQgPSBuZXcgZ29vZ2xlLnZpc3VhbGl6YXRpb24uQ29sdW1uQ2hhcnQoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3Rva2VuX2NoYXJ0X2RpdicpKTsKCQkJY2hhcnQuZHJhdyhkYXRhLCBvcHRpb25zKTsKCQl9CgkJbGV0IGFsbEV4cGFuZGVkID0gZmFsc2U7CgkJZnVuY3Rpb24gdG9nZ2xlQWxsRGV0YWlscygpIHsKCQkJYWxsRXhwYW5kZWQgPSAhYWxsRXhwYW5kZWQ7CgkJCWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJ2RldGFpbHMnKS5mb3JFYWNoKGQgPT4gewoJCQkJaWYgKGFsbEV4cGFuZGVkKSBkLnNldEF0dHJpYnV0ZSgnb3BlbicsICcnKTsKCQkJCWVsc2UgZC5yZW1vdmVBdHRyaWJ1dGUoJ29wZW4nKTsKCQkJfSk7CgkJfQoJPC9zY3JpcHQ+CgoKPC9ib2R5Pgo8L2h0bWw+Cg==" },ValueFrom:&ValueFrom{Path:/output/result.json,JSONPath:,JQFilter:,Parameter:,Default:nil,Supplied:nil,Event:,Expression:,ConfigMapKeyRef:nil,},GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},Result:nil,ExitCode:*0,} --------- Name: series-workflowk27hb[1] Phase: Succeeded StartedAt: 2026-07-17 13:14:31 +0000 UTC FinishedAt: 2026-07-17 13:14:31 +0000 UTC Input: nil Output: nil --------- Name: series-workflowk27hb[1].abort-on-skip-outcome Phase: Skipped StartedAt: 2026-07-17 13:14:31 +0000 UTC FinishedAt: 2026-07-17 13:14:31 +0000 UTC Input: nil Output: nil --------- Name: series-workflowk27hb[2] Phase: Succeeded StartedAt: 2026-07-17 13:14:31 +0000 UTC FinishedAt: 2026-07-17 17:58:10 +0000 UTC Input: nil Output: nil --------- Name: series-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN) Phase: Succeeded StartedAt: 2026-07-17 13:14:31 +0000 UTC FinishedAt: 2026-07-17 17:58:10 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:element,Default:nil,Value:*{"base":{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},"fuzz":{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},"patched":{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},"retest":null,"track":"KASAN"},ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},} Output: nil --------- Name: series-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[0] Phase: Succeeded StartedAt: 2026-07-17 13:14:31 +0000 UTC FinishedAt: 2026-07-17 13:14:42 +0000 UTC Input: nil Output: nil --------- Name: series-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[0].save-base-req Phase: Succeeded StartedAt: 2026-07-17 13:14:31 +0000 UTC FinishedAt: 2026-07-17 13:14:38 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:data,Default:nil,Value:*{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},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-workflowk27hb/series-workflowk27hb-convert-artifact-2632148011/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[1] Phase: Succeeded StartedAt: 2026-07-17 13:14:42 +0000 UTC FinishedAt: 2026-07-17 14:16:19 +0000 UTC Input: nil Output: nil --------- Name: series-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[1].base-build Phase: Succeeded StartedAt: 2026-07-17 13:14:42 +0000 UTC FinishedAt: 2026-07-17 14:16:19 +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:*3da0602e-d5e7-40e0-947c-66dd79f2dd18,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-workflowk27hb/series-workflowk27hb-convert-artifact-2632148011/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": "ad246289-384f-4e92-b9ef-425d09262f53", "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-workflowk27hb/series-workflowk27hb-build-action-3711366441/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[1].base-build(0) Phase: Succeeded StartedAt: 2026-07-17 13:14:42 +0000 UTC FinishedAt: 2026-07-17 14:16:09 +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:*3da0602e-d5e7-40e0-947c-66dd79f2dd18,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-workflowk27hb/series-workflowk27hb-convert-artifact-2632148011/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": "ad246289-384f-4e92-b9ef-425d09262f53", "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-workflowk27hb/series-workflowk27hb-build-action-3711366441/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[2] Phase: Succeeded StartedAt: 2026-07-17 14:16:19 +0000 UTC FinishedAt: 2026-07-17 14:16:19 +0000 UTC Input: nil Output: nil --------- Name: series-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[2].abort-if-base-build-failed Phase: Skipped StartedAt: 2026-07-17 14:16:19 +0000 UTC FinishedAt: 2026-07-17 14:16:19 +0000 UTC Input: nil Output: nil --------- Name: series-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[3] Phase: Succeeded StartedAt: 2026-07-17 14:16:19 +0000 UTC FinishedAt: 2026-07-17 14:16:29 +0000 UTC Input: nil Output: nil --------- Name: series-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[3].save-patched-req Phase: Succeeded StartedAt: 2026-07-17 14:16:19 +0000 UTC FinishedAt: 2026-07-17 14:16:26 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:data,Default:nil,Value:*{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},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-workflowk27hb/series-workflowk27hb-convert-artifact-3728237570/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[4] Phase: Succeeded StartedAt: 2026-07-17 14:16:29 +0000 UTC FinishedAt: 2026-07-17 14:18:29 +0000 UTC Input: nil Output: nil --------- Name: series-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[4].boot-test-base Phase: Succeeded StartedAt: 2026-07-17 14:16:29 +0000 UTC FinishedAt: 2026-07-17 14:18:19 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:base-build-id,Default:nil,Value:*ad246289-384f-4e92-b9ef-425d09262f53,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-workflowk27hb/series-workflowk27hb-build-action-3711366441/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-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[5] Phase: Succeeded StartedAt: 2026-07-17 14:18:29 +0000 UTC FinishedAt: 2026-07-17 14:18:29 +0000 UTC Input: nil Output: nil --------- Name: series-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[5].abort-if-base-boot-failed Phase: Skipped StartedAt: 2026-07-17 14:18:29 +0000 UTC FinishedAt: 2026-07-17 14:18:29 +0000 UTC Input: nil Output: nil --------- Name: series-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[6] Phase: Succeeded StartedAt: 2026-07-17 14:18:29 +0000 UTC FinishedAt: 2026-07-17 14:52:46 +0000 UTC Input: nil Output: nil --------- Name: series-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[6].patched-build Phase: Succeeded StartedAt: 2026-07-17 14:18:29 +0000 UTC FinishedAt: 2026-07-17 14:52:46 +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:*3da0602e-d5e7-40e0-947c-66dd79f2dd18,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-workflowk27hb/series-workflowk27hb-convert-artifact-3728237570/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": "407a9035-83c0-4e28-825a-ba580e292643", "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-workflowk27hb/series-workflowk27hb-build-action-594300502/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[6].patched-build(0) Phase: Succeeded StartedAt: 2026-07-17 14:18:29 +0000 UTC FinishedAt: 2026-07-17 14:52:36 +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:*3da0602e-d5e7-40e0-947c-66dd79f2dd18,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-workflowk27hb/series-workflowk27hb-convert-artifact-3728237570/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": "407a9035-83c0-4e28-825a-ba580e292643", "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-workflowk27hb/series-workflowk27hb-build-action-594300502/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[7] Phase: Succeeded StartedAt: 2026-07-17 14:52:46 +0000 UTC FinishedAt: 2026-07-17 14:52:47 +0000 UTC Input: nil Output: nil --------- Name: series-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[7].abort-if-patched-build-failed Phase: Skipped StartedAt: 2026-07-17 14:52:47 +0000 UTC FinishedAt: 2026-07-17 14:52:47 +0000 UTC Input: nil Output: nil --------- Name: series-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[8] Phase: Succeeded StartedAt: 2026-07-17 14:52:47 +0000 UTC FinishedAt: 2026-07-17 14:55:10 +0000 UTC Input: nil Output: nil --------- Name: series-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[8].boot-test-patched Phase: Succeeded StartedAt: 2026-07-17 14:52:47 +0000 UTC FinishedAt: 2026-07-17 14:55:00 +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:*407a9035-83c0-4e28-825a-ba580e292643,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-workflowk27hb/series-workflowk27hb-build-action-594300502/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-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[10] Phase: Succeeded StartedAt: 2026-07-17 14:55:10 +0000 UTC FinishedAt: 2026-07-17 17:58:10 +0000 UTC Input: nil Output: nil --------- Name: series-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[10].run-fuzz Phase: Succeeded StartedAt: 2026-07-17 14:55:10 +0000 UTC FinishedAt: 2026-07-17 17:58:10 +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-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"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:*ad246289-384f-4e92-b9ef-425d09262f53,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:patched-build-id,Default:nil,Value:*407a9035-83c0-4e28-825a-ba580e292643,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-workflowk27hb/series-workflowk27hb-build-action-3711366441/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-workflowk27hb/series-workflowk27hb-build-action-594300502/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},} Output: nil --------- Name: series-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[10].run-fuzz[0] Phase: Succeeded StartedAt: 2026-07-17 14:55:10 +0000 UTC FinishedAt: 2026-07-17 14:55:32 +0000 UTC Input: nil Output: nil --------- Name: series-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[10].run-fuzz[0].save-fuzz-config Phase: Succeeded StartedAt: 2026-07-17 14:55:10 +0000 UTC FinishedAt: 2026-07-17 14:55:25 +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-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"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-workflowk27hb/series-workflowk27hb-convert-artifact-3911645239/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[10].run-retest Phase: Skipped StartedAt: 2026-07-17 14:55:10 +0000 UTC FinishedAt: 2026-07-17 14:55:10 +0000 UTC Input: nil Output: nil --------- Name: series-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[9] Phase: Succeeded StartedAt: 2026-07-17 14:55:10 +0000 UTC FinishedAt: 2026-07-17 14:55:10 +0000 UTC Input: nil Output: nil --------- Name: series-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[9].abort-if-patched-boot-failed Phase: Skipped StartedAt: 2026-07-17 14:55:10 +0000 UTC FinishedAt: 2026-07-17 14:55:10 +0000 UTC Input: nil Output: nil --------- Name: series-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[10].run-fuzz[1] Phase: Succeeded StartedAt: 2026-07-17 14:55:32 +0000 UTC FinishedAt: 2026-07-17 17:58:10 +0000 UTC Input: nil Output: nil --------- Name: series-workflowk27hb[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci-upstream-bpf-kasan-gce-corpus.db"],"focus":["bpf"],"focus_symbols":["check_stack_range_initialized"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"1d91ea01185656ac3ee63c5f9f6f8bde3c746b3d","config_name":"upstream-apparmor-kasan.config","enable_configs":["BPF_SYSCALL"],"series_id":"f7138c90-a7ee-4bc5-8d8b-dbf7f3d0d3ea","tree_name":"bpf-next","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/bpf/bpf-next.git"},retest:null,track:KASAN)[10].run-fuzz[1].fuzz Phase: Succeeded StartedAt: 2026-07-17 14:55:32 +0000 UTC FinishedAt: 2026-07-17 17:58:01 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:base-build-id,Default:nil,Value:*ad246289-384f-4e92-b9ef-425d09262f53,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:patched-build-id,Default:nil,Value:*407a9035-83c0-4e28-825a-ba580e292643,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-workflowk27hb/series-workflowk27hb-build-action-3711366441/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-workflowk27hb/series-workflowk27hb-build-action-594300502/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-workflowk27hb/series-workflowk27hb-convert-artifact-3911645239/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,}