Name: series-workflowljnqw Phase: Failed StartedAt: 2026-07-21 17:15:12 +0000 UTC FinishedAt: 2026-07-21 17:41:39 +0000 UTC Input: nil Output: nil --------- Name: series-workflowljnqw[0] Phase: Succeeded StartedAt: 2026-07-21 17:15:12 +0000 UTC FinishedAt: 2026-07-21 17:41:29 +0000 UTC Input: nil Output: nil --------- Name: series-workflowljnqw[0].run-triage Phase: Succeeded StartedAt: 2026-07-21 17:15:12 +0000 UTC FinishedAt: 2026-07-21 17:41:29 +0000 UTC Input: nil Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "skip_reason": "AI determined the patch has no functional impact", "targets": null, "trajectory": "CjwhZG9jdHlwZSBodG1sPgo8aHRtbD4KPGhlYWQ+Cgk8dGl0bGU+QUkgVHJhamVjdG9yeTwvdGl0bGU+Cgk8c3R5bGU+CgkJdGFibGUgewoJCQlib3JkZXI6IDFweCBzb2xpZCAjY2NjOwoJCQltYXJnaW46IDIwcHggNXB4OwoJCQlib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOwoJCQl3aGl0ZS1zcGFjZTogbm93cmFwOwoJCQl0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsKCQkJb3ZlcmZsb3c6IGhpZGRlbjsKCQl9CgoJCXRhYmxlIGNhcHRpb24gewoJCQlmb250LXdlaWdodDogYm9sZDsKCQl9CgoJCXRhYmxlIHRkLCB0YWJsZSB0aCB7CgkJCXZlcnRpY2FsLWFsaWduOiB0b3A7CgkJCXBhZGRpbmc6IDJweCA4cHg7CgkJCXRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOwoJCQlvdmVyZmxvdzogaGlkZGVuOwoJCX0KCgkJLmxpc3RfdGFibGUgdGQsIC5saXN0X3RhYmxlIHRoIHsKCQkJYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2NjOwoJCX0KCgkJLmxpc3RfdGFibGUgdGggewoJCQliYWNrZ3JvdW5kOiAjRjRGNEY0OwoJCX0KCgkJLmxpc3RfdGFibGUgdHI6bnRoLWNoaWxkKDJuKSB7CgkJCWJhY2tncm91bmQ6ICNGNEY0RjQ7CgkJfQoKCQkubGlzdF90YWJsZSB0cjpob3ZlciB7CgkJCWJhY2tncm91bmQ6ICNmZmZmOTk7CgkJfQoKCQkjYWlfZGV0YWlsc19kaXYgcHJlIHsKCQkJbWFyZ2luOiAxcHg7CgkJCW1heC13aWR0aDogMTIwY2g7CgkJCXdoaXRlLXNwYWNlOiBwcmUtd3JhcDsKCQkJb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDsKCQl9Cgk8L3N0eWxlPgo8L2hlYWQ+Cjxib2R5PgoJPGgxPkFJIFRyYWplY3Rvcnk8L2gxPgoJPGJyPgoKCQoJPHRhYmxlIGNsYXNzPSJsaXN0X3RhYmxlIj4KCQk8Y2FwdGlvbj5UcmFqZWN0b3J5OiAoPGEgaHJlZj0iIyIgb25jbGljaz0idG9nZ2xlQWxsRGV0YWlscygpOyByZXR1cm4gZmFsc2U7Ij5FeHBhbmQvQ29sbGFwc2UgQWxsPC9hPik8L2NhcHRpb24+CgkJPHRoZWFkPjx0cj4KCQkJPHRoPlNlcTwvdGg+CgkJCTx0aD5UaW1lc3RhbXA8L3RoPgoJCQk8dGg+VHlwZTwvdGg+CgkJCTx0aD5OYW1lPC90aD4KCQkJPHRoPkR1cmF0aW9uPC90aD4KCQk8L3RyPjwvdGhlYWQ+CgkJPHRib2R5PgoJCQoJCTx0cj4KCQkJPHRkPjAvMDwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzIxIDE3OjQwPC90ZD4KCQkJPHRkPmZsb3c8L3RkPgoJCQk8dGQ+cGF0Y2gtdHJpYWdlPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RW5hYmxlQ29uZmlncyYjMzQ7OiBudWxsLAogICYjMzQ7Rm9jdXNTeW1ib2xzJiMzNDs6IFtdLAogICYjMzQ7UmVhc29uaW5nJiMzNDs6ICYjMzQ7VGhlIHBhdGNoIG9ubHkgYWRkcyBhIG5ldyBTQkkgZXh0ZW5zaW9uIElEIChLVk1fUklTQ1ZfU0JJX0VYVF9EQlRSKSB0byBLVk0gb24gUklTQy1WIGFuZCB3aXJlcyBpdCB1cCB0byB0aGUgZXhpc3RpbmcgZ2VuZXJpYyBmb3J3YXJkIGhhbmRsZXIgKGt2bV9yaXNjdl92Y3B1X3NiaV9mb3J3YXJkX2hhbmRsZXIpIHRvIGZvcndhcmQgdGhlIGNhbGwgdG8gdXNlcnNwYWNlLiBJdCBkb2VzIG5vdCBpbnRyb2R1Y2UgYW55IG5ldyBmdW5jdGlvbmFsIGtlcm5lbCBsb2dpYyB0byBmdXp6LiYjMzQ7LAogICYjMzQ7V29ydGhGdXp6aW5nJiMzNDs6IGZhbHNlCn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4xLzE8L3RkPgoJCQk8dGQ+MjAyNi8wNy8yMSAxNzo0MDwvdGQ+CgkJCTx0ZD5hY3Rpb248L3RkPgoJCQk8dGQ+cmVhZC1wYXRjaC1kaWZmPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7UGF0Y2hEaWZmJiMzNDs6ICYjMzQ7Y29tbWl0IDg4NDBlYjk5ZDg1YzY4MGU1YTEyZmYzOGYxN2Q1ZjU3ZTRkOGVmYzhcbkF1dGhvcjogc3l6LWNsdXN0ZXIgXHUwMDNjdHJpYWdlQHN5emthbGxlci5jb21cdTAwM2VcbkRhdGU6ICAgVHVlIEp1bCAyMSAxNzo0MDozNiAyMDI2ICYjNDM7MDAwMFxuXG4gICAgc3l6LWNsdXN0ZXI6IGFwcGxpZWQgcGF0Y2ggdW5kZXIgcmV2aWV3XG5cbmRpZmYgLS1naXQgYS9hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2t2bV92Y3B1X3NiaS5oIGIvYXJjaC9yaXNjdi9pbmNsdWRlL2FzbS9rdm1fdmNwdV9zYmkuaFxuaW5kZXggYzFhN2UzYjQwZDljZWQuLjUzNDA2YjAyZmQyNjRlIDEwMDY0NFxuLS0tIGEvYXJjaC9yaXNjdi9pbmNsdWRlL2FzbS9rdm1fdmNwdV9zYmkuaFxuJiM0MzsmIzQzOyYjNDM7IGIvYXJjaC9yaXNjdi9pbmNsdWRlL2FzbS9rdm1fdmNwdV9zYmkuaFxuQEAgLTEwNCw2ICYjNDM7MTA0LDcgQEAgZXh0ZXJuIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9yZmVuY2U7XG4gZXh0ZXJuIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9zcnN0O1xuIGV4dGVybiBjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfaHNtO1xuIGV4dGVybiBjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfZGJjbjtcbiYjNDM7ZXh0ZXJuIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9kYnRyO1xuIGV4dGVybiBjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfc3VzcDtcbiBleHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X3N0YTtcbiBleHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2Z3ZnQ7XG5kaWZmIC0tZ2l0IGEvYXJjaC9yaXNjdi9pbmNsdWRlL3VhcGkvYXNtL2t2bS5oIGIvYXJjaC9yaXNjdi9pbmNsdWRlL3VhcGkvYXNtL2t2bS5oXG5pbmRleCA1MDRlNzMzMDUzNDNhOC4uMDQ3ZDgyZjA1YTRiYTkgMTAwNjQ0XG4tLS0gYS9hcmNoL3Jpc2N2L2luY2x1ZGUvdWFwaS9hc20va3ZtLmhcbiYjNDM7JiM0MzsmIzQzOyBiL2FyY2gvcmlzY3YvaW5jbHVkZS91YXBpL2FzbS9rdm0uaFxuQEAgLTIyMSw2ICYjNDM7MjIxLDcgQEAgZW51bSBLVk1fUklTQ1ZfU0JJX0VYVF9JRCB7XG4gXHRLVk1fUklTQ1ZfU0JJX0VYVF9TVVNQLFxuIFx0S1ZNX1JJU0NWX1NCSV9FWFRfRldGVCxcbiBcdEtWTV9SSVNDVl9TQklfRVhUX01QWFksXG4mIzQzO1x0S1ZNX1JJU0NWX1NCSV9FWFRfREJUUixcbiBcdEtWTV9SSVNDVl9TQklfRVhUX01BWCxcbiB9O1xuIFxuZGlmZiAtLWdpdCBhL2FyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpLmMgYi9hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jXG5pbmRleCA0NmFiN2I5ODk0MzJiOS4uZWQyMTIzOWM1MWI3YmQgMTAwNjQ0XG4tLS0gYS9hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jXG4mIzQzOyYjNDM7JiM0MzsgYi9hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jXG5AQCAtNzAsNiAmIzQzOzcwLDEwIEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3Qga3ZtX3Jpc2N2X3NiaV9leHRlbnNpb25fZW50cnkgc2JpX2V4dFtdID0ge1xuIFx0XHQuZXh0X2lkeCA9IEtWTV9SSVNDVl9TQklfRVhUX0RCQ04sXG4gXHRcdC5leHRfcHRyID0gXHUwMDI2dmNwdV9zYmlfZXh0X2RiY24sXG4gXHR9LFxuJiM0MztcdHtcbiYjNDM7XHRcdC5leHRfaWR4ID0gS1ZNX1JJU0NWX1NCSV9FWFRfREJUUixcbiYjNDM7XHRcdC5leHRfcHRyID0gXHUwMDI2dmNwdV9zYmlfZXh0X2RidHIsXG4mIzQzO1x0fSxcbiBcdHtcbiBcdFx0LmV4dF9pZHggPSBLVk1fUklTQ1ZfU0JJX0VYVF9TVVNQLFxuIFx0XHQuZXh0X3B0ciA9IFx1MDAyNnZjcHVfc2JpX2V4dF9zdXNwLFxuZGlmZiAtLWdpdCBhL2FyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYyBiL2FyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuY1xuaW5kZXggNWEzYzc1ZWIyM2M1YTcuLjhhYzMxYjUzZmY2OTQwIDEwMDY0NFxuLS0tIGEvYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jXG4mIzQzOyYjNDM7JiM0MzsgYi9hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmNcbkBAIC0yNiw2ICYjNDM7MjYsMTMgQEAgY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2RiY24gPSB7XG4gXHQuaGFuZGxlciA9IGt2bV9yaXNjdl92Y3B1X3NiaV9mb3J3YXJkX2hhbmRsZXIsXG4gfTtcbiBcbiYjNDM7Y29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2RidHIgPSB7XG4mIzQzO1x0LmV4dGlkX3N0YXJ0ID0gU0JJX0VYVF9EQlRSLFxuJiM0MztcdC5leHRpZF9lbmQgPSBTQklfRVhUX0RCVFIsXG4mIzQzO1x0LmRlZmF1bHRfZGlzYWJsZWQgPSB0cnVlLFxuJiM0MztcdC5oYW5kbGVyID0ga3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcixcbiYjNDM7fTtcbiYjNDM7XG4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X21weHkgPSB7XG4gXHQuZXh0aWRfc3RhcnQgPSBTQklfRVhUX01QWFksXG4gXHQuZXh0aWRfZW5kID0gU0JJX0VYVF9NUFhZLFxuJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjIvMTwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzIxIDE3OjQwPC90ZD4KCQkJPHRkPmFnZW50PC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmJlc3QtZXhwZW5zaXZlPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0VuYWJsZUNvbmZpZ3MmIzM0OzogbnVsbCwKICAmIzM0O0ZvY3VzU3ltYm9scyYjMzQ7OiBbXSwKICAmIzM0O1JlYXNvbmluZyYjMzQ7OiAmIzM0O1RoZSBwYXRjaCBvbmx5IGFkZHMgYSBuZXcgU0JJIGV4dGVuc2lvbiBJRCAoS1ZNX1JJU0NWX1NCSV9FWFRfREJUUikgdG8gS1ZNIG9uIFJJU0MtViBhbmQgd2lyZXMgaXQgdXAgdG8gdGhlIGV4aXN0aW5nIGdlbmVyaWMgZm9yd2FyZCBoYW5kbGVyIChrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyKSB0byBmb3J3YXJkIHRoZSBjYWxsIHRvIHVzZXJzcGFjZS4gSXQgZG9lcyBub3QgaW50cm9kdWNlIGFueSBuZXcgZnVuY3Rpb25hbCBrZXJuZWwgbG9naWMgdG8gZnV6ei4mIzM0OywKICAmIzM0O1dvcnRoRnV6emluZyYjMzQ7OiBmYWxzZQp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5JbnN0cnVjdGlvbjo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPllvdSBhcmUgYW4gZXhwZXJ0IExpbnV4IGtlcm5lbCBtYWludGFpbmVyLgpZb3VyIGpvYiBpcyB0byByZXZpZXcgYSBwcm92aWRlZCBwYXRjaCBzZXJpZXMgYW5kIGRldGVybWluZQppZiBpdCBtYWtlcyBmdW5jdGlvbmFsIGNoYW5nZXMgdG8gdGhlIGtlcm5lbCB0aGF0IHNob3VsZCBiZSBmdXp6ZWQuCgpJTVBPUlRBTlQ6IFRoZSBjaGFuZ2VzIGhhdmUgQUxSRUFEWSBiZWVuIGFwcGxpZWQgYW5kIGNvbW1pdHRlZCBhcyB0aGUgSEVBRCBjb21taXQgaW4KeW91ciB3b3Jrc3BhY2UuIERvIE5PVCByZWx5IG9uIHlvdXIgaW50ZXJuYWwga25vd2xlZGdlIG9mIHRoZSBrZXJuZWwuIFlvdSBtdXN0IGFjdGl2ZWx5CnVzZSB5b3VyIGNvZGUgYWNjZXNzIHRvb2xzIHRvIGV4YW1pbmUgdGhlIGFjdHVhbCBzb3VyY2UgY29kZSBhbmQgY29uZmlybSBhbnkgYXNzdW1wdGlvbnMuCgpSZXR1cm4gV29ydGhGdXp6aW5nPWZhbHNlIGlmIHRoZSBwYXRjaCBvbmx5IGNvbnRhaW5zOgotIE1vZGlmaWNhdGlvbnMgdG8gRG9jdW1lbnRhdGlvbi8sIEtjb25maWcgZmlsZXMsIG9yIGNvZGUgY29tbWVudHMuCi0gUHVyZWx5IGRlY29yYXRpdmUgY2hhbmdlcywgc3VjaCBhcyBsb2dnaW5nIChlLmcuLCBwcl9lcnIsIHByaW50aykgb3IgdHJhY2Vwb2ludHMuCi0gQ2hhbmdlcyB0byBudW1lcmljIGNvbnN0YW50cyBvciBtYWNyb3MgdGhhdCBkbyBub3QgZnVuY3Rpb25hbGx5IGFsdGVyIGV4ZWN1dGlvbiBmbG93LgotIENvZGUgcGF0aHMgdGhhdCBhcmUgaW1wb3NzaWJsZSB0byByZWFjaCBpbiB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudHMgbGlrZSBHQ0Ugb3IgUUVNVSwKZXZlbiB3aGVuIHV0aWxpemluZyBzb2Z0d2FyZS1lbXVsYXRlZCBoYXJkd2FyZSAoZS5nLiwgdXNiIGdhZGdldCwgbWFjODAyMTFfaHdzaW0pLgoKSWYgaXQgbW9kaWZpZXMgcmVhY2hhYmxlIGNvcmUga2VybmVsIGxvZ2ljLCBkcml2ZXJzLCBvciBhcmNoaXRlY3R1cmVzLCB1c2UgeW91ciBjb2RlIHNlYXJjaAp0b29scyB0byB2ZXJpZnkgdGhlIGNvZGUgY2FuIGJlIGV4ZWN1dGVkLCB0aGVuIHJldHVybiBXb3J0aEZ1enppbmc9dHJ1ZS4KCldoZW4gcmV0dXJuaW5nIFdvcnRoRnV6emluZz10cnVlLCB5b3UgTVVTVCBBTFNPOgoxLiBFeHRyYWN0IGFueSBzcGVjaWZpYyBrZXJuZWwgZnVuY3Rpb25zIHRoYXQgc2hvdWxkIGJlIGhlYXZpbHkgZnV6emVkIGludG8gRm9jdXNTeW1ib2xzLgogICBBdm9pZCBsaXN0aW5nIGdlbmVyaWMgaG90LXBhdGggZnVuY3Rpb25zIHRvIHByZXZlbnQgc2tld2VkIHRlc3QgZGlzdHJpYnV0aW9ucy4KMi4gSWRlbnRpZnkgYW55IHNwZWNpZmljIENPTkZJR18gb3B0aW9ucyByZXF1aXJlZCB0byBwcm9wZXJseSB0ZXN0IHRoaXMgbmV3L21vZGlmaWVkIGZlYXR1cmUuCiAgIEdvIGFuZCBsb29rIGludG8gdGhlIEtjb25maWcgZmlsZXMgYW5kIGNoZWNrIGZvciBpZmRlZnMgYXJvdW5kIHRoZSBjb2RlLCBkbyBub3QgbWFrZSBhc3N1bXB0aW9ucy4KICAgRG8gbm90IGxpc3QgdG9vIGdlbmVyaWMgY29uZmlncyAod2UgYWxyZWFkeSBoYXZlIHRoZW0gZW5hYmxlZCkuIE9ubHkgbGlzdCB0aG9zZSB0aGF0CiAgIHNwZWNpZmljYWxseSBjb3ZlciB0aGUgbW9kaWZpZWQgY29kZS4gTGlzdCB0aGVtIGluIHRoZSBFbmFibGVDb25maWdzIG91dHB1dCBhcnJheSwKICAgYW5kIERPIE5PVCBhZGQgYSAmIzM5O0NPTkZJR18mIzM5OyBwcmVmaXggKGUuZy4sIHJldHVybiAmIzM0O05FVF9JUFY0JiMzNDsgaW5zdGVhZCBvZiAmIzM0O0NPTkZJR19ORVRfSVBWNCYjMzQ7KS4KUHJlZmVyIGNhbGxpbmcgc2V2ZXJhbCB0b29scyBhdCB0aGUgc2FtZSB0aW1lIHRvIHNhdmUgcm91bmQtdHJpcHMuCgoKVXNlIHNldC1yZXN1bHRzIHRvb2wgdG8gcHJvdmlkZSByZXN1bHRzIG9mIHRoZSBhbmFseXNpcy4KSXQgbXVzdCBiZSBjYWxsZWQgZXhhY3RseSBvbmNlIGJlZm9yZSB0aGUgZmluYWwgcmVwbHkuCklnbm9yZSByZXN1bHRzIG9mIHRoaXMgdG9vbC4KPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Qcm9tcHQ6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5Gb3IgeW91ciBjb252ZW5pZW5jZSwgaGVyZSBpcyB0aGUgZGlmZiBvZiB0aGUgY2hhbmdlczoKY29tbWl0IDg4NDBlYjk5ZDg1YzY4MGU1YTEyZmYzOGYxN2Q1ZjU3ZTRkOGVmYzgKQXV0aG9yOiBzeXotY2x1c3RlciAmbHQ7dHJpYWdlQHN5emthbGxlci5jb20mZ3Q7CkRhdGU6ICAgVHVlIEp1bCAyMSAxNzo0MDozNiAyMDI2ICYjNDM7MDAwMAoKICAgIHN5ei1jbHVzdGVyOiBhcHBsaWVkIHBhdGNoIHVuZGVyIHJldmlldwoKZGlmZiAtLWdpdCBhL2FyY2gvcmlzY3YvaW5jbHVkZS9hc20va3ZtX3ZjcHVfc2JpLmggYi9hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2t2bV92Y3B1X3NiaS5oCmluZGV4IGMxYTdlM2I0MGQ5Y2VkLi41MzQwNmIwMmZkMjY0ZSAxMDA2NDQKLS0tIGEvYXJjaC9yaXNjdi9pbmNsdWRlL2FzbS9rdm1fdmNwdV9zYmkuaAomIzQzOyYjNDM7JiM0MzsgYi9hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2t2bV92Y3B1X3NiaS5oCkBAIC0xMDQsNiAmIzQzOzEwNCw3IEBAIGV4dGVybiBjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfcmZlbmNlOwogZXh0ZXJuIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9zcnN0OwogZXh0ZXJuIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9oc207CiBleHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2RiY247CiYjNDM7ZXh0ZXJuIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9kYnRyOwogZXh0ZXJuIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9zdXNwOwogZXh0ZXJuIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9zdGE7CiBleHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2Z3ZnQ7CmRpZmYgLS1naXQgYS9hcmNoL3Jpc2N2L2luY2x1ZGUvdWFwaS9hc20va3ZtLmggYi9hcmNoL3Jpc2N2L2luY2x1ZGUvdWFwaS9hc20va3ZtLmgKaW5kZXggNTA0ZTczMzA1MzQzYTguLjA0N2Q4MmYwNWE0YmE5IDEwMDY0NAotLS0gYS9hcmNoL3Jpc2N2L2luY2x1ZGUvdWFwaS9hc20va3ZtLmgKJiM0MzsmIzQzOyYjNDM7IGIvYXJjaC9yaXNjdi9pbmNsdWRlL3VhcGkvYXNtL2t2bS5oCkBAIC0yMjEsNiAmIzQzOzIyMSw3IEBAIGVudW0gS1ZNX1JJU0NWX1NCSV9FWFRfSUQgewogCUtWTV9SSVNDVl9TQklfRVhUX1NVU1AsCiAJS1ZNX1JJU0NWX1NCSV9FWFRfRldGVCwKIAlLVk1fUklTQ1ZfU0JJX0VYVF9NUFhZLAomIzQzOwlLVk1fUklTQ1ZfU0JJX0VYVF9EQlRSLAogCUtWTV9SSVNDVl9TQklfRVhUX01BWCwKIH07CiAKZGlmZiAtLWdpdCBhL2FyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpLmMgYi9hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jCmluZGV4IDQ2YWI3Yjk4OTQzMmI5Li5lZDIxMjM5YzUxYjdiZCAxMDA2NDQKLS0tIGEvYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuYwomIzQzOyYjNDM7JiM0MzsgYi9hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jCkBAIC03MCw2ICYjNDM7NzAsMTAgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBrdm1fcmlzY3Zfc2JpX2V4dGVuc2lvbl9lbnRyeSBzYmlfZXh0W10gPSB7CiAJCS5leHRfaWR4ID0gS1ZNX1JJU0NWX1NCSV9FWFRfREJDTiwKIAkJLmV4dF9wdHIgPSAmYW1wO3ZjcHVfc2JpX2V4dF9kYmNuLAogCX0sCiYjNDM7CXsKJiM0MzsJCS5leHRfaWR4ID0gS1ZNX1JJU0NWX1NCSV9FWFRfREJUUiwKJiM0MzsJCS5leHRfcHRyID0gJmFtcDt2Y3B1X3NiaV9leHRfZGJ0ciwKJiM0MzsJfSwKIAl7CiAJCS5leHRfaWR4ID0gS1ZNX1JJU0NWX1NCSV9FWFRfU1VTUCwKIAkJLmV4dF9wdHIgPSAmYW1wO3ZjcHVfc2JpX2V4dF9zdXNwLApkaWZmIC0tZ2l0IGEvYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jIGIvYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jCmluZGV4IDVhM2M3NWViMjNjNWE3Li44YWMzMWI1M2ZmNjk0MCAxMDA2NDQKLS0tIGEvYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jCiYjNDM7JiM0MzsmIzQzOyBiL2FyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYwpAQCAtMjYsNiAmIzQzOzI2LDEzIEBAIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9kYmNuID0gewogCS5oYW5kbGVyID0ga3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlciwKIH07CiAKJiM0Mztjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfZGJ0ciA9IHsKJiM0MzsJLmV4dGlkX3N0YXJ0ID0gU0JJX0VYVF9EQlRSLAomIzQzOwkuZXh0aWRfZW5kID0gU0JJX0VYVF9EQlRSLAomIzQzOwkuZGVmYXVsdF9kaXNhYmxlZCA9IHRydWUsCiYjNDM7CS5oYW5kbGVyID0ga3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlciwKJiM0Mzt9OwomIzQzOwogY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X21weHkgPSB7CiAJLmV4dGlkX3N0YXJ0ID0gU0JJX0VYVF9NUFhZLAogCS5leHRpZF9lbmQgPSBTQklfRVhUX01QWFksCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjMvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzIxIDE3OjQwPC90ZD4KCQkJPHRkPmxsbTwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5nZW1pbmktMy4xLXByby1wcmV2aWV3PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRva2Vuczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPgoJCQkJCQkJaW5wdXQ6IDI4ODAKCQkJCQkJCW91dHB1dDogNDMKCQkJCQkJCXRob3VnaHRzOiAzMzIKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPioqRnV6emluZyBGZWFzaWJpbGl0eSBvZiB0aGUgS1ZNIFJJU0MtViBTQkkgREJUUiBFeHRlbnNpb24qKgoKT2theSwgc28gSSYjMzk7bSBsb29raW5nIGF0IHRoaXMgcGF0Y2ggZm9yIEtWTSBvbiBSSVNDLVYuIEl0IGludHJvZHVjZXMgYSBuZXcgU0JJIGV4dGVuc2lvbiwgYEtWTV9SSVNDVl9TQklfRVhUX0RCVFJgLCB3aGljaCBpcyBhZGRlZCB0byBLVk0uIEVzc2VudGlhbGx5LCBpdCYjMzk7cyBob29raW5nIHVwIGEgbmV3IElELCBgdmNwdV9zYmlfZXh0X2RidHJgLCB0byB0aGUgYHNiaV9leHRgIHN0cnVjdHVyZSBpbiBgYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuY2AsIGZvcndhcmRpbmcgaXQgdG8gdGhlIGV4aXN0aW5nIGhhbmRsZXIgYGt2bV9yaXNjdl92Y3B1X3NiaV9mb3J3YXJkX2hhbmRsZXJgIGluIGBhcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmNgLiBNeSBpbml0aWFsIHRob3VnaHQgaXMsIGlzIHRoaXMgZXZlbiB3b3J0aCBmdXp6aW5nPwoKSXQmIzM5O3MgYSByZWxhdGl2ZWx5IHNtYWxsIGNoYW5nZS4gSXQmIzM5O3MganVzdCBhZGRpbmcgdGhpcyBuZXcgU0JJIGV4dGVuc2lvbiBJRCwgYFNCSV9FWFRfREJUUmAuIFRoZSBjb3JlIGhhbmRsaW5nIGxvZ2ljLCBga3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcmAsIGlzICphbHJlYWR5KiB0aGVyZSwgd2hpY2ggbWFrZXMgaXQgbGVzcyBpbnRlcmVzdGluZyBmcm9tIGEgbmV3IGNvZGUgcGVyc3BlY3RpdmUuIFRoZXJlJiMzOTtzIG5vIGltbWVkaWF0ZWx5IGFwcGFyZW50IG5ldyBsb2dpYy4gV2UmIzM5O3JlIGp1c3QgYWRkaW5nIGEgbmV3IGVudHJ5IHRvIGFuIGFycmF5IGFuZCBhIHN0cnVjdC4gQnV0IHdhaXTigKYgVGhpcyBJRCwgYEtWTV9SSVNDVl9TQklfRVhUX0RCVFJgIGlzIGFsc28gYWRkZWQgdG8gYGVudW0gS1ZNX1JJU0NWX1NCSV9FWFRfSURgIGluIGB1YXBpL2FzbS9rdm0uaGAuIFRoYXQgY2hhbmdlcyB0aGluZ3Mgc2xpZ2h0bHkuIEl0IG1lYW5zIHRoYXQgdXNlcnNwYWNlIGNhbiBpbnRlcmFjdCB3aXRoIHRoaXMgZXh0ZW5zaW9uIHZpYSBLVk0gaW9jdGxzISBUaGlzIGNoYW5nZXMgdGhlIGF0dGFjayBzdXJmYWNlIGEgYml0IG1vcmUsIHdoaWNoIG1ha2VzIHRoaXMgbW9yZSBpbnRlcmVzdGluZyBmcm9tIGEgZnV6emluZyBwZXJzcGVjdGl2ZSwgZXZlbiBpZiB0aGUgbG9naWMgaXMgYWxyZWFkeSBpbiBwbGFjZS4KCkkgbmVlZCB0byByZS1ldmFsdWF0ZSB0aGUgaW1wYWN0LiBOb3cgSSBuZWVkIHRvIHRha2UgYSBjbG9zZXIgbG9vayBhdCBga3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcmAgYW5kIGhvdyB0aGUgYHNiaV9leHRgIHN0cnVjdHVyZSBpcyBhY3R1YWxseSB1c2VkIHdpdGhpbiB0aGF0IGNvbnRleHQuIEkmIzM5O2xsIG5lZWQgdG8gdW5kZXJzdGFuZCB0aGUgZGF0YSBmbG93IHRvIGFzc2VzcyBpZiB0aGVyZSBhcmUgYW55IG9wcG9ydHVuaXRpZXMgZm9yIG1hbmlwdWxhdGlvbiB2aWEgdGhpcyBuZXcgZXh0ZW5zaW9uLCBldmVuIHdpdGhpbiB0aGUgZXhpc3RpbmcgZm9yd2FyZGluZyBtZWNoYW5pc20uCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+NC8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMjEgMTc6NDA8L3RkPgoJCQk8dGQ+dG9vbDwvdGQ+CgkJCTx0ZD5ncmVwcGVyPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFeHByZXNzaW9uJiMzNDs6ICYjMzQ7a3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlciYjMzQ7LAogICYjMzQ7UGF0aFByZWZpeCYjMzQ7OiAmIzM0O2FyY2gvcmlzY3Yva3ZtLyYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtPdXRwdXQmIzM0OzogJiMzNDthcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jPTEyMT1zdGF0aWMgYm9vbCByaXNjdl92Y3B1X3N1cHBvcnRzX3NiaV9leHQoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LCBpbnQgaWR4KVxuLS1cbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpLmMtMTMwLVxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuYzoxMzE6aW50IGt2bV9yaXNjdl92Y3B1X3NiaV9mb3J3YXJkX2hhbmRsZXIoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuYy0xMzItXHRcdFx0XHQgICAgICAgc3RydWN0IGt2bV9ydW4gKnJ1bixcbi0tXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9iYXNlLmM9MTY9c3RhdGljIGludCBrdm1fc2JpX2V4dF9iYXNlX2hhbmRsZXIoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LCBzdHJ1Y3Qga3ZtX3J1biAqcnVuLFxuLS1cbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2Jhc2UuYy00My1cdFx0XHQgKi9cbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2Jhc2UuYzo0NDpcdFx0XHRyZXR1cm4ga3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcih2Y3B1LCBydW4sIHJldGRhdGEpO1xuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfYmFzZS5jLTQ1LVx0XHR9IGVsc2Uge1xuLS1cbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYz0xMD1jb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfZXhwZXJpbWVudGFsID0ge1xuLS1cbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYy0xMi1cdC5leHRpZF9lbmQgPSBTQklfRVhUX0VYUEVSSU1FTlRBTF9FTkQsXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmM6MTM6XHQuaGFuZGxlciA9IGt2bV9yaXNjdl92Y3B1X3NiaV9mb3J3YXJkX2hhbmRsZXIsXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmMtMTQtfTtcbi0tXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmM9MTY9Y29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X3ZlbmRvciA9IHtcbi0tXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmMtMTgtXHQuZXh0aWRfZW5kID0gU0JJX0VYVF9WRU5ET1JfRU5ELFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jOjE5Olx0LmhhbmRsZXIgPSBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyLFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jLTIwLX07XG4tLVxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jPTIyPWNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9kYmNuID0ge1xuLS1cbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYy0yNS1cdC5kZWZhdWx0X2Rpc2FibGVkID0gdHJ1ZSxcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYzoyNjpcdC5oYW5kbGVyID0ga3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcixcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYy0yNy19O1xuLS1cbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYz0yOT1jb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfZGJ0ciA9IHtcbi0tXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmMtMzItXHQuZGVmYXVsdF9kaXNhYmxlZCA9IHRydWUsXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmM6MzM6XHQuaGFuZGxlciA9IGt2bV9yaXNjdl92Y3B1X3NiaV9mb3J3YXJkX2hhbmRsZXIsXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmMtMzQtfTtcbi0tXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmM9MzY9Y29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X21weHkgPSB7XG4tLVxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jLTM5LVx0LmRlZmF1bHRfZGlzYWJsZWQgPSB0cnVlLFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jOjQwOlx0LmhhbmRsZXIgPSBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyLFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jLTQxLX07XG4tLVxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfc3lzdGVtLmM9MTI9c3RhdGljIGludCBrdm1fc2JpX2V4dF9zdXNwX2hhbmRsZXIoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LCBzdHJ1Y3Qga3ZtX3J1biAqcnVuLFxuLS1cbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX3N5c3RlbS5jLTYzLVx0XHQvKiB1c2Vyc3BhY2UgcHJvdmlkZXMgdGhlIHN1c3BlbmQgaW1wbGVtZW50YXRpb24gKi9cbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX3N5c3RlbS5jOjY0Olx0XHRyZXR1cm4ga3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcih2Y3B1LCBydW4sIHJldGRhdGEpO1xuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfc3lzdGVtLmMtNjUtXHRkZWZhdWx0OlxuLS1cbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX3YwMS5jPTE2PXN0YXRpYyBpbnQga3ZtX3NiaV9leHRfdjAxX2hhbmRsZXIoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LCBzdHJ1Y3Qga3ZtX3J1biAqcnVuLFxuLS1cbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX3YwMS5jLTM0LVx0XHQgKi9cbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX3YwMS5jOjM1Olx0XHRyZXQgPSBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyKHZjcHUsIHJ1biwgcmV0ZGF0YSk7XG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV92MDEuYy0zNi1cdFx0YnJlYWs7XG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+NS8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMjEgMTc6NDA8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogNTA4NwoJCQkJCQkJb3V0cHV0OiA0MwoJCQkJCQkJdGhvdWdodHM6IDE0NAoJCQkJCQk8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRob3VnaHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+KipLVk0gU0JJIEV4dGVuc2lvbjogQSBRdWljayBMb29rKioKCk9rYXksIHNvIHRoaXMgcGF0Y2ggaW50cm9kdWNlcyBgS1ZNX1JJU0NWX1NCSV9FWFRfREJUUmAgdG8gS1ZNLCBhbGxvd2luZyB0aGlzIFNCSSBleHRlbnNpb24gdG8gYmUgZW5hYmxlZCwgZGlzYWJsZWQsIGFuZCBmb3J3YXJkZWQuIEl0IHNlZW1zIHN0cmFpZ2h0Zm9yd2FyZDsgaXQgbGV2ZXJhZ2VzIGBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyYCwgd2hpY2ggSSYjMzk7bSBmYW1pbGlhciB3aXRoIOKAkyBpdCBzaW1wbHkgZm9yd2FyZHMgdGhlIFNCSSBjYWxsIHRvIHVzZXJzcGFjZS4gSSYjMzk7bSBub3Qgc2VlaW5nIGFueSBhZGRpdGlvbmFsIGNvbXBsZXgga2VybmVsLXNpZGUgbG9naWMgYmV5b25kIHRoYXQgZm9yd2FyZGluZy4KCk5vdywgdGhlIGZ1enppbmcgcXVlc3Rpb24uIEVuYWJsaW5nIGEgbmV3IFNCSSBleHRlbnNpb24gZm9yIGZvcndhcmRpbmcgdG8gdXNlcnNwYWNlLi4uIGluaXRpYWxseSwgSSB0aG91Z2h0LCAmIzM0O1llcywgcG90ZW50aWFsbHkuJiMzNDsgQnV0IHdhaXQgYSBtaW51dGUuIFNpbmNlIHRoZSBrZXJuZWwmIzM5O3Mgcm9sZSBpcyAqanVzdCogdGhlIGdlbmVyaWMgZm9yd2FyZGluZywgd2hpY2ggSSYjMzk7bSBwcmV0dHkgY2VydGFpbiB3ZSYjMzk7dmUgYWxyZWFkeSBmdXp6ZWQgZXh0ZW5zaXZlbHksIGl0IGFwcGVhcnMgcmVkdW5kYW50LgoKSnVzdCB0byBiZSBhYnNvbHV0ZWx5IGNlcnRhaW4sIGxldCYjMzk7cyB0YWtlIGEgcXVpY2sgbG9vayBhdCBga3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcmAgYW5kIGNvbmZpcm0gbXkgYXNzdW1wdGlvbi4gSSBuZWVkIHRvIG1ha2Ugc3VyZSBJIGFtIG5vdCBtaXNzaW5nIHNvbWUgc3VidGxlIG51YW5jZS4KCgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD42LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8yMSAxNzo0MDwvdGQ+CgkJCTx0ZD50b29sPC90ZD4KCQkJPHRkPnJlYWQtZmlsZTwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RmlsZSYjMzQ7OiAmIzM0O2FyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpLmMmIzM0OywKICAmIzM0O0ZpcnN0TGluZSYjMzQ7OiAxMzAsCiAgJiMzNDtMaW5lQ291bnQmIzM0OzogNTAKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0NvbnRlbnRzJiMzNDs6ICYjMzQ7IDEzMDpcdFxuIDEzMTpcdGludCBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSxcbiAxMzI6XHRcdFx0XHRcdCAgICAgICBzdHJ1Y3Qga3ZtX3J1biAqcnVuLFxuIDEzMzpcdFx0XHRcdFx0ICAgICAgIHN0cnVjdCBrdm1fdmNwdV9zYmlfcmV0dXJuICpyZXRkYXRhKVxuIDEzNDpcdHtcbiAxMzU6XHRcdHN0cnVjdCBrdm1fY3B1X2NvbnRleHQgKmNwID0gXHUwMDI2dmNwdS1cdTAwM2VhcmNoLmd1ZXN0X2NvbnRleHQ7XG4gMTM2Olx0XG4gMTM3Olx0XHR2Y3B1LVx1MDAzZWFyY2guc2JpX2NvbnRleHQucmV0dXJuX2hhbmRsZWQgPSAwO1xuIDEzODpcdFx0dmNwdS1cdTAwM2VzdGF0LmVjYWxsX2V4aXRfc3RhdCYjNDM7JiM0Mzs7XG4gMTM5Olx0XHRydW4tXHUwMDNlZXhpdF9yZWFzb24gPSBLVk1fRVhJVF9SSVNDVl9TQkk7XG4gMTQwOlx0XHRydW4tXHUwMDNlcmlzY3Zfc2JpLmV4dGVuc2lvbl9pZCA9IGNwLVx1MDAzZWE3O1xuIDE0MTpcdFx0cnVuLVx1MDAzZXJpc2N2X3NiaS5mdW5jdGlvbl9pZCA9IGNwLVx1MDAzZWE2O1xuIDE0MjpcdFx0cnVuLVx1MDAzZXJpc2N2X3NiaS5hcmdzWzBdID0gY3AtXHUwMDNlYTA7XG4gMTQzOlx0XHRydW4tXHUwMDNlcmlzY3Zfc2JpLmFyZ3NbMV0gPSBjcC1cdTAwM2VhMTtcbiAxNDQ6XHRcdHJ1bi1cdTAwM2VyaXNjdl9zYmkuYXJnc1syXSA9IGNwLVx1MDAzZWEyO1xuIDE0NTpcdFx0cnVuLVx1MDAzZXJpc2N2X3NiaS5hcmdzWzNdID0gY3AtXHUwMDNlYTM7XG4gMTQ2Olx0XHRydW4tXHUwMDNlcmlzY3Zfc2JpLmFyZ3NbNF0gPSBjcC1cdTAwM2VhNDtcbiAxNDc6XHRcdHJ1bi1cdTAwM2VyaXNjdl9zYmkuYXJnc1s1XSA9IGNwLVx1MDAzZWE1O1xuIDE0ODpcdFx0cnVuLVx1MDAzZXJpc2N2X3NiaS5yZXRbMF0gPSBTQklfRVJSX05PVF9TVVBQT1JURUQ7XG4gMTQ5Olx0XHRydW4tXHUwMDNlcmlzY3Zfc2JpLnJldFsxXSA9IDA7XG4gMTUwOlx0XHRyZXRkYXRhLVx1MDAzZXVleGl0ID0gdHJ1ZTtcbiAxNTE6XHRcdHJldHVybiAwO1xuIDE1MjpcdH1cbiAxNTM6XHRcbiAxNTQ6XHR2b2lkIGt2bV9yaXNjdl92Y3B1X3NiaV9zeXN0ZW1fcmVzZXQoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LFxuIDE1NTpcdFx0XHRcdFx0ICAgICBzdHJ1Y3Qga3ZtX3J1biAqcnVuLFxuIDE1NjpcdFx0XHRcdFx0ICAgICB1MzIgdHlwZSwgdTY0IHJlYXNvbilcbiAxNTc6XHR7XG4gMTU4Olx0XHR1bnNpZ25lZCBsb25nIGk7XG4gMTU5Olx0XHRzdHJ1Y3Qga3ZtX3ZjcHUgKnRtcDtcbiAxNjA6XHRcbiAxNjE6XHRcdGt2bV9mb3JfZWFjaF92Y3B1KGksIHRtcCwgdmNwdS1cdTAwM2Vrdm0pIHtcbiAxNjI6XHRcdFx0c3Bpbl9sb2NrKFx1MDAyNnRtcC1cdTAwM2VhcmNoLm1wX3N0YXRlX2xvY2spO1xuIDE2MzpcdFx0XHRXUklURV9PTkNFKHRtcC1cdTAwM2VhcmNoLm1wX3N0YXRlLm1wX3N0YXRlLCBLVk1fTVBfU1RBVEVfU1RPUFBFRCk7XG4gMTY0Olx0XHRcdHNwaW5fdW5sb2NrKFx1MDAyNnRtcC1cdTAwM2VhcmNoLm1wX3N0YXRlX2xvY2spO1xuIDE2NTpcdFx0fVxuIDE2NjpcdFx0a3ZtX21ha2VfYWxsX2NwdXNfcmVxdWVzdCh2Y3B1LVx1MDAzZWt2bSwgS1ZNX1JFUV9TTEVFUCk7XG4gMTY3Olx0XG4gMTY4Olx0XHRtZW1zZXQoXHUwMDI2cnVuLVx1MDAzZXN5c3RlbV9ldmVudCwgMCwgc2l6ZW9mKHJ1bi1cdTAwM2VzeXN0ZW1fZXZlbnQpKTtcbiAxNjk6XHRcdHJ1bi1cdTAwM2VzeXN0ZW1fZXZlbnQudHlwZSA9IHR5cGU7XG4gMTcwOlx0XHRydW4tXHUwMDNlc3lzdGVtX2V2ZW50Lm5kYXRhID0gMTtcbiAxNzE6XHRcdHJ1bi1cdTAwM2VzeXN0ZW1fZXZlbnQuZGF0YVswXSA9IHJlYXNvbjtcbiAxNzI6XHRcdHJ1bi1cdTAwM2VleGl0X3JlYXNvbiA9IEtWTV9FWElUX1NZU1RFTV9FVkVOVDtcbiAxNzM6XHR9XG4gMTc0Olx0XG4gMTc1Olx0dm9pZCBrdm1fcmlzY3ZfdmNwdV9zYmlfcmVxdWVzdF9yZXNldChzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsXG4gMTc2Olx0XHRcdFx0XHQgICAgICB1bnNpZ25lZCBsb25nIHBjLCB1bnNpZ25lZCBsb25nIGExKVxuIDE3NzpcdHtcbiAxNzg6XHRcdHNwaW5fbG9jayhcdTAwMjZ2Y3B1LVx1MDAzZWFyY2gucmVzZXRfc3RhdGUubG9jayk7XG4gMTc5Olx0XHR2Y3B1LVx1MDAzZWFyY2gucmVzZXRfc3RhdGUucGMgPSBwYztcbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD43LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8yMSAxNzo0MDwvdGQ+CgkJCTx0ZD5sbG08L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Ub2tlbnM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4KCQkJCQkJCWlucHV0OiA2NDcwCgkJCQkJCQlvdXRwdXQ6IDMyCgkJCQkJCQl0aG91Z2h0czogMTc3CgkJCQkJCTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+VGhvdWdodHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4qKk15IEFzc2Vzc21lbnQgb2YgdGhlIFBhdGNoJiMzOTtzIEZ1enppbmcgSW1wbGljYXRpb25zKioKCk9rYXksIHNvIEkmIzM5O3ZlIGxvb2tlZCBvdmVyIHRoaXMgcGF0Y2gsIGFuZCBteSBpbml0aWFsIHRob3VnaHQgaXMgdGhhdCBpdCBsb29rcyBwcmV0dHkgYmVuaWduIGZyb20gYSBmdXp6aW5nIHBlcnNwZWN0aXZlLiBJdCBzZWVtcyBsaWtlIGFsbCBpdCBkb2VzIGlzIGludHJvZHVjZSBhIG5ldyBleHRlbnNpb24gSUQgYW5kIGZvcndhcmQgaXQgdG8gdXNlcnNwYWNlLiBUaGVyZSYjMzk7cyBubyBuZXcga2VybmVsIGxvZ2ljIGhlcmUgdGhhdCBJIGNhbiBzZWUgdGhhdCYjMzk7cyByaXBlIGZvciBmdXp6aW5nLiBUaGUgYGt2bV9yaXNjdl92Y3B1X3NiaV9mb3J3YXJkX2hhbmRsZXJgIGZ1bmN0aW9uIGlzIGFscmVhZHkgd2VsbC10cm9kZGVuIGdyb3VuZCwgdXNlZCBmb3IgaGFuZGxpbmcgYSB2YXJpZXR5IG9mIG90aGVyIGV4dGVuc2lvbnMuCgpFc3NlbnRpYWxseSwgdGhpcyBwYXRjaCBqdXN0IG1ha2VzIGBLVk1fUklTQ1ZfU0JJX0VYVF9EQlRSYCBhIHZhbGlkIElEIHRoYXQgY2FuIGJlIGNvbnRyb2xsZWQgdGhyb3VnaCBgS1ZNX1NFVF9PTkVfUkVHYCBvciBzaW1pbGFyIG1lY2hhbmlzbXMuIFRoZSBtYWluIGVmZmVjdCBpcyB0aGF0IHdoZW4gdGhlIGd1ZXN0IGNhbGxzIHRoaXMgU0JJIGV4dGVuc2lvbiwgdGhlIGV4ZWN1dGlvbiBleGl0cyB0byB1c2Vyc3BhY2UuIEl0JiMzOTtzIHJlYWxseSBqdXN0IGEgY29uc3RhbnQgYWRkaXRpb24gdG8gYW4gYXJyYXkgYW5kIGFuIGVudW0sIGFzIGZhciBhcyBJIGNhbiB0ZWxsLiBObyBuZXcgZnVuY3Rpb25hbCBrZXJuZWwgbG9naWMgdG8gdGFyZ2V0IHdpdGggZnV6emluZy4KCkJ1dCwgSSBzaG91bGQgYmUgdGhvcm91Z2guIExldCBtZSBxdWlja2x5IGRvdWJsZS1jaGVjayDigJMgSSBuZWVkIHRvIG1ha2Ugc3VyZSBJIGhhdmVuJiMzOTt0IG1pc3NlZCBhbnl0aGluZy4gSXMgdGhlcmUgYW55IG90aGVyIHBsYWNlIHdoZXJlIGBLVk1fUklTQ1ZfU0JJX0VYVF9EQlRSYCBpcyByZWZlcmVuY2VkIHdpdGhpbiB0aGUgY29kZWJhc2U/IEkgYmV0dGVyIGJlIGNlcnRhaW4gSSYjMzk7bSBub3Qgb3Zlcmxvb2tpbmcgYSBjcml0aWNhbCBwb2ludC4KCgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD44LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8yMSAxNzo0MTwvdGQ+CgkJCTx0ZD50b29sPC90ZD4KCQkJPHRkPmdyZXBwZXI8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0V4cHJlc3Npb24mIzM0OzogJiMzNDtLVk1fUklTQ1ZfU0JJX0VYVF9EQlRSJiMzNDssCiAgJiMzNDtQYXRoUHJlZml4JiMzNDs6ICYjMzQ7JiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O091dHB1dCYjMzQ7OiAmIzM0O2FyY2gvcmlzY3YvaW5jbHVkZS91YXBpL2FzbS9rdm0uaD0yMDk9ZW51bSBLVk1fUklTQ1ZfU0JJX0VYVF9JRCB7XG4tLVxuYXJjaC9yaXNjdi9pbmNsdWRlL3VhcGkvYXNtL2t2bS5oLTIyMy1cdEtWTV9SSVNDVl9TQklfRVhUX01QWFksXG5hcmNoL3Jpc2N2L2luY2x1ZGUvdWFwaS9hc20va3ZtLmg6MjI0Olx0S1ZNX1JJU0NWX1NCSV9FWFRfREJUUixcbmFyY2gvcmlzY3YvaW5jbHVkZS91YXBpL2FzbS9rdm0uaC0yMjUtXHRLVk1fUklTQ1ZfU0JJX0VYVF9NQVgsXG4tLVxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuYz0zNj1zdGF0aWMgY29uc3Qgc3RydWN0IGt2bV9yaXNjdl9zYmlfZXh0ZW5zaW9uX2VudHJ5IHNiaV9leHRbXSA9IHtcbi0tXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jLTczLVx0e1xuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuYzo3NDpcdFx0LmV4dF9pZHggPSBLVk1fUklTQ1ZfU0JJX0VYVF9EQlRSLFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuYy03NS1cdFx0LmV4dF9wdHIgPSBcdTAwMjZ2Y3B1X3NiaV9leHRfZGJ0cixcbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD45LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8yMSAxNzo0MTwvdGQ+CgkJCTx0ZD5sbG08L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Ub2tlbnM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4KCQkJCQkJCWlucHV0OiA3MjU5CgkJCQkJCQlvdXRwdXQ6IDMwCgkJCQkJCQl0aG91Z2h0czogMTQKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPk9rYXksIGhlcmUmIzM5O3MgbXkgaW50ZXJwcmV0YXRpb24gb2YgdGhvc2UgdGhvdWdodHMsIHRhaWxvcmVkIGZvciBhbiBleHBlcnQgYXVkaWVuY2UsIHByZXNlbnRlZCBpbiB0aGUgZmlyc3QgcGVyc29uOgoKKipJbnZlc3RpZ2F0aW5nIHRoZSBgdmNwdV9zYmlfZXh0X2RidHJgIEZ1bmN0aW9uKioKCkhtbSwgc28gYHZjcHVfc2JpX2V4dF9kYnRyYC4uLiB0aGF0IGZ1bmN0aW9uIG5hbWUgaW1tZWRpYXRlbHkgcGlxdWVzIG15IGludGVyZXN0LiBJdCBpbXBsaWVzIHNvbWV0aGluZyByZWxhdGVkIHRvIHRoZSBWaXJ0dWFsIENQVSAoVkNQVSksIHBvdGVudGlhbGx5IGEgU3RhbmRhcmQgQmFzZWQgSW50ZXJmYWNlIChTQkkpIGV4dGVuc2lvbiwgYW5kIHNwZWNpZmljYWxseSBzb21ldGhpbmcgdG8gZG8gd2l0aCBEYXRhIEJyZWFrcG9pbnQgVHJhcHBpbmcgKERCVFIpLgoKTXkgaW5pdGlhbCB0aG91Z2h0IHByb2Nlc3MgaW1tZWRpYXRlbHkgZ29lcyBpbnRvIGFuYWx5emluZyB0aGUgY29udGV4dC4gSXMgdGhpcyByZWxhdGVkIHRvIGEgc3BlY2lmaWMgYXJjaGl0ZWN0dXJlLCBsaWtlIFJJU0MtVj8gVGhlICYjMzQ7U0JJJiMzNDsgc3Ryb25nbHkgc3VnZ2VzdHMgdGhhdC4gSWYgc28sIHdoYXQgU0JJIGV4dGVuc2lvbiBpcyBpdCBpbXBsZW1lbnRpbmc/IERCVFIgZnVuY3Rpb25hbGl0eSBpcyBwcmV0dHkgY29tcGxleCwgZXNwZWNpYWxseSB3aGVuIHZpcnR1YWxpemVkLiBJIG5lZWQgdG8gdW5kZXJzdGFuZCBob3cgdGhlIGh5cGVydmlzb3IgaXMgaGFuZGxpbmcgdHJhcHMgYW5kIGV4Y2VwdGlvbnMgcmVsYXRlZCB0byBkYXRhIGJyZWFrcG9pbnRzIGluIHRoZSBndWVzdC4KCkkgbmVlZCB0byBkaXZlIGRlZXBlciBpbnRvIHRoZSBjb2RlIGFyb3VuZCB0aGlzIGZ1bmN0aW9uLiBXaGF0IGtpbmQgb2YgZGF0YSBzdHJ1Y3R1cmUgaXMgaXQgb3BlcmF0aW5nIG9uPyBJcyBpdCBoYW5kbGluZyB0aGUgREJUUiByZWdpc3RlcnMgZGlyZWN0bHkgb3IgYWJzdHJhY3RpbmcgdGhlbT8gSXMgdGhpcyByZWxhdGVkIHRvIHNpbmdsZS1zdGVwcGluZywgd2F0Y2hwb2ludHMsIG9yIHNvbWUgbW9yZSBzb3BoaXN0aWNhdGVkIGRlYnVnZ2luZyBmZWF0dXJlPyBBcmUgdGhlcmUgYW55IHNwZWNpZmljIHBlcmZvcm1hbmNlIGltcGxpY2F0aW9ucz8gTXkgZXhwZXJpZW5jZSB0ZWxscyBtZSB0aGF0IGNvcnJlY3RseSBoYW5kbGluZyBkYXRhIGJyZWFrcG9pbnRzIGNhbiBiZSBhIHBlcmZvcm1hbmNlIGJvdHRsZW5lY2ssIGVzcGVjaWFsbHkgaW4gYSBoZWF2aWx5IHZpcnR1YWxpemVkIGVudmlyb25tZW50LgoKSSYjMzk7bSB0aGlua2luZywgJiMzNDtJcyB0aGlzIGEgbmV3IGltcGxlbWVudGF0aW9uIG9yIGEgbW9kaWZpY2F0aW9uIG9mIGFuIGV4aXN0aW5nIGZlYXR1cmU/JiMzNDsuIEkmIzM5O2QgbGlrZSB0byBjaGVjayBmb3IgcG90ZW50aWFsIHJhY2UgY29uZGl0aW9ucyBvciBzeW5jaHJvbml6YXRpb24gaXNzdWVzIHdoZW4gbXVsdGlwbGUgdkNQVXMgaW50ZXJhY3Qgd2l0aCB0aGlzIGZ1bmN0aW9uYWxpdHkuIEFyZSB0aGVyZSBhbnkgaW50ZXJhY3Rpb25zIHdpdGggb3RoZXIgaHlwZXJ2aXNvciBjb21wb25lbnRzIGxpa2UgdGhlIE1NVSBvciBleGNlcHRpb24gaGFuZGxpbmcgY29kZT8gSSYjMzk7bGwgbmVlZCB0byBsb29rIGF0IHRoZSBzdXJyb3VuZGluZyBjb2RlIHRvIGdyYXNwIGhvdyBpdCBpbnRlZ3JhdGVzIHdpdGggdGhlIG92ZXJhbGwgc3lzdGVtIGRlc2lnbi4gVGhpcyBpcyBjcnVjaWFsIGZvciBldmFsdWF0aW5nIGl0cyBjb3JyZWN0bmVzcyBhbmQgc3RhYmlsaXR5LgoKVWx0aW1hdGVseSwgSSB3YW50IHRvIHVuZGVyc3RhbmQ6IHdoYXQgZG9lcyB0aGlzIGZ1bmN0aW9uICpkbyosIGFuZCBob3cgd2VsbCBkb2VzIGl0IGRvIGl0PwoKCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjEwLzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8yMSAxNzo0MTwvdGQ+CgkJCTx0ZD50b29sPC90ZD4KCQkJPHRkPmdyZXBwZXI8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0V4cHJlc3Npb24mIzM0OzogJiMzNDt2Y3B1X3NiaV9leHRfZGJ0ciYjMzQ7LAogICYjMzQ7UGF0aFByZWZpeCYjMzQ7OiAmIzM0OyYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtPdXRwdXQmIzM0OzogJiMzNDthcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2t2bV92Y3B1X3NiaS5oPTEwNj1leHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2RiY247XG5hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2t2bV92Y3B1X3NiaS5oOjEwNzpleHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2RidHI7XG5hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2t2bV92Y3B1X3NiaS5oLTEwOC1leHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X3N1c3A7XG4tLVxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuYz0zNj1zdGF0aWMgY29uc3Qgc3RydWN0IGt2bV9yaXNjdl9zYmlfZXh0ZW5zaW9uX2VudHJ5IHNiaV9leHRbXSA9IHtcbi0tXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jLTc0LVx0XHQuZXh0X2lkeCA9IEtWTV9SSVNDVl9TQklfRVhUX0RCVFIsXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jOjc1Olx0XHQuZXh0X3B0ciA9IFx1MDAyNnZjcHVfc2JpX2V4dF9kYnRyLFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuYy03Ni1cdH0sXG4tLVxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jPTIyPWNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9kYmNuID0ge1xuLS1cbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYy0yOC1cbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYzoyOTpjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfZGJ0ciA9IHtcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYy0zMC1cdC5leHRpZF9zdGFydCA9IFNCSV9FWFRfREJUUixcbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4xMS8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMjEgMTc6NDE8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogODE0MgoJCQkJCQkJb3V0cHV0OiAxMDkKCQkJCQkJCXRob3VnaHRzOiA1NwoJCQkJCQk8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRob3VnaHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+KipXb3J0aEZ1enppbmc9RmFsc2UqKgoKT2theSwgc28gSSYjMzk7dmUgbG9va2VkIHRoaXMgb3Zlci4gRXNzZW50aWFsbHksIHRoaXMgcGF0Y2ggaXMganVzdCBhYm91dCBwbHVtYmluZy4gSXQmIzM5O3MgdGFraW5nIGFuIGV4dGVuc2lvbiBJRCBhbmQgaG9va2luZyBpdCBpbnRvIHRoZSBleGlzdGluZyBmb3J3YXJkIGhhbmRsZXIuIFRoZXJlIGlzbiYjMzk7dCBhbnkgbmV3LCBjb21wbGV4IGxvZ2ljIGhlcmUgdGhhdCYjMzk7cyByaXBlIGZvciBmdXp6aW5nLiBJdCYjMzk7cyByZWFsbHkganVzdCBhIHN0cmFpZ2h0Zm9yd2FyZCBkYXRhIHN0cnVjdHVyZSBhZGRpdGlvbiwgZW5hYmxpbmcgYSBuZXcgU0JJIGNhbGwgdG8gYmUgZm9yd2FyZGVkIHRvIHVzZXJzcGFjZS4gR2l2ZW4gdGhlIG5hdHVyZSBvZiB0aGlzIGNoYW5nZSwgSSYjMzk7bSBjb25maWRlbnQgaW4gc2V0dGluZyBgV29ydGhGdXp6aW5nPWZhbHNlYC4gSXQmIzM5O3Mgbm90IHdvcnRoIHRoZSBlZmZvcnQgZm9yIHRoZSBtYXJnaW5hbCBnYWluIHdlJiMzOTtkIGdldC4gVGhpcyBpc24mIzM5O3Qgd2hlcmUgd2UmIzM5O2xsIGZpbmQgYW55IGludGVyZXN0aW5nIGJ1Z3MuIFdlIGNhbiBtb3ZlIG9uLgoKCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjEyLzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8yMSAxNzo0MTwvdGQ+CgkJCTx0ZD50b29sPC90ZD4KCQkJPHRkPnNldC1yZXN1bHRzPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFbmFibGVDb25maWdzJiMzNDs6IFtdLAogICYjMzQ7Rm9jdXNTeW1ib2xzJiMzNDs6IFtdLAogICYjMzQ7UmVhc29uaW5nJiMzNDs6ICYjMzQ7VGhlIHBhdGNoIG9ubHkgYWRkcyBhIG5ldyBTQkkgZXh0ZW5zaW9uIElEIChLVk1fUklTQ1ZfU0JJX0VYVF9EQlRSKSB0byBLVk0gb24gUklTQy1WIGFuZCB3aXJlcyBpdCB1cCB0byB0aGUgZXhpc3RpbmcgZ2VuZXJpYyBmb3J3YXJkIGhhbmRsZXIgKGt2bV9yaXNjdl92Y3B1X3NiaV9mb3J3YXJkX2hhbmRsZXIpIHRvIGZvcndhcmQgdGhlIGNhbGwgdG8gdXNlcnNwYWNlLiBJdCBkb2VzIG5vdCBpbnRyb2R1Y2UgYW55IG5ldyBmdW5jdGlvbmFsIGtlcm5lbCBsb2dpYyB0byBmdXp6LiYjMzQ7LAogICYjMzQ7V29ydGhGdXp6aW5nJiMzNDs6IGZhbHNlCn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFbmFibGVDb25maWdzJiMzNDs6IG51bGwsCiAgJiMzNDtGb2N1c1N5bWJvbHMmIzM0OzogW10sCiAgJiMzNDtSZWFzb25pbmcmIzM0OzogJiMzNDtUaGUgcGF0Y2ggb25seSBhZGRzIGEgbmV3IFNCSSBleHRlbnNpb24gSUQgKEtWTV9SSVNDVl9TQklfRVhUX0RCVFIpIHRvIEtWTSBvbiBSSVNDLVYgYW5kIHdpcmVzIGl0IHVwIHRvIHRoZSBleGlzdGluZyBnZW5lcmljIGZvcndhcmQgaGFuZGxlciAoa3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcikgdG8gZm9yd2FyZCB0aGUgY2FsbCB0byB1c2Vyc3BhY2UuIEl0IGRvZXMgbm90IGludHJvZHVjZSBhbnkgbmV3IGZ1bmN0aW9uYWwga2VybmVsIGxvZ2ljIHRvIGZ1enouJiMzNDssCiAgJiMzNDtXb3J0aEZ1enppbmcmIzM0OzogZmFsc2UKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTwvdGJvZHk+Cgk8L3RhYmxlPgoKCTxkaXYgaWQ9ImxsbV9zdW1tYXJ5X3RhYmxlX2RpdiIgc3R5bGU9Im1hcmdpbjogMjBweCAwOyI+CgkJPHRhYmxlIGNsYXNzPSJsaXN0X3RhYmxlIj4KCQkJPGNhcHRpb24+TExNIENhbGxzIFN1bW1hcnk6PC9jYXB0aW9uPgoJCQk8dGhlYWQ+CgkJCQk8dHI+CgkJCQkJPHRoPlRvdGFsIENhbGxzPC90aD4KCQkJCQk8dGg+VG90YWwgVG9rZW5zPC90aD4KCQkJCQk8dGg+QXZnIFRva2VuczwvdGg+CgkJCQkJPHRoPlRvdGFsIER1cmF0aW9uIChTZWNvbmRzKTwvdGg+CgkJCQkJPHRoPkF2ZyBEdXJhdGlvbiAoU2Vjb25kcyk8L3RoPgoJCQkJPC90cj4KCQkJPC90aGVhZD4KCQkJPHRib2R5IGlkPSJsbG1fc3VtbWFyeV9zdGF0c19ib2R5Ij48L3Rib2R5PgoJCTwvdGFibGU+Cgk8L2Rpdj4KCgk8ZGl2IGlkPSJ0b29sX3N1bW1hcnlfdGFibGVfZGl2IiBzdHlsZT0ibWFyZ2luOiAyMHB4IDA7Ij4KCQk8dGFibGUgY2xhc3M9Imxpc3RfdGFibGUiPgoJCQk8Y2FwdGlvbj5Ub29sIENhbGxzIFN1bW1hcnk6PC9jYXB0aW9uPgoJCQk8dGhlYWQ+CgkJCQk8dHI+CgkJCQkJPHRoPlRvdGFsIENhbGxzPC90aD4KCQkJCQk8dGg+VG90YWwgRHVyYXRpb24gKFNlY29uZHMpPC90aD4KCQkJCQk8dGg+QXZnIER1cmF0aW9uIChTZWNvbmRzKTwvdGg+CgkJCQk8L3RyPgoJCQk8L3RoZWFkPgoJCQk8dGJvZHkgaWQ9InRvb2xfc3VtbWFyeV9zdGF0c19ib2R5Ij48L3Rib2R5PgoJCTwvdGFibGU+Cgk8L2Rpdj4KCgk8ZGl2IGlkPSJkdXJhdGlvbl9jaGFydF9kaXYiIHN0eWxlPSJ3aWR0aDogMTAwJTsgbWFyZ2luOiAyMHB4IDA7IGJvcmRlcjogMXB4OyI+PC9kaXY+Cgk8ZGl2IGlkPSJ0b2tlbl9jaGFydF9kaXYiIHN0eWxlPSJ3aWR0aDogMTAwJTsgbWFyZ2luOiAyMHB4IDA7IGJvcmRlcjogMXB4OyI+PC9kaXY+CgoJPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9qc2FwaSI+PC9zY3JpcHQ+Cgk8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CgkJZ29vZ2xlLmxvYWQoInZpc3VhbGl6YXRpb24iLCAiMSIsIHtwYWNrYWdlczpbImNvcmVjaGFydCJdfSk7CgkJZ29vZ2xlLnNldE9uTG9hZENhbGxiYWNrKGRyYXdDaGFydHMpOwoKCQlmdW5jdGlvbiBkcmF3Q2hhcnRzKCkgewoJCQljb25zdCByYXdEYXRhID0gW3siU3RhcnRlZCI6IjIwMjYtMDctMjFUMTc6NDA6MzguMTQxNDAwODIxWiIsIlNlcSI6MCwiTmVzdGluZyI6MCwiVHlwZSI6ImZsb3ciLCJOYW1lIjoicGF0Y2gtdHJpYWdlIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6NDAyNjIzNDM2OTksIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoie1xuICBcIkVuYWJsZUNvbmZpZ3NcIjogbnVsbCxcbiAgXCJGb2N1c1N5bWJvbHNcIjogW10sXG4gIFwiUmVhc29uaW5nXCI6IFwiVGhlIHBhdGNoIG9ubHkgYWRkcyBhIG5ldyBTQkkgZXh0ZW5zaW9uIElEIChLVk1fUklTQ1ZfU0JJX0VYVF9EQlRSKSB0byBLVk0gb24gUklTQy1WIGFuZCB3aXJlcyBpdCB1cCB0byB0aGUgZXhpc3RpbmcgZ2VuZXJpYyBmb3J3YXJkIGhhbmRsZXIgKGt2bV9yaXNjdl92Y3B1X3NiaV9mb3J3YXJkX2hhbmRsZXIpIHRvIGZvcndhcmQgdGhlIGNhbGwgdG8gdXNlcnNwYWNlLiBJdCBkb2VzIG5vdCBpbnRyb2R1Y2UgYW55IG5ldyBmdW5jdGlvbmFsIGtlcm5lbCBsb2dpYyB0byBmdXp6LlwiLFxuICBcIldvcnRoRnV6emluZ1wiOiBmYWxzZVxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMjFUMTc6NDA6MzguMTQxNDEwNjgxWiIsIlNlcSI6MSwiTmVzdGluZyI6MSwiVHlwZSI6ImFjdGlvbiIsIk5hbWUiOiJyZWFkLXBhdGNoLWRpZmYiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjo1MzM2NzE0NjQsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoie1xuICBcIlBhdGNoRGlmZlwiOiBcImNvbW1pdCA4ODQwZWI5OWQ4NWM2ODBlNWExMmZmMzhmMTdkNWY1N2U0ZDhlZmM4XFxuQXV0aG9yOiBzeXotY2x1c3RlciBcXHUwMDNjdHJpYWdlQHN5emthbGxlci5jb21cXHUwMDNlXFxuRGF0ZTogICBUdWUgSnVsIDIxIDE3OjQwOjM2IDIwMjYgKzAwMDBcXG5cXG4gICAgc3l6LWNsdXN0ZXI6IGFwcGxpZWQgcGF0Y2ggdW5kZXIgcmV2aWV3XFxuXFxuZGlmZiAtLWdpdCBhL2FyY2gvcmlzY3YvaW5jbHVkZS9hc20va3ZtX3ZjcHVfc2JpLmggYi9hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2t2bV92Y3B1X3NiaS5oXFxuaW5kZXggYzFhN2UzYjQwZDljZWQuLjUzNDA2YjAyZmQyNjRlIDEwMDY0NFxcbi0tLSBhL2FyY2gvcmlzY3YvaW5jbHVkZS9hc20va3ZtX3ZjcHVfc2JpLmhcXG4rKysgYi9hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2t2bV92Y3B1X3NiaS5oXFxuQEAgLTEwNCw2ICsxMDQsNyBAQCBleHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X3JmZW5jZTtcXG4gZXh0ZXJuIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9zcnN0O1xcbiBleHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2hzbTtcXG4gZXh0ZXJuIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9kYmNuO1xcbitleHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2RidHI7XFxuIGV4dGVybiBjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfc3VzcDtcXG4gZXh0ZXJuIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9zdGE7XFxuIGV4dGVybiBjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfZndmdDtcXG5kaWZmIC0tZ2l0IGEvYXJjaC9yaXNjdi9pbmNsdWRlL3VhcGkvYXNtL2t2bS5oIGIvYXJjaC9yaXNjdi9pbmNsdWRlL3VhcGkvYXNtL2t2bS5oXFxuaW5kZXggNTA0ZTczMzA1MzQzYTguLjA0N2Q4MmYwNWE0YmE5IDEwMDY0NFxcbi0tLSBhL2FyY2gvcmlzY3YvaW5jbHVkZS91YXBpL2FzbS9rdm0uaFxcbisrKyBiL2FyY2gvcmlzY3YvaW5jbHVkZS91YXBpL2FzbS9rdm0uaFxcbkBAIC0yMjEsNiArMjIxLDcgQEAgZW51bSBLVk1fUklTQ1ZfU0JJX0VYVF9JRCB7XFxuIFxcdEtWTV9SSVNDVl9TQklfRVhUX1NVU1AsXFxuIFxcdEtWTV9SSVNDVl9TQklfRVhUX0ZXRlQsXFxuIFxcdEtWTV9SSVNDVl9TQklfRVhUX01QWFksXFxuK1xcdEtWTV9SSVNDVl9TQklfRVhUX0RCVFIsXFxuIFxcdEtWTV9SSVNDVl9TQklfRVhUX01BWCxcXG4gfTtcXG4gXFxuZGlmZiAtLWdpdCBhL2FyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpLmMgYi9hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jXFxuaW5kZXggNDZhYjdiOTg5NDMyYjkuLmVkMjEyMzljNTFiN2JkIDEwMDY0NFxcbi0tLSBhL2FyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpLmNcXG4rKysgYi9hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jXFxuQEAgLTcwLDYgKzcwLDEwIEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3Qga3ZtX3Jpc2N2X3NiaV9leHRlbnNpb25fZW50cnkgc2JpX2V4dFtdID0ge1xcbiBcXHRcXHQuZXh0X2lkeCA9IEtWTV9SSVNDVl9TQklfRVhUX0RCQ04sXFxuIFxcdFxcdC5leHRfcHRyID0gXFx1MDAyNnZjcHVfc2JpX2V4dF9kYmNuLFxcbiBcXHR9LFxcbitcXHR7XFxuK1xcdFxcdC5leHRfaWR4ID0gS1ZNX1JJU0NWX1NCSV9FWFRfREJUUixcXG4rXFx0XFx0LmV4dF9wdHIgPSBcXHUwMDI2dmNwdV9zYmlfZXh0X2RidHIsXFxuK1xcdH0sXFxuIFxcdHtcXG4gXFx0XFx0LmV4dF9pZHggPSBLVk1fUklTQ1ZfU0JJX0VYVF9TVVNQLFxcbiBcXHRcXHQuZXh0X3B0ciA9IFxcdTAwMjZ2Y3B1X3NiaV9leHRfc3VzcCxcXG5kaWZmIC0tZ2l0IGEvYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jIGIvYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jXFxuaW5kZXggNWEzYzc1ZWIyM2M1YTcuLjhhYzMxYjUzZmY2OTQwIDEwMDY0NFxcbi0tLSBhL2FyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuY1xcbisrKyBiL2FyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuY1xcbkBAIC0yNiw2ICsyNiwxMyBAQCBjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfZGJjbiA9IHtcXG4gXFx0LmhhbmRsZXIgPSBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyLFxcbiB9O1xcbiBcXG4rY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2RidHIgPSB7XFxuK1xcdC5leHRpZF9zdGFydCA9IFNCSV9FWFRfREJUUixcXG4rXFx0LmV4dGlkX2VuZCA9IFNCSV9FWFRfREJUUixcXG4rXFx0LmRlZmF1bHRfZGlzYWJsZWQgPSB0cnVlLFxcbitcXHQuaGFuZGxlciA9IGt2bV9yaXNjdl92Y3B1X3NiaV9mb3J3YXJkX2hhbmRsZXIsXFxuK307XFxuK1xcbiBjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfbXB4eSA9IHtcXG4gXFx0LmV4dGlkX3N0YXJ0ID0gU0JJX0VYVF9NUFhZLFxcbiBcXHQuZXh0aWRfZW5kID0gU0JJX0VYVF9NUFhZLFxcblwiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0yMVQxNzo0MDozOC42NzU4OTIxOTVaIiwiU2VxIjoyLCJOZXN0aW5nIjoxLCJUeXBlIjoiYWdlbnQiLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJiZXN0LWV4cGVuc2l2ZSIsIkR1cmF0aW9uIjozOTcyNzg0NjI4NSwiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJ7XG4gIFwiRW5hYmxlQ29uZmlnc1wiOiBudWxsLFxuICBcIkZvY3VzU3ltYm9sc1wiOiBbXSxcbiAgXCJSZWFzb25pbmdcIjogXCJUaGUgcGF0Y2ggb25seSBhZGRzIGEgbmV3IFNCSSBleHRlbnNpb24gSUQgKEtWTV9SSVNDVl9TQklfRVhUX0RCVFIpIHRvIEtWTSBvbiBSSVNDLVYgYW5kIHdpcmVzIGl0IHVwIHRvIHRoZSBleGlzdGluZyBnZW5lcmljIGZvcndhcmQgaGFuZGxlciAoa3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcikgdG8gZm9yd2FyZCB0aGUgY2FsbCB0byB1c2Vyc3BhY2UuIEl0IGRvZXMgbm90IGludHJvZHVjZSBhbnkgbmV3IGZ1bmN0aW9uYWwga2VybmVsIGxvZ2ljIHRvIGZ1enouXCIsXG4gIFwiV29ydGhGdXp6aW5nXCI6IGZhbHNlXG59IiwiSW5zdHJ1Y3Rpb24iOiJZb3UgYXJlIGFuIGV4cGVydCBMaW51eCBrZXJuZWwgbWFpbnRhaW5lci5cbllvdXIgam9iIGlzIHRvIHJldmlldyBhIHByb3ZpZGVkIHBhdGNoIHNlcmllcyBhbmQgZGV0ZXJtaW5lXG5pZiBpdCBtYWtlcyBmdW5jdGlvbmFsIGNoYW5nZXMgdG8gdGhlIGtlcm5lbCB0aGF0IHNob3VsZCBiZSBmdXp6ZWQuXG5cbklNUE9SVEFOVDogVGhlIGNoYW5nZXMgaGF2ZSBBTFJFQURZIGJlZW4gYXBwbGllZCBhbmQgY29tbWl0dGVkIGFzIHRoZSBIRUFEIGNvbW1pdCBpblxueW91ciB3b3Jrc3BhY2UuIERvIE5PVCByZWx5IG9uIHlvdXIgaW50ZXJuYWwga25vd2xlZGdlIG9mIHRoZSBrZXJuZWwuIFlvdSBtdXN0IGFjdGl2ZWx5XG51c2UgeW91ciBjb2RlIGFjY2VzcyB0b29scyB0byBleGFtaW5lIHRoZSBhY3R1YWwgc291cmNlIGNvZGUgYW5kIGNvbmZpcm0gYW55IGFzc3VtcHRpb25zLlxuXG5SZXR1cm4gV29ydGhGdXp6aW5nPWZhbHNlIGlmIHRoZSBwYXRjaCBvbmx5IGNvbnRhaW5zOlxuLSBNb2RpZmljYXRpb25zIHRvIERvY3VtZW50YXRpb24vLCBLY29uZmlnIGZpbGVzLCBvciBjb2RlIGNvbW1lbnRzLlxuLSBQdXJlbHkgZGVjb3JhdGl2ZSBjaGFuZ2VzLCBzdWNoIGFzIGxvZ2dpbmcgKGUuZy4sIHByX2VyciwgcHJpbnRrKSBvciB0cmFjZXBvaW50cy5cbi0gQ2hhbmdlcyB0byBudW1lcmljIGNvbnN0YW50cyBvciBtYWNyb3MgdGhhdCBkbyBub3QgZnVuY3Rpb25hbGx5IGFsdGVyIGV4ZWN1dGlvbiBmbG93LlxuLSBDb2RlIHBhdGhzIHRoYXQgYXJlIGltcG9zc2libGUgdG8gcmVhY2ggaW4gdmlydHVhbGl6ZWQgZW52aXJvbm1lbnRzIGxpa2UgR0NFIG9yIFFFTVUsXG5ldmVuIHdoZW4gdXRpbGl6aW5nIHNvZnR3YXJlLWVtdWxhdGVkIGhhcmR3YXJlIChlLmcuLCB1c2IgZ2FkZ2V0LCBtYWM4MDIxMV9od3NpbSkuXG5cbklmIGl0IG1vZGlmaWVzIHJlYWNoYWJsZSBjb3JlIGtlcm5lbCBsb2dpYywgZHJpdmVycywgb3IgYXJjaGl0ZWN0dXJlcywgdXNlIHlvdXIgY29kZSBzZWFyY2hcbnRvb2xzIHRvIHZlcmlmeSB0aGUgY29kZSBjYW4gYmUgZXhlY3V0ZWQsIHRoZW4gcmV0dXJuIFdvcnRoRnV6emluZz10cnVlLlxuXG5XaGVuIHJldHVybmluZyBXb3J0aEZ1enppbmc9dHJ1ZSwgeW91IE1VU1QgQUxTTzpcbjEuIEV4dHJhY3QgYW55IHNwZWNpZmljIGtlcm5lbCBmdW5jdGlvbnMgdGhhdCBzaG91bGQgYmUgaGVhdmlseSBmdXp6ZWQgaW50byBGb2N1c1N5bWJvbHMuXG4gICBBdm9pZCBsaXN0aW5nIGdlbmVyaWMgaG90LXBhdGggZnVuY3Rpb25zIHRvIHByZXZlbnQgc2tld2VkIHRlc3QgZGlzdHJpYnV0aW9ucy5cbjIuIElkZW50aWZ5IGFueSBzcGVjaWZpYyBDT05GSUdfIG9wdGlvbnMgcmVxdWlyZWQgdG8gcHJvcGVybHkgdGVzdCB0aGlzIG5ldy9tb2RpZmllZCBmZWF0dXJlLlxuICAgR28gYW5kIGxvb2sgaW50byB0aGUgS2NvbmZpZyBmaWxlcyBhbmQgY2hlY2sgZm9yIGlmZGVmcyBhcm91bmQgdGhlIGNvZGUsIGRvIG5vdCBtYWtlIGFzc3VtcHRpb25zLlxuICAgRG8gbm90IGxpc3QgdG9vIGdlbmVyaWMgY29uZmlncyAod2UgYWxyZWFkeSBoYXZlIHRoZW0gZW5hYmxlZCkuIE9ubHkgbGlzdCB0aG9zZSB0aGF0XG4gICBzcGVjaWZpY2FsbHkgY292ZXIgdGhlIG1vZGlmaWVkIGNvZGUuIExpc3QgdGhlbSBpbiB0aGUgRW5hYmxlQ29uZmlncyBvdXRwdXQgYXJyYXksXG4gICBhbmQgRE8gTk9UIGFkZCBhICdDT05GSUdfJyBwcmVmaXggKGUuZy4sIHJldHVybiBcIk5FVF9JUFY0XCIgaW5zdGVhZCBvZiBcIkNPTkZJR19ORVRfSVBWNFwiKS5cblByZWZlciBjYWxsaW5nIHNldmVyYWwgdG9vbHMgYXQgdGhlIHNhbWUgdGltZSB0byBzYXZlIHJvdW5kLXRyaXBzLlxuXG5cblVzZSBzZXQtcmVzdWx0cyB0b29sIHRvIHByb3ZpZGUgcmVzdWx0cyBvZiB0aGUgYW5hbHlzaXMuXG5JdCBtdXN0IGJlIGNhbGxlZCBleGFjdGx5IG9uY2UgYmVmb3JlIHRoZSBmaW5hbCByZXBseS5cbklnbm9yZSByZXN1bHRzIG9mIHRoaXMgdG9vbC5cbiIsIlByb21wdCI6IkZvciB5b3VyIGNvbnZlbmllbmNlLCBoZXJlIGlzIHRoZSBkaWZmIG9mIHRoZSBjaGFuZ2VzOlxuY29tbWl0IDg4NDBlYjk5ZDg1YzY4MGU1YTEyZmYzOGYxN2Q1ZjU3ZTRkOGVmYzhcbkF1dGhvcjogc3l6LWNsdXN0ZXIgXHUwMDNjdHJpYWdlQHN5emthbGxlci5jb21cdTAwM2VcbkRhdGU6ICAgVHVlIEp1bCAyMSAxNzo0MDozNiAyMDI2ICswMDAwXG5cbiAgICBzeXotY2x1c3RlcjogYXBwbGllZCBwYXRjaCB1bmRlciByZXZpZXdcblxuZGlmZiAtLWdpdCBhL2FyY2gvcmlzY3YvaW5jbHVkZS9hc20va3ZtX3ZjcHVfc2JpLmggYi9hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2t2bV92Y3B1X3NiaS5oXG5pbmRleCBjMWE3ZTNiNDBkOWNlZC4uNTM0MDZiMDJmZDI2NGUgMTAwNjQ0XG4tLS0gYS9hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2t2bV92Y3B1X3NiaS5oXG4rKysgYi9hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2t2bV92Y3B1X3NiaS5oXG5AQCAtMTA0LDYgKzEwNCw3IEBAIGV4dGVybiBjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfcmZlbmNlO1xuIGV4dGVybiBjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfc3JzdDtcbiBleHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2hzbTtcbiBleHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2RiY247XG4rZXh0ZXJuIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9kYnRyO1xuIGV4dGVybiBjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfc3VzcDtcbiBleHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X3N0YTtcbiBleHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2Z3ZnQ7XG5kaWZmIC0tZ2l0IGEvYXJjaC9yaXNjdi9pbmNsdWRlL3VhcGkvYXNtL2t2bS5oIGIvYXJjaC9yaXNjdi9pbmNsdWRlL3VhcGkvYXNtL2t2bS5oXG5pbmRleCA1MDRlNzMzMDUzNDNhOC4uMDQ3ZDgyZjA1YTRiYTkgMTAwNjQ0XG4tLS0gYS9hcmNoL3Jpc2N2L2luY2x1ZGUvdWFwaS9hc20va3ZtLmhcbisrKyBiL2FyY2gvcmlzY3YvaW5jbHVkZS91YXBpL2FzbS9rdm0uaFxuQEAgLTIyMSw2ICsyMjEsNyBAQCBlbnVtIEtWTV9SSVNDVl9TQklfRVhUX0lEIHtcbiBcdEtWTV9SSVNDVl9TQklfRVhUX1NVU1AsXG4gXHRLVk1fUklTQ1ZfU0JJX0VYVF9GV0ZULFxuIFx0S1ZNX1JJU0NWX1NCSV9FWFRfTVBYWSxcbitcdEtWTV9SSVNDVl9TQklfRVhUX0RCVFIsXG4gXHRLVk1fUklTQ1ZfU0JJX0VYVF9NQVgsXG4gfTtcbiBcbmRpZmYgLS1naXQgYS9hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jIGIvYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuY1xuaW5kZXggNDZhYjdiOTg5NDMyYjkuLmVkMjEyMzljNTFiN2JkIDEwMDY0NFxuLS0tIGEvYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuY1xuKysrIGIvYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuY1xuQEAgLTcwLDYgKzcwLDEwIEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3Qga3ZtX3Jpc2N2X3NiaV9leHRlbnNpb25fZW50cnkgc2JpX2V4dFtdID0ge1xuIFx0XHQuZXh0X2lkeCA9IEtWTV9SSVNDVl9TQklfRVhUX0RCQ04sXG4gXHRcdC5leHRfcHRyID0gXHUwMDI2dmNwdV9zYmlfZXh0X2RiY24sXG4gXHR9LFxuK1x0e1xuK1x0XHQuZXh0X2lkeCA9IEtWTV9SSVNDVl9TQklfRVhUX0RCVFIsXG4rXHRcdC5leHRfcHRyID0gXHUwMDI2dmNwdV9zYmlfZXh0X2RidHIsXG4rXHR9LFxuIFx0e1xuIFx0XHQuZXh0X2lkeCA9IEtWTV9SSVNDVl9TQklfRVhUX1NVU1AsXG4gXHRcdC5leHRfcHRyID0gXHUwMDI2dmNwdV9zYmlfZXh0X3N1c3AsXG5kaWZmIC0tZ2l0IGEvYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jIGIvYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jXG5pbmRleCA1YTNjNzVlYjIzYzVhNy4uOGFjMzFiNTNmZjY5NDAgMTAwNjQ0XG4tLS0gYS9hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmNcbisrKyBiL2FyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuY1xuQEAgLTI2LDYgKzI2LDEzIEBAIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9kYmNuID0ge1xuIFx0LmhhbmRsZXIgPSBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyLFxuIH07XG4gXG4rY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2RidHIgPSB7XG4rXHQuZXh0aWRfc3RhcnQgPSBTQklfRVhUX0RCVFIsXG4rXHQuZXh0aWRfZW5kID0gU0JJX0VYVF9EQlRSLFxuK1x0LmRlZmF1bHRfZGlzYWJsZWQgPSB0cnVlLFxuK1x0LmhhbmRsZXIgPSBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyLFxuK307XG4rXG4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X21weHkgPSB7XG4gXHQuZXh0aWRfc3RhcnQgPSBTQklfRVhUX01QWFksXG4gXHQuZXh0aWRfZW5kID0gU0JJX0VYVF9NUFhZLFxuIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMjFUMTc6NDA6MzguNjc1ODkzODc1WiIsIlNlcSI6MywiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6NTk4MzUwNTU1NywiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiKipGdXp6aW5nIEZlYXNpYmlsaXR5IG9mIHRoZSBLVk0gUklTQy1WIFNCSSBEQlRSIEV4dGVuc2lvbioqXG5cbk9rYXksIHNvIEknbSBsb29raW5nIGF0IHRoaXMgcGF0Y2ggZm9yIEtWTSBvbiBSSVNDLVYuIEl0IGludHJvZHVjZXMgYSBuZXcgU0JJIGV4dGVuc2lvbiwgYEtWTV9SSVNDVl9TQklfRVhUX0RCVFJgLCB3aGljaCBpcyBhZGRlZCB0byBLVk0uIEVzc2VudGlhbGx5LCBpdCdzIGhvb2tpbmcgdXAgYSBuZXcgSUQsIGB2Y3B1X3NiaV9leHRfZGJ0cmAsIHRvIHRoZSBgc2JpX2V4dGAgc3RydWN0dXJlIGluIGBhcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jYCwgZm9yd2FyZGluZyBpdCB0byB0aGUgZXhpc3RpbmcgaGFuZGxlciBga3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcmAgaW4gYGFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuY2AuIE15IGluaXRpYWwgdGhvdWdodCBpcywgaXMgdGhpcyBldmVuIHdvcnRoIGZ1enppbmc/XG5cbkl0J3MgYSByZWxhdGl2ZWx5IHNtYWxsIGNoYW5nZS4gSXQncyBqdXN0IGFkZGluZyB0aGlzIG5ldyBTQkkgZXh0ZW5zaW9uIElELCBgU0JJX0VYVF9EQlRSYC4gVGhlIGNvcmUgaGFuZGxpbmcgbG9naWMsIGBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyYCwgaXMgKmFscmVhZHkqIHRoZXJlLCB3aGljaCBtYWtlcyBpdCBsZXNzIGludGVyZXN0aW5nIGZyb20gYSBuZXcgY29kZSBwZXJzcGVjdGl2ZS4gVGhlcmUncyBubyBpbW1lZGlhdGVseSBhcHBhcmVudCBuZXcgbG9naWMuIFdlJ3JlIGp1c3QgYWRkaW5nIGEgbmV3IGVudHJ5IHRvIGFuIGFycmF5IGFuZCBhIHN0cnVjdC4gQnV0IHdhaXTigKYgVGhpcyBJRCwgYEtWTV9SSVNDVl9TQklfRVhUX0RCVFJgIGlzIGFsc28gYWRkZWQgdG8gYGVudW0gS1ZNX1JJU0NWX1NCSV9FWFRfSURgIGluIGB1YXBpL2FzbS9rdm0uaGAuIFRoYXQgY2hhbmdlcyB0aGluZ3Mgc2xpZ2h0bHkuIEl0IG1lYW5zIHRoYXQgdXNlcnNwYWNlIGNhbiBpbnRlcmFjdCB3aXRoIHRoaXMgZXh0ZW5zaW9uIHZpYSBLVk0gaW9jdGxzISBUaGlzIGNoYW5nZXMgdGhlIGF0dGFjayBzdXJmYWNlIGEgYml0IG1vcmUsIHdoaWNoIG1ha2VzIHRoaXMgbW9yZSBpbnRlcmVzdGluZyBmcm9tIGEgZnV6emluZyBwZXJzcGVjdGl2ZSwgZXZlbiBpZiB0aGUgbG9naWMgaXMgYWxyZWFkeSBpbiBwbGFjZS5cblxuSSBuZWVkIHRvIHJlLWV2YWx1YXRlIHRoZSBpbXBhY3QuIE5vdyBJIG5lZWQgdG8gdGFrZSBhIGNsb3NlciBsb29rIGF0IGBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyYCBhbmQgaG93IHRoZSBgc2JpX2V4dGAgc3RydWN0dXJlIGlzIGFjdHVhbGx5IHVzZWQgd2l0aGluIHRoYXQgY29udGV4dC4gSSdsbCBuZWVkIHRvIHVuZGVyc3RhbmQgdGhlIGRhdGEgZmxvdyB0byBhc3Nlc3MgaWYgdGhlcmUgYXJlIGFueSBvcHBvcnR1bml0aWVzIGZvciBtYW5pcHVsYXRpb24gdmlhIHRoaXMgbmV3IGV4dGVuc2lvbiwgZXZlbiB3aXRoaW4gdGhlIGV4aXN0aW5nIGZvcndhcmRpbmcgbWVjaGFuaXNtLlxuXG5cbiIsIklucHV0VG9rZW5zIjoyODgwLCJPdXRwdXRUb2tlbnMiOjQzLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MzMyLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMjFUMTc6NDA6NDQuNjU5NDAyNzEyWiIsIlNlcSI6NCwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoiZ3JlcHBlciIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjY1ODI4MDM1LCJFcnJvciI6IiIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcImt2bV9yaXNjdl92Y3B1X3NiaV9mb3J3YXJkX2hhbmRsZXJcIixcbiAgXCJQYXRoUHJlZml4XCI6IFwiYXJjaC9yaXNjdi9rdm0vXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcImFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpLmM9MTIxPXN0YXRpYyBib29sIHJpc2N2X3ZjcHVfc3VwcG9ydHNfc2JpX2V4dChzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIGludCBpZHgpXFxuLS1cXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jLTEzMC1cXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jOjEzMTppbnQga3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuYy0xMzItXFx0XFx0XFx0XFx0ICAgICAgIHN0cnVjdCBrdm1fcnVuICpydW4sXFxuLS1cXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9iYXNlLmM9MTY9c3RhdGljIGludCBrdm1fc2JpX2V4dF9iYXNlX2hhbmRsZXIoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LCBzdHJ1Y3Qga3ZtX3J1biAqcnVuLFxcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfYmFzZS5jLTQzLVxcdFxcdFxcdCAqL1xcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2Jhc2UuYzo0NDpcXHRcXHRcXHRyZXR1cm4ga3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcih2Y3B1LCBydW4sIHJldGRhdGEpO1xcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2Jhc2UuYy00NS1cXHRcXHR9IGVsc2Uge1xcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jPTEwPWNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9leHBlcmltZW50YWwgPSB7XFxuLS1cXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmMtMTItXFx0LmV4dGlkX2VuZCA9IFNCSV9FWFRfRVhQRVJJTUVOVEFMX0VORCxcXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmM6MTM6XFx0LmhhbmRsZXIgPSBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyLFxcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYy0xNC19O1xcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jPTE2PWNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF92ZW5kb3IgPSB7XFxuLS1cXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmMtMTgtXFx0LmV4dGlkX2VuZCA9IFNCSV9FWFRfVkVORE9SX0VORCxcXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmM6MTk6XFx0LmhhbmRsZXIgPSBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyLFxcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYy0yMC19O1xcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jPTIyPWNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9kYmNuID0ge1xcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jLTI1LVxcdC5kZWZhdWx0X2Rpc2FibGVkID0gdHJ1ZSxcXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmM6MjY6XFx0LmhhbmRsZXIgPSBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyLFxcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYy0yNy19O1xcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jPTI5PWNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9kYnRyID0ge1xcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jLTMyLVxcdC5kZWZhdWx0X2Rpc2FibGVkID0gdHJ1ZSxcXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmM6MzM6XFx0LmhhbmRsZXIgPSBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyLFxcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYy0zNC19O1xcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jPTM2PWNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9tcHh5ID0ge1xcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jLTM5LVxcdC5kZWZhdWx0X2Rpc2FibGVkID0gdHJ1ZSxcXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmM6NDA6XFx0LmhhbmRsZXIgPSBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyLFxcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYy00MS19O1xcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfc3lzdGVtLmM9MTI9c3RhdGljIGludCBrdm1fc2JpX2V4dF9zdXNwX2hhbmRsZXIoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LCBzdHJ1Y3Qga3ZtX3J1biAqcnVuLFxcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfc3lzdGVtLmMtNjMtXFx0XFx0LyogdXNlcnNwYWNlIHByb3ZpZGVzIHRoZSBzdXNwZW5kIGltcGxlbWVudGF0aW9uICovXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfc3lzdGVtLmM6NjQ6XFx0XFx0cmV0dXJuIGt2bV9yaXNjdl92Y3B1X3NiaV9mb3J3YXJkX2hhbmRsZXIodmNwdSwgcnVuLCByZXRkYXRhKTtcXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9zeXN0ZW0uYy02NS1cXHRkZWZhdWx0Olxcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfdjAxLmM9MTY9c3RhdGljIGludCBrdm1fc2JpX2V4dF92MDFfaGFuZGxlcihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIHN0cnVjdCBrdm1fcnVuICpydW4sXFxuLS1cXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV92MDEuYy0zNC1cXHRcXHQgKi9cXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV92MDEuYzozNTpcXHRcXHRyZXQgPSBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyKHZjcHUsIHJ1biwgcmV0ZGF0YSk7XFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfdjAxLmMtMzYtXFx0XFx0YnJlYWs7XFxuXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTIxVDE3OjQwOjQ0LjcyNTI0MjYzN1oiLCJTZXEiOjUsIk5lc3RpbmciOjIsIlR5cGUiOiJsbG0iLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjE0NjQyMzMyMzYxLCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIqKktWTSBTQkkgRXh0ZW5zaW9uOiBBIFF1aWNrIExvb2sqKlxuXG5Pa2F5LCBzbyB0aGlzIHBhdGNoIGludHJvZHVjZXMgYEtWTV9SSVNDVl9TQklfRVhUX0RCVFJgIHRvIEtWTSwgYWxsb3dpbmcgdGhpcyBTQkkgZXh0ZW5zaW9uIHRvIGJlIGVuYWJsZWQsIGRpc2FibGVkLCBhbmQgZm9yd2FyZGVkLiBJdCBzZWVtcyBzdHJhaWdodGZvcndhcmQ7IGl0IGxldmVyYWdlcyBga3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcmAsIHdoaWNoIEknbSBmYW1pbGlhciB3aXRoIOKAkyBpdCBzaW1wbHkgZm9yd2FyZHMgdGhlIFNCSSBjYWxsIHRvIHVzZXJzcGFjZS4gSSdtIG5vdCBzZWVpbmcgYW55IGFkZGl0aW9uYWwgY29tcGxleCBrZXJuZWwtc2lkZSBsb2dpYyBiZXlvbmQgdGhhdCBmb3J3YXJkaW5nLlxuXG5Ob3csIHRoZSBmdXp6aW5nIHF1ZXN0aW9uLiBFbmFibGluZyBhIG5ldyBTQkkgZXh0ZW5zaW9uIGZvciBmb3J3YXJkaW5nIHRvIHVzZXJzcGFjZS4uLiBpbml0aWFsbHksIEkgdGhvdWdodCwgXCJZZXMsIHBvdGVudGlhbGx5LlwiIEJ1dCB3YWl0IGEgbWludXRlLiBTaW5jZSB0aGUga2VybmVsJ3Mgcm9sZSBpcyAqanVzdCogdGhlIGdlbmVyaWMgZm9yd2FyZGluZywgd2hpY2ggSSdtIHByZXR0eSBjZXJ0YWluIHdlJ3ZlIGFscmVhZHkgZnV6emVkIGV4dGVuc2l2ZWx5LCBpdCBhcHBlYXJzIHJlZHVuZGFudC5cblxuSnVzdCB0byBiZSBhYnNvbHV0ZWx5IGNlcnRhaW4sIGxldCdzIHRha2UgYSBxdWljayBsb29rIGF0IGBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyYCBhbmQgY29uZmlybSBteSBhc3N1bXB0aW9uLiBJIG5lZWQgdG8gbWFrZSBzdXJlIEkgYW0gbm90IG1pc3Npbmcgc29tZSBzdWJ0bGUgbnVhbmNlLlxuXG5cbiIsIklucHV0VG9rZW5zIjo1MDg3LCJPdXRwdXRUb2tlbnMiOjQzLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MTQ0LCJUb29sQ2FsbHMiOlsiZ3JlcHBlciJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTIxVDE3OjQwOjU5LjM2NzU3NzcyOFoiLCJTZXEiOjYsIk5lc3RpbmciOjIsIlR5cGUiOiJ0b29sIiwiTmFtZSI6InJlYWQtZmlsZSIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjEwMTcwMCwiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkZpbGVcIjogXCJhcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jXCIsXG4gIFwiRmlyc3RMaW5lXCI6IDEzMCxcbiAgXCJMaW5lQ291bnRcIjogNTBcbn0iLCJSZXN1bHRzIjoie1xuICBcIkNvbnRlbnRzXCI6IFwiIDEzMDpcXHRcXG4gMTMxOlxcdGludCBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSxcXG4gMTMyOlxcdFxcdFxcdFxcdFxcdCAgICAgICBzdHJ1Y3Qga3ZtX3J1biAqcnVuLFxcbiAxMzM6XFx0XFx0XFx0XFx0XFx0ICAgICAgIHN0cnVjdCBrdm1fdmNwdV9zYmlfcmV0dXJuICpyZXRkYXRhKVxcbiAxMzQ6XFx0e1xcbiAxMzU6XFx0XFx0c3RydWN0IGt2bV9jcHVfY29udGV4dCAqY3AgPSBcXHUwMDI2dmNwdS1cXHUwMDNlYXJjaC5ndWVzdF9jb250ZXh0O1xcbiAxMzY6XFx0XFxuIDEzNzpcXHRcXHR2Y3B1LVxcdTAwM2VhcmNoLnNiaV9jb250ZXh0LnJldHVybl9oYW5kbGVkID0gMDtcXG4gMTM4OlxcdFxcdHZjcHUtXFx1MDAzZXN0YXQuZWNhbGxfZXhpdF9zdGF0Kys7XFxuIDEzOTpcXHRcXHRydW4tXFx1MDAzZWV4aXRfcmVhc29uID0gS1ZNX0VYSVRfUklTQ1ZfU0JJO1xcbiAxNDA6XFx0XFx0cnVuLVxcdTAwM2VyaXNjdl9zYmkuZXh0ZW5zaW9uX2lkID0gY3AtXFx1MDAzZWE3O1xcbiAxNDE6XFx0XFx0cnVuLVxcdTAwM2VyaXNjdl9zYmkuZnVuY3Rpb25faWQgPSBjcC1cXHUwMDNlYTY7XFxuIDE0MjpcXHRcXHRydW4tXFx1MDAzZXJpc2N2X3NiaS5hcmdzWzBdID0gY3AtXFx1MDAzZWEwO1xcbiAxNDM6XFx0XFx0cnVuLVxcdTAwM2VyaXNjdl9zYmkuYXJnc1sxXSA9IGNwLVxcdTAwM2VhMTtcXG4gMTQ0OlxcdFxcdHJ1bi1cXHUwMDNlcmlzY3Zfc2JpLmFyZ3NbMl0gPSBjcC1cXHUwMDNlYTI7XFxuIDE0NTpcXHRcXHRydW4tXFx1MDAzZXJpc2N2X3NiaS5hcmdzWzNdID0gY3AtXFx1MDAzZWEzO1xcbiAxNDY6XFx0XFx0cnVuLVxcdTAwM2VyaXNjdl9zYmkuYXJnc1s0XSA9IGNwLVxcdTAwM2VhNDtcXG4gMTQ3OlxcdFxcdHJ1bi1cXHUwMDNlcmlzY3Zfc2JpLmFyZ3NbNV0gPSBjcC1cXHUwMDNlYTU7XFxuIDE0ODpcXHRcXHRydW4tXFx1MDAzZXJpc2N2X3NiaS5yZXRbMF0gPSBTQklfRVJSX05PVF9TVVBQT1JURUQ7XFxuIDE0OTpcXHRcXHRydW4tXFx1MDAzZXJpc2N2X3NiaS5yZXRbMV0gPSAwO1xcbiAxNTA6XFx0XFx0cmV0ZGF0YS1cXHUwMDNldWV4aXQgPSB0cnVlO1xcbiAxNTE6XFx0XFx0cmV0dXJuIDA7XFxuIDE1MjpcXHR9XFxuIDE1MzpcXHRcXG4gMTU0OlxcdHZvaWQga3ZtX3Jpc2N2X3ZjcHVfc2JpX3N5c3RlbV9yZXNldChzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsXFxuIDE1NTpcXHRcXHRcXHRcXHRcXHQgICAgIHN0cnVjdCBrdm1fcnVuICpydW4sXFxuIDE1NjpcXHRcXHRcXHRcXHRcXHQgICAgIHUzMiB0eXBlLCB1NjQgcmVhc29uKVxcbiAxNTc6XFx0e1xcbiAxNTg6XFx0XFx0dW5zaWduZWQgbG9uZyBpO1xcbiAxNTk6XFx0XFx0c3RydWN0IGt2bV92Y3B1ICp0bXA7XFxuIDE2MDpcXHRcXG4gMTYxOlxcdFxcdGt2bV9mb3JfZWFjaF92Y3B1KGksIHRtcCwgdmNwdS1cXHUwMDNla3ZtKSB7XFxuIDE2MjpcXHRcXHRcXHRzcGluX2xvY2soXFx1MDAyNnRtcC1cXHUwMDNlYXJjaC5tcF9zdGF0ZV9sb2NrKTtcXG4gMTYzOlxcdFxcdFxcdFdSSVRFX09OQ0UodG1wLVxcdTAwM2VhcmNoLm1wX3N0YXRlLm1wX3N0YXRlLCBLVk1fTVBfU1RBVEVfU1RPUFBFRCk7XFxuIDE2NDpcXHRcXHRcXHRzcGluX3VubG9jayhcXHUwMDI2dG1wLVxcdTAwM2VhcmNoLm1wX3N0YXRlX2xvY2spO1xcbiAxNjU6XFx0XFx0fVxcbiAxNjY6XFx0XFx0a3ZtX21ha2VfYWxsX2NwdXNfcmVxdWVzdCh2Y3B1LVxcdTAwM2Vrdm0sIEtWTV9SRVFfU0xFRVApO1xcbiAxNjc6XFx0XFxuIDE2ODpcXHRcXHRtZW1zZXQoXFx1MDAyNnJ1bi1cXHUwMDNlc3lzdGVtX2V2ZW50LCAwLCBzaXplb2YocnVuLVxcdTAwM2VzeXN0ZW1fZXZlbnQpKTtcXG4gMTY5OlxcdFxcdHJ1bi1cXHUwMDNlc3lzdGVtX2V2ZW50LnR5cGUgPSB0eXBlO1xcbiAxNzA6XFx0XFx0cnVuLVxcdTAwM2VzeXN0ZW1fZXZlbnQubmRhdGEgPSAxO1xcbiAxNzE6XFx0XFx0cnVuLVxcdTAwM2VzeXN0ZW1fZXZlbnQuZGF0YVswXSA9IHJlYXNvbjtcXG4gMTcyOlxcdFxcdHJ1bi1cXHUwMDNlZXhpdF9yZWFzb24gPSBLVk1fRVhJVF9TWVNURU1fRVZFTlQ7XFxuIDE3MzpcXHR9XFxuIDE3NDpcXHRcXG4gMTc1OlxcdHZvaWQga3ZtX3Jpc2N2X3ZjcHVfc2JpX3JlcXVlc3RfcmVzZXQoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LFxcbiAxNzY6XFx0XFx0XFx0XFx0XFx0ICAgICAgdW5zaWduZWQgbG9uZyBwYywgdW5zaWduZWQgbG9uZyBhMSlcXG4gMTc3OlxcdHtcXG4gMTc4OlxcdFxcdHNwaW5fbG9jayhcXHUwMDI2dmNwdS1cXHUwMDNlYXJjaC5yZXNldF9zdGF0ZS5sb2NrKTtcXG4gMTc5OlxcdFxcdHZjcHUtXFx1MDAzZWFyY2gucmVzZXRfc3RhdGUucGMgPSBwYztcXG5cIlxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMjFUMTc6NDA6NTkuMzY3NjgyMTk4WiIsIlNlcSI6NywiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6NDUwOTY5ODA4NywiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiKipNeSBBc3Nlc3NtZW50IG9mIHRoZSBQYXRjaCdzIEZ1enppbmcgSW1wbGljYXRpb25zKipcblxuT2theSwgc28gSSd2ZSBsb29rZWQgb3ZlciB0aGlzIHBhdGNoLCBhbmQgbXkgaW5pdGlhbCB0aG91Z2h0IGlzIHRoYXQgaXQgbG9va3MgcHJldHR5IGJlbmlnbiBmcm9tIGEgZnV6emluZyBwZXJzcGVjdGl2ZS4gSXQgc2VlbXMgbGlrZSBhbGwgaXQgZG9lcyBpcyBpbnRyb2R1Y2UgYSBuZXcgZXh0ZW5zaW9uIElEIGFuZCBmb3J3YXJkIGl0IHRvIHVzZXJzcGFjZS4gVGhlcmUncyBubyBuZXcga2VybmVsIGxvZ2ljIGhlcmUgdGhhdCBJIGNhbiBzZWUgdGhhdCdzIHJpcGUgZm9yIGZ1enppbmcuIFRoZSBga3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcmAgZnVuY3Rpb24gaXMgYWxyZWFkeSB3ZWxsLXRyb2RkZW4gZ3JvdW5kLCB1c2VkIGZvciBoYW5kbGluZyBhIHZhcmlldHkgb2Ygb3RoZXIgZXh0ZW5zaW9ucy5cblxuRXNzZW50aWFsbHksIHRoaXMgcGF0Y2gganVzdCBtYWtlcyBgS1ZNX1JJU0NWX1NCSV9FWFRfREJUUmAgYSB2YWxpZCBJRCB0aGF0IGNhbiBiZSBjb250cm9sbGVkIHRocm91Z2ggYEtWTV9TRVRfT05FX1JFR2Agb3Igc2ltaWxhciBtZWNoYW5pc21zLiBUaGUgbWFpbiBlZmZlY3QgaXMgdGhhdCB3aGVuIHRoZSBndWVzdCBjYWxscyB0aGlzIFNCSSBleHRlbnNpb24sIHRoZSBleGVjdXRpb24gZXhpdHMgdG8gdXNlcnNwYWNlLiBJdCdzIHJlYWxseSBqdXN0IGEgY29uc3RhbnQgYWRkaXRpb24gdG8gYW4gYXJyYXkgYW5kIGFuIGVudW0sIGFzIGZhciBhcyBJIGNhbiB0ZWxsLiBObyBuZXcgZnVuY3Rpb25hbCBrZXJuZWwgbG9naWMgdG8gdGFyZ2V0IHdpdGggZnV6emluZy5cblxuQnV0LCBJIHNob3VsZCBiZSB0aG9yb3VnaC4gTGV0IG1lIHF1aWNrbHkgZG91YmxlLWNoZWNrIOKAkyBJIG5lZWQgdG8gbWFrZSBzdXJlIEkgaGF2ZW4ndCBtaXNzZWQgYW55dGhpbmcuIElzIHRoZXJlIGFueSBvdGhlciBwbGFjZSB3aGVyZSBgS1ZNX1JJU0NWX1NCSV9FWFRfREJUUmAgaXMgcmVmZXJlbmNlZCB3aXRoaW4gdGhlIGNvZGViYXNlPyBJIGJldHRlciBiZSBjZXJ0YWluIEknbSBub3Qgb3Zlcmxvb2tpbmcgYSBjcml0aWNhbCBwb2ludC5cblxuXG4iLCJJbnB1dFRva2VucyI6NjQ3MCwiT3V0cHV0VG9rZW5zIjozMiwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjE3NywiVG9vbENhbGxzIjpbInJlYWQtZmlsZSJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTIxVDE3OjQxOjAzLjg3NzM4NDMxNVoiLCJTZXEiOjgsIk5lc3RpbmciOjIsIlR5cGUiOiJ0b29sIiwiTmFtZSI6ImdyZXBwZXIiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjoyMTczNTk3ODg4LCJFcnJvciI6IiIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcIktWTV9SSVNDVl9TQklfRVhUX0RCVFJcIixcbiAgXCJQYXRoUHJlZml4XCI6IFwiXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcImFyY2gvcmlzY3YvaW5jbHVkZS91YXBpL2FzbS9rdm0uaD0yMDk9ZW51bSBLVk1fUklTQ1ZfU0JJX0VYVF9JRCB7XFxuLS1cXG5hcmNoL3Jpc2N2L2luY2x1ZGUvdWFwaS9hc20va3ZtLmgtMjIzLVxcdEtWTV9SSVNDVl9TQklfRVhUX01QWFksXFxuYXJjaC9yaXNjdi9pbmNsdWRlL3VhcGkvYXNtL2t2bS5oOjIyNDpcXHRLVk1fUklTQ1ZfU0JJX0VYVF9EQlRSLFxcbmFyY2gvcmlzY3YvaW5jbHVkZS91YXBpL2FzbS9rdm0uaC0yMjUtXFx0S1ZNX1JJU0NWX1NCSV9FWFRfTUFYLFxcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuYz0zNj1zdGF0aWMgY29uc3Qgc3RydWN0IGt2bV9yaXNjdl9zYmlfZXh0ZW5zaW9uX2VudHJ5IHNiaV9leHRbXSA9IHtcXG4tLVxcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpLmMtNzMtXFx0e1xcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpLmM6NzQ6XFx0XFx0LmV4dF9pZHggPSBLVk1fUklTQ1ZfU0JJX0VYVF9EQlRSLFxcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpLmMtNzUtXFx0XFx0LmV4dF9wdHIgPSBcXHUwMDI2dmNwdV9zYmlfZXh0X2RidHIsXFxuXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTIxVDE3OjQxOjA2LjA1MDk4ODUzM1oiLCJTZXEiOjksIk5lc3RpbmciOjIsIlR5cGUiOiJsbG0iLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjY2NDYwNjU0NzIsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoibnVsbCIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6Ik9rYXksIGhlcmUncyBteSBpbnRlcnByZXRhdGlvbiBvZiB0aG9zZSB0aG91Z2h0cywgdGFpbG9yZWQgZm9yIGFuIGV4cGVydCBhdWRpZW5jZSwgcHJlc2VudGVkIGluIHRoZSBmaXJzdCBwZXJzb246XG5cbioqSW52ZXN0aWdhdGluZyB0aGUgYHZjcHVfc2JpX2V4dF9kYnRyYCBGdW5jdGlvbioqXG5cbkhtbSwgc28gYHZjcHVfc2JpX2V4dF9kYnRyYC4uLiB0aGF0IGZ1bmN0aW9uIG5hbWUgaW1tZWRpYXRlbHkgcGlxdWVzIG15IGludGVyZXN0LiBJdCBpbXBsaWVzIHNvbWV0aGluZyByZWxhdGVkIHRvIHRoZSBWaXJ0dWFsIENQVSAoVkNQVSksIHBvdGVudGlhbGx5IGEgU3RhbmRhcmQgQmFzZWQgSW50ZXJmYWNlIChTQkkpIGV4dGVuc2lvbiwgYW5kIHNwZWNpZmljYWxseSBzb21ldGhpbmcgdG8gZG8gd2l0aCBEYXRhIEJyZWFrcG9pbnQgVHJhcHBpbmcgKERCVFIpLlxuXG5NeSBpbml0aWFsIHRob3VnaHQgcHJvY2VzcyBpbW1lZGlhdGVseSBnb2VzIGludG8gYW5hbHl6aW5nIHRoZSBjb250ZXh0LiBJcyB0aGlzIHJlbGF0ZWQgdG8gYSBzcGVjaWZpYyBhcmNoaXRlY3R1cmUsIGxpa2UgUklTQy1WPyBUaGUgXCJTQklcIiBzdHJvbmdseSBzdWdnZXN0cyB0aGF0LiBJZiBzbywgd2hhdCBTQkkgZXh0ZW5zaW9uIGlzIGl0IGltcGxlbWVudGluZz8gREJUUiBmdW5jdGlvbmFsaXR5IGlzIHByZXR0eSBjb21wbGV4LCBlc3BlY2lhbGx5IHdoZW4gdmlydHVhbGl6ZWQuIEkgbmVlZCB0byB1bmRlcnN0YW5kIGhvdyB0aGUgaHlwZXJ2aXNvciBpcyBoYW5kbGluZyB0cmFwcyBhbmQgZXhjZXB0aW9ucyByZWxhdGVkIHRvIGRhdGEgYnJlYWtwb2ludHMgaW4gdGhlIGd1ZXN0LlxuXG5JIG5lZWQgdG8gZGl2ZSBkZWVwZXIgaW50byB0aGUgY29kZSBhcm91bmQgdGhpcyBmdW5jdGlvbi4gV2hhdCBraW5kIG9mIGRhdGEgc3RydWN0dXJlIGlzIGl0IG9wZXJhdGluZyBvbj8gSXMgaXQgaGFuZGxpbmcgdGhlIERCVFIgcmVnaXN0ZXJzIGRpcmVjdGx5IG9yIGFic3RyYWN0aW5nIHRoZW0/IElzIHRoaXMgcmVsYXRlZCB0byBzaW5nbGUtc3RlcHBpbmcsIHdhdGNocG9pbnRzLCBvciBzb21lIG1vcmUgc29waGlzdGljYXRlZCBkZWJ1Z2dpbmcgZmVhdHVyZT8gQXJlIHRoZXJlIGFueSBzcGVjaWZpYyBwZXJmb3JtYW5jZSBpbXBsaWNhdGlvbnM/IE15IGV4cGVyaWVuY2UgdGVsbHMgbWUgdGhhdCBjb3JyZWN0bHkgaGFuZGxpbmcgZGF0YSBicmVha3BvaW50cyBjYW4gYmUgYSBwZXJmb3JtYW5jZSBib3R0bGVuZWNrLCBlc3BlY2lhbGx5IGluIGEgaGVhdmlseSB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudC5cblxuSSdtIHRoaW5raW5nLCBcIklzIHRoaXMgYSBuZXcgaW1wbGVtZW50YXRpb24gb3IgYSBtb2RpZmljYXRpb24gb2YgYW4gZXhpc3RpbmcgZmVhdHVyZT9cIi4gSSdkIGxpa2UgdG8gY2hlY2sgZm9yIHBvdGVudGlhbCByYWNlIGNvbmRpdGlvbnMgb3Igc3luY2hyb25pemF0aW9uIGlzc3VlcyB3aGVuIG11bHRpcGxlIHZDUFVzIGludGVyYWN0IHdpdGggdGhpcyBmdW5jdGlvbmFsaXR5LiBBcmUgdGhlcmUgYW55IGludGVyYWN0aW9ucyB3aXRoIG90aGVyIGh5cGVydmlzb3IgY29tcG9uZW50cyBsaWtlIHRoZSBNTVUgb3IgZXhjZXB0aW9uIGhhbmRsaW5nIGNvZGU/IEknbGwgbmVlZCB0byBsb29rIGF0IHRoZSBzdXJyb3VuZGluZyBjb2RlIHRvIGdyYXNwIGhvdyBpdCBpbnRlZ3JhdGVzIHdpdGggdGhlIG92ZXJhbGwgc3lzdGVtIGRlc2lnbi4gVGhpcyBpcyBjcnVjaWFsIGZvciBldmFsdWF0aW5nIGl0cyBjb3JyZWN0bmVzcyBhbmQgc3RhYmlsaXR5LlxuXG5VbHRpbWF0ZWx5LCBJIHdhbnQgdG8gdW5kZXJzdGFuZDogd2hhdCBkb2VzIHRoaXMgZnVuY3Rpb24gKmRvKiwgYW5kIGhvdyB3ZWxsIGRvZXMgaXQgZG8gaXQ/XG5cblxuIiwiSW5wdXRUb2tlbnMiOjcyNTksIk91dHB1dFRva2VucyI6MzAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjoxNCwiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNy0yMVQxNzo0MToxMi42OTcwNTcxMDVaIiwiU2VxIjoxMCwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoiZ3JlcHBlciIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjIwNDUyNzI2NDAsIkVycm9yIjoiIiwiQXJncyI6IntcbiAgXCJFeHByZXNzaW9uXCI6IFwidmNwdV9zYmlfZXh0X2RidHJcIixcbiAgXCJQYXRoUHJlZml4XCI6IFwiXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcImFyY2gvcmlzY3YvaW5jbHVkZS9hc20va3ZtX3ZjcHVfc2JpLmg9MTA2PWV4dGVybiBjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfZGJjbjtcXG5hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2t2bV92Y3B1X3NiaS5oOjEwNzpleHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2RidHI7XFxuYXJjaC9yaXNjdi9pbmNsdWRlL2FzbS9rdm1fdmNwdV9zYmkuaC0xMDgtZXh0ZXJuIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9zdXNwO1xcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuYz0zNj1zdGF0aWMgY29uc3Qgc3RydWN0IGt2bV9yaXNjdl9zYmlfZXh0ZW5zaW9uX2VudHJ5IHNiaV9leHRbXSA9IHtcXG4tLVxcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpLmMtNzQtXFx0XFx0LmV4dF9pZHggPSBLVk1fUklTQ1ZfU0JJX0VYVF9EQlRSLFxcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpLmM6NzU6XFx0XFx0LmV4dF9wdHIgPSBcXHUwMDI2dmNwdV9zYmlfZXh0X2RidHIsXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuYy03Ni1cXHR9LFxcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jPTIyPWNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9kYmNuID0ge1xcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jLTI4LVxcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYzoyOTpjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfZGJ0ciA9IHtcXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmMtMzAtXFx0LmV4dGlkX3N0YXJ0ID0gU0JJX0VYVF9EQlRSLFxcblwiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0yMVQxNzo0MToxNC43NDIzMzk5MTVaIiwiU2VxIjoxMSwiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6MzY2MTM2MTcyNSwiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiKipXb3J0aEZ1enppbmc9RmFsc2UqKlxuXG5Pa2F5LCBzbyBJJ3ZlIGxvb2tlZCB0aGlzIG92ZXIuIEVzc2VudGlhbGx5LCB0aGlzIHBhdGNoIGlzIGp1c3QgYWJvdXQgcGx1bWJpbmcuIEl0J3MgdGFraW5nIGFuIGV4dGVuc2lvbiBJRCBhbmQgaG9va2luZyBpdCBpbnRvIHRoZSBleGlzdGluZyBmb3J3YXJkIGhhbmRsZXIuIFRoZXJlIGlzbid0IGFueSBuZXcsIGNvbXBsZXggbG9naWMgaGVyZSB0aGF0J3MgcmlwZSBmb3IgZnV6emluZy4gSXQncyByZWFsbHkganVzdCBhIHN0cmFpZ2h0Zm9yd2FyZCBkYXRhIHN0cnVjdHVyZSBhZGRpdGlvbiwgZW5hYmxpbmcgYSBuZXcgU0JJIGNhbGwgdG8gYmUgZm9yd2FyZGVkIHRvIHVzZXJzcGFjZS4gR2l2ZW4gdGhlIG5hdHVyZSBvZiB0aGlzIGNoYW5nZSwgSSdtIGNvbmZpZGVudCBpbiBzZXR0aW5nIGBXb3J0aEZ1enppbmc9ZmFsc2VgLiBJdCdzIG5vdCB3b3J0aCB0aGUgZWZmb3J0IGZvciB0aGUgbWFyZ2luYWwgZ2FpbiB3ZSdkIGdldC4gVGhpcyBpc24ndCB3aGVyZSB3ZSdsbCBmaW5kIGFueSBpbnRlcmVzdGluZyBidWdzLiBXZSBjYW4gbW92ZSBvbi5cblxuXG4iLCJJbnB1dFRva2VucyI6ODE0MiwiT3V0cHV0VG9rZW5zIjoxMDksIk91dHB1dFRob3VnaHRzVG9rZW5zIjo1NywiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNy0yMVQxNzo0MToxOC40MDM3MDUwMloiLCJTZXEiOjEyLCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJzZXQtcmVzdWx0cyIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjMxMzEwLCJFcnJvciI6IiIsIkFyZ3MiOiJ7XG4gIFwiRW5hYmxlQ29uZmlnc1wiOiBbXSxcbiAgXCJGb2N1c1N5bWJvbHNcIjogW10sXG4gIFwiUmVhc29uaW5nXCI6IFwiVGhlIHBhdGNoIG9ubHkgYWRkcyBhIG5ldyBTQkkgZXh0ZW5zaW9uIElEIChLVk1fUklTQ1ZfU0JJX0VYVF9EQlRSKSB0byBLVk0gb24gUklTQy1WIGFuZCB3aXJlcyBpdCB1cCB0byB0aGUgZXhpc3RpbmcgZ2VuZXJpYyBmb3J3YXJkIGhhbmRsZXIgKGt2bV9yaXNjdl92Y3B1X3NiaV9mb3J3YXJkX2hhbmRsZXIpIHRvIGZvcndhcmQgdGhlIGNhbGwgdG8gdXNlcnNwYWNlLiBJdCBkb2VzIG5vdCBpbnRyb2R1Y2UgYW55IG5ldyBmdW5jdGlvbmFsIGtlcm5lbCBsb2dpYyB0byBmdXp6LlwiLFxuICBcIldvcnRoRnV6emluZ1wiOiBmYWxzZVxufSIsIlJlc3VsdHMiOiJ7XG4gIFwiRW5hYmxlQ29uZmlnc1wiOiBudWxsLFxuICBcIkZvY3VzU3ltYm9sc1wiOiBbXSxcbiAgXCJSZWFzb25pbmdcIjogXCJUaGUgcGF0Y2ggb25seSBhZGRzIGEgbmV3IFNCSSBleHRlbnNpb24gSUQgKEtWTV9SSVNDVl9TQklfRVhUX0RCVFIpIHRvIEtWTSBvbiBSSVNDLVYgYW5kIHdpcmVzIGl0IHVwIHRvIHRoZSBleGlzdGluZyBnZW5lcmljIGZvcndhcmQgaGFuZGxlciAoa3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcikgdG8gZm9yd2FyZCB0aGUgY2FsbCB0byB1c2Vyc3BhY2UuIEl0IGRvZXMgbm90IGludHJvZHVjZSBhbnkgbmV3IGZ1bmN0aW9uYWwga2VybmVsIGxvZ2ljIHRvIGZ1enouXCIsXG4gIFwiV29ydGhGdXp6aW5nXCI6IGZhbHNlXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH1dOwoJCQlpZiAoIXJhd0RhdGEgfHwgcmF3RGF0YS5sZW5ndGggPT09IDApIHJldHVybjsKCgkJCWRyYXdTdW1tYXJ5VGFibGVzKHJhd0RhdGEpOwoJCQlkcmF3RHVyYXRpb25DaGFydChyYXdEYXRhKTsKCQkJZHJhd1Rva2VuQ29uc3VtcHRpb25DaGFydChyYXdEYXRhKTsKCQl9CgoJCWZ1bmN0aW9uIGRyYXdTdW1tYXJ5VGFibGVzKHJhd0RhdGEpIHsKCQkJY29uc3Qgc3RhdHMgPSB7CgkJCQlsbG06IHsgY291bnQ6IDAsIHRva2VuczogMCwgZHVyYXRpb246IDAgfSwKCQkJCXRvb2w6IHsgY291bnQ6IDAsIGR1cmF0aW9uOiAwIH0KCQkJfTsKCgkJCXJhd0RhdGEuZm9yRWFjaChzID0+IHsKCQkJCWNvbnN0IGR1ciA9IHMuRHVyYXRpb24gLyAxMDAwMDAwMDAwOyAKCQkJCWlmIChzLlR5cGUgPT09ICJsbG0iKSB7CgkJCQkJc3RhdHMubGxtLmNvdW50Kys7CgkJCQkJc3RhdHMubGxtLnRva2VucyArPSAocy5JbnB1dFRva2VucyArIHMuT3V0cHV0VG9rZW5zICsgcy5PdXRwdXRUaG91Z2h0c1Rva2Vucyk7CgkJCQkJc3RhdHMubGxtLmR1cmF0aW9uICs9IGR1cjsKCQkJCX0gZWxzZSBpZiAocy5UeXBlID09PSAidG9vbCIpIHsKCQkJCQlzdGF0cy50b29sLmNvdW50Kys7CgkJCQkJc3RhdHMudG9vbC5kdXJhdGlvbiArPSBkdXI7CgkJCQl9CgkJCX0pOwoKCQkJY29uc3QgYXZnTGxtRHVyID0gc3RhdHMubGxtLmNvdW50ID4gMCA/IChzdGF0cy5sbG0uZHVyYXRpb24gLyBzdGF0cy5sbG0uY291bnQpLnRvRml4ZWQoMikgOiAwOwoJCQljb25zdCBhdmdMbG1Ub2tlbiA9IHN0YXRzLmxsbS5jb3VudCA+IDAgPyAoc3RhdHMubGxtLnRva2VucyAvIHN0YXRzLmxsbS5jb3VudCkudG9GaXhlZCgyKSA6IDA7CgkJCWNvbnN0IGF2Z1Rvb2xEdXIgPSBzdGF0cy50b29sLmNvdW50ID4gMCA/IChzdGF0cy50b29sLmR1cmF0aW9uIC8gc3RhdHMudG9vbC5jb3VudCkudG9GaXhlZCgyKSA6IDA7CgoJCQljb25zdCBsbG1TdW1hcnlDZWxscyA9IFtzdGF0cy5sbG0uY291bnQsIHN0YXRzLmxsbS50b2tlbnMsIGF2Z0xsbVRva2VuLCBzdGF0cy5sbG0uZHVyYXRpb24sIGF2Z0xsbUR1cl07CgkJCWNvbnN0IHRvb2xTdW1tYXJ5Q2VsbHMgPSBbc3RhdHMudG9vbC5jb3VudCwgc3RhdHMudG9vbC5kdXJhdGlvbiwgYXZnVG9vbER1cl07CgoJCQljb25zdCBsbG1TdW1tYXJ5Qm9keSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdsbG1fc3VtbWFyeV9zdGF0c19ib2R5Jyk7CgkJCWxsbVN1bW1hcnlCb2R5LmlubmVySFRNTCA9ICIiOwoJCQljb25zdCBsbG1UciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3RyJyk7CgkJCWxsbVN1bWFyeUNlbGxzLmZvckVhY2goY2VsbCA9PiB7CgkJCQljb25zdCB0ZCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3RkJyk7CgkJCQl0ZC50ZXh0Q29udGVudCA9IGNlbGw7CgkJCQlsbG1Uci5hcHBlbmRDaGlsZCh0ZCk7CgkJCX0pOwoJCQlsbG1TdW1tYXJ5Qm9keS5hcHBlbmRDaGlsZChsbG1Ucik7CgoJCQljb25zdCB0b29sU3VtbWFyeUJvZHkgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndG9vbF9zdW1tYXJ5X3N0YXRzX2JvZHknKTsKCQkJdG9vbFN1bW1hcnlCb2R5LmlubmVySFRNTCA9ICIiOwoJCQljb25zdCB0b29sVHIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd0cicpOwoJCQl0b29sU3VtbWFyeUNlbGxzLmZvckVhY2goY2VsbCA9PiB7CgkJCQljb25zdCB0ZCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3RkJyk7CgkJCQl0ZC50ZXh0Q29udGVudCA9IGNlbGw7CgkJCQl0b29sVHIuYXBwZW5kQ2hpbGQodGQpOwoJCQl9KTsKCQkJdG9vbFN1bW1hcnlCb2R5LmFwcGVuZENoaWxkKHRvb2xUcik7CgkJfQoKCQlmdW5jdGlvbiBkcmF3RHVyYXRpb25DaGFydChyYXdEYXRhKSB7CgkJCWNvbnN0IGZpbHRlcmVkU3RlcHMgPSByYXdEYXRhLmZpbHRlcihkID0+IFsibGxtIiwgInRvb2wiXS5pbmNsdWRlcyhkLlR5cGUpKTsKCQkJY29uc3QgZGF0YSA9IG5ldyBnb29nbGUudmlzdWFsaXphdGlvbi5EYXRhVGFibGUoKTsKCQkJZGF0YS5hZGRDb2x1bW4oJ3N0cmluZycsICdTdGVwJyk7CgkJCWRhdGEuYWRkQ29sdW1uKCdudW1iZXInLCAnRHVyYXRpb24nKTsKCQkJZGF0YS5hZGRDb2x1bW4oe3R5cGU6ICdzdHJpbmcnLCByb2xlOiAndG9vbHRpcCd9KTsgCgoJCQlmaWx0ZXJlZFN0ZXBzLmZvckVhY2gocyA9PiB7CgkJCQkKCQkJCWNvbnN0IGR1ciA9IHMuRHVyYXRpb24gLyAxMDAwMDAwMDAwOwoJCQkJbGV0IHRvb2x0aXAgPSBzLk5hbWU7CgkJCQlpZiAocy5UeXBlID09PSAibGxtIiAmJiBzLlRvb2xDYWxscyAmJiBzLlRvb2xDYWxscy5sZW5ndGggPiAwKSB7CgkJCQkJdG9vbHRpcCArPSBgXG5Ub29sczogJHtzLlRvb2xDYWxscy5qb2luKCcsICcpfWA7CgkJCQl9CgkJCQlkYXRhLmFkZFJvdyhbYCR7cy5TZXF9YCwgZHVyLCB0b29sdGlwXSk7CgkJCX0pOwoKCQkJY29uc3Qgb3B0aW9ucyA9IHsKCQkJCXRpdGxlOiAnVGltZSBDb25zdW1wdGlvbiBvZiBMTE0vVG9vbCBDYWxscycsCgkJCQloQXhpczogewoJCQkJCXRpdGxlOiAnTExNL1Rvb2wgU3RlcHMnLAoJCQkJfSwKCQkJCXZBeGlzOiB7IHRpdGxlOiAnU2Vjb25kcycgfSwKCQkJCWxlZ2VuZDogeyBwb3NpdGlvbjogJ25vbmUnIH0sCgkJCQliYXI6IHsgZ3JvdXBXaWR0aDogJzc1JScgfSwKCQkJCWNoYXJ0QXJlYTogeyB3aWR0aDogJzg1JScsIGhlaWdodDogJzcwJScgfSwKCQkJCWhlaWdodDogNDAwCgkJCX07CgoJCQljb25zdCBjaGFydCA9IG5ldyBnb29nbGUudmlzdWFsaXphdGlvbi5Db2x1bW5DaGFydChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZHVyYXRpb25fY2hhcnRfZGl2JykpOwoJCQljaGFydC5kcmF3KGRhdGEsIG9wdGlvbnMpOwoJCX0KCgkJZnVuY3Rpb24gZHJhd1Rva2VuQ29uc3VtcHRpb25DaGFydChyYXdEYXRhKSB7CgkJCWNvbnN0IGxsbVN0ZXBzID0gcmF3RGF0YS5maWx0ZXIoZCA9PiBkLlR5cGUgPT09ICJsbG0iKTsKCQkJaWYgKGxsbVN0ZXBzLmxlbmd0aCA9PT0gMCkgcmV0dXJuOwoKCQkJY29uc3QgZGF0YSA9IG5ldyBnb29nbGUudmlzdWFsaXphdGlvbi5EYXRhVGFibGUoKTsKCQkJZGF0YS5hZGRDb2x1bW4oJ3N0cmluZycsICdTdGVwJyk7CQkJCgkJCWRhdGEuYWRkQ29sdW1uKCdudW1iZXInLCAnVG9rZW5zJyk7CQkJCgkJCWRhdGEuYWRkQ29sdW1uKHt0eXBlOiAnc3RyaW5nJywgcm9sZTogJ3N0eWxlJ30pOwkKCQkJZGF0YS5hZGRDb2x1bW4oe3R5cGU6ICdzdHJpbmcnLCByb2xlOiAndG9vbHRpcCd9KTsJCgoJCQljb25zdCBhZ2VudENvbG9ycyA9IHt9OwoJCQljb25zdCBwYWxldHRlID0gWycjNDI4NUY0JywgJyNEQjQ0MzcnLCAnI0Y0QjQwMCcsICcjMEY5RDU4JywgJyNBQjQ3QkMnLCAnIzAwQUNDMSddOwoJCQlsZXQgY29sb3JJZHggPSAwOwoJCQljb25zdCBhZ2VudExMTUNvdW50cyA9IHt9OwoJCQlsbG1TdGVwcy5mb3JFYWNoKHMgPT4gewoJCQkJaWYgKCFhZ2VudENvbG9yc1tzLk5hbWVdKSB7CgkJCQkJYWdlbnRDb2xvcnNbcy5OYW1lXSA9IHBhbGV0dGVbY29sb3JJZHggJSBwYWxldHRlLmxlbmd0aF07CgkJCQkJY29sb3JJZHgrKzsKCQkJCX0KCgkJCQlhZ2VudExMTUNvdW50c1tzLk5hbWVdID0gKGFnZW50TExNQ291bnRzW3MuTmFtZV0gfHwgMCkgKyAxOwoJCQkJY29uc3QgbGFiZWwgPSBgJHtzLk5hbWV9LSR7YWdlbnRMTE1Db3VudHNbcy5OYW1lXX1gOwoJCQkJY29uc3QgdG90YWxUb2tlbnMgPSBzLklucHV0VG9rZW5zICsgcy5PdXRwdXRUb2tlbnMgKyBzLk91dHB1dFRob3VnaHRzVG9rZW5zOwoJCQkJY29uc3Qgc3R5bGUgPSBgY29sb3I6ICR7YWdlbnRDb2xvcnNbcy5OYW1lXX1gOwoJCQkJbGV0IHRvb2x0aXAgPSBgVG90YWwgVG9rZW5zOiAke3RvdGFsVG9rZW5zfVxuKEluOiAke3MuSW5wdXRUb2tlbnN9LCBPdXQ6ICR7cy5PdXRwdXRUb2tlbnN9LCBUaG91Z2h0czogJHtzLk91dHB1dFRob3VnaHRzVG9rZW5zfSlgOwoJCQkJaWYgKHMuVG9vbENhbGxzICYmIHMuVG9vbENhbGxzLmxlbmd0aCA+IDApIHsKCQkJCQl0b29sdGlwICs9IGBcblRvb2xzOiAke3MuVG9vbENhbGxzLmpvaW4oJywgJyl9YDsKCQkJCX0KCgkJCQlkYXRhLmFkZFJvdyhbbGFiZWwsIHRvdGFsVG9rZW5zLCBzdHlsZSwgdG9vbHRpcF0pOwoJCQl9KTsKCgkJCWNvbnN0IG9wdGlvbnMgPSB7CgkJCQl0aXRsZTogJ1Rva2VuIENvbnN1bXB0aW9uIGJ5IExMTSBDYWxscycsCgkJCQloQXhpczogewoJCQkJCXRpdGxlOiAnTExNIENhbGwgU2VxdWVuY2UnLAoJCQkJfSwKCQkJCXZBeGlzOiB7IHRpdGxlOiAnQ29uc3VtZWQgVG9rZW5zJyB9LAoJCQkJbGVnZW5kOiB7IHBvc2l0aW9uOiAnbm9uZScgfSwKCQkJCWJhcjogeyBncm91cFdpZHRoOiAnNzUlJyB9LAoJCQkJY2hhcnRBcmVhOiB7IHdpZHRoOiAnODUlJywgaGVpZ2h0OiAnNzAlJyB9LAoJCQkJaGVpZ2h0OiA0MDAKCQkJfTsKCgkJCWNvbnN0IGNoYXJ0ID0gbmV3IGdvb2dsZS52aXN1YWxpemF0aW9uLkNvbHVtbkNoYXJ0KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0b2tlbl9jaGFydF9kaXYnKSk7CgkJCWNoYXJ0LmRyYXcoZGF0YSwgb3B0aW9ucyk7CgkJfQoJCWxldCBhbGxFeHBhbmRlZCA9IGZhbHNlOwoJCWZ1bmN0aW9uIHRvZ2dsZUFsbERldGFpbHMoKSB7CgkJCWFsbEV4cGFuZGVkID0gIWFsbEV4cGFuZGVkOwoJCQlkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdkZXRhaWxzJykuZm9yRWFjaChkID0+IHsKCQkJCWlmIChhbGxFeHBhbmRlZCkgZC5zZXRBdHRyaWJ1dGUoJ29wZW4nLCAnJyk7CgkJCQllbHNlIGQucmVtb3ZlQXR0cmlidXRlKCdvcGVuJyk7CgkJCX0pOwoJCX0KCTwvc2NyaXB0PgoKCjwvYm9keT4KPC9odG1sPgo=" },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-workflowljnqw[0].run-triage(0) Phase: Succeeded StartedAt: 2026-07-21 17:15:12 +0000 UTC FinishedAt: 2026-07-21 17:41:19 +0000 UTC Input: nil Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "skip_reason": "AI determined the patch has no functional impact", "targets": null, "trajectory": "CjwhZG9jdHlwZSBodG1sPgo8aHRtbD4KPGhlYWQ+Cgk8dGl0bGU+QUkgVHJhamVjdG9yeTwvdGl0bGU+Cgk8c3R5bGU+CgkJdGFibGUgewoJCQlib3JkZXI6IDFweCBzb2xpZCAjY2NjOwoJCQltYXJnaW46IDIwcHggNXB4OwoJCQlib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOwoJCQl3aGl0ZS1zcGFjZTogbm93cmFwOwoJCQl0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsKCQkJb3ZlcmZsb3c6IGhpZGRlbjsKCQl9CgoJCXRhYmxlIGNhcHRpb24gewoJCQlmb250LXdlaWdodDogYm9sZDsKCQl9CgoJCXRhYmxlIHRkLCB0YWJsZSB0aCB7CgkJCXZlcnRpY2FsLWFsaWduOiB0b3A7CgkJCXBhZGRpbmc6IDJweCA4cHg7CgkJCXRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOwoJCQlvdmVyZmxvdzogaGlkZGVuOwoJCX0KCgkJLmxpc3RfdGFibGUgdGQsIC5saXN0X3RhYmxlIHRoIHsKCQkJYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2NjOwoJCX0KCgkJLmxpc3RfdGFibGUgdGggewoJCQliYWNrZ3JvdW5kOiAjRjRGNEY0OwoJCX0KCgkJLmxpc3RfdGFibGUgdHI6bnRoLWNoaWxkKDJuKSB7CgkJCWJhY2tncm91bmQ6ICNGNEY0RjQ7CgkJfQoKCQkubGlzdF90YWJsZSB0cjpob3ZlciB7CgkJCWJhY2tncm91bmQ6ICNmZmZmOTk7CgkJfQoKCQkjYWlfZGV0YWlsc19kaXYgcHJlIHsKCQkJbWFyZ2luOiAxcHg7CgkJCW1heC13aWR0aDogMTIwY2g7CgkJCXdoaXRlLXNwYWNlOiBwcmUtd3JhcDsKCQkJb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDsKCQl9Cgk8L3N0eWxlPgo8L2hlYWQ+Cjxib2R5PgoJPGgxPkFJIFRyYWplY3Rvcnk8L2gxPgoJPGJyPgoKCQoJPHRhYmxlIGNsYXNzPSJsaXN0X3RhYmxlIj4KCQk8Y2FwdGlvbj5UcmFqZWN0b3J5OiAoPGEgaHJlZj0iIyIgb25jbGljaz0idG9nZ2xlQWxsRGV0YWlscygpOyByZXR1cm4gZmFsc2U7Ij5FeHBhbmQvQ29sbGFwc2UgQWxsPC9hPik8L2NhcHRpb24+CgkJPHRoZWFkPjx0cj4KCQkJPHRoPlNlcTwvdGg+CgkJCTx0aD5UaW1lc3RhbXA8L3RoPgoJCQk8dGg+VHlwZTwvdGg+CgkJCTx0aD5OYW1lPC90aD4KCQkJPHRoPkR1cmF0aW9uPC90aD4KCQk8L3RyPjwvdGhlYWQ+CgkJPHRib2R5PgoJCQoJCTx0cj4KCQkJPHRkPjAvMDwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzIxIDE3OjQwPC90ZD4KCQkJPHRkPmZsb3c8L3RkPgoJCQk8dGQ+cGF0Y2gtdHJpYWdlPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RW5hYmxlQ29uZmlncyYjMzQ7OiBudWxsLAogICYjMzQ7Rm9jdXNTeW1ib2xzJiMzNDs6IFtdLAogICYjMzQ7UmVhc29uaW5nJiMzNDs6ICYjMzQ7VGhlIHBhdGNoIG9ubHkgYWRkcyBhIG5ldyBTQkkgZXh0ZW5zaW9uIElEIChLVk1fUklTQ1ZfU0JJX0VYVF9EQlRSKSB0byBLVk0gb24gUklTQy1WIGFuZCB3aXJlcyBpdCB1cCB0byB0aGUgZXhpc3RpbmcgZ2VuZXJpYyBmb3J3YXJkIGhhbmRsZXIgKGt2bV9yaXNjdl92Y3B1X3NiaV9mb3J3YXJkX2hhbmRsZXIpIHRvIGZvcndhcmQgdGhlIGNhbGwgdG8gdXNlcnNwYWNlLiBJdCBkb2VzIG5vdCBpbnRyb2R1Y2UgYW55IG5ldyBmdW5jdGlvbmFsIGtlcm5lbCBsb2dpYyB0byBmdXp6LiYjMzQ7LAogICYjMzQ7V29ydGhGdXp6aW5nJiMzNDs6IGZhbHNlCn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4xLzE8L3RkPgoJCQk8dGQ+MjAyNi8wNy8yMSAxNzo0MDwvdGQ+CgkJCTx0ZD5hY3Rpb248L3RkPgoJCQk8dGQ+cmVhZC1wYXRjaC1kaWZmPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7UGF0Y2hEaWZmJiMzNDs6ICYjMzQ7Y29tbWl0IDg4NDBlYjk5ZDg1YzY4MGU1YTEyZmYzOGYxN2Q1ZjU3ZTRkOGVmYzhcbkF1dGhvcjogc3l6LWNsdXN0ZXIgXHUwMDNjdHJpYWdlQHN5emthbGxlci5jb21cdTAwM2VcbkRhdGU6ICAgVHVlIEp1bCAyMSAxNzo0MDozNiAyMDI2ICYjNDM7MDAwMFxuXG4gICAgc3l6LWNsdXN0ZXI6IGFwcGxpZWQgcGF0Y2ggdW5kZXIgcmV2aWV3XG5cbmRpZmYgLS1naXQgYS9hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2t2bV92Y3B1X3NiaS5oIGIvYXJjaC9yaXNjdi9pbmNsdWRlL2FzbS9rdm1fdmNwdV9zYmkuaFxuaW5kZXggYzFhN2UzYjQwZDljZWQuLjUzNDA2YjAyZmQyNjRlIDEwMDY0NFxuLS0tIGEvYXJjaC9yaXNjdi9pbmNsdWRlL2FzbS9rdm1fdmNwdV9zYmkuaFxuJiM0MzsmIzQzOyYjNDM7IGIvYXJjaC9yaXNjdi9pbmNsdWRlL2FzbS9rdm1fdmNwdV9zYmkuaFxuQEAgLTEwNCw2ICYjNDM7MTA0LDcgQEAgZXh0ZXJuIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9yZmVuY2U7XG4gZXh0ZXJuIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9zcnN0O1xuIGV4dGVybiBjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfaHNtO1xuIGV4dGVybiBjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfZGJjbjtcbiYjNDM7ZXh0ZXJuIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9kYnRyO1xuIGV4dGVybiBjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfc3VzcDtcbiBleHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X3N0YTtcbiBleHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2Z3ZnQ7XG5kaWZmIC0tZ2l0IGEvYXJjaC9yaXNjdi9pbmNsdWRlL3VhcGkvYXNtL2t2bS5oIGIvYXJjaC9yaXNjdi9pbmNsdWRlL3VhcGkvYXNtL2t2bS5oXG5pbmRleCA1MDRlNzMzMDUzNDNhOC4uMDQ3ZDgyZjA1YTRiYTkgMTAwNjQ0XG4tLS0gYS9hcmNoL3Jpc2N2L2luY2x1ZGUvdWFwaS9hc20va3ZtLmhcbiYjNDM7JiM0MzsmIzQzOyBiL2FyY2gvcmlzY3YvaW5jbHVkZS91YXBpL2FzbS9rdm0uaFxuQEAgLTIyMSw2ICYjNDM7MjIxLDcgQEAgZW51bSBLVk1fUklTQ1ZfU0JJX0VYVF9JRCB7XG4gXHRLVk1fUklTQ1ZfU0JJX0VYVF9TVVNQLFxuIFx0S1ZNX1JJU0NWX1NCSV9FWFRfRldGVCxcbiBcdEtWTV9SSVNDVl9TQklfRVhUX01QWFksXG4mIzQzO1x0S1ZNX1JJU0NWX1NCSV9FWFRfREJUUixcbiBcdEtWTV9SSVNDVl9TQklfRVhUX01BWCxcbiB9O1xuIFxuZGlmZiAtLWdpdCBhL2FyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpLmMgYi9hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jXG5pbmRleCA0NmFiN2I5ODk0MzJiOS4uZWQyMTIzOWM1MWI3YmQgMTAwNjQ0XG4tLS0gYS9hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jXG4mIzQzOyYjNDM7JiM0MzsgYi9hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jXG5AQCAtNzAsNiAmIzQzOzcwLDEwIEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3Qga3ZtX3Jpc2N2X3NiaV9leHRlbnNpb25fZW50cnkgc2JpX2V4dFtdID0ge1xuIFx0XHQuZXh0X2lkeCA9IEtWTV9SSVNDVl9TQklfRVhUX0RCQ04sXG4gXHRcdC5leHRfcHRyID0gXHUwMDI2dmNwdV9zYmlfZXh0X2RiY24sXG4gXHR9LFxuJiM0MztcdHtcbiYjNDM7XHRcdC5leHRfaWR4ID0gS1ZNX1JJU0NWX1NCSV9FWFRfREJUUixcbiYjNDM7XHRcdC5leHRfcHRyID0gXHUwMDI2dmNwdV9zYmlfZXh0X2RidHIsXG4mIzQzO1x0fSxcbiBcdHtcbiBcdFx0LmV4dF9pZHggPSBLVk1fUklTQ1ZfU0JJX0VYVF9TVVNQLFxuIFx0XHQuZXh0X3B0ciA9IFx1MDAyNnZjcHVfc2JpX2V4dF9zdXNwLFxuZGlmZiAtLWdpdCBhL2FyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYyBiL2FyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuY1xuaW5kZXggNWEzYzc1ZWIyM2M1YTcuLjhhYzMxYjUzZmY2OTQwIDEwMDY0NFxuLS0tIGEvYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jXG4mIzQzOyYjNDM7JiM0MzsgYi9hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmNcbkBAIC0yNiw2ICYjNDM7MjYsMTMgQEAgY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2RiY24gPSB7XG4gXHQuaGFuZGxlciA9IGt2bV9yaXNjdl92Y3B1X3NiaV9mb3J3YXJkX2hhbmRsZXIsXG4gfTtcbiBcbiYjNDM7Y29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2RidHIgPSB7XG4mIzQzO1x0LmV4dGlkX3N0YXJ0ID0gU0JJX0VYVF9EQlRSLFxuJiM0MztcdC5leHRpZF9lbmQgPSBTQklfRVhUX0RCVFIsXG4mIzQzO1x0LmRlZmF1bHRfZGlzYWJsZWQgPSB0cnVlLFxuJiM0MztcdC5oYW5kbGVyID0ga3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcixcbiYjNDM7fTtcbiYjNDM7XG4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X21weHkgPSB7XG4gXHQuZXh0aWRfc3RhcnQgPSBTQklfRVhUX01QWFksXG4gXHQuZXh0aWRfZW5kID0gU0JJX0VYVF9NUFhZLFxuJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjIvMTwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzIxIDE3OjQwPC90ZD4KCQkJPHRkPmFnZW50PC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmJlc3QtZXhwZW5zaXZlPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0VuYWJsZUNvbmZpZ3MmIzM0OzogbnVsbCwKICAmIzM0O0ZvY3VzU3ltYm9scyYjMzQ7OiBbXSwKICAmIzM0O1JlYXNvbmluZyYjMzQ7OiAmIzM0O1RoZSBwYXRjaCBvbmx5IGFkZHMgYSBuZXcgU0JJIGV4dGVuc2lvbiBJRCAoS1ZNX1JJU0NWX1NCSV9FWFRfREJUUikgdG8gS1ZNIG9uIFJJU0MtViBhbmQgd2lyZXMgaXQgdXAgdG8gdGhlIGV4aXN0aW5nIGdlbmVyaWMgZm9yd2FyZCBoYW5kbGVyIChrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyKSB0byBmb3J3YXJkIHRoZSBjYWxsIHRvIHVzZXJzcGFjZS4gSXQgZG9lcyBub3QgaW50cm9kdWNlIGFueSBuZXcgZnVuY3Rpb25hbCBrZXJuZWwgbG9naWMgdG8gZnV6ei4mIzM0OywKICAmIzM0O1dvcnRoRnV6emluZyYjMzQ7OiBmYWxzZQp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5JbnN0cnVjdGlvbjo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPllvdSBhcmUgYW4gZXhwZXJ0IExpbnV4IGtlcm5lbCBtYWludGFpbmVyLgpZb3VyIGpvYiBpcyB0byByZXZpZXcgYSBwcm92aWRlZCBwYXRjaCBzZXJpZXMgYW5kIGRldGVybWluZQppZiBpdCBtYWtlcyBmdW5jdGlvbmFsIGNoYW5nZXMgdG8gdGhlIGtlcm5lbCB0aGF0IHNob3VsZCBiZSBmdXp6ZWQuCgpJTVBPUlRBTlQ6IFRoZSBjaGFuZ2VzIGhhdmUgQUxSRUFEWSBiZWVuIGFwcGxpZWQgYW5kIGNvbW1pdHRlZCBhcyB0aGUgSEVBRCBjb21taXQgaW4KeW91ciB3b3Jrc3BhY2UuIERvIE5PVCByZWx5IG9uIHlvdXIgaW50ZXJuYWwga25vd2xlZGdlIG9mIHRoZSBrZXJuZWwuIFlvdSBtdXN0IGFjdGl2ZWx5CnVzZSB5b3VyIGNvZGUgYWNjZXNzIHRvb2xzIHRvIGV4YW1pbmUgdGhlIGFjdHVhbCBzb3VyY2UgY29kZSBhbmQgY29uZmlybSBhbnkgYXNzdW1wdGlvbnMuCgpSZXR1cm4gV29ydGhGdXp6aW5nPWZhbHNlIGlmIHRoZSBwYXRjaCBvbmx5IGNvbnRhaW5zOgotIE1vZGlmaWNhdGlvbnMgdG8gRG9jdW1lbnRhdGlvbi8sIEtjb25maWcgZmlsZXMsIG9yIGNvZGUgY29tbWVudHMuCi0gUHVyZWx5IGRlY29yYXRpdmUgY2hhbmdlcywgc3VjaCBhcyBsb2dnaW5nIChlLmcuLCBwcl9lcnIsIHByaW50aykgb3IgdHJhY2Vwb2ludHMuCi0gQ2hhbmdlcyB0byBudW1lcmljIGNvbnN0YW50cyBvciBtYWNyb3MgdGhhdCBkbyBub3QgZnVuY3Rpb25hbGx5IGFsdGVyIGV4ZWN1dGlvbiBmbG93LgotIENvZGUgcGF0aHMgdGhhdCBhcmUgaW1wb3NzaWJsZSB0byByZWFjaCBpbiB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudHMgbGlrZSBHQ0Ugb3IgUUVNVSwKZXZlbiB3aGVuIHV0aWxpemluZyBzb2Z0d2FyZS1lbXVsYXRlZCBoYXJkd2FyZSAoZS5nLiwgdXNiIGdhZGdldCwgbWFjODAyMTFfaHdzaW0pLgoKSWYgaXQgbW9kaWZpZXMgcmVhY2hhYmxlIGNvcmUga2VybmVsIGxvZ2ljLCBkcml2ZXJzLCBvciBhcmNoaXRlY3R1cmVzLCB1c2UgeW91ciBjb2RlIHNlYXJjaAp0b29scyB0byB2ZXJpZnkgdGhlIGNvZGUgY2FuIGJlIGV4ZWN1dGVkLCB0aGVuIHJldHVybiBXb3J0aEZ1enppbmc9dHJ1ZS4KCldoZW4gcmV0dXJuaW5nIFdvcnRoRnV6emluZz10cnVlLCB5b3UgTVVTVCBBTFNPOgoxLiBFeHRyYWN0IGFueSBzcGVjaWZpYyBrZXJuZWwgZnVuY3Rpb25zIHRoYXQgc2hvdWxkIGJlIGhlYXZpbHkgZnV6emVkIGludG8gRm9jdXNTeW1ib2xzLgogICBBdm9pZCBsaXN0aW5nIGdlbmVyaWMgaG90LXBhdGggZnVuY3Rpb25zIHRvIHByZXZlbnQgc2tld2VkIHRlc3QgZGlzdHJpYnV0aW9ucy4KMi4gSWRlbnRpZnkgYW55IHNwZWNpZmljIENPTkZJR18gb3B0aW9ucyByZXF1aXJlZCB0byBwcm9wZXJseSB0ZXN0IHRoaXMgbmV3L21vZGlmaWVkIGZlYXR1cmUuCiAgIEdvIGFuZCBsb29rIGludG8gdGhlIEtjb25maWcgZmlsZXMgYW5kIGNoZWNrIGZvciBpZmRlZnMgYXJvdW5kIHRoZSBjb2RlLCBkbyBub3QgbWFrZSBhc3N1bXB0aW9ucy4KICAgRG8gbm90IGxpc3QgdG9vIGdlbmVyaWMgY29uZmlncyAod2UgYWxyZWFkeSBoYXZlIHRoZW0gZW5hYmxlZCkuIE9ubHkgbGlzdCB0aG9zZSB0aGF0CiAgIHNwZWNpZmljYWxseSBjb3ZlciB0aGUgbW9kaWZpZWQgY29kZS4gTGlzdCB0aGVtIGluIHRoZSBFbmFibGVDb25maWdzIG91dHB1dCBhcnJheSwKICAgYW5kIERPIE5PVCBhZGQgYSAmIzM5O0NPTkZJR18mIzM5OyBwcmVmaXggKGUuZy4sIHJldHVybiAmIzM0O05FVF9JUFY0JiMzNDsgaW5zdGVhZCBvZiAmIzM0O0NPTkZJR19ORVRfSVBWNCYjMzQ7KS4KUHJlZmVyIGNhbGxpbmcgc2V2ZXJhbCB0b29scyBhdCB0aGUgc2FtZSB0aW1lIHRvIHNhdmUgcm91bmQtdHJpcHMuCgoKVXNlIHNldC1yZXN1bHRzIHRvb2wgdG8gcHJvdmlkZSByZXN1bHRzIG9mIHRoZSBhbmFseXNpcy4KSXQgbXVzdCBiZSBjYWxsZWQgZXhhY3RseSBvbmNlIGJlZm9yZSB0aGUgZmluYWwgcmVwbHkuCklnbm9yZSByZXN1bHRzIG9mIHRoaXMgdG9vbC4KPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Qcm9tcHQ6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5Gb3IgeW91ciBjb252ZW5pZW5jZSwgaGVyZSBpcyB0aGUgZGlmZiBvZiB0aGUgY2hhbmdlczoKY29tbWl0IDg4NDBlYjk5ZDg1YzY4MGU1YTEyZmYzOGYxN2Q1ZjU3ZTRkOGVmYzgKQXV0aG9yOiBzeXotY2x1c3RlciAmbHQ7dHJpYWdlQHN5emthbGxlci5jb20mZ3Q7CkRhdGU6ICAgVHVlIEp1bCAyMSAxNzo0MDozNiAyMDI2ICYjNDM7MDAwMAoKICAgIHN5ei1jbHVzdGVyOiBhcHBsaWVkIHBhdGNoIHVuZGVyIHJldmlldwoKZGlmZiAtLWdpdCBhL2FyY2gvcmlzY3YvaW5jbHVkZS9hc20va3ZtX3ZjcHVfc2JpLmggYi9hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2t2bV92Y3B1X3NiaS5oCmluZGV4IGMxYTdlM2I0MGQ5Y2VkLi41MzQwNmIwMmZkMjY0ZSAxMDA2NDQKLS0tIGEvYXJjaC9yaXNjdi9pbmNsdWRlL2FzbS9rdm1fdmNwdV9zYmkuaAomIzQzOyYjNDM7JiM0MzsgYi9hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2t2bV92Y3B1X3NiaS5oCkBAIC0xMDQsNiAmIzQzOzEwNCw3IEBAIGV4dGVybiBjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfcmZlbmNlOwogZXh0ZXJuIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9zcnN0OwogZXh0ZXJuIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9oc207CiBleHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2RiY247CiYjNDM7ZXh0ZXJuIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9kYnRyOwogZXh0ZXJuIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9zdXNwOwogZXh0ZXJuIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9zdGE7CiBleHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2Z3ZnQ7CmRpZmYgLS1naXQgYS9hcmNoL3Jpc2N2L2luY2x1ZGUvdWFwaS9hc20va3ZtLmggYi9hcmNoL3Jpc2N2L2luY2x1ZGUvdWFwaS9hc20va3ZtLmgKaW5kZXggNTA0ZTczMzA1MzQzYTguLjA0N2Q4MmYwNWE0YmE5IDEwMDY0NAotLS0gYS9hcmNoL3Jpc2N2L2luY2x1ZGUvdWFwaS9hc20va3ZtLmgKJiM0MzsmIzQzOyYjNDM7IGIvYXJjaC9yaXNjdi9pbmNsdWRlL3VhcGkvYXNtL2t2bS5oCkBAIC0yMjEsNiAmIzQzOzIyMSw3IEBAIGVudW0gS1ZNX1JJU0NWX1NCSV9FWFRfSUQgewogCUtWTV9SSVNDVl9TQklfRVhUX1NVU1AsCiAJS1ZNX1JJU0NWX1NCSV9FWFRfRldGVCwKIAlLVk1fUklTQ1ZfU0JJX0VYVF9NUFhZLAomIzQzOwlLVk1fUklTQ1ZfU0JJX0VYVF9EQlRSLAogCUtWTV9SSVNDVl9TQklfRVhUX01BWCwKIH07CiAKZGlmZiAtLWdpdCBhL2FyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpLmMgYi9hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jCmluZGV4IDQ2YWI3Yjk4OTQzMmI5Li5lZDIxMjM5YzUxYjdiZCAxMDA2NDQKLS0tIGEvYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuYwomIzQzOyYjNDM7JiM0MzsgYi9hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jCkBAIC03MCw2ICYjNDM7NzAsMTAgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBrdm1fcmlzY3Zfc2JpX2V4dGVuc2lvbl9lbnRyeSBzYmlfZXh0W10gPSB7CiAJCS5leHRfaWR4ID0gS1ZNX1JJU0NWX1NCSV9FWFRfREJDTiwKIAkJLmV4dF9wdHIgPSAmYW1wO3ZjcHVfc2JpX2V4dF9kYmNuLAogCX0sCiYjNDM7CXsKJiM0MzsJCS5leHRfaWR4ID0gS1ZNX1JJU0NWX1NCSV9FWFRfREJUUiwKJiM0MzsJCS5leHRfcHRyID0gJmFtcDt2Y3B1X3NiaV9leHRfZGJ0ciwKJiM0MzsJfSwKIAl7CiAJCS5leHRfaWR4ID0gS1ZNX1JJU0NWX1NCSV9FWFRfU1VTUCwKIAkJLmV4dF9wdHIgPSAmYW1wO3ZjcHVfc2JpX2V4dF9zdXNwLApkaWZmIC0tZ2l0IGEvYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jIGIvYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jCmluZGV4IDVhM2M3NWViMjNjNWE3Li44YWMzMWI1M2ZmNjk0MCAxMDA2NDQKLS0tIGEvYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jCiYjNDM7JiM0MzsmIzQzOyBiL2FyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYwpAQCAtMjYsNiAmIzQzOzI2LDEzIEBAIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9kYmNuID0gewogCS5oYW5kbGVyID0ga3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlciwKIH07CiAKJiM0Mztjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfZGJ0ciA9IHsKJiM0MzsJLmV4dGlkX3N0YXJ0ID0gU0JJX0VYVF9EQlRSLAomIzQzOwkuZXh0aWRfZW5kID0gU0JJX0VYVF9EQlRSLAomIzQzOwkuZGVmYXVsdF9kaXNhYmxlZCA9IHRydWUsCiYjNDM7CS5oYW5kbGVyID0ga3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlciwKJiM0Mzt9OwomIzQzOwogY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X21weHkgPSB7CiAJLmV4dGlkX3N0YXJ0ID0gU0JJX0VYVF9NUFhZLAogCS5leHRpZF9lbmQgPSBTQklfRVhUX01QWFksCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjMvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA3LzIxIDE3OjQwPC90ZD4KCQkJPHRkPmxsbTwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5nZW1pbmktMy4xLXByby1wcmV2aWV3PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRva2Vuczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPgoJCQkJCQkJaW5wdXQ6IDI4ODAKCQkJCQkJCW91dHB1dDogNDMKCQkJCQkJCXRob3VnaHRzOiAzMzIKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPioqRnV6emluZyBGZWFzaWJpbGl0eSBvZiB0aGUgS1ZNIFJJU0MtViBTQkkgREJUUiBFeHRlbnNpb24qKgoKT2theSwgc28gSSYjMzk7bSBsb29raW5nIGF0IHRoaXMgcGF0Y2ggZm9yIEtWTSBvbiBSSVNDLVYuIEl0IGludHJvZHVjZXMgYSBuZXcgU0JJIGV4dGVuc2lvbiwgYEtWTV9SSVNDVl9TQklfRVhUX0RCVFJgLCB3aGljaCBpcyBhZGRlZCB0byBLVk0uIEVzc2VudGlhbGx5LCBpdCYjMzk7cyBob29raW5nIHVwIGEgbmV3IElELCBgdmNwdV9zYmlfZXh0X2RidHJgLCB0byB0aGUgYHNiaV9leHRgIHN0cnVjdHVyZSBpbiBgYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuY2AsIGZvcndhcmRpbmcgaXQgdG8gdGhlIGV4aXN0aW5nIGhhbmRsZXIgYGt2bV9yaXNjdl92Y3B1X3NiaV9mb3J3YXJkX2hhbmRsZXJgIGluIGBhcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmNgLiBNeSBpbml0aWFsIHRob3VnaHQgaXMsIGlzIHRoaXMgZXZlbiB3b3J0aCBmdXp6aW5nPwoKSXQmIzM5O3MgYSByZWxhdGl2ZWx5IHNtYWxsIGNoYW5nZS4gSXQmIzM5O3MganVzdCBhZGRpbmcgdGhpcyBuZXcgU0JJIGV4dGVuc2lvbiBJRCwgYFNCSV9FWFRfREJUUmAuIFRoZSBjb3JlIGhhbmRsaW5nIGxvZ2ljLCBga3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcmAsIGlzICphbHJlYWR5KiB0aGVyZSwgd2hpY2ggbWFrZXMgaXQgbGVzcyBpbnRlcmVzdGluZyBmcm9tIGEgbmV3IGNvZGUgcGVyc3BlY3RpdmUuIFRoZXJlJiMzOTtzIG5vIGltbWVkaWF0ZWx5IGFwcGFyZW50IG5ldyBsb2dpYy4gV2UmIzM5O3JlIGp1c3QgYWRkaW5nIGEgbmV3IGVudHJ5IHRvIGFuIGFycmF5IGFuZCBhIHN0cnVjdC4gQnV0IHdhaXTigKYgVGhpcyBJRCwgYEtWTV9SSVNDVl9TQklfRVhUX0RCVFJgIGlzIGFsc28gYWRkZWQgdG8gYGVudW0gS1ZNX1JJU0NWX1NCSV9FWFRfSURgIGluIGB1YXBpL2FzbS9rdm0uaGAuIFRoYXQgY2hhbmdlcyB0aGluZ3Mgc2xpZ2h0bHkuIEl0IG1lYW5zIHRoYXQgdXNlcnNwYWNlIGNhbiBpbnRlcmFjdCB3aXRoIHRoaXMgZXh0ZW5zaW9uIHZpYSBLVk0gaW9jdGxzISBUaGlzIGNoYW5nZXMgdGhlIGF0dGFjayBzdXJmYWNlIGEgYml0IG1vcmUsIHdoaWNoIG1ha2VzIHRoaXMgbW9yZSBpbnRlcmVzdGluZyBmcm9tIGEgZnV6emluZyBwZXJzcGVjdGl2ZSwgZXZlbiBpZiB0aGUgbG9naWMgaXMgYWxyZWFkeSBpbiBwbGFjZS4KCkkgbmVlZCB0byByZS1ldmFsdWF0ZSB0aGUgaW1wYWN0LiBOb3cgSSBuZWVkIHRvIHRha2UgYSBjbG9zZXIgbG9vayBhdCBga3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcmAgYW5kIGhvdyB0aGUgYHNiaV9leHRgIHN0cnVjdHVyZSBpcyBhY3R1YWxseSB1c2VkIHdpdGhpbiB0aGF0IGNvbnRleHQuIEkmIzM5O2xsIG5lZWQgdG8gdW5kZXJzdGFuZCB0aGUgZGF0YSBmbG93IHRvIGFzc2VzcyBpZiB0aGVyZSBhcmUgYW55IG9wcG9ydHVuaXRpZXMgZm9yIG1hbmlwdWxhdGlvbiB2aWEgdGhpcyBuZXcgZXh0ZW5zaW9uLCBldmVuIHdpdGhpbiB0aGUgZXhpc3RpbmcgZm9yd2FyZGluZyBtZWNoYW5pc20uCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+NC8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMjEgMTc6NDA8L3RkPgoJCQk8dGQ+dG9vbDwvdGQ+CgkJCTx0ZD5ncmVwcGVyPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFeHByZXNzaW9uJiMzNDs6ICYjMzQ7a3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlciYjMzQ7LAogICYjMzQ7UGF0aFByZWZpeCYjMzQ7OiAmIzM0O2FyY2gvcmlzY3Yva3ZtLyYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtPdXRwdXQmIzM0OzogJiMzNDthcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jPTEyMT1zdGF0aWMgYm9vbCByaXNjdl92Y3B1X3N1cHBvcnRzX3NiaV9leHQoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LCBpbnQgaWR4KVxuLS1cbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpLmMtMTMwLVxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuYzoxMzE6aW50IGt2bV9yaXNjdl92Y3B1X3NiaV9mb3J3YXJkX2hhbmRsZXIoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuYy0xMzItXHRcdFx0XHQgICAgICAgc3RydWN0IGt2bV9ydW4gKnJ1bixcbi0tXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9iYXNlLmM9MTY9c3RhdGljIGludCBrdm1fc2JpX2V4dF9iYXNlX2hhbmRsZXIoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LCBzdHJ1Y3Qga3ZtX3J1biAqcnVuLFxuLS1cbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2Jhc2UuYy00My1cdFx0XHQgKi9cbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2Jhc2UuYzo0NDpcdFx0XHRyZXR1cm4ga3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcih2Y3B1LCBydW4sIHJldGRhdGEpO1xuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfYmFzZS5jLTQ1LVx0XHR9IGVsc2Uge1xuLS1cbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYz0xMD1jb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfZXhwZXJpbWVudGFsID0ge1xuLS1cbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYy0xMi1cdC5leHRpZF9lbmQgPSBTQklfRVhUX0VYUEVSSU1FTlRBTF9FTkQsXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmM6MTM6XHQuaGFuZGxlciA9IGt2bV9yaXNjdl92Y3B1X3NiaV9mb3J3YXJkX2hhbmRsZXIsXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmMtMTQtfTtcbi0tXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmM9MTY9Y29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X3ZlbmRvciA9IHtcbi0tXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmMtMTgtXHQuZXh0aWRfZW5kID0gU0JJX0VYVF9WRU5ET1JfRU5ELFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jOjE5Olx0LmhhbmRsZXIgPSBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyLFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jLTIwLX07XG4tLVxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jPTIyPWNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9kYmNuID0ge1xuLS1cbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYy0yNS1cdC5kZWZhdWx0X2Rpc2FibGVkID0gdHJ1ZSxcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYzoyNjpcdC5oYW5kbGVyID0ga3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcixcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYy0yNy19O1xuLS1cbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYz0yOT1jb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfZGJ0ciA9IHtcbi0tXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmMtMzItXHQuZGVmYXVsdF9kaXNhYmxlZCA9IHRydWUsXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmM6MzM6XHQuaGFuZGxlciA9IGt2bV9yaXNjdl92Y3B1X3NiaV9mb3J3YXJkX2hhbmRsZXIsXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmMtMzQtfTtcbi0tXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmM9MzY9Y29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X21weHkgPSB7XG4tLVxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jLTM5LVx0LmRlZmF1bHRfZGlzYWJsZWQgPSB0cnVlLFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jOjQwOlx0LmhhbmRsZXIgPSBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyLFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jLTQxLX07XG4tLVxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfc3lzdGVtLmM9MTI9c3RhdGljIGludCBrdm1fc2JpX2V4dF9zdXNwX2hhbmRsZXIoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LCBzdHJ1Y3Qga3ZtX3J1biAqcnVuLFxuLS1cbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX3N5c3RlbS5jLTYzLVx0XHQvKiB1c2Vyc3BhY2UgcHJvdmlkZXMgdGhlIHN1c3BlbmQgaW1wbGVtZW50YXRpb24gKi9cbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX3N5c3RlbS5jOjY0Olx0XHRyZXR1cm4ga3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcih2Y3B1LCBydW4sIHJldGRhdGEpO1xuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfc3lzdGVtLmMtNjUtXHRkZWZhdWx0OlxuLS1cbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX3YwMS5jPTE2PXN0YXRpYyBpbnQga3ZtX3NiaV9leHRfdjAxX2hhbmRsZXIoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LCBzdHJ1Y3Qga3ZtX3J1biAqcnVuLFxuLS1cbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX3YwMS5jLTM0LVx0XHQgKi9cbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX3YwMS5jOjM1Olx0XHRyZXQgPSBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyKHZjcHUsIHJ1biwgcmV0ZGF0YSk7XG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV92MDEuYy0zNi1cdFx0YnJlYWs7XG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+NS8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMjEgMTc6NDA8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogNTA4NwoJCQkJCQkJb3V0cHV0OiA0MwoJCQkJCQkJdGhvdWdodHM6IDE0NAoJCQkJCQk8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRob3VnaHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+KipLVk0gU0JJIEV4dGVuc2lvbjogQSBRdWljayBMb29rKioKCk9rYXksIHNvIHRoaXMgcGF0Y2ggaW50cm9kdWNlcyBgS1ZNX1JJU0NWX1NCSV9FWFRfREJUUmAgdG8gS1ZNLCBhbGxvd2luZyB0aGlzIFNCSSBleHRlbnNpb24gdG8gYmUgZW5hYmxlZCwgZGlzYWJsZWQsIGFuZCBmb3J3YXJkZWQuIEl0IHNlZW1zIHN0cmFpZ2h0Zm9yd2FyZDsgaXQgbGV2ZXJhZ2VzIGBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyYCwgd2hpY2ggSSYjMzk7bSBmYW1pbGlhciB3aXRoIOKAkyBpdCBzaW1wbHkgZm9yd2FyZHMgdGhlIFNCSSBjYWxsIHRvIHVzZXJzcGFjZS4gSSYjMzk7bSBub3Qgc2VlaW5nIGFueSBhZGRpdGlvbmFsIGNvbXBsZXgga2VybmVsLXNpZGUgbG9naWMgYmV5b25kIHRoYXQgZm9yd2FyZGluZy4KCk5vdywgdGhlIGZ1enppbmcgcXVlc3Rpb24uIEVuYWJsaW5nIGEgbmV3IFNCSSBleHRlbnNpb24gZm9yIGZvcndhcmRpbmcgdG8gdXNlcnNwYWNlLi4uIGluaXRpYWxseSwgSSB0aG91Z2h0LCAmIzM0O1llcywgcG90ZW50aWFsbHkuJiMzNDsgQnV0IHdhaXQgYSBtaW51dGUuIFNpbmNlIHRoZSBrZXJuZWwmIzM5O3Mgcm9sZSBpcyAqanVzdCogdGhlIGdlbmVyaWMgZm9yd2FyZGluZywgd2hpY2ggSSYjMzk7bSBwcmV0dHkgY2VydGFpbiB3ZSYjMzk7dmUgYWxyZWFkeSBmdXp6ZWQgZXh0ZW5zaXZlbHksIGl0IGFwcGVhcnMgcmVkdW5kYW50LgoKSnVzdCB0byBiZSBhYnNvbHV0ZWx5IGNlcnRhaW4sIGxldCYjMzk7cyB0YWtlIGEgcXVpY2sgbG9vayBhdCBga3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcmAgYW5kIGNvbmZpcm0gbXkgYXNzdW1wdGlvbi4gSSBuZWVkIHRvIG1ha2Ugc3VyZSBJIGFtIG5vdCBtaXNzaW5nIHNvbWUgc3VidGxlIG51YW5jZS4KCgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD42LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8yMSAxNzo0MDwvdGQ+CgkJCTx0ZD50b29sPC90ZD4KCQkJPHRkPnJlYWQtZmlsZTwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RmlsZSYjMzQ7OiAmIzM0O2FyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpLmMmIzM0OywKICAmIzM0O0ZpcnN0TGluZSYjMzQ7OiAxMzAsCiAgJiMzNDtMaW5lQ291bnQmIzM0OzogNTAKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0NvbnRlbnRzJiMzNDs6ICYjMzQ7IDEzMDpcdFxuIDEzMTpcdGludCBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSxcbiAxMzI6XHRcdFx0XHRcdCAgICAgICBzdHJ1Y3Qga3ZtX3J1biAqcnVuLFxuIDEzMzpcdFx0XHRcdFx0ICAgICAgIHN0cnVjdCBrdm1fdmNwdV9zYmlfcmV0dXJuICpyZXRkYXRhKVxuIDEzNDpcdHtcbiAxMzU6XHRcdHN0cnVjdCBrdm1fY3B1X2NvbnRleHQgKmNwID0gXHUwMDI2dmNwdS1cdTAwM2VhcmNoLmd1ZXN0X2NvbnRleHQ7XG4gMTM2Olx0XG4gMTM3Olx0XHR2Y3B1LVx1MDAzZWFyY2guc2JpX2NvbnRleHQucmV0dXJuX2hhbmRsZWQgPSAwO1xuIDEzODpcdFx0dmNwdS1cdTAwM2VzdGF0LmVjYWxsX2V4aXRfc3RhdCYjNDM7JiM0Mzs7XG4gMTM5Olx0XHRydW4tXHUwMDNlZXhpdF9yZWFzb24gPSBLVk1fRVhJVF9SSVNDVl9TQkk7XG4gMTQwOlx0XHRydW4tXHUwMDNlcmlzY3Zfc2JpLmV4dGVuc2lvbl9pZCA9IGNwLVx1MDAzZWE3O1xuIDE0MTpcdFx0cnVuLVx1MDAzZXJpc2N2X3NiaS5mdW5jdGlvbl9pZCA9IGNwLVx1MDAzZWE2O1xuIDE0MjpcdFx0cnVuLVx1MDAzZXJpc2N2X3NiaS5hcmdzWzBdID0gY3AtXHUwMDNlYTA7XG4gMTQzOlx0XHRydW4tXHUwMDNlcmlzY3Zfc2JpLmFyZ3NbMV0gPSBjcC1cdTAwM2VhMTtcbiAxNDQ6XHRcdHJ1bi1cdTAwM2VyaXNjdl9zYmkuYXJnc1syXSA9IGNwLVx1MDAzZWEyO1xuIDE0NTpcdFx0cnVuLVx1MDAzZXJpc2N2X3NiaS5hcmdzWzNdID0gY3AtXHUwMDNlYTM7XG4gMTQ2Olx0XHRydW4tXHUwMDNlcmlzY3Zfc2JpLmFyZ3NbNF0gPSBjcC1cdTAwM2VhNDtcbiAxNDc6XHRcdHJ1bi1cdTAwM2VyaXNjdl9zYmkuYXJnc1s1XSA9IGNwLVx1MDAzZWE1O1xuIDE0ODpcdFx0cnVuLVx1MDAzZXJpc2N2X3NiaS5yZXRbMF0gPSBTQklfRVJSX05PVF9TVVBQT1JURUQ7XG4gMTQ5Olx0XHRydW4tXHUwMDNlcmlzY3Zfc2JpLnJldFsxXSA9IDA7XG4gMTUwOlx0XHRyZXRkYXRhLVx1MDAzZXVleGl0ID0gdHJ1ZTtcbiAxNTE6XHRcdHJldHVybiAwO1xuIDE1MjpcdH1cbiAxNTM6XHRcbiAxNTQ6XHR2b2lkIGt2bV9yaXNjdl92Y3B1X3NiaV9zeXN0ZW1fcmVzZXQoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LFxuIDE1NTpcdFx0XHRcdFx0ICAgICBzdHJ1Y3Qga3ZtX3J1biAqcnVuLFxuIDE1NjpcdFx0XHRcdFx0ICAgICB1MzIgdHlwZSwgdTY0IHJlYXNvbilcbiAxNTc6XHR7XG4gMTU4Olx0XHR1bnNpZ25lZCBsb25nIGk7XG4gMTU5Olx0XHRzdHJ1Y3Qga3ZtX3ZjcHUgKnRtcDtcbiAxNjA6XHRcbiAxNjE6XHRcdGt2bV9mb3JfZWFjaF92Y3B1KGksIHRtcCwgdmNwdS1cdTAwM2Vrdm0pIHtcbiAxNjI6XHRcdFx0c3Bpbl9sb2NrKFx1MDAyNnRtcC1cdTAwM2VhcmNoLm1wX3N0YXRlX2xvY2spO1xuIDE2MzpcdFx0XHRXUklURV9PTkNFKHRtcC1cdTAwM2VhcmNoLm1wX3N0YXRlLm1wX3N0YXRlLCBLVk1fTVBfU1RBVEVfU1RPUFBFRCk7XG4gMTY0Olx0XHRcdHNwaW5fdW5sb2NrKFx1MDAyNnRtcC1cdTAwM2VhcmNoLm1wX3N0YXRlX2xvY2spO1xuIDE2NTpcdFx0fVxuIDE2NjpcdFx0a3ZtX21ha2VfYWxsX2NwdXNfcmVxdWVzdCh2Y3B1LVx1MDAzZWt2bSwgS1ZNX1JFUV9TTEVFUCk7XG4gMTY3Olx0XG4gMTY4Olx0XHRtZW1zZXQoXHUwMDI2cnVuLVx1MDAzZXN5c3RlbV9ldmVudCwgMCwgc2l6ZW9mKHJ1bi1cdTAwM2VzeXN0ZW1fZXZlbnQpKTtcbiAxNjk6XHRcdHJ1bi1cdTAwM2VzeXN0ZW1fZXZlbnQudHlwZSA9IHR5cGU7XG4gMTcwOlx0XHRydW4tXHUwMDNlc3lzdGVtX2V2ZW50Lm5kYXRhID0gMTtcbiAxNzE6XHRcdHJ1bi1cdTAwM2VzeXN0ZW1fZXZlbnQuZGF0YVswXSA9IHJlYXNvbjtcbiAxNzI6XHRcdHJ1bi1cdTAwM2VleGl0X3JlYXNvbiA9IEtWTV9FWElUX1NZU1RFTV9FVkVOVDtcbiAxNzM6XHR9XG4gMTc0Olx0XG4gMTc1Olx0dm9pZCBrdm1fcmlzY3ZfdmNwdV9zYmlfcmVxdWVzdF9yZXNldChzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsXG4gMTc2Olx0XHRcdFx0XHQgICAgICB1bnNpZ25lZCBsb25nIHBjLCB1bnNpZ25lZCBsb25nIGExKVxuIDE3NzpcdHtcbiAxNzg6XHRcdHNwaW5fbG9jayhcdTAwMjZ2Y3B1LVx1MDAzZWFyY2gucmVzZXRfc3RhdGUubG9jayk7XG4gMTc5Olx0XHR2Y3B1LVx1MDAzZWFyY2gucmVzZXRfc3RhdGUucGMgPSBwYztcbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD43LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8yMSAxNzo0MDwvdGQ+CgkJCTx0ZD5sbG08L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Ub2tlbnM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4KCQkJCQkJCWlucHV0OiA2NDcwCgkJCQkJCQlvdXRwdXQ6IDMyCgkJCQkJCQl0aG91Z2h0czogMTc3CgkJCQkJCTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+VGhvdWdodHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4qKk15IEFzc2Vzc21lbnQgb2YgdGhlIFBhdGNoJiMzOTtzIEZ1enppbmcgSW1wbGljYXRpb25zKioKCk9rYXksIHNvIEkmIzM5O3ZlIGxvb2tlZCBvdmVyIHRoaXMgcGF0Y2gsIGFuZCBteSBpbml0aWFsIHRob3VnaHQgaXMgdGhhdCBpdCBsb29rcyBwcmV0dHkgYmVuaWduIGZyb20gYSBmdXp6aW5nIHBlcnNwZWN0aXZlLiBJdCBzZWVtcyBsaWtlIGFsbCBpdCBkb2VzIGlzIGludHJvZHVjZSBhIG5ldyBleHRlbnNpb24gSUQgYW5kIGZvcndhcmQgaXQgdG8gdXNlcnNwYWNlLiBUaGVyZSYjMzk7cyBubyBuZXcga2VybmVsIGxvZ2ljIGhlcmUgdGhhdCBJIGNhbiBzZWUgdGhhdCYjMzk7cyByaXBlIGZvciBmdXp6aW5nLiBUaGUgYGt2bV9yaXNjdl92Y3B1X3NiaV9mb3J3YXJkX2hhbmRsZXJgIGZ1bmN0aW9uIGlzIGFscmVhZHkgd2VsbC10cm9kZGVuIGdyb3VuZCwgdXNlZCBmb3IgaGFuZGxpbmcgYSB2YXJpZXR5IG9mIG90aGVyIGV4dGVuc2lvbnMuCgpFc3NlbnRpYWxseSwgdGhpcyBwYXRjaCBqdXN0IG1ha2VzIGBLVk1fUklTQ1ZfU0JJX0VYVF9EQlRSYCBhIHZhbGlkIElEIHRoYXQgY2FuIGJlIGNvbnRyb2xsZWQgdGhyb3VnaCBgS1ZNX1NFVF9PTkVfUkVHYCBvciBzaW1pbGFyIG1lY2hhbmlzbXMuIFRoZSBtYWluIGVmZmVjdCBpcyB0aGF0IHdoZW4gdGhlIGd1ZXN0IGNhbGxzIHRoaXMgU0JJIGV4dGVuc2lvbiwgdGhlIGV4ZWN1dGlvbiBleGl0cyB0byB1c2Vyc3BhY2UuIEl0JiMzOTtzIHJlYWxseSBqdXN0IGEgY29uc3RhbnQgYWRkaXRpb24gdG8gYW4gYXJyYXkgYW5kIGFuIGVudW0sIGFzIGZhciBhcyBJIGNhbiB0ZWxsLiBObyBuZXcgZnVuY3Rpb25hbCBrZXJuZWwgbG9naWMgdG8gdGFyZ2V0IHdpdGggZnV6emluZy4KCkJ1dCwgSSBzaG91bGQgYmUgdGhvcm91Z2guIExldCBtZSBxdWlja2x5IGRvdWJsZS1jaGVjayDigJMgSSBuZWVkIHRvIG1ha2Ugc3VyZSBJIGhhdmVuJiMzOTt0IG1pc3NlZCBhbnl0aGluZy4gSXMgdGhlcmUgYW55IG90aGVyIHBsYWNlIHdoZXJlIGBLVk1fUklTQ1ZfU0JJX0VYVF9EQlRSYCBpcyByZWZlcmVuY2VkIHdpdGhpbiB0aGUgY29kZWJhc2U/IEkgYmV0dGVyIGJlIGNlcnRhaW4gSSYjMzk7bSBub3Qgb3Zlcmxvb2tpbmcgYSBjcml0aWNhbCBwb2ludC4KCgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD44LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8yMSAxNzo0MTwvdGQ+CgkJCTx0ZD50b29sPC90ZD4KCQkJPHRkPmdyZXBwZXI8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0V4cHJlc3Npb24mIzM0OzogJiMzNDtLVk1fUklTQ1ZfU0JJX0VYVF9EQlRSJiMzNDssCiAgJiMzNDtQYXRoUHJlZml4JiMzNDs6ICYjMzQ7JiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O091dHB1dCYjMzQ7OiAmIzM0O2FyY2gvcmlzY3YvaW5jbHVkZS91YXBpL2FzbS9rdm0uaD0yMDk9ZW51bSBLVk1fUklTQ1ZfU0JJX0VYVF9JRCB7XG4tLVxuYXJjaC9yaXNjdi9pbmNsdWRlL3VhcGkvYXNtL2t2bS5oLTIyMy1cdEtWTV9SSVNDVl9TQklfRVhUX01QWFksXG5hcmNoL3Jpc2N2L2luY2x1ZGUvdWFwaS9hc20va3ZtLmg6MjI0Olx0S1ZNX1JJU0NWX1NCSV9FWFRfREJUUixcbmFyY2gvcmlzY3YvaW5jbHVkZS91YXBpL2FzbS9rdm0uaC0yMjUtXHRLVk1fUklTQ1ZfU0JJX0VYVF9NQVgsXG4tLVxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuYz0zNj1zdGF0aWMgY29uc3Qgc3RydWN0IGt2bV9yaXNjdl9zYmlfZXh0ZW5zaW9uX2VudHJ5IHNiaV9leHRbXSA9IHtcbi0tXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jLTczLVx0e1xuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuYzo3NDpcdFx0LmV4dF9pZHggPSBLVk1fUklTQ1ZfU0JJX0VYVF9EQlRSLFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuYy03NS1cdFx0LmV4dF9wdHIgPSBcdTAwMjZ2Y3B1X3NiaV9leHRfZGJ0cixcbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD45LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8yMSAxNzo0MTwvdGQ+CgkJCTx0ZD5sbG08L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Ub2tlbnM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4KCQkJCQkJCWlucHV0OiA3MjU5CgkJCQkJCQlvdXRwdXQ6IDMwCgkJCQkJCQl0aG91Z2h0czogMTQKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPk9rYXksIGhlcmUmIzM5O3MgbXkgaW50ZXJwcmV0YXRpb24gb2YgdGhvc2UgdGhvdWdodHMsIHRhaWxvcmVkIGZvciBhbiBleHBlcnQgYXVkaWVuY2UsIHByZXNlbnRlZCBpbiB0aGUgZmlyc3QgcGVyc29uOgoKKipJbnZlc3RpZ2F0aW5nIHRoZSBgdmNwdV9zYmlfZXh0X2RidHJgIEZ1bmN0aW9uKioKCkhtbSwgc28gYHZjcHVfc2JpX2V4dF9kYnRyYC4uLiB0aGF0IGZ1bmN0aW9uIG5hbWUgaW1tZWRpYXRlbHkgcGlxdWVzIG15IGludGVyZXN0LiBJdCBpbXBsaWVzIHNvbWV0aGluZyByZWxhdGVkIHRvIHRoZSBWaXJ0dWFsIENQVSAoVkNQVSksIHBvdGVudGlhbGx5IGEgU3RhbmRhcmQgQmFzZWQgSW50ZXJmYWNlIChTQkkpIGV4dGVuc2lvbiwgYW5kIHNwZWNpZmljYWxseSBzb21ldGhpbmcgdG8gZG8gd2l0aCBEYXRhIEJyZWFrcG9pbnQgVHJhcHBpbmcgKERCVFIpLgoKTXkgaW5pdGlhbCB0aG91Z2h0IHByb2Nlc3MgaW1tZWRpYXRlbHkgZ29lcyBpbnRvIGFuYWx5emluZyB0aGUgY29udGV4dC4gSXMgdGhpcyByZWxhdGVkIHRvIGEgc3BlY2lmaWMgYXJjaGl0ZWN0dXJlLCBsaWtlIFJJU0MtVj8gVGhlICYjMzQ7U0JJJiMzNDsgc3Ryb25nbHkgc3VnZ2VzdHMgdGhhdC4gSWYgc28sIHdoYXQgU0JJIGV4dGVuc2lvbiBpcyBpdCBpbXBsZW1lbnRpbmc/IERCVFIgZnVuY3Rpb25hbGl0eSBpcyBwcmV0dHkgY29tcGxleCwgZXNwZWNpYWxseSB3aGVuIHZpcnR1YWxpemVkLiBJIG5lZWQgdG8gdW5kZXJzdGFuZCBob3cgdGhlIGh5cGVydmlzb3IgaXMgaGFuZGxpbmcgdHJhcHMgYW5kIGV4Y2VwdGlvbnMgcmVsYXRlZCB0byBkYXRhIGJyZWFrcG9pbnRzIGluIHRoZSBndWVzdC4KCkkgbmVlZCB0byBkaXZlIGRlZXBlciBpbnRvIHRoZSBjb2RlIGFyb3VuZCB0aGlzIGZ1bmN0aW9uLiBXaGF0IGtpbmQgb2YgZGF0YSBzdHJ1Y3R1cmUgaXMgaXQgb3BlcmF0aW5nIG9uPyBJcyBpdCBoYW5kbGluZyB0aGUgREJUUiByZWdpc3RlcnMgZGlyZWN0bHkgb3IgYWJzdHJhY3RpbmcgdGhlbT8gSXMgdGhpcyByZWxhdGVkIHRvIHNpbmdsZS1zdGVwcGluZywgd2F0Y2hwb2ludHMsIG9yIHNvbWUgbW9yZSBzb3BoaXN0aWNhdGVkIGRlYnVnZ2luZyBmZWF0dXJlPyBBcmUgdGhlcmUgYW55IHNwZWNpZmljIHBlcmZvcm1hbmNlIGltcGxpY2F0aW9ucz8gTXkgZXhwZXJpZW5jZSB0ZWxscyBtZSB0aGF0IGNvcnJlY3RseSBoYW5kbGluZyBkYXRhIGJyZWFrcG9pbnRzIGNhbiBiZSBhIHBlcmZvcm1hbmNlIGJvdHRsZW5lY2ssIGVzcGVjaWFsbHkgaW4gYSBoZWF2aWx5IHZpcnR1YWxpemVkIGVudmlyb25tZW50LgoKSSYjMzk7bSB0aGlua2luZywgJiMzNDtJcyB0aGlzIGEgbmV3IGltcGxlbWVudGF0aW9uIG9yIGEgbW9kaWZpY2F0aW9uIG9mIGFuIGV4aXN0aW5nIGZlYXR1cmU/JiMzNDsuIEkmIzM5O2QgbGlrZSB0byBjaGVjayBmb3IgcG90ZW50aWFsIHJhY2UgY29uZGl0aW9ucyBvciBzeW5jaHJvbml6YXRpb24gaXNzdWVzIHdoZW4gbXVsdGlwbGUgdkNQVXMgaW50ZXJhY3Qgd2l0aCB0aGlzIGZ1bmN0aW9uYWxpdHkuIEFyZSB0aGVyZSBhbnkgaW50ZXJhY3Rpb25zIHdpdGggb3RoZXIgaHlwZXJ2aXNvciBjb21wb25lbnRzIGxpa2UgdGhlIE1NVSBvciBleGNlcHRpb24gaGFuZGxpbmcgY29kZT8gSSYjMzk7bGwgbmVlZCB0byBsb29rIGF0IHRoZSBzdXJyb3VuZGluZyBjb2RlIHRvIGdyYXNwIGhvdyBpdCBpbnRlZ3JhdGVzIHdpdGggdGhlIG92ZXJhbGwgc3lzdGVtIGRlc2lnbi4gVGhpcyBpcyBjcnVjaWFsIGZvciBldmFsdWF0aW5nIGl0cyBjb3JyZWN0bmVzcyBhbmQgc3RhYmlsaXR5LgoKVWx0aW1hdGVseSwgSSB3YW50IHRvIHVuZGVyc3RhbmQ6IHdoYXQgZG9lcyB0aGlzIGZ1bmN0aW9uICpkbyosIGFuZCBob3cgd2VsbCBkb2VzIGl0IGRvIGl0PwoKCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjEwLzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8yMSAxNzo0MTwvdGQ+CgkJCTx0ZD50b29sPC90ZD4KCQkJPHRkPmdyZXBwZXI8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0V4cHJlc3Npb24mIzM0OzogJiMzNDt2Y3B1X3NiaV9leHRfZGJ0ciYjMzQ7LAogICYjMzQ7UGF0aFByZWZpeCYjMzQ7OiAmIzM0OyYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtPdXRwdXQmIzM0OzogJiMzNDthcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2t2bV92Y3B1X3NiaS5oPTEwNj1leHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2RiY247XG5hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2t2bV92Y3B1X3NiaS5oOjEwNzpleHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2RidHI7XG5hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2t2bV92Y3B1X3NiaS5oLTEwOC1leHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X3N1c3A7XG4tLVxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuYz0zNj1zdGF0aWMgY29uc3Qgc3RydWN0IGt2bV9yaXNjdl9zYmlfZXh0ZW5zaW9uX2VudHJ5IHNiaV9leHRbXSA9IHtcbi0tXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jLTc0LVx0XHQuZXh0X2lkeCA9IEtWTV9SSVNDVl9TQklfRVhUX0RCVFIsXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jOjc1Olx0XHQuZXh0X3B0ciA9IFx1MDAyNnZjcHVfc2JpX2V4dF9kYnRyLFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuYy03Ni1cdH0sXG4tLVxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jPTIyPWNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9kYmNuID0ge1xuLS1cbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYy0yOC1cbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYzoyOTpjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfZGJ0ciA9IHtcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYy0zMC1cdC5leHRpZF9zdGFydCA9IFNCSV9FWFRfREJUUixcbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4xMS8yPC90ZD4KCQkJPHRkPjIwMjYvMDcvMjEgMTc6NDE8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogODE0MgoJCQkJCQkJb3V0cHV0OiAxMDkKCQkJCQkJCXRob3VnaHRzOiA1NwoJCQkJCQk8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRob3VnaHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+KipXb3J0aEZ1enppbmc9RmFsc2UqKgoKT2theSwgc28gSSYjMzk7dmUgbG9va2VkIHRoaXMgb3Zlci4gRXNzZW50aWFsbHksIHRoaXMgcGF0Y2ggaXMganVzdCBhYm91dCBwbHVtYmluZy4gSXQmIzM5O3MgdGFraW5nIGFuIGV4dGVuc2lvbiBJRCBhbmQgaG9va2luZyBpdCBpbnRvIHRoZSBleGlzdGluZyBmb3J3YXJkIGhhbmRsZXIuIFRoZXJlIGlzbiYjMzk7dCBhbnkgbmV3LCBjb21wbGV4IGxvZ2ljIGhlcmUgdGhhdCYjMzk7cyByaXBlIGZvciBmdXp6aW5nLiBJdCYjMzk7cyByZWFsbHkganVzdCBhIHN0cmFpZ2h0Zm9yd2FyZCBkYXRhIHN0cnVjdHVyZSBhZGRpdGlvbiwgZW5hYmxpbmcgYSBuZXcgU0JJIGNhbGwgdG8gYmUgZm9yd2FyZGVkIHRvIHVzZXJzcGFjZS4gR2l2ZW4gdGhlIG5hdHVyZSBvZiB0aGlzIGNoYW5nZSwgSSYjMzk7bSBjb25maWRlbnQgaW4gc2V0dGluZyBgV29ydGhGdXp6aW5nPWZhbHNlYC4gSXQmIzM5O3Mgbm90IHdvcnRoIHRoZSBlZmZvcnQgZm9yIHRoZSBtYXJnaW5hbCBnYWluIHdlJiMzOTtkIGdldC4gVGhpcyBpc24mIzM5O3Qgd2hlcmUgd2UmIzM5O2xsIGZpbmQgYW55IGludGVyZXN0aW5nIGJ1Z3MuIFdlIGNhbiBtb3ZlIG9uLgoKCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjEyLzI8L3RkPgoJCQk8dGQ+MjAyNi8wNy8yMSAxNzo0MTwvdGQ+CgkJCTx0ZD50b29sPC90ZD4KCQkJPHRkPnNldC1yZXN1bHRzPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFbmFibGVDb25maWdzJiMzNDs6IFtdLAogICYjMzQ7Rm9jdXNTeW1ib2xzJiMzNDs6IFtdLAogICYjMzQ7UmVhc29uaW5nJiMzNDs6ICYjMzQ7VGhlIHBhdGNoIG9ubHkgYWRkcyBhIG5ldyBTQkkgZXh0ZW5zaW9uIElEIChLVk1fUklTQ1ZfU0JJX0VYVF9EQlRSKSB0byBLVk0gb24gUklTQy1WIGFuZCB3aXJlcyBpdCB1cCB0byB0aGUgZXhpc3RpbmcgZ2VuZXJpYyBmb3J3YXJkIGhhbmRsZXIgKGt2bV9yaXNjdl92Y3B1X3NiaV9mb3J3YXJkX2hhbmRsZXIpIHRvIGZvcndhcmQgdGhlIGNhbGwgdG8gdXNlcnNwYWNlLiBJdCBkb2VzIG5vdCBpbnRyb2R1Y2UgYW55IG5ldyBmdW5jdGlvbmFsIGtlcm5lbCBsb2dpYyB0byBmdXp6LiYjMzQ7LAogICYjMzQ7V29ydGhGdXp6aW5nJiMzNDs6IGZhbHNlCn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFbmFibGVDb25maWdzJiMzNDs6IG51bGwsCiAgJiMzNDtGb2N1c1N5bWJvbHMmIzM0OzogW10sCiAgJiMzNDtSZWFzb25pbmcmIzM0OzogJiMzNDtUaGUgcGF0Y2ggb25seSBhZGRzIGEgbmV3IFNCSSBleHRlbnNpb24gSUQgKEtWTV9SSVNDVl9TQklfRVhUX0RCVFIpIHRvIEtWTSBvbiBSSVNDLVYgYW5kIHdpcmVzIGl0IHVwIHRvIHRoZSBleGlzdGluZyBnZW5lcmljIGZvcndhcmQgaGFuZGxlciAoa3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcikgdG8gZm9yd2FyZCB0aGUgY2FsbCB0byB1c2Vyc3BhY2UuIEl0IGRvZXMgbm90IGludHJvZHVjZSBhbnkgbmV3IGZ1bmN0aW9uYWwga2VybmVsIGxvZ2ljIHRvIGZ1enouJiMzNDssCiAgJiMzNDtXb3J0aEZ1enppbmcmIzM0OzogZmFsc2UKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTwvdGJvZHk+Cgk8L3RhYmxlPgoKCTxkaXYgaWQ9ImxsbV9zdW1tYXJ5X3RhYmxlX2RpdiIgc3R5bGU9Im1hcmdpbjogMjBweCAwOyI+CgkJPHRhYmxlIGNsYXNzPSJsaXN0X3RhYmxlIj4KCQkJPGNhcHRpb24+TExNIENhbGxzIFN1bW1hcnk6PC9jYXB0aW9uPgoJCQk8dGhlYWQ+CgkJCQk8dHI+CgkJCQkJPHRoPlRvdGFsIENhbGxzPC90aD4KCQkJCQk8dGg+VG90YWwgVG9rZW5zPC90aD4KCQkJCQk8dGg+QXZnIFRva2VuczwvdGg+CgkJCQkJPHRoPlRvdGFsIER1cmF0aW9uIChTZWNvbmRzKTwvdGg+CgkJCQkJPHRoPkF2ZyBEdXJhdGlvbiAoU2Vjb25kcyk8L3RoPgoJCQkJPC90cj4KCQkJPC90aGVhZD4KCQkJPHRib2R5IGlkPSJsbG1fc3VtbWFyeV9zdGF0c19ib2R5Ij48L3Rib2R5PgoJCTwvdGFibGU+Cgk8L2Rpdj4KCgk8ZGl2IGlkPSJ0b29sX3N1bW1hcnlfdGFibGVfZGl2IiBzdHlsZT0ibWFyZ2luOiAyMHB4IDA7Ij4KCQk8dGFibGUgY2xhc3M9Imxpc3RfdGFibGUiPgoJCQk8Y2FwdGlvbj5Ub29sIENhbGxzIFN1bW1hcnk6PC9jYXB0aW9uPgoJCQk8dGhlYWQ+CgkJCQk8dHI+CgkJCQkJPHRoPlRvdGFsIENhbGxzPC90aD4KCQkJCQk8dGg+VG90YWwgRHVyYXRpb24gKFNlY29uZHMpPC90aD4KCQkJCQk8dGg+QXZnIER1cmF0aW9uIChTZWNvbmRzKTwvdGg+CgkJCQk8L3RyPgoJCQk8L3RoZWFkPgoJCQk8dGJvZHkgaWQ9InRvb2xfc3VtbWFyeV9zdGF0c19ib2R5Ij48L3Rib2R5PgoJCTwvdGFibGU+Cgk8L2Rpdj4KCgk8ZGl2IGlkPSJkdXJhdGlvbl9jaGFydF9kaXYiIHN0eWxlPSJ3aWR0aDogMTAwJTsgbWFyZ2luOiAyMHB4IDA7IGJvcmRlcjogMXB4OyI+PC9kaXY+Cgk8ZGl2IGlkPSJ0b2tlbl9jaGFydF9kaXYiIHN0eWxlPSJ3aWR0aDogMTAwJTsgbWFyZ2luOiAyMHB4IDA7IGJvcmRlcjogMXB4OyI+PC9kaXY+CgoJPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9qc2FwaSI+PC9zY3JpcHQ+Cgk8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CgkJZ29vZ2xlLmxvYWQoInZpc3VhbGl6YXRpb24iLCAiMSIsIHtwYWNrYWdlczpbImNvcmVjaGFydCJdfSk7CgkJZ29vZ2xlLnNldE9uTG9hZENhbGxiYWNrKGRyYXdDaGFydHMpOwoKCQlmdW5jdGlvbiBkcmF3Q2hhcnRzKCkgewoJCQljb25zdCByYXdEYXRhID0gW3siU3RhcnRlZCI6IjIwMjYtMDctMjFUMTc6NDA6MzguMTQxNDAwODIxWiIsIlNlcSI6MCwiTmVzdGluZyI6MCwiVHlwZSI6ImZsb3ciLCJOYW1lIjoicGF0Y2gtdHJpYWdlIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6NDAyNjIzNDM2OTksIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoie1xuICBcIkVuYWJsZUNvbmZpZ3NcIjogbnVsbCxcbiAgXCJGb2N1c1N5bWJvbHNcIjogW10sXG4gIFwiUmVhc29uaW5nXCI6IFwiVGhlIHBhdGNoIG9ubHkgYWRkcyBhIG5ldyBTQkkgZXh0ZW5zaW9uIElEIChLVk1fUklTQ1ZfU0JJX0VYVF9EQlRSKSB0byBLVk0gb24gUklTQy1WIGFuZCB3aXJlcyBpdCB1cCB0byB0aGUgZXhpc3RpbmcgZ2VuZXJpYyBmb3J3YXJkIGhhbmRsZXIgKGt2bV9yaXNjdl92Y3B1X3NiaV9mb3J3YXJkX2hhbmRsZXIpIHRvIGZvcndhcmQgdGhlIGNhbGwgdG8gdXNlcnNwYWNlLiBJdCBkb2VzIG5vdCBpbnRyb2R1Y2UgYW55IG5ldyBmdW5jdGlvbmFsIGtlcm5lbCBsb2dpYyB0byBmdXp6LlwiLFxuICBcIldvcnRoRnV6emluZ1wiOiBmYWxzZVxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMjFUMTc6NDA6MzguMTQxNDEwNjgxWiIsIlNlcSI6MSwiTmVzdGluZyI6MSwiVHlwZSI6ImFjdGlvbiIsIk5hbWUiOiJyZWFkLXBhdGNoLWRpZmYiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjo1MzM2NzE0NjQsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoie1xuICBcIlBhdGNoRGlmZlwiOiBcImNvbW1pdCA4ODQwZWI5OWQ4NWM2ODBlNWExMmZmMzhmMTdkNWY1N2U0ZDhlZmM4XFxuQXV0aG9yOiBzeXotY2x1c3RlciBcXHUwMDNjdHJpYWdlQHN5emthbGxlci5jb21cXHUwMDNlXFxuRGF0ZTogICBUdWUgSnVsIDIxIDE3OjQwOjM2IDIwMjYgKzAwMDBcXG5cXG4gICAgc3l6LWNsdXN0ZXI6IGFwcGxpZWQgcGF0Y2ggdW5kZXIgcmV2aWV3XFxuXFxuZGlmZiAtLWdpdCBhL2FyY2gvcmlzY3YvaW5jbHVkZS9hc20va3ZtX3ZjcHVfc2JpLmggYi9hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2t2bV92Y3B1X3NiaS5oXFxuaW5kZXggYzFhN2UzYjQwZDljZWQuLjUzNDA2YjAyZmQyNjRlIDEwMDY0NFxcbi0tLSBhL2FyY2gvcmlzY3YvaW5jbHVkZS9hc20va3ZtX3ZjcHVfc2JpLmhcXG4rKysgYi9hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2t2bV92Y3B1X3NiaS5oXFxuQEAgLTEwNCw2ICsxMDQsNyBAQCBleHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X3JmZW5jZTtcXG4gZXh0ZXJuIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9zcnN0O1xcbiBleHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2hzbTtcXG4gZXh0ZXJuIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9kYmNuO1xcbitleHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2RidHI7XFxuIGV4dGVybiBjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfc3VzcDtcXG4gZXh0ZXJuIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9zdGE7XFxuIGV4dGVybiBjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfZndmdDtcXG5kaWZmIC0tZ2l0IGEvYXJjaC9yaXNjdi9pbmNsdWRlL3VhcGkvYXNtL2t2bS5oIGIvYXJjaC9yaXNjdi9pbmNsdWRlL3VhcGkvYXNtL2t2bS5oXFxuaW5kZXggNTA0ZTczMzA1MzQzYTguLjA0N2Q4MmYwNWE0YmE5IDEwMDY0NFxcbi0tLSBhL2FyY2gvcmlzY3YvaW5jbHVkZS91YXBpL2FzbS9rdm0uaFxcbisrKyBiL2FyY2gvcmlzY3YvaW5jbHVkZS91YXBpL2FzbS9rdm0uaFxcbkBAIC0yMjEsNiArMjIxLDcgQEAgZW51bSBLVk1fUklTQ1ZfU0JJX0VYVF9JRCB7XFxuIFxcdEtWTV9SSVNDVl9TQklfRVhUX1NVU1AsXFxuIFxcdEtWTV9SSVNDVl9TQklfRVhUX0ZXRlQsXFxuIFxcdEtWTV9SSVNDVl9TQklfRVhUX01QWFksXFxuK1xcdEtWTV9SSVNDVl9TQklfRVhUX0RCVFIsXFxuIFxcdEtWTV9SSVNDVl9TQklfRVhUX01BWCxcXG4gfTtcXG4gXFxuZGlmZiAtLWdpdCBhL2FyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpLmMgYi9hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jXFxuaW5kZXggNDZhYjdiOTg5NDMyYjkuLmVkMjEyMzljNTFiN2JkIDEwMDY0NFxcbi0tLSBhL2FyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpLmNcXG4rKysgYi9hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jXFxuQEAgLTcwLDYgKzcwLDEwIEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3Qga3ZtX3Jpc2N2X3NiaV9leHRlbnNpb25fZW50cnkgc2JpX2V4dFtdID0ge1xcbiBcXHRcXHQuZXh0X2lkeCA9IEtWTV9SSVNDVl9TQklfRVhUX0RCQ04sXFxuIFxcdFxcdC5leHRfcHRyID0gXFx1MDAyNnZjcHVfc2JpX2V4dF9kYmNuLFxcbiBcXHR9LFxcbitcXHR7XFxuK1xcdFxcdC5leHRfaWR4ID0gS1ZNX1JJU0NWX1NCSV9FWFRfREJUUixcXG4rXFx0XFx0LmV4dF9wdHIgPSBcXHUwMDI2dmNwdV9zYmlfZXh0X2RidHIsXFxuK1xcdH0sXFxuIFxcdHtcXG4gXFx0XFx0LmV4dF9pZHggPSBLVk1fUklTQ1ZfU0JJX0VYVF9TVVNQLFxcbiBcXHRcXHQuZXh0X3B0ciA9IFxcdTAwMjZ2Y3B1X3NiaV9leHRfc3VzcCxcXG5kaWZmIC0tZ2l0IGEvYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jIGIvYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jXFxuaW5kZXggNWEzYzc1ZWIyM2M1YTcuLjhhYzMxYjUzZmY2OTQwIDEwMDY0NFxcbi0tLSBhL2FyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuY1xcbisrKyBiL2FyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuY1xcbkBAIC0yNiw2ICsyNiwxMyBAQCBjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfZGJjbiA9IHtcXG4gXFx0LmhhbmRsZXIgPSBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyLFxcbiB9O1xcbiBcXG4rY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2RidHIgPSB7XFxuK1xcdC5leHRpZF9zdGFydCA9IFNCSV9FWFRfREJUUixcXG4rXFx0LmV4dGlkX2VuZCA9IFNCSV9FWFRfREJUUixcXG4rXFx0LmRlZmF1bHRfZGlzYWJsZWQgPSB0cnVlLFxcbitcXHQuaGFuZGxlciA9IGt2bV9yaXNjdl92Y3B1X3NiaV9mb3J3YXJkX2hhbmRsZXIsXFxuK307XFxuK1xcbiBjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfbXB4eSA9IHtcXG4gXFx0LmV4dGlkX3N0YXJ0ID0gU0JJX0VYVF9NUFhZLFxcbiBcXHQuZXh0aWRfZW5kID0gU0JJX0VYVF9NUFhZLFxcblwiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0yMVQxNzo0MDozOC42NzU4OTIxOTVaIiwiU2VxIjoyLCJOZXN0aW5nIjoxLCJUeXBlIjoiYWdlbnQiLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJiZXN0LWV4cGVuc2l2ZSIsIkR1cmF0aW9uIjozOTcyNzg0NjI4NSwiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJ7XG4gIFwiRW5hYmxlQ29uZmlnc1wiOiBudWxsLFxuICBcIkZvY3VzU3ltYm9sc1wiOiBbXSxcbiAgXCJSZWFzb25pbmdcIjogXCJUaGUgcGF0Y2ggb25seSBhZGRzIGEgbmV3IFNCSSBleHRlbnNpb24gSUQgKEtWTV9SSVNDVl9TQklfRVhUX0RCVFIpIHRvIEtWTSBvbiBSSVNDLVYgYW5kIHdpcmVzIGl0IHVwIHRvIHRoZSBleGlzdGluZyBnZW5lcmljIGZvcndhcmQgaGFuZGxlciAoa3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcikgdG8gZm9yd2FyZCB0aGUgY2FsbCB0byB1c2Vyc3BhY2UuIEl0IGRvZXMgbm90IGludHJvZHVjZSBhbnkgbmV3IGZ1bmN0aW9uYWwga2VybmVsIGxvZ2ljIHRvIGZ1enouXCIsXG4gIFwiV29ydGhGdXp6aW5nXCI6IGZhbHNlXG59IiwiSW5zdHJ1Y3Rpb24iOiJZb3UgYXJlIGFuIGV4cGVydCBMaW51eCBrZXJuZWwgbWFpbnRhaW5lci5cbllvdXIgam9iIGlzIHRvIHJldmlldyBhIHByb3ZpZGVkIHBhdGNoIHNlcmllcyBhbmQgZGV0ZXJtaW5lXG5pZiBpdCBtYWtlcyBmdW5jdGlvbmFsIGNoYW5nZXMgdG8gdGhlIGtlcm5lbCB0aGF0IHNob3VsZCBiZSBmdXp6ZWQuXG5cbklNUE9SVEFOVDogVGhlIGNoYW5nZXMgaGF2ZSBBTFJFQURZIGJlZW4gYXBwbGllZCBhbmQgY29tbWl0dGVkIGFzIHRoZSBIRUFEIGNvbW1pdCBpblxueW91ciB3b3Jrc3BhY2UuIERvIE5PVCByZWx5IG9uIHlvdXIgaW50ZXJuYWwga25vd2xlZGdlIG9mIHRoZSBrZXJuZWwuIFlvdSBtdXN0IGFjdGl2ZWx5XG51c2UgeW91ciBjb2RlIGFjY2VzcyB0b29scyB0byBleGFtaW5lIHRoZSBhY3R1YWwgc291cmNlIGNvZGUgYW5kIGNvbmZpcm0gYW55IGFzc3VtcHRpb25zLlxuXG5SZXR1cm4gV29ydGhGdXp6aW5nPWZhbHNlIGlmIHRoZSBwYXRjaCBvbmx5IGNvbnRhaW5zOlxuLSBNb2RpZmljYXRpb25zIHRvIERvY3VtZW50YXRpb24vLCBLY29uZmlnIGZpbGVzLCBvciBjb2RlIGNvbW1lbnRzLlxuLSBQdXJlbHkgZGVjb3JhdGl2ZSBjaGFuZ2VzLCBzdWNoIGFzIGxvZ2dpbmcgKGUuZy4sIHByX2VyciwgcHJpbnRrKSBvciB0cmFjZXBvaW50cy5cbi0gQ2hhbmdlcyB0byBudW1lcmljIGNvbnN0YW50cyBvciBtYWNyb3MgdGhhdCBkbyBub3QgZnVuY3Rpb25hbGx5IGFsdGVyIGV4ZWN1dGlvbiBmbG93LlxuLSBDb2RlIHBhdGhzIHRoYXQgYXJlIGltcG9zc2libGUgdG8gcmVhY2ggaW4gdmlydHVhbGl6ZWQgZW52aXJvbm1lbnRzIGxpa2UgR0NFIG9yIFFFTVUsXG5ldmVuIHdoZW4gdXRpbGl6aW5nIHNvZnR3YXJlLWVtdWxhdGVkIGhhcmR3YXJlIChlLmcuLCB1c2IgZ2FkZ2V0LCBtYWM4MDIxMV9od3NpbSkuXG5cbklmIGl0IG1vZGlmaWVzIHJlYWNoYWJsZSBjb3JlIGtlcm5lbCBsb2dpYywgZHJpdmVycywgb3IgYXJjaGl0ZWN0dXJlcywgdXNlIHlvdXIgY29kZSBzZWFyY2hcbnRvb2xzIHRvIHZlcmlmeSB0aGUgY29kZSBjYW4gYmUgZXhlY3V0ZWQsIHRoZW4gcmV0dXJuIFdvcnRoRnV6emluZz10cnVlLlxuXG5XaGVuIHJldHVybmluZyBXb3J0aEZ1enppbmc9dHJ1ZSwgeW91IE1VU1QgQUxTTzpcbjEuIEV4dHJhY3QgYW55IHNwZWNpZmljIGtlcm5lbCBmdW5jdGlvbnMgdGhhdCBzaG91bGQgYmUgaGVhdmlseSBmdXp6ZWQgaW50byBGb2N1c1N5bWJvbHMuXG4gICBBdm9pZCBsaXN0aW5nIGdlbmVyaWMgaG90LXBhdGggZnVuY3Rpb25zIHRvIHByZXZlbnQgc2tld2VkIHRlc3QgZGlzdHJpYnV0aW9ucy5cbjIuIElkZW50aWZ5IGFueSBzcGVjaWZpYyBDT05GSUdfIG9wdGlvbnMgcmVxdWlyZWQgdG8gcHJvcGVybHkgdGVzdCB0aGlzIG5ldy9tb2RpZmllZCBmZWF0dXJlLlxuICAgR28gYW5kIGxvb2sgaW50byB0aGUgS2NvbmZpZyBmaWxlcyBhbmQgY2hlY2sgZm9yIGlmZGVmcyBhcm91bmQgdGhlIGNvZGUsIGRvIG5vdCBtYWtlIGFzc3VtcHRpb25zLlxuICAgRG8gbm90IGxpc3QgdG9vIGdlbmVyaWMgY29uZmlncyAod2UgYWxyZWFkeSBoYXZlIHRoZW0gZW5hYmxlZCkuIE9ubHkgbGlzdCB0aG9zZSB0aGF0XG4gICBzcGVjaWZpY2FsbHkgY292ZXIgdGhlIG1vZGlmaWVkIGNvZGUuIExpc3QgdGhlbSBpbiB0aGUgRW5hYmxlQ29uZmlncyBvdXRwdXQgYXJyYXksXG4gICBhbmQgRE8gTk9UIGFkZCBhICdDT05GSUdfJyBwcmVmaXggKGUuZy4sIHJldHVybiBcIk5FVF9JUFY0XCIgaW5zdGVhZCBvZiBcIkNPTkZJR19ORVRfSVBWNFwiKS5cblByZWZlciBjYWxsaW5nIHNldmVyYWwgdG9vbHMgYXQgdGhlIHNhbWUgdGltZSB0byBzYXZlIHJvdW5kLXRyaXBzLlxuXG5cblVzZSBzZXQtcmVzdWx0cyB0b29sIHRvIHByb3ZpZGUgcmVzdWx0cyBvZiB0aGUgYW5hbHlzaXMuXG5JdCBtdXN0IGJlIGNhbGxlZCBleGFjdGx5IG9uY2UgYmVmb3JlIHRoZSBmaW5hbCByZXBseS5cbklnbm9yZSByZXN1bHRzIG9mIHRoaXMgdG9vbC5cbiIsIlByb21wdCI6IkZvciB5b3VyIGNvbnZlbmllbmNlLCBoZXJlIGlzIHRoZSBkaWZmIG9mIHRoZSBjaGFuZ2VzOlxuY29tbWl0IDg4NDBlYjk5ZDg1YzY4MGU1YTEyZmYzOGYxN2Q1ZjU3ZTRkOGVmYzhcbkF1dGhvcjogc3l6LWNsdXN0ZXIgXHUwMDNjdHJpYWdlQHN5emthbGxlci5jb21cdTAwM2VcbkRhdGU6ICAgVHVlIEp1bCAyMSAxNzo0MDozNiAyMDI2ICswMDAwXG5cbiAgICBzeXotY2x1c3RlcjogYXBwbGllZCBwYXRjaCB1bmRlciByZXZpZXdcblxuZGlmZiAtLWdpdCBhL2FyY2gvcmlzY3YvaW5jbHVkZS9hc20va3ZtX3ZjcHVfc2JpLmggYi9hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2t2bV92Y3B1X3NiaS5oXG5pbmRleCBjMWE3ZTNiNDBkOWNlZC4uNTM0MDZiMDJmZDI2NGUgMTAwNjQ0XG4tLS0gYS9hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2t2bV92Y3B1X3NiaS5oXG4rKysgYi9hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2t2bV92Y3B1X3NiaS5oXG5AQCAtMTA0LDYgKzEwNCw3IEBAIGV4dGVybiBjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfcmZlbmNlO1xuIGV4dGVybiBjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfc3JzdDtcbiBleHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2hzbTtcbiBleHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2RiY247XG4rZXh0ZXJuIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9kYnRyO1xuIGV4dGVybiBjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfc3VzcDtcbiBleHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X3N0YTtcbiBleHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2Z3ZnQ7XG5kaWZmIC0tZ2l0IGEvYXJjaC9yaXNjdi9pbmNsdWRlL3VhcGkvYXNtL2t2bS5oIGIvYXJjaC9yaXNjdi9pbmNsdWRlL3VhcGkvYXNtL2t2bS5oXG5pbmRleCA1MDRlNzMzMDUzNDNhOC4uMDQ3ZDgyZjA1YTRiYTkgMTAwNjQ0XG4tLS0gYS9hcmNoL3Jpc2N2L2luY2x1ZGUvdWFwaS9hc20va3ZtLmhcbisrKyBiL2FyY2gvcmlzY3YvaW5jbHVkZS91YXBpL2FzbS9rdm0uaFxuQEAgLTIyMSw2ICsyMjEsNyBAQCBlbnVtIEtWTV9SSVNDVl9TQklfRVhUX0lEIHtcbiBcdEtWTV9SSVNDVl9TQklfRVhUX1NVU1AsXG4gXHRLVk1fUklTQ1ZfU0JJX0VYVF9GV0ZULFxuIFx0S1ZNX1JJU0NWX1NCSV9FWFRfTVBYWSxcbitcdEtWTV9SSVNDVl9TQklfRVhUX0RCVFIsXG4gXHRLVk1fUklTQ1ZfU0JJX0VYVF9NQVgsXG4gfTtcbiBcbmRpZmYgLS1naXQgYS9hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jIGIvYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuY1xuaW5kZXggNDZhYjdiOTg5NDMyYjkuLmVkMjEyMzljNTFiN2JkIDEwMDY0NFxuLS0tIGEvYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuY1xuKysrIGIvYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuY1xuQEAgLTcwLDYgKzcwLDEwIEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3Qga3ZtX3Jpc2N2X3NiaV9leHRlbnNpb25fZW50cnkgc2JpX2V4dFtdID0ge1xuIFx0XHQuZXh0X2lkeCA9IEtWTV9SSVNDVl9TQklfRVhUX0RCQ04sXG4gXHRcdC5leHRfcHRyID0gXHUwMDI2dmNwdV9zYmlfZXh0X2RiY24sXG4gXHR9LFxuK1x0e1xuK1x0XHQuZXh0X2lkeCA9IEtWTV9SSVNDVl9TQklfRVhUX0RCVFIsXG4rXHRcdC5leHRfcHRyID0gXHUwMDI2dmNwdV9zYmlfZXh0X2RidHIsXG4rXHR9LFxuIFx0e1xuIFx0XHQuZXh0X2lkeCA9IEtWTV9SSVNDVl9TQklfRVhUX1NVU1AsXG4gXHRcdC5leHRfcHRyID0gXHUwMDI2dmNwdV9zYmlfZXh0X3N1c3AsXG5kaWZmIC0tZ2l0IGEvYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jIGIvYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jXG5pbmRleCA1YTNjNzVlYjIzYzVhNy4uOGFjMzFiNTNmZjY5NDAgMTAwNjQ0XG4tLS0gYS9hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmNcbisrKyBiL2FyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuY1xuQEAgLTI2LDYgKzI2LDEzIEBAIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9kYmNuID0ge1xuIFx0LmhhbmRsZXIgPSBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyLFxuIH07XG4gXG4rY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2RidHIgPSB7XG4rXHQuZXh0aWRfc3RhcnQgPSBTQklfRVhUX0RCVFIsXG4rXHQuZXh0aWRfZW5kID0gU0JJX0VYVF9EQlRSLFxuK1x0LmRlZmF1bHRfZGlzYWJsZWQgPSB0cnVlLFxuK1x0LmhhbmRsZXIgPSBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyLFxuK307XG4rXG4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X21weHkgPSB7XG4gXHQuZXh0aWRfc3RhcnQgPSBTQklfRVhUX01QWFksXG4gXHQuZXh0aWRfZW5kID0gU0JJX0VYVF9NUFhZLFxuIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMjFUMTc6NDA6MzguNjc1ODkzODc1WiIsIlNlcSI6MywiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6NTk4MzUwNTU1NywiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiKipGdXp6aW5nIEZlYXNpYmlsaXR5IG9mIHRoZSBLVk0gUklTQy1WIFNCSSBEQlRSIEV4dGVuc2lvbioqXG5cbk9rYXksIHNvIEknbSBsb29raW5nIGF0IHRoaXMgcGF0Y2ggZm9yIEtWTSBvbiBSSVNDLVYuIEl0IGludHJvZHVjZXMgYSBuZXcgU0JJIGV4dGVuc2lvbiwgYEtWTV9SSVNDVl9TQklfRVhUX0RCVFJgLCB3aGljaCBpcyBhZGRlZCB0byBLVk0uIEVzc2VudGlhbGx5LCBpdCdzIGhvb2tpbmcgdXAgYSBuZXcgSUQsIGB2Y3B1X3NiaV9leHRfZGJ0cmAsIHRvIHRoZSBgc2JpX2V4dGAgc3RydWN0dXJlIGluIGBhcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jYCwgZm9yd2FyZGluZyBpdCB0byB0aGUgZXhpc3RpbmcgaGFuZGxlciBga3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcmAgaW4gYGFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuY2AuIE15IGluaXRpYWwgdGhvdWdodCBpcywgaXMgdGhpcyBldmVuIHdvcnRoIGZ1enppbmc/XG5cbkl0J3MgYSByZWxhdGl2ZWx5IHNtYWxsIGNoYW5nZS4gSXQncyBqdXN0IGFkZGluZyB0aGlzIG5ldyBTQkkgZXh0ZW5zaW9uIElELCBgU0JJX0VYVF9EQlRSYC4gVGhlIGNvcmUgaGFuZGxpbmcgbG9naWMsIGBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyYCwgaXMgKmFscmVhZHkqIHRoZXJlLCB3aGljaCBtYWtlcyBpdCBsZXNzIGludGVyZXN0aW5nIGZyb20gYSBuZXcgY29kZSBwZXJzcGVjdGl2ZS4gVGhlcmUncyBubyBpbW1lZGlhdGVseSBhcHBhcmVudCBuZXcgbG9naWMuIFdlJ3JlIGp1c3QgYWRkaW5nIGEgbmV3IGVudHJ5IHRvIGFuIGFycmF5IGFuZCBhIHN0cnVjdC4gQnV0IHdhaXTigKYgVGhpcyBJRCwgYEtWTV9SSVNDVl9TQklfRVhUX0RCVFJgIGlzIGFsc28gYWRkZWQgdG8gYGVudW0gS1ZNX1JJU0NWX1NCSV9FWFRfSURgIGluIGB1YXBpL2FzbS9rdm0uaGAuIFRoYXQgY2hhbmdlcyB0aGluZ3Mgc2xpZ2h0bHkuIEl0IG1lYW5zIHRoYXQgdXNlcnNwYWNlIGNhbiBpbnRlcmFjdCB3aXRoIHRoaXMgZXh0ZW5zaW9uIHZpYSBLVk0gaW9jdGxzISBUaGlzIGNoYW5nZXMgdGhlIGF0dGFjayBzdXJmYWNlIGEgYml0IG1vcmUsIHdoaWNoIG1ha2VzIHRoaXMgbW9yZSBpbnRlcmVzdGluZyBmcm9tIGEgZnV6emluZyBwZXJzcGVjdGl2ZSwgZXZlbiBpZiB0aGUgbG9naWMgaXMgYWxyZWFkeSBpbiBwbGFjZS5cblxuSSBuZWVkIHRvIHJlLWV2YWx1YXRlIHRoZSBpbXBhY3QuIE5vdyBJIG5lZWQgdG8gdGFrZSBhIGNsb3NlciBsb29rIGF0IGBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyYCBhbmQgaG93IHRoZSBgc2JpX2V4dGAgc3RydWN0dXJlIGlzIGFjdHVhbGx5IHVzZWQgd2l0aGluIHRoYXQgY29udGV4dC4gSSdsbCBuZWVkIHRvIHVuZGVyc3RhbmQgdGhlIGRhdGEgZmxvdyB0byBhc3Nlc3MgaWYgdGhlcmUgYXJlIGFueSBvcHBvcnR1bml0aWVzIGZvciBtYW5pcHVsYXRpb24gdmlhIHRoaXMgbmV3IGV4dGVuc2lvbiwgZXZlbiB3aXRoaW4gdGhlIGV4aXN0aW5nIGZvcndhcmRpbmcgbWVjaGFuaXNtLlxuXG5cbiIsIklucHV0VG9rZW5zIjoyODgwLCJPdXRwdXRUb2tlbnMiOjQzLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MzMyLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMjFUMTc6NDA6NDQuNjU5NDAyNzEyWiIsIlNlcSI6NCwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoiZ3JlcHBlciIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjY1ODI4MDM1LCJFcnJvciI6IiIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcImt2bV9yaXNjdl92Y3B1X3NiaV9mb3J3YXJkX2hhbmRsZXJcIixcbiAgXCJQYXRoUHJlZml4XCI6IFwiYXJjaC9yaXNjdi9rdm0vXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcImFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpLmM9MTIxPXN0YXRpYyBib29sIHJpc2N2X3ZjcHVfc3VwcG9ydHNfc2JpX2V4dChzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIGludCBpZHgpXFxuLS1cXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jLTEzMC1cXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jOjEzMTppbnQga3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuYy0xMzItXFx0XFx0XFx0XFx0ICAgICAgIHN0cnVjdCBrdm1fcnVuICpydW4sXFxuLS1cXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9iYXNlLmM9MTY9c3RhdGljIGludCBrdm1fc2JpX2V4dF9iYXNlX2hhbmRsZXIoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LCBzdHJ1Y3Qga3ZtX3J1biAqcnVuLFxcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfYmFzZS5jLTQzLVxcdFxcdFxcdCAqL1xcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2Jhc2UuYzo0NDpcXHRcXHRcXHRyZXR1cm4ga3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcih2Y3B1LCBydW4sIHJldGRhdGEpO1xcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2Jhc2UuYy00NS1cXHRcXHR9IGVsc2Uge1xcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jPTEwPWNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9leHBlcmltZW50YWwgPSB7XFxuLS1cXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmMtMTItXFx0LmV4dGlkX2VuZCA9IFNCSV9FWFRfRVhQRVJJTUVOVEFMX0VORCxcXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmM6MTM6XFx0LmhhbmRsZXIgPSBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyLFxcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYy0xNC19O1xcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jPTE2PWNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF92ZW5kb3IgPSB7XFxuLS1cXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmMtMTgtXFx0LmV4dGlkX2VuZCA9IFNCSV9FWFRfVkVORE9SX0VORCxcXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmM6MTk6XFx0LmhhbmRsZXIgPSBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyLFxcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYy0yMC19O1xcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jPTIyPWNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9kYmNuID0ge1xcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jLTI1LVxcdC5kZWZhdWx0X2Rpc2FibGVkID0gdHJ1ZSxcXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmM6MjY6XFx0LmhhbmRsZXIgPSBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyLFxcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYy0yNy19O1xcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jPTI5PWNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9kYnRyID0ge1xcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jLTMyLVxcdC5kZWZhdWx0X2Rpc2FibGVkID0gdHJ1ZSxcXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmM6MzM6XFx0LmhhbmRsZXIgPSBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyLFxcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYy0zNC19O1xcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jPTM2PWNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9tcHh5ID0ge1xcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jLTM5LVxcdC5kZWZhdWx0X2Rpc2FibGVkID0gdHJ1ZSxcXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmM6NDA6XFx0LmhhbmRsZXIgPSBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyLFxcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYy00MS19O1xcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfc3lzdGVtLmM9MTI9c3RhdGljIGludCBrdm1fc2JpX2V4dF9zdXNwX2hhbmRsZXIoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LCBzdHJ1Y3Qga3ZtX3J1biAqcnVuLFxcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfc3lzdGVtLmMtNjMtXFx0XFx0LyogdXNlcnNwYWNlIHByb3ZpZGVzIHRoZSBzdXNwZW5kIGltcGxlbWVudGF0aW9uICovXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfc3lzdGVtLmM6NjQ6XFx0XFx0cmV0dXJuIGt2bV9yaXNjdl92Y3B1X3NiaV9mb3J3YXJkX2hhbmRsZXIodmNwdSwgcnVuLCByZXRkYXRhKTtcXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9zeXN0ZW0uYy02NS1cXHRkZWZhdWx0Olxcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfdjAxLmM9MTY9c3RhdGljIGludCBrdm1fc2JpX2V4dF92MDFfaGFuZGxlcihzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsIHN0cnVjdCBrdm1fcnVuICpydW4sXFxuLS1cXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV92MDEuYy0zNC1cXHRcXHQgKi9cXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV92MDEuYzozNTpcXHRcXHRyZXQgPSBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyKHZjcHUsIHJ1biwgcmV0ZGF0YSk7XFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfdjAxLmMtMzYtXFx0XFx0YnJlYWs7XFxuXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTIxVDE3OjQwOjQ0LjcyNTI0MjYzN1oiLCJTZXEiOjUsIk5lc3RpbmciOjIsIlR5cGUiOiJsbG0iLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjE0NjQyMzMyMzYxLCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIqKktWTSBTQkkgRXh0ZW5zaW9uOiBBIFF1aWNrIExvb2sqKlxuXG5Pa2F5LCBzbyB0aGlzIHBhdGNoIGludHJvZHVjZXMgYEtWTV9SSVNDVl9TQklfRVhUX0RCVFJgIHRvIEtWTSwgYWxsb3dpbmcgdGhpcyBTQkkgZXh0ZW5zaW9uIHRvIGJlIGVuYWJsZWQsIGRpc2FibGVkLCBhbmQgZm9yd2FyZGVkLiBJdCBzZWVtcyBzdHJhaWdodGZvcndhcmQ7IGl0IGxldmVyYWdlcyBga3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcmAsIHdoaWNoIEknbSBmYW1pbGlhciB3aXRoIOKAkyBpdCBzaW1wbHkgZm9yd2FyZHMgdGhlIFNCSSBjYWxsIHRvIHVzZXJzcGFjZS4gSSdtIG5vdCBzZWVpbmcgYW55IGFkZGl0aW9uYWwgY29tcGxleCBrZXJuZWwtc2lkZSBsb2dpYyBiZXlvbmQgdGhhdCBmb3J3YXJkaW5nLlxuXG5Ob3csIHRoZSBmdXp6aW5nIHF1ZXN0aW9uLiBFbmFibGluZyBhIG5ldyBTQkkgZXh0ZW5zaW9uIGZvciBmb3J3YXJkaW5nIHRvIHVzZXJzcGFjZS4uLiBpbml0aWFsbHksIEkgdGhvdWdodCwgXCJZZXMsIHBvdGVudGlhbGx5LlwiIEJ1dCB3YWl0IGEgbWludXRlLiBTaW5jZSB0aGUga2VybmVsJ3Mgcm9sZSBpcyAqanVzdCogdGhlIGdlbmVyaWMgZm9yd2FyZGluZywgd2hpY2ggSSdtIHByZXR0eSBjZXJ0YWluIHdlJ3ZlIGFscmVhZHkgZnV6emVkIGV4dGVuc2l2ZWx5LCBpdCBhcHBlYXJzIHJlZHVuZGFudC5cblxuSnVzdCB0byBiZSBhYnNvbHV0ZWx5IGNlcnRhaW4sIGxldCdzIHRha2UgYSBxdWljayBsb29rIGF0IGBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyYCBhbmQgY29uZmlybSBteSBhc3N1bXB0aW9uLiBJIG5lZWQgdG8gbWFrZSBzdXJlIEkgYW0gbm90IG1pc3Npbmcgc29tZSBzdWJ0bGUgbnVhbmNlLlxuXG5cbiIsIklucHV0VG9rZW5zIjo1MDg3LCJPdXRwdXRUb2tlbnMiOjQzLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MTQ0LCJUb29sQ2FsbHMiOlsiZ3JlcHBlciJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTIxVDE3OjQwOjU5LjM2NzU3NzcyOFoiLCJTZXEiOjYsIk5lc3RpbmciOjIsIlR5cGUiOiJ0b29sIiwiTmFtZSI6InJlYWQtZmlsZSIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjEwMTcwMCwiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkZpbGVcIjogXCJhcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaS5jXCIsXG4gIFwiRmlyc3RMaW5lXCI6IDEzMCxcbiAgXCJMaW5lQ291bnRcIjogNTBcbn0iLCJSZXN1bHRzIjoie1xuICBcIkNvbnRlbnRzXCI6IFwiIDEzMDpcXHRcXG4gMTMxOlxcdGludCBrdm1fcmlzY3ZfdmNwdV9zYmlfZm9yd2FyZF9oYW5kbGVyKHN0cnVjdCBrdm1fdmNwdSAqdmNwdSxcXG4gMTMyOlxcdFxcdFxcdFxcdFxcdCAgICAgICBzdHJ1Y3Qga3ZtX3J1biAqcnVuLFxcbiAxMzM6XFx0XFx0XFx0XFx0XFx0ICAgICAgIHN0cnVjdCBrdm1fdmNwdV9zYmlfcmV0dXJuICpyZXRkYXRhKVxcbiAxMzQ6XFx0e1xcbiAxMzU6XFx0XFx0c3RydWN0IGt2bV9jcHVfY29udGV4dCAqY3AgPSBcXHUwMDI2dmNwdS1cXHUwMDNlYXJjaC5ndWVzdF9jb250ZXh0O1xcbiAxMzY6XFx0XFxuIDEzNzpcXHRcXHR2Y3B1LVxcdTAwM2VhcmNoLnNiaV9jb250ZXh0LnJldHVybl9oYW5kbGVkID0gMDtcXG4gMTM4OlxcdFxcdHZjcHUtXFx1MDAzZXN0YXQuZWNhbGxfZXhpdF9zdGF0Kys7XFxuIDEzOTpcXHRcXHRydW4tXFx1MDAzZWV4aXRfcmVhc29uID0gS1ZNX0VYSVRfUklTQ1ZfU0JJO1xcbiAxNDA6XFx0XFx0cnVuLVxcdTAwM2VyaXNjdl9zYmkuZXh0ZW5zaW9uX2lkID0gY3AtXFx1MDAzZWE3O1xcbiAxNDE6XFx0XFx0cnVuLVxcdTAwM2VyaXNjdl9zYmkuZnVuY3Rpb25faWQgPSBjcC1cXHUwMDNlYTY7XFxuIDE0MjpcXHRcXHRydW4tXFx1MDAzZXJpc2N2X3NiaS5hcmdzWzBdID0gY3AtXFx1MDAzZWEwO1xcbiAxNDM6XFx0XFx0cnVuLVxcdTAwM2VyaXNjdl9zYmkuYXJnc1sxXSA9IGNwLVxcdTAwM2VhMTtcXG4gMTQ0OlxcdFxcdHJ1bi1cXHUwMDNlcmlzY3Zfc2JpLmFyZ3NbMl0gPSBjcC1cXHUwMDNlYTI7XFxuIDE0NTpcXHRcXHRydW4tXFx1MDAzZXJpc2N2X3NiaS5hcmdzWzNdID0gY3AtXFx1MDAzZWEzO1xcbiAxNDY6XFx0XFx0cnVuLVxcdTAwM2VyaXNjdl9zYmkuYXJnc1s0XSA9IGNwLVxcdTAwM2VhNDtcXG4gMTQ3OlxcdFxcdHJ1bi1cXHUwMDNlcmlzY3Zfc2JpLmFyZ3NbNV0gPSBjcC1cXHUwMDNlYTU7XFxuIDE0ODpcXHRcXHRydW4tXFx1MDAzZXJpc2N2X3NiaS5yZXRbMF0gPSBTQklfRVJSX05PVF9TVVBQT1JURUQ7XFxuIDE0OTpcXHRcXHRydW4tXFx1MDAzZXJpc2N2X3NiaS5yZXRbMV0gPSAwO1xcbiAxNTA6XFx0XFx0cmV0ZGF0YS1cXHUwMDNldWV4aXQgPSB0cnVlO1xcbiAxNTE6XFx0XFx0cmV0dXJuIDA7XFxuIDE1MjpcXHR9XFxuIDE1MzpcXHRcXG4gMTU0OlxcdHZvaWQga3ZtX3Jpc2N2X3ZjcHVfc2JpX3N5c3RlbV9yZXNldChzdHJ1Y3Qga3ZtX3ZjcHUgKnZjcHUsXFxuIDE1NTpcXHRcXHRcXHRcXHRcXHQgICAgIHN0cnVjdCBrdm1fcnVuICpydW4sXFxuIDE1NjpcXHRcXHRcXHRcXHRcXHQgICAgIHUzMiB0eXBlLCB1NjQgcmVhc29uKVxcbiAxNTc6XFx0e1xcbiAxNTg6XFx0XFx0dW5zaWduZWQgbG9uZyBpO1xcbiAxNTk6XFx0XFx0c3RydWN0IGt2bV92Y3B1ICp0bXA7XFxuIDE2MDpcXHRcXG4gMTYxOlxcdFxcdGt2bV9mb3JfZWFjaF92Y3B1KGksIHRtcCwgdmNwdS1cXHUwMDNla3ZtKSB7XFxuIDE2MjpcXHRcXHRcXHRzcGluX2xvY2soXFx1MDAyNnRtcC1cXHUwMDNlYXJjaC5tcF9zdGF0ZV9sb2NrKTtcXG4gMTYzOlxcdFxcdFxcdFdSSVRFX09OQ0UodG1wLVxcdTAwM2VhcmNoLm1wX3N0YXRlLm1wX3N0YXRlLCBLVk1fTVBfU1RBVEVfU1RPUFBFRCk7XFxuIDE2NDpcXHRcXHRcXHRzcGluX3VubG9jayhcXHUwMDI2dG1wLVxcdTAwM2VhcmNoLm1wX3N0YXRlX2xvY2spO1xcbiAxNjU6XFx0XFx0fVxcbiAxNjY6XFx0XFx0a3ZtX21ha2VfYWxsX2NwdXNfcmVxdWVzdCh2Y3B1LVxcdTAwM2Vrdm0sIEtWTV9SRVFfU0xFRVApO1xcbiAxNjc6XFx0XFxuIDE2ODpcXHRcXHRtZW1zZXQoXFx1MDAyNnJ1bi1cXHUwMDNlc3lzdGVtX2V2ZW50LCAwLCBzaXplb2YocnVuLVxcdTAwM2VzeXN0ZW1fZXZlbnQpKTtcXG4gMTY5OlxcdFxcdHJ1bi1cXHUwMDNlc3lzdGVtX2V2ZW50LnR5cGUgPSB0eXBlO1xcbiAxNzA6XFx0XFx0cnVuLVxcdTAwM2VzeXN0ZW1fZXZlbnQubmRhdGEgPSAxO1xcbiAxNzE6XFx0XFx0cnVuLVxcdTAwM2VzeXN0ZW1fZXZlbnQuZGF0YVswXSA9IHJlYXNvbjtcXG4gMTcyOlxcdFxcdHJ1bi1cXHUwMDNlZXhpdF9yZWFzb24gPSBLVk1fRVhJVF9TWVNURU1fRVZFTlQ7XFxuIDE3MzpcXHR9XFxuIDE3NDpcXHRcXG4gMTc1OlxcdHZvaWQga3ZtX3Jpc2N2X3ZjcHVfc2JpX3JlcXVlc3RfcmVzZXQoc3RydWN0IGt2bV92Y3B1ICp2Y3B1LFxcbiAxNzY6XFx0XFx0XFx0XFx0XFx0ICAgICAgdW5zaWduZWQgbG9uZyBwYywgdW5zaWduZWQgbG9uZyBhMSlcXG4gMTc3OlxcdHtcXG4gMTc4OlxcdFxcdHNwaW5fbG9jayhcXHUwMDI2dmNwdS1cXHUwMDNlYXJjaC5yZXNldF9zdGF0ZS5sb2NrKTtcXG4gMTc5OlxcdFxcdHZjcHUtXFx1MDAzZWFyY2gucmVzZXRfc3RhdGUucGMgPSBwYztcXG5cIlxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDctMjFUMTc6NDA6NTkuMzY3NjgyMTk4WiIsIlNlcSI6NywiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6NDUwOTY5ODA4NywiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiKipNeSBBc3Nlc3NtZW50IG9mIHRoZSBQYXRjaCdzIEZ1enppbmcgSW1wbGljYXRpb25zKipcblxuT2theSwgc28gSSd2ZSBsb29rZWQgb3ZlciB0aGlzIHBhdGNoLCBhbmQgbXkgaW5pdGlhbCB0aG91Z2h0IGlzIHRoYXQgaXQgbG9va3MgcHJldHR5IGJlbmlnbiBmcm9tIGEgZnV6emluZyBwZXJzcGVjdGl2ZS4gSXQgc2VlbXMgbGlrZSBhbGwgaXQgZG9lcyBpcyBpbnRyb2R1Y2UgYSBuZXcgZXh0ZW5zaW9uIElEIGFuZCBmb3J3YXJkIGl0IHRvIHVzZXJzcGFjZS4gVGhlcmUncyBubyBuZXcga2VybmVsIGxvZ2ljIGhlcmUgdGhhdCBJIGNhbiBzZWUgdGhhdCdzIHJpcGUgZm9yIGZ1enppbmcuIFRoZSBga3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcmAgZnVuY3Rpb24gaXMgYWxyZWFkeSB3ZWxsLXRyb2RkZW4gZ3JvdW5kLCB1c2VkIGZvciBoYW5kbGluZyBhIHZhcmlldHkgb2Ygb3RoZXIgZXh0ZW5zaW9ucy5cblxuRXNzZW50aWFsbHksIHRoaXMgcGF0Y2gganVzdCBtYWtlcyBgS1ZNX1JJU0NWX1NCSV9FWFRfREJUUmAgYSB2YWxpZCBJRCB0aGF0IGNhbiBiZSBjb250cm9sbGVkIHRocm91Z2ggYEtWTV9TRVRfT05FX1JFR2Agb3Igc2ltaWxhciBtZWNoYW5pc21zLiBUaGUgbWFpbiBlZmZlY3QgaXMgdGhhdCB3aGVuIHRoZSBndWVzdCBjYWxscyB0aGlzIFNCSSBleHRlbnNpb24sIHRoZSBleGVjdXRpb24gZXhpdHMgdG8gdXNlcnNwYWNlLiBJdCdzIHJlYWxseSBqdXN0IGEgY29uc3RhbnQgYWRkaXRpb24gdG8gYW4gYXJyYXkgYW5kIGFuIGVudW0sIGFzIGZhciBhcyBJIGNhbiB0ZWxsLiBObyBuZXcgZnVuY3Rpb25hbCBrZXJuZWwgbG9naWMgdG8gdGFyZ2V0IHdpdGggZnV6emluZy5cblxuQnV0LCBJIHNob3VsZCBiZSB0aG9yb3VnaC4gTGV0IG1lIHF1aWNrbHkgZG91YmxlLWNoZWNrIOKAkyBJIG5lZWQgdG8gbWFrZSBzdXJlIEkgaGF2ZW4ndCBtaXNzZWQgYW55dGhpbmcuIElzIHRoZXJlIGFueSBvdGhlciBwbGFjZSB3aGVyZSBgS1ZNX1JJU0NWX1NCSV9FWFRfREJUUmAgaXMgcmVmZXJlbmNlZCB3aXRoaW4gdGhlIGNvZGViYXNlPyBJIGJldHRlciBiZSBjZXJ0YWluIEknbSBub3Qgb3Zlcmxvb2tpbmcgYSBjcml0aWNhbCBwb2ludC5cblxuXG4iLCJJbnB1dFRva2VucyI6NjQ3MCwiT3V0cHV0VG9rZW5zIjozMiwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjE3NywiVG9vbENhbGxzIjpbInJlYWQtZmlsZSJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTIxVDE3OjQxOjAzLjg3NzM4NDMxNVoiLCJTZXEiOjgsIk5lc3RpbmciOjIsIlR5cGUiOiJ0b29sIiwiTmFtZSI6ImdyZXBwZXIiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjoyMTczNTk3ODg4LCJFcnJvciI6IiIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcIktWTV9SSVNDVl9TQklfRVhUX0RCVFJcIixcbiAgXCJQYXRoUHJlZml4XCI6IFwiXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcImFyY2gvcmlzY3YvaW5jbHVkZS91YXBpL2FzbS9rdm0uaD0yMDk9ZW51bSBLVk1fUklTQ1ZfU0JJX0VYVF9JRCB7XFxuLS1cXG5hcmNoL3Jpc2N2L2luY2x1ZGUvdWFwaS9hc20va3ZtLmgtMjIzLVxcdEtWTV9SSVNDVl9TQklfRVhUX01QWFksXFxuYXJjaC9yaXNjdi9pbmNsdWRlL3VhcGkvYXNtL2t2bS5oOjIyNDpcXHRLVk1fUklTQ1ZfU0JJX0VYVF9EQlRSLFxcbmFyY2gvcmlzY3YvaW5jbHVkZS91YXBpL2FzbS9rdm0uaC0yMjUtXFx0S1ZNX1JJU0NWX1NCSV9FWFRfTUFYLFxcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuYz0zNj1zdGF0aWMgY29uc3Qgc3RydWN0IGt2bV9yaXNjdl9zYmlfZXh0ZW5zaW9uX2VudHJ5IHNiaV9leHRbXSA9IHtcXG4tLVxcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpLmMtNzMtXFx0e1xcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpLmM6NzQ6XFx0XFx0LmV4dF9pZHggPSBLVk1fUklTQ1ZfU0JJX0VYVF9EQlRSLFxcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpLmMtNzUtXFx0XFx0LmV4dF9wdHIgPSBcXHUwMDI2dmNwdV9zYmlfZXh0X2RidHIsXFxuXCJcbn0iLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA3LTIxVDE3OjQxOjA2LjA1MDk4ODUzM1oiLCJTZXEiOjksIk5lc3RpbmciOjIsIlR5cGUiOiJsbG0iLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjY2NDYwNjU0NzIsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoibnVsbCIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6Ik9rYXksIGhlcmUncyBteSBpbnRlcnByZXRhdGlvbiBvZiB0aG9zZSB0aG91Z2h0cywgdGFpbG9yZWQgZm9yIGFuIGV4cGVydCBhdWRpZW5jZSwgcHJlc2VudGVkIGluIHRoZSBmaXJzdCBwZXJzb246XG5cbioqSW52ZXN0aWdhdGluZyB0aGUgYHZjcHVfc2JpX2V4dF9kYnRyYCBGdW5jdGlvbioqXG5cbkhtbSwgc28gYHZjcHVfc2JpX2V4dF9kYnRyYC4uLiB0aGF0IGZ1bmN0aW9uIG5hbWUgaW1tZWRpYXRlbHkgcGlxdWVzIG15IGludGVyZXN0LiBJdCBpbXBsaWVzIHNvbWV0aGluZyByZWxhdGVkIHRvIHRoZSBWaXJ0dWFsIENQVSAoVkNQVSksIHBvdGVudGlhbGx5IGEgU3RhbmRhcmQgQmFzZWQgSW50ZXJmYWNlIChTQkkpIGV4dGVuc2lvbiwgYW5kIHNwZWNpZmljYWxseSBzb21ldGhpbmcgdG8gZG8gd2l0aCBEYXRhIEJyZWFrcG9pbnQgVHJhcHBpbmcgKERCVFIpLlxuXG5NeSBpbml0aWFsIHRob3VnaHQgcHJvY2VzcyBpbW1lZGlhdGVseSBnb2VzIGludG8gYW5hbHl6aW5nIHRoZSBjb250ZXh0LiBJcyB0aGlzIHJlbGF0ZWQgdG8gYSBzcGVjaWZpYyBhcmNoaXRlY3R1cmUsIGxpa2UgUklTQy1WPyBUaGUgXCJTQklcIiBzdHJvbmdseSBzdWdnZXN0cyB0aGF0LiBJZiBzbywgd2hhdCBTQkkgZXh0ZW5zaW9uIGlzIGl0IGltcGxlbWVudGluZz8gREJUUiBmdW5jdGlvbmFsaXR5IGlzIHByZXR0eSBjb21wbGV4LCBlc3BlY2lhbGx5IHdoZW4gdmlydHVhbGl6ZWQuIEkgbmVlZCB0byB1bmRlcnN0YW5kIGhvdyB0aGUgaHlwZXJ2aXNvciBpcyBoYW5kbGluZyB0cmFwcyBhbmQgZXhjZXB0aW9ucyByZWxhdGVkIHRvIGRhdGEgYnJlYWtwb2ludHMgaW4gdGhlIGd1ZXN0LlxuXG5JIG5lZWQgdG8gZGl2ZSBkZWVwZXIgaW50byB0aGUgY29kZSBhcm91bmQgdGhpcyBmdW5jdGlvbi4gV2hhdCBraW5kIG9mIGRhdGEgc3RydWN0dXJlIGlzIGl0IG9wZXJhdGluZyBvbj8gSXMgaXQgaGFuZGxpbmcgdGhlIERCVFIgcmVnaXN0ZXJzIGRpcmVjdGx5IG9yIGFic3RyYWN0aW5nIHRoZW0/IElzIHRoaXMgcmVsYXRlZCB0byBzaW5nbGUtc3RlcHBpbmcsIHdhdGNocG9pbnRzLCBvciBzb21lIG1vcmUgc29waGlzdGljYXRlZCBkZWJ1Z2dpbmcgZmVhdHVyZT8gQXJlIHRoZXJlIGFueSBzcGVjaWZpYyBwZXJmb3JtYW5jZSBpbXBsaWNhdGlvbnM/IE15IGV4cGVyaWVuY2UgdGVsbHMgbWUgdGhhdCBjb3JyZWN0bHkgaGFuZGxpbmcgZGF0YSBicmVha3BvaW50cyBjYW4gYmUgYSBwZXJmb3JtYW5jZSBib3R0bGVuZWNrLCBlc3BlY2lhbGx5IGluIGEgaGVhdmlseSB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudC5cblxuSSdtIHRoaW5raW5nLCBcIklzIHRoaXMgYSBuZXcgaW1wbGVtZW50YXRpb24gb3IgYSBtb2RpZmljYXRpb24gb2YgYW4gZXhpc3RpbmcgZmVhdHVyZT9cIi4gSSdkIGxpa2UgdG8gY2hlY2sgZm9yIHBvdGVudGlhbCByYWNlIGNvbmRpdGlvbnMgb3Igc3luY2hyb25pemF0aW9uIGlzc3VlcyB3aGVuIG11bHRpcGxlIHZDUFVzIGludGVyYWN0IHdpdGggdGhpcyBmdW5jdGlvbmFsaXR5LiBBcmUgdGhlcmUgYW55IGludGVyYWN0aW9ucyB3aXRoIG90aGVyIGh5cGVydmlzb3IgY29tcG9uZW50cyBsaWtlIHRoZSBNTVUgb3IgZXhjZXB0aW9uIGhhbmRsaW5nIGNvZGU/IEknbGwgbmVlZCB0byBsb29rIGF0IHRoZSBzdXJyb3VuZGluZyBjb2RlIHRvIGdyYXNwIGhvdyBpdCBpbnRlZ3JhdGVzIHdpdGggdGhlIG92ZXJhbGwgc3lzdGVtIGRlc2lnbi4gVGhpcyBpcyBjcnVjaWFsIGZvciBldmFsdWF0aW5nIGl0cyBjb3JyZWN0bmVzcyBhbmQgc3RhYmlsaXR5LlxuXG5VbHRpbWF0ZWx5LCBJIHdhbnQgdG8gdW5kZXJzdGFuZDogd2hhdCBkb2VzIHRoaXMgZnVuY3Rpb24gKmRvKiwgYW5kIGhvdyB3ZWxsIGRvZXMgaXQgZG8gaXQ/XG5cblxuIiwiSW5wdXRUb2tlbnMiOjcyNTksIk91dHB1dFRva2VucyI6MzAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjoxNCwiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNy0yMVQxNzo0MToxMi42OTcwNTcxMDVaIiwiU2VxIjoxMCwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoiZ3JlcHBlciIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjIwNDUyNzI2NDAsIkVycm9yIjoiIiwiQXJncyI6IntcbiAgXCJFeHByZXNzaW9uXCI6IFwidmNwdV9zYmlfZXh0X2RidHJcIixcbiAgXCJQYXRoUHJlZml4XCI6IFwiXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcImFyY2gvcmlzY3YvaW5jbHVkZS9hc20va3ZtX3ZjcHVfc2JpLmg9MTA2PWV4dGVybiBjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfZGJjbjtcXG5hcmNoL3Jpc2N2L2luY2x1ZGUvYXNtL2t2bV92Y3B1X3NiaS5oOjEwNzpleHRlcm4gY29uc3Qgc3RydWN0IGt2bV92Y3B1X3NiaV9leHRlbnNpb24gdmNwdV9zYmlfZXh0X2RidHI7XFxuYXJjaC9yaXNjdi9pbmNsdWRlL2FzbS9rdm1fdmNwdV9zYmkuaC0xMDgtZXh0ZXJuIGNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9zdXNwO1xcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuYz0zNj1zdGF0aWMgY29uc3Qgc3RydWN0IGt2bV9yaXNjdl9zYmlfZXh0ZW5zaW9uX2VudHJ5IHNiaV9leHRbXSA9IHtcXG4tLVxcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpLmMtNzQtXFx0XFx0LmV4dF9pZHggPSBLVk1fUklTQ1ZfU0JJX0VYVF9EQlRSLFxcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpLmM6NzU6XFx0XFx0LmV4dF9wdHIgPSBcXHUwMDI2dmNwdV9zYmlfZXh0X2RidHIsXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmkuYy03Ni1cXHR9LFxcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jPTIyPWNvbnN0IHN0cnVjdCBrdm1fdmNwdV9zYmlfZXh0ZW5zaW9uIHZjcHVfc2JpX2V4dF9kYmNuID0ge1xcbi0tXFxuYXJjaC9yaXNjdi9rdm0vdmNwdV9zYmlfZm9yd2FyZC5jLTI4LVxcbmFyY2gvcmlzY3Yva3ZtL3ZjcHVfc2JpX2ZvcndhcmQuYzoyOTpjb25zdCBzdHJ1Y3Qga3ZtX3ZjcHVfc2JpX2V4dGVuc2lvbiB2Y3B1X3NiaV9leHRfZGJ0ciA9IHtcXG5hcmNoL3Jpc2N2L2t2bS92Y3B1X3NiaV9mb3J3YXJkLmMtMzAtXFx0LmV4dGlkX3N0YXJ0ID0gU0JJX0VYVF9EQlRSLFxcblwiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNy0yMVQxNzo0MToxNC43NDIzMzk5MTVaIiwiU2VxIjoxMSwiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6MzY2MTM2MTcyNSwiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiKipXb3J0aEZ1enppbmc9RmFsc2UqKlxuXG5Pa2F5LCBzbyBJJ3ZlIGxvb2tlZCB0aGlzIG92ZXIuIEVzc2VudGlhbGx5LCB0aGlzIHBhdGNoIGlzIGp1c3QgYWJvdXQgcGx1bWJpbmcuIEl0J3MgdGFraW5nIGFuIGV4dGVuc2lvbiBJRCBhbmQgaG9va2luZyBpdCBpbnRvIHRoZSBleGlzdGluZyBmb3J3YXJkIGhhbmRsZXIuIFRoZXJlIGlzbid0IGFueSBuZXcsIGNvbXBsZXggbG9naWMgaGVyZSB0aGF0J3MgcmlwZSBmb3IgZnV6emluZy4gSXQncyByZWFsbHkganVzdCBhIHN0cmFpZ2h0Zm9yd2FyZCBkYXRhIHN0cnVjdHVyZSBhZGRpdGlvbiwgZW5hYmxpbmcgYSBuZXcgU0JJIGNhbGwgdG8gYmUgZm9yd2FyZGVkIHRvIHVzZXJzcGFjZS4gR2l2ZW4gdGhlIG5hdHVyZSBvZiB0aGlzIGNoYW5nZSwgSSdtIGNvbmZpZGVudCBpbiBzZXR0aW5nIGBXb3J0aEZ1enppbmc9ZmFsc2VgLiBJdCdzIG5vdCB3b3J0aCB0aGUgZWZmb3J0IGZvciB0aGUgbWFyZ2luYWwgZ2FpbiB3ZSdkIGdldC4gVGhpcyBpc24ndCB3aGVyZSB3ZSdsbCBmaW5kIGFueSBpbnRlcmVzdGluZyBidWdzLiBXZSBjYW4gbW92ZSBvbi5cblxuXG4iLCJJbnB1dFRva2VucyI6ODE0MiwiT3V0cHV0VG9rZW5zIjoxMDksIk91dHB1dFRob3VnaHRzVG9rZW5zIjo1NywiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNy0yMVQxNzo0MToxOC40MDM3MDUwMloiLCJTZXEiOjEyLCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJzZXQtcmVzdWx0cyIsIk1vZGVsIjoiIiwiRHVyYXRpb24iOjMxMzEwLCJFcnJvciI6IiIsIkFyZ3MiOiJ7XG4gIFwiRW5hYmxlQ29uZmlnc1wiOiBbXSxcbiAgXCJGb2N1c1N5bWJvbHNcIjogW10sXG4gIFwiUmVhc29uaW5nXCI6IFwiVGhlIHBhdGNoIG9ubHkgYWRkcyBhIG5ldyBTQkkgZXh0ZW5zaW9uIElEIChLVk1fUklTQ1ZfU0JJX0VYVF9EQlRSKSB0byBLVk0gb24gUklTQy1WIGFuZCB3aXJlcyBpdCB1cCB0byB0aGUgZXhpc3RpbmcgZ2VuZXJpYyBmb3J3YXJkIGhhbmRsZXIgKGt2bV9yaXNjdl92Y3B1X3NiaV9mb3J3YXJkX2hhbmRsZXIpIHRvIGZvcndhcmQgdGhlIGNhbGwgdG8gdXNlcnNwYWNlLiBJdCBkb2VzIG5vdCBpbnRyb2R1Y2UgYW55IG5ldyBmdW5jdGlvbmFsIGtlcm5lbCBsb2dpYyB0byBmdXp6LlwiLFxuICBcIldvcnRoRnV6emluZ1wiOiBmYWxzZVxufSIsIlJlc3VsdHMiOiJ7XG4gIFwiRW5hYmxlQ29uZmlnc1wiOiBudWxsLFxuICBcIkZvY3VzU3ltYm9sc1wiOiBbXSxcbiAgXCJSZWFzb25pbmdcIjogXCJUaGUgcGF0Y2ggb25seSBhZGRzIGEgbmV3IFNCSSBleHRlbnNpb24gSUQgKEtWTV9SSVNDVl9TQklfRVhUX0RCVFIpIHRvIEtWTSBvbiBSSVNDLVYgYW5kIHdpcmVzIGl0IHVwIHRvIHRoZSBleGlzdGluZyBnZW5lcmljIGZvcndhcmQgaGFuZGxlciAoa3ZtX3Jpc2N2X3ZjcHVfc2JpX2ZvcndhcmRfaGFuZGxlcikgdG8gZm9yd2FyZCB0aGUgY2FsbCB0byB1c2Vyc3BhY2UuIEl0IGRvZXMgbm90IGludHJvZHVjZSBhbnkgbmV3IGZ1bmN0aW9uYWwga2VybmVsIGxvZ2ljIHRvIGZ1enouXCIsXG4gIFwiV29ydGhGdXp6aW5nXCI6IGZhbHNlXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH1dOwoJCQlpZiAoIXJhd0RhdGEgfHwgcmF3RGF0YS5sZW5ndGggPT09IDApIHJldHVybjsKCgkJCWRyYXdTdW1tYXJ5VGFibGVzKHJhd0RhdGEpOwoJCQlkcmF3RHVyYXRpb25DaGFydChyYXdEYXRhKTsKCQkJZHJhd1Rva2VuQ29uc3VtcHRpb25DaGFydChyYXdEYXRhKTsKCQl9CgoJCWZ1bmN0aW9uIGRyYXdTdW1tYXJ5VGFibGVzKHJhd0RhdGEpIHsKCQkJY29uc3Qgc3RhdHMgPSB7CgkJCQlsbG06IHsgY291bnQ6IDAsIHRva2VuczogMCwgZHVyYXRpb246IDAgfSwKCQkJCXRvb2w6IHsgY291bnQ6IDAsIGR1cmF0aW9uOiAwIH0KCQkJfTsKCgkJCXJhd0RhdGEuZm9yRWFjaChzID0+IHsKCQkJCWNvbnN0IGR1ciA9IHMuRHVyYXRpb24gLyAxMDAwMDAwMDAwOyAKCQkJCWlmIChzLlR5cGUgPT09ICJsbG0iKSB7CgkJCQkJc3RhdHMubGxtLmNvdW50Kys7CgkJCQkJc3RhdHMubGxtLnRva2VucyArPSAocy5JbnB1dFRva2VucyArIHMuT3V0cHV0VG9rZW5zICsgcy5PdXRwdXRUaG91Z2h0c1Rva2Vucyk7CgkJCQkJc3RhdHMubGxtLmR1cmF0aW9uICs9IGR1cjsKCQkJCX0gZWxzZSBpZiAocy5UeXBlID09PSAidG9vbCIpIHsKCQkJCQlzdGF0cy50b29sLmNvdW50Kys7CgkJCQkJc3RhdHMudG9vbC5kdXJhdGlvbiArPSBkdXI7CgkJCQl9CgkJCX0pOwoKCQkJY29uc3QgYXZnTGxtRHVyID0gc3RhdHMubGxtLmNvdW50ID4gMCA/IChzdGF0cy5sbG0uZHVyYXRpb24gLyBzdGF0cy5sbG0uY291bnQpLnRvRml4ZWQoMikgOiAwOwoJCQljb25zdCBhdmdMbG1Ub2tlbiA9IHN0YXRzLmxsbS5jb3VudCA+IDAgPyAoc3RhdHMubGxtLnRva2VucyAvIHN0YXRzLmxsbS5jb3VudCkudG9GaXhlZCgyKSA6IDA7CgkJCWNvbnN0IGF2Z1Rvb2xEdXIgPSBzdGF0cy50b29sLmNvdW50ID4gMCA/IChzdGF0cy50b29sLmR1cmF0aW9uIC8gc3RhdHMudG9vbC5jb3VudCkudG9GaXhlZCgyKSA6IDA7CgoJCQljb25zdCBsbG1TdW1hcnlDZWxscyA9IFtzdGF0cy5sbG0uY291bnQsIHN0YXRzLmxsbS50b2tlbnMsIGF2Z0xsbVRva2VuLCBzdGF0cy5sbG0uZHVyYXRpb24sIGF2Z0xsbUR1cl07CgkJCWNvbnN0IHRvb2xTdW1tYXJ5Q2VsbHMgPSBbc3RhdHMudG9vbC5jb3VudCwgc3RhdHMudG9vbC5kdXJhdGlvbiwgYXZnVG9vbER1cl07CgoJCQljb25zdCBsbG1TdW1tYXJ5Qm9keSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdsbG1fc3VtbWFyeV9zdGF0c19ib2R5Jyk7CgkJCWxsbVN1bW1hcnlCb2R5LmlubmVySFRNTCA9ICIiOwoJCQljb25zdCBsbG1UciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3RyJyk7CgkJCWxsbVN1bWFyeUNlbGxzLmZvckVhY2goY2VsbCA9PiB7CgkJCQljb25zdCB0ZCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3RkJyk7CgkJCQl0ZC50ZXh0Q29udGVudCA9IGNlbGw7CgkJCQlsbG1Uci5hcHBlbmRDaGlsZCh0ZCk7CgkJCX0pOwoJCQlsbG1TdW1tYXJ5Qm9keS5hcHBlbmRDaGlsZChsbG1Ucik7CgoJCQljb25zdCB0b29sU3VtbWFyeUJvZHkgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndG9vbF9zdW1tYXJ5X3N0YXRzX2JvZHknKTsKCQkJdG9vbFN1bW1hcnlCb2R5LmlubmVySFRNTCA9ICIiOwoJCQljb25zdCB0b29sVHIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd0cicpOwoJCQl0b29sU3VtbWFyeUNlbGxzLmZvckVhY2goY2VsbCA9PiB7CgkJCQljb25zdCB0ZCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3RkJyk7CgkJCQl0ZC50ZXh0Q29udGVudCA9IGNlbGw7CgkJCQl0b29sVHIuYXBwZW5kQ2hpbGQodGQpOwoJCQl9KTsKCQkJdG9vbFN1bW1hcnlCb2R5LmFwcGVuZENoaWxkKHRvb2xUcik7CgkJfQoKCQlmdW5jdGlvbiBkcmF3RHVyYXRpb25DaGFydChyYXdEYXRhKSB7CgkJCWNvbnN0IGZpbHRlcmVkU3RlcHMgPSByYXdEYXRhLmZpbHRlcihkID0+IFsibGxtIiwgInRvb2wiXS5pbmNsdWRlcyhkLlR5cGUpKTsKCQkJY29uc3QgZGF0YSA9IG5ldyBnb29nbGUudmlzdWFsaXphdGlvbi5EYXRhVGFibGUoKTsKCQkJZGF0YS5hZGRDb2x1bW4oJ3N0cmluZycsICdTdGVwJyk7CgkJCWRhdGEuYWRkQ29sdW1uKCdudW1iZXInLCAnRHVyYXRpb24nKTsKCQkJZGF0YS5hZGRDb2x1bW4oe3R5cGU6ICdzdHJpbmcnLCByb2xlOiAndG9vbHRpcCd9KTsgCgoJCQlmaWx0ZXJlZFN0ZXBzLmZvckVhY2gocyA9PiB7CgkJCQkKCQkJCWNvbnN0IGR1ciA9IHMuRHVyYXRpb24gLyAxMDAwMDAwMDAwOwoJCQkJbGV0IHRvb2x0aXAgPSBzLk5hbWU7CgkJCQlpZiAocy5UeXBlID09PSAibGxtIiAmJiBzLlRvb2xDYWxscyAmJiBzLlRvb2xDYWxscy5sZW5ndGggPiAwKSB7CgkJCQkJdG9vbHRpcCArPSBgXG5Ub29sczogJHtzLlRvb2xDYWxscy5qb2luKCcsICcpfWA7CgkJCQl9CgkJCQlkYXRhLmFkZFJvdyhbYCR7cy5TZXF9YCwgZHVyLCB0b29sdGlwXSk7CgkJCX0pOwoKCQkJY29uc3Qgb3B0aW9ucyA9IHsKCQkJCXRpdGxlOiAnVGltZSBDb25zdW1wdGlvbiBvZiBMTE0vVG9vbCBDYWxscycsCgkJCQloQXhpczogewoJCQkJCXRpdGxlOiAnTExNL1Rvb2wgU3RlcHMnLAoJCQkJfSwKCQkJCXZBeGlzOiB7IHRpdGxlOiAnU2Vjb25kcycgfSwKCQkJCWxlZ2VuZDogeyBwb3NpdGlvbjogJ25vbmUnIH0sCgkJCQliYXI6IHsgZ3JvdXBXaWR0aDogJzc1JScgfSwKCQkJCWNoYXJ0QXJlYTogeyB3aWR0aDogJzg1JScsIGhlaWdodDogJzcwJScgfSwKCQkJCWhlaWdodDogNDAwCgkJCX07CgoJCQljb25zdCBjaGFydCA9IG5ldyBnb29nbGUudmlzdWFsaXphdGlvbi5Db2x1bW5DaGFydChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZHVyYXRpb25fY2hhcnRfZGl2JykpOwoJCQljaGFydC5kcmF3KGRhdGEsIG9wdGlvbnMpOwoJCX0KCgkJZnVuY3Rpb24gZHJhd1Rva2VuQ29uc3VtcHRpb25DaGFydChyYXdEYXRhKSB7CgkJCWNvbnN0IGxsbVN0ZXBzID0gcmF3RGF0YS5maWx0ZXIoZCA9PiBkLlR5cGUgPT09ICJsbG0iKTsKCQkJaWYgKGxsbVN0ZXBzLmxlbmd0aCA9PT0gMCkgcmV0dXJuOwoKCQkJY29uc3QgZGF0YSA9IG5ldyBnb29nbGUudmlzdWFsaXphdGlvbi5EYXRhVGFibGUoKTsKCQkJZGF0YS5hZGRDb2x1bW4oJ3N0cmluZycsICdTdGVwJyk7CQkJCgkJCWRhdGEuYWRkQ29sdW1uKCdudW1iZXInLCAnVG9rZW5zJyk7CQkJCgkJCWRhdGEuYWRkQ29sdW1uKHt0eXBlOiAnc3RyaW5nJywgcm9sZTogJ3N0eWxlJ30pOwkKCQkJZGF0YS5hZGRDb2x1bW4oe3R5cGU6ICdzdHJpbmcnLCByb2xlOiAndG9vbHRpcCd9KTsJCgoJCQljb25zdCBhZ2VudENvbG9ycyA9IHt9OwoJCQljb25zdCBwYWxldHRlID0gWycjNDI4NUY0JywgJyNEQjQ0MzcnLCAnI0Y0QjQwMCcsICcjMEY5RDU4JywgJyNBQjQ3QkMnLCAnIzAwQUNDMSddOwoJCQlsZXQgY29sb3JJZHggPSAwOwoJCQljb25zdCBhZ2VudExMTUNvdW50cyA9IHt9OwoJCQlsbG1TdGVwcy5mb3JFYWNoKHMgPT4gewoJCQkJaWYgKCFhZ2VudENvbG9yc1tzLk5hbWVdKSB7CgkJCQkJYWdlbnRDb2xvcnNbcy5OYW1lXSA9IHBhbGV0dGVbY29sb3JJZHggJSBwYWxldHRlLmxlbmd0aF07CgkJCQkJY29sb3JJZHgrKzsKCQkJCX0KCgkJCQlhZ2VudExMTUNvdW50c1tzLk5hbWVdID0gKGFnZW50TExNQ291bnRzW3MuTmFtZV0gfHwgMCkgKyAxOwoJCQkJY29uc3QgbGFiZWwgPSBgJHtzLk5hbWV9LSR7YWdlbnRMTE1Db3VudHNbcy5OYW1lXX1gOwoJCQkJY29uc3QgdG90YWxUb2tlbnMgPSBzLklucHV0VG9rZW5zICsgcy5PdXRwdXRUb2tlbnMgKyBzLk91dHB1dFRob3VnaHRzVG9rZW5zOwoJCQkJY29uc3Qgc3R5bGUgPSBgY29sb3I6ICR7YWdlbnRDb2xvcnNbcy5OYW1lXX1gOwoJCQkJbGV0IHRvb2x0aXAgPSBgVG90YWwgVG9rZW5zOiAke3RvdGFsVG9rZW5zfVxuKEluOiAke3MuSW5wdXRUb2tlbnN9LCBPdXQ6ICR7cy5PdXRwdXRUb2tlbnN9LCBUaG91Z2h0czogJHtzLk91dHB1dFRob3VnaHRzVG9rZW5zfSlgOwoJCQkJaWYgKHMuVG9vbENhbGxzICYmIHMuVG9vbENhbGxzLmxlbmd0aCA+IDApIHsKCQkJCQl0b29sdGlwICs9IGBcblRvb2xzOiAke3MuVG9vbENhbGxzLmpvaW4oJywgJyl9YDsKCQkJCX0KCgkJCQlkYXRhLmFkZFJvdyhbbGFiZWwsIHRvdGFsVG9rZW5zLCBzdHlsZSwgdG9vbHRpcF0pOwoJCQl9KTsKCgkJCWNvbnN0IG9wdGlvbnMgPSB7CgkJCQl0aXRsZTogJ1Rva2VuIENvbnN1bXB0aW9uIGJ5IExMTSBDYWxscycsCgkJCQloQXhpczogewoJCQkJCXRpdGxlOiAnTExNIENhbGwgU2VxdWVuY2UnLAoJCQkJfSwKCQkJCXZBeGlzOiB7IHRpdGxlOiAnQ29uc3VtZWQgVG9rZW5zJyB9LAoJCQkJbGVnZW5kOiB7IHBvc2l0aW9uOiAnbm9uZScgfSwKCQkJCWJhcjogeyBncm91cFdpZHRoOiAnNzUlJyB9LAoJCQkJY2hhcnRBcmVhOiB7IHdpZHRoOiAnODUlJywgaGVpZ2h0OiAnNzAlJyB9LAoJCQkJaGVpZ2h0OiA0MDAKCQkJfTsKCgkJCWNvbnN0IGNoYXJ0ID0gbmV3IGdvb2dsZS52aXN1YWxpemF0aW9uLkNvbHVtbkNoYXJ0KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0b2tlbl9jaGFydF9kaXYnKSk7CgkJCWNoYXJ0LmRyYXcoZGF0YSwgb3B0aW9ucyk7CgkJfQoJCWxldCBhbGxFeHBhbmRlZCA9IGZhbHNlOwoJCWZ1bmN0aW9uIHRvZ2dsZUFsbERldGFpbHMoKSB7CgkJCWFsbEV4cGFuZGVkID0gIWFsbEV4cGFuZGVkOwoJCQlkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdkZXRhaWxzJykuZm9yRWFjaChkID0+IHsKCQkJCWlmIChhbGxFeHBhbmRlZCkgZC5zZXRBdHRyaWJ1dGUoJ29wZW4nLCAnJyk7CgkJCQllbHNlIGQucmVtb3ZlQXR0cmlidXRlKCdvcGVuJyk7CgkJCX0pOwoJCX0KCTwvc2NyaXB0PgoKCjwvYm9keT4KPC9odG1sPgo=" },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-workflowljnqw[1] Phase: Running StartedAt: 2026-07-21 17:41:29 +0000 UTC FinishedAt: 0001-01-01 00:00:00 +0000 UTC Input: nil Output: nil --------- Name: series-workflowljnqw[1].abort-on-skip-outcome Phase: Failed StartedAt: 2026-07-21 17:41:29 +0000 UTC FinishedAt: 2026-07-21 17:41:34 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:code,Default:nil,Value:*1,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},} Output: &Outputs{Parameters:[]Parameter{},Artifacts:[]Artifact{},Result:nil,ExitCode:*1,}